python-3.x - 不能将 OpenCV GeneralizedHoughTransform 类与 Python 一起使用

标签 python-3.x opencv hough-transform

我正在尝试使用 OpenCV 4.0.0 和 Python 3.6 编写一个使用 GeneralizedHoughBallard 类的基本示例。我在这里找到了 C++ 的示例 https://github.com/opencv/opencv/blob/4.0.0/samples/gpu/generalized_hough.cpp但 Python 不行。

当我尝试创建 GeneralizedHoughBallard 类的新实例时:

import cv2
alg = cv2.createGeneralizedHoughBallard()

我收到错误:“AttributeError:模块‘cv2.cv2’没有属性‘createGeneralizedHoughBallard’”。

我在 OpenCV 源代码 (https://github.com/opencv/opencv/blob/4.0.0/modules/imgproc/include/opencv2/imgproc.hpp) 中看到 createGeneralizedHoughBallard 是用 CV_EXPORTS 声明的,所以我想它应该可以与 Python 一起使用。我尝试使用在同一文件 (improc.hpp) 中声明的另一个类似函数,例如:cv2.createCLAHE() 并且工作正常。

可能是什么问题?

最佳答案

显然它被称为 GeneralizedHoughBallard

import cv2
print([x for x in dir(cv2) if 'Hough' in x])
print([x for x in dir(cv2) if x.startswith('create')])
['GeneralizedHough',
 'GeneralizedHoughBallard',
 'GeneralizedHoughGuil',
 'HoughCircles',
 'HoughLines',
 'HoughLinesP',
 'HoughLinesPointSet']
['createAffineTransformer',
 'createAlignMTB',
 'createBackgroundSubtractorKNN',
 'createBackgroundSubtractorMOG2',
 'createButton',
 'createCLAHE',
 'createCalibrateDebevec',
 'createCalibrateRobertson',
 'createChiHistogramCostExtractor',
 'createEMDHistogramCostExtractor',
 'createEMDL1HistogramCostExtractor',
 'createHanningWindow',
 'createHausdorffDistanceExtractor',
 'createLineSegmentDetector',
 'createMergeDebevec',
 'createMergeMertens',
 'createMergeRobertson',
 'createNormHistogramCostExtractor',
 'createShapeContextDistanceExtractor',
 'createThinPlateSplineShapeTransformer',
 'createTonemap',
 'createTonemapDrago',
 'createTonemapDurand',
 'createTonemapMantiuk',
 'createTonemapReinhard',
 'createTrackbar']

关于python-3.x - 不能将 OpenCV GeneralizedHoughTransform 类与 Python 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55490923/

相关文章:

python - 即使在编译调用之后,Keras 模型也要求编译

python - 为什么 int 列表在 python 3.7 及更高版本中没有得到转换,但在 python 2.7 上有效?

c++ - 如何在 OpenCV 中设置指向 Mat 变量内容的指针

python - 将 HoughCircles 与 3 channel 输入一起使用时出错

python - Celery 不使用 Redis 在 Kubernetes 中处理任务

VSCode 中的 Python 和 pylint

opencv - 在具有已知引用距离的图像上测量距离时的透视补偿

opencv - 在opencv中裁剪图像

c++ - 在 DLIB 中通过霍夫变换结果进行过滤

Python 显示带有可见超时的通知