查找图片中的特定行


9

我想在下图中找到蓝色和灰色之间的界线:

在此处输入图片说明

更确切地说,该行的终点。

霍夫变换是一种选择吗?如果是,在使用Hough之前应该如何设置图片?

解决该问题的任何方法都将有所帮助。


在霍夫变换之前进行边缘检测。它将转变为两条带有黑色的
明线

Answers:


10

通常,您需要像Canny边缘检测器这样的边缘检测器来解决此类问题。霍夫变换对于提取线而不是边缘很有用。

但是,在这种情况下,最好进行以下操作:

imdata = imread('grayblue.jpg');
colidx = find(diff(imdata(1,:) ~= 0);

因为它是如此简单。


0

对于一个简单的图像,如下所示的卷积核将很好地找到边缘:

[-1 2-1]

这在每个边缘点产生一个边缘像素。没有大惊小怪,没有头脑。Canny对此问题太在意。如果要查找任意角度的直线的边缘点,则可以使用简单的拉普拉斯算子,高斯拉普拉斯算子(LoG)或高斯差分算子(DoG)。索贝尔(Sobel)和普雷维特(Prewitt)也很简单,但不合适,因为它们会产生“两倍厚度”的线条。

这里描述了Hough的一种邪恶的快速实现:http : //www.ic.uff.br/~laffernandes/projects/kht/index.html

也有非常快速的“无参数霍夫”算法,但是实现和调试有些棘手。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.