O algoritmo de upsampling de preservação de detalhes no Photoshop CC é realmente incrível. Ele pode aprimorar qualquer imagem, preservando os detalhes quase em tempo real. E eu realmente me pergunto como isso é implementado.
Comecei pesquisando documentos com palavras-chave single image super resolution
. E parece que os algoritmos atuais exigem um banco de dados externo treinado para adivinhar as informações de alta frequência ausentes. E eu acredito que é realmente difícil treinar e distribuir um dicionário completo, certo? Além disso, não acho possível treinar um dicionário com pirâmide de imagens em tempo real.
Depois disso, voltei-me para a área de image upsampling
, que parece rápida o suficiente em comparação com super resolution
algoritmos, mas existem tantos algoritmos que estou totalmente perdido.
Então, alguém tem alguma sugestão ou sugestão sobre como essa ferramenta pode ser implementada? Obrigado!
Respostas:
Não há realmente nada além da interpolação cúbica com "Sharpening".
http://www.lynda.com/Photoshop-tutorials/interpolation-settings/124096/140573-4.html
Eles não atualizam seus algoritmos de interpolação há séculos.
fonte
Existem muitos algoritmos para upsampling "com reconhecimento de borda". Não sabe ao certo o que o Photoshop usa, mas, por exemplo, o plugin Alien Skin Blow Up fornece resultados semelhantes e eles usam a vetorização usando triangulação. Os triângulos são suavizados, mantendo a imagem ampliada suficientemente nítida.
Você também pode dar uma olhada no NEDI (New Edge-Directed Interpolation), ou " Upsampling via Imposed Edges Statistics ", de Raanan Fattal.
Ainda outra abordagem é converter a imagem em um campo vetorial (os vetores vão ao longo das bordas), ampliar esse campo e, em seguida, recalcular o domínio espacial usando algum solucionador de PDE (os solucionadores rápidos de Poisson são uma opção popular).
Os Fractals genuínos do OnOne Software mostram ainda outra abordagem, usando a geometria fractal, principalmente o IFS (sistemas de funções iteradas), explorando a auto-similaridade e permitindo recriar dados de textura com aparência natural, e não apenas bordas. A imagem aproximada fractal é por definição independente da resolução. Certa vez, escrevi um software semelhante, mas calcular a representação fractal é caro, por outro lado, a renderização é muito rápida.
fonte