QR Code 原理與結構完整解析
QR Code(Quick Response Code)是日本 Denso Wave 公司在 1994 年發明的二維條碼。從超市結帳到行動支付,從餐廳菜單到疫苗證明,QR Code 已經深入我們生活的每個角落。但你有沒有想過,那些黑白方塊究竟是如何編碼和解讀資訊的?
QR Code 的基本結構
一個標準的 QR Code 包含以下幾個關鍵區域:
1. 定位圖案(Finder Pattern)
QR Code 三個角落的大型正方形圖案,用來幫助掃描器快速定位 QR Code 的位置和方向。每個定位圖案是一個 7x7 的模組,由巢狀的黑白方塊組成。無論從哪個角度掃描,都能正確辨識。
2. 對齊圖案(Alignment Pattern)
較大的 QR Code(版本 2 以上)會包含額外的對齊圖案,幫助校正因印刷歪斜或表面彎曲造成的變形。
3. 時序圖案(Timing Pattern)
連接定位圖案的黑白交替線條,讓掃描器確定模組的座標位置。
4. 格式資訊(Format Information)
包含錯誤修正等級和遮罩模式的資訊,位於定位圖案附近。
5. 資料區域(Data Area)
QR Code 的主體部分,包含實際編碼的資料和錯誤修正碼。
重點摘要:QR Code 的巧妙之處在於,即使部分被遮蓋或損壞,仍然可以透過錯誤修正機制成功讀取。這得益於 Reed-Solomon 錯誤修正碼的強大能力。
QR Code 的版本
QR Code 有 40 個版本,從版本 1(21x21 模組)到版本 40(177x177 模組)。版本越高,能存儲的資料量越大:
| 版本 | 模組數 | 最大數字容量 | 最大英數容量 |
|---|---|---|---|
| 版本 1 | 21 x 21 | 41 | 25 |
| 版本 5 | 37 x 37 | 154 | 93 |
| 版本 10 | 57 x 57 | 652 | 395 |
| 版本 20 | 97 x 97 | 1,852 | 1,123 |
| 版本 40 | 177 x 177 | 7,089 | 4,296 |
錯誤修正等級
QR Code 使用 Reed-Solomon 錯誤修正碼,提供四個等級的容錯能力:
| 等級 | 代號 | 可修復比例 | 適用場景 |
|---|---|---|---|
| 低 | L | 約 7% | 乾淨環境,最大容量 |
| 中 | M | 約 15% | 一般用途(預設) |
| 四分之一 | Q | 約 25% | 較惡劣環境 |
| 高 | H | 約 30% | 嵌入 Logo、戶外使用 |
高等級的錯誤修正會佔用更多空間,因此同版本的 QR Code 在高容錯等級下能存儲的資料量會減少。
編碼模式
QR Code 支援多種資料編碼模式,會自動選擇最有效率的方式:
- 數字模式 — 每 3 個數字編碼為 10 位元
- 英數模式 — 每 2 個字元編碼為 11 位元(支援 0-9、A-Z、空格和部分符號)
- 位元組模式 — 每個位元組使用 8 位元(支援 UTF-8 等各種編碼)
- 漢字模式 — 每個漢字使用 13 位元(Shift JIS 編碼)
QR Code vs 傳統條碼
| 特性 | 傳統條碼(1D) | QR Code(2D) |
|---|---|---|
| 資料容量 | 約 20 個字元 | 最多 7,089 個數字 |
| 編碼方向 | 僅水平 | 水平 + 垂直 |
| 錯誤修正 | 無 | 最高可修復 30% |
| 掃描角度 | 必須水平對齊 | 360 度任意角度 |
| 資料類型 | 僅數字/文字 | 數字、文字、URL、二進位 |
結語
QR Code 看似簡單的黑白方塊,背後蘊含了精密的編碼理論和容錯設計。從 1994 年在汽車零件追蹤中誕生,到如今無處不在的數位橋梁,QR Code 的成功來自於它巧妙的技術設計和極高的實用性。
參考文獻
- ISO/IEC. "ISO/IEC 18004:2015 — QR Code bar code symbology specification." International Organization for Standardization, 2015. https://www.iso.org/standard/62021.html
- Denso Wave. "History of QR Code." Denso Wave Incorporated, 2024. https://www.qrcode.com/en/history/
- Reed, I. S. & Solomon, G. "Polynomial Codes Over Certain Finite Fields." Journal of the Society for Industrial and Applied Mathematics, vol. 8, no. 2, 1960, pp. 300-304.
- Wikipedia contributors. "QR code." Wikipedia, The Free Encyclopedia, 2025. https://en.wikipedia.org/wiki/QR_code