cannot import name '_registerMatType' from 'cv2.cv2'

I got below error message when I run model_main_tf2.py on Object Detection API:

Traceback (most recent call last):
  File "/content/models/research/object_detection/model_main_tf2.py", line 32, in <module>
    from object_detection import model_lib_v2
  File "/usr/local/lib/python3.7/dist-packages/object_detection/model_lib_v2.py", line 29, in <module>
    from object_detection import eval_util
  File "/usr/local/lib/python3.7/dist-packages/object_detection/eval_util.py", line 36, in <module>
    from object_detection.metrics import lvis_evaluation
  File "/usr/local/lib/python3.7/dist-packages/object_detection/metrics/lvis_evaluation.py", line 23, in <module>
    from lvis import results as lvis_results
  File "/usr/local/lib/python3.7/dist-packages/lvis/__init__.py", line 5, in <module>
    from lvis.vis import LVISVis
  File "/usr/local/lib/python3.7/dist-packages/lvis/vis.py", line 1, in <module>
    import cv2
  File "/usr/local/lib/python3.7/dist-packages/cv2/__init__.py", line 9, in <module>
    from .cv2 import _registerMatType
ImportError: cannot import name '_registerMatType' from 'cv2.cv2' (/usr/local/lib/python3.7/dist-packages/cv2/cv2.cpython-37m-x86_64-linux-gnu.so)

The weird thing is I run the same code before, it worked well but now it gives me an error.


The same thing occurred to me yesterday when I used Colab. A possible reason may be that the version of opencv-python(4.1.2.30) does not match opencv-python-headless(4.5.5.62). Or the latest version 4.5.5 may have something wrong...

I uninstalled opencv-python-headless==4.5.5.62 and installed 4.1.2.30 and it fixed.


The same thing occurred to me. My status:

C:\Windows\system32>pip list |findstr opencv
opencv-python                 4.5.2.52
opencv-python-headless        4.5.5.62

The version isn't same. So I first uninstall headless:

pip uninstall opencv-python-headless==4.5.5.62

Then reinstall headless 4.5.2.52 with opencv-python package.

pip install opencv-python-headless==4.5.2.52

The problem is the resolved.


Try uninstall and install(version 4.1.2.30) Headless main modules package

!pip uninstall opencv-python-headless !pip install opencv-python-headless==4.1.2.30


I've had the same issue and the problem was with opencv versioning:

C:\Windows\system32>pip list |findstr opencv
opencv-python                 4.5.2.52
opencv-python-headless        4.5.5.62

As you can see the versions are not the same, so first uninstall headless:

pip uninstall opencv-python==4.5.2.52

And then reinstall opencv-python 4.5.5.62 with opencv-python package:

pip install opencv-python-headless==4.5.5.62