Changeset 7059 for trunk/psModules/src/imcombine/pmReadoutCombine.h
- Timestamp:
- May 3, 2006, 4:38:20 PM (20 years ago)
- File:
-
- 1 edited
-
trunk/psModules/src/imcombine/pmReadoutCombine.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psModules/src/imcombine/pmReadoutCombine.h
r6873 r7059 5 5 * @author GLG, MHPCC 6 6 * 7 * @version $Revision: 1. 5$ $Name: not supported by cvs2svn $8 * @date $Date: 2006-0 4-17 18:10:08$7 * @version $Revision: 1.6 $ $Name: not supported by cvs2svn $ 8 * @date $Date: 2006-05-04 02:38:20 $ 9 9 * 10 10 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii … … 19 19 #endif 20 20 21 #include<stdio.h> 22 #include<math.h> 23 #include "pslib.h" 24 #include "psConstants.h" 21 #include <pslib.h> 25 22 #include "pmFPA.h" 26 23 24 // Combination parameters for pmReadoutCombine. These values define how the combination is performed, and 25 // should not vary by detector, so that it can be re-used for multiple combinations. 27 26 typedef struct 28 27 { 29 psStats *stats; 30 unsigned int maskVal; 31 float fracHigh; 32 float fracLow; 33 int nKeep; 28 psStatsOptions combine; // Statistic to use when performing the combination 29 psMaskType maskVal; // Mask value 30 int nKeep; // Mimimum number of pixels to keep 31 float fracHigh; // Fraction of high pixels to immediately throw 32 float fracLow; // Fraction of low pixels to immediately throw 33 int iter; // Number of iterations for clipping (for CLIPPED_MEAN only) 34 float rej; // Rejection threshould for clipping (for CLIPPED_MEAN only) 34 35 } 35 36 pmCombineParams; 36 37 37 pmCombineParams *pmCombineParamsAlloc (psStatsOptions statsOptions); 38 // Allocator 39 pmCombineParams *pmCombineParamsAlloc(psStatsOptions statsOptions // Statistic to use for combination 40 ); 38 41 39 psImage *pmReadoutCombine(psImage *output, 40 const psArray *inputs, 41 const psVector *zero, 42 const psVector *scale, 43 pmCombineParams *params, 44 bool applyZeroScale, 45 float gain, 46 float readnoise); 47 48 /** 49 * 50 * This function measures the robust median at each of the minimum and maximum 51 * coordinates and determines the difference and mean of the two values. The size 52 * of the box used to make the measurement at each point is specified by the 53 * configuration variable FRINGE_SQUARE_RADIUS. From the collection of 54 * differences, the robust median is calculated, and returned as part of the 55 * fringe statistics. For each fringe point, the values of delta and midValue are 56 * also assigned and available to the user on return. 57 * 58 */ 59 psStats *pmFringeStats( 60 psArray *fringePoints, 61 psImage *image, 62 psMetadata *config 63 ); 64 65 typedef struct 66 { 67 psF64 xMin; 68 psF64 yMin; 69 psF64 xMax; 70 psF64 yMax; 71 psF64 delta; 72 psF64 midValue; 73 } 74 pmFringePoint; 42 // Combine multiple readouts, applying zero and scale, with optional minmax clipping 43 bool pmReadoutCombine(pmReadout *output,// Output readout; altered and returned 44 const psArray *inputs, // Array of input readouts (F32 image and weight, U8 mask) 45 const psVector *zero, // Zero corrections to subtract from input, or NULL 46 const psVector *scale, // Scale corrections to divide into input, or NULL 47 pmCombineParams *params // Combination parameters 48 ); 75 49 76 50 #endif
Note:
See TracChangeset
for help on using the changeset viewer.
