数字图像处理实验四

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

数字图像处理—实验四

一.实验内容:

⑴图像的锐化:使用Sobel,Laplacian算子分别对图像进行运算,观察并体会运算结果。

⑵综合练习:对需要进行处理的图像分析,正确运用所学的知识,采用正确的步骤,对图像进行各类处理,以得到令人满意的图像效果。

[3] 编程实现Roberts梯度锐化算法。

二.实验目的:

学会用Matlab中的下列函数对输入图像按实验内容进行运算;感受各种不同的图像处理方法对最终图像效果的影

响。

imfilter;fspecial;imadjust;

三.实验步骤:

1.仔细阅读Matlab帮助文件中有关以上函数的使用说明,能充分理解其使用方法并能运用它们完成实验内

容。

2.将cameraman.jpg图像文件读入Matlab,使用imfilter函数分别采用Sobel,Laplacian算子对其作锐化运算,

显示运算前后的图像。算子输入方法(两种方法都

做):

(1)用fspecial函数产生(注意:fspecial仅能产生垂直方向

sobel算子,产生Laplacian算子时alpha参数选择0,详

见Help)。

(2)直接输入,其中Sobel算子形式为

(水平Sobel)(垂直Sobel)

Laplacian算子形式为

对于Sobel算子,采用生成图像;对于Laplacian算子,

直接采用计算结果作为锐化后图像。

figure;

subplot(2,3,1);

i1=imread('D:\images\cameraman.tif');

i1=im2double(i1);

imshow(i1);title('Input Image');

subplot(2,3,2);

h=fspecial('sobel');

g=h.';

T1= imfilter(i1, h);

T2=imfilter(i1, g);

T3=sqrt(T1.^2+T2.^2);

imshow(T3);title('方法一sobel算子'); subplot(2,3,3);

h = fspecial('laplacian',0);

T4= imfilter(i1, h);

imshow(T4);title('方法一laplacian算子'); subplot(2,3,4);

dx=[-1 -2 -1

0 0 0

1 2 1];

dy=[-1 0 1

-2 0 2

-1 0 1];

T5= imfilter(i1, dx);

T6= imfilter(i1, dy);

T7=sqrt(T1.^2+T2.^2);

imshow(T7);title('方法二sobel算子');

subplot(2,3,5);

h = [0 -1 0

-1 4 -1

0 -1 0];

T8= imfilter(i1, h);

imshow(T8);title('方法二laplacian算子');

3.将skeleton.jpg图像文件读入Matlab,按照以下步骤对其进行处理:

1)用带对角线的Laplacian对其处理,以增强边缘。

对角线Laplacian算子为。

2)将1)结果叠加到原始图像上。可以看出噪声增强了(Laplacian算子对噪声敏感),应想法降低。

3)获取Sobel图像并用imfilter对其进行5×5邻域平均,以减少噪声。

4)获取2)和3)相乘图像,噪声得以减少。

5)将4)结果叠加到原始图像上。

6)最后用imadjust函数对5)结果做幂指数为0.2的灰度变换。

figure;

subplot(2,4,1);

i1=imread('D:\images\skeleton.jpg');

i1=im2double(i1);

imshow(i1);title('Input Image');

subplot(2,4,2);

h = [-1 -1 -1

-1 8 -1

-1 -1 -1];

T1= imfilter(i1, h);

imshow(T1);title('laplacian算子');

subplot(2,4,3);

T2=T1+i1;

imshow(T2);title('1)叠加原图像');

subplot(2,4,4);

h=fspecial('sobel');

T3=imfilter(i1,h);

imshow(T3);title('sobel算子');

subplot(2,4,5);

h = fspecial('average',[5 5]);

T4=imfilter(T3,h);

imshow(T4);title('5*5邻域平均');

subplot(2,4,6);

T5=T2.*T4;

imshow(T5);title('2)和3)相乘');

subplot(2,4,7);

T6=T5+i1;

imshow(T6);title('4)叠加原图像');

subplot(2,4,8);

T7=imadjust(T6,[],[],0.2);

imshow(T7);title('output image');

4.编写Roberts梯度锐化函数。Roberts梯度为

锐化图像的形成以下式为准,

L G=255,L B=0,门限T适当选择。要求:输入参数为待锐化图像和设定的门限,输出为锐化后图像。读入

cell.jpg图像进行验证。显示图像时给出选择的门限值。

相关文档
最新文档