2

嗨,我有一个我正在从事的对象识别项目的模型测试问题。我希望能够获取 Eclipse 项目文件夹中的 .jpeg 文件,并将它们减少为 Java 中非常稀疏的字节数组。例如,如果我有一张球的图片,我希望能够将其转换为以下字节二维数组:

00000000000000000
00000001110000000
00001100001110000
00010000000001000
00010000000001000
00001000000010000
00000011111000000
00000000000000000

如果有人能解释我如何最有效地做到这一点,我将不胜感激。我对编程相当陌生,并且除了 oop 之外了解的不多,所以如果你能用简单的编程术语来描述这个过程而没有任何行话,我将非常感激。

4

1 回答 1

3

首先要获取图像的字节数组,您需要将图像转换为 BufferedImage。请参阅链接以将图像转换为 BuffredImage。http://www.dzone.com/snippets/converting-images

获得 BufferedImage 后,使用bufferedImageToByteArray函数将 t 转换为字节数组。

BufferedImage buf_image; // this is BufferedImage reference you got after converting it from Image
byte[] imageByteArray = bufferedImageToByteArray(buf_image,"jpg");

public static byte[] bufferedImageToByteArray(BufferedImage image, String format) throws IOException
{
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    ImageIO.write(image, format, baos);
    return baos.toByteArray();
}
于 2012-10-27T02:56:40.077 回答