こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在5社経験している、14年目エンジニアです。
この記事では、 QRコードの仕様について調べて自分なりにまとめてみました。
ご参考になれば幸いです。
そもそもQRコードって?
QRコードとは
こういうやつです。
お店の支払いで使ったり、商品の箱に印刷されていてURLが埋め込まれて読み込むとページに飛んだりといろんなところで使われています。
では、そもそもQRコードって何でしょう?
QRコードの「QR」とはQuick Responseの頭文字からとったものです。
訳すと
すばやく対応する
という意味、そのままで高速に読み取りを行うために設計されたものです。
QRコードは、1994年に日本の株式会社デンソーウェーブが開発しました。
日本で開発されたってのは、知らなかったのでびっくりしましたΣ(・ω・ノ)ノ!
で、なぜこんなにQRコードは一般的に広まっているかというと、デンソーウェーブが特許は取得しているものの仕様を無償でオープン化しているからです。
心意気がすばらしいですね~。
デンソーウェーブのリンクはこちらです。
QRコードの仕様
QRコードは何種類かありますが、この記事ではモデル2と呼ばれるものだけを書いていきます。
なぜかというと、QRコードのモデル2がISO/IEC18004で規格化されているからです。
ざっくり書くと、現代の日本のみならず世界で使われているQRコードがモデル2です。
なので、一般的に使っているQRコードは全部モデル2と言っても全然OK、と言っても差し支えないかなと考えてます。
モデル2は、位置検出パターンやタイミングパターンなどの構造が整っていて、最大7,089文字のデータを格納できるのが特徴です。
文字列のみが格納されているので、QRコードが作られたのが日本国内なのか日本国外なのかは判別できません。
そして見た目は、アライメントパターンという特徴もあります。
下の画像の赤枠部分です。
アライメントパターンは、読み取る精度を上げるために重要なものです。
- QRコードが汚れてしまった
- QRコードの画像が不鮮明
- スマホで斜めから見る時
という時でも、正確に読み取ることができる、すごい機能です。
QRコードの読み取りライブラリ
QRコードを読み取ることができるライブラリをいくつかご紹介します!
プログラム言語 | ライブラリ |
---|---|
Java | ZXing |
Python | Pyzbar |
JavaScript | zxing/library |
まとめ:QRコードの仕様を調べてみた
以上がQRコードの仕様を調べてみた!でした!
QRコードについて改めて調べてみると、すごい技術なんだなあと思いました!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント