Por que posso ajustar o balanço de branco de um arquivo RAW, mas não de um arquivo JPEG?

30

Recentemente, comecei a configurar minha DSLR para salvar arquivos RAW e a usar o Adobe Lightroom para processá-los. No entanto, ainda uso muito o meu pequeno argumento e fotografo muito a câmera, que não tem uma opção para salvar arquivos RAW. Também notei que na sala de luz as opções de balanceamento de branco são diferentes entre arquivos RAW e arquivos JPEG. Nos arquivos RAW, você tem a opção de escolher entre várias configurações de balanço de branco (fluorescente, halogênio, automático etc.), enquanto no JPEG não. Por que é isso?

Eric
fonte

Respostas:

13

A resposta rápida e curta:

Todas as imagens começam como arquivos RAW que devem ter o equilíbrio de cores aplicado a elas.

Para imagens JPEG, essa transformação é feita na câmera usando as configurações de balanço de branco da câmera. Como mencionado acima, o Lightroom não possui informações suficientes para desfazer essa transformação.

Os arquivos RAW salvos não têm transformações aplicadas pela câmera, permitindo que você, fotógrafo, decida posteriormente qual transformação de balanço de branco você deseja aplicar.

labnut
fonte
26

Vamos considerar a imagem capturada pelo sensor (RAW) como calibrada e neutra.

A equação é a seguinte para gerar um JPEG com balanceamento de cores:

JPEG = RAW * T

onde T é o color balance transformation

Normalmente, para aplicar um balanço de cores diferente a um JPEG, você precisará aplicar a transformação inversa à medida que foi capturada no JPEG (para restaurar a imagem neutra)

NEUTRAL = JPEG * 1/T

aplique a nova transformação de cores

NEW_JPEG = NEUTRAL * T2

Infelizmente, a imagem JPEG (pelo menos as geradas pela minha Nikon D50) não inclui a configuração de temperatura da imagem como fotografada. Portanto, significa que o T da equação é desconhecido pelo Lightroom quando você possui apenas a imagem JPEG. Portanto, não pode aplicar a transformação inversa para restaurar uma imagem neutra.

Em vez disso, usa diferentes transformações genéricas para transformar o equilíbrio de cores.

decasteljau
fonte
1
Nunca pensei em ver uma resposta aqui usando matemática, mas é assim!
T3mujin
4
Nós gostamos de matemática aqui. :)
jrista
12

Ótimas respostas técnicas até agora. Aqui está uma analogia simples que pode não estar exatamente correta, mas de qualquer maneira:

Um arquivo RAW é como um filme negativo. Você pode trabalhar com ele em uma câmara escura (Lightroom) e imprimi-lo (JPG). Um JPG é como uma impressão. Depois de impresso, não há muito o que fazer.

CSharpRocks
fonte
Simples e conciso!
T3mujin
1
Exceto que um filme possui um perfil específico em relação à sua sensibilidade aos vários comprimentos de onda de luz já incorporados . Não importa o quanto você faça na câmara escura, você não pode mudar esse perfil. De certa forma, o filme colorido já é desmembrado antes de ser exposto. O que você manipula na câmara escura em termos de WB é realmente muito mais parecido com o que é feito para um jpeg do que o que é feito em um arquivo RAW: Os níveis relativos de R, G e B.
Michael C
8

A resposta de Decastlejau fornece uma grande visão técnica para quem gosta de tudo que é técnico. Para os tímidos do coração quando se trata de matemática, aqui está uma resposta menos complicada. Com o RAW, você tem dados originais do sensor, que geralmente são armazenados como leituras SENSOR originais em vermelho, verde ou azul para cada pixel de um sensor digital, além de outros metadados, como detalhes da exposição, estado da câmera (equilíbrio de branco), câmera configurações e, possivelmente, uma variedade de dados adicionais.

Uma imagem não processada é essencialmente um despejo direto de dados de um sensor digital, que geralmente são pixels sensíveis à luz (photosites) vermelhos, verdes e azuis, dispostos em um filtro de cores . Como RAW são dados originais do sensor, você tem a quantidade máxima de informações disponíveis, o que geralmente inclui profundidade de bits consideravelmente maior (e faixa dinâmica) do que uma imagem salva em outro formato. Esta é a imagem "neutra" que decastlejau mencionou ... nenhum ajuste ou curva de tom foi aplicado, são dados verdadeiramente originais.

Os pixels de uma imagem RAW não são mapeados diretamente para os pixels em uma tela e, como tal, não podem ser visualizados diretamente. Para visualizar uma imagem RAW, esses dados brutos de pixel do sensor devem ser passados ​​por um algoritmo de renderização que coleta os dados brutos do sensor e aplica vários ajustes e atenuações, como uma curva de tom, ajustes de balanço de branco, ajustes de exposição etc. para gerar pixels da tela que contêm elementos vermelho, verde e azul. Esse algoritmo deve ser aplicado sempre que qualquer ajuste for feito em uma imagem RAW para visualizar a imagem final em uma tela. Ao trabalhar com o RAW dessa maneira, você mantém os dados originais do sensor em um estado puro, permitindo alterar radicalmente qualquer um dos ajustes desse "pipeline de processamento" a qualquer momento e ver os resultados ideais na imagem renderizada na tela. O processamento mais algorítmico dos dados RAW resulta em PERDA de informações na imagem final em um grau ou outro. A aplicação de uma curva de tons, por exemplo, geralmente resulta em melhor contraste, mas uma perda na faixa dinâmica.

Uma imagem JPEG, em contraste com uma imagem RAW, é aquela que já foi processada por um algoritmo que aplica uma curva de tons, configurações de balanço de branco etc. para criar uma imagem final. Como um JPEG já está processado, os dados originais do sensor são perdidos. O mesmo se aplicaria se sua câmera salvasse um arquivo TIFF em vez de um JPEG ... processando os dados originais do sensor "congele" até o estado final. As imagens processadas não são completamente desprovidas de espaço livre e ainda é possível fazer ajustes. Quanto maior a profundidade de bits e maior a gama de opções que você economiza, mais espaço terá, no entanto, você nunca terá a mesma quantidade de flexibilidade que teria se estivesse usando o RAW.

Um exemplo do limite de espaço limitado é na área de ajustes do balanço de branco. Agora, cada pixel em um JPEG contém informações sobre as cores vermelho, verde e azul. Isso limita a quantidade de correção do balanço de branco que você pode obter sem encontrar projeções de cores estranhas ou divisão de cores, especialmente com ajustes maiores. É possível levar esses ajustes mais longe com o RAW, pois é possível misturar novamente cada pixel na imagem final a partir dos dados originais do sensor vermelho, verde e azul, permitindo eliminar as projeções de cores.

jrista
fonte
6

Na verdade, você pode ajustar o balanço de branco a partir de uma imagem jpg. Somente os resultados serão muito inferiores aos que você pode obter de um arquivo RAW. Como discutido muito melhor em outras respostas, os arquivos jpg contêm muito menos dados que os RAW, portanto, não existe margem para alterar o equilíbrio de cores. O mesmo vale para as configurações de exposição e contraste.

Dito isso, é possível alterar de qualquer maneira o balanço de branco das imagens jpg usando outros programas, mas no Lightroom eles decidiram que os maus resultados que você pode gerenciar a partir de arquivos jpg não serão bons o suficiente para o usuário típico do Lightroom.

Observe também que isso não tem nada a ver com técnicas de compactação de jpg, apenas esse formato de arquivo jpg armazena menos informações.

uberto
fonte
Não é apenas que exista menos informação, mas que a informação perdida é crucial para esse ajuste. Para ajustar o wb em um JPEG, você precisa ter uma idéia do ajuste já aplicado a ele (ou então adivinhe, ou adivinhe o computador).
mattdm
1
Na verdade, do ponto de vista do algoritmo, é apenas uma questão de ponderar diferentemente os 3 canais RGB. Também de um ponto de vista prático, você só precisa encontrar um pixel branco real (ou cinza neutro) na imagem para wb.
Uberto
4

Talvez essa analogia ajude a esclarecer o motivo pelo qual o balanceamento de branco RAW é superior ao balanceamento de branco JPEG.

Imagine que você tem uma imagem em preto e branco. É bastante claro que não há uma maneira automatizada de colocar as cores de volta nessa imagem. Como existem muitos tons diferentes de cor que são mapeados para um determinado tom de cinza, não há como saber quais eram as cores originais. Você pode adivinhar (como foi feito com a coloração de filmes antigos), mas nunca pode ter certeza.

Agora imagine uma imagem cujo balanço de branco estava tão estragado que tudo fica azul. Essa situação é semelhante à da imagem em preto e branco. Você perdeu informações sobre os vermelhos e os verdes que estavam originalmente na imagem. Um programa de computador que remove a tonalidade azul para que não haja tonalidade geral não devolve a imagem original, mas sim uma foto em preto e branco.

Obviamente, a maioria dos balanços de branco não é tão ruim quanto nos exemplos acima, e o balanceamento de branco JPEG funciona bem. Porém, você sempre terá uma conversão mais precisa quando tiver as informações originais da foto, como em RAW.

acj
fonte
2

A resposta de decasteljau é excelente no funcionamento técnico. Deixe-me adicionar um pouco de cotão, no entanto:

Um arquivo RAW possui dados lineares do sensor - mais fótons atingem cada photosite igual a uma leitura diretamente mais alta. E isso é dividido igualmente em vermelho, verde e azul. (Bem, tecnicamente, o dobro de receptores verdes na maioria dos sensores. Mas isso é um detalhe de implementação.)

Não é assim que o sistema de visão humana - o olho e o cérebro - percebe as coisas.

Primeiro, percebemos o brilho de uma maneira não linear, e é por isso que somos capazes de lidar com o sol brilhante e as sombras escuras, tudo na mesma cena sem parecer estranho. É por isso que as curvas são aplicadas a uma imagem RAW para criar uma imagem de saída final atraente. Você poderia pular isso e gerar um JPEG linear, mas pareceria plano (sem trocadilhos) e estranho.

Segundo, percebemos a cor com base no senso inerente de como as coisas devem ser coloridas, e é por isso que elas nos parecem normais sob luzes frias e quentes e, mesmo depois de um pequeno ajuste, sob uma luz estranhamente tingida. Se a luz é "realmente" muito azul, tendemos a não vê-la - mas se você tirar uma fotografia, mais fotos azuis serão gravadas. Um arquivo de imagem não sabe nada sobre como as coisas "devem" parecer e precisa ter uma correção de balanço de branco aplicada para fazer a imagem corresponder às nossas expectativas mentais.

Ao converter de um arquivo RAW, o conversor está funcionando a partir de um ponto de partida conhecido. Ele possui um perfil detalhado para o modelo da sua câmera (ou até mesmo o que você gerou), ou pelo menos uma matriz de cores básica que corresponde à saída geral da câmera. Portanto, pode ser a partir desse estado para aplicar vários ajustes - este é o "RAW * T" na resposta do decasteljau e, se você mudar de idéia, como geralmente o arquivo RAW original é deixado sem modificação, ele pode começar novamente a partir dessa linha de base e aplique uma transformação diferente.

Uma vez que você tenha um arquivo JPEG, essa linha de base será perdida e não se sabe desde o início os ajustes.

mattdm
fonte
1

As curvas de tom e a saturação dificultam isso porque:

(1) ocorrem após o balanço de brancos

(2) são não lineares, o que significa que a ordem das operações é importante

(3) eles dependem do modelo da câmera e das configurações do Picture Control

1 e 2 significam que esse processamento deve ser restaurado antes que o balanço de branco possa ser ajustado. 3 significa que é impossível desistir com precisão.

Existe uma transformação que pode corrigir o balanço de brancos sem recuar nestas outras etapas, mas essa transformação é não linear e diferente para cada câmera. Um usuário paciente pode encontrá-lo manualmente usando um controle de Curvas. Para fazer isso automaticamente, seria necessária engenharia reversa específica da câmera.

Sarja
fonte
Eu acho que você conseguiu a melhor resposta.
skyde