同态滤波及matlab实现,怎样用MATLAB的图像处理功能进行同态滤波
EDA365歡迎您登錄!
您需要 登錄 才可以下載或查看,沒有帳號?注冊
x
4 \??V% b( V5 U
同態(tài)濾波:1 s$ t( _. v! {1 z! K
利用廣義疊加原理對同態(tài)系統(tǒng)進行濾波。
( x/ V) ?. H2 N9 [+ E$ p1 e/ ]" C/ b& K. M# D: }1 N. ~" L/ B
同態(tài)濾波是把頻率過濾和灰度變換結合起來的一種圖像處理方法,它依靠圖像的照度/ 反射率模型作為頻域處理的基礎,利用壓縮亮度范圍和增強對比度來改善圖像的質量。使用這種方法可以使圖像處理符合人眼對于亮度響應的非線性特性,避免了直接對圖像進行傅立葉變換處理的失真。. k1 s' c% m& n& V" U- |- e
# `1 G2 ^/ E. h5 B+ n: d6 b同態(tài)濾波的基本原理是:將像元灰度值看作是照度和反射率兩個組份的產物。由于照度相對變化很小,可以看作是圖像的低頻成份,而反射率則是高頻成份。通過分別處理照度和反射率對像元灰度值的影響,達到揭示陰影區(qū)細節(jié)特征的目的。0 l0 @$ {/ t9 {/ a??G& c6 U+ v??_
# C* r) q1 I' D! v% p! B
3 O( K* @: I: ~8 U$ D* G同態(tài)濾波處理的基本流程如下:; u??Z$ g' d. S$ [( t
6 {5 i/ w4 p* R( S; I( m" O
S(x,y)---->Log---->DFT---->頻域濾波---->IDFT---->Exp---->T(x,y)
) B5 T# j% c$ G9 ]5 c0 B8 Q; u2 o- M1 j??K* b, ?1 M7 M0 a
其中S(x,y)表示原始圖像;T(x,y)表示處理后的圖像;Log 代表對數運算;DFT 代表傅立葉變換(實際操作中運用快速傅立葉變換FFT);IDFT 代表傅立葉逆變換(實際操作中運用快速傅立葉逆變換IFFT);Exp 代表指數運算。( N2 L% V8 x$ V* L$ i6 }' t
$ m) I; \" v' c# x; n% g' q/ v
下面是一張典型的同態(tài)濾波與其他圖像處理方式的異同:
( S( f6 F5 W9 {: z1 [5 @
; R( @9 j& T& U
怎樣用MATLAB的圖像處理功能進行同態(tài)濾波-3.png (78.06 KB, 下載次數: 0)
2019-12-3 09:37 上傳
* l3 D6 M- [??R3 z??t* W5 H
0 l( M2 ^8 \* ~1 M% m9 \
5 W??L1 v, T0 \$ r* N6 ^實現代碼:
# M2 u: G, a4 c) ?1 {2 R/ Z
) i??}6 {$ G# h; _- [; s+ v8 pfunction 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;%高斯同態(tài)濾波
end
end
I2=ifft2(H.*FI);%傅里葉逆變換
I3=real(exp(I2));
subplot(122),imshow(I3,[]);title('同態(tài)濾波增強后');
) f3 }" A0 y; F. L
6 [0 y4 n4 }2 R" Q# U
L??{& L3 T) j/ k' ~! k# Q: d實驗發(fā)現,同態(tài)濾波有類似于高動態(tài)范圍壓縮的效果,比如可以把圖像暗的部分提亮。" W5 ~2 E, w7 v5 ]: ?% J1 c
+ {. w/ C9 |0 O2 ]3 M0 l
3 a$ T" B4 u! e# s
下圖為原始圖像,屬于低曝光的一幅圖像:" `0 |/ V& s/ p- ~! b??W6 T
% s2 a$ E; H! L% i
怎樣用MATLAB的圖像處理功能進行同態(tài)濾波-2.jpg (61.81 KB, 下載次數: 1)
2019-12-3 09:37 上傳
/ J* V/ c. l7 Z3 L
7 r1 R( [' Y0 e) b- |0 s& h
/ v1 @' j, n( o% k# W, P
同態(tài)濾波后:
X% _( F5 d3 w
4 S8 d4 J' W; s# u, J; Y
怎樣用MATLAB的圖像處理功能進行同態(tài)濾波-1.jpg (65.14 KB, 下載次數: 0)
2019-12-3 09:37 上傳
8 `1 |' B. W9 I) ~) a- t
: u% b1 J& p& o& r6 B+ [+ n7 B- G# b7 H$ w4 F4 `! c% K
9 ^$ B9 d% Y/ ^; `
總結
以上是生活随笔為你收集整理的同态滤波及matlab实现,怎样用MATLAB的图像处理功能进行同态滤波的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Google搜索图片时只显示第一页
- 下一篇: PostgreSQL参数学习:vacuu