Come si può determinare l'algoritmo di ricampionamento ideale per un determinato tipo di immagine?


12

Stavo leggendo questa domanda e ho pensato. In che modo puoi determinare quale sia la migliore soluzione di ricampionamento? Ho un'idea, seppur in qualche modo vaga, di ciò che fanno i metodi di base.

Ci sono alcune buone regole generali per diversi tipi di immagini? Ad esempio, utilizzando un set particolare di algoritmi di ricampionamento per le foto e un set diverso per la grafica web? Il colore generale dell'immagine, il contrasto del soggetto e dello sfondo, ecc., Entrerebbero in gioco?


Risposte:


9

Ci sono una serie di tutorial molto istruttivi su Cambridge in Color che trattano il tema del ridimensionamento delle immagini.

  1. La comprensione dell'interpolazione delle immagini copre la teoria di base dietro l'interpolazione delle immagini.
  2. Il ridimensionamento delle immagini per Web ed e-mail copre il ridimensionamento delle immagini e le insidie ​​da tenere d'occhio.
  3. L'ottimizzazione dell'ingrandimento di foto digitali copre in modo simile le immagini di ingrandimento .

L'ultimo tutorial è particolarmente utile, in quanto esiste una tabella di algoritmi di interpolazione comuni insieme a un diagramma che consente di visualizzare il compromesso di ciascun algoritmo rispetto all'antialiasing, alla sfocatura e agli aloni dei bordi.


6

La risposta diretta è che alla fine no. In moltissimi casi, si tratta di una questione di gusti. Tre persone che guardano versioni ridimensionate di una particolare immagine potrebbero (e spesso avranno) tre opinioni diverse su quale sia la migliore. Il meglio che puoi fare è scegliere quali caratteristiche di un'immagine consideri importanti e scegliere un metodo basato su quello.

Ad esempio, il vicino più vicino fa un ottimo lavoro nel mantenere spigoli vivi sulle linee, molto più della maggior parte dei metodi di interpolazione. Allo stesso tempo, quando applicato a cose che dovrebbero apparire "lisce" (ad es. Cielo blu chiaro) può produrre artefatti che assomigliano a bordi.

È vero anche il contrario: l'interpolazione può aiutare a smussare i gradienti, ma tende anche a "smussare" quelli che dovrebbero essere spigoli vivi. Se vai troppo lontano, i dettagli più fini possono essere cancellati completamente.

La maggior parte dei metodi migliori sono in qualche modo adattivi. Semplificando considerevolmente, stimano la "nitidezza" dei gradienti contenuti nei dati originali e tentano di mantenere approssimativamente lo stesso livello di levigatezza / nitidezza presente nell'originale. L'adattamento viene normalmente eseguito scansionando l'immagine in blocchi e applicando l'adattamento su base blocco per blocco.

Ad esempio, se si dispone di un paesaggio con un cielo blu chiaro e alberi con molti dettagli precisi (rami, foglie, ecc.), Si applicherà molto meno levigatura ai rami che al cielo.

Vi sono, tuttavia, vari modi per stimare i gradienti, nessuno dei quali è perfetto, e varie dimensioni di finestre, nessuna delle quali è l'ideale per tutte le immagini. Ciò lascia spazio a una discreta differenza anche tra algoritmi adattativi.


5

Questo sito ( Confronti di metodi di ingrandimento dell'immagine ) fa un buon lavoro nel confrontare i diversi metodi di interpolazione. E se scarichi il loro strumento ( SAR Image Processor, versione 4.3 ) puoi effettivamente misurare le differenze di qualità.

Anche se sembra essere una buona guida, non risponde alla domanda su quale algoritmo si adatta a quale tipo di immagine.

Di seguito è riportato un estratto dei risultati dei test per i vari algoritmi di interpolazione. Diagramma copyright general-cathexis.com .

inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.