IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Sep 17, 2007, 10:49:51 AM (19 years ago)
Author:
Paul Price
Message:

Adding mask to psImageConvolveFFT, so that masked pixels may be set to the nominated value. This is especially important in removing NaNs in the image being convolved.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/imageops/psImageConvolve.c

    r14704 r14866  
    77/// @author Eugene Magnier, IfA
    88///
    9 /// @version $Revision: 1.56 $ $Name: not supported by cvs2svn $
    10 /// @date $Date: 2007-08-30 20:15:23 $
     9/// @version $Revision: 1.57 $ $Name: not supported by cvs2svn $
     10/// @date $Date: 2007-09-17 20:49:51 $
    1111///
    1212/// Copyright 2004-2007 Institute for Astronomy, University of Hawaii
     
    363363
    364364psImage *psImageConvolveFFT(const psImage *in,
     365                            const psImage *mask,
     366                            psMaskType maskVal,
    365367                            const psKernel *kernel,
    366368                            float pad)
     
    393395    // Generate padded image
    394396    psImage *paddedImage = psImageAlloc(paddedCols,paddedRows,in->type.type); // Padded input image
    395     psImageOverlaySection(paddedImage, in, 0, 0, "=");
     397    if (mask && maskVal) {
     398        for (int y = 0; y < numRows; y++) {
     399            for (int x = 0; x < numCols; x++) {
     400                paddedImage->data.F32[y][x] = (mask->data.PS_TYPE_MASK_DATA[y][x] & maskVal) ? pad :
     401                    in->data.F32[y][x];
     402            }
     403        }
     404    } else {
     405        psImageOverlaySection(paddedImage, in, 0, 0, "=");
     406    }
    396407    for (int y = 0; y < numRows; y++) {
    397408        for (int x = numCols; x < paddedCols; x++) {
Note: See TracChangeset for help on using the changeset viewer.