¿Preprocesamiento para mejorar el rastreo de esquinas de Harris entre fotogramas de video?

8

En nuestra aplicación de estabilización de imagen de video en escala de grises de vehículos aéreos no tripulados, estamos teniendo dificultades para encontrar las "buenas" esquinas de Harris en el cuadro N + 1 seleccionado del cuadro N. La fuente de la dificultad parece ser cambios radicales de contraste de píxeles no uniformes entre cuadros. Quizás estar en el aire y usar una velocidad de fotogramas lenta (~ 3 fps) es la causa principal del cambio de contraste de píxeles.

Hemos probado varias técnicas de ecualización de histogramas para tratar de suavizar los contrastes de píxeles entre cuadros para mejorar el seguimiento de las "buenas" esquinas de Harris en el cuadro N + 1. Los resultados siguen siendo pobres.

¿Alguien tiene alguna sugerencia sobre cómo mejorar el seguimiento de la esquina de Harris entre fotogramas de video en un entorno aéreo diurno con baja velocidad de fotogramas? Gracias amablemente por adelantado.

Edición: 30 de enero de 2012, se agregaron imágenes de casos de prueba (no tamaño de cuadro real)

Resumen de actualización: 8 de febrero de 2012. La gente sugiere que las esquinas de Harris no son tan útiles en el seguimiento de funciones de video en escala de grises. Las respuestas a continuación sugieren y proporcionan enlaces a varias alternativas. Estamos evaluando estas alternativas e informaré los resultados cuando lleguemos a ese punto. Gracias a todos por sus comentarios y respuestas.

Aquí está el cuadro anterior N con 35 "buenas" esquinas de harris 5x5 seleccionadas. El marco original es de 8 bpp píxeles sin formato.

fotograma anterior N

Aquí hay una excelente esquina de 5x5 Harris ubicada en la fila 59 col 266:

anterior 5x5 en r59 c266

El cuadro actual N + 1 con algunas esquinas de Harris 5x5 rastreadas, solo una de las cuales es válida:

trama actual N + 1

El marco anterior 5x5 esquina de Harris que aparece en el marco N + 1 en r47 c145:

anterior 5x5 en el actual 5x5 r47 c145

Observe cómo las intensidades de píxeles en el 5x5 seleccionado han cambiado de manera no uniforme desde el cuadro anterior al cuadro actual. Las técnicas de ecualización de contraste entre cuadros no ayudan a detectar cuadros anteriores seleccionados de 5x5 píxeles en el cuadro actual. Todas las sugerencias son bienvenidas.

David Pointer
fuente
3
Pl subir algunas imágenes. De lo contrario, recibirá sugerencias al azar.
nav
Lo haré Lo siento, debería haber pensado en eso.
David Pointer
@nav Hecho! Gracias por tu excelente sugerencia.
David Pointer

Respuestas:

9

¿Puedes probar un detector de características diferente? FAST puede ser, erm, más rápido, y una velocidad de cuadro más alta facilitará la coincidencia (suponiendo que sus características se muevan mucho entre cuadros)


Parece que está intentando utilizar la región de escala de grises alrededor del punto de característica identificado para que coincida de cuadro a cuadro. Esto es probable que sea pobre, especialmente si hay mucho movimiento entre cuadros.

Puede obtener un mejor rendimiento utilizando lo que a menudo se llama un "descriptor" de la región alrededor del punto de característica con el que coincidir.

Algunos posibles descriptores se utilizan dentro de los algoritmos SURF y SIFT : también tienen técnicas para identificar regiones a las que realizar un seguimiento, pero ha omitido el requisito para eso. Un descriptor más simple diseñado para su uso en la coincidencia de visión estereoscópica es la transformación Censo, aunque puede que no funcione tan bien para la coincidencia de cuadro a cuadro, por la misma razón que su método actual (que también se implementa ampliamente en visión estereoscópica)

El libro para leer sobre esto es Multiple View Geometry in Computer Vision .

Martin Thompson
fuente
Gracias por su sugerencia. El factor limitante de fps es en realidad la cámara en el sistema: tamaños de fotogramas muy grandes. De hecho, podríamos subir hasta 12 fps con estos tamaños de cuadros con el conjunto actual de algoritmos con la tecnología que estamos utilizando.
David Pointer
Ohhhh, espera ¿Está diciendo que una velocidad de cuadro de cámara más alta evita este problema de cambio de intensidad / contraste por completo ya que hay menos tiempo disponible para que las intensidades cambien realmente en los objetos observados entre cuadros? El fuselaje en sí mismo puede moverse mucho en 33 milisegundos.
David Pointer
3

Como alternativa a SIFT / SURF / Other, también puede usar la correlación de fase FFT, si los marcos se transforman principalmente por traslaciones (la rotación / perspectiva es pequeña). También puede aplicar correlación de fase a regiones de imagen de forma iterativa para una mejor precisión.

http://en.wikipedia.org/wiki/Phase_correlation

mirror2image
fuente
1

Si está tratando de alinear las dos imágenes, debe usar un mejor detector de características locales. SIFT es probablemente el más popular / exitoso para usar.

Roronoa Zoro
fuente
1

Creo que es mejor usar Shi y Tomasi, puedes usarlos con la misma función goodfeaturestotrack, dio mejores resultados que las esquinas de harris

Ellian Herrera-Bandin
fuente