问题标签 [hough-transform]
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.
cuda - CUDA 中的广义霍夫变换 - 如何加快分箱过程?
正如标题所说,我正在对并行计算机视觉技术进行一些个人研究。使用 CUDA,我正在尝试实现霍夫变换的 GPGPU 版本。我遇到的唯一问题是在投票过程中。我正在调用 atomicAdd() 来防止多个同时写入操作,而且我似乎没有获得太多的性能效率。我在网上搜索过,但没有找到任何方法可以显着提高投票过程的性能。
非常感谢您在投票过程中提供的任何帮助。
opencv - 识别球的 HoughCircles 参数
通过将图像转换为灰度然后对其进行模糊处理后,我尝试使用以下参数应用霍夫圆变换:
- CV_HOUGH_GRADIENT
- dp = 1
- min_dist = 1
- 参数_1 = 70
- 参数_2 = 100
- min_radius = 0
- 最大半径 = 0
这是我尝试过的众多图片之一:http: //i.stack.imgur.com/JGRiM.jpg
但是即使使用宽松的参数,该算法也无法识别球。
(当我尝试使用在 GIMP 中创建的圆圈图像时,它工作正常)
opencv - OpenCV霍夫最强线
OpenCV 中的 HoughLines 或 HoughLinesP 函数是否像 HoughCircles 函数一样以累加器顺序返回行列表?我想知道行的顺序。获取线的累加器值也非常方便,因此可以使用智能和自适应阈值而不是固定阈值。是否可以在不自己重写 OpenCV的情况下使用排序值或累加器值?
c++ - 使用广义霍夫变换比较任意形状
我正在使用广义霍夫变换来区分各种任意形状。我将要处理的几个形状如下所示:http: //i50.tinypic.com/2u550t5.png
我已成功实施以下步骤:
A) 转换/训练阶段
i)获取二值图像的阈值 ii)使用 cvFindContour 获取轮廓 iii)计算每个边缘像素的距离“r”和梯度方向 (phi) iv)创建 R 表
为每个形状创建一个 R 表数据库
B) 认可
i)获取任意形状的轮廓 ii)计算每个边缘像素的梯度方向 iii)使用 R-table,构建累加器
我的问题是如何进一步进行?
如何使用此累加器数据检测形状?
opencv - 使用霍夫圆变换进行网球检测的 OpenCV 库
我正在使用 opencv 库为我的项目实时检测网球。我正在使用霍夫圆变换方法进行检测,它的作用是在图像中找到包括对象在内的多个圆。所以很难从图像中得到所需物体的中心和半径的正确坐标
所以有人有任何想法来解决这个问题............?
opencv - Opencv - cvHoughLines2
我正在阅读,我在这本书中Learning openCV
遇到了描述。cvHoughLines2
但我无法理解一件事。
我读过霍夫变换,我想我理解它,所以参数rho
和theta
对我来说有点令人费解。当我们有方程rho=xcos(theta)+ycos(theta)
时,当我们决定一组离散值时theta
,rho
应该自动知道 的值。
在这本书中,据说opencv
创建了rho
xtheta
累加器数组。
opencv 是否只是将角度离散化为 的乘积360/theta
?但是rho
参数如何拟合?rho
离散化的值如何?
python - 无法使用opencv使用霍夫变换定位线
我想使用霍夫变换在下图中找到线条,但我失败了。有人可以告诉问题出在哪里吗?
我正在使用来自 opencv 的标准代码。
我正在使用 python 和 opencv 2.4.2
发现:
- 这些矩形线非常锯齿
- 边缘检测发现断边
- 即使您指定要连接的参数以填补空白,也无济于事。
非常感谢。
编辑 正如“jpa”所建议的,图像被反转并且边缘检测步骤也被跳过
这是反转后的图像
使用的参数如下
输出如下,红色表示存在线条。
c++ - OpenCV 不需要的颜色混合
我编写了一个简短的程序来演示使用 OpenCV 进行霍夫线检测。
在最后一步中,代码获取原始的、模糊的、灰度图像,覆盖 canny 边缘检测结果,然后覆盖霍夫变换检测到的线。
霍夫线被渲染为纯红色(R = 255),3px 线,但是当我覆盖它们时,由于某种原因,下面的图像会显示出来。下面的例子。
原图:
带有 Canny 边缘 + 霍夫线叠加的模糊灰度图像:
放大片段:
可以看出,灰度图像来自(显然)纯红色。为什么是这样?
完整代码如下:
最好的.cpp
工具栏配置.h
工具栏配置.cpp
如果需要,也很高兴提供我的 Makefile。
提前致谢。
c++ - OpenCV:使用霍夫圆变换检测虹膜
我是openCV的新手,但我想创建虹膜识别程序。尽管带有网络摄像头的系统可以检测到眼睛,但它无法检测到圆形虹膜。我正在使用霍夫圆变换。但是如果图像中的虹膜不够圆,系统就无法检测到它。有什么解决办法吗?
使用的算法是霍夫圆变换。