Ошибка при попытке импортировать пакет cv2 (opencv-python)

#python-3.x #cv2 #opencv-python

#python-3.x #cv2 #opencv-python

Вопрос:

Я пытаюсь получить доступ к своей веб-камере с помощью пакета cv2 (opencv-python).

Когда я пытаюсь импортировать его, я получаю эту ошибку:

 Traceback (most recent call last):
  File "server.py", line 6, in <module>
    import cv2
  File "/usr/local/lib/python3.8/dist-packages/cv2/__init__.py", line 5, in <module>
    from .cv2 import *
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
  

Примечание: Я пытаюсь импортировать этот пакет в putty на сервере Linode — это может быть полезной информацией.

Если кто-нибудь может объяснить мне, что происходит, и, возможно, решить проблему, я буду очень признателен!

Комментарии:

1. Пожалуйста, установите cv2 с помощью команды «pip install opencv-python»

2. Я уже это сделал, ошибок нет, и после установки появляется ошибка

3. Посетите ссылку, может быть, это будет полезно linuxize.com/post/how-to-install-opencv-on-ubuntu-18-04

4. Я попытался запустить команду pip3 check opencv-python, и вот результат: pygobject 3.36.0 требует pycairo, который не установлен. launchpadlib 1.10.3 требует testresources, который не установлен.

5. Проблема решена, спасибо @MuhammadRizwanMunawar !

Ответ №1:

Установите opencv-python-headless вместо opencv-python . В серверных (безголовых) средах не установлены пакеты GUI, поэтому вы видите ошибку. opencv-python зависит от Qt, который, в свою очередь, зависит от библиотек, связанных с X11.

Другой альтернативой является запуск, sudo apt-get install -y libgl1-mesa-dev который предоставит недостающее, libGL.so.1 если вы хотите использовать opencv-python . libgl1-mesa-dev Пакет может называться по-разному в зависимости от вашего дистрибутива GNU / Linux.

Полное руководство по установке для opencv-python можно найти в документации к пакету: https://github.com/skvark/opencv-python#installation-and-usage

Комментарии:

1. libgl1-mesa-dev отлично работает с ubuntu 20.04 и устраняет проблему

2. опция без головы решила мою проблему с docker, но не уверен, что это точно означает

Ответ №2:

это сработало для меня:

conda install -c fastai opencv-python-headless