reconstrução de realce
Tenta reconstruir as informações de cor para pixels que foram cortados em um ou mais canais RGB.
🔗recorte
O recorte ocorre quando a quantidade de luz capturada excede a capacidade do sensor de uma câmera para registrar essa luz (saturação do local da foto) ou a capacidade do arquivo RAW para armazená-la (recorte digital). Depois que um pixel é cortado, não podemos mais saber o brilho preciso desse pixel – apenas se é igual ou maior ao valor máximo que o pixel pode armazenar.
Idealmente, o ponto de saturação do local da foto seria o mesmo que o valor no qual ocorre o recorte digital (para aproveitar ao máximo o alcance dinâmico da câmera), mas esses valores geralmente diferem entre as câmeras. O Darktable usa o “ponto branco” de uma câmera para determinar se um determinado canal é cortado ou não. Se o ponto branco for definido incorretamente para uma determinada câmera, isso pode levar a que pixels válidos sejam cortados e impactar a efetividade deste módulo.
Quando uma câmera captura luz (usando um sensor Bayer normal), cada pixel representa uma única cor (R,G,B), que é então interpolada pelo módulo de interpolação cromática para calcular a cor dos pixels vizinhos. O resultado geralmente será pixels (na imagem interpolada) que são cortados em alguns canais (R,G,B), mas não em outros.
Se esses pixels forem deixados parcialmente cortados, isso pode resultar na exibição de cores irrealistas na imagem. Essas cores incorretas podem ser ainda mais distorcidas pelo módulo de balanço de branco, que ajusta as proporções dos canais R, G e B para contabilizar a cor geral da cena. Por exemplo, onde apenas o canal G é cortado (e R e B estão próximos do corte), o módulo de balanço de branco pode fazer com que os canais R e B sejam ajustados acima do ponto de corte do canal G, levando a realces em rosa que, de outra forma, teriam sido branco.
O método grosseiro para resolver isso é recortar os canais R e B no ponto de recorte do canal G (o método de reconstrução “recortar realces”), mas isso pode resultar na perda de dados de pixel válidos que podem ser úteis na reconstrução de realces , e também pode causar outros artefatos e mudanças de matiz.
🔗métodos de reconstrução de realce
Vários métodos de reconstrução de realce são fornecidos neste módulo. Todos esses métodos usam canais não recortados e/ou pixels adjacentes para reconstruir os dados ausentes.
- restauração de oposta (padrão)
- Restaura os pixels cortados usando uma média de pixels não cortados adjacentes para estimar a cor correta. Isso funciona bem para a maioria das imagens, mas pode falhar quando as áreas cortadas são adjacentes a áreas de cores diferentes.
- baseado em segmentação
- Um algoritmo mais sofisticado que usa pixels não cortados adjacentes para estimar a cor correta, tratando cada área cortada separadamente (como um segmento individual). A cor de cada segmento recortado é estimada analisando as proporções de cores dos pixels adjacentes. Pixels que são muito escuros ou parecem ser uma borda são rejeitados pelo algoritmo. Se todos os pixels circundantes forem rejeitados, esse segmento será reconstruído usando o método “restauração de oposta” (acima). Os segmentos que estão próximos geralmente são partes do mesmo objeto e, portanto, podem ser tratados como se fossem um único segmento.
-
A reconstrução baseada em segmentação é capaz de reconstruir grandes áreas onde todos os canais são recortados, examinando os gradientes circundantes. No entanto, você deve pensar nesse método mais como uma forma de “disfarçar” áreas cortadas com algo plausível, em vez de uma forma de repará-las “magicamente”.
- laplaciano guiado
- Usa um algoritmo (derivado do módulo difusão ou nitidez) para replicar detalhes de canais válidos em canais recortados e propagar gradientes de cores de regiões vizinhas válidas em regiões recortadas. Este é um método computacionalmente intensivo projetado para máxima suavidade e mistura perfeita das regiões reconstruídas em sua vizinhança, e é projetado principalmente para reconstruir holofotes e reflexões especulares. Este modo está disponível apenas para sensores Bayer.
- recortar realces
- Fixa todos os pixels para o nível branco (isto é, recorta os canais de cor restantes). Este método é mais útil nos casos em que se produzem reflexos recortados em objetos naturalmente dessaturados (por exemplo, nuvens).
- reconstruir em LCh
- Analisa cada pixel com pelo menos um canal recortado e tenta corrigir o pixel recortado (no espaço de cor LCh) usando os valores dos outros pixels (3 para Bayer e 8 para X-Trans) do bloco de sensor afetado. Os realces reconstruídos seguirão sendo monocromáticos, mas mais brilhantes e com mais detalhes do que os “realces recortados”. Este método funciona muito bem com uma curva base de alto contraste, o que faz com que os realces fiquem dessaturados. Semelhante ao recortar realces, este método é uma boa opção para objetos naturalmente dessaturados.
- reconstruir cor
- Usa um algoritmo que transfere informações de cor da vizinhança não recortada para os realces recortados. Este método funciona muito bem em áreas com cores homogêneas e é especialmente útil em tons de pele com reflexos que se desvanecem suavemente. Note que este método pode produzir artefatos em forma de labirinto nos realces por trás das bordas de alto contraste, por exemplo, estruturas finas bem expostas em frente a um fundo superexposto.
Nota: Quando usar a reconstrução de realce incluída no módulo rgb fílmico, pode ser melhor evitar usar este módulo no modo corte de realces (para que o rgb fílmico tenha mais informações para trabalhar).
🔗controles do módulo
🔗controles comuns
- método
- O método usado para reconstruir os realces.
- limiar de corte
- Os pixels acima desse valor são considerados cortados.
-
Clique no ícone ao lado do controle deslizante para visualizar quais áreas da imagem são consideradas para recorte (a máscara de recorte). Se a máscara de recorte não corresponder ao aviso de superexposição raw, talvez seja necessário corrigir esse valor.
🔗modo “laplaciano guiado”
- nível de ruído
- Adicione ruído de Poisson (ruído de fóton natural, como você encontraria nas leituras do sensor) às regiões cortadas. Para imagens de alto ISO, as regiões válidas da imagem serão ruidosas, mas as áreas recortadas reconstruídas serão suaves, o que pode parecer estranho. Adicionar algum ruído na reconstrução ajuda a misturar visualmente o resultado com o restante da imagem.
- iterações
- O modo laplaciano guiado é um processo iterativo que extrapola gradientes e detalhes da vizinhança. Cada nova iteração refina a reconstrução anterior, mas adiciona mais cálculos que tornarão o módulo mais lento. O número padrão de iterações deve fornecer resultados razoáveis, mas você pode aumentá-lo se os destaques magenta não forem completamente recuperados - aumente esse parâmetro gradualmente, mas com cuidado, para gerenciar a compensação entre velocidade e qualidade.
- reconstrução de cor uniforme
- A reconstrução de cor uniforme é um truque algorítmico que pode ajudar a recuperar realces magenta em casos difíceis (grandes áreas estouradas) suavizando as proporções RGB. Ele pode ser visto como um “impulsionador de reconstrução” que pode reduzir o número de iterações necessárias para remover completamente o magenta em realces cortados. No entanto, isso também torna a reconstrução menos precisa e pode levar a bordas reconstruídas não lisas e cores não relacionadas sendo pintadas (por exemplo, céu azul ou folhas verdes misturando-se em nuvens brancas). Use esta configuração com cuidado.
- diâmetro da reconstrução
- O modo laplaciano guiado usa um algoritmo multiescala que tenta recuperar detalhes de cada escala de forma independente. O diâmetro da reconstrução é a maior escala utilizada pelo algoritmo. Grandes escalas aumentarão o consumo de memória, bem como os tempos de execução, e também podem fazer com que cores ou detalhes não relacionados sejam pintados em regiões cortadas. É aconselhável usar um diâmetro aproximadamente duas vezes maior que a maior área recortada a ser reconstruída. Também é possível que um determinado diâmetro não se adapte a todas as áreas cortadas; nesse caso, você deve usar várias instâncias em diferentes escalas e mascarar as áreas cortadas de acordo.
🔗modo “baseado em segmentação”
- limiar de corte
- Uma vez que isso controla o número de pixels que são considerados cortados, a configuração também altera o tamanho dos segmentos resultantes e a localização dos pixels adjacentes usados para a reconstrução. Para um ajuste preciso, você pode usar o módulo de exposição para garantir que nenhum realce seja cortado no histograma (ou na imagem que você vê na tela). Em seguida, aumente o limiar de corte até que os realces não sejam mais brancos e diminua lentamente novamente até que pareçam aceitáveis.
- combinar
- O raio no qual segmentos próximos são combinados e considerados como parte do mesmo segmento. Aumente (para combinar mais segmentos) quando partes diferentes do mesmo objeto forem reconstruídas incorretamente em cores diferentes. Diminuir (para separar segmentos) quando objetos diferentes forem reconstruídos incorretamente para a mesma cor. Clique no botão ao lado do controle deslizante para ver os contornos dos segmentos resultantes.
- opções (candidatos)
- Escolha se prefere escolher pixels candidatos (usados para obter dados de cores) com análise de segmentação (valores altos) ou restauração de oposta (valores baixos). Clique no botão ao lado do controle deslizante para mostrar os segmentos considerados bons candidatos.
- reconstruir
- Seleciona como reconstruir áreas que tenham todos os canais cortados. Os modos “pequenos” e “grandes” são ajustados para tamanhos de segmento menores que 25 e maiores que 100 pixels de diâmetro, respectivamente. Os modos “uniformes” tentam ignorar recursos não recortados estreitos (linhas de força, ramificações) para evitar gradientes. Finalmente, os modos “genéricos” tentam encontrar as melhores configurações para cada segmento.
🔗modos de reconstrução “laplacianos guiados” e fílmico
É importante observar que o módulo de reconstrução de realce está bem no início do pipeline de pixels – antes do perfil de cor de entrada e da adaptação cromática completa em calibração de cor (se você usar no fluxo de trabalho a adaptação cromática moderna). Um truque comum para resolver realces cortados é simplesmente dessaturá-los para branco, mas como o branco não é definido antes da adaptação cromática completa e do perfil de cor de entrada, não é possível usar esse truque aqui. Tecnicamente, ainda não há cor neste ponto do pipeline, apenas um sinal 3D arbitrário.
A abordagem do laplaciano guiado foi projetada especificamente para ser imune a discrepâncias de balanço de branco e para evitar qualquer conceito ou método relacionado à cor (portanto, não há dessaturação explícita). Ele lida apenas com gradientes (transições) no sinal e visa conectá-los de forma suave, a fim de preencher as partes que faltam. No entanto, esse processo é bastante pesado, pois se enquadra na categoria de aprendizado de máquina supervisionado (otimização baseada em gradiente por meio de curvatura multiescala), que é um sub-ramo da inteligência artificial.
A reconstrução de realce do fílmico usa um algoritmo de propagação de cores mais simples acoplado a uma opção de dessaturação que pode favorecer uma reconstrução acromática. Não só sabe sobre a cor (porque vem após o perfil de cores completo e da adaptação cromática), mas também usa uma versão simplificada e mais rápida do algoritmo usado pela abordagem do laplaciano guiado. Ou seja, esta variante não se esforçará tanto para restaurar os detalhes e favorecerá um desfoque suave.
A reconstrução fílmica é boa o suficiente para áreas cortadas muito grandes e oferece o benefício de poder degradar para branco como último recurso. Também é melhor e mais rápido pintar cores sólidas em áreas cortadas, em detrimento dos detalhes. Sua principal desvantagem é que ele não é tão seletivo na fonte das cores sendo pintadas em partes cortadas, portanto, pode pintar cores não relacionadas.
De maneira geral, recomenda-se que você use o modo de reconstrução de realces laplaciano guiado para:
-
suavizar as fronteiras de áreas recortadas,
-
recuperar realces e áreas cortadas de diâmetro abaixo de aproximadamente 256px (na resolução total do RAW),
-
remover as aberrações cromáticas, que podem ocorrer durante a interpolação cromática (o próximo módulo no pipeline) no limite entre as regiões cortadas e válidas.
Se você precisar aumentar o diâmetro de reconstrução além de 512px para obter uma recuperação completa do magenta, a melhor abordagem geralmente é limitar o diâmetro para 512px, fazer o máximo que puder com essa configuração e, em seguida, habilitar a reconstrução de realce do fílmico para terminar o trabalho. Isso dará tempos de execução mais suportáveis com um resultado muito semelhante.