今回は、「バーコードとQRコードの仕組み」についての説明です。
1.初めに
私たちの日常生活にはバーコード・QRコードという結構謎の多いものが浸透しています。
対応した読み取り機(リーダー)を用いることで情報を読み取っているであろうことはわかるのですが、どんな仕組みになっているのかまで理解できている人は少ないでしょう。
まあ、バーコードは何となくわかりそうですけども…。
今回は、そんなバーコードとQRコードの仕組みについてまとめていきます。
2.1次元コードと2次元コード
バーコードとQRコードの説明に入る前に、まずは1次元コードと2次元コードについての説明から入ります。
まず、1次元・2次元・3次元って何か知っていますか?
1次元なら1つの成分で構成された世界、2次元なら2つの成分で構成された世界、3次元なら3つの成分で構成された世界を表しています。
要するに、以下のようになります。
コードとは文字列や符号のことなので、1次元コードは線1本のみで表現された1方向にのみ情報を持つことができる文字列・符号、2次元コードは縦と横の2方向に情報を持つことができる平面上で表現された文字列・符号を指しているわけです。
この分類で言う1次元コードがバーコード、2次元コードがQRコードに当たります。
スーパーの商品でよく見かけるバーコードですが、よくよく思い返して見ると、バーコードリーダーの光って横一直線になっているでしょう?
アレって何となく平面に見えますけど、読み取り方向は実は横だけなんです。
縦方向の長さは別に重要ではないんですね。
2次元コードは横方向だけでなく縦方向にも情報を持てるようになるので、記録できる情報量が1次元コードと比較して飛躍的に増加します。
Excelのような格子状のセルの集まりのようなマトリクス状で文字を表現するので、記憶密度が高く、小さな面積により多くの情報を記録できるのが利点です。
他にも、位置補正機能が付いていたり、汚れなどによるある程度のデータの欠損は復元できたりと、多機能になっています。
このように、1次元コードと比べて様々な機能が追加されています。
その上省スペースです。
これだけメリットがあるなら二次元コードに完全に移行していまえば良いと感じるかもしれませんが、実際は未だに1次元コードが多く使われています。
その理由は、おそらくデータ欠損への対策かと思われます。
2次元コードは、ある程度のデータ欠損なら復元できます。
ですが、“ある程度”です。
あまり欠損し過ぎると、全く読み取れなくなります。
そして、読み取れなくなると復元は不可能で、どうしようもなくなるんです。
その点1次元コードは、横一直線さえ残っていれば情報としては充分ですし、仮にコードが欠損していてもコードの下に書かれている文字を手打ちすることで対応が可能です。
だから、スーパーのレジなどは1次元コードの方が都合が良いんですね。
もし2次元コードだったら、読み取れなかった時点でレジの動きが一旦止まることになりますから。
文字まで欠損するようなら1次元コードでも読み取れなくなるわけですが、そもそもそこまでコードが欠損する運用の方が問題ですので、そこまで考慮してあげる必要は無いでしょう。
3.バーコードとは?
バーコード[barcode]とは、バー(黒線)とスペース(白線)の組み合わせにより数字や文字や記号を表現したものです。
商品に必ずと言っていいレベルで付いているあの白黒の縞模様です。
バーコードに光を照射して、その光の反射から何と表示されているのかを読み取ります。
この読み取った文字列から、対象の製品情報などを照合するわけです。
このバーコードを読み取る機器はバーコードリーダー/バーコードスキャナと呼ばれています。
スーパーでレジの店員さんが使っているアレです。
最近はセルフレジも普及してきているので、自分で使ってみたことがあるという方は増えているでしょう。
バーコードには複数の種類があり、実は微妙に違いがあります。
数字だけ表現できるEAN(JAN)、数字・記号を表現できるNW-7、数字・記号・アルファベットを表現できるCODE39などです。
スーパーで見かけるバーコードは数字しか使われていないので、アルファベットや記号も表現できると知っている人は少なそうですね。
バーコードは、本文に当たるデータ部分の他に、データの始まりを表したり、読み取りが正常なのか確認するための文字も含まれています。
実際の構成は、以下のようになっています。
※バーコードの内容は適当なので、配置関係だけ意識してください。
ちなみに、文字を表現するバーとスペースは、細いバー(NB:ナローバー)・太いバー(WB:ワイドバー)・細いスペース(NS:ナロースペース)・太いスペース(WS:ワイドスペース)の4種類の組み合わせで表現されています。
4.QRコードとは?
QRコードの“QR”とは、[Quick Response]の略称です。
[response(応答)]が[quick(素早い)]なマトリクス型2次元コードのことです。
下図みたいなヤツですね。
マトリクス型というのは、Excelのような格子状のセルの集まりだと思ってください。
日常生活では、paypayなどの電子決済、ペットボトル飲料のラベル、チラシやパンフレット、トラックに直接描かれていたりなど、至る所に存在するので頻繁に見かける機会はあるかと思います。
工場でも入出庫管理・在庫管理・配送管理などによく利用されています。
1994年に株式会社デンソーウェーブによって開発され、2000年時点でISO規格/IEC規格に登録されています。
地味に日本発祥なんです。
QRコードのできること自体は一般的なバーコードと変わりません。
ただ、仕様や性能に大きな差があります。
QRコードの場合、以下のような仕様をしています。
- 作成や利用には面倒な手続きが一切不要。
- 仕様がオープンソースになっている。(一般公開されている)
- 英数字・カナ表示・漢字・文字など、様々なデータを扱える。
- 記録するデータの大容量化・高密度化。
- 省スペース。
- 汚れや破損に強く、読み取りエラーが少ない。
- 360°どの方向から読み取っても認識できる。
このような多くのメリットを持つので、世界的に幅広く利用されるようになっています。
白黒の正方形を最小単位としたセルを配置することであの模様ができていて、マイクロQRコードという17セル×17セルで構成された小さなタイプも存在します。
小さいと言っても17×17=289セルも使えるんですけどね。
2023年時点で一番よく見かけるのはQRコードのモデル2です。
モデル1に改良を加えてモデル2になっているのですが、モデル1とはそこまで違いがないように見えます。
ですが、モデル2ではアライメントパターンという位置補正機能が追加されているので実は見た目が変わっています。
モデル1とモデル2共に3つのコーナーにある位置検出用のパターン(ファインダパターンと言う)があるのは変わらないのですが、モデル2では残りの1コーナー方向に小さな正方形が必ず存在します。
これがアライメントパターンです。
よくよく考えると昔のQRコードにはこの小さな正方形は無かったはずなんですよ。
いつの間にかしれっと追加されていたので、気付いていない方は普通にいるかと思われます。
5.マイクロQRコードとは?
マイクロQRコードは、QRコードを更にマイクロ[micro(微細)]にしたものです。
下図みたいなヤツですね。
普通のQRコード(図3)と比較すると、明らかに小さくなっているでしょう?
先程述べたように、マイクロQRコードの場合は17セル×17セルで構成されています。
通常のQRコードは、3つのコーナーに位置検出用のパターン(ファインダパターン)がありますが、マイクロQRコードの場合はこれが1つになります。
ここだけ押さえておけば、少なくともQRコードとマイクロQRコードは見た目で判別可能です。
QRコード自体は1994年に株式会社デンソーウェーブによって開発されていて、マイクロQRコードは1997年に開発されました。
QRコードより小さくなるのでデータ量は減るものの、非常に小さいスペースでも印字が可能になっています。
その為、電子部品などの管理に利用されていることがあります。
日常生活では元々小さなQRコードでスペース問題は無いということがほとんどなので、あまり見かける機会はありません。
無いわけでは無いはずなのですが、どこで見たのか思い出せないんですよね…。
以上、「バーコードとQRコードの仕組み」についての説明でした。