CASA has a large number of image manipulation and analysis routines. There is broad and flexible support for selecting specific regions of an image as well as for creating and manipulating image masks. CASA supports direct access to FITS and Miriad format images, as well as its own native image format. CASA also supports creation of images using a numpy arrays as the pixel values, as well as image creation by simply specifying the image dimensions. One can create an image, called a subimage, based on a region selection in another image. CASA supports interrogating and changing image metadata, such as the unit associated with the pixel values (the brightness unit), the resolution element (the beam), etc, as well as various values associated with the image coordinate system, such as the axis reference pixels, the reference values, and increments. CASA also supports interogating and modifying image pixel and mask values. Pixel values can be modfiied using explicit values in specified regions, or by adding random values to pixels in selected regions using one of several supported distribution functions, such as normal or uniform distributions. CASA supports various types of model fitting. Fitting of any number of two dimensional gaussians and/or a constant offset can be fit to a two dimensional image or image plane, and optionally, any combination of model parameters can be held fixed. In addition, one dimensional fits are supported. These are usually performed by users in the spectral domain, although CASA supports one dimensional fitting along any image axis. A wide variety of functional forms are supported for one dimensional fitting, including polynomial, any number of Gaussians, any number of Lorentzians, and any number of Gaussian multiplets, in which there are fixed relationships among the parameters of the Gaussians in the set. Spectral index fitting, in which the intensity varies as some power of frequency (where the power may either be constant or represented by a polynomial) is also supported. Rotation measure fitting is also supported for polarization data. Various manipulation routines are supported. These include collapsing an image along one or more axes and applying one of many supported aggregate functions to the collapsed pixel values, convolving an image in one or two dimensions with one of many supported functions, cropping masked pixels from the edges of an image, calculating the fourier transform of an image, concatenating multiple images along a specified axis, calculating various moments along a specified image axis, padding an image with pixels of a specified value, correcting an image for a telescope's known primary beam attenuation function, creating position-velocity images along specified slices of an image, rebinning image pixels to larger pixel sizes, regridding image pixels to be coincident with another coordinate system, rotating the direction coordinate of an image by a specified angle, and determining the statistics of pixel values in selected regions of an image. In addition, there are a large number of manipulation routines which can be run on images which have polarization information associated with them.