docs: public static <T extends ImageBase<T>>
  	T gaussian(T input, @Nullable T output, double sigma , int radius, @Nullable ImageBase storage ) {
  		switch( input.getImageType().getFamily() ) {
  			case GRAY: {
  				if (input instanceof GrayU8) {
  					return (T) BlurImageOps.gaussian((GrayU8) input, (GrayU8) output, sigma, radius, (GrayU8) storage);
  				} else if (input instanceof GrayU16) {
  					return (T) BlurImageOps.gaussian((GrayU16) input, (GrayU16) output, sigma, radius, (GrayU16) storage);
  				} else if (input instanceof GrayF32) {
  					return (T) BlurImageOps.gaussian((GrayF32) input, (GrayF32) output, sigma, radius, (GrayF32) storage);
  				} else if (input instanceof GrayF64) {
  					return (T) BlurImageOps.gaussian((GrayF64) input, (GrayF64) output, sigma, radius, (GrayF64) storage);
  				} else {
  					throw new IllegalArgumentException("Unsupported image type: " + input.getClass().getSimpleName());
  				}
  			}
  
  			case INTERLEAVED:{
  				if (input instanceof InterleavedU8) {
  					return (T) BlurImageOps.gaussian((InterleavedU8) input, (InterleavedU8) output, sigma, radius, (InterleavedU8) storage);
  				} else if (input instanceof InterleavedU16) {
  					return (T) BlurImageOps.gaussian((InterleavedU16) input, (InterleavedU16) output, sigma, radius, (InterleavedU16) storage);
  				} else if (input instanceof InterleavedF32) {
  					return (T) BlurImageOps.gaussian((InterleavedF32) input, (InterleavedF32) output, sigma, radius, (InterleavedF32) storage);
  				} else if (input instanceof InterleavedF64) {
  					return (T) BlurImageOps.gaussian((InterleavedF64) input, (InterleavedF64) output, sigma, radius, (InterleavedF64) storage);
  				} else {
  					throw new IllegalArgumentException("Unsupported image type: " + input.getClass().getSimpleName());
  				}
  			}
  
  			case PLANAR:{
  				return (T) BlurImageOps.gaussian((Planar) input, (Planar) output, sigma, radius, (ImageGray) storage);
  			}
  
  			default:
  				throw new IllegalArgumentException("Unknown image family");
  		}
  	}