MergeDetectionsTask#

class lsst.pipe.tasks.mergeDetections.MergeDetectionsTask(schema=None, initInputs=None, **kwargs)#

Bases: PipelineTask

Merge sources detected in coadds of exposures obtained with different filters.

Merge sources detected in coadds of exposures obtained with different filters. To perform photometry consistently across coadds in multiple filter bands, we create a master catalog of sources from all bands by merging the sources (peaks & footprints) detected in each coadd, while keeping track of which band each source originates in. The catalog merge is performed by getMergedSourceCatalog. Spurious peaks detected around bright objects are culled as described in CullPeaksConfig.

MergeDetectionsTask is meant to be run after detecting sources in coadds generated for the chosen subset of the available bands. The purpose of the task is to merge sources (peaks & footprints) detected in the coadds generated from the chosen subset of filters. Subsequent tasks in the multi-band processing procedure will deblend the generated master list of sources and, eventually, perform forced photometry.

Parameters#

schemalsst.afw.table.Schema, optional

The schema of the detection catalogs used as input to this task.

initInputsdict, optional

Dictionary that can contain a key schema containing the input schema. If present will override the value of schema.

**kwargs

Additional keyword arguments.

Methods Summary

cullPeaks(catalog)

Attempt to remove garbage peaks (mostly on the outskirts of large blends).

getSkySourceFootprints(mergedList, skyInfo, seed)

Return a list of Footprints of sky objects which don't overlap with anything in mergedList.

run(catalogs, skyInfo, idFactory, skySeed)

Merge multiple catalogs.

runQuantum(butlerQC, inputRefs, outputRefs)

Do butler IO and transform to provide in memory objects for tasks run method.

Methods Documentation

cullPeaks(catalog)#

Attempt to remove garbage peaks (mostly on the outskirts of large blends).

Parameters#

cataloglsst.afw.table.SourceCatalog

Source catalog.

getSkySourceFootprints(mergedList, skyInfo, seed)#

Return a list of Footprints of sky objects which don’t overlap with anything in mergedList.

Parameters#

mergedListlsst.afw.table.SourceCatalog

The merged Footprints from all the input bands.

skyInfolsst.pipe.base.Struct

A description of the patch.

seedint

Seed for the random number generator.

run(catalogs, skyInfo, idFactory, skySeed)#

Merge multiple catalogs.

After ordering the catalogs and filters in priority order, getMergedSourceCatalog of the FootprintMergeList created by __init__ is used to perform the actual merging. Finally, cullPeaks is used to remove garbage peaks detected around bright objects.

Parameters#

catalogslsst.afw.table.SourceCatalog

Catalogs to be merged.

mergedListlsst.afw.table.SourceCatalog

Merged catalogs.

Returns#

resultlsst.pipe.base.Struct

Results as a struct with attributes:

outputCatalog

Merged catalogs (lsst.afw.table.SourceCatalog).

runQuantum(butlerQC, inputRefs, outputRefs)#

Do butler IO and transform to provide in memory objects for tasks run method.

Parameters#

butlerQCQuantumContext

A butler which is specialized to operate in the context of a lsst.daf.butler.Quantum.

inputRefsInputQuantizedConnection

Datastructure whose attribute names are the names that identify connections defined in corresponding PipelineTaskConnections class. The values of these attributes are the lsst.daf.butler.DatasetRef objects associated with the defined input/prerequisite connections.

outputRefsOutputQuantizedConnection

Datastructure whose attribute names are the names that identify connections defined in corresponding PipelineTaskConnections class. The values of these attributes are the lsst.daf.butler.DatasetRef objects associated with the defined output connections.