LSSTApplications
20.0.0
LSSTDataManagementBasePackage
|
Go to the documentation of this file.
23 #include "ndarray/eigen.h"
31 FlagDefinitionList flagDefinitions;
36 flagDefinitions.add(
"flag_noCounts",
"Object to be centroided has no counts");
38 flagDefinitions.add(
"flag_edge",
"Object too close to edge");
49 _centroidChecker(
schema,
name, ctrl.doFootprintCheck, ctrl.maxDistToPeak) {}
53 geom::Point2D center = _centroidExtractor(measRecord, _flagHandler);
62 int x = center.getX();
63 int y = center.getY();
68 if (x < 1 || x >=
image.getWidth() - 1 || y < 1 || y >=
image.getHeight() - 1) {
72 ImageT::xy_locator im =
image.xy_at(
x,
y);
74 double const sum = (im(-1, 1) + im(0, 1) + im(1, 1) + im(-1, 0) + im(0, 0) + im(1, 0) + im(-1, -1) +
75 im(0, -1) + im(1, -1)) -
82 double const sum_x = -im(-1, 1) + im(1, 1) + -im(-1, 0) + im(1, 0) + -im(-1, -1) + im(1, -1);
83 double const sum_y = (im(-1, 1) + im(0, 1) + im(1, 1)) - (im(-1, -1) + im(0, -1) + im(1, -1));
88 _centroidChecker(measRecord);
101 if (
mapper.getInputSchema().getNames().count(
mapper.getInputSchema().join(
name, flag.
name)) == 0)
double background
"Value to subtract from the image pixel values" ;
Backwards-compatibility support for depersisting the old Calib (FluxMag0/FluxMag0Err) objects.
void handleFailure(afw::table::BaseRecord &record, MeasurementError const *error=nullptr) const
Handle an expected or unexpected Exception thrown by a measurement algorithm.
Record class that contains measurements made on a single exposure.
@ NO_UNCERTAINTY
Algorithm provides no uncertainy information at all.
virtual void fail(afw::table::SourceRecord &measRecord, MeasurementError *error=nullptr) const
Handle an exception thrown by the current algorithm by setting flags in the given record.
Exception to be thrown when a measurement algorithm experiences a known failure mode.
Defines the fields and offsets for a table.
double indexToPosition(double ind)
Convert image index to image position.
A FunctorKey for CentroidResult.
static FlagDefinition const EDGE
A reusable struct for centroid measurements.
MaskedImageT getMaskedImage()
Return the MaskedImage.
vector-type utility class to build a collection of FlagDefinitions
Utility class for handling flag fields that indicate the failure modes of an algorithm.
A mapping between the keys of two Schemas, used to copy data between them.
NaiveCentroidAlgorithm(Control const &ctrl, std::string const &name, afw::table::Schema &schema)
A base class for image defects.
#define LSST_EXCEPT(type,...)
Create an exception with a given type.
std::size_t size() const
return the current size (number of defined elements) of the collection
Simple class used to define and document flags The name and doc constitute the identity of the FlagDe...
A C++ control class to handle NaiveCentroidAlgorithm's configuration.
ImagePtr getImage() const
Return a (shared_ptr to) the MaskedImage's image.
static FlagDefinitionList const & getFlagDefinitions()
void set(Key< T > const &key, U const &value)
Set value of a field for the given key.
static FlagDefinition const NO_COUNTS
virtual void measure(afw::table::SourceRecord &measRecord, afw::image::Exposure< float > const &exposure) const
Called to measure a single child source in an image.
static FlagDefinition const FAILURE