mi pregunta es similar a éste: OpenCV: Detect blinking lights in a video feedOPENCV detectar luces parpadeantes
que tienen una luz LED, y mi cámara corre a 30 fps. En cada cuadro, deseo saber si la luz está encendida o no. Al igual que en la pregunta anterior, también quiero obtener la ubicación de ese punto.
Ahora me pregunto cómo usar openCV para esta instancia (soy nuevo). Sería fácil si la luz fuera solo un píxel, pero dado el considerable ruido de fondo y el tamaño del LED, ¿cómo puedo detectar la mayor fuente de luz en la imagen? Tengo que asumir que no puedo configurar la exposición libremente (en un iPhone).
Soy nuevo en el procesamiento de imágenes, así que ¿cómo lo conseguiría?
lo que quiero decir con ruido es que la luz en sí misma podría no ser la única región blanca. Hice cVthreshold, pero la pregunta es a qué establecer el valor de umbral. Es por eso que mi pregunta fue la detección de la fuente de luz más grande (en el área), ya que podría haber más de ellos. ¿Hay funciones en openCV que realicen ese tipo de detección de "objetos"? – nambrot
bien puede intentar, después del umbraling, aplicar cvfindcontours. devuelve una lista de los contornos de todas las regiones blancas (el contorno es una lista de cvpoints). con esto puede buscar la región con los contornos con más puntos, hay una función para calcular el área de contorno doble de área (const Mat y contorno) para que pueda buscar la región blanca más grande (si es mayor que un cierto valor puede suponer led está encendido) – andrea
gracias, eso ayudó mucho. Trataré de implementarlo de esa manera. Mientras tanto, obtiene la pregunta :) – nambrot