打印

解码问题

[复制链接]
2597|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
四叶草|  楼主 | 2007-11-12 23:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
JPEG解码问题,我的资料上说从文件头读出文件的相关信息。但是从何读起呢?我用ultraedit打开的jpeg文件时内容如下:
00000000h: FF D8 FF E0 00 10 4A 46 49 46 00 01 02 01 00 48 ; 

相关帖子

来自 2楼
chunyang| | 2007-11-13 01:41 | 只看该作者

Jpeg文件结构

    JPEG文件由八个部分组成,每个部分的标记字节为两个,首字节固定为:0xFF,当然,准许在其前面再填充多个0xFF,以最后一个为准。下面为各部分的名称和第二个标记字节的数值,用ultraedit的16进制搜索功能可找到各部分的起始位置,在嵌入式系统中可用类似的数值匹配法定位。
一、图像开始SOI(Start of Image)标记,数值0xD8
二、APP0标记(Marker),数值0xE0
1、APP0长度(length)
2、标识符(identifier)
3、版本号(version)
4、X和Y的密度单位(units=0:无单位;units=1:点数/英寸;units=2:点数/厘米)
5、X方向像素密度(X density)
6、Y方向像素密度(Y density)
7、缩略图水平像素数目(thumbnail horizontal pixels)
8、缩略图垂直像素数目(thumbnail vertical pixels)
9、缩略图RGB位图(thumbnail RGB bitmap),由前面的数值决定,取值3n,n为缩略图总像素
三、APPn标记(Markers),其中n=1~15,数值对应0xE1~0xEF    
1、APPn长度(length)
2、应用细节信息(application specific information)
四、一个或者多个量化表DQT(difine quantization table),数值0xDB
1、量化表长度(quantization table length)
2、量化表数目(quantization table number)
3、量化表(quantization table)
五、帧图像开始SOF0(Start of Frame),数值0xC0
1、帧开始长度(start of frame length)
2、精度(precision),每个颜色分量每个像素的位数(bits per pixel per color component)
3、图像高度(image height)
4、图像宽度(image width)
5、颜色分量数(number of color components)
6、对每个颜色分量(for each component)
包括:ID、垂直方向的样本因子(vertical sample factor)、水平方向的样本因子(horizontal sample factor) 、量化表号(quantization table#)
六、一个或者多个霍夫曼表DHT(Difine Huffman Table),数值0xC4
1、霍夫曼表的长度(Huffman table length)
2、类型、AC或者DC(Type, AC or DC)
3、索引(Index)
4、位表(bits table)
5、值表(value table)
七、扫描开始SOS(Start of Scan),数值0xDA
1、扫描开始长度(start of scan length)
2、颜色分量数(number of color components)
3、每个颜色分量
包括:ID、交流系数表号(AC table #)、直流系数表号(DC table #)
4、压缩图像数据(compressed image data)
八、图像结束EOI(End of Image),数值0xD9

    以上为基本可供检索的信息,细节内容不是小篇幅可以说清的,那可是一本书中至少一章的内容,几十页纸啊,最好到书店去买一本相关工具书,搞图像可少不了书的。

使用特权

评论回复
板凳
tyw| | 2007-11-13 06:21 | 只看该作者

好东东哦

自已编程解压是很累的拉
其实转成bmp档再取数据就简单多了,现在内存也不贵

使用特权

评论回复
地板
平常人| | 2007-11-13 08:27 | 只看该作者

收藏先,什么时候把算法搞来研究研究

谢谢chunyang啦。

使用特权

评论回复
5
mybao| | 2007-11-16 13:04 | 只看该作者

chunyang 厉害啊

使用特权

评论回复
6
jwins| | 2007-11-19 12:37 | 只看该作者

我有JPEG的解码库C语言的

需要的朋友,可以发邮件给我!共同交流!
可支持杂MCU、DSP、ARM上的应用

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

71

主题

109

帖子

0

粉丝