Sziasztok,
ELeg regen volt, hogy HUP-ra posztoltam, de sajnos nem nagyon van mas otletem kitol kerjek segitseget a kornyezetemben. Van egy enginem aminek szeretnek kepeket dobalni kulonbozo muveletekre, kovetelmeny, hogy YUV jellegu graysacle 8byte array-ra legyen konvertalva amit elvileg meg is csinalok egy java kodban, de valamiert meg mindig visszadobja az engine a kepet.
Tudtok ebben picit segiteni? Mit rontok el? Esetleg tanacs?
/*1. lepes: kep olvasasa*/
BufferedImage source = ImageIO.read(new File("/home/nuke/img/img2.jpg"));
int type = source.getType() == 0 ? BufferedImage.TYPE_INT_ARGB:source.getType();
/*2.lepes: kep atmeretezese*/
BufferedImage resizeImageJpg = resizeImage(source, type);
//ImageIO.write(resizeImageJpg, "jpg", new File("c:\\img\\image\\dice_jpg.jpg"));
/*3. lepes: Kep szurekarnyalatos konvertalasa*/
BufferedImage gray = new BufferedImage(resizeImageJpg.getWidth(), resizeImageJpg.getHeight(), BufferedImage.TYPE_BYTE_GRAY);
ColorConvertOp op = new ColorConvertOp(ColorSpace.getInstance(ColorSpace.CS_GRAY), null);
op.filter(resizeImageJpg, gray);
WritableRaster raster = gray.getRaster();
//ImageIO.write(gray, "jpg", new File("c:\\img\\image\\dice_gray_jpg.jpg"));
/*4. lepes: Szurkearnyalatos kep byte arraybe*/
DataBufferByte data = (DataBufferByte) raster.getDataBuffer();
byte[] rawPixels = data.getData();
System.out.println("BYTES---------- "+rawPixels.length);//+ Arrays.toString(rawPixels));
Elore is koszi!
N.