機械なぞ要らぬっ! 肉眼のみで解読するバーコード入門

読める……読めるぞ……?

» 2019年06月25日 07時45分 公開
[QuizKnockねとらぼ]

 以前、「肉眼のみで解読するQRコード講座」という記事を書いたことがあり、大きな反響をいただいた。

 QRコードは正方形の領域にデータを詰め込んだ2次元コードであり、横一列に白黒のパターンを並べたバーコードよりも多くの情報を表せる。

advertisement

 つまり、バーコードはQRコードよりも簡単に読めるはずであり、QRコードが肉眼で読めるんだから(?)バーコードを読むなんてどうってことないはずだ。

 肉眼で読んでやろうじゃないか、バーコードを!


基本用語「ガードパターン」「モジュール」

 実はバーコードにもいろいろな種類があるが、ここでは最も一般的な、商品の識別に用いられている「JANコード」を読んでみることにする。

 多くの場合、商品には13桁の数字がJANコードで表示されている(場合によっては8桁の短縮コードが用いられていることもある)。


ガードパターン

 バーコードを眺めてみると、左右と中央の3箇所に他よりも線が長くなっている部分があることが分かる。これを「ガードパターン」という。中央のガードパターンを境として、左側で6桁、右側でも6桁の数字を表す。



モジュール

 バーコードは線の幅が重要であり、最も細い幅(これを1モジュールと呼ぶ)を基準として7モジュールで1つの数字を表す。つまり、ガードパターンとガードパターンの間には7×6=42モジュール分の線が描かれていることになる。

advertisement

 バーコードを左から7モジュールずつ区切っていくと、必ず黒い線と白い線がそれぞれ2本ずつ含まれていることが分かるはずだ。白黒白黒の4つの領域の幅を読み取って、対応表から数字を復元していくことになる。



浮いたアイツにも意味がある

 ここで対応表を……といきたいところだが、ここまでの説明で矛盾する点がある。JANコードは13桁の数字なのに、6桁+6桁だと12桁しかないじゃん!


一番左の数字は特別

 今まで生きてきて気になっていた人も多いんじゃないだろうか、数字の一番左にいるちょっと浮いた数字。実はこの13桁の先頭1桁は、他の12桁とは少し違った表し方をされているのだ。



 左半分を7モジュールずつ区切った6ブロックについて、それぞれの黒の幅を足し合わせ、合計が奇数か偶数かを判定する。例えば、白黒白黒の線の並びのブロックで、それぞれの幅が3, 2, 1, 1であれば、黒の幅は2と1なので、和の3は奇数。

advertisement

 そして、黒が奇数モジュール分あるところをA、偶数モジュール分あるところをBとすれば、ABAABBのようにAとBの並びができる。この並びを読み取って、以下の対応表から先頭の1桁を決めるのだ。


A=奇数、B=偶数

 ちなみに、JANコードの最初の2桁は国コードで、日本ならば45か49と決まっている。つまり日本国内で買った商品のバーコードであれば、ほとんど4:ABAABBのパターンで並んでいると思って間違いない。


対応表さえあれば簡単に数字が分かる!

 さて、話を元に戻して、各ブロックを数字に変換するための表を示す。左半分と右半分、さらに左半分は黒のモジュール数の偶奇でパターンが変化するので、数字に対して3通りの表し方が存在する。


左半分にあって、2(黒),2(白),1(黒), 2(白)であれば、黒のモジュールは合計4なので、このブロックは表の真ん中を見ることになり、対応する数字は「2」

 白と黒の幅を読み取って、その並びを表に対応させるだけで、バーコードの中身が読み取れる。簡単!


答え合わせ

 ただし、残念ながらバーコードからデータを読み取るメリットはQRコードに比べて少ない。なぜなら普通はコードの下に数字が書いてあるから……。つまり答え合わせは、その数字を見ればできるのだ。良いんだ、肉眼解読はロマンなのだ……。

うん、数字書いてあるね……

制作協力

QuizKnock

Copyright © ITmedia, Inc. All Rights Reserved.

昨日の総合アクセスTOP10
  1. /nl/articles/2502/21/news157.jpg 希少性ガンで闘病中だったアイドル、死去 「言葉も発せないほどの痛み」母親が闘病生活を明かす
  2. /nl/articles/2502/21/news132.jpg コストコで販売「生カキ」原因で体調不良か…… 全国で1万食自主回収「深くお詫び」
  3. /nl/articles/2501/30/news115.jpg コストコで人気「ヨーグルト」に大腸菌群陽性の可能性…… メーカーなど謝罪「深くお詫び」 5万8000個自主回収
  4. /nl/articles/2502/21/news073.jpg 「行かねば!!!!!」 マクドナルド、次回ハッピーセットを“におわせ”…… “最恐”のコラボに「まじかーーー!」「これはたのしみ」
  5. /nl/articles/2502/20/news148.jpg 鮮魚店で売れ残ったタコ、自宅に連れ帰ると産卵して天国へ→母タコの代わりに卵をお世話したら…… とんでもない瞬間に「泣けました」
  6. /nl/articles/2502/21/news042.jpg コロコロよりも楽? 床に落ちた髪の毛 → ノンストレスで掃除できる“まさかの裏技”が「素晴らしすぎ」「神!!」
  7. /nl/articles/2502/20/news011.jpg 和菓子屋で、バイトの子に難題“はさみ菊”を切らせてみたら……「将来有望」と大反響 その後どうなった?現在を聞いた
  8. /nl/articles/2502/21/news145.jpg 「キスの会しよう」 華原朋美、高級接待した記者に“関係迫られる”トラブル 激怒の相手に5歳息子も怯え「あの人頭おかしいよ!」「ママやばい」
  9. /nl/articles/2502/21/news053.jpg 「助けて。息子がこれで幼稚園に行くってきかない」→まさかのアイテムに母困惑 「行かせましょう!」「控えめに言って最高」と反響
  10. /nl/articles/2502/21/news006.jpg 「3度見くらいした」 ハードオフに100円で売られていた“とんでもない掘り出し物”に仰天 「ガチでヤバい」
先週の総合アクセスTOP10
  1. 最初に軽く結ぶだけで…… 2000万再生された“マフラーの巻き方”に反響「これは使える」「素晴らしいアイデア」【海外】
  2. コメダ珈琲店で朝、ミックスサンドとコーヒーを頼んだら…… “とんでもない事態”に爆笑「恐るべし」「コントみたい」
  3. 「14歳でレコ大受賞」 人気アイドルがセクシー女優に転身した理由明かす 家族、メンバー、ファンの“意外な反応”
  4. 雑草ボーボーの荒れ地に“牛3頭”を放牧→2週間後…… まさかの光景に「感動しました」「いい仕事してますねぇ~!!」
  5. “この子はきっと中型犬サイズ”と思っていたら……たった半年後とんでもない姿に 「笑わせてもらいました」
  6. 年の差21歳で「夫は娘の同級生」 “両親大激怒”で結婚は猛反発されるも……“まさかの行動”で説得
  7. 163センチ、63キロの女性が「武器はメイクしかない」と本気でメイクしたら…… 驚きの仕上がりに「やっば、、」「綺麗って声でた」
  8. サイゼリヤ、メニュー改定で“大人気商品”消える 「ショック」悲しみの声……“代わりの商品”は評価割れる
  9. ママが反抗期の娘に作った“おふざけ弁当”がギミックてんこ盛りの怪作で爆笑 娘「教室全員が見に来た」
  10. 「さすがに無神経な内容」 “暴言受けた”伊藤友里が降板発表→岡田紗佳の直後の投稿に批判の声 Mリーガーも反応
先月の総合アクセスTOP10
  1. ドブで捕獲したザリガニを“清らかな天然水”で2週間育てたら…… 「こりゃすごい」興味深い結末が195万再生「初めて見た」
  2. 「配慮が足りない」 映画の入場特典で「おみくじ」配布→“大凶”も…… 指摘受け配給元謝罪「深くお詫び」
  3. 母「昔は何十人もの男性の誘いを断った」→娘は疑っていたが…… 当時の“モテ必至の姿”が1170万再生「なんてこった!」【海外】
  4. 風呂に入ろうとしたら…… 子どもから“超高難易度ミッション”が課されていた父に笑いと同情 「父さんはどのようにしてこのお風呂に入るのか」
  5. 母親から届いた「もち」の仕送り方法が秀逸 まさかの梱包アイデアに「この発想は無かった」と称賛 投稿者にその後を聞いた
  6. 市役所で手続き中、急に笑い出した職員→何かと思って横を見たら…… 衝撃の光景が340万表示 飼い主にその後を聞いた
  7. 「ごめん母さん。塩20キロ届く」LINEで謝罪 → お母さんからの返信が「最高」「まじで好きw」と話題に
  8. DIYで室温が約10℃変わった「トイレの寒さ対策」が310万再生 コスパ最強のアイデアへ「天才!」「これすごくいい」
  9. 「こんなおばあちゃん憧れ」 80代女性が1週間分の晩ご飯を作り置き “まねしたくなるレシピ”に感嘆「同じものを繰り返していたので助かる」
  10. 岡田紗佳、生配信での発言を謝罪 「とても不快」「暴言だと思う」「残念すぎ」と物議