#opencv #cv2 #amazon-sagemaker
#python #opencv #amazon-sagemaker
Вопрос:
Я установил пакет OpenCV с помощью pip install opencv-python
.
Когда я импортирую cv2 в свой код.
import cv2
Я получил следующую ошибку:
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
/tmp/ipykernel_324/571303353.py in <module>
----> 1 import cv2
~/.conda/envs/default/lib/python3.9/site-packages/cv2/__init__.py in <module>
6 import sys
7
----> 8 from .cv2 import *
9 from .cv2 import _registerMatType
10 from . import mat_wrapper
ImportError: libgthread-2.0.so.0: cannot open shared object file: No such file or directory
Вот несколько решений для этой ошибки, но, похоже, требуется разрешение root.
apt-get update -y
apt-get install libglib2.0-0
Когда я запускаю эти команды в терминале, я получаю следующие ошибки.
(studiolab) studio-lab-user@default:~/sagemaker-studiolab-notebooks/vit/ViT-pytorch$ apt-get update -y
Reading package lists... Done
E: List directory /var/lib/apt/lists/partial is missing. - Acquire (13: Permission denied)
Ответ №1:
Эта проблема решена.
pip uninstall opencv-python
pip install opencv-python-headless
Более подробную информацию можно найти здесь.
Ответ №2:
У меня была такая же проблема. С помощью этой строки вы можете установить зависимость glib для Amazon Sagemaker Studio Lab. Просто запустите его в своей ячейке ноутбука.
! conda install glib=2.51.0 -y
Вы также можете создать другую виртуальную среду для своего сеанса, содержащую glib:
! conda create -n glib-test -c defaults -c conda-forge python=3 glib=2.51.0` -y
Ответ №3:
Я тоже столкнулся с этой ошибкой импорта и благодаря предложенному @AmirMasoud решению. После запуска ! conda install glib=2.51.0 -y
в моей виртуальной среде теперь cv2 успешно импортируется.