Changeset 42715 for branches/2dbias/psModules/src/detrend/pmOverscan.h
- Timestamp:
- Aug 6, 2024, 5:35:16 PM (2 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2dbias/psModules/src/detrend/pmOverscan.h
r42679 r42715 18 18 19 19 /// Type of fit to perform 20 typedef enum { 21 PM_FIT_NONE, ///< No fit 22 PM_FIT_POLY_ORD, ///< Fit ordinary polynomial 23 PM_FIT_POLY_CHEBY, ///< Fit Chebyshev polynomial 24 PM_FIT_SPLINE ///< Fit cubic splines 20 typedef enum 21 { 22 PM_FIT_NONE, ///< No fit 23 PM_FIT_POLY_ORD, ///< Fit ordinary polynomial 24 PM_FIT_POLY_CHEBY, ///< Fit Chebyshev polynomial 25 PM_FIT_SPLINE ///< Fit cubic splines 25 26 } pmFit; 26 27 … … 35 36 { 36 37 // Inputs 37 pmFit fitType; ///< Type of fit to overscan38 unsigned int order; ///< Order of polynomial, or number of spline pieces39 psStats *stat; ///< Statistic to use when reducing the minor direction40 int boxcar; ///< Boxcar smoothing radius41 float gauss; ///< Gaussian smoothing sigma38 pmFit fitType; ///< Type of fit to overscan 39 unsigned int order; ///< Order of polynomial, or number of spline pieces 40 psStats *stat; ///< Statistic to use when reducing the minor direction 41 int boxcar; ///< Boxcar smoothing radius 42 float gauss; ///< Gaussian smoothing sigma 42 43 43 44 // These are used to carry the fitted functions, but are only used to generate 44 // an updated reduced vector 45 psPolynomial1D *poly; ///< Result of polynomial fit46 psSpline1D *spline; ///< Result of spline fit45 // an updated reduced vector 46 psPolynomial1D *poly; ///< Result of polynomial fit 47 psSpline1D *spline; ///< Result of spline fit 47 48 } pmOverscanStatOptions; 48 49 … … 57 58 { 58 59 // Inputs 59 bool single; ///< Reduce all overscan regions to a single value?60 bool constant; ///< use a supplied constant value (do not measure region)61 bool TwoD; ///< use a supplied constant value (do not measure region)62 float value; ///< supplied value if needed (per above)63 float minValid; ///< if overscan is too low, readout is dead : mask64 float maxValid; ///< if overscan is too high, readout is dead : mask65 psImageMaskType maskVal; ///< Mask value to give dead readouts60 bool single; ///< Reduce all overscan regions to a single value? 61 bool constant; ///< use a supplied constant value (do not measure region) 62 bool TwoD; ///< use a supplied constant value (do not measure region) 63 float value; ///< supplied value if needed (per above) 64 float minValid; ///< if overscan is too low, readout is dead : mask 65 float maxValid; ///< if overscan is too high, readout is dead : mask 66 psImageMaskType maskVal; ///< Mask value to give dead readouts 66 67 67 68 pmOverscanStatOptions *primary; … … 74 75 pmOverscanStatOptions *pmOverscanStatOptionsAlloc(void); 75 76 76 psVector *pmOverscanVector(float *chi2, // chi^2 from fit 77 pmOverscanStatOptions *overscanOpts, // Overscan options 78 const psArray *pixels // Array of vectors containing the pixel values 79 ); 77 psVector *pmOverscanVector(float *chi2, // chi^2 from fit 78 pmOverscanStatOptions *overscanOpts, // Overscan options 79 const psArray *pixels, // Array of vectors containing the pixel values 80 bool robust // use robust statistics for boxcar smoothing 81 ); 80 82 81 83 // bool pmOverscanUpdateHeader (pmHDU *hdu, pmOverscanOptions *overscanOpts, float chi2); 82 84 83 bool pmOverscanSubtract (pmReadout *input, pmOverscanOptions *overscanOpts, bool doTwoDOverscan);85 bool pmOverscanSubtract(pmReadout *input, pmOverscanOptions *overscanOpts, bool doTwoDOverscan); 84 86 85 87 /// @} 86 88 #endif 87
Note:
See TracChangeset
for help on using the changeset viewer.
