LSSTApplications  17.0+50,17.0+84,17.0+9,18.0.0+14,18.0.0+2,18.0.0+30,18.0.0+4,18.0.0+9,18.0.0-2-ge43143a+4,18.1.0-1-g0001055,18.1.0-1-g0896a44+6,18.1.0-1-g1349e88+4,18.1.0-1-g2505f39+3,18.1.0-1-g380d4d4+4,18.1.0-1-g5e4b7ea,18.1.0-1-g85f8cd4+3,18.1.0-1-g9a6769a+2,18.1.0-1-ga1a4c1a+2,18.1.0-1-gc037db8,18.1.0-1-gd55f500+1,18.1.0-1-ge10677a+3,18.1.0-10-g73b8679e+7,18.1.0-11-g311e899+3,18.1.0-12-g0d73a3591,18.1.0-12-gc95f69a+3,18.1.0-2-g000ad9a+3,18.1.0-2-g31c43f9+3,18.1.0-2-g9c63283+4,18.1.0-2-gdf0b915+4,18.1.0-2-gf03bb23,18.1.0-3-g2e29e3d+6,18.1.0-3-g52aa583+2,18.1.0-3-g9cb968e+3,18.1.0-4-gd2e8982+6,18.1.0-5-g510c42a+3,18.1.0-5-gaeab27e+4,18.1.0-6-gdda7f3e+6,18.1.0-7-g89824ecc+4,w.2019.32
LSSTDataManagementBasePackage
Classes | Functions
lsst.synpipe.FakeSourceLib Namespace Reference

Classes

class  SkyMapIdContainer
 

Functions

def cropFakeImage (fakeImage, expBBox)
 
def addNoise (galImage, detector, rand_gen=None)
 

Function Documentation

◆ addNoise()

def lsst.synpipe.FakeSourceLib.addNoise (   galImage,
  detector,
  rand_gen = None 
)
adds noise to the the image and returns a variance plane
INPUT: image to add noise to
       detector where the image will be located, this sets the gain
NOTE: this assumes float type images and will break if given doubles
RETURN: a MaskedImageF with the image with additional noise and the
        variance plane
giving the variance due to the object

Definition at line 63 of file FakeSourceLib.py.

63 def addNoise(galImage, detector, rand_gen=None):
64  """
65  adds noise to the the image and returns a variance plane
66  INPUT: image to add noise to
67  detector where the image will be located, this sets the gain
68  NOTE: this assumes float type images and will break if given doubles
69  RETURN: a MaskedImageF with the image with additional noise and the
70  variance plane
71  giving the variance due to the object
72  """
73  # TODO: this is gaussian noise right now, probably good enough
74  varImage = galImage.Factory(galImage, True)
75  if rand_gen is None:
76  rand_gen = np.random
77  scale = np.sqrt(np.abs(varImage.getArray())) + 1e-12
78  noiseArray = rand_gen.normal(loc=0.0,
79  scale=scale,
80  size=(galImage.getHeight(),
81  galImage.getWidth()))
82  noiseImage = lsst.afw.image.ImageF(noiseArray.astype(np.float32))
83  galImage += noiseImage
84 
85  return lsst.afw.image.MaskedImageF(galImage, None, varImage)
86 
def addNoise(galImage, detector, rand_gen=None)

◆ cropFakeImage()

def lsst.synpipe.FakeSourceLib.cropFakeImage (   fakeImage,
  expBBox 
)
Crops the Fake image to fit inside the exposure BBox
Note that the bboxes need to have the correct offsets applied
Args:
    fakeImage: fake image object
    expBBox:   bounding box for CCD exposure (integer type, BBoxI)
               and with offsets applied

Returns:
    New cropped fake image

Definition at line 41 of file FakeSourceLib.py.

41 def cropFakeImage(fakeImage, expBBox):
42  """
43  Crops the Fake image to fit inside the exposure BBox
44  Note that the bboxes need to have the correct offsets applied
45  Args:
46  fakeImage: fake image object
47  expBBox: bounding box for CCD exposure (integer type, BBoxI)
48  and with offsets applied
49 
50  Returns:
51  New cropped fake image
52  """
53  fakeBBox = fakeImage.getBBox(lsst.afw.image.PARENT)
54 
55  if not expBBox.contains(fakeBBox):
56  newBBox = fakeImage.getBBox(lsst.afw.image.PARENT)
57  newBBox.clip(expBBox)
58  fakeImage = fakeImage.Factory(fakeImage, newBBox,
59  lsst.afw.image.PARENT)
60  # TODO: finish this up
61 
62 
def cropFakeImage(fakeImage, expBBox)