Pregunta

Me miraba y miraba. ¿Alguien sabe cómo rastrear objetos binarios de Aforge? Sé que no lo tienen implementado pero yo realmente necesita usar Aforge debido al resto del código que estoy usando. Vi alguna referencia al filtrado de Kalman pero necesito algunas teorías de implementación y no.

TNX, v.

¿Fue útil?

Solución

El AForge.NET BlobCounter proporcionará el hallazgo de nota, aunque es bastante simple y no apoyará manchas 'rotos'. Si desea poner en práctica algunas de seguimiento sencilla representación de nota, algunas cosas que usted podría considerar:

  1. Si sus gotas se fragmentan en ocasiones, puede que tenga que realizar alguna agrupación (la búsqueda de grupos de centro de masa ubicaciones de combinar fragmentos pequeños) para obtener una estimación buena de la ubicación. Al analizar varios fotogramas, esto aumenta la posibilidad de encontrarse con condiciones de contorno tales como manchas rotos, por lo que es importante tener en cuenta. Alternativamente, si usted tiene un buen control sobre las condiciones (tales como la iluminación), que puede ser suficiente. Menor (sólo unos pocos píxeles) se rompe se pueden resolver con las operaciones de la dilatación repetida / erosión antes del hallazgo de nota, aunque esto también puede amplificar el ruido y reducir la exactitud posicional.

  2. Para el seguimiento real, que tiene unos enfoques. filtrado de Kalman le puede dar una muy buena precisión (sub-pixel), ya que integra la información de múltiples marcos. Si usted no necesita ese nivel de precisión, es posible considerar un algoritmo muy simple, como siempre recogiendo la burbuja suficientemente grande que era el más cercano a la ubicación más reciente. Esto funciona si el objeto no se está moviendo muy rápidamente y no tienen otras manchas apareciendo cerca de su objeto que está siendo rastreado. Si necesita un mejor rendimiento de análisis, también puede ser capaz de estimar la velocidad de los dos últimos marcos y usarlo para limitar la región que hay que considerar cuando se busca el blob.

  3. Si necesita realizar un seguimiento de un objeto de alta velocidad, que se convierte en un poco más difícil. Este es un caso en que usted puede tratar de combinar burbuja de investigación con la plantilla de coincidencia. Puede crear una plantilla basada en la burbuja de encontrar y coincidir con la plantilla contra manchas subsiguiente de marcar en función de su patrón y no sólo su tamaño / ubicación. Esto requiere que el blob aparece tiempo sobre razonablemente consistentes, lo que significa la forma física del modelo y las condiciones de iluminación debe permanecer fijo.


ACTUALIZACIÓN en respuesta a su pregunta:

Sólo tiene unos pocos minutos de esta mañana, el código por lo que no real, pero la idea básica es la siguiente:

  1. Sólo en cuenta gotas mayores que un tamaño configurable (que probablemente tendrá que determinar empíricamente.)

  2. conservarán los datos relativos últimos dos lugares blob encontrado y las horas a las que se tomaron muestras. Vamos a llamar a estos vectores en R2, p1 y p0, en los tiempos t1 y t0.

  3. Si se supone que la velocidad está cambiando poco a poco, a continuación, una estimación preliminar en el tiempo t2 de la nueva ubicación p2 = p1 + (t2-t1) * (P1-P0) / (t1-t0). Esto puede o no puede ser una buena suposición, así que es conveniente para verificar esto mediante la captura de su objeto en el rango requerido de movimientos.

  4. Opcionalmente, puede utilizar esta estimación para restringir su área de búsqueda gota a una sub-imagen centrada en la ubicación estimada. Después de realizar el hallazgo de nota, tomar la burbuja que es más cercano a la ubicación estimada como su nueva medición de ubicación.

Un efecto secundario de lo anterior es que se puede trabajar con la estimación si, por alguna razón, el hallazgo de blob falla durante un fotograma. Es peligroso permitir que esta extrapolación durante demasiado tiempo, pero se le puede dar cierta tolerancia para los picos de ruido menor.

Es probable que pueda ver cómo esto podría progresar aún más para incluir una estimación de la aceleración de los marcos recientes o integrar la velocidad / aceleración de varios fotogramas a una mejor extrapolar una posible ubicación para la siguiente muestra. También podría comenzar a confiar en que la estimación (con datos acumulados de los marcos actuales y anteriores) es más preciso (y tal vez precisa) que la medida real. Finalmente terminas con algo así como el filtro de Kalman.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top