Friday, December 31, 2010

Guia de Motion [Camara web en camara de seguridad]

Hace unos días atrás estuve leyendo un articulo que publicaron en MuyLinux sobre como usar nuestra camara web como una camara de seguridad en GNU/Linux con la herramienta Motion, por lo cual le dejo una guia basada en mi experiencia con esta herramienta, abarcaremos la instalacion y su configuración necesaria para tener funcionando nuestro sistema de vigilancia.

Motion puede realizar muchas cosas, entre ellas; procesa las imagenes, revisa si ha habido un cambio entre las imagenes procesadas, y si ha habido un cambio, realiza una acción, en pocas palabras detecta movimiento, y nos permite ejecutar automaticamente algo si eso ocurriese.

Instalación de Motion 

Para instalar motion necesitaremos algunas dependencias, probablemente ya estén instaladas en tu sistema, ¿pero que perdemos con asegurarnos?.

RPM:
yum install glibc glibc-devel libjpeg libjpeg-devel zlib zlib-devel


DEB:
apt-get install libc6 libc6-dev libglib1.2 libjpeg62 libjpeg62-dev zlib1g zlib1g-dev


Luego instalamos el paquete motion, y procedemos con la configuración, el archivo que contiene los parametros de configuración es /etc/motion/motion.conf, en seguida los parámetros necesarios para su funcionamiento:


#Hace que se ejecute Motion como demonio
daemon on


#Evita que la reproduzca unos beeps al detectar movimiento
quiet on


#Nos permite selecciónar el dispositivo de video
videodevice /dev/video0


#Tamaño del frame, dependiendo de lo que soporte la camara, tener en
#cuenta que pesaran mas las imagenes
width 320
height 240


#Numero de frame que podra capturar la camara por segundos
framerate 25 


#Calidad de los frame en formato jpg que guardara
quality 75


#Representa el numero de pixeles que tienen que cambiar de la captura anterior, para 
#tomarlo como un movimiento, 750 es un 1%, en este caso es un 6%
threshold 4500


#Numero de pixeles que se necesitan para que sean contados por threshold
noise_level 64


#Parametros de luminosidad, contraste, saturación y tono.

brightness 200
contrast 80
saturation 0
hue 0


#Directorio donde se guardan las capturas
target_dir /home/usuario/capturas


#Se define el puerto por donde escuchara la camara, con el valor 0, desactivamos la opcion
webcam_port 8081


#Define si aceptaremos peticiones solamente desde el localhost, si queremos verla remotamente
#este parametro debería estar desactivado
webcam_localhost off


#Define la calidad de los frames que veremos via web
webcam_quality 50


#Si no detecta movimiento envia 1 frame por segundo a la web, en caso
#contrario envia como maximo este valor
webcam_maxrate 7


#Ejecuta un comando cuando detecta el movimiento
on_event_start [comando]


#Ejecuta un comando cuando acaba el evento
on_event_end [comando]


#Los segundos que Motion esperara despues del ultimo evento para que de por finalizado este y pase a otro.
gap 40


#Numero de frames que queremos capturar antes y despues de la detección
post_capture 5
pre_capture 5


Guardamos el fichero y reiniciamos el servicio motion.


service motion restart


Y ya podemos empezar a probar nuestro sistema de vigilancia, entremos desde el navegador a http://localhost:8081, en caso de que sea ese el puerto definido, y para verlo remotamente recuerden agregar el puerto a el firewall, eso es todo por hoy, hasta la proxima!.


Saludos










1 comentarios:

el-tita said...

Muy bien documentado y todo, este programita es todo un exito.

Post a Comment