docs: public static <T extends ImageGray<T>> void minimum(Planar<T> input, T output, int startBand, int lastBand) {
  
  		if( GrayU8.class == input.getBandType() ) {
  			ImageBandMath.minimum((Planar<GrayU8>) input, (GrayU8) output, startBand, lastBand);
  		} else if( GrayU16.class == input.getBandType() ) {
  			ImageBandMath.minimum((Planar<GrayU16>) input, (GrayU16) output, startBand, lastBand);
  		} else if( GrayS16.class == input.getBandType() ) {
  			ImageBandMath.minimum((Planar<GrayS16>) input, (GrayS16) output, startBand, lastBand);
  		} else if( GrayS32.class == input.getBandType() ) {
  			ImageBandMath.minimum((Planar<GrayS32>) input, (GrayS32) output, startBand, lastBand);
  		} else if( GrayS64.class == input.getBandType() ) {
  			ImageBandMath.minimum((Planar<GrayS64>) input, (GrayS64) output, startBand, lastBand);
  		} else if( GrayF32.class == input.getBandType() ) {
  			ImageBandMath.minimum((Planar<GrayF32>) input, (GrayF32) output, startBand, lastBand);
  		} else if( GrayF64.class == input.getBandType() ) {
  			ImageBandMath.minimum((Planar<GrayF64>) input, (GrayF64) output, startBand, lastBand);
  		} else {
  			throw new IllegalArgumentException("Unknown image Type: "+input.getBandType().getSimpleName());
  		}
  	}