我一直在比较OpenCV和scikit-image的霍夫线条实现,发现scikit-image的结果显著更好。我正在尝试在两者中都进行相同的Canny / Hough线性转换(在OpenCV中添加了GaussianBlur,因为我认为scikit会在canny的过程中将其作为一部分处理)。如果可能的话,我想了解如何从OpenCV中获得与scikit-image相似的结果。这是来自scikit-image的结果:
我已将代码和结果上传至https://github.com/grokys/hough-test。对我的 Python 技能表示歉意。
这是OpenCV的结果:
你可以看到它们明显更差。OpenCV 的中间 Canny 输出也更糟糕(但不是非常严重),所以我不确定那是否是问题?我已将代码和结果上传至https://github.com/grokys/hough-test。对我的 Python 技能表示歉意。
HoughLinesP
具有距离和角度分辨率的参数(由您显式设置),而probabilistic_hough_line
仅允许在某些角度进行处理(您没有使用)。要得出明确的答案,恐怕您需要深入研究源代码。 - HansHirse