Como instalar OPENCV ?️ en RASPBERRY PI [ Fácil y rápido ]
En el post anterior habíamos visto como instalar Raspberry Pi OS (anteriormente llamado Raspbian) sin la necesidad de conectarle a la Raspberry Pi un monitor, ratón o teclado. En el post de hoy en cambio nos enfocaremos en como instalar OpenCV 4 en una Raspberry Pi de una forma fácil y rápida. De hecho este tutorial surge por sugerencia de los queridísimos suscriptores en mi canal de youtube OMES, a los cuales agradezco mucho todo su apoyo y preparo estos tutoriales con mucho cariño. Por ello espero que encuentres este tutorial útil y que te ayude a menguar dolores de cabeza alrededor de la instalación de OpenCV en la Raspberry Pi. ¡Empezamos!.
CONTENIDO
- Instalando prerrequisitos
- Instalando OpenCV 4 en Raspberry Pi
- Comprobar que OpenCV 4 se haya instalado correctamente en la Raspberry Pi.
Una vez que hemos instalado Raspberry Pi OS (post anterior), vamos al terminal y digitamos python3
, y como te darás cuenta python ya viene instalado, esta vez en su versión 3.7.3.
Instalando prerrequisitos
Previo a la instalación de OpenCV en python 3, necesitamos instalar algunos paquetes, esto lo haremos a través de la siguiente línea:
sudo apt-get install libhdf5-dev libhdf5-serial-dev libatlas-base-dev libjasper-dev libqtgui4 libqt4-test
Instalando OpenCV 4 en Raspberry Pi
Vamos a instalar la versión de OpenCV 4.1.0.25. Debo decirte que hice pruebas con otras versiones pero tenía dificultades al instalarlas debido paquetes faltantes, sin embargo buscando información con la versión 4.1.0.25 tuve muy buenos resultados. Usamos pip3 install opencv-contrib-python
, tal y como lo hicimos en la instalación de OpenCV en Windows, empleamos contrib
para que se instalen los módulos principales y extras.
pip3 install opencv-contrib-python==4.1.0.25
NOTA: Usamos pip3 ya que vamos a instalar OpenCV en Python 3.
Comprobar que OpenCV 4 se ha instalado correctamente en la Raspberry Pi
Para comprobar que se ha instalado OpenCV, digitamos python3
en el terminal e importamos OpenCV para finalmente imprimir la versión instalada.
>>> import cv2 >>> cv2.__version__ '4.1.0'
También se podría leer y visualizar una imagen (para más información puedes dirigirte a este post: Capturar, guardar y leer un video en OpenCV y Python ).
Si ejecutamos, podremos visualizar la imagen (puedes probar con cualquier otra imagen).
Y esto ha sido todo por el tutorial de hoy, espero que lo encuentres útil y que te sirva para muchos proyectos, ten un buen día. ¡Chao, chao!
REFERENCIAS
- https://books.google.com.ec/books?id=m_a2DwAAQBAJ&pg=PT253&dq=raspberry+pip3+install+opencv-contrib-python%3D%3D4.1.0.25&hl=es-419&sa=X&ved=0ahUKEwje7-anivrpAhXPQjABHW32DO8Q6AEIKDAA#v=onepage&q=raspberry%20pip3%20install%20opencv-contrib-python%3D%3D4.1.0.25&f=false
- https://pypi.org/project/opencv-contrib-python/
Actualizé los programas (sudo apt upgrade/update -y/reboot) y ya no se necesita especificar la version, pero hay algunos paquetes que instalé:
sudo apt install libilmbase-dev libopenexr-dev libgstreamer1.0-dev python3-picamera libavformat58 libswscale5
Para correr tuve que usar:
export DISPLAY=:0 LD_PRELOAD=/usr/lib/arm-linux-gnueabihf/libatomic.so.1
Y ya el python corrió bien.
Ooohh te lo agradezco mucho, gracias por compartirlo. 🙂
sudo apt install libgraphite2-3 libatspi2.0-0 libthai0 libxcb-shm0 libxcb-
render0 libswscale5 librsvg2-2 libavutil56 libaec0 libzvbi0 libgsm1
libxinerama1 libxvidcore4 libopenexr25 libsrt1.4-gnutls libswresample3
libatk1.0-0 libvorbisfile3 libogg0 libpangoft2-1.0-0 libpgm-5.3-0 libwayland-
egl1 libharfbuzz0b libpango-1.0-0 libcairo2 libva-x11-2 libilmbase25
libwayland-cursor0 libgfortran5 libxfixes3 libgme0 libxrender1 libvorbis0a
libxi6 libudfread0 libspeex1 libwebpmux3 libsodium23 libsz2 libdatrie1 libatk-bridge2.0-0 libxrandr2 libbluray2 libx264-160 libwavpack1
libxcomposite1 libpangocairo-1.0-0 libsoxr0 libshine3 libxkbcommon0
libvdpau1 libhdf5-103-1 libgtk-3-0 libopus0 librabbitmq4 libgdk-pixbuf-2.0-0
libavformat58 libtwolame0 libmpg123-0 libxdamage1 libzmq5 libdav1d4
libopenmpt0 libatlas3-base libva2 libva-drm2 libxcursor1 libssh-gcrypt-4
libavcodec58 libaom0 libx265-192 libwayland-client0 libcairo-gobject2
libcodec2-0.9 libpixman-1-0 libdrm2 libsnappy1v5 libnorm1 libopenjp2-7
libtheora0 ocl-icd-libopencl1 libvorbisenc2 libvpx6 libepoxy0 libchromaprint1
libmp3lame0
He seguido todo el procedimiento minuciosamente, incluyendo el comentario de Luis. No soy muy bueno en python, pero tengo una duda:
-Si lanzo la imagen tal como la describes desde Thonny, la imagen se muestra perfectamente. Pero..
-Si lanzo el script, desde la linea de comando , sucede esto:
sudo python3 /home/pi/Desktop/pruebacv.py
Traceback (most recent call last):
File «/home/pi/Desktop/pruebacv.py», line 1, in
import cv2
ModuleNotFoundError: No module named ‘cv2’
…
¿Esto es un error ? ¿Estoy haciendo algo mal?
Te ruego por favor una ayudita, y muchas gracias por tus tutos, que son geniales.
Hola JesuSG, revísale tal vez si OpenCV se instaló en un entorno virtual, si este fuera el caso no se va a poder usar directamente en el cmd, tendrías que ingresar al entorno virtual en primer lugar.
tengo el mismo problema que JESUS
Si lanzo el script, desde la linea de comando , sucede esto:
sudo python3 /home/pi/Desktop/pruebacv.py
Traceback (most recent call last):
File “/home/pi/Desktop/pruebacv.py”, line 1, in
import cv2
ModuleNotFoundError: No module named ‘cv2’
Hola Jose, asegúrate de no haber instado OpenCV en un entorno virtual de python, sino tendrías que ingresar al entorno virtual en primer lugar.
No meu Raspberry Pi 2, o comando que funcionou para verificar a versão instalada do CV foi:
>>>import cv2
>>>print(cv2.__version__)
Muchas gracias! 🙂
hola, una consulta. He logrado instalar open cv y abrir una imagen exitosamente. Los estoy haciendo correr desde una maquina virtual para futuras pruebas, mi pregunta es por que cuando abro uno de los archivos comune para leer video streaming me sale error en imread? No sabes que paquetes adicionales tendria que utilizar para utilizar la camara?(he probado actualizar, ya instale una camara Pi)
Subiras algo más de la rasp por ejemplo un LED con el opencv veo que no es tu área la electrónica? saludos
Hola Vlad, tal vez más adelante realice videos del tema. Por ahora estoy tratando de cubrir tutoriales de MediaPipe. 🙂 Muchas gracias por la sugerencia.
De antemano felicidades y gracias por toda la info que proporcionas.
A mi no me funciono la instalación al escribir import cv2, me decia que no se encuentra el modulo.
En mi caso lo que funciono para instalar opencv fue la siguiente linea agregando sudo al inicio:
sudo pip3 install opencv-python
saludos y gracias!!!!
Muchas gracias Tonathiu.
Fantastico!!!!!! Te mereces un imperio!!! Hoy ya van dos veces que me ayudas. ;))
Muchas gracias Felix. 😀
Hola Gaby! Tu no me conoces, pero yo te debo 200 caféss. Gracias por tu gran ayuda. Soy de México y estoy montando una instalación artística para hacer música con plantas. Cambié mi raspberry 3B+ por una 4 y no podía instalar opencv. No lo logré en horas, hasta que seguí tu video y lo logré en minutos. Ahora estará la instalación sonora en Errentería, haciendo efectos locos con plantitas gracias a todo tu apoyo. Te mando un gran abrazo y muchos saludos y te agradezco muchísimo todo tu apoyo. 🙂
Hola Alex, muchas gracias. Me alegra mucho que te haya ayudado el tutorial. Y tu proyecto me parece supér chévere, ¿tienes algún video en YouTube para verlo?, espero que sí :D. Cuídate mucho y muchísimos éxitos Alex. 🙂
Excelente tutorial, solo algunas observaciones, libqtgui4 libqt4-test ya no están disponibles si los quieres instalar, además al intentar instalar opencv con el comando pip3 install opencv-contrib-python==4.1.0.25 nos sale el siguiente mensaje:
ERROR: Could not find a version that satisfies the requirement opencv-contrib-python==4.1.0.2 5
ERROR: No matching distribution found for opencv-contrib-python==4.1.0.25
Cómo podría solucionar este par de errores que me salen?
Gracias
Tengo el nuevo sistema operativo Raspberry Pi OS y Python 3.9… tuve problema para instalar con esa version… Ayuda porfa…
hola!! tengo una consulta
cuando intento instalar los paquetes me sale esto
sudo apt-get install libhdf5-dev libhdf5-serial-dev libatlas-base-dev libjasper-dev libqtgui4 libqt4-test
Reading package lists… Done
Building dependency tree… Done
Reading state information… Done
Note, selecting ‘libhdf5-dev’ instead of ‘libhdf5-serial-dev’
Package libqtgui4 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package ‘libqtgui4’ has no installation candidate
E: Unable to locate package libqt4-test
que estpy haciendo mal?
Por que me dice esto? ayudaa
sudo apt-get install libhdf5-dev libhdf5-serial-dev libatlas-base-dev libjasper-dev libqtgui4 libqt4-test
Leyendo lista de paquetes… Hecho
Creando árbol de dependencias… Hecho
Leyendo la información de estado… Hecho
Nota, seleccionando «libhdf5-dev» en lugar de «libhdf5-serial-dev»
El paquete libqtgui4 no está disponible, pero algún otro paquete hace referencia
a él. Esto puede significar que el paquete falta, está obsoleto o sólo se
encuentra disponible desde alguna otra fuente
E: El paquete «libqtgui4» no tiene un candidato para la instalación
E: No se ha podido localizar el paquete libqt4-test
pi@raspberrypi:~ $
me gustaría comentar que si al momento de llamar la librería en Python ocurre el error con terminación «ImportError: numpy.core.multiarray failed to import» el error esta en la librería de numpy por lo que usando el comando «pip install -U numpy» en el cmd se soluciona 🙂
GRACIAS GRACIAS GRACIAS LLEVABA UNA 1HR BUSCANDO SOLUCION AL ERROR (MAYO 2023 POR SI ALGUIEN ANDA EN LAS MISMAS)
Hola gaby, llegue hasta tu video, las explicaciones son muy amenas, lo haces super facil, pero me sale 2 errores cuando se ejecuta:
sudo apt-get install libhdf5-dev libhdf5-serial-dev libatlas-base-dev libjasper-dev libqtgui4 libqt4-test
los errores son:
E: el paquete libqtgui4 no tiene un candidato para la instalación
E: No se a podido localizar el paquete libqt4-test
Omiti esos 2 comandos y continué la instalación que muestra tu video y se logro instalar todo(supongo), pero al momento de ejecutar import cv2 sale el siguiente error:
RuntimeError: module compile against API version 0xf but this version of numpy is 0xd……….
ImportError: numpy.core.multiarray failed to import.
Tengo una raspberry pi 3b+ y le instale raspberry os recomendado, gracias por la ayuda
Muchas gracias por tu tutorial, pero a mí me funcionó ejecutando de la siguiente manera:
• sudo apt-get update
• sudo apt-get install vlc
• sudo apt-get upgrade
• sudo apt-get install libhdf5-dev libhdf5-serial-dev libatlas-base-dev libjasper-dev libqtgui4 libqt4-test
• pip3 install opencv-contrib-python