protected static byte[] convertBufferedImageToByteArray(BufferedImage img) { if (img != null) { BufferedImage cvImg = createBufferedImage(img.getWidth(), img.getHeight()); Graphics2D g = cvImg.createGraphics(); g.drawImage(img, 0, 0, null); g.dispose(); return ((DataBufferByte) cvImg.getRaster().getDataBuffer()).getData(); } else { return null; } }
/** * create a sub image from this image * * @param x pixel column * @param y pixel row * @param w width * @param h height * @return the new image */ public Image getSub(int x, int y, int w, int h) { BufferedImage bi = createBufferedImage(w, h); Graphics2D g = bi.createGraphics(); g.drawImage(get().getSubimage(x, y, w, h), 0, 0, null); g.dispose(); return new Image(bi); }