KernelConvolve

Declaration: KernelConvolve (Kernel, InData: TDouble2DArray; var OutData: TDouble2DArray; Feedback: boolean): integer;
KernelConvolve calculates for each cell of the array InData the convolution of the matrix cells with the kernel given by the parameter Kernel. The kernel has to be quadratic with an odd number of pixels along the egde. The results are written to the array OutData which is automatically resized to match the size of InData.

If Feedback is set to TRUE, the script progress bar at the bottom right of the Epina ImageLab main window indicates the progress of the calculation, if set to FALSE no visual feedback is provided. Please note that unless the script progress bar is already visible you have to make it visible before calling KernelConvolve, otherwise the feedback will not be displayed. You can activate the script progress bar by calling the function ScriptBar(0).

The function returns the following error codes:

 0 ... everything is OK, OutData has been filled by the convolution results
-1 ... the Kernel is not quadratic
-2 ... the size of the Kernel is even
-3 ... the size of the Kernel is less than 3