您好,欢迎访问三七文档
img_src=imread('自己的图片路径');I=rgb2gray(img_src);str={'模板大小n=','方差k=','二值化阈值'};%输入相关参数:高斯模板大小、方差、二值化阈值sData=InputDlg(str,'高斯参数',1);if~isempty(sData)n=str2double(sData(1));k=str2double(sData(2));s=str2double(sData(3));endn1=floor((n+1)/2);%计算高斯模板中心fori=1:nforj=1:nb(i,j)=exp(-((i-n1)^2+(j-n1)^2)/(4*k))/(4*pi*k);%高斯滤波函数endendA=conv2(I,b,'same');%高斯滤波[w,h]=size(A);k=5;y=double(A);fori=round(k/2):1:(w-round(k/2)+1)%扫描每一行forj=round(k/2):1:(h-round(k/2)+1)%扫描每一列t=16*A(i,j)-A(i-1,j-1)-A(i-1,j+1)-A(i+1,j-1)-A(i+1,j+1)-2*A(i,j-1)-2*A(i,j+1)-2*A(i+1,j)-2*A(i-1,j)-A(i,j-2)-A(i,j+2)-A(i+2,j)-A(i-2,j);y(i,j)=(-1)*t;t=0;%变量初始化end%结束列扫描end[w,h]=size(y);e=zeros(w,h);%创建数组e(find(ys))=1;%阈值判断二值化,零交叉判断边缘最大值A=e;%函数输出imshow(A),title('LoG算子');
本文标题:LoG边缘检测
链接地址:https://www.777doc.com/doc-5258019 .html