gpt4 book ai didi

c++ - OpenCV 识别此图像中的线条

转载 作者:行者123 更新时间:2023-11-28 02:24:59 26 4
gpt4 key购买 nike

我无法将 OpenCV 的 HoughLines 变换应用于我发布的图像。所有的线都应朝向 15 度,但这会导致在多个方向上出现很多线。我该怎么做?!

this是图像。

最佳答案

是的,虽然在这里不适用.. 太多的白色像素。

然而,您可以通过一些图像处理来获得线条。我会这样做:

  1. 旋转图片,使线条垂直
  2. 隔离每一行。

旋转图片

您可以使用所有白色像素的 minAreaRect 获取 RotatedRect,然后在知道 yourRect.angle 的情况下旋转原始图像。

我想您的原始图像代表文本。文档分析中有很多技术可以“纠正”您的图像,即纠正歪斜

隔离每一行

您可以使用垂直(或水平)投影直方图。基本上,您计算每个 x (y) 坐标的白色像素数。您可以在 OpenCV 中使用函数 reduce 将其作为参数 CV_REDUCE_SUM 来执行此操作。现在您可以轻松识别直方图为 0 的线之间的空格(最好应用一个小阈值)。您的行将位于两个连续的空格之间。

希望对您有所帮助!

关于c++ - OpenCV 识别此图像中的线条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31055748/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com