LSST Applications g0265f82a02+c6dfa2ddaf,g1162b98a3f+b2075782a9,g2079a07aa2+1b2e822518,g2bbee38e9b+c6dfa2ddaf,g337abbeb29+c6dfa2ddaf,g3ddfee87b4+a60788ef87,g50ff169b8f+2eb0e556e8,g52b1c1532d+90ebb246c7,g555ede804d+a60788ef87,g591dd9f2cf+ba8caea58f,g5ec818987f+864ee9cddb,g858d7b2824+9ee1ab4172,g876c692160+a40945ebb7,g8a8a8dda67+90ebb246c7,g8cdfe0ae6a+4fd9e222a8,g99cad8db69+5e309b7bc6,g9ddcbc5298+a1346535a5,ga1e77700b3+df8f93165b,ga8c6da7877+aa12a14d27,gae46bcf261+c6dfa2ddaf,gb0e22166c9+8634eb87fb,gb3f2274832+d0da15e3be,gba4ed39666+1ac82b564f,gbb8dafda3b+5dfd9c994b,gbeb006f7da+97157f9740,gc28159a63d+c6dfa2ddaf,gc86a011abf+9ee1ab4172,gcf0d15dbbd+a60788ef87,gdaeeff99f8+1cafcb7cd4,gdc0c513512+9ee1ab4172,ge79ae78c31+c6dfa2ddaf,geb67518f79+ba1859f325,geb961e4c1e+f9439d1e6f,gee10cc3b42+90ebb246c7,gf1cff7945b+9ee1ab4172,w.2024.12
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
lsst.afw.math._warper.Warper Class Reference

Public Member Functions

 __init__ (self, warpingKernelName, interpLength=_DefaultInterpLength, cacheSize=_DefaultCacheSize, maskWarpingKernelName="", growFullMask=afwImage.Mask.getPlaneBitMask("EDGE"))
 
 fromConfig (cls, config)
 
 getWarpingKernel (self)
 
 getMaskWarpingKernel (self)
 
 warpExposure (self, destWcs, srcExposure, border=0, maxBBox=None, destBBox=None)
 
 warpImage (self, destWcs, srcImage, srcWcs, border=0, maxBBox=None, destBBox=None)
 

Static Public Attributes

 ConfigClass = WarperConfig
 

Protected Member Functions

 _computeDestBBox (self, destWcs, srcImage, srcWcs, border, maxBBox, destBBox)
 

Protected Attributes

 _warpingControl
 

Detailed Description

Warp images.

Parameters
----------
warpingKernelName : `str`
    see `WarperConfig.warpingKernelName`
interpLength : `int`, optional
    ``interpLength`` argument to `lsst.afw.math.warpExposure`
cacheSize : `int`, optional
    size of computeCache
maskWarpingKernelName : `str`, optional
    name of mask warping kernel (if ``""`` then use ``warpingKernelName``);
    see `WarperConfig.maskWarpingKernelName`
growFullMask : `int`, optional
    mask bits to grow to full width of image/variance kernel

Definition at line 106 of file _warper.py.

Constructor & Destructor Documentation

◆ __init__()

lsst.afw.math._warper.Warper.__init__ ( self,
warpingKernelName,
interpLength = _DefaultInterpLength,
cacheSize = _DefaultCacheSize,
maskWarpingKernelName = "",
growFullMask = afwImage.Mask.getPlaneBitMask("EDGE") )

Definition at line 125 of file _warper.py.

130 growFullMask=afwImage.Mask.getPlaneBitMask("EDGE"),):
131 self._warpingControl = WarpingControl(
132 warpingKernelName, maskWarpingKernelName, cacheSize, interpLength, growFullMask)
133

Member Function Documentation

◆ _computeDestBBox()

lsst.afw.math._warper.Warper._computeDestBBox ( self,
destWcs,
srcImage,
srcWcs,
border,
maxBBox,
destBBox )
protected
Process destBBox argument for warpImage and warpExposure.

Parameters
----------
destWcs : `lsst.afw.geom.SkyWcs`
    WCS of warped image
srcImage
    image or masked image to warp
srcWcs : `lsst.afw.geom.SkyWcs`
    WCS of image
border : `int`, optional
    grow bbox of warped image by this amount in all directions
    (in pixels); if negative then the bbox is shrunk; border is applied
    before ``maxBBox``; ignored if ``destBBox`` is not `None`
maxBBox : `lsst.geom.Box2I`, optional
    maximum allowed parent bbox of warped image; if `None` then the
    warped image will be just big enough to contain all warped pixels;
    if provided then the warped image may be smaller, and so
    missing some warped pixels; ignored if ``destBBox`` is not `None`
destBBox : `lsst.geom.Box2I`, optional
    exact parent bbox of warped image; if `None` then ``border`` and
    ``maxBBox`` are used to determine the bbox, otherwise ``border``
    and ``maxBBox`` are ignored

Definition at line 251 of file _warper.py.

251 def _computeDestBBox(self, destWcs, srcImage, srcWcs, border, maxBBox, destBBox):
252 """Process destBBox argument for warpImage and warpExposure.
253
254 Parameters
255 ----------
256 destWcs : `lsst.afw.geom.SkyWcs`
257 WCS of warped image
258 srcImage
259 image or masked image to warp
260 srcWcs : `lsst.afw.geom.SkyWcs`
261 WCS of image
262 border : `int`, optional
263 grow bbox of warped image by this amount in all directions
264 (in pixels); if negative then the bbox is shrunk; border is applied
265 before ``maxBBox``; ignored if ``destBBox`` is not `None`
266 maxBBox : `lsst.geom.Box2I`, optional
267 maximum allowed parent bbox of warped image; if `None` then the
268 warped image will be just big enough to contain all warped pixels;
269 if provided then the warped image may be smaller, and so
270 missing some warped pixels; ignored if ``destBBox`` is not `None`
271 destBBox : `lsst.geom.Box2I`, optional
272 exact parent bbox of warped image; if `None` then ``border`` and
273 ``maxBBox`` are used to determine the bbox, otherwise ``border``
274 and ``maxBBox`` are ignored
275 """
276 if destBBox is None: # warning: == None fails due to Box2I.__eq__
277 destBBox = computeWarpedBBox(
278 destWcs, srcImage.getBBox(afwImage.PARENT), srcWcs)
279 if border:
280 destBBox.grow(border)
281 if maxBBox is not None:
282 destBBox.clip(maxBBox)
283 return destBBox

◆ fromConfig()

lsst.afw.math._warper.Warper.fromConfig ( cls,
config )
Create a Warper from a config.

Parameters
----------
config : `WarperConfig`
    The config to initialize the Warper with.

Definition at line 135 of file _warper.py.

135 def fromConfig(cls, config):
136 """Create a Warper from a config.
137
138 Parameters
139 ----------
140 config : `WarperConfig`
141 The config to initialize the Warper with.
142 """
143 return cls(
144 warpingKernelName=config.warpingKernelName,
145 maskWarpingKernelName=config.maskWarpingKernelName,
146 interpLength=config.interpLength,
147 cacheSize=config.cacheSize,
148 growFullMask=config.growFullMask,
149 )
150

◆ getMaskWarpingKernel()

lsst.afw.math._warper.Warper.getMaskWarpingKernel ( self)
Get the mask warping kernel.

Definition at line 156 of file _warper.py.

156 def getMaskWarpingKernel(self):
157 """Get the mask warping kernel.
158 """
159 return self._warpingControl.getMaskWarpingKernel()
160

◆ getWarpingKernel()

lsst.afw.math._warper.Warper.getWarpingKernel ( self)
Get the warping kernel.

Definition at line 151 of file _warper.py.

151 def getWarpingKernel(self):
152 """Get the warping kernel.
153 """
154 return self._warpingControl.getWarpingKernel()
155

◆ warpExposure()

lsst.afw.math._warper.Warper.warpExposure ( self,
destWcs,
srcExposure,
border = 0,
maxBBox = None,
destBBox = None )
Warp an exposure.

Parameters
-----------
destWcs : `lsst.afw.geom.SkyWcs`
    WCS of warped exposure
srcExposure
    exposure to warp
border : `int`, optional
    grow bbox of warped exposure by this amount in all directions
    (in pixels); if negative then the bbox is shrunk; border is applied
    before ``maxBBox``; ignored if ``destBBox`` is not `None`
maxBBox : `lsst.geom.Box2I`, optional
    maximum allowed parent bbox of warped exposure; if `None` then the
    warped exposure will be just big enough to contain all warped pixels;
    if provided then the warped exposure may be smaller, and so
    missing some warped pixels; ignored if ``destBBox`` is not `None`
destBBox : `lsst.geom.Box2I`, optional
    exact parent bbox of warped exposure; if `None` then ``border`` and
    ``maxBBox`` are used to determine the bbox, otherwise ``border``
    and ``maxBBox`` are ignored

Returns
-------
destExposure : same type as ``srcExposure``
    warped exposure

Notes
-----
calls `lsst.afw.math.warpExposure` insted of `~Warper.warpImage` because the former
copies attributes such as ``Calib``, and that should be done in one place

The PSF is not warped. To warp the PSF, use `lsst.meas.algorithms.WarpedPsf`

Definition at line 161 of file _warper.py.

161 def warpExposure(self, destWcs, srcExposure, border=0, maxBBox=None, destBBox=None):
162 """Warp an exposure.
163
164 Parameters
165 -----------
166 destWcs : `lsst.afw.geom.SkyWcs`
167 WCS of warped exposure
168 srcExposure
169 exposure to warp
170 border : `int`, optional
171 grow bbox of warped exposure by this amount in all directions
172 (in pixels); if negative then the bbox is shrunk; border is applied
173 before ``maxBBox``; ignored if ``destBBox`` is not `None`
174 maxBBox : `lsst.geom.Box2I`, optional
175 maximum allowed parent bbox of warped exposure; if `None` then the
176 warped exposure will be just big enough to contain all warped pixels;
177 if provided then the warped exposure may be smaller, and so
178 missing some warped pixels; ignored if ``destBBox`` is not `None`
179 destBBox : `lsst.geom.Box2I`, optional
180 exact parent bbox of warped exposure; if `None` then ``border`` and
181 ``maxBBox`` are used to determine the bbox, otherwise ``border``
182 and ``maxBBox`` are ignored
183
184 Returns
185 -------
186 destExposure : same type as ``srcExposure``
187 warped exposure
188
189 Notes
190 -----
191 calls `lsst.afw.math.warpExposure` insted of `~Warper.warpImage` because the former
192 copies attributes such as ``Calib``, and that should be done in one place
193
194 The PSF is not warped. To warp the PSF, use `lsst.meas.algorithms.WarpedPsf`
195 """
196 destBBox = self._computeDestBBox(
197 destWcs=destWcs,
198 srcImage=srcExposure.getMaskedImage(),
199 srcWcs=srcExposure.getWcs(),
200 border=border,
201 maxBBox=maxBBox,
202 destBBox=destBBox,
203 )
204 destExposure = srcExposure.Factory(destBBox, destWcs)
205 warpExposure(destExposure, srcExposure, self._warpingControl)
206 return destExposure
207

◆ warpImage()

lsst.afw.math._warper.Warper.warpImage ( self,
destWcs,
srcImage,
srcWcs,
border = 0,
maxBBox = None,
destBBox = None )
Warp an image or masked image.

Parameters
----------
destWcs : `lsst.afw.geom.SkyWcs`
    WCS of warped image
srcImage
    image or masked image to warp
srcWcs : `lsst.afw.geom.SkyWcs`
    WCS of image
border : `int`, optional
    grow bbox of warped image by this amount in all directions
    (in pixels); if negative then the bbox is shrunk; border is applied
    before ``maxBBox``; ignored if ``destBBox`` is not `None`
maxBBox : `lsst.geom.Box2I`, optional
    maximum allowed parent bbox of warped image; if `None` then the
    warped image will be just big enough to contain all warped pixels;
    if provided then the warped image may be smaller, and so
    missing some warped pixels; ignored if ``destBBox`` is not `None`
destBBox : `lsst.geom.Box2I`, optional
    exact parent bbox of warped image; if `None` then ``border`` and
    ``maxBBox`` are used to determine the bbox, otherwise ``border``
    and ``maxBBox`` are ignored

Returns
-------
destImage : same type as ``srcExposure``
    warped image or masked image

Definition at line 208 of file _warper.py.

208 def warpImage(self, destWcs, srcImage, srcWcs, border=0, maxBBox=None, destBBox=None):
209 """Warp an image or masked image.
210
211 Parameters
212 ----------
213 destWcs : `lsst.afw.geom.SkyWcs`
214 WCS of warped image
215 srcImage
216 image or masked image to warp
217 srcWcs : `lsst.afw.geom.SkyWcs`
218 WCS of image
219 border : `int`, optional
220 grow bbox of warped image by this amount in all directions
221 (in pixels); if negative then the bbox is shrunk; border is applied
222 before ``maxBBox``; ignored if ``destBBox`` is not `None`
223 maxBBox : `lsst.geom.Box2I`, optional
224 maximum allowed parent bbox of warped image; if `None` then the
225 warped image will be just big enough to contain all warped pixels;
226 if provided then the warped image may be smaller, and so
227 missing some warped pixels; ignored if ``destBBox`` is not `None`
228 destBBox : `lsst.geom.Box2I`, optional
229 exact parent bbox of warped image; if `None` then ``border`` and
230 ``maxBBox`` are used to determine the bbox, otherwise ``border``
231 and ``maxBBox`` are ignored
232
233 Returns
234 -------
235 destImage : same type as ``srcExposure``
236 warped image or masked image
237 """
238 destBBox = self._computeDestBBox(
239 destWcs=destWcs,
240 srcImage=srcImage,
241 srcWcs=srcWcs,
242 border=border,
243 maxBBox=maxBBox,
244 destBBox=destBBox,
245 )
246 destImage = srcImage.Factory(destBBox)
247 warpImage(destImage, destWcs, srcImage,
248 srcWcs, self._warpingControl)
249 return destImage
250

Member Data Documentation

◆ _warpingControl

lsst.afw.math._warper.Warper._warpingControl
protected

Definition at line 131 of file _warper.py.

◆ ConfigClass

lsst.afw.math._warper.Warper.ConfigClass = WarperConfig
static

Definition at line 123 of file _warper.py.


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