docs: public static BufferedImage extractBuffered(GrayU8 img) {
  		if (img.isSubimage())
  			throw new IllegalArgumentException("Sub-images are not supported for this operation");
  
  		final int width = img.width;
  		final int height = img.height;
  
  		// wrap the byte array
  		DataBuffer bufferByte = new DataBufferByte(img.data, width * height, 0);
  
  		ColorModel colorModel;
  		int[] bOffs = new int[]{0};
  
  		ColorSpace cs = ColorSpace.getInstance(ColorSpace.CS_GRAY);
  		int[] nBits = {8};
  		colorModel = new ComponentColorModel(cs, nBits, false, true,
  				Transparency.OPAQUE,
  				DataBuffer.TYPE_BYTE);
  
  		// Create a raster using the sample model and data buffer
  		WritableRaster raster = Raster.createInterleavedRaster(
  				bufferByte, width, height, img.stride, 1, bOffs, new Point(0, 0));
  
  		// Combine the color model and raster into a buffered image
  		return new BufferedImage(colorModel, raster, false, null);
  	}