|
lsst.ip.isr g9cb75138f3+bac7c66737
|
Public Member Functions | |
| def | __init__ (self, defectList=None, metadata=None, *normalize_on_init=True, **kwargs) |
| def | __len__ (self) |
| def | __getitem__ (self, index) |
| def | __setitem__ (self, index, value) |
| def | __iter__ (self) |
| def | __delitem__ (self, index) |
| def | __eq__ (self, other) |
| def | __str__ (self) |
| def | bulk_update (self) |
| def | append (self, value) |
| def | insert (self, index, value) |
| def | copy (self) |
| def | transpose (self) |
| def | maskPixels (self, maskedImage, maskName="BAD") |
| def | toFitsRegionTable (self) |
| def | fromDict (cls, dictionary) |
| def | toDict (self) |
| def | toTable (self) |
| def | fromTable (cls, tableList, normalize_on_init=True) |
| def | readLsstDefectsFile (cls, filename, normalize_on_init=False) |
| def | fromFootprintList (cls, fpList) |
| def | fromMask (cls, maskedImage, maskName) |
Calibration handler for collections of `lsst.meas.algorithms.Defect`.
Parameters
----------
defectList : iterable of `lsst.meas.algorithms.Defect`
or `lsst.geom.BoxI`, optional
Collections of defects to apply to the image.
metadata : `lsst.daf.base.PropertyList`, optional
Metadata to associate with the defects. Will be copied and
overwrite existing metadata, if any. If not supplied the existing
metadata will be reset.
normalize_on_init : `bool`
If True, normalization is applied to the defects in ``defectList`` to
remove duplicates, eliminate overlaps, etc.
Notes
-----
Defects are stored within this collection in a "reduced" or "normalized"
form: rather than simply storing the bounding boxes which are added to the
collection, we eliminate overlaps and duplicates. This normalization
procedure may introduce overhead when adding many new defects; it may be
temporarily disabled using the `Defects.bulk_update` context manager if
necessary.
The attributes stored in this calibration are:
_defects : `list` [`lsst.meas.algorithms.Defect`]
The collection of Defect objects.
The calibration type used for ingest.
Definition at line 47 of file defects.py.
| def lsst.ip.isr.defects.Defects.__init__ | ( | self, | |
defectList = None, |
|||
metadata = None, |
|||
| * | normalize_on_init = True, |
||
| ** | kwargs | ||
| ) |
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 83 of file defects.py.
| def lsst.ip.isr.defects.Defects.__delitem__ | ( | self, | |
| index | |||
| ) |
Definition at line 145 of file defects.py.
| def lsst.ip.isr.defects.Defects.__eq__ | ( | self, | |
| other | |||
| ) |
Compare if two `Defects` are equal. Two `Defects` are equal if their bounding boxes are equal and in the same order. Metadata content is ignored.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 148 of file defects.py.
| def lsst.ip.isr.defects.Defects.__getitem__ | ( | self, | |
| index | |||
| ) |
Definition at line 133 of file defects.py.
| def lsst.ip.isr.defects.Defects.__iter__ | ( | self | ) |
Definition at line 142 of file defects.py.
| def lsst.ip.isr.defects.Defects.__len__ | ( | self | ) |
Definition at line 130 of file defects.py.
| def lsst.ip.isr.defects.Defects.__setitem__ | ( | self, | |
| index, | |||
| value | |||
| ) |
Can be given a `~lsst.meas.algorithms.Defect` or a `lsst.geom.BoxI`
Definition at line 136 of file defects.py.
| def lsst.ip.isr.defects.Defects.__str__ | ( | self | ) |
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 170 of file defects.py.
| def lsst.ip.isr.defects.Defects.append | ( | self, | |
| value | |||
| ) |
Definition at line 219 of file defects.py.
| def lsst.ip.isr.defects.Defects.bulk_update | ( | self | ) |
Temporarily suspend normalization of the defect list.
Definition at line 209 of file defects.py.
| def lsst.ip.isr.defects.Defects.copy | ( | self | ) |
Copy the defects to a new list, creating new defects from the
bounding boxes.
Returns
-------
new : `Defects`
New list with new `Defect` entries.
Notes
-----
This is not a shallow copy in that new `Defect` instances are
created from the original bounding boxes. It's also not a deep
copy since the bounding boxes are not recreated.
Definition at line 227 of file defects.py.
| def lsst.ip.isr.defects.Defects.fromDict | ( | cls, | |
| dictionary | |||
| ) |
Construct a calibration from a dictionary of properties.
Must be implemented by the specific calibration subclasses.
Parameters
----------
dictionary : `dict`
Dictionary of properties.
Returns
-------
calib : `lsst.ip.isr.CalibType`
Constructed calibration.
Raises
------
RuntimeError :
Raised if the supplied dictionary is for a different
calibration.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 333 of file defects.py.
| def lsst.ip.isr.defects.Defects.fromFootprintList | ( | cls, | |
| fpList | |||
| ) |
Compute a defect list from a footprint list, optionally growing
the footprints.
Parameters
----------
fpList : `list` of `lsst.afw.detection.Footprint`
Footprint list to process.
Returns
-------
defects : `Defects`
List of defects.
Definition at line 642 of file defects.py.
| def lsst.ip.isr.defects.Defects.fromMask | ( | cls, | |
| maskedImage, | |||
| maskName | |||
| ) |
Compute a defect list from a specified mask plane.
Parameters
----------
maskedImage : `lsst.afw.image.MaskedImage`
Image to process.
maskName : `str` or `list`
Mask plane name, or list of names to convert.
Returns
-------
defects : `Defects`
Defect list constructed from masked pixels.
Definition at line 662 of file defects.py.
| def lsst.ip.isr.defects.Defects.fromTable | ( | cls, | |
| tableList, | |||
normalize_on_init = True |
|||
| ) |
Construct a `Defects` from the contents of a
`~lsst.afw.table.BaseCatalog`.
Parameters
----------
table : `lsst.afw.table.BaseCatalog`
Table with one row per defect.
normalize_on_init : `bool`, optional
If `True`, normalization is applied to the defects listed in the
table to remove duplicates, eliminate overlaps, etc. Otherwise
the defects in the returned object exactly match those in the
table.
Returns
-------
defects : `Defects`
A `Defects` list.
Notes
-----
Two table formats are recognized. The first is the
`FITS regions <https://fits.gsfc.nasa.gov/registry/region.html>`_
definition tabular format written by `toFitsRegionTable` where the
pixel origin is corrected from FITS 1-based to a 0-based origin.
The second is the legacy defects format using columns ``x0``, ``y0``
(bottom left hand pixel of box in 0-based coordinates), ``width``
and ``height``.
The FITS standard regions can only read BOX, POINT, or ROTBOX with
a zero degree rotation.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 493 of file defects.py.
| def lsst.ip.isr.defects.Defects.insert | ( | self, | |
| index, | |||
| value | |||
| ) |
Definition at line 223 of file defects.py.
| def lsst.ip.isr.defects.Defects.maskPixels | ( | self, | |
| maskedImage, | |||
maskName = "BAD" |
|||
| ) |
Set mask plane based on these defects.
Parameters
----------
maskedImage : `lsst.afw.image.MaskedImage`
Image to process. Only the mask plane is updated.
maskName : str, optional
Mask plane name to use.
Definition at line 261 of file defects.py.
| def lsst.ip.isr.defects.Defects.readLsstDefectsFile | ( | cls, | |
| filename, | |||
normalize_on_init = False |
|||
| ) |
Read defects information from a legacy LSST format text file.
Parameters
----------
filename : `str`
Name of text file containing the defect information.
normalize_on_init : `bool`, optional
If `True`, normalization is applied to the defects listed in the
table to remove duplicates, eliminate overlaps, etc. Otherwise
the defects in the returned object exactly match those in the
table.
Returns
-------
defects : `Defects`
The defects.
Notes
-----
These defect text files are used as the human readable definitions
of defects in calibration data definition repositories. The format
is to use four columns defined as follows:
x0 : `int`
X coordinate of bottom left corner of box.
y0 : `int`
Y coordinate of bottom left corner of box.
width : `int`
X extent of the box.
height : `int`
Y extent of the box.
Files of this format were used historically to represent defects
in simple text form. Use `Defects.readText` and `Defects.writeText`
to use the more modern format.
Definition at line 591 of file defects.py.
| def lsst.ip.isr.defects.Defects.toDict | ( | self | ) |
Return a dictionary containing the calibration properties.
The dictionary should be able to be round-tripped through
`fromDict`.
Returns
-------
dictionary : `dict`
Dictionary of properties.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 374 of file defects.py.
| def lsst.ip.isr.defects.Defects.toFitsRegionTable | ( | self | ) |
Convert defect list to `~lsst.afw.table.BaseCatalog` using the
FITS region standard.
Returns
-------
table : `lsst.afw.table.BaseCatalog`
Defects in tabular form.
Notes
-----
The table created uses the
`FITS regions <https://fits.gsfc.nasa.gov/registry/region.html>`_
definition tabular format. The ``X`` and ``Y`` coordinates are
converted to FITS Physical coordinates that have origin pixel (1, 1)
rather than the (0, 0) used in LSST software.
Definition at line 278 of file defects.py.
| def lsst.ip.isr.defects.Defects.toTable | ( | self | ) |
Convert defects to a simple table form that we use to write
to text files.
Returns
-------
table : `lsst.afw.table.BaseCatalog`
Defects in simple tabular form.
Notes
-----
These defect tables are used as the human readable definitions
of defects in calibration data definition repositories. The format
is to use four columns defined as follows:
x0 : `int`
X coordinate of bottom left corner of box.
y0 : `int`
Y coordinate of bottom left corner of box.
width : `int`
X extent of the box.
height : `int`
Y extent of the box.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 412 of file defects.py.
| def lsst.ip.isr.defects.Defects.transpose | ( | self | ) |
Make a transposed copy of this defect list.
Returns
-------
retDefectList : `Defects`
Transposed list of defects.
Definition at line 244 of file defects.py.