5

Tengo un equipo de cámara estéreo económico que uso para bucear. A veces, cada cámara blanca equilibra o establece la exposición de manera diferente. Ejemplo:Ajuste de la exposición de una imagen/balance de blancos para que coincida con otro (¿con PIL?)

http://www.chrisevans3d.com/temp/forums/left.jpg

http://www.chrisevans3d.com/temp/forums/right.jpg

¿Hay una manera de hacer esto con conseguir im.histogram() de cada una, haciendo un diff o LUT luego transformar una imagen a la otra? ¿Cómo funciona la función 'Match Color' del photoshop?

Me gustaría lanzar un kit de software gratuito para hacer que las cámaras estéreo gopro sean más utilizables, por lo que cualquier ayuda sería genial.

+0

También puede intentar pedir punteros en http://photo.stackexchange.com/ – Medorator

Respuesta

4

Hacer coincidir el balance de blancos no es una tarea trivial. Un método muy básico es asumir un mundo gris y escalar los canales RGB de una imagen para que coincida con los valores promedio RGB de otro. Esto fallará fácilmente cuando las escenas estén sesgadas hacia un color (en lugar de gris). Puede mejorar aún más rechazando píxeles oscuros/brillantes, etc. Hay toneladas de papeles en el balanceo de blancos. Encuentre un algoritmo para estimar la temperatura del color de la imagen y luego determine cuál es más apropiada para la configuración de la escena/cámara. & normalice las imágenes.

Es una historia similar con exposición, es decir, los algoritmos adaptativos identifican la región de interés en la imagen y coinciden con el brillo promedio.

Sugeriría, comience con un algoritmo simple y luego mejore a medida que encuentre fallas. Permitir anulaciones manuales también.

EDIT:

Vale la pena un comienzo: HP Adaptive White Balance

Herramienta para la lectura de imágenes + procesamiento post básica cruda: dcraw

+0

Disculpe, permítame ser más específico. No es tanto equilibrio blanco. Estas son transmisiones de video de 1080p sin RAW ni EXIF. Solo quiero hacer una aplicación donde haga clic en una imagen (ejemplo) y ajuste el HSV de la otra imagen para que coincida. –

+0

Tendrás que desenterrar algoritmos razonables de publicaciones para extraer el matiz/brillo de la imagen y luego aplicarlo con PIL sería fácil – Medorator

+0

En un foro de procesamiento de imágenes, parecía que se podía hacer una LUT para pasar de un histograma a otro .. no hay demasiada información en línea sobre la creación de lobulos para transformar imágenes con PIL ... –

0

Ver: http://en.wikipedia.org/wiki/Histogram_matching. Esto trata de la coincidencia de histograma en escala de grises, pero puede hacerlo por canal en una imagen RGB.

que tienen una implementación que prácticamente hace que aquí:

https://github.com/gfxmonk/stereoscoper/blob/8eba4b819c2415d5218dc0c9c8e264750ef4fb8e/stereoscoper#L120

dado una imagen izquierda y derecha, se calcula el "promedio" histograma para ellos y ajusta los niveles de cada imagen para que coincida con la media. En su lugar, puede hacer que la izquierda coincida con la derecha o la derecha con la izquierda, pero prefiero no tener que elegir.

Cuestiones relacionadas