JPEG文件分析

JPEG文件头分析
 说明jpeg文件结构jiff和exif的基本样式jiff app0标记段exif app1标记段SOF标记段解析jpeg重要段
 

 
说明 
1 jpeg是一种压缩标准,大幅度缩小数据流,jpeg以FF D8开头,FF D9结束。 2 jpeg图像由多个maker组成,多个maker+compressed组成了jpeg。 3 jiff是一种在万维网上进行jpeg传输的格式,可以理解是对jpeg图片的封装,符合jpeg标准,jiff的maker是app0,记录了图像的基本信息,也可能有缩略图。jiff格式比较老,老式的数码相机使用此格式。 4 exif新比较新的jpeg封装格式,exif的maker是app1,记录了更多的东西,如ISP信息、GPS信息、相机信息,图像旋转等等 5 jiff和exif可以共存,很多jpeg图像都有app0的jiff段和app1的exif段 
jpeg文件结构 
SOI  0xD8            图像开始 APP0 0xE0            JFIF应用数据块 APPn 0xE1 - 0xEF 其他的应用数据块(n, 1~15) DQT  0xDB           量化表 SOF0 0xC0            帧开始 DHT  0xC4           霍夫曼(Huffman)表 SOS  0xDA           扫描线开始 EOI  0xD9            图像结束 
jiff和exif的基本样式 
 
jiff app0标记段 
 
exif app1标记段 
 
SOF标记段 
此标记段解析图像宽高  


解析jpeg 
1 libjpeg开源库只能解析jiff格式的jpeg,不过jiff格式比较简单,我们也可以根据格式自己解析。 2 jhead可以解析exif格式的jpeg,exif标记段比较复杂,信息较多,参考了此开源库做了解析。 
重要段 
1 app0和app1 判断是哪种封装的jpeg(jiff/exif) 2 解析方向,根据app1中的信息解析,jiff不支持方向 3 解析progressive扫描,通过SOFn判断是baseline还是progressive扫描
————————————————
版权声明:本文为CSDN博主「木木林19」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kakasxin/article/details/104758227

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值