QR コードと錯視 - 人間の目とカメラはなぜ違うものを見るのか
人間の目が QR コードを「読めない」理由
人間は QR コードを見ても、そこに格納されたデータを読み取ることができません。白黒のパターンが何らかの情報を表していることは理解できても、そのパターンを数値に変換し、誤り訂正を適用し、元のテキストや URL を復元する処理は、人間の脳には不可能です。
これは一見当たり前のことですが、視覚科学の観点からは興味深い事実です。人間の視覚系は、文字 (アルファベット、漢字、アラビア数字) を瞬時に認識できます。これは、数千年にわたる文化的学習の蓄積です。一方、QR コードのパターンは 1994 年に発明されたばかりで、人間の視覚系がこのパターンを「読む」ように訓練される時間はまだ十分に経過していません。
理論的には、QR コードの仕様を完全に暗記し、白黒のパターンを目視で 2 進数に変換し、Reed-Solomon 符号の復号を暗算で行えば、人間でも QR コードを「読む」ことは可能です。しかし、バージョン 1 (21×21 モジュール) の最小の QR コードでさえ 441 個のモジュールを持ち、これを目視で正確に判読するのは、実用的には不可能に近いでしょう。
カメラが QR コードを「見る」仕組み
スマートフォンのカメラが QR コードを認識するプロセスは、人間の視覚とは根本的に異なります。カメラは画像をピクセルの配列として取得し、各ピクセルの輝度値を数値として処理します。
QR コードの認識は、大きく 4 つのステップで行われます。(1) ファインダーパターンの検出: 画像内から 3 つの入れ子正方形パターンを探し、QR コードの存在と位置を特定する。(2) 幾何学的補正: 撮影角度による歪み (台形歪み) を補正し、正面から見た状態に変換する。(3) モジュールのサンプリング: 補正後の画像を格子状に分割し、各セルの輝度値から白黒を判定する。(4) データの復号: 白黒のパターンをビット列に変換し、誤り訂正を適用してデータを復元する。
このプロセスで興味深いのは、ステップ (2) の幾何学的補正です。人間が斜めから QR コードを見ると、台形に歪んで見えますが、脳は「これは正方形のはずだ」と補正して認識します。カメラも同様の補正を行いますが、その方法は数学的な射影変換であり、人間の脳の補正メカニズムとはまったく異なります。同じ「歪みの補正」を、生物学的な神経回路とデジタルのアルゴリズムが、それぞれ独自の方法で実現しているのです。
錯視を利用したデザイン QR コード
人間の視覚系の特性を逆手に取り、「人間の目にはアートに見えるが、カメラには QR コードとして認識される」デザインが可能です。これは、人間の視覚とカメラの認識の違いを巧みに利用した錯視の応用です。
ヘルマン格子錯視の応用: 白い格子線の交差点に灰色の点が見える「ヘルマン格子錯視」は、QR コードのモジュール配列でも発生します。人間の目には白モジュールの交差点が灰色に見えることがありますが、カメラは輝度値を正確に測定するため、この錯視の影響を受けません。デザイナーはこの性質を利用して、人間の目には独特の視覚効果を持つが、カメラには正確に読み取れる QR コードを設計できます。
色の恒常性の利用: 人間の視覚系は、照明条件が変わっても物体の色を一定に知覚する「色の恒常性」を持っています。しかし、カメラのセンサーにはこの機能がなく、照明の色温度によって同じ物体の色が異なって記録されます。この違いを利用して、特定の照明条件下でのみスキャン可能な QR コードを設計することも理論的には可能です。
色覚多様性と QR コードのアクセシビリティ
日本人男性の約 5% (約 300 万人) は、色覚特性が多数派と異なる「色覚多様性」を持っています。赤と緑の区別が困難な P 型・D 型色覚の方にとって、赤い背景に緑のモジュールで構成された QR コードは、コントラストが極端に低く見え、「QR コードがあること自体に気づかない」可能性があります。
QR コードのアクセシビリティを確保するためには、色に依存しないコントラスト設計が重要です。具体的には、暗色モジュールと明色モジュールの輝度差 (明度コントラスト) を十分に確保し、色相の違いだけに頼らない設計にします。WCAG (Web Content Accessibility Guidelines) のコントラスト比 4.5:1 の基準は、QR コードのデザインにも応用できます。
最もアクセシブルな QR コードは、伝統的な黒と白の組み合わせです。黒と白のコントラスト比は 21:1 で、あらゆる色覚特性の方にとって最も識別しやすい組み合わせです。デザイン性を追求するあまり、アクセシビリティを犠牲にすることは避けるべきです。
QR コードが教えてくれる「見る」ことの不思議
QR コードは、人間の視覚とコンピュータビジョンの違いを日常的に体験できる、身近な教材です。同じ白黒のパターンを見ているのに、人間は「模様」としか認識できず、カメラは「データ」として読み取る。この違いは、「見る」という行為が単なる光の受容ではなく、高度な情報処理であることを教えてくれます。
人間の視覚系は、顔の認識、感情の読み取り、3 次元空間の把握など、カメラにはまだ困難なタスクを瞬時にこなします。一方、カメラは、QR コードの復号、微細なパターンの検出、一貫した輝度測定など、人間には不可能なタスクを正確に実行します。両者は「見る」という同じ行為を、まったく異なるアプローチで実現しているのです。
視覚科学や錯視の世界に興味がある方には、錯視に関する書籍がおすすめです。人間の視覚系がいかに巧妙で、同時にいかに騙されやすいかを、豊富な図版とともに体験できます。