casd.m

来自「进行图像边缘检测的程序」· M 代码 · 共 114 行

M
114
字号

% a=[1 2 3 4 5 6 7 8 9;
function anew =casd(a)
% a1=imread('sampleiris2s.jpg');
% a=rgb2gray(a1);
% anew=a;

[m,n]=size(a);
img=a;
anew=zeros(m,n);
s= (1/115) *[2 4 5 4 2;
             4 9 12 9 4;
             5 12 15 12 5;
             4 9 12 9 4;
             2 4 5 4 2];
for i=3:m-2,
    for j=3:n-2,
        
        mat=[img(i-2,j-2) img(i-2,j-1) img(i-2 ,j)  img(i-2,j+1)  img(i-2,j+2) ;
             img(i-1,j-2) img(i-1,j-1) img(i-1 ,j)  img(i-1,j+1)  img(i-1,j+2) ;
             img(i,j-2)   img(i,j-1)   img(i ,j)    img(i,j+1)    img(i,j+2) ;
             img(i+1,j-2) img(i+1,j-1) img(i+1 ,j)  img(i+1,j+1)  img(i+1,j+2) ;
             img(i+2,j-2) img(i+2,j-1) img(i+2 ,j)  img(i+2,j+1)  img(i+2,j+2) ;];
        
        sum1=double(mat).*s;
        sum=sum(sum(sum1));
        if sum>255
            sum=255;
        elseif sum<0
            sum=0;
        end
        anew(i,j)=sum;
    end
end

% imshow(uint8(anew))

            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
        
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?