Hace 9 años | Por Tovkal a microsiervos.com
Publicado hace 9 años por Tovkal a microsiervos.com

La buena gente de Minute Physics ha dedicado una de sus piezas a explicar el problema de las mezclas y difuminados de color en las imágenes digitales. Esto hace que al combinar colores en aplicaciones fotográficas el resultado sean unas zonas grises borrosas en vez de suaves degradados de color como deberían ser. Y es que según explican la mayor parte del software fotográfico simplemente está mal y realiza los cálculos de forma errónea.

Comentarios

D

En resumen: las mezclas deben hacerse en un espacio de color lineal, y la mayoría de los espacios que se usan habitualmente (sRGB, Adobe RGB, etc) no son lineales, si no que tienen aplicado un factor gamma.

Luego aparte está el hecho de que los espacios RGB no son perceptualmente uniformes, y una mezcla directa entre dos colores produce cambios de luminosidad. Para hacer bien los fundidos hay que usar CIELCh o algo similar:

https://www.reddit.com/r/gamedev/comments/20l66l/new_ciel_gradient_optimization_tool_10_time/
http://www.stuartdenman.com/improved-color-blending/
https://dl.dropboxusercontent.com/u/44461887/Maker/EquaMaker.swf

perro_marron

Muchos de los conceptos que maneja el video articulo son erroneos o estan mal aplicados. Esta mezclando lo que es uniformidad perceptual, que es mucho mas compllicado que una raiz cuadrada, con una operacion sintetica de procesado de imagen como es el blending. La conclusión del video es que "hay que usar gamma 1.0" y esto es falso en muchos casos. Si alguien está realmente interesado en el tema, un buen libro para entender estos fenómenos es "Mark D. Fairchild, Color Appearance Models".

chemari

#8 La verdad es que me sonaba a camelo, así que he abierto el photoshop y he hecho la prueba para verlo por mis propios ojos. En Edit -> color settings -> More options, puedes marcarle que use la fusión con Gamma, y la verdad que se nota la diferencia. Meneito.

Pd: con los efectos de blur no funciona, supongo que es porque estos tienen su propio algoritmo.

perro_marron
j

Comento sólo para decir que el artículo de #11 está muy bien. Por cierto, si hacéis gráficos en tiempo real tened esto en cuenta si no queréis que os salga piel amarillenta u otros errores varios.

D

Creo que el título es erróneo. Las mezclas de color funcionan, lo que no funciona o se asemeja al ojo humano son los difuminados.

sorrillo

#2 ¿No es acaso el difuminado una zona donde se mezclan colores?

sorrillo

Muy curioso que no suponga ningún problema técnico hacerlo bien y se está haciendo mal.

antares.es

#1 Realmente, si es un "problema técnico". Las raíces y potencias son costosas computacionalmente, por lo que aplicarlo haría que aplicar el filtro tardase mucho más tiempo.

Jakeukalane

¿Y GIMP lo hace bien por defecto? Yo jamás he visto eso que dicen. Tampoco lo he visto en Krita o Sai... bueno, en realidad no lo he visto en ningún sitio excepto en ese vídeo...

D

El vídeo es una maravilla, me han dado ganas de levantarme y dar palmas.

meneandro

Cada cámara tiene sus propios valores de respuesta ante blancos y negros, lo cual hace que entre otras cosas los formatos RAW de cada cámara/sensor sean diferentes.

Luego viene la parte de la transformación de colores y demás, cuyo problema no es que se apliquen bien o mal las fórmulas, sino que no se aplican con la precisión necesaria. Que si, que 24bits de color con miles de millones de combinaciones, pero no son un margen tan amplio como podría pensarse. Por eso profesionalmente se usan 36, 64, 128 bits y más de color para evitar este tipo de problemas.

Que si, que se puede conseguir mejorar la calidad a ciertos procesos puntuales haciendo cálculos de otro modo que evite problemas de precisión, pero que eso no invalida los cálculos normales.

Hivenfour_1

Photoshop lo hace mal?

p

#4 Por defecto, si. Puedes cambiarlo. Igual que leer el artículo

Hivenfour_1

#5 vale es que me había ido al vídeo directamente y es un poco loco todo lol thx!

C

Este artículo es erróneo en múltiples aspectos: El modelo de respuesta del ojo es sigmoidal, no puramente logarítmico. No habla nada de espacios de color, de alto rango dinámico ni de mapeado de tono. Dice algo de que la respuesta de la cámara es "la raíz cuadrada" porque se han puesto de acuerdo, lo cual también es mentira, dado que cada óptica y cada sensor tiene su propia curva característica de respuesta.

Es la primera noticia que voto errónea en meneame, sinceramente creo que esto nunca debería de haber llegado a portada.

D

#16 Es interesante este meneo, si iban a utilizar simplificaciones (algo que no me parece mal) deberían haberlo explicado.

ljl

#16 Traducir roughly logarithmic como puramente logarítmico como has hecho tú es, en cambio, muy preciso roll

Acido

#19 El artículo de Microsiervos dice:
"la respuesta del ojo humano es logarítmica."

Recapitulemos:
* Respuesta del ojo real: una curva especial que podemos denominar "de tipo sigmoideo"
* Minute Physics simplifica para que lo entienda más gente diciendo "roughly logarithmic" (es decir, "a grandes rangos, logarítmica" o "aproximadamente logarítmica")
* Microsiervos "simplifica" aún más (o traduce mal) y dice que "es logarítmica"
* El meneante #16 enfatiza y dice "puramente logarítmica"

Lo más cachondo es que el propio vídeo que dice que es "más o menos logarítmica" luego habla de raíces cuadradas ... que es otra curva diferente a la logarítmica. Y eso que dicha raíz cuadrada tampoco sería el cálculo correcto... aunque sea mejor aproximación que lo que se hace normalmente.

Acido

#16

"Dice algo de que la respuesta de la cámara es "la raíz cuadrada" porque se han puesto de acuerdo, lo cual también es mentira, dado que cada óptica y cada sensor tiene su propia curva característica de respuesta."


Creo que no es mentira como tú dices...
o al menos creo que decir eso se aproxima mucho muchísimo a la realidad.

Voy a explicar por qué:

Los parámetros básicos que se usan para hacer una foto son la cifra de apertura y el tiempo de exposición (T)... y, aparte, la sensibilidad del sensor que viene determinada por el número ISO. También está la longitud focal y el tamaño del sensor aunque creo que podemos prescindir de ellos para lo que estamos hablando ahora.
Podrá haber más o menos aberraciones: cromáticas, distorsiones o esféricas... pero en cuanto a cantidad de luz, que es de lo que estamos hablando, no habría una gran diferencia de un objetivo a otro.
Es decir, dada una escena con la misma cantidad de luz, si usas una misma apertura y un mismo tiempo de exposición y un sensor con la misma sensibilidad vas a obtener básicamente la misma foto. Si esto lo llevas al mundo digital, eso significa que si fotografías una tarjeta gris con cierta iluminación y una cámara digital te da en valores RGB los valores R=50%, G=50%, B=50% entonces otra cámara digital (de otro fabricante, con otra tecnología de sensor, etc ... con otra óptica) te va a dar los mismos valores, aproximadamente (*), si tiene los mismos valores de ISO, apertura y tiempo de exposición.
(*) Cuando digo "aproximadamente" significa que si oficialmente te tendría que dar el valor 50% y te diese un valor muy lejano como 25% ó 12.5% pues sería un timo, una estafa... En lugar de 50% quizá te puede dar 49%, no se si 45% pero dentro de un margen que esté regulado y aceptado... la mitad (25%) no sería aceptable, sería un timo.

Nota: las magnitudes físicas son algo estandarizado y medible... No puedes decir algo es un teleobjetivo de 300mm f/1.0 si en realidad es un 50mm f/1.8 ... sería una estafa.

* Ópticas: su comportamiento frente a la cantidad de luz (cantidad de fotones) que pasa a través de una lente viene determinado por algo llamado apertura, la cual se "mide" con algo llamado "número f"...

Por ejemplo, tengo un objetivo cuyas "especificaciones" a grandes rasgos son 50mm f/1.4 y eso significa que con el diafragma abierto al máximo la cantidad de luz máxima que voy a tener viene determinada por el número f/1.4
Pero eso sería con el diafragma abierto al máximo, si lo cierro un poco (un paso) pasaría a f/2.0 y la cantidad de luz (de fotones) por unidad de tiempo sería la mitad porque está más cerrado, así que para tener una foto con la misma cantidad total de fotones deberé emplear el doble de tiempo de exposición (por ejemplo, en lugar de 1/100 que sería 1 centésima de segundo usaría 1/50 que son 2 centésimas de segundo).

Nótese que la cantidad de fotones captada por una cámara sí varía de forma logarítmica: con cada "paso" se duplica o divide por dos la cantidad de luz (de fotones). En este caso podríamos decir que es "exactamente logarítmica" o "puramente logarítmica"...
log_2 (2*num_fotones) = 1 + log_2(num_fotones)
Es decir, si expresamos de forma logarítmica el número de fotones que pasan al aumentar en un paso, lo cual supone duplicar dicho número de fotones veremos que dicha cifra en escala logarítmica aumenta en 1 exactamente.
Hablo de la cantidad de fotones y no del numerito con el que se codifique. Por supuesto, esto es diferente del comportamiento del ojo humano... hablo de la cantidad de luz (fotones) que llega al sensor, el cual luego se traduce en números RGB...
Lo que capte un sensor puede variar de forma logarítmica y lo que capte el ojo quizá no...

CONCLUSIÓN:
Si el número que luego se almacena en los formatos digitales de cada foto es exactamente la raíz cuadrada pues será la raíz cuadrada (de un valor proporcional al número de fotones)... y no creo que puedas demostrar que es mentira, y menos por las razones que das sobre variaciones según objetivos y sensores.

D

#16 Estás mezclando cosas, la corrección gamma no tiene nada que ver con la óptica de la cámara ni con el sensor, se usa para aprovechar mejor el rango dinámico de la imagen. Y no es exactamente la raiz cuadrada, que sería γ=1/2, los valores tradicionales han sido de γ=1/2,2 en el mundo PC y γ=1/1,8 en el mundo Mac.

C

#27 El sensor tiene una curva específica que indica cuál es la respuesta numérica a la radiancia incidente. Para comprimir el valor resultante a un rango 0..255 y que quepa en una imagen, hay que utilizar algún operador de mapeado de tono, que por defecto suele ser una curva gamma (aunque hay mejores opciones). Pero la curva del sensor también existe y afecta al resultado.

D

#28 Ya bueno, pero de lo que hablan en el enlace es de trabajar con imágenes en sRGB, no en RAW. De hecho algunos de los ejemplos que salen son imágenes sintéticas.

noexisto

En mi puńetera vida he usado el Photoshop o el Gimp para algo más que no haga la aplicacion gratuita del móvil (y no mas de 5 segundos: tic, tic y zas) Espero que no sea contagioso lol cd

Acido

#14 Pero parece ser que lo que haces en no más de 5 segundos se está haciendo mal...

Vale, de acuerdo que el error no será algo trascendental que ponga en peligro vidas humanas, vamos que te la suda, lo comprendo... pero si se puede hacer bien, algo más agradable de ver ¿por qué seguir haciéndolo mal?

m

#23: Muchos programas que mejoran "mágicamente" las imágenes lo que hacen es subir y forzar el contraste.

A simple vista parece una foto más nítida, pero si te fijas matan las zonas claras y las oscuras, y la foto pierde detalles.

Pero claro, como es un sólo toque y listo... pues nada, la gente se lo traga.

m

Os confirmo que la nueva versión de GIMP (2.9 inestable) si puede mezclar los colores como dicen.

La probé el otro día y es relativamente estable, así que si la necesitáis os puede funcionar más o menos bien.

D

Sería un error ya que entonces abría que hacer un modelo de color para cada persona y un photoshop para cada persona.

Acido

#10 ¿eing? ¿cómo dices?
¿por qué dices eso?

D

No sabía nada de esto, aunque aparentemente la diferencia parece que se asemeja a los conceptos de sustracción y adición de colores. El efecto de difuminado lineal se asemeja a lo que es difuminar pinturas, el efecto no lineal se asemeja a mezclar luces.

habitante

Vaya artículo insulso, esto y nada es nada.