Faltung der halbkugelförmigen Harmonischen


10

Sphärische Harmonische (SH) sind eine Möglichkeit, niederfrequente sphärische Funktionen mit nur einer Handvoll Koeffizienten darzustellen. Sie haben einige schöne mathematische Eigenschaften, zB kann eine Faltung mit einer Kernfunktion h (x) (die Kreissymmetrie hat) berechnet werden als

(h * f) ^ m_l = \ sqrt {\ frac {4 \ pi} {2l + 1}} h ^ 0_l f ^ m_l

Im Falle einer Faltung mit einer Kosinuskeule für Rang 3 SH führt dies zu einer einfachen Skalierung der Banden mit den Faktoren

[\ pi, \ frac {2 \ pi} {3}, \ frac {\ pi} {4}]

In vielen Fällen, z. B. einfallendes Licht für einen bestimmten Punkt auf einer undurchsichtigen Oberfläche, wird keine vollständige sphärische Information benötigt, da die Hälfte der Kugel ohnehin Null / undefiniert / unbenutzt ist. So wurden Hemispherical Harmonics (HSH) geboren.

Wie funktioniert die Faltung mit einem beliebigen Kernel (mit Kreissymmetrie) für HSH? Kann die Faltung von SH verlängert werden oder gibt es ein Papier, das diesbezüglich Einzelheiten behandelt?


Sie schreiben "beliebiger Kernel mit Kreissymmetrie": Bedeutet das nicht, dass Sie tatsächlich nur die Faltung mit dem Teil (Hemispheric) Zonal Harmonics benötigen? Wenn Ihre Symmetrieachse unterschiedlich ist, können Sie sie weiterhin verwenden, indem Sie Rotationen vor und nach der Zonenfaltung hinzufügen. Die Durchführung von Rotationen wird in diesem Dokument beschrieben. Die Integration mit dem Zonenteil (m = 0) sollte vergleichsweise einfach sein. Wie bei Spherical Harmonics ist es jedoch für beliebige Funktionen nicht analytisch lösbar. Einfache Dinge wie Kosinuslappen sollten gut funktionieren (haben es aber noch nicht versucht).
Wumpf

@Wumpf Du hast recht, darauf kommt es an. Für SH würde ich einfach "jedes Band von f um den entsprechenden m = 0-Term aus [Kernelfunktion] h" skalieren (unter Angabe von Sloans dummen SH-Tricks). Die Frage ist, kann ich das auch für HSH tun?
David Kuri

Antworten:


3

Diese Antwort versucht, einen kurzen Überblick über einige wichtige Aspekte zu geben. Da die HSH-Definition ziemlich komplex ist und ich keinen Überblick über einige vorab evaluierte Funktionen finden konnte, habe ich keine Beispiele angegeben, nur weil ich momentan zu viel Zeit in Anspruch nehmen würde.

Problembeschreibung & Brute Force

Um die Faltung mit einem beliebigen Satz von Basisfunktionen zu bestimmen und damit die Koeffizienten zu berechnen, müssen wir im Allgemeinen das Integral über der Domäne berechnen (= Kugel für SH, Halbkugel für HSH). Alles, was wir tun müssen, um die halbkugelförmige Funktion f darzustellen , die über die Winkel Theta ("oben / unten") und Phi ("links / rechts") über einen Koeffizienten c für HSH-Basisfunktionen H definiert ist, ist Folgendes:

\ int_0 ^ {2 \ pi} \ int_0 ^ {\ frac {2} {\ pi}} f (\ theta, \ phi) \ cdot H_l ^ m (\ theta, \ phi) \ cdot sin (\ theta) \ , \, \ mathrm {d} \ theta \ mathrm {d} \ phi

Die Sünde (Theta) ist da, weil wir uns über die Oberfläche einer (Halb-) Kugel integrieren. Konzeptionell ist die Größe eines Flächenstücks, das durch die Änderung des Phi entsteht, beim aktuellen Theta größer oder kleiner. Mehr dazu hier

Wenn uns Genauigkeit oder Rechenzeit nicht so wichtig sind, können wir dies einfach durch Stichproben lösen: Generieren Sie gleichmäßig verteilte (!) Richtungen auf der Hemisphäre, berechnen Sie das Produkt aus f und H und mitteln Sie die Ergebnisse (wenn Sie wirklich gleichmäßig verteilt haben) Punkte, die Sie nicht brauchen die Sünde (Theta) ).

Beginnen Sie mit einer analytischen Lösung

Natürlich hätten wir gerne eine analytische Lösung für unsere Funktion, aber hier kann es sehr schwierig werden. Als ersten Schritt müssen wir möglicherweise eine Funktion, die in kartesischen Richtungen angegeben ist, in sphärische Koordinaten umwandeln. Dieser Teil ist immer noch einfach. Ersetzen Sie einfach alle Ihre x, y und z wie folgt:

(x, y, z) \ rechter Pfeil (\ sin \ theta \ cos \ phi, \ sin \ theta \ sin \ phi, \ cos \ theta)

Beachten Sie, dass dies ein System ergibt, bei dem die z-Achse das "Auf" der Hemisphäre ist (Theta = 0), das durch die HSH dargestellt werden sollte. Danach ist es möglicherweise bereits möglich, alles in ein Computeralgebrasystem einzufügen und die Gleichung zu lösen. Versuchen Sie nicht, für alle m & l zu lösen , sondern versuchen Sie es mit jeweils einem Koeffizienten, da es unwahrscheinlich ist, dass es einen kompakten Ausdruck gibt, der alle auf einmal beschreibt. Die Definition von HSH ist relativ komplex, was die Bewertung dieser Funktionen sehr mühsam macht. In dieser Arbeit werden die HSH-Basisfunktionen nullter und 1. Ordnung in kartesischen Koordinaten erwähnt.

Hinweise zu Rotationen und zonalen Harmonischen

Rotationssymmetrische Funktionen um diese z-Achse sind sehr gute Kandidaten für eine erfolgreiche analytische Ableitung, da sie nur die Zonenkoeffizienten beeinflussen , die alle Koeffizienten mit dem Index m gleich Null sind. Dies ist besonders hilfreich für die allgemeineren sphärischen Harmonischen, bei denen eine einfache Formel existiert, mit der jede Darstellung der zonalen sphärischen Harmonischen in eine beliebige Richtung gedreht werden kann, was zu einer Darstellung der sphärischen Harmonischen ohne Datenverlust führt (siehe hier)). Dies bedeutet, dass Sie ZSH-Koeffizienten ableiten können, indem Sie davon ausgehen, dass Ihre radialsymmetrische "Funktion auf z zeigt", und sie dann in eine beliebige Richtung drehen. Dies funktioniert zum Beispiel perfekt mit verschiedenen Kosinuskeulenvarianten und gibt Ihnen auch die Faktoren, die Sie in der Frage erwähnt haben.

Nun die schlechte Nachricht: Für HSH ist jede Drehung einer Funktion um eine andere Achse als z verlustbehaftet, da Ihre Funktion die untere undefinierte Halbkugel nach der Drehung "berührt". Daher gibt es auch keine geeignete "Hemi Zonal to HSH" -Rotationsformel. Stattdessen gibt es mehrere Möglichkeiten, dies mit unterschiedlichen Nachteilen zu tun. Weitere Einzelheiten finden Sie im Papier und in der Präsentation .


Übrigens: All dies ist einfacher mit der H-Basis , die ebenfalls halbkugelförmig ist (aber ursprünglich nur für eine begrenzte Anzahl von Frequenzbändern definiert ist).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.