Schärfen von Astro-Bildern (Teil 1)


Sofort zum zweiten Teil (Test-Bilder "Schärfungsmatrix")

 

Einführung

Wenn man ein Astro-Bild unscharf machen will, so ist das normalerweise kein großes Problem. Es gibt diverse Verfahren, dies zu bewerkstelligen. Die Rechenzeiten sind (auch auf einem alten 386iger PC) sehr kurz und die Ergebnisse sind zufrieden stellend (siehe auch: weiter unten).

Wenn man dagegen ein Astro-Bild schärfen will, dann wird die ganze Sache etwas schwieriger. Es gibt viele Verfahren zur Schärfung von Astro-Bildern. Das eine Verfahren funktioniert beim ersten Bild (mit einer Galaxis) sehr gut, das andere Verfahren wirkt beim zweiten Bild (mit einem planetarischen Nebel) sehr gut - beim ersten Bild klappt es aber gar nicht so gut. Manche Verfahren benötigen relativ lange Rechenzeiten - besonders auf den älteren "Rechenknechten", die auch heute noch eingesetzt werden, um eine einfache CCD-Software laufen zu lassen.

Dieser Artikel soll dem interessierten Anfänger erklären, wie das denn eigentlich mit der Schärfung funktioniert. Zur Abschreckung: Hin und wieder spielt auch die "leidige" Mathematik eine Rolle - aber keine Angst, die mathematischen Methoden werden separat genau erklärt.

 

Was bedeutet eigentlich "Schärfung"?

Um zu verstehen, was "Schärfung" ist, wollen wir uns an einem einfachen Beispiel einmal ansehen, wie ein Bild unscharf wird. Stellen Sie sich einmal einen aufrecht stehenden Zylinder aus Stein vor (Abb. 1).


Abb. 1: Der "aufrechte" Zylinder

So, und nun fangen einige fleißiger Arbeiter oben an Rand an, den Fels mit Hammer und Meißel abzuschlagen. Die Steintrümmer fallen (laut Newton) nach unten und bilden nach und nach einen leicht abgeschrägten Haufen (Abb. 2).


Abb. 2: Die Arbeiter schlagen oben den Fels ab

Wenn man nun von oben auf den Zylinder blickt und die Höhe der Steine im Geist durch die Lichtintensität des Sterns ersetzt, sieht man (in etwa) eine unscharfe Sternabbildung. Aber was bedeutet das nun?

Ganz einfach! Um das unscharfe Bild aus Abb. 2 zu schärfen, müssen wir doch eigentlich nur ein paar Arbeiter einstellen, die den Schutt von unten wieder nach oben bringen und dort "ordentlich" zusammen setzen und den ordentlichen Zylinder wieder erzeugen! Das hört sich doch ziemlich einfach an. Mathematisch gesehen ist es auch ziemlich einfach (da ist sie schon, die lästige Mathematik).

 

Der Stern als Gauss-Funktion

Wenn wir einen Stern unter optimalen Bedingungen (keine Atmosphäre, optimale Montierung und Nachführung, keine Abbildungsfehler im Teleskop, usw.) mit einer CCD-Kamera aufnehmen könnten, dann wäre auf dem Bild genau ein Pixel zu sehen. Sterne sind so genannte "Punktlichtquellen". D.h., die Sterne sind so weit weg, dass sie in der Größe nicht optisch aufgelöst werden können.


Kleiner Einschub: Auflösung

Wenn der beobachtete Stern einen Durchmesser von 2.000.000 km hat (Sonnen-Durchmesser = 1.392.520 km) hat und 10 Lichtjahre (94.600.000.000.000 km) von uns entfernt ist, dann beträgt der Sichtwinkel vom rechten zum linken Rand des Sterns für uns 0.004 Bogensekunden. Das ist nicht sehr viel. Und denken Sie daran, das ein gutes Seeing eine Auflösung von ca. 1 Bogensekunde ermöglicht. Rechnen wir noch ein bisschen weiter. Wie groß müsste ein CCD-Kamera-Pixel sein, damit der Stern mit einem Teleskop mit 2 m Brennweite das gesamte Pixel bedeckt? Hier die Antwort: 0.04 µm (Mikrometer = 1/1000 Millimeter = 1/1000000 Meter). Heutige CCD-Kameras haben Pixelgrößen von ca. 5 bis 20 µm, je nach gewünschter Anwendung und zugehöriger Optik. Ein Chip von der Größe 1 cm x 1 cm würde dann von unseren Super-Mikro-Pixeln genau 6.250.000.000.000 Stück enthalten! Ein Bild aus einer solchen 16-bit-Kamera würde (ohne Komprimierung) ca. 12.5 Terabyte ( = 12500 Gigabyte) auf der Computer-Festplatte belegen. Da müssen wir wohl noch etwas mit warten! (Hoffentlich haben wir uns nirgendwo verrechnet!)


Die ausgedehnten Sternscheiben (Abb. 3) auf den Astro-Fotos entstehen also durch diverse "Unzulänglichkeiten" unserer Umgebung und des verwendeten Materials.


Abb. 3: Unterschiedlich große Sternscheiben (mit M27)

Die meisten CCD-Bildbearbeitungsprogramme bieten nun die Möglichkeit, die Intensitätsverteilung in horizontaler oder vertikaler Richtung einer bestimmten Stelle im Bild darzustellen.

     
Abb. 4: Intensitätsverteilung verschieden heller Sterne, links: schwacher Stern, Mitte: heller Stern, rechts: sehr heller Stern

Abb. 4 zeigt die Intensitätsverteilung von drei unterschiedlich hellen Sternen aus Abb. 3 (Y-Achse: Intensität, X-Achse: Pixelnummer). Beim dem sehr hellen Stern (Abb. 3, rechts) tritt bereits eine Sättigung bei der Darstellung auf. Eine normale Grafikkarte kann nur 256 Grausstufen darstellen. Werden Helligkeit und Kontrast des Bildes stark gesteigert, so werden bestimmte Teile des Sterns oben "abgeschnitten". Die Darstellungsfarbe für die Pixel, die "oben abgeschnitten" sind, ist also "rein-weiss" (so wie in der berühmten Waschmittelwerbung). Bei der Intensitätsverteilung des Sterns in der linken Abbildung tritt diese Sättigung noch nicht auf. Hier kann man recht gut erkennen, dass die Funktion eines unscharfen Sterns sehr gut durch eine Gauss-Funktion beschrieben werden kann. Das mittlere Bild in Abb. 4 liegt etwa zwischen den beiden anderen Bildern. Es liegt bereits eine gewisse Sättigung vor, diese ist aber noch nicht so extrem, wie im rechten Beispiel.


Kleiner Einschub: Die Gauss-Funktion

Bevor wir uns in die Mathematik "versenken", wollen wir uns einige "ideale" (mathematisch berechnete) Gauss-Funktionen anschauen (Abb. 5):


 Abb. 5: Mehrere "ideale" Gauss-Funktionen

Die Ähnlichkeit der obigen Funktionen mit den Intensitätsverläufen aus Abb. 4 ist deutlich erkennbar. Die Gauss-Funktionen in Abb. 5 lassen sich mathematisch in einer einfachen Weise darstellen:

        Gleichung 1

 

Wir wollen nun die beiden Konstanten A und B aus Gleichung 1 den Kurven in Abb. 5 zuordnen:

Funktion A B
1 (schwarz) 1.00 0.01
2 (blau) 0.75 0.01
3 (rot) 1.00 0.05

Man erkennt eigentlich sofort, dass die Konstante A die maximalen Höhe der Gauss-Funktion angibt. Bei der Konstanten B erkennt man den Zusammenhang jedoch nicht sofort. Es sieht aber so aus, als ob B irgendwie eine Kombination aus der Breite und der maximalen Höhe der Gauss-Funktion darstellt. In Gleichung 1 ist das Maximum der Gauss-Funktion auch immer bei "0" auf der X-Achse. Darum gibt es in der Mathematik eine etwas andere Darstellung dieser Funktion (Gleichung 2):

        Gleichung 2

 

Gleichung 2 sieht nun schon wieder etwas komplizierter aus. Das soll uns aber nicht stören. Die Konstante a gibt die Breite der Gauss-Funktion in halber Höhe an und b gibt den Mittelwert an, d.h., die Stelle auf der X-Achse, an der die Gauss-Funktion ihr Maximum erreicht. Die maximale Höhe lassen wir im Moment einmal "links liegen". Diese Höhe kann leicht modifiziert werden, indem die "1" im Zähler des ersten Bruches in Gleichung 2 durch einen beliebigen Faktor ersetzt wird. Allerdings ist die maximale Höhe nun abhängig von der Breite der Gauss-Funktion. Je breiter die Funktion, desto niedriger ist sie.

Um das 2-dimensionale Abbild eines Sterns mathematisch darzustellen, muss man nur noch zwei Gauss-Funktionen in X- und Y-Richtung durch Multiplikation überlagern (Abb. 6 und Gleichung 3). Die Konstanten A und B sind für beide Gauss-Funktionen gleich.


Abb. 6: Eine 2-dimensionale Gauss-Funktion bildet einen Stern ab

        Gleichung 3

 

Abb. 7 zeigt eine berechnete "ideale" unscharfe Abbildung eines Sterns. Abb. 7 entspricht somit der Darstellung von Abb. 6 in Form der Intensität bei einem normalen Astro-Foto. X- und Y-Achse liegen jetzt in der Fotoebene, die Z-Achse ist die Intensität des jeweiligen Pixels.

    
Abb. 7: Ein unscharfer Stern, rechts 9-fach vergrößert


Nun wieder zurück zur Schärfung.

Wenn man eine "unscharfe" Gauss-Funktion (unsere Stern-Abbildung auf den Foto) schärfen will, brauchen wir also irgendein mathematisches Verfahren, welches die schwachen Bereiche der Gauss-Funktion (rechts und links neben dem Maximum) wieder zum starken Teil (Mitte) der Funktion hinzuaddiert. Das Resultat sollte dann eine schärfere Abbildung des Sterns sein, da er nicht mehr so "verschmiert" ist (Abb. 7):


Abb. 7: Die unteren, schwachen Bereiche müssen "irgendwie" oben hinzugefügt werden  

 

Unschärfe durch Matrix-Multiplikation

Das einfachste Verfahren, um das zu realisieren, was in Abb. 7 dargestellt wurde, ist eine Multiplikation der Gauss-Funktion mit einer "Schärfungsmatrix". Nun haben wir bisher immer mit "Funktionen" gearbeitet. Bei einem Astro-Foto liegen die Intensitäts-Werte jedoch normalerweise als diskrete Ganzzahlen (Integer) für ganz bestimmte Pixel vor. Auch die Pixelwerte (X- und Y-Achse) können nur ganzzahlige Werte annehmen.

0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 197 998 2244 2892 2244 998 197 0 0
0 0 998 4932 11118 14324 11118 4932 998 0 0
0 0 2244 11118 25070 32298 25070 11118 2244 0 0
0 0 2892 14324 32298 41616 32298 14324 2892 0 0
0 0 2244 11118 25070 32298 25070 11118 2244 0 0
0 0 998 4932 11118 14324 11118 4932 998 0 0
0 0 197 998 2244 2892 2244 998 197 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0

In der obigen Tabelle ist die leicht unscharfe Abbildung eines Sterns zu sehen. Das Bild ist mathematisch erzeugt worden. So sieht die Ausgabe einer 16-bit-Kamera aus. Der Intensitäts-Wert kann maximal den Wert "65535" (= 2 hoch 16 - 1) annehmen.

Wir wollen nun erst einmal das Schärfungs-Verfahren für eine 1-dimensionale Gauss-Funktion durchführen. Die Daten liegen in Form eines Vektors der Größe M vor (z.B. eine bestimmte Zeile aus der obigen Tabelle, M wäre dann 11):

0 0 2892 14324 32298 41616 32298 14324 2892 0 0

Die Daten, die geschärft werden sollen (also des Astro-Foto), liegen ebenfalls in einem Vektor einer bestimmten Größe N vor. Der Schärfungsvektor für N = 3 sieht folgendermaßen aus:

        Gleichung 4

 

Der Schärfungs-Vektor S aus Gleichung 4 muss nun sukzessive mit dem Datenvektor des Fotos multipliziert werden. Also:

Pixel2(neu) = A * (Pixel1 * S1 + Pixel2 * S2 + Pixel3 * S3)
Pixel3(neu) = A * (Pixel2 * S1 + Pixel3 * S2 + Pixel4 * S3)
Pixel4(neu) = A * (Pixel3 * S1 + Pixel4 * S2 + Pixel5 * S3)
usw. bis:
Pixel10(neu) = A * (Pixel9 * S1 + Pixel10 * S2 + Pixel11 * S3)                Gleichung 5

Hier ist die Konstante A für die Normierung der Intensität des Bildes verantwortlich. Durch die Multiplikation mit A ändert sich also die Gesamthelligkeit des Bildes nicht. Um den Faktor A zu berechnen, werden einfach alle Elemente des Schärfungsvektors addiert. Von der Summe wird dann der Reziprokwert (= 1 / Summe) gebildet (Gleichung 6).

        Gleichung 6

 

Gleichung 5 kann auch in mathematischer Form etwas anders geschrieben werden:

        Gleichung 7

 

Wie Sie sehen, gehen zwei Pixelwerte (Pixel1 und Pixel11) verloren. Man sollte also den Multiplikations-Algorithmus so ändern, dass die Multiplikation schon bei Pixel1 beginnt und für den Pixel links daneben einfach der Wert "0" oder der Wert des Hintergrundrauschens benutzt wird. Das Gleiche gilt natürlich auch für den ganz rechts fehlenden Datenwert. Die Ergebnisse sind in der folgenden Tabelle und in Abb. 8 zu sehen.

0 -964 45 12143 35183 47828 35183 12143 45 -964 0

Bei der obigen Berechnung wurde für die fehlenden "Randwerte" der Pixelwert "0" benutzt. Die Normierungs-Konstante A beträgt für den benutzten Schärfungsvektor S (aus Gleichung 4) genau 3.0 ( = Absolutwert von -1 + 5 - 1). Negative Grau-Werte können natürlich nicht auf dem Bildschirm angezeigt werden. Aus diesem Grund sollten alle Werte, die kleiner sind als das mittlere Rauschen des Bildes, genau auf den Wert des Rauschens gesetzt werden.


Abb. 8: Darstellung der neuen Daten nach der Schärfung

Im unteren Bereich der Kurve sieht man deutlich die Schmälerung. Die maximale Höhe ist etwas größer geworden. Durch die leichte Verschmälerung der gesamten Gauss-Funktion entsteht der Eindruck der Schärfung. Aber eigentlich findet hier gar keine "echte" Schärfung statt, da die Breite der Gauss-Funktion in halber Höhe gleich bleibt. Um eine echte Schärfung zu erzielen, muss diese Breite verringert werden.

    
Abb. 9: Das Ergebnis (rechts) der obigen Regeln auf ein unscharfes Sternbild (links) angewendet

Wenn der obige Algorithmus auf ein Astro-Bild angewendet wird, muss statt der Vektor-Multiplikation eine Matrix-Multiplikation angewendet werden. Der Schärfungs-Vektor ist nun eine Matrix der Größe N x N und wird analog auf die gesamte Matrix des Bildes angewendet. Diese Matrix nennt man auch Schärfungs-Kern. In Abb. 9 ist der Algorithmus angewendet worden. Die Schärfung ist in diesem Beispiel nur schlecht zu erkennen.


Kleiner Einschub: Matrix-Multiplikation

Bei einer Matrix-Multiplikation werden die Elemente einer Spalte und die Elemente einer Zeile der jeweiligen Matrix miteinander multipliziert und dann addiert. Diese Summe ergibt das Matrixelement in der Ergebnismatrix, und zwar an der Stelle, an der sich Spalte und Zeile kreuzen. Hier ein Beispiel mit zwei allgemeinen 3 x 3-Matrizen:

                Gleichung 8

 

 

 

 

Diese "Über-Kreuz-Multiplikation" nennt man im mathematischen Bereich auch "Skalar-Produkt" und ist für größere Matrizen nicht mehr "von Hand" durchführbar. Hier müssen dann unsere Computer ran.


Bei unseren Astro-Bildern ist die Matrix des Bildes selbst natürlich wieder viel größer, als die Schärfungsmatrix. Hier führen wir die Matrix-Multiplikation sukzessive über den gesamten Bereich der Bild-Matrix durch. Wenn ein Bild 100 x 100 Pixel groß ist, dann müssen über das gesamte Bild 98 x 98 = 9604 Matrix-Multiplikationen durchführen. Lassen Sie also Ihren Taschenrechner dort, wo er ist.

Bei einer 3 x 3-Schärfungsmatrix geht rund um das Bild ein Bildpixel verloren (siehe oben). Auch hier kann man die Bildgröße durch Hinzufügen von Pixelreihen mit dem jeweiligen Hintergrundrauschen erhalten.

Die Frage, die sich jetzt natürlich stellt, ist die folgende: Wie beeinflussen die Zahlen der Matrix den Schärfungsprozess?

Wir können hier folgende Regel benutzen: Man zählt die negativen und die positiven Zahlen in der Matrix zusammen. Die Summe der positiven Zahlen muss größer sein, als die Summe der negativen Zahlen. Je näher jedoch die positive Summe an die negative Summe herankommt, desto stärkere Schärfung wird erfolgen. In Gleichung 9 ist die Summe der negativen Zahlen gleich 4.0, die Summe der positiven Zahlen ist gleich 5.0. Man kann das Schärfungs-Verhalten der Matrix steigern, indem man die negativen Werte unverändert lässt und die positive Zahl in der Mitte der Matrix auf 4.2 setzt. Im folgenden Bild wurde eine sehr unscharfe Sternabbildung mit der Schärfungsmatrix aus Gleichung 9 behandelt. Der positive Wert in der Mitte wurde jedoch mit 4.1 gewählt (Abb. 10). Wird der positive Wert in der Mitte der Matrix dagegen sehr groß im Verhältnis zur Summe der negativen Werte gewählt, so erfolgt eine sehr schwache Schärfung des Bildes.

        Gleichung 9

 

 

In Gleichung 10 wird eine Schärfungs-Matrix der Größe N = 5 gezeigt.

        Gleichung 10

 

 

Der Normierungs-Wert wird für diese Matrizen folgendermaßen berechnet (Gleichung 11):

            Gleichung 11

 

 

    
Abb. 10: Deutliche Schärfung (rechts) mit geänderter Matrix

Wie man jedoch in Abb. 10 auch klar sehen kann, ist der Durchmesser des Sterns in halber Höhe immer noch unverändert. D.h., dieses Verfahren ist nur beschränkt tauglich. Die früheren unscharfen Hubble-Bilder kann man mit diesem Verfahren nicht "scharf rechnen". Weiterhin müssen wir noch eine andere unangenehme Sache berücksichtigen. Nehmen wir einen Stern, der vor dem Hintergrund eines Nebels steht. D.h., der Stern steht nicht vor absolut schwarzem Hintergrund, sondern vor einem mehr oder weniger hellen Hintergrund. Nun wird bei unserem Algorithmus die Intensität rund um das Maximum der Gauss-Funktion auf die Mitte dieser Funktion addiert. Leider entsteht dann rund um den Stern ein hässlicher dunkler Ring (vor allen Dingen dort, wo die negativen Pixelwerte nach der Vektor- bzw. Matrix-Multiplikation auftraten (siehe oben). Steht der Stern nun vor dem helleren Hintergrund eines Nebels oder einer Galaxie, so ist dieser Effekt noch deutlicher zu sehen (Abb. 11).


Abb. 11: Der "dunkle Ring" bei hellerem Hintergrund

Im zweiten Teil des Artikels wollen wir nun den beschriebenen Schärfungs-Algorithmus und die gewonnenen Erkenntnisse auf reale Astro-Bilder anwenden.

 

Weiter zum zweiten Teil (Test-Bilder "Schärfungsmatrix")

Zurück