FindGlintTrailsTask#
- class lsst.meas.algorithms.FindGlintTrailsTask(config: Config | None = None, *, name: str | None = None, parentTask: Task | None = None, log: logging.Logger | lsst.utils.logging.LsstLogAdapter | None = None)#
Bases:
TaskFind glint trails in a catalog by searching for sources that lie in a line.
Notes#
For each source (“anchor”) in the input catalog that was not included in an an earlier iteration as part of a trail:
Find all sources within a given radius.
For each pair of anchor and match, identify the other sources that could lie on the same line(s).
Take the longest set of such pairs as a candidate trail.
Fit a line to the identified pairs with the RANSAC algorithm, measuring distances perpendicular to the line so that trails at any angle are found.
Find all sources in the catalog that could lie on that line.
Refit a line to all of the matched sources.
If the line holds at least the minimum number of sources, return the sources that were considered inliers during the fit, and the fit parameters.
Methods Summary
run(catalog)Find glint trails in a catalog.
Methods Documentation
- run(catalog)#
Find glint trails in a catalog.
Parameters#
- catalog
lsst.afw.table.SourceCatalog Catalog to search for glint trails.
Returns#
- result
lsst.pipe.base.Struct Results as a struct with attributes:
trailsCatalog subsets containing sources in each trail that was found. (
list[lsst.afw.table.SourceCatalog])trailed_idsIds of all the sources that were included in any fit trail. (
set[int])parametersParameters of all the trails that were found. (
list[GlintTrailParameters])
- catalog