public static void convolve(Kernel2D_F32 kernel, GrayF32 image, GrayF32 dest , int skip ) {
		checkParameters(image, dest, skip);

		if( kernel.width >= image.width ) {
			ConvolveDownNormalizedNaive.convolve(kernel,image,dest,skip);
		} else {
			ConvolveImageDownNoBorder.convolve(kernel,image,dest,skip);
			ConvolveDownNormalized_JustBorder.convolve(kernel,image,dest,skip);
		}
	}
public static void convolve ( Kernel2D_F32 kernel , GrayF32 image , GrayF32 dest , int skip ) { checkParameters ( image , dest , skip ) ; if ( kernel . width >= image . width ) { ConvolveDownNormalizedNaive . convolve ( kernel , image , dest , skip ) ; } else { ConvolveImageDownNoBorder . convolve ( kernel , image , dest , skip ) ; ConvolveDownNormalized_JustBorder . convolve ( kernel , image , dest , skip ) ; } }
Performs a 2D down convolution across the image while re-normalizing the kernel depending on its
overlap with the image.

@param image	 The original image. Not modified.
@param dest	 Where the resulting image is written to. Modified.
@param kernel The kernel that is being convolved. Not modified.