PixelRegion

class regions.PixelRegion[source]

Bases: Region

Base class for all regions defined in pixel coordinates.

Attributes Summary

area

The exact analytical area of the region shape.

bounding_box

The minimal bounding box (in integer pixel coordinates) that contains the region.

meta

visual

Methods Summary

as_artist([origin])

Convert to matplotlib patch object for this region.

contains(pixcoord)

Check whether a position or positions fall inside the region.

intersection(other)

Return a region representing the intersection of this region with other.

plot([origin, ax])

Plot the region on a matplotlib Axes instance.

symmetric_difference(other)

Return the union of the two regions minus any areas contained in the intersection of the two regions.

to_mask([mode, subpixels])

Return a mask for the region.

to_sky(wcs)

Return a region defined in sky coordinates.

union(other)

Return a region representing the union of this region with other.

Attributes Documentation

area

The exact analytical area of the region shape.

bounding_box

The minimal bounding box (in integer pixel coordinates) that contains the region.

meta = {}
visual = {}

Methods Documentation

abstract as_artist(origin=(0, 0), **kwargs)[source]

Convert to matplotlib patch object for this region.

Parameters:
originarray_like, optional

The (x, y) pixel position of the origin of the displayed image.

**kwargsdict

Any keyword arguments accepted by Patch.

Returns:
patchPatch

A matplotlib patch.

abstract contains(pixcoord)[source]

Check whether a position or positions fall inside the region.

Parameters:
pixcoordPixCoord

The position or positions to check.

intersection(other)[source]

Return a region representing the intersection of this region with other.

plot(origin=(0, 0), ax=None, **kwargs)[source]

Plot the region on a matplotlib Axes instance.

Parameters:
originarray_like, optional

The (x, y) pixel position of the origin of the displayed image.

axAxes or None, optional

The matplotlib axes on which to plot. If None, then the current Axes instance is used.

**kwargsdict

Any keyword arguments accepted by Patch.

Returns:
artistmatplotlib.artist.Artist

The matplotlib artist (typically a Patch object) for the plotted region. The artist can be used, for example, when adding a plot legend.

symmetric_difference(other)[source]

Return the union of the two regions minus any areas contained in the intersection of the two regions.

abstract to_mask(mode='center', subpixels=5)[source]

Return a mask for the region.

Parameters:
mode{‘center’, ‘exact’, ‘subpixels’}, optional

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

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

  • 'exact' (default): The exact fractional overlap of the region and each pixel is calculated. The returned mask will contain values between 0 and 1.

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

subpixelsint, optional

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

Returns:
maskRegionMask

A mask for the region.

abstract to_sky(wcs)[source]

Return a region defined in sky coordinates.

Parameters:
wcsWCS

The world coordinate system transformation to use to convert from pixels to sky coordinates.

Returns:
sky_regionSkyRegion

The sky region.

union(other)[source]

Return a region representing the union of this region with other.