惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V2EX - 技术
V2EX - 技术
酷 壳 – CoolShell
酷 壳 – CoolShell
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
阮一峰的网络日志
阮一峰的网络日志
GbyAI
GbyAI
The Cloudflare Blog
小众软件
小众软件
MyScale Blog
MyScale Blog
IT之家
IT之家
H
Help Net Security
宝玉的分享
宝玉的分享
V
Visual Studio Blog
Hugging Face - Blog
Hugging Face - Blog
F
Fortinet All Blogs
博客园_首页
S
SegmentFault 最新的问题
MongoDB | Blog
MongoDB | Blog
The Hacker News
The Hacker News
有赞技术团队
有赞技术团队
Microsoft Security Blog
Microsoft Security Blog
Know Your Adversary
Know Your Adversary
Project Zero
Project Zero
P
Palo Alto Networks Blog
博客园 - 聂微东
罗磊的独立博客
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Engineering at Meta
Engineering at Meta
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
U
Unit 42
Spread Privacy
Spread Privacy
NISL@THU
NISL@THU
Cisco Talos Blog
Cisco Talos Blog
Last Week in AI
Last Week in AI
L
Lohrmann on Cybersecurity
J
Java Code Geeks
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Cyberwarzone
Cyberwarzone
G
Google Developers Blog
C
Cybersecurity and Infrastructure Security Agency CISA
大猫的无限游戏
大猫的无限游戏
Microsoft Azure Blog
Microsoft Azure Blog
L
LangChain Blog
The GitHub Blog
The GitHub Blog
Jina AI
Jina AI
Blog — PlanetScale
Blog — PlanetScale
C
Cyber Attacks, Cyber Crime and Cyber Security
L
LINUX DO - 热门话题
T
Tailwind CSS Blog
雷峰网
雷峰网
C
Cisco Blogs

博客园 - Ethan_村长

自己开发iOS版按键精灵--TTouch iOS 基于OpenCV图像比较的常见方法 iOS越狱系统使用root权限运行命令 Mac CEF 支持mp3 mp4编译 iOS自动化测试需求实现(iOS按键精灵类似) [转]runtime 消息机制 [转]多线程 Mac读取Andriod屏幕截图 解决读取iphone名称中文乱码问题 windows或mac上对iOS设备截图 ios获取左右眼图片景深图 使用libjpeg.framework压缩UIImage shell脚本删除指定mobileprovision iphone使用mac上的SOCKS代理 eclipse配置javah命令 [转]Android通过NDK调用JNI,使用opencv做本地c++代码开发配置方法 利用JNI技术在Android中调用、调试C++代码 iOS在线更新framework,使用NSBundle动态读取 CocoaPods pod install
JPEG文件结构
Ethan_村长 · 2015-11-11 · via 博客园 - Ethan_村长

      JPEG文件由八个部分组成,每个部分的标记字节为两个,首字节固定为:0xFF,当然,准许在其前面再填充多个0xFF,以最后一个为准。下面为各部分的名称和第二个标记字节的数值,用ultraedit的16进制搜索功能可找到各部分的起始位置,在嵌入式系统中可用类似的数值匹配法定位。

      段结构:段标识(FF)+段类型(D8)+段长度+段内容,段长度:2byte,包括段内容和段长度本身,不包括段标识和段类型。

段类型表:

  • 名称   标记码    说明
  • SOI     D8    文件头
  • EOI     D9   文件尾
  • SOF0  C0    帧开始(标准JPEG)
  • SOF1  C1    同上
  • DHT   C4   定义Huffman表(霍夫曼表)
  • SOS   DA   扫描行开始
  • DQT   DB   定义量化表
  • DRI   DD   定义重新开始间隔
  • APP0  E0   定义交换格式和图像识别信息
  • COM   FE   注释

一、图像开始SOI(Start of Image)标记,数值0xD8

二、APP0标记(Marker),数值0xE0

1、APP0长度(length)                            2byte

2、标识符(identifier)                     5byte

3、版本号(version)                        2byte

4、X和Y的密度单位(units=0:无单位;units=1:点数/英寸;units=2:点数/厘米)                        1byte

5、X方向像素密度(X density)                      2byte

6、Y方向像素密度(Y density)                       2byte

7、缩略图水平像素数目(thumbnail horizontal pixels)                       1byte

8、缩略图垂直像素数目(thumbnail vertical pixels)                            1byte

9、缩略图RGB位图(thumbnail RGB bitmap),由前面的数值决定,取值3n,n为缩略图总像素   3n byte

三、APPn标记(Markers),其中n=1~15,数值对应0xE1~0xEF   

1、APPn长度(length)

2、应用细节信息(application specific information)

参考:http://www.cppblog.com/lymons/archive/2010/02/23/108266.aspx

四、一个或者多个量化表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)

①JPEG文件里有2类Haffman表:一类用于DC(直流量),一类用于AC(交流量)。一般有4个表:亮度的DC和AC,色度的DC和AC。最多可有6个。

②一个DHT段可以包含多个HT表,每个都有自己的信息字节③HT表是一个按递增次序代码长度排列的符号表。

七、扫描开始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

参考文章:http://wenku.baidu.com/link?url=a5ucr_urgkDLhnfX1XwkwNok_YkngnJ0MZ1WUDnEusEKl67GPdkZBVFbVIuiK-X7MPCwQCBsyr8LpwXO6h5NW59NmD6lhMtPgU66wdX_0O7

http://www.360doc.com/content/14/1027/14/20066350_420310862.shtml

转载请注明地址:http://www.cnblogs.com/bandy/p/4956086.html