Laplace von Gauß
Der Laplace of Gaussian (LoG) von Bild kann wie folgt geschrieben werdenf
∇2(f∗g)=f∗∇2g
mit der Gaußsche Kern und die Faltung. Das heißt, der Laplace des durch einen Gaußschen Kernel geglätteten Bildes ist identisch mit dem mit dem Laplace des Gaußschen Kernels gefalteten Bild. Diese Faltung kann im 2D-Fall als weiter ausgebaut werdeng∗
f∗∇2g=f∗(∂2∂x2g+∂2∂y2g)=f∗∂2∂x2g+f∗∂2∂y2g
Somit ist es möglich, es als Addition von zwei Windungen des Eingabebildes mit zweiten Ableitungen des Gaußschen Kernels zu berechnen (in 3D sind dies 3 Windungen usw.). Dies ist interessant, da der Gaußsche Kernel ebenso wie seine Ableitungen trennbar sind. Das ist,
f(x,y)∗g(x,y)=f(x,y)∗(g(x)∗g(y))=(f(x,y)∗g(x))∗g(y)
Dies bedeutet, dass wir anstelle einer 2D-Faltung dasselbe mit zwei 1D-Faltungen berechnen können. Dies spart viele Berechnungen. Für den kleinsten denkbaren Gaußschen Kernel hätten Sie 5 Samples entlang jeder Dimension. Eine 2D-Faltung erfordert 25 Multiplikationen und Additionen, zwei 1D-Faltungen erfordern 10. Je größer der Kernel oder je mehr Dimensionen im Bild, desto bedeutender sind diese Recheneinsparungen.
Somit kann der LoG unter Verwendung von vier 1D-Faltungen berechnet werden. Der LoG-Kernel selbst ist jedoch nicht trennbar.
Es gibt eine Näherung, bei der das Bild zuerst mit einem Gaußschen Kernel gefaltet wird und dann unter Verwendung endlicher Differenzen implementiert wird, was zum 3x3-Kernel mit -4 in der Mitte und 1 in seinen vier Randnachbarn führt.∇2
Das Ricker-Wavelet oder der mexikanische Hutoperator sind bis zur Skalierung und Normalisierung mit dem LoG identisch .
Unterschied der Gaußschen
Die Differenz der Gaußschen (DoG) von Bild kann wie folgt geschrieben werdenf
f∗g(1)−f∗g(2)=f∗(g(1)−g(2))
Genau wie beim LoG kann das DoG als einzelne nicht trennbare 2D-Faltung oder als Summe (in diesem Fall Differenz) zweier trennbarer Faltungen angesehen werden. Wenn man es so sieht, sieht es so aus, als gäbe es keinen Rechenvorteil bei der Verwendung des DoG gegenüber dem LoG. Das DoG ist jedoch ein abstimmbares Bandpassfilter, das LoG ist nicht auf die gleiche Weise abstimmbar und sollte als der abgeleitete Operator angesehen werden, der es ist. Das DoG erscheint natürlich auch in der Skalenraumeinstellung, in der das Bild in vielen Skalen (Gaußschen mit unterschiedlichen Sigmen) gefiltert wird. Der Unterschied zwischen nachfolgenden Skalen ist ein DoG.
Es gibt eine trennbare Annäherung an den DoG-Kernel, die den Rechenaufwand halbiert, obwohl diese Annäherung nicht isotrop ist, was zu einer Rotationsabhängigkeit des Filters führt.
Ich habe einmal (für mich) die Äquivalenz von LoG und DoG für ein DoG gezeigt, bei dem der Sigma-Unterschied zwischen den beiden Gaußschen Kernen unendlich klein ist (bis zur Skalierung). Ich habe keine Aufzeichnungen darüber, aber es war nicht schwer zu zeigen.
Andere Formen der Berechnung dieser Filter
Laurents Antwort erwähnt die rekursive Filterung, und das OP erwähnt die Berechnung im Fourier-Bereich. Diese Konzepte gelten sowohl für das LoG als auch für das DoG.
Der Gaußsche und seine Ableitungen können unter Verwendung eines kausalen und antikausalen IIR-Filters berechnet werden. So können alle oben erwähnten 1D-Faltungen in konstanter Zeit für das Sigma angewendet werden. Beachten Sie, dass dies nur bei größeren Sigmen effizient ist.
Ebenso kann jede Faltung in der Fourier-Domäne berechnet werden, so dass sowohl der DoG- als auch der LoG-2D-Kern in die Fourier-Domäne transformiert (oder vielmehr dort berechnet) und durch Multiplikation angewendet werden können.
Abschließend
Es gibt keine signifikanten Unterschiede in der rechnerischen Komplexität dieser beiden Ansätze. Ich habe noch keinen guten Grund gefunden, das LoG mithilfe des DoG zu approximieren.