docs: public static void vertical(GrayF64 input, GrayF64 output, int radius, @Nullable DWorkArrays work) {
  
  		boolean processed = BOverrideConvolveImageMean.invokeNativeVertical(input, output, radius);
  
  		if( !processed ) {
  			Kernel1D_F64 kernel = FactoryKernel.table1D_F64(radius, true);
  			if (kernel.width > input.height) {
  				ConvolveImageNormalized.vertical(kernel, input, output);
  			} else {
  				InputSanityCheck.checkSameShape(input, output);
  				ConvolveNormalized_JustBorder_SB.vertical(kernel, input, output);
  				if(BoofConcurrency.USE_CONCURRENT) {
  					ImplConvolveMean_MT.vertical(input, output, radius,work);
  				} else {
  					ImplConvolveMean.vertical(input, output, radius,work);
  				}
  			}
  		}
  	}