|
| | __init__ (self, refSchema, algMetadata=None, **kwds) |
| |
| | run (self, measCat, exposure, refCat, refWcs, exposureId=None, beginOrder=None, endOrder=None) |
| |
| | generateMeasCat (self, exposure, refCat, refWcs, idFactory=None) |
| |
| | attachTransformedFootprints (self, sources, refCat, exposure, refWcs) |
| |
| | attachPsfShapeFootprints (self, sources, exposure, scaling=3) |
| |
| | initializePlugins (self, **kwds) |
| |
| | initNoiseReplacer (self, exposure, measCat, footprints, exposureId=None, noiseImage=None) |
| |
| | addInvalidPsfFlag (self, schema) |
| |
| | callMeasure (self, measRecord, *args, **kwds) |
| |
| | doMeasurement (self, plugin, measRecord, *args, **kwds) |
| |
Measure sources on an image, constrained by a reference catalog.
A subtask for measuring the properties of sources on a single image,
using an existing "reference" catalog to constrain some aspects of the
measurement.
Parameters
----------
refSchema : `lsst.afw.table.Schema`
Schema of the reference catalog. Must match the catalog later passed
to 'ForcedMeasurementTask.generateMeasCat` and/or
`ForcedMeasurementTask.run`.
algMetadata : `lsst.daf.base.PropertyList` or `None`
Will be updated in place to to record information about each
algorithm. An empty `~lsst.daf.base.PropertyList` will be created if
`None`.
**kwds
Keyword arguments are passed to the supertask constructor.
Notes
-----
Note that while `SingleFrameMeasurementTask` is passed an initial
`~lsst.afw.table.Schema` that is appended to in order to create the output
`~lsst.afw.table.Schema`, `ForcedMeasurementTask` is initialized with the
`~lsst.afw.table.Schema` of the reference catalog, from which a new
`~lsst.afw.table.Schema` for the output catalog is created. Fields to be
copied directly from the reference `~lsst.afw.table.Schema` are added
before ``Plugin`` fields are added.
Definition at line 214 of file forcedMeasurement.py.
| lsst.meas.base.forcedMeasurement.ForcedMeasurementTask.attachPsfShapeFootprints |
( |
| self, |
|
|
| sources, |
|
|
| exposure, |
|
|
| scaling = 3 ) |
Attach Footprints to blank sources prior to measurement, by
creating elliptical Footprints from the PSF moments.
Parameters
----------
sources : `lsst.afw.table.SourceCatalog`
Blank catalog (with all rows and columns, but values other than
``coord_ra``, ``coord_dec`` unpopulated).
to which footprints should be attached.
exposure : `lsst.afw.image.Exposure`
Image object from which peak values and the PSF are obtained.
scaling : `int`, optional
Scaling factor to apply to the PSF second-moments ellipse in order
to determine the footprint boundary.
Notes
-----
This is a utility function for use by parent tasks; see
`attachTransformedFootprints` for more information.
Definition at line 417 of file forcedMeasurement.py.
| lsst.meas.base.forcedMeasurement.ForcedMeasurementTask.attachTransformedFootprints |
( |
| self, |
|
|
| sources, |
|
|
| refCat, |
|
|
| exposure, |
|
|
| refWcs ) |
Attach Footprints to blank sources prior to measurement, by
transforming Footprints attached to the reference catalog.
Notes
-----
`~lsst.afw.detection.Footprint`\s for forced photometry must be in the
pixel coordinate system of the image being measured, while the actual
detections may start out in a different coordinate system. This
default implementation transforms the Footprints from the reference
catalog from the WCS to the exposure's WCS, which downgrades
``HeavyFootprint``\s into regular `~lsst.afw.detection.Footprint`\s,
destroying deblend information.
See the documentation for `run` for information about the
relationships between `run`, `generateMeasCat`, and
`attachTransformedFootprints`.
Definition at line 394 of file forcedMeasurement.py.
| lsst.meas.base.baseMeasurement.BaseMeasurementTask.getFootprintsFromCatalog |
( |
| catalog | ) |
|
|
staticinherited |
Get a set of footprints from a catalog, keyed by id.
Parameters
----------
catalog : `lsst.afw.table.SourceCatalog`
Catalog with `lsst.afw.detection.Footprint`s attached.
Returns
-------
footprints : `dict` [`int`: (`int`, `lsst.afw.detection.Footprint`)]
Dictionary of footprint, keyed by id number, with a tuple of
the parent id and footprint.
Definition at line 487 of file baseMeasurement.py.
| lsst.meas.base.baseMeasurement.BaseMeasurementTask.initializePlugins |
( |
| self, |
|
|
** | kwds ) |
|
inherited |
Initialize plugins (and slots) according to configuration.
Parameters
----------
**kwds
Keyword arguments forwarded directly to plugin constructors.
Notes
-----
Derived class constructors should call this method to fill the
`plugins` attribute and add corresponding output fields and slot
aliases to the output schema.
In addition to the attributes added by `BaseMeasurementTask.__init__`,
a ``schema``` attribute holding the output schema must be present
before this method is called.
Keyword arguments are forwarded directly to plugin constructors,
allowing derived classes to use plugins with different signatures.
Reimplemented from lsst.meas.base.baseMeasurement.SimpleBaseMeasurementTask.
Definition at line 472 of file baseMeasurement.py.
| lsst.meas.base.baseMeasurement.BaseMeasurementTask.initNoiseReplacer |
( |
| self, |
|
|
| exposure, |
|
|
| measCat, |
|
|
| footprints, |
|
|
| exposureId = None, |
|
|
| noiseImage = None ) |
|
inherited |
Replace all pixels in the exposure covered by the footprint of
``measRecord`` with noise.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure in which to replace pixels.
measCat : `lsst.afw.table.SourceCatalog`
Catalog that will be measured.t
footprints : `dict` [`int`: (`int`, `lsst.afw.detection.Footprint`)]
Dictionary of footprints, keyed by id number, with a tuple of
the parent id and footprint.
exposureId : `int`, optional
Unique identifier for the exposure.
noiseImage : `lsst.afw.image.Image` or `None`, optional
Image from which to draw noise pixels. If `None`, noise will be
drawn from the input exposure.
Definition at line 504 of file baseMeasurement.py.
| lsst.meas.base.forcedMeasurement.ForcedMeasurementTask.run |
( |
| self, |
|
|
| measCat, |
|
|
| exposure, |
|
|
| refCat, |
|
|
| refWcs, |
|
|
| exposureId = None, |
|
|
| beginOrder = None, |
|
|
| endOrder = None ) |
Perform forced measurement.
Parameters
----------
exposure : `lsst.afw.image.exposureF`
Image to be measured. Must have at least a `lsst.afw.geom.SkyWcs`
attached.
measCat : `lsst.afw.table.SourceCatalog`
Source catalog for measurement results; must be initialized with
empty records already corresponding to those in ``refCat`` (via
e.g. `generateMeasCat`).
refCat : `lsst.afw.table.SourceCatalog`
A sequence of `lsst.afw.table.SourceRecord` objects that provide
reference information for the measurement. These will be passed
to each plugin in addition to the output
`~lsst.afw.table.SourceRecord`.
refWcs : `lsst.afw.geom.SkyWcs`
Defines the X,Y coordinate system of ``refCat``.
exposureId : `int`, optional
Optional unique exposureId used to calculate random number
generator seed in the NoiseReplacer.
beginOrder : `int`, optional
Beginning execution order (inclusive). Algorithms with
``executionOrder`` < ``beginOrder`` are not executed. `None` for no limit.
endOrder : `int`, optional
Ending execution order (exclusive). Algorithms with
``executionOrder`` >= ``endOrder`` are not executed. `None` for no limit.
Notes
-----
Fills the initial empty `~lsst.afw.table.SourceCatalog` with forced
measurement results. Two steps must occur before `run` can be called:
- `generateMeasCat` must be called to create the output ``measCat``
argument.
- `~lsst.afw.detection.Footprint`\ s appropriate for the forced sources
must be attached to the ``measCat`` records. The
`attachTransformedFootprints` method can be used to do this, but
this degrades "heavy" (i.e., including pixel values)
`~lsst.afw.detection.Footprint`\s to regular
`~lsst.afw.detection.Footprint`\s, leading to non-deblended
measurement, so most callers should provide
`~lsst.afw.detection.Footprint`\s some other way. Typically, calling
code will have access to information that will allow them to provide
heavy footprints - for instance, `ForcedPhotCoaddTask` uses the
heavy footprints from deblending run in the same band just before
non-forced is run measurement in that band.
Definition at line 261 of file forcedMeasurement.py.