imp_src.setProperty("channel",srcChannel);// it may already have channel
imp_src.setProperty("path",sourceFiles[nFile]);// it may already have channel
// ImagePlus result=processChannelImage( // returns ImagePlus, but it already should be saved/shown
processDCTChannelImage(// returns ImagePlus, but it already should be saved/shown
imp_src,// should have properties "name"(base for saving results), "channel","path"
// splitParameters,
dct_parameters,
debayerParameters,
nonlinParameters,
colorProcParameters,
channelGainParameters,
rgbParameters,
convolveFFTSize,// 128 - fft size, kernel size should be size/2
scaleExposure,
threadsMax,// maximal number of threads to launch
updateStatus,
debugLevel);
// warp result (add support for different color modes)
if(this.correctionsParameters.equirectangular){
if(equirectangularParameters.clearFullMap)eyesisCorrections.pixelMapping.deleteEquirectangularMapFull(srcChannel);// save memory? //removeUnusedSensorData - no, use equirectangular specific settings
if(equirectangularParameters.clearAllMaps)eyesisCorrections.pixelMapping.deleteEquirectangularMapAll(srcChannel);// save memory? //removeUnusedSensorData - no, use equirectangular specific settings
}
//pixelMapping
Runtime.getRuntime().gc();
if(debugLevel>0)System.out.println("Processing image "+(iImage+1)+" (of "+fileIndices.length+") finished at "+
System.out.println("Vignetting data for channel "+channel+" has "+eyesisCorrections.channelVignettingCorrection[channel].length+" pixels, image "+path+" has "+pixels.length);
(tilesX+1)*dct_parameters.dct_size,// final int width,
dct_parameters.dct_size,// final int step, //(does not need to be this) // just for multi-threading efficiency?
dct_parameters.nonlin_max_y,// final double nonlin_max_y = 1.0; // maximal amount of nonlinear line/edge emphasis for Y component
dct_parameters.nonlin_max_c,// final double nonlin_max_c = 1.0; // maximal amount of nonlinear line/edge emphasis for C component
dct_parameters.nonlin_y,// final double nonlin_y, // = 0.01; // amount of nonlinear line/edge emphasis for Y component
dct_parameters.nonlin_c,// final double nonlin_c, // = 0.01; // amount of nonlinear line/edge emphasis for C component
dct_parameters.nonlin_corn,// final double nonlin_corn, // = 0.5; // relative weight for nonlinear corner elements
(dct_parameters.denoise?dct_parameters.denoise_y:0.0),// final double denoise_y, // = 1.0; // maximal total smoothing of the Y post-kernel (will compete with edge emphasis)
(dct_parameters.denoise?dct_parameters.denoise_c:0.0),// final double denoise_c, // = 1.0; // maximal total smoothing of the color differences post-kernel (will compete with edge emphasis)
dct_parameters.denoise_y_corn,// final double denoise_y_corn, // = 0.5; // weight of the 4 corner pixels during denoise y (relative to 4 straight)
dct_parameters.denoise_c_corn,// final double denoise_c_corn, // = 0.5; // weight of the 4 corner pixels during denoise y (relative to 4 straight)
threadsMax,// final int threadsMax, // maximal number of threads to launch