Gama e Linear¶
Agora, a situação que falamos na teoria é o que seria chamado de “linear”. Cada passo de brilho tem o mesmo valor. Os nossos olhos não têm uma percepção linear. Em vez disso, é para nós mais fácil distinguir entre cinzentos mais escuros do que entre os mais claros.
Dado que os humanos são os utilizadores dos computadores, fez-se com que os computadores dessem mais espaço aos valores escuros no sistema de coordenadas da imagem. Chamamos a isto “codificação do gama”, porque está a aplicar uma função-gama ao TRC ou função de transferência da imagem. O TRC neste caso significa Tone Response Curve (Curva de Resposta das Tonalidades ou Curva de Reprodução das Tonalidades), que indica ao seu computador ou impressora quanta cor corresponde a um dado valor.
A seguinte tabela mostra uqe existe bastante espaço usado pelos valores mais claros num espaço linear, em comparação com o TRC predefinido do sRGB dos nossos computadores recentes e e nos outros TRC’s disponíveis com os nossos perfis entregues:
Se olhar para os TRC’s da Rec. 709, poderá ver que existe um grande salto entre os tons mais escuros e os mais claros, enquanto que se olharmos para o TRC Lab L* ou para o do sRGB, aí estarão espaçados de forma mais uniforme. Isto deve-se à sensibilidade dos nossos olhos aos valores mais escuros. Isto também significa que se não tiver profundidade de cores suficiente, uma imagem num espaço linear parecerá que tem algumas bandas feias. É por isso que, quando criamos imagens para ver num ecrã, iremos sempre usar TRC’s do tipo do LAB L*, sRGB ou Gamma 2.2 a usar na codificação dos TRC’s.
Contudo, esta modificação para dar mais espaço aos valores mais escuros gera de facto contas matemáticas com cores mais estranhas quando se misturam as cores.
Podemos ver isto com a seguinte experiência:
Círculos coloridos semi-borrados. Num ambiente com correcção do gama, isto cria um contorno preto estranho. Num ambiente linear, gera uma graduação correcta.
Isto também se aplica no pincel de manchas a cores do Krita:
O que se passa nos bastidores¶
Imagine que desejamos misturar o vermelho com verde.
Em primeiro lugar, iremos precisar das coordenadas de cores do vermelho e do verde no nosso espaço de cores. Como tal, isso seria…
Cor |
Vermelho |
Verde |
Azul |
---|---|---|---|
Vermelho |
1,0 |
0,0 |
0,0 |
Verde |
0,0 |
1,0 |
0,0 |
Depois iremos misturar essas coordenadas com três misturas:
Vermelho |
Mistura1 |
Mistura2 |
Mistura3 |
Verde |
|
---|---|---|---|---|---|
Vermelho |
1,0 |
0,75 |
0,5 |
0,25 |
0,0 |
Verde |
0,0 |
0,25 |
0,5 |
0,75 |
1,0 |
Azul |
0,0 |
0,0 |
0,0 |
0,0 |
0,0 |
Mas para descobrir como ficam essas cores no ecrã, são colocados primeiro os valores individuais no TRC do espaço de cores com que trabalhamos:
Depois preenchemos os valores no local correcto. Compare estes valores com os da tabela de misturas acima!
E é por isto que as misturas de cores são mais claras e suaves num espaço linear. O espaço linear é fisicamente mais correcto, mas o sRGB é mais eficiente em termos de espaço, e é por isso que tantas imagens têm um TRC sRGB codificado nelas. No caso de isto ainda não fazer sentido: o sRGB gera valores bastante mais escuros que o espaço linear para as mesmas coordenadas.
Como tal, diferentes TRC’s geram diferentes misturas entre cores. No seguinte exemplo, cada um dos conjuntos de gradientes é, respectivamente uma mistura com TRC linear, uma mistura com o TRC do sRGB e uma mistura com o TRC do LAB L*.
Como tal, poderá perguntar: como é que assinalo esta opção? Está algures na configuração? A resposta é que temos diversos perfis ICC que podem ser usados para este tipo de trabalho:
scRGB (linear)
Todos os perfis “elle” que terminam em “g10”, como o sRGB-elle-v2-g10.icc.
De facto, em todos os perfis “elle”, o último número indica o gama. O 1,0 é o linear, os valores superiores têm correcções de gama e o “srgbtrc” é uma correcção especial do gama para o perfil sRGB original.
Se usar o navegador de espaços de cores, poderá definir o TRC a partir do “gama estimado” (se for igual a 1,0, é linear), ou do elemento do TRC no Krita 3.0, que se parece exactamente com os gráficos das curvas acima.
Mesmo se não pintar muito, mas se criar por exemplo texturas para jogos ou cenários, o uso de um espaço linear é bastante benéfico e irá acelerar um pouco o desenho dos mesmos, já que não terá de converter por si só as imagens.
A desvantagem óbvia do espaço linear é que o branco parece muito menos forte quando o misturar com o preto, porque num espaço linear, os cinzentos claros ocupam mais espaço. Por fim, embora o espaço linear seja fisicamente correcto e seja fácil de trabalhar com ele quando lidar com os sistemas de desenho de jogos e desenho artístico, o Krita é uma ferramenta e ninguém o julgará por preferir a mistura mais escura do TRC do sRGB.