Como você escolhe o número ideal de toques em um filtro de dimensionamento de imagem com janelas?


7

Estou tentando usar um filtro para dimensionar uma imagem e, na maioria das vezes, tenho algo que parece funcionar. Mas agora eu quero poder gerar um filtro com um número ideal de toques. Eu sei em geral que quanto mais torneiras, melhor. Mas há retornos decrescentes em quanto cada toque adicional aumentará a qualidade da imagem. Então, como escolher vários toques que fazem uma boa troca entre a complexidade da implementação e a qualidade da imagem? Existem medições padrão que permitam avaliar diferentes filtros para um filtro "ideal"?


Pensando nisso mais, acho que são realmente duas perguntas. Uma é a questão de decidir qual janela usará sinc (nesse caso, eu já decidi usar lanczos2 ou 3) - essa é uma pergunta mais geral que tem várias vantagens, dependendo do aplicativo. Porém, uma vez tomada a decisão, o número de torneiras é facilmente determinado. Para lanczos2, o número ideal de toques é 4 e para lanczos3, o número ideal de toques é 6. O motivo não é 5 ou 7 é que um desses toques sempre será zero devido à janela.

No caso mais geral, acho que a maneira mais fácil de indicar quantos toques existem para uma determinada janela é simplesmente dizer:

taps = max - min

No caso de lanczos2, o máximo é 2 e o mínimo é -2. Portanto, toque = 4.


Isso também deve ser marcado como uma postagem no wiki da comunidade. Ainda não tenho a capacidade de fazê-lo aqui, então eu apreciaria se alguém pudesse marcar dessa maneira para mim.
Dennis Munsie

Por que você gostaria de fazer deste um wiki da comunidade?
Phonon

O que você quer dizer quando diz retornos decrescentes ?
Phonon

@Phonon Suponho que não há uma maneira correta de escolher o número de toques, portanto, deve ser um wiki da comunidade, pois haverá mais de uma resposta.
Dennis Munsie

11
Se você está procurando uma solução "ideal", precisa fornecer algum critério de otimização. Para qual aplicativo você planeja usá-lo? Quais são as principais restrições da sua plataforma?
Jason R

Respostas:


1

Imagens quantizadas até uma profundidade de bit apresentam erro devido à quantização. Seu filtro também apresenta erro, comparado ao uso de um filtro ideal infinitamente grande. Usando filtros cada vez maiores, você chegará a um joelho no diagrama de erro total versus tamanho do filtro, onde esses dois erros são iguais. Depois disso, o erro de quantização domina, por isso não compensa muito para melhorar ainda mais o filtro.

Uma métrica de erro comumente usada é a razão pico de sinal-ruído .


Boa resposta @Olli, mas isso não é tratado com acumuladores de precisão estendidos? (É claro que não pode estender indefinidamente por isso, talvez, que é a restrição, mas pode escalar interstage e ainda manter os termos de erro acumuladas suficientemente abaixo do nosso caminho de dados piso de ruído de quantização)
Dan Boschen

Portanto, não há disputa sobre o que você disse, mas mais uma pergunta para confirmar meu próprio entendimento: se você permitir acumuladores de precisão estendidos, ainda verá um joelho à medida que o tamanho do filtro aumenta (suponha que possamos estender indefinidamente em log2 (N)).
precisa saber é o seguinte

@ DanBoschen, quero dizer o erro de quantização que outra pessoa inseriu na imagem original.
Olli Niemitalo 03/04
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.