Configuración: Detección de movimiento
Acerca de
La detección de movimiento en el Agent juega un papel crucial en la iniciación de Alertas y facilitar el procesamiento de IA. Puede configurar el Agent para grabar al detectar movimiento o cuando se activa una alerta. Para configurar estas opciones, vaya al menú Grabación y consulte la configuración de Modo. Además, la detección de movimiento se puede utilizar para activar diversas Acciones.
Es importante tener en cuenta que la detección de movimiento a veces puede generar alertas falsas debido a su incapacidad para distinguir entre el movimiento real de objetos y factores ambientales como el viento, la lluvia o cambios en la luminosidad. Para reducir estas alertas falsas, puede mejorar la precisión de la detección de movimiento mediante la integración del Agent con CodeProject.AI para un filtrado de alertas más sofisticado.
Configurando la detección de movimiento
La control de área del detector de movimiento en Agent es accesible al editar una cámara y seleccionar Detector en el menú en la parte superior derecha. Para configurar un detector, comienza por definir las zonas a monitorear. Agent soporta hasta 9 zonas, cada una representada por un color diferente, seleccionable a través del menú desplegable de Zona. Para crear una zona, haz clic en la herramienta de lápiz y dibuja sobre la vista previa del video. Usa el botón izquierdo del mouse o el toque para dibujar, y en una computadora, el botón derecho del mouse para borrar. La herramienta de punta ajusta el tamaño de la punta del dibujo, mientras que la herramienta de borrador elimina las áreas dibujadas. La herramienta de reinicio se puede usar para llenar toda el área con la zona seleccionada. Agent luego monitorea estas áreas de colores para detectar movimiento.
- Enabled: Activa o desactiva el uso del detector.
- Detector: Elije un tipo de detector de movimiento y configúralo usando el botón "..." Los diferentes tipos de detectores de movimiento se explican en sus respectivas secciones.
- Color: Ajusta el color de la superposición de detección de movimiento (no aplicable para todos los detectores).
- Timeout: Establece la duración (en segundos, entre 1 y 60, por defecto es 3) durante la cual la cámara permanece en un estado de movimiento después de detectar que el movimiento se detiene.
Uso de Zonas
Las zonas son cruciales para los detectores de IA (Reconocimiento facial / LPR / Reconocimiento de objetos) y los detectores de seguimiento de objetos (como la línea de cruce, velocidad, seguimiento de objetos). Puedes seleccionar qué zonas activarán una alerta en la configuración del detector, o especificar Acciones para alertas en zonas específicas.
El detector simple activa una alerta si se detecta suficiente movimiento en todas las zonas.
Algunos tipos de detectores no utilizan la configuración de zonas, como MQTT, ONVIF o detección de movimiento a través de llamadas API.
Usando Áreas de Movimiento
Las áreas de movimiento son grupos configurables de zonas que puedes nombrar y guardar para su uso futuro. Para guardar tu configuración actual de zona de movimiento como una nueva área, haz clic en el icono de edición junto a Área. Estas herramientas te permiten agregar, editar y eliminar áreas.
Para aplicar un área de movimiento cuando mueves tu cámara PTZ a una posición preestablecida de PTZ (usando la interfaz de usuario de Agent):
- Crea y guarda una nueva configuración de zona de movimiento con un nombre específico, como "estacionamiento".
- Agrega una nueva Acción:
Si: "Preajuste PTZ Aplicado"
Selecciona el Comando de Preajuste PTZ (por ejemplo, "Ir Preajuste 1"). Nota: Tu cámara debe soportar preajustes PTZ para que esto funcione.
Haz clic para Agregar una Tarea:
Tarea: "Establecer Área de Detección de Movimiento"
Selecciona tu nueva área ("estacionamiento").
Haz clic en OK dos veces. Ahora, siempre que selecciones el preajuste, o si Agent establece el preajuste a través de la programación u otro evento, esta área de movimiento se aplicará automáticamente.
También puedes modificar el área del detector de movimiento utilizando el Programador. Esta característica permite diferentes configuraciones de zona de movimiento dependiendo de la hora del día, semana o fechas específicas.
Detector Simple
Simple
El detector simple se enfoca en identificar cualquier tipo de movimiento dentro del campo de visión de la cámara. Es la opción más eficiente en términos de CPU, solo superada por el detector ONVIF. Los movimientos detectados se resaltan en rojo, lo que le permite discernir fácilmente la fuente de movimiento en la escena.
- Avanzado: Para ajustes y opciones adicionales, consulte la sección avanzada a continuación.
- Sensibilidad: Ajuste el nivel de movimiento necesario para activar la detección. Establecer valores mínimos y máximos puede refinar la detección, por ejemplo, un valor máximo de 80 podría ayudar a ignorar cambios de brillo a gran escala. Los números debajo del control deslizante representan el porcentaje de píxeles cambiados.
- Ganancia: Aplicar un multiplicador a los píxeles cambiados para aumentar o disminuir la sensibilidad de la detección de movimiento.
Detector de objetos HAAR
- Tamaño del marco: Seleccione el tamaño del marco para el procesamiento. Los marcos más pequeños reducen el uso de la CPU, pero pueden ser menos precisos.
- Intervalo de detección: Establezca la frecuencia de procesamiento de los marcos, en milisegundos. Por ejemplo, 200 equivale a 5 veces por segundo, y 1000 equivale a una vez por segundo.
- Límites de ancho y límites de alto: Defina el rango de tamaño de los objetos que Agent debe detectar, expresado como un porcentaje del ancho o alto del marco. Ajustar estos controles deslizantes mostrará una superposición en el video, indicando el rango de tamaño de los objetos que se están buscando.
- Usar GPU: Opción para utilizar la GPU para el procesamiento, disponible solo si su GPU admite Cuda y se han instalado los controladores necesarios.
- Archivo: Elija el archivo de cascada HAAR para configurar el detector de objetos. Se proporcionan archivos predeterminados para detectar rostros y rostros de gato.
- Condición de alerta y número de alerta: Configure Agent para generar alertas basadas en la detección de objetos según el número de objetos detectados. Por ejemplo, para activar una alerta al reconocer un rostro, establezca la condición en "Más que" y el número de alerta en 0.
- Zonas de alerta (v4.4.8.0+): Especifique las zonas de movimiento que se incluirán en el área de monitoreo.
- Comprobar esquinas: Para más detalles, consulte Comprobación de esquinas.
Revisión de esquina
Agent utiliza un método sofisticado para determinar si los objetos detectados deben activar alertas o acciones basadas en la configuración de su zona. Lo hace comprobando el punto central del objeto detectado y, opcionalmente, una cuadrícula que se expande hasta las esquinas del cuadro delimitador del objeto. Puede ajustar esta función estableciendo un porcentaje que representa la distancia desde el punto central hasta la esquina del cuadro delimitador para las comprobaciones de zona. Esencialmente, una configuración de 0 significa que solo se verifica el punto central, 100 verifica hasta todas las esquinas, y 50 verifica hasta los puntos medios entre el centro y cada esquina del rectángulo delimitador. Si está recibiendo numerosas notificaciones de eventos donde el objeto no parece estar dentro de la zona designada, entonces establecer Verificar Esquinas en 0 podría ser beneficioso.
MQTT
Tienes la capacidad de iniciar la detección de movimiento desde tu servidor MQTT. Primero, asegúrate de haber configurado MQTT correctamente. Luego, para activar la detección de objetos, simplemente pasa el comando indicado en la pantalla de configuración del detector al canal SERVER/commands donde SERVER es el nombre de tu servidor (mostrado en el menú del servidor que puedes editar en Configuración). Esta integración permite un sistema de detección de movimiento más versátil y receptivo, aprovechando las capacidades de tu servidor MQTT.
ONVIF
Muchos dispositivos compatibles con ONVIF vienen equipados con sus propias capacidades de detección de movimiento. Cuando seleccionas este modo y lo emparejas con una cámara compatible con ONVIF (usando el tipo de conexión ONVIF en el Agent), el Agent se basará en el dispositivo mismo para proporcionar eventos de detección de movimiento y activar acciones basadas en ellos. Si encuentras algún problema con esta funcionalidad, es recomendable revisar los registros (accesibles en /logs.html en el servidor local) ya que es posible que tu cámara no sea compatible con la detección de ONVIF. Para obtener más información sobre cómo configurar estos ajustes, consulta Configuración del servidor ONVIF.
Detector de Personas
Este método utiliza un algoritmo especializado diseñado específicamente para detectar peatones. Sin embargo, es posible que encuentres que el uso del detector de objetos simple e integrar Deepstack AI para filtrar alertas proporciona mejores resultados.
- Usar GPU: Decide si utilizar la GPU para el procesamiento, disponible solo si tu GPU admite Cuda y se han instalado los controladores necesarios.
- Tamaño del marco: Selecciona el tamaño del marco para el procesamiento. Ten en cuenta que los marcos más pequeños requieren menos CPU pero pueden dar resultados menos precisos.
- Intervalo de detección: Establece la frecuencia para el procesamiento de marcos, en milisegundos. Por ejemplo, 200 equivale a 5 veces por segundo, mientras que 1000 equivale a una vez por segundo.
- Condición de alerta y número de alerta: Configura los criterios para generar alertas en función del número de objetos detectados. Por ejemplo, para activar una alerta al reconocer un rostro, establece la condición en "Más que" e ingresa 0 en el campo de número de alerta.
- Zonas de alerta (v4.4.8.0+): Elige las zonas de movimiento específicas que deben ser monitoreadas dentro del área de detección.
- Verificar esquinas: Para ajustes más detallados, consulta Verificación de esquinas.
Reolink
Algunas cámaras Reolink ofrecen un punto de API al que Agent puede consultar para recibir estados de alerta de movimiento o IA. Si tu cámara es compatible con esta función, puedes utilizar este detector. Para verificar si tu cámara tiene esta capacidad, intenta acceder a la URL: `http://[IP ADDRESS]/api.cgi?cmd=GetMdState&channel=0&rs=Get&user=[USERNAME]&password=[PASSWORD]` (sustituye `[IP ADDRESS]`, `[USERNAME]` y `[PASSWORD]` con la dirección IP de tu cámara y las credenciales de inicio de sesión, respectivamente). Una conexión exitosa devolverá texto formateado en JSON en lugar de una página de error.
- Intervalo: Determina la frecuencia con la que Agent consulta tu cámara en busca de alertas o datos de movimiento.
- Modo: Selecciona entre 'Movimiento' y 'IA'. Ambos modos activan eventos de detección de movimiento en Agent, que se pueden utilizar para la grabación (configura el modo de grabación en Detectar). La opción 'IA' activa la detección de movimiento si la cámara identifica clases de objetos específicas (como perro_gato, cara, personas, vehículo).
Puedes configurar acciones para realizar tareas cuando se detecten objetos etiquetados como perro_gato, cara, personas o vehículo, a partir de la versión 4.6.6.0.
Nota: Para habilitar la función de IA, es posible que necesites activar el seguimiento en la interfaz web de la cámara y configurar los parámetros de tamaño mínimo y máximo de objeto. Agent etiquetará tus grabaciones con los objetos identificados por Reolink.
Detección de velocidad
- Avanzado: Para configuraciones más detalladas, consulte la sección avanzada a continuación.
- Límites de Ancho y Alto: Defina el rango de tamaño para la detección de objetos en la escena, con valores expresados como un porcentaje del ancho o alto de la escena. Ajustar estos controles deslizantes mostrará una superposición en el video, indicando el rango de tamaño objetivo de los objetos.
- Desplazamiento Mínimo: Establezca la distancia mínima que un objeto debe moverse para considerarse en movimiento, basado en un porcentaje del ancho de la escena.
- Tiempo Mínimo: Especifique la duración en segundos que un objeto debe estar en movimiento para ser rastreado, en décimas de segundo (por ejemplo, 1 = 0.1 segundos, 10 = 1 segundo).
- Medición de Velocidad: Seleccione la unidad de medida de velocidad preferida para la superposición.
- Límites de Velocidad: Determine los límites inferior y superior de detección de velocidad. Movimientos fuera de este rango activarán eventos de detección de movimiento.
- Distancia Horizontal y Vertical: Ingrese la distancia total a través de la escena en metros. El agente utiliza esta medida para calcular la velocidad de los objetos en movimiento.
- Zonas de Alerta (v4.4.8.0+): Elija qué zonas de movimiento se incluyen en el área de monitoreo.
- Revisar Esquinas: Para configuraciones adicionales, consulte Revisar Esquinas.
Seguimiento de objetos
- Avanzado: Para configuraciones y opciones más detalladas, consulte la sección avanzada a continuación.
- Límites de ancho y alto: Especifique el rango de tamaño para la detección de objetos, con valores dados como porcentaje del ancho o alto de la escena. Ajustar estos controles deslizantes superpondrá una representación visual del rango de tamaño de objeto objetivo en el video.
- Recorrido mínimo: Defina la distancia mínima que un objeto debe moverse para ser reconocido como un objeto en movimiento, en relación con el ancho de la escena.
- Tiempo mínimo: Establezca la duración mínima de tiempo que un objeto debe estar en movimiento para ser considerado para el seguimiento, en décimas de segundo (por ejemplo, 1 = 0.1 segundos, 10 = 1 segundo).
- Mostrar total: Agregue un contador a la transmisión de video en vivo para realizar un seguimiento de los objetos en movimiento.
- Mapa de calor: Visualice patrones de movimiento a lo largo del tiempo agregando líneas a los objetos rastreados.
- Zonas de alerta (v4.4.8.0+): Elija qué zonas de movimiento deben incluirse en el área de monitoreo.
- Revisar esquinas: Para obtener información adicional, consulte Revisar esquinas.
A medida que Agent monitorea y rastrea el movimiento en la escena, muestra rectángulos de colores alrededor de los objetos detectados. Los colores tienen los siguientes significados:
- Blanco: Objeto recién detectado y está siendo considerado.
- Amarillo: Objeto detectado durante varios cuadros.
- Naranja: Objeto se ha movido durante al menos el tiempo mínimo especificado en la configuración de seguimiento.
- Rojo: Objeto ha cumplido con todos los requisitos de seguimiento para activar un evento de detección de movimiento.
Cables de trampa
Este detector reconoce y rastrea objetos en movimiento, activando eventos de detección de movimiento cuando cruzan líneas de detección predefinidas en la escena. Para agregar líneas de detección, simplemente haga clic y arrastre en el video en vivo. Puede crear múltiples líneas de detección según sea necesario. Para eliminar una línea de detección, haga clic y arrastre uno de sus puntos fuera de la escena.
- Avanzado: Para obtener más opciones y configuraciones detalladas, consulte la sección avanzada a continuación.
- Límites de ancho y alto: Establezca el rango de tamaño de los objetos a detectar, con valores expresados como un porcentaje del ancho o alto de la escena. Ajustar estos controles deslizantes superpondrá una representación visual del rango de tamaño objetivo en el video.
- Desplazamiento mínimo: Especifique la distancia mínima que un objeto debe moverse para ser reconocido como un objeto en movimiento, en relación con el ancho de la escena.
- Tiempo mínimo: Defina la duración mínima de tiempo que un objeto debe estar en movimiento para ser rastreado, en décimas de segundo (por ejemplo, 1 = 0.1 segundos, 10 = 1 segundo).
- Disparo repetido: Active esto para permitir que un objeto active la misma línea de detección varias veces. De forma predeterminada, un objeto solo puede activar una línea de detección una vez.
- Conteo: Muestra un recuento del número de veces que los objetos han cruzado la línea de detección, junto con la dirección de cruce. Las opciones incluyen contar a la izquierda, a la derecha, en ambas direcciones o el total de cruces.
- Alerta: Configure el sistema para generar una alerta si la línea de detección es cruzada en una dirección específica o en cualquier dirección.
- Zonas de alerta (v4.4.8.0+): Elija qué zonas de movimiento se incluyen en el área de monitoreo.
- Verificar esquinas: Para obtener información adicional, consulte Verificación de esquinas.
A través de la API
Para iniciar la detección de movimiento para una cámara utilizando una llamada de API, necesitas especificar el tipo de objeto (ot) y el ID de objeto (oid). Por ejemplo, para una cámara (ot=2) con un ID de 1 (oid=1 - este ID se muestra en la parte superior del control de edición al editar un dispositivo), la llamada de API se formatearía de la siguiente manera:http://localhost:8090/command/detect?ot=2&oid=1
Configuraciones avanzadas
La configuración predeterminada de los detectores es generalmente adecuada para la mayoría de las escenas, pero se pueden ajustar para obtener un rendimiento mejorado si es necesario.
- Analizador: El analizador disponible actualmente es el sustractor de fondo CNT, conocido por su alta precisión y bajo uso de CPU.
- Tamaño del marco: Seleccione el tamaño del marco para el procesamiento. Marcos más pequeños reducen el uso de CPU pero pueden disminuir la precisión.
- Seguidor: Elija el seguidor de OpenCV para el seguimiento de objetos. Las opciones incluyen:
- Mosse: Este seguidor ofrece el menor uso de CPU pero es el menos preciso (predeterminado).
- KCF: Más preciso que Mosse, pero ligeramente más intensivo en CPU.
- CSRT: La opción más precisa, pero también la que utiliza más CPU. Ideal para situaciones de seguimiento desafiantes.
- Máximo de objetos: Establezca un límite en el número de objetos para seguir simultáneamente. Más objetos significan un mayor uso de CPU.
- Intervalo de detección: Defina la frecuencia de procesamiento de marcos para la detección de movimiento, en milisegundos (por ejemplo, 200 para 5 veces por segundo, 1000 para una vez por segundo).
- Intervalo de seguimiento: Establezca la frecuencia de procesamiento del seguidor. Un intervalo más alto puede perder objetos en movimiento rápido (por ejemplo, 200 para 5 veces por segundo, 1000 para una vez por segundo).
- Estabilidad de píxeles: Determine el número de muestras para que un píxel se considere estable y el máximo 'crédito' que un píxel puede ganar por permanecer del mismo color. Estas configuraciones son cruciales para una sustracción de fondo y detección de movimiento efectivas. Más información
- Usar historial: Habilitar esto para aprender sobre objetos en movimiento constantes en la escena. Generalmente se recomienda mantener esto deshabilitado a menos que sea necesario.
- Proceso paralelo: Activar el procesamiento paralelo en el algoritmo de detección de movimiento. Se recomienda mantener esto habilitado.
- Tiempo de espera de seguimiento: Especifique el tiempo a esperar (en segundos) para que un objeto vuelva a aparecer antes de dejar de seguirlo.
- Tiempo de espera de movimiento: Establezca la duración (en segundos) para esperar a que un objeto estacionario se mueva de nuevo antes de detener su seguimiento.