问题标签 [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.
python - OpenCV Python 使用 HoughLinesP() 算法测量距离以确定水位
我正在尝试使用 OpenCV 和 Python 测量玻璃通道中的水位。我决定在选定的 ROI 中使用 HaughLines 并找到所述线条的中点,这样我就可以计算出我想要的线条之间的差异,并将其乘以我稍后会得到的设定参考尺寸。到目前为止,我发现线条的部分如下所示:
根据我选择的图像和 ROI,我发现结果不一致。图像示例以及我选择 ROI 的位置:
请注意,通道的底部从胶带到达的地方开始。看起来我几乎找不到那条确切的线,因为它在底部有多么嘈杂。现在,这些没有形态的阈值似乎给出了更好的结果。我也尝试使用sobel
导数代替,canny
但结果更差。
在这种环境下甚至有可能获得精确的测量结果吗?是编码问题还是改变我拍照的方式或两者兼而有之?将来我可能需要在剧烈湍流期间绘制水剖面图,我是否应该为此简单地远离 OpenCV,因为噪音太大?任何帮助表示赞赏。
c++ - 在 HoughLines 之前要采取什么预处理步骤
opencv - houghlinesp 和阈值处理
我正在使用 opencv Houghlinesp 来检测停车场中的线路。这是源图像
当我做了一个 hough transform-p 来检测线条时,我得到了这样的最终图像。
它确实检测到了空白。知道如何去除汽车顶部的这些嘈杂的线条吗?或高度赞赏的替代算法或方法的任何方向。
c++ - 我需要解释霍夫代码的具体部分(opencv/c++)
霍夫变换的这一部分对我来说很难。
为什么要进行 16 位(和 15 位)移位操作,并想知道“-sin”是什么意思。
原始代码:https ://github.com/opencv/opencv/blob/master/modules/imgproc/src/hough.cpp
opencv - 理解霍夫变换
我想了解学校的霍夫变换。我知道我们不能表示平行于 Y 轴的垂直线(y = m*x+b)。但是我们可以用极坐标 r 和 theta 来做到这一点 (y= - cos(theta)/sin(theta) * x + r/sin(theta))。
但是可以说我有一条穿过这两点的线。P1(0,0) 和 P2(0, 100)。所以这是一条与 Y 轴完全相同的线。这如何用极坐标 r 和 theta 来表示?因为 r 是 0,所以 theta 也是 0。我不明白这条线如何在霍夫空间中表示......:/
谁可以给我解释一下这个?