Instalando OpenCV en Beaglebone Black con Ubuntu 12.04

En un artículo anterior instalamos Ubuntu 12.04 y un escritorio para el Beaglebone Black, ahora probamos OpenCV para ir hacia proyectos mas avanzados.

logo

Tras el salto los detalles

Materiales

  • Beaglebone Black con Ubuntu 12.04
  • Acceso a Internet
  • Fuente de Poder 5V @ 1A
  • Cable de Red
  • WebCam Logitech C270

 

Procedimiento

Para probar la compatibilidad con la camara usamos el software GUVCViwer que se instala con el siguiente comando

sudo apt-get install guvcviewer

Ahora se siguen los siguientes pasos, Apagar el Beaglebone Black con sudo shutdown -h now
Conectar la cámara.
Habilitar el escritorio remoto con vncserver
Abrir vnc viewer en el notebook
En el escritorio remoto ejecutar el siguiente comando

sudo guvcviewer

Se puede ver una serie de controles, para obtener la imagen o video esperado. En caso que no se vea una imagen se recomienda modificar el valor de Video&Files -> Resolution. La siguiente imagen muestra el resultado típico de este programa, mostrando una cámara que funciona sin problemas.

GUVCViewer
Ahora viene la instalación de OpenCV propiamente tal. Los comandos son

sudo apt-get install build-essential
sudo apt-get install libavformat-dev
sudo apt-get install ffmpeg
sudo apt-get install libcv2.3 libcvaux2.3 libhighgui2.3
sudo apt-get install python-opencv
sudo apt-get install opencv-doc
sudo apt-get install libcv-dev
sudo apt-get install libcvaux-dev
sudo apt-get install libhighgui-dev

ahora creamos la carpeta ejemplo

mkdir ejemplo

y movemos los ejemplos a esa carpeta

sudo cp -r /usr/share/doc/opencv-doc/examples/ ejemplo

Instalamos numpy para usar en OpenCV

sudo apt-get install python-numpy
sudo nano ejemplo/examples/python/camera.py

Editar este archivo para que quede de esta manera

import cv2.cv as cv
import time

cv.NamedWindow("camera", 1)

capture = cv.CaptureFromCAM(0)
cv.SetCaptureProperty(capture, 3, 360)
cv.SetCaptureProperty(capture, 4, 240)

while True:
    img = cv.QueryFrame(capture)
    cv.ShowImage("camera", img)
    if cv.WaitKey(10) == 27:
        break

Lo que se modifica son las propiedades de la cámara, forzando un tamaño. Ahora desde el escritorio remoto, usar el comando

sudo python camera

Para obtener la siguiente imagen

camera_opencv

Con los pasos anteriores tenemos una instalación funcional de OpenCV

 

Bibliografía

Grimmett, Richard, «Beaglebone Robotic Projects», Packt Publishing 2013

Author: Manuel Carrasco

Ingeniero Eléctrico, Institutano, instructor certificado Cisco, en twitter @mcarrasco con comentarios y opiniones personales.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *