37 xSlice = _SliceDict[amplifier.getRawFlipX()]
38 ySlice = _SliceDict[amplifier.getRawFlipY()]
39 if hasattr(inView,
"image"):
40 inArrList = (inView.image.array, inView.mask.array, inView.variance.array)
41 outArrList = (outView.image.array, outView.mask.array, outView.variance.array)
43 inArrList = [inView.array]
44 outArrList = [outView.array]
46 for inArr, outArr
in zip(inArrList, outArrList):
48 outArr[:] = inArr[ySlice, xSlice]
52 """Assemble the amplifier region of an image from a raw image.
56 destImage : `lsst.afw.image.Image` or `lsst.afw.image.MaskedImage`
57 Assembled image; the region amplifier.getBBox() is overwritten with
58 the assembled amplifier image.
59 rawImage : `lsst.afw.image.Image` or `lsst.afw.image.MaskedImage`
60 Raw image (same type as destImage).
61 amplifier : `lsst.afw.cameraGeom.Amplifier`
62 Amplifier geometry, with raw amplifier info.
67 Raised if image types do not match or amplifier has no raw amplifier info.
69 if type(destImage.Factory) !=
type(rawImage.Factory):
70 raise RuntimeError(f
"destImage type = {type(destImage.Factory).__name__} != "
71 f
"{type(rawImage.Factory).__name__} = rawImage type")
72 inView = rawImage.Factory(rawImage, amplifier.getRawDataBBox())
73 outView = destImage.Factory(destImage, amplifier.getBBox())
79 """Assemble the amplifier region of a raw CCD image.
81 For most cameras this is a no-op: the raw image already is an assembled
83 However, it is useful for camera such as LSST for which each amplifier
84 image is a separate image.
88 destImage : `lsst.afw.image.Image` or `lsst.afw.image.MaskedImage`
89 CCD Image; the region amplifier.getRawAmplifier().getBBox()
90 is overwritten with the raw amplifier image.
91 rawImage : `lsst.afw.image.Image` or `lsst.afw.image.MaskedImage`
92 Raw image (same type as destImage).
93 amplifier : `lsst.afw.cameraGeom.Amplifier`
94 Amplifier geometry with raw amplifier info
99 Raised if image types do not match or amplifier has no raw amplifier info.
101 if type(destImage.Factory) !=
type(rawImage.Factory):
102 raise RuntimeError(f
"destImage type = {type(destImage.Factory).__name__} != "
103 f
"{type(rawImage.Factory).__name__} = rawImage type")
104 inBBox = amplifier.getRawBBox()
105 inView = rawImage.Factory(rawImage, inBBox)
106 outBBox = amplifier.getRawBBox()
107 outBBox.shift(amplifier.getRawXYOffset())
108 outView = destImage.Factory(destImage, outBBox)