Astrofotografie: FITS Header

Gehört zu: Astrofotografie
Siehe auch: FITS FormatMetadaten, Fitswork, Stacking, Platesolving, Deep Sky Stacker, Astro Pixel Processor, N.I.N.A., SiriL

Stand: 02.10.2023

Der FITS Header

Das beliebteste Dateiformat für Astrofotos ist das FITS-Format, welches von der NASA entwickelt wurde und von der IAU empfohlen wird.

Astro-Kameras erzeugen oft direkt Bilddateien im FITS-Format; beispielsweise macht das meine Astro-Kamera ZWO ASI294MC Pro so.

Ein besonderer und sehr wichtiger Teil bei Fotos im FITS-Format ist der sog. FITS-Header, in dem wichtige sog. Metadaten über das Astrofoto gespeichert werden. Die Einheiten im FITS Header nennen Spezialisten auch HDUs (=Header Data Units).

Im FITS Header steht u.a.:

  • Name des Beobachtungsobjekts
  • Ort der Beobachtung
  • Aufnahmedatum
  • Belichtungszeit
  • Brennweite
  • etc.

Wem der Inhalt des FITS-Headers egal ist, braucht nicht mehr weiterzulesen.

Die Einzelaufnahmen (Sub Exposures) bei solchen Kameras werden also von der Aufnahme-Software im FITS-Format (mit FITS Header) gespeichert, aber dann kommt die Stacking-Software und macht ein “Summenbild” aus den Einzelbildern. Sofort erhebt sich die Frage, ob denn im FITS-Header des Summenbildes auch alle relevanten Informationen aus den FITS-Headern der Einzelbilder übernommen werden.

Betrachten der Daten im FITS Header

Praktisch jede Software, die Bilddateien im FITS-Format bearbeiten kann, hat auch irgendwo eine Anzeigemöglichkeit für die Daten des FITS Headers. Beispiele: Fitswork, Siril

Editieren der Daten im FITS Header

Wenn man aber selber Veränderungen am FITS Header vornehmen möchte (weil z.B. durch Stacking-Software Informationen verloren gingen) gibt es sogut wie garnichts.

Eine Software, die ich dafür gefunden habe ist F4W2HDU, was aber sehr kryptisch arbeitet und auch Beschränkungen hat.

Es soll noch eine weitere Software mit dem Namen WCSTools geben.

Für Suchen mit Tante Google würde ich den Suchbegriff “WCS-FITS” probieren.

Jetzt habe ich noch die Software QFitsView gefunden: https://youtu.be/wmbsJLAamPU?feature=shared

Der FITS Header nach der Einzelaufnahme

Als erstes machen wir mit einer Aufnahme-Software Einzelaufnahmen. Die dazu benutzte Software schreibt einiges in den FITS Header.

Als solche Aufnahme-Software (FITS Header: SWCREATE) habe ich im Einsatz:

Viele wichtige Metadaten schreibt die Aufnahme-Software gleich in den FITS Header jedes Einzelfotos. Teilweise kommen diese Daten von verbundenen Geräten (z.B. ASCOM-Montierung),  teilweise von Einstellungen, die in der Aufnahme-Software gemacht wurden (z.B. über Profile) oder von Daten der Einzelaufnahme gemäß eines Aufnahmeplans (Sequence) oder etc. etc. pp.

Beispiele von FITS-Headern, die meine Aufnahme-Software geschrieben hat, habe ich nach unten verschoben. Einen Vergleich zeigt folgende Tabelle:

Tabelle 1: FITS-Header und Aufnahme-Software

Metadatum FITS Header APT SharpCap N.I.N.A.
Name der Aufnahmesoftware SWCREATE Konstante Konstante Konstante
Name des Beobachters OBSERVER aus Settings aus Settings Nein
Name des Beobachtungsobjekts OBJECT Eingabe Ja, falls angegeben “Snapshot” oder Target aus Sequence
Ort der Beobachtung SITELAT, SITELONG Eingabe Nein, aber OBSLAT, OBSLOG Eingabe
Datum der Beobachtung
The UTC date and time at the start of the exposure
DATE-OBS System Clock System Clock System Clock
Name der Kamera INSTRUME Eingabe Eingabe Eingabe
Pixel Size XPICSZ, YPICSZ Eingabe Eingabe Eingabe
Belichtungszeit EXPTIME Eingabe Eingabe Eingabe
Gain/ISO GAIN Eingabe Eingabe Eingabe
Name des Teleskops bzw. des Fotoobjektivs TELESCOP Eingabe aus Settings Eingabe
Brennweite FOCALLEN Eingabe Nein Eingabe
Equinoktikum EQUINOX Nein aus ASCOM-Teleskop aus ASCOM-Teleskop
Rektaszension OBJCTRA aus ASCOM-Teleskop aus ASCOM-Teleskop aus ASCOM-Teleskop
Deklination OBJCTDEC aus ASCOM-Teleskop aus ASCOM-Teleskop aus ASCOM-Teleskop

Je nachdem, wie die verwendete Montierung mithilfe der Aufnahme-Software auf das Beobachtungsobjekt gefahren wurde (z.B. GOTO), kennt die Aufnahme-Software die Himmelskoordinaten des Beobachtungsobjekts (im Pointing-Modell des ASCOM-Treibers der Montierung) und schreibt diese ebenfalls in den FITS Header als:

  • OBJCTRA
  • OBJCTDEC

Siehe dazu auch: https://forums.sharpcap.co.uk/viewtopic.php?t=734

Dabei bedeutet C2A  “Computer aided Astronomy” und ist ein Planetariumsprogramm (Link: http://www.astrosurf.com/c2a/english/)

Der FITS Header nach dem Stacken

Es gibt ja verschiedene Software, die man zum Stacken verwenden kann. Dabei gibt es einige Unterschiede beim eigentlichen Stacken (Kalibrieren, Registrieren und Stacken), aber auch Unterschiede bei der Behandlung der FITS Header.

Als Stacking-Software habe im Einsatz:

In das Summenbild übernimmt diese Stacking-Software aber nicht 100% aller möglichen und sinnvollen Werte:

Tabelle 2: FITS Header und Stacking-Software

Metadatum FITS Header DSS SiriL 1.2.0
Name der Software SWCREATE nein, stattdessen SOFTWARE nein, stattdessen PROGRAM
Name des Beobachters OBSERVER übernimmt aus erstem Bild
(Text aber nur bis zum ersten Blank)
übernimmt aus erstem Bild
Name des Beobachtungsobjekts OBJECT nein übernimmt
Ort der Beobachtung SITELAT, SITELONG übernimmt nicht unterstützt
Datum der Beobachtung
The UTC date and time at the start of the exposure
DATE-OBS nein übernimmt aus erstem Bild
Name der Kamera INSTRUME übernimmt übernimmt
Pixel Size XPICSZ, YPICSZ nein übernimmt
Anzahl Einzelbilder STACKCNT nein Anzahl gestackter Einzelbilder
Gesamte Belichtungszeit EXPTIME Summe aus den Einzelbilder Summe aus den Einzelbildern
Gain/ISO GAIN übernimmt übernimmt
Name des Teleskops bzw. des Fotoobjektivs TELESCOP übernimmt übernimmt
Brennweite FOCALLEN nein übernimmt
Equinoktikum EQUINOX nein übernimmt
Rektaszension (hms) OBJCTRA übernimmt übernimmt
Deklination (dms) OBJCTDEC übernimmt übernimmt

Der FITS Header nach dem Plate Solving (WCS Koordinaten)

Mit dem Plate Solving werden ja die Koordinaten (Himmelskoordinaten Rektaszension und Deklination) der  Bildmitte ermittelt sowie Drehwinkel und Abbildungsmaßstab.

Plate Solving wird einerseits eingesetzt, um das Teleskop auf das gewünschte Beobachtungsobjekt zu positionieren (also vor der Aufnahme); ggf. mit SYNC und GOTO  etc. Andererseits können auch nach der Aufnahme diese durch Plate Solving ermittelten Daten wichtig sein z.B. für eine fotometrische Farb-Kalibrierung oder auch ganz einfach für Annotationen.

Als Platesolving-Software auch ich im Einsatz:

Nach dem Platesolving hat man also einen Zusammenhang zwischen Bildkoordinaten (x,y in Pixeln) und astronomischen Koordinaten (Rektaszension, Deklination und genaugenommen noch Equinox). Diese astonomischen Koordinaten sind eine praktische Ausprägung des sog. “World Coordinate System (WCS)”.

Falls das “geplatesolvte” Astro-Foto im FITS-Foramat ist, werden die WCS Koordinaten durch folgende Einträge im FITS Header spezifiziert:

  • CTYPE1 = ‘RA—TAN’   (äquatoriale Koordinate ‘RA” in tangentialer (gnomonischer) Projektion)
  • CTYPE2 = ‘DEC–TAN’  (äquatoriale Koordinate “DEC” in tangentialer (gnomonischer) Projektion)
  • CRPIX1 = 2071   (x-Koordinate des Referenzpixels, normalerweise die Bildmitte)
  • CRPIX2 = 1411    (y-Koordinate des Referenzpixels, normalerweise die Bildmitte)
  • CRVAL1 =    WCS-Koordinate1 des Referenzpixels (normalerweise Rektaszension der Bildmitte)
  • CRVAL2 =    WCS-Koordinate2 des Referenzpixels (normalerweise Deklination der Bildmitte)
  • CDELT1 =     Pixelgröße in x-Richtung in Grad dezimal
  • CDELT2 =    Pixelgröße in y-Richtung in Grad dezimal

Häufig werden CRVAL1 und CRVAL2 auch weggelassen. weil diese Information ja schon in anderen KEY-Wörtern vorhanden ist.

Eigentlich könnten CDELT1 und CDELT2 auch weggelassen werden, weil diese Information auch schon an anerer Stelle steht, aber SiriL braucht diese Einträge.

Wenn man Siril zum Platesolven einsetzt, werden alle diese Parameter auch tatsächlich in den FITS-Header geschrieben.

Bei Siril sind solche WCS Koordinaten dann erforderlich, um ein Koordinatennetz und/oder Annotationen (Namen von DSOs und/oder Sternen) automatisch anzuzeigen.

SiriL schreibt auch  PLTSOLVD=T (nicht F) in den FITS-Header, was aber für die Funktion “Annotation” nicht erforderlich ist.

Post Processing mit WCS Koordinaten

Falls im FITS Header gültige WCS Koordinaten gefunden werden, unterstützt bestimmte Software (z.B. Siril) weitere Funktionen:

  • Photometric Color Calibration
  • Annotations: Star names, DSO names
  • Äquatoriale Koordinatenlinien: Rektaszension, Deklination

Beispiele von FITS-Headern durch Aufnhame-Software

Beispiel: FITS-Header mit APT

SIMPLE = T / file does conform to FITS standard
BITPIX = 16 / number of bits per data pixel
NAXIS = 2 / number of data axes
NAXIS1 = 4144 / length of data axis 1
NAXIS2 = 2822 / length of data axis 2
EXTEND = T / FITS dataset may contain extensions
COMMENT FITS (Flexible Image Transport System) format is defined in ‘Astronomy
COMMENT and Astrophysics’, volume 376, page 359; bibcode: 2001A&A…376..359H
BZERO = 32768 / offset data range to that of unsigned short
BSCALE = 1 / default scaling factor
OBJECT = ‘M57 ‘ / The name of Object Imaged
TELESCOP= ‘EQMOD HEQ5/6’ / The Telescope used
INSTRUME= ‘ZWO ASI294MC Pro’ / The model Camera used
OBSERVER= ‘Dietrich Kracht’ / The name of the Observer
DATE-OBS= ‘2022-09-12T09:51:36’ / The UTC date and time at the start of the expo
HIERARCH CAMERA-DATE-OBS = ‘2022-09-12T09:51:36’ / The UTC date and time at the
EXPTIME = 0.002 / The total exposure time in seconds
CCD-TEMP= 23.5 / Temperature of CCD when exposure taken
XPIXSZ = 4.63 / Pixel width in microns (after binning)
YPIXSZ = 4.63 / Pixel height in microns (after binning)
XBINNING= 1 / Binning factor in width
YBINNING= 1 / Binning factor in height
XORGSUBF= 0 / Sub frame X position
YORGSUBF= 0 / Sub frame Y position
EGAIN = 1.00224268436432 / Electronic gain in e-/ADU
FOCALLEN= 50 / Focal Length of the Telescope in mm
JD = 2459834.91083333 / Julian Date
SWCREATE= ‘Astro Photography Tool – APT v.4.01’ / Imaging software
SBSTDVER= ‘SBFITSEXT Version 1.0’ / Standard version
SNAPSHOT= 1 / Number of images combined
SET-TEMP= 21. / The setpoint of the cooling in C
IMAGETYP= ‘Light Frame’ / The type of image
OBJCTRA = ’05 12 43′ / The Right Ascension of the center of the image
OBJCTDEC= ‘-03 29 58’ / The Declination of the center of the image
OBJCTALT= ‘8.2047 ‘ / Nominal altitude of center of image
OBJCTAZ = ‘252.5824’ / Nominal azimuth of center of image
AIRMASS = 7.00717254857843 / Air Mass value
SITELAT = ‘+53 00 00.000’ / The site Latitude
SITELONG= ‘+10 00 00.000’ / The site Longitude
GAIN = 120 / The gain set (if supported)
OFFSET = 8 / The offset/black level set (if supported)
BAYERPAT= ‘RGGB ‘ / The Bayer color pattern
END

Beispiel: FITS-Header mit SharpCap

SIMPLE = T / C# FITS: 09/12/2022 12:18:27
BITPIX = 16
NAXIS = 2 / Dimensionality
NAXIS1 = 4144
NAXIS2 = 2822
XBAYROFF= 0 /
YBAYROFF= 0 /
FRAMETYP= ‘Light ‘ /
SWCREATE= ‘SharpCap v4.0.9268.0, 32 bit’ /
DATE-OBS= ‘2022-09-12T10:18:27.3673948’ / System Clock:Est. Frame Start
DATE-AVG= ‘2022-09-12T10:18:27.3682758’ / System Clock:Est. Frame Mid Point
BAYOFFY = 0 /
FOCUSPOS= 5000 /
GAIN = 120 /
BLKLEVEL= 8 /
DATE-END= ‘2022-09-12T10:18:27.3691567’ / System Clock:Est. Frame End
BAYOFFX = 0 /
COLORTYP= ‘RGGB ‘ / Try GBRG if image upside down or R/B swapped.
FOCTEMP = 0 / CELCIUS
CCD-TEMP= 27.1 / C
YBINNING= 1 /
XBINNING= 1 /
YPIXSZ = 4.63 / microns, includes binning if any
XPIXSZ = 4.63 / microns, includes binning if any
EXPTIME = 0.001762 / seconds
ROWORDER= ‘TOP-DOWN’ /
BSCALE = 1 /
BZERO = 32768 /
EXTEND = T / Extensions are permitted
BAYERPAT= ‘RGGB ‘ / Try GBRG if image upside down or R/B swapped.
INSTRUME= ‘ZWO ASI294MC Pro’ /
END

Beispiel: FITS-Header mit N.I.N.A.

SIMPLE = T / C# FITS
BITPIX = 16 /
NAXIS = 2 / Dimensionality
NAXIS1 = 4144 /
NAXIS2 = 2822 /
BZERO = 32768 /
EXTEND = T / Extensions are permitted
IMAGETYP= ‘LIGHT’ / Type of exposure
EXPOSURE= 1.0 / [s] Exposure duration
EXPTIME = 1.0 / [s] Exposure duration
DATE-LOC= ‘2022-09-12T13:01:51.863’ / Time of observation (local)
DATE-OBS= ‘2022-09-12T11:01:51.863’ / Time of observation (UTC)
XBINNING= 1 / X axis binning factor
YBINNING= 1 / Y axis binning factor
GAIN = 120 / Sensor gain
OFFSET = 8 / Sensor gain offset
EGAIN = 1.00224268436432 / [e-/ADU] Electrons per A/D unit
XPIXSZ = 4.63 / [um] Pixel X axis size
YPIXSZ = 4.63 / [um] Pixel Y axis size
INSTRUME= ‘ZWO ASI294MC Pro’ / Imaging instrument name
SET-TEMP= -10.0 / [degC] CCD temperature setpoint
CCD-TEMP= 28.9 / [degC] CCD temperature
BAYERPAT= ‘RGGB’ / Sensor Bayer pattern
XBAYROFF= 0 / Bayer pattern X axis offset
YBAYROFF= 0 / Bayer pattern Y axis offset
USBLIMIT= 40 / Camera-specific USB setting
TELESCOP= ‘Canon’ / Name of telescope
FOCALLEN= 50.0 / [mm] Focal length
ROWORDER= ‘TOP-DOWN’ / FITS Image Orientation
EQUINOX = 2000.0 / Equinox of celestial coordinate system
SWCREATE= ‘N.I.N.A. 2.0.0.9001 ‘ / Software that created this file
END