lsst.ip.diffim gaa63f70f4e+5e034ae04a
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | Static Protected Member Functions | Static Protected Attributes | List of all members
lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask Class Reference
Inheritance diagram for lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask:

Public Member Functions

def __init__ (self, **kwargs)
 
def run (self, template, science, sources)
 
def runConvolveTemplate (self, template, science, sources)
 
def runConvolveScience (self, template, science, sources)
 
def finalize (self, template, science, difference, kernel, templateMatched=True, preConvMode=False, preConvKernel=None, spatiallyVarying=False)
 

Public Attributes

 convolutionControl
 

Static Public Attributes

AlardLuptonSubtractConfig ConfigClass = AlardLuptonSubtractConfig
 

Static Protected Member Functions

def _validateExposures (template, science)
 
def _convolveExposure (exposure, kernel, convolutionControl, bbox=None, psf=None, photoCalib=None)
 

Static Protected Attributes

str _DefaultName = "alardLuptonSubtract"
 

Detailed Description

Compute the image difference of a science and template image using
the Alard & Lupton (1998) algorithm.

Definition at line 150 of file subtractImages.py.

Constructor & Destructor Documentation

◆ __init__()

def lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask.__init__ (   self,
**  kwargs 
)

Definition at line 157 of file subtractImages.py.

Member Function Documentation

◆ _convolveExposure()

def lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask._convolveExposure (   exposure,
  kernel,
  convolutionControl,
  bbox = None,
  psf = None,
  photoCalib = None 
)
staticprotected
Convolve an exposure with the given kernel.

Parameters
----------
exposure : `lsst.afw.Exposure`
    exposure to convolve.
kernel : `lsst.afw.math.LinearCombinationKernel`
    PSF matching kernel computed in the ``makeKernel`` subtask.
convolutionControl : `lsst.afw.math.ConvolutionControl`
    Configuration for convolve algorithm.
bbox : `lsst.geom.Box2I`, optional
    Bounding box to trim the convolved exposure to.
psf : `lsst.afw.detection.Psf`, optional
    Point spread function (PSF) to set for the convolved exposure.
photoCalib : `lsst.afw.image.PhotoCalib`, optional
    Photometric calibration of the convolved exposure.

Returns
-------
convolvedExp : `lsst.afw.Exposure`
    The convolved image.

Definition at line 452 of file subtractImages.py.

◆ _validateExposures()

def lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask._validateExposures (   template,
  science 
)
staticprotected
Check that the WCS of the two Exposures match, and the template bbox
contains the science bbox.

Parameters
----------
template : `lsst.afw.image.ExposureF`
    Template exposure, warped to match the science exposure.
science : `lsst.afw.image.ExposureF`
    Science exposure to subtract from the template.

Raises
------
AssertionError
    Raised if the WCS of the template is not equal to the science WCS,
    or if the science image is not fully contained in the template
    bounding box.

Definition at line 425 of file subtractImages.py.

◆ finalize()

def lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask.finalize (   self,
  template,
  science,
  difference,
  kernel,
  templateMatched = True,
  preConvMode = False,
  preConvKernel = None,
  spatiallyVarying = False 
)
Decorrelate the difference image to undo the noise correlations
caused by convolution.

Parameters
----------
template : `lsst.afw.image.ExposureF`
    Template exposure, warped to match the science exposure.
science : `lsst.afw.image.ExposureF`
    Science exposure to subtract from the template.
difference : `lsst.afw.image.ExposureF`
    Result of subtracting template and science.
kernel : `lsst.afw.math.Kernel`
    An (optionally spatially-varying) PSF matching kernel
templateMatched : `bool`, optional
    Was the template PSF-matched to the science image?
preConvMode : `bool`, optional
    Was the science image preconvolved with its own PSF
    before PSF matching the template?
preConvKernel : `lsst.afw.detection.Psf`, optional
    If not `None`, then the science image was pre-convolved with
    (the reflection of) this kernel. Must be normalized to sum to 1.
spatiallyVarying : `bool`, optional
    Compute the decorrelation kernel spatially varying across the image?

Returns
-------
correctedExposure : `lsst.afw.image.ExposureF`
    The decorrelated image difference.

Definition at line 373 of file subtractImages.py.

◆ run()

def lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask.run (   self,
  template,
  science,
  sources 
)
PSF match, subtract, and decorrelate two images.

Parameters
----------
template : `lsst.afw.image.ExposureF`
    Template exposure, warped to match the science exposure.
science : `lsst.afw.image.ExposureF`
    Science exposure to subtract from the template.
sources : `lsst.afw.table.SourceCatalog`
    Identified sources on the science exposure. This catalog is used to
    select sources in order to perform the AL PSF matching on stamp
    images around them.

Returns
-------
results : `lsst.pipe.base.Struct`
    ``difference`` : `lsst.afw.image.ExposureF`
        Result of subtracting template and science.
    ``matchedTemplate`` : `lsst.afw.image.ExposureF`
        Warped and PSF-matched template exposure.
    ``backgroundModel`` : `lsst.afw.math.Chebyshev1Function2D`
        Background model that was fit while solving for the PSF-matching kernel
    ``psfMatchingKernel`` : `lsst.afw.math.Kernel`
        Kernel used to PSF-match the convolved image.

Raises
------
RuntimeError
    If an unsupported convolution mode is supplied.
lsst.pipe.base.NoWorkFound
    Raised if fraction of good pixels, defined as not having NO_DATA
    set, is less then the configured requiredTemplateFraction

Definition at line 170 of file subtractImages.py.

◆ runConvolveScience()

def lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask.runConvolveScience (   self,
  template,
  science,
  sources 
)
Convolve the science image with a PSF-matching kernel and subtract the template image.

Parameters
----------
template : `lsst.afw.image.ExposureF`
    Template exposure, warped to match the science exposure.
science : `lsst.afw.image.ExposureF`
    Science exposure to subtract from the template.
sources : `lsst.afw.table.SourceCatalog`
    Identified sources on the science exposure. This catalog is used to
    select sources in order to perform the AL PSF matching on stamp
    images around them.

Returns
-------
results : `lsst.pipe.base.Struct`

    ``difference`` : `lsst.afw.image.ExposureF`
        Result of subtracting template and science.
    ``matchedTemplate`` : `lsst.afw.image.ExposureF`
        Warped template exposure. Note that in this case, the template
        is not PSF-matched to the science image.
    ``backgroundModel`` : `lsst.afw.math.Chebyshev1Function2D`
        Background model that was fit while solving for the PSF-matching kernel
    ``psfMatchingKernel`` : `lsst.afw.math.Kernel`
       Kernel used to PSF-match the science image to the template.

Definition at line 310 of file subtractImages.py.

◆ runConvolveTemplate()

def lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask.runConvolveTemplate (   self,
  template,
  science,
  sources 
)
Convolve the template image with a PSF-matching kernel and subtract
from the science image.

Parameters
----------
template : `lsst.afw.image.ExposureF`
    Template exposure, warped to match the science exposure.
science : `lsst.afw.image.ExposureF`
    Science exposure to subtract from the template.
sources : `lsst.afw.table.SourceCatalog`
    Identified sources on the science exposure. This catalog is used to
    select sources in order to perform the AL PSF matching on stamp
    images around them.

Returns
-------
results : `lsst.pipe.base.Struct`

    ``difference`` : `lsst.afw.image.ExposureF`
        Result of subtracting template and science.
    ``matchedTemplate`` : `lsst.afw.image.ExposureF`
        Warped and PSF-matched template exposure.
    ``backgroundModel`` : `lsst.afw.math.Chebyshev1Function2D`
        Background model that was fit while solving for the PSF-matching kernel
    ``psfMatchingKernel`` : `lsst.afw.math.Kernel`
        Kernel used to PSF-match the template to the science image.

Definition at line 259 of file subtractImages.py.

Member Data Documentation

◆ _DefaultName

str lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask._DefaultName = "alardLuptonSubtract"
staticprotected

Definition at line 155 of file subtractImages.py.

◆ ConfigClass

AlardLuptonSubtractConfig lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask.ConfigClass = AlardLuptonSubtractConfig
static

Definition at line 154 of file subtractImages.py.

◆ convolutionControl

lsst.ip.diffim.subtractImages.AlardLuptonSubtractTask.convolutionControl

Definition at line 164 of file subtractImages.py.


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