Ubuntu里执行带窗口的opencv python代码时遇到下面这样的错误:
Traceback (most recent call last):
File "main.py", line 34, in <module>
while cv.waitKey(1) < 0:
cv2.error: OpenCV(4.5.3) /tmp/pip-build-u6khojk_/opencv-python/opencv/modules/highgui/src/window.cpp:1340: error: (-2:Unspecified error) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Cocoa support.
If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvWaitKey'
如果按照提示去安装 libgtk2.0-dev 和pkg-config然后再去重编译opencv代码的话,基本上是折腾死人还问题解决不了,像这种与图形界面有关的东西有时安装和卸载几个包根本不解决问题,还牵扯出一堆新问题,遇到这样的问题,最好是直接使用针对Ubuntu编译好了的libopencv-dev的so库来替代,因为libopencv-dev里全是针对Ubuntu编译好了的,能直接运行起来不会有问题,你的程序是python代码的话,再安装个opencv的python wrapper也就是python opencv就可以运行了,也就是只需执行:
pip3 uninstall opencv-python
sudo apt-get install libopencv-dev python-opencv
就解决问题了!如果按照错误提示去做那就基本上是入坑了。