www.gusucode.com > IPCV_Eval_Kit_R2019a_0ce6858工具箱matlab程序源码 > IPCV_Eval_Kit_R2019a_0ce6858/code/demo_files/I2_03_6_myHomomorphicFiltering.m
%% Homomorphic Filtering % I1 = I + N 偺宍偱僲僀僘偑忔偭偰偄傞偺偱偼側偔 % I1 = I .* R 偺宍偱夋憸偑塭嬁傪庴偗偰偄傞応崌乮徠搙曄壔摍乯偵丄R傪庢彍偔 % N傗R偺廃攇悢偑丄I 偲墦偄応崌 % Log曄姺傪偡傞偙偲偱丄I惉暘偲R惉暘傪榓偺宍偱暘棧壔 % 徻嵶偼 % http://blogs.mathworks.com/steve/2013/06/25/homomorphic-filtering-part-1 % http://blogs.mathworks.com/steve/2013/07/10/homomorphic-filtering-part-2 %% 夋憸偺撉崬傒 I = imread('AT3_1m4_01.tif'); figure;imshow(I); %% Log曄姺 Id = im2double(I); % 0~1 Il = log(Id + 1); % 惓偵偡傞偨傔偵丄1傪壛偊傞 %% 僴僀僷僗 僼傿儖僞 學悢偺愝掕乮Spacial Domain乯 filterRadius = 10; filterSize = 2*filterRadius + 1; hLowpass = fspecial('average', filterSize); hImpulse = zeros(filterSize); hImpulse(filterRadius+1,filterRadius+1) = 1; hHPF = hImpulse - hLowpass; % 儔僾儔僔傾儞宆 figure,freqz2(hHPF) % 2師尦僼傿儖僞廃攇悢墳摎昞帵 %% 僴僀僷僗 僼傿儖僞 張棟 Ilf = imfilter(Il, hHPF, 'replicate'); %% exp娭悢偱丄Log曄姺傪栠偡丒昞帵 If = exp(Ilf) - 1; imshowpair(I, If, 'montage'); shg; %% 廔椆 %% 廃攇悢僪儊僀儞偱偺僼傿儖僞儕儞僌偺椺偼壓婰嶲徠 %% http://blogs.mathworks.com/steve/2013/06/25/homomorphic-filtering-part-1 % Copyright 2016 The MathWorks, Inc.