pmReadoutCombine.h

Go to the documentation of this file.
00001 /* @file  pmReadoutCombine.h
00002  * @brief Combine multiple readouts
00003  * 
00004  * @author George Gusciora, MHPCC
00005  * @author Paul Price, IfA
00006  * 
00007  * @version $Revision: 1.10 $ $Name:  $
00008  * @date $Date: 2007/01/24 02:54:15 $
00009  * Copyright 2004-2006 Institute for Astronomy, University of Hawaii
00010  */
00011 
00012 #ifndef PM_READOUT_COMBINE_H
00013 #define PM_READOUT_COMBINE_H
00014 
00015 /// @addtogroup imcombine Image Combinations
00016 /// @{
00017 
00018 #include <pslib.h>
00019 #include "pmFPA.h"
00020 
00021 /// Combination parameters for pmReadoutCombine.
00022 ///
00023 /// These values define how the combination is performed, and should not vary by detector, so that it can be
00024 /// re-used for multiple combinations.
00025 typedef struct
00026 {
00027     psStatsOptions combine;             ///< Statistic to use when performing the combination
00028     psMaskType maskVal;                 ///< Mask value
00029     int nKeep;                          ///< Mimimum number of pixels to keep
00030     float fracHigh;                     ///< Fraction of high pixels to immediately throw
00031     float fracLow;                      ///< Fraction of low pixels to immediately throw
00032     int iter;                           ///< Number of iterations for clipping (for CLIPPED_MEAN only)
00033     float rej;                          ///< Rejection threshould for clipping (for CLIPPED_MEAN only)
00034     bool weights;                       ///< Use the supplied weights (instead of calculated stdev)?
00035 }
00036 pmCombineParams;
00037 
00038 // Allocator for pmCombineParams
00039 pmCombineParams *pmCombineParamsAlloc(psStatsOptions statsOptions ///< Statistic to use for combination
00040                                      );
00041 
00042 /// Combine multiple readouts, applying zero and scale, with optional minmax clipping
00043 bool pmReadoutCombine(pmReadout *output,///< Output readout; altered and returned
00044                       const psArray *inputs,  ///< Array of input readouts (F32 image and weight, U8 mask)
00045                       const psVector *zero, ///< Zero corrections to subtract from input, or NULL
00046                       const psVector *scale, ///< Scale corrections to divide into input, or NULL
00047                       const pmCombineParams *params ///< Combination parameters
00048                      );
00049 
00050 /// @}
00051 #endif

Generated on Fri Feb 2 22:35:28 2007 for Pan-STARRS Module Library by  doxygen 1.5.1