【问题标题】:Find slope (angle) of each line of the image查找图像每条线的斜率(角度)
【发布时间】:2013-02-13 00:38:32
【问题描述】:

我必须计算图像中每条可检测线的斜率(或角度)。如果可能的话,甚至可以检测线斜率的变化。 我已经执行了 2D Fourier,并且我知道每个区域(64x64px 的集合)的邻域平均角度。我什至尝试了霍夫变换,但 sobel 和 prewitt 边缘检测似乎都不能正确检测到这些线。

请注意,有些线条相互交叉,有些线条不直。

有没有一种方法可以检测每条线的斜率?或者检测这些线以执行有用的霍夫变换?

如果您需要完整的图片,我可以将其上传到某个地方。

Image

【问题讨论】:

    标签: image-processing edge-detection hough-transform


    【解决方案1】:

    问候阿达梅克,

    我希望现在还为时不晚。这里有一些快速的想法:

    1) 第一步使用 Hough trafo 检测线条是一个好主意 2)第二步将是某种标签,以真正知道有哪些行。最难解决的问题可能是如何确定行的开始和结束并分离可能连接的行。在这种情况下搜索标签关键字,应该会给出一些结果。 3)之后,有结束和起点,我会 a) 如果您在进一步分析中需要更准确的数据,请为每条线计算回归线 b) 只需通过 f(x)=mx+n 计算斜率和截距,其中 m 是斜率,n 是截距。给定 2D 中的两个点,这很容易做到,如下所示:

    slope = (yRight - yLeft)/(xRight - xLeft);
    m_oIntercept = ((yLeft - slope*xLeft) + (yRight - slope*xRight))*0.5;
    

    并且不要忘记在之前测试 (xRight-xLeft)

    希望对您有所帮助, G.

    【讨论】:

    • 感谢您的回答。现在还不算晚。
    • 我之前对这些检测到的线条的输入图片进行了标记和可视化。所以我知道,并不是每一行都被检测到,而且我知道这不是霍夫变换失败。这都是关于初步操作(直方图均衡,sobel 或 prewitt 边缘检测,...)。尽管如此,还是感谢您尝试解决我的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-13
    • 2011-03-22
    相关资源
    最近更新 更多