lsst.afw g714e0ed6de+196fb0684f
Loading...
Searching...
No Matches
lsst.afw.image._image._multiband.MultibandImageBase Class Reference
Inheritance diagram for lsst.afw.image._image._multiband.MultibandImageBase:
lsst.afw.multiband.MultibandBase lsst.afw.image._image._multiband.MultibandImage lsst.afw.image._image._multiband.MultibandMask

Public Member Functions

 __init__ (self, bands, array, singleType, bbox=None)
 
 clone (self, deep=True)
 
 __setitem__ (self, args, value)
 
 getBBox (self, origin=PARENT)
 
 y0 (self)
 
 x0 (self)
 
 bands (self)
 
 singles (self)
 
 filters (self)
 
 getXY0 (self)
 
 origin (self)
 
 width (self)
 
 height (self)
 
 __len__ (self)
 
 __getitem__ (self, args)
 
 __iter__ (self)
 
 __next__ (self)
 
 setXY0 (self, xy0)
 
 shiftedTo (self, xy0)
 
 shiftedBy (self, offset)
 
 __repr__ (self)
 
 __str__ (self)
 

Public Attributes

 y0
 
 x0
 
 bands
 
 singles = Box2I(xy0, self._bbox.getDimensions())
 

Protected Member Functions

 _getArray (self)
 
 _setArray (self, value)
 
 _slice (self, bands, bandIndex, indices)
 
 _bandNamesToIndex (self, bandIndex)
 

Protected Attributes

 _array = array
 
 _bands = tuple([f for f in bands])
 
 _singles = tuple(singles)
 
 _bbox = self._singles[0].getBBox()
 
int _bandIndex = 0
 

Properties

 array = property(_getArray, _setArray)
 

Detailed Description

Multiband Image class

This class acts as a container for multiple `afw.Image` objects.
All images must be contained in the same bounding box,
and have the same data type.
The data is stored in a 3D array (bands, y, x), and the single
band `Image` instances have an internal array that points to the
3D multiband array, so that the single band objects and multiband
array are always in agreement.

Parameters
----------
bands : `list`
   List of band names.
array : 3D numpy array
   Array (bands, y, x) of multiband data.
   If this is used to initialize a `MultibandImage`,
   either `bbox` or `singles` is also required.
singleType : `type`
   Type of the single band object (eg. `Image`, `Mask`) to
   convert the array into a tuple of single band objects
   that point to the image array.
bbox : `Box2I`
   Location of the array in a larger single band image.
   If `bbox` is `None` then the bounding box is initialized
   at the origin.

Definition at line 128 of file _multiband.py.

Constructor & Destructor Documentation

◆ __init__()

lsst.afw.image._image._multiband.MultibandImageBase.__init__ ( self,
bands,
array,
singleType,
bbox = None )

Definition at line 156 of file _multiband.py.

Member Function Documentation

◆ __getitem__()

lsst.afw.multiband.MultibandBase.__getitem__ ( self,
args )
inherited
Get a slice of the underlying array

If only a single band is specified,
return the single band object sliced
appropriately.

Definition at line 159 of file multiband.py.

◆ __iter__()

lsst.afw.multiband.MultibandBase.__iter__ ( self)
inherited

Definition at line 184 of file multiband.py.

◆ __len__()

lsst.afw.multiband.MultibandBase.__len__ ( self)
inherited

Definition at line 156 of file multiband.py.

◆ __next__()

lsst.afw.multiband.MultibandBase.__next__ ( self)
inherited

Definition at line 188 of file multiband.py.

◆ __repr__()

lsst.afw.multiband.MultibandBase.__repr__ ( self)
inherited

Definition at line 322 of file multiband.py.

◆ __setitem__()

lsst.afw.image._image._multiband.MultibandImageBase.__setitem__ ( self,
args,
value )
Set a subset of the MultibandImage

Definition at line 249 of file _multiband.py.

◆ __str__()

lsst.afw.multiband.MultibandBase.__str__ ( self)
inherited

Definition at line 327 of file multiband.py.

◆ _bandNamesToIndex()

lsst.afw.multiband.MultibandBase._bandNamesToIndex ( self,
bandIndex )
protectedinherited
Convert a list of band names to an index or a slice

Parameters
----------
bandIndex: iterable or `object`
    Index to specify a band or list of bands,
    usually a string or enum.
    For example `bandIndex` can be
    `"R"` or `["R", "G", "B"]` or `[Band.R, Band.G, Band.B]`,
    if `Band` is an enum.

Returns
-------
bandNames: `list`
    Names of the bands in the slice
bandIndex: `slice` or `list` of `int`
    Index of each band in `bandNames` in
    `self.bands`.

Definition at line 196 of file multiband.py.

◆ _getArray()

lsst.afw.image._image._multiband.MultibandImageBase._getArray ( self)
protected
Data cube array in multiple bands

Returns
-------
self._array : array
   The resulting 3D data cube with shape (bands, y, x).

Definition at line 174 of file _multiband.py.

◆ _setArray()

lsst.afw.image._image._multiband.MultibandImageBase._setArray ( self,
value )
protected
Set the values of the array

Definition at line 184 of file _multiband.py.

◆ _slice()

lsst.afw.image._image._multiband.MultibandImageBase._slice ( self,
bands,
bandIndex,
indices )
protected
Slice the current object and return the result

See `MultibandBase._slice` for a list of the parameters.

Reimplemented from lsst.afw.multiband.MultibandBase.

Definition at line 207 of file _multiband.py.

◆ bands()

lsst.afw.multiband.MultibandBase.bands ( self)
inherited
List of band names for the single band objects

Definition at line 98 of file multiband.py.

◆ clone()

lsst.afw.image._image._multiband.MultibandImageBase.clone ( self,
deep = True )
Copy the current object

Parameters
----------
deep : `bool`
   Whether or not to make a deep copy

Reimplemented from lsst.afw.multiband.MultibandBase.

Definition at line 190 of file _multiband.py.

◆ filters()

lsst.afw.multiband.MultibandBase.filters ( self)
inherited
List of filter names for the single band objects (deprecated)

Use `bands` instead.

Definition at line 90 of file multiband.py.

◆ getBBox()

lsst.afw.image._image._multiband.MultibandImageBase.getBBox ( self,
origin = PARENT )
Bounding box

Reimplemented from lsst.afw.multiband.MultibandBase.

Definition at line 269 of file _multiband.py.

◆ getXY0()

lsst.afw.multiband.MultibandBase.getXY0 ( self)
inherited
Minimum coordinate in the bounding box

Definition at line 114 of file multiband.py.

◆ height()

lsst.afw.multiband.MultibandBase.height ( self)
inherited
Height of the images

Definition at line 151 of file multiband.py.

◆ origin()

lsst.afw.multiband.MultibandBase.origin ( self)
inherited
Minimum (y,x) position

This is the position of `self.getBBox().getMin()`,
but available as a tuple for numpy array indexing.

Definition at line 136 of file multiband.py.

◆ setXY0()

lsst.afw.multiband.MultibandBase.setXY0 ( self,
xy0 )
inherited
Shift the bounding box but keep the same Extent

Parameters
----------
xy0: `Point2I`
    New minimum bounds of the bounding box

Reimplemented in lsst.afw.image._image._multiband.MultibandTripleBase.

Definition at line 240 of file multiband.py.

◆ shiftedBy()

lsst.afw.multiband.MultibandBase.shiftedBy ( self,
offset )
inherited
Shift a bounding box by an offset, but keep the same Extent

This method is broken until DM-10781 is completed.

Parameters
----------
offset: `Extent2I`
    Amount to shift the bounding box in x and y.

Returns
-------
result: `MultibandBase`
    A copy of the object, shifted by `offset`

Definition at line 274 of file multiband.py.

◆ shiftedTo()

lsst.afw.multiband.MultibandBase.shiftedTo ( self,
xy0 )
inherited
Shift the bounding box but keep the same Extent

This method is broken until DM-10781 is completed.

Parameters
----------
xy0: `Point2I`
    New minimum bounds of the bounding box

Returns
-------
result: `MultibandBase`
    A copy of the object, shifted to `xy0`.

Reimplemented in lsst.afw.image._image._multiband.MultibandTripleBase.

Definition at line 252 of file multiband.py.

◆ singles()

lsst.afw.multiband.MultibandBase.singles ( self)
inherited
List of single band objects

Definition at line 104 of file multiband.py.

◆ width()

lsst.afw.multiband.MultibandBase.width ( self)
inherited
Width of the images

Definition at line 145 of file multiband.py.

◆ x0()

lsst.afw.multiband.MultibandBase.x0 ( self)
inherited
X0

X component of XY0 `Point2I.getX()`

Definition at line 120 of file multiband.py.

◆ y0()

lsst.afw.multiband.MultibandBase.y0 ( self)
inherited
Y0

Y component of XY0 `Point2I.getY()`

Definition at line 128 of file multiband.py.

Member Data Documentation

◆ _array

lsst.afw.image._image._multiband.MultibandImageBase._array = array
protected

Definition at line 160 of file _multiband.py.

◆ _bandIndex

int lsst.afw.multiband.MultibandBase._bandIndex = 0
protectedinherited

Definition at line 185 of file multiband.py.

◆ _bands

lsst.afw.multiband.MultibandBase._bands = tuple([f for f in bands])
protectedinherited

Definition at line 57 of file multiband.py.

◆ _bbox

lsst.afw.multiband.MultibandBase._bbox = self._singles[0].getBBox()
protectedinherited

Definition at line 61 of file multiband.py.

◆ _singles

lsst.afw.multiband.MultibandBase._singles = tuple(singles)
protectedinherited

Definition at line 58 of file multiband.py.

◆ bands

lsst.afw.multiband.MultibandBase.bands
inherited

Definition at line 157 of file multiband.py.

◆ singles

lsst.afw.multiband.MultibandBase.singles = Box2I(xy0, self._bbox.getDimensions())
inherited

Definition at line 249 of file multiband.py.

◆ x0

lsst.afw.multiband.MultibandBase.x0
inherited

Definition at line 142 of file multiband.py.

◆ y0

lsst.afw.multiband.MultibandBase.y0
inherited

Definition at line 142 of file multiband.py.

Property Documentation

◆ array

lsst.afw.image._image._multiband.MultibandImageBase.array = property(_getArray, _setArray)
static

Definition at line 188 of file _multiband.py.


The documentation for this class was generated from the following file: