Media non locale

filtro usato in elaborazione digitale delle immagini per la riduzione del rumore

In elaborazione digitale delle immagini, la media non locale (in lingua inglese: non-local means) è un operatore non locale di riduzione del rumore. A differenza di operatori locali come il filtro Gaussiano, che determinano il valore di un pixel in base all'intensità media dell'immagine in un intorno del pixel stesso, la media non locale utilizza una media dell'intera immagine, pesata in ogni punto in base alla similarità con il pixel in esame.

Rispetto ad un filtro di media locale, la media non locale produce generalmente migliori risultati e minore perdita di dettaglio.[1] Rispetto ad altre tecniche di riduzione del rumore, la media non locale introduce un errore algoritmico simile a rumore bianco.[2] Oltre che in riduzione del rumore, l'algoritmo ha applicazioni in deinterlacciamento,[3] interpolazione di viste multiple,[4] e regolarizzazione di mappe di profondità.[5]

Formulazione modifica

Indicando con   l'area dell'immagine e con   e   due punti della stessa, l'algoritmo di media non locale può essere formulato come

 

dove   è il valore del filtro nel punto  ,   è il valore di intensità in   nell'immagine originale, e   è una funzione peso che determina la similarità dell'immagine nei punti   e  .[6] Una scelta comune della funzione peso è la funzione gaussiana

 

dove la deviazione standard   è un parametro dell'algoritmo, e   è la media dell'intensità in un intorno di  .[7]

In forma discreta l'algoritmo diventa

 

con

 

calcolata in un intorno   di  .

Poiché la complessità computazionale dell'algoritmo è quadratica nel numero di pixel dell'immagine, diverse tecniche sono state proposte per l'esecuzione rapida dell'algoritmo. Solitamente la media pesata per ogni pixel viene calcolata non in tutta l'immagine, ma in una finestra di ricerca la cui dimensione costituisce un parametro aggiuntivo. Un'approssimazione basata sull'uso di immagini integrali e trasformata di Fourier veloce permette di velocizzare il calcolo della finestra di similarità tra due pixel, velocizzando l'algoritmo di un fattore pari a 50 e mantenendo comparabile qualità del risultato.[8]

Note modifica

  1. ^ Antoni Buades, A non-local algorithm for image denoising, in Computer Vision and Pattern Recognition, 2005, vol. 2, 20–25 June 2005, pp. 60–65, DOI:10.1109/CVPR.2005.38, ISBN 978-0-7695-2372-9.
  2. ^ Antoni Buades, On image denoising methods (PDF), su 123 Seminars Only.
  3. ^ R. Dehghannasiri e S. Shirani, A novel de-interlacing method based on locally-adaptive Nonlocal-means, in 2012 Conference Record of the Forty Sixth Asilomar Conference on Signals, Systems and Computers (ASILOMAR), 2012, pp. 1708–1712, DOI:10.1109/ACSSC.2012.6489324, ISBN 978-1-4673-5051-8.
  4. ^ R. Dehghannasiri e S. Shirani, A view interpolation method without explicit disparity estimation, in 2013 IEEE International Conference on Multimedia and Expo Workshops (ICMEW), 2013, pp. 1–4, DOI:10.1109/ICMEW.2013.6618274, ISBN 978-1-4799-1604-7.
  5. ^ Manuel Martinello e Paolo Favaro, Depth Estimation From a Video Sequence with Moving and Deformable Objects (PDF), su manemarty.com, IET Image Processing Conference.
  6. ^ Antoni Buades, Non-Local Means Denoising, su Image Processing On Line.
  7. ^ Antoni Buades, On image denoising methods (page 10) (PDF), su 123 Seminars Only.
  8. ^ Jin Wang, Yanwen Guo, Yiting Ying, Yanli Liu e Qunsheng Peng, Fast non-local algorithm for image denoising, International Conference on Image Processing, IEEE, 2006, pp. 1429-1432.