Importing Flexible Image Transport System (FITS) Files
The FITS file format is the standard data format used in astronomy, endorsed by both
NASA and the International Astronomical Union (IAU). For more information about the FITS
standard, go to the FITS Web site, https://fits.gsfc.nasa.gov/
.
The FITS file format is designed to store scientific data sets consisting of
multidimensional arrays (1-D spectra, 2-D images, or 3-D data cubes) and two-dimensional
tables containing rows and columns of data. A data file in FITS format can contain
multiple components, each marked by an ASCII text header followed by binary data. The
first component in a FITS file is known as the primary, which can
be followed by any number of other components, called extensions,
in FITS terminology. For a complete list of extensions, see fitsread
.
To get information about the contents of a Flexible Image Transport System (FITS)
file, use the fitsinfo
function. The
fitsinfo
function returns a structure containing the information
about the file and detailed information about the data in the file.
To import data into the MATLAB® workspace from a Flexible Image Transport System (FITS) file, use the
fitsread
function. Using this function,
you can import the primary data in the file or you can import the data in any of the
extensions in the file, such as the Image
extension, as shown in this
example.
Determine which extensions the FITS file contains, using the
fitsinfo
function.info = fitsinfo('tst0012.fits') info = Filename: 'matlabroot\tst0012.fits' FileModDate: '12-Mar-2001 19:37:46' FileSize: 109440 Contents: {'Primary' 'Binary Table' 'Unknown' 'Image' 'ASCII Table'} PrimaryData: [1x1 struct] BinaryTable: [1x1 struct] Unknown: [1x1 struct] Image: [1x1 struct] AsciiTable: [1x1 struct]
The
info
structure shows that the file contains several extensions including theBinary Table
,ASCII Table
, andImage
extensions.Read data from the file.
To read the
Primary
data in the file, specify the filename as the only argument:pdata = fitsread('tst0012.fits');
To read any of the extensions in the file, you must specify the name of the extension as an optional parameter. This example reads the
Binary Table
extension from the FITS file:bindata = fitsread('tst0012.fits','binarytable');