Página 1 de 1

Las tripas de una fusión HDR

NotaPublicado: Jue Jul 19, 2018 12:55 pm
por Guillermo Luijk
He escrito un artículo en plan didáctico explicando las tripas de una fusión HDR. Mi intención real era practicar con el lenguaje R, el HDR es una excusa, pero se explica paso a paso cómo un programa puede fusionar dos capturas para obtener una imagen final que contenga el rango dinámico combinado. He obtenido gráficas curiosas sobre los cálculos previos que no había obtenido nunca.

Fusión HDR de imágenes con R

Imagen

Imagen

Imagen

Salu2!

Re: Las tripas de una fusión HDR

NotaPublicado: Vie Jul 20, 2018 11:07 am
por Fid
Guillermo Luijk escribió:He escrito un artículo en plan didáctico explicando las tripas de una fusión HDR. Mi intención real era practicar con el lenguaje R, el HDR es una excusa, pero se explica paso a paso cómo un programa puede fusionar dos capturas para obtener una imagen final que contenga el rango dinámico combinado. He obtenido gráficas curiosas sobre los cálculos previos que no había obtenido nunca.

Fusión HDR de imágenes con R

Imagen

Imagen

Imagen

Salu2!
Cada vez que te vertió usar R para fotos me quedo a cuadros.

Enviado desde mi HUAWEI VNS-L31 mediante Tapatalk

Re: Las tripas de una fusión HDR

NotaPublicado: Vie Jul 20, 2018 1:37 pm
por JuanPC
Buenas!

Me ha resultado muy interesante, pero sobretodo me ha convencido por el hecho de que la fusión entre tomas previa al mapeo alcance esa perfección, haciendo innesaria la aplicación de métodos que mejoren las transiciones comprometidas.

Lo cierto es que he usado este software en contadas ocasiones, y siempre con fines más modestos, y me surge la duda de si resultaría práctico incluirlo en el flujo de trabajo para este tipo de procesados. A ti que te parece Guillermo?

Saludos y gracias por compartir.

Enviado desde mi HUAWEI GRA-L09 mediante Tapatalk

Re: Las tripas de una fusión HDR

NotaPublicado: Vie Jul 20, 2018 2:28 pm
por Guillermo Luijk
Fid escribió:Cada vez que te vertió usar R para fotos me quedo a cuadros.


Pues si miras el código te quedas pasmado de lo corto y limpio que es. La notación matricial para imágenes es una maravilla.

Código: Seleccionar todo
# Fusión HDR de imágenes con R
# www.elmomentodecisivo.com

# Revelado lineal con DCRAW: dcraw -v -w -o 2 -4 -T *.CR2

library(tiff)


# LEEMOS FOTOGRAFÍAS
img1=readTIFF("raw1.tiff", native=F, convert=F)
img2=readTIFF("raw2.tiff", native=F, convert=F)


# CÁLCULO DE EXPOSICIÓN RELATIVA
MIN=2^(-5)  # Desde -5EV...
MAX=0.95  # ...hasta 95%
i=which(img1>=MIN & img1<=MAX & img2>=MIN & img2<=MAX)
exprel=img2[i]/img1[i]
f=median(exprel)  # Factor corrector de exposición

# Histograma de exposiciones relativas
hist(exprel[exprel>=10 & exprel<=22],
    main='Relative exposure histogram', xlab='Linear relative exposure',
    breaks=seq(10, 22, length.out=800))
abline(v=16, col='gray', lty='dotted')
abline(v=f, col='red')

mapacalc=img1*0
mapacalc[i]=1  # Ponemos a 1 lo que ha participado en el cálculo
writeTIFF(mapacalc, "mapacalc.tif", bits.per.sample=8, compression="LZW")
solape=length(i)/length(img1)  # % información entró en el cálculo


# FUSIÓN HDR
hdr=img1  # Partimos de la foto menos expuesta
i=which(img2<=MAX)  # Niveles RGB obtenidos de la foto más expuesta
hdr[i]=img2[i]/f  # Los sobreescribimos igualando su exposición
writeTIFF(hdr^(1/2.2), "hdr.tif", bits.per.sample=16, compression="LZW")

mapafusion=img1*0
mapafusion[-i]=1  # Ponemos a 1 lo obtenido de la foto menos expuesta
writeTIFF(mapafusion, "mapafusion.tif", bits.per.sample=8, compression="LZW")
mejora=length(i)/length(img1)  # % información foto más expuesta


JuanPC escribió:Lo cierto es que he usado este software en contadas ocasiones, y siempre con fines más modestos, y me surge la duda de si resultaría práctico incluirlo en el flujo de trabajo para este tipo de procesados. A ti que te parece Guillermo?


Hola Juan, a qué software te refieres? al HDR en general?.

Salu2!

Re: Las tripas de una fusión HDR

NotaPublicado: Vie Jul 20, 2018 2:46 pm
por JuanPC
Guillermo Luijk escribió:
JuanPC escribió:Lo cierto es que he usado este software en contadas ocasiones, y siempre con fines más modestos, y me surge la duda de si resultaría práctico incluirlo en el flujo de trabajo para este tipo de procesados. A ti que te parece Guillermo?


Hola Juan, a qué software te refieres? al HDR en general?.

Salu2!


Me refería a "R', aunque no sé si será más correcto hacerlo como entorno o lenguaje de programación.


Enviado desde mi HUAWEI GRA-L09 mediante Tapatalk

Re: Las tripas de una fusión HDR

NotaPublicado: Vie Jul 20, 2018 3:02 pm
por Guillermo Luijk
Hombre yo no usaría un lenguaje interpretado para procesar fotografía de forma habitual. Lo he hecho solo de forma didáctica para practicar con R, y de paso hacer cosas que no había hecho nunca.

Si os descargáis fusionmapeotonos.tif desactivando cualquiera de las imágenes origen veréis que la fusión no está hecha a nivel píxel sino a nivel canales RGB individuales de cada píxel. Nunca había hilado tan fino, y funciona.

Salu2!