docs: public static <I extends ImageGray<I>, D extends ImageGray<D>>
  	AnyImageDerivative<I,D> createAnyDerivatives( DerivativeType type , Class<I> inputType , Class<D> derivType ) {
  
  		boolean isInteger = !GeneralizedImageOps.isFloatingPoint(inputType);
  		KernelBase kernel = lookupKernelX(type,isInteger);
  
  		if( kernel instanceof Kernel1D )
  			return new AnyImageDerivative<>((Kernel1D) kernel, inputType, derivType);
  		else
  			return new AnyImageDerivative<>((Kernel2D) kernel, inputType, derivType);
  	}