首先声明下,网上有人提出降低python版本opencv的方法用来解决这个问题,这种方法基本上是不太靠谱的,或者说不具备普遍性的。
这种方法参考链接:https://blog.csdn.net/weihanlai/article/details/85066570
我的解决办法
先声明下使用环境:
Ubuntu18.04LTS+anaconda3+python3.8+Qt5.12.10
使用的python版的opencv版本是opencv4.5.1
【猜测,这种方法也适用于Ubuntu16版本】
之所以会出现Qt在调用python脚本导入cv崩溃的问题,是因为Qt调用在第三方python脚本中调用opencv的时候,不支持python-opencv的GUI部分,因此需要安装没有opencv的GUI库。
同时,也不能在python脚本中调用cv2.imshow()这个方法。
解决办法:
终端进入自己的虚拟环境中
输入命令:pip install opencv-python-headless
就这样一行简单的指令,就解决了问题
另外,这里是原文出处,在Qt的官方论坛上:
https://forum.qt.io/topic/119109/using-pyqt5-with-opencv-python-cv2-causes-error-could-not-load-qt-platform-plugin-xcb-even-though-it-was-found/6
补充下!!!!
这个有一个问题,就是不能使用cv2.imshow()函数,因为这条命令安装的是无gui的python-opencv库。