lsst.meas.algorithms
g4a7591d645+fa9daf83c6
Toggle main menu visibility
Loading...
Searching...
No Matches
python
lsst
meas
algorithms
flaggedSourceSelector.py
Go to the documentation of this file.
1
# This file is part of meas_algorithms.
2
#
3
# Developed for the LSST Data Management System.
4
# This product includes software developed by the LSST Project
5
# (https://www.lsst.org).
6
# See the COPYRIGHT file at the top-level directory of this distribution
7
# for details of code ownership.
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 GNU General Public License
20
# along with this program. If not, see <https://www.gnu.org/licenses/>.
21
22
"""Select sources that have an existing flag field set."""
23
import
lsst.pex.config
24
import
lsst.afw.table
25
import
lsst.pipe.base
as
pipeBase
26
27
from
.sourceSelector
import
BaseSourceSelectorTask, sourceSelectorRegistry
28
29
__all__ = [
"FlaggedSourceSelectorConfig"
,
"FlaggedSourceSelectorTask"
]
30
31
32
class
FlaggedSourceSelectorConfig
(BaseSourceSelectorTask.ConfigClass):
33
field = lsst.pex.config.Field(
34
dtype=str, default=
"calib_psf_used"
,
35
doc=
"Name of a flag field that is True for Sources that should be used."
,
36
)
37
38
39
@lsst.pex.config.registerConfigurable("flagged", sourceSelectorRegistry)
40
class
FlaggedSourceSelectorTask
(
BaseSourceSelectorTask
):
41
"""
42
A trivial SourceSelector that simply uses an existing flag field to filter
43
a SourceCatalog.
44
45
This is most frequently used in steps that occur after the a PSF model has
46
been built, to allow other procedures that need Sources to use the set of
47
Sources used to determine the PSF.
48
49
Attributes
50
----------
51
usesMatches : `bool`
52
A boolean variable specify if the inherited source selector uses
53
matches.
54
"""
55
56
ConfigClass = FlaggedSourceSelectorConfig
57
_DefaultName =
"flagged"
58
59
def
selectSources
(self, sourceCat, matches=None, exposure=None):
60
"""Return a bool array representing which sources to select from
61
sourceCat.
62
63
The input catalog must be contiguous in memory.
64
65
Parameters
66
----------
67
sourceCat : `lsst.afw.table.SourceCatalog`
68
Catalog of sources to select from.
69
matches : `list` of `lsst.afw.table.ReferenceMatch` or None
70
Ignored in this SourceSelector.
71
exposure : `lsst.afw.image.Exposure` or None
72
The exposure the catalog was built from; used for debug display.
73
74
Returns
75
-------
76
struct : `lsst.pipe.base.Struct`
77
The struct contains the following data:
78
79
``selected``
80
Boolean array of sources that were selected, same length as
81
``sourceCat``. (`numpy.ndarray` of `bool`)
82
"""
83
key = sourceCat.schema.find(self.config.field).key
84
return
pipeBase.Struct(selected=sourceCat[key])
lsst::meas::algorithms.flaggedSourceSelector.FlaggedSourceSelectorConfig
Definition
flaggedSourceSelector.py:32
lsst::meas::algorithms.flaggedSourceSelector.FlaggedSourceSelectorTask
Definition
flaggedSourceSelector.py:40
lsst::meas::algorithms.flaggedSourceSelector.FlaggedSourceSelectorTask.selectSources
selectSources(self, sourceCat, matches=None, exposure=None)
Definition
flaggedSourceSelector.py:59
lsst::meas::algorithms.sourceSelector.BaseSourceSelectorTask
Definition
sourceSelector.py:46
lsst::afw::table
lsst::pex::config
lsst.pipe.base
Generated on
for lsst.meas.algorithms by
1.17.0