英文维基百科手机版首页 网址 的QR码, " http://en.m.wikipedia.org "
快速响应 码 ( QR code ) (全称 为 Quick Response Code ) 是针对某种 矩阵条码 ( 或二维 条码 )的商标,最初 是 为 日本国的汽车行业 设计的。条码 ,是一种能够被机器阅读的光学标签,其中包含 着它所附着于 其上 的那个物品的信息。快速响应 码使用4种标准化的编码模式 (数字 、字母数字、字节/二进制、 及 汉字 ) 来高效地存储数据; 还有一些扩展可使用。
快速响应 码 被传播到了汽车行业之外的领域,因为 , 它的读取速度狠快,而且, 相对于标准 的 通用产品代码 ,其存储容量大得多。 其应用狠广泛:产品跟踪、物品标识、时间跟踪、文档管理、通用市场等等。
快速响应 码图案, 是在白色背景上划分出矩形网格,再在其中绘制黑色的方块(正 方 形 点 ), 可被摄像设备(例如相机)读取, 并使用 里德-所罗门码 错误纠正算法来处理, 以让该图片可被正确解析。然后 ,在图片的水平和竖直分量中,提取 出所需的数据。
历史
快速响应 码,于1994年由 电装 波 公司发明。 它的目标是用来在生产过程中跟踪汽车; 它被设计用于高速进行组件扫描。 尽管 这个东西最初是用于跟踪汽车零件的,但是,如今,快速响应 码已被用于 更广阔的用途,包含商业 的跟踪应用和面向手机用户的便利型应用(称作手机标签)。快速响应 码可用于: 向用户显示一段文字; 向用户的设备上加入一个联系人名片;打开 一个统一资源标识符( Uniform Resource Identifier (URI) );或者 ,编写一封电子邮件或短信。用户 可访问现有的多个收费或免费的快速响应码生成网站,或使用专门的生成程序来生成快速响应码,并且打印出来, 供别人扫描及使用。因此 , 这项技术成为 最流行的二维条码之一。
标准
有多项标准,说明了如何将数据编码为快速响应码:
-
•. 1997 年10月 – 自动识别和行动技术协会 ( AIM (Association for Automatic Identification and Mobility) ) 国际会议
-
•. 1999 年1月 – 日本工业标准 X 0510
-
•. 2000 年6月 – 国际标准化组织 /IEC 18004:2000 信息技术 – 自动化识别 及数据捕获技术 – 条码符号 – 快速响应 码 (已经撤销)
定义 了快速响应码的模型1和模型2. -
•. 2006 年9月1日 – ISO/IEC 18004:2006 信息技术 – 自动 化识别及数据捕获技术 – 快速响应 码 2005条码符号规范
定义 了快速响应码 2005符号, 这是快速响应码模型2的一个扩展。 并未说明如何读取快速响应 码模型1的符号,也未要求做到这一点。
在应用程序这一层, 大部分实现中都有一些变种。日本 国的 都科摩 公司建立 了以下方面的 事实 上的 标准 :编码表达统一资源定位 符( URL );表达联系人信息; 以及其它的多种数据类型。开源 的 “斑马二维码”( "ZXing" )项目维护了一份关于快速响应码数据类型的列表。
用途
日本国的一个巨大的广告牌上的快速响应码,链接至sagasou.mobi网站
最初 是设计用于工业应用 的,而如今,快速响应 码 经常被用于针对消费者做广告。 一 般情况 下, 会使用 智能手机 作为快速响应 码的扫描器, 它能够显示出该条码并且将其转换成有用的信息 (例如,指向某个网站 的一个标准的 统一资源定位 符 , 这样就帮用户省掉了将其输入到 网页浏览器 中去的时间了 ) 。快速响应 码成为了 广告 策略 中的重要一环,因为 ,它提供 了比手动输入网址更快的方式,让用户可以立即访问到某个品牌的网站。 除了提升用户的便利性之外,快速响应 码的另一个好处就是, 它提升了 转化 率 ( 用户与该广告的接触,转变成实际销售情况 的比例 ) , 以狠小的延迟或者说代价来将可能的买家引向 转化漏斗 的更下层, 将观看广告的人立即引向刊登者的网站, 而相比之下, 一个更长期或者更精准的销售展示却可能会使观看者失去兴趣。
尽管最初 是设计用于跟踪汽车零件 的 ,但是,如今 ( 2012年 ),快速响应 码已经在多个领域展现出广泛的用途,包括:商业跟踪 、娱乐 、交通票据、产品/忠诚 度市场运作 (例如:手机优惠 券,某个公司 的折扣可使用快速响应码解码器来扫描获取 ,解码 器呢就是一个手机程序;或者 ,将公司的信息(例如 地址 )存储到快速响应码中 , 就像人们能够在黄页目录中看到的那样 ) 、以及店内的产品标签。 还可以被组织用于存储个人信息。 这种应用的一个示例就是菲律宾国家调查局( Philippines National Bureau of Investigation (NBI) ),它们 的通行证上带有快速响应码。 这种应用场景狠多都是针对 手机 用户 的 ( 即为 手机标签 ) 。 在扫描了某个快速响应码之后,用户可以:接收文字信息、 向设备上 添加 一个 电子名 片 联系人 、打开一个 统一资源标识 符 (URI) 、或者撰写一封 电子邮件 或一条短信。 谷歌 提供 了一个用 于生成快速响应码的 应用编程接口 ,另外 , 在几乎所有的智能手机设备上,都能找到能够扫描快速响应码的应用程序。
存储 着地址和 统一资源定位 符 (URLs) 的快速响应码,可能出现在:杂志 上、招牌 上、名片 上 、或者 是任何的用户能够从其中预期得到信息的东西上。用户使用手里 装有正确的阅读程序并且 带有摄像头 的手机 , 就可以扫描快速 响应码的图片, 以显示文字、显示联系人信息 、连接 到 无线 网 、或者 用手机的网页浏览器打开一个网页。 这种通过物理世界的物体进行连接的动作,被称作 硬链接 或者 物体 超链接 。快速响应 码 还 可 以 被链接 到某个特定 地 理位置 , 以跟踪 , 该快速响应 码 是 在哪里 被扫描 的。或者 是由扫描 该快速响应 码 的程序 来获取 地理位置信息 ( 利用全球定位系统( GPS ) 和蜂窝移动信号塔的三角学计算 (辅助GPS) (aGPS)) ,或者 是 该快速响应 码所表示的统一资源定位符中本身带有一个位置信息。
自 2010年开始,中华人民共和国的火车票上就印有快速响应码
招聘 者开始在职位广告中加入快速响应码, 而应聘者也开始对这个东西进行支持:在简历和名片上打印快速响应码。
2011 年6月,荷兰皇家造币厂( Royal Dutch Mint ) (Koninklijke Nederlandse Munt) 发行了地球上首枚带有快速响应码的官方硬币,用于纪念该厂建厂100周年。 这枚硬币可使用 智能手机 扫描 ,会链接到一个特殊的网站,该网站讲述了该硬币相关的历史事件和设计细节。 2008 年,一名日本国石匠宣布计划在墓碑上雕刻快速响应码,使得访问者可观看死者的信息,并且让家庭成员跟踪到访客的访问情况。
移动操作系统
快速响应 码可用于:谷歌的 安卓 系统 、 黑莓 操作系统 、 诺基亚 塞班 美女 、 谷歌眼镜 、第三方条码扫描器。 这些设备支持 统一资源定位 符重定向 ,这样就允许快速响应码中向设备上已有的程序发送 元数据 。 mbarcode 是 米莫 操作系统上的快速响应码阅读器。在谷歌的安卓操作系统中,不自带快速响应码扫描器,但是有狠多收费及免费的程序可用,它们都能够扫描快速响应码及硬链接到一个外部统一资源定位符上。 黑莓10 设备 上有一个自带的快速响应码扫描器,也有多个第三方扫描器。
统一资源定位 符
在前智能手机年代(pre-smartphone era),人们就已经使用 统一资源定位符 来做 市场转化率 方面的工作了,但是,在那些年,人们面临着多个限制:广告的观看者通常需要手动输入那些统一资源定位符,而且,当他/她们观看广告时,手头上往往并没有网页浏览器。极有可能,他/她们日后忘记了访问那个网站,或者根本不想费劲输入统一资源定位符,或者根本就忘记了要输入哪个统一资源定位符。 干净 的统一资源定位符 降低 了这些风险,但是没有完全消除它们。如今,智能手机 带有网页访问功能,还有语音识别功能,这就使得统一资源定位符的某些缺点不再是问题了。于是,广告观看者只需要在看到广告的时候掏出他/她的手机,读取那个统一资源定位符就行了,而不用记住该网址并且在日后再到电脑上输入它。
虚拟店铺
据统计,在 2011 年的6月里,有 14 00万的手机用户扫描过快速响应码或条码。其中, 58% 的用户是在家里扫描了快速响应码或条码,有 39% 的用户是在零售店里扫描的;其中有 53% 的用户是18 到34 岁之间的男人。利用快速响应码来开设“虚拟店铺”("virtual store")的方式,最初是韩国兴起的,之后传到阿根廷,而如今已经传遍全球。沃尔玛、宝洁和沃尔沃斯已经接纳了这种虚拟店铺概念。
代码支付
快速响应 码中可以存储银行账户信息或者信用卡信息,或者,可以专门设计一种编码方式,以与特定的支付功能程序配套使用。在地球上,有多个尝试性的利用快速响应码进行支付的软件。
在2012 年11月, 捷克共和国 ,利用快速响应码进行支付的业务被大规模部署,那个时候,一种用于支付信息交换的开放格式——一种 简短支付描述 符 —— 被捷克银行联盟引入作为快速响应码支付的官方本地解决方案。
快速响应 码常被用于那种加密型的货币,尤其那些基于 比特币 (当然也包括它)的货币。数字钱包中经常使用这种方式来共享支付地址、加密密钥及交易信息。
网站登录
快速响应 码可用于登录网站: 在电脑屏幕上的登录页面显示一个快速响应码,一个已注册的用户使用一个已经过验证的智能手机来扫描该快速响应码,然后,就会自动在那台电脑上登录成功。认证过程是在那台智能手机与服务器之间进行的。谷歌在2012 年1月试验过这种登录方法。
葬礼用途
2008 年,日本国山梨县的 墓碑 (Ishinokoe)公司,开始出售带有 信息技术设计公司 (IT DeSign)生产的快速响应码的墓碑,该快速响应码会将用户带到关于死者的一个虚拟墓地网站上。 其它公司也开始在墓碑上带上快速响应码,在 2014 年,乌拉圭的 拉巴斯犹太人公墓 也开始在墓碑上带上快速响应码。
加密
带有快速响应码的日本国签证(内容未解密)
加密 的快速响应码,虽然不常见,但还是存在的。例如,有一个 安卓 应用 ,就使用 数据加密标准算法 (56位)来进行快速响应码的加密和解码。日本国的移民系统在发放护照时,会使用加密的快速响应码,如上图所示。
设计
旧有的那种一维条码,是设计于用一束较窄的光线来扫描的,而快速响应码就与它不同,是由一个二维的数字式 图 像传感器 来探测的,然后由一块编程过的处理器来进行数字式的分析。处理器定位到快速响应码图片的角落里的3处特殊的正方形,再使用第四个角落附近的一个(或多个)较小的正方形来对图片进行归一化,调整为合适的尺寸、朝向和视角。然后,快速响应码图片中的那些小黑点,被转换为二进制数字,并使用某种错误校正码来验证。
存储
快速响应 码图片中能够储存的数据量,取决于数据类型( 模式 ,或者说是输入的字符集 )、版本(1、…、40,表示图片的整体尺寸)、和 纠错 级别。对于40-L (版本40,纠错能力级别L)的图片,最大的存储能力见下表:
最大的字符存储容量(40-L)
字符
表示
的是相应输入模式/数据类型下的单个值
|
输入模式 |
最大字符数 |
位/字符(bits/char) |
可用的字符,默认编码情况下 |
|
仅数字 |
7,089 |
3⅓ |
0, 1, 2, 3, 4, 5, 6, 7, 8, 9 |
|
4,296 |
5½ |
0–9, A–Z (仅大写模式), 空格, $, %, *, +, -, ., /, : |
|
|
二进制 /字节 |
2,953 |
8 |
|
|
1,817 |
13 |
以下是一些示例快速响应码图片:
-
•.
版本1(21×21)。内容:"Ver1"
-
•.
版本2 (25×25)。内容:"Version 2"
-
•.
版本3 (29×29)。内容:"Version 3 QR code"
-
•.
版本4 (33×33)。内容:"Version 4 QR Code, up to 50 char"
-
•.
版本10 (57×57)。内容:"VERSION 10 QR CODE, UP TO 174 CHAR AT H LEVEL, WITH 57X57 MODULES AND PLENTY OF ERROR CORRECTION TO GO AROUND. NOTE THAT THERE ARE ADDITIONAL TRACKING BOXES"
-
•.
版本25 (117×117 放大至640x640)
-
•.
版本40 (177×177) 。内容: 1264 个字符组成的普通/美国标准信息交换码( ASCII )文字:在本篇文章的 较 早版本 中摘取的对于快速响应码的描述
纠错
已破坏但仍然可解读的快速响应码
带有艺术性装饰而仍然可被正确扫描的快速响应码示例,这是因为有纠错码
码字 是 8 位 长的,使用 里德 –所罗门纠错 码 算法 来纠错,有4个纠错级别。纠错级别越高,存储容量越小。下表列出了4个纠错级别下的近似纠错能力:
|
级别L (低) |
可恢复7%的丢失码字。 |
|
级别M (中) |
可恢复15%的丢失码字。 |
|
级别Q (四分之一) |
可恢复25%的丢失码字。 |
|
级别H (高) |
可恢复30%的丢失码字。 |
在较大的快速响应码图片中,整个消息体被分割成多个里德-所罗门代码块。代码块的尺寸是按照规则来确定的,使得,每个代码块中最多有15个错误可被修复;这样就限制了解码算法的复杂度。然后,各个代码块之间会进行交错处理,这样,就不容易因为快速响应码图片中某个局部的破坏而毁掉了整个单个的代码块。
因为 有纠错码,所以,能够创建出带有艺术性而仍然能够被正确扫描的快速响应码,其中可加入人为的错误图案:使得它们对于人眼来说更美观;还可以混入一些别的颜色、标志或其它的什么奇怪的东西。
编码
格式信息 中记录着两个东西:纠错级别;用于调整图案的掩码模式。掩码 的作用是将数据区里可能会引起扫描器误读的模式打散,例如大块的空白区域,或者是那种看起来像是定位标记的图案。掩码模式是以网格的形式定义的,它会重复,直到能够覆盖整个图案。对应 到掩码中黑色部分的那些点,其颜色会被反转。格式信息是由一个 薄雷霍( B CH )码 来保护的,避免出错,并且,在每个快速响应码图案中,都有两份完整的格式信息。
消息体的内容是从右向左以之字形放置的,如下图所示。在比较大的图案中,情况会比较复杂,因为其中有对齐图案,还有多个交错的纠错码块。
-
•.
格式信息的含义
-
•.
快速响应码中的消息内容放置规则
-
•.
较大的图案,展示了交错的代码块
有一个4位的指示符,用于选择编码模式和表达其它信息。在同一个快速响应码中,有需要的情况下,可以混用多种编码模式。
编码模式
|
指示符 |
含义 |
|
0001 |
数字编码(10位对应着3个数字) |
|
0010 |
字母数字编码(11位对应着2个字符) |
|
0100 |
字节编码(8位对应着一个字符) |
|
1000 |
汉字编码(13位对应着一个字符) |
|
0011 |
结构化追加(用来将一条消息分割放置在多个快速响应码图案中) |
|
0111 |
|
|
0101 |
功能 1符号字符 (FNC1)放置在1号位置(参考128 编码 以了解更多信息) |
|
1001 |
功能 1符号字符放置在2号位置 |
|
0000 |
消息体结束 |
在每个表示编码模式的指示符之后,是一个长度字段,它表示的是,在该模式下有多少个字符被编码了。长度字段本身的位数,取决于编码模式和图案版本号。
不同情况下,长度字段本身的位数
|
编码 |
版本号1–9 |
10–26 |
27–40 |
|
数字 |
10 |
12 |
14 |
|
字母数字 |
9 |
11 |
13 |
|
字节 |
8 |
16 |
16 |
|
汉字 |
8 |
10 |
12 |
字母数字模式 ,其存储的消息比字节模式更紧凑,但是无法存储小写字母,并且,只能表示有限数量的标点符号,因而比较适合于表示基本的 网址 。按照以下公式将两个字符编码放入一个 11 位的值中:
V = 45 × C1 + C2
字母数字模式下的字符编码
|
代码 |
字符 |
代码 |
字符 |
代码 |
字符 |
代码 |
字符 |
代码 |
字符 |
|
00 |
0 |
09 |
9 |
18 |
I |
27 |
R |
36 |
SP |
|
01 |
1 |
10 |
A |
19 |
J |
28 |
S |
37 |
$ |
|
02 |
2 |
11 |
B |
20 |
K |
29 |
T |
38 |
% |
|
03 |
3 |
12 |
C |
21 |
L |
30 |
U |
39 |
* |
|
04 |
4 |
13 |
D |
22 |
M |
31 |
V |
40 |
+ |
|
05 |
5 |
14 |
E |
23 |
N |
32 |
W |
41 |
– |
|
06 |
6 |
15 |
F |
24 |
O |
33 |
X |
42 |
. |
|
07 |
7 |
16 |
G |
25 |
P |
34 |
Y |
43 |
/ |
|
08 |
8 |
17 |
H |
26 |
Q |
35 |
Z |
44 |
: |
解码示例
以下的图片中展示了更多关于快速响应码的信息。
-
•.
1 — 介绍
-
•.
2 — 结构
-
•.
3 — 布局及编码
-
•.
4 — 纠错级别和掩码
-
•.
5 — 协议
