图像处理实验10页.docx

上传人:b****8 文档编号:9504108 上传时间:2023-05-19 格式:DOCX 页数:14 大小:21.72KB
下载 相关 举报
图像处理实验10页.docx_第1页
第1页 / 共14页
图像处理实验10页.docx_第2页
第2页 / 共14页
图像处理实验10页.docx_第3页
第3页 / 共14页
图像处理实验10页.docx_第4页
第4页 / 共14页
图像处理实验10页.docx_第5页
第5页 / 共14页
图像处理实验10页.docx_第6页
第6页 / 共14页
图像处理实验10页.docx_第7页
第7页 / 共14页
图像处理实验10页.docx_第8页
第8页 / 共14页
图像处理实验10页.docx_第9页
第9页 / 共14页
图像处理实验10页.docx_第10页
第10页 / 共14页
图像处理实验10页.docx_第11页
第11页 / 共14页
图像处理实验10页.docx_第12页
第12页 / 共14页
图像处理实验10页.docx_第13页
第13页 / 共14页
图像处理实验10页.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

图像处理实验10页.docx

《图像处理实验10页.docx》由会员分享,可在线阅读,更多相关《图像处理实验10页.docx(14页珍藏版)》请在冰点文库上搜索。

图像处理实验10页.docx

图像处理实验10页

信息科学与工程学院

教师范读的是阅读教学中不可缺少的部分,我常采用范读,让幼儿学习、模仿。

如领读,我读一句,让幼儿读一句,边读边记;第二通读,我大声读,我大声读,幼儿小声读,边学边仿;第三赏读,我借用录好配朗读磁带,一边放录音,一边幼儿反复倾听,在反复倾听中体验、品味。

实验报告

与当今“教师”一称最接近的“老师”概念,最早也要追溯至宋元时期。

金代元好问《示侄孙伯安》诗云:

“伯安入小学,颖悟非凡貌,属句有夙性,说字惊老师。

”于是看,宋元时期小学教师被称为“老师”有案可稽。

清代称主考官也为“老师”,而一般学堂里的先生则称为“教师”或“教习”。

可见,“教师”一说是比较晚的事了。

如今体会,“教师”的含义比之“老师”一说,具有资历和学识程度上较低一些的差别。

辛亥革命后,教师与其他官员一样依法令任命,故又称“教师”为“教员”。

课程名称:

图像处理

“师”之概念,大体是从先秦时期的“师长、师傅、先生”而来。

其中“师傅”更早则意指春秋时国君的老师。

《说文解字》中有注曰:

“师教人以道者之称也”。

“师”之含义,现在泛指从事教育工作或是传授知识技术也或是某方面有特长值得学习者。

“老师”的原意并非由“老”而形容“师”。

“老”在旧语义中也是一种尊称,隐喻年长且学识渊博者。

“老”“师”连用最初见于《史记》,有“荀卿最为老师”之说法。

慢慢“老师”之说也不再有年龄的限制,老少皆可适用。

只是司马迁笔下的“老师”当然不是今日意义上的“教师”,其只是“老”和“师”的复合构词,所表达的含义多指对知识渊博者的一种尊称,虽能从其身上学以“道”,但其不一定是知识的传播者。

今天看来,“教师”的必要条件不光是拥有知识,更重于传播知识。

专业:

电子信息工程

班级:

电信(DB)1101

学号:

201912135012

姓名:

刘小飞

实验一:

图像直方图处理及灰度变换

实验目的:

1.掌握读、写、显示图像的基本方法。

2.掌握图像直方图的概念、计算方法以及直方图归一化、均衡化方法。

3.掌握图像灰度变换的基本方法,理解灰度变换对图像外观的改善效果。

实验内容:

1.读入一幅图像,判断其是否为灰度图像,如果不是灰度图像,将其转化为灰度图像。

2.完成灰度图像的直方图计算、直方图归一化、直方图均衡化等操作。

3.完成灰度图像的灰度变换操作,如线性变换、伽马变换、阈值变换(二值化)等,分别使用不同参数观察灰度变换效果(对灰度直方图的影响)。

实验步骤:

1.熟悉MATLAB语言中对图像数据读取,显示等基本函数

1)文件读取与信息显示:

loadtrees;

[X,map]=imread('forest.tif');

subimage(X,map);

I=imread('forest.tif');

imshow(I);

imfinfo('forest.tif');

2)map颜色矩阵的修改

[X,map]=imread('forest.tif');

map1=map+map;

subimage(X,map1);

3)灰度图像的转化

RGB=imread('b747.jpg');

B=rgb2gray(RGB);

2.图像灰度变换处理在图像增强的作用

g1=imadjust(I,[01],[10]);

g2=imcomplement(g1);

g3=im2uint8(mat2gray(log(1+double(I))));

3.绘制图像灰度直方图的方法,对图像进行均衡化处理

1)图像灰度直方图的显示与灰度调整

imhist(B);

J=imadjust(B,[],[01]);

imhist(J);

subimage(J);

2)对B进行直方图均衡化处理,试比较与原图的异同。

I=imread('pout.tif');

[J,T]=histeq(I);

figure,plot((0:

255)/255,T);

3)对B进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。

x1=0:

0.01:

0.125;

x2=0.125:

0.01:

0.75;

x3=0.75:

0.01:

1;

y1=2*x1;

y2=0.25+0.6*(x2-0.125);

y3=0.625+1.5*(x3-0.75);

x=[x1,x2,x3];

y=[y1,y2,y3];

subplot(2,2,4);

plot(x,y);

实验结果分析与讨论:

1.熟悉MATLAB语言中对图像数据读取,显示等基本函数

1)图像文件的读出与图像数据的观察

图1.1真彩色图像与灰度图像显示

ans=

Filename:

'F:

\MATLAB\R2019a\toolbox\images\imdemos\forest.tif'

FileModDate:

'04-Dec-200013:

57:

58'

FileSize:

124888

Format:

'tif'

FormatVersion:

[]

Width:

447

Height:

301

BitDepth:

8

ColorType:

'indexed'

FormatSignature:

[7373420]

ByteOrder:

'little-endian'

NewSubFileType:

0

BitsPerSample:

8

Compression:

'PackBits'

PhotometricInterpretation:

'RGBPalette'

StripOffsets:

[17x1double]

SamplesPerPixel:

1

RowsPerStrip:

18

StripByteCounts:

[17x1double]

XResolution:

72

YResolution:

72

ResolutionUnit:

'Inch'

Colormap:

[256x3double]

PlanarConfiguration:

'Chunky'

TileWidth:

[]

TileLength:

[]

TileOffsets:

[]

TileByteCounts:

[]

Orientation:

1

FillOrder:

1

GrayResponseUnit:

0.0100

MaxSampleValue:

255

MinSampleValue:

0

Thresholding:

1

ImageDescription:

'CarmanahAncientForest,BritishColumbia,Canada'

map颜色矩阵修改后图像颜色的变化

图1.2原图像与map矩阵值增强一倍后的图像

新的颜色矩阵值变成原文件的2倍,图像明显变亮,颜色的R、G、B值增强。

2)图像文件转化为灰度图像

图1.3真彩色图像与转化成的灰度图像

2.图像灰度变换处理在图像增强的作用

图1.4灰度变化增强(图像反转、求补、对数变换)

图中对图像文件进行了基本的灰度变换,包括用式s=L–1–r得到的图像反转,对反转图像的求补,以及对数变换的采用。

3.绘制图像灰度直方图的方法,对图像进行均衡化处理

1)图像灰度及灰度直方图的调整

图1.5灰度范围的调整与直方图显示

在原始图像中,直方图的组成成分集中在高灰度等级(亮)一侧,且图像灰度范围为[0,1],故将灰度值调整到[0,1]间后直方图无明显变化。

类似的,将灰度值调整到[0,0.5]时,整个图像变暗,直方图横向压缩1倍。

2)直方图均衡化

图1.6原图像与灰度直方图均衡化结果

原图像中目标物的灰度主要集中于高亮度部分,而且象素总数较多,所占的灰度等级较少。

经过直方图均衡后,目标物的所占的灰度等级得到扩展,对比度加强,使整个图像得到增强。

数字图像均衡化后,其直方图并非完全均匀分布,这是因为图像的象素个数和灰度等级均为离散值,而且均衡化使灰度级并归。

因此,均衡化后,其直方图并非完全均匀分布。

3)对B进行如图所示的分段线性变换处理

图1.7原图像与灰度直方图均衡化结果

图1.8线性变换函数图

通过在所关心范围内为所有灰度值指定一个较高值,而为其他灰度指定一个较低值,或将所需范围变亮,分段线性变换可提高图像中特定灰度范围的亮度,常用于图像特征值的提取。

这里将原始图像位于[0.125,0.75]间的灰度值调低,放大其余的灰度值,突出显示图像低频域和高频域的部分。

实验小结:

通过本次实验,我学会了用Matlab对图像的基本处理方法,也加深了数字图像处理中灰度,直方图,均衡化等一些基本概念,基本掌握了怎样进行灰度变法,直方图均衡化等操作,虽然这次实验的代码都是在网上找的,但是通过借鉴和学习,我对图像处理产生了浓厚的学习兴趣,我相信在今后的实验中自己会慢慢编写出自己对这方面的相关程序。

实验二:

图像平滑

实验目的:

1.理解图像平滑的概念,掌握噪声模拟和图像平滑滤波函数的使用方法。

2.理解图像均值滤波、中值滤波、高斯滤波的算法原理,了解不同滤波方法的适用场合。

实验内容:

1.对给定的同一幅图像,加上不同强度的高斯噪声,分别使用均值滤波器、中值滤波器、高斯平滑滤波器对加噪后的图像进行滤波处理。

2.对给定的同一幅图像,加上不同强度的椒盐噪声,分别使用均值滤波器、中值滤波器、高斯平滑滤波器对加噪后的图像进行滤波处理。

实验步骤:

1.平滑空间滤波:

1)椒盐噪声和高斯噪声的加入

I=imread('eight.tif');

imshow(I);

J=imnoise(I,'salt&pepper',0.05);%noisedensity=0.05

K=imnoise(I,'gaussian',0.01,0.01);

2)不同的平滑(低通)模板的处理

H=fspecial('sobel');

Sobel=imfilter(I,H,'replicate');

H=fspecial('laplacian',0.4);

lap=imfilter(I,H,'replicate');

H=fspecial('gaussian',[33],0.5);

gaussian=imfilter(I,H,'replicate');

3)不同填充方法的滤波

originalRGB=imread('peppers.png');

h=fspecial('motion',50,45);%motionblurred

filteredRGB=imfilter(originalRGB,h);

boundaryReplicateRGB=imfilter(originalRGB,h,'replicate');

boundary0RGB=imfilter(originalRGB,h,'x');

boundary0RGB=imfilter(originalRGB,h,0);

boundarysymmetricRGB=imfilter(originalRGB,h,'symmetric');

boundarycircularRGB=imfilter(originalRGB,h,'circular');

4)多次均值滤波

J=imnoise(I,'salt&pepper',0.05);

h=fspecial('average');%AveragingFiltering

J1=imfilter(J,h);

fori=1:

10

J1=imfilter(J,h);

end

fori=1:

20

J2=imfilter(J,h);

5)均值、中值滤波

h=fspecial('average');%AveragingFiltering

J1=imfilter(J,h);

J2=medfilt2(J);%MedianFiltering

6)自行设计平滑空间滤波器

domain=[00800;

00800;

88888;

00800;

00800];

K1=ordfilt2(J,5,domain);

2.平滑频域滤波

高斯低通滤波器的设计与滤波

I=imread('test_pattern.tif');

f=double(I);

g=fft2(f);

g=fftshift(g);

[M,N]=size(g);

d0=100;

m=fix(M/2);n=fix(N/2);

fori=1:

M

forj=1:

N

d=sqrt((i-m)^2+(j-n)^2);

h=exp(-(d.^2)./(2*(d0^2)));%gaussianfiltertransform

result(i,j)=h*g(i,j);

end

end

result=ifftshift(result);

J1=ifft2(result);

J2=uint8(real(J1));

实验结果分析与讨论:

1.平滑空间滤波

1)读出eight.tif这幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张图显示在同一图像窗口中。

图2.1初始图像及椒盐噪声图像、高斯噪声污染图

2)对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效果,要求在同一窗口中显示。

图2.2原图像及各类低通滤波处理图像

3)使用函数imfilter时,分别采用不同的填充方法(或边界选项,如零填充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后的图像。

图2.3原图像及运动模糊图像

图2.4函数imfilter各填充方式处理图像

2)运用for循环,将加有椒盐噪声的图像进行10次,20次均值滤波,查看其特点,显示均值处理后的图像。

图2.5椒盐噪声污染图像经10次、20次均值滤波图像

由图2.5可得,20次滤波后的效果明显好于10次滤波,但模糊程度也更强。

3)对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理,要求在同一窗口中显示结果。

图2.6椒盐噪声污染图像及均值、中值滤波图像

从图2.6中可以看出,对于椒盐噪声污染的图像处理,中值滤波效果要明显好于均值滤波。

经均值滤波器处理后的图像比均值滤波器中结果图像更加模糊。

4)设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。

图2.7椒盐噪声污染图像及5*5平滑滤波器掩模

掩模值为w=1/25*[11111;11111;11111;11111;11111]

图2.8椒盐噪声污染图像及5*5平滑滤波器掩模

掩模值为w=[00800;00800;88888;00800;00800]

2.平滑频域滤波

1)高斯低通滤波器

图2.9高斯低通滤波器透视图

图2.10高斯低通滤波器滤波效果(d0=15,30,100)

上图中显示了三种高斯低通滤波器的滤波效果,高斯低通滤波器无法达到有相同截止频率的二阶巴特沃斯低通滤波器的平滑效果,但此时结果图像中无振铃现象产生。

实验小结:

这次实验相比上次,感觉进步了很多,虽然我没有去机房,但私下就在理论上熟悉过均值滤波,中值滤波等基本理论,通过这次实验,我了解了不同滤波方法的适用场合,基本掌握了加入噪声及用各种方法去噪,滤波的相关方法,之前对于均值和中值有些模糊的地方通过这次实验有了更加清晰的认识,还有对不不同噪声,中值滤波器和均值滤波的差异及优缺点,例如,对于椒盐噪声由于其均值不为0,所以用中值滤波效果更好等等,总之,这次实验又学会了很多。

实验三:

图像锐化与边缘检测

实验目的:

1.理解图像锐化的概念,掌握图像锐化的基本算法和函数使用方法。

2.了解边缘检测的算法和用途,掌握边缘检测函数的使用方法,比较不同算子检测边缘的差异。

实验内容:

1.图像锐化。

对给定的同一幅图像,分别Roberts算子、Sobel算子、Laplacian算子惊醒滤波处理。

2.边缘检测。

对给定的同一幅图像,分别使用Sobel、Prewitt、Roberts、LoG和Canny等边缘检测算子进行处理,使用算法的默认参数或适当调整算法参数,将处理结果显示在同一窗口中以便进行比较。

实验步骤:

1.图像锐化

I=imread('girl.bmp');

h=fspecial('sobel');

J=filter2(h,I);

a=min(J(:

));

J1=J+abs(a);

I1=J1/max(J1(:

))*255;

I1=uint8(I1);

J2=abs(J);

I2=J2/max(J2(:

))*255;

I2=uint8(I2);

figure;

subplot(1,3,1),imshow(I),title('原图像');

subplot(1,3,2),imshow(I1),title('锐化滤波、数据加正数后图像');

subplot(1,3,3),imshow(I2),title('锐化滤波、数据取绝对值后图像');

拉普拉斯算子

拉普拉斯高斯算子

Prewitt算子

Sobel算子

I=imread('eight.tif');

subplot(2,2,1),imshow(I),title(‘原图’);

BW1=edge(I,'roberts');

subplot(2,2,2),imshow(BW1),title('用Roberts算子');

BW2=edge(I,'sobel');

subplot(2,2,3),imshow(BW2),title('用Sobel算子');

BW3=edge(I,'log');

subplot(2,2,4),imshow(BW3),title('用拉普拉斯高斯算子');

锐化滤波

2.边缘检测

closeall

clearall

I=imread('wamp.jpg');%读取图像

I1=im2double(I);%将彩图序列变成双精度

I2=rgb2gray(I1);%将彩色图变成灰色图

[thr,sorh,keepapp]=ddencmp('den','wv',I2);

I3=wdencmp('gbl',I2,'sym4',2,thr,sorh,keepapp);%小波除噪

I4=medfilt2(I3,[99]);%中值滤波

I5=imresize(I4,0.2,'bicubic');%图像大小

BW1=edge(I5,'sobel');%sobel图像边缘提取

BW2=edge(I5,'roberts');%roberts图像边缘提取

BW3=edge(I5,'prewitt');%prewitt图像边缘提取

BW4=edge(I5,'log');%log图像边缘提取

BW5=edge(I5,'canny');%canny图像边缘提取

h=fspecial('gaussian',5);%高斯滤波

BW6=edge(I5,'zerocross',[],h);%zerocross图像边缘提取

figure;

subplot(2,3,1);%图划分为一行三幅图,第一幅图

imshow(I2);%绘图

subplot(2,3,2);

imshow(BW1);

title('Sobel算子');

subplot(2,3,3);

imshow(BW2);

title('Roberts算子');

subplot(2,3,4);

imshow(BW3);

title('Prewitt算子');

subplot(2,3,5);

imshow(BW4);

title('log算子');

subplot(2,3,6);

imshow(BW5);

title('canny算子');

实验结果分析与讨论:

由上边的结果图可以看出,canny边缘检测定位精度较高,图像边缘很清晰,而Sobel算子对噪声具有平滑作用,受噪声影响较小,可提供较为精确的边缘方向信息,但同时也会检测出许多伪边缘,检测到的边缘宽度较粗,边缘位置定位精度不高。

实验小结:

这次实验做的是图像锐化和边缘检测,说实话,我做实验之前对这两个概念还没有理解,但是通过使用不同算子之后得出的效果图让我对此有了一定的认识,也理解了这些算法的基本原理和优缺点。

三次实验我虽然没有去全,但是通过课下的学习,我对图像处理这门课程有了全新的认识和发现,它并不是我想像中的PS,美图之类的那样透明化,当我们真正研究它的本质原理和算法时,我们一定会发现他的博大精深,这也是我们一直学习下去的根源与动力。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2