LSST Applications g0fba68d861+aa97b6e50c,g1ec0fe41b4+f536777771,g1fd858c14a+a9301854fb,g35bb328faa+fcb1d3bbc8,g4af146b050+a5c07d5b1d,g4d2262a081+78f4f01b60,g53246c7159+fcb1d3bbc8,g56a49b3a55+9c12191793,g5a012ec0e7+3632fc3ff3,g60b5630c4e+ded28b650d,g67b6fd64d1+ed4b5058f4,g78460c75b0+2f9a1b4bcd,g786e29fd12+cf7ec2a62a,g8352419a5c+fcb1d3bbc8,g87b7deb4dc+7b42cf88bf,g8852436030+e5453db6e6,g89139ef638+ed4b5058f4,g8e3bb8577d+d38d73bdbd,g9125e01d80+fcb1d3bbc8,g94187f82dc+ded28b650d,g989de1cb63+ed4b5058f4,g9d31334357+ded28b650d,g9f33ca652e+50a8019d8c,gabe3b4be73+1e0a283bba,gabf8522325+fa80ff7197,gb1101e3267+d9fb1f8026,gb58c049af0+f03b321e39,gb89ab40317+ed4b5058f4,gcf25f946ba+e5453db6e6,gcf6002c91b+2a0c9e9e84,gd6cbbdb0b4+bb83cc51f8,gdd1046aedd+ded28b650d,gde0f65d7ad+66b3a48cb7,ge278dab8ac+d65b3c2b70,ge410e46f29+ed4b5058f4,gf23fb2af72+b7cae620c0,gf5e32f922b+fcb1d3bbc8,gf67bdafdda+ed4b5058f4,w.2025.16
LSST Data Management Base Package
|
Public Member Functions | |
__init__ (self, bands, singles, bbox=None) | |
clone (self, deep=True) | |
filters (self) | |
bands (self) | |
singles (self) | |
getBBox (self) | |
getXY0 (self) | |
x0 (self) | |
y0 (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()) | |
array | |
Protected Member Functions | |
_bandNamesToIndex (self, bandIndex) | |
_slice (self, bands, bandIndex, indices) | |
Protected Attributes | |
_bands = tuple([f for f in bands]) | |
_singles = tuple(singles) | |
_bbox = self._singles[0].getBBox() | |
int | _bandIndex = 0 |
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 `_bands`, `_singles`, and `_bbox`. Parameters ---------- bands: `list` List of band 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 31 of file multiband.py.
lsst.afw.multiband.MultibandBase.__init__ | ( | self, | |
bands, | |||
singles, | |||
bbox = None ) |
Definition at line 56 of file multiband.py.
lsst.afw.multiband.MultibandBase.__getitem__ | ( | self, | |
args ) |
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.
lsst.afw.multiband.MultibandBase.__iter__ | ( | self | ) |
Definition at line 184 of file multiband.py.
lsst.afw.multiband.MultibandBase.__len__ | ( | self | ) |
Definition at line 156 of file multiband.py.
lsst.afw.multiband.MultibandBase.__next__ | ( | self | ) |
Definition at line 188 of file multiband.py.
lsst.afw.multiband.MultibandBase.__repr__ | ( | self | ) |
Definition at line 322 of file multiband.py.
lsst.afw.multiband.MultibandBase.__str__ | ( | self | ) |
Definition at line 327 of file multiband.py.
|
protected |
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.
|
protected |
Slice the current object and return the result Different inherited classes will handling slicing differently, so this method must be overloaded in inherited classes. Parameters ---------- bands: `list` of `str` List of band names for the slice. This is a subset of the bands in the parent multiband object bandIndex: `list` of `int` or `slice` Index along the band dimension indices: `tuple` of remaining indices `MultibandBase.__getitem__` separates the first (band) index from the remaining indices, so `indices` is a tuple of all of the indices that come after `band` in the `args` passed to `MultibandBase.__getitem__`. Returns ------- result: `object` Sliced version of the current object, which could be the same class or a different class depending on the slice being made.
Reimplemented in lsst.afw.detection.multiband.MultibandFootprint, lsst.afw.image._exposure._multiband.MultibandExposure, lsst.afw.image._image._multiband.MultibandImageBase, lsst.afw.image._image._multiband.MultibandPixel, and lsst.afw.image._image._multiband.MultibandTripleBase.
Definition at line 294 of file multiband.py.
lsst.afw.multiband.MultibandBase.bands | ( | self | ) |
List of band names for the single band objects
Definition at line 98 of file multiband.py.
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.MultibandImageBase, lsst.afw.image._image._multiband.MultibandPixel, and lsst.afw.image._image._multiband.MultibandTripleBase.
Definition at line 70 of file multiband.py.
lsst.afw.multiband.MultibandBase.filters | ( | self | ) |
List of filter names for the single band objects (deprecated) Use `bands` instead.
Definition at line 90 of file multiband.py.
lsst.afw.multiband.MultibandBase.getBBox | ( | self | ) |
Bounding box
Reimplemented in lsst.afw.image._image._multiband.MultibandImageBase, and lsst.afw.image._image._multiband.MultibandTripleBase.
Definition at line 109 of file multiband.py.
lsst.afw.multiband.MultibandBase.getXY0 | ( | self | ) |
Minimum coordinate in the bounding box
Definition at line 114 of file multiband.py.
lsst.afw.multiband.MultibandBase.height | ( | self | ) |
Height of the images
Definition at line 151 of file multiband.py.
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 136 of file multiband.py.
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 240 of file multiband.py.
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 274 of file multiband.py.
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 252 of file multiband.py.
lsst.afw.multiband.MultibandBase.singles | ( | self | ) |
List of single band objects
Definition at line 104 of file multiband.py.
lsst.afw.multiband.MultibandBase.width | ( | self | ) |
Width of the images
Definition at line 145 of file multiband.py.
lsst.afw.multiband.MultibandBase.x0 | ( | self | ) |
X0 X component of XY0 `Point2I.getX()`
Definition at line 120 of file multiband.py.
lsst.afw.multiband.MultibandBase.y0 | ( | self | ) |
Y0 Y component of XY0 `Point2I.getY()`
Definition at line 128 of file multiband.py.
|
protected |
Definition at line 185 of file multiband.py.
|
protected |
Definition at line 57 of file multiband.py.
|
protected |
Definition at line 61 of file multiband.py.
|
protected |
Definition at line 58 of file multiband.py.
lsst.afw.multiband.MultibandBase.array |
Definition at line 329 of file multiband.py.
lsst.afw.multiband.MultibandBase.bands |
Definition at line 157 of file multiband.py.
lsst.afw.multiband.MultibandBase.singles = Box2I(xy0, self._bbox.getDimensions()) |
Definition at line 249 of file multiband.py.
lsst.afw.multiband.MultibandBase.x0 |
Definition at line 142 of file multiband.py.
lsst.afw.multiband.MultibandBase.y0 |
Definition at line 142 of file multiband.py.