IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Mar 2, 2007, 2:33:50 PM (19 years ago)
Author:
Paul Price
Message:

Splitting out reading shifts table and constructing the kernel (we might want access to the shifts table for other purposes besides convolution, like constructing a single image from the video data). Making shifts type public (pmShifts). Adding function to do the convolution.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/src/detrend/pmShifts.h

    r12098 r12191  
    44#include <pslib.h>
    55#include "pmFPA.h"
     6
     7/// Shifts due to orthogonal transfer
     8typedef struct {
     9    psVector *x;                        ///< Shifts in x
     10    psVector *y;                        ///< Shifts in y
     11    psVector *t;                        ///< Times of shifts
     12    long num;                           ///< Number of values
     13    bool tRelative;                     ///< Are the time values relative (durations)?
     14    bool xyRelative;                    ///< Are the shift (x,y) values relative to the previous position?
     15} pmShifts;
     16
     17/// Allocator for pmShifts
     18pmShifts *pmShiftsAlloc(bool tRel,      ///< Are the time values relative (durations)?
     19                        bool xyRel      ///< Are the shift (x,y) values relative to the previous position?
     20                        );
    621
    722/// Read orthogonal transfer shifts table for a cell
     
    1429/// provided --- if we have to read the whole table, we may as well translate the whole lot.  If a kernel is
    1530/// already present in the cell analysis metadata, the function returns true without doing any work.
    16 bool pmShiftsRead(pmCell *cell,         ///< Cell for which to search for shifts
     31bool pmShiftsRead(const pmCell *cell,         ///< Cell for which to search for shifts
    1732                  psFits *fits          ///< FITS file in which to search for OT shifts extension
    1833                  );
    1934
    2035
     36/// Generate a kernel for the cell from the orthogonal transfer shifts
     37///
     38/// The kernel is saved in the analysis metadata
     39bool pmShiftsKernel(const pmCell *cell   ///< Cell for which to generate kernel
     40                    );
     41
     42/// Convolve a detrend with the appropriate orthogonal transfer convolution kernel from a science exposure.
     43///
     44/// The kernel is generated (with pmShiftsKernel) if required.  The image and mask are convolved with the
     45/// kernel (specified maskVal is smeared).  The weight map is not convolved.
     46bool pmShiftsConvolve(pmReadout *detrend, const pmCell *source, psMaskType maskVal)
    2147
    2248#endif
Note: See TracChangeset for help on using the changeset viewer.