8方向prewitt算子MATLAB程序

来源:百度知道 编辑:UC知道 时间:2024/05/16 20:19:46
边缘检测算子

I=imread('cameraman.tif')
p=[-1 -1 -1;
0 0 0;
1 1 1;];
edgep=conv2(I,p,'same')
imshow(edgep)

方向应该是指算子的转置吧。

p=p'之类的,还有如下形式等;

p=[-1 -1 0;
1 0 -1;
0 1 1;]

产生8方向prewitt算子,保存在3维数组s中:

h=fspecial('prewitt');
for k=1:8
s(:,:,k)=h;
h=imrotate(h,45,'crop');
end