lsst.ip.diffim
13.0-22-g3839dbb+8
|
Public Member Functions | |
def | __init__ |
def | run |
def | plotBoxes |
Public Attributes | |
boxes0 | |
boxes1 | |
Static Public Attributes | |
ConfigClass = ImageMapReduceConfig | |
Private Member Functions | |
def | _runMapper |
def | _reduceImage |
def | _generateGrid |
def | _plotBoxGrid |
Static Private Attributes | |
string | _DefaultName = "ip_diffim_imageMapReduce" |
Split an Exposure into subExposures (optionally on a grid) and perform the same operation on each. Perform 'simple' operations on a gridded set of subExposures of a larger Exposure, and then (by default) have those subExposures stitched back together into a new, full-sized image. Contrary to the expectation given by its name, this task does not perform these operations in parallel, although it could be updatd to provide such functionality. The actual operations are performed by two subTasks passed to the config. The exposure passed to this task's `run` method will be divided, and those subExposures will be passed to the subTasks, along with the original exposure. The reducing operation is performed by the second subtask.
Definition at line 494 of file imageMapReduce.py.
def lsst.ip.diffim.imageMapReduce.ImageMapReduceTask.__init__ | ( | self, | |
args, | |||
kwargs | |||
) |
Create the image map-reduce task Parameters ---------- args : arguments to be passed to `lsst.pipe.base.task.Task.__init__` kwargs : additional keyword arguments to be passed to `lsst.pipe.base.task.Task.__init__`
Definition at line 515 of file imageMapReduce.py.
|
private |
Generate two lists of bounding boxes that evenly grid `exposure` Unless the config was provided with `cellCentroidsX` and `cellCentroidsY`, grid (subimage) centers are spaced evenly by gridStepX/Y. Then the grid is adjusted as little as possible to evenly cover the input exposure (if adjustGridOption is not 'none'). Then the second set of bounding boxes is expanded by borderSizeX/Y. The expanded bounding boxes are adjusted to ensure that they intersect the exposure's bounding box. The resulting lists of bounding boxes and corresponding expanded bounding boxes are set to `self.boxes0`, `self.boxes1`. Parameters ---------- exposure : lsst.afw.image.Exposure input exposure whose full bounding box is to be evenly gridded. forceEvenSized : boolean force grid elements to have even-valued x- and y- dimensions? (Potentially useful if doing Fourier transform of subExposures.)
Definition at line 629 of file imageMapReduce.py.
|
private |
Plot a grid of boxes using matplotlib. Parameters ---------- boxes : list a list of `afwGeom.BoundingBox`es bbox : afwGeom.BoundingBox an overall bounding box **kwargs : additional keyword arguments for matplotlib
Definition at line 791 of file imageMapReduce.py.
|
private |
Reduce/merge a set of sub-exposures into a final result Return an exposure of the same dimensions as `exposure`. `mapperResults` is expected to have been produced by `runMapper`. Parameters ---------- mapperResults : list list of `pipeBase.Struct`, each of which was produced by `config.mapperSubtask` exposure : lsst.afw.image.Exposure the original exposure **kwargs : additional keyword arguments Returns ------- Output of `reducerSubtask.run` which is a `pipeBase.Struct`.
Definition at line 606 of file imageMapReduce.py.
|
private |
Perform `mapperSubtask.run` on each sub-exposure Perform `mapperSubtask.run` on each sub-exposure across a grid on `exposure` generated by `_generateGrid`. Also pass to `mapperSubtask.run` an 'expanded sub-exposure' containing the same region as the sub-exposure but with an expanded bounding box. Parameters ---------- exposure : lsst.afw.image.Exposure the original exposure which is used as the template doClone : boolean if True, clone the subimages before passing to subtask; in that case, the sub-exps do not have to be considered as read-only kwargs : additional keyword arguments to be passed to `mapperSubtask.run` and `self._generateGrid`, including `forceEvenSized`. Returns ------- a list of `pipeBase.Struct`s as returned by `mapperSubtask.run`.
Definition at line 561 of file imageMapReduce.py.
def lsst.ip.diffim.imageMapReduce.ImageMapReduceTask.plotBoxes | ( | self, | |
fullBBox, | |||
skip = 3 |
|||
) |
Plot both grids of boxes using matplotlib. Will compute the grid via `_generateGrid` if `self.boxes0` and `self.boxes1` have not already been set. Parameters ---------- exposure : lsst.afw.image.Exposure Exposure whose bounding box is gridded by this task. skip : int Plot every skip-ped box (help make plots less confusing)
Definition at line 768 of file imageMapReduce.py.
def lsst.ip.diffim.imageMapReduce.ImageMapReduceTask.run | ( | self, | |
exposure, | |||
kwargs | |||
) |
Perform a map-reduce operation on the given exposure. Split the exposure into sub-expposures on a grid (parameters given by `ImageMapReduceConfig`) and perform `config.mapperSubtask.run()` on each. Reduce the resulting sub-exposures by running `config.reducerSubtask.run()`. Parameters ---------- exposure : lsst.afw.image.Exposure the full exposure to process kwargs : additional keyword arguments to be passed to subtask `run` methods Returns ------- output of `reducerSubtask.run()`
Definition at line 534 of file imageMapReduce.py.
|
staticprivate |
Definition at line 513 of file imageMapReduce.py.
lsst.ip.diffim.imageMapReduce.ImageMapReduceTask.boxes0 |
Definition at line 529 of file imageMapReduce.py.
lsst.ip.diffim.imageMapReduce.ImageMapReduceTask.boxes1 |
Definition at line 529 of file imageMapReduce.py.
|
static |
Definition at line 512 of file imageMapReduce.py.