|  | 
 
| 
x
EDA365欢迎您登录!您需要 登录 才可以下载或查看,没有帐号?注册  7 |+ F7 _5 G5 A" }1 F6 Q9 D8 g8 @同态滤波:
 # }& H6 [/ C+ }+ H利用广义叠加原理对同态系统进行滤波。
 3 e# ?4 G- P% C, N8 h: X2 }
 7 y1 i4 L% O# F+ F2 u8 A同态滤波是把频率过滤和灰度变换结合起来的一种图像处理方法,它依靠图像的照度/ 反射率模型作为频域处理的基础,利用压缩亮度范围和增强对比度来改善图像的质量。使用这种方法可以使图像处理符合人眼对于亮度响应的非线性特性,避免了直接对图像进行傅立叶变换处理的失真。+ `1 O' H3 f7 U3 Q$ b, a; L+ B
 
 W+ i: P3 B8 w0 ?8 g同态滤波的基本原理是:将像元灰度值看作是照度和反射率两个组份的产物。由于照度相对变化很小,可以看作是图像的低频成份,而反射率则是高频成份。通过分别处理照度和反射率对像元灰度值的影响,达到揭示阴影区细节特征的目的。* z6 _6 E. I. p% Z: ]3 p" Y( t  m6 d
 
 & l7 J* f# K. s( W) v& V* H- J8 M9 Z
 3 w" F9 s9 ?3 A" ~5 H) s  @2 C5 x同态滤波处理的基本流程如下:
 & U, r: ^  E  L8 n$ p7 E( e1 S/ |! c8 G
 S(x,y)---->Log---->DFT---->频域滤波---->IDFT---->Exp---->T(x,y)7 i. L+ Z* `% d
 
 2 |8 }. a0 E7 J$ E3 Q其中S(x,y)表示原始图像;T(x,y)表示处理后的图像;Log 代表对数运算;DFT 代表傅立叶变换(实际操作中运用快速傅立叶变换FFT);IDFT 代表傅立叶逆变换(实际操作中运用快速傅立叶逆变换IFFT);Exp 代表指数运算。8 J0 u  g7 f; o" N+ v# b' E
 8 N8 H* ?/ J" {$ [$ c5 X
 下面是一张典型的同态滤波与其他图像处理方式的异同:# L, @- t7 z' ]0 N# [
 
 2 `+ W; o+ o( Y1 ~! j0 p
  0 U- \; t4 ~. F* C% r. { 
 / R5 n) L; L% x0 r# |! b4 `$ X; u6 a& f  Y8 M
 实现代码:
 # @6 s5 W0 N9 M$ l# o! @
 . w: n0 f0 U! n1 Z
 function I3 = test_tontai(I)I=double(rgb2gray(I));[M,N]=size(I);rL=0.5;rH=4.7;%可根据需要效果调整参数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;%高斯同态滤波    endendI2=ifft2(H.*FI);%傅里叶逆变换I3=real(exp(I2));subplot(122),imshow(I3,[]);title('同态滤波增强后');* ]/ Q$ v3 \$ P) d" ]  _/ W
 + c+ h3 c( G: v6 X; B
 * l2 x: u' R" H8 d4 O2 H实验发现,同态滤波有类似于高动态范围压缩的效果,比如可以把图像暗的部分提亮。% N  }* R9 X1 {! r
 
 " j  t# Y, O9 v# r  a0 f- A6 A1 f" `% Z) D" x) v
 下图为原始图像,属于低曝光的一幅图像:$ c* f6 f6 Z6 Q
 
 ; }4 y7 H- g; b
  ; K; A6 b$ g7 a* _# B8 f& D $ I. U5 D1 ~; Y- Q/ I* _
 
 i: f& t% F0 C9 K- F同态滤波后:
 ) w# s% l5 Y' k7 D0 h/ P4 R8 ~% f0 Z) @# l7 W# h
 
   8 Z, @; O; r: a0 z; L3 S6 r, A# S1 l
 
 ( U0 B: d% K+ [
 ) L6 {( c) @2 \* w! g# n: J$ }
 | 
 |