lsst.ip.diffim  13.0-26-g703d095+11
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Static Private Attributes | List of all members
lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelMapper Class Reference
Inheritance diagram for lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelMapper:
lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelTask

Public Member Functions

def __init__
 
def run
 
def computeVarianceMean
 
def run
 Perform decorrelation of an image difference exposure. More...
 

Static Public Member Functions

def computeCorrectedDiffimPsf
 Compute the (decorrelated) difference image's new PSF. More...
 

Public Attributes

 statsControl
 

Static Public Attributes

 ConfigClass = DecorrelateALKernelConfig
 

Static Private Attributes

string _DefaultName = 'ip_diffim_decorrelateALKernelMapper'
 

Detailed Description

Task to be used as an ImageMapper for performing
A&L decorrelation on subimages on a grid across a A&L difference image.

This task subclasses DecorrelateALKernelTask in order to implement
all of that task's configuration parameters, as well as its `run` method.

Definition at line 352 of file imageDecorrelation.py.

Constructor & Destructor Documentation

def lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelMapper.__init__ (   self,
  args,
  kwargs 
)

Definition at line 362 of file imageDecorrelation.py.

Member Function Documentation

def lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelTask.computeCorrectedDiffimPsf (   kappa,
  psf,
  svar = 0.04,
  tvar = 0.04 
)
staticinherited

Compute the (decorrelated) difference image's new PSF.

new_psf = psf(k) * sqrt((svar + tvar) / (svar + tvar * kappa_ft(k)**2))

Parameters
kappaA matching kernel array derived from Alard & Lupton PSF matching
psfThe uncorrected psf array of the science image (and also of the diffim)
svarAverage variance of science image used for PSF matching
tvarAverage variance of template image used for PSF matching
Returns
a 2-d numpy.array containing the new PSF

Definition at line 251 of file imageDecorrelation.py.

def lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelTask.computeVarianceMean (   self,
  exposure 
)
inherited

Definition at line 141 of file imageDecorrelation.py.

def lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelTask.run (   self,
  exposure,
  templateExposure,
  subtractedExposure,
  psfMatchingKernel,
  xcen = None,
  ycen = None,
  svar = None,
  tvar = None 
)
inherited

Perform decorrelation of an image difference exposure.

Decorrelates the diffim due to the convolution of the templateExposure with the A&L PSF matching kernel. Currently can accept a spatially varying matching kernel but in this case it simply uses a static kernel from the center of the exposure. The decorrelation is described in DMTN-021, Equation 1, where exposure is I_1; templateExposure is I_2; subtractedExposure is D(k); psfMatchingKernel is kappa; and svar and tvar are their respective variances (see below).

Parameters
[in]exposurethe science afwImage.Exposure used for PSF matching
[in]templateExposurethe template afwImage.Exposure used for PSF matching
[in]subtractedExposurethe subtracted exposure produced by ip_diffim.ImagePsfMatchTask.subtractExposures()
[in]psfMatchingKernelan (optionally spatially-varying) PSF matching kernel produced by ip_diffim.ImagePsfMatchTask.subtractExposures()
[in]xcenX-pixel coordinate to use for computing constant matching kernel to use If None (default), then use the center of the image.
[in]ycenY-pixel coordinate to use for computing constant matching kernel to use If None (default), then use the center of the image.
[in]svarimage variance for science image If None (default) then compute the variance over the entire input science image.
[in]tvarimage variance for template image If None (default) then compute the variance over the entire input template image.
Returns
a pipeBase.Struct containing:
  • correctedExposure: the decorrelated diffim
  • correctionKernel: the decorrelation correction kernel (which may be ignored)
Note
The subtractedExposure is NOT updated
The returned correctedExposure has an updated PSF as well.
Here we currently convert a spatially-varying matching kernel into a constant kernel, just by computing it at the center of the image (tickets DM-6243, DM-6244).
We are also using a constant accross-the-image measure of sigma (sqrt(variance)) to compute the decorrelation kernel.
Still TBD (ticket DM-6580): understand whether the convolution is correctly modifying the variance plane of the new subtractedExposure.

Definition at line 150 of file imageDecorrelation.py.

def lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelMapper.run (   self,
  subExposure,
  expandedSubExposure,
  fullBBox,
  template,
  science,
  alTaskResult = None,
  psfMatchingKernel = None,
  preConvKernel = None,
  kwargs 
)
Perform decorrelation operation on `subExposure`, using
`expandedSubExposure` to allow for invalid edge pixels arising from
convolutions.

This method performs A&L decorrelation on `subExposure` using
local measures for image variances and PSF. `subExposure` is a
sub-exposure of the non-decorrelated A&L diffim. It also
requires the corresponding sub-exposures of the template
(`template`) and science (`science`) exposures.

Parameters
----------
subExposure : lsst.afw.image.Exposure
    the sub-exposure of the diffim
expandedSubExposure : lsst.afw.image.Exposure
    the expanded sub-exposure upon which to operate
fullBBox : afwGeom.BoundingBox
    the bounding box of the original exposure
template : afw.Exposure
    the corresponding sub-exposure of the template exposure
science : afw.Exposure
    the corresponding sub-exposure of the science exposure
alTaskResult : pipeBase.Struct
    the result of A&L image differencing on `science` and
    `template`, importantly containing the resulting
    `psfMatchingKernel`. Can be `None`, only if
    `psfMatchingKernel` is not `None`.
psfMatchingKernel : Alternative parameter for passing the
    A&L `psfMatchingKernel` directly.
preConvKernel : If not None, then pre-filtering was applied
    to science exposure, and this is the pre-convolution
    kernel.
kwargs :
    additional keyword arguments propagated from
    `ImageMapReduceTask.run`.

Returns
-------
A `pipeBase.Struct` containing:
* `subExposure` : the result of the `subExposure` processing.
* `decorrelationKernel` : the decorrelation kernel, currently
  not used.

Notes
-----
This `run` method accepts parameters identical to those of
`ImageMapper.run`, since it is called from the
`ImageMapperTask`. See that class for more information.

Definition at line 367 of file imageDecorrelation.py.

Member Data Documentation

string lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelMapper._DefaultName = 'ip_diffim_decorrelateALKernelMapper'
staticprivate

Definition at line 360 of file imageDecorrelation.py.

lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelMapper.ConfigClass = DecorrelateALKernelConfig
static

Definition at line 359 of file imageDecorrelation.py.

lsst.ip.diffim.imageDecorrelation.DecorrelateALKernelTask.statsControl
inherited

Definition at line 135 of file imageDecorrelation.py.


The documentation for this class was generated from the following file: