00001 /** @file pmSubtractBias.h 00002 * 00003 * This file will contain a module which will subtract the detector bias 00004 * in place from an input image. 00005 * 00006 * @author GLG, MHPCC 00007 * 00008 * @version $Revision: 1.1.1.1 $ $Name: $ 00009 * @date $Date: 2005/06/15 21:07:27 $ 00010 * 00011 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii 00012 * 00013 */ 00014 00015 #if !defined(PM_SUBTRACT_BIAS_H) 00016 #define PM_SUBTRACT_BIAS_H 00017 00018 #if HAVE_CONFIG_H 00019 #include <config.h> 00020 #endif 00021 00022 #include<stdio.h> 00023 #include<math.h> 00024 #include "pslib.h" 00025 00026 typedef enum { 00027 PM_OVERSCAN_NONE, ///< No overscan subtraction 00028 PM_OVERSCAN_ROWS, ///< Subtract rows 00029 PM_OVERSCAN_COLUMNS, ///< Subtract columns 00030 PM_OVERSCAN_ALL ///< Subtract the statistic of all pixels in overscan region 00031 } pmOverscanAxis; 00032 00033 typedef enum { 00034 PM_FIT_NONE, ///< No fit 00035 PM_FIT_POLYNOMIAL, ///< Fit polynomial 00036 PM_FIT_SPLINE ///< Fit cubic splines 00037 } pmFit; 00038 00039 psReadout *pmSubtractBias(psReadout *in, ///< The input psReadout image 00040 void *fitSpec, ///< A polynomial or spline, defining the fit type. 00041 const psList *overscans, ///< A psList of overscan images 00042 pmOverscanAxis overScanAxis, ///< Defines how overscans are applied 00043 psStats *stat, ///< The statistic to be used in combining overscan data 00044 int nBin, ///< The amount of binning to be done image pixels. 00045 pmFit fit, ///< PM_FIT_SPLINE, PM_FIT_POLYNOMIAL, or PM_FIT_NONE 00046 const psReadout *bias); ///< A possibly NULL bias psReadout which is to be subtracted 00047 00048 #endif
1.4.1