lsst.meas.base
ga44f29b7aa+21155385c5
Toggle main menu visibility
Loading...
Searching...
No Matches
include
lsst
meas
base
LocalBackground.h
Go to the documentation of this file.
1
// -*- lsst-c++ -*-
2
/*
3
* LSST Data Management System
4
* Copyright 2008-2018 AURA/LSST.
5
*
6
* This product includes software developed by the
7
* LSST Project (http://www.lsst.org/).
8
*
9
* This program is free software: you can redistribute it and/or modify
10
* it under the terms of the GNU General Public License as published by
11
* the Free Software Foundation, either version 3 of the License, or
12
* (at your option) any later version.
13
*
14
* This program is distributed in the hope that it will be useful,
15
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
* GNU General Public License for more details.
18
*
19
* You should have received a copy of the LSST License Statement and
20
* the GNU General Public License along with this program. If not,
21
* see <http://www.lsstcorp.org/LegalNotices/>.
22
*/
23
24
#ifndef LSST_MEAS_BASE_LocalBackground_h_INCLUDED
25
#define LSST_MEAS_BASE_LocalBackground_h_INCLUDED
26
27
#include "lsst/pex/config.h"
28
#include "
lsst/afw/math/Statistics.h
"
29
#include "
lsst/meas/base/Algorithm.h
"
30
#include "
lsst/meas/base/FluxUtilities.h
"
31
#include "
lsst/meas/base/FlagHandler.h
"
32
#include "
lsst/meas/base/InputUtilities.h
"
33
#include "
lsst/meas/base/Transform.h
"
34
35
namespace
lsst
{
36
namespace
meas
{
37
namespace
base
{
38
40
class
LocalBackgroundControl
{
41
public
:
42
LSST_CONTROL_FIELD(
badMaskPlanes
,
std::vector<std::string>
,
43
"Mask planes that indicate pixels that should be excluded from the measurement"
);
44
LSST_CONTROL_FIELD(
annulusInner
,
float
,
45
"Inner radius for background annulus as a multiple of the PSF sigma"
);
46
LSST_CONTROL_FIELD(
annulusOuter
,
float
,
47
"Outer radius for background annulus as a multiple of the PSF sigma"
);
48
LSST_CONTROL_FIELD(
bgRej
,
float
,
49
"Rejection threshold (in standard deviations) for background measurement"
);
50
LSST_CONTROL_FIELD(
bgIter
,
int
,
"Number of sigma-clipping iterations for background measurement"
);
51
52
LocalBackgroundControl
()
53
:
// deliberately omitting DETECTED: objects shouldn't be present if we're deblending, and by
54
// including DETECTED we wouldn't get any pixels for the background if we're on something
55
// extended and over threshold which is exactly the case when we do want to measure the
56
// background.
57
badMaskPlanes
({
"BAD"
,
"SAT"
,
"NO_DATA"
}),
58
annulusInner
(7.0),
59
annulusOuter
(15.0),
60
bgRej
(3.0),
61
bgIter
(3) {}
62
};
63
65
class
LocalBackgroundAlgorithm
:
public
SimpleAlgorithm
{
66
public
:
67
static
FlagDefinitionList
const
&
getFlagDefinitions
();
68
static
FlagDefinition
const
FAILURE
;
69
static
FlagDefinition
const
NO_GOOD_PIXELS
;
70
static
FlagDefinition
const
NO_PSF
;
71
72
typedef
LocalBackgroundControl
Control
;
73
74
LocalBackgroundAlgorithm
(
Control
const
& ctrl,
std::string
const
& name,
afw::table::Schema
& schema,
75
std::string
const
& logName =
""
);
76
77
virtual
void
measure
(
afw::table::SourceRecord
& measRecord,
78
afw::image::Exposure<float>
const
& exposure)
const
;
79
80
virtual
void
fail
(
afw::table::SourceRecord
& measRecord,
MeasurementError
* error =
nullptr
)
const
;
81
82
private
:
83
Control
_ctrl;
84
FluxResultKey
_resultKey;
85
FlagHandler
_flagHandler;
86
SafeCentroidExtractor
_centroidExtractor;
87
afw::math::StatisticsControl
_stats;
88
};
89
90
class
LocalBackgroundTransform
:
public
FluxTransform
{
91
public
:
92
typedef
LocalBackgroundControl
Control
;
93
LocalBackgroundTransform
(
Control
const
& ctrl,
std::string
const
& name,
afw::table::SchemaMapper
& mapper);
94
};
95
96
}
// namespace base
97
}
// namespace meas
98
}
// namespace lsst
99
100
#endif
// !LSST_MEAS_BASE_LocalBackground_h_INCLUDED
Algorithm.h
FlagHandler.h
FluxUtilities.h
InputUtilities.h
Statistics.h
Transform.h
This defines the base of measurement transformations.
std::string
lsst::afw::image::Exposure
lsst::afw::math::StatisticsControl
lsst::afw::table::Schema
lsst::afw::table::SchemaMapper
lsst::afw::table::SourceRecord
lsst::meas::base::FlagDefinitionList
vector-type utility class to build a collection of FlagDefinitions
Definition
FlagHandler.h:60
lsst::meas::base::FlagHandler
Utility class for handling flag fields that indicate the failure modes of an algorithm.
Definition
FlagHandler.h:149
lsst::meas::base::FluxResultKey
A FunctorKey for FluxResult.
Definition
FluxUtilities.h:61
lsst::meas::base::FluxTransform::FluxTransform
FluxTransform(std::string const &name, afw::table::SchemaMapper &mapper)
Definition
FluxUtilities.cc:84
lsst::meas::base::LocalBackgroundAlgorithm::LocalBackgroundAlgorithm
LocalBackgroundAlgorithm(Control const &ctrl, std::string const &name, afw::table::Schema &schema, std::string const &logName="")
Definition
LocalBackground.cc:48
lsst::meas::base::LocalBackgroundAlgorithm::FAILURE
static FlagDefinition const FAILURE
Definition
LocalBackground.h:68
lsst::meas::base::LocalBackgroundAlgorithm::NO_PSF
static FlagDefinition const NO_PSF
Definition
LocalBackground.h:70
lsst::meas::base::LocalBackgroundAlgorithm::measure
virtual void measure(afw::table::SourceRecord &measRecord, afw::image::Exposure< float > const &exposure) const
Called to measure a single child source in an image.
Definition
LocalBackground.cc:58
lsst::meas::base::LocalBackgroundAlgorithm::fail
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.
Definition
LocalBackground.cc:111
lsst::meas::base::LocalBackgroundAlgorithm::getFlagDefinitions
static FlagDefinitionList const & getFlagDefinitions()
Definition
LocalBackground.cc:46
lsst::meas::base::LocalBackgroundAlgorithm::Control
LocalBackgroundControl Control
Definition
LocalBackground.h:72
lsst::meas::base::LocalBackgroundAlgorithm::NO_GOOD_PIXELS
static FlagDefinition const NO_GOOD_PIXELS
Definition
LocalBackground.h:69
lsst::meas::base::LocalBackgroundControl
Configuration of LocalBackgroundAlgorithm.
Definition
LocalBackground.h:40
lsst::meas::base::LocalBackgroundControl::badMaskPlanes
std::vector< std::string > badMaskPlanes
"Mask planes that indicate pixels that should be excluded from the measurement" ;
Definition
LocalBackground.h:43
lsst::meas::base::LocalBackgroundControl::LocalBackgroundControl
LocalBackgroundControl()
Definition
LocalBackground.h:52
lsst::meas::base::LocalBackgroundControl::annulusInner
float annulusInner
"Inner radius for background annulus as a multiple of the PSF sigma" ;
Definition
LocalBackground.h:45
lsst::meas::base::LocalBackgroundControl::bgRej
float bgRej
"Rejection threshold (in standard deviations) for background measurement" ;
Definition
LocalBackground.h:49
lsst::meas::base::LocalBackgroundControl::bgIter
int bgIter
"Number of sigma-clipping iterations for background measurement" ;
Definition
LocalBackground.h:50
lsst::meas::base::LocalBackgroundControl::annulusOuter
float annulusOuter
"Outer radius for background annulus as a multiple of the PSF sigma" ;
Definition
LocalBackground.h:47
lsst::meas::base::LocalBackgroundTransform::LocalBackgroundTransform
LocalBackgroundTransform(Control const &ctrl, std::string const &name, afw::table::SchemaMapper &mapper)
Definition
LocalBackground.cc:115
lsst::meas::base::LocalBackgroundTransform::Control
LocalBackgroundControl Control
Definition
LocalBackground.h:92
lsst::meas::base::MeasurementError
Exception to be thrown when a measurement algorithm experiences a known failure mode.
Definition
exceptions.h:48
lsst::meas::base::SafeCentroidExtractor
Utility class for measurement algorithms that extracts a position from the Centroid slot and handles ...
Definition
InputUtilities.h:39
lsst::meas::base::SimpleAlgorithm
An abstract base classes for which the same implementation can be used for both SingleFrameAlgorithm ...
Definition
Algorithm.h:170
lsst::meas::base.plugins.LocalBackgroundTransform
LocalBackgroundTransform
Definition
plugins.py:105
lsst::meas::base.plugins.LocalBackgroundAlgorithm
LocalBackgroundAlgorithm
Definition
plugins.py:104
lsst::meas::base
Definition
Algorithm.h:37
lsst::meas
Definition
Algorithm.h:36
lsst
lsst::meas::base::FlagDefinition
Simple class used to define and document flags The name and doc constitute the identity of the FlagDe...
Definition
FlagHandler.h:40
std::vector
Generated on
for lsst.meas.base by
1.17.0