IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Aug 15, 2007, 10:10:01 AM (19 years ago)
Author:
magnier
Message:

adding OVERSCAN.CONSTANT, OVERSCAN.VALUE options, pull overscan functions out into pmOverscan.c,h

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/ipp-2-2/psModules/src/detrend/pmBias.h

    r14385 r14504  
    55 * @author Paul Price, IfA
    66 *
    7  * @version $Revision: 1.6 $ $Name: not supported by cvs2svn $
    8  * @date $Date: 2007-06-20 20:45:00 $
     7 * @version $Revision: 1.6.2.1 $ $Name: not supported by cvs2svn $
     8 * @date $Date: 2007-08-15 20:10:01 $
    99 * Copyright 2004--2006 Institute for Astronomy, University of Hawaii
    1010 */
    1111
    12 #ifndef PM__BIAS_H
    13 #define PM__BIAS_H
     12#ifndef PM_BIAS_H
     13#define PM_BIAS_H
    1414
    1515/// @addtogroup detrend Detrend Creation and Application
    1616/// @{
    17 
    18 /// Type of fit to perform
    19 typedef enum {
    20     PM_FIT_NONE,                        ///< No fit
    21     PM_FIT_POLY_ORD,                    ///< Fit ordinary polynomial
    22     PM_FIT_POLY_CHEBY,                  ///< Fit Chebyshev polynomial
    23     PM_FIT_SPLINE                       ///< Fit cubic splines
    24 } pmFit;
    25 
    26 /// Options for overscan subtraction
    27 ///
    28 /// The overscan subtraction may be performed by reducing all overscan regions to a single value (e.g., if
    29 /// there is no structure); or the overscan may be fit perpendicular to the read direction (usually the
    30 /// columns) with a particular functional form; or a single value may be subtracted for each read/scan without
    31 /// fitting (if the structure defies characterisation).  In any case, statistics are required to reduce
    32 /// multiple values to a single value (either for the scan, or for the entire overscan regions).
    33 typedef struct
    34 {
    35     // Inputs
    36     bool single;                        ///< Reduce all overscan regions to a single value?
    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
    42     // Outputs
    43     psPolynomial1D *poly;               ///< Result of polynomial fit
    44     psSpline1D *spline;                 ///< Result of spline fit
    45 }
    46 pmOverscanOptions;
    47 
    48 /// Allocator for overscan options
    49 pmOverscanOptions *pmOverscanOptionsAlloc(bool single, ///< Reduce all overscan regions to a single value?
    50                                           pmFit fitType, ///< Type of fit to overscan
    51                                           unsigned int order, ///< Order of polynomial, or number of splines
    52                                           psStats *stat, ///< Statistic to use
    53                                           int boxcar, ///< Boxcar smoothing radius
    54                                           float gauss ///< Gaussian smoothing sigma
    55                                          );
    5617
    5718/// Subtract the overscan, bias and/or dark
     
    6627                   );
    6728
     29// pmBiasSubtractFrame(): this routine will take as input a readout for the input image and a readout for the bias
     30// image.  The bias image is subtracted in place from the input image.
     31bool pmBiasSubtractFrame(pmReadout *in, // Input readout
     32                          const pmReadout *sub, // Readout to be subtracted from input
     33                          float scale   // Scale to apply before subtracting
     34    );
     35
    6836/// @}
    6937#endif
Note: See TracChangeset for help on using the changeset viewer.