FITS
Flexible Image Transport System (FITS) is an open standard defining a digital file format useful for storage, transmission and processing of data: formatted as multi-dimensional arrays (for example a 2D image), or tables.[3] FITS is the most commonly used digital file format in astronomy. The FITS standard was designed specifically for astronomical data, and includes provisions such as describing photometric and spatial calibration information, together with image origin metadata.
Filename extension | .fits , .fit , .fts |
---|---|
Internet media type |
image/fits application/fits[1] |
Developed by | IAU FITS Working Group[2] |
Initial release | 1981 |
Latest release | 4.0 July 2016 |
Type of format | image format, structured data |
Website | fits |
The FITS format was first standardized in 1981;[4] it has evolved gradually since then, and the most recent version (4.0) was standardized in 2016. FITS was designed with an eye towards long-term archival storage, and the maxim once FITS, always FITS represents the requirement that developments to the format must be backward compatible.
Image metadata is stored in a human-readable ASCII header. The information in this header is designed to calculate the byte offset of some information in the subsequent data unit to support direct access to the data cells. Each FITS file consists of one or more headers containing ASCII card images[lower-alpha 1] that carry keyword/value pairs, interleaved between data blocks. The keyword/value pairs provide information such as size, origin, coordinates, binary data format, free-form comments, history of the data, and anything else the creator desires: while many keywords are reserved for FITS use, the standard allows arbitrary use of the rest of the name-space.
FITS is also often used to store non-image data, such as spectra, photon lists, data cubes, or structured data such as multi-table databases. A FITS file may contain several extensions, and each of these may contain a data object. For example, it is possible to store x-ray and infrared exposures in the same file.
Images
The earliest and still most commonly used type of FITS data is an image header/data block. The term 'image' is somewhat loosely applied, as the format supports data arrays of arbitrary dimension—normal image data are usually 2-D or 3-D, with the third dimension representing for example time or the color plane. The data themselves may be in one of several integer and floating-point formats, specified in the header.
FITS image headers can contain information about one or more scientific coordinate systems that are overlaid on the image itself. Images contain an implicit Cartesian coordinate system that describes the location of each pixel in the image, but scientific uses usually require working in 'world' coordinates, for example the celestial coordinate system. As FITS has been generalized from its original form, the world coordinate system (WCS) specifications have become more and more sophisticated: early FITS images allowed a simple scaling factor to represent the size of the pixels; but recent versions of the standard permit multiple nonlinear coordinate systems, representing arbitrary distortions of the image. The WCS standard includes many different spherical projections, including, for example, the HEALPix spherical projection widely used in observing the cosmic microwave background radiation.[5]
Tables
FITS also supports tabular data with named columns and multidimensional rows. Both binary and ASCII table formats have been specified. The data in each column of the table can be in a different format from the others. Together with the ability to string multiple header/data blocks together, this allows FITS files to represent entire relational databases.
Using FITS files
FITS support is available in a variety of programming languages that are used for scientific work, including C,[6] C++, C#, Fortran,[6] IGOR Pro, IDL, Java, Julia,[7] LabVIEW, Mathematica, MATLAB, Perl, Perl Data Language (PDL), Python, R, and Tcl. The FITS Support Office at NASA/GSFC maintains a list of libraries and platforms that currently support FITS.[8]
Image processing programs such as ImageJ, GIMP, Photoshop, Chasys Draw IES, XnView and IrfanView can generally read simple FITS images, but frequently cannot interpret more complex tables and databases. Scientific teams frequently write their own code to interact with their FITS data, using the tools available in their language of choice. The FITS Liberator software is used by imaging scientists at the European Space Agency, the European Southern Observatory and NASA.[9] The SAOImage DS9 Astronomical Data Visualization Application[10] is available for many OSs, and handles images and headers.[11]
Many scientific computing environments make use of the coordinate system data in the FITS header to display, compare, rectify, or otherwise manipulate FITS images. Examples are the coordinate transform library included with PDL, the PLOT MAP library in the Solarsoft solar-physics-related software tree, the Starlink Project AST library in C, and the PyFITS package in Python, now merged into the Astropy library.[12]
Current status
The FITS standard version 4.0 was officially approved by the IAU FITS Working Group in July 2016.[13][14]
FITS version[lower-alpha 2] | Release date | Notes |
---|---|---|
4.0 | July 2016[15] | - |
3.0 | July 2008[15] | - |
2.1b | December 2005[15] | Added support for 64-bit integer primary arrays and image extensions |
NOST 100-2.0 | March 1999[15] | - |
NOST 100-1.0 | June 1993[15] | - |
See also
- Advanced Scientific Data Format (ASDF)
- FITS Liberator
- Hierarchical Data Format (HDF)
- Common Data Format (CDF)
- NetCDF
- Aperture Photometry Tool (APT)
Notes
- 80 character fixed-length strings
-
Meaning Red Old Standard/Draft; not supported Yellow Old Standard; still supported Green Current Standard Blue Future Draft
References
- MIME Sub-type Registrations for Flexible Image Transport System (FITS), rfc4047.txt
- "IAU FITS Working Group". NASA.
- "Flexible Image Transport System: a new standard file format for long-term preservation projects?" (PDF). Vatican City. 2012-07-05. Retrieved 2013-03-06.
- Wells, D. C.; Greisen, E. W.; Harten, R. H. (June 1981). "FITS: A Flexible Image Transport System". Astronomy and Astrophysics Supplement Series. 44: 363–370. Bibcode:1981A&AS...44..363W.
- Greisen, E. W.; Calabretta, M. R. (December 2002). "Representations of world coordinates in FITS". Astronomy and Astrophysics. 395 (3): 1061–1075. arXiv:astro-ph/0207407. Bibcode:2002A&A...395.1061G. doi:10.1051/0004-6361:20021326. S2CID 3248582.
- "HEASARC Software". NASA Goddard Space Flight Center.
- "FITSIO.jl". GitHub. 15 February 2022.
- "FITS I/O Libraries". NASA Goddard Space Flight Center. Retrieved 2011-09-29.
- "The ESA/ESO/NASA FITS Liberator 3". ESA.
- "SAOImageDS9".
- "SAOImage DS9: Astronomical Data Visualization Application". Harvard–Smithsonian Center for Astrophysics.
- "PyFITS". Space Telescope Science Institute. Archived from the original on 2015-07-26. Retrieved 2013-11-04.
- FITS Working Group (2016-07-22). "Definition of the Flexible Image Transport System (FITS)" (PDF). Retrieved 2018-03-05.
- "Recent FITS Activities and Issues". 2016-07-22. Retrieved 2018-03-05.
- FITS Standard Document, FITS Documentation Page, High Energy Astrophysics Science Archive Research Center
External links
- Official website, Goddard Support Office
- FITS Birthday Announcement - Historical note from Don Wells on the events leading up to the 'birth' of the FITS format in 1979.
- FITS I/O Libraries, a list of software for reading and writing FITS files for various languages
- SAOImage DS9