Pointer.to(newfloat[]{(float)min_agree}),// float min_agree, // minimal number of channels to agree on a point (real number to work with fuzzy averages)
Pointer.to(newfloat[]{weighht0}),// float weight0, // scale for R
Pointer.to(newfloat[]{weighht1}),// float weight1, // scale for B
Pointer.to(newfloat[]{weighht2}),// float weight2, // scale for G
Pointer.to(gpu_color_weights),// float weights[3], // scale for R,B,G
Pointer.to(newint[]{idust_remove}),// int dust_remove, // Do not reduce average weight when only one image differes much from the average
Pointer.to(newint[]{0}),// int keep_weights, // return channel weights after A in RGBA
Pointer.to(newint[]{texture_stride_rgba}),// const size_t texture_rbga_stride, // in floats
...
...
@@ -1307,6 +1284,76 @@ public class GPUTileProcessor {
cuCtxSynchronize();
}
publicvoidexecTextures(
// double [][] port_offsets,
double[]color_weights,
booleanis_lwir,
doublemin_shot,// 10.0
doublescale_shot,// 3.0
doublediff_sigma,// pixel value/pixel change
doublediff_threshold,// pixel value/pixel change
doublemin_agree,// minimal number of channels to agree on a point (real number to work with fuzzy averages)
Pointer.to(newint[]{0}),// null, // new Pointer(), //Pointer.to(gpu_textures), // new Pointer(), // Pointer.to(gpu_textures),
Pointer.to(newint[]{texture_stride}),// can be a null pointer - will not be used! float * gpu_texture_rbg, // (number of colors +1 + ?)*16*16 rgba texture tiles