Estava lendo esta pergunta e comecei a pensar. Como exatamente você pode determinar qual é a melhor solução de reamostragem? Eu tenho um conceito, ainda que um tanto vago, do que os métodos básicos fazem.
Existem boas regras gerais para diferentes tipos de imagens? Por exemplo, usando um conjunto específico de algoritmos de reamostragem para fotos e um conjunto diferente para gráficos da web? A cor geral da imagem, o contraste do objeto e o fundo, etc. entrariam em jogo?
Respostas:
Há uma série de tutoriais muito informativos sobre o Cambridge in Color que tratam do assunto do redimensionamento de imagens.
O último tutorial é particularmente bom, pois há uma tabela de algoritmos de interpolação comuns, juntamente com um diagrama que ajuda a visualizar o trade-off que cada algoritmo possui em relação a anti-aliasing, embaçamento e halos de borda.
fonte
A resposta direta é que, em última análise, você não. Em muitos casos, tudo se resume a uma questão de gosto. Três pessoas que analisam versões redimensionadas de uma imagem específica podem (e geralmente terão) três opiniões diferentes sobre qual é a melhor. O melhor que você pode fazer é escolher quais recursos de uma imagem você considera importantes e escolher um método com base nisso.
Por exemplo, o vizinho mais próximo faz um bom trabalho em manter arestas vivas nas linhas - muito mais do que na maioria dos métodos de interpolação. Ao mesmo tempo, quando aplicado a itens que devem parecer "suaves" (por exemplo, céu azul claro), pode produzir artefatos que se parecem com arestas.
O inverso também é verdadeiro: a interpolação pode ajudar a suavizar gradientes, mas também tende a "suavizar" o que deve ser arestas vivas. Se você for longe demais, detalhes finos podem ser completamente apagados.
A maioria dos melhores métodos é adaptável até certo ponto. Simplificando consideravelmente, eles estimam o grau de nitidez dos dados originais e tentam manter aproximadamente o mesmo nível de suavidade / nitidez presente no original. A adaptação é normalmente feita digitalizando a imagem em blocos e aplicando a adaptação bloco a bloco.
Por exemplo, se você tiver uma paisagem com um céu azul claro e árvores com muitos detalhes finos (galhos, folhas, etc.), isso aplicará muito menos suavização nos galhos do que no céu.
Existem, no entanto, várias maneiras de estimar gradientes, nenhum dos quais é perfeito, e vários tamanhos de janelas, nenhum dos quais é ideal para todas as imagens. Isso deixa espaço para uma grande quantidade de diferença, mesmo entre algoritmos adaptativos.
fonte
Este site ( Comparações de métodos de ampliação de imagem ) faz um bom trabalho ao comparar os diferentes métodos de interpolação. E se você baixar a ferramenta deles ( SAR Image Processor, versão 4.3 ), poderá medir as diferenças de qualidade.
Embora pareça ser um bom guia, ele não responde à pergunta sobre qual algoritmo se adequa a que tipo de imagem.
Abaixo está um extrato dos resultados de seus testes para os vários algoritmos de interpolação. Direitos autorais do diagrama general-cathexis.com .
fonte