As conversas sobre RGB linear devem ser evitadas, pois não informam nada sobre as intrínsecas do espaço de cores RGB, ou seja, funções de transferência de cores primárias, de ponto branco e de componente. Alguns anos atrás, assumindo que o sRGB era mediano, mas hoje em dia com o DCI-P3 e o BT.2020 sendo muito comuns, deve ser descartado.
A gama ideal para renderização é a que minimizará erros em relação a uma referência do mundo real ou, mais convenientemente, uma renderização espectral de verdade no solo. A primeira conclusão desta frase é que os vários espaços de cores RGB não são equivalentes e não produzirão resultados semelhantes.
Pode-se pensar que a execução de duas renderizações com as mesmas cores base, mas uma onde elas são codificadas com sRGB / BT.709 e a outra onde elas são codificadas com DCI-P3 e depois converter as duas imagens resultantes, por exemplo, ACES2065-1 produzir as mesmas imagens, mas não é o caso. Algumas operações matemáticas, devido à natureza da álgebra e das matrizes lineares, dependem das primárias de espaço de cores RGB especificadas, ou seja, com base nos espaços de cores. As mesmas operações executadas em diferentes espaços de cores RGB produzirão diferentes valores de tristímulos, uma vez convertidos novamente no espaço de cores CIE XYZ. Por exemplo, operações de multiplicação, divisão e potência são primárias do espaço de cores RGB dependentes, enquanto adição e subtração não são.
Esta imagem ilustra o efeito de multiplicar várias cores por si mesmas em diferentes espaços de cores RGB: as cores resultantes são diferentes. As várias amostras são geradas da seguinte forma: 3 valores aleatórios do espaço de cor do sRGB são selecionados e convertidos nos três espaços de cor RGB estudados, são exponenciados, convertidos novamente em espaço de cor do sRGB, plotados no diagrama de cromaticidade CIE 1931 à esquerda e exibidos como amostras no certo.
Testes e pesquisas realizados por Ward e Eydelberg-Vileshin (2002) , Langlands e Mansencal (2014) e Mansencal (2014) mostraram que as gamas com primárias mais próximas do locus espectral, ou seja, primárias espectralmente nítidas, tendem a minimizar os erros em comparação com o solo espectral a verdade rende.
Aqui está uma imagem que renderizei recentemente com a Mitsuba para re-validar nossas descobertas com Anders:
Essas são renderizações da mesma cena usando primárias BT.709 (primeira linha), 47 caixas espectrais (segunda linha), primárias BT.2020 (terceira linha), menos espectrais BT.709 primárias processa resíduos (quarta linha), espectral menos BT .2020 primárias processam resíduos (quinta linha). A última linha mostra imagens compostas montadas com três faixas verticais, respectivamente, das primárias BT.709, primaria espectral e BT.2020. A iluminação direta tende a corresponder entre as renderizações. Áreas que mostram o efeito de múltiplas oscilações de luz, ou seja, o teto, nas renderizações primárias BT.709 e BT.2020 tendem a exibir saturação aumentada, especialmente nas primárias BT.709, que produzem ou apresentam leve perda de energia, especialmente na BT .2020 render. Excluindo valores discrepantes, por exemplo, a fonte de luz visível, o RMSE com a renderização espectral são 0,0083e 0,0116 para, respectivamente, as primárias BT.2020 e BT.709 primárias.
Agora, isso não significa que eles sempre terão um desempenho melhor, e é possível produzir exemplos que exibirão um viés em relação ao BT.709 / sRGB. O principal argumento é que as renderizações RGB não podem corresponder às renderizações espectrais e as gamas amplas e nítidas tendem a ter um desempenho melhor. Quanto à escolha de um espaço de cores de renderização, eu escolheria um com uma ampla gama que engloba o Gamut do Pointer e o DCI-P3, BT.2020 ou ACEScg são excelentes candidatos para isso.