Qual è la differenza tra la differenza di gaussiano, laplace di gaussiano e cappello messicano Wavelet?


10

Esistono tre tecniche utilizzate nel CV che sembrano molto simili tra loro, ma con sottili differenze:

  • Laplaciano di gaussiano:2[g(x,y,t)f(x,y)]
  • Differenza di gaussiani:[g1(x,y,t)f(x,y)][g2(x,y,t)f(x,y)]
  • Convoluzione con Ricker wavelet :Ricker(x,y,t)f(x,y)

A quanto ho capito attualmente: DoG è un'approssimazione di LoG. Entrambi sono utilizzati nel rilevamento dei BLOB ed entrambi funzionano essenzialmente come filtri passa banda. La convoluzione con un wavelet di cappello messicano / Ricker sembra ottenere quasi lo stesso effetto.

Ho applicato tutte e tre le tecniche a un segnale a impulsi (con il ridimensionamento richiesto per rendere simili le magnitudini) e i risultati sono molto vicini. In effetti, LoG e Ricker sembrano quasi identici. L'unica vera differenza che ho notato è con DoG, avevo 2 parametri gratuiti da mettere a punto ( e ) vs 1 per LoG e Ricker. Ho anche scoperto che il wavelet era il più semplice / veloce, poiché poteva essere fatto con una singola convoluzione (fatta tramite moltiplicazione nello spazio di Fourier con FT di un kernel) vs 2 per DoG, e una convoluzione più un Laplacian per LoG. σ 1σ1σ1

Risultati della convoluzione wavelet di Ricker, Laplacian di Gaussian e Differenza di Gaussian

  • Quali sono i vantaggi / svantaggi comparativi di ciascuna tecnica?
  • Ci sono diversi casi d'uso in cui uno supera l'altro?

Ho anche il pensiero intuitivo che su campioni discreti, LoG e Ricker degenerano nella stessa operazione, poiché può essere implementato come il kernel .[ - 1 , 2 , - 1 ]2

[1,2,1]or[010141010]for 2D images

L'applicazione di tale operazione a un gaussiano dà origine al wavelet di Ricker / Hat. Inoltre, poiché LoG e DoG sono correlati all'equazione di diffusione del calore, ritengo che potrei riuscire a far combaciare entrambi i parametri con un numero di parametri sufficiente.

(Mi sto ancora bagnando i piedi con queste cose per sentirmi libero di correggere / chiarire nulla di tutto questo!)

Risposte:


6

Laplace di gaussiano

Il Laplace di Gaussian (LoG) dell'immagine può essere scritto comef

2(fg)=f2g

g

f2g=f(2x2g+2y2g)=f2x2g+f2y2g

Pertanto, è possibile calcolarlo come aggiunta di due convoluzioni dell'immagine di input con seconde derivate del kernel gaussiano (in 3D si tratta di 3 convoluzioni, ecc.). Questo è interessante perché il kernel gaussiano è separabile, così come i suoi derivati. Questo è,

f(x,y)g(x,y)=f(x,y)(g(x)g(y))=(f(x,y)g(x))g(y)

nel senso che invece di una convoluzione 2D, possiamo calcolare la stessa cosa usando due convoluzioni 1D. Ciò consente di risparmiare molti calcoli. Per il kernel gaussiano più piccolo pensabile avresti 5 campioni lungo ogni dimensione. Una convoluzione 2D richiede 25 moltiplicazioni e aggiunte, due convoluzioni 1D richiedono 10. Maggiore è il kernel o più dimensioni nell'immagine, tanto più significativi sono questi risparmi computazionali.

Pertanto, il LoG può essere calcolato usando quattro convoluzioni 1D. Lo stesso kernel LoG, tuttavia, non è separabile.

2

L'operatore Rickelet Wavelet o Mexican Hat è identico al LoG, fino al ridimensionamento e alla normalizzazione .

Differenza di gaussiani

f

fg(1)fg(2)=f(g(1)g(2))

Quindi, proprio come con il LoG, il DoG può essere visto come una singola convoluzione 2D non separabile o la somma (differenza in questo caso) di due convoluzioni separabili. Vedendolo in questo modo, sembra che non ci sia alcun vantaggio computazionale nell'usare il DoG rispetto al LoG. Tuttavia, il DoG è un filtro passa-banda sintonizzabile, il LoG non è sintonizzabile nello stesso modo e dovrebbe essere visto come l'operatore derivato che è. Il DoG appare anche naturalmente nell'impostazione dello spazio-scala, dove l'immagine viene filtrata su molte scale (gaussiane con sigmi diversi), la differenza tra le scale successive è un DoG.

Esiste un'approssimazione del kernel DoG che è separabile, riducendo della metà il costo computazionale, sebbene quell'approssimazione non sia isotropica, portando alla dipendenza rotazionale del filtro.

Una volta ho mostrato (per me stesso) l'equivalenza di LoG e DoG, per un DoG in cui la differenza nel sigma tra i due kernel gaussiani è infinitamente piccola (fino al ridimensionamento). Non ho registrazioni di questo, ma non è stato difficile mostrarlo.

Altre forme di calcolo di questi filtri

La risposta di Laurent menziona il filtro ricorsivo e il PO menziona il calcolo nel dominio di Fourier. Questi concetti si applicano sia al LoG che al DoG.

Il gaussiano e i suoi derivati possono essere calcolati usando un filtro IIR causale e anti-causale. Quindi tutte le convoluzioni 1D menzionate sopra possono essere applicate in tempo costante al sigma. Nota che questo è efficace solo per sigmi più grandi.

Allo stesso modo, qualsiasi convoluzione può essere calcolata nel dominio di Fourier, quindi sia i kernel 2D DoG che LoG possono essere trasformati nel dominio di Fourier (o piuttosto calcolati lì) e applicati per moltiplicazione.

In conclusione

Non ci sono differenze significative nella complessità computazionale di questi due approcci. Devo ancora trovare una buona ragione per approssimare il LoG usando il DoG.


Questa è una risposta fantastica! Ho intenzione di aggiornare questo come la nuova risposta, non che la risposta di Laurent sia sbagliata o incompleta, ma hai impiegato del tempo per aggiungere una fantastica seconda prospettiva a una domanda di risposta di un anno.
DeusXMachina

2
DoG e LoG si incontrano sulla scala "corteccia"
Laurent Duval

4

Lo wavelet di Ricker, lo wavelet (isotropico) di Marr, il cappello messicano o il laplaciano di gaussiani appartengono allo stesso concetto: wavelet continue ammissibili (che soddisfano determinate condizioni). Tradizionalmente, il wavelet Ricker è la versione 1D. L'onda Marr o il cappello messicano sono nomi dati nel contesto delle decomposizioni di immagini 2D, si può considerare ad esempio la Sezione 2.2 di Un panorama su rappresentazioni geometriche multiscala, selettività spaziale, direzionale e di frequenza intrecciate , Signal Processing, 2011, L. Jacques et al. Il Laplaciano di Gaussiano è la generalizzazione multidimensionale.

Tuttavia, in pratica, le persone accettano diversi tipi di discretizzazioni, a diversi livelli.

3×33×3

(010141010)

(111181111)
5×5

σ1σ2

Ma altri rapporti sono stati usati, ad esempio in alcune piramidi lapponiche, che trasformano DoG più in filtri passa-banda più generici o rilevatori di bordi.

Ultimo riferimento: corrispondenza delle immagini utilizzando punti di interesse dello spazio-scala generalizzati , T. Lindeberg, 2015.


1
Molto illuminante, grazie! Quindi, dal Fast Gaussian Smoothing sembra che DoG abbia vantaggi di calcolo in quanto può essere fatto direttamente nel dominio spaziale, quindi immagino, ad esempio, l'elaborazione del segnale su chip per CCD / visione computerizzata integrata. Inoltre, A Panorama sembra una lettura fantastica nel complesso, grazie!
DeusXMachina,

Con approssimazioni rapide, puoi effettivamente eseguire diverse operazioni indipendentemente dalla scala
Laurent Duval,

1
Da dove viene il rapporto 1.6? Se scrivi la matematica, puoi vedere che esiste un'equivalenza esatta tra la seconda derivata del gaussiano e la differenza di gaussiana con una differenza infinitesimale in sigma (fino al ridimensionamento).
Cris Luengo,

1
Da Marr e Hildreth, 1980, appendice B, la chiamano una "migliore approssimazione ingegneristica", con un compromesso tra larghezza di banda e sensibilità, basato su curve di merito mentre varia il rapporto di larghezza. Ho incontrato alcune opere in passato di persone a Delft, con lo stesso nome. Coincidenza?
Laurent Duval,

1
@LaurentDuval: ho fatto il mio dottorato di ricerca a Delft. Non ci sono altre persone con il mio nome, AFAIK. Vedo come potresti ricavare un ottimale (soggettivo) in base a sensibilità e larghezza di banda. Se il rapporto è troppo piccolo, la risposta è troppo bassa, probabilmente dipende più dal rumore di discretizzazione che da qualsiasi altra cosa; se il rapporto è troppo alto, non è un filtro interessante. Ha senso. Grazie!
Cris Luengo,
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.