MeasureDefectsTask¶
- class lsst.cp.pipe.MeasureDefectsTask(*, config: PipelineTaskConfig | None = None, log: logging.Logger | LsstLogAdapter | None = None, initInputs: dict[str, Any] | None = None, **kwargs: Any)¶
- Bases: - PipelineTask- Measure the defects from one exposure. - Attributes Summary - Methods Summary - debugHistogram(stepname, ampImage, ...)- Make a histogram of the distribution of pixel values for each amp. - debugView(stepname, ampImage, defects, detector)- Plot the defects found by the task. - dilateSaturatedColumns(exp, defects)- Dilate saturated columns by a configurable amount. - Empty (clear) the metadata for this Task and all sub-Tasks. - Get metadata for all tasks. - Get the task name as a hierarchical name including parent task names. - getName()- Get the name of the task. - 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.- maskBadColumns(exp, defects)- Mask full amplifier columns if they are sufficiently bad. - Mask blocks in a column if there are on-and-off bad pixels - run(inputExp, camera)- Measure one exposure for defects. - runQuantum(butlerQC, inputRefs, outputRefs)- Do butler IO and transform to provide in memory objects for tasks - runmethod.- timer(name[, logLevel])- Context manager to log performance data for an arbitrary block of code. - Attributes Documentation - Methods Documentation - debugHistogram(stepname, ampImage, nSigmaUsed, exp)¶
- Make a histogram of the distribution of pixel values for each amp. - The main image data histogram is plotted in blue. Edge pixels, if masked, are in red. Note that masked edge pixels do not contribute to the underflow and overflow numbers. - Note that this currently only supports the 16-amp LSST detectors. 
 - debugView(stepname, ampImage, defects, detector)¶
- Plot the defects found by the task. - Parameters:
- stepnamestr
- Debug frame to request. 
- ampImagelsst.afw.image.MaskedImage
- Amplifier image to display. 
- defectslsst.ip.isr.Defects
- The defects to plot. 
- detectorlsst.afw.cameraGeom.Detector
- Detector holding camera geometry. 
 
- stepname
 
 - dilateSaturatedColumns(exp, defects)¶
- Dilate saturated columns by a configurable amount. - Parameters:
- explsst.afw.image.exposure.Exposure
- The exposure in which to find defects. 
- defectslsst.ip.isr.Defects
- The defects found in the image so far 
 
- exp
- Returns:
- defectslsst.ip.isr.Defects
- The expanded defects. 
 
- defects
 
 - getFullMetadata() TaskMetadata¶
- Get metadata for all tasks. - Returns:
- metadataTaskMetadata
- The keys are the full task name. Values are metadata for the top-level task and all subtasks, sub-subtasks, etc. 
 
- metadata
 - 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.
 - getFullName() str¶
- Get the task name as a hierarchical name including parent task names. - Returns:
- fullNamestr
- 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
 
 - getName() str¶
- Get the name of the task. - Returns:
- taskNamestr
- Name of the task. 
 
- taskName
 - See also - getFullName
- Get the full name of the task. 
 
 - getTaskDict() dict[str, weakref.ReferenceType[lsst.pipe.base.task.Task]]¶
- Get a dictionary of all tasks as a shallow copy. - Returns:
- taskDictdict
- Dictionary containing full task name: task object for the top-level task and all subtasks, sub-subtasks, etc. 
 
- taskDict
 
 - classmethod makeField(doc: str) ConfigurableField¶
- Make a - lsst.pex.config.ConfigurableFieldfor this task.- Parameters:
- docstr
- Help text for the field. 
 
- doc
- Returns:
- configurableFieldlsst.pex.config.ConfigurableField
- A - ConfigurableFieldfor this task.
 
- configurableField
 - 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") 
 - makeSubtask(name: str, **keyArgs: Any) None¶
- Create a subtask as a new instance as the - nameattribute of this task.- Parameters:
- namestr
- 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.
 
 
- name
 - Notes - The subtask must be defined by - Task.config.name, an instance of- ConfigurableFieldor- RegistryField.
 - maskBadColumns(exp, defects)¶
- Mask full amplifier columns if they are sufficiently bad. - Parameters:
- defectslsst.ip.isr.Defects
- The defects found in the image so far 
 
- defects
- Returns:
- explsst.afw.image.exposure.Exposure
- The exposure in which to find defects. 
- defectslsst.ip.isr.Defects
- If the number of bad pixels in a column is not larger or equal than self.config.badPixelColumnThreshold, the input list is returned. Otherwise, the defects list returned will include boxes that mask blocks of on-and-of pixels. 
- badColumnCountint
- Number of bad columns masked. 
 
- exp
 
 - maskBlocksIfIntermitentBadPixelsInColumn(defects)¶
- Mask blocks in a column if there are on-and-off bad pixels - If there’s a column with on and off bad pixels, mask all the pixels in between, except if there is a large enough gap of consecutive good pixels between two bad pixels in the column. - Parameters:
- defectslsst.ip.isr.Defects
- The defects found in the image so far 
 
- defects
- Returns:
- defectslsst.ip.isr.Defects
- If the number of bad pixels in a column is not larger or equal than self.config.badPixelColumnThreshold, the input list is returned. Otherwise, the defects list returned will include boxes that mask blocks of on-and-of pixels. 
- badColumnCountint
- Number of bad columns partially masked. 
 
- defects
 
 - run(inputExp, camera)¶
- Measure one exposure for defects. - Parameters:
- inputExplsst.afw.image.Exposure
- Exposure to examine. 
- cameralsst.afw.cameraGeom.Camera
- Camera to use for metadata. 
 
- inputExp
- Returns:
- resultslsst.pipe.base.Struct
- Results struct containing: - outputDefects
- The defects measured from this exposure ( - lsst.ip.isr.Defects).
 
 
- results
 
 - runQuantum(butlerQC: QuantumContext, inputRefs: InputQuantizedConnection, outputRefs: OutputQuantizedConnection) None¶
- Do butler IO and transform to provide in memory objects for tasks - runmethod.- 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 - PipelineTaskConnectionsclass. The values of these attributes are the- lsst.daf.butler.DatasetRefobjects associated with the defined input/prerequisite connections.
- outputRefsOutputQuantizedConnection
- 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