Como ya expliqué cómo conectar la cámara web con BBB, aquí hablaré sobre la captura de imágenes utilizando la programación de script en Python. Es un tutorial sencillo donde también podrás añadir efectos en forma de imagen en blanco y negro, detección de movimiento, imagen nítida, etc. Utilicé la biblioteca opencv que programa funciones informáticas en tiempo real y aprendizaje automático.
Herramientas necesarias:
- Hueso de beagle negro
- cámara web
Configuración del entorno
Antes de continuar, cree una configuración como se explica en cómo conectar la cámara web con BBB. Conecte la cámara web al BBB a través del puerto USB. Conéctese a Internet y active BBB. Tiene acceso remoto desde BBB en su escritorio.
Fig. 1: Prototipo de cámara de seguridad basado en Beaglebone Black
En primer lugar, actualice la versión de su kernel. (Ignora si ya lo has hecho).
Instalar OpenCV
Instale opencv en BBB desde el repositorio de Debian o el sitio web oficial. Aquí lo instalé desde el repositorio de Debian. Ejecute los siguientes comandos en el símbolo del sistema:
sudo apt-get instalar python-opencv
sudo apt-get instalar libopencv-dev
Instalar dependencias
Necesita instalar algunas dependencias como compilación, imagen, video, GUI, etc. en BBB.
Paso 1: instale la dependencia de compilación siguiendo las siguientes instrucciones:
sudo apt-get install cmake esencial para compilación
Paso 2: Instale la biblioteca de E/S multimedia siguiendo las siguientes instrucciones:
sudo apt-get install zlib1g-dev libwebp-dev libpng-dev libjasper-dev libtiff5-dev libopenexr-dev libgdal-dev libjpeg-dev
Paso 3: Instale la biblioteca GUI siguiendo las siguientes instrucciones:
sudo apt-get install qt5-default libvtk6-dev
Paso 4: Instale la biblioteca de E/S de vídeo siguiendo las siguientes instrucciones:
sudo apt-get install libavcodec-dev libavformat-dev libdc1394-22-dev libswscale-dev libtheora-dev libxvidcore-dev libx264-dev libvorbis-dev yasm libopencore-amrnb-dev libopencore-amrwb-dev libv4l-dev libxine2-dev - desarrollador
Introducción al programa
Abra la terminal de comandos y cree un nuevo archivo usando el comando táctil con extensión .py (es decir, image.py). Abra el archivo con cualquier editor de texto (es decir, nano, vim, etc.) y escriba el código en lenguaje Python.
Opencv es una excelente biblioteca de informática y aprendizaje automático escrita en C, C++, Java y Python. Admite una excelente funcionalidad de procesamiento de imágenes y videos y funciona bien en la plataforma Linux integrada. Debe leer la imagen desde el dispositivo de cámara web que está conectado al BBB. Será cero si se conecta una sola cámara web. Entonces, simplemente pasa cero de la función de la siguiente manera:
cámara = cv2.VideoCapture(0)
Fig. 2: Imagen de la webcam conectada al Beaglebone Black
Creé un tamaño de marco de 1280 x 720 que funciona bien con BBB. Puede ajustar el tamaño del marco como desee, compatible con la biblioteca. Configure el tamaño del marco de la imagen a través de las siguientes funciones:
conjunto de cámaras (cv2.cv.CV_CAP_PROP_FRAME_WIDTH, 1280)
cam.set (cv2.cv.CV_CAP_PROP_FRAME_HEIGHT, 720)
Ahora, capture la imagen desde el dispositivo (es decir, cámara web) siguiendo la función:
cámara.leer()
Proporcione un retraso de al menos 10 ms después de la captura de la imagen siguiendo la función:
cv2.esperaClave(10)
Si desea mostrar la imagen en pantalla realice la siguiente función:
cv2.imshow (“Imagen de prueba”, img)
Guarde el archivo de imagen con un nombre específico siguiendo la función:
cv2.imwrite (“demopic.bmp”, img)
Diagramas de circuito
Diagrama-de-circuito-cámara-de-seguridad-negra-de-Beaglebone |