- Timestamp:
- Dec 29, 2009, 8:04:00 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/20091201/psModules/src/imcombine/pmSubtractionKernels.h
r26486 r26491 11 11 PM_SUBTRACTION_KERNEL_ISIS, ///< Traditional kernel --- gaussians modified by polynomials 12 12 PM_SUBTRACTION_KERNEL_HERM, ///< Hermitian polynomial kernels 13 PM_SUBTRACTION_KERNEL_DECON _HERM, ///< Deconvolved Hermitian polynomial kernels13 PM_SUBTRACTION_KERNEL_DECONV_HERM, ///< Deconvolved Hermitian polynomial kernels 14 14 PM_SUBTRACTION_KERNEL_SPAM, ///< Summed Pixels for Advanced Matching --- summed delta functions 15 15 PM_SUBTRACTION_KERNEL_FRIES, ///< Fibonacci Radius Increases Excellence of Subtraction … … 32 32 psString description; ///< Description of the kernel parameters 33 33 long num; ///< Number of kernel components (not including the spatial ones) 34 psVector *u, *v; ///< Offset (for POIS) or polynomial order (for ISIS, HERM or DECON _HERM)35 psVector *widths; ///< Gaussian FWHMs (ISIS, HERM or DECON _HERM)34 psVector *u, *v; ///< Offset (for POIS) or polynomial order (for ISIS, HERM or DECONV_HERM) 35 psVector *widths; ///< Gaussian FWHMs (ISIS, HERM or DECONV_HERM) 36 36 psVector *uStop, *vStop; ///< Width of kernel element (SPAM,FRIES only) 37 psArray *preCalc; ///< Array of images containing pre-calculated kernel (for ISIS, HERM or DECON _HERM)37 psArray *preCalc; ///< Array of images containing pre-calculated kernel (for ISIS, HERM or DECONV_HERM) 38 38 float penalty; ///< Penalty for wideness 39 39 psVector *penalties; ///< Penalty for each kernel component … … 49 49 int numStamps; ///< Number of good stamps 50 50 } pmSubtractionKernels; 51 52 // pmSubtractionKernels->preCalc is an array of pmSubtractionKernelPreCalc structures 53 typedef struct { 54 psVector *uCoords; // used by RINGS 55 psVector *vCoords; // used by RINGS 56 psVector *poly; // used by RINGS 57 58 psVector *xKernel; // used by ISIS, HERM, DECONV_HERM 59 psVector *yKernel; // used by ISIS, HERM, DECONV_HERM 60 psKernel *kernel; // used by ISIS, HERM, DECONV_HERM 61 } pmSubtractionKernelPreCalc; 51 62 52 63 // Assertion to check pmSubtractionKernels … … 71 82 PS_ASSERT_VECTOR_SIZE((KERNELS)->widths, (KERNELS)->num, RETURNVALUE); \ 72 83 } \ 73 if ((KERNELS)->type == PM_SUBTRACTION_KERNEL_DECON _HERM) { \84 if ((KERNELS)->type == PM_SUBTRACTION_KERNEL_DECONV_HERM) { \ 74 85 PS_ASSERT_VECTOR_NON_NULL((KERNELS)->widths, RETURNVALUE); \ 75 86 PS_ASSERT_VECTOR_TYPE((KERNELS)->widths, PS_TYPE_F32, RETURNVALUE); \ … … 139 150 ); 140 151 152 /// Allocator for pre-calculated kernel data structure 153 pmSubtractionKernelPreCalc *pmSubtractionKernelPreCalcAlloc( 154 pmSubtractionKernelsType type, ///< type of kernel to allocate (not all can be pre-calculated) 155 int uOrder, ///< order in x-direction 156 int vOrder, ///< order in x-direction 157 int size, ///< Half-size of the kernel 158 float sigma ///< sigma of gaussian kernel 159 ); 160 161 141 162 /// Generate POIS kernels 142 163 pmSubtractionKernels *pmSubtractionKernelsPOIS(int size, ///< Half-size of the kernel (in both dims) … … 173 194 ); 174 195 175 /// Generate DECON _HERM kernels176 pmSubtractionKernels *pmSubtractionKernelsDECON _HERM(int size, ///< Half-size of the kernel196 /// Generate DECONV_HERM kernels 197 pmSubtractionKernels *pmSubtractionKernelsDECONV_HERM(int size, ///< Half-size of the kernel 177 198 int spatialOrder, ///< Order of spatial variations 178 199 const psVector *fwhms, ///< Gaussian FWHMs
Note:
See TracChangeset
for help on using the changeset viewer.
