lsst.afw g4d73512994+c357e897d2
Loading...
Searching...
No Matches
Public Member Functions | List of all members
lsst.afw.multiband.MultibandBase Class Reference
Inheritance diagram for lsst.afw.multiband.MultibandBase:
lsst.afw.detection.multiband.MultibandFootprint lsst.afw.image.image._multiband.MultibandImageBase lsst.afw.image.image._multiband.MultibandPixel lsst.afw.image.image._multiband.MultibandTripleBase lsst.afw.image.image._multiband.MultibandImage lsst.afw.image.image._multiband.MultibandMask lsst.afw.image.exposure._multiband.MultibandExposure lsst.afw.image.image._multiband.MultibandMaskedImage

Public Member Functions

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

Detailed Description

Base class for multiband objects

The LSST stack has a number of image-like classes that have
data in multiple bands that are stored as separate objects.
Analyzing the data can be easier using a Multiband object that
wraps the underlying data as a single data cube that can be sliced and
updated as a single object.

`MultibandBase` is designed to contain the most important universal
methods for initializing, slicing, and extracting common parameters
(such as the bounding box or XY0 position) to all of the single band classes,
as long as derived classes either call the base class `__init__`
or set the `_filters`, `_singles`, and `_bbox`.

Parameters
----------
filters: `list`
    List of filter names.
singles: `list`
    List of single band objects
bbox: `Box2I`
    By default `MultibandBase` uses `singles[0].getBBox()` to set
    the bounding box of the multiband

Definition at line 29 of file multiband.py.

Constructor & Destructor Documentation

◆ __init__()

def lsst.afw.multiband.MultibandBase.__init__ (   self,
  filters,
  singles,
  bbox = None 
)

Member Function Documentation

◆ __getitem__()

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

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

Reimplemented in lsst.afw.image.image._multiband.MultibandPixel.

Definition at line 147 of file multiband.py.

◆ __iter__()

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

Definition at line 172 of file multiband.py.

◆ __len__()

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

Definition at line 144 of file multiband.py.

◆ __next__()

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

Definition at line 176 of file multiband.py.

◆ __repr__()

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

Definition at line 310 of file multiband.py.

◆ __str__()

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

Definition at line 315 of file multiband.py.

◆ clone()

def lsst.afw.multiband.MultibandBase.clone (   self,
  deep = True 
)
Copy the current object

This must be overloaded in a subclass of `MultibandBase`

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

Returns
-------
result: `MultibandBase`
    copy of the instance that inherits from `MultibandBase`

Reimplemented in lsst.afw.detection.multiband.MultibandFootprint, lsst.afw.image.image._multiband.MultibandPixel, lsst.afw.image.image._multiband.MultibandImageBase, and lsst.afw.image.image._multiband.MultibandTripleBase.

Definition at line 68 of file multiband.py.

◆ filters()

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

Definition at line 86 of file multiband.py.

◆ getBBox()

def lsst.afw.multiband.MultibandBase.getBBox (   self)

◆ getXY0()

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

Definition at line 102 of file multiband.py.

◆ height()

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

Definition at line 139 of file multiband.py.

◆ origin()

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

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

Definition at line 124 of file multiband.py.

◆ setXY0()

def lsst.afw.multiband.MultibandBase.setXY0 (   self,
  xy0 
)
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 228 of file multiband.py.

◆ shiftedBy()

def lsst.afw.multiband.MultibandBase.shiftedBy (   self,
  offset 
)
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 262 of file multiband.py.

◆ shiftedTo()

def lsst.afw.multiband.MultibandBase.shiftedTo (   self,
  xy0 
)
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 240 of file multiband.py.

◆ singles()

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

Definition at line 92 of file multiband.py.

◆ width()

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

Definition at line 133 of file multiband.py.

◆ x0()

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

X component of XY0 `Point2I.getX()`

Definition at line 108 of file multiband.py.

◆ y0()

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

Y component of XY0 `Point2I.getY()`

Definition at line 116 of file multiband.py.


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