Skip to the navigation links
Last modified: December 2009

AHELP for CIAO 4.2


Context: tools


Restore image resolution using deconvolution techniques


arestore infile psffile outfile numiter [psf_x_center] [psf_y_center]
[method] [clobber] [verbose]


`arestore' restores images degraded by a blurring function by using one of several deconvolution techniques.

An image of astronomical source observed from space can be mathematically described as a convolution of the intrinsic brightness distribution of the source with a blurring function. The blurring of the source image may be introduced by the telescope optics and the detector, including the limited size of detector pixels, and by an additional noise component. The blurring function, often called Point Spread Function (PSF), can be expressed as a convolution between the telescope image of a point source and the point response function of the imaging detector. Various deconvolution methods can be applied to restore the degraded resolution in the image, assuming a known blurring function (PSF).

We have currently implemented the Lucy-Richardson deconvolution algorithm (method=lucy). This algorithm requires that the spatial/spectral characteristics of the input PSF are very well known (from observations or from simulations). The Lucy-Richardson method performs well for bright point sources. However, for low-count observations and especially for extended low-intensity sources, the algorithm has a tendency to concentrate the intensity into points rather than restoring the smooth low-intensity regions in the image.

As in the case of many other deconvolution techniques, this method does not produce reliable convergence and uncertainty information. Users should be very cautious in interpreting and evaluating the results of the deconvolution, especially when applied to faint and/or extended sources (few hundred counts).

Example 1

arestore my_img.fits my_psf.fits my_outfile.fits method=lucy numiter=100

Will deconvolve an image (my_img.fits) using a PSF from a file supplied by the user (my_psf.fits) using the Lucy-Richardson deconvolution (lucy) method with 100 iterations.

Example 2

arestore my_img.fits my_psf.fits my_outfile.fits psf_x_center=130
psf_y_center=128 numiter=50 method=lucy

Will deconvolve an image (my_img.fits) using a PSF from a file supplied by the user (my_psf.fits) with the PSF center defined by its logical coordinates: x=130 pixels, y=128 pixels and using 50 lucy iterations.


name type ftype def min max reqd
infile file input       yes
psffile file input       yes
outfile file output       yes
numiter integer         yes
psf_x_center integer   INDEF      
psf_y_center integer   INDEF      
method string   lucy      
clobber boolean   no      
verbose integer   0 0 5  

Detailed Parameter Descriptions

Parameter=infile (file required filetype=input)

Input image file.

Parameter=psffile (file required filetype=input)

Input response file (eg. PSF).

The PSF file that describes the instrumental smearing of the data.

To carry out deconvolution of Chandra data with arestore user needs to provide an accurate model of the PSF. The HRMA PSF can be simulated with ChaRT and the instrument effects, including detector pixelization, can be simulated with MARX. Before applying arestore, users should consult the ChaRT caveats page and review the PSF calibration information.

See the ChaRT pages on the CXC web site for more information on Chandra PSFs.

Parameter=outfile (file required filetype=output)

The restored output file.

Parameter=numiter (integer required)

Number of iterations

The number of iterations to perform; typical numbers vary by deconvolution technique.

For "lucy" deconvolution, users should run few dozen to a hundred iterations to avoid an overly grainy reconstruction.

Parameter=psf_x_center (integer default=INDEF)

X center of the PSF file.

The location of the center of the PSF in the X-direction. This should be in image coordinate, eg from 1 to N where N is the number of pixels in the X-direction.

A value of 'INDEF' will use the value (floor(N/2)+1).

Parameter=psf_y_center (integer default=INDEF)

Y center of the PSF file.

The location of the center of the PSF in the Y-direction. This should be in image coordinate, eg from 1 to N where N is the number of pixels in the Y-direction.

A value of 'INDEF' will use the value (floor(N/2)+1).

Parameter=method (string default=lucy)

Deconvolution method

Determines which deconvolution algorithm to use. Currently, the only available option is lucy, for the Lucy-Richardson deconvolution algorithm.

Parameter=clobber (boolean default=no)

Remove output file if it exists

Parameter=verbose (integer default=0 min=0 max=5)

Amount of tool chatter


Lucy-Richardson Deconvolution

The Lucy-Richardson deconvolution algorithm implemented in arestore was developed independently by Lucy (1974, Astron. J. 79, 745) and Richardson (1972, J. Opt. Soc. Am., 62,55). This is an iterative technique that applies maximum likelihood fitting using nonnegative data corrupted with Poisson noise, eg. Chandra data with photon-counting statistics.

The advantage of the Lucy-Richardson algorithm is that it is relatively fast and easy to implement, and performs well for sources which are concentrated in a few points.


See the bugs page for this tool on the CIAO website for an up-to-date listing of known bugs.

See Also

aconvolve, acrosscorr, apowerspectrum, csmooth, dmcoords, dmfilth, dmregrid, mkpsf, psf_project_ray

Last modified: December 2009