您好,欢迎访问三七文档
实验目的与要求:对于给定的两幅图像自选一幅进行图像目标检测:①自选适当方法进行图像去噪(例如邻域平均、中值滤波等)②利用适当方法对①输出的图像进行增强(例如均衡化,线性变换等)③对增强的图像利用阈值方法进行分割④对分割图像自选方法提取边缘。实验原理:1.中值滤波是采用一个有奇数点的滑动窗口,将窗口中心点的值用窗口内各点的中值代替。设有一个一维序列f1,f2,…,fn,取窗口长度为m(m为奇数),则对其进行中值滤波的数学表达式为:yi=Med{fi-v,…,fi,…,fi+v}i∈Z,v=(m-1)/2。2.直方图均衡化,是一种常用的灰度增强算法,是把原始图的直方图通过累计分布函数变换成均匀分布的形式,然后按均衡后的直方图修整原图像,其变换函数T(r)=∫pr(r)dr。3.阈值分割是将灰度图像中有意义区域分离出来的最基本的方法。它是通过给各个灰度值相近的区域设置不同的阈值,将他们分别从背景中分割出来。4.canny算子是通过图像的最大梯度来寻找边缘,而这个梯度是由高斯滤波器的导数计算出来的。它需要两个阈值,来检测强弱边缘,只有连接到强边缘才在输出中包含弱边缘。实验过程与步骤:1.选取第二幅加了椒盐噪声的图像。分别对其进行邻域平均和中值滤波。代码如下:clearf1=imread('D:\saltpepoernoiseimage.bmp');subplot(2,2,1)imshow(f1)title('noiseimage')h1=im2double(f1);f2=medfilt2(h1,[33]);subplot(2,2,2)imshow(f2)title('filteringimage')h2=[111;111;111];h2=h2/9;f3=conv2(h1,h2);subplot(2,2,3)imshow(f3)title('smoothingimage')2.采用中值滤波去噪的图像,对其进行直方图均衡化,然后利用阈值方法进行分割,最后利用edge函数的canny算子提取边缘。其代码如下:clearg1=imread('D:\saltpepoernoiseimage.bmp');subplot(2,3,1)imshow(g1)title('noiseimage')h1=im2double(g1);g2=medfilt2(h1,[33]);subplot(2,3,2)imshow(g2)title('filteringimage')g3=histeq(g2);subplot(2,3,3)imshow(g3)title('equalizationimage')h2=imcomplement(g2);g4=im2bw(h2,graythresh(h2));subplot(2,3,4)imshow(g4)title('thresholdingimage')g5=edge(g4,'canny');subplot(2,3,5)imshow(g5)title('imageedge')实验数据:1.对加椒盐噪声图像分别进行中值滤波和邻域平均:noiseimagefilteringimagesmoothingimage2.对中值滤波后图像进行均衡化、阈值分割、边缘提取:noiseimagefilteringimageequalizationimagethresholdingimageimageedge实验结果与讨论:1.对于加椒盐噪声的图像,利用中值滤波还原出的图像比邻域平均的清晰。故对于椒盐噪声的去噪,应首选中值滤波。2.直方图均衡化后图像对比更明显。3.只有相对较暗的硬币上的图像阈值分割时显现了出来,所选的阈值分割函数不是很合理。4.使用canny算子能更完整的细化出边缘。
本文标题:数字图像处理2
链接地址:https://www.777doc.com/doc-6281434 .html