同态滤波及matlab实现
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
clear all
clc
I=imread('716.png');
subplot(121),imshow(I);
title('原图')
I=double(rgb2gray(I));
[M,N]=size(I);
rL=0.3;
rH=2.0; % 可根据需要效果调整参数
c=2;
d0=10;
I1=log(I+1);%取对数
FI=fft2(I1);%傅里叶变换
n1=floor(M/2);
n2=floor(N/2);
for i=1:M
for j=1:N
D(i,j)=((i -n1).^2+(j -n2).^2);
H(i,j)=(rH -rL).*(exp(c*(-D(i,j)./(d0^2))))+rL; %高斯同态滤波 end
end
I2=ifft2(H.*FI);%傅里叶逆变换
I3=real(exp(I2));
subplot(122),imshow(I3,[]);
title('同态滤波增强后')
原
图同态滤波增强后