📄 gaijin3.m
字号:
%灰色斜率关联度的改进模型 判断非边缘点为基准
clc;clear;
I=imread('lena.jpg');
[m,n]=size(I); %补行补列
append1=I(1,:);append2=I(m,:);
I1=[append1;I];I1=[I1;append2];
m=m+2;
append1=I1(:,1);append2=I1(:,n);
I1=[append1,I1];I1=[I1,append2];
n=n+2;
x=[1 1 1 1 1 1 1 1 1];mn_x=mean(x);
a=0.925; %阈值a 三个阈值分别写在边缘图像的名称前
for i=2:m-1
for j=2:n-1
y=[I1(i-1,j-1),I1(i-1,j),I1(i-1,j+1),I1(i,j-1),I1(i,j),I1(i,j+1),I1(i+1,j-1),I1(i+1,j),I1(i+1,j+1)];
y=double(y);ymax=max(y);
mn_y=mean(y);
for t=1:8
dx1(t)=x(t+1)-x(t);
dy1(t)=y(t+1)-y(t);
if dx1(t)*dy1(t) >= 0 sgn=1; else sgn=-1; end
r(t)=(1+abs(dx1(t)/mn_x))/(1+abs(dx1(t)/mn_x)+abs(dx1(t)/mn_x-dy1(t)/mn_y));
c_r(t)=sgn*r(t);
end
p=mean(c_r);
if p<a
I(i,j)=0;
else
I(i,j)=255;
end
end
end
for i=1:m I(i,1)=255;I(i,n)=255; end
for j=1:n I(1,j)=255;I(m,j)=255; end
figure;imshow(I);imwrite(I,'0.925lena1.jpg');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -