19
19
# You should have received a copy of the GNU General Public License
20
20
# along with this program. If not, see <https://www.gnu.org/licenses/>.
21
21
22
+
23
+ from __future__ import annotations
24
+
22
25
__all__ = ["ImageScaler" , "SpatialImageScaler" , "ScaleZeroPointTask" ]
23
26
24
27
import numpy
27
30
import lsst .pex .config as pexConfig
28
31
import lsst .pipe .base as pipeBase
29
32
from lsst .pipe .tasks .selectImages import BaseSelectImagesTask
33
+ from deprecated .sphinx import deprecated
30
34
31
35
32
36
class ImageScaler :
@@ -43,6 +47,13 @@ class ImageScaler:
43
47
def __init__ (self , scale = 1.0 ):
44
48
self ._scale = scale
45
49
50
+ # TODO: Remove this property in DM-49402.
51
+ @property
52
+ @deprecated ("This property will be removed after v30." , version = "v30" , category = FutureWarning )
53
+ def scale (self ) -> float :
54
+ """Scale that it applies to a specified image."""
55
+ return self ._scale
56
+
46
57
def scaleMaskedImage (self , maskedImage ):
47
58
"""Scale the specified image or masked image in place.
48
59
@@ -90,13 +101,20 @@ def __init__(self, interpStyle, xList, yList, scaleList):
90
101
self ._yList = yList
91
102
self ._scaleList = scaleList
92
103
104
+ # TODO: Remove this property in DM-49402.
105
+ @property
106
+ @deprecated ("This property will be removed after v30." , version = "v30" , category = FutureWarning )
107
+ def scale (self ) -> float :
108
+ """Mean scale that it applies to a specified image."""
109
+ return numpy .mean (self ._scaleList )
110
+
93
111
def scaleMaskedImage (self , maskedImage ):
94
112
"""Apply scale correction to the specified masked image.
95
113
96
114
Parameters
97
115
----------
98
- image : `lsst.afw.image.MaskedImage`
99
- To scale; scale is applied in place.
116
+ maskedImage : `lsst.afw.image.MaskedImage`
117
+ Masked image to scale; scale is applied in place.
100
118
"""
101
119
scale = self .getInterpImage (maskedImage .getBBox ())
102
120
maskedImage *= scale
@@ -175,14 +193,14 @@ def run(self, exposure, dataRef=None):
175
193
----------
176
194
exposure : `lsst.afw.image.Exposure`
177
195
Exposure to scale; masked image is scaled in place.
178
- dataRef : `Unknown`
196
+ dataRef : `Unknown`, optional
179
197
Data reference for exposure.
180
198
Not used, but in API so that users can switch between spatially variant
181
199
and invariant tasks.
182
200
183
201
Returns
184
202
-------
185
- result : `lsst.pipe.base.Struct`
203
+ result : `~ lsst.pipe.base.Struct`
186
204
Results as a struct with attributes:
187
205
188
206
``imageScaler``
@@ -223,6 +241,11 @@ def getPhotoCalib(self):
223
241
def scaleFromPhotoCalib (self , calib ):
224
242
"""Compute the scale for the specified PhotoCalib.
225
243
244
+ Parameter
245
+ ---------
246
+ calib : `lsst.afw.image.PhotoCalib`
247
+ PhotoCalib object to compute the scale from.
248
+
226
249
Returns
227
250
-------
228
251
result : `lsst.pipe.base.Struct`
0 commit comments