Paso 2: Entender la comparagram es la clave para entender el HDR
Una vez que entiendes el comparagram, estás bien en su manera de entender el concepto fundamental detrás de HDR y detrás de comparametric de detección en general. Comparagrams son la clave para entender la relación entre grabaciones diferentemente expuestas a través de un aparato de detección de cualquier curva de respuesta en forma arbitraria.
La primera cosa a entender es la relación entre dos imágenes, v1 y v2y luego entre más de dos imágenes, teniendo en cuenta los pares. Obtenemos esta comprensión al computar la comparagram entre pares de imágenes. Un comparagram es un histograma conjunto de dos discos que difieren sólo en la exposición. Calcular la comparagram de las dos imágenes de arriba. Puede escribir su propio programa para hacer esto, o utilizar uno de nuestro kit de herramientas de VideoOrbits, http://wearcam.org/orbits/v1.23.tgz
Alternativamente, asumiendo que estás usando GNU Linux (como Do-It-Yourselfers más sano), puede calcular un comparagram en octava como sigue:
CG = full(sparse(v1+1,v2+1,1,256,256));
Suponiendo que tienes dos imágenes en escala de grises que cada uno tiene 256 valores de grises.
Computacionalmente más eficiente manera de hacer el cómputo es utilizar un archivo externo de lenguaje C, llamado de octava. Aquí es un simple archivo de octava que más eficiente (más rápidamente) calcula comparagrams en octava: http://wearcam.org/comparagram.cc
Compilarlo como sigue:
$ mkoctfile comparagram.cc
Puede que necesite instalar liboctave-dev si recibe el siguiente mensaje:
El programa 'mkoctfile' no está instalado actualmente. Para ejecutar 'mkoctfile' por favor, consulte a su administrador para instalar el paquete 'liboctave-dev'
Si usted es su propio administrador (como la mayoría GNU Linux son los aficionados al bricolaje), luego instalarlo:
$ sudo apt-get install liboctave-dev
Aquí, en nuestro caso, puesto que las imágenes son de color (RGB) obtendrá 3 canales de datos de comparagram, que compara el canal rojo de v1 con el canal rojo del v2, el siguiente canal comparando los canales verdes y el tercer canal comparando los canales azul, por lo que el comparagram sí mismo una entidad RGB. También puede convertir las imágenes a escala de grises y la comparagram sólo tendrá un canal, ya que la función de respuesta de la cámara es aproximadamente el mismo para cada uno de los tres canales.
Aquí es una definición de libro de texto de la comparagram:
"La comparagram entre las dos imágenes es una matriz de dimensiones M por N, donde M es el número de niveles de gris en la primera imagen y N es el número de niveles de gris en la segunda imagen. El comparagram, que se asume ser asumido el control diferentemente expuestas fotos de la misma materia, es una generalización del concepto de un histograma a una cuenta de depósito de histograma conjunto de píxeles correspondientes en cada una de las dos imágenes. La Convención es que cada valor de píxel de la imagen primer trazada en la primera (es decir, "x") eje, contra el segundo pixel correspondiente (por ejemplo, en las mismas coordenadas) de la segunda imagen se representa en el segundo eje (es decir, el eje "y"). Puesto que el número de niveles de gris en las dos imágenes es generalmente la misma (es decir, 256), la comparagram suele ser una matriz cuadrada (es decir, de dimensiones 256 por 256)." [Procesamiento de imágenes inteligente, Mann S., 2001].
Si vas a escribir tu propio programa de comparagram (que sugiero que hagas, para conocerla mejor y también en el verdadero DIY alcohol), aquí se inicia un buen ejemplo muy simple para ayudarle:
Considere dos cuadros que son cada 3 píxeles de alto y 4 píxeles de ancho:
v1 = [
1 3 2 3;
3 2 1 2;
0 0 2 0
]
y
V2 = [
2 3 3 3;
2 2 2 2;
0 1 3 0
].
El comparagram es un dos matriz bidimensional de tamaño M n donde M es el número de valores de gris en la primera imagen, y N es el número de valores de gris en la segunda imagen, donde la entrada C [m, n] es una cuenta de cómo muchas veces un píxel en la imagen 1 m greyvalue y del píxel correspondiente en la imagen 2 n greyvalue. En este caso ambas imágenes tienen valores de gris 4, por lo que el comparagram es una matriz de 4 por 4, dada por:
CG=Full(Sparse(v1+1,V2+1,1,4,4))
% (por encima de la línea de escritos en Octave o Matlab):
CG = [
2 1 0 0;
0 0 2 0;
0 0 2 2;
0 0 1 2
].
Resumen a través de las filas de la comparagram da el histograma de la imagen primera: h1 = [3 2 4 3] y la suma por columnas del compragram da el histograma de la imagen segunda: h2 = [2 1 5 4]. Suma todas las entradas en el comparagram da 12, que es el número total de píxeles.
Un ejercicio simple para ayudarle a entender comparagrams, lo que pueden hacer y cómo usarlos:
Aquí es un ejercicio simple que le ayudará a entender comparagrams. Este ejercicio simple y puede prometer un nuevo mundo de conocimiento, una especie de "aha" momento en el que para muchos de mis alumnos ha marcado el comienzo de una nueva forma de mirar el mundo de la detección de comparametric.
Tomar cualquier imagen, como el de la parte superior de esta página.
Entrar en un editor de imágenes como GIMP (prefiero Open Source GNU Linux) y seleccione "Curvas" en el menú "Colores".
Esto le permite "Ajustar curvas de Color".
Dado que la imagen es en escala de grises (sugiero a partir de una imagen en escala de grises) que está ajustando simplemente greylevels.
Crear cualquier forma que desee, en la curva.
Ahora guarde el resultado con un nuevo nombre de archivo.
Calcular la comparagram de esta nueva imagen contra la imagen original.
Lo que usted consigue (véase arriba) es la curva que ha creado.
En otras palabras, la comparagram extractos (recupera) la curva de los datos de imagen.
Tenga en cuenta que en la literatura el eje "x" (primer eje) se ejecuta de izquierda a derecha y de los funcionamientos de "Eje y" de abajo a arriba, mientras que en el índice de archivos (matrices en lenguaje C) de computadora con el eje "x" (primer eje) que va arriba a abajo y el eje "y" va izquierda a derecha, debes girar la comparagram 90 grados para conseguirlo en línea con las curvas.
Probar un par de veces con un par de curvas de diferente formas.
Ahora usted puede entender la comparagram como una herramienta fundamental para entender la relación entre imágenes de idéntica temática difieren sólo en la tonalidad o escala de grises. Diferentemente expuestas imágenes muestra cambios en la tonalidad, que se hacen evidentes en la coparagram. El comparagram capta la esencia de las dos cosas simultáneamente:
- Función de respuesta de la cámara;
- La diferencia en la exposición fotográfica a través de varias imágenes.