91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

擴散濾波實現圖像增強,包括高斯濾波預處理,梯度計算,結構張量計算,擴散張量計算,數值離散以及增強效果評估代碼

資源截圖

代碼片段和文件信息

%%%%%%%%%%%%%%擴散濾波函數%%%%%%%%%%%%%%
function?[uttn]?=?CoherenceFilter(uOptions)
%COHERENCEFILTER函數用來進行2D灰度圖像的一致性擴散增強,該方法可以在保護邊緣的同時降低圖像噪聲,并平滑圖像由于噪聲導致的邊緣斷裂
%?Iout?=?CoherenceFilter(Iin?Options)
%輸入:
%???Iin?????:?2D灰度圖像
%???Options?:?濾波的各個參數
%輸出:
%???Iout????:?處理后的圖像
%?Options
%???Options.T??????:??總的擴散時間
%???Options.dt?????:??擴散時間步長?五種擴散方案默認值為0.2
%???Options.sigma??:??高斯濾波的Sigma值,默認為1??????????????????
%???Options.rho????:??計算結構張量時高斯平滑的Sigma值,默認為1
%???Options.Scheme?:??用數值表示各擴散方案
%?????????????????????‘S‘標準離散化
%?????????????????????‘N‘非負離散化
%?????????????????????‘I‘隱式離散化
%?????????????????????‘R‘旋轉不變方案,標準離散化(隱式)5x5內核模板(默認)
%?????????????????????‘O‘優化的求導內核
%???Weickert方程中決定擴散幅度的常量
%???Options.C??????:??默認值為?1e-10
%???Options.m??????:??默認值為?1
%???Options.alpha??:??默認值為?0.001
%算法分析:
%???1對圖像進行高斯預處理;
%???2計算結構張量、特征值、特征向量;
%?????(圖像邊緣給出特征值?特征向量指向最大特征值的方向,用來描述邊緣方向)
%???3?計算擴散張量;
%???4?用一個有限差分方案來進行擴散;
%???5?回到步驟1,直到達到規定的擴散時間.
%
%?注釋
%?標準和非負的擴散僅允許小的擴散時間步長,不然離散會變得不穩定;隱式、旋轉不變和優化擴散方案允許大的擴散時間步長。?
%?舉例2D
%???I?=?im2double(imread(‘LUNG2‘));
%???I?=?rgb2gray(I);
%???JS?=?CoherenceFilter(Istruct(‘T‘1‘rho‘1‘Scheme‘‘S‘));
%???JN?=?CoherenceFilter(Istruct(‘T‘1‘rho‘1‘Scheme‘‘N‘));
%???JI?=?CoherenceFilter(Istruct(‘T‘1‘rho‘1‘Scheme‘‘I‘));
%???JR?=?CoherenceFilter(Istruct(‘T‘1‘rho‘1‘Scheme‘‘R‘));
%???JO?=?CoherenceFilter(Istruct(‘T‘1‘rho‘1‘Scheme‘‘O‘));
%???figure?
%???subplot(231)?imshow(I)?title(‘原始圖像‘);
%???subplot(232)?imshow(JS)?title(‘標準方案‘);
%???subplot(233)?imshow(JN)?title(‘非負方案‘);
%???subplot(234)?imshow(JI)?title(‘隱式方案‘);
%???subplot(235)?imshow(JR)?title(‘旋轉不變方案‘);
%???subplot(236)?imshow(JO)?title(‘優化方案‘);
%
%增加所有所需函數的路徑

try?%用到try?catch?函數:如果執行try語段出錯,轉而執行catch語段
????functionname=‘CoherenceFilter.m‘;
????functiondir=which(functionname);
????functiondir=functiondir(1:end-length(functionname));
????addpath([functiondir?‘/functions2D‘])%將functions2D文件夾添加到matlab搜索路徑
????addpath([functiondir?‘/functions‘])%將functions文件夾添加到matlab搜索路徑
catch?me
????disp(me.message);
end

%設置默認參數
defaultoptions=struct(‘T‘2‘dt‘[]‘sigma‘?1?‘rho‘?1‘Scheme‘‘S‘??‘C‘?1e-10?‘m‘1‘alpha‘0.001);

if(~exist(‘Options‘‘var‘))%如果不存在輸入參數,則使用默認參數
????Options=defaultoptions;
else?%否則的話,使用用戶輸入的參數
????tags?=?fieldnames(defaultoptions);%fieldnames:將defaultoptions結構體中的變量名賦值給tags
????for?i=1:length(tags)
????????if(~isfield(Optionstags{i}))??Options.(tags{i})=defaultoptions.(tags{i});?end?%isfield:判斷輸入是否是結構體數組的成員
????end
????if(length(tags)~=length(fieldnames(Options)))
????????warning(‘CoherenceFilter:unknownoption‘‘unknown?options?found‘);
????end
end

if(isempty(Options.dt))%如果用戶沒有輸入dt值,則取以下默認值
????switch?lower(Options.Scheme)?
??????case?‘s‘?Options.dt=0.2;
??????case?‘n‘?Options.dt=0.2;
??????case?‘i‘?Options.dt=0.2;
??????case?‘r‘?Options.dt=0.2;
??????case?‘o‘?Options.dt=0.2;??
??????otherwise
????????error(‘CoherenceFilter:unknownoption‘‘unknown?scheme‘);
????end
end
????
%%%%%%%%各向異性擴散的主循環程序%%%%

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????429??2013-05-09?16:45??二維擴散濾波用于圖像增強\functions2D\ConstructDiffusionTensor2D.m

?????文件????????591??2013-05-23?11:04??二維擴散濾波用于圖像增強\functions2D\diffusion_scheme_2D_rotation_invariant.m

?????文件???????1766??2013-05-23?11:04??二維擴散濾波用于圖像增強\functions2D\diffusion_scheme_2D_implicit.m

?????文件???????2112??2013-05-23?11:04??二維擴散濾波用于圖像增強\functions2D\diffusion_scheme_2D_optimized.m

?????文件???????1221??2013-05-23?11:05??二維擴散濾波用于圖像增強\functions2D\diffusion_scheme_2D_standard.m

?????文件???????1016??2013-05-23?11:05??二維擴散濾波用于圖像增強\functions2D\EigenVectors2D.m

?????文件???????1636??2013-05-10?14:06??二維擴散濾波用于圖像增強\functions2D\diffusion_scheme_2D_non_negativity.m

?????文件????????580??2013-05-10?16:51??二維擴散濾波用于圖像增強\functions2D\StructureTensor2D.m

?????文件???????2257??2013-05-23?10:59??二維擴散濾波用于圖像增強\functions\imgaussian.m

?????文件????????912??2013-05-23?11:02??二維擴散濾波用于圖像增強\functions\derivatives.m

?????文件???????1141??2013-05-23?14:40??二維擴散濾波用于圖像增強\test_shiyan1.m

?????文件???????5247??2013-05-23?11:03??二維擴散濾波用于圖像增強\CoherenceFilter.m

?????文件???????1511??2013-05-23?14:48??二維擴散濾波用于圖像增強\test_shiyan2.m

?????文件???????1256??2013-05-23?11:03??二維擴散濾波用于圖像增強\compare.m

?????文件?????177742??2013-04-17?09:29??二維擴散濾波用于圖像增強\LUNG2.png

?????目錄??????????0??2013-05-29?16:11??二維擴散濾波用于圖像增強\functions2D

?????目錄??????????0??2013-05-29?16:11??二維擴散濾波用于圖像增強\functions

?????目錄??????????0??2013-05-29?16:11??二維擴散濾波用于圖像增強

-----------?---------??----------?-----??----

???????????????199417????????????????????18


評論

共有 條評論