如何获取彩色图像的特定边

时间:2016-07-18 18:18:24

标签: matlab image-processing

我希望获得Desire result中的2曲线。我尝试使用边缘检测技术来获得这两条曲线,但输出并不像预期的那样。第一步,我将原始图像转换为灰度图像。在第二步中,我将灰度图像转换为二进制图像,其阈值由下面的公式计算:

 threshold = floor((sum(sum("grayscale image here")))/(2 *high *width));

然后使用Sobel边缘检测算法找到边缘:

 im_edge = edge("binary image here", 'sobel');

我只需用黑色填充就可以去除左侧和右侧不需要的边缘。 我在Result得到了结果,但这并不像我预期的那样。结果也是嵌入式边缘:

 im_edge = edge("grayscale image here", 'sobel');

任何人都可以帮助我获得更好的结果

1 个答案:

答案 0 :(得分:1)

由于我没有50个声誉来撰写评论,我会在此处写下我的评论作为答案。

您遇到的问题是输入图像中没有可见边缘。就我所见,图像非常流畅。如果你没有在图像上放两行,我就无法告诉它。

要获得更好的效果,您需要获得更多功能,例如在输入图像上应用一些变换。例如,您可以尝试在输入图像的渐变上找到边缘或渐变的绝对值,并查看是否可以更好地找到这两行(imgradient)。