富山大学 公開講座 2008 「QRコードを作ろう!」 ~ QRコードを作ろう! ~.

Slides:



Advertisements
Similar presentations
2009/11/10 10 進数と r 進数を相互に変換できる コンピュータのための数を表現できる 2進数の補数を扱える コンピュータにおける負の数の表現を説明で きる コンピュータでの演算方法を説明できる 文字や記号の表現方法を示せる 第7回 今日の目標 § 2.2 数の表現と文字コード.
Advertisements

効率的に計算可能な 加法的誤りの訂正可能性 安永 憲司 九州先端科学技術研究所 SITA 2012 @ 別府湾ロイヤルホテル
7章 情報の表現と基礎理論. 数の表現(書き方) 「数」と「数の書き方」をわけて考える 「数の書き方」と,「数そのものの性質」は別のもの 例:13 は素数・・・”13”という書き方とは無関係 ここでは書き方(表現方法)について考える 567.
Outlook メール文字化けの原因と対策 Exchange Server 環境編. 目次はじめに文字化けのよくある原因と回避策 1. A:半角英数字、ヨーロッパ言語などが混在した 文字化け B : 送信済みメールの宛先や CC の文字化け 2. 返信、転送時の、ユーザー名や件名の文字化け 3. 日本語が半角英数字に文字化け.
プログラミング言語論 第10回(演習) 情報工学科 木村昌臣   篠埜 功.
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
第2章 第2節 情報通信の効率的な方法 1 情報の容量と伝送の特性 2 データの圧縮 3 エラー検出とエラー訂正
第1節 コンピュータにおける 情報のあらわし方
『基礎理論』 (C)Copyright, Toshiomi KOBAYASHI,
数当てゲーム (「誤り訂正符号」に関連した話題)
LZ圧縮回路の設計とハード・ソフト 最適分割の検討 電子情報デザイン学科 高性能計算研究室 4回生 中山 和也 2009/2/27.
「情報」 (中村) オリジナル PPT (2010/05/07) 1 1.
情報処理の基礎 私たちとコンピュータの扱うデータの違い 明治学院大学 法学部消費情報環境法学科 鶴貝 達政
QRコード作って使ってみる 作成者: 川瀬 智美 川瀬智美ですよろしくお願いします ここにあるマークご覧になったことありますでしょうか?
情 報 の 表 現(3) 情報社会とコンピュータ 第10回.
[復習]通信路符号化の限界 通信路符号化定理(Shannonの第2符号化定理)
コードの歴史 ASCII(American Standard Code for Information Interchange)  ANSI ISO 646 = 95文字のラテン文字 アルファベット+数字+特殊文字 制御コード: LF, CR などの表示制御と   ACK,DEL などの通信制御 、など.
地理情報システム論 第3回 コンピュータシステムおける データ表現(1)
プログラミング論 II 2008年9月25日 誤り検出,訂正符号 ハミング符号
コンピュータ基礎実習上級 #11画像ファイルと文字のフォーマット
心理学情報処理法Ⅰ コンピュータにおけるデータ表現 マルチメディアとコンピュータ.
プログラミング言語論 プログラミング言語論 プログラミング言語論 演習1 解答と解説 演習1解答と解説 1 1.
情報のディジタル化 情報量の単位(bit) 文字 数値 アナログ情報.
キーボードでの指の位置と入力範囲 ◎左手の指のホームポジション(入力しないときの位置): 小指-「A」 薬指-「S」 中指-「D」 人差し指-「F」(突起あり) ◎右手の指のホームポジション: 人差し指-「J」 (突起あり) 中指-「K」 薬指-「L」 小指-「;」 ◎親指は「スペース」キーの上に置く。
アナログとディジタル 高校1年 社会と情報⑤.
2012年度 情報数理 ~ QRコードを作ろう!(1) ~.
2008年度 情報数理 ~ QRコードを作ろう!(1) ~.
日本大学 文理学部 情報システム解析学科 谷研究室 益田真太郎
システム開発実験No.7        解 説       “論理式の簡略化方法”.
プログラムはなぜ動くのか.
Outlook メール文字化けの原因と対策
補数 n:桁数、b:基数 bの補数 bn-x 253(10進数)の10の補数は、 =747
13 Microsoft Word(4) 13.1数式の入力 Microsoft 数式の起動
10.通信路符号化手法2 (誤り検出と誤り訂正符号)
情 報 A ー ディジタル化のしくみ ー.
2010年度 情報数理 ~ QRコードを作ろう!(1) ~.
ネットワークでかわる社会 第2節 ネットワークのしくみ②
コンピュータの原理 1E17M053-9 奈良 皐佑 1E17M070-7 師尾 直希        1E17M078-6 渡邊 惇.
データベース設計 第2回 データベースモデル(1)
コンピュータを知る 1E16M009-1 梅津たくみ 1E16M017-8 小沢あきら 1E16M035-0 柴田かいと
情報セキュリティ  第4回 メッセージ認証コード.
文字の表現.
巡回冗長検査CRC32の ハード/ソフト最適分割の検討
第4回 コンピューティングの要素と構成 平成22年5月10日(月)
Ibaraki Univ. Dept of Electrical & Electronic Eng.
文字エンコーディング 2010年7月.
QRコードを用いたIDカードに 適した電子透かし
2012年度 情報数理 ~ 様々なデジタル情報(1) ~.
暗号技術 ~暗号技術の基本原理~ (1週目) 情報工学科  04A1004 石川 真悟.
岡村耕二 ビット誤りと訂正 岡村耕二 情報ネットワーク.
9.通信路符号化手法1 (誤り検出と誤り訂正の原理)
生物情報ソフトウェア特論 (2)たたみ込みとハッシュに 基づくマッチング
アナログとデジタル.
データの表現 2進数 0と1を使う。 基数(基準になる数)が2. 101(2) かっこで2進数と示すことがある。
地理情報システム論(総)/ 国民経済計算論(商)
富山大学 公開講座 2008 「QRコードを作ろう!」 ~ ハミング距離 ~.
エラー訂正符号を含むシステム CD, DAT, MD, DVD, ディジタルVTR等 ディジタル(衛星)TV放送 ディジタル・セルラ
4.プッシュダウンオートマトンと 文脈自由文法の等価性
プログラムの開発手順 1.プログラム設計(仕様の決定) 2.コーディング(ソースファイルの作成) 3.アセンブル(オブジェクトファイル
データの改竄を防ぐ仕組み 2002/9/12 牧之内研究室「インターネット実習」Webページ
線形符号(10章).
分散メモリ型並列計算機上での行列演算の並列化
岡村耕二 ビット誤りと訂正演習 岡村耕二 情報ネットワーク.
2019年度 情報数理特論B ~ 様々なデジタル情報(1) ~.
復習 いろいろな変数型(2) char 1バイト → 英数字1文字を入れるのにぴったり アスキーコード → 付録 int
2008年度 情報数理 ~ 授業紹介 ~.
2012年度 情報数理 ~ 授業紹介 ~.
2012年度 情報数理 ~ ハミング距離 ~.
2010年度 情報数理 ~ ハミング距離 ~.
Presentation transcript:

富山大学 公開講座 2008 「QRコードを作ろう!」 ~ QRコードを作ろう! ~

QRコードの作成条件 ・モデル:2(推奨されている) ・型番:1(最小サイズ) ・誤り訂正レベル:L(復元率7%) ・マスクパターン:000(市松模様) ・モード指示子:1000(漢字モード) ■:位置検出パターン ■:タイミングパターン ■:形式情報 ■:データおよび誤り訂正コード語 □と■:固定 QRコードの構造 *型番1なので位置合せパターンはない

データの種類(モード指示子) 数字(モード指示子:0001) 0~9(数字) QRコードで扱える主なデータの種類は以下のとおりである。 数字(モード指示子:0001)  0~9(数字) 英数字(モード指示子: 0010)  0~9(数字),A~Z(アルファベット大文字)  スペース $ % * + - . / : 8ビットバイト(モード指示子: 0100)  0016~FF16   *ASCIIコード(制御キャラクタ,アルファベット,半角カタカナなど) 漢字(モード指示子: 1000)  814016(“ ”)~9FFC16(“條”)  E04616(“澁”)~EAA416(“熙”)  *シフトJISコード

QRコードのデータ構造 モード指示子 文字数 データ(情報) モード指示子 文字数 データ(情報) モード指示子 文字数 データ(情報) 終端パターン(0000) *次に解説するデータ圧縮と合わせて、全体のデータ列の長さが最小となるように基本データ列(モード指示子+文字数+データ)に最適化(分割)するのが望ましい

データの節約術(数字) 0(00002)~9(10012)を表すには4ビット必要である(無駄が多い) → 1文字あたり4ビット 0(00002)~9(10012)を表すには4ビット必要である(無駄が多い)  → 1文字あたり4ビット 210=1024 (000~999の数字列を表せる) 3文字を10ビットで表せる(無駄が少ない)  → 1文字あたり3.3ビット 27=128 (00~99の数字列を表せる) 2文字を7ビットで表せる(無駄が少ない)  → 1文字あたり3.5ビット

データの節約術(数字)の例 32ビット ⇒ 27ビット (5ビットお得) 28ビット ⇒ 24ビット (4ビットお得) 例1: 12345678 残りが2文字の場合は7ビットの2進数に変換 123 456 78 (3桁ごとに分割) 0001111011 0111001000 1001110 (各ブロックを10ビットの2進数に変換) 32ビット ⇒ 27ビット (5ビットお得) 例2: 1234567 残りが1文字の場合は4ビットの2進数に変換 123 456 7 (3桁ごとに分割) 0001111011 0111001000 0111 (各ブロックを10ビットの2進数に変換) 28ビット ⇒ 24ビット (4ビットお得)

データの節約術(漢字) 例: 幸 ⇒ 8D4B16 ⇒ 8D4B16 - 814016 ⇒ 0C 0B16 コンピュータは8ビットを1語として処理する 漢字は種類が多く、8ビット1語を基準にすれば、2バイト(16ビット)必要である  → 実際には13ビット(8192文字以下)で十分 例: 幸 ⇒ 8D4B16 ⇒ 8D4B16 - 814016 ⇒ 0C 0B16 ⇒ 0C16×C016 + 0B16 ⇒ 090B16 ⇒ 01001000010112 (13ビットで表す)

作成するデータ列 13ビットに圧縮された漢字コード列 漢字モード:10002 3文字なら:000000112 00002 モード指示子 文字数 データ(情報) 終端パターン 3文字なら:000000112 4文字なら:000001012 5文字なら:000001102 00002 *誤り訂正レベル L かつ 型番 1 の全体のデータ列は19バイトである。従って、上図のデータ列が19バイトに満たない場合は、埋め草コードを補って全体のコード列を19バイトにする

*符号語と符号語のハミング距離が十分でないとき、誤って別の符号語に誤り訂正されることを防ぐ 補足:復号誤りの低減 正しい符号語 別の符号語 *符号語と符号語のハミング距離が十分でないとき、誤って別の符号語に誤り訂正されることを防ぐ

マスク処理 マスク処理はデータおよび誤り訂正コード語の領域に排他的論理和の演算を施すことで行なわれる(形式情報を含む) j マスクは8種類あり、評価基準にしたがって減点法で採点され、一番得点の高いマスク処理が施される ・黒と白の比が1:1 ・特殊なパターンの出現を抑える ・黒(白)の連続配置を抑える j i マスクパターン:0000(市松模様)

マスクパターンの種類 000: (i+j) mod 2=0 001: i mod 2=0 010: j mod 3=0 100: ((i div 2)+(j div 3)) mod 2=0 101: (i*j) mod 2+(i*j) mod 3=0 110: ((i*j) mod 2+(i*j) mod 3) mod 2=0 111: ((i*j) mod 3+(i+j) mod 2) mod 2=0 “X mod 2”はXを2で割った剰余 “X div 3”はXを3で割った商 条件式が真であれば黒(1)で、偽であれば白(0)でマスクを施す

補足:排他的論理和 A B A B □ ■ A B A B 1 AとBが同じであれば白(0)、異なっていれば黒(1)

少しは間違えて塗ってもOK 誤りの検出と訂正は1バイト(8ビット)単位で行なわれるため(元々GF(28)の元である) 、左図のように8ビット毎に順に区切ったモジュールの組をブロックと呼ぶことにすれば、型番1で誤り訂正レベルがLのとき、2ブロック以内の間違いであれば正しく誤り訂正されデータを読み込むことができる。 言い換えれば、 2ブロックまでの誤りであれば誤り訂正機能によって正しいデータに誤り訂正される。 008 007 006 005 004 003 002 001

QRコード作成時の注意 モジュール(セル)が正方形になるように、サイズは必ず((型番×4+17)+4×2)の倍数にする モジュール(セル)の白黒がはっきりするように、GIF形式またはPNG形式で保存する(JPGで保存するとモジュールがぼやけるので、JPG形式では保存しない) あまり大きな型番のQRコードを作成しない  ⇒情報を減らすか、または分割する

QRコード加工時の注意 サイズが必ず((型番×4+17)+4×2)の倍数となるよう、単純(線形)に拡大縮小する 拡大縮小を繰り返した例 単純に拡大しなかった例

変り種QRコードを作ってみる(1)

変り種QRコードを作ってみる(2) 型番:6(41×41) 誤り訂正レベル:H(30%) データ数:60ブロック 誤り訂正コード語数:112ブロック (最大)誤り訂正数:56ブロック データおよび誤り訂正コード語の領域(60+112=172)の30%(56ブロック)以下の画像を重ね合わせる 56÷172=0.325・・・ 誤り訂正機能を犠牲にしたQRコード