问题标签 [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 投票
1 回答
1143 浏览

python - 检查数组行是否为 None 并为其赋值

我正在尝试“修复”函数(OpenCV v3,HoughLinesP)的数据输出。输出的第一“行”总是“无”......而其余的输出似乎工作得很好。
我正在尝试检查为“无”的第一行(实际上是任何行)并将其分配为“0”,以便我可以遍历数组。
现在我有这个(但它似乎不起作用):

这是我得到的错误:

文件“test3.py”,第 41 行,在 hlines[0] = [0, 0, 0, 0] TypeError: 'NoneType' object does not support item assignment

我想要做的是将第一行 hlines 分配给 [[0,0,0,0]] 以便它匹配数组的其余部分(意味着有数据)。为什么这不起作用?

0 投票
0 回答
998 浏览

python - 如何改进概率霍夫线变换的检测?

我正在尝试在模拟显示器的视频中检测时钟指针并提取它指向​​的值。为此,我将 Python 与 OpenCV 一起使用。

我基本上做的是:

  1. 我正在使用高斯模糊来降低当前图像中的噪点。
  2. 我使用 Canny Edge Detection 过滤边缘
  3. 我应用概率霍夫线变换

它的代码:

我玩了很多参数来改善结果。当前状态如下所示:

  1. 精明的 精明的

  2. 霍夫 霍夫线变换P

如您所见,结果只是标记了时钟指针的一部分。从 Canny Edge Detection 我可以看出,这部分并不是一个“好”的部分。我想知道我是否错误地使用了霍夫变换,或者边缘检测实际上没有我想象的那么好。由于我是图像处理的新手,我会很感激任何建议。

0 投票
1 回答
3568 浏览

opencv - 使用霍夫变换opencv android进行矩形文档检测

我正在尝试使用 opencv 4 android sdk 检测矩形文档。首先,我尝试通过查找轮廓来检测它,但它不适用于多色文档。您可以查看此链接以获得更好的想法: 使用 OpenCV4Android 检测多色文档

我研究了很多,发现它可以使用 houghline 变换来完成。所以我按照以下方式检测文档:

原始图像 -> cvtColor -> GaussianBlur 过滤器 -> 扩张它以锐化边缘 -> 应用分水岭图像分割算法 -> 使用动态 otsu 阈值进行精明边缘检测 -> 然后应用霍夫线变换

我为霍夫线变换所做的是:

从上面的水平和垂直线列表中,我找到了如下交点:

并从这四个交点开始画线。所以,到目前为止我能够通过它检测文档。见下图:

在此处输入图像描述

但是,当其他对象与文档有关时,它也会尝试检测它们。我将从上到下的行和从左到右的 cols 查找最大矩形的交点。我遇到以下问题:

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

正如您在上图中所见,当屏幕上出现其他物体时,它也会检测到它。如何只检测文件?并忽略其他对象?这是我的原始图像:

在此处输入图像描述

任何帮助将不胜感激!提前致谢

0 投票
0 回答
98 浏览

c++ - 如何在opencv中使用Houghlinep函数后找到坐标

大家好,我是 OpenCV 的新手。我正在使用 opencv 删除线条并从图像中获取删除的坐标。我正在像这样使用 HoughlineP

我得到了这样的结果图像 HoughlinesP 输出

但是一行实际上包含许多子行并分组到一条粗线现在我想侵蚀,分组,通常它到一行有两个 Point begin , end 为每一行

这是输入图像 输入图像

0 投票
0 回答
2796 浏览

opencv - HoughLinesP 将非常相似的线条合二为一

我有一张简单的图片,我想提取线条的端点。但是,还有其他线条重叠,因此,我的线条中有“间隙”。 10 行的二值图像

我正在尝试使用 HoughLinesP 来提取这十行的参数化,虽然视觉结果是合理的,但它仍然给了我 43 条单独的行。 HoughLinesP 表示

我尝试过平滑线条,线条的骨架表示,在每一条之后重新绘制线条,我现在正在与countours合作。我已经调整了我的参数(行长、最大间隙、阈值等),但我无法将其减少到十行。在我当前的代码中,我从自身中减去第一个图像以创建一个新的黑色空间来绘制我的 HoughLines,这可能不是最有效的,但它是有效的。这是我的代码:

是否有另一种方法可以让我填补这些空白并拉出十个直线方程?我现在正在使用 Python、OpenCV 和 Numpy。

0 投票
1 回答
1321 浏览

c++ - 如何添加对角概率霍夫线

在我的代码中,我仅通过 HoughLinesP (OpenCV) 检测垂直线。以下是截取输出的示例:

在此处输入图像描述

它曾经是一扇门,然后我应用了精明算法。通过仅设置 90 度角,将仅检测到垂直线(红色线)。但现在我想在门上方的这个小部分添加绿线。

角度计算如下:

那么我怎样才能另外检测到绿色呢?尤其是只有门以上的那些?谢谢!

0 投票
1 回答
1725 浏览

c++ - 合并霍夫线

我卡在我的代码中的某一点。首先简要说明我在做什么:作为输入,有一张地板的图像。使用 Canny 和 HoughLinesP 算法,我想将整面墙分割成许多“小”部分,正如您在此处看到的那样,这同时是理想的输出(这里没有 canny),我想得到- 一段是两条红线之间。

在此处输入图像描述

好吧,因为我实际上在这里得到了这个

在此处输入图像描述

我想知道如何合并彼此太近的线。例如,第 2、4、3、5、6 行应该是一行,也算作一。比第 7 行到第 15 行也应该是一个,这将是第二行。

当然,我做了一些研究并尝试了这个:

但是当您查看上图时,您可以看到我在代码中的合并想法不起作用。所以我会很高兴我的代码的想法、方法或更正!谢谢!

0 投票
1 回答
246 浏览

python - 车道检测元组错误 hough_lines OpenCv

我一直在学习 LaneDetection,从他的 YouTube 频道中的 sentdex 中学习 PYTHON PLAYS GTA V 系列。

提前我想应用我自己的车道检测代码,但我遇到元组错误我是 OpenCV 的新手,因此暂时无法掌握这些概念

下面是正在生成的 hough_line 函数错误,该错误是从 process 函数调用的。

产生的错误:

请帮助我。此致,维迪特沙阿

0 投票
1 回答
315 浏览

python - 值错误将 NAN 浮点数转换为整数霍夫线

我读过几篇文章并看过车道检测的视频,因此决定了解它是如何工作的。我对 OpenCV 完全陌生,所以请原谅我的愚蠢怀疑。我使用 Udacity 开源项目开发车道检测,但我无法执行代码。我收到一个我无法理解的值错误

代码:

产生的错误:

我正在使用python2.7

请指导我。您真诚的,维迪特·沙阿

0 投票
0 回答
555 浏览

c++ - Qt、Opencv、C++ - 如何仅查找 PCB 中传输线的霍夫线?

我编写了一个代码来查找 PCB 中传输线的霍夫线。我的代码:

输出图像具有不正确的霍夫线,并且在传输线之间还有一条用于空间的霍夫线。

如何获得合适的霍夫线和不在PCB传输线之间的霍夫线?

原图: Canny 边缘检测图像

图像的像素级别:在此处输入图像描述 实际上我不想平滑像素。只需找到彼此平行的像素并找到它们之间的距离。

是否可以通过霍夫变换。有没有其他方法可以找到边缘像素之间的距离