Tabla de contenido:

Sistema de seguridad de cámara web Pizero Motion Detect: 3 pasos
Sistema de seguridad de cámara web Pizero Motion Detect: 3 pasos

Video: Sistema de seguridad de cámara web Pizero Motion Detect: 3 pasos

Video: Sistema de seguridad de cámara web Pizero Motion Detect: 3 pasos
Video: Cámara de seguridad y vigilancia WiFi con Raspberry Pi y Motion Eye Circuito cerrado de televisión 2024, Noviembre
Anonim
Sistema de seguridad de cámara web Pizero Motion Detect
Sistema de seguridad de cámara web Pizero Motion Detect

Este sistema utiliza un pizero, un dongle wifi y una vieja cámara web en una caja de cerillas personalizada. Graba videos de detección de movimiento a 27 fps de cualquier movimiento significativo en mi camino de entrada. Luego, carga los clips en una cuenta de Dropbox. También puede ver los registros y cambiar la configuración a través de Dropbox.

Paso 1: configurar los requisitos previos

Image
Image

Primero actualice el sistema operativo a la última versión como se describe aquí.

Luego configure el wifi como se describe aquí.

Entonces necesitará configurar OpenCv. Hay buenas instrucciones sobre cómo hacer esto en pyimagesearch. Si opta por la versión 3.0, espere que tarde mucho tiempo. Uno de los pasos tarda 9 horas en realizarse. También necesitará los enlaces de Python que se explican en esa página.

Cuando tenga todo esto en funcionamiento, estará listo para descargar el software de detección de movimiento.

Paso 2: Configuración del software de detección de movimiento

Acceder a los videos y la configuración a través de Dropbox
Acceder a los videos y la configuración a través de Dropbox

El código se puede encontrar en bitbucket. Copie estos archivos usando

clon de git

o si lo prefiere, descárguelos individualmente.

La parte principal de este sistema es multiMotionDetect.py. Utiliza una gran cantidad de colas y eventos de multiprocesamiento.

En primer lugar, debe decidir dónde desea almacenar las imágenes de video MotionVideos y establecer este valor en el archivo globalConfig.json. Luego copie config.json.txt y maskedAreas.json.txt a la raíz de esta carpeta. El config.json.txt tiene la siguiente configuración que se puede editar de forma remota.

}

FrameThreshold: es el número de fotogramas significativos antes de que se detecte movimiento.

staticThreshold: es el número de fotogramas estáticos antes de que apaguemos la filmación.

minArea: es el tamaño mínimo del área para que se considere significativa.

postSeconds: este es el número de segundos desde el final de la filmación para que el movimiento pase por la cola. readCamNice: esta es la prioridad que se le dará al

proceso readCam. Esto está entre -20 y +20 (cuanto menor sea la cifra, mayor será la prioridad). Pero no exagere o bloqueará el sistema operativo.

checkMotionNice: La prioridad para el proceso de detección de movimiento.

writeCamNice: La prioridad del proceso de escritura de la cámara.

maxqsize: este es el número de segundos que luego se multiplica por los fotogramas por segundo.

La mayoría de las veces solo cambio min_area para tener en cuenta las condiciones del viento.

Si prefiere usar un registrador simple en lugar del registrador de sockets (abajo), cambie el archivo import miaLogging a

registro de importación

logging.basicConfig (nombre de archivo = 'ejemplo.log', nivel = registro. DEBUG)

y elimine el receptor de registro del archivo motionDetect y todo lo demás debería funcionar bien.

Si desea ejecutar la detección de movimiento automáticamente al inicio.

Primero edite el script y verifique que homedir apunte a donde tiene multiMotionDetect.py, luego copie el archivo motionDetect en /etc/init.d ie

cp motionDetect /etc/init.d/motionDetect

Ya debería ser ejecutable pero

chmod + x /etc/init.d/motionDetect

Finalmente registre el script con

sudo update-rc.d valores predeterminados de motionDetect

También puede iniciar, detener y reiniciar el sistema con

sudo /etc/init.d/motionDetect start | stop | restart

De forma predeterminada, el registro de sockets miaLogReceiver comenzará al mismo tiempo. Los otros tres programas son independientes pero usan el mismo registrador de sockets (pero podrían convertirse fácilmente). Llamo a todos estos usando un script cron de diferentes intervalos. Para obtener instrucciones, busque aquí.

CheckRunning.py comprueba que multiMotionDetect.py se está ejecutando y reinicia si no.

fileMaint.py realiza tareas de limpieza en las carpetas de video eliminándolas después de la cantidad de días indicada. Elimina los subdirectorios de la carpeta de video en movimiento establecidos en el primer párrafo. Comprueba que comiencen con "MV", así que asegúrese de no tener otro directorio de importancia que comience con los mismos caracteres dentro de esa carpeta.

Paso 3: Acceder a los videos y la configuración a través de Dropbox

Finalmente, si desea ver sus videos, registros y archivos de configuración de forma remota, deberá configurar Dropbox.

Primero obtenga una cuenta de Dropbox que es gratuita. Luego configure la API para python -https://www.dropbox.com/developers/documentation/ … Esto incluye descargar el sdk y registrar la aplicación para acceder a la API.

Cuando tenga una clave, introdúzcala en el archivo globalConfig.json. Más información sobre el sistema se puede encontrar en mi blog dani cymru - cyber renegade Si encuentra algo de interés o alguna pregunta, por favor ponga un comentario en el blog.

Recomendado: