docs: public static <N extends ImageBase,D extends ImageBase<D>> void divide(N imgA, D imgB , N output)
  	{
  		if( imgA instanceof ImageGray && imgB instanceof ImageGray ) {
  			if (GrayF32.class == imgA.getClass()) {
  				PixelMath.divide((GrayF32) imgA, (GrayF32) imgB, (GrayF32) output);
  			} else if (GrayF64.class == imgA.getClass()) {
  				PixelMath.divide((GrayF64) imgA, (GrayF64) imgB, (GrayF64) output);
  			}
  		} else if( imgA instanceof Planar && imgB instanceof ImageGray ) {
  			Planar in = (Planar) imgA;
  			Planar out = (Planar) output;
  
  			for (int i = 0; i < in.getNumBands(); i++) {
  				if (GrayF32.class == imgB.getClass()) {
  					PixelMath.divide((GrayF32) in.getBand(i), (GrayF32) imgB, (GrayF32) out.getBand(i));
  				} else if (GrayF64.class == imgB.getClass()) {
  					PixelMath.divide((GrayF64) in.getBand(i), (GrayF64) imgB, (GrayF64) out.getBand(i));
  				}
  			}
  		} else if( imgA instanceof Planar && imgB instanceof Planar ) {
  			Planar inA = (Planar) imgA;
  			Planar inB = (Planar) imgB;
  			Planar out = (Planar) output;
  
  			for (int i = 0; i < inA.getNumBands(); i++) {
  				divide(inA.getBand(i), inB.getBand(i), out.getBand(i));
  			}
  		} else {
  			throw new IllegalArgumentException("Unknown image Type: "+imgA.getClass().getSimpleName());
  		}
  	}