docs: public void process(GrayU8 input , GrayU8 output ) {
  		InputSanityCheck.checkSameShape(input, output);
  
  		regionWidth = regionWidthLength.computeI(Math.min(input.width,input.height));
  
  		if (input.width < regionWidth || input.height < regionWidth) {
  			regionWidth = Math.min(input.width,input.height);
  		}
  
  		numPixels = regionWidth*regionWidth;
  
  		int y0 = regionWidth/2;
  		int y1 = input.height-(regionWidth-y0);
  		int x0 = regionWidth/2;
  		int x1 = input.width-(regionWidth-x0);
  
  		final byte a,b;
  		if( down ) {
  			a = 1; b = 0;
  		} else {
  			a = 0; b = 1;
  		}
  
  		process(input, output, x0, y0, x1, y1, a, b);
  	}