Changeset 23825
- Timestamp:
- Apr 11, 2009, 7:49:45 AM (17 years ago)
- Location:
- trunk/ppImage/src
- Files:
-
- 5 edited
-
ppImage.h (modified) (2 diffs)
-
ppImageDetrendReadout.c (modified) (2 diffs)
-
ppImageOptions.c (modified) (3 diffs)
-
ppImageReplaceBackground.c (modified) (2 diffs)
-
ppImageSetMaskBits.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ppImage/src/ppImage.h
r23688 r23825 26 26 bool doMaskBuild; // Build internal mask 27 27 bool doVarianceBuild; // Build internal variance map 28 bool doMaskSat; // mask saturated pixels 29 bool doMaskLow; // mask low pixels 28 30 bool doMask; // Mask bad pixels 29 31 bool doNonLin; // Non-linearity correction … … 62 64 psImageMaskType markValue; // apply this bit-mask to choose masked bits 63 65 psImageMaskType satMask; // Mask value to give saturated pixels 64 psImageMaskType badMask; // Mask value to give bad pixels66 psImageMaskType lowMask; // Mask value to give bad pixels 65 67 psImageMaskType flatMask; // Mask value to give bad flat pixels 66 68 psImageMaskType blankMask; // Mask value to give blank pixels -
trunk/ppImage/src/ppImageDetrendReadout.c
r23426 r23825 17 17 // Masking on the basis of pixel value needs to be done before anything else, so the values are pristine. 18 18 if (options->doMaskBuild) { 19 pmReadoutGenerateMask(input, options->satMask, options->badMask); 19 psImageMaskType satMask = options->doMaskSat ? options->satMask : 0; 20 psImageMaskType lowMask = options->doMaskLow ? options->lowMask : 0; 21 pmReadoutGenerateMask(input, satMask, lowMask); 20 22 } 21 23 // apply the externally supplied mask to the input->mask pixels … … 74 76 75 77 if (options->doRemnance) { 76 if (!pmRemnance(input, options->maskValue, options-> badMask,78 if (!pmRemnance(input, options->maskValue, options->lowMask, 77 79 options->remnanceSize, options->remnanceThresh)) { 78 80 psError(PS_ERR_UNKNOWN, false, "Unable to mask remnance."); -
trunk/ppImage/src/ppImageOptions.c
r23411 r23825 19 19 // actions which ppImage should perform 20 20 options->doMaskBuild = false; // Build internal mask 21 options->doVarianceBuild = false; // Build internal variance 21 options->doMaskSat = false; // mask saturated pixels 22 options->doMaskLow = false; // mask low pixels 23 options->doVarianceBuild = false; // Build internal variance 22 24 options->doMask = false; // Mask bad pixels 23 25 options->doNonLin = false; // Non-linearity correction … … 54 56 options->maskValue = 0x00; // Default mask value (used to skip / ignore pixels) 55 57 options->satMask = 0x00; // Saturated pixels (supplied to pmReadoutGenerateMask) 56 options-> badMask = 0x00; // Bad(low) pixels (supplied to pmReadoutGenerateMask)58 options->lowMask = 0x00; // out-of-bounds (low) pixels (supplied to pmReadoutGenerateMask) 57 59 options->flatMask = 0x00; // Bad flat pixels (supplied to pmFlatField) 58 60 options->blankMask = 0x00; // Blank (no data, cell gap) pixels (supplied to pmChipMosaic, pmFPAMosaic) … … 198 200 // for these images, even if not required otherwise 199 201 options->doMaskBuild = psMetadataLookupBool(NULL, recipe, "MASK.BUILD"); 202 options->doMaskSat = psMetadataLookupBool(NULL, recipe, "MASK.SATURATED"); 203 options->doMaskLow = psMetadataLookupBool(NULL, recipe, "MASK.LOW"); 200 204 options->doVarianceBuild = psMetadataLookupBool(NULL, recipe, "VARIANCE.BUILD"); 201 205 -
trunk/ppImage/src/ppImageReplaceBackground.c
r23287 r23825 147 147 if (!isfinite(value)) { 148 148 image->data.F32[y][x] = NAN; 149 mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] |= options-> badMask;149 mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] |= options->lowMask; 150 150 } else { 151 151 image->data.F32[y][x] -= value; … … 164 164 if (!isfinite(value)) { 165 165 image->data.F32[y][x] = NAN; 166 mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] |= options-> badMask;166 mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] |= options->lowMask; 167 167 } else { 168 168 image->data.F32[y][x] -= value; -
trunk/ppImage/src/ppImageSetMaskBits.c
r23535 r23825 27 27 28 28 // mask for below-range data (default to RANGE if not defined) 29 options-> badMask = pmConfigMaskGet("LOW", config);30 if (!options-> badMask) {31 // XXXlook up old name for backward compatability32 options-> badMask = pmConfigMaskGet("BAD", config);29 options->lowMask = pmConfigMaskGet("LOW", config); 30 if (!options->lowMask) { 31 // look up old name for backward compatability 32 options->lowMask = pmConfigMaskGet("BAD", config); 33 33 } 34 psAssert (options-> badMask, "low mask not set");34 psAssert (options->lowMask, "low mask not set"); 35 35 36 36 // save MASK and MARK on the PSPHOT recipe
Note:
See TracChangeset
for help on using the changeset viewer.
