Raspberry Pi y reconocimiento facial.

Publicado por Loli Diéguez en

En este tutorial os mostraremos como configurar vuestra Raspberry Pi para reconocimiento facial usando Python y OpenCV.

OpenCV (biblioteca de visión de computadora de código abierto) es una biblioteca muy útil que proporciona muchas características como reconocimiento de texto, reconocimiento facial, detección de objetos, creación de mapas de profundidad y aprendizaje automático. 

Este tutorial te mostrará cómo instalar OpenCV y otras bibliotecas en Raspberry Pi que serán útiles para la detección de objetos. A partir de ahí, te enseñaré cómo  realizar operaciones de imagen y vídeo mediante la ejecución de un proyecto de reconocimiento de objetos y aprendizaje automático. Concretamente, terminarás escribiendo un simple código para detectar caras en una imagen.

¿Qué es OpenCV?

OpenCV es una biblioteca de software de visión de computadora y aprendizaje de código abierto. OpenCV se lanza bajo una licencia BSD, por lo que es gratis para uso académico y comercial. Tiene interfaces C ++, Python y Java. Además, es compatible con Windows, Linux, Mac OS, iOS y Android. 

OpenCV fue diseñado para la eficiencia computacional y muy enfocado para aplicaciones en tiempo real.

Cómo instalar OpenCV en una Raspberry Pi

Para instalar OpenCV, necesitas tener Python instalado que normalmente viene ya precargado en el Sistema Operativo de Raspberry Pi, así que, podemos instalar OpenCV directamente.

Escribe los siguientes comandos para asegurarte de que tu Raspberry Pi está actualizada y los paquetes instalados están en las últimas versiones.

sudo apt-get update

sudo apt-get upgrade

Escribe los siguientes comandos en el terminal para instalar los paquetes necesarios de OpenCV en tu Raspberry Pi.

sudo apt install libatlas3-base libsz2 libharfbuzz0b libtiff5 libjasper1 libilmbase12 libopenexr22 libilmbase12 libgstreamer1.0-0 libavcodec57 libavformat57 libavutil55 libswscale4 libqtgui4 libqt4-test libqtcore4

Escribe el siguiente comando para instalar OpenCV 3 para Python 3 en tu Raspberry Pi.

sudo pip3 install opencv-contrib-python libwebp6

Después de estos pasos, OpenCV debería estar instalado. ¡Ahora toca probarlo!

Pruebas de OpenCV 

Para verificar si OpenCV está instalado correctamente o no, intenta importar OpenCV escribiendo en la ventana de comandos:

Python3

Después:

import cv2

¡Si no te salen errores, la instalación está finalizada con éxito!

Para saber qué versión de OpenCV tienes, escribe el siguiente comando:

cv2.__version__

El resultado sera una pantalla como la siguiente:

Version de OpenCV

Bibliotecas opcionales recomendadas

Hay otras bibliotecas para instalar que serán útiles para la detección de objetos y otros proyectos, por lo que te recomiendo que también las instales.

NumPy

La primera biblioteca es NumPy, una biblioteca que hace que las operaciones de matriz en Python sean fáciles de realizar. Instala NumPy escribiendo el siguiente comando:

pip3 install python-numpy

Matplotlib

La segunda biblioteca es Matplotlib, es una biblioteca para la generación de gráficos a partir de datos contenidos en listas o arrays en el lenguaje de programación Python y su extensión matemática NumPy. Instala Matplotlib escribiendo el siguiente comando:

pip3 install python-matplotlib

Ahora ya has terminado de instalar OpenCV y las bibliotecas complementarias útiles en Raspberry Pi. Lo siguiente es la detección de objetos y el aprendizaje automático utilizando OpenCV en Raspberry Pi.

Detección de rostros en imágenes usando OpenCV

Lo primero será escribir el código que detectará las caras en las imágenes que se pasan al código. Para la detección de rostros, necesitas un archivo en cascada . Guarda este archivo en el directorio de trabajo como "haarcascade_frontalface_default.xml".

Ingresa la ruta de la imagen en la que desea detectar caras en el siguiente código y ejecuta el código.

 

Después de ejecutar el código, aparecerán rectángulos alrededor de las caras como se muestra en la imagen a continuación.

Deteccion de caras en fotos

Espero que te haya sido de utilidad este tutorial.


Compartir esta publicación



← Publicación más antigua Publicación más reciente →