我在使用virtualenvwrapper(我在visual studio code中使用wsl)设置venv之后,在Ubuntu WSL上安装了opencv-python。当运行以下代码时(该代码出现在OCR指南中的一篇文章中):
import argparse
import cv2
ap = argparse.ArgumentParser()
ap.add_argument("-i", "--image", required=True)
args = vars(ap.parse_args())
image = cv2.imread(args["image"])
cv2.imshow("I", image)
使用终端输入以下命令:
python script.py --image temp.png
我获得:
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/home/ben123/.local/bin/.virtualenvs/ocr_venv/lib/python3.8/site-packages/cv2/qt/plugins" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: xcb.
在 VSCode 中的解释器是正确的(venv 的那一个),当我输入
pip list
时,我的输出结果是:Package Version
------------- --------
numpy 1.22.2
opencv-python 4.5.5.62
pip 22.0.3
setuptools 60.6.0
wheel 0.37.1
由于我花了这么多时间,仍然没有任何进展,因此在这一点上会非常感激任何帮助。
我尝试过的方法:
- 按照此指南安装它。出现了同样的错误。
- 按照该网站上较早的指南进行操作,更加复杂,效果也不好。
- 卸载opencv-python并重新安装opencv-python / opencv-python-contrib / opencv-python-headless / opencv-python-contrib-headless(每次只安装其中一个)
- 参考此线程,因为它有类似的问题。
- 重置我的wsl几次,以确保我没有多个python / opencv版本引起的混乱。
- 尝试使用官方文档直接向wsl venv安装opencv
- 试图完全放弃wsl,并使用anaconda安装opencv,但即使如此也无法工作。