docs: public static GrayU8 extractGrayU8(BufferedImage img) {
  		WritableRaster raster = img.getRaster();
  		DataBuffer buffer = raster.getDataBuffer();
  		if (buffer.getDataType() == DataBuffer.TYPE_BYTE && isKnownByteFormat(img) ) {
  
  			if (raster.getNumBands() != 1)
  				throw new IllegalArgumentException("Input image has more than one channel");
  			GrayU8 ret = new GrayU8();
  
  			ret.width = img.getWidth();
  			ret.height = img.getHeight();
  			ret.startIndex = ConvertRaster.getOffset(img.getRaster());
  			ret.stride = ConvertRaster.stride(img.getRaster());
  			ret.data = ((DataBufferByte)buffer).getData();
  
  			return ret;
  		}
  		throw new IllegalArgumentException("Buffered image does not have a gray scale byte raster");
  	}