¿Qué software puedo usar para extraer movimiento de un archivo de video?

Tengo archivos de video grabados por una cámara de vigilancia. Cada archivo tiene una duración de 24 horas.

Si bien uso Linux motionpara realizar la detección de movimiento en tiempo real directamente desde la cámara, también me gustaría verificar el movimiento de los videos grabados anteriormente.

Busqué aplicaciones de Linux y Windows para hacer eso, pero mi búsqueda no fue concluyente. Encontré:

  • Sugerencias para usar motiony transmitir contenido de video a través de /dev/video0. Esas sugerencias me parecieron demasiado complejas técnicamente.

  • Instrucciones para usar VLC para detectar movimiento. Sin embargo, VLC solo reproducirá un video y resaltará el movimiento, y apenas puedo imaginarme viendo un video de 24 horas con la esperanza de que VLC de repente resalte un cambio que vería de todos modos.

Entonces:

¿Qué podría usar, en Linux o Windows, para extraer de un archivo de video los cuadros que corresponden al movimiento, ignorando todo lo demás?

En otras palabras, tomando como entrada un video de 24 horas de duración en el que no sucede nada excepto el momento de 10 segundos en el que alguien abre la puerta y entra, ¿cómo obtengo como salida el video correspondiente de 10 segundos (o un montón de imágenes JPEG correspondientes a este lapso de tiempo)?

Respuestas (1)

Hay un conjunto de instrucciones bastante simple de seguir sobre cómo hacer lo que está pidiendo usando OpenCV y python (en realidad dirigido a la detección en vivo pero puede usar cualquier fuente de video), disponible en PyImageSearch en dos publicaciones de blog: detección de movimiento y hogar vigilancia _

Las publicaciones del blog muestran cómo usar OpenCV para usar una fuente de video como una cámara Raspberry Pi, pero un archivo funcionará, realizará la detección de movimiento, generará un conjunto de imágenes fijas para el período en que se detectó el movimiento, con sellos de fecha/hora , y subirlos a Dropbox pero, por supuesto, solo se pueden guardar.