空域和频域图像处理增强
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
空域和频域图像处理增强
实验目的:
1.熟悉Matlab处理图像的基本原理,并熟练地运用进行一些基本的图像操作;
2.能够用Matlab来进行亮度变换,直方图处理以及一些简单的空间滤波;
实验内容:
去噪,灰度变换,直方图处理,空域和频域平滑锐化,同态滤波;结果分析:
1.直方图处理:
⑴显示原图直方图以及原图:
代码:
>> imread('hui.jpg');
>> imshow(f);
>> imhist(f);
原图以及原图直方图为:
⑵直方图均衡化:
代码:
>> f=imread('test2.jpg');
>> n=imnoise(f);
>> imwrite(n,'n.tif');
>> [thr,sorh,keepapp] = ddencmp('den','wv',im2double(n));
>> r=wdencmp('gbl',im2double(Noise),'sym2',2,thr,sorh,keepapp); >> r=wdencmp('gbl',im2double(n),'sym2',2,thr,sorh,keepapp);
>> imwrite(r,'r.tif');
>> imshow(f);
现在的图片以及直方图为:
结论:
直方图均衡化是图像处理领域中利用图像直方图对对比度进行调整的方法。这种方法通常用来增加许多图像的局部对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布。这样就可以用于增强局部的对比度而不影响整体的对比度,直方图均衡化通过有效
地扩展常用的亮度来实现这种功能。
2.灰度变换:
代码:
>> f=imread('test2.jpg');
>> n=imnoise(f);
>> imwrite(n,'n.tif');
>> [thr,sorh,keepapp] = ddencmp('den','wv',im2double(n));
>> r=wdencmp('gbl',im2double(Noise),'sym2',2,thr,sorh,keepapp); >> r=wdencmp('gbl',im2double(n),'sym2',2,thr,sorh,keepapp);
>> imwrite(r,'r.tif');
>> imshow(f);
变换的图像(f为图a,a1为图b,a2为图c,a3为图d):(图a)(图b)
(图c)
(图d)
结论:
一些图片的像素过于集中于中间灰度部分,而其他部分的像素数很少,可以压缩像素数小的部分,扩展像素数集中的部分。如果只想了解图像的某一部分,那么可以压缩其它部分,对关注的部分进行变换。
3.去噪:
代码:
>> f=imread('test2.jpg');
>> n=imnoise(f);
>> imwrite(n,'n.tif');
>> [thr,sorh,keepapp] = ddencmp('den','wv',im2double(n));
>> r=wdencmp('gbl',im2double(Noise),'sym2',2,thr,sorh,keepapp); >> r=wdencmp('gbl',im2double(n),'sym2',2,thr,sorh,keepapp); >> imwrite(r,'r.tif');
>> imshow(f);
>> figure,imshow(n);
>> figure,imshow(r);
图像(依次为原图,加噪后的图片以及复原的图片):
结论:
常用的软阈值函数,是为了解决硬阈值函数“一刀切”导致的影响(模小于3*sigma的小波系数全部切除,大于3*sigma全部保留,势必会在小波域产生突变,导致去噪后结果产生局部的抖动,类似于傅立叶变换中频域的阶跃会在时域产生拖尾)。软阈值函数将模小于3*sigma的小波系数全部置零,而将模大于3*sigma的做一个比较特殊的处理,大于3*sigma的小波系数统一减去3*sigma,
小于-3*sigma的小波系数统一加3*sigma。经过软阈值函数的作用,小波系数在小波域就比较光滑了,因此用软阈值去噪得到的图象看起来很平滑,类似于冬天通过窗户看外面一样,像有层雾罩在图像上似的。
4.空域和频域平滑锐化
代码:
⑴低通滤波器:
>> f=imread(‘test.jpg’);
>> PQ=paddedsize(size(f));
>> [U, V]=dfuvc(PQ(1),PQ(2));
>> D0=0.05*PQ(2);
>> F=fft2(f,PQ(1),PQ(2));
>> H=exp(-(U.^2+V.^2)/(2*(D0*2)));
>> g=dftfilt(f,H);
(2)高通滤波器:
>> f=imread(‘test.jpg’);
>> PQ=paddedsize(size(f));
>> D0=0.05*PQ(1);
>> H=hptilter(‘gausian’,PQ(1),PQ(2),D0);
>> g=dftfilt(f,H);
>> figure,imshow(g,[ ]);
结论:
平滑滤波是要滤除不规则的噪声或干扰的影响。从频域的角度看,不规则的噪声具有较高的频率,可用具有低通能力的频域滤波器来滤除。所以空域的平滑滤波对应频域的低通滤波。锐化滤波是要增强边缘和轮廓处的强度。边缘和轮廓处都具有较高的频率,可用具有高通能力的频域滤波器来增强。所以,空域的锐化滤波对应频域的高通滤波。
5.同态滤波:
代码:
>>I=imread('716.png');
>>subplot(121),imshow(I);
>>I=double(rgb2gray(I));
>>[M,N]=size(I); rL=0.3;
>>rH=2.0;
>>c=2;
>>d0=10;