aperture_photometry

photutils.aperture.aperture_photometry(data, apertures, error=None, mask=None, method='exact', subpixels=5, wcs=None)[source]

Perform aperture photometry on the input data by summing the flux within the given aperture(s).

Parameters
dataarray_like, Quantity, NDData

The 2D array on which to perform photometry. data should be background-subtracted. If data is a Quantity array, then error (if input) must also be a Quantity array with the same units. See the Notes section below for more information about NDData input.

aperturesAperture or list of Aperture

The aperture(s) to use for the photometry. If apertures is a list of Aperture then they all must have the same position(s).

errorarray_like or Quantity, optional

The pixel-wise Gaussian 1-sigma errors of the input data. error is assumed to include all sources of error, including the Poisson error of the sources (see calc_total_error) . error must have the same shape as the input data. If a Quantity array, then data must also be a Quantity array with the same units.

maskarray_like (bool), optional

A boolean mask with the same shape as data where a True value indicates the corresponding element of data is masked. Masked data are excluded from all calculations.

method{‘exact’, ‘center’, ‘subpixel’}, optional

The method used to determine the overlap of the aperture on the pixel grid. Not all options are available for all aperture types. Note that the more precise methods are generally slower. The following methods are available:

  • 'exact' (default):

    The the exact fractional overlap of the aperture and each pixel is calculated. The returned mask will contain values between 0 and 1.

  • 'center':

    A pixel is considered to be entirely in or out of the aperture depending on whether its center is in or out of the aperture. The returned mask will contain values only of 0 (out) and 1 (in).

  • 'subpixel':

    A pixel is divided into subpixels (see the subpixels keyword), each of which are considered to be entirely in or out of the aperture depending on whether its center is in or out of the aperture. If subpixels=1, this method is equivalent to 'center'. The returned mask will contain values between 0 and 1.

subpixelsint, optional

For the 'subpixel' method, resample pixels by this factor in each dimension. That is, each pixel is divided into subpixels ** 2 subpixels.

wcsWCS object, optional

A world coordinate system (WCS) transformation that supports the astropy shared interface for WCS (e.g., astropy.wcs.WCS, gwcs.wcs.WCS). Used only if the input apertures contains a SkyAperture object.

Returns
tableQTable

A table of the photometry with the following columns:

  • 'id': The source ID.

  • 'xcenter', 'ycenter': The x and y pixel coordinates of the input aperture center(s).

  • 'sky_center': The sky coordinates of the input aperture center(s). Returned only if the input apertures is a SkyAperture object.

  • 'aperture_sum': The sum of the values within the aperture.

  • 'aperture_sum_err': The corresponding uncertainty in the 'aperture_sum' values. Returned only if the input error is not None.

The table metadata includes the Astropy and Photutils version numbers and the aperture_photometry calling arguments.

Notes

If the input data is a NDData instance, then the error, mask, and wcs keyword inputs are ignored. Instead, these values should be defined as attributes in the NDData object. In the case of error, it must be defined in the uncertainty attribute with a StdDevUncertainty instance.