detección de objetos

que la cámara distinga qué se mueve

Por Yapci Bello ·

Análisis del vídeo con inteligencia artificial para reconocer qué aparece en la imagen: una persona, un coche, un animal. Evita el aviso constante de las cámaras que solo detectan movimiento y saltan con una rama o una sombra.

Movimiento no es lo mismo que objeto

La cámara barata de toda la vida detecta movimiento: compara un fotograma con el siguiente y, si han cambiado suficientes píxeles, salta. Es un método de los años noventa y funciona exactamente igual de bien con un ladrón que con una rama, una sombra que avanza, un insecto pegado a la lente o el faro de un coche que gira en la esquina. De ahí vienen los cincuenta avisos diarios que acaban con el usuario silenciando la aplicación, que es la forma más habitual de que un sistema de cámaras deje de servir para nada.

La detección de objetos hace otra cosa: coge la imagen y la pasa por un modelo entrenado para reconocer qué aparece en ella. La respuesta no es «ha cambiado el 4 % de los píxeles», sino «hay una persona aquí, con esta confianza, dentro de este rectángulo». Eso ya se puede filtrar: avísame de personas, ignórame los gatos.

Qué devuelve el modelo de verdad

Conviene entender la respuesta para no pedirle al sistema lo que no puede dar. Por cada imagen analizada, el modelo devuelve una lista con tres datos por cada cosa encontrada:

  • La etiqueta: a qué clase pertenece, de un catálogo cerrado que se decidió cuando se entrenó el modelo. Persona, coche, bicicleta, perro, gato. Si una clase no está en ese catálogo, no existe para el sistema.
  • La confianza: un número entre 0 y 1 que dice cuánto se cree lo que acaba de decir. Aquí está la mitad del ajuste fino.
  • El recuadro: dónde está, en coordenadas de la imagen. Esto permite definir zonas —«el camino de entrada sí, la acera no»— y seguir el movimiento de un objeto entre fotogramas para saber si entró o solo pasó de largo.

Casi siempre las dos técnicas se combinan en cascada: el detector de movimiento clásico decide cuándo vale la pena analizar, y solo esos fotogramas van al modelo. Analizar todos los fotogramas de todas las cámaras sin parar sería un derroche de cálculo enorme; por eso el movimiento sigue estando ahí, pero degradado a portero en vez de a decisor.

Ese análisis puede ocurrir en un servicio de internet o en tu propia casa. Si ocurre en casa, el trabajo pesado lo suele asumir una TPU dentro del mismo equipo que hace de NVR: en mi caso, Frigate junto a Home Assistant.

Lo que aprendí a base de fallos

Mi primera configuración avisaba de todo lo que se movía. La segunda avisaba de personas, y seguía avisando demasiado. Lo que lo arregló no fue cambiar de modelo, fueron tres ajustes aburridos:

  • Zonas antes que sensibilidad. El problema no era que detectara mal, era que detectaba bien a los vecinos que pasaban por la acera. Delimitando la zona que me interesa, la mitad de los avisos desaparecieron sin tocar nada más.
  • Exigir permanencia. Una persona que aparece en un fotograma suelto suele ser un error del modelo. Pedir que la misma detección se sostenga varios fotogramas seguidos elimina casi todos los falsos positivos sin perder ningún evento real.
  • Mirar los fallos, no las estadísticas. Frigate guarda un recorte de cada detección. Revisar veinte fallos reales enseña más que cualquier tabla: en mi caso descubrí que un reflejo nocturno del cristal se detectaba como persona con confianza media, y que una cámara mal encuadrada solo veía piernas.

La cuarta lección fue de encuadre puro: el modelo necesita ver la figura completa. Una cámara demasiado alta apuntando hacia abajo da imágenes que un detector de personas apenas reconoce, porque no se parecen a lo que vio al entrenarse. Bajarla y ladearla mejoró más que cualquier ajuste de software.

Por qué importa

Porque cambia la relación con el sistema. Un aviso que es fiable se atiende; un aviso que miente se ignora. Cuando el móvil solo suena si hay una persona en la entrada, ese aviso vuelve a significar algo, y el sistema pasa de ser una molestia a ser tranquilidad de verdad: puedes irte una semana sabiendo que si suena, es que pasa algo.

También abre la puerta a automatizaciones útiles y no solo a alarmas: encender la luz del camino cuando llega una persona y no cuando pasa un gato, avisar de que hay un coche aparcado donde no toca, o simplemente tener un registro buscable por «coches del martes» en lugar de tres mil grabaciones de nada.

Para un negocio pequeño la lectura práctica es la misma: distinguir a alguien que entra al local de una bolsa que arrastra el viento es la diferencia entre un sistema que alguien mira y uno que nadie mira. Eso sí, en cuanto se graba a clientes o a personal, o el encuadre alcanza la vía pública, hay obligaciones legales que cumplir —información visible, límites de encuadre, plazos de conservación— y el análisis automático de imágenes de personas es un terreno especialmente sensible. No es asesoramiento jurídico: consúltalo con quien sepa antes de montar nada.

Errores frecuentes

Confundir detectar con identificar. Saber que hay «una persona» no es saber qué persona. El reconocimiento facial o de matrículas es otra tecnología, con otros modelos y con un régimen legal muchísimo más exigente. Que tu sistema distinga personas de coches no significa ni de lejos que puedas reconocer caras.

Subir la confianza al máximo para quitar falsos avisos. Es tentador y sale caro: al exigir tanta seguridad dejas de detectar justo lo que importa, la figura a contraluz o de noche que el modelo ve peor. Casi siempre la solución correcta es acotar la zona y exigir permanencia, no apretar el umbral.

Dejar el catálogo de objetos entero activado. Si te avisan de todas las clases que el modelo conoce, has recreado el problema original con más pasos. Elige dos o tres etiquetas que te importen y silencia el resto.

Analizar el flujo de máxima calidad. El modelo reduce la imagen a un tamaño pequeño antes de mirarla, así que darle cuatro veces más resolución no mejora nada y multiplica el trabajo del equipo. El flujo grande es para grabar; el pequeño, para analizar.

Culpar al software de un problema de cámara. Lente sucia, infrarrojos rebotando en una pared, contraluz permanente al amanecer, cristal de por medio. Ningún modelo compensa una imagen que no contiene la información. Antes de cambiar de detector, sal a mirar la cámara.

Dónde trato detección de objetos a fondo

Ver los 7 artículos de Domótica e IoT →

¿Quieres que lo implementemos por ti?

Yo diseño la estrategia; la ejecuta mi equipo en SMedialab, la agencia que cofundé en Tenerife.

Ir a SMedialab →

Buscador del sitio

Escribe al menos dos letras para buscar.