sinfo_cube_zshift |
shifts an imagelist by a given amount to sub-pixel accuracy
- Parameters:
-
| cube | input cube to be shifted |
| shift | amount of z shift to be applied |
|
typedef struct _CubeData | CubeData |
typedef struct _CubeDataVector | CubeDataVector |
cpl_imagelist * | sinfo_cube_zshift (const cpl_imagelist *cube_inp, const double shift, double *sub_shift) |
cpl_imagelist * | sinfo_cube_zshift_poly (const cpl_imagelist *cube_inp, const double sub_shift, const int order) |
cpl_imagelist * | sinfo_cube_zshift_spline3 (const cpl_imagelist *cube_inp, const double sub_shift) |
sinfo_new_cube_ops() |
4 operations between 2 cubes
- Parameters:
-
| cube1 | 1st cube |
| cube2 | 2nd cube |
| operation | result cube |
- Note:
- possible operations are: # Addition '+' # Subtraction '-' # Multiplication '*' # Division '/'
|
cpl_imagelist * | sinfo_new_cube_ops (cpl_imagelist *cube1, cpl_imagelist *cube2, int operation) |
cpl_imagelist * | sinfo_new_cube_const_ops (cpl_imagelist *c1, double constant, int operation) |
cpl_imagelist * | sinfo_new_cube_sub (cpl_imagelist *c1, cpl_imagelist *c2) |
cpl_imagelist * | sinfo_new_cube_add (cpl_imagelist *c1, cpl_imagelist *c2) |
cpl_imagelist * | sinfo_new_cube_mul (cpl_imagelist *c1, cpl_imagelist *c2) |
cpl_imagelist * | sinfo_new_cube_div (cpl_imagelist *c1, cpl_imagelist *c2) |
cpl_imagelist * | sinfo_new_add_image_to_cube (cpl_imagelist *cu, cpl_image *im) |
cpl_imagelist * | sinfo_new_sub_image_from_cube (cpl_imagelist *cu, cpl_image *im) |
cpl_imagelist * | sinfo_new_mul_image_to_cube (cpl_imagelist *cu, cpl_image *im) |
cpl_imagelist * | sinfo_new_div_cube_by_image (cpl_imagelist *cu, cpl_image *im) |
cpl_imagelist * | sinfo_new_add_spectrum_to_cube (cpl_imagelist *cu, Vector *spec) |
cpl_imagelist * | sinfo_new_sub_spectrum_from_cube (cpl_imagelist *cu, Vector *spec) |
cpl_imagelist * | sinfo_new_mul_spectrum_to_cube (cpl_imagelist *cu, Vector *spec) |
cpl_imagelist * | sinfo_new_div_cube_by_spectrum (cpl_imagelist *cu, Vector *spec) |
Vector * | sinfo_new_clean_mean_of_spectra (cpl_imagelist *cube, int llx, int lly, int urx, int ury, double lo_reject, double hi_reject) |
cpl_image * | sinfo_new_median_cube (cpl_imagelist *cube) |
cpl_image * | sinfo_new_average_cube_to_image (cpl_imagelist *cube) |
cpl_image * | sinfo_new_sum_cube_to_image (cpl_imagelist *cube) |
cpl_image * | sinfo_new_average_cube_to_image_between_waves (cpl_imagelist *cube, float dispersion, float centralWave, float initialLambda, float finalLambda) |
cpl_image * | sinfo_new_extract_image_from_cube (cpl_imagelist *cube, int plane_index) |
Vector * | sinfo_new_extract_spectrum_from_cube (cpl_imagelist *cube, int x_pos, int y_pos) |
cpl_imagelist * | sinfo_new_combine_jittered_cubes (cpl_imagelist **cubes, cpl_imagelist *mergedCube, int n_cubes, float *cumoffsetx, float *cumoffsety, float *exptimes, char *kernel_type) |
sinfo_new_combine_jittered_cubes() |
check input of cube coaddition functions
- Parameters:
-
| cubes,: | list of jittered cubes to mosaic |
| n_cubes,: | number of cubes in the list to merge |
| cumoffsetx,: | array of relative x pixel offsets with respect to the first frame in the same sequence as the cube list. |
| cumoffsety,: | array of relative y pixel offsets with respect to the first frame in the same sequence as the cube list. |
| exptimes,: | exposure times array giving the time in the same sequence as the cube list |
|
int | sinfo_new_combine_jittered_cubes_range (cpl_imagelist **cubes, cpl_imagelist *mergedCube, cpl_imagelist *mask, int n_cubes, float *cumoffsetx, float *cumoffsety, double *exptimes, char *kernel_type, const int z_min, const int z_max) |
sinfo_new_combine_jittered_cubes_thomas_range() |
- Parameters:
-
| cubes,: | list of jittered cubes to mosaic (over a given range with kappa-sigma clipping of outliers) |
| mergedCube,: | resulting merged cube containing the jittered cubes |
| mask,: | cube of the same size as combinedCube containing 0 for blank (ZERO pixels) and the summed integration times for overlapping regions |
| n_cubes,: | number of cubes in the list to merge |
| cumoffsetx,: | array of relative x pixel offsets with respect to the first frame in the same sequence as the cube list. |
| cumoffsety,: | array of relative y pixel offsets with respect to the first frame in the same sequence as the cube list. |
| exptimes,: | exposure times array giving the time in the same sequence as the cube list |
| kernel_type,: | the name of the interpolation kernel that you want to generate using the eclipse routine sinfo_generate_interpolation_kernel() Supported kernels are: NULL: default kernel, currently tanh "default": dito "tanh": Hyperbolic tangent "sinc2": Square sinc "lanczos": Lanczos2 kernel "hamming": Hamming kernel "hann": Hann kernel |
| z_min | minimum cube's plane processed |
| z_max | maximum cube's plane processed |
| kappa | value for kappa-sigma clipping |
merges jittered data cubes to one bigger cube by averaging the overlap regions weighted by the integration times. The x, y size of the final data cube is user given, and should be between 32 and 64 pixels, while the relative pixel-offset (sub-pixel accuracy) of the single cubes with respect to the first cube in the list is read from the SEQ CUMOFFSETX,Y fits header keyword.
|
int | sinfo_new_combine_jittered_cubes_thomas_range (cpl_imagelist **cubes, cpl_imagelist *mergedCube, cpl_imagelist *mask, int n_cubes, float *cumoffsetx, float *cumoffsety, double *exptimes, char *kernel_type, const int z_min, const int z_max, const double kappa) |
sinfo_new_interpol_cube_simple() |
- Parameters:
-
| cube,: | 1 allocated cube |
| badcube,: | bad pixel mask cube (0: bad, 1: good pixel) |
| maxdist,: | maximal pixel distance from bad pixel to search for good pixels, don't make this value too big! |
- Returns:
- interpolated cube, and corrected bad pixel mask cube interpolates bad pixel of an object cube if a bad pixel mask cube is available by using the nearest neighbors in 3 dimensions.
|
cpl_imagelist * | sinfo_new_interpol_cube_simple (cpl_imagelist *cube, cpl_imagelist *badcube, int maxdist) |
sinfo_new_combine_cubes() |
- Parameters:
-
| cubes,: | list of jittered cubes to mosaic |
| mergedCube,: | resulting merged cube containing the jittered cubes |
| mask,: | cube of the same size as combinedCube containing 0 for blank (ZERO pixels) and the summed integration times for overlapping regions |
| n_cubes,: | number of cubes in the list to merge |
| cumoffsetx,: | array of relative x pixel offsets with respect to the first frame in the same sequence as the cube list. |
| cumoffsety,: | array of relative y pixel offsets with respect to the first frame in the same sequence as the cube list. |
: sigma factor beyond which pixels are thrown away.
- Parameters:
-
| kernel_type,: | the name of the interpolation kernel that you want to generate using the eclipse routine sinfo_generate_interpolation_kernel() Supported kernels are: NULL: default kernel, currently tanh "default": dito "tanh": Hyperbolic tangent "sinc2": Square sinc "lanczos": Lanczos2 kernel "hamming": Hamming kernel "hann": Hann kernel |
- Returns:
- mask: cube of the same size as combinedCube containing 0 for blank (ZERO pixels) and n used pixels for overlapping regions mergedCube: final data cube containing the jittered cubes
merges jittered data cubes to one bigger cube by taking the sinfo_new_median in each pixel and throw away the high deviation pixels (bigger than factor * sigma) The x, y size of the final data cube is user given, and should be between 32 and 64 pixels, while the relative pixel-offset (sub-pixel accuracy) of the single cubes with respect to the first cube in the list is read from the SEQ CUMOFFSETX,Y fits header keyword.
|
cpl_imagelist * | sinfo_new_combine_cubes (cpl_imagelist **cubes, cpl_imagelist *mergedCube, int n_cubes, float *cumoffsetx, float *cumoffsety, float factor, char *kernel_type) |
cpl_imagelist * | sinfo_new_bin_cube (cpl_imagelist *cu, int xscale, int yscale, int xmin, int xmax, int ymin, int ymax) |
cpl_imagelist * | sinfo_new_scale_cube (cpl_imagelist *cu, float xscale, float yscale, char *kernel_type) |
sinfo_kappa_sigma_offset_with_mask |
implamentation of kappa-sigma clipping
- Parameters:
-
| globalSizeX | size of the result image by X axis |
| globalSizeY | size of the result image by Y axis |
| z_min | plane number to start coaadition |
| z_max | the last plane number to be used for coaddition |
| nCubes | number of cubes in the inputCubes array |
| inputCubes | array of the input cubes, each cube is an cpl_imagelist |
| exptimes | exposure times array, one element for each cube in inputCubes |
| imResult | result cube |
| offsetX | each element represents the offset of the corresponding cube by X axis |
| offsetY | each element represents the offset of the corresponding cube by Y axis |
| skyMask | output parameter shows "bad pixels", pixels which were not taken to calculation due kappa-sigma |
| kappa | parameter for kappa-sigma algorithm |
|
void | kappa_sigma_CubeDataVector (int globalX, int globalY, CubeDataVector *pCubeDataVector, cpl_imagelist *imlistResult, cpl_imagelist **input_cubes, cpl_imagelist *sky_mask, int iPlanesNumber, int z_min, const double kappa, double *exptimes) |
double | kappa_sigma_array_with_mask (cpl_array *parray, int szArray, const double kappa, cpl_image *imMask, double *exptimes, int x, int y, double mask_delta) |
int | sinfo_coadd_with_ks_clip_optimized (const int z_min, const int z_max, const int n_cubes, const double kappa, int *llx, int *lly, double *exptimes, cpl_imagelist *sky_mask, cpl_imagelist *mergedCube, cpl_imagelist **tmpcubes) |
cubes: list of jittered cubes to mosaic |
- Parameters:
-
| mergedCube,: | resulting merged cube containing the jittered cubes |
| n_cubes,: | number of cubes in the list to merge |
| cumoffsetx,: | array of relative x pixel offset with respect to the first frame in the same sequence as the cube list. |
| cumoffsety,: | array of relative y pixel offsets with respect to the first frame in the same sequence as the cube list. |
| exptimes,: | exposure times array giving the time in the same sequence as the cube list |
| kernel_type,: | the name of the interpolation kernel that you want to generate using the eclipse routine sinfo_generate_interpolation_kernel() Supported kernels are: NULL: default kernel, currently tanh "default": dito "tanh": Hyperbolic tangent "sinc2": Square sinc "lanczos": Lanczos2 kernel "hamming": Hamming kernel "hann": Hann kernel |
| z_min | min z of plane to be combined |
| z_max | max z of plane to be combined |
- Returns:
- mask: cube of the same size as combinedCube containing 0 for blank (ZERO pixels) and the summed integration times for overlapping regions merges jittered data cubes to one bigger cube by averaging the overlap regions weighted by the integration times. The x, y size of the final data cube is user given, and should be between 32 and 64 pixels, while the relative pixel-offset (sub-pixel accuracy) of the single cubes with respect to the first cube in the list is read from the SEQ CUMOFFSETX,Y fits header keyword.
|
cpl_imagelist * | new_combine_jittered_cubes_it (cpl_imagelist **cubes, cpl_imagelist *mergedCube, cpl_imagelist *mask, int n_cubes, float *cumoffsetx, float *cumoffsety, float *exptimes, char *kernel_type, const int z) |
int | new_combine_jittered_cubes_sky_range (cpl_imagelist **cubes, cpl_imagelist *mergedCube, cpl_imagelist *mask, cpl_imagelist *mergedSky, cpl_imagelist *mergedMsk, cpl_imagelist *mergeMed, cpl_imagelist *mergeAvg, cpl_imagelist *mergeStd, cpl_imagelist *mergeNc, int n_cubes, float *cumoffsetx, float *cumoffsety, float *exptimes, char *kernel_type, const int z_min, const int z_max) |
int | new_combine_jittered_cubes_sky_range2 (cpl_imagelist **cubes, cpl_imagelist *mergedCube, cpl_imagelist *mask, cpl_imagelist *mergedSky, cpl_imagelist *mergedMsk, cpl_imagelist *mergeMed, cpl_imagelist *mergeAvg, cpl_imagelist *mergeStd, cpl_imagelist *mergeNc, int n_cubes, float *cumoffsetx, float *cumoffsety, double *exptimes, char *kernel_type, const int z_min, const int z_max) |