问题标签 [houghlinesp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
2941 浏览

java - 如何在 OpenCV Android 中合并 HoughLinesP 产生的附近线?

我正在制作一个 Android 应用程序来检测数独谜题并找到相同的答案。在第一部分中,我需要从给定图像中提取数独。我成功地使用 HoughLinesP 找到了包含框(数独),但由于图像中存在粗线,正在生成大量线条。我需要将属于同一“粗线”的 houghLines 合并为一行,但我无法这样做。到目前为止我的代码:

所以,从技术上讲,我需要 10 条水平线和 10 条垂直线。PS:只有数独在视图中,即图像中没有其他线条,只有普通的数独。请帮我解决这个问题,非常感谢您的时间:)

0 投票
2 回答
3893 浏览

python - 改进水平线检测的 HoughLines (Python, OpenCV)

我有这个源图像:

源代码

我的目标是删除底线,同时保持字母/数字不变。

这是我使用的代码:

我现在取得的最好成绩是这样的:

出去

我怎样才能更好地改进它,尽可能地清理图像?例如,图像周围的所有碎片,文字下方的点和(静止)线条,我该如何去除它们?

谢谢你。

OT:有没有办法创建一个这样的轨迹栏来更改参数(apertureSize、minLineLength、maxLineGap 等)以实时查看结果?

0 投票
1 回答
160 浏览

java - HoughLinesP 生成空图像

我正在开发一个应用程序,它使用 OMR(光学标记 reconize)来读取气泡表,我使用的是 OpenCV API,但是当我使用 HoughLinesP 时,我遇到了一些问题,它返回一个空图像给我。我使用Android的Log.e功能查看了HoughLinesP前后图像的totalcolsrows

我的代码是将 C++ 代码转换为 Java,两者都使用 OpenCV。

在我得到以下结果之前:

[原图]:83840||262||320

在我得到以下结果后:

[线条图像]:0||0||1

我的代码:

C++ 代码:

当我运行该应用程序时,我在这一行收到以下错误:

排序角(角,中心);

错误:

java.lang.IndexOutOfBoundsException

如果有人能告诉我错误在哪里以及如何安排它,我将不胜感激。

0 投票
0 回答
594 浏览

image-processing - 基于SIFT点计算对象中心的广义霍夫变换?

您对此有什么建议吗?

我正在按照一篇研究论文中的步骤重新实施它以解决我的具体问题。我不是专业程序员,但是,我挣扎了一个多月。当我使用广义霍夫变换达到评分步骤时,我没有得到任何结果,我得到的是一个空白图像,没有找到对象中心。我所做的包括以下步骤:

  • 我为训练图像定义了一个空间受限区域,并在该区域内提取 SIFT 特征。中心的红点代表模板(训练)图像中的对象中心。 在此处输入图像描述

    这是 SIFT 在查询图像中提取的兴趣点: 在此处输入图像描述

  • 关键点根据一些条件进行匹配:1)它们应该被量化为相同visual word并且在空间上是一致的。所以我在匹配条件后得到以下几点:

在此处输入图像描述 在此处输入图像描述

  • 对于模板和查询图像,我分别有 15 分和 14 分。我将这些点与对象坐标的模板图像中心一起发送到广义霍夫变换(我从 github 找到的代码)。该代码对其默认图像正常工作。但是,根据我通过算法得到的几点,我不知道我做错了什么?!

我想可能是因为theta计算,所以我把这条线改成返回absy 和 x 的差异。但这并没有帮助。在第 20 行中,他们只考虑 90 度进行分箱,请问是什么原因以及如何根据我的问题和围绕对象中心的旋转角度范围定义分箱?- 分箱范围是否影响中心计算?我真的很感激你让我知道我在这里做错了什么。

0 投票
1 回答
1797 浏览

c++ - 如何过滤霍夫线以进行多车道检测?

我正在使用 HoughTransformP 在 OpenCV C++ 中进行车道检测。

我的线检测步骤是基本的,如下所示:

canny边缘检测后的输出为:

在此处输入图像描述

这里的问题是 HougLinesP 给出了多条线路,而不仅仅是车道。输出看起来与此类似:

在此处输入图像描述

我试图获得这样的东西:

在此处输入图像描述

如何过滤杂乱的线条并仅绘制车道线?

0 投票
2 回答
3213 浏览

python - 在 Python 中使用 OpenCv 检测几乎直线

我正在使用 OpenCv 检测图像中的直线。下面是代码:

对于图像(PDF 的屏幕截图Image.jpg),我得到result.png)作为结果,这正是我想要的输出。

图片.jpg 在此处输入图像描述

结果.png 在此处输入图像描述

但是当我将下面的 Image Test.jpg作为输入时,我的算法无法正常工作。它给出以下错误:

我认为是因为在Test.jpg中水平线不是那么直(因为我通过手机的摄像头点击了它)而且如果我将minLineLength值更改为假设100不会显示上述错误但显示不完整的褪色线排。那么谁能告诉我我应该在我的算法中更改哪些参数以使其正常工作?

测试.jpg在此处输入图像描述

0 投票
1 回答
2273 浏览

opencv - OpenCV - 在图表上提取线条

我想创建一个能够从图表中提取线条的程序。

例如,如果输入这样的图表,我只想输出红线。 在此处输入图像描述

下面我尝试使用霍夫线变换来做到这一点,但是,我没有得到非常有希望的结果。

这会产生下面的输出图像,它不能准确地识别图形线。我该怎么做呢?

注意:目前,我不关心图表标题或任何其他文本。

在此处输入图像描述

我还希望代码也适用于其他图形图像,例如: 等。在此处输入图像描述 在此处输入图像描述

0 投票
1 回答
2228 浏览

python - OpenCV Python:仅在 ROI 中检测线

我想检测感兴趣区域内的线条。我的输出图像应显示原始图像和所选 ROI 中检测到的线条。到目前为止,在原始图像中查找线条或选择 ROI 都不是问题,但仅在 ROI 内查找线条不起作用。我的 MWE 读取图像,将其转换为灰度并让我选择 ROI,但在HoughLinesP想要读取时出错roi

控制台显示:

线 = cv2.HoughLinesP(roi,1,np.pi/180,100,minLineLength,maxLineGap)

错误:OpenCV(3.4.1) C:\Miniconda3\conda-bld\opencv-suite_1533128839831\work\modules\imgproc\src\hough.cpp:441: 错误:(-215) image.type() == (( (0) & ((1 << 3) - 1)) + (((1)-1) << 3)) 在函数 cv::HoughLinesProbabilistic

我的假设是roi没有正确的格式。我正在使用 Python 3.6 和 Spyder 3.2.8。谢谢你的帮助!

0 投票
0 回答
677 浏览

computer-vision - 足球场线检测

我想创建一个可以检测罚球区场线的模型。通过更改一些超参数,我设法为一个特定图像获得了理想的结果,但是相同的代码不适用于另一个图像。即代码对于图像是非常具体的。如果我想让代码适用于每个图像,我应该进行哪些更改。

我作为输入的输入图像之一是这里 图像的输出是这里 我在执行代码时得到的图像失败案例之一是这里

此代码特定于上面提供的图像,不适用于其他图像。请让我知道如何改进我的代码。

0 投票
0 回答
1366 浏览

python - How to find intersection of straight lines with Hough Peaks?

I am developing a method to localise license plate and ultimately apply perspective transform to straighten the plate horizontally.

Currently, my image processing pipeline is able to roughly locate the plate but I'd like to narrow it further. I have applied edge detection, morphological operations and connected component analysis to get to this stage.

My result for license plate detection currently is this

enter image description here

I am trying to implement HoughLinesP to find straight lines of the fonts and then find the intersection of the lines with HoughPeaks, like this

enter image description here

My current attempt at finding houghlines is shown at the code below. However, can anyone guide me on how to find hough peaks? I did some research online and couldn't find any reliable reference.

Result of HoughLinesP Detection

enter image description here