IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Aug 6, 2024, 5:35:16 PM (2 years ago)
Author:
hgao
Message:

enable clipped mean in psVectorBoxcar

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2dbias/psModules/src/detrend/pmOverscan.h

    r42679 r42715  
    1818
    1919/// 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
     20typedef 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
    2526} pmFit;
    2627
     
    3536{
    3637    // Inputs
    37     pmFit fitType;                      ///< Type of fit to overscan
    38     unsigned int order;                 ///< Order of polynomial, or number of spline pieces
    39     psStats *stat;                      ///< Statistic to use when reducing the minor direction
    40     int boxcar;                         ///< Boxcar smoothing radius
    41     float gauss;                        ///< Gaussian smoothing sigma
     38    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
    4243
    4344    // 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 fit
    46     psSpline1D *spline;                 ///< Result of spline fit
     45    // an updated reduced vector
     46    psPolynomial1D *poly; ///< Result of polynomial fit
     47    psSpline1D *spline;   ///< Result of spline fit
    4748} pmOverscanStatOptions;
    4849
     
    5758{
    5859    // 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 : mask
    64     float maxValid;                     ///< if overscan is too high, readout is dead : mask
    65     psImageMaskType maskVal;            ///< Mask value to give dead readouts
     60    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
    6667
    6768    pmOverscanStatOptions *primary;
     
    7475pmOverscanStatOptions *pmOverscanStatOptionsAlloc(void);
    7576
    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     );
     77psVector *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);
    8082
    8183// bool pmOverscanUpdateHeader (pmHDU *hdu, pmOverscanOptions *overscanOpts, float chi2);
    8284
    83 bool pmOverscanSubtract (pmReadout *input, pmOverscanOptions *overscanOpts, bool doTwoDOverscan);
     85bool pmOverscanSubtract(pmReadout *input, pmOverscanOptions *overscanOpts, bool doTwoDOverscan);
    8486
    8587/// @}
    8688#endif
    87 
Note: See TracChangeset for help on using the changeset viewer.