MergeDetectionsTask¶
- 
class lsst.pipe.tasks.mergeDetections.MergeDetectionsTask(butler=None, schema=None, initInputs=None, **kwargs)¶
- Bases: - lsst.pipe.base.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: - butler : None, optional
- Compatibility parameter. Should always be - None.
- schema : lsst.afw.table.Schema, optional
- The schema of the detection catalogs used as input to this task. 
- initInputs : dict, optional
- Dictionary that can contain a key - schemacontaining the input schema. If present will override the value of- schema.
- **kwargs
- Additional keyword arguments. 
 - Attributes Summary - canMultiprocess- Methods Summary - cullPeaks(catalog)- Attempt to remove garbage peaks (mostly on the outskirts of large blends). - emptyMetadata()- Empty (clear) the metadata for this Task and all sub-Tasks. - getFullMetadata()- Get metadata for all tasks. - getFullName()- Get the task name as a hierarchical name including parent task names. - getName()- Get the name of the task. - getResourceConfig()- Return resource configuration for this task. - getSkySourceFootprints(mergedList, skyInfo, seed)- Return a list of Footprints of sky objects which don’t overlap with anything in mergedList. - getTaskDict()- Get a dictionary of all tasks as a shallow copy. - makeField(doc)- Make a - lsst.pex.config.ConfigurableFieldfor this task.- makeSubtask(name, **keyArgs)- Create a subtask as a new instance as the - nameattribute of this task.- run(catalogs, skyInfo, idFactory, skySeed)- Merge multiple catalogs. - runQuantum(butlerQC, inputRefs, outputRefs)- Method to do butler IO and or transforms to provide in memory objects for tasks run method - timer(name, logLevel)- Context manager to log performance data for an arbitrary block of code. - Attributes Documentation - 
canMultiprocess= True¶
 - Methods Documentation - 
cullPeaks(catalog)¶
- Attempt to remove garbage peaks (mostly on the outskirts of large blends). - Parameters: - catalog : lsst.afw.table.SourceCatalog
- Source catalog. 
 
- catalog : 
 - 
emptyMetadata() → None¶
- Empty (clear) the metadata for this Task and all sub-Tasks. 
 - 
getFullMetadata() → lsst.pipe.base._task_metadata.TaskMetadata¶
- Get metadata for all tasks. - Returns: - metadata : TaskMetadata
- The keys are the full task name. Values are metadata for the top-level task and all subtasks, sub-subtasks, etc. 
 - Notes - The returned metadata includes timing information (if - @timer.timeMethodis used) and any metadata set by the task. The name of each item consists of the full task name with- .replaced by- :, followed by- .and the name of the item, e.g.:- topLevelTaskName:subtaskName:subsubtaskName.itemName - using - :in the full task name disambiguates the rare situation that a task has a subtask and a metadata item with the same name.
- metadata : 
 - 
getFullName() → str¶
- Get the task name as a hierarchical name including parent task names. - Returns: - fullName : str
- The full name consists of the name of the parent task and each subtask separated by periods. For example: - The full name of top-level task “top” is simply “top”.
- The full name of subtask “sub” of top-level task “top” is “top.sub”.
- The full name of subtask “sub2” of subtask “sub” of top-level task “top” is “top.sub.sub2”.
 
 
- fullName : 
 - 
getResourceConfig() → Optional[ResourceConfig]¶
- Return resource configuration for this task. - Returns: - Object of type ResourceConfigorNoneif resource
- configuration is not defined for this task.
 
- Object of type 
 - 
getSkySourceFootprints(mergedList, skyInfo, seed)¶
- Return a list of Footprints of sky objects which don’t overlap with anything in mergedList. - Parameters: - mergedList : lsst.afw.table.SourceCatalog
- The merged Footprints from all the input bands. 
- skyInfo : lsst.pipe.base.Struct
- A description of the patch. 
- seed : int
- Seed for the random number generator. 
 
- mergedList : 
 - 
getTaskDict() → Dict[str, weakref.ReferenceType[lsst.pipe.base.task.Task]]¶
- Get a dictionary of all tasks as a shallow copy. - Returns: - taskDict : dict
- Dictionary containing full task name: task object for the top-level task and all subtasks, sub-subtasks, etc. 
 
- taskDict : 
 - 
classmethod makeField(doc: str) → lsst.pex.config.configurableField.ConfigurableField¶
- Make a - lsst.pex.config.ConfigurableFieldfor this task.- Parameters: - doc : str
- Help text for the field. 
 - Returns: - configurableField : lsst.pex.config.ConfigurableField
- A - ConfigurableFieldfor this task.
 - Examples - Provides a convenient way to specify this task is a subtask of another task. - Here is an example of use: - class OtherTaskConfig(lsst.pex.config.Config): aSubtask = ATaskClass.makeField("brief description of task") 
- doc : 
 - 
makeSubtask(name: str, **keyArgs) → None¶
- Create a subtask as a new instance as the - nameattribute of this task.- Parameters: - name : str
- Brief name of the subtask. 
- keyArgs
- Extra keyword arguments used to construct the task. The following arguments are automatically provided and cannot be overridden: - “config”.
- “parentTask”.
 
 - Notes - The subtask must be defined by - Task.config.name, an instance of- ConfigurableFieldor- RegistryField.
- name : 
 - 
run(catalogs, skyInfo, idFactory, skySeed)¶
- Merge multiple catalogs. - After ordering the catalogs and filters in priority order, - getMergedSourceCatalogof the- FootprintMergeListcreated by- __init__is used to perform the actual merging. Finally,- cullPeaksis used to remove garbage peaks detected around bright objects.- Parameters: - catalogs : lsst.afw.table.SourceCatalog
- Catalogs to be merged. 
- mergedList : lsst.afw.table.SourceCatalog
- Merged catalogs. 
 - Returns: - result : lsst.pipe.base.Struct
- Results as a struct with attributes: - outputCatalog
- Merged catalogs ( - lsst.afw.table.SourceCatalog).
 
 
- catalogs : 
 - 
runQuantum(butlerQC, inputRefs, outputRefs)¶
- Method to do butler IO and or transforms to provide in memory objects for tasks run method - Parameters: - butlerQC : ButlerQuantumContext
- A butler which is specialized to operate in the context of a - lsst.daf.butler.Quantum.
- inputRefs : InputQuantizedConnection
- Datastructure whose attribute names are the names that identify connections defined in corresponding - PipelineTaskConnectionsclass. The values of these attributes are the- lsst.daf.butler.DatasetRefobjects associated with the defined input/prerequisite connections.
- outputRefs : OutputQuantizedConnection
- Datastructure whose attribute names are the names that identify connections defined in corresponding - PipelineTaskConnectionsclass. The values of these attributes are the- lsst.daf.butler.DatasetRefobjects associated with the defined output connections.
 
- butlerQC : 
 - 
timer(name: str, logLevel: int = 10) → Iterator[None]¶
- Context manager to log performance data for an arbitrary block of code. - Parameters: - See also - timer.logInfo
 - Examples - Creating a timer context: - with self.timer("someCodeToTime"): pass # code to time 
 
- butler :