|
lsst.ip.isr g9cb75138f3+bac7c66737
|
Public Member Functions | |
| def | __init__ (self, **kwargs) |
| def | runQuantum (self, butlerQC, inputRefs, outputRefs) |
| def | readIsrData (self, dataRef, rawExposure) |
| def | run (self, ccdExposure, *camera=None, bias=None, linearizer=None, crosstalk=None, crosstalkSources=None, dark=None, flat=None, ptc=None, bfKernel=None, bfGains=None, defects=None, fringes=pipeBase.Struct(fringes=None), opticsTransmission=None, filterTransmission=None, sensorTransmission=None, atmosphereTransmission=None, detectorNum=None, strayLightData=None, illumMaskedImage=None, isGen3=False) |
| def | runDataRef (self, sensorRef) |
| def | getIsrExposure (self, dataRef, datasetType, dateObs=None, immediate=True) |
| def | ensureExposure (self, inputExp, camera=None, detectorNum=None) |
| def | convertIntToFloat (self, exposure) |
| def | maskAmplifier (self, ccdExposure, amp, defects) |
| def | overscanCorrection (self, ccdExposure, amp) |
| def | updateVariance (self, ampExposure, amp, overscanImage=None, ptcDataset=None) |
| def | maskNegativeVariance (self, exposure) |
| def | darkCorrection (self, exposure, darkExposure, invert=False) |
| def | doLinearize (self, detector) |
| def | flatCorrection (self, exposure, flatExposure, invert=False) |
| def | saturationDetection (self, exposure, amp) |
| def | saturationInterpolation (self, exposure) |
| def | suspectDetection (self, exposure, amp) |
| def | maskDefect (self, exposure, defectBaseList) |
| def | maskEdges (self, exposure, numEdgePixels=0, maskPlane="SUSPECT", level='DETECTOR') |
| def | maskAndInterpolateDefects (self, exposure, defectBaseList) |
| def | maskNan (self, exposure) |
| def | maskAndInterpolateNan (self, exposure) |
| def | measureBackground (self, exposure, IsrQaConfig=None) |
| def | roughZeroPoint (self, exposure) |
| def | flatContext (self, exp, flat, dark=None) |
| def | debugView (self, exposure, stepname) |
Public Attributes | |
| vignettePolygon | |
Static Public Attributes | |
| ConfigClass = IsrTaskConfig | |
Apply common instrument signature correction algorithms to a raw frame.
The process for correcting imaging data is very similar from
camera to camera. This task provides a vanilla implementation of
doing these corrections, including the ability to turn certain
corrections off if they are not needed. The inputs to the primary
method, `run()`, are a raw exposure to be corrected and the
calibration data products. The raw input is a single chip sized
mosaic of all amps including overscans and other non-science
pixels. The method `runDataRef()` identifies and defines the
calibration data products, and is intended for use by a
`lsst.pipe.base.cmdLineTask.CmdLineTask` and takes as input only a
`daf.persistence.butlerSubset.ButlerDataRef`. This task may be
subclassed for different camera, although the most camera specific
methods have been split into subtasks that can be redirected
appropriately.
The __init__ method sets up the subtasks for ISR processing, using
the defaults from `lsst.ip.isr`.
Parameters
----------
args : `list`
Positional arguments passed to the Task constructor.
None used at this time.
kwargs : `dict`, optional
Keyword arguments passed on to the Task constructor.
None used at this time.
Definition at line 952 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.__init__ | ( | self, | |
| ** | kwargs | ||
| ) |
Definition at line 985 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.convertIntToFloat | ( | self, | |
| exposure | |||
| ) |
Convert exposure image from uint16 to float.
If the exposure does not need to be converted, the input is
immediately returned. For exposures that are converted to use
floating point pixels, the variance is set to unity and the
mask to zero.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
The raw exposure to be converted.
Returns
-------
newexposure : `lsst.afw.image.Exposure`
The input ``exposure``, converted to floating point pixels.
Raises
------
RuntimeError
Raised if the exposure type cannot be converted to float.
Definition at line 1934 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.darkCorrection | ( | self, | |
| exposure, | |||
| darkExposure, | |||
invert = False |
|||
| ) |
Apply dark correction in place.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
darkExposure : `lsst.afw.image.Exposure`
Dark exposure of the same size as ``exposure``.
invert : `Bool`, optional
If True, re-add the dark to an already corrected image.
Raises
------
RuntimeError
Raised if either ``exposure`` or ``darkExposure`` do not
have their dark time defined.
See Also
--------
lsst.ip.isr.isrFunctions.darkCorrection
Definition at line 2267 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.debugView | ( | self, | |
| exposure, | |||
| stepname | |||
| ) |
Utility function to examine ISR exposure at different stages.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to view.
stepname : `str`
State of processing to view.
Definition at line 2690 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.doLinearize | ( | self, | |
| detector | |||
| ) |
Check if linearization is needed for the detector cameraGeom.
Checks config.doLinearize and the linearity type of the first
amplifier.
Parameters
----------
detector : `lsst.afw.cameraGeom.Detector`
Detector to get linearity type from.
Returns
-------
doLinearize : `Bool`
If True, linearization should be performed.
Definition at line 2310 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.ensureExposure | ( | self, | |
| inputExp, | |||
camera = None, |
|||
detectorNum = None |
|||
| ) |
Ensure that the data returned by Butler is a fully constructed exp.
ISR requires exposure-level image data for historical reasons, so if we
did not recieve that from Butler, construct it from what we have,
modifying the input in place.
Parameters
----------
inputExp : `lsst.afw.image.Exposure`, `lsst.afw.image.DecoratedImageU`,
or `lsst.afw.image.ImageF`
The input data structure obtained from Butler.
camera : `lsst.afw.cameraGeom.camera`, optional
The camera associated with the image. Used to find the appropriate
detector if detector is not already set.
detectorNum : `int`, optional
The detector in the camera to attach, if the detector is not
already set.
Returns
-------
inputExp : `lsst.afw.image.Exposure`
The re-constructed exposure, with appropriate detector parameters.
Raises
------
TypeError
Raised if the input data cannot be used to construct an exposure.
Definition at line 1882 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.flatContext | ( | self, | |
| exp, | |||
| flat, | |||
dark = None |
|||
| ) |
Context manager that applies and removes flats and darks,
if the task is configured to apply them.
Parameters
----------
exp : `lsst.afw.image.Exposure`
Exposure to process.
flat : `lsst.afw.image.Exposure`
Flat exposure the same size as ``exp``.
dark : `lsst.afw.image.Exposure`, optional
Dark exposure the same size as ``exp``.
Yields
------
exp : `lsst.afw.image.Exposure`
The flat and dark corrected exposure.
Definition at line 2660 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.flatCorrection | ( | self, | |
| exposure, | |||
| flatExposure, | |||
invert = False |
|||
| ) |
Apply flat correction in place.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
flatExposure : `lsst.afw.image.Exposure`
Flat exposure of the same size as ``exposure``.
invert : `Bool`, optional
If True, unflatten an already flattened image.
See Also
--------
lsst.ip.isr.isrFunctions.flatCorrection
Definition at line 2329 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.getIsrExposure | ( | self, | |
| dataRef, | |||
| datasetType, | |||
dateObs = None, |
|||
immediate = True |
|||
| ) |
Retrieve a calibration dataset for removing instrument signature.
Parameters
----------
dataRef : `daf.persistence.butlerSubset.ButlerDataRef`
DataRef of the detector data to find calibration datasets
for.
datasetType : `str`
Type of dataset to retrieve (e.g. 'bias', 'flat', etc).
dateObs : `str`, optional
Date of the observation. Used to correct butler failures
when using fallback filters.
immediate : `Bool`
If True, disable butler proxies to enable error handling
within this routine.
Returns
-------
exposure : `lsst.afw.image.Exposure`
Requested calibration frame.
Raises
------
RuntimeError
Raised if no matching calibration frame can be found.
Definition at line 1834 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.maskAmplifier | ( | self, | |
| ccdExposure, | |||
| amp, | |||
| defects | |||
| ) |
Identify bad amplifiers, saturated and suspect pixels.
Parameters
----------
ccdExposure : `lsst.afw.image.Exposure`
Input exposure to be masked.
amp : `lsst.afw.table.AmpInfoCatalog`
Catalog of parameters defining the amplifier on this
exposure to mask.
defects : `lsst.ip.isr.Defects`
List of defects. Used to determine if the entire
amplifier is bad.
Returns
-------
badAmp : `Bool`
If this is true, the entire amplifier area is covered by
defects and unusable.
Definition at line 1971 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.maskAndInterpolateDefects | ( | self, | |
| exposure, | |||
| defectBaseList | |||
| ) |
Mask and interpolate defects using mask plane "BAD", in place.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
defectBaseList : `lsst.ip.isr.Defects` or `list` of
`lsst.afw.image.DefectBase`.
List of defects to mask and interpolate.
See Also
--------
lsst.ip.isr.isrTask.maskDefect
Definition at line 2497 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.maskAndInterpolateNan | ( | self, | |
| exposure | |||
| ) |
"Mask and interpolate NaN/infs using mask plane "UNMASKEDNAN",
in place.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
See Also
--------
lsst.ip.isr.isrTask.maskNan
Definition at line 2548 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.maskDefect | ( | self, | |
| exposure, | |||
| defectBaseList | |||
| ) |
Mask defects using mask plane "BAD", in place.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
defectBaseList : `lsst.ip.isr.Defects` or `list` of
`lsst.afw.image.DefectBase`.
List of defects to mask.
Notes
-----
Call this after CCD assembly, since defects may cross amplifier
boundaries.
Definition at line 2439 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.maskEdges | ( | self, | |
| exposure, | |||
numEdgePixels = 0, |
|||
maskPlane = "SUSPECT", |
|||
level = 'DETECTOR' |
|||
| ) |
Mask edge pixels with applicable mask plane.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
numEdgePixels : `int`, optional
Number of edge pixels to mask.
maskPlane : `str`, optional
Mask plane name to use.
level : `str`, optional
Level at which to mask edges.
Definition at line 2463 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.maskNan | ( | self, | |
| exposure | |||
| ) |
Mask NaNs using mask plane "UNMASKEDNAN", in place.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
Notes
-----
We mask over all non-finite values (NaN, inf), including those
that are masked with other bits (because those may or may not be
interpolated over later, and we want to remove all NaN/infs).
Despite this behaviour, the "UNMASKEDNAN" mask plane is used to
preserve the historical name.
Definition at line 2522 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.maskNegativeVariance | ( | self, | |
| exposure | |||
| ) |
Identify and mask pixels with negative variance values.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
See Also
--------
lsst.ip.isr.isrFunctions.updateVariance
Definition at line 2251 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.measureBackground | ( | self, | |
| exposure, | |||
IsrQaConfig = None |
|||
| ) |
Measure the image background in subgrids, for quality control.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
IsrQaConfig : `lsst.ip.isr.isrQa.IsrQaConfig`
Configuration object containing parameters on which background
statistics and subgrids to use.
Definition at line 2569 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.overscanCorrection | ( | self, | |
| ccdExposure, | |||
| amp | |||
| ) |
Apply overscan correction in place.
This method does initial pixel rejection of the overscan
region. The overscan can also be optionally segmented to
allow for discontinuous overscan responses to be fit
separately. The actual overscan subtraction is performed by
the `lsst.ip.isr.isrFunctions.overscanCorrection` function,
which is called here after the amplifier is preprocessed.
Parameters
----------
ccdExposure : `lsst.afw.image.Exposure`
Exposure to have overscan correction performed.
amp : `lsst.afw.cameraGeom.Amplifer`
The amplifier to consider while correcting the overscan.
Returns
-------
overscanResults : `lsst.pipe.base.Struct`
Result struct with components:
- ``imageFit`` : scalar or `lsst.afw.image.Image`
Value or fit subtracted from the amplifier image data.
- ``overscanFit`` : scalar or `lsst.afw.image.Image`
Value or fit subtracted from the overscan image data.
- ``overscanImage`` : `lsst.afw.image.Image`
Image of the overscan region with the overscan
correction applied. This quantity is used to estimate
the amplifier read noise empirically.
Raises
------
RuntimeError
Raised if the ``amp`` does not contain raw pixel information.
See Also
--------
lsst.ip.isr.isrFunctions.overscanCorrection
Definition at line 2046 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.readIsrData | ( | self, | |
| dataRef, | |||
| rawExposure | |||
| ) |
Retrieve necessary frames for instrument signature removal.
Pre-fetching all required ISR data products limits the IO
required by the ISR. Any conflict between the calibration data
available and that needed for ISR is also detected prior to
doing processing, allowing it to fail quickly.
Parameters
----------
dataRef : `daf.persistence.butlerSubset.ButlerDataRef`
Butler reference of the detector data to be processed
rawExposure : `afw.image.Exposure`
The raw exposure that will later be corrected with the
retrieved calibration data; should not be modified in this
method.
Returns
-------
result : `lsst.pipe.base.Struct`
Result struct with components (which may be `None`):
- ``bias``: bias calibration frame (`afw.image.Exposure`)
- ``linearizer``: functor for linearization
(`ip.isr.linearize.LinearizeBase`)
- ``crosstalkSources``: list of possible crosstalk sources (`list`)
- ``dark``: dark calibration frame (`afw.image.Exposure`)
- ``flat``: flat calibration frame (`afw.image.Exposure`)
- ``bfKernel``: Brighter-Fatter kernel (`numpy.ndarray`)
- ``defects``: list of defects (`lsst.ip.isr.Defects`)
- ``fringes``: `lsst.pipe.base.Struct` with components:
- ``fringes``: fringe calibration frame (`afw.image.Exposure`)
- ``seed``: random seed derived from the ccdExposureId for random
number generator (`uint32`).
- ``opticsTransmission``: `lsst.afw.image.TransmissionCurve`
A ``TransmissionCurve`` that represents the throughput of the
optics, to be evaluated in focal-plane coordinates.
- ``filterTransmission`` : `lsst.afw.image.TransmissionCurve`
A ``TransmissionCurve`` that represents the throughput of the
filter itself, to be evaluated in focal-plane coordinates.
- ``sensorTransmission`` : `lsst.afw.image.TransmissionCurve`
A ``TransmissionCurve`` that represents the throughput of the
sensor itself, to be evaluated in post-assembly trimmed
detector coordinates.
- ``atmosphereTransmission`` : `lsst.afw.image.TransmissionCurve`
A ``TransmissionCurve`` that represents the throughput of the
atmosphere, assumed to be spatially constant.
- ``strayLightData`` : `object`
An opaque object containing calibration information for
stray-light correction. If `None`, no correction will be
performed.
- ``illumMaskedImage`` : illumination correction image
(`lsst.afw.image.MaskedImage`)
Raises
------
NotImplementedError :
Raised if a per-amplifier brighter-fatter kernel is requested by
the configuration.
Definition at line 1095 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.roughZeroPoint | ( | self, | |
| exposure | |||
| ) |
Set an approximate magnitude zero point for the exposure.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
Definition at line 2633 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.run | ( | self, | |
| ccdExposure, | |||
| * | camera = None, |
||
bias = None, |
|||
linearizer = None, |
|||
crosstalk = None, |
|||
crosstalkSources = None, |
|||
dark = None, |
|||
flat = None, |
|||
ptc = None, |
|||
bfKernel = None, |
|||
bfGains = None, |
|||
defects = None, |
|||
fringes = pipeBase.Struct(fringes=None), |
|||
opticsTransmission = None, |
|||
filterTransmission = None, |
|||
sensorTransmission = None, |
|||
atmosphereTransmission = None, |
|||
detectorNum = None, |
|||
strayLightData = None, |
|||
illumMaskedImage = None, |
|||
isGen3 = False |
|||
| ) |
Perform instrument signature removal on an exposure.
Steps included in the ISR processing, in order performed, are:
- saturation and suspect pixel masking
- overscan subtraction
- CCD assembly of individual amplifiers
- bias subtraction
- variance image construction
- linearization of non-linear response
- crosstalk masking
- brighter-fatter correction
- dark subtraction
- fringe correction
- stray light subtraction
- flat correction
- masking of known defects and camera specific features
- vignette calculation
- appending transmission curve and distortion model
Parameters
----------
ccdExposure : `lsst.afw.image.Exposure`
The raw exposure that is to be run through ISR. The
exposure is modified by this method.
camera : `lsst.afw.cameraGeom.Camera`, optional
The camera geometry for this exposure. Required if
one or more of ``ccdExposure``, ``bias``, ``dark``, or
``flat`` does not have an associated detector.
bias : `lsst.afw.image.Exposure`, optional
Bias calibration frame.
linearizer : `lsst.ip.isr.linearize.LinearizeBase`, optional
Functor for linearization.
crosstalk : `lsst.ip.isr.crosstalk.CrosstalkCalib`, optional
Calibration for crosstalk.
crosstalkSources : `list`, optional
List of possible crosstalk sources.
dark : `lsst.afw.image.Exposure`, optional
Dark calibration frame.
flat : `lsst.afw.image.Exposure`, optional
Flat calibration frame.
ptc : `lsst.ip.isr.PhotonTransferCurveDataset`, optional
Photon transfer curve dataset, with, e.g., gains
and read noise.
bfKernel : `numpy.ndarray`, optional
Brighter-fatter kernel.
bfGains : `dict` of `float`, optional
Gains used to override the detector's nominal gains for the
brighter-fatter correction. A dict keyed by amplifier name for
the detector in question.
defects : `lsst.ip.isr.Defects`, optional
List of defects.
fringes : `lsst.pipe.base.Struct`, optional
Struct containing the fringe correction data, with
elements:
- ``fringes``: fringe calibration frame (`afw.image.Exposure`)
- ``seed``: random seed derived from the ccdExposureId for random
number generator (`uint32`)
opticsTransmission: `lsst.afw.image.TransmissionCurve`, optional
A ``TransmissionCurve`` that represents the throughput of the,
optics, to be evaluated in focal-plane coordinates.
filterTransmission : `lsst.afw.image.TransmissionCurve`
A ``TransmissionCurve`` that represents the throughput of the
filter itself, to be evaluated in focal-plane coordinates.
sensorTransmission : `lsst.afw.image.TransmissionCurve`
A ``TransmissionCurve`` that represents the throughput of the
sensor itself, to be evaluated in post-assembly trimmed detector
coordinates.
atmosphereTransmission : `lsst.afw.image.TransmissionCurve`
A ``TransmissionCurve`` that represents the throughput of the
atmosphere, assumed to be spatially constant.
detectorNum : `int`, optional
The integer number for the detector to process.
isGen3 : bool, optional
Flag this call to run() as using the Gen3 butler environment.
strayLightData : `object`, optional
Opaque object containing calibration information for stray-light
correction. If `None`, no correction will be performed.
illumMaskedImage : `lsst.afw.image.MaskedImage`, optional
Illumination correction image.
Returns
-------
result : `lsst.pipe.base.Struct`
Result struct with component:
- ``exposure`` : `afw.image.Exposure`
The fully ISR corrected exposure.
- ``outputExposure`` : `afw.image.Exposure`
An alias for `exposure`
- ``ossThumb`` : `numpy.ndarray`
Thumbnail image of the exposure after overscan subtraction.
- ``flattenedThumb`` : `numpy.ndarray`
Thumbnail image of the exposure after flat-field correction.
Raises
------
RuntimeError
Raised if a configuration option is set to True, but the
required calibration data has not been specified.
Notes
-----
The current processed exposure can be viewed by setting the
appropriate lsstDebug entries in the `debug.display`
dictionary. The names of these entries correspond to some of
the IsrTaskConfig Boolean options, with the value denoting the
frame to use. The exposure is shown inside the matching
option check and after the processing of that step has
finished. The steps with debug points are:
doAssembleCcd
doBias
doCrosstalk
doBrighterFatter
doDark
doFringe
doStrayLight
doFlat
In addition, setting the "postISRCCD" entry displays the
exposure after all ISR processing has finished.
Definition at line 1275 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.runDataRef | ( | self, | |
| sensorRef | |||
| ) |
Perform instrument signature removal on a ButlerDataRef of a Sensor.
This method contains the `CmdLineTask` interface to the ISR
processing. All IO is handled here, freeing the `run()` method
to manage only pixel-level calculations. The steps performed
are:
- Read in necessary detrending/isr/calibration data.
- Process raw exposure in `run()`.
- Persist the ISR-corrected exposure as "postISRCCD" if
config.doWrite=True.
Parameters
----------
sensorRef : `daf.persistence.butlerSubset.ButlerDataRef`
DataRef of the detector data to be processed
Returns
-------
result : `lsst.pipe.base.Struct`
Result struct with component:
- ``exposure`` : `afw.image.Exposure`
The fully ISR corrected exposure.
Raises
------
RuntimeError
Raised if a configuration option is set to True, but the
required calibration data does not exist.
Definition at line 1783 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.runQuantum | ( | self, | |
| butlerQC, | |||
| inputRefs, | |||
| outputRefs | |||
| ) |
Definition at line 996 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.saturationDetection | ( | self, | |
| exposure, | |||
| amp | |||
| ) |
Detect and mask saturated pixels in config.saturatedMaskName.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process. Only the amplifier DataSec is processed.
amp : `lsst.afw.table.AmpInfoCatalog`
Amplifier detector data.
See Also
--------
lsst.ip.isr.isrFunctions.makeThresholdMask
Definition at line 2354 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.saturationInterpolation | ( | self, | |
| exposure | |||
| ) |
Interpolate over saturated pixels, in place.
This method should be called after `saturationDetection`, to
ensure that the saturated pixels have been identified in the
SAT mask. It should also be called after `assembleCcd`, since
saturated regions may cross amplifier boundaries.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process.
See Also
--------
lsst.ip.isr.isrTask.saturationDetection
lsst.ip.isr.isrFunctions.interpolateFromMask
Definition at line 2378 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.suspectDetection | ( | self, | |
| exposure, | |||
| amp | |||
| ) |
Detect and mask suspect pixels in config.suspectMaskName.
Parameters
----------
exposure : `lsst.afw.image.Exposure`
Exposure to process. Only the amplifier DataSec is processed.
amp : `lsst.afw.table.AmpInfoCatalog`
Amplifier detector data.
See Also
--------
lsst.ip.isr.isrFunctions.makeThresholdMask
Notes
-----
Suspect pixels are pixels whose value is greater than
amp.getSuspectLevel(). This is intended to indicate pixels that may be
affected by unknown systematics; for example if non-linearity
corrections above a certain level are unstable then that would be a
useful value for suspectLevel. A value of `nan` indicates that no such
level exists and no pixels are to be masked as suspicious.
Definition at line 2403 of file isrTask.py.
| def lsst.ip.isr.isrTask.IsrTask.updateVariance | ( | self, | |
| ampExposure, | |||
| amp, | |||
overscanImage = None, |
|||
ptcDataset = None |
|||
| ) |
Set the variance plane using the gain and read noise
The read noise is calculated from the ``overscanImage`` if the
``doEmpiricalReadNoise`` option is set in the configuration; otherwise
the value from the amplifier data is used.
Parameters
----------
ampExposure : `lsst.afw.image.Exposure`
Exposure to process.
amp : `lsst.afw.table.AmpInfoRecord` or `FakeAmp`
Amplifier detector data.
overscanImage : `lsst.afw.image.MaskedImage`, optional.
Image of overscan, required only for empirical read noise.
ptcDataset : `lsst.ip.isr.PhotonTransferCurveDataset`, optional
PTC dataset containing the gains and read noise.
Raises
------
RuntimeError
Raised if either ``usePtcGains`` of ``usePtcReadNoise``
are ``True``, but ptcDataset is not provided.
Raised if ```doEmpiricalReadNoise`` is ``True`` but
``overscanImage`` is ``None``.
See also
--------
lsst.ip.isr.isrFunctions.updateVariance
Definition at line 2176 of file isrTask.py.
|
static |
Definition at line 982 of file isrTask.py.
| lsst.ip.isr.isrTask.IsrTask.vignettePolygon |
Definition at line 1694 of file isrTask.py.