16 """Make and write an image of an entire focal plane 20 camera : `lsst.afw.cameraGeom.Camera` 22 exposures : `dict` mapping detector ID to `lsst.afw.image.Exposure` 23 CCD exposures, binned by `binning`. 25 Binning size that has been applied to images. 28 """Source of images for makeImageFromCamera""" 34 exposures : `dict` mapping detector ID to `lsst.afw.image.Exposure` 35 CCD exposures, already binned. 38 self.exposures = exposures
39 self.background = np.nan
41 def getCcdImage(self, detector, imageFactory, binSize):
42 """Provide image of CCD to makeImageFromCamera""" 43 detId = detector.getId()
44 if detId
not in self.exposures:
45 dims = detector.getBBox().getDimensions()/binSize
46 image = imageFactory(*[
int(xx)
for xx
in dims])
47 image.set(self.background)
49 image = self.exposures[detector.getId()]
50 if hasattr(image,
"getMaskedImage"):
51 image = image.getMaskedImage()
52 if hasattr(image,
"getMask"):
53 mask = image.getMask()
54 isBad = mask.getArray() & mask.getPlaneBitMask(
"NO_DATA") > 0
56 image.getImage().getArray()[isBad] = self.background
57 if hasattr(image,
"getImage"):
58 image = image.getImage()
62 return image, detector
66 imageSource=ImageSource(exposures),
67 imageFactory=afwImage.ImageF,
def makeImageFromCamera(camera, detectorNameList=None, background=numpy.nan, bufferSize=10, imageSource=FakeImageDataSource(), imageFactory=afwImage.ImageU, binSize=1)
std::shared_ptr< ImageT > rotateImageBy90(ImageT const &image, int nQuarter)
Rotate an image by an integral number of quarter turns.
def __init__(self, minimum, dataRange, Q)
def makeCameraImage(camera, exposures, binning)