Рейтинг:0

Как использовать opencv-python на WSL2 Ubuntu20.04

флаг in

Я только что установил Ubuntu-20.04 на WSL2. И я установил env miniconda с python 3.7, а затем установил opencv-python с помощью «conda install opencv». Но когда я пробую самый простой cv2.imshow, он жалуется ниже:

cv2.error: OpenCV(3.4.2)/tmp/build/80754af9/opencv-suite_1535558553474/work/modules/highgui/src/window.cpp:632: ошибка: (-2: неопределенная ошибка) Функция не реализована. Пересоберите библиотеку с поддержкой Windows, GTK+ 2.x или Carbon. Если вы используете Ubuntu или Debian, установите libgtk2.0-dev и pkg-config, затем повторно запустите cmake или настройте скрипт в функции «cvShowImage».

Кстати, я могу показать окно графика с помощью matplotlib.pyplot после того, как я установил VcXsrv и экспортировал DISPLAY=host_ip_in_wsl2:1.1. И я также заставляю свой графический процессор работать после установки обновления Windows 10 за ноябрь 2021 года, драйвера CUDA для WSL2 и набора инструментов CUDA 11.0. Я могу заставить Tensorflow 2.4.1 хорошо работать с GPU. Я могу скомпилировать даркнет с GPU и использовать его для YOLO v1.

Я кое-что погуглил. Говорят, что удалить opencv и переустановить с канала Menpo может это сделать. Но этот пост 5 лет назад и не для WSL.

Я также видел некоторые сообщения, демонстрирующие утомительную процедуру компиляции opencv-python из исходного кода.

Итак, как использовать opencv-python в Ubuntu-20.04 WSL2? Простые подходы, такие как "conda install..." или "pip install...", предпочтительнее. Также допустима компиляция из исходников.

Nmath avatar
флаг ng
Если ошибки запрашивают GTK, возможно, вы не сможете использовать это программное обеспечение на WSL, поскольку WSL в настоящее время официально не поддерживает среду рабочего стола. GTK связан с функциональностью среды рабочего стола. Если вам нужен полноценный опыт работы с Ubuntu в Windows, вы можете установить Ubuntu на виртуальную машину, например VirtualBox.
cmpltrtok avatar
флаг in
@Nmath, но подход WSL2 - это единственный известный мне способ использования графического процессора, кроме неприемлемой двойной загрузки, когда Windows и графический процессор являются обязательными. Есть надежды?
Nmath avatar
флаг ng
Конфигурация с двойной загрузкой, вероятно, ваш единственный вариант.
Рейтинг:0
флаг in

Я решил эту проблему, установив opencv-python с помощью pip.

$ pip установить opencv-python

Но я не понимаю, почему pip работает, когда конда установить opencv не. Если кто-нибудь знает подробности, не могли бы вы подсказать?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.