Wenn Sie sich mit Astrofotografie oder wissenschaftlichen astronomischen Daten beschäftigen, stoßen Sie unweigerlich auf das FITS-Format. FITS, die Abkürzung für Flexible Image Transport System, ist weit mehr als nur ein Bildformat wie JPG oder TIFF. Es ist der internationale Standard für die Speicherung und den Austausch astronomischer Daten und wird von professionellen Institutionen wie der NASA und Observatorien weltweit verwendet.

Der Hauptzweck von FITS liegt in der Speicherung wissenschaftlicher Daten, die oft als mehrdimensionale Arrays vorliegen. Während es natürlich auch Bilder speichern kann, liegt der Fokus auf der Bewahrung der rohen, unveränderten numerischen Daten zusammen mit umfangreichen Metadaten. Dies ist entscheidend für wissenschaftliche Analysen und die präzise Kalibrierung von Astrofotos.
Struktur und Spezifikationen des FITS-Formats
Eine FITS-Datei ist modular aufgebaut und besteht aus einer oder mehreren Header- und Dateneinheiten, abgekürzt als HDUs (Header Data Units). Die erste HDU wird als „primäre HDU“ oder „primäres Array“ bezeichnet. Jede HDU enthält einen Header, der Metadaten beschreibt, und optional eine Dateneinheit, die die eigentlichen numerischen Werte enthält.
Datentypen in FITS
Das FITS-Format ist darauf ausgelegt, eine breite Palette numerischer Daten mit hoher Präzision zu speichern. Es unterstützt primär fünf Datentypen:
- 8-Bit-Bytes ohne Vorzeichen
- 16-Bit-Ganzzahlen mit Vorzeichen
- 32-Bit-Ganzzahlen mit Vorzeichen
- 32-Bit-Gleitkommazahlen (einfache Genauigkeit)
- 64-Bit-Gleitkommazahlen (doppelte Genauigkeit)
Zusätzlich kann das Format auch 16- und 32-Bit-Ganzzahlen ohne Vorzeichen speichern, oft unter Verwendung des BZERO-Schlüsselworts (siehe unten). Diese Vielfalt an Datentypen ermöglicht die verlustfreie Speicherung von Rohdaten direkt vom Sensor, was für die nachfolgende wissenschaftliche Analyse und Bildverarbeitung unerlässlich ist.
Der FITS-Header
Jeder Headerblock in einer FITS-Datei besteht aus einer beliebigen Anzahl von 80 Zeichen langen Schlüsselwortsätzen. Jeder Satz hat die allgemeine Form: SCHLÜSSELWORT = Wert / Kommentarzeichenkette.
Der Name des Schlüsselworts kann bis zu 8 Zeichen lang sein und darf nur Großbuchstaben, Ziffern (0-9), den Bindestrich (-) und den Unterstrich (_) enthalten. Auf den Schlüsselwortnamen folgt (in der Regel) ein Gleichheitszeichen und ein Leerzeichen (= ) in den Spalten 9-10 des Satzes. Darauf folgt der Wert des Schlüsselworts, der eine Ganzzahl, eine Gleitkommazahl, eine Zeichenkette (in einfachen Anführungszeichen) oder ein boolescher Wert (der Buchstabe T für True oder F für False) sein kann.
Der letzte Schlüsselwortsatz im Header ist immer das Schlüsselwort END, das keine Wert- oder Kommentarfelder enthält. Jeder Headerblock beginnt mit einer Reihe von erforderlichen Schlüsselwörtern, die die Größe und das Format der folgenden Dateneinheit angeben. Für ein 2-dimensionales primäres Bild-Array sind dies beispielsweise:
SIMPLE = T/ file does conform to FITS standard (Gibt an, ob die Datei dem FITS-Standard entspricht)BITPIX = 16/ number of bits per data pixel (Gibt die Anzahl der Bits pro Datenpixel an, z. B. 16 für 16-Bit-Ganzzahlen oder -32 für 32-Bit-Floats)NAXIS = 2/ number of data axes (Gibt die Anzahl der Datenachsen an)NAXIS1 = 440/ length of data axis 1 (Gibt die Länge der ersten Achse an, typischerweise die X-Achse)NAXIS2 = 300/ length of data axis 2 (Gibt die Länge der zweiten Achse an, typischerweise die Y-Achse)
Diese Schlüsselwörter sind essenziell, damit Software die Struktur der gespeicherten Daten korrekt interpretieren kann. Darüber hinaus kann der Header eine Vielzahl weiterer Schlüsselwörter enthalten, die Informationen über die Beobachtung (Datum, Uhrzeit, Teleskop, Instrument), die Verarbeitung (Belichtungszeit, Filter, Kalibrierungsschritte) und weltweite Koordinatensysteme (WCS) liefern. Diese Metadaten sind für die wissenschaftliche Reproduzierbarkeit und die präzision in der Astrometrie von unschätzbarem Wert.
Ein wichtiges Konzept im Zusammenhang mit Datentypen und Headern ist die Skalierung von Daten. FITS unterstützt die Skalierung von Integer-Daten zu Gleitkommawerten mithilfe der Schlüsselwörter BZERO und BSCALE. Dies ermöglicht beispielsweise die Speicherung von Gleitkommawerten als Integer, um Speicherplatz zu sparen, ohne die Information zu verlieren, wie diese Integer in die ursprünglichen Gleitkommawerten umgerechnet werden. Wie oben erwähnt, wird BZERO auch verwendet, um vorzeichenlose Integer als vorzeichenbehaftete Integer mit einem Offset zu speichern.

Kompression von FITS-Dateien
Die Kompression ist eine Methode zur Reduzierung der Dateigröße. Während bei Allzweck-Bildformaten oft verlustbehaftete Kompression (wie bei JPEG) verwendet wird, ist bei wissenschaftlichen Daten die verlustfreie Kompression oft bevorzugt, um keine Informationen zu verlieren. FITS unterstützt verschiedene Kompressionsmethoden.
Das Arbeiten mit komprimierten FITS-Dateien ist möglich, geht jedoch oft auf Kosten einer längeren Berechnungszeit beim Zugriff auf die Daten. Software wie Siril bietet verschiedene Kompressionsalgorithmen an, darunter:
- Rice: Ein einfacher und sehr schneller Algorithmus, der sich gut für Integer-Arrays eignet.
- GZIP 1: Der Standard-gzip-Algorithmus, der auf die Bildpixel angewendet wird.
- GZIP 2: Eine Variante, bei der die Bytes im Array der Bildpixelwerte vor der gzip-Kompression in abnehmender Reihenfolge ihrer Bedeutung gemischt werden. Dies kann besonders effektiv bei der Kompression von Fließkomma-Arrays sein.
Ein wichtiger Aspekt bei der Kompression, insbesondere bei Fließkommadaten, ist die Quantisierungsebene. Während Integer-FITS-Bilder verlustfrei komprimiert werden können (z. B. mit Rice oder GZIP), lassen sich Fließkomma-Bilder oft nicht gut komprimieren, da die weniger signifikanten Bits Rauschen enthalten, das nicht komprimierbar ist. Um eine höhere Kompressionsrate zu erreichen, werden Fließkommawerte oft zunächst in skalierte Integer-Pixelwerte quantisiert, bevor sie komprimiert werden. Diese Quantisierung kann potenziell Informationen verlieren, wenn sie zu grob ist (Unterabtastung), aber bei richtiger Einstellung entfernt sie nur das Rauschen, ohne wichtige Informationen zu beeinträchtigen. Die unterstützten Algorithmen sind bei Anwendung auf Integer-FITS-Bilder alle verlustfrei. Bei Fließkomma-FITS-Bildern führt die Quantisierung vor der Kompression dazu, dass die ursprünglichen Fließkommawerte nach dem Entpacken möglicherweise nicht exakt wiederhergestellt werden, die Kompressionsrate aber deutlich höher ist.
Spezialfälle: Wissenschaftliche FITS-Dateien
FITS-Dateien von großen astronomischen Missionen wie denen des Hubble Space Telescope (HST) oder des James Webb Space Telescope (JWST) sind oft komplexer als die typischen FITS-Dateien, die von Amateurastronomen verwendet werden. Diese Dateien sind häufig als FITS-Sequenzen oder FITS-Cubes strukturiert, können aber eine wichtige Besonderheit aufweisen: Die einzelnen Bilder innerhalb dieser Sequenzen können unterschiedliche Dimensionen haben. Diese Funktion ermöglicht die Speicherung mehrdimensionaler Daten, die unter variierenden Bedingungen gesammelt wurden, wobei nicht jeder Frame oder jedes Bild in der Sequenz dieselbe Auflösung oder Größe hat. Dies ist beispielsweise bei Daten des JWST aufgrund der Art seiner Instrumente und Beobachtungsmodi häufig der Fall.
Bei der Verarbeitung dieser Art wissenschaftlicher FITS-Dateien in Software wie Siril ist es entscheidend, eine Option zu aktivieren, die den Umgang mit Bildern unterschiedlicher Dimensionen innerhalb eines FITS-Cubes ermöglicht. Andernfalls kann die Software die Datei möglicherweise nicht korrekt lesen oder verarbeiten. Es ist jedoch zu beachten, dass selbst spezialisierte Software Einschränkungen haben kann. So unterstützt Siril derzeit keine FITS-Dateien mit mehr als drei Achsen (NAXIS > 3), obwohl die Unterstützung für zukünftige Versionen geplant ist.
Bildausrichtung und das ROWORDER-Schlüsselwort
Ein historisches und potenziell verwirrendes Thema bei FITS-Bildern ist die Ausrichtung. Der FITS-Standard ist ein Container, der beschreibt, wie Daten gespeichert werden, aber nicht unbedingt, wie sie *angezeigt* werden sollen. Frühe professionelle Werkzeuge wie ds9 oder fv speicherten Bilder oft von unten nach oben, was der mathematischen Konvention entspricht, bei der die Y-Achse nach oben zeigt. Moderne Kameratreiber schreiben die Daten jedoch meist von oben nach unten.
Diese Diskrepanz kann Probleme bei der Bildverarbeitung verursachen, insbesondere beim Debayern (Umwandeln von Rohdaten in Farbbilder) und bei der Astrometrie (Bestimmung der genauen Positionen von Objekten). Ein übliches RGGB-Bayer-Muster würde beispielsweise zu GBRG, wenn das Bild auf dem Kopf steht.
Um dieses Problem zu lösen und die Dinge für Softwareentwickler und Benutzer zu vereinfachen, wurde das neue FITS-Schlüsselwort ROWORDER eingeführt. Dieses Schlüsselwort vom Typ TSTRING kann die Werte BOTTOM-UP oder TOP-DOWN annehmen und gibt die Reihenfolge der Zeilen im Datensatz an. Software wie Siril liest und zeigt Bilder zwar immer in der Reihenfolge von unten nach oben an (für Konsistenz), verwendet aber die Information im ROWORDER-Schlüsselwort, um beispielsweise das korrekte Debayer-Muster anzuwenden.
Die FITS-Spezifikation selbst (Abschnitt 5.1, Konventionen für die Bildanzeige) empfiehlt FITS-Erstellern, Pixel so anzuordnen, dass das erste Pixel dasjenige ist, das in der linken unteren Ecke angezeigt würde (erste Achse nach rechts, zweite nach oben). Dies ist jedoch nur eine Anzeige-Konvention und entbindet nicht von der Notwendigkeit vollständiger und korrekter Koordinatenbeschreibungen.

Es ist wichtig zu beachten, dass das ROWORDER-Schlüsselwort nur für die Anzeige und das Spiegeln des Bayer-Demosaikmusters verwendet werden sollte. Es darf nicht verwendet werden, um die Bilddaten für das Stacking oder die astrometrische Lösung zu spiegeln, da dies zu Inkompatibilitäten mit anderen Programmen und Kalibrierungsdateien führen würde.
Umgang mit der Bayer-Matrix
Neben der Zeilenreihenfolge (ROWORDER) beeinflussen auch die optionalen FITS-Header-Schlüsselwörter XBAYROFF und YBAYROFF die Interpretation der Bayer-Matrix. Diese Schlüsselwörter geben einen Offset zur Bayer-Matrix an, um das Lesen in der ersten Spalte oder der ersten Zeile zu beginnen. Zusammen mit ROWORDER ermöglichen sie die korrekte Interpretation des Bayer-Musters unabhängig davon, wie die Daten physikalisch gespeichert wurden und wie der Sensorhersteller das Muster angelegt hat. Testbilder existieren, um Softwareentwicklern bei der korrekten Implementierung dieser Schlüsselwörter zu helfen.
Wie öffnet und betrachtet man FITS-Dateien?
Da FITS in erster Linie ein Container für Rohdaten und Metadaten ist und keine integrierten Anweisungen zur Bilddarstellung (wie Farbtabellen oder Transferfunktionen) enthält, können Standard-Bildbetrachter (wie der in Ihrem Betriebssystem integrierte Viewer) FITS-Dateien oft nicht öffnen oder korrekt anzeigen. Wenn sie ein Bild anzeigen, verwenden sie oft eine sehr einfache Skalierung, die den enormen Dynamikbereich astronomischer Daten nicht adäquat darstellt.
Um FITS-Dateien korrekt zu betrachten und zu bearbeiten, benötigen Sie spezielle Software. Diese Software muss in der Lage sein, die Header-Informationen zu lesen, die numerischen Daten zu interpretieren und geeignete Algorithmen zur Bilddarstellung anzuwenden (z. B. logarithmische oder quadratische Skalierung, Histogramm-Angleichung, um den Dynamikbereich für das menschliche Auge sichtbar zu machen). Sie muss auch in der Lage sein, mit unterschiedlichen Datentypen und Dimensionen umzugehen und möglicherweise Metadaten zu interpretieren.
Programme zur Bearbeitung von FITS
Es gibt eine Reihe von Programmen und Bibliotheken, die FITS-Dateien unterstützen, von einfachen Betrachtern bis hin zu leistungsstarken Bildverarbeitungs- und Analysewerkzeugen:
- SAOImage ds9: Ein weit verbreiteter FITS-Viewer und Analysewerkzeug, das vom Harvard Smithsonian Center for Astrophysics entwickelt wurde. Es ist ein Standard in der professionellen Astronomie und bietet umfangreiche Funktionen zur Anzeige und einfachen Analyse.
- fv: Ein weiterer FITS-Viewer, bereitgestellt von der NASA.
- Siril: Eine beliebte, kostenlose und Open-Source-Software speziell für die Astrofotografie. Siril kann FITS-Dateien lesen, verarbeiten (Kalibrierung, Stacking) und schreiben. Es implementiert wichtige FITS-Funktionen wie die Interpretation von
ROWORDERund kann mit komprimierten FITS-Dateien umgehen. - GIMP: Das GNU Image Manipulation Program kann FITS-Dateien lesen und schreiben, oft über ein Plugin. Die Unterstützung ist jedoch in der Regel auf die Bilddaten beschränkt und handhabt komplexe Header-Informationen oder spezielle FITS-Strukturen (wie Tabellen oder CUBEs mit unterschiedlichen Dimensionen) möglicherweise nicht vollständig.
- ImageMagick & Netpbm: Kommandozeilen-Tools, die für die Konvertierung zwischen vielen Bildformaten, einschließlich FITS, verwendet werden können. Nützlich für Skripte und Automatisierung.
- ImageTOOLSca & FITS2jpeg: Spezifische Konvertierungstools, oft mit Fokus auf die Umwandlung von FITS in gängige Formate wie JPEG oder TIFF.
- Astropy: Eine umfassende Python-Bibliothek für die Astronomie. Der Unterbereich
astropy.io.fitsbietet eine leistungsstarke und flexible Schnittstelle zum Lesen, Schreiben und Bearbeiten von FITS-Dateien programmgesteuert. Dies ist das Werkzeug der Wahl für Astronomen und Astrofotografen, die eigene Verarbeitungs-Skripte entwickeln möchten.
Arbeiten mit FITS-Daten: Bilder und Tabellen
Die Arbeit mit FITS-Daten, insbesondere über Programmierbibliotheken wie astropy in Python, demonstriert die Flexibilität des Formats. Eine FITS-Datei wird typischerweise als Liste von HDUs (HDUList) geöffnet. Jede HDU hat Attribute für den Header (.header) und die Daten (.data).
Wenn eine HDU Bilddaten enthält, wird das .data-Attribut ein Numpy-Array zurückgeben. Numpy ist eine leistungsstarke Bibliothek für numerische Berechnungen in Python. Dies ermöglicht es, auf Pixelwerte zuzugreifen (z. B. daten[y, x], wobei die Reihenfolge der Achsen der Numpy-Konvention folgt, die sich von der FITS-Konvention unterscheiden kann – in Numpy ist die erste Achse die Y-Achse), Bildausschnitte zu extrahieren (Slicing) oder mathematische Operationen auf dem gesamten Bild durchzuführen (z. B. Skalierung, Kalibrierung). Der Zugriff auf die Daten ist dabei oft speichereffizient implementiert (z. B. über Memory-Mapping für große Dateien), sodass nicht die gesamte Datei in den Arbeitsspeicher geladen werden muss.
Neben Bilddaten kann eine FITS-Datei auch Tabellendaten enthalten (als BinTableHDU oder TableHDU). In diesem Fall gibt das .data-Attribut ein Numpy-Record-Array oder ein ähnliches Objekt zurück. Dies ermöglicht den Zugriff auf Daten spaltenweise, entweder über den Index der Spalte oder über ihren Namen (z. B. daten['Spaltenname']). Die Metadaten der Spalten (Namen, Formate, Einheiten etc.) sind über das .columns-Attribut zugänglich.

Die Flexibilität, sowohl Bilddaten als auch Tabellendaten (z. B. Kataloge von Objekten im Bild, Spektren oder Zeitreihen) und umfangreiche Metadaten in einer einzigen Datei oder einer verknüpften Struktur zu speichern, macht FITS zum idealen Format für komplexe astronomische Datensätze.
FITS im Vergleich zu anderen Bildformaten
Um die Rolle von FITS besser zu verstehen, ist ein Vergleich mit gängigen Bildformaten wie JPG oder TIFF hilfreich:
| Merkmal | FITS | JPG/TIFF (typisch) |
|---|---|---|
| Zweck | Wissenschaftliche Daten (Astronomie), Rohdaten | Allzweck-Bildformat, Endprodukt |
| Datentyp | Rohdaten (Integer, Float), bis zu 64 Bit pro Pixel | Oft Integer (8, 16 Bit pro Farbkanal), RGB |
| Dynamikbereich | Sehr hoch (ermöglicht Speicherung feinster Helligkeitsunterschiede) | Begrenzt (oft 256 oder 65536 Werte pro Kanal) |
| Metadaten | Umfangreicher, strukturierter Header für wissenschaftliche Informationen | Weniger standardisiert (EXIF etc.), Fokus auf Kameraeinstellungen |
| Kompression | Verlustfrei (Integer), Kontrollierbar verlustbehaftet (Float) | Verlustbehaftet (JPG), Verlustfrei (TIFF) |
| Bilddarstellung | Benötigt Spezialsoftware zur Skalierung | Integrierte Informationen für Standardanzeige |
| Anwendung Astrofotografie | Speicherung von Rohbildern, Kalibrierungsdateien (Darks, Flats, Bias) | Speicherung des finalen bearbeiteten Bildes |
Dieser Vergleich verdeutlicht, warum Astrofotografen mit FITS-Dateien arbeiten, auch wenn das Endergebnis oft als JPG oder TIFF geteilt wird. FITS bewahrt die kritischen Rohdaten und Metadaten, die für eine präzise Kalibrierung und Bearbeitung unerlässlich sind, um das bestmögliche Ergebnis aus den Teleskopaufnahmen zu erzielen.
Häufig gestellte Fragen zu FITS
Warum wird FITS für Astrofotografie verwendet?
FITS wird verwendet, weil es die rohen, linearen Daten direkt vom Kamerasensor verlustfrei speichern kann. Dies ist entscheidend für die Kalibrierungsschritte (Abzug von Darkframes, Flatframes und Biasframes), die auf der genauen numerischen Beziehung zwischen Licht und Signal basieren. FITS bewahrt auch den vollen Dynamikbereich des Sensors (oft 12 Bit, 14 Bit, 16 Bit oder mehr), während Formate wie JPG diesen auf 8 Bit reduzieren würden. Außerdem speichert der FITS-Header wichtige Metadaten über die Aufnahme und das Teleskop, die für die weitere Verarbeitung notwendig sind.
Ist jede FITS-Datei ein Bild?
Nein. Obwohl FITS am bekanntesten für die Speicherung von astronomischen Bildern ist, kann es jede Art von wissenschaftlichen Daten speichern, die als mehrdimensionale Arrays oder Tabellen strukturiert werden können. Eine FITS-Datei kann Spektren (1D-Daten), Zeitreihen, Tabellen von Objektdaten, oder sogar komplexe wissenschaftliche Datenwürfel enthalten, die nicht direkt als visuelles Bild interpretierbar sind.
Wie werden Farben in einer FITS-Datei gespeichert?
Anders als bei RGB-Bildformaten wie JPG oder TIFF, bei denen die Farbinformationen direkt in Pixeln gespeichert sind, speichern Astrofotografie-Kameras oft Rohdaten von einem Bayer-Sensor in einer einzigen Bildebene. Diese Ebene enthält Helligkeitswerte, die durch ein Farbfilter-Array (Bayer-Matrix) gefiltert wurden. Die Farbinformationen werden erst während des Debayering-Prozesses (oft als Demosaicing bezeichnet) aus diesen Rohdaten abgeleitet. In manchen Fällen, insbesondere bei professionellen Daten oder nach der Verarbeitung, können die Daten für verschiedene Farbkanäle (z. B. Rot, Grün, Blau, Luminanz oder Schmalbandfilter) in separaten HDUs innerhalb derselben FITS-Datei gespeichert werden.
Welche Software soll ich verwenden, um FITS-Dateien zu bearbeiten?
Für die Astrofotografie sind spezialisierte Programme wie Siril (kostenlos), PixInsight (kommerziell) oder AstroPixelProcessor (kommerziell) die Werkzeuge der Wahl. Diese Programme sind darauf ausgelegt, FITS-Daten zu lesen, zu kalibrieren, zu stacken und weiterzubearbeiten. Für das reine Betrachten oder einfache Konvertierungen können Programme wie SAOImage ds9 oder (mit Einschränkungen) GIMP nützlich sein. Für die programmgesteuerte Verarbeitung ist die Python-Bibliothek astropy sehr leistungsfähig.
Fazit
Das FITS-Format ist ein Eckpfeiler der modernen Astronomie und Astrofotografie. Seine Fähigkeit, rohe numerische Daten mit hoher Präzision und umfangreichen Metadaten in einem standardisierten Container (bestehend aus Header- und HDU-Einheiten) zu speichern, macht es unverzichtbar für wissenschaftliche Forschung und hochwertige Bildverarbeitung. Obwohl die Komplexität des Formats und die Notwendigkeit spezieller Software anfangs einschüchternd wirken mögen, ist das Verständnis von FITS der Schlüssel zur Nutzung des vollen Potenzials astronomischer Aufnahmen. Werkzeuge und Bibliotheken wie astropy und dedizierte Astrofotografie-Software machen den Umgang mit FITS heute zugänglicher als je zuvor.
Hat dich der Artikel FITS: Das Standardformat der Astronomie erklärt interessiert? Schau auch in die Kategorie Ogólny rein – dort findest du mehr ähnliche Inhalte!
