我尝试在matlab中实现canny边缘检测算法。当我在构建的图像cameraman.tif中使用matlab时它工作正常但是当我使用不同的图像和命令窗口显示时它会出错:
指数超出矩阵维度。
canny_edge错误(第45行)
sum = sum + (ID(u+i, v+j) * filter(i+3, j+3));
整个matlab代码托管在link 我是matlab的新手。我尝试实施大学作业算法
答案 0 :(得分:1)
%figure,imshow(filter);
for u = 3 : r
for v = 3 : c
sum = 0;
for i = -2 : 2
for j = -2 : 2
sum = sum + (ID(u+i, v+j) * filter(i+3, j+3));
end
end
IDx(u,v) = sum;
end
end