lsst.meas.algorithms  22.0.1-23-gc2439a9a+41e4fedcff
findCosmicRaysConfig.py
Go to the documentation of this file.
1 #
2 # LSST Data Management System
3 #
4 # Copyright 2008-2017 AURA/LSST.
5 #
6 # This product includes software developed by the
7 # LSST Project (http://www.lsst.org/).
8 #
9 # This program is free software: you can redistribute it and/or modify
10 # it under the terms of the GNU General Public License as published by
11 # the Free Software Foundation, either version 3 of the License, or
12 # (at your option) any later version.
13 #
14 # This program is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 # GNU General Public License for more details.
18 #
19 # You should have received a copy of the LSST License Statement and
20 # the GNU General Public License along with this program. If not,
21 # see <https://www.lsstcorp.org/LegalNotices/>.
22 #
23 
24 __all__ = ["FindCosmicRaysConfig"]
25 
26 import lsst.pex.config as pexConfig
27 from .subtractBackground import SubtractBackgroundTask
28 
29 
30 class FindCosmicRaysConfig(pexConfig.Config):
31  """Config for the findCosmicRays function
32  """
33  nCrPixelMax = pexConfig.Field(
34  dtype=int,
35  doc="maximum number of contaminated pixels",
36  default=10000,
37  )
38  minSigma = pexConfig.Field(
39  dtype=float,
40  doc="CRs must be > this many sky-sig above sky",
41  default=6.0,
42  )
43  min_DN = pexConfig.Field(
44  dtype=float,
45  doc="CRs must have > this many DN (== electrons/gain) in initial detection",
46  default=150.0,
47  )
48  cond3_fac = pexConfig.Field(
49  dtype=float,
50  doc="used in condition 3 for CR; see CR.cc code",
51  default=2.5,
52  )
53  cond3_fac2 = pexConfig.Field(
54  dtype=float,
55  doc="used in condition 3 for CR; see CR.cc code",
56  default=0.6,
57  )
58  niteration = pexConfig.Field(
59  dtype=int,
60  doc="number of times to look for contaminated pixels near known CR pixels",
61  default=3,
62  )
63  keepCRs = pexConfig.Field(
64  dtype=bool,
65  doc="Don't interpolate over CR pixels",
66  default=False,
67  )
68  background = pexConfig.ConfigurableField(
69  target=SubtractBackgroundTask,
70  doc="Background estimation configuration"
71  )
72 
73  def setDefaults(self):
74  self.backgroundbackground.useApprox = False
75  self.backgroundbackground.binSize = 100000
76  self.backgroundbackground.statisticsProperty = "MEDIAN"
77  self.backgroundbackground.undersampleStyle = "REDUCE_INTERP_ORDER"
78  self.backgroundbackground.algorithm = "AKIMA_SPLINE"