LSST Applications g0265f82a02+0e5473021a,g02d81e74bb+bd2ed33bd6,g1470d8bcf6+de7501a2e0,g14a832a312+ff425fae3c,g2079a07aa2+86d27d4dc4,g2305ad1205+91a32aca49,g295015adf3+762506a1ad,g2bbee38e9b+0e5473021a,g337abbeb29+0e5473021a,g3ddfee87b4+c34e8be1fa,g487adcacf7+5fae3daba8,g50ff169b8f+96c6868917,g52b1c1532d+585e252eca,g591dd9f2cf+ea1711114f,g5a732f18d5+53520f316c,g64a986408d+bd2ed33bd6,g858d7b2824+bd2ed33bd6,g8a8a8dda67+585e252eca,g99cad8db69+016a06b37a,g9ddcbc5298+9a081db1e4,ga1e77700b3+15fc3df1f7,ga8c6da7877+ef4e3a5875,gb0e22166c9+60f28cb32d,gb6a65358fc+0e5473021a,gba4ed39666+c2a2e4ac27,gbb8dafda3b+09e12c87ab,gc120e1dc64+bc2e06c061,gc28159a63d+0e5473021a,gcf0d15dbbd+c34e8be1fa,gdaeeff99f8+f9a426f77a,ge6526c86ff+508d0e0a30,ge79ae78c31+0e5473021a,gee10cc3b42+585e252eca,gf18bd8381d+8d59551888,gf1cff7945b+bd2ed33bd6,w.2024.16
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
lsst.meas.base.plugins.InputCountPlugin Class Reference
Inheritance diagram for lsst.meas.base.plugins.InputCountPlugin:
lsst.meas.base.wrappers.GenericPlugin lsst.meas.base.pluginsBase.BasePlugin

Public Member Functions

 getExecutionOrder (cls)
 
 __init__ (self, config, name, schema, metadata)
 
 measure (self, measRecord, exposure, center)
 
 fail (self, measRecord, error=None)
 

Public Attributes

 numberKey
 
 noInputsFlag
 
 FAILURE_NO_INPUTS
 
 FAILURE_BAD_CENTROID
 

Static Public Attributes

 ConfigClass = InputCountConfig
 
int FAILURE_BAD_CENTROID = 1
 
int FAILURE_NO_INPUTS = 2
 

Detailed Description

Count the number of input images which contributed to a source.

Parameters
----------
config : `InputCountConfig`
    Plugin configuration.
name : `str`
    Plugin name.
schema : `lsst.afw.table.Schema`
    The schema for the measurement output catalog. New fields will be
    added to hold measurements produced by this plugin.
metadata : `lsst.daf.base.PropertySet`
    Plugin metadata that will be attached to the output catalog

Notes
-----
Information is derived from the image's `~lsst.afw.image.CoaddInputs`.
Note these limitation:

- This records the number of images which contributed to the pixel in the
  center of the source footprint, rather than to any or all pixels in the
  source.
- Clipping in the coadd is not taken into account.

Definition at line 333 of file plugins.py.

Constructor & Destructor Documentation

◆ __init__()

lsst.meas.base.plugins.InputCountPlugin.__init__ ( self,
config,
name,
schema,
metadata )

Reimplemented from lsst.meas.base.wrappers.GenericPlugin.

Definition at line 373 of file plugins.py.

373 def __init__(self, config, name, schema, metadata):
374 GenericPlugin.__init__(self, config, name, schema, metadata)
375 self.numberKey = schema.addField(name + '_value', type="I",
376 doc="Number of images contributing at center, not including any"
377 "clipping")
378 self.noInputsFlag = schema.addField(name + '_flag_noInputs', type="Flag",
379 doc="No coadd inputs available")
380 # Alias the badCentroid flag to that which is defined for the target of the centroid slot.
381 # We do not simply rely on the alias because that could be changed post-measurement.
382 schema.getAliasMap().set(name + '_flag_badCentroid', schema.getAliasMap().apply("slot_Centroid_flag"))
383
daf::base::PropertySet * set
Definition fits.cc:931

Member Function Documentation

◆ fail()

lsst.meas.base.plugins.InputCountPlugin.fail ( self,
measRecord,
error = None )
Record a measurement failure.

This default implementation simply records the failure in the source
record.

Parameters
----------
measRecord : `lsst.afw.table.SourceRecord`
    Catalog record for the source being measured.
error : `Exception`
    Error causing failure, or `None`.

Reimplemented from lsst.meas.base.wrappers.GenericPlugin.

Definition at line 393 of file plugins.py.

393 def fail(self, measRecord, error=None):
394 if error is not None:
395 assert error.getFlagBit() in (self.FAILURE_BAD_CENTROID, self.FAILURE_NO_INPUTS)
396 # FAILURE_BAD_CENTROID handled by alias to centroid record.
397 if error.getFlagBit() == self.FAILURE_NO_INPUTS:
398 measRecord.set(self.noInputsFlag, True)
399 GenericPlugin.fail(self, measRecord, error)
400
401

◆ getExecutionOrder()

lsst.meas.base.plugins.InputCountPlugin.getExecutionOrder ( cls)
Get the relative execution order of this plugin.

Must be reimplemented as a class method by concrete derived classes.

Reimplemented from lsst.meas.base.wrappers.GenericPlugin.

Definition at line 370 of file plugins.py.

370 def getExecutionOrder(cls):
371 return BasePlugin.SHAPE_ORDER
372

◆ measure()

lsst.meas.base.plugins.InputCountPlugin.measure ( self,
measRecord,
exposure,
center )
Measure a single source.

It is the responsibility of this method to perform the desired
measurement and record the result in the `measRecord`.

Parameters
----------
measRecord : `lsst.afw.table.SourceRecord`
    Catalog record for the source being measured.
exposure : `lsst.afw.image.Exposure`
    Exposure on which the source is being measured.
center : `lsst.geom.Point2D`
    Pixel coordinates of the object.

Raises
------
MeasurementError
    Raised if the measurement fails for a known/justifiable reason.

Reimplemented from lsst.meas.base.wrappers.GenericPlugin.

Definition at line 384 of file plugins.py.

384 def measure(self, measRecord, exposure, center):
385 if not exposure.getInfo().getCoaddInputs():
386 raise MeasurementError("No coadd inputs defined.", self.FAILURE_NO_INPUTS)
387 if not np.all(np.isfinite(center)):
388 raise MeasurementError("Source has a bad centroid.", self.FAILURE_BAD_CENTROID)
389
390 ccds = exposure.getInfo().getCoaddInputs().ccds
391 measRecord.set(self.numberKey, len(ccds.subsetContaining(center, exposure.getWcs())))
392

Member Data Documentation

◆ ConfigClass

lsst.meas.base.plugins.InputCountPlugin.ConfigClass = InputCountConfig
static

Definition at line 359 of file plugins.py.

◆ FAILURE_BAD_CENTROID [1/2]

int lsst.meas.base.plugins.InputCountPlugin.FAILURE_BAD_CENTROID = 1
static

Definition at line 361 of file plugins.py.

◆ FAILURE_BAD_CENTROID [2/2]

lsst.meas.base.plugins.InputCountPlugin.FAILURE_BAD_CENTROID

Definition at line 388 of file plugins.py.

◆ FAILURE_NO_INPUTS [1/2]

int lsst.meas.base.plugins.InputCountPlugin.FAILURE_NO_INPUTS = 2
static

Definition at line 365 of file plugins.py.

◆ FAILURE_NO_INPUTS [2/2]

lsst.meas.base.plugins.InputCountPlugin.FAILURE_NO_INPUTS

Definition at line 386 of file plugins.py.

◆ noInputsFlag

lsst.meas.base.plugins.InputCountPlugin.noInputsFlag

Definition at line 378 of file plugins.py.

◆ numberKey

lsst.meas.base.plugins.InputCountPlugin.numberKey

Definition at line 375 of file plugins.py.


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