数字图像处理初步-实验1

合集下载

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告实验一数字图像处理编程基础一、实验目的1. 了解MATLAB图像处理工具箱;2. 掌握MATLAB的基本应用方法;3. 掌握MATLAB图像存储/图像数据类型/图像类型;4. 掌握图像文件的读/写/信息查询;5. 掌握图像显示--显示多幅图像、4种图像类型的显示方法;6. 编程实现图像类型间的转换。

二、实验内容1. 实现对图像文件的读/写/信息查询,图像显示--显示多幅图像、4种图像类型的显示方法、图像类型间的转换。

2. 运行图像处理程序,并保存处理结果图像。

三、源代码I=imread('cameraman.tif')imshow(I);subplot(221),title('图像1');imwrite('cameraman.tif')M=imread('pout.tif')imview(M)subplot(222),imshow(M);title('图像2');imread('pout.bmp')N=imread('eight.tif')imview(N)subplot(223),imshow(N);title('图像3');V=imread('circuit.tif')imview(V)subplot(224),imshow(V);title('图像4');N=imread('C:\Users\Administrator\Desktop\1.jpg')imshow(N);I=rgb2gary(GRB)[X.map]=gary2ind(N,2)RGB=ind2 rgb(X,map)[X.map]=gary2ind(I,2)I=ind2 gary(X,map)I=imread('C:\Users\dell\Desktop\111.jpg');subplot(231),imshow(I);title('原图');M=rgb2gray(I);subplot(232),imshow(M);[X,map]=gray2ind(M,100);subplot(233),imshow(X);RGB=ind2rgb(X,map);subplot(234),imshow(X);[X,map]=rbg2ind(I);subplot(235),imshow(X);四、实验效果实验二 图像几何变换实验一、实验目的1.学习几种常见的图像几何变换,并通过实验体会几何变换的效果;2.掌握图像平移、剪切、缩放、旋转、镜像等几何变换的算法原理及编程实现;3.掌握matlab 编程环境中基本的图像处理函数。

数字图像处理——实验ppt课件

数字图像处理——实验ppt课件
14
实验五——参考答案
15
实验五——参考答案
• f=imread(‘strawberries_fullcolor.tif');
• [x1,map1]=rgb2ind(f,8,'nodither');
• figure,imshow(x1,map1);
• title('ind nodither');
i1=imfilter(i,w1,'replicate'); i2=imfilter(i,w2,'replicate'); figure,imshow(i1); title('rgb平滑'); figure,imshow(i2) title('rgbr锐化'); •(1)
• (1) h=rgb2hsi(i); H=h(:,:,1); S=h(:,:,2); I=h(:,:,3); h1=imfilter(h,w1,'replicate');%平滑全部三个分量 I2=imfilter(I,w1,'replicate');%仅平滑亮度分量 h2=cat(3,H,S,I2); hi1=hsi2rgb(h1); hi2=hsi2rgb(h2); hi1=min(hi1,1); hi2=min(hi2,1); figure,imshow(hi1); title('平滑全部三个分量') figure,imshow(hi2); title('仅平滑亮度分量')
title('频域滤波')
11
实验四
1. 使用imnoise2()生成右图, 理解各参数的作用。
12
实验四

实验一 MATLAB数字图像处理初步

实验一  MATLAB数字图像处理初步

实验一 MATLAB数字图像处理初步一、实验目的与要求1.熟悉及掌握在MATLAB中能够处理哪些格式图像。

2.熟练掌握在MATLAB中如何读取图像。

3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。

4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。

5.图像间如何转化。

6. 了解图像的算术运算在数字图像处理中的初步应用。

7.体会图像算术运算处理的过程和处理前后图像的变化。

二、实验原理及知识点1、数字图像的表示和类别一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。

灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。

例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。

因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。

图像关于x和y坐标以及振幅连续。

要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。

将坐标值数字化成为取样;将振幅数字化成为量化。

采样和量化的过程如图1所示。

因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。

作为MATLAB基本数据类型的数值数组本身十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。

图1 图像的采样和量化根据图像数据矩阵解释方法的不同,MA TLAB把其处理为4类:➢亮度图像(Intensity images)➢二值图像(Binary images)➢索引图像(Indexed images)➢RGB图像(RGB images)(1) 亮度图像一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。

若亮度图像的像素都是uint8类或uint16类,则它们的整数值范围分别是[0,255]和[0,65536]。

若图像是double类,则像素取值就是浮点数。

数字图像处理实验报告 实验一 图像增强实验

数字图像处理实验报告 实验一 图像增强实验

实验一图像增强实验一、实验目标:掌握图像增强的算法。

二、实验目的:1. 了解灰度变换增强和空域滤波增强的Matlab实现方法2. 掌握直方图灰度变换方法3. 掌握噪声模拟和图像滤波函数的使用方法三、实验内容:(1)图像的点操作、邻域操作算法。

(2)图像的直方图处理算法。

四、实验设备:1.PIII以上微机; 2.MATLAB6.5;五、实验步骤:(1)读入图像:用matlab函数实现图像读入(可读入Matlab中的标准测试图像)(原始图像)(2)实现图像点操作运算(如gamma校正,对数校正等)(3)实现图像的邻域处理(实现均值滤波,拉普拉斯滤波)(4)实现直方图均衡处理matlab 源程序clear all;clc;f=imread('girl_noise.jpg');figure,imshow(f),title('原始图像');[m,n]=size(f);f0= im2double(f); % 整型转换为double 类f1=f0;std_i=zeros(1,m-2);%灰线处理for i=2:m-1%灰线处理std_i(i-1)=std(f0(i,:));if(std_i(i-1)<0.1)for j=1:mf0(i,j)=(f0(i-1,j)+f0(i+1,j))/2;endendendfigure,imshow(f0),title('滤除灰线后的图像');fz=f0-f1;[r,c]=find(fz~=0);%寻找灰线噪声的位置f2=f0;change=0;count=0;for i=3:m-2%白线处理for j=1:mif(abs(f0(i,j)-f0(i-1,j))>0.2&&abs(f0(i,j)-f0(i+1,j))>0.2) count=count+1;endif(count>n*0.8)count=0;change=1;break;endendif(change==1)for k=1:mf0(i,k)=(f0(i-1,k)+f0(i+1,k))/2;endchange=0;count=0;endendfigure,imshow(f0),title('滤除白线后的图像');fz1=f2-f0;[r1,c1]=find(fz1~=0); %寻找白线噪声的位置fn = medfilt2(f0); %反射对称填充figure, imshow(fn),title('中值滤波后的图像');f0 = im2double(fn); % 整型转换为double 类g =2*f0- imfilter(f0,w4, 'replicate'); % 增强后的图像figure, imshow(g),title('高提升滤波图像(A=2)');图像处理结果六、结果分析从上面结果可以看出,带状噪声处理部分,已经基本将带状噪声去除。

《数字图像处理实验》word版

《数字图像处理实验》word版

华南理工大学《数字图像处理》课程实验报告实验题目:实验1、数字图像读取及色彩、亮度对比度变化姓名:学号:班级:组别:合作者:指导教师:V=-0.30R-0.59G+0.89B5.通过访问Y(亮度)通道,改变数字图像的亮度;二、实验图像:三、实验主要过程:1、读入图像,分离RGB三个通道,结果如下:代码如下:% 读入图像并分离RGB,显示;src = imread('sample1-1.bmp');[r c d] = size(src);R = src;G = src;B = src;R(:,:,2) = zeros(r,c);R(:,:,3) = zeros(r,c);G(:,:,1) = zeros(r,c);G(:,:,3) = zeros(r,c);B(:,:,1) = zeros(r,c);B(:,:,2) = zeros(r,c);subplot(1,3,1);imshow(R); title('R分量');subplot(1,3,2);imshow(G); title('G分量');subplot(1,3,3);imshow(B); title('B分量');2、修改RGB值(反色),改变图像的色彩,结果如下:代码如下:% 修改RGB的值(这时采用了反色),改变图像的色彩;R(:,:,1) = 255 - R(:,:,1); % 为了进行后面的实验,请注释此行G(:,:,2) = 255 - G(:,:,2); % 为了进行后面的实验,请注释此行B(:,:,3) = 255 - B(:,:,3); % 为了进行后面的实验,请注释此行subplot(2,3,1);imshow(R); title('R分量反色');subplot(2,3,2);imshow(G); title('G分量反色');subplot(2,3,3);imshow(B); title('B分量反色');subplot(2,3,4);imshow(src); title('原图');subplot(2,3,6);imshow(R+G+B); title('反色');3、将RGB转为YUV,结果如下:代码如下:R = double(R(:,:,1));G = double(G(:,:,2));B = double(B(:,:,3));Y = 0.299*R + 0.587*G + 0.114*B;U = -0.147*R - 0.289*G + 0.436*B;V = 0.615*R - 0.515*G - 0.100*B;subplot(2,3,1);imshow(uint8(Y)); title('Y分量');subplot(2,3,2);imshow(uint8(U)); title('U分量');subplot(2,3,3);imshow(uint8(V)); title('V分量');4、修改Y分量(这里除以1.5),重新由YUV转为RGB,结果如下:代码如下:Y = Y/1.5;R = Y + 1.140*V;G = Y - 0.395*U - 0.581*V;B = Y + 2.032*U;rgb(:,:,1) = uint8(R(:,:));rgb(:,:,2) = uint8(G(:,:));rgb(:,:,3) = uint8(B(:,:));subplot(2,3,4);imshow(rgb); title('修改亮度');华南理工大学《数字图像处理》课程实验报告实验题目:实验2、数字图像空间域增强姓名:学号:班级:组别:合作者:指导教师:三、实验主要过程:1、对源图像进行标准化,使像素的RGB值的范围为0到1代码如下:src = imread('sample2-1.bmp');src = double(src);src = src / 256.0;2、对源图像的各像素,采用不同的珈玛值进行校正,并显示比较,结果如下:代码如下:gamma0p4 = uint8(src.^(1/0.4).*256.0);华南理工大学《数字图像处理》课程实验报告实验题目:实验3、数字图像的噪声去除姓名:学号:班级:组别:合作者:指导教师:源图像加噪声后的图像三、实验主要过程:1、对源图像进行3*3的均值滤波,结果如下:代码如下:src = imread('sample3-2.bmp');[r,c] = size(src);output = src;n = 3; k = (n-1)/2;for row = 1+k:r-kfor column = 1+k:c-km = src(row-k:row+k,column-k:column+k);temp = sum(sum(m,1),2)*(1/n/n);output(row, column) = uint8(temp);endendimshow(output);在本代码中,边缘并没有被处理,而是直接采用源图像的对应值。

《数字图像处理》实验指导书1

《数字图像处理》实验指导书1

《数字图像处理》实验指导书前言本实验指导书可作为电子信息工程、通信工程、生物医学工程等专业《数字图像处理》课程的实验指导书。

实验指导书共提供了6个实验,要求在VB环境下实现。

实验名称与学时安排详见下表。

实验名称与学时安排表实验教学基本要求:1、在实验前,认真准备,熟悉和掌握相关实验内容的基本算法和程序设计技术。

2、根据实验目的和要求,按时认真完成各实验的上机操作。

3、实验结束后,要及时提交经调试正确的程序源代码、生成的可执行文件、实验报告书等文档。

实验一图象的读取保存及图像的二值化处理一、实验目的1、熟悉《数字图像处理》的实验平台。

2、了解VB对图像进行处理的基本方法。

3、熟悉彩色图像变成灰度图象以及灰度图像转换成二值图像的基本原理及处理过程。

二、实验准备1、复习彩色图像变成灰度图象以及灰度图像的二值化处理的基本原理。

2、阅读下列内容,了解VB对图像进行处理的基本方法。

(1)读取图像通过扫描仪、摄像机等输入计算机以.bmp、.ico或.wmf存储的图像文件,可用LoadPicture函数把图像文件装入窗体、图片框或图像框中,例如:picture1.picture=loadpicture(“c:\image\flower.bmp”)可以把路径为c:\image\flower.bmp的图像文件装入图片框picture1中。

为了使图片框的大小与图像相匹配,应将图片框的autosize属性设置为True。

(2)用Point方法获取彩色图像的颜色值Point方法的功能是获取图像上指定像素的颜色值。

格式为:Object.Point(x,y)其中,Object表示获取颜色的对象名,(x,y)为取得颜色的坐标位置。

Point 方法将指定位置的像素的颜色值返回一个长整形数。

例如,求图片框picture 1中图像在位置(x,y)的像素颜色值(col)时,可写为:dim col as longcol=picture1.Point(x,y)(3)用Pset方法画点Pset方法的功能是在指定的位置画一个指定颜色的点。

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告实验⼀、图像的显⽰与格式变换1、实验⽬的1)熟悉常⽤的图像⽂件格式与格式转换;2)熟悉图像矩阵的显⽰⽅法(灰度、索引、⿊⽩、彩⾊);3)熟悉图像矩阵的格式转换2、实验内容练习图像读写命令imread和imwrite并进⾏图像⽂件格式间的转换。

特别是索引图像与1,4,8,16⽐特图像的存储与转换。

3、实验步骤a.⽤图像读命令(imread)从你的硬盘中读取图像(cameramen.tif);b.⽤图像显⽰功能(imshow)将刚读⼊的图像显⽰在⼀图像窗中;c.显⽰颜⾊条功能(colorbar)在图像的左边画⼀条颜⾊亮度显⽰条;d.⽤(imfinfo)功能得到(gray.bmp)图像的相关信息;e.⽤(colormap )获取当前图像的调⾊板,观察调⾊板中的颜⾊设置;f.⽤(getimage)功能从坐标轴取得当前图像数据;g.⽤(imagesc)功能显⽰图像从64-128的灰度值;h. ⽤(immovie)功能将⼀个4-D 图像创建多帧索引图的电影动画;i. ⽤(warp)功能将图像('testpat1.tif)显⽰到纹理映射柱⾯;思考:怎样让(cameraman.tif)图像如下图⼀样显⽰?四.实验结果及代码a.代码:>>X=imread(‘cameraman.tif’)b.代码:>>y=imshow(X)显⽰的图像为:c、代码:>>I = colorbar('cameraman.tif')H=imshow('cameraman.tif')显⽰的图像为d、代码:>>info=imfinfo(‘gray.bmp')显⽰结果为:Filename: [1x71 char]FileModDate: '16-Apr-2010 11:23:52'FileSize: 107786Format: 'bmp'FormatV ersion: 'V ersion 3 (Microsoft Windows 3.x)' Width: 409Height: 259BitDepth: 8ColorType: 'indexed'FormatSignature: 'BM'NumColormapEntries: 256Colormap: [256x3 double]RedMask: []GreenMask: []BlueMask: []ImageDataOffset: 1078BitmapHeaderSize: 40NumPlanes: 1CompressionType: 'none'BitmapSize: 106708HorzResolution: 0V ertResolution: 0NumColorsUsed: 0NumImportantColors: 0e、代码:>>x=imread(‘256.bmp’)color1=colormap %获取当前图象的调⾊板image (x)info=imfinfo(’256.bmp’)color2=info.Colormap %注意观察调⾊板有多少种颜⾊colormap(color2)f、代码:>>I=getimageg、代码:>> imagesc(x,[64 128])h、代码:>> load mri;mov = immovie(D,map); movie(mov,3)显⽰图像为:i.源代码:>>[x,y,z]=cylinder;I= imread('testpat1.tif');warp(x,y,z,I),图像显⽰为:思考:代码:>>X=inread('cameramen.tif'); Y=[X X];[x,-y,z]=cylinder;I=imread(Y);warp(x,y,z,I)显⽰图像为:实验⼆、图像增强⼀、实验⽬的1.理解图像直⽅图的含义;2.了解直⽅图的应⽤;3.掌握直⽅图均衡化的实现⽅法。

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告数字图像处理实验报告1一. 实验内容:主要是图像的几何变换的编程实现,具体包括图像的读取、改写,图像平移,图像的镜像,图像的转置,比例缩放,旋转变换等.具体要求如下:1.编程实现图像平移,要求平移后的图像大小不变;2.编程实现图像的镜像;3.编程实现图像的转置;4.编程实现图像的比例缩放,要求分别用双线性插值和最近邻插值两种方法来实现,并比较两种方法的缩放效果;5.编程实现以任意角度对图像进行旋转变换,要求分别用双线性插值和最近邻插值两种方法来实现,并比较两种方法的旋转效果.二.实验目的和意义:本实验的目的是使学生熟悉并掌握图像处理编程环境,掌握图像平移、镜像、转置和旋转等几何变换的方法,并能通过程序设计实现图像文件的读、写操作,及图像平移、镜像、转置和旋转等几何变换的程序实现.三.实验原理与主要框架:3.1 实验所用编程环境:Visual C++(简称VC)是微软公司提供的基于C/C++的应用程序集成开发工具.VC拥有丰富的功能和大量的扩展库,使用它能有效的创建高性能的Windows应用程序和Web应用程序.VC除了提供高效的C/C++编译器外,还提供了大量的可重用类和组件,包括著名的微软基础类库(MFC)和活动模板类库(ATL),因此它是软件开发人员不可多得的开发工具.VC丰富的功能和大量的扩展库,类的重用特性以及它对函数库、DLL库的支持能使程序更好的模块化,并且通过向导程序大大简化了库资源的使用和应用程序的开发,正由于VC具有明显的优势,因而我选择了它来作为数字图像几何变换的开发工具.在本程序的开发过程中,VC的核心知识、消息映射机制、对话框控件编程等都得到了生动的体现和灵活的应用.3.2 实验处理的对象:256色的BMP(BIT MAP )格式图像BMP(BIT MAP )位图的文件结构:具体组成图: BITMAPFILEHEADER位图文件头(只用于BMP文件) bfType=”BM” bfSize bfReserved1bfReserved2bfOffBitsbiSizebiWidthbiHeightbiPlanesbiBitCountbiCompressionbiSizeImagebiXPelsPerMeterbiYPelsPerMeterbiClrUsedbiClrImportant单色DIB有2个表项16色DIB有16个表项或更少256色DIB有256个表项或更少真彩色DIB没有调色板每个表项长度为4字节(32位)像素按照每行每列的顺序排列每一行的字节数必须是4的整数倍BITMAPINFOHEADER 位图信息头 Palette 调色板 DIB Pixels DIB图像数据1. BMP文件组成BMP文件由文件头、位图信息头、颜色信息和图形数据四部分组成.2. BMP文件头BMP文件头数据结构含有BMP文件的类型(必须为BMP)、文件大小(以字节为单位)、位图文件保留字(必须为0)和位图起始位置(以相对于位图文件头的偏移量表示)等信息.3. 位图信息头BMP位图信息头数据用于说明位图的尺寸(宽度,高度等都是以像素为单位,大小以字节为单位, 水平和垂直分辨率以每米像素数为单位) ,目标设备的级别,每个像素所需的位数, 位图压缩类型(必须是 0)等信息.4. 颜色表颜色表用于说明位图中的颜色,它有若干个表项,每一个表项是一个RGBQUAD类型的结构,定义一种颜色.具体包含蓝色、红色、绿色的亮度(值范围为0-255)位图信息头和颜色表组成位图信息5. 位图数据位图数据记录了位图的每一个像素值,记录顺序是在扫描行内是从左到右,扫描行之间是从下到上.Windows规定一个扫描行所占的字节数必须是4的倍数(即以long为单位),不足的以0填充.3.3 BMP(BIT MAP )位图的显示:①一般显示方法:1. 申请内存空间用于存放位图文件2. 位图文件读入所申请内存空间中3. 在函数中用创建显示用位图, 用函数创建兼容DC,用函数选择显示删除位图但以上方法的缺点是: 1)显示速度慢; 2) 内存占用大; 3) 位图在缩小显示时图形失真大,(可通过安装字体平滑软件来解决); 4) 在低颜色位数的设备上(如256显示模式)显示高颜色位数的图形(如真彩色)图形失真严重.②BMP位图缩放显示 :用视频函数来显示位图,内存占用少,速度快,而且还可以对图形进行淡化(Dithering )处理.淡化处理是一种图形算法,可以用来在一个支持比图像所用颜色要少的设备上显示彩色图像.BMP位图显示方法如下:1. 打开视频函数,一般放在在构造函数中2. 申请内存空间用于存放位图文件3. 位图文件读入所申请内存空间中4. 在函数中显示位图5. 关闭视频函数 ,一般放在在析构函数中以上方法的优点是: 1)显示速度快; 2) 内存占用少; 3) 缩放显示时图形失真小,4) 在低颜色位数的设备上显示高颜色位数的图形图形时失真小; 5) 通过直接处理位图数据,可以制作简单动画.3.4 程序中用到的访问函数Windows支持一些重要的DIB访问函数,但是这些函数都还没有被封装到MFC中,这些函数主要有:1. SetDIBitsToDevice函数:该函数可以直接在显示器或打印机上显示DIB. 在显示时不进行缩放处理.2. StretchDIBits函数:该函数可以缩放显示DIB于显示器和打印机上.3. GetDIBits函数:还函数利用申请到的内存,由GDI位图来构造DIB.通过该函数,可以对DIB的格式进行控制,可以指定每个像素颜色的位数,而且可以指定是否进行压缩.4. CreateDIBitmap函数:利用该函数可以从DIB出发来创建GDI 位图.5. CreateDIBSection函数:该函数能创建一种特殊的DIB,称为DIB项,然后返回一个GDI位图句柄.6. LoadImage函数:该函数可以直接从磁盘文件中读入一个位图,并返回一个DIB句柄.7. DrawDibDraw函数:Windows提供了窗口视频(VFW)组件,Visual C++支持该组件.VFW中的DrawDibDraw函数是一个可以替代StretchDIBits 的函数.它的最主要的优点是可以使用抖动颜色,并且提高显示DIB的速度,缺点是必须将VFW代码连接到进程中.3.5 图像的几何变换图像的几何变换,通常包括图像的平移、图像的镜像变换、图像的转置、图像的缩放和图像的旋转等.数字图像处理实验报告2一、实验的目的和意义实验目的:本实验内容旨在让学生通过用VC等高级语言编写数字图像处理的一些基本算法程序,来巩固和掌握图像处理技术的基本技能,提高实际动手能力,并通过实际编程了解图像处理软件的实现的基本原理。

数字图像处理实验

数字图像处理实验

数字图像处理实验实验报告要求:实验报告应包含实验名称、实验内容、思想及原理、算法设计、代码设计及实现、实验结果及分析、结论等内容。

实验结果必须包括原图像、结果图像和必要的数据图像。

实验1 直方图均衡化编码实现直方图均衡化算法(不能使用第三方直方图均衡化函数)。

代码如下:a=imread('e:\b.jpg');%读取图像b=rgb2gray(a); %转化为灰度图像imshow(b); %显示原图c=histeq(b); %直方图均衡化subplot(121),imshow(a);subplot(122),imshow(c); %显示处理后的图像图像如下:实验2 频率域滤波图像中含有周期性干扰,设计使用频率域分析方法检测和去除图像周期性干扰的算法(可以使用第三方傅里叶变换和反变换函数)。

代码如下:%频率域滤波clc;close all;f=imread('salt.bmp');f=im2double(f);F=fft2(double(f));%傅里叶变换F=fftshift(F);%将变换的原点移到频率矩形的中心[M,N]=size(f);%理想低通滤波D0=input('输入截止频率');h1=zeros(M,N);for i=1:Mfor j=i:Nif(sqrt(((i-M/2)^2+(j-N/2)^2))<D0)h1(i,j)=1;endendendG1=F.*hl;61=ifftshift(G1);g1=real(ifft2(G1));subplot(2,3,1);imshow(f);title('原图');subplot(2,3,2);imshow(g1);title('理想低通滤波’);%巴特沃斯低通滤波n=input('巴特沃斯滤波器的阶数 n=');n1=fix(M/2);n2=fix(N/2);h2=zeros(M,N);for i=1:Mfor j=1:Nd=sqrt((i-n1)^2+(j-n2)^2);h2=1./(1+(d./D0).^(2*n));endendG2=F.*h2;G2=ifftshift(G2);g2=real(ifft(G2));subplot(2,3,1);imshow(f);title('原图'); subplot(2,3,4);imshow(g3);title('低通滤波'); 图像如下:原图巴特沃斯低通理想低通实验3彩色图像去噪对RGB彩色空间和HIS彩色空间去噪效果进行比较分析。

数字图像处理—实验一

数字图像处理—实验一

数字图像处理—实验一一.实验内容:图像灰度变换二.实验目的:学会用Matlab 软件对图像灰度进行变换;感受各种不同的灰度变换方法对最终图像效果的影响。

三.实验步骤:1.获取实验用图像:Fig3.10(b).jpg. 使用imread 函数将图像读入Matlab 。

2.产生灰度变换函数T1,使得:0.3rr < 0.35s = 0.105 + 2.6333(r – 0.35) 0.35 ≤ r ≤ 0.651 + 0.3(r – 1)r > 0.65用T1对原图像Fig3.10(b).jpg 进行处理,打印处理后的新图像。

3.产生灰度变换函数T2,使得:s =用T2对原图像Fig3.10(b).jpg 进行处理,打印另一处理后的新图像。

4.分别用 s = r 0.6; s = r 0.4; s = r 0.3 对Fig3.08(a).jpg 图像进行处理。

为简便起见,请使用Matlab 中的imadjust 函数。

5.对Fig3.04(a).jpg 图像实施反变换(Negative Transformation )。

s =1-r; 6.对Fig3.10(b).jpg 图像实施灰度切片(Gray-level slicing )。

具体要求如下:当0.2 ≤ r ≤ 0.4时,将r 置为0.6, 当r 位于其他区间时, 保持其灰度与原图像一样。

四.实验报告要求:用imshow, plot 等函数生成各类图像,提交原图像和各种变换函数的曲线,以及按各种变换函数处理后的图像。

实验报告上的其他内容,按常规实验报告要求办。

胡小平2005-10-27。

数字图像处理实验一图像的基本操作和基本统计指标计算实验报告

数字图像处理实验一图像的基本操作和基本统计指标计算实验报告

实验一图像的基本操作和基本统计指标计算一、实验目的熟悉MATLAB图像处理工具箱,在掌握MATLAB基本操作的基础上,本课程主要依靠图像处理工具箱验证和设计图像处理算法。

对于初学者来说,勤学多练、熟悉MATLAB图像处理工具箱也是学号本课程的必经之路。

了解计算图像的统计指标的方法及其在图像处理中的意义。

了解图像的几何操作,如改变图像大小、剪切、旋转等。

二、实验主要仪器设备(1)台式计算机或笔记本电脑(2)MATLAB(安装了图像处理工具箱,即Image Processing Toolbox(IPT))(3)典型的灰度、彩色图像文件三、实验原理(1)将一幅图像视为一个二维矩阵。

(2)利用MATLAB图像处理工具箱读、写和显示图像文件。

①调用imread函数将图像文件读入图像数组(矩阵)。

例如“I=imread(‘tire.tif’);”。

其基本格式为:“A=imread(‘filename.fmt’)”,其中,A为二维矩阵,filename.为文件名,fmt为图像文件格式的扩展名。

②调用imwrite函数将图像矩阵写入图像文件。

例如“imwrite(A,’test_image.jpg’);”。

其基本格式为“imwrite(a,filename.fmt)”。

③调用imshow函数显示图像。

例如“imshow(‘tire.tif’);”。

其基本格式为:I为图像矩阵,N为显示的灰度级数,默认时为256。

(3)计算图像有关的统计参数。

四、实验内容(1)利用MATLAB图像处理工具箱和Photoshop读、写和显示图像文件。

(2)利用MATLAB计算图像有关的统计参数。

五、实验步骤(1)利用“读图像文件I/O”函数读入图像Italy.jpg。

(2)利用“读图像文件I/O”的iminfo函数了解图像文件的基本信息:主要包括Filename(文件名)、FileModDate(文件修改时间)、Filesize(文件尺寸)、Format(文件格式)、FormatVersion (格式版本)、Width(图像宽度)、Height(图像高度)、BitDepth(每个像素的位深度)、ColorType (彩色类型)、CodingMethod(编码方法)等。

数字图像处理图像变换实验报告

数字图像处理图像变换实验报告

实验报告实验名称:图像处理姓名:刘强班级:电信1102学号:1404110128实验一图像变换实验——图像点运算、几何变换及正交变换一、实验条件PC机数字图像处理实验教学软件大量样图二、实验目的1、学习使用“数字图像处理实验教学软件系统”,能够进行图像处理方面的简单操作;2、熟悉图像点运算、几何变换及正交变换的基本原理,了解编程实现的具体步骤;3、观察图像的灰度直方图,明确直方图的作用与意义;4、观察图像点运算与几何变换的结果,比较不同参数条件下的变换效果;5、观察图像正交变换的结果,明确图像的空间频率分布情况。

三、实验原理1、图像灰度直方图、点运算与几何变换的基本原理及编程实现步骤图像灰度直方图就是数字图像处理中一个最简单、最有用的工具,它描述了一幅图像的灰度分布情况,为图像的相关处理操作提供了基本信息。

图像点运算就是一种简单而重要的处理技术,它能让用户改变图像数据占据的灰度范围。

点运算可以瞧作就是“从象素到象素”的复制操作,而这种复制操作就是通过灰度变换函数实现的。

如果输入图像为A(x,y),输出图像为B(x,y),则点运算可以表示为:B(x,y)=f[A(x,y)]其中f(x)被称为灰度变换(Gray Scale Transformation,GST)函数,它描述了输入灰度值与输出灰度值之间的转换关系。

一旦灰度变换函数确定,该点运算就完全确定下来了。

另外,点运算处理将改变图像的灰度直方图分布。

点运算又被称为对比度增强、对比度拉伸或灰度变换。

点运算一般包括灰度的线性变换、阈值变换、窗口变换、灰度拉伸与均衡等。

图像几何变换就是图像的一种基本变换,通常包括图像镜像变换、图像转置、图像平移、图像缩放与图像旋转等,其理论基础主要就是一些矩阵运算,详细原理可以参考有关书籍。

实验系统提供了图像灰度直方图、点运算与几何变换相关内容的文字说明,用户在操作过程中可以参考。

下面以图像点运算中的阈值变换为例给出编程实现的程序流程图,如下:2、图像正交变换的基本原理及编程实现步骤数字图像的处理方法主要有空域法与频域法,点运算与几何变换属于空域法。

数字图像处理实验指导书

数字图像处理实验指导书

数字图像处理实验指导书臧兰云电子工程学院实验一图像基本运算一、实验目的:1、了解数字图像处理基础2、掌握数字图像处理的基本运算方法3、学习利用matlab进行数字图像处理的基本方法二、实验内容:1、根据图像采样原理,试对lena图像分别进行4和16倍减采样,查看其减采样效果。

2、对一幅图像加入椒盐噪声,并通过减法运算提取出噪声。

3、两幅二值图像进行逻辑与、或、非运算。

4、实现把一幅图像旋转45°,并分别采用把转出显示区域的图像截去和扩大显示区域范围以显示图像的全部两种方式。

5、选取一幅大小为256*256像素的图像,分别将图比例放大1.5倍,比例缩小0.7倍,非比例放大到420*384像素,非比例缩小到150*180像素。

三、思考与总结:1、将一幅图像如果进行4倍、16倍和64倍增采样会出现什么情况?是否有其他方法可以实现图像的采样?2、图像的选转会导致图像的失真吗?若有,有什么办法可以解决这个问题?3、由非比例缩放得到的图片能够恢复到原图片吗?为什么?实验二图像变换及增强一、实验目的:1、掌握图像变换的应用2、掌握数字图像处理的空间域及频域的增强方法二、实验内容:1、构造一幅图像并对其旋转一定的角度,求原始图像及旋转后图像的频谱图。

2、对一幅灰度图像进行均衡化,灰度等级为8级。

3、对一幅灰度图像采用多种方法实现平滑、锐化滤波。

4、对一幅图像进行幂次变换。

三、思考与总结:1、图像变换在图像处理中的应用?2、什么是傅里叶变换的旋转性?3、以上实验分别可以应用到那些实际问题中? 实验三图像压缩编码一、实验目的:1、掌握图像压缩编码的概念2、比较图像压缩编码的各种方法二、实验内容:1、计算一幅灰度图像的熵。

2、选择一种方法对图像进行压缩,并计算压缩比。

三、思考与总结:1、注释程序功能2、以上实验可以应用到那些实际问题中?实验四图像分割及彩色图像处理一、实验目的:1、掌握图像分割的基本原理2、掌握彩色图像处理方法二、实验内容:1、用全局阈值法对图像进行分割2、实现sobel算子及Roberts等算子的边缘提取算法3、生成一幅大小为256*256的RGB图像。

数字图像处理实验指导书(带源程序)

数字图像处理实验指导书(带源程序)

实验一Matlab图像处理工具箱的初步练习一. 实验目的1. 掌握有关数字图像处理的基本概念;2. 熟悉Matlab图像处理工具箱;3. 熟悉使用Matlab进行数字图像的读出和显示;4. 熟悉运用Matlab指令进行图像旋转和缩放变换。

二. 练习1. 文件的读入与显示(1) 运行Matlab。

(2) MATLAB窗口构成:在缺省的情况下,由三个窗口组成。

命令窗口(command window)、命令历史(command history)、工作空间(workspace)。

注意:缺省窗口的设置步骤为:MATLAB菜单/view选项/Desktop layout/default。

(3) 调入一个文件:i=imread('pout.tif');%注意:前面的“%”是用于注释的,不会被执行,只是说明这个语句的作用。

此时的i出现在什么窗口?是什么类型的变量?大小是多少?(4) 显示这幅图:imshow(i);(5) 将变量i转置成j,即j=i';显示j即imshow(j);%在胸前左侧花纹怎么会跑到右边的呢?举一个例子加以验证:设a=[1 2 3 4 5;6 7 8 9 10;11 12 13 14 15];b=a’;此时的b与a有什么区别?(6) 写入到一个新的图像文件'abc.tif'中,即imwrite(j,'abc.tif')。

(7) 清除变量命令:clear执行这个命令后,workspace窗口中的变量有没有?怎么验证?(8) 清除用户开设的窗口命令:close all(9) 调入图像文件'abc.tif'并显示。

问题:(1) 操作符“’”是图像的转置的意思,转置两次后,是否回到原图像?(2) 命令后的符号“;”所起的作用是什么?(3) 命令是否可以大写母?2. 灰度图像分别选择不同的灰度级(如2、4、16、64、128个)来显示同一幅图像(如testpat1.tif)。

数字图像处理实验报告(五个实验全)

数字图像处理实验报告(五个实验全)

数字图像处理实验报告(五个实验全)实验⼀ Matlab图像⼯具的使⽤1、读图I=imread('lena.jpg');imshow(I);2、读⼊⼀幅RGB图像,变换为灰度图像和⼆值图像,并在同⼀个窗⼝内分成三个⼦窗⼝来分别显⽰RGB图像和灰度图像。

a=imread('lena.jpg')i = rgb2gray(a)I = im2bw(a,0.5)subplot(3,1,1);imshow(a);subplot(3,1,2);imshow(i);subplot(3,1,3);imshow(I);原图像灰度图像⼆值图像实验⼆图像变换1、对⼀幅图像进⾏平移,显⽰原始图像与处理后图像,分别对其进⾏傅⾥叶变换,显⽰变换后结果,分析原图的傅⾥叶谱与平移后傅⾥叶频谱的对应关系。

s=imread('beauty.jpg');i=rgb2gray(s)i=double(i)j=fft2(i);k=fftshift(j); 原图像原图的傅⾥叶频谱l=log(abs(k));m=fftshift(j);RR=real(m);II=imag(m);A=sqrt(RR.^2+II.^2);A=(A-min(min(A)))/(max(max(A)))*255;b=circshift(s,[800 450]);b=rgb2gray(b)b=double(b) 平移后的图像平移后的傅⾥叶频谱c=fft2(b);e=fftshift(c);l=log(abs(e));f=fftshift(c);WW=real(f);ZZ=imag(f);B=sqrt(WW.^2+ZZ.^2);B=(B-min(min(B)))/(max(max(B)))*255;subplot(2,2,1);imshow(s);subplot(2,2,2);imshow(uint8(b));subplot(2,2,3);imshow(A);subplot(2,2,4);imshow(B);2、对⼀幅图像进⾏旋转,显⽰原始图像与处理后图像,分别对其进⾏傅⾥叶变换,显⽰变换后结果,分析原图的傅⾥叶谱与旋转后傅⾥叶频谱的对应关系。

数字图像处理实验(1)

数字图像处理实验(1)

3)存储该图像(文件名用同学们的本名); 4)、制作标准像的硬拷贝;打印两张,一张
上交(附在实验报告中),一张自己保留;
五、撰写实验报告 1)、实验目的叙述; 2)、实验环境描述; 3)、实验项目及内容; 4)、操作步骤详细描述;包括:系统的激 活方法,菜单的运用等;
5)、记录实验结果。 6)、基本原理介绍; 7)、实验现象描述; 8)、实验结果分析;
谢谢
软件: 操作系统:WINDOWS XP 应用软件: 数字图像处理演示软件。
三、实验内容:
1)、图像信息获取; 2)、图像存储; 3)、观察直方图均衡化处理的效果; 4)、观察图像边缘增强处理效果; 5)、拍摄自己的标准像。
四、实验步骤: 1、图像信息的获取: 1)、激活软件; 2)、调整摄像机的光圈和聚焦,
数字图像处理实验
(一)
一、实验目的
1)、了解“数字图像处理系统”的基本组 成结构;
2)、掌握微型数字图像处理系统的基本 操作方法;
3)、体验主要数字图像处理内容的效果。
二、实验的软、硬件平台:
硬件: 微型图像处理系统, 包括:主机, PC机; 摄像机:Logitech 130万像素, 分辨率:640×480 最高分辨率:1280×960 手动聚焦调整.
摄取一张明暗合适的图像;
ห้องสมุดไป่ตู้
3)、存储图像;
4)、调出该图像,验证是否成功存储了该 图像。
2、观察图像均衡化处理效果 1)、激活图像处理软件; 2)、调整摄像机光圈,摄取一张偏暗的图像 并存储该图像;
3)、调用演示程序中的直方图统计功 能,观察直方图形状;
4)、调用直方图均衡化处理功能,观察 处理结果,同时调用直方图统计功 能,观察直方图形状;

数字图像处理实习1—Matlab图像处理初步

数字图像处理实习1—Matlab图像处理初步

实验1——Matlab图像处理初步
实验目的:熟悉Matlab语言关于图像处理的基本操作
实验内容:练习imread、imshow、iminfo、imwrite、subplot、for等命令以及矩阵计算有关命令。

实验要求:
1、读取并显示cameraman.tif图像(提示:imread)。

2、将图像中间的1/3部分(如图)分别作如下处理,其余部分不变
a) 每个像素点的值都乘以2,即f(x,y)=2*f(x,y),显示处理前后的图像(提
示:imshow),同一个图像窗口左右显示(提示:subplot),左边显示原
始图像,右边显示处理后图像,处理后图像保存为cameraman1.bmp(提
示:imwrite)
b) 每个像素点取反色,即f(x,y)=255-f(x,y);显示处理前后的图像,同一个
图像窗口上下显示(提示:subplot),上边显示原始图像,下边显示处理
后图像,处理后图像保存为cameraman2.bmp(提示:imwrite)
3、撰写实验报告并附上所用程序和结果。

f=imread('cameraman.tif');
[m n]=size(f);
g=f;
r=round(m/3);
c=round(n/3);
for i=r:2*r
for j=c:2*c
g(i,j)=2*f(i,j);
end
end
subplot(2,1,1),imshow(f);
subplot(2,1,2),imshow(g);
imwrite(g,'cameraman1.bmp','bmp');
2013-12-16。

数字图像处理 实验报告(完整版)

数字图像处理 实验报告(完整版)

数字图像处理(一)实验一 MATLAB数字图像处理初步一、显示图像1.利用imread( )函数读取一幅图像,假设其名为lily.tif,存入一个数组中;2.利用whos 命令提取该读入图像flower.tif的基本信息;3.利用imshow()函数来显示这幅图像;实验结果如下图:源代码:>>I=imread('lily.tif')>> whos I>> imshow(I)二、压缩图像4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为lily.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。

6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flily.bmp。

7.用imread()读入图像Sunset.jpg和Winter.jpg;8.用imfinfo()获取图像Sunset.jpg和Winter.jpg的大小;9.用figure,imshow()分别将Sunset.jpg和Winter.jpg显示出来,观察两幅图像的质量。

其中9的实验结果如下图:源代码:4~6(接上面两个) >>I=imread('lily.tif')>> imfinfo 'lily.tif';>> imwrite(I,'lily.jpg','quality',20);>> imwrite(I,'lily.bmp');7~9 >>I=imread('Sunset.jpg');>>J=imread('Winter.jpg')>>imfinfo 'Sunset.jpg'>> imfinfo 'Winter.jpg'>>figure(1),imshow('Sunset.jpg')>>figure(2),imshow('Winter.jpg')三、二值化图像10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。

数字图像处理实验一

数字图像处理实验一

《数字图像处理》实验报告实验一:Matlab编程基础实验姓名:xx班级:xx学号:xx一、实验目的1.了解MATLAB 程序设计语言的基本特点,熟悉MATLAB软件运行环境,了解MATLAB的函数库及应用。

2.熟悉管理、创建、保存、打开文件及数据的方法,设置文件路径的方法。

3.掌握变量、函数等有关概念,具备初步的将一般数学问题转化为对应计算机模型并进行处理的能力。

二、实验仪器1.计算机一台。

2.MATLAB图像处理工具箱。

三、实验内容1. 打开Matlab,熟悉Matlab环境在命令区键入如下命令,观察程序执行情况。

显示图像。

I=imread('FigP0606.tif ' );imshow(I);创建矩阵A=ones(3,5);2. 学习m文件的建立、保存、打开、运行方法t=0:0.1:2*pi;y1=sin(t);h_line1=plot(t,y1,':');hold ony2=cos(t);h_line2=plot(t,y2,'*');h_label=xlabel('Time(0~2\pi)','FontWeigh' , 'bold'); h_textl =text(pi,0,'\leftarrowsin wave');h_text2=text(pi/2,0,'\leftarrowcos wave');3. 练习图像文件的打开、处理、显示操作,运行并观察实验结果。

I=imread('10.pgm');imshow(I);4. 练习调用MATLAB函数imread,imshow,imopen, imsubtract,imadjust ,stretchlim,分析函数功能。

(1)imread:读取图片(2)imshow: 显示图片示例:i=imread('bacteria.bmp');imshow(i);(3)imopen:开运算,作用是:可以使边界平滑,消除细小的尖刺,断开窄小的连接,保持面积大小不变等。

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告数字图像处理实验报告实验⼀数字图像基本操作及灰度调整⼀、实验⽬的1)掌握读、写图像的基本⽅法。

2)掌握MATLAB语⾔中图像数据与信息的读取⽅法。

3)理解图像灰度变换处理在图像增强的作⽤。

4)掌握绘制灰度直⽅图的⽅法,理解灰度直⽅图的灰度变换及均衡化的⽅法。

⼆、实验内容与要求1.熟悉MATLAB语⾔中对图像数据读取,显⽰等基本函数特别需要熟悉下列命令:熟悉imread()函数、imwrite()函数、size()函数、Subplot()函数、Figure()函数。

1)将MATLAB⽬录下work⽂件夹中的forest.tif图像⽂件读出.⽤到imread,imfinfo等⽂件,观察⼀下图像数据,了解⼀下数字图像在MATLAB中的处理就是处理⼀个矩阵。

将这个图像显⽰出来(⽤imshow)。

尝试修改map颜⾊矩阵的值,再将图像显⽰出来,观察图像颜⾊的变化。

2)将MATLAB⽬录下work⽂件夹中的b747.jpg图像⽂件读出,⽤rgb2gray()将其转化为灰度图像,记为变量B。

2.图像灰度变换处理在图像增强的作⽤读⼊不同情况的图像,请⾃⼰编程和调⽤Matlab函数⽤常⽤灰度变换函数对输⼊图像进⾏灰度变换,⽐较相应的处理效果。

3.绘制图像灰度直⽅图的⽅法,对图像进⾏均衡化处理请⾃⼰编程和调⽤Matlab函数完成如下实验。

1)显⽰B的图像及灰度直⽅图,可以发现其灰度值集中在⼀段区域,⽤imadjust函数将它的灰度值调整到[0,1]之间,并观察调整后的图像与原图像的差别,调整后的灰度直⽅图与原灰度直⽅图的区别。

2) 对B 进⾏直⽅图均衡化处理,试⽐较与源图的异同。

3) 对B 进⾏如图所⽰的分段线形变换处理,试⽐较与直⽅图均衡化处理的异同。

图1.1 分段线性变换函数三、实验原理与算法分析1. 灰度变换灰度变换是图像增强的⼀种重要⼿段,它常⽤于改变图象的灰度范围及分布,是图象数字化及图象显⽰的重要⼯具。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MATLAB数字图像处理初步
通过实验对MatLab软件的基本使用基本的了解,学会使用MatLab软件来读取一个特定格式的图像,并通过相关的命令语句对图像进行格式转换、图像压缩、二值化等的处理,掌握利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息,掌握在MATLAB中如何通过imshow()语句来读取图像等等。

一、实验目的与要求
1.熟悉及掌握在MATLAB中能够处理哪些格式图像。

2.熟练掌握在MATLAB中如何读取图像。

3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。

4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。

5.图像间如何转化。

二、实验内容及步骤
1.利用imread( )函数读取一幅图像,假设其名为”*.t i f”,存入一个数组中;
>>I=imread('*.tif');
2.利用whos命令提取该读入图像”*.tif”的基本信息;
>>whos I
3.利用imshow()函数来显示这幅图像;
>>imshow(I);
4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;
>>imfinfo('*.tif');
5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为flower.jpg;
语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。

>>imwrite(I,'*.jpg','quality',50)
6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flower.bmp。

>>imwrite(I,'第一个.bmp');
7.用imread()读入图像:Lenna256.jpg 和camemaman.jpg;
>>b=imread('lena256.bmp');
>>c=imread('cameraman.tif');
8.用imfinfo()获取图像Lenna256.jpg和camemaman.jpg 的大小;
>>imfinfo('lena256.bmp');
>>imfinfo('cameraman.tif');
9.用figure,imshow()分别将Lenna256.jpg和camemaman.jpg显示
10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。

>>d=im2bw(b);
>> figure
>>imshow(b);
>>figure
>>imshow(d);
三、实验结果
四、实验总结。

相关文档
最新文档