ZogyImagePsfMatchTask¶
- 
class lsst.ip.diffim.ZogyImagePsfMatchTask(*args, **kwargs)¶
- Bases: - lsst.ip.diffim.ImagePsfMatchTask- Task to perform Zogy PSF matching and image subtraction. - This class inherits from ImagePsfMatchTask to contain the _warper subtask and related methods. - Methods Summary - emptyMetadata()- Empty (clear) the metadata for this Task and all sub-Tasks. - getAllSchemaCatalogs()- Get schema catalogs for all tasks in the hierarchy, combining the results into a single dict. - getFullMetadata()- Get metadata for all tasks. - getFullName()- Get the task name as a hierarchical name including parent task names. - getFwhmPix(psf[, position])- Return the FWHM in pixels of a Psf. - getName()- Get the name of the task. - getSchemaCatalogs()- Get the schemas generated by this task. - getSelectSources(exposure[, sigma, …])- Get sources to use for Psf-matching. - getTaskDict()- Get a dictionary of all tasks as a shallow copy. - makeCandidateList(templateExposure, …[, …])- Make a list of acceptable KernelCandidates. - makeField(doc)- Make a - lsst.pex.config.ConfigurableFieldfor this task.- makeKernelBasisList([targetFwhmPix, …])- Wrapper to set log messages for - lsst.ip.diffim.makeKernelBasisList.- makeSubtask(name, **keyArgs)- Create a subtask as a new instance as the - nameattribute of this task.- matchExposures(templateExposure, scienceExposure)- Warp and PSF-match an exposure to the reference. - matchMaskedImages(templateMaskedImage, …)- PSF-match a MaskedImage (templateMaskedImage) to a reference MaskedImage (scienceMaskedImage). - run(scienceExposure, templateExposure[, …])- Register, PSF-match, and subtract two Exposures, - scienceExposure - templateExposureusing the ZOGY algorithm.- subtractExposures(templateExposure, …)- Register, Psf-match and subtract two Exposures. - subtractMaskedImages(templateExposure, …)- Psf-match and subtract two MaskedImages. - 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. 
 - 
getAllSchemaCatalogs() → Dict[str, Any]¶
- Get schema catalogs for all tasks in the hierarchy, combining the results into a single dict. - Returns: - schemacatalogs : dict
- Keys are butler dataset type, values are a empty catalog (an instance of the appropriate - lsst.afw.tableCatalog type) for all tasks in the hierarchy, from the top-level task down through all subtasks.
 - Notes - This method may be called on any task in the hierarchy; it will return the same answer, regardless. - The default implementation should always suffice. If your subtask uses schemas the override - Task.getSchemaCatalogs, not this method.
- schemacatalogs : 
 - 
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 : 
 - 
getFwhmPix(psf, position=None)¶
- Return the FWHM in pixels of a Psf. 
 - 
getSchemaCatalogs() → Dict[str, Any]¶
- Get the schemas generated by this task. - Returns: - schemaCatalogs : dict
- Keys are butler dataset type, values are an empty catalog (an instance of the appropriate - lsst.afw.tableCatalog type) for this task.
 - See also - Task.getAllSchemaCatalogs
 - Notes - Warning - Subclasses that use schemas must override this method. The default implementation returns an empty dict. - This method may be called at any time after the Task is constructed, which means that all task schemas should be computed at construction time, not when data is actually processed. This reflects the philosophy that the schema should not depend on the data. - Returning catalogs rather than just schemas allows us to save e.g. slots for SourceCatalog as well. 
- schemaCatalogs : 
 - 
getSelectSources(exposure, sigma=None, doSmooth=True, idFactory=None)¶
- Get sources to use for Psf-matching. - This method runs detection and measurement on an exposure. The returned set of sources will be used as candidates for Psf-matching. - Parameters: - Returns: - selectSources :
- source catalog containing candidates for the Psf-matching 
 
 - 
getTaskDict() → Dict[str, weakref]¶
- 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 : 
 - 
makeCandidateList(templateExposure, scienceExposure, kernelSize, candidateList=None)¶
- Make a list of acceptable KernelCandidates. - Accept or generate a list of candidate sources for Psf-matching, and examine the Mask planes in both of the images for indications of bad pixels - Parameters: - templateExposure : lsst.afw.image.Exposure
- Exposure that will be convolved 
- scienceExposure : lsst.afw.image.Exposure
- Exposure that will be matched-to 
- kernelSize : float
- Dimensions of the Psf-matching Kernel, used to grow detection footprints 
- candidateList : list, optional
- List of Sources to examine. Elements must be of type afw.table.Source or a type that wraps a Source and has a getSource() method, such as meas.algorithms.PsfCandidateF. 
 - Returns: 
- templateExposure : 
 - 
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 : 
 - 
makeKernelBasisList(targetFwhmPix=None, referenceFwhmPix=None, basisDegGauss=None, basisSigmaGauss=None, metadata=None)¶
- Wrapper to set log messages for - lsst.ip.diffim.makeKernelBasisList.- Parameters: - targetFwhmPix : float, optional
- Passed on to - lsst.ip.diffim.generateAlardLuptonBasisList. Not used for delta function basis sets.
- referenceFwhmPix : float, optional
- Passed on to - lsst.ip.diffim.generateAlardLuptonBasisList. Not used for delta function basis sets.
- basisDegGauss : listofint, optional
- Passed on to - lsst.ip.diffim.generateAlardLuptonBasisList. Not used for delta function basis sets.
- basisSigmaGauss : listofint, optional
- Passed on to - lsst.ip.diffim.generateAlardLuptonBasisList. Not used for delta function basis sets.
- metadata : lsst.daf.base.PropertySet, optional
- Passed on to - lsst.ip.diffim.generateAlardLuptonBasisList. Not used for delta function basis sets.
 - Returns: - basisList: listoflsst.afw.math.kernel.FixedKernel
- List of basis kernels. 
 
- targetFwhmPix : 
 - 
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 : 
 - 
matchExposures(templateExposure, scienceExposure, templateFwhmPix=None, scienceFwhmPix=None, candidateList=None, doWarping=True, convolveTemplate=True)¶
- Warp and PSF-match an exposure to the reference. - Do the following, in order: - Warp templateExposure to match scienceExposure,
- if doWarping True and their WCSs do not already match
 
- Determine a PSF matching kernel and differential background model
- that matches templateExposure to scienceExposure
 
- Convolve templateExposure by PSF matching kernel
 - Parameters: - templateExposure : lsst.afw.image.Exposure
- Exposure to warp and PSF-match to the reference masked image 
- scienceExposure : lsst.afw.image.Exposure
- Exposure whose WCS and PSF are to be matched to 
- templateFwhmPix : float
- FWHM (in pixels) of the Psf in the template image (image to convolve) 
- scienceFwhmPix : float
- FWHM (in pixels) of the Psf in the science image 
- candidateList : list, optional
- a list of footprints/maskedImages for kernel candidates; if - Nonethen source detection is run.- Currently supported: list of Footprints or measAlg.PsfCandidateF
 
- doWarping : bool
- what to do if - templateExposureand- scienceExposureWCSs do not match:
- convolveTemplate : bool
- Whether to convolve the template image or the science image: 
 - Returns: - results : lsst.pipe.base.Struct
- An - lsst.pipe.base.Structcontaining these fields:- matchedImage: the PSF-matched exposure =
- Warped templateExposureconvolved by psfMatchingKernel. This has:- the same parent bbox, Wcs and PhotoCalib as scienceExposure
- the same filter as templateExposure
- no Psf (because the PSF-matching process does not compute one)
 
 
- psfMatchingKernel: the PSF matching kernel
- backgroundModel: differential background model
- kernelCellSet: SpatialCellSet used to solve for the PSF matching kernel
 
 - Raises: - RuntimeError
- Raised if doWarping is False and - templateExposureand- scienceExposureWCSs do not match
 
 - 
matchMaskedImages(templateMaskedImage, scienceMaskedImage, candidateList, templateFwhmPix=None, scienceFwhmPix=None)¶
- PSF-match a MaskedImage (templateMaskedImage) to a reference MaskedImage (scienceMaskedImage). - Do the following, in order: - Determine a PSF matching kernel and differential background model
- that matches templateMaskedImage to scienceMaskedImage
 
- Convolve templateMaskedImage by the PSF matching kernel
 - Parameters: - templateMaskedImage : lsst.afw.image.MaskedImage
- masked image to PSF-match to the reference masked image; must be warped to match the reference masked image 
- scienceMaskedImage : lsst.afw.image.MaskedImage
- maskedImage whose PSF is to be matched to 
- templateFwhmPix : float
- FWHM (in pixels) of the Psf in the template image (image to convolve) 
- scienceFwhmPix : float
- FWHM (in pixels) of the Psf in the science image 
- candidateList : list, optional
- A list of footprints/maskedImages for kernel candidates; if - Nonethen source detection is run.- Currently supported: list of Footprints or measAlg.PsfCandidateF
 
 - Returns: - result : callable
- An lsst.pipe.base.Structcontaining these fields:
 - psfMatchedMaskedImage: the PSF-matched masked image =
- templateMaskedImageconvolved with psfMatchingKernel. This has the same xy0, dimensions and wcs as- scienceMaskedImage.
 
- psfMatchingKernel: the PSF matching kernel
 
- backgroundModel: differential background model
 
- kernelCellSet: SpatialCellSet used to solve for the PSF matching kernel
 
 - Raises: - RuntimeError
- Raised if input images have different dimensions 
 
 - 
run(scienceExposure, templateExposure, doWarping=True)¶
- Register, PSF-match, and subtract two Exposures, - scienceExposure - templateExposureusing the ZOGY algorithm.- Parameters: - templateExposure : lsst.afw.image.Exposure
- exposure to be warped to scienceExposure. 
- scienceExposure : lsst.afw.image.Exposure
- reference Exposure. 
- doWarping : bool
- what to do if templateExposure’s and scienceExposure’s WCSs do not match: - if True then warp templateExposure to match scienceExposure - if False then raise an Exception 
 - Returns: - results : lsst.pipe.base.Structcontaining these fields:
- subtractedExposure: lsst.afw.image.Exposure
- The subtraction result.
 
- subtractedExposure: 
- warpedExposure: lsst.afw.image.ExposureorNone
- templateExposure after warping to match scienceExposure
 
- warpedExposure: 
 
 - Notes - Do the following, in order:
- Warp templateExposure to match scienceExposure, if their WCSs do not already match
- Compute subtracted exposure ZOGY image subtraction algorithm on the two exposures
 
 - This is the new entry point of the task as of DM-25115. 
- templateExposure : 
 - 
subtractExposures(templateExposure, scienceExposure, *args)¶
- Register, Psf-match and subtract two Exposures. - Do the following, in order: - Warp templateExposure to match scienceExposure, if their WCSs do not already match
- Determine a PSF matching kernel and differential background model
- that matches templateExposure to scienceExposure
 
- PSF-match templateExposure to scienceExposure
- Compute subtracted exposure (see return values for equation).
 - Parameters: - templateExposure : lsst.afw.image.ExposureF
- Exposure to PSF-match to scienceExposure 
- scienceExposure : lsst.afw.image.ExposureF
- Reference Exposure 
- templateFwhmPix : float
- FWHM (in pixels) of the Psf in the template image (image to convolve) 
- scienceFwhmPix : float
- FWHM (in pixels) of the Psf in the science image 
- candidateList : list, optional
- A list of footprints/maskedImages for kernel candidates; if - Nonethen source detection is run.- Currently supported: list of Footprints or measAlg.PsfCandidateF
 
- doWarping : bool
- What to do if - templateExposure`and- scienceExposureWCSs do not match:
- convolveTemplate : bool
- Convolve the template image or the science image 
 - Returns: - result : lsst.pipe.base.Struct
- An - lsst.pipe.base.Structcontaining these fields:- subtractedExposure: subtracted Exposure
- scienceExposure - (matchedImage + backgroundModel) 
 
- matchedImage:- templateExposureafter warping to match
- templateExposure(if doWarping true), and convolving with psfMatchingKernel
 
- psfMatchingKernel: PSF matching kernel
- backgroundModel: differential background model
- kernelCellSet: SpatialCellSet used to determine PSF matching kernel
 
 
 - 
subtractMaskedImages(templateExposure, scienceExposure, *args)¶
- Psf-match and subtract two MaskedImages. - Do the following, in order: - PSF-match templateMaskedImage to scienceMaskedImage
- Determine the differential background
- Return the difference: scienceMaskedImage
- ((warped templateMaskedImage convolved with psfMatchingKernel) + backgroundModel)
 
 - Parameters: - templateMaskedImage : lsst.afw.image.MaskedImage
- MaskedImage to PSF-match to - scienceMaskedImage
- scienceMaskedImage : lsst.afw.image.MaskedImage
- Reference MaskedImage 
- templateFwhmPix : float
- FWHM (in pixels) of the Psf in the template image (image to convolve) 
- scienceFwhmPix : float
- FWHM (in pixels) of the Psf in the science image 
- candidateList : list, optional
- A list of footprints/maskedImages for kernel candidates; if - Nonethen source detection is run.- Currently supported: list of Footprints or measAlg.PsfCandidateF
 
 - Returns: - results : lsst.pipe.base.Struct
- An - lsst.pipe.base.Structcontaining these fields:- subtractedMaskedImage:- scienceMaskedImage- (matchedImage + backgroundModel)
- matchedImage: templateMaskedImage convolved with psfMatchingKernel
- psfMatchingKernel`: PSF matching kernel
- backgroundModel: differential background model
- kernelCellSet: SpatialCellSet used to determine PSF matching kernel
 
 
 - 
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 
 
-