Como o histograma funciona

Quando o histograma recebe uma imagem atualizada de um dos monitores, cada um desses pixels consiste em um componente vermelho, um verde e um azul. Cada um desses valores está dentro de um intervalo de 0 a 255, que são os números que você pode representar com um byte. 0 significa que o componente não está brilhando (ou seja, é preto), 255 significa que está brilhando com o máximo de intensidade possível.

O histograma é meramente estatístico: ele mostra com que frequência ocorre um componente de determinado brilho. Portanto, o que o histograma faz é, na verdade, bastante simples:

  1. Pega o primeiro pixel

  2. Observa o valor de vermelho (= x) do pixel. Aumenta a altura da barra na posição x do histograma em 1. Exemplo: se o valor de vermelho for 0, aumenta a altura da barra na posição 0 (ou seja, na extremidade esquerda) do histograma em 1. Se for 42, aumenta a barra 42 em 1. E assim por diante.

  3. Repete o passo anterior com Verde e Azul.

  4. Observa os valores R, G e B em conjunto e calcula o valor de Luma. Luma é a luminância percebida deste pixel. Veja mais abaixo como isto é calculado.

  5. Repete esses passos para todos os outros pixels da imagem.

O que o histograma mostra

O histograma mostra apenas a distribuição da luminância dos componentes selecionados — nada mais, nada menos. Além disso, ao observar os canais RGB separadamente, em vez de apenas o componente de luminância calculado, não é possível deduzir as cores da imagem. Veja estas duas imagens:

../../_images/kdenlive2308_histogram_01.webp

Histograma para uma imagem de gradiente de tons de cinza simples

../../_images/kdenlive2308_histogram_02.webp

Histograma para uma imagem de gradiente de cores simples

Exatamente o mesmo histograma. Cores totalmente diferentes. (O que você pode fazer é tentar adivinhar o tom da cor; veja abaixo.) Mas então para que serve o histograma?

Para responder a essa pergunta, o melhor é indicar este artigo do Cambridge in Colour: Understanding Camera Histograms: Tones and Contrast e a segunda parte, Camera Histograms: Luminosity & Color. Embora escrito para câmeras fotográficas digitais, o mesmo se aplica a câmeras de vídeo digitais. Ambos os artigos são fáceis de ler e entender e podem ser de interesse também para usuários experientes.

Exemplo 1: Luz de velas

../../_images/kdenlive2308_histogram_03.webp

Exemplo de histograma com uma imagem de luz de vela

Este histograma tem duas características especiais.

  • A maioria dos pixels é escura, de acordo com o componente Luma (branco). Embora não haja preto total: observe que o componente Luma mostra «min: 8». Mesmo assim, o componente azul chega a 0. Isso significa que os pixels mais escuros ainda estão ligeiramente alaranjados e não perderam toda a informação de cor.

  • Há bastante recorte. Muitos valores R estão concentrados na extremidade direita, em 255. Um pico em 255 geralmente significa que houve perda de informação porque algumas regiões estavam muito brilhantes para o sensor da câmera com as configurações de sensibilidade atuais. Isso poderia ter sido resolvido diminuindo a sensibilidade, mas aí o livro e quase tudo o mais ficariam pretos. Neste caso, as velas causam o recorte. (Não é tão ruim aqui, porque a perda de detalhes não é importante para a imagem.)

Os componentes RGB também mostram muito bem que as sombras não são cinza neutro, mas sim laranja; caso contrário, os picos de cor à esquerda teriam seu centro na mesma posição, como no histograma de gradiente acima. Não há muito o que corrigir aqui. Uma solução seria realçar as sombras com um efeito de correção de cor como um Curvas (avfilter) ou Curvas (frei0r), mas isso é uma questão de gosto e da atmosfera desejada para o filme final.

../../_images/kdenlive2308_histogram_04.gif

Histograma antes e depois da aplicação de correção de cor com o efeito Curvas (frei0r)

Exemplo 2: ABC subexposto

../../_images/kdenlive2308_histogram_05.webp

Exemplo 2 de histograma com uma imagem subexposta

Notamos imediatamente duas coisas:

  • Os picos RGB estão na mesma posição, perto do centro. A parede branca é a parte mais brilhante, portanto esses picos são da parede branca. Como não estão deslocados, o balanço de branco deve estar correto (a imagem confirma isso). Observe que o histograma não é muito preciso para o balanço de branco. Mais tarde, apresentaremos um osciloscópio muito mais preciso.

  • A imagem está muito escura. O componente mais brilhante, o vermelho, atinge apenas o valor de 170. A parede branca, na verdade, está cinza.

Monitorar a exposição correta é o ponto forte do histograma! A exposição também pode ser corrigida com Curvas (frei0r) ou Curvas (avfilter), mas, desta vez, usaremos o efeito Níveis.

../../_images/kdenlive2308_histogram_06.gif

Histograma antes e depois da aplicação do efeito Níveis para corrigir a exposição

Reduzimos o nível de branco de entrada do canal de luminância até que um dos componentes RGB atingisse 255. Reduzir ainda mais o nível de branco de entrada causaria recorte na parede e perda de informações da imagem (o que pode ser desejável em certas circunstâncias!)

Esse processo é chamado de Esticamento da gama tonal.

Opções do histograma

O histograma pode ser ajustado da seguinte forma:

  • Componentes - Eles podem ser ativados individualmente. Por exemplo, você pode querer ver apenas o componente Luma ou ocultar a exibição da Soma.

    • Y ou Luma é o histograma mais conhecido. Todas as câmeras digitais o exibem, digiKam, GIMP, etc. o reconhecem. Veja abaixo como ele é calculado.

    • Soma é basicamente uma visão geral rápida dos canais RGB individuais. Se mostrar, por exemplo, 5 como o valor mínimo, você sabe que nenhum dos componentes RGB é menor que 5.

    • R / G / B mostra o histograma para os canais individuais.

  • Sem escala (Menu de contexto) - Não redimensiona a largura do histograma (a menos que o tamanho do widget seja menor). Uma opção útil se você quiser que ele tenha 256px de largura.

  • Modo Luma (Menu de contexto) - Esta opção define como o valor Luma de um pixel é calculado. Duas opções estão disponíveis:

    • Rec. 601 usa a fórmula Y' = 0,299 R' + 0,587 G' + 0,114 B'

    • Rec. 709 usa Y' = 0,2126 R' + 0,7152 G' + 0,0722 B'

Na maioria das vezes, você vai querer usar o Rec. 709, que é o padrão mais utilizado em vídeo digital atualmente.

Resumo

O histograma é uma ótima ferramenta para correção de exposição, juntamente com as curvas e os efeitos de níveis. Ele ajuda a evitar o recorte (áreas superexpostas) e o esmagamento de pretos (o oposto) ao aplicar efeitos.

Notas

Fontes

O texto original foi enviado por Simon A. Eugster (Granjow) na segunda-feira, 30/08/2010, às 23h10, para o blog kdenlive.org, agora extinto. Para esta documentação, ele foi extraído do web.archive.org, atualizado e adaptado para corresponder ao estilo geral.