code: public static void convolve(Kernel2D_S32 kernel,
  								  GrayS32 input, GrayS32 output , ImageBorder_S32<GrayS32> border ) {
  		InputSanityCheck.checkSameShape(input, output);
  
  		boolean processed = BOverrideConvolveImage.invokeNativeConvolve(kernel,input,output,border);
  
  		if( !processed ) {
  			border.setImage(input);
  			ConvolveImageNoBorder.convolve(kernel,input,output);
  			ConvolveJustBorder_General_SB.convolve(kernel, border,output);
  		}
  	}
docs: Performs a 2D convolution across the image.
  
  @param input The original image. Not modified.
  @param output Where the resulting image is written to. Modified.
  @param kernel The kernel that is being convolved. Not modified.
  @param border How the image borders are handled.