Loading [MathJax]/extensions/tex2jax.js
LSST Applications g0fba68d861+6234375589,g1e78f5e6d3+628c932f15,g1fd858c14a+eb8d917efb,g35bb328faa+fcb1d3bbc8,g4af146b050+4faa9dad44,g4d2262a081+3c0ac0cdae,g4e0f332c67+8616b824a5,g53246c7159+fcb1d3bbc8,g5a012ec0e7+d65fd7031a,g60b5630c4e+042d43a120,g67b6fd64d1+c0248a1c13,g6ea0df0560+042d43a120,g78460c75b0+2f9a1b4bcd,g786e29fd12+cf7ec2a62a,g7b71ed6315+fcb1d3bbc8,g87b7deb4dc+7fa294d175,g8852436030+40f6ec51d1,g89139ef638+c0248a1c13,g9125e01d80+fcb1d3bbc8,g94187f82dc+042d43a120,g989de1cb63+c0248a1c13,g9f33ca652e+da0da5ecef,g9f7030ddb1+682810b470,ga2b97cdc51+042d43a120,gabe3b4be73+1e0a283bba,gabf8522325+83c19109ce,gb1101e3267+5921e058d2,gb58c049af0+f03b321e39,gb89ab40317+c0248a1c13,gcf25f946ba+40f6ec51d1,gd6cbbdb0b4+d9e8db455e,gd9a9a58781+fcb1d3bbc8,gdabf7e867e+a3799d3da4,gde0f65d7ad+4a3db72839,ge278dab8ac+4ce6343b44,ge410e46f29+c0248a1c13,gf67bdafdda+c0248a1c13,gfe06eef73a+95f9f0e40c,v29.0.0.rc3
LSST Data Management Base Package
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
lsst.scarlet.lite.measure Namespace Reference

Functions

float calculate_snr (Image images, Image variance, np.ndarray psfs, tuple[int, int] center)
 

Function Documentation

◆ calculate_snr()

float lsst.scarlet.lite.measure.calculate_snr ( Image images,
Image variance,
np.ndarray psfs,
tuple[int, int] center )
Calculate the signal to noise for a point source

This is done by weighting the image with the PSF in each band
and dividing by the PSF weighted variance.

Parameters
----------
images:
    The 3D (bands, y, x) image containing the data.
variance:
    The variance of `images`.
psfs:
    The PSF in each band.
center:
    The center of the signal.

Returns
-------
snr:
    The signal to noise of the source.

Definition at line 30 of file measure.py.

35) -> float:
36 """Calculate the signal to noise for a point source
37
38 This is done by weighting the image with the PSF in each band
39 and dividing by the PSF weighted variance.
40
41 Parameters
42 ----------
43 images:
44 The 3D (bands, y, x) image containing the data.
45 variance:
46 The variance of `images`.
47 psfs:
48 The PSF in each band.
49 center:
50 The center of the signal.
51
52 Returns
53 -------
54 snr:
55 The signal to noise of the source.
56 """
57 py = psfs.shape[1] // 2
58 px = psfs.shape[2] // 2
59 bbox = Box(psfs[0].shape, origin=(-py + center[0], -px + center[1]))
60 overlap = images.bbox & bbox
61 noise = variance[overlap].data
62 img = images[overlap].data
63 _psfs = Image(psfs, bands=images.bands, yx0=cast(tuple[int, int], bbox.origin))[overlap].data
64 numerator = img * _psfs
65 denominator = (_psfs * noise) * _psfs
66 return np.sum(numerator) / np.sqrt(np.sum(denominator))