ImageMapper¶
- 
class lsst.ip.diffim.ImageMapper(config: Optional[Config] = None, name: Optional[str] = None, parentTask: Optional[Task] = None, log: Optional[Union[logging.Logger, lsst.utils.logging.LsstLogAdapter]] = None)¶
- Bases: - lsst.pipe.base.Task- Abstract base class for any task that is to be used as - ImageMapReduceConfig.mapper.- Notes - An - ImageMapperis responsible for processing individual sub-exposures in its- runmethod, which is called from- ImageMapReduceTask.run.- runmay return a processed new sub-exposure which can be be “stitched” back into a new resulting larger exposure (depending on the configured- ImageReducer); otherwise if it does not return an lsst.afw.image.Exposure, then the- ImageReducer.config.reducer.reduceOperationshould be set to ‘none’ and the result will be propagated as-is.- Methods Summary - 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. - 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(subExposure, expandedSubExposure, …)- Perform operation on - subExposure.- timer(name, logLevel)- Context manager to log performance data for an arbitrary block of code. - Methods Documentation - 
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 : 
 - 
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(subExposure, expandedSubExposure, fullBBox, **kwargs)¶
- Perform operation on - subExposure.- To be implemented by subclasses. See class docstring for more details. This method is given the - subExposurewhich is to be operated upon, and an- expandedSubExposurewhich will contain- subExposurewith additional surrounding pixels. This allows for, for example, convolutions (which should be performed on- expandedSubExposure), to prevent the returned sub-exposure from containing invalid pixels.- This method may return a new, processed sub-exposure which can be be “stitched” back into a new resulting larger exposure (depending on the paired, configured - ImageReducer); otherwise if it does not return an lsst.afw.image.Exposure, then the- ImageReducer.config.mapper.reduceOperationshould be set to ‘none’ and the result will be propagated as-is.- Parameters: - subExposure : lsst.afw.image.Exposure
- the sub-exposure upon which to operate 
- expandedSubExposure : lsst.afw.image.Exposure
- the expanded sub-exposure upon which to operate 
- fullBBox : lsst.geom.Box2I
- the bounding box of the original exposure 
- kwargs
- additional keyword arguments propagated from - ImageMapReduceTask.run.
 - Returns: - result : lsst.pipe.base.Struct
- A structure containing the result of the - subExposureprocessing, which may itself be of any type. See above for details. If it is an- lsst.afw.image.Exposure(processed sub-exposure), then the name in the Struct should be ‘subExposure’. This is implemented here as a pass-through example only.
 
- subExposure : 
 - 
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 
 
-