Changeset 13512 for trunk/ppStack/src/ppStackReadout.c
- Timestamp:
- May 24, 2007, 11:48:31 AM (19 years ago)
- File:
-
- 1 edited
-
trunk/ppStack/src/ppStackReadout.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ppStack/src/ppStackReadout.c
r13493 r13512 12 12 13 13 14 #define SEEING 1.0 // Seeing FWHM (pixels)15 14 #define WEIGHT 1.0 // Weighting 16 15 … … 18 17 { 19 18 // Get the recipe values 19 bool mdok; // Status of MD lookup 20 20 int iter = psMetadataLookupS32(NULL, config->arguments, "ITER"); // Rejection iterations 21 21 float combineRej = psMetadataLookupF32(NULL, config->arguments, "COMBINE.REJ"); // Combination threshold … … 24 24 psMaskType maskBad = psMetadataLookupU8(NULL, config->arguments, "MASK.BAD"); // Value to mask 25 25 psMaskType maskBlank = psMetadataLookupU8(NULL, config->arguments, "MASK.BLANK"); // Mask for blank reg. 26 psVector *seeing = psMetadataLookupPtr(&mdok, config->arguments, "SEEING"); // Seeing in each image 26 27 27 28 // Get the output target … … 39 40 psStats *stats = psStatsAlloc(PS_STAT_ROBUST_MEDIAN); // Statistics 40 41 psRandom *rng = psRandomAlloc(0, PS_RANDOM_TAUS); // Random number generator 42 int fileNum = 0; // Number of file 41 43 while ((item = psMetadataGetAndIncrement(inputIter))) { 42 44 assert(item->type == PS_DATA_UNKNOWN); … … 69 71 } 70 72 (void)psBinaryOp(ro->image, ro->image, "/", psScalarAlloc(exposure, PS_TYPE_F32)); 71 pmStackData *data = pmStackDataAlloc(ro, SEEING, WEIGHT); // Data to stack 73 pmStackData *data = pmStackDataAlloc(ro, seeing ? seeing->data.F32[fileNum] : 0.0, 74 WEIGHT); // Data to stack 72 75 psArrayAdd(stack, ARRAY_BUFFER, data); 73 76 psFree(data); // Drop reference 77 fileNum++; 74 78 } 75 79 psFree(inputIter); … … 107 111 #endif 108 112 109 if (!pmStackReject(stack, maskBad, extent, convolveRej)) { 113 // Only perform the additional rejection if we have seeing information 114 if (seeing && !pmStackReject(stack, maskBad, extent, convolveRej)) { 110 115 psError(PS_ERR_UNKNOWN, false, "Unable to reject input pixels."); 111 116 psFree(stack);
Note:
See TracChangeset
for help on using the changeset viewer.
