|
def | __init__ (self, filters, array, bbox=None) |
|
def | getMaskPlane (self, key) |
|
def | getPlaneBitMask (self, names) |
|
def | getNumPlanesMax (self) |
|
def | getNumPlanesUsed (self) |
|
def | getMaskPlaneDict (self) |
|
def | removeAndClearMaskPlane (self, name, removeFromDefault=False) |
|
def | clearAllMaskPlanes (self) |
|
def | __ior__ (self, others) |
|
def | __iand__ (self, others) |
|
def | __ixor__ (self, others) |
|
def | clone (self, deep=True) |
|
def | __setitem__ (self, args, value) |
|
def | getBBox (self, origin=PARENT) |
|
def | getBBox (self) |
|
def | filters (self) |
|
def | singles (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) |
|
|
| array = property(_getArray, _setArray) |
|
Multiband Mask class
See `MultibandImageBase` for a description of the parameters.
Definition at line 353 of file multiband.py.
◆ __init__()
def lsst.afw.image.image.multiband.MultibandMask.__init__ |
( |
|
self, |
|
|
|
filters, |
|
|
|
array, |
|
|
|
bbox = None |
|
) |
| |
Definition at line 358 of file multiband.py.
358 def __init__(self, filters, array, bbox=None):
359 super().
__init__(filters, array, Mask, bbox)
361 self._refMask = self._singles[0]
362 refMask = self._refMask
363 assert np.all([refMask.getMaskPlaneDict() == m.getMaskPlaneDict()
for m
in self.singles])
364 assert np.all([refMask.getNumPlanesMax() == m.getNumPlanesMax()
for m
in self.singles])
365 assert np.all([refMask.getNumPlanesUsed() == m.getNumPlanesUsed()
for m
in self.singles])
def __init__(self, minimum, dataRange, Q)
◆ __getitem__()
def lsst.afw.multiband.MultibandBase.__getitem__ |
( |
|
self, |
|
|
|
args |
|
) |
| |
|
inherited |
Get a slice of the underlying array
If only a single filter is specified,
return the single band object sliced
appropriately.
Definition at line 147 of file multiband.py.
147 def __getitem__(self, args):
148 """Get a slice of the underlying array 150 If only a single filter is specified, 151 return the single band object sliced 154 if not isinstance(args, tuple):
161 filters, filterIndex = self._filterNamesToIndex(indices[0])
162 if not isinstance(filterIndex, slice)
and len(filterIndex) == 1:
164 return self.singles[filterIndex[0]][indices[1:]]
165 elif len(indices) == 2:
166 return self.singles[filterIndex[0]][indices[1]]
168 return self.singles[filterIndex[0]]
170 return self._slice(filters=filters, filterIndex=filterIndex, indices=indices[1:])
◆ __iand__()
def lsst.afw.image.image.multiband.MultibandMask.__iand__ |
( |
|
self, |
|
|
|
others |
|
) |
| |
Definition at line 541 of file multiband.py.
541 def __iand__(self, others):
542 _others = self._getOtherMasks(others)
543 for s, o
in zip(self.singles, _others):
◆ __ior__()
def lsst.afw.image.image.multiband.MultibandMask.__ior__ |
( |
|
self, |
|
|
|
others |
|
) |
| |
Definition at line 535 of file multiband.py.
535 def __ior__(self, others):
536 _others = self._getOtherMasks(others)
537 for s, o
in zip(self.singles, _others):
◆ __iter__()
def lsst.afw.multiband.MultibandBase.__iter__ |
( |
|
self | ) |
|
|
inherited |
◆ __ixor__()
def lsst.afw.image.image.multiband.MultibandMask.__ixor__ |
( |
|
self, |
|
|
|
others |
|
) |
| |
Definition at line 547 of file multiband.py.
547 def __ixor__(self, others):
548 _others = self._getOtherMasks(others)
549 for s, o
in zip(self.singles, _others):
◆ __len__()
def lsst.afw.multiband.MultibandBase.__len__ |
( |
|
self | ) |
|
|
inherited |
◆ __next__()
def lsst.afw.multiband.MultibandBase.__next__ |
( |
|
self | ) |
|
|
inherited |
Definition at line 176 of file multiband.py.
177 if self._filterIndex < len(self.filters):
178 result = self.singles[self._filterIndex]
179 self._filterIndex += 1
◆ __repr__()
def lsst.afw.multiband.MultibandBase.__repr__ |
( |
|
self | ) |
|
|
inherited |
Definition at line 310 of file multiband.py.
311 result =
"<{0}, filters={1}, bbox={2}>".
format(
312 self.__class__.__name__, self.filters, self.getBBox().__repr__())
def format(config, name=None, writeSourceLine=True, prefix="", verbose=False)
◆ __setitem__()
def lsst.afw.image.image.multiband.MultibandImageBase.__setitem__ |
( |
|
self, |
|
|
|
args, |
|
|
|
value |
|
) |
| |
|
inherited |
Set a subset of the MultibandImage
Definition at line 249 of file multiband.py.
249 def __setitem__(self, args, value):
250 """Set a subset of the MultibandImage 252 if not isinstance(args, tuple):
259 filters, filterIndex = self._filterNamesToIndex(indices[0])
263 sy = sx = slice(
None)
264 if hasattr(value,
"array"):
265 self._array[filterIndex, sy, sx] = value.array
267 self._array[filterIndex, sy, sx] = value
def imageIndicesToNumpy(sliceArgs, bboxGetter)
◆ __str__()
def lsst.afw.multiband.MultibandBase.__str__ |
( |
|
self | ) |
|
|
inherited |
Definition at line 315 of file multiband.py.
316 if hasattr(self,
"array"):
317 return str(self.array)
318 return self.__repr__()
◆ addMaskPlane()
def lsst.afw.image.image.multiband.MultibandMask.addMaskPlane |
( |
|
name | ) |
|
|
static |
Add a mask to the mask plane
Parameters
----------
name : `str`
Name of the new mask plane
Returns
-------
index : `int`
Bit value of the mask in the mask plane.
Definition at line 465 of file multiband.py.
465 def addMaskPlane(name):
466 """Add a mask to the mask plane 471 Name of the new mask plane 476 Bit value of the mask in the mask plane. 478 idx = Mask[MaskPixel].addMaskPlane(name)
◆ clearAllMaskPlanes()
def lsst.afw.image.image.multiband.MultibandMask.clearAllMaskPlanes |
( |
|
self | ) |
|
Clear all the pixels
Definition at line 513 of file multiband.py.
513 def clearAllMaskPlanes(self):
514 """Clear all the pixels 516 self._refMask.clearAllMaskPlanes()
◆ clearMaskPlaneDict()
def lsst.afw.image.image.multiband.MultibandMask.clearMaskPlaneDict |
( |
| ) |
|
|
static |
Reset the mask plane dictionary
Definition at line 459 of file multiband.py.
459 def clearMaskPlaneDict():
460 """Reset the mask plane dictionary 462 Mask[MaskPixel].clearMaskPlaneDict()
◆ clone()
def lsst.afw.image.image.multiband.MultibandImageBase.clone |
( |
|
self, |
|
|
|
deep = True |
|
) |
| |
|
inherited |
Copy the current object
Parameters
----------
deep : `bool`
Whether or not to make a deep copy
Definition at line 190 of file multiband.py.
190 def clone(self, deep=True):
191 """Copy the current object 196 Whether or not to make a deep copy 199 array = np.copy(self.array)
200 bbox = Box2I(self.getBBox())
203 bbox = self.getBBox()
204 result =
type(self)(self.filters, array, bbox)
◆ filters()
def lsst.afw.multiband.MultibandBase.filters |
( |
|
self | ) |
|
|
inherited |
List of filter names for the single band objects
Definition at line 86 of file multiband.py.
87 """List of filter names for the single band objects
◆ fromKwargs()
def lsst.afw.image.image.multiband.MultibandMask.fromKwargs |
( |
|
filters, |
|
|
|
filterKwargs, |
|
|
|
singleType = ImageF , |
|
|
|
kwargs |
|
) |
| |
|
static |
Build a MultibandImage from a set of keyword arguments
see `makeImageFromKwargs` for a description of parameters
Definition at line 376 of file multiband.py.
376 def fromKwargs(filters, filterKwargs, singleType=ImageF, **kwargs):
377 """Build a MultibandImage from a set of keyword arguments 379 see `makeImageFromKwargs` for a description of parameters def makeImageFromKwargs(cls, filters, filterKwargs, singleType=ImageF, kwargs)
◆ fromMasks()
def lsst.afw.image.image.multiband.MultibandMask.fromMasks |
( |
|
filters, |
|
|
|
singles |
|
) |
| |
|
static |
Construct a MultibandImage from a collection of single band images
see `fromSingles` for a description of parameters
Definition at line 368 of file multiband.py.
368 def fromMasks(filters, singles):
369 """Construct a MultibandImage from a collection of single band images 371 see `fromSingles` for a description of parameters def makeImageFromSingles(cls, filters, singles)
◆ getBBox() [1/2]
def lsst.afw.multiband.MultibandBase.getBBox |
( |
|
self | ) |
|
|
inherited |
◆ getBBox() [2/2]
def lsst.afw.image.image.multiband.MultibandImageBase.getBBox |
( |
|
self, |
|
|
|
origin = PARENT |
|
) |
| |
|
inherited |
Bounding box
Definition at line 269 of file multiband.py.
269 def getBBox(self, origin=PARENT):
274 elif origin == LOCAL:
275 return Box2I(
Point2I(0, 0), self._bbox.getDimensions())
276 raise ValueError(
"Unrecognized origin, expected either PARENT or LOCAL")
◆ getMaskPlane()
def lsst.afw.image.image.multiband.MultibandMask.getMaskPlane |
( |
|
self, |
|
|
|
key |
|
) |
| |
Get the bit number of a mask in the `MaskPlaneDict`
Each `key` in the mask plane has an associated bit value
in the mask. This method returns the bit number of the
`key` in the `MaskPlaneDict`.
This is in contrast to `getPlaneBitMask`, which returns the
value of the bit number.
For example, if `getMaskPlane` returns `8`, then `getPlaneBitMask`
returns `256`.
Parameters
----------
key : `str`
Name of the key in the `MaskPlaneDict`
Returns
-------
bit : `int`
Bit number for mask `key`
Definition at line 383 of file multiband.py.
383 def getMaskPlane(self, key):
384 """Get the bit number of a mask in the `MaskPlaneDict` 386 Each `key` in the mask plane has an associated bit value 387 in the mask. This method returns the bit number of the 388 `key` in the `MaskPlaneDict`. 389 This is in contrast to `getPlaneBitMask`, which returns the 390 value of the bit number. 392 For example, if `getMaskPlane` returns `8`, then `getPlaneBitMask` 398 Name of the key in the `MaskPlaneDict` 403 Bit number for mask `key` 405 return self._refMask.getMaskPlaneDict()[key]
◆ getMaskPlaneDict()
def lsst.afw.image.image.multiband.MultibandMask.getMaskPlaneDict |
( |
|
self | ) |
|
Dictionary of Mask Plane bit values
Definition at line 453 of file multiband.py.
453 def getMaskPlaneDict(self):
454 """Dictionary of Mask Plane bit values 456 return self._refMask.getMaskPlaneDict()
◆ getNumPlanesMax()
def lsst.afw.image.image.multiband.MultibandMask.getNumPlanesMax |
( |
|
self | ) |
|
Maximum number of mask planes available
This is required to be the same for all of the single
band `Mask` objects.
Definition at line 437 of file multiband.py.
437 def getNumPlanesMax(self):
438 """Maximum number of mask planes available 440 This is required to be the same for all of the single 443 return self._refMask.getNumPlanesMax()
◆ getNumPlanesUsed()
def lsst.afw.image.image.multiband.MultibandMask.getNumPlanesUsed |
( |
|
self | ) |
|
Number of mask planes used
This is required to be the same for all of the single
band `Mask` objects.
Definition at line 445 of file multiband.py.
445 def getNumPlanesUsed(self):
446 """Number of mask planes used 448 This is required to be the same for all of the single 451 return self._refMask.getNumPlanesUsed()
◆ getPlaneBitMask()
def lsst.afw.image.image.multiband.MultibandMask.getPlaneBitMask |
( |
|
self, |
|
|
|
names |
|
) |
| |
Get the bit number of a mask in the `MaskPlaneDict`
Each `key` in the mask plane has an associated bit value
in the mask. This method returns the bit number of the
`key` in the `MaskPlaneDict`.
This is in contrast to `getPlaneBitMask`, which returns the
value of the bit number.
For example, if `getMaskPlane` returns `8`, then `getPlaneBitMask`
returns `256`.
Parameters
----------
names : `str` or list of `str`
Name of the key in the `MaskPlaneDict` or a list of keys.
If multiple keys are used, the value returned is the integer
value of the number with all of the bit values in `names`.
For example if `MaskPlaneDict("CR")=3` and
`MaskPlaneDict("NO_DATA)=8`, then
`getPlaneBitMask(("CR", "NO_DATA"))=264`
Returns
-------
bit value : `int`
Bit value for all of the combined bits described by `names`.
Definition at line 407 of file multiband.py.
407 def getPlaneBitMask(self, names):
408 """Get the bit number of a mask in the `MaskPlaneDict` 410 Each `key` in the mask plane has an associated bit value 411 in the mask. This method returns the bit number of the 412 `key` in the `MaskPlaneDict`. 413 This is in contrast to `getPlaneBitMask`, which returns the 414 value of the bit number. 416 For example, if `getMaskPlane` returns `8`, then `getPlaneBitMask` 421 names : `str` or list of `str` 422 Name of the key in the `MaskPlaneDict` or a list of keys. 423 If multiple keys are used, the value returned is the integer 424 value of the number with all of the bit values in `names`. 426 For example if `MaskPlaneDict("CR")=3` and 427 `MaskPlaneDict("NO_DATA)=8`, then 428 `getPlaneBitMask(("CR", "NO_DATA"))=264` 433 Bit value for all of the combined bits described by `names`. 435 return self._refMask.getPlaneBitMask(names)
◆ getXY0()
def lsst.afw.multiband.MultibandBase.getXY0 |
( |
|
self | ) |
|
|
inherited |
Minimum coordinate in the bounding box
Definition at line 102 of file multiband.py.
103 """Minimum coordinate in the bounding box 105 return self.getBBox().getMin()
◆ height()
def lsst.afw.multiband.MultibandBase.height |
( |
|
self | ) |
|
|
inherited |
Height of the images
Definition at line 139 of file multiband.py.
140 """Height of the images 142 return self.getBBox().getHeight()
◆ origin()
def 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 124 of file multiband.py.
125 """Minimum (y,x) position 127 This is the position of `self.getBBox().getMin()`, 128 but available as a tuple for numpy array indexing. 130 return (self.y0, self.x0)
◆ removeAndClearMaskPlane()
def lsst.afw.image.image.multiband.MultibandMask.removeAndClearMaskPlane |
( |
|
self, |
|
|
|
name, |
|
|
|
removeFromDefault = False |
|
) |
| |
Remove and clear a mask from the mask plane
Clear all pixels of the specified mask and remove the plane from the
mask plane dictionary. Also optionally remove the plane from the
default dictionary.
Parameters
----------
name : `str`
Name of the mask plane to remove
removeFromDefault : `bool`, optional
Whether to remove the mask plane from the default dictionary.
Default is `False`.
Definition at line 492 of file multiband.py.
492 def removeAndClearMaskPlane(self, name, removeFromDefault=False):
493 """Remove and clear a mask from the mask plane 495 Clear all pixels of the specified mask and remove the plane from the 496 mask plane dictionary. Also optionally remove the plane from the 502 Name of the mask plane to remove 503 removeFromDefault : `bool`, optional 504 Whether to remove the mask plane from the default dictionary. 508 for single
in self.singles:
509 single.removeAndClearMaskPlane(name, removeFromDefault=
False)
511 self._refMask.removeAndClearMaskPlane(name, removeFromDefault)
◆ removeMaskPlane()
def lsst.afw.image.image.multiband.MultibandMask.removeMaskPlane |
( |
|
name | ) |
|
|
static |
Remove a mask from the mask plane
Parameters
----------
name : `str`
Name of the mask plane to remove
Definition at line 482 of file multiband.py.
482 def removeMaskPlane(name):
483 """Remove a mask from the mask plane 488 Name of the mask plane to remove 490 Mask[MaskPixel].removeMaskPlane(name)
◆ setXY0()
def 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
Definition at line 228 of file multiband.py.
228 def setXY0(self, xy0):
229 """Shift the bounding box but keep the same Extent 234 New minimum bounds of the bounding box 236 self._bbox = Box2I(xy0, self._bbox.getDimensions())
237 for singleObj
in self.singles:
238 singleObj.setXY0(xy0)
◆ shiftedBy()
def 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 262 of file multiband.py.
262 def shiftedBy(self, offset):
263 """Shift a bounding box by an offset, but keep the same Extent 265 This method is broken until DM-10781 is completed. 270 Amount to shift the bounding box in x and y. 274 result: `MultibandBase` 275 A copy of the object, shifted by `offset` 277 raise NotImplementedError(
"shiftedBy not implemented until DM-10781")
278 xy0 = self._bbox.getMin() + offset
279 return self.shiftedTo(xy0)
◆ shiftedTo()
def 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`.
Definition at line 240 of file multiband.py.
240 def shiftedTo(self, xy0):
241 """Shift the bounding box but keep the same Extent 243 This method is broken until DM-10781 is completed. 248 New minimum bounds of the bounding box 252 result: `MultibandBase` 253 A copy of the object, shifted to `xy0`. 255 raise NotImplementedError(
"shiftedBy not implemented until DM-10781")
256 result = self.clone(
False)
257 result._bbox = Box2I(xy0, result._bbox.getDimensions())
258 for singleObj
in result.singles:
259 singleObj.setXY0(xy0)
◆ singles()
def lsst.afw.multiband.MultibandBase.singles |
( |
|
self | ) |
|
|
inherited |
List of single band objects
Definition at line 92 of file multiband.py.
93 """List of single band objects
◆ width()
def lsst.afw.multiband.MultibandBase.width |
( |
|
self | ) |
|
|
inherited |
Width of the images
Definition at line 133 of file multiband.py.
134 """Width of the images 136 return self.getBBox().getWidth()
◆ x0()
def lsst.afw.multiband.MultibandBase.x0 |
( |
|
self | ) |
|
|
inherited |
X0
X component of XY0 `Point2I.getX()`
Definition at line 108 of file multiband.py.
111 X component of XY0 `Point2I.getX()` 113 return self.getBBox().getMinX()
◆ y0()
def lsst.afw.multiband.MultibandBase.y0 |
( |
|
self | ) |
|
|
inherited |
Y0
Y component of XY0 `Point2I.getY()`
Definition at line 116 of file multiband.py.
119 Y component of XY0 `Point2I.getY()` 121 return self.getBBox().getMinY()
◆ array
lsst.afw.image.image.multiband.MultibandImageBase.array = property(_getArray, _setArray) |
|
staticinherited |
The documentation for this class was generated from the following file:
- /j/snowflake/release/lsstsw/stack/Linux64/afw/18.1.0/python/lsst/afw/image/image/multiband.py