导入 cv2 时出现错误

Something wrong occurred when I import cv2

这是怎么发生的:我在 jupyter notebook 代码单元中写了 import cv2 和 运行,然后 ImportError 发生了。

我尝试过的:我尝试卸载 opencv-pythonopencv-contrib-python 并重新安装 opencv-python,但没有用。

详细错误:

ImportError                               Traceback (most recent call last)
<ipython-input-1-7660ed0d4d71> in <module>
----> 1 import cv2
      2 import numpy as np
      3 import os
      4 from matplotlib import pyplot as plt
      5 import time

D:\Anaconda3\lib\site-packages\cv2\__init__.py in <module>
      7 
      8 from .cv2 import *
----> 9 from .cv2 import _registerMatType
     10 from . import mat_wrapper
     11 from . import gapi

ImportError: cannot import name '_registerMatType' from 'cv2.cv2' (D:\Anaconda3\lib\site-packages\cv2\cv2.cp38-win_amd64.pyd)

由于您已重新安装 opencv-python,我相信您已经安装了最新版本,4.5.5.62

只要确保你有opencv-python-headless对应的版本,也就是最新版本4.5.5.62。如果你的opencv-python-headless不是最新版本,我建议你卸载它,然后重新安装。

我之前在conda中创建了一个名为tf1的环境,我多次尝试重新安装opencv-python和opencv-python-headless。我也检查了他们之间的版本问题,没有问题。 我的问题发生在 jupyter notebook 中。虽然我已经修改为使用tf1内核,但是笔记本中的内核还是被系统使用,所以我直接在cmd中使用pip list查看版本,最后找到了opencv-python和[=的版本12=]-系统headless不对应,上次更新后正常。