从JPEG图像中读取数据

时间:2014-03-22 16:18:45

标签: java file jpeg

我想从.jpg文件中读取数据(标题,DCT信息,霍夫曼表,量化表......)

我尝试了这段代码,但我不确定它是否正确(事实上我不知道该怎么做!)

byte[] my = new byte[5];
    try 
    {
        RandomAccessFile file = new RandomAccessFile("001.jpg", "rw");
        file.read(my, 0, 5);
        for(int i = 0; i < my.length; i++)
            System.out.printf("%s\n", my[i]);

    } 
    catch (IOException e) 
    {

    }

此代码只打印一些数字(它应该是图像的开头)

1 个答案:

答案 0 :(得分:2)

在阅读“JPEG文件”和获取像素数据之间有很多工作。

如果您真的感兴趣,我建议从许多JPEG转储程序中的一个开始,以了解JPEG流的结构。 JPEG流由一系列标记组成。

压缩数据在扫描中。在渐进式JPEG中,必须组合多次扫描。

解码的基本顺序是游程/霍夫曼,DCT,采样,转换为RGB。

要达到这一点需要很多代码。