¿Cómo representar correctamente el espectro visible con una intensidad uniforme?

8

Estoy tratando de obtener la representación correcta del espectro visible para representar en la pantalla. Mi progreso actual es con el uso de las funciones de coincidencia de color del observador estándar CIE 1931 aproximadas analíticamente por las ecuaciones dadas en este documento . La imagen actual es así:

imagen actual que podría generar

Aquí el fondo no es idealmente negro para que sea posible introducir las contribuciones negativas de las funciones de coincidencia de color:

funciones de coincidencia de color

Pero el problema es que la imagen parece tener una caída de intensidad en algún lugar alrededor de 490 nm. Supongo que esto está relacionado con la suma de las tres funciones que tienen un mínimo allí. Vea la suma trazada contra la longitud de onda:

suma de tres funciones de coincidencia de color

Entonces mi pregunta es ahora: ¿cómo arreglo la intensidad de la imagen? ¿Existe algún estándar para tener en cuenta la sensibilidad espectral al convertir la longitud de onda a la representación RGB / XYZ?

Ruslan
fuente
Aquí encontré información sobre esta pregunta
Michael Weizenfeld,
Echa un vistazo a este hilo, específicamente Greg Ward responde más tarde en las publicaciones. Creo que está relacionado con tu pregunta. radiance-online.org:447/pipermail/radiance-general/2015-June/…
Ali
@ali, ¿quieres decir que está relacionado con mi tonta adición de valores RGB no ponderados? Ya he encontrado este error y lo he reflejado en mi respuesta.
Ruslan

Respuestas:

3

Supongo que esto está relacionado con la suma de las tres funciones que tienen un mínimo allí. Ver la suma trazada contra la longitud de onda

En realidad, esta es una forma incorrecta de sumar estas funciones: el modelo sRGB especifica que para obtener luminosidad uno debe pesar los componentes RGB con los pesos apropiados. Entonces, la luminosidad, como era de esperar, será igual al componente Y de la representación XYZ.

El problema es que la imagen parece tener una caída de intensidad en algún lugar alrededor de 490 nm

De hecho, puedo ver la caída no solo cerca de 490 nm, sino también una más pequeña cerca de 570 nm.

De todos modos, creo que he encontrado la razón de esto. En primer lugar, grafiquemos los colores desaturados utilizados en la representación en el diagrama de cromaticidad:

diagrama de cromaticidad con el espectro desaturado dentro

El triángulo punteado es la gama sRGB, y la cúspide formada por las dos líneas inferiores de la curva verde corresponde al punto blanco (gris) D65. Observe que hay tres "protuberancias" lejos del punto blanco, correspondientes a violeta, verde azulado y rojo. O, que hay una gran caída en la saturación en la dirección de 490 nm y una disminución moderada en la dirección de alrededor de 570 nm. Caractericemos esto gráficamente, trazando la norma de diferencia de los puntos renderizados desde el punto blanco:

trama de una medida de saturación

Esto es exactamente lo que percibo visualmente en la imagen en términos de saturación y, por lo tanto, se combina con el fondo.

De dónde viene esta extraña forma, te preguntarás. Y la respuesta es, desde el lugar espectral en el espacio completo XYZ. Vea la siguiente figura: la curva azul es el lugar espectral y la naranja es su proyección en un plano normal al vector {1,1,1}.

lugar espectral en el espacio XYZ

Entonces, la forma que obtuvimos en el diagrama de cromaticidad es algo así como un despliegue plano del locus espectral.

En cuanto al realismo de esta representación, estoy razonablemente seguro de que si intentamos proyectar el espectro real sobre una superficie gris no fluorescente, también veremos estas dos inmersiones "extrañas". Y se volverán menos notables a medida que aumente el brillo del espectro en relación con el brillo de la superficie.

Ruslan
fuente