AttributeError: module 'cv2' has no attribute 'cv'
时间: 2023-10-08 21:05:02 浏览: 80
求解报错:AttributeError:module ‘os’ has no attribute ‘exit’
当出现"AttributeError: module 'cv2' has no attribute 'cv'"的错误时,这是因为你使用了OpenCV的错误版本或者使用了不正确的函数。
解决这个问题的方法有两种:
1. 降低OpenCV的版本:你可以尝试降低你使用的OpenCV版本,以适配你的代码。具体的降低版本方法需要根据你的开发环境和使用的工具来确定。你可以查找适合你的版本的OpenCV文档或者社区支持来获取更多信息。
2. 更换函数:你可以尝试使用新版本的OpenCV中提供的替代函数。对于"cv2.cv.CV_CAP_PROP_FRAME_WIDTH"和"cv2.cv.CV_CAP_PROP_FRAME_HEIGHT"这两个函数,你可以将它们替换为"cv2.CAP_PROP_FRAME_WIDTH"和"cv2.CAP_PROP_FRAME_HEIGHT"。对于"def __init__(self, (width,height), bg_gray='pencilsketch_bg.jpg')"这个函数,你可以将它修改为"def __init__(self, width_height, bg_gray='pencilsketch_bg.jpg')"。
我建议你尝试第二种方法,因为新版本的OpenCV已经重新支持了SIFT算法,并且SIFT算法的专利将在2020年到期。所以,你可以使用"cv2.SIFT_create()"函数来代替"cv2.xfeatures2d.SIFT_create()"函数。
综上所述,当出现"AttributeError: module 'cv2' has no attribute 'cv'"的错误时,你可以通过降低OpenCV的版本或者更换函数来解决这个问题。
阅读全文