Certamente muitos de nós entendem bem que o efeito de uma filtragem passa-baixo pode ser neutralizado aplicando uma filtragem passa-alto complementar a uma cópia da mesma imagem e adicionando pixel por pixel os valores RGB das duas versões filtradas.
Para limpar a imagem de retrato de alguém, aplicamos o Gaussian Blur à imagem como uma forma especial de filtragem passa-baixo e combinamos com uma versão filtrada passa-alto. Se excluirmos pontos afiados e perturbadores da versão filtrada de passa-alta, obteremos um original perfeitamente nítido, apenas sem esses pontos porque a filtragem de passa-baixo os turvou invisível e eles não foram restaurados porque foram excluídos da versão filtrada de passa-alta complementar.
O método é bem conhecido: Faça uma cópia com para ex. Desfoque Gaussiano de 10 pixels como filtro passa-baixo e outra cópia com filtro passa-alto de 10 px com contraste reduzido de 50% e usa luz Linear no modo de mesclagem para combinar as versões filtradas. A redução do contraste deve ser feita no modo legado ou com curvas em torno de 128 para evitar a compressão não linear.
Infelizmente, na documentação da Adobe, não há informações numéricas quantitativas sobre por que essa separação de frequência funciona. O modo de mesclagem e a matemática da filtragem são explicados apenas qualitativamente. Isso deixa muito espaço para suposições, que resultaram em qualquer coisa, exceto explicações claras pelos usuários.
O vídeo de ensino problemático não é uma exceção. Ele afirma que a filtragem passa alta do Photoshop é uma porcaria, pula as bordas do histograma. O significado disso não é claro. A filtragem da HP parece funcionar perfeitamente, a Adobe fez apenas algumas soluções alternativas devido à falta de números RGB negativos.
Fiz alguns testes para descobrir como o filtro HP do Photoshop realmente funciona, como é combinado com o Gaussian Blur e o que faz o modo de mesclagem Linear Light.
Minha primeira suposição é que a Adobe não usa nenhum filtro HP comum baseado em Fast Four Transform Transform. Acredito que a filtragem é calculada a partir de Gaussian Blur, que não é um trabalho de matemática especialmente pesado. O desfoque é apenas uma média ponderada de pixels adjacentes, muito mais simples que a FFT. Isso explica também como o desfoque gaussiano e o filtro HP podem ser complementos tão perfeitos.
Intuitivamente, pode-se ver facilmente que a versão filtrada passa-alta de uma imagem pode ser feita subtraindo da imagem original uma versão borrada da mesma imagem.
Claro que isso se baseia no fato de que o desfoque gaussiano é uma forma de filtragem passa-baixo. Está longe do ideal, não há frequência de corte acentuada, a atenuação dos componentes de alta frequência cresce lentamente à medida que a frequência aumenta.
Para ilustrar a formação de filtragem da HP, podemos escrever a seguinte equação:
H = RB
R é o conjunto de valores RGB originais na imagem, B é o conjunto de valores na imagem borrada e H é o resultado da subtração de pixel e canal, os valores na imagem filtrada com passa alta. No Photoshop, imagens profundas de 8 bits normais não podem ter outros números além de 0 ... 255, não há números negativos. A equação deve ser corrigida escalando e inserindo um deslocamento.
A equação fixa: H = 0,5 (RB) +128
O zero é alterado para 128 e os números permanecem no intervalo de 0 a 255 com a seguinte equação, independentemente dos valores RGB originais e desfocados.
Em grandes áreas uniformemente coloridas, isso produz 128 a todos os números RGB, a cor é cinza médio. Em bordas nítidas entre 255 e 0, isso pode gerar mais, mas o resultado não é o extremo 0 ou 255 porque o desfoque é uma média ponderada de pixels adjacentes.
Podemos produzir facilmente o filtro passa-alta caseiro 0,5 (BR) +128 com camadas de ajuste e modo de mistura ADD ou SUBTRACT. O último é trivial, mas o ADD também funciona com diferentes curvas de ajuste. Também é trivial quando reordenamos os termos da fórmula:
H = 0,5 (RB) +128 = 0,5R + (128-0,5B).
Vamos testá-lo e comparar com o próprio filtro passa-alto do Photoshop:
Esta é uma captura de tela com zoom alto da imagem borrada de 5 px. O original está na camada inferior e contém somente preto e branco completo com borda horizontal nítida no meio.
Nossa filtragem caseira HP com ADD no modo de mesclagem e camadas de ajuste é a seguinte:
As camadas de ajuste de curvas têm "somente a próxima camada" - ON. O superior deles faz 128-0,5B e o inferior faz 0,5R. O modo de mesclagem da camada desfocada é ADD.
Os valores RGB ao redor da borda são 187 e 69 mais longe, os valores decaem para o esperado 128.
A próxima imagem é a mesma, mas filtrada com o filtro passa-alto do Photoshop:
Há uma diferença clara: o filtro do PS faz mais contraste, os valores RGB ao redor da borda são 246 e 10. A diferença é 236. Nosso filtro passa-alta caseiro gerou apenas 187-69 = 118. Isso é 236/2.
Minha interpretação é que a Adobe duplica o contraste. Isso é feito omitindo a multiplicação por 0,5 nos cálculos. Faz sentido porque significa maior resolução efetiva. É uma melhor utilização dos 256 valores RGB disponíveis. O aumento não causa cortes, porque no filtro caseiro da HP a diferença máxima nas bordas nítidas filtradas é sempre menor ou igual a 128.
Não podemos omitir a multiplicação em 0,5 para dobrar o contraste, porque não temos espaço interno para os cálculos. Todo resultado intermediário e final deve caber no intervalo de 0 a 255 ou há um recorte.
Podemos comparar nosso próprio resultado de filtragem HP com o resultado de filtragem do Photoshop aplicando a diferença do modo de mesclagem:
No topo, há uma camada de curvas que compensa com a redução de contraste o aumento de contraste assumido de + 100% na filtragem HP do Photoshop. A cópia filtrada do original possui Diferença no modo de mesclagem.
O resultado é zero simples, como assumido. Não há diferença. Descobrimos como o filtro HP do Photoshop funciona.
A redução de contraste de 50% realizada no vídeo de ensino compensa o aumento de contraste na filtragem passa alta do PS e transforma a filtragem da mesma forma que a filtragem doméstica. A redução pode ser feita antes da filtragem, porque a filtragem e a redução de contraste são operações lineares, desde que não se use o ajuste de brilho e contraste. É linear no modo Legado, mas normalmente comprime tons escuros e brilhantes de maneira não linear para obter um efeito subjetivo mais atraente na edição de fotos. Isso também é dito pelo vídeo-palestrante.
Ainda resta a explicação quantitativa de por que o modo de mesclagem Linear Light é o caminho certo para combinar as versões filtrada desfocada e passa alta.
Intuitivamente, deseja-se recriar os valores RGB originais adicionando a versão High Pass filterd à versão desfocada. Tudo bem, mas a filtragem HP do Photoshop adicionou deslocamento de 128 a cada valor RGB filtrado na filtragem. Não podemos simplesmente usar a subtração do modo de mesclagem para remover o deslocamento, porque todos os resultados intermediários devem permanecer no intervalo de 0 a 255. Os cálculos internos do Photoshop não têm essa limitação.
Podemos explorar os modos de mesclagem com gradientes lineares de preto a branco. Aqui está o modo de mesclagem ADD.
Todos os pixels na diagonal e para baixo devem estar totalmente brancos (= 255) e o seletor de cores mostra que é verdade. A linha mais brilhante na diagonal é feita no processamento de controle de exibição. Obviamente, é uma espécie de tentativa de aprimoramento subjetivo e não encontrei uma maneira de desativá-lo.
Alterar o modo de mesclagem para Luz linear fornece uma imagem diferente. É realmente de alguma forma linear, porque podem ser vistas linhas retas causadas por gradientes lineares:
O resultado se torna o mesmo que no modo ADD, se alguém aplicar uma camada de curvas à camada superior:
O gradiente mais alto ainda possui o modo de mesclagem Luz linear. A curva (afeta apenas uma camada) multiplica tudo por 0,5 e adiciona 128 ao resultado. O resultado é o mesmo que os gradientes foram combinados com ADD sem outros ajustes. Assim, podemos escrever inversamente uma fórmula para a luz linear:
L = 2 (T-128) + G, em que T é o valor RGB na camada superior e G é o valor RGB na camada inferior.
(Devo admitir que encontrar esses 0,5 e 128 não precisava de um gênio. Eu já tinha visto que a combinação de filtros complementares funciona com luz linear. Depois de acreditar que "luz linear" faz algo linear, a única possibilidade era a função ax + b . a = 0,5 eb = 128 foram encontrados por tentativa e erro)
Portanto, combinar a filtragem deve funcionar com luz linear. Nossa filtragem passa-alta feita em casa deve ser utilizada "como está", sem redução de contraste, necessária para a filtragem HP do Photoshop. Vamos inserir as filtrações complementares na fórmula da luz linear:
L = 2 (T-128) + G = 2 ((0,5 (RB) +128) -128) + B = R, conforme o esperado.
O mesmo pode ser apresentado também fazendo a combinação na prática:
Eu tentei também com imagens mais complexas e funciona com elas também.
Sobre as coisas solicitadas:
O filtro passa-alto do Photoshop não suga saltando as bordas do histograma. A redução de contraste de 50% é necessária para compensar a tentativa da Adobe de utilizar melhor o intervalo de números disponível 0 ... 255
A redução da opacidade é um mal-entendido. Não é um substituto adequado para a mistura com luz linear.