Tocmai am instalat un Ubuntu-20.04 pe WSL2. Și am instalat un miniconda env cu python 3.7, apoi am instalat opencv-python prin "conda install opencv". Dar când încerc cel mai simplu cv2.imshow, se plânge mai jos:
cv2.error: OpenCV(3.4.2) /tmp/build/80754af9/opencv-suite_1535558553474/work/modules/highgui/src/window.cpp:632: error: (-2:Unspecified error) Funcția nu este implementată. Reconstruiți biblioteca cu suport pentru Windows, GTK+ 2.x sau Carbon. Dacă sunteți pe Ubuntu sau Debian, instalați libgtk2.0-dev și pkg-config, apoi rulați din nou cmake sau configurați scriptul în funcția „cvShowImage”
Apropo, pot arăta fereastra de plotare cu matplotlib.pyplot după ce am instalat un VcXsrv și am exportat DISPLAY=host_ip_in_wsl2:1.1. Și, de asemenea, îmi fac GPU-ul să funcționeze după instalarea actualizării Windows 10 noiembrie 2021, a driverului CUDA pentru WSL2 și a setului de instrumente CUDA 11.0. Pot obține Tensorflow 2.4.1 să funcționeze bine cu GPU. Pot compila darknet cu GPU și îl pot folosi pentru YOLO v1.
Am căutat pe google câteva. Se spune că dezinstalarea opencv și reinstalarea de pe canalul menpo poate face asta. Dar această postare este acum 5 ani și nu pentru WSL.
De asemenea, am văzut câteva postări care demonstrează o procedură plictisitoare de a compila opencv-python din sursă.
Deci, cum să utilizați opencv-python pe Ubuntu-20.04 din WSL2? Sunt de preferat abordări ușoare precum „conda install...” sau „pip install...”. Compilarea de la sursă este, de asemenea, acceptabilă.