如何在不使用“边缘”方法的情况下检测图像中的边缘,只使用数学运算(矩阵或派生或 div 或任何其他)?确实,我怎样才能edge
通过使用算法 Canny
或sobel
其他任何方法来重写函数?
例如:
粉色长方形256*256 黑色长方形127*127
答案:Canny 教程
如何在不使用“边缘”方法的情况下检测图像中的边缘,只使用数学运算(矩阵或派生或 div 或任何其他)?确实,我怎样才能edge
通过使用算法 Canny
或sobel
其他任何方法来重写函数?
例如:
粉色长方形256*256 黑色长方形127*127
答案:Canny 教程
您声明您希望使用 Canny、Sobel 或其他算法。这些都可以在边缘使用。尝试例如:
BW = edge(I,'canny');
我是你的图像矩阵。如果您有兴趣了解其edge
工作原理,请键入
edit edge
进入你的命令窗口。然后,您将看到 MATLAB 自己的实现。
您可能希望edge
从头开始重新实现,以便更好地理解图像处理算法的工作原理。如果是这样,我会引导您访问以下来源:
对于您使用矩形的具体示例,很有可能使用它edge
来查找边缘。您必须做的一个技巧是将 rgb 图像转换为灰度图像,使用rgb2gray
. 尝试例如:
rgb_image = imread('iarLe.png');
gray_image = rgb2gray(rgb_image);
edge_image = edge(gray_image);
imshow(edge_image);