LSST Applications g0f08755f38+9c285cab97,g1635faa6d4+13f3999e92,g1653933729+a8ce1bb630,g1a0ca8cf93+bf6eb00ceb,g28da252d5a+0829b12dee,g29321ee8c0+5700dc9eac,g2bbee38e9b+9634bc57db,g2bc492864f+9634bc57db,g2cdde0e794+c2c89b37c4,g3156d2b45e+41e33cbcdc,g347aa1857d+9634bc57db,g35bb328faa+a8ce1bb630,g3a166c0a6a+9634bc57db,g3e281a1b8c+9f2c4e2fc3,g414038480c+077ccc18e7,g41af890bb2+fde0dd39b6,g5fbc88fb19+17cd334064,g781aacb6e4+a8ce1bb630,g80478fca09+55a9465950,g82479be7b0+d730eedb7d,g858d7b2824+9c285cab97,g9125e01d80+a8ce1bb630,g9726552aa6+10f999ec6a,ga5288a1d22+2a84bb7594,gacf8899fa4+c69c5206e8,gae0086650b+a8ce1bb630,gb58c049af0+d64f4d3760,gc28159a63d+9634bc57db,gcf0d15dbbd+4b7d09cae4,gda3e153d99+9c285cab97,gda6a2b7d83+4b7d09cae4,gdaeeff99f8+1711a396fd,ge2409df99d+5e831397f4,ge79ae78c31+9634bc57db,gf0baf85859+147a0692ba,gf3967379c6+41c94011de,gf3fb38a9a8+8f07a9901b,gfb92a5be7c+9c285cab97,w.2024.46
LSST Data Management Base Package
|
Intermediate base class for algorithms that compute a centroid. More...
#include <DipoleAlgorithms.h>
Public Types | |
typedef meas::base::CentroidResultKey | ResultKey |
Tuple type that holds the keys that define a standard centroid algorithm. | |
typedef DipoleCentroidControl | Control |
Public Member Functions | |
NaiveDipoleCentroid (Control const &ctrl, std::string const &name, afw::table::Schema &schema) | |
ResultKey const & | getCenterKeys () const |
Return the standard centroid keys registered by this algorithm. | |
ResultKey const & | getPositiveKeys () const |
ResultKey const & | getNegativeKeys () const |
void | measure (afw::table::SourceRecord &measRecord, afw::image::Exposure< float > const &exposure) const |
Given an image and a pixel position, return a Centroid using a naive 3x3 weighted moment. | |
void | mergeCentroids (afw::table::SourceRecord &source, double posValue, double negValue) const |
void | fail (afw::table::SourceRecord &measRecord, meas::base::MeasurementError *error=NULL) const |
Handle an exception thrown by the current algorithm by setting flags in the given record. | |
void | measureForced (afw::table::SourceRecord &measRecord, afw::image::Exposure< float > const &exposure, afw::table::SourceRecord const &refRecord, afw::geom::SkyWcs const &refWcs) const override |
Called to measure a single child source in an image. | |
void | measureNForced (afw::table::SourceCatalog const &measCat, afw::image::Exposure< float > const &exposure, afw::table::SourceCatalog const &refRecord, afw::geom::SkyWcs const &refWcs) const override |
Called to simultaneously measure all children in a deblend family, in a single image. | |
virtual void | measureN (afw::table::SourceCatalog const &measCat, afw::image::Exposure< float > const &exposure) const |
Called to simultaneously measure all children in a deblend family, in a single image. | |
std::string | getLogName () const |
Static Public Member Functions | |
static meas::base::FlagDefinitionList const & | getFlagDefinitions () |
Static Public Attributes | |
static meas::base::FlagDefinition const | FAILURE = dipoleCentroidFlagDefinitions.addFailureFlag("general failure flag, set if anything went wrong") |
static meas::base::FlagDefinition const | POS_FLAG = dipoleCentroidFlagDefinitions.add("pos_flag", "failure flag for positive, set if anything went wrong") |
static meas::base::FlagDefinition const | NEG_FLAG = dipoleCentroidFlagDefinitions.add("neg_flag", "failure flag for negative, set if anything went wrong") |
Protected Member Functions | |
NaiveDipoleCentroid (Control const &ctrl, std::string const &name, afw::table::Schema &schema, ResultKey const &positiveKeys, ResultKey const &negativeKeys) | |
Initialize with a manually-constructed key tuple. | |
Protected Attributes | |
ResultKey | _centerKeys |
ResultKey | _positiveKeys |
ResultKey | _negativeKeys |
std::string | _logName |
Intermediate base class for algorithms that compute a centroid.
Definition at line 245 of file DipoleAlgorithms.h.
|
inherited |
Definition at line 88 of file DipoleAlgorithms.h.
Tuple type that holds the keys that define a standard centroid algorithm.
Algorithms are encouraged to add additional flags as appropriate, but these are required.
Definition at line 256 of file DipoleAlgorithms.h.
lsst::ip::diffim::NaiveDipoleCentroid::NaiveDipoleCentroid | ( | Control const & | ctrl, |
std::string const & | name, | ||
afw::table::Schema & | schema ) |
Definition at line 144 of file DipoleAlgorithms.cc.
|
protected |
Initialize with a manually-constructed key tuple.
|
virtual |
Handle an exception thrown by the current algorithm by setting flags in the given record.
fail() is called by the measurement framework when an exception is allowed to propagate out of one the algorithm's measure() methods. It should generally set both a general failure flag for the algorithm as well as a specific flag indicating the error condition, if possible. To aid in this, if the exception was an instance of MeasurementError, it will be passed in, carrying information about what flag to set.
An algorithm can also to chose to set flags within its own measure() methods, and then just return, rather than throw an exception. However, fail() should be implemented even when all known failure modes do not throw exceptions, to ensure that unexpected exceptions thrown in lower-level code are properly handled.
Implements lsst::meas::base::BaseAlgorithm.
Definition at line 210 of file DipoleAlgorithms.cc.
|
inline |
Return the standard centroid keys registered by this algorithm.
Definition at line 259 of file DipoleAlgorithms.h.
|
staticinherited |
Definition at line 77 of file DipoleAlgorithms.cc.
|
inlineinherited |
Definition at line 66 of file Algorithm.h.
|
inline |
Definition at line 261 of file DipoleAlgorithms.h.
|
inline |
Definition at line 260 of file DipoleAlgorithms.h.
|
virtual |
Given an image and a pixel position, return a Centroid using a naive 3x3 weighted moment.
Implements lsst::meas::base::SingleFrameAlgorithm.
Definition at line 155 of file DipoleAlgorithms.cc.
|
inlineoverridevirtualinherited |
Called to measure a single child source in an image.
Before this method is called, all neighbors will be replaced with noise, using the outputs of the deblender. Outputs should be saved in the given SourceRecord, which can also be used to obtain centroid (see SafeCentroidExtractor) and shape (see SafeShapeExtractor) information.
Implements lsst::meas::base::ForcedAlgorithm.
Reimplemented in lsst::meas::extensions::photometryKron::KronFluxAlgorithm.
Definition at line 172 of file Algorithm.h.
|
virtualinherited |
Called to simultaneously measure all children in a deblend family, in a single image.
Outputs should be saved in the given SourceCatalog, which can also be used to obtain centroid (see SafeCentroidExtractor) and shape (see SafeShapeExtractor) information.
The default implementation simply throws an exception, indicating that simultaneous measurement is not supported.
Definition at line 31 of file Algorithm.cc.
|
inlineoverridevirtualinherited |
Called to simultaneously measure all children in a deblend family, in a single image.
Outputs should be saved in the given SourceCatalog, which can also be used to obtain centroid (see SafeCentroidExtractor) and shape (see SafeShapeExtractor) information.
The default implementation simply throws an exception, indicating that simultaneous measurement is not supported.
Reimplemented from lsst::meas::base::ForcedAlgorithm.
Definition at line 179 of file Algorithm.h.
void lsst::ip::diffim::NaiveDipoleCentroid::mergeCentroids | ( | afw::table::SourceRecord & | source, |
double | posValue, | ||
double | negValue ) const |
Definition at line 183 of file DipoleAlgorithms.cc.
|
protectedinherited |
Definition at line 107 of file DipoleAlgorithms.h.
|
protectedinherited |
Definition at line 69 of file Algorithm.h.
|
protectedinherited |
Definition at line 109 of file DipoleAlgorithms.h.
|
protectedinherited |
Definition at line 108 of file DipoleAlgorithms.h.
|
staticinherited |
Definition at line 83 of file DipoleAlgorithms.h.
|
staticinherited |
Definition at line 85 of file DipoleAlgorithms.h.
|
staticinherited |
Definition at line 84 of file DipoleAlgorithms.h.