Shack-Hartmann-Wellenfrontsensor-Kalibrierung in WaveMe

Kalibrierung und warum sie notwendig ist

Die WaveMe Toolbox verfügt über eine außergewöhnliche Kalibrierungsmethode, die eine viel flexiblere Nutzung des Shack-Hartmann-Wellenfrontsensors ermöglicht. In diesem technischen Vortrag geht es darum, worum es sich dabei handelt und warum es sich von den anderen verfügbaren Methoden unterscheidet. Wir gehen davon aus, dass Sie, der Leser, bereits mit den Prinzipien des Shack-Hartmann-Wellenfrontsensors vertraut sind. Die meisten Erklärungen, die man im Internet findet, enthalten jedoch keine Zahlen, ich hoffe, dass wir hier eine andere Sichtweise einnehmen können.

Ein einfaches numerisches Beispiel

Beginnen wir mit der typischen Platzierungsgenauigkeit eines Mikrolinsen-Arrays, die bei etwa 250 Nanometern liegt. Der Einfachheit halber nehmen wir an, dass alle Mikrolinsen den gleichen Platzierungsfehler haben, einschließlich der Richtung. Dies ist ein etwas albernes Beispiel, da wir das gesamte Array nur um 250 nm verschoben haben. Es hilft uns jedoch, einige der Konfigurationsparameter eines Sensors mit der integrierten Wellenfront in Verbindung zu bringen. Wenn wir außerdem davon ausgehen, dass der Abstand zwischen dem Array und dem Sensor gleich der Größe der Apertur ist, dann haben wir nach Integration dieses Verschiebungsfehlers einen Wellenfrontfehler von 250 nm. Wenn nur die Hälfte der Mikrolinsen im Array um diesen Betrag verschoben wird, ergibt sich die Hälfte des Wellenfrontfehlers. Dies ist jedoch immer noch eine sehr große Zahl im Verhältnis zu der von uns angestrebten Genauigkeit.

Bei Hartmann-Sensoren müssen wir jedoch zwischen zufälligen und systematischen Fehlern unterscheiden. Eine systematische Verschiebung von 250 nm - nicht, dass wir sie so interpretieren würden - wird zu einem Kippwellenfrontfehler von 250 nm (unter unseren derzeitigen Modellannahmen). Wenn wir stattdessen eine 250nm zufällig Fehler, dann ist der Fehler 250 nm geteilt durch die Quadratwurzel aus der Anzahl der Punkte. Dies ist oft eine recht gute Zahl. Mit dieser Übung soll verdeutlicht werden, wie wichtig es ist, systematische Fehler bei Wellenfrontmessungen mit einem Shack-Hartmann-Sensor zu kontrollieren.

Feine Positionen

250 Nanometer hört sich viel an, aber selbst ein Megapixel-Sensor-Array hat eine Pixelgröße von mehreren bis manchmal über 10 Mikrometern. Natürlich muss ein genauer Wellenfrontsensor das Zentrum der Lichtverteilung mit einiger Genauigkeit finden.

Es gibt verschiedene Möglichkeiten, dies zu tun, aber eine recht gängige Methode ist die Verwendung des Schwerpunkts, bei der die abgetastete Intensität eines Kamerapixels mit der Pixelkoordinate multipliziert und durch die Summe der abgetasteten Pixelintensitäten geteilt wird. Bei großen Flecken, d. h. wenn sich die Intensität langsam über die Größe eines Pixels ändert, ist diese Methode recht gut. Bei kleinen Flecken erzeugt der Zentroid-Algorithmus jedoch einen großen, zufällig wirkenden Fehler.

Hier ist etwas Bemerkenswertes. Wenn wir uns auf Wellenfrontfehler niedriger Ordnung konzentrieren, wie z. B. Koma oder Astigmatismus - was wir häufig tun -, hat das numerische Rauschen in der Schwerpunktposition in der Regel nur geringe Auswirkungen, und die Ergebnisse bleiben recht gut. Dies ist darauf zurückzuführen, dass der systematische Fehler relativ klein bleibt. Ein weiterer wichtiger Punkt bei der Kalibrierung von Shack-Hartmann-Sensoren ist, dass wir die systematischen Fehler extrem klein halten müssen, damit sie dem angestrebten Genauigkeitsniveau entsprechen.

Feinpositionen mit Schablonen

Das Shack-Harmann-Modul in WaveMe berechnet keine Zentroide. Stattdessen verwenden wir die "Template"-Methode, damit wir viele Spots mit moderaten Kameraauflösungen analysieren können. Bei der Schablonenmethode müssen wir herausfinden, welcher Modellspot am besten zu den aktuellen Daten passt. Anhand eines Modellspots erstellt das Programm eine Reihe von Vorlagen mit unterschiedlichen Spotpositionen innerhalb eines Pixels und seiner Nachbarn. Und dann, etwas vereinfacht, korreliert WaveMe die aktuellen Daten mit dieser Vorlage. Da die Zielanwendung für WaveMe die tägliche Ausrichtungsarbeit ist, muss der Sensor sowohl kollimierte als auch divergente Strahlen verarbeiten. Aus diesem Grund optimiert WaveMe die Vorlage in einem Hintergrund-Thread. Aber die Geschichte endet hier nicht, sondern ist erst der Anfang.

Kalibrierungsmethoden

Es gibt viele Möglichkeiten, einen Shack-Hartmann-Sensor zu kalibrieren. Welche die beste ist, hängt davon ab, wie wir ihn verwenden wollen. Wenn der Sensor fest installiert ist und mit einem kollimierten Strahl beleuchtet wird, kann eine differentielle Kalibrierung mehr als ausreichend sein. Wenn die gemessene Wellenfront weniger vorhersehbar ist, müssen wir diesen Ansatz neu überdenken.

Differenzielle Kalibrierung

Bei der Auswahl der Kalibrierungsmethoden kann man zwischen zwei Methoden unterscheiden: der differentiellen und der absoluten. Bei der differentiellen Methode würden wir die Punktzentren als Referenz speichern und den Wellenfront-"Fehler" und die integrierte Abweichung von dieser Referenz angeben. Wurde die Referenz mit einer ebenen Wellenfront gemessen, so entspricht unser Ergebnis der tatsächlichen Wellenfront, die das Mikrolinsen-Array beleuchtet. Wenn wir jedoch eine divergente Wellenfront messen, treten mehrere andere systematische Fehlerbeiträge auf, die alle anderen Fehlerquellen leicht dominieren können. Auf dieses Thema werden wir später noch näher eingehen.

Absolute Kalibrierung

Ein anderer Kalibrierungsansatz, den wir als absolute Kalibrierung bezeichnen können, verwendet sphärische Wellenfronten, die in unterschiedlichen Entfernungen zur Referenzquelle aufgenommen wurden. Dieser Basisdatensatz kann dann (zum Beispiel) interpoliert werden, um eine Referenz für die aktuelle Position der Quelle zu erzeugen. Hier können wir sofort die Schlussfolgerung ziehen, dass die übliche Anwendung dieser Daten eine Art Extrapolation sein wird und unser Modell daher ein Polynom niedriger Ordnung sein sollte. Der Vorteil dieser Methode ist, dass sphärische Wellenfronten in sehr hoher Qualität zur Verfügung stehen. Single-Mode-Fasern oder geeignete Pinholes liefern sehr hochwertige sphärische Wellenfronten. Was sie nicht bieten, sind konvergierende Wellenfronten, was bedeutet, dass bei Verwendung dieser Methode mit konvergierenden Wellenfronten der Umfang der Extrapolation erheblich sein kann. Bei Shack-Hartmann-Sensoren gibt es zwar Grenzen für die Messung konvergierender Wellenfronten, aber auch hier ist der nutzbare Bereich begrenzt.

WaveMe - Synthetische Referenzkalibrierung

WaveMe verwendet einen völlig anderen Ansatz, bei dem die optischen Zentren der Mikrolinsen aus den Kalibrierungsdaten in 3D extrahiert werden und ein physikalisches Optikmodell implementiert wird, um die Auswirkungen der begrenzten Fresnel-Zahl zu berücksichtigen. Die einzige Annahme ist, dass das Array flach ist, aber darüber hinaus kann es mit mechanischen Toleranzen platziert werden. Eine Ausrichtung des Arrays ist nicht erforderlich.

Der entspannte Ausrichtungsbedarf des Mikrolinsen-Arrays kann ein großer Vorteil sein, da selbst kleine Differenzialschrauben mehrere Millimeter im Durchmesser und über einen Zentimeter lang sein können. Dies verhindert eine kosteneffiziente Integration von Sensor- und Linsenarrays als eine Einheit. Dies ermöglicht extrem kompakte und dennoch sehr genaue Lösungen.

Kontinuierliche Referenzerstellung und -optimierung

WaveMe geht davon aus, dass die Kamera immer Bilder streamt. Diese Informationen werden von einem unabhängigen Thread analysiert, um die Position der Quelle zu extrahieren. Anhand dieser Informationen erstellt das Shack-Hartmann-Modul seine eigenen Punktpositions-Referenzdaten auf der Grundlage des physikalischen Optikmodells und einer virtuellen idealen Punktquelle, die sich nun an einer beliebigen Position befinden kann und sowohl divergierende, kollimierte als auch konvergierende (virtuelle) Referenzwellenfronten erzeugt. Die virtuellen Quellen können auch einen beliebigen Einfallswinkel haben.

Diese Methode könnte man als absolute Kalibrierung bezeichnen, aber es ist anschaulicher, sie als virtuelle Quellenkalibrierung zu bezeichnen. Die oben erwähnte absolute Kalibrierung verwendet interpolierte oder extrapolierte Ergebnisse aus einer größeren Anzahl expliziter Spot-Positionsmessungen, während die letztgenannte Methode aus einer größeren Anzahl von Messungen einen einzigen Satz optischer Zentren für die Mikrolinsen ableitet. Der Unterschied mag subtil erscheinen, er ist es aber nicht. WaveMe leitet die Positionen der Mikrolinsen und ein physikalisches Optikmodell ab, das alle Daten erklärt, die ihm während des Kalibrierungsprozesses zur Verfügung gestellt werden. Relativ gesehen wird die Schwierigkeit in den Kalibrierungsprozess verlagert, während die Anwendung des Modells, zumindest numerisch gesehen, relativ einfach ist und an sich alle Anwendungsfälle abdeckt. Dies ist eine Wahl, die besser zu der angestrebten Anwendung passt, bei der keine Ausrichtung der einfallenden Wellenfront vorausgesetzt werden kann.

Ermöglichende Technologie

Ein Vorteil der synthetischen Referenzkalibrierung ist, dass sie Anwendungen unterstützt, bei denen kein Platz für eine kinematische Halterung oder mechanische Anpassungen vorhanden ist. So kann beispielsweise ein Mikrolinsen-Array mit Hilfe einer Bestückungsmaschine auf einer Leiterplatte auf einem CMOS-Sensor platziert werden. Das Ergebnis ist ein kompakter und robuster Shack-Hartmann-Sensor zu einem unübertroffenen Preis, wobei die Mathematik die Kalibrierungseffekte aufgrund von Ausrichtungsfehlern übernimmt.
Obwohl diese spezifische Lösung derzeit nicht im Fokus von Sensolgic steht, erforschen wir aktiv andere Anwendungen dieser Technologie. Wenn Sie die kameraintegrierte Lösung interessant finden, kontaktieren Sie uns bitte. Es gibt viele Aspekte der Technologie, für die Sensolgic im Moment nicht die Ressourcen hat, um sie zu erforschen, aber wir sind offen für eine Zusammenarbeit.

Vergleich mit anderen Implementierungen

Wenn man im Internet nach Shack-Hartmann-Kalibrierungs- und Messtechniken sucht, stößt man auf das Konzept der Area of Interest (AOI) oder Region of Interest (ROI), das eine Reihe von quadratischen Feldern definiert, die grob mit den Zentren der Spotpositionen ausgerichtet sind. Wir verwenden diese Konzepte in WaveMe nicht. Während sie in einer statischen Anwendung durchaus funktionieren, verhindert der dynamische Anwendungsfall von WaveMe dies vollständig.

WaveMe basiert auf der Annahme eines Bildstroms. Wenn das Shack-Hartmann-Modul aktiviert wird, versucht es, das Vorhandensein eines Punktmusters zu erkennen. Dieses Muster kann eine beliebige Drehung haben, und der Bereich der akzeptierten Punktabstände ist größer als die meisten praktischen Wellenfronterfassungsbedingungen. Sobald ein Fleckenmuster identifiziert ist, werden die Flecken aufgezählt und ein Prozess zur Anpassung eines Fleckenmodells an die aktuellen Daten wird in einem unabhängigen Thread gestartet. Nach der Aufzählung der Flecken werden die folgenden Bilder unter Verwendung der Fleckverfolgung verarbeitet.

Da es keinen festen Raum gibt, in den das Fleckenmuster passen muss, gibt es keinen expliziten Dynamikbereich für den Sensor. Es gibt jedoch einen in dem Sinne, dass sich die relativen Größen der Flecken zu stark verändern, wenn der Sensor zu nahe an die Quelle herangeführt wird, und die Genauigkeit etwas beeinträchtigt wird.

Ein weiterer Grund dafür, dass WaveMe kein festes Gitter zur Lokalisierung des Punktmusters verwendet, ist, dass die Position der Quelle nicht als bekannt vorausgesetzt wird. Die Wellenfront kann den Sensor aus einem breiten Spektrum von Richtungen und Entfernungen beleuchten. Feste AOI's wären eine zu große Einschränkung und die Anforderung, sie an die aktuellen Spotpositionen anzupassen, ist nicht akzeptabel, wenn ein Sensor für die interaktive optische Ausrichtung verwendet wird, was die Zielanwendung für dieses Modul und WaveMe im Allgemeinen ist. Schließlich soll es ja einfach sein.

Kommentar verfassen