小波同态滤波 matlab,简单的同态滤波(matlab)
clear; close all; % 裝載圖片,將yourimage換成你要處理的圖片 img = imread('yourimage'); % 顯示這個圖片 figure,imshow(img); title('Original Image'); % 構造一個高斯濾波器 f_high = 1.0; f_low = 0.4; % 得到一個高斯低通濾波器 gauss_low_filter = fspecial('gaussian', [7 7], 1.414); matsize = size(gauss_low_filter); % 由于同態濾波是要濾出高頻部分, % 所以我們得把這個低通濾波器轉換成一個高通濾波器. % f_high 和 f_low 是控制這個高通濾波器形態的參數. gauss_high_filter = zeros(matsize); gauss_high_filter(ceil(matsize(1,1)/2) , ceil(matsize(1,2)/2)) = 1.0; gauss_high_filter = f_high*gauss_high_filter - (f_high-f_low)*gauss_low_filter; % 顯示搞通濾波期的頻率響應 figure,freqz2(gauss_high_filter); colormap(jet(64)); % 利用對數變換將入射光和反射光部分分開 log_img = log(double(img)); % 將高斯高通濾波器與對數轉換后的圖象卷積 high_log_part = imfilter(log_img, gauss_high_filter, 'symmetric', 'conv'); % 顯示卷積后的圖象 figure,imshow(high_log_part); title('High Frequency Part'); % 由于被處理的圖象是經過對數變換的,我們再用冪變換將圖象恢復過來 high_part = exp(high_log_part); minv = min(min(high_part)); maxv = max(max(high_part)); % 得到的結果圖象 figure,imshow((high_part-minv)/(maxv-minv)); title('Result Image');
總結
以上是生活随笔為你收集整理的小波同态滤波 matlab,简单的同态滤波(matlab)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 花了一年时间开发出来的基于DXF文件的加
- 下一篇: 邻接表的两种实现(链表和数组模拟)