module 'cv2' has no attribute 'cornerHarris_create'
时间: 2023-10-27 19:08:00 浏览: 206
在使用opencv库进行目标跟踪时,如果出现"module 'cv2' has no attribute 'cornerHarris_create'"的错误,这表示在你的opencv版本中没有名为'cornerHarris_create'的方法。这可能是因为你所使用的版本不支持该方法或者你的安装可能出现了问题。解决这个问题的方法是检查你的opencv版本,并确保你使用的是支持'cornerHarris_create'方法的版本。如果你的版本太旧,你可以尝试升级到较新的版本。另外,你还可以检查你的opencv安装是否正确,确保所有的依赖项都正确安装。如果问题仍然存在,你可以查看opencv的官方文档或寻求相关论坛或社区的帮助来解决这个问题。
相关问题
recognizer = cv2.face.LBPHFaceRecognizer_create() AttributeError: 'module' object has no attribute 'LBPHFaceRecognizer_create'
这个错误通常是由于OpenCV版本问题引起的。在OpenCV 4.0及以上版本中,创建LBPHFaceRecognizer的方法已经改变,必须使用`cv2.face.LBPHFaceRecognizer_create()`。而在OpenCV 3.x版本中,可以使用`cv2.face.createLBPHFaceRecognizer()`。
你可以通过以下代码检查OpenCV版本:
```
import cv2
print(cv2.__version__)
```
如果输出的版本号是4.0及以上,那么你应该使用`cv2.face.LBPHFaceRecognizer_create()`创建对象。如果输出的版本号是3.x,那么你应该使用`cv2.face.createLBPHFaceRecognizer()`创建对象。
cv2 has no attribute cv_32f
This error usually occurs when you try to use the attribute `cv_32f` with OpenCV's `cv2` module. The reason for this error is that there is no such attribute in the `cv2` module.
To fix this error, you can try changing the attribute from `cv_32f` to `CV_32F`, which is the correct attribute name in OpenCV's Python bindings. Alternatively, you can import the `cv` module instead of the `cv2` module and use the `cv.CV_32F` attribute.
Here's an example:
```python
import cv2 as cv
# create a new image
img = cv.imread('image.jpg')
# convert the image to float32
img = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
img = img.astype('float32')
# apply some filter
img = cv.GaussianBlur(img, (5, 5), cv.CV_32F)
# show the image
cv.imshow('image', img)
cv.waitKey(0)
cv.destroyAllWindows()
```
Note that `cv.CV_32F` is used instead of `cv2.cv_32f`.
阅读全文