FITStoImage

From CASA Guides
Jump to: navigation, search

Converting a FITS cube to a CASA Image

If you want to perform analysis on a FITS file in CASA, you first need to import it into `.image` format.

importfits('file.fits','file.image')

If this works, great! You can move on. CASA will treat NaN values in an image as 'masked'.

Dealing with Errors

There may be issues with FITS headers. CASA respects a large number of header keys (reference).

There are many ways to edit a FITS header. One of the most straightforward to use is edhead. Otherwise, one can use CASA's imhead


CASA Keyword FITS keyword Description
beammaj BMAJ Major axis of the clean beam
beammin BMIN Minor axis of the clean beam
beampa BPA Position angle of the clean beam
bunit BUNIT Brightness unit (K, Jy/beam, etc)
cdeltn CDELTn Pixel size, nth axis  (max n is 4)
crpixn CRPIXn Pixel coordinate of reference point, nth axis
crvaln CRVALn Pixel location of reference point, nth axis
ctypen CTYPEn Axis name, nth axis. For FITS, this includes the projection
cunitn CUNITn Pixel units, nth axis
datamax DATAMAX Maximum pixel value in image
datamin DATAMIN Minimum pixel value in image
date-obs DATE-OBS Date of the observation
equinox EQUINOX Reference frame for directional coordinates
imtype
Image type: intensity,
minpos
Position of the minimum value (world unit)
minpixpos
Same in pixel (array)
maxpos
Position of the maximum value (world unit)
maxpixpos
Same in pixel (array)
object OBJECT Source name
observer OBSERVER Observer name
projection CTYPEn Image projection ('SIN','TAN', or 'ZEA')
reffreqtype
Reference frame for the spectral coordinates
restfreq RESTFREQ Rest Frequency
shape NAXISn Number of pixels along each axis
telescope TELESCOP Telescope name


What does it mean if you get this sort of error?

 CASA <1>: importfits('file.fits','file.image') 
 2013-12-18 13:06:18     WARN    importfits::FITSCoordinateUtil::fromFITSHeader  The wcs function failures are too severe to continue ... 
 2013-12-18 13:06:18     WARN    importfits::ImageFITSConverterImpl::FITSToImage (file /var/rpmbuild/BUILD/casapy-stable/casapy-stable-42.0.26945/casacore/images/Images/ImageFITSConverter.tcc, line 71)       No proper coordinate system defined in FITS file. Using dummy linear system instead.

First, go to the `casapy-yyyymmdd-hhmmss.log` file and look at the errors.

 2013-12-18 13:06:18     INFO    importfits::FITSCoordinateUtil::fromFITSHeader  celfix incurred the error Inconsistent or unrecognized coordinate axis types 
 2013-12-18 13:06:18     INFO    importfits::FITSCoordinateUtil::fromFITSHeader  spcfix incurred the error Inconsistent or unrecognized coordinate axis types 
 2013-12-18 13:06:18     INFO    importfits::FITSCoordinateUtil::fromFITSHeader  cylfix incurred the error Inconsistent or unrecognized coordinate axis types

In my case, the error turned out to be that `CTYPE3` was set to `RADI-LSR`, while it should be `VELO-LSR` to be recognized by the CASA system. The velocity convention is, unfortunately, lost.