当前位置:文档之家› 数字图像处理3

数字图像处理3

数字图像处理3
数字图像处理3

实验三空域滤波增强

一、实验目的

1.了解空域滤波增强的Matlab实现方法;

2.掌握噪声模拟和图像滤波函数的使用方法;

3.能够将给定图像+噪声,使用均值滤波器、中值滤波器对不同强度的高斯噪声和椒盐

噪声,进行滤波处理;

4.能够正确地评价处理的结果;并从理论上作出合理的解释。

二、实验内容

1. 噪声模拟

利用函数imnoise给图像‘eight.tif’分别添加高斯(gaussian)噪声和椒盐(salt & pepper)噪声。

I=imread('eight.tif');

imshow(I)

I1=imnoise(I,'gaussian',0,0.01);

figure,imshow(I1)

I2=imnoise(I,'salt & pepper');

figure,imshow(I2)

2. 均值滤波和中值滤波

A)均值滤波

在matlab环境中,程序首先读取图像,然后调用图像增强()函数,设置相关参数,再输出处理后的图像。

I = imread('cameraman.tif');

figure,imshow(I);

J=filter2(fspecial(‘average’,3),I)/255;

figure,imshow(J);

B)中值滤波

在matlab环境中,程序首先读取图像,然后调用图像增强(中值滤波)函数,设置相关参数,再输出处理后的图像。

I = imread('cameraman.tif');

figure,imshow(I);

J=medfilt2(I,[5,5]);

figure,imshow(J);

3. 空域滤波

A)对上述噪声图像进行均值滤波和中值滤波,比较滤波效果。

I=imread('Sample2-1.jpg');

J = imnoise(I,'gauss',0.02); %添加高斯噪声

%J = imnoise(I,'salt & pepper',0.02); %添加椒盐噪声

K = filter2(fspecial('average',3),J)/255; %均值滤波3 ×3

L = filter2(fspecial('average',5),J)/255; %均值滤波5 ×5

M = medfilt2(J,[3 3]); %中值滤波3 ×3 模板

N = medfilt2(J,[4 4]); % 中值滤波4 ×4 模板

imshow(I);

figure,imshow(J);

figure,imshow(K);

figure,imshow(L);

figure,imshow(M);

figure,imshow(N);

B)总结均值滤波和中值滤波的特点及使用场合。

均值滤波器是一种最常用的线性低通平滑滤波器。可抑制图像中的噪声,但同时也使图像变得模糊

中值滤波器是一种最常用的非线性平滑滤波器。可消除图像中孤立的噪声点,又可产生较少的模糊

C)*对图像'saturn.tif'采用'laplacian'高通滤波器进行锐化滤波。

I=imread('saturn.tif');

imshow(I)

h=fspecial('laplacian');

I2=filter2(h,I);

figure,imshow(I2)

数字图像处理实验1

实验一 实验内容和步骤 练习图像的读取、显示和保存图像数据,步骤如下: (1)使用命令figure(1)开辟一个显示窗口 (2)读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内显示、二值图像和灰度图像,注上文字标题。 (3)保存转换后的灰度图像和二值图像 (4)在同一个窗口显示转换后的灰度图像的直方图 I=imread('BaboonRGB.bmp'); figure,imshow(I); I_gray=rgb2gray(I); figure,imshow(I_gray); I_2bw=Im2bw(I_gray); figure,imshow(I_2bw); subplot(1,3,1),imshow(I),title('RGB图像'); subplot(1,3,2),imshow(I_gray),title('灰度图像'); subplot(1,3,3),imshow(I_2bw),title('二值图像'); imwrite(I_gray,'Baboongray.png'); imwrite(I_2bw,'Baboon2bw.tif'); figure;imhist(I_gray);

RGB 图 像灰度图 像二值图 像 050100150200250 500 1000 1500 2000 2500 3000

(5)将原RGB 图像的R 、G 、B 三个分量图像显示在figure(2)中,观察对比它们的特点,体会不同颜色所对应的R 、G 、B 分量的不同之处。 [A_RGB,MAP]=imread('BaboonRGB.bmp'); subplot(2,2,1),imshow(A_RGB),title('RGB'); subplot(2,2,2),imshow(A_RGB(:,:,1)),title('R'); subplot(2,2,3),imshow(A_RGB(:,:,2)),title('G'); subplot(2,2,4),imshow(A_RGB(:,:,3)),title('B'); (6)将图像放大1.5倍,插值方法使用三种不同方法,在figure(3)中显示放大后的图像,比较不同插值方法的结果有什么不同。将图像放大到其它倍数,重复实验;A=imread('BaboonRGB.bmp'); figure(3),imshow(A),title('原图像'); B=imresize(A,1.5,'nearest'); figure(4),imshow(B),title('最邻近法') C=imresize(A,1.5,'bilinear'); ; figure(5),imshow(C),title('双线性插值'); D=imresize(A,1.5,'bicubic'); figure(6),imshow(D),title('双三次插值 '); RGB R G B

(完整版)数字图像处理第三版中文答案解析冈萨雷斯

第二章 2.1(第二版是0.2和1.5*1.5的矩形,第三版是0.3和1.5圆形) 对应点的视网膜图像的直径x 可通过如下图题2.1所示的相似三角形几何关系得到,即 ()()017 023 02.x .d = 解得x=0.06d 。根据2.1 节内容,我们知道:如果把中央凹处想象为一个有337000 个成像单元的圆形传感器阵列,它转换成一个大小2 5327.?π成像单元的阵列。假设成像单元之间的间距相等,这表明在总长为1.5 mm (直径) 的一条线上有655个成像单元和654个成像单元间隔。则每个成像单元和成像单元间隔的大小为s=[(1.5 mm)/1309]=1.1×10-6 m 。 如果在中央凹处的成像点的大小是小于一个可分辨的成像单元,在我们可以认为改点对于眼睛来说不可见。换句话说, 眼睛不能检测到以下直径的点: m .d .x 61011060-?<=,即m .d 610318-?< 2.2 当我们在白天进入一家黑暗剧场时,在能看清并找到空座时要用一段时间适应。2.1节描述的视觉过程在这种情况下起什么作用? 亮度适应。 2.3 虽然图2.10中未显示,但交流电的却是电磁波谱的一部分。美国的商用交流电频率是77HZ 。问这一波谱分量的波长是多少? 光速c=300000km/s ,频率为77Hz 。 因此λ=c/v=2.998 * 108(m/s)/77(1/s) = 3.894*106 m = 3894 Km. 2.5 根据图2.3得:设摄像机能看到物体的长度为x (mm),则有:500/x=35/14; 解得:x=200,所以相机的分辨率为:2048/200=10;所以能解析的线对为:10/2=5线对/mm. 2.7 假设中心在(x0,y0)的平坦区域被一个强度分布为: ])0()0[(2 2),(y y x x Ke y x i -+--= 的光源照射。为简单起见,假设区域的反射是恒定 的,并等于1.0,令K=255。如果图像用k 比特的强度分辨率进行数字化,并且眼睛可检测相邻像素间8种灰度的突变,那么k 取什么值将导致可见的伪轮廓? 解:题中的图像是由: ()()()()()[ ]()()[]2 02 02 020********y y x x y y x x e .e y ,x r y ,x i y ,x f -+---+--=?== 一个截面图像见图(a )。如果图像使用k 比特的强度分辨率,然后我们有情况见图(b ),其中()k G 21255+=?。因为眼睛可检测4种灰度突变,因此,k G 22564==?,K= 6。

数字图像处理实验三中值滤波和均值滤波实验报告

数字图像处理实验三中值滤波和均值滤波实验报告

数字图像处理实验三 均值滤波、中值滤波的计算机实现12281166 崔雪莹计科1202班 一、实验目的: 1)熟悉均值滤波、中值滤波处理的理论基础; 2)掌握均值滤波、中值滤波的计算机实现方法; 3)学习VC++ 6。0 的编程方法; 4)验证均值滤波、中值滤波处理理论; 5)观察均值滤波、中值滤波处理的结果。 二、实验的软、硬件平台: 硬件:微型图像处理系统,包括:主机, PC机;摄像机; 软件:操作系统:WINDOWS2000或WINDOWSXP应用软件:VC++ 6.0 三、实验内容: 1)握高级语言编程技术; 2)编制均值滤波、中值滤波处理程序的方法; 3)编译并生成可执行文件; 4)考察处理结果。 四、实验要求: 1)学习VC++确6。0 编程的步骤及流程; 2)编写均值滤波、中值滤波的程序;

3)编译并改错; 4)把该程序嵌入试验二给出的界面中(作适当修改); 5)提交程序及文档; 6)写出本次实验的体会。 五、实验结果截图 实验均值滤波采用的是3X3的方块,取周围的像素点取得其均值代替原像素点。边缘像素的处理方法是复制边缘的像素点,增加一个边框,计算里面的像素值得均值滤波。

六、实验体会 本次实验在前一次的实验基础上增加均值滤波和中值滤波,对于椒盐噪声的处理,发现中值滤波的效果更为好一点,而均值滤波是的整个图像变得模糊了一点,效果差异较大。本次实验更加增加了对数字图像处理的了解与学习。 七、实验程序代码注释及分析 // HistDemoADlg.h : 头文件 // #include "ImageWnd.h" #pragma once // CHistDemoADlg 对话框 class CHistDemoADlg : public CDialogEx { // 构造

数字图像处理实验报告

数字图像处理实验报告 实验一数字图像基本操作及灰度调整 一、实验目的 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) 图像反转 灰度级范围为[0, L-1]的图像反转可由下式获得 r L s --=1 2) 对数运算:有时原图的动态范围太大,超出某些显示设备的允许动态范围, 如直接使用原图,则一部分细节可能丢失。解决的方法是对原图进行灰度压缩,如对数变换: s = c log(1 + r ),c 为常数,r ≥ 0 3) 幂次变换: 0,0,≥≥=γγc cr s 4) 对比拉伸:在实际应用中,为了突出图像中感兴趣的研究对象,常常要求 局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸: 其对应的数学表达式为:

数字图像处理上机实验三

医学图像处理实验三1、计算图像的梯度,梯度值和梯度角。 I=imread('C:\Users\Administrator\Desktop\cat.jpg'); B=rgb2gray(I); C=double(B); e=1e-6;%10^-6 [dx,dy]=gradient(C);%计算梯度 G=sqrt(dx.*dx+dy.*dy);%梯度幅值 figure,imshow(uint8(G)),title('梯度图像'); pha=atan(dy./(dx+e)) figure,imshow(pha,[]) 图 1

图 2 梯度角图 2、计算图像边缘检测,用滤波器方式实现各种算子。 (1)Roberts算子 clear; I=imread('C:\Users\admin\Desktop\mao.jpg'); B=rgb2gray(I); [m,n]=size(B); nB=B; robertsnum=0;%经roberts算子计算得到的每一个像素的值robertsthreshold=0.6;%设定阈值 for j=1:m-1;%进行边界提取 for k=1:n-1 robertsnum=abs(B(j,k)-B(j+1,k+1))+abs(B(j+1,k)-B(j,k+1)); if(robertsnum>robertsthreshold) nB(j,k)=255; else nB(j,k)=0; end end end subplot(1,2,1);imshow(B);title('原图'); subplot(1,2,2);imshow(nB,[]);title('Robert算子处理后的图像');

数字图像处理实验 实验二

实验二MATLAB图像运算一、实验目的 1.了解图像的算术运算在数字图像处理中的初步应用。 2.体会图像算术运算处理的过程和处理前后图像的变化。 二、实验步骤 1.图像的加法运算-imadd 对于两个图像f x,y和 (x,y)的均值有: g x,y=1 f x,y+ 1 (x,y) 推广这个公式为: g x,y=αf x,y+β (x,y) 其中,α+β=1。这样就可以得到各种图像合成的效果,也可以用于两张图像的衔接。说明:两个示例图像保存在默认路径下,文件名分别为'rice.png'和'cameraman.tif',要求实现下图所示结果。 代码: I1 = imread('rice.png'); I2 = imread('cameraman.tif'); I3 = imadd(I1, I2,'uint8'); I4 = imadd(I1, I2,'uint16'); subplot(2, 2, 1), imshow(I1), title('?-ê?í???1'); subplot(2, 2, 2), imshow(I2), title('?-ê?í???2'); subplot(2, 2, 3), imshow(I3), title('8??í?????ê?'); subplot(2, 2, 4), imshow(I4), title('16??í?????ê?'); 结果截图:

2.图像的减法运算-imsubtract 说明: 背景图像可通过膨胀算法得到background = imopen(I,strel('disk',15));,要求实现下图所示结果。 示例代码如下: I1 = imread('rice.png'); background = imerode(I1, strel('disk', 15)); rice2 = imsubtract(I1, background); subplot(2, 2, 1), imshow(I1), title('?-ê?í???'); subplot(2, 2, 2), imshow(background), title('±3?°í???'); subplot(2, 2, 3), imshow(rice2), title('′|àíoóμ?í???'); 结果截图: 3.图像的乘法运算-immultiply

数字图像处理第三版 (Rafael C.Gonzalez著)第三章答案

(a )由2 )(Kr Ae r T s -==,3/2 A Ae KL =-得:) 3/1ln(20=-KL ,20 /0986.1L K = 2 2 0986.1)(r L Ae r T s -== (b )、由 , 4/)1(2 0B e KL =--B 得: )4/3ln(2 0=-KL ,2 0/2877.0L K = )1()(2 2 2877.0r L e B r T s - -== (c )、 逐次查找像素值,如(x ,y )=(0,0)点的f (x ,y )值。若该灰度值的4比特的第0 位是1,则该位置的灰度值全部置1,变为15;否则全部置0,变为0。因此第7位平面[0,7]置0,[7,15]置1,第6位平面[0,3],[4,7]置0,[8,11],[12,15]置15。依次对图像的全部像素进行操作得到第0位平面,若是第i 位平面,则该位置的第i 位值是0还是1,若是1,则全置1,变为15,若是0,则全置0 设像素的总数为n ,是输入图像的强度值,由,rk 对 应sk ,所以,由 和得 由此得知,第二次直方图均衡化处理的结果与第一次直 方图均衡化处理的结果相同,这里我们假设忽略不计四舍五入的误差。

3.11题、由 dw w p z G v z z )()(0 ? = =, ?? ?=<<-5 .0041 5.044)( w w w w z w p { 5 .0021 5.02210 2 2 )()(<<<<+-= = =? z z z z z z z dw w p z G v 令v s =得 所以?? ???=?? ?? ?==- <<+-±<<- -+-±±-±-5.010221 5.0121 )2(25.022 125.01 22 )(r r r r r r v v v G z 3.12题、第k 个点邻域内的局部增强直方图的值为: P r (r k )=n k /n (k=0,1,2,……K-1)。这里n k 是灰度级为r k 的像素个数,n 是邻域内像素的总个数,k 是图像中可能的灰度级总数。假设此邻域从左以一个像素为步长向右移动。这样最左面的列将被删除的同时在后面又产生一个新的列。变化后的直方图则变成 : (k=0,1,2,……K-1) 这里n lk 是灰度级r k 在左面的列出现的次数,n rk 则为在右面出现的次数。 上式也可以改写成: (k=0,1,2,……K-1) 同样的方法也适用于其他邻域的移动: 这里a k 是灰度级r k 在邻域内在移动中被删除的像素数,b k 则是在移动中引入的像素数: (k=0,1,2,…… K-1) 上式等号右边的第一项为0(因为f 中的元素均为常数)。变量 是噪声的简单抽样,它 的方差是。因此 并且我们可以得到。上述过

数字图像处理实验报告实验三

中南大学 数字图像处理实验报告实验三数学形态学及其应用

实验三 数学形态学及其应用 一.实验目的 1.了解二值形态学的基本运算 2.掌握基本形态学运算的实现 3.了解形态操作的应用 二.实验基本原理 腐蚀和膨胀是数学形态学最基本的变换,数学形态学的应用几乎覆盖了图像处理的所有领域,给出利用数学形态学对二值图像处理的一些运算。 膨胀就是把连接成分的边界扩大一层的处理。而收缩则是把连接成分的边界点去掉从而缩小一层的处理。 二值形态学 I(x,y), T(i,j)为 0/1图像Θ 腐蚀:[]),(&),(),)((),(0,j i T j y i x I AND y x T I y x E m j i ++=Θ== 膨胀:[]),(&),(),)((),(0 ,j i T j y i x I OR y x T I y x D m j i ++=⊕== 灰度形态学T(i,j)可取10以外的值 腐蚀: []),(),(min ),)((),(1 ,0j i T j y i x I y x T I y x E m j i -++=Θ=-≤≤ 膨胀: []),(),(max ),)((),(1 ,0j i T j y i x I y x T I y x D m j i +++=⊕=-≤≤ 1.腐蚀Erosion: {}x B x B X x ?=Θ: 1B 删两边 2B 删右上 图5-1 剥去一层(皮) 2.膨胀Dilation: {}X B x B X x ↑⊕:= 1B 补两边 2B 补左下 图5-2 添上一层(漆) 3.开运算open :

B B X ⊕Θ=)(X B 4.闭close :∨ Θ⊕=B B X X B )( 5.HMT(Hit-Miss Transform:击中——击不中变换) 条件严格的模板匹配 ),(21T T T =模板由两部分组成。1T :物体,2T :背景。 {} C x x i X T X T X T X ??=?21, 图5-3 击不中变换示意图 性质: (1)φ=2T 时,1T X T X Θ=? (2))()()(21T X T X T X C Θ?Θ=? C T X T X )()(21Θ?Θ= )/()(21T X T X ΘΘ= 6.细化/粗化 (1)细化(Thin ) C T X X T X XoT )(/??=?= 去掉满足匹配条件的点。 图5-4 细化示意图 系统细化{}n B oB XoB T Xo ))(((21=, i B 是1-i B 旋转的结果(90?,180?,270?)共8种情况 适于细化的结构元素 1111000d d I = d d d L 10110 0= (2)粗化(Thick ) )(T X X T X ??=? 用(){}0,01=T (){}0,12=T 时,X X X T X =?=? X 21 1 1 2 3 T ? XoT X ? X X ?T X ΘT T ⊕

数字图像处理——彩色图像实验报告

6.3实验步骤 (1)对彩色图像的表达和显示 * * * * * * * * * * * *显示彩色立方体* * * * * * * * * * * * * rgbcube(0,0,10); %从正面观察彩色立方体 rgbcube(10,0,10); %从侧面观察彩色立方 rgbcube(10,10,10); %从对角线观察彩色立方体 %* * * * * * * * * *索引图像的显示和转换* * * * * * * * * * f=imread('D:\Picture\Fig0604(a)(iris).tif'); figure,imshow(f);%f是RGB真彩图像 %rgb图像转换成8色索引图像,不采用抖动方式 [X1,map1]=rgb2ind(f,8,'nodither'); figure,imshow(X1,map1); %采用抖动方式转换到8色索引图像 [X2,map2]=rgb2ind(f,8,'dither'); figure,imshow(X2,map2); %显示效果要好一些 g=rgb2gray(f); %f转换为灰度图像 g1=dither(g);%将灰色图像经过抖动处理,转换打二值图像figure,imshow(g);%显示灰度图像 figure,imshow(g1);%显示抖动处理后的二值图像 程序运行结果:

彩色立方体原图 不采用抖动方式转换到8色索引图像采用抖动方式转换到8色索引图像 灰度图像抖动处理后的二值图像

(2)彩色空间转换 f=imread('D:\Picture\Fig0604(a)(iris).tif'); figure,imshow(f);%f是RGB真彩图像 %转换到NTSC彩色空间 ntsc_image=rgb2ntsc(f); figure,imshow(ntsc_image(:,:,1));%显示亮度信息figure,imshow(ntsc_image(:,:,2));%显示色差信息figure,imshow(ntsc_image(:,:,3));%显示色差信息 %转换到HIS彩色空间 hsi_image=rgb2hsi(f); figure,imshow(hsi_image(:,:,1));%显示色度信息figure,imshow(hsi_image(:,:,2)); %显示饱和度信息figure,imshow(hsi_image(:,:,3));%显示亮度信息 程序运行结果: 原图 转换到NTSC彩色空间

数字图像处理实验三

数字图像处理实验报告 学院:电子信息与自动化 专业:电子信息工程 班级:120224 实验人:张文君(12022419) 同组人:姚朱晨(12022417)

实验三: 数字图像的频域增强:低通滤波 一.实验目的 1. 掌握图像滤波的基本定义及目的。 2. 理解频域滤波的基本原理及方法。 3. 掌握进行图像的低通滤波的方法。 二.实验基本原理 频域增强是利用图像变换方法将原来的图像空间中的图像以某种形式转换到其他空间中,然后利用该空间的特有性质方便地进行图像处理,最后再转换回原来的图像空间中,从而得到处理后的图像。 频域增强的主要步骤是: 1.选择变换方法,将输入图像变换到频域空间。 2.在频域空间中,根据处理目的设计一个转移函数,并进行处理。 3.将所得结果用反变换得到增强的图像。 常用的频域增强方法有低通滤波和高通滤波。 低通滤波 图像的能量大部分集中在幅度谱的低频和中频部分,而图像的边缘和噪声对应于高频部分。因此能降低高频成分幅度的滤波器就能减弱噪声的影响。由卷积定理,在频域实现低通滤波的数学表达式: G (u ,v ) =H (u ,v )F (u ,v ) 1) 理想低通滤波器(ILPF ) { 0),u (0 ),(10)v ,u (≤>= v D v u D H 2) 巴特沃斯低通滤波器(BLPF ) n D v u D v u H 20),()12(11 ),(??? ? ??-+= 3)指数型低通滤波器(ELPF ) 2 0),(),(n D v u D e v u H ? ?????-= 三.实验内容与要求

平滑频域滤波 1) 设计理想低通滤波器、巴特沃斯低通滤波器和指数型低通滤波器,截止频率自选。 2) 读出cameraman.tif 这幅图像,加入椒盐躁声,分别采用理想低通滤波器、巴特沃斯低通滤波器和高斯低通滤波器对其进行滤波(截止频率自选),再做反变换得到低通滤波后的空域图像。 四.实验程序 I=imread('cameraman.tif');%读入图像 figure; subplot(2,3,1),imshow(I); title('原图'); I=imnoise(I,'salt & pepper',0.02); %加入椒盐躁声 subplot(2,3,2),imshow(I); title('加入椒盐躁声图'); f=double(I); % 由于MATLAB 不支持unsigned int 型图像计算,故将图像数据变为double 型 g=fft2(f); % 傅里叶变换 g=fftshift(g); % 将傅里叶变化零频率搬移到频谱中间 [M,N]=size(g); % 确定图像大小,M 为行数,N 为列数 D0=100; %截止频率 m=fix(M/2); n=fix(N/2);% 确定傅里叶变化原点(即直流部分),并且数据向0 取整result=zeros(M,N); for i=1:1:M for j=1:1:N d=sqrt((i-m)^2+(j-n)^2);%计算D(u,v) if(d<=D0) h=1;%如果D(u,v)<=D0, H(u,v)=1 else h=0;%如果D(u,v)>D0, H(u,v)=0 end result(i,j)=h*g(i,j); end end result=ifftshift(result);% 傅里叶逆移频,由于之前做过fftshift J1=ifft2(result);% 傅里叶反变换 J2=uint8(real(J1));%提取J1 的实部,并将该数据定义为8 位无符号整数 subplot(2,3,3),imshow(J2) ; title('理想低通滤波图'); n=2;%二阶 D0=150; %截止频率 m=fix(M/2); n=fix(N/2);% 确定傅里叶变化原点(即直流部分),并且数据向0 取整result=zeros(M,N);

数字图像处理实验

《数字图像处理》 实验报告 学院:信息工程学院 专业:电子信息工程 学号: 姓名: 2015年6月18日

目录 实验一图像的读取、存储和显示 (2) 实验二图像直方图分析 (6) 实验三图像的滤波及增强 (15) 实验四噪声图像的复原 (19) 实验五图像的分割与边缘提取 (23) 附录1MATLAB简介 (27)

实验一图像的读取、存储和显示 一、实验目的与要求 1.熟悉及掌握在MATLAB中能够处理哪些格式图像。 2.熟练掌握在MATLAB中如何读取图像。 3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。 4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。 5.图像的显示。 二、实验原理 一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。图像关于x和y坐标以及振幅连续。要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。将坐标值数字化成为取样;将振幅数字化成为量化。采样和量化的过程如图1所示。因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。 三、实验设备 (1) PC计算机 (2) MatLab软件/语言包括图像处理工具箱(Image Processing Toolbox) (3) 实验所需要的图片 四、实验内容及步骤 1.利用imread( )函数读取一幅图像,假设其名为flower.tif,存入一个数组中; 2.利用whos 命令提取该读入图像flower.tif的基本信息; 3.利用imshow()函数来显示这幅图像; 4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息; 5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件设为flower.jpg语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。 6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flower.bmp。 7.用imread()读入图像:Lenna.jpg 和camema.jpg; 8.用imfinfo()获取图像Lenna.jpg和camema.jpg 的大小;

数字图像处理第三版中文答案--冈萨雷斯

数字图像处理第三版中文答案--冈萨雷斯

第二章 2.1(第二版是0.2和1.5*1.5的矩形,第三版是0.3和1.5圆形) 对应点的视网膜图像的直径x 可通过如下图题2.1所示的相似三角形几何关系得到,即 ()()017 02302.x .d = 解得x=0.06d 。根据2.1 节内容,我们知道:如果把中央凹处想象为一个有337000 个成像单元的圆形传感器阵列,它转换成一个大小25327.?π成像单元的阵列。假设成像单元之间的间距相等,这表明在总长为1.5 mm (直径) 的一条线上有655个成像单元和654个成像单元间隔。则每个成像单元和成像单元间隔的大小为s=[(1.5 mm)/1309]=1.1×10-6 m 。 如果在中央凹处的成像点的大小是小于一个可分辨的成像单元,在我们可以认为改点对于眼睛来说不可见。换句话说, 眼睛不能检测到以下直径的点: m .d .x 61011060-?<=,即m .d 6 10318-?<

2.2 当我们在白天进入一家黑暗剧场时,在能看清并找到空座时要用一段时间适应。2.1节描述的视觉过程在这种情况下起什么作用? 亮度适应。 2.3 虽然图2.10中未显示,但交流电的却是电磁波谱的一部分。美国的商用交流电频率是77HZ 。问这一波谱分量的波长是多少? 光速c=300000km/s ,频率为77Hz 。 因此λ=c/v=2.998 * 108(m/s)/77(1/s) = 3.894*106m = 3894 Km. 2.5 根据图2.3得:设摄像机能看到物体的长度为x (mm),则有:500/x=35/14; 解得:x=200,所以相机的分辨率为:2048/200=10;所以能解析的线对为:10/2=5线对/mm. 2.7 假设中心在(x0,y0)的平坦区域被一个强度分布为: ])0()0[(22),(y y x x Ke y x i -+--= 的光源照射。为简单起见,假设区域的反射是恒定的,并等于1.0,令K=255。如果图像用k 比特的强度分辨率进行数

数字图像处理第三章答案

3.1 a 为正常数的指数式 e ar -2 对于构造灰度平滑变换函数是非常有 用的。由这个基本函数开始,构造具有下图形状的变换函数。所示的常数是输入参数,并且提出的变换必须包含这些参数的特定形式(为了答案曲线中的L 0不是所要求的参数)。 解:由(a )图所示,设e ar A r T -=2 )(,则 在r=0时,T(r)=A 在r=L 0时,T(r)=A/2 联立,解得L L a 0 693 .00 2 ln 2 2 ≈ = 则C r L C D r T s e K +--==-)1)(()(2 2 由(b )图所示,可以由(a)图翻转得到,所以(b )图的表达式 s=)1()(2 20 693 .0r L B r T e --= (c )图是(b )图沿y 轴平移得到,所以(c )图的表达式 C r L C D r T s e K +--==-)1)(()(2 3.19 (a)在3.6.2节中谈到,分布在图像背景上的孤立的亮和暗的像素团块,当它们小于中值滤波器区域的一半时,经过中值滤波器处理后会被滤除(被其邻值同化)。假定滤波器尺寸为n n ?,n 为奇数,解释这种现象的原因?

(b )考虑一副有不同像素团块的图像,假设在一个团块的所有点都比背景凉或者暗(但不是同时既比背景亮又比背景暗),并且每个团块的尺寸不大于22 n 。试求当n 符合什么条件时,有一个或多个这样的团块像(a )中所说的那样被分离出来? 答:在A 的结论下,我们考虑的团块的像素个数不可能超过2 )1(2 -n , 两个相近的或亮或暗的团块不可能同时出现在相邻的位置。在这个 n n ?的网格里,两个团块的最小距离至少大于)1(2-n ,也就是说至 少在对角线的区域分开跨越(n-1)个像素在对角线上。 3.29 CCD 电视摄像机用于每天24小时,每月30天对同一区域进行长期观测研究。5分钟拍一次数字图像并传送到中心场所。场景的照明,白天为自然光,晚上为人造光,没有无照明的时间,因此摄像机本身并不需要使用任何补偿装置。另外,使用数字技术对图像进行后处理并归一化,这样就使图像与恒定照明是等效的。对此,设计一种方法。可以在实验室内使用希望的任何方法,但要在设计中明确列出所做的所有假设。 答:本题是考虑到范围的照明停留在线性部分的相机的反应范围,

数字图像处理实验报告3

实验三数字图像的空间域滤波 院(系):电气学院姓名:刘丽霞学号:200902050068 实验时间:2012/11/20 实验地点:A07-602 指导老师:李静 一、实验目的 1)掌握图像滤波的基本定义及目的。 2)理解空间域滤波的基本原理及方法。 3)掌握进行图像的空域滤波的方法。 二、实验环境 1)在MATLAB的环境下进行实验; 2)复制若干图形文件至MATLAB目录下work文件夹中。 三、实验方法 1.平滑空间滤波: 1)读出eight.tif这幅图像,给这幅图像分别加入椒盐噪声和高 斯噪声后并与前一张图显示在同一图像窗口中。 I1=imnoise(I,'salt & pepper',0.02); %加入椒盐噪声 I2=imnoise(I,'gaussian',0,0.005); %加入高斯噪声 2)对加入噪声图像选用不同的平滑(低通)模板做运算,对比不 同模板所形成的效果,要求在同一窗口中显示。 Hs = fspecial('sobel'); Sobel = imfilter(I,Hs,'replicate'); %选用不同的平滑模板 3)使用函数imfilter时,分别采用不同的填充方法(或边界选 项,如零填充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后的图像。 4)运用for循环,将加有椒盐噪声的图像进行10次,20次均值 滤波,查看其特点,显示均值处理后的图像。 II1=rgb2gray(I1); a=1/9.*[1 1 1 1 1 1

1 1 1]; b=conv2(a,II1); %均值处理 5)对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对 有噪声的图像做处理,要求在同一窗口中显示结果。 2.锐化空间滤波 读出moon.tif这幅图像,采用3×3的拉普拉斯算子w = [ 1, 1, 1; 1 – 8 1; 1, 1, 1]对其进行滤波。 w =[1,1,1; 1,-8,1; 1,1,1]; K=conv2(T,w,'same');%3×3的拉普拉斯算子滤波 四、实验结果

数字图像处理实验一

数字图像处理—实验一 一.实验内容: 图像灰度变换 二.实验目的: 学会用Matlab软件对图像灰度进行变换;感受各种不同的灰度变换方法对最终图像效果的影响。 三.实验步骤: 1.获取实验用图像:rice.jpg. 使用imread函数将图像读入Matlab。 程序: clc;clear; figure; subplot(4,4,1); i = imread('rice.png'); i = im2double(i); imshow(i);title('1'); 2.产生灰度变换函数T1,使得: 0.3r r < 0.35 s = 0.105 + 2.6333(r – 0.35) 0.35 ≤r ≤0.65

1 + 0.3(r – 1) r > 0.65 用T1对原图像rice.jpg进行处理,使用imwrite函数保存处理后的新图像。程序: subplot(4,4,2); r=[0:0.001:1]; s=[r<0.35].*r*0.3+[r<=0.65].*[r>=0.35].*(0.105+2.6333*(r-0.35))+[r>0.65].*(1 +0.3*(r-1)); plot(r,s);title('2p'); subplot(4,4,3); T1=[i<0.35].*i*0.3+[i<=0.65].*[i>=0.35].*(0.105+2.6333*(i-0.35))+[i>0.65].*( 1+0.3*(i-1)); imshow(T1);title('2i'); imwrite(T1,'rice_T1.jpg','jpg');

3.产生灰度变换函数T2,使得: 用T2对原图像rice.jpg进行处理,使用imwrite保存处理后的新图像。 %3 subplot(4,4,4); r = [0:0.001:1];

数字图像处理课件(冈萨雷斯第三版)

数字图像处理Digital Image Processing 合肥工业大学理学院 信息与计算科学系 二零零九年

1.1 从图象到图像工程 1.1.1 图象和数字图象 ?什么是图象? 图象(image)是泛指照片、动画等等形成视觉景象的事物。 图象与计算机图形学中的图形的区别是:计算机图形学是从建立数学模型到生成图形,而图象通常是指从外界产生的图形。 客观世界是三维空间,但一般图象是二维的。二维图象在反映三维世界的过程中必然丢失了部分信息。即使是记录下来的信息也可能有失真,甚至于难以识别物体。因此,需要从图象中恢复和重建信息,分析和提取图象的数学模型,以至于形成人们对于图象记录下的事物有正确和深刻的认识。这个过程就成为图象处理过程。

?为什么需要数字图象(digital image )? 普通图象包含的信息量巨大,需要使用计算机对图象进行处理。因此,需要把普通图象转变成计算机能处理的数字图象。现在的数码相机可以直接地把视觉图象变成数字图象。数字图象类似于光栅图形,由有限行和有限列组成。 每个基本单元叫做一个象素(pixel)。三维图象的象素又叫做体素(voxel)。通常的二维数字图像是一个矩型,可以用一个二维数组I(x,y) 来表示,其中x,y是二维空间中的某坐标系的坐标,I(x,y)表示图像在该点处的灰度值等性质。彩色可以是红绿蓝三个单色的一定灰度值的合成。一般来说,这些坐标和灰度值是实数,不仅依赖于坐标系的选取,而且依赖于灰度值的度量单位。但是,数字计算机只可能表示有限字长的有限个数字。所以必须把灰度值离散化。简单地说,数字图象等同于一个整数值的有限矩阵。数字图像是数字图像处理和分析的对象。

数字图像处理实验三中值滤波和均值滤波实验报告

数字图像处理实验三 均值滤波、中值滤波的计算机实现12281166 雪莹计科1202班 一、实验目的: 1)熟悉均值滤波、中值滤波处理的理论基础; 2)掌握均值滤波、中值滤波的计算机实现方法; 3)学习VC++ 6。0 的编程方法; 4)验证均值滤波、中值滤波处理理论; 5)观察均值滤波、中值滤波处理的结果。 二、实验的软、硬件平台: 硬件:微型图像处理系统,包括:主机, PC机;摄像机; 软件:操作系统:WINDOWS2000或WINDOWSXP应用软件:VC++ 6.0 三、实验容: 1)握高级语言编程技术; 2)编制均值滤波、中值滤波处理程序的方法; 3)编译并生成可执行文件; 4)考察处理结果。 四、实验要求: 1)学习VC++确6。0 编程的步骤及流程; 2)编写均值滤波、中值滤波的程序;

3)编译并改错; 4)把该程序嵌入试验二给出的界面中(作适当修改); 5)提交程序及文档; 6)写出本次实验的体会。 五、实验结果截图 实验均值滤波采用的是3X3的方块,取周围的像素点取得其均值代替原像素点。边缘像素的处理方法是复制边缘的像素点,增加一个边框,计算里面的像素值得均值滤波。

六、实验体会 本次实验在前一次的实验基础上增加均值滤波和中值滤波,对于椒盐噪声的处理,发现中值滤波的效果更为好一点,而均值滤波是的整个图像变得模糊了一点,效果差异较大。本次实验更加增加了对数字图像处理的了解与学习。 七、实验程序代码注释及分析 // HistDemoADlg.h : 头文件 // #include "ImageWnd.h" #pragma once // CHistDemoADlg 对话框 class CHistDemoADlg : public CDialogEx { // 构造

数字图像处理实验报告

目录 实验一:数字图像的基本处理操作 (4) :实验目的 (4) :实验任务和要求 (4) :实验步骤和结果 (5) :结果分析 (8) 实验二:图像的灰度变换和直方图变换 (9) :实验目的 (9) :实验任务和要求 (9) :实验步骤和结果 (9) :结果分析 (13) 实验三:图像的平滑处理 (14) :实验目的 (14) :实验任务和要求 (14) :实验步骤和结果 (14) :结果分析 (18) 实验四:图像的锐化处理 (19) :实验目的 (19) :实验任务和要求 (19) :实验步骤和结果 (19) :结果分析 (21)

实验一:数字图像的基本处理操作 :实验目的 1、熟悉并掌握MATLAB、PHOTOSHOP等工具的使用; 2、实现图像的读取、显示、代数运算和简单变换。 3、熟悉及掌握图像的傅里叶变换原理及性质,实现图像的傅里叶变换。:实验任务和要求 1.读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分 成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。 2.对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分 别显示,注上文字标题。 3.对一幅图像进行平移,显示原始图像与处理后图像,分别对其进行傅里叶变换, 显示变换后结果,分析原图的傅里叶谱与平移后傅里叶频谱的对应关系。 4.对一幅图像进行旋转,显示原始图像与处理后图像,分别对其进行傅里 叶变换,显示变换后结果,分析原图的傅里叶谱与旋转后傅里叶频谱的 对应关系。 :实验步骤和结果 1.对实验任务1的实现代码如下: a=imread('d:\'); i=rgb2gray(a); I=im2bw(a,; subplot(1,3,1);imshow(a);title('原图像'); subplot(1,3,2);imshow(i);title('灰度图像'); subplot(1,3,3);imshow(I);title('二值图像'); subplot(1,3,1);imshow(a);title('原图像'); 结果如图所示:

相关主题
文本预览
相关文档 最新文档