• 大小: 224KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-14
  • 语言: Matlab
  • 标签: 未分类  

资源简介

matlab开发-脑瘤的分割。核磁共振图像中的脑肿瘤可以被检测出来。

资源截图

代码片段和文件信息

function diff_im = anisodiff(im num_iter delta_t kappa option)
fprintf(‘Removing noise\n‘);


fprintf(‘Filtering Completed !!‘);

% Convert input image to double.
im = double(im);

% PDE (partial differential equation) initial condition.
diff_im = im;

% Center pixel distances.
dx = 1;
dy = 1;
dd = sqrt(2);

% 2D convolution masks - finite differences.
hN = [0 1 0; 0 -1 0; 0 0 0];
hS = [0 0 0; 0 -1 0; 0 1 0];
hE = [0 0 0; 0 -1 1; 0 0 0];
hW = [0 0 0; 1 -1 0; 0 0 0];
hNE = [0 0 1; 0 -1 0; 0 0 0];
hSE = [0 0 0; 0 -1 0; 0 0 1];
hSW = [0 0 0; 0 -1 0; 1 0 0];
hNW = [1 0 0; 0 -1 0; 0 0 0];

% Anisotropic diffusion.
for t = 1:num_iter

        % Finite differences. [imfilter(..‘conv‘) can be replaced by conv2(..‘same‘)]
        nablaN = imfilter(diff_imhN‘conv‘);
        nablaS = imfilter(diff_imhS‘conv‘);   
        nablaW = imfilter(diff_imhW‘conv‘);
        nablaE = imfilter(diff_imhE‘conv‘);   
        nablaNE = imfilter(diff_imhNE‘conv‘);
        nablaSE = imfilter(diff_imhSE‘conv‘);   
        nablaSW = imfilter(diff_imhSW‘conv‘);
        nablaNW = imfilter(diff_imhNW‘conv‘); 
        
        % Diffusion function.
        if option == 1
            cN = exp(-(nablaN/kappa).^2);
            cS = exp(-(nablaS/kappa).^2);
            cW = exp(-(nablaW/kappa).^2);
            cE = exp(-(nablaE/kappa).^2);
            cNE = exp(-(nablaNE/kappa).^2);
            cSE = exp(-(nablaSE/kappa).^2);
            cSW = exp(-(nablaSW/kappa).^2);
            cNW = exp(-(nablaNW/kappa).^2);
        elseif option == 2
            cN = 1./(1 + (nablaN/kappa).^2);
            cS = 1./(1 + (nablaS/kappa).^2);
            cW = 1./(1 + (nablaW/kappa).^2);
            cE = 1./(1 + (nablaE/kappa).^2);
            cNE = 1./(1 + (nablaNE/kappa).^2);
            cSE = 1./(1 + (nablaSE/kappa).^2);
            cSW = 1./(1 + (nablaSW/kappa).^2);
            cNW = 1./(1 + (nablaNW/kappa).^2);
        end

        % Discrete PDE solution.
        diff_im = diff_im + ...
                  delta_t*(...
                  (1/(dy^2))*cN.*nablaN + (1/(dy^2))*cS.*nablaS + ...
                  (1/(dx^2))*cW.*nablaW + (1/(dx^2))*cE.*nablaE + ...
                  (1/(dd^2))*cNE.*nablaNE + (1/(dd^2))*cSE.*nablaSE + ...
                  (1/(dd^2))*cSW.*nablaSW + (1/(dd^2))*cNW.*nablaNW );
           
       
        
end

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       42990  2015-06-11 10:03  O.P final\a.jpg
     文件       67172  2015-06-11 10:03  O.P final\a1.jpg
     文件        2415  2015-06-11 10:03  O.P final\anisodiff.m
     文件        1816  2015-06-11 10:03  O.P final\Asbtmi.m
     文件        2065  2015-06-11 10:03  O.P final\Asbtmi2.m
     文件         779  2015-06-11 10:03  O.P final\Asbtmi3.m
     文件        1474  2015-06-11 10:03  O.P final\Asbtmi4.m
     文件        6907  2015-06-11 10:03  O.P final\b.jpg
     文件       66228  2015-06-11 10:03  O.P final\b1.jpg
     文件        7815  2015-06-11 10:03  O.P final\c.jpg
     文件       69596  2015-06-11 10:03  O.P final\c1.jpg
     文件        1264  2015-06-11 10:03  O.P final\comp.m
     文件          68  2015-06-11 10:03  O.P final\desktop.ini
     文件        2156  2015-06-11 10:03  O.P final\falsepositives.m
     文件        4773  2015-06-11 10:03  O.P final\svm.m
     文件         198  2015-06-11 10:03  O.P final\test.m
     文件        1321  2015-06-11 10:03  license.txt

评论

共有 条评论