python - raspberry - ImportError: libSM.so.6: no se puede abrir el archivo de objeto compartido: no existe tal archivo o directorio
no module named cv2 raspberry pi (6)
Al intentar importar OpenCV, usando
import cv2
me sale el siguiente error:
/usr/local/lib/python2.7/dist-packages/cv2/__init__.py in <module>()
7
8 # make IDE''s (PyCharm) autocompletion happy
----> 9 from .cv2 import *
10
11 # wildcard import above does not import "private" variables like __version__
ImportError: libSM.so.6: cannot open shared object file: No such file or directory
No estoy seguro de cómo solucionar esto, tratando de jugar con la nueva herramienta de Colaboratory Google. El cuaderno está aquí: https://drive.google.com/file/d/0B7-sJqBiyjCcRmFkMzl6cy1iN0k/view?usp=sharing
Ahora hay una versión sin cabeza de
opencv-python
que elimina las dependencias gráficas (como libSM).
Puede ver la versión normal / sin cabeza en la
página de lanzamientos
(y el
github.com/skvark/opencv-python/issues/44
conduce a esto);
simplemente agregue sin
-headless
al instalar, por ejemplo,
pip install opencv-python-headless
# also contrib, if needed
pip install opencv-contrib-python-headless
Esto solucionó el problema al tenerlo como las dos primeras líneas del script:
!pip install opencv-python
!apt update && apt install -y libsm6 libxext6
Necesitas agregar sudo. Hice lo siguiente para instalarlo:
-
sudo apt-get install libsm6 libxrender1 libfontconfig1
y luego hizo eso
-
sudo python3 -m pip install opencv-contrib-python
¡Finalmente lo hice!
No pude instalar cv2 en el portátil Anaconda-Jupyter que se ejecuta en Ubuntu en Google Cloud Platform. Pero encontré una manera de hacerlo de la siguiente manera:
Ejecute el siguiente comando desde la terminal ssh y siga las instrucciones:
sudo apt-get install libsm6 libxrender1 libfontconfig1
Una vez instalado, abra el cuaderno Jupyter y ejecute el siguiente comando:
!pip install opencv-contrib-python
Nota: Traté de ejecutar este comando: "sudo python3 -m pip install opencv-contrib-python" pero estaba mostrando un error. Pero el comando anterior funcionó para mí.
Ahora actualice la página del cuaderno y compruebe si está instalado o no ejecutando
import cv2
en el cuaderno.
Para CentOS, ejecute esto:
sudo yum install libXext libSM libXrender
Puede ser que el problema sea con su versión
python-opencv
.
Es mejor degradar su versión a 3.3.0.9 que no incluye ninguna dependencia de GUI.
La misma pregunta se encontró en GitHub aquí el enlace a la
answer
.