2

こんにちは私は私が取り組んでいるオブジェクト認識プロジェクトのモデルテストの質問があります。Eclipseプロジェクトフォルダーにある.jpegファイルを取得して、Javaで非常にスパースなバイト配列に縮小できるようにしたいと考えています。たとえば、ボールの写真がある場合、それを次のバイト2次元配列に変換できるようにしたいと思います。

00000000000000000
00000001110000000
00001100001110000
00010000000001000
00010000000001000
00001000000010000
00000011111000000
00000000000000000

誰かが私がこれを最も効率的に行う方法を説明してくれるように親切にしてくれたら、私はそれを大いに感謝します。私はプログラミングにかなり慣れておらず、おっと以上のことを理解していないので、専門用語を使わずに簡単なプログラミング用語でプロセスを説明できれば幸いです。

4

1 に答える 1

3

最初に画像のバイト配列を取得するには、画像をBufferedImageに変換する必要があります。画像をBuffredImageに変換するには、このリンクを参照してください。http://www.dzone.com/snippets/converting-images

BufferedImageを取得したら、 bufferedImageToByteArray関数を使用してtをbytearrayに変換します。

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 に答える