2次元コード生成のための符号化演算支援装置、2次元コード生成装置およびプログラム
【課題】共通情報の文字列と個別情報の文字列とを含む2次元コードを生成して表示する装置の処理負荷を軽減する。
【解決手段】符号化演算支援装置1は、2次元コードパラメータと誤り訂正パラメータとを関連付けた変換表を記憶する記憶手段13と、共通情報の文字列を符号化してヘッダに繋げることで第1ビット列データを生成するヘッダ付加・データ符号化手段16と、変換表を参照して、入力された2次元コードパラメータCpに合致する誤り訂正パラメータを求めて誤り訂正計算手順を指定する誤り訂正符号化パラメータ変換手段17と、第1ビット列データのビット数のうち、指定された誤り訂正ブロックに該当するデータ符号D1について誤り訂正符号E1を算出する誤り訂正符号計算手段18と、データ符号D1と、誤り訂正計算されなかったビット列を示す余剰ビットB1と、誤り訂正符号E1と、2次元コードパラメータCpとを出力する出力手段19とを備える。
【解決手段】符号化演算支援装置1は、2次元コードパラメータと誤り訂正パラメータとを関連付けた変換表を記憶する記憶手段13と、共通情報の文字列を符号化してヘッダに繋げることで第1ビット列データを生成するヘッダ付加・データ符号化手段16と、変換表を参照して、入力された2次元コードパラメータCpに合致する誤り訂正パラメータを求めて誤り訂正計算手順を指定する誤り訂正符号化パラメータ変換手段17と、第1ビット列データのビット数のうち、指定された誤り訂正ブロックに該当するデータ符号D1について誤り訂正符号E1を算出する誤り訂正符号計算手段18と、データ符号D1と、誤り訂正計算されなかったビット列を示す余剰ビットB1と、誤り訂正符号E1と、2次元コードパラメータCpとを出力する出力手段19とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、2次元コード生成のための符号化演算支援装置、2次元コード生成装置およびプログラムに関し、特に、デジタル放送受信装置において2次元コードを生成する技術に関する。
【背景技術】
【0002】
現在、QRコード(登録商標)を初めとする2次元コードが広く普及・活用されている。また、QRコードの読み取り装置(QRコードリーダ)も携帯電話機をはじめとして広く普及している。例えば印刷されたQRコードを、携帯電話機の読み取り機能を用いて読み取れば、ユーザによる文書の手入力操作を省略することができる。
【0003】
例えば、データ放送(電子文書)を受信するデジタル放送受信装置(以下、単に受信機ともいう)やパーソナルコンピュータ等の電子文書表示デバイス内において、2次元コードの閲覧者に依存しない共通情報(複数の電子文書デバイスに共通な情報)の文字列および2次元コードの閲覧者や閲覧デバイス固有である個別情報の文字列を含む個別2次元コードを生成し電子文書表示デバイス上に表示する技術が提案されている(例えば、非特許文献1参照)。非特許文献1では、QRコードの内容の一部とする共通情報の文字列として、例えば、インターネット上に存在する放送事業者のサーバ等へアクセスするためのURL(Uniform Resource Locator)が想定されている。また、QRコードの内容の他の一部とする個別情報の文字列として、B-CASカード番号が想定されている。
【0004】
このような個別情報の文字列を想定している理由は、現在のデジタル放送では、B-CASカードを用いたアクセス制御を行っていることによる。B-CASカードは、受信機購入時に添付される形で、ユーザ(視聴者)に配布される。ユーザは、B-CASカードを入手する度に、放送事業者に対しB-CASカード番号登録(ユーザ登録)が必要となっている。放送事業者では、はがき、電話、インターネット、共通QRコード(1種類のQRコード)での登録を受け付けている。B-CASカード番号は、ほとんど連続性のない20桁の数字の羅列である。そのため、ユーザにとってみれば、いずれの方法でも容易な手続きとは言えないことが課題となっている。
【0005】
この課題を解決するために、放送事業者のサーバアドレスの一部(引数)として、B-CASカード番号などの受信機や視聴者固有の個別情報を含めたテキスト情報を、QRコードなどの2次元コードに変換し、インターネットを介して放送事業者に伝える方法が考えられる。非特許文献1に基づく方法により、表示制約の厳しいデータ放送上であっても、個別QRコードを表示することができる。
【0006】
ここで、従来の2次元コード生成処理の概要について図13を参照して説明する。例えば、共通情報の文字列と個別情報の文字列とを含むQRコードを、QRコード生成プログラムで生成する手順は次の通りである。電子文書表示デバイスの内部でQRコードを生成して画面表示させるには、まず、QRコードで実際に読み取らせたい内容を示すテキストを電子文書表示デバイスに入力する(S101)。読み取らせたい内容として、共通情報の文字列がURL、個別情報の文字列がカード番号の場合には、「http:// … 」等のテキストを入力することになる。
【0007】
次に、電子文書表示デバイスの内部で入力テキストを符号化する(S102)。これにより、例えば「http:// … 」等のテキストは、「100110 … 」のような2進表現のビット列(データコード語列)に変換される。次に、電子文書表示デバイスの内部で数値演算を実行する。まず、誤り訂正符号を計算し、付加する。QRコードは、データコード語列に付加する一連の誤り訂正コード語を生成するリードソロモン(RS)誤り訂正を備えている。そこで、電子文書表示デバイスの内部でRS誤り訂正符号(誤り訂正コード語)を計算により求め、データコード語列に付加する(S103)。
【0008】
さらに、電子文書表示デバイスの内部でマスク処理を行う(S104)。マスク処理は、明モジュールと暗モジュールとをバランスよく配置してQRコードを読み取り易くするために、符号化領域で与えられたモジュールパターン(ビット列のパターン)と、複数のマスクパターン(マスク処理マトリックスパターン)とで順にXOR(排他的論理和)による変換を行い、変換結果の評価により、マスクパターンとして最適なものを選定し、最適なマスクパターンを用いた場合のXOR演算結果を出力する処理である。なお、QRコードは、8種類のマスクパターン{0,…,7}を備えている。そして、電子文書表示デバイスは、生成したQRコードを出力する(S105)。例えば、シンボルとして構成したQRコード(QRコードシンボル)を画面に表示させることができる。
【0009】
データ放送上に個別QRコードを表示するときには、それを読み取った携帯電話機等の表示画面に表示される英数字等のテキストが約50文字以上になると考えられる。つまり、個別QRコードのデータサイズが比較的大きいため、QRコードシンボルのサイズも大きくなる。電子文書表示デバイスの性能によっては、個別QRコードを表示するまでの所要時間が長くなる。非特許文献1には、マスク処理において、最適なマスクパターンを予め選定しておく技術が開示されている。これにより、非特許文献1の技術では、電子文書表示デバイスが古い受信機などの計算資源の乏しい環境であっても、電子文書表示デバイス内でQRコードを高速にシンボル化することができる。なお、QRコードは、日本工業規格(JIS X 0510)で仕様が定められている。
【先行技術文献】
【非特許文献】
【0010】
【非特許文献1】川喜田裕之、外6名、「個別QRコード生成BMLプログラムの開発」、映像情報メディア学会技術報告、Vol.33、No.9、p.9-12、2009年
【発明の概要】
【発明が解決しようとする課題】
【0011】
放送局からデータ放送コンテンツのBML(Broadcast Markup Language)文書にQRコード等の2次元コード生成プログラムを組み込んで配信する場合には、視聴者が所有する受信機に応じて、個別QRコードを表示するまでの所要時間に差が生じる。これは、受信機の性能には、メーカ、型番、製造年によってばらつきがあるためである。非特許文献1の技術は、マスク処理を高速に行うことで、個別QRコードの表示までの時間を短縮できるが、受信機性能のばらつきを考慮すると、より多くの視聴者の利便性を高めるためには、さらなる時間短縮が望ましい。
【0012】
2次元コード生成処理において、高速化を阻害するような負荷が大きい処理は、誤り訂正符号の計算および付加処理であることが実験で確かめられている。個別QRコードは、URL等の共通情報と、カード番号等の個別情報とを内容に含むので、このうちURL等の共通情報に関しては放送局側で予め誤り訂正符号の計算および付加処理を行い、その処理結果を配信し、受信機の負荷を軽減する方法が考えられる。しかしながら、1つの個別QRコードを生成するために必要な誤り訂正符号の計算等の符号化演算処理を、複数の異なる装置間で、QRコード等の2次元コードの仕様に則って分担して行うという技術は開発されていなかった。
【0013】
本発明は、以上のような問題点に鑑みてなされたものであり、共通情報の文字列および個別情報の文字列を含む2次元コードを生成して表示する装置の処理負荷を軽減することを課題とする。
【課題を解決するための手段】
【0014】
前記課題を解決するために、請求項1に記載の符号化演算支援装置は、複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成し電子文書表示デバイス上に表示する2次元コード生成装置と、2次元コードパラメータに基づいて前記共通情報および個別情報の文字列の符号化および誤り訂正計算を行う符号化演算を支援する符号化演算支援装置とを備える2次元コード生成システムにおける前記符号化演算支援装置であって、前記2次元コードパラメータが、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含み、前記符号化演算支援装置が、記憶手段と、ヘッダ付加・データ符号化手段と、誤り訂正符号化パラメータ変換手段と、誤り訂正符号計算手段と、出力手段と、を備えることとした。
【0015】
かかる構成によれば、符号化演算支援装置は、記憶手段に、前記2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶している。ここで、2次元コードパラメータは、複数の誤り訂正ブロックを有する2次元コードの型に関するものなので、本来は2次元コード生成装置においてこれら複数の誤り訂正ブロックについて誤り訂正計算を行う必要があるが、符号化演算支援装置は、少なくとも1つの誤り訂正ブロックについて事前に誤り訂正計算を行う。また、2次元コードが例えばQRコードである場合には、2次元コードの型とは、型番および誤り訂正レベルを示し、誤り訂正ブロックとはRSブロックを示し、誤り訂正パラメータとはRSブロック数およびデータコード語数を示す。
【0016】
そして、符号化演算支援装置は、ヘッダ付加・データ符号化手段によって、前記共通情報の文字列の文字種のモードを符号化したモード指示子と、前記共通情報および個別情報の文字列の文字数の合計値を符号化した文字数指示子とを繋げてヘッダを生成し、前記文字種のモードで前記共通情報の文字列を符号化し、前記ヘッダに繋げることで第1ビット列データを生成する。つまり、この第1ビット列データは、ヘッダ情報と共通情報の文字列とを符号化したものである。
【0017】
そして、符号化演算支援装置は、誤り訂正符号化パラメータ変換手段によって、前記2次元コードパラメータを入力し、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記共通情報の文字列のデータ符号化後のビット数を算出すると共に、前記求めた誤り訂正パラメータから、前記第1ビット列データのビット数以下となるような最大の誤り訂正符号の誤り訂正ブロック数を算出し、各算出結果と前記求めた誤り訂正パラメータとにより誤り訂正計算手順を指定する。
【0018】
ここで、2次元コードパラメータの入力に合わせて共通情報の文字列を入力する。また、2次元コードが例えばQRコードである場合には、誤り訂正ブロック数とはRSブロック数なので、バイト単位で表された数値をビット数に容易に換算できる。ここで、誤り訂正計算手順とは、誤り訂正ブロック数が「1」である場合には、誤り訂正ブロックがどのくらいのサイズであるのかだけを通知することを表し、誤り訂正ブロック数が複数の場合には、さらに、先頭から何番目の誤り訂正ブロックまで誤り訂正計算を行うのかといった情報を通知することを表す。そして、符号化演算支援装置に入力される共通情報の文字列の文字数に依存する第1ビット列データのサイズは、誤り訂正ブロック単位になるとは限らないが、誤り訂正ブロックは、ヘッダから順に割り当てられる。そして、演算可能な誤り訂正ブロック数の最大値を算出し、事前に誤り訂正符号の計算をすることで、2次元コード生成装置の処理負荷をより軽減することができる。
【0019】
そして、符号化演算支援装置は、誤り訂正符号計算手段によって、前記第1ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する。前記したように誤り訂正ブロック数は、第1ビット列データのヘッダから順に割り当てられるので、共通情報の文字列に相当する終端部分については指定から外れて誤り訂正計算されない部分が生じる場合がある。この部分については2次元コード生成装置にて誤り訂正計算を行うこととする。
【0020】
そして、符号化演算支援装置は、出力手段によって、前記データ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記算出した誤り訂正符号と、前記2次元コードパラメータとを出力する。これにより、符号化演算支援装置が出力するデータおよびパラメータの各情報を2次元コード生成装置が取得し、符号化演算支援装置が用いたものと同じ2次元コードパラメータにより、個別情報の文字列の符号化および誤り訂正計算を行い、さらに余剰ビットの誤り訂正計算を行うだけで、共通情報の文字列の大部分の符号化演算を省略することができる。
【0021】
また、請求項2に記載の符号化演算支援装置は、請求項1に記載の符号化演算支援装置において、前記記憶手段が、前記共通情報の文字列の文字種モードと、前記2次元コードの型と、前記共通情報文字列の許容最小文字数と、前記個別情報文字列の許容最大文字数との情報を予め関連付けて作成された2次元コードパラメータ変換表をさらに記憶し、2次元コードパラメータ生成手段をさらに備えることとした。
【0022】
かかる構成によれば、符号化演算支援装置は、記憶手段に2次元コードパラメータ変換表をさらに記憶している。そして、符号化演算支援装置は、2次元コードパラメータ生成手段によって、前記共通情報の文字列の文字数と、前記個別情報の文字列の文字数と、前記共通情報の文字列の文字種のモードとの各情報を入力し、前記2次元コードパラメータ変換表を参照し、前記入力された各情報に合致する2次元コードの型を含む2次元コードパラメータを生成する。この生成された2次元コードパラメータは、ヘッダ付加・データ符号化手段や誤り訂正符号化パラメータ変換手段で利用される。このように、予め2次元コードパラメータ変換表を作成しておくことで、共通情報および個別情報の文字列の文字数と、文字種のモードとを指定するだけで、最適な2次元コードパラメータを選択し、入力された共通情報の文字列を符号化および誤り訂正計算を行うことができる。
【0023】
また、請求項3に記載の符号化演算支援装置は、請求項2に記載の符号化演算支援装置において、前記2次元コードパラメータ生成手段が、外部から、前記2次元コードの型の優先順位を取得し、前記入力された各情報に合致する2次元コードの型の候補が複数ある場合には、前記取得した優先順位にしたがって前記2次元コードパラメータを生成することとした。
【0024】
かかる構成によれば、符号化演算支援装置は、優先順位にしたがって2次元コードパラメータを生成するので、符号化演算支援装置の利用者が所望の基準で優先順位を指定することで、符号化演算支援装置の利用者の利便性を向上させることができる。例えば、用途に応じて、データサイズ、誤り訂正レベル、共通情報の文字数のいずれかにおいて、優先順位を割り当てることができる。
【0025】
また、請求項4に記載の符号化演算支援装置は、請求項1に記載の符号化演算支援装置において、2次元コードパラメータ入力手段をさらに備えることとした。
【0026】
かかる構成によれば、符号化演算支援装置は、2次元コードパラメータ入力手段によって、外部から前記2次元コードパラメータを入力する。例えば、共通情報および個別情報の文字列の文字数が固定された専用の個別2次元コードを生成するといった用途の場合には、外部から2次元コードパラメータを入力するだけの簡易構成とすることができる。
【0027】
また、請求項5に記載の符号化演算支援プログラムは、複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードの生成過程で行う文字列の符号化および誤り訂正計算を行う符号化演算を支援するために、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含む2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段を備えたコンピュータを、ヘッダ付加・データ符号化手段、誤り訂正符号化パラメータ変換手段、誤り訂正符号計算手段、出力手段として機能させることとした。
【0028】
かかる構成によれば、符号化演算支援プログラムは、ヘッダ付加・データ符号化手段によって、前記共通情報の文字列の文字種のモードを符号化したモード指示子と、前記共通情報および個別情報の文字列の文字数の合計値を符号化した文字数指示子とを繋げてヘッダを生成し、前記文字種のモードで前記共通情報の文字列を符号化し、前記ヘッダに繋げることで第1ビット列データを生成する。
【0029】
そして、符号化演算支援プログラムは、誤り訂正符号化パラメータ変換手段によって、前記2次元コードパラメータを入力し、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記共通情報の文字列のデータ符号化後のビット数を算出すると共に、前記求めた誤り訂正パラメータから、前記第1ビット列データのビット数以下となるような最大の誤り訂正符号の誤り訂正ブロック数を算出し、各算出結果と前記求めた誤り訂正パラメータとにより誤り訂正計算手順を指定する。
【0030】
そして、符号化演算支援プログラムは、誤り訂正符号計算手段によって、前記第1ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する。
【0031】
そして、符号化演算支援プログラムは、出力手段によって、前記データ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記算出した誤り訂正符号と、前記2次元コードパラメータとを出力する。
【0032】
前記課題を解決するために、請求項6に記載の2次元コード生成装置は、複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成し電子文書表示デバイス上に表示する2次元コード生成装置と、2次元コードパラメータに基づいて前記共通情報および個別情報の文字列の符号化および誤り訂正計算を行う符号化演算を支援する符号化演算支援装置とを備える2次元コード生成システムにおける前記2次元コード生成装置であって、前記2次元コードパラメータが、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含み、前記2次元コード生成装置が、記憶手段と、個別情報入力手段と、データ・パラメータ入力手段と、データ符号化・余剰ビット付加手段と、誤り訂正符号化パラメータ変換手段と、誤り訂正符号計算手段と、2次元コード化手段とを備えることとした。
【0033】
かかる構成によれば、2次元コード生成装置は、記憶手段に、前記2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する。そして、2次元コード生成装置は、個別情報入力手段によって、前記個別情報を入力する。ここで、個別情報は、2次元コード生成装置で生成される2次元コードの閲覧者や電子文書表示デバイス固有の情報である。
【0034】
そして、2次元コード生成装置は、データ・パラメータ入力手段によって、前記符号化演算支援装置で生成されたデータおよびパラメータとして、前記共通情報の文字列を符号化してヘッダに繋げた第1ビット列データのビット数のうち、予め指定された誤り訂正ブロックに該当するデータを示すデータ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記データ符号から算出された誤り訂正符号と、前記2次元コードパラメータとを入力する。
【0035】
そして、2次元コード生成装置は、データ符号化・余剰ビット付加手段によって、前記入力された個別情報を符号化し、前記余剰ビットに繋げることで第2ビット列データを生成する。つまり、この第2ビット列データは、共通情報の文字列の終端部分と、個別情報の文字列とを符号化したものである。そして、2次元コード生成装置は、誤り訂正符号化パラメータ変換手段によって、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記求めた誤り訂正パラメータにより誤り訂正計算手順を指定する。なお、2次元コードパラメータは、複数の誤り訂正ブロックを有する2次元コードの型に関するものなので、符号化演算支援装置の側で発生した余剰ビットを2次元コード生成装置の側で追加することで、全体で見れば、誤り訂正ブロック単位で誤り訂正計算を行っていることになる。
【0036】
そして、2次元コード生成装置は、誤り訂正符号計算手段によって、前記第2ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する。そして、2次元コード生成装置は、2次元コード化手段によって、前記入力された2次元コードパラメータ、データ符号および誤り訂正符号と、前記第2ビット列データに含まれるデータ符号および前記算出された誤り訂正符号とを用いて前記2次元コードを生成する。これにより、2次元コード生成装置は、誤り訂正計算の演算に関しては、2次元コードに含まれる共通情報の文字列と個別情報の文字列とのうち、余剰ビットに相当する共通情報の一部と個別情報とについて行うだけで済む。つまり、共通情報の文字列の大部分の誤り訂正計算を省略することができる。そのため、計算資源の乏しいBMLやHTML(Hyper Text Markup Language)等の電子文書を閲覧するための電子文書表示デバイス上で、高速に2次元コードを生成・表示することができる。
【0037】
また、請求項7に記載の2次元コード生成プログラムは、複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成するために、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含む2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段を備えたコンピュータを、個別情報入力手段、データ・パラメータ入力手段、データ符号化・余剰ビット付加手段、誤り訂正符号化パラメータ変換手段、誤り訂正符号計算手段、2次元コード化手段として機能させることとした。
【0038】
かかる構成によれば、符号化演算支援プログラムは、個別情報入力手段によって、前記個別情報を入力する。そして、符号化演算支援プログラムは、データ・パラメータ入力手段によって、入力データおよび入力パラメータとして、前記共通情報の文字列を符号化してヘッダに繋げた第1ビット列データのビット数のうち、予め指定された誤り訂正ブロックに該当するデータを示すデータ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記データ符号から算出された誤り訂正符号と、前記2次元コードパラメータとを入力する。
【0039】
そして、符号化演算支援プログラムは、データ符号化・余剰ビット付加手段によって、前記入力された個別情報を符号化し、前記余剰ビットに繋げることで第2ビット列データを生成する。そして、符号化演算支援プログラムは、誤り訂正符号化パラメータ変換手段によって、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記求めた誤り訂正パラメータにより誤り訂正計算手順を指定する。
【0040】
そして、符号化演算支援プログラムは、誤り訂正符号計算手段によって、前記第2ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する。そして、符号化演算支援プログラムは、2次元コード化手段によって、前記入力された2次元コードパラメータ、データ符号および誤り訂正符号と、前記第2ビット列データに含まれるデータ符号および前記算出された誤り訂正符号とを用いて前記2次元コードを生成する。
【発明の効果】
【0041】
請求項1に記載の発明によれば、符号化演算支援装置は、共通情報の文字列の大部分およびヘッダ情報を符号化したデータ符号と、その誤り訂正符号と、符号化演算に利用した2次元コードパラメータと、共通情報の文字列の一部分に相当する余剰ビットとを出力する。したがって、これらの出力情報を利用すれば、2次元コードを生成して表示する2次元コード生成装置の処理負荷を軽減することができる。
【0042】
請求項2に記載の発明によれば、符号化演算支援装置は、予め作成された2次元コードパラメータ変換表を備えているので、共通情報および個別情報の文字列の文字数と、文字種のモードとを指定するだけで、最適な2次元コードパラメータを選択することができる。
【0043】
請求項3に記載の発明によれば、符号化演算支援装置は、優先順位にしたがって2次元コードパラメータを生成するので、符号化演算支援装置の利用者の利便性を向上させることができる。
【0044】
請求項4に記載の発明によれば、符号化演算支援装置は、2次元コードパラメータを外部から入力するので、装置内部で生成する場合に比べて簡易な構成とすることができる。
【0045】
請求項5に記載の発明によれば、符号化演算支援プログラムは、共通情報の文字列の大部分およびヘッダ情報を符号化したデータ符号と、その誤り訂正符号と、符号化演算に利用した2次元コードパラメータと、共通情報の文字列の一部分に相当する余剰ビットとをコンピュータに出力させる。したがって、これらの出力情報を利用すれば、2次元コードを生成して表示する2次元コード生成装置の処理負荷を軽減することができる。
【0046】
請求項6に記載の発明によれば、2次元コード生成装置は、符号化演算支援装置から出力されるデータ符号と、その誤り訂正符号と、2次元コードパラメータと、余剰ビットとを利用することで、共通情報の文字列の大部分の誤り訂正計算を省略することができるので、処理負荷を軽減することができる。
【0047】
請求項7に記載の発明によれば、2次元コード生成プログラムは、共通情報の文字列の大部分とヘッダ情報とを符号化したデータ符号と、その誤り訂正符号と、2次元コードパラメータと、余剰ビットとを利用することで、共通情報の文字列の大部分の誤り訂正計算を省略することができるので、コンピュータの処理負荷を軽減させることができる。
【図面の簡単な説明】
【0048】
【図1】本発明の第1実施形態に係る符号化演算支援装置の構成を示すブロック図である。
【図2】本発明の実施形態に係る2次元コード生成装置の構成を示すブロック図である。
【図3】本発明の第1実施形態に係る2次元コード生成システムの処理の概要を示すフローチャートである。
【図4】本発明の第1実施形態に係る2次元コード生成システムにて生成する2次元コードの使用例を模式的に示す説明図である。
【図5】本発明の第1実施形態に係る2次元コード生成システムを適用したデジタル放送システムの構成を模式的に示すブロック図である。
【図6】図1に示す符号化演算支援装置で参照する変換表の一例であって、(a)は2次元コードパラメータ変換表、(b)は誤り訂正符号化パラメータ変換表をそれぞれ示している。
【図7】本発明の第1実施形態に係る2次元コード生成システムの処理例であって、(a)は共通情報および個別情報、(b)は放送局側の処理、(c)は受信機側の処理をそれぞれ示している。
【図8】本発明の第2実施形態に係る符号化演算支援装置の構成を示すブロック図である。
【図9】本発明の第3実施形態に係る符号化演算支援装置の構成を示すブロック図である。
【図10】本発明の第3実施形態に係る2次元コード生成システムの処理の概要を示すフローチャートである。
【図11】本発明の第4実施形態に係る2次元コード生成システムの処理の概要を示すフローチャートである。
【図12】本発明の第5実施形態に係る2次元コード生成システムの処理の概要を示すフローチャートである。
【図13】従来の2次元コード生成処理の概要を示すフローチャートである。
【発明を実施するための形態】
【0049】
以下、本発明に係る符号化演算支援装置、2次元コード生成装置およびデジタル放送送信装置を実施するため形態(以下「実施形態」という)について図面を参照して詳細に説明する。以下では、説明の都合上、符号化演算支援装置および2次元コード生成装置を備える2次元コード生成システムの第1実施形態、この2次元コード生成システムをデジタル放送システムに適用する場合のデジタル放送送信装置の実施形態、2次元コード生成システムの第2ないし第5実施形態を順次説明することとする。
【0050】
(第1実施形態)
2次元コード生成システムは、図1に示す符号化演算支援装置1および図2に示す受信機(2次元コード生成装置)2を備える。
2次元コード生成装置2は、共通情報の文字列および個別情報の文字列を含む2次元コードを生成し電子文書表示デバイス上に表示するものである。
符号化演算支援装置1は、2次元コードパラメータに基づいて共通情報および個別情報の文字列の符号化および誤り訂正計算を行う符号化演算を支援するものである。
これら符号化演算支援装置1および2次元コード生成装置2は、例えば、CPU等の演算装置と、メモリ、ハードディスク等の記憶装置(記憶手段)と、マウスやキーボード等の外部から情報の入力を検出する入力装置と、外部との各種情報の送受信を行うインタフェース装置と、LCD(Liquid Crystal Display)等の表示装置を備えたコンピュータと、このコンピュータにインストールされたプログラムとから構成される。
【0051】
以下では、2次元コードがQRコードであるものとして説明する。
ここで、第1実施形態に係る2次元コード生成システムの処理の概要について図3を参照(適宜図13参照)して従来の方法と比較しながら説明する。従来の方法との大きな相違点は、入力テキストの符号化の処理と、RS(リードソロモン)誤り訂正符号の計算・付加の処理とを、符号化演算支援装置1および2次元コード生成装置2で分担して実行するようにしたことである。
【0052】
ただし、RS誤り訂正符号の計算・付加の処理は、所定のビット数で表されるRSブロック(誤り訂正ブロック)毎に行う処理であるため、RSブロック数が「1」の場合には、2つの装置で分担することはできないので、対象外とする。したがって、第1実施形態に係る2次元コード生成システムでは、複数のRSブロックが規定された2次元コードを対象とする。なお、RSブロック数が「1」であるQRコードの型は、QRコードの仕様を規定した日本工業規格(JIS X 0510)の表12に示すように、1-L型、1-M型、1-Q型、1-H型、2-L型、2-M型、2-Q型、2-H型、3-L型、3-M型、4-L型、5-L型だけである。ここで、L,M,Q,Hは、誤り訂正レベルのパラメータであり、この順に誤り訂正能力が高くなる。また、1,2,3,4,5は、QRコードのサイズを示す型番のパラメータである。JIS X 0510では、型番は「40」まで、RSブロック数は「81」まで規定されている。
【0053】
例えば、共通情報の文字列と個別情報の文字列とを含むQRコードを電子文書表示デバイスに表示するために、QRコード生成プログラムで生成する手順は次の通りである。
まず、符号化演算支援装置1において、QRコードの内容の一部として読み取らせたい共通情報の内容を示すテキスト(共通情報テキスト)を入力する(S11)。読み取らせたい内容として、共通情報の文字列がURLの場合には、「http:// … 」等のテキストを入力することになる。
【0054】
次に、符号化演算支援装置1は、入力テキストを符号化する(S12)。これにより、例えば「http:// … 」等のテキストは、「100110 … 」のような2進表現のビット列(データコード語列)に変換される。さらに、詳細は後記するが、このビット列を、文字種のモードと文字数とを符号化したヘッダに繋げたビット列を生成する(これを第1ビット列データという)。
【0055】
そして、符号化演算支援装置1は、第1ビット列データのRSブロックに対してRS誤り訂正符号(誤り訂正コード語)を計算により求め、第1ビット列データに付加する(S13)。ここで、詳細は後記するが、第1ビット列データのビット列がRSブロック数(ビット列)単位にならない場合には、第1ビット列データの終端部分についてはRS誤り訂正計算がなされない。
【0056】
そして、符号化演算支援装置1は、第1ビット列データのRS誤り訂正計算を行った部分を示すデータ符号D1と、そのRS誤り訂正符号E1とをQRコードの一部の情報(これを部分的なQRコードという)として、符号化演算に用いたパラメータと共に出力する(S14)。本実施形態では、符号化演算に用いたパラメータの1つとして、第1ビット列データのうちRS誤り訂正計算がなされなかった終端部分のビット列を示す余剰ビットの情報を含めることとした。
【0057】
また、本実施形態では、部分的なQRコードとは、QRコードの一部の情報を含むものであって、データ符号D1とそのRS誤り訂正符号E1とにより「100110 … 」のような2進表現のビット列で表されるものであって、シンボルとしては構成せずに出力することとしている。つまり、符号化演算支援装置側のS13で図示したシンボルと、受信機側のS23で図示したシンボルとの2つの情報を合わせることで、受信機側のS25でQRコードシンボルが完成することを概念的に示すものである。なお、符号化演算支援装置1において、シンボルとして構成して出力するようにしてもよい。
【0058】
次に、受信機(2次元コード生成装置)2において、QRコードの内容の一部として読み取らせたい個別情報の内容を示すテキスト(個別情報テキスト)を入力する(S21)。読み取らせたい内容として、受信機やその利用者の個別情報の文字列が数字の場合には、「521234 … 」等のテキストを入力することになる。
【0059】
そして、例えば、符号化演算支援装置1から部分的なQRコードおよびパラメータを取得すると、受信機(2次元コード生成装置)2は、入力テキストを符号化する(S22)。これにより、例えば「521234 … 」等のテキストは、「100110 … 」のような2進表現のビット列(データコード語列)に変換される。さらに、詳細は後記するが、受信機(2次元コード生成装置)2は、このビット列を、符号化演算支援装置1から取得した余剰ビットに繋げたビット列を生成する(これを第2ビット列データという)。
【0060】
そして、受信機(2次元コード生成装置)2は、第2ビット列データのRSブロックに対してRS誤り訂正符号(誤り訂正コード語)を計算により求め、第2ビット列データに付加する(S23)。ここで、第2ビット列データのRS誤り訂正計算を行った部分を示すデータ符号をD2、そのRS誤り訂正符号をE2とする。
【0061】
そして、受信機(2次元コード生成装置)2は、自装置で算出したデータと、符号化演算支援装置1から取得したデータとを合わせて2次元コード化処理を行う(S24)。詳細は後記するが、データ符号D1およびRS誤り訂正符号E1と、データ符号D2およびRS誤り訂正符号E2とに対して、並び替え処理を行った上で、マスク処理を行う。そして、受信機(2次元コード生成装置)2は、ビット列の「0」に白、「1」に黒を割り当てたQRコードを出力する(S25)。これにより、QRコードシンボルが電子文書表示デバイスに表示される。
【0062】
前記説明では、符号化演算支援装置1と2次元コード生成装置2とを一般化して説明したが、この2次元コード生成システムは、例えばデジタル放送システムに適用することができる。この場合には、符号化演算支援装置1は、放送局で使用され、部分的なQRコードは、パラメータと併せて放送される。また、受信機(2次元コード生成装置)2は、視聴者宅で使用されることになる。デジタル放送のデータ放送により、部分的なQRコードと、QRコード生成プログラムとを配信する概念図を図4に示す。放送事業者は、CGI(Common Gateway Interface)やPHP(Hypertext Preprocessor)といったサーバを用意し、視聴者のユーザ登録等を管理する。また、このときのデジタル放送システムのデジタル放送送信装置やデジタル放送受信装置は、図5に示すような機能ブロック図で構成され、符号化演算支援装置1や2次元コード生成装置2を備える。なお、デジタル放送送信装置やデジタル放送受信装置の構成の詳細は後記する。
図1に戻って、符号化演算支援装置1の詳細な構成について説明する。
【0063】
[符号化演算支援装置の構成]
符号化演算支援装置1は、ハードウェア装置とソフトウェアとが協働することによって、前記したハードウェア資源がプログラムによって制御されることにより実現され、図1に示すように、共通情報入力手段11と、個別情報文字数入力手段12と、記憶手段13と、仮個別情報付加手段14と、2次元コードパラメータ生成手段15と、ヘッダ付加・データ符号化手段16と、誤り訂正符号化パラメータ変換手段17と、誤り訂正符号計算手段18と、出力手段19とを備えている。
【0064】
<共通情報入力手段>
共通情報入力手段11は、共通情報の文字列(共通情報テキスト)を入力するものである。また、共通情報入力手段11は、共通情報の文字種のモードも入力することとした。ここで入力された共通情報の文字列(共通情報テキスト)と文字種のモードとは、2次元コードパラメータ生成手段15および仮個別情報付加手段14に出力される。
【0065】
共通情報入力手段11に入力される共通情報の文字数には、次の制限がある。すなわち、その文字列のデータ符号化後のビット数を、誤り訂正符号計算手段18で誤り訂正符号を計算するビット数(=RSブロックのビット数)以上とするような文字数でなければならない。例えば、QRコードで、{型番3,誤り訂正レベルQ,英数字モード}の場合、図6(a)に示すように、共通情報の最小文字数は、24文字である。
【0066】
具体例として、共通情報と仮個別情報とを含む入力テキストを図7(a)に示す。この例では、QRコードのver(型番)が3で、誤り訂正レベルがQ、英数字モードを想定した。図7(a)に符号701で示す"http://k.nhk.jp/cas.cgi/"(24文字)は、共通情報入力手段11から入力される共通情報の文字列を示す。
【0067】
ここで、使用する共通情報の文字数が、もしも足りない場合には、任意の文字列を足せばよい。なお、使用する共通情報の文字列が、例えば、URLのようなケースでは、不足分の文字を補った後であっても、所望のアドレスにアクセスできるように文字列を足す必要がある。
【0068】
<個別情報文字数入力手段>
個別情報文字数入力手段12は、受信機(2次元コード生成装置)2で符号化される個別情報の文字列と同じ文字数の値を入力するものである。入力された文字数の値は、仮個別情報付加手段14および2次元コードパラメータ生成手段15に出力される。
具体的には、図7(a)に符号702で示す"12345678901234567890123"(23文字)は仮個別情報の文字列を示す。ここで、仮個別情報とは、真の個別情報ではない。一般には、符号化演算支援装置1(放送局)においては、受信機(2次元コード生成装置)2の個別情報の値が不明であるが、その個別情報の文字列の文字数は既知であるものとする。後記するように、符号化演算支援装置1(放送局)では、共通情報と個別情報との文字列の文字数の合計値(この場合には47文字)については、ヘッダ情報とする必要がある。そのために、説明上、符号702で示す仮個別情報を示した。
【0069】
<記憶手段>
記憶手段13は、メモリやハードディスク等の記憶装置から構成され、入力された情報やCPU等の処理結果を一時記憶したり、動作プログラムを格納したりするものである。
この記憶手段13は、2次元コードパラメータ変換表と、誤り訂正符号化パラメータ変換表とを記憶することとした。
【0070】
≪2次元コードパラメータ変換表≫
2次元コードパラメータ変換表は、共通情報の文字列の文字種モードと、2次元コードの型と、共通情報文字列の許容最小文字数と、個別情報文字列の許容最大文字数との情報を予め関連付けて作成されたものである。ここで、2次元コードの型とは、QRコードの「型番(バージョン)」とQRコードの「誤り訂正レベル」とを合わせたものである。また、共通情報の文字列の文字種モードと、データ符号化のモードとは同じことを意味する。共通情報の文字列の文字種モードが“英数字モード”である場合の一例を図6(a)に示す。文字種モードによってデータ容量は異なる。例えば、3-Q型のQRコードの場合には、英数字モードで「47文字」、数字モードで「77文字」、8ビットバイトモードで「32文字」、漢字モードで「20文字」と定められている。
【0071】
また、図6(a)の「最小共通情報文字数」は、共通情報の文字列として許容できる最小の文字数を示し、「最大個別情報文字数」は、個別情報の文字列として許容できる最大の文字数を示す。これらは相補関係にある。例えば、3-Q型の場合、最小共通情報文字数」=24と、「最大個別情報文字数」=23とを合計すると、英数字モードのデータ容量「47文字」と等しい。つまり、共通情報の文字列の文字数と、個別情報の文字列の文字数との合計値が「47文字」となるように選べばよい。また、例えば、3-Q型の場合、「最小共通情報文字数」と「最大個別情報文字数」とはほぼ等しい。これは、3-Q型の場合、図6(b)に示すように、RSブロック数は“2”なので、符号化演算支援装置1(放送局側)と、受信機(2次元コード生成装置)2とでほぼ均等に処理を分担しようとするためである。なお、余剰ビットを生成するために、符号化演算支援装置1(放送局側)の方が大きな値となるようにした。
【0072】
また、例えば、4-H型の場合、「最小共通情報文字数」=38と、「最大個別情報文字数」=12とを合計すると、4-H型の英数字モードのデータ容量「50文字」と等しい。つまり、共通情報の文字列の文字数と、個別情報の文字列の文字数との合計値が「50文字」となるように選べばよい。また、4-H型の場合、「最小共通情報文字数」と「最大個別情報文字数」との比は、ほぼ3:1に等しい。これは、4-H型の場合、図6(b)に示すように、RSブロック数は“4”なので、符号化演算支援装置1(放送局側)と、受信機(2次元コード生成装置)2とでほぼ3:1に処理を分担しようとしたためである。なお、余剰ビットを生成するために、符号化演算支援装置1(放送局側)の方が大きな値となるようにした。
【0073】
また、図6(a)において、「優先順位」の項目は、この2次元コードパラメータ変換表において変換される候補(入力された各情報に合致する2次元コードの型の候補)が複数ある場合に利用するための優先順位を示す。
【0074】
2次元コードの型(型、誤り訂正レベル)と、共通情報の文字列の文字種モードと、共通情報文字列の文字数との情報を合わせて、2次元コードパラメータCpと定義する。具体例としては、型番=“ver3”,誤り訂正レベル=“Q”,文字種モード=“英数字モード”,共通情報文字列の文字数=“24”である場合には、2次元コードパラメータは、例えば、Cp={3, Q, EISU, 24}のように記述される。
【0075】
≪誤り訂正符号化パラメータ変換表≫
誤り訂正符号化パラメータ変換表は、2次元コードパラメータCpと、RSブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成されたものである。図6(b)に示すように、“3-Q型”、“4-M型”のRSブロック数は「2」、“4-H型”、“6-M型”のRSブロック数は「4」と定められている。また、図6(b)において“RSブロック”の項目は、(c,k,r)の3つのパラメータを有している。ここで、c=総コード語数,k=データコード語数,r=誤り訂正数と定められている。例えば、“3-Q型”は、(c,k,r)=(35,17,9)なので、RSブロックのサイズは、17×8=136ビットである。また、図6(b)において“前半処理ブロック数”の項目は、RSブロック数のうち、符号化演算支援装置1で分担するブロック数の一例を示す。例えば、“4-H型”の場合には、RSブロック=4のうち、3ブロックの処理を符号化演算支援装置1で分担することを意味する。
【0076】
<仮個別情報付加手段>
仮個別情報付加手段14は、共通情報入力手段11から、共通情報の文字列(共通情報テキスト)と、共通情報の文字種のモードとを取得し、個別情報文字数入力手段12から入力された文字数に合わせて、共通情報テキストの後ろに任意の文字列を付加するものである。共通情報テキストに文字列が付加されて生成されたテキストは、ヘッダ付加・データ符号化手段16に出力される。この仮個別情報付加手段14は、共通情報の文字種のモードに合わせた文字種を使用して文字列を追加する。つまり、共通情報の文字種のモードが「英数字モード」である場合には、英数字モードで使用可能な文字種を使用する。図7(a)に符号702で示す"12345678901234567890123"(23文字)は仮個別情報の文字列を示す。なお、この仮個別情報付加手段14や前記した個別情報文字数入力手段12を備えるようにしたのは、一般的なQRコード生成プログラムを改良して別の新たな機能を付加することを容易にするためであり、符号化演算支援装置1は必ずしもこれらの構成を備える必要はない。
【0077】
<2次元コードパラメータ生成手段>
2次元コードパラメータ生成手段15は、共通情報の文字列の文字数と、共通情報の文字列の文字種のモードと、個別情報の文字列の文字数とを入力し、記憶手段13に予め記憶された2次元コードパラメータ変換表を参照し、入力された各情報に合致する2次元コードの型を含む2次元コードパラメータを生成するものである。
【0078】
本実施形態では、2次元コードパラメータ生成手段15は、共通情報入力手段11から、共通情報の文字列と、共通情報の文字列の文字種のモードとの各情報を取得し、個別情報文字数入力手段12から仮個別情報の文字列の文字数(=個別情報の文字数)を取得することとした。2次元コードパラメータ生成手段15は、共通情報入力手段11から、共通情報の文字列を取得すると文字数をカウントする。なお、共通情報入力手段11が共通情報の文字列の文字数をカウントしてその文字数の情報を2次元コードパラメータ生成手段15が取得するようにしてもよい。
【0079】
また、2次元コードパラメータ生成手段15は、例えば、図6(a)に示す2次元コードパラメータ変換表を用いて2次元コードパラメータを生成する。例えば、「共通情報の文字列の文字数」=24、「文字種のモード」=英数字モード、「個別情報の文字列の文字数」=23である場合には、2次元コードパラメータ生成手段15は、2次元コードの型を、「型番」=「3」、「誤り訂正レベル」=「Q」と特定し、これらのパラメータを含む2次元コードパラメータCp={3, Q, EISU, 24}を生成する。生成された2次元コードパラメータCpは、ヘッダ付加・データ符号化手段16、誤り訂正符号化パラメータ変換手段17、および出力手段19に出力される。
【0080】
また、本実施形態では、2次元コードパラメータ生成手段15は、外部から、2次元コードの型(型番、誤り訂正レベル)の優先順位を取得し、入力された各情報に合致する2次元コードの型の候補が複数ある場合には、取得した優先順位にしたがって2次元コードパラメータを生成する。
【0081】
仮に2次元コードパラメータ生成手段15に入力する各情報が、例えば、「共通情報の文字列の文字数」=38、「文字種のモード」=英数字モード、「個別情報の文字列の文字数」=9である場合には、“3-Q型”と“4-H型”の2つの候補が抽出される。しかし、図6(a)に示す例では、“3-Q型”の優先順位が“1”なので、2次元コードパラメータ生成手段15は、2次元コードパラメータCp={3, Q, EISU, 24}を生成することとなる。
【0082】
外部から指定される優先順位は、2次元コードパラメータ変換表において外部から書き換えることができる。この場合、用途に応じて、様々な基準で優先順位を割り当てることができる。例えば、図6(a)に示したように、データサイズの小さい順に優先順位を割り当てることができる。また、図6(a)の具体例の場合に、次のように優先順位の基準を変更することができる。例えば、誤り訂正レベルの高い順に優先順位を割り当てる場合には、「誤り訂正レベル」=“H”の4-H型を第1位にすることができる。また、共通情報文字と個別情報文字の文字数がほぼ同じでなるべく多くの文字を使用したい場合には4-M型を第1位にすることができる。さらに、共通情報の文字列の文字数が長い順に割り当てる場合には6-M型を第1位にすることができる。このように符号化演算支援装置1の利用者が所望の基準で優先順位を指定することで、符号化演算支援装置1の利用者の利便性を向上させることができる。
【0083】
<ヘッダ付加・データ符号化手段>
ヘッダ付加・データ符号化手段16は、ヘッダ情報を符号化してヘッダを生成し、共通情報の文字列を符号化し、ヘッダに繋げることで第1ビット列データを生成するものである。ヘッダ付加・データ符号化手段16は、2次元コードパラメータ生成手段15から、2次元コードパラメータCpを取得する。また、ヘッダ付加・データ符号化手段16は、仮個別情報付加手段14から、共通情報テキストに仮個別情報の文字列が付加されて生成されたテキストを取得し、取得すると、取得テキストの文字数をカウントする。このカウント結果は、共通情報および個別情報の文字列の文字数の合計値を示す。
【0084】
ヘッダ付加・データ符号化手段16は、取得した2次元コードパラメータCpに含まれる共通情報の文字列の文字種のモードの値を符号化してモード指示子を生成する。QRコードの場合、モード指示子は、4ビットの情報で表される。
ヘッダ付加・データ符号化手段16は、仮個別情報付加手段14から取得したテキストからカウントした文字数を、2次元コードパラメータCpで示される2次元コードの型番にあったビット数で符号化して文字数指示子を生成する。QRコードの場合、文字数指示子は、「型番」と「文字種のモード」とに応じて8種類のビット数が用意されている。例えば、「型番」=3、「文字種モード」=EISUの場合には、文字数指示子は、9ビットの情報で表される。
ヘッダ付加・データ符号化手段16は、生成したモード指示子に、文字数指示子を繋げてヘッダを生成する。「型番」=3、「文字種モード」=EISUの場合には、ヘッダは、13ビットの情報で表される。
【0085】
ヘッダ付加・データ符号化手段16は、仮個別情報付加手段14から取得したテキスト(共通情報と仮個別情報)のうち、2次元コードパラメータCpで示される共通情報の文字列部分を、取得した共通情報の文字列の文字種のモードで符号化してビット列(符号化後ビットとよぶ)を生成する。図7(a)に示す例のように、共通情報の文字列が24文字、「文字種モード」=EISUの場合には、図7(b)に示す符号化後ビット703は、132ビットの情報で表される。つまり、"http://k.nhk.jp/cas.cgi/"(24文字)を英数字モードでデータ符号化した結果が132ビットになる。その結果、ヘッダに繋げると、145ビットの情報で表される。ヘッダ付加・データ符号化手段16は、ヘッダに符号化後ビットを繋げたビット列(第1ビット列データ)を誤り訂正符号計算手段18に出力する。
【0086】
<誤り訂正符号化パラメータ変換手段>
誤り訂正符号化パラメータ変換手段17は、記憶手段13に予め記憶された誤り訂正符号化パラメータ変換表を参照して、入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、共通情報の文字列のデータ符号化後のビット数を算出し、誤り訂正ブロック数を算出し、誤り訂正符号計算手段18に対して誤り訂正計算を行う部分を指定するものである。
【0087】
本実施形態では、誤り訂正符号化パラメータ変換手段17は、2次元コードパラメータ生成手段15から、生成された2次元コードパラメータCpを取得することとした。具体的には、誤り訂正符号化パラメータ変換手段17は、3-Q型の2次元コードパラメータCpが入力されると、図6(b)に示す誤り訂正符号化パラメータ変換表から、RSパラメータとして、「RSブロック数」=2、「RSブロック」=(35,17,9)、「前半処理ブロック数」=1の各情報が記述された行を特定する。RSブロックのサイズは、17バイト(136ビット)と求められる。
【0088】
また、本実施形態では、誤り訂正符号化パラメータ変換手段17は、共通情報の文字列のデータ符号化後のビット数と、第1ビット列データのビット数とを算出することとした。具体的には、図7(a)に示す例のように、共通情報の文字列が24文字、「文字種モード」=EISUの場合には、誤り訂正符号化パラメータ変換手段17は、共通情報の文字列のデータ符号化後のビット数として、式(1)の右辺の第3項および第4項を計算し、132ビットの情報を取得する。また、第1ビット列データのビット数として、式(1)の右辺すべての項を計算し、145ビットの情報を取得する。
【0089】
B=4+C+11(D DIV 2)+6(D MOD 2) … 式(1)
ここで、Bはビット列の長さ、Cは文字数指示子のビット数、Dは入力データ文字数をそれぞれ示す。なお、QRコードの場合、任意の数のデータ文字数に対するビット列の長さは、文字種のモードに応じて異なっており、文字種のモードが英数字モードの場合には、式(1)で計算することが規定されている。
【0090】
この例では、第1ビット列データのビット数(145ビット)を、RSブロックのサイズ(136ビット)で除算すると、1余り9である。つまり、この場合には、第1ビット列データのビット数以下となるような誤り訂正符号のRSブロック数の最大値は、1である。なお、余り9が余剰ビットとなる。
【0091】
そして、誤り訂正符号化パラメータ変換手段17は、算出したRSブロックのサイズ(例えば136ビット)と、共通情報の文字列のデータ符号化後のビット数(例えば132ビット)と、RSパラメータ(例えば、3-Q型についての、RSブロック数、RSブロック、前半処理ブロック数の各情報)とを、ブロック情報として誤り訂正符号計算手段18に出力することで、誤り訂正符号計算手段18に対して、ビット列のうち誤り訂正計算をすべき部分を指定する。
【0092】
仮に、第2の例として、4-H型の2次元コードパラメータCpが入力されると、誤り訂正符号化パラメータ変換手段17は、図6(b)に示す誤り訂正符号化パラメータ変換表から、RSパラメータとして、「RSブロック数」=4、「RSブロック」=(25,9,8)、「前半処理ブロック数」=3の各情報が記述された行を特定する。RSブロックのサイズは、9バイト(72ビット)と求められる。また、この第2の例において、共通情報の文字列が38文字、「文字種モード」=EISUである場合には、誤り訂正符号化パラメータ変換手段17は、前記式(1)から、38文字の共通情報の文字列の符号化後のビット数として、222ビットを算出する。なお、38文字の共通情報の文字列のデータ符号化後のビット数は209ビットとなる。この第2の例では、第1ビット列データのビット数(222ビット)を、RSブロックのサイズ(72ビット)で除算すると、3余り6である。つまり、この場合には、第1ビット列データのビット数以下となるような誤り訂正符号のRSブロック数の最大値は、3である。なお、余り6が余剰ビットとなる。
【0093】
<誤り訂正符号計算手段>
誤り訂正符号計算手段18は、ヘッダ付加・データ符号化手段16から取得した第1ビット列データのビット数のうち、誤り訂正符号化パラメータ変換手段17で指定された誤り訂正ブロックに該当するデータを示すデータ符号D1について、指定された誤り訂正パラメータで誤り訂正計算を行って誤り訂正符号E1を算出するものである。算出されたデータ符号D1および誤り訂正符号E1を部分的なQRコードとして出力手段19に出力される。
【0094】
また、誤り訂正符号計算手段18は、共通情報の文字列の符号化後のビット列(図7(b)に示す符号化後ビット703)のうち誤り訂正計算されなかったビット列を示す余剰ビットB1を出力手段19に出力する。また、本実施形態では、誤り訂正符号計算手段18は、誤り訂正計算がどのRSブロックまで終了しているかをRSブロックのブロック位置で示す計算済みブロック数N1を出力手段19に出力する。なお、予め定められた順序でRSブロックを計算する場合や、RSブロック数が2であるQRコードの場合には、計算済みブロック数N1の情報を省略してもよい。
【0095】
具体的には、図7(a)に示す例のように、共通情報の文字列が24文字、「文字種モード」=EISUであって、3-Q型の場合には、誤り訂正符号計算手段18は、データ符号化後の結果のビット列(ヘッダから数えて145ビット)のうち、指定されたRSブロック(136ビット)に該当するデータ(=データ符号D1)について、誤り訂正符号を計算する。そして、誤り訂正符号計算手段18は、データ符号D1(136ビット)と、共通情報の文字列(24文字)のデータ符号化後の結果のビット列(132ビット)のうち、ビット列の終端部にあったために誤り訂正計算がなされなかった余剰ビット(9ビット)と、計算された誤り訂正符号(36ビット)とを出力する。
【0096】
また、前記した第2の例のように、共通情報の文字列が38文字、「文字種モード」=EISUであって、4-H型の場合には、誤り訂正符号計算手段18は、データ符号化後の結果のビット列(ヘッダから数えて222ビット)のうち、指定された3つのRSブロック(それぞれが72ビット)に該当するデータを順に誤り訂正符号を計算する。この場合には、3つのRSブロックをデータ符号D1(216ビット)と表記する。そして、誤り訂正符号計算手段18は、データ符号D1(216ビット)と、共通情報の文字列(38文字)のデータ符号化後の結果のビット列(206ビット)のうち、ビット列の終端部にあったために誤り訂正計算がなされなかった余剰ビット(6ビット)と、計算された誤り訂正符号(36ビット)とを出力する。
【0097】
<出力手段>
出力手段19は、誤り訂正符号化対象としたデータ符号D1と、余剰ビットB1と、算出した誤り訂正符号E1と、生成した2次元コードパラメータCpと、計算済みブロック数(RSブロックのブロック位置)N1とを出力する。ここで、データ符号D1および誤り訂正符号E1が部分的なQRコードを示す。以下では、2次元コードパラメータCpと、余剰ビットB1と、計算済みブロック数(RSブロックのブロック位置)N1とを、1つにまとめて単にパラメータと呼ぶ。つまり、出力手段19は、部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを出力する。これら部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とは、受信機(2次元コード生成装置)2で利用される。
【0098】
[2次元コード生成装置の構成]
次に、図2を参照して、受信機(2次元コード生成装置)2の構成について説明する。
受信機(2次元コード生成装置)2は、ハードウェア装置とソフトウェアとが協働することによって、前記したハードウェア資源がプログラムによって制御されることにより実現され、図2に示すように、個別情報入力手段21と、データ・パラメータ入力手段22と、記憶手段23と、2次元コードパラメータ・余剰ビット抽出手段24と、データ符号化・余剰ビット付加手段25と、誤り訂正符号化パラメータ変換手段26と、誤り訂正符号計算手段27と、2次元コード化手段28と、表示手段29とを備えている。
【0099】
<個別情報入力手段>
個別情報入力手段21は、個別情報の文字列を入力するものである。個別情報は、受信機やその利用者の個別情報であり、例えば、B-CASカード番号や郵便番号等である。入力された個別情報の文字列は、データ符号化・余剰ビット付加手段25に出力される。
【0100】
<データ・パラメータ入力手段>
データ・パラメータ入力手段22は、図1に示す符号化演算支援装置1で生成されたデータおよびパラメータを入力するものである。ここで、データおよびパラメータとは、部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを意味する。このうち、パラメータ(Cp、B1、N1)は、2次元コードパラメータ・余剰ビット抽出手段24に出力される。また、部分的なQRコード(D1、E1)と、パラメータ(Cp)は、2次元コード化手段28に出力される。
【0101】
<記憶手段>
記憶手段23は、メモリやハードディスク等の記憶装置から構成され、入力された情報やCPU等の処理結果を一時記憶したり、動作プログラムを格納したりするものである。この記憶手段23は、誤り訂正符号化パラメータ変換表を記憶することとした。誤り訂正符号化パラメータ変換表は、図6(b)に例示したものにおいて、「前半処理ブロック数」の項目を省略したテーブルと同様なものである。
【0102】
<2次元コードパラメータ・余剰ビット抽出手段>
2次元コードパラメータ・余剰ビット抽出手段24は、データ・パラメータ入力手段22に入力したデータおよびパラメータのうち、2次元コードパラメータCpと、余剰ビットB1と、計算済みブロック数N1とを抽出するものである。抽出されたパラメータのうち、2次元コードパラメータCpおよび余剰ビットB1は、データ符号化・余剰ビット付加手段25に出力される。また、抽出されたパラメータのうち、2次元コードパラメータCpおよび計算済みブロック数N1は、誤り訂正符号化パラメータ変換手段26に出力される。
【0103】
<データ符号化・余剰ビット付加手段>
データ符号化・余剰ビット付加手段25は、入力された個別情報を符号化し、余剰ビットに繋げることで第2ビット列データを生成するものである。本実施形態では、データ符号化・余剰ビット付加手段25は、個別情報入力手段21から、個別情報を取得し、2次元コードパラメータCpで指定される文字種のモードで符号化し、余剰ビットB1の後ろに繋げて第2ビット列データを生成し、誤り訂正符号計算手段27に出力する。
【0104】
具体的には、図7(a)に示す例のように、個別情報の文字列が23文字、「文字種モード」=EISUであって、3-Q型の場合には、前記した式(1)の右辺の第3項および第4項の計算から、個別情報の文字列のデータ符号化後のビット数は、127ビットとなる。ここで、前記したように、共通情報の文字列が24文字の場合の余剰ビットB1は、9ビットであったので、この例の場合には、第2ビット列データのビット列の長さは、136ビットとなり、RSブロックのサイズ(17バイト=136ビット)と等しくなる。
【0105】
<誤り訂正符号化パラメータ変換手段>
誤り訂正符号化パラメータ変換手段26は、記憶手段23に予め記憶された誤り訂正符号化パラメータ変換表を参照して、入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、誤り訂正符号計算手段27に対して誤り訂正計算を行う部分を指定するものである。
【0106】
本実施形態では、誤り訂正符号化パラメータ変換手段26は、2次元コードパラメータ・余剰ビット抽出手段24から、2次元コードパラメータCpを取得することとした。具体的には、誤り訂正符号化パラメータ変換手段26は、3-Q型の2次元コードパラメータCpが入力されると、図6(b)に示す誤り訂正符号化パラメータ変換表から、RSパラメータとして、「RSブロック数」=2、「RSブロック」=(35,17,9)の各情報が記述された行を特定する。RSブロックのサイズは、17バイト(136ビット)と求められる。そして、誤り訂正符号化パラメータ変換手段26は、算出したRSブロックのサイズ(例えば136ビット)を、ブロック情報として誤り訂正符号計算手段18に出力することで、誤り訂正符号計算手段18に対して、RSブロックのサイズ毎に、誤り訂正計算をするように指定する。
【0107】
<誤り訂正符号計算手段>
誤り訂正符号計算手段27は、第2ビット列データのビット数のうち、誤り訂正符号化パラメータ変換手段17で指定された誤り訂正ブロックに該当するデータを示すデータ符号D2について誤り訂正計算を行って誤り訂正符号E2を算出するものである。算出されたデータ符号D2および誤り訂正符号E2は、2次元コード化手段28に出力される。
【0108】
<2次元コード化手段>
2次元コード化手段28は、データ・パラメータ入力手段22から取得した2次元コードパラメータCp、データ符号D1および誤り訂正符号E1と、誤り訂正符号計算手段27から取得したデータ符号D2および誤り訂正符号E2と、を用いて2次元コードを生成するものである。図7(a)に示す例のように、共通情報の文字列が24文字、個別情報の文字列が23文字、「文字種モード」=EISUであって、3-Q型の場合には、データ・パラメータ入力手段22から取得したデータ符号D1および誤り訂正符号E1は、図7(c)において“送信側”に示すビット列で模式的に表すことができる。同様に、誤り訂正符号計算手段27から取得したデータ符号D2および誤り訂正符号E2は、図7(c)において“受信側”に示すビット列で模式的に表すことができる。
【0109】
そして、2次元コード化手段28は、“送信側”と“受信側”のデータ符号を1つにまとめ、かつ、“送信側”と“受信側”の誤り訂正符号を1つにまとめるように並べ替える。この並び替え処理により、左からデータ符号D1、データ符号D2、誤り訂正符号E1、誤り訂正符号E2の順に整列される。そして、2次元コード化手段28は、マスク処理を行う。QRコードの場合、このマスク処理は、JIS X 0510の仕様で行ってもよいし、非特許文献1に記載の方法で行ってもよい。続いて、2次元コード化手段28は、ビット列の「0」に白、「1」に黒を割り当てる白黒割当処理を行い、処理結果を表示手段29に出力する。
【0110】
<表示手段>
表示手段29は、QRコードシンボルを表示するものであって、例えばLCD等から構成される。なお、図5に示すように、2次元コード生成装置2を受信装置(デジタル放送受信装置)4に含む場合には、表示手段29は、図5に示す表示手段43として構成される。
【0111】
前記した符号化演算支援装置1および2次元コード生成装置2は、一般的なコンピュータを、前記した各手段として機能させるプログラムにより動作させることで実現することができる。このプログラム(符号化演算支援プログラム、2次元コード生成プログラム)は、通信回線を介して提供することも可能であるし、CD−ROM等の記録媒体に書き込んで配布することも可能である。
【0112】
[デジタル放送システムの構成]
次に、図5を参照して、第1実施形態に係る2次元コード生成システムを、デジタル放送システムにおいて実施する例について説明する。図5に示したデジタル放送システムSは、デジタル放送送信装置3が、放送波を介して、受信装置(デジタル放送受信装置)4にデジタル放送を配信するシステムである。
【0113】
<デジタル放送送信装置>
デジタル放送送信装置3は、デジタル放送番組の番組コンテンツを配信するものであり、さらに、データ放送として電子文書(BML文書)を配信するものである。デジタル放送送信装置3は、受信装置4が、共通情報と、受信装置4毎に個別の情報である個別情報とを含む2次元コードを生成するための2次元コード生成プログラム等をBML文書に組み込む。また、デジタル放送送信装置3は、共通情報から得られた部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とをデータ放送コンテンツのBML文書に組み込む。このデジタル放送送信装置3は、主に、コンテンツ記憶手段31と、放送制御手段32と、放送送出手段33とを備えている。
【0114】
コンテンツ記憶手段31は、デジタル放送の番組コンテンツやデータ放送コンテンツ等の各種コンテンツを記憶するものであって、ハードディスク等の記憶装置である。
放送制御手段32は、コンテンツ記憶手段31から、番組コンテンツ、データ放送コンテンツ等を読み出して、放送送出手段33に出力するものである。この放送制御手段32には、符号化演算支援装置1を備えている。符号化演算支援装置1は、共通情報から得られた部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを出力する。
放送制御手段32は、データ放送コンテンツのBML文書に、部分的なQRコード(D1、E1)およびパラメータ(Cp、B1、N1)と、2次元コード生成プログラム等を組み込む。なお、放送制御手段32は、詳細な説明は省略するが、デジタル放送の限定受信システムに対応してコンテンツのスクランブル、鍵情報の暗号化等の各種の制御を行う。
放送送出手段33は、放送制御手段32から出力される番組コンテンツ、データ放送のデータ等を多重化して、データカルーセルで伝送(配信)するものである。
【0115】
<受信装置>
受信装置(デジタル放送受信装置)4は、放送波を介して、デジタル放送を受信するものであって、一般的なデジタル放送受信装置である。ここでは、受信装置4は、放送受信手段41と、ユーザ操作手段42と、表示手段43と、コンテンツ蓄積手段44と、記憶手段45と、受信制御手段46とを備えている。そして、受信装置4は、セキュリティモジュールである個別情報記憶カード5を装着されることで、デジタル放送の受信を可能としている。個別情報記憶カード5は、例えば、図4に示すB-CASカードである。
【0116】
放送受信手段41は、デジタル放送送信装置3から送出されるデジタル放送を受信するチューナ等から構成され、個別情報記憶カード5の装着時に受信したデジタル信号を受信制御手段46に出力するものである。
ユーザ操作手段42は、ユーザの操作により指定されるコマンドを受信制御手段46に出力するものであり、例えば、リモコン装置等である。
表示手段43は、受信制御手段46の処理結果として復号されたデジタル放送番組、データ放送を画面上に表示するものであり、例えば、LCD等である。
【0117】
コンテンツ蓄積手段44は、放送受信手段41で受信したデジタル放送番組等のコンテンツを記憶するものであり、ハードディスク等で構成される。
記憶手段45は、受信制御手段46等の動作プログラムやその処理結果等を記憶するものであり、メモリやハードディスク等で構成される。この記憶手段45には、個別情報を取得する個別情報取得プログラムが予め記憶されている。なお、個別情報取得プログラムはデータ放送により配信するようにしてもよい。この記憶手段45には、例えば、ユーザの住所、年齢等の個人情報を記憶した不揮発性メモリであるNVRAMも含むこととする。
【0118】
受信制御手段46は、放送受信手段41で受信したデジタル信号の再生・表示制御するものである。ここでは、受信制御手段46は、2次元コード生成装置2と、コンテンツ再生制御手段461と、表示制御手段462とを備えている。
【0119】
2次元コード生成装置2は、デジタル放送送信装置3から、2次元コード生成プログラムを含む電子文書を受信した際に、当該電子文書に組み込まれている情報(2次元コード生成プログラム)に基づいて機能するものである。2次元コード生成装置2は、デジタル放送送信装置3の符号化演算支援装置1が出力する情報を含む電子文書を受信した際に、当該電子文書に組み込まれている情報(部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1))に基づいて、個別情報記憶カード5から、個別情報としてカード番号を取得し、2次元コードとしてQRコードを生成し、表示手段43に表示させる。
【0120】
コンテンツ再生制御手段461は、受信した多重化されたデジタル信号から暗号化鍵情報やコンテンツ等を分離し、鍵情報を復号して、コンテンツをデスクランブルすることでコンテンツを再生する制御を行うものである。
【0121】
表示制御手段462は、コンテンツ再生制御手段461で再生されたコンテンツを表示手段43に表示させるものである。また、表示制御手段462は、データ放送の電子文書であるBMLを解析し、表示制御を行うものでもある。
【0122】
このように、受信装置4は、共通情報の符号化および誤り訂正符号計算については、予め配信側で算出された結果をそのまま利用し、個別情報の符号化および誤り訂正符号計算については、受信装置4内で実行し、2次元コードを生成し、表示する。
【0123】
[デジタル放送システムの動作]
次に、デジタル放送システムSの動作について図4を参照(適宜図5参照)して説明する。まず、デジタル放送送信装置3は、放送制御手段32によって、放送用の電子文書に情報(2次元コード生成プログラム等)を組み込み、2次元コード表示用電子文書を生成する。また、デジタル放送送信装置3は、放送制御手段32によって、放送用の電子文書に情報(部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1))を組み込み、2次元コード表示用電子文書を生成する。なお、放送制御手段32は、2次元コード生成プログラムと、部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とをまとめて組み込んでもよい。そして、デジタル放送送信装置3は、生成した2次元コード表示用電子文書を、放送送出手段33によって、放送波を介して配信(送出)する(S31)。
【0124】
一方、受信装置4(図4では受信機2と表記)は、放送受信手段41によって、放送波を介して、2次元コード表示用電子文書を受信する。そして、受信装置4は、受信制御手段46によって、2次元コード表示用電子文書を解析し、2次元コード生成プログラムを展開することによって2次元コード生成装置2として機能する。また、この2次元コード生成装置2は、2次元コード表示用電子文書に組み込まれている部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを取得すると、受信機2に装着されているB-CASカード(個別情報記憶カード)5のカード番号等の個別情報を取得する(S32)。さらに、受信装置4の2次元コード生成装置2は、2次元コードパラメータによって、カード番号等の個別情報と、取得した部分的なQRコードとから2次元コードを生成する(S33)。
【0125】
これにより、受信機2は、データ放送(電子文書)上に、共通情報の文字列および個別情報の文字列を含むQRコードシンボルを生成し表示する。視聴者は、携帯電話機6の2次元コード読み取り機能を用いることで、画面表示されたQRコードシンボルを読み取る。そして、視聴者が、読み取ったURLにアクセスする操作を行うと、QRコードシンボルの内容のうち、共通情報の文字列が例えば、放送事業者のCGIサーバのアドレスを意味していれば、個別情報の文字列がインターネットを介して、このCGIサーバに伝送され、放送事業者でユーザ登録が管理されることとなる。
【0126】
第1実施形態によれば、送信側の符号化演算支援装置1によって、共通情報の文字列の大部分およびヘッダ情報を符号化したデータ符号の誤り訂正計算を予め行っておくので、2次元コードを生成して表示する受信側では、2次元コードを生成する処理負荷を軽減することができる。
【0127】
特に、古い受信機においてデータサイズの大きな個別QRコードを生成する場合には、従来は数十秒単位の所要時間であったが、本実施形態のQRコード生成プログラムをダウンロードした古い受信機は、QRコードの生成対象を、ほぼ個別情報の文字列だけに絞ることができる。そのため、全体のデータサイズに対する個別情報の文字列サイズの割合(受信側が分担する割合)にも依存するが、従来の1/3〜2/3程度の高速表示が可能である。そのため、この時間短縮効果により、現在世の中に普及している受信機性能のばらつきを考慮したとしても、より多くの視聴者の利便性を向上させることができる。
【0128】
また、広く普及した一般の携帯電話機を、QRコード対応の読み取り装置として利用できるため、デジタル放送システムにおいて、視聴者のユーザ登録の用途だけに限定されずに、クイズ番組に対する視聴者の回答や、アンケートの回収といった利用にすぐにでも導入することができる。この場合、視聴者の回答内容や、アンケート記入内容が個別情報として管理されることとなる。
【0129】
(第2実施形態)
第2実施形態に係る2次元コード生成システムは、図8に示す符号化演算支援装置1Bおよび図2に示す受信機(2次元コード生成装置)2を備える。
符号化演算支援装置1Bは、テキスト入力手段51と、2次元コードパラメータ入力手段52と、記憶手段13と、ヘッダ付加・データ符号化手段16と、誤り訂正符号化パラメータ変換手段17と、誤り訂正符号計算手段18と、出力手段19とを備えている。なお、第1実施形態の符号化演算支援装置1と同じ構成には同じ符号を付して説明を省略する。
【0130】
テキスト入力手段51は、共通情報の文字列と仮個別情報の文字列とを繋げたテキストを入力するものである。なお、テキスト入力手段51は、文字種のモードも入力する。
このテキスト入力手段51において、共通情報の文字数には、図1に示した共通情報入力手段11に入力される共通情報の文字数と同様な制限がある。入力されたテキストおよび文字種のモードは、ヘッダ付加・データ符号化手段16に出力される。
【0131】
2次元コードパラメータ入力手段52は、外部から2次元コードパラメータCpを入力するものである。この入力された2次元コードパラメータCpは、ヘッダ付加・データ符号化手段16、誤り訂正符号化パラメータ変換手段17、および出力手段19に出力される。
【0132】
ヘッダ付加・データ符号化手段16は、テキスト入力手段51から、共通情報の文字列と仮個別情報の文字列とを繋げたテキストと文字種のモードとを取得し、2次元コードパラメータ入力手段52から、2次元コードパラメータCpを取得する。また、ヘッダ付加・データ符号化手段16は、共通情報の文字列と仮個別情報の文字列とを繋げたテキストを取得すると、取得テキストの文字数をカウントする。このカウント結果は、共通情報および個別情報の文字列の文字数の合計値を示す。
【0133】
第2実施形態に係る符号化演算支援装置1Bは、2次元コードパラメータCpを外部から入力するので、装置内部で生成する場合に比べて簡易な構成とすることができる。例えば、共通情報および個別情報の文字列の文字数が固定された個別2次元コードを生成する用途に適している。
【0134】
(第3実施形態)
次に、図9および図10を参照して、第3実施形態に係る2次元コード生成システムについて説明する。前記第1および第2実施形態は、2次元コードを生成するための符号化演算処理を2つの装置で分担したが、3つ以上の装置で分担するようにしてもよい。この場合、最初と最後をつなぐ途中の装置(中継装置)は、同様な符号化演算処理を同様に行う多段構成とすることができる。第3実施形態に係る2次元コード生成システムは、図1(または図8)に示す符号化演算支援装置1(1B)および図2に示す受信機(2次元コード生成装置)2と、少なくとも1つの符号化演算支援装置1C(図9参照)とを備える。なお、QRコードの場合、RSブロック数は「81」まで規定されているので、理論的には処理を81分割して79の中継装置を設けることが可能である。
【0135】
図9に示す符号化演算支援装置(中継装置)1Cは、図1(または図8)に示す符号化演算支援装置1(1B)、または、他の符号化演算支援装置1Cが出力するデータおよびパラメータを引き継ぎ情報として取得し、処理結果として生成したデータおよびパラメータを、取得した引き継ぎ情報に加えて、図2に示す受信機(2次元コード生成装置)2または他の符号化演算支援装置1Cに出力する。
【0136】
このときの処理の概要を図10に示す。ここでは、第3の実施形態に係る2次元コード生成システムを、デジタル放送システムに適用する場合を想定し、符号化演算支援装置(中継装置)1Cは、放送局に設けられるものとする。この場合、放送局内で最後の中継装置が、デジタル放送送信装置3(図5参照)に組み込まれることとしてもよいし、最後の中継装置が、データおよびパラメータをBML文書に組み込む機能を有した他のデジタル放送送信装置に出力することとしてもよい。
【0137】
以下では、簡便のため、符号化演算支援装置1Cが1つの場合であって、図1に示す符号化演算支援装置1からデータおよびパラメータを取得するものとして図10を参照して処理の概要を説明する。なお、図9においては、図1に示す符号化演算支援装置1が出力するデータおよびパラメータを、部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)と表記し、符号化演算支援装置(中継装置)1Cが出力するデータおよびパラメータを、部分的なQRコード(D3、E3)と、パラメータ(Cp、B3、N3)と表記した。順序が最初の符号化演算支援装置1の仮個別情報付加手段14は、ヘッダの文字数指示子として、共通情報の文字数と全ての個別情報の文字数との合計文字数を符号化する。
【0138】
図10に示すS11〜S14Cは、図3に示すS11〜S14と同様である。ただし、S14Cでは、符号化演算支援装置1は、符号化演算支援装置(中継装置)1Cに対してデータおよびパラメータ(D1、E1、Cp、B1、N1)を出力する。
【0139】
図10に示すS15〜S18は、S11〜S14Cと同様である。ただし、S15では、符号化演算支援装置(中継装置)1Cは、当該中継装置またはその利用者の個別情報を入力する。また、S17では、符号化演算支援装置(中継装置)1Cは、図1に示すヘッダ付加・データ符号化手段16によるヘッダ付加はしない代わりに、当該装置に入力される個別情報を符号化した後に、その符号化後のビット列の頭に、取得した余剰ビットB1を付加する。さらに、S18では、符号化演算支援装置(中継装置)1Cは、受信機(2次元コード生成装置)2に対してデータおよびパラメータ(D3、E3、Cp、B3、N3)を出力(配信)する。
【0140】
図10に示すS21〜S25は、図3に示したものと同様なので、説明を省略する。ただし、S24Cでは、受信機(2次元コード生成装置)2は、データ符号D1および誤り訂正符号E1と、データ符号D3および誤り訂正符号E3とを取得し、データ符号D2および誤り訂正符号E2を有しているので、並び替え処理は次のように行う。すなわち、データ符号のグループと、誤り訂正符号のグループとに分別し、符号化演算処理を適用した順番に入れ替える。そのため、先頭(左)からデータ符号D1、データ符号D3、データ符号D2、誤り訂正符号E1、誤り訂正符号E3、誤り訂正符号E2の順に整列させる。なお、符号化演算支援装置側のS14Cで図示したシンボルと、中継装置のS18で図示したシンボルと、受信機側のS23で図示したシンボルとの3つの情報を合わせることで、受信機側のS25でQRコードシンボルが完成することを概念的に示した。
【0141】
図9に戻って、符号化演算支援装置(中継装置)1Cの構成を説明する。
符号化演算支援装置(中継装置)1Cは、個別情報入力手段61と、データ・パラメータ入力手段62と、記憶手段63と、2次元コードパラメータ・余剰ビット抽出手段64と、データ符号化・余剰ビット付加手段65と、誤り訂正符号化パラメータ変換手段66と、誤り訂正符号計算手段67と、出力手段68とを備えている。
【0142】
個別情報入力手段61と、データ・パラメータ入力手段62と、記憶手段63と、2次元コードパラメータ・余剰ビット抽出手段64と、データ符号化・余剰ビット付加手段65は、図2に示す受信機(2次元コード生成装置)2の個別情報入力手段21と、データ・パラメータ入力手段22と、記憶手段23と、2次元コードパラメータ・余剰ビット抽出手段24と、データ符号化・余剰ビット付加手段25と同様なので、説明を省略する。ただし、データ・パラメータ入力手段62は、部分的なQRコード(D1、E1)と、2次元コードパラメータCpとを出力手段68に出力する。
【0143】
また、誤り訂正符号化パラメータ変換手段66と、誤り訂正符号計算手段67と、出力手段68は、図1に示す符号化演算支援装置1の誤り訂正符号化パラメータ変換手段17と、誤り訂正符号計算手段18と、出力手段19と同様なので、説明を省略する。ただし、出力手段19は、部分的なQRコード(D1、E1、D3、E3)と、パラメータ(Cp、B3、N3)とを出力する。したがって、受信機(2次元コード生成装置)2の2次元コード化手段28は、並び替え処理により、左からデータ符号D1、データ符号D3、データ符号D2、誤り訂正符号E1、誤り訂正符号E3、誤り訂正符号E2の順に整列する。
【0144】
第3実施形態によれば、視聴者の受信機2に2次元コードを生成するための符号化演算処理を放送局側の多くの装置で分担できるので、より大きな2次元コードを視聴者の受信機2に表示することができる。例えば、本発明で適用できる最小サイズは、QRコードでは、「型番3」の29×29モジュールであるが、QRコードの最大サイズは「型番40」の177×177モジュールまであるので、こういった大きなサイズのQRコードシンボルが表示可能となる。
【0145】
なお、放送事業者では、自前の情報を視聴者に公開するだけではなく、例えば、天気予報であれば気象庁から情報を取得するなどしているので、中継装置を官公庁等の外部のサーバとしてもよい。
【0146】
また、共通情報の文字列として、URLを用いる代わりに、「mailto: … 」のようにメールアドレスやメール本文とすることもできる。そして、各中継装置またはその利用者の個別情報を、メールアドレス、メール本文、メール本文への署名とすることもできる。仮に、各中継装置の利用者の署名を、各中継装置で入力される個別情報として、かつ、共通情報をURLとすると、受信機2で入力された個別情報は、各中継装置の利用者全員の賛同がなければ、該当するURLに送信されない。この意味で、グループ署名に適用することが可能である。この場合、受信機2から収集され管理される個別情報へのアクセスを制限するといった運用が可能となる。
【0147】
(第4実施形態)
第4実施形態に係る2次元コード生成システムは、送信側でマスク処理まで行うこととした。このときの処理の概要を図11に示す。図11に示すS11〜S14Dは、図3に示すS11〜S14と同様である。ただし、S13とS14Dとの間に、符号化演算支援装置1は、生成した部分的なQRコード(D1、E1)にマスク処理を行う。このマスク処理は、図1に示す誤り訂正符号計算手段18において誤り訂正計算の処理の後に続いて行ってもよいし、図示しない専用のマスク処理手段を設けて行ってもよい。そして、S14Dでは、マスク処理された部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを出力する。
【0148】
図11に示すS21〜S25は、図3に示したものと同様なので、説明を省略する。ただし、受信機(2次元コード生成装置)2は、S23に続けて、個別情報の文字列に該当する部分だけマスク処理を行う(S231)。そのため、S24Dの2次元コード化処理は、並び替え処理だけを行う。
【0149】
第4実施形態によれば、送信側において、誤り訂正計算等の符号化演算処理に加えて、共通情報の文字列に該当する部分のマスク処理の数値演算処理まで行うので、受信側の処理負荷をより軽減することができる。
【0150】
(第5実施形態)
第5実施形態に係る2次元コード生成システムは、送信側でマスク処理に加えて、部分的なQRコードのシンボル化まで行うこととした。このときの処理の概要を図12に示す。図12に示すS11〜S14Eは、図11に示すS11〜S14Dと同様である。ただし、S131とS14Eとの間に、符号化演算支援装置1は、マスク処理後の部分的なQRコード(D1、E1)をシンボル化して画像ファイルとする。この処理は、図1に示す誤り訂正符号計算手段18においてマスク処理の後に続いて行ってもよいし、専用の2次元コード化手段28(図2参照)を設けて行ってもよい。そして、S14Eでは、画像ファイル化された部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを出力する。
【0151】
図12に示すS21〜S25は、図11に示したものと同様なので、説明を省略する。ただし、受信機(2次元コード生成装置)2は、S231に続けて、個別情報の文字列に該当する部分を文字列に変換する処理を行う(S232)。そのため、S24Eの2次元コード化処理は、送信側から取得した画像データ(部分的なQRコード)上に、S232で変換した文字列を配置する処理を行う。つまり、S24Eの処理は、共通情報の部分的なQRコードシンボルの上に、個別情報の部分的なQRコードシンボルを重ね合わせる処理
である。
【0152】
なお、S232において、QRコードで読み取らせようとするテキスト(個別情報の文字列)を符号化したビット列を、文字列に変換する処理は、非特許文献1に開示されているように、例えば、黒で塗りつぶされるシンボル部分を、“■”文字(文字コードShift JIS:0x81A1)に置き換えたり、左上1/4が黒い形状の外字フォントを用いて置き換えたりすることで実現できる。
【0153】
第5実施形態によれば、送信側において、誤り訂正計算等の符号化演算処理に加えて、部分的なQRコードのシンボル化まで行うので、受信機2は、並べ替え処理等をする必要がなく、受信側の処理負荷をより軽減することができる。
【0154】
以上、本発明の各実施形態について説明したが、本発明は、これらの実施形態には限定されない。その仕様さえ満足するならば、例えば、QRコード以外の2次元コードであっても用いることができる。また、各実施形態では、個別情報記憶カード5をB-CASカードとして例示したが、本発明はこれに限定されるものではなく、他のICカードを用いてもよい。
【符号の説明】
【0155】
1,1B 符号化演算支援装置
1C 符号化演算支援装置(中継装置)
11 共通情報入力手段
12 個別情報文字数入力手段
13 記憶手段
14 仮個別情報付加手段
15 2次元コードパラメータ生成手段
16 ヘッダ付加・データ符号化手段
17 誤り訂正符号化パラメータ変換手段
18 誤り訂正符号計算手段
19 出力手段
2 受信機(2次元コード生成装置)
21 個別情報入力手段
22 データ・パラメータ入力手段
23 記憶手段
24 2次元コードパラメータ・余剰ビット抽出手段
25 データ符号化・余剰ビット付加手段
26 誤り訂正符号化パラメータ変換手段
27 誤り訂正符号計算手段
28 2次元コード化手段
29 表示手段
3 デジタル放送送信装置
31 コンテンツ記憶手段
32 放送制御手段
33 放送送出手段
4 受信装置(デジタル放送受信装置)
41 放送受信手段
42 ユーザ操作手段
43 表示手段
44 コンテンツ蓄積手段
45 記憶手段
46 受信制御手段
461 コンテンツ再生制御手段
462 表示制御手段
5 個別情報記憶カード
6 携帯電話機
51 テキスト入力手段
52 2次元コードパラメータ入力手段
61 個別情報入力手段
62 データ・パラメータ入力手段
63 記憶手段
64 2次元コードパラメータ・余剰ビット抽出手段
65 データ符号化・余剰ビット付加手段
66 誤り訂正符号化パラメータ変換手段
67 誤り訂正符号計算手段
68 出力手段
【技術分野】
【0001】
本発明は、2次元コード生成のための符号化演算支援装置、2次元コード生成装置およびプログラムに関し、特に、デジタル放送受信装置において2次元コードを生成する技術に関する。
【背景技術】
【0002】
現在、QRコード(登録商標)を初めとする2次元コードが広く普及・活用されている。また、QRコードの読み取り装置(QRコードリーダ)も携帯電話機をはじめとして広く普及している。例えば印刷されたQRコードを、携帯電話機の読み取り機能を用いて読み取れば、ユーザによる文書の手入力操作を省略することができる。
【0003】
例えば、データ放送(電子文書)を受信するデジタル放送受信装置(以下、単に受信機ともいう)やパーソナルコンピュータ等の電子文書表示デバイス内において、2次元コードの閲覧者に依存しない共通情報(複数の電子文書デバイスに共通な情報)の文字列および2次元コードの閲覧者や閲覧デバイス固有である個別情報の文字列を含む個別2次元コードを生成し電子文書表示デバイス上に表示する技術が提案されている(例えば、非特許文献1参照)。非特許文献1では、QRコードの内容の一部とする共通情報の文字列として、例えば、インターネット上に存在する放送事業者のサーバ等へアクセスするためのURL(Uniform Resource Locator)が想定されている。また、QRコードの内容の他の一部とする個別情報の文字列として、B-CASカード番号が想定されている。
【0004】
このような個別情報の文字列を想定している理由は、現在のデジタル放送では、B-CASカードを用いたアクセス制御を行っていることによる。B-CASカードは、受信機購入時に添付される形で、ユーザ(視聴者)に配布される。ユーザは、B-CASカードを入手する度に、放送事業者に対しB-CASカード番号登録(ユーザ登録)が必要となっている。放送事業者では、はがき、電話、インターネット、共通QRコード(1種類のQRコード)での登録を受け付けている。B-CASカード番号は、ほとんど連続性のない20桁の数字の羅列である。そのため、ユーザにとってみれば、いずれの方法でも容易な手続きとは言えないことが課題となっている。
【0005】
この課題を解決するために、放送事業者のサーバアドレスの一部(引数)として、B-CASカード番号などの受信機や視聴者固有の個別情報を含めたテキスト情報を、QRコードなどの2次元コードに変換し、インターネットを介して放送事業者に伝える方法が考えられる。非特許文献1に基づく方法により、表示制約の厳しいデータ放送上であっても、個別QRコードを表示することができる。
【0006】
ここで、従来の2次元コード生成処理の概要について図13を参照して説明する。例えば、共通情報の文字列と個別情報の文字列とを含むQRコードを、QRコード生成プログラムで生成する手順は次の通りである。電子文書表示デバイスの内部でQRコードを生成して画面表示させるには、まず、QRコードで実際に読み取らせたい内容を示すテキストを電子文書表示デバイスに入力する(S101)。読み取らせたい内容として、共通情報の文字列がURL、個別情報の文字列がカード番号の場合には、「http:// … 」等のテキストを入力することになる。
【0007】
次に、電子文書表示デバイスの内部で入力テキストを符号化する(S102)。これにより、例えば「http:// … 」等のテキストは、「100110 … 」のような2進表現のビット列(データコード語列)に変換される。次に、電子文書表示デバイスの内部で数値演算を実行する。まず、誤り訂正符号を計算し、付加する。QRコードは、データコード語列に付加する一連の誤り訂正コード語を生成するリードソロモン(RS)誤り訂正を備えている。そこで、電子文書表示デバイスの内部でRS誤り訂正符号(誤り訂正コード語)を計算により求め、データコード語列に付加する(S103)。
【0008】
さらに、電子文書表示デバイスの内部でマスク処理を行う(S104)。マスク処理は、明モジュールと暗モジュールとをバランスよく配置してQRコードを読み取り易くするために、符号化領域で与えられたモジュールパターン(ビット列のパターン)と、複数のマスクパターン(マスク処理マトリックスパターン)とで順にXOR(排他的論理和)による変換を行い、変換結果の評価により、マスクパターンとして最適なものを選定し、最適なマスクパターンを用いた場合のXOR演算結果を出力する処理である。なお、QRコードは、8種類のマスクパターン{0,…,7}を備えている。そして、電子文書表示デバイスは、生成したQRコードを出力する(S105)。例えば、シンボルとして構成したQRコード(QRコードシンボル)を画面に表示させることができる。
【0009】
データ放送上に個別QRコードを表示するときには、それを読み取った携帯電話機等の表示画面に表示される英数字等のテキストが約50文字以上になると考えられる。つまり、個別QRコードのデータサイズが比較的大きいため、QRコードシンボルのサイズも大きくなる。電子文書表示デバイスの性能によっては、個別QRコードを表示するまでの所要時間が長くなる。非特許文献1には、マスク処理において、最適なマスクパターンを予め選定しておく技術が開示されている。これにより、非特許文献1の技術では、電子文書表示デバイスが古い受信機などの計算資源の乏しい環境であっても、電子文書表示デバイス内でQRコードを高速にシンボル化することができる。なお、QRコードは、日本工業規格(JIS X 0510)で仕様が定められている。
【先行技術文献】
【非特許文献】
【0010】
【非特許文献1】川喜田裕之、外6名、「個別QRコード生成BMLプログラムの開発」、映像情報メディア学会技術報告、Vol.33、No.9、p.9-12、2009年
【発明の概要】
【発明が解決しようとする課題】
【0011】
放送局からデータ放送コンテンツのBML(Broadcast Markup Language)文書にQRコード等の2次元コード生成プログラムを組み込んで配信する場合には、視聴者が所有する受信機に応じて、個別QRコードを表示するまでの所要時間に差が生じる。これは、受信機の性能には、メーカ、型番、製造年によってばらつきがあるためである。非特許文献1の技術は、マスク処理を高速に行うことで、個別QRコードの表示までの時間を短縮できるが、受信機性能のばらつきを考慮すると、より多くの視聴者の利便性を高めるためには、さらなる時間短縮が望ましい。
【0012】
2次元コード生成処理において、高速化を阻害するような負荷が大きい処理は、誤り訂正符号の計算および付加処理であることが実験で確かめられている。個別QRコードは、URL等の共通情報と、カード番号等の個別情報とを内容に含むので、このうちURL等の共通情報に関しては放送局側で予め誤り訂正符号の計算および付加処理を行い、その処理結果を配信し、受信機の負荷を軽減する方法が考えられる。しかしながら、1つの個別QRコードを生成するために必要な誤り訂正符号の計算等の符号化演算処理を、複数の異なる装置間で、QRコード等の2次元コードの仕様に則って分担して行うという技術は開発されていなかった。
【0013】
本発明は、以上のような問題点に鑑みてなされたものであり、共通情報の文字列および個別情報の文字列を含む2次元コードを生成して表示する装置の処理負荷を軽減することを課題とする。
【課題を解決するための手段】
【0014】
前記課題を解決するために、請求項1に記載の符号化演算支援装置は、複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成し電子文書表示デバイス上に表示する2次元コード生成装置と、2次元コードパラメータに基づいて前記共通情報および個別情報の文字列の符号化および誤り訂正計算を行う符号化演算を支援する符号化演算支援装置とを備える2次元コード生成システムにおける前記符号化演算支援装置であって、前記2次元コードパラメータが、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含み、前記符号化演算支援装置が、記憶手段と、ヘッダ付加・データ符号化手段と、誤り訂正符号化パラメータ変換手段と、誤り訂正符号計算手段と、出力手段と、を備えることとした。
【0015】
かかる構成によれば、符号化演算支援装置は、記憶手段に、前記2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶している。ここで、2次元コードパラメータは、複数の誤り訂正ブロックを有する2次元コードの型に関するものなので、本来は2次元コード生成装置においてこれら複数の誤り訂正ブロックについて誤り訂正計算を行う必要があるが、符号化演算支援装置は、少なくとも1つの誤り訂正ブロックについて事前に誤り訂正計算を行う。また、2次元コードが例えばQRコードである場合には、2次元コードの型とは、型番および誤り訂正レベルを示し、誤り訂正ブロックとはRSブロックを示し、誤り訂正パラメータとはRSブロック数およびデータコード語数を示す。
【0016】
そして、符号化演算支援装置は、ヘッダ付加・データ符号化手段によって、前記共通情報の文字列の文字種のモードを符号化したモード指示子と、前記共通情報および個別情報の文字列の文字数の合計値を符号化した文字数指示子とを繋げてヘッダを生成し、前記文字種のモードで前記共通情報の文字列を符号化し、前記ヘッダに繋げることで第1ビット列データを生成する。つまり、この第1ビット列データは、ヘッダ情報と共通情報の文字列とを符号化したものである。
【0017】
そして、符号化演算支援装置は、誤り訂正符号化パラメータ変換手段によって、前記2次元コードパラメータを入力し、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記共通情報の文字列のデータ符号化後のビット数を算出すると共に、前記求めた誤り訂正パラメータから、前記第1ビット列データのビット数以下となるような最大の誤り訂正符号の誤り訂正ブロック数を算出し、各算出結果と前記求めた誤り訂正パラメータとにより誤り訂正計算手順を指定する。
【0018】
ここで、2次元コードパラメータの入力に合わせて共通情報の文字列を入力する。また、2次元コードが例えばQRコードである場合には、誤り訂正ブロック数とはRSブロック数なので、バイト単位で表された数値をビット数に容易に換算できる。ここで、誤り訂正計算手順とは、誤り訂正ブロック数が「1」である場合には、誤り訂正ブロックがどのくらいのサイズであるのかだけを通知することを表し、誤り訂正ブロック数が複数の場合には、さらに、先頭から何番目の誤り訂正ブロックまで誤り訂正計算を行うのかといった情報を通知することを表す。そして、符号化演算支援装置に入力される共通情報の文字列の文字数に依存する第1ビット列データのサイズは、誤り訂正ブロック単位になるとは限らないが、誤り訂正ブロックは、ヘッダから順に割り当てられる。そして、演算可能な誤り訂正ブロック数の最大値を算出し、事前に誤り訂正符号の計算をすることで、2次元コード生成装置の処理負荷をより軽減することができる。
【0019】
そして、符号化演算支援装置は、誤り訂正符号計算手段によって、前記第1ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する。前記したように誤り訂正ブロック数は、第1ビット列データのヘッダから順に割り当てられるので、共通情報の文字列に相当する終端部分については指定から外れて誤り訂正計算されない部分が生じる場合がある。この部分については2次元コード生成装置にて誤り訂正計算を行うこととする。
【0020】
そして、符号化演算支援装置は、出力手段によって、前記データ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記算出した誤り訂正符号と、前記2次元コードパラメータとを出力する。これにより、符号化演算支援装置が出力するデータおよびパラメータの各情報を2次元コード生成装置が取得し、符号化演算支援装置が用いたものと同じ2次元コードパラメータにより、個別情報の文字列の符号化および誤り訂正計算を行い、さらに余剰ビットの誤り訂正計算を行うだけで、共通情報の文字列の大部分の符号化演算を省略することができる。
【0021】
また、請求項2に記載の符号化演算支援装置は、請求項1に記載の符号化演算支援装置において、前記記憶手段が、前記共通情報の文字列の文字種モードと、前記2次元コードの型と、前記共通情報文字列の許容最小文字数と、前記個別情報文字列の許容最大文字数との情報を予め関連付けて作成された2次元コードパラメータ変換表をさらに記憶し、2次元コードパラメータ生成手段をさらに備えることとした。
【0022】
かかる構成によれば、符号化演算支援装置は、記憶手段に2次元コードパラメータ変換表をさらに記憶している。そして、符号化演算支援装置は、2次元コードパラメータ生成手段によって、前記共通情報の文字列の文字数と、前記個別情報の文字列の文字数と、前記共通情報の文字列の文字種のモードとの各情報を入力し、前記2次元コードパラメータ変換表を参照し、前記入力された各情報に合致する2次元コードの型を含む2次元コードパラメータを生成する。この生成された2次元コードパラメータは、ヘッダ付加・データ符号化手段や誤り訂正符号化パラメータ変換手段で利用される。このように、予め2次元コードパラメータ変換表を作成しておくことで、共通情報および個別情報の文字列の文字数と、文字種のモードとを指定するだけで、最適な2次元コードパラメータを選択し、入力された共通情報の文字列を符号化および誤り訂正計算を行うことができる。
【0023】
また、請求項3に記載の符号化演算支援装置は、請求項2に記載の符号化演算支援装置において、前記2次元コードパラメータ生成手段が、外部から、前記2次元コードの型の優先順位を取得し、前記入力された各情報に合致する2次元コードの型の候補が複数ある場合には、前記取得した優先順位にしたがって前記2次元コードパラメータを生成することとした。
【0024】
かかる構成によれば、符号化演算支援装置は、優先順位にしたがって2次元コードパラメータを生成するので、符号化演算支援装置の利用者が所望の基準で優先順位を指定することで、符号化演算支援装置の利用者の利便性を向上させることができる。例えば、用途に応じて、データサイズ、誤り訂正レベル、共通情報の文字数のいずれかにおいて、優先順位を割り当てることができる。
【0025】
また、請求項4に記載の符号化演算支援装置は、請求項1に記載の符号化演算支援装置において、2次元コードパラメータ入力手段をさらに備えることとした。
【0026】
かかる構成によれば、符号化演算支援装置は、2次元コードパラメータ入力手段によって、外部から前記2次元コードパラメータを入力する。例えば、共通情報および個別情報の文字列の文字数が固定された専用の個別2次元コードを生成するといった用途の場合には、外部から2次元コードパラメータを入力するだけの簡易構成とすることができる。
【0027】
また、請求項5に記載の符号化演算支援プログラムは、複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードの生成過程で行う文字列の符号化および誤り訂正計算を行う符号化演算を支援するために、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含む2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段を備えたコンピュータを、ヘッダ付加・データ符号化手段、誤り訂正符号化パラメータ変換手段、誤り訂正符号計算手段、出力手段として機能させることとした。
【0028】
かかる構成によれば、符号化演算支援プログラムは、ヘッダ付加・データ符号化手段によって、前記共通情報の文字列の文字種のモードを符号化したモード指示子と、前記共通情報および個別情報の文字列の文字数の合計値を符号化した文字数指示子とを繋げてヘッダを生成し、前記文字種のモードで前記共通情報の文字列を符号化し、前記ヘッダに繋げることで第1ビット列データを生成する。
【0029】
そして、符号化演算支援プログラムは、誤り訂正符号化パラメータ変換手段によって、前記2次元コードパラメータを入力し、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記共通情報の文字列のデータ符号化後のビット数を算出すると共に、前記求めた誤り訂正パラメータから、前記第1ビット列データのビット数以下となるような最大の誤り訂正符号の誤り訂正ブロック数を算出し、各算出結果と前記求めた誤り訂正パラメータとにより誤り訂正計算手順を指定する。
【0030】
そして、符号化演算支援プログラムは、誤り訂正符号計算手段によって、前記第1ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する。
【0031】
そして、符号化演算支援プログラムは、出力手段によって、前記データ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記算出した誤り訂正符号と、前記2次元コードパラメータとを出力する。
【0032】
前記課題を解決するために、請求項6に記載の2次元コード生成装置は、複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成し電子文書表示デバイス上に表示する2次元コード生成装置と、2次元コードパラメータに基づいて前記共通情報および個別情報の文字列の符号化および誤り訂正計算を行う符号化演算を支援する符号化演算支援装置とを備える2次元コード生成システムにおける前記2次元コード生成装置であって、前記2次元コードパラメータが、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含み、前記2次元コード生成装置が、記憶手段と、個別情報入力手段と、データ・パラメータ入力手段と、データ符号化・余剰ビット付加手段と、誤り訂正符号化パラメータ変換手段と、誤り訂正符号計算手段と、2次元コード化手段とを備えることとした。
【0033】
かかる構成によれば、2次元コード生成装置は、記憶手段に、前記2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する。そして、2次元コード生成装置は、個別情報入力手段によって、前記個別情報を入力する。ここで、個別情報は、2次元コード生成装置で生成される2次元コードの閲覧者や電子文書表示デバイス固有の情報である。
【0034】
そして、2次元コード生成装置は、データ・パラメータ入力手段によって、前記符号化演算支援装置で生成されたデータおよびパラメータとして、前記共通情報の文字列を符号化してヘッダに繋げた第1ビット列データのビット数のうち、予め指定された誤り訂正ブロックに該当するデータを示すデータ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記データ符号から算出された誤り訂正符号と、前記2次元コードパラメータとを入力する。
【0035】
そして、2次元コード生成装置は、データ符号化・余剰ビット付加手段によって、前記入力された個別情報を符号化し、前記余剰ビットに繋げることで第2ビット列データを生成する。つまり、この第2ビット列データは、共通情報の文字列の終端部分と、個別情報の文字列とを符号化したものである。そして、2次元コード生成装置は、誤り訂正符号化パラメータ変換手段によって、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記求めた誤り訂正パラメータにより誤り訂正計算手順を指定する。なお、2次元コードパラメータは、複数の誤り訂正ブロックを有する2次元コードの型に関するものなので、符号化演算支援装置の側で発生した余剰ビットを2次元コード生成装置の側で追加することで、全体で見れば、誤り訂正ブロック単位で誤り訂正計算を行っていることになる。
【0036】
そして、2次元コード生成装置は、誤り訂正符号計算手段によって、前記第2ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する。そして、2次元コード生成装置は、2次元コード化手段によって、前記入力された2次元コードパラメータ、データ符号および誤り訂正符号と、前記第2ビット列データに含まれるデータ符号および前記算出された誤り訂正符号とを用いて前記2次元コードを生成する。これにより、2次元コード生成装置は、誤り訂正計算の演算に関しては、2次元コードに含まれる共通情報の文字列と個別情報の文字列とのうち、余剰ビットに相当する共通情報の一部と個別情報とについて行うだけで済む。つまり、共通情報の文字列の大部分の誤り訂正計算を省略することができる。そのため、計算資源の乏しいBMLやHTML(Hyper Text Markup Language)等の電子文書を閲覧するための電子文書表示デバイス上で、高速に2次元コードを生成・表示することができる。
【0037】
また、請求項7に記載の2次元コード生成プログラムは、複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成するために、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含む2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段を備えたコンピュータを、個別情報入力手段、データ・パラメータ入力手段、データ符号化・余剰ビット付加手段、誤り訂正符号化パラメータ変換手段、誤り訂正符号計算手段、2次元コード化手段として機能させることとした。
【0038】
かかる構成によれば、符号化演算支援プログラムは、個別情報入力手段によって、前記個別情報を入力する。そして、符号化演算支援プログラムは、データ・パラメータ入力手段によって、入力データおよび入力パラメータとして、前記共通情報の文字列を符号化してヘッダに繋げた第1ビット列データのビット数のうち、予め指定された誤り訂正ブロックに該当するデータを示すデータ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記データ符号から算出された誤り訂正符号と、前記2次元コードパラメータとを入力する。
【0039】
そして、符号化演算支援プログラムは、データ符号化・余剰ビット付加手段によって、前記入力された個別情報を符号化し、前記余剰ビットに繋げることで第2ビット列データを生成する。そして、符号化演算支援プログラムは、誤り訂正符号化パラメータ変換手段によって、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記求めた誤り訂正パラメータにより誤り訂正計算手順を指定する。
【0040】
そして、符号化演算支援プログラムは、誤り訂正符号計算手段によって、前記第2ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する。そして、符号化演算支援プログラムは、2次元コード化手段によって、前記入力された2次元コードパラメータ、データ符号および誤り訂正符号と、前記第2ビット列データに含まれるデータ符号および前記算出された誤り訂正符号とを用いて前記2次元コードを生成する。
【発明の効果】
【0041】
請求項1に記載の発明によれば、符号化演算支援装置は、共通情報の文字列の大部分およびヘッダ情報を符号化したデータ符号と、その誤り訂正符号と、符号化演算に利用した2次元コードパラメータと、共通情報の文字列の一部分に相当する余剰ビットとを出力する。したがって、これらの出力情報を利用すれば、2次元コードを生成して表示する2次元コード生成装置の処理負荷を軽減することができる。
【0042】
請求項2に記載の発明によれば、符号化演算支援装置は、予め作成された2次元コードパラメータ変換表を備えているので、共通情報および個別情報の文字列の文字数と、文字種のモードとを指定するだけで、最適な2次元コードパラメータを選択することができる。
【0043】
請求項3に記載の発明によれば、符号化演算支援装置は、優先順位にしたがって2次元コードパラメータを生成するので、符号化演算支援装置の利用者の利便性を向上させることができる。
【0044】
請求項4に記載の発明によれば、符号化演算支援装置は、2次元コードパラメータを外部から入力するので、装置内部で生成する場合に比べて簡易な構成とすることができる。
【0045】
請求項5に記載の発明によれば、符号化演算支援プログラムは、共通情報の文字列の大部分およびヘッダ情報を符号化したデータ符号と、その誤り訂正符号と、符号化演算に利用した2次元コードパラメータと、共通情報の文字列の一部分に相当する余剰ビットとをコンピュータに出力させる。したがって、これらの出力情報を利用すれば、2次元コードを生成して表示する2次元コード生成装置の処理負荷を軽減することができる。
【0046】
請求項6に記載の発明によれば、2次元コード生成装置は、符号化演算支援装置から出力されるデータ符号と、その誤り訂正符号と、2次元コードパラメータと、余剰ビットとを利用することで、共通情報の文字列の大部分の誤り訂正計算を省略することができるので、処理負荷を軽減することができる。
【0047】
請求項7に記載の発明によれば、2次元コード生成プログラムは、共通情報の文字列の大部分とヘッダ情報とを符号化したデータ符号と、その誤り訂正符号と、2次元コードパラメータと、余剰ビットとを利用することで、共通情報の文字列の大部分の誤り訂正計算を省略することができるので、コンピュータの処理負荷を軽減させることができる。
【図面の簡単な説明】
【0048】
【図1】本発明の第1実施形態に係る符号化演算支援装置の構成を示すブロック図である。
【図2】本発明の実施形態に係る2次元コード生成装置の構成を示すブロック図である。
【図3】本発明の第1実施形態に係る2次元コード生成システムの処理の概要を示すフローチャートである。
【図4】本発明の第1実施形態に係る2次元コード生成システムにて生成する2次元コードの使用例を模式的に示す説明図である。
【図5】本発明の第1実施形態に係る2次元コード生成システムを適用したデジタル放送システムの構成を模式的に示すブロック図である。
【図6】図1に示す符号化演算支援装置で参照する変換表の一例であって、(a)は2次元コードパラメータ変換表、(b)は誤り訂正符号化パラメータ変換表をそれぞれ示している。
【図7】本発明の第1実施形態に係る2次元コード生成システムの処理例であって、(a)は共通情報および個別情報、(b)は放送局側の処理、(c)は受信機側の処理をそれぞれ示している。
【図8】本発明の第2実施形態に係る符号化演算支援装置の構成を示すブロック図である。
【図9】本発明の第3実施形態に係る符号化演算支援装置の構成を示すブロック図である。
【図10】本発明の第3実施形態に係る2次元コード生成システムの処理の概要を示すフローチャートである。
【図11】本発明の第4実施形態に係る2次元コード生成システムの処理の概要を示すフローチャートである。
【図12】本発明の第5実施形態に係る2次元コード生成システムの処理の概要を示すフローチャートである。
【図13】従来の2次元コード生成処理の概要を示すフローチャートである。
【発明を実施するための形態】
【0049】
以下、本発明に係る符号化演算支援装置、2次元コード生成装置およびデジタル放送送信装置を実施するため形態(以下「実施形態」という)について図面を参照して詳細に説明する。以下では、説明の都合上、符号化演算支援装置および2次元コード生成装置を備える2次元コード生成システムの第1実施形態、この2次元コード生成システムをデジタル放送システムに適用する場合のデジタル放送送信装置の実施形態、2次元コード生成システムの第2ないし第5実施形態を順次説明することとする。
【0050】
(第1実施形態)
2次元コード生成システムは、図1に示す符号化演算支援装置1および図2に示す受信機(2次元コード生成装置)2を備える。
2次元コード生成装置2は、共通情報の文字列および個別情報の文字列を含む2次元コードを生成し電子文書表示デバイス上に表示するものである。
符号化演算支援装置1は、2次元コードパラメータに基づいて共通情報および個別情報の文字列の符号化および誤り訂正計算を行う符号化演算を支援するものである。
これら符号化演算支援装置1および2次元コード生成装置2は、例えば、CPU等の演算装置と、メモリ、ハードディスク等の記憶装置(記憶手段)と、マウスやキーボード等の外部から情報の入力を検出する入力装置と、外部との各種情報の送受信を行うインタフェース装置と、LCD(Liquid Crystal Display)等の表示装置を備えたコンピュータと、このコンピュータにインストールされたプログラムとから構成される。
【0051】
以下では、2次元コードがQRコードであるものとして説明する。
ここで、第1実施形態に係る2次元コード生成システムの処理の概要について図3を参照(適宜図13参照)して従来の方法と比較しながら説明する。従来の方法との大きな相違点は、入力テキストの符号化の処理と、RS(リードソロモン)誤り訂正符号の計算・付加の処理とを、符号化演算支援装置1および2次元コード生成装置2で分担して実行するようにしたことである。
【0052】
ただし、RS誤り訂正符号の計算・付加の処理は、所定のビット数で表されるRSブロック(誤り訂正ブロック)毎に行う処理であるため、RSブロック数が「1」の場合には、2つの装置で分担することはできないので、対象外とする。したがって、第1実施形態に係る2次元コード生成システムでは、複数のRSブロックが規定された2次元コードを対象とする。なお、RSブロック数が「1」であるQRコードの型は、QRコードの仕様を規定した日本工業規格(JIS X 0510)の表12に示すように、1-L型、1-M型、1-Q型、1-H型、2-L型、2-M型、2-Q型、2-H型、3-L型、3-M型、4-L型、5-L型だけである。ここで、L,M,Q,Hは、誤り訂正レベルのパラメータであり、この順に誤り訂正能力が高くなる。また、1,2,3,4,5は、QRコードのサイズを示す型番のパラメータである。JIS X 0510では、型番は「40」まで、RSブロック数は「81」まで規定されている。
【0053】
例えば、共通情報の文字列と個別情報の文字列とを含むQRコードを電子文書表示デバイスに表示するために、QRコード生成プログラムで生成する手順は次の通りである。
まず、符号化演算支援装置1において、QRコードの内容の一部として読み取らせたい共通情報の内容を示すテキスト(共通情報テキスト)を入力する(S11)。読み取らせたい内容として、共通情報の文字列がURLの場合には、「http:// … 」等のテキストを入力することになる。
【0054】
次に、符号化演算支援装置1は、入力テキストを符号化する(S12)。これにより、例えば「http:// … 」等のテキストは、「100110 … 」のような2進表現のビット列(データコード語列)に変換される。さらに、詳細は後記するが、このビット列を、文字種のモードと文字数とを符号化したヘッダに繋げたビット列を生成する(これを第1ビット列データという)。
【0055】
そして、符号化演算支援装置1は、第1ビット列データのRSブロックに対してRS誤り訂正符号(誤り訂正コード語)を計算により求め、第1ビット列データに付加する(S13)。ここで、詳細は後記するが、第1ビット列データのビット列がRSブロック数(ビット列)単位にならない場合には、第1ビット列データの終端部分についてはRS誤り訂正計算がなされない。
【0056】
そして、符号化演算支援装置1は、第1ビット列データのRS誤り訂正計算を行った部分を示すデータ符号D1と、そのRS誤り訂正符号E1とをQRコードの一部の情報(これを部分的なQRコードという)として、符号化演算に用いたパラメータと共に出力する(S14)。本実施形態では、符号化演算に用いたパラメータの1つとして、第1ビット列データのうちRS誤り訂正計算がなされなかった終端部分のビット列を示す余剰ビットの情報を含めることとした。
【0057】
また、本実施形態では、部分的なQRコードとは、QRコードの一部の情報を含むものであって、データ符号D1とそのRS誤り訂正符号E1とにより「100110 … 」のような2進表現のビット列で表されるものであって、シンボルとしては構成せずに出力することとしている。つまり、符号化演算支援装置側のS13で図示したシンボルと、受信機側のS23で図示したシンボルとの2つの情報を合わせることで、受信機側のS25でQRコードシンボルが完成することを概念的に示すものである。なお、符号化演算支援装置1において、シンボルとして構成して出力するようにしてもよい。
【0058】
次に、受信機(2次元コード生成装置)2において、QRコードの内容の一部として読み取らせたい個別情報の内容を示すテキスト(個別情報テキスト)を入力する(S21)。読み取らせたい内容として、受信機やその利用者の個別情報の文字列が数字の場合には、「521234 … 」等のテキストを入力することになる。
【0059】
そして、例えば、符号化演算支援装置1から部分的なQRコードおよびパラメータを取得すると、受信機(2次元コード生成装置)2は、入力テキストを符号化する(S22)。これにより、例えば「521234 … 」等のテキストは、「100110 … 」のような2進表現のビット列(データコード語列)に変換される。さらに、詳細は後記するが、受信機(2次元コード生成装置)2は、このビット列を、符号化演算支援装置1から取得した余剰ビットに繋げたビット列を生成する(これを第2ビット列データという)。
【0060】
そして、受信機(2次元コード生成装置)2は、第2ビット列データのRSブロックに対してRS誤り訂正符号(誤り訂正コード語)を計算により求め、第2ビット列データに付加する(S23)。ここで、第2ビット列データのRS誤り訂正計算を行った部分を示すデータ符号をD2、そのRS誤り訂正符号をE2とする。
【0061】
そして、受信機(2次元コード生成装置)2は、自装置で算出したデータと、符号化演算支援装置1から取得したデータとを合わせて2次元コード化処理を行う(S24)。詳細は後記するが、データ符号D1およびRS誤り訂正符号E1と、データ符号D2およびRS誤り訂正符号E2とに対して、並び替え処理を行った上で、マスク処理を行う。そして、受信機(2次元コード生成装置)2は、ビット列の「0」に白、「1」に黒を割り当てたQRコードを出力する(S25)。これにより、QRコードシンボルが電子文書表示デバイスに表示される。
【0062】
前記説明では、符号化演算支援装置1と2次元コード生成装置2とを一般化して説明したが、この2次元コード生成システムは、例えばデジタル放送システムに適用することができる。この場合には、符号化演算支援装置1は、放送局で使用され、部分的なQRコードは、パラメータと併せて放送される。また、受信機(2次元コード生成装置)2は、視聴者宅で使用されることになる。デジタル放送のデータ放送により、部分的なQRコードと、QRコード生成プログラムとを配信する概念図を図4に示す。放送事業者は、CGI(Common Gateway Interface)やPHP(Hypertext Preprocessor)といったサーバを用意し、視聴者のユーザ登録等を管理する。また、このときのデジタル放送システムのデジタル放送送信装置やデジタル放送受信装置は、図5に示すような機能ブロック図で構成され、符号化演算支援装置1や2次元コード生成装置2を備える。なお、デジタル放送送信装置やデジタル放送受信装置の構成の詳細は後記する。
図1に戻って、符号化演算支援装置1の詳細な構成について説明する。
【0063】
[符号化演算支援装置の構成]
符号化演算支援装置1は、ハードウェア装置とソフトウェアとが協働することによって、前記したハードウェア資源がプログラムによって制御されることにより実現され、図1に示すように、共通情報入力手段11と、個別情報文字数入力手段12と、記憶手段13と、仮個別情報付加手段14と、2次元コードパラメータ生成手段15と、ヘッダ付加・データ符号化手段16と、誤り訂正符号化パラメータ変換手段17と、誤り訂正符号計算手段18と、出力手段19とを備えている。
【0064】
<共通情報入力手段>
共通情報入力手段11は、共通情報の文字列(共通情報テキスト)を入力するものである。また、共通情報入力手段11は、共通情報の文字種のモードも入力することとした。ここで入力された共通情報の文字列(共通情報テキスト)と文字種のモードとは、2次元コードパラメータ生成手段15および仮個別情報付加手段14に出力される。
【0065】
共通情報入力手段11に入力される共通情報の文字数には、次の制限がある。すなわち、その文字列のデータ符号化後のビット数を、誤り訂正符号計算手段18で誤り訂正符号を計算するビット数(=RSブロックのビット数)以上とするような文字数でなければならない。例えば、QRコードで、{型番3,誤り訂正レベルQ,英数字モード}の場合、図6(a)に示すように、共通情報の最小文字数は、24文字である。
【0066】
具体例として、共通情報と仮個別情報とを含む入力テキストを図7(a)に示す。この例では、QRコードのver(型番)が3で、誤り訂正レベルがQ、英数字モードを想定した。図7(a)に符号701で示す"http://k.nhk.jp/cas.cgi/"(24文字)は、共通情報入力手段11から入力される共通情報の文字列を示す。
【0067】
ここで、使用する共通情報の文字数が、もしも足りない場合には、任意の文字列を足せばよい。なお、使用する共通情報の文字列が、例えば、URLのようなケースでは、不足分の文字を補った後であっても、所望のアドレスにアクセスできるように文字列を足す必要がある。
【0068】
<個別情報文字数入力手段>
個別情報文字数入力手段12は、受信機(2次元コード生成装置)2で符号化される個別情報の文字列と同じ文字数の値を入力するものである。入力された文字数の値は、仮個別情報付加手段14および2次元コードパラメータ生成手段15に出力される。
具体的には、図7(a)に符号702で示す"12345678901234567890123"(23文字)は仮個別情報の文字列を示す。ここで、仮個別情報とは、真の個別情報ではない。一般には、符号化演算支援装置1(放送局)においては、受信機(2次元コード生成装置)2の個別情報の値が不明であるが、その個別情報の文字列の文字数は既知であるものとする。後記するように、符号化演算支援装置1(放送局)では、共通情報と個別情報との文字列の文字数の合計値(この場合には47文字)については、ヘッダ情報とする必要がある。そのために、説明上、符号702で示す仮個別情報を示した。
【0069】
<記憶手段>
記憶手段13は、メモリやハードディスク等の記憶装置から構成され、入力された情報やCPU等の処理結果を一時記憶したり、動作プログラムを格納したりするものである。
この記憶手段13は、2次元コードパラメータ変換表と、誤り訂正符号化パラメータ変換表とを記憶することとした。
【0070】
≪2次元コードパラメータ変換表≫
2次元コードパラメータ変換表は、共通情報の文字列の文字種モードと、2次元コードの型と、共通情報文字列の許容最小文字数と、個別情報文字列の許容最大文字数との情報を予め関連付けて作成されたものである。ここで、2次元コードの型とは、QRコードの「型番(バージョン)」とQRコードの「誤り訂正レベル」とを合わせたものである。また、共通情報の文字列の文字種モードと、データ符号化のモードとは同じことを意味する。共通情報の文字列の文字種モードが“英数字モード”である場合の一例を図6(a)に示す。文字種モードによってデータ容量は異なる。例えば、3-Q型のQRコードの場合には、英数字モードで「47文字」、数字モードで「77文字」、8ビットバイトモードで「32文字」、漢字モードで「20文字」と定められている。
【0071】
また、図6(a)の「最小共通情報文字数」は、共通情報の文字列として許容できる最小の文字数を示し、「最大個別情報文字数」は、個別情報の文字列として許容できる最大の文字数を示す。これらは相補関係にある。例えば、3-Q型の場合、最小共通情報文字数」=24と、「最大個別情報文字数」=23とを合計すると、英数字モードのデータ容量「47文字」と等しい。つまり、共通情報の文字列の文字数と、個別情報の文字列の文字数との合計値が「47文字」となるように選べばよい。また、例えば、3-Q型の場合、「最小共通情報文字数」と「最大個別情報文字数」とはほぼ等しい。これは、3-Q型の場合、図6(b)に示すように、RSブロック数は“2”なので、符号化演算支援装置1(放送局側)と、受信機(2次元コード生成装置)2とでほぼ均等に処理を分担しようとするためである。なお、余剰ビットを生成するために、符号化演算支援装置1(放送局側)の方が大きな値となるようにした。
【0072】
また、例えば、4-H型の場合、「最小共通情報文字数」=38と、「最大個別情報文字数」=12とを合計すると、4-H型の英数字モードのデータ容量「50文字」と等しい。つまり、共通情報の文字列の文字数と、個別情報の文字列の文字数との合計値が「50文字」となるように選べばよい。また、4-H型の場合、「最小共通情報文字数」と「最大個別情報文字数」との比は、ほぼ3:1に等しい。これは、4-H型の場合、図6(b)に示すように、RSブロック数は“4”なので、符号化演算支援装置1(放送局側)と、受信機(2次元コード生成装置)2とでほぼ3:1に処理を分担しようとしたためである。なお、余剰ビットを生成するために、符号化演算支援装置1(放送局側)の方が大きな値となるようにした。
【0073】
また、図6(a)において、「優先順位」の項目は、この2次元コードパラメータ変換表において変換される候補(入力された各情報に合致する2次元コードの型の候補)が複数ある場合に利用するための優先順位を示す。
【0074】
2次元コードの型(型、誤り訂正レベル)と、共通情報の文字列の文字種モードと、共通情報文字列の文字数との情報を合わせて、2次元コードパラメータCpと定義する。具体例としては、型番=“ver3”,誤り訂正レベル=“Q”,文字種モード=“英数字モード”,共通情報文字列の文字数=“24”である場合には、2次元コードパラメータは、例えば、Cp={3, Q, EISU, 24}のように記述される。
【0075】
≪誤り訂正符号化パラメータ変換表≫
誤り訂正符号化パラメータ変換表は、2次元コードパラメータCpと、RSブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成されたものである。図6(b)に示すように、“3-Q型”、“4-M型”のRSブロック数は「2」、“4-H型”、“6-M型”のRSブロック数は「4」と定められている。また、図6(b)において“RSブロック”の項目は、(c,k,r)の3つのパラメータを有している。ここで、c=総コード語数,k=データコード語数,r=誤り訂正数と定められている。例えば、“3-Q型”は、(c,k,r)=(35,17,9)なので、RSブロックのサイズは、17×8=136ビットである。また、図6(b)において“前半処理ブロック数”の項目は、RSブロック数のうち、符号化演算支援装置1で分担するブロック数の一例を示す。例えば、“4-H型”の場合には、RSブロック=4のうち、3ブロックの処理を符号化演算支援装置1で分担することを意味する。
【0076】
<仮個別情報付加手段>
仮個別情報付加手段14は、共通情報入力手段11から、共通情報の文字列(共通情報テキスト)と、共通情報の文字種のモードとを取得し、個別情報文字数入力手段12から入力された文字数に合わせて、共通情報テキストの後ろに任意の文字列を付加するものである。共通情報テキストに文字列が付加されて生成されたテキストは、ヘッダ付加・データ符号化手段16に出力される。この仮個別情報付加手段14は、共通情報の文字種のモードに合わせた文字種を使用して文字列を追加する。つまり、共通情報の文字種のモードが「英数字モード」である場合には、英数字モードで使用可能な文字種を使用する。図7(a)に符号702で示す"12345678901234567890123"(23文字)は仮個別情報の文字列を示す。なお、この仮個別情報付加手段14や前記した個別情報文字数入力手段12を備えるようにしたのは、一般的なQRコード生成プログラムを改良して別の新たな機能を付加することを容易にするためであり、符号化演算支援装置1は必ずしもこれらの構成を備える必要はない。
【0077】
<2次元コードパラメータ生成手段>
2次元コードパラメータ生成手段15は、共通情報の文字列の文字数と、共通情報の文字列の文字種のモードと、個別情報の文字列の文字数とを入力し、記憶手段13に予め記憶された2次元コードパラメータ変換表を参照し、入力された各情報に合致する2次元コードの型を含む2次元コードパラメータを生成するものである。
【0078】
本実施形態では、2次元コードパラメータ生成手段15は、共通情報入力手段11から、共通情報の文字列と、共通情報の文字列の文字種のモードとの各情報を取得し、個別情報文字数入力手段12から仮個別情報の文字列の文字数(=個別情報の文字数)を取得することとした。2次元コードパラメータ生成手段15は、共通情報入力手段11から、共通情報の文字列を取得すると文字数をカウントする。なお、共通情報入力手段11が共通情報の文字列の文字数をカウントしてその文字数の情報を2次元コードパラメータ生成手段15が取得するようにしてもよい。
【0079】
また、2次元コードパラメータ生成手段15は、例えば、図6(a)に示す2次元コードパラメータ変換表を用いて2次元コードパラメータを生成する。例えば、「共通情報の文字列の文字数」=24、「文字種のモード」=英数字モード、「個別情報の文字列の文字数」=23である場合には、2次元コードパラメータ生成手段15は、2次元コードの型を、「型番」=「3」、「誤り訂正レベル」=「Q」と特定し、これらのパラメータを含む2次元コードパラメータCp={3, Q, EISU, 24}を生成する。生成された2次元コードパラメータCpは、ヘッダ付加・データ符号化手段16、誤り訂正符号化パラメータ変換手段17、および出力手段19に出力される。
【0080】
また、本実施形態では、2次元コードパラメータ生成手段15は、外部から、2次元コードの型(型番、誤り訂正レベル)の優先順位を取得し、入力された各情報に合致する2次元コードの型の候補が複数ある場合には、取得した優先順位にしたがって2次元コードパラメータを生成する。
【0081】
仮に2次元コードパラメータ生成手段15に入力する各情報が、例えば、「共通情報の文字列の文字数」=38、「文字種のモード」=英数字モード、「個別情報の文字列の文字数」=9である場合には、“3-Q型”と“4-H型”の2つの候補が抽出される。しかし、図6(a)に示す例では、“3-Q型”の優先順位が“1”なので、2次元コードパラメータ生成手段15は、2次元コードパラメータCp={3, Q, EISU, 24}を生成することとなる。
【0082】
外部から指定される優先順位は、2次元コードパラメータ変換表において外部から書き換えることができる。この場合、用途に応じて、様々な基準で優先順位を割り当てることができる。例えば、図6(a)に示したように、データサイズの小さい順に優先順位を割り当てることができる。また、図6(a)の具体例の場合に、次のように優先順位の基準を変更することができる。例えば、誤り訂正レベルの高い順に優先順位を割り当てる場合には、「誤り訂正レベル」=“H”の4-H型を第1位にすることができる。また、共通情報文字と個別情報文字の文字数がほぼ同じでなるべく多くの文字を使用したい場合には4-M型を第1位にすることができる。さらに、共通情報の文字列の文字数が長い順に割り当てる場合には6-M型を第1位にすることができる。このように符号化演算支援装置1の利用者が所望の基準で優先順位を指定することで、符号化演算支援装置1の利用者の利便性を向上させることができる。
【0083】
<ヘッダ付加・データ符号化手段>
ヘッダ付加・データ符号化手段16は、ヘッダ情報を符号化してヘッダを生成し、共通情報の文字列を符号化し、ヘッダに繋げることで第1ビット列データを生成するものである。ヘッダ付加・データ符号化手段16は、2次元コードパラメータ生成手段15から、2次元コードパラメータCpを取得する。また、ヘッダ付加・データ符号化手段16は、仮個別情報付加手段14から、共通情報テキストに仮個別情報の文字列が付加されて生成されたテキストを取得し、取得すると、取得テキストの文字数をカウントする。このカウント結果は、共通情報および個別情報の文字列の文字数の合計値を示す。
【0084】
ヘッダ付加・データ符号化手段16は、取得した2次元コードパラメータCpに含まれる共通情報の文字列の文字種のモードの値を符号化してモード指示子を生成する。QRコードの場合、モード指示子は、4ビットの情報で表される。
ヘッダ付加・データ符号化手段16は、仮個別情報付加手段14から取得したテキストからカウントした文字数を、2次元コードパラメータCpで示される2次元コードの型番にあったビット数で符号化して文字数指示子を生成する。QRコードの場合、文字数指示子は、「型番」と「文字種のモード」とに応じて8種類のビット数が用意されている。例えば、「型番」=3、「文字種モード」=EISUの場合には、文字数指示子は、9ビットの情報で表される。
ヘッダ付加・データ符号化手段16は、生成したモード指示子に、文字数指示子を繋げてヘッダを生成する。「型番」=3、「文字種モード」=EISUの場合には、ヘッダは、13ビットの情報で表される。
【0085】
ヘッダ付加・データ符号化手段16は、仮個別情報付加手段14から取得したテキスト(共通情報と仮個別情報)のうち、2次元コードパラメータCpで示される共通情報の文字列部分を、取得した共通情報の文字列の文字種のモードで符号化してビット列(符号化後ビットとよぶ)を生成する。図7(a)に示す例のように、共通情報の文字列が24文字、「文字種モード」=EISUの場合には、図7(b)に示す符号化後ビット703は、132ビットの情報で表される。つまり、"http://k.nhk.jp/cas.cgi/"(24文字)を英数字モードでデータ符号化した結果が132ビットになる。その結果、ヘッダに繋げると、145ビットの情報で表される。ヘッダ付加・データ符号化手段16は、ヘッダに符号化後ビットを繋げたビット列(第1ビット列データ)を誤り訂正符号計算手段18に出力する。
【0086】
<誤り訂正符号化パラメータ変換手段>
誤り訂正符号化パラメータ変換手段17は、記憶手段13に予め記憶された誤り訂正符号化パラメータ変換表を参照して、入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、共通情報の文字列のデータ符号化後のビット数を算出し、誤り訂正ブロック数を算出し、誤り訂正符号計算手段18に対して誤り訂正計算を行う部分を指定するものである。
【0087】
本実施形態では、誤り訂正符号化パラメータ変換手段17は、2次元コードパラメータ生成手段15から、生成された2次元コードパラメータCpを取得することとした。具体的には、誤り訂正符号化パラメータ変換手段17は、3-Q型の2次元コードパラメータCpが入力されると、図6(b)に示す誤り訂正符号化パラメータ変換表から、RSパラメータとして、「RSブロック数」=2、「RSブロック」=(35,17,9)、「前半処理ブロック数」=1の各情報が記述された行を特定する。RSブロックのサイズは、17バイト(136ビット)と求められる。
【0088】
また、本実施形態では、誤り訂正符号化パラメータ変換手段17は、共通情報の文字列のデータ符号化後のビット数と、第1ビット列データのビット数とを算出することとした。具体的には、図7(a)に示す例のように、共通情報の文字列が24文字、「文字種モード」=EISUの場合には、誤り訂正符号化パラメータ変換手段17は、共通情報の文字列のデータ符号化後のビット数として、式(1)の右辺の第3項および第4項を計算し、132ビットの情報を取得する。また、第1ビット列データのビット数として、式(1)の右辺すべての項を計算し、145ビットの情報を取得する。
【0089】
B=4+C+11(D DIV 2)+6(D MOD 2) … 式(1)
ここで、Bはビット列の長さ、Cは文字数指示子のビット数、Dは入力データ文字数をそれぞれ示す。なお、QRコードの場合、任意の数のデータ文字数に対するビット列の長さは、文字種のモードに応じて異なっており、文字種のモードが英数字モードの場合には、式(1)で計算することが規定されている。
【0090】
この例では、第1ビット列データのビット数(145ビット)を、RSブロックのサイズ(136ビット)で除算すると、1余り9である。つまり、この場合には、第1ビット列データのビット数以下となるような誤り訂正符号のRSブロック数の最大値は、1である。なお、余り9が余剰ビットとなる。
【0091】
そして、誤り訂正符号化パラメータ変換手段17は、算出したRSブロックのサイズ(例えば136ビット)と、共通情報の文字列のデータ符号化後のビット数(例えば132ビット)と、RSパラメータ(例えば、3-Q型についての、RSブロック数、RSブロック、前半処理ブロック数の各情報)とを、ブロック情報として誤り訂正符号計算手段18に出力することで、誤り訂正符号計算手段18に対して、ビット列のうち誤り訂正計算をすべき部分を指定する。
【0092】
仮に、第2の例として、4-H型の2次元コードパラメータCpが入力されると、誤り訂正符号化パラメータ変換手段17は、図6(b)に示す誤り訂正符号化パラメータ変換表から、RSパラメータとして、「RSブロック数」=4、「RSブロック」=(25,9,8)、「前半処理ブロック数」=3の各情報が記述された行を特定する。RSブロックのサイズは、9バイト(72ビット)と求められる。また、この第2の例において、共通情報の文字列が38文字、「文字種モード」=EISUである場合には、誤り訂正符号化パラメータ変換手段17は、前記式(1)から、38文字の共通情報の文字列の符号化後のビット数として、222ビットを算出する。なお、38文字の共通情報の文字列のデータ符号化後のビット数は209ビットとなる。この第2の例では、第1ビット列データのビット数(222ビット)を、RSブロックのサイズ(72ビット)で除算すると、3余り6である。つまり、この場合には、第1ビット列データのビット数以下となるような誤り訂正符号のRSブロック数の最大値は、3である。なお、余り6が余剰ビットとなる。
【0093】
<誤り訂正符号計算手段>
誤り訂正符号計算手段18は、ヘッダ付加・データ符号化手段16から取得した第1ビット列データのビット数のうち、誤り訂正符号化パラメータ変換手段17で指定された誤り訂正ブロックに該当するデータを示すデータ符号D1について、指定された誤り訂正パラメータで誤り訂正計算を行って誤り訂正符号E1を算出するものである。算出されたデータ符号D1および誤り訂正符号E1を部分的なQRコードとして出力手段19に出力される。
【0094】
また、誤り訂正符号計算手段18は、共通情報の文字列の符号化後のビット列(図7(b)に示す符号化後ビット703)のうち誤り訂正計算されなかったビット列を示す余剰ビットB1を出力手段19に出力する。また、本実施形態では、誤り訂正符号計算手段18は、誤り訂正計算がどのRSブロックまで終了しているかをRSブロックのブロック位置で示す計算済みブロック数N1を出力手段19に出力する。なお、予め定められた順序でRSブロックを計算する場合や、RSブロック数が2であるQRコードの場合には、計算済みブロック数N1の情報を省略してもよい。
【0095】
具体的には、図7(a)に示す例のように、共通情報の文字列が24文字、「文字種モード」=EISUであって、3-Q型の場合には、誤り訂正符号計算手段18は、データ符号化後の結果のビット列(ヘッダから数えて145ビット)のうち、指定されたRSブロック(136ビット)に該当するデータ(=データ符号D1)について、誤り訂正符号を計算する。そして、誤り訂正符号計算手段18は、データ符号D1(136ビット)と、共通情報の文字列(24文字)のデータ符号化後の結果のビット列(132ビット)のうち、ビット列の終端部にあったために誤り訂正計算がなされなかった余剰ビット(9ビット)と、計算された誤り訂正符号(36ビット)とを出力する。
【0096】
また、前記した第2の例のように、共通情報の文字列が38文字、「文字種モード」=EISUであって、4-H型の場合には、誤り訂正符号計算手段18は、データ符号化後の結果のビット列(ヘッダから数えて222ビット)のうち、指定された3つのRSブロック(それぞれが72ビット)に該当するデータを順に誤り訂正符号を計算する。この場合には、3つのRSブロックをデータ符号D1(216ビット)と表記する。そして、誤り訂正符号計算手段18は、データ符号D1(216ビット)と、共通情報の文字列(38文字)のデータ符号化後の結果のビット列(206ビット)のうち、ビット列の終端部にあったために誤り訂正計算がなされなかった余剰ビット(6ビット)と、計算された誤り訂正符号(36ビット)とを出力する。
【0097】
<出力手段>
出力手段19は、誤り訂正符号化対象としたデータ符号D1と、余剰ビットB1と、算出した誤り訂正符号E1と、生成した2次元コードパラメータCpと、計算済みブロック数(RSブロックのブロック位置)N1とを出力する。ここで、データ符号D1および誤り訂正符号E1が部分的なQRコードを示す。以下では、2次元コードパラメータCpと、余剰ビットB1と、計算済みブロック数(RSブロックのブロック位置)N1とを、1つにまとめて単にパラメータと呼ぶ。つまり、出力手段19は、部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを出力する。これら部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とは、受信機(2次元コード生成装置)2で利用される。
【0098】
[2次元コード生成装置の構成]
次に、図2を参照して、受信機(2次元コード生成装置)2の構成について説明する。
受信機(2次元コード生成装置)2は、ハードウェア装置とソフトウェアとが協働することによって、前記したハードウェア資源がプログラムによって制御されることにより実現され、図2に示すように、個別情報入力手段21と、データ・パラメータ入力手段22と、記憶手段23と、2次元コードパラメータ・余剰ビット抽出手段24と、データ符号化・余剰ビット付加手段25と、誤り訂正符号化パラメータ変換手段26と、誤り訂正符号計算手段27と、2次元コード化手段28と、表示手段29とを備えている。
【0099】
<個別情報入力手段>
個別情報入力手段21は、個別情報の文字列を入力するものである。個別情報は、受信機やその利用者の個別情報であり、例えば、B-CASカード番号や郵便番号等である。入力された個別情報の文字列は、データ符号化・余剰ビット付加手段25に出力される。
【0100】
<データ・パラメータ入力手段>
データ・パラメータ入力手段22は、図1に示す符号化演算支援装置1で生成されたデータおよびパラメータを入力するものである。ここで、データおよびパラメータとは、部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを意味する。このうち、パラメータ(Cp、B1、N1)は、2次元コードパラメータ・余剰ビット抽出手段24に出力される。また、部分的なQRコード(D1、E1)と、パラメータ(Cp)は、2次元コード化手段28に出力される。
【0101】
<記憶手段>
記憶手段23は、メモリやハードディスク等の記憶装置から構成され、入力された情報やCPU等の処理結果を一時記憶したり、動作プログラムを格納したりするものである。この記憶手段23は、誤り訂正符号化パラメータ変換表を記憶することとした。誤り訂正符号化パラメータ変換表は、図6(b)に例示したものにおいて、「前半処理ブロック数」の項目を省略したテーブルと同様なものである。
【0102】
<2次元コードパラメータ・余剰ビット抽出手段>
2次元コードパラメータ・余剰ビット抽出手段24は、データ・パラメータ入力手段22に入力したデータおよびパラメータのうち、2次元コードパラメータCpと、余剰ビットB1と、計算済みブロック数N1とを抽出するものである。抽出されたパラメータのうち、2次元コードパラメータCpおよび余剰ビットB1は、データ符号化・余剰ビット付加手段25に出力される。また、抽出されたパラメータのうち、2次元コードパラメータCpおよび計算済みブロック数N1は、誤り訂正符号化パラメータ変換手段26に出力される。
【0103】
<データ符号化・余剰ビット付加手段>
データ符号化・余剰ビット付加手段25は、入力された個別情報を符号化し、余剰ビットに繋げることで第2ビット列データを生成するものである。本実施形態では、データ符号化・余剰ビット付加手段25は、個別情報入力手段21から、個別情報を取得し、2次元コードパラメータCpで指定される文字種のモードで符号化し、余剰ビットB1の後ろに繋げて第2ビット列データを生成し、誤り訂正符号計算手段27に出力する。
【0104】
具体的には、図7(a)に示す例のように、個別情報の文字列が23文字、「文字種モード」=EISUであって、3-Q型の場合には、前記した式(1)の右辺の第3項および第4項の計算から、個別情報の文字列のデータ符号化後のビット数は、127ビットとなる。ここで、前記したように、共通情報の文字列が24文字の場合の余剰ビットB1は、9ビットであったので、この例の場合には、第2ビット列データのビット列の長さは、136ビットとなり、RSブロックのサイズ(17バイト=136ビット)と等しくなる。
【0105】
<誤り訂正符号化パラメータ変換手段>
誤り訂正符号化パラメータ変換手段26は、記憶手段23に予め記憶された誤り訂正符号化パラメータ変換表を参照して、入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、誤り訂正符号計算手段27に対して誤り訂正計算を行う部分を指定するものである。
【0106】
本実施形態では、誤り訂正符号化パラメータ変換手段26は、2次元コードパラメータ・余剰ビット抽出手段24から、2次元コードパラメータCpを取得することとした。具体的には、誤り訂正符号化パラメータ変換手段26は、3-Q型の2次元コードパラメータCpが入力されると、図6(b)に示す誤り訂正符号化パラメータ変換表から、RSパラメータとして、「RSブロック数」=2、「RSブロック」=(35,17,9)の各情報が記述された行を特定する。RSブロックのサイズは、17バイト(136ビット)と求められる。そして、誤り訂正符号化パラメータ変換手段26は、算出したRSブロックのサイズ(例えば136ビット)を、ブロック情報として誤り訂正符号計算手段18に出力することで、誤り訂正符号計算手段18に対して、RSブロックのサイズ毎に、誤り訂正計算をするように指定する。
【0107】
<誤り訂正符号計算手段>
誤り訂正符号計算手段27は、第2ビット列データのビット数のうち、誤り訂正符号化パラメータ変換手段17で指定された誤り訂正ブロックに該当するデータを示すデータ符号D2について誤り訂正計算を行って誤り訂正符号E2を算出するものである。算出されたデータ符号D2および誤り訂正符号E2は、2次元コード化手段28に出力される。
【0108】
<2次元コード化手段>
2次元コード化手段28は、データ・パラメータ入力手段22から取得した2次元コードパラメータCp、データ符号D1および誤り訂正符号E1と、誤り訂正符号計算手段27から取得したデータ符号D2および誤り訂正符号E2と、を用いて2次元コードを生成するものである。図7(a)に示す例のように、共通情報の文字列が24文字、個別情報の文字列が23文字、「文字種モード」=EISUであって、3-Q型の場合には、データ・パラメータ入力手段22から取得したデータ符号D1および誤り訂正符号E1は、図7(c)において“送信側”に示すビット列で模式的に表すことができる。同様に、誤り訂正符号計算手段27から取得したデータ符号D2および誤り訂正符号E2は、図7(c)において“受信側”に示すビット列で模式的に表すことができる。
【0109】
そして、2次元コード化手段28は、“送信側”と“受信側”のデータ符号を1つにまとめ、かつ、“送信側”と“受信側”の誤り訂正符号を1つにまとめるように並べ替える。この並び替え処理により、左からデータ符号D1、データ符号D2、誤り訂正符号E1、誤り訂正符号E2の順に整列される。そして、2次元コード化手段28は、マスク処理を行う。QRコードの場合、このマスク処理は、JIS X 0510の仕様で行ってもよいし、非特許文献1に記載の方法で行ってもよい。続いて、2次元コード化手段28は、ビット列の「0」に白、「1」に黒を割り当てる白黒割当処理を行い、処理結果を表示手段29に出力する。
【0110】
<表示手段>
表示手段29は、QRコードシンボルを表示するものであって、例えばLCD等から構成される。なお、図5に示すように、2次元コード生成装置2を受信装置(デジタル放送受信装置)4に含む場合には、表示手段29は、図5に示す表示手段43として構成される。
【0111】
前記した符号化演算支援装置1および2次元コード生成装置2は、一般的なコンピュータを、前記した各手段として機能させるプログラムにより動作させることで実現することができる。このプログラム(符号化演算支援プログラム、2次元コード生成プログラム)は、通信回線を介して提供することも可能であるし、CD−ROM等の記録媒体に書き込んで配布することも可能である。
【0112】
[デジタル放送システムの構成]
次に、図5を参照して、第1実施形態に係る2次元コード生成システムを、デジタル放送システムにおいて実施する例について説明する。図5に示したデジタル放送システムSは、デジタル放送送信装置3が、放送波を介して、受信装置(デジタル放送受信装置)4にデジタル放送を配信するシステムである。
【0113】
<デジタル放送送信装置>
デジタル放送送信装置3は、デジタル放送番組の番組コンテンツを配信するものであり、さらに、データ放送として電子文書(BML文書)を配信するものである。デジタル放送送信装置3は、受信装置4が、共通情報と、受信装置4毎に個別の情報である個別情報とを含む2次元コードを生成するための2次元コード生成プログラム等をBML文書に組み込む。また、デジタル放送送信装置3は、共通情報から得られた部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とをデータ放送コンテンツのBML文書に組み込む。このデジタル放送送信装置3は、主に、コンテンツ記憶手段31と、放送制御手段32と、放送送出手段33とを備えている。
【0114】
コンテンツ記憶手段31は、デジタル放送の番組コンテンツやデータ放送コンテンツ等の各種コンテンツを記憶するものであって、ハードディスク等の記憶装置である。
放送制御手段32は、コンテンツ記憶手段31から、番組コンテンツ、データ放送コンテンツ等を読み出して、放送送出手段33に出力するものである。この放送制御手段32には、符号化演算支援装置1を備えている。符号化演算支援装置1は、共通情報から得られた部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを出力する。
放送制御手段32は、データ放送コンテンツのBML文書に、部分的なQRコード(D1、E1)およびパラメータ(Cp、B1、N1)と、2次元コード生成プログラム等を組み込む。なお、放送制御手段32は、詳細な説明は省略するが、デジタル放送の限定受信システムに対応してコンテンツのスクランブル、鍵情報の暗号化等の各種の制御を行う。
放送送出手段33は、放送制御手段32から出力される番組コンテンツ、データ放送のデータ等を多重化して、データカルーセルで伝送(配信)するものである。
【0115】
<受信装置>
受信装置(デジタル放送受信装置)4は、放送波を介して、デジタル放送を受信するものであって、一般的なデジタル放送受信装置である。ここでは、受信装置4は、放送受信手段41と、ユーザ操作手段42と、表示手段43と、コンテンツ蓄積手段44と、記憶手段45と、受信制御手段46とを備えている。そして、受信装置4は、セキュリティモジュールである個別情報記憶カード5を装着されることで、デジタル放送の受信を可能としている。個別情報記憶カード5は、例えば、図4に示すB-CASカードである。
【0116】
放送受信手段41は、デジタル放送送信装置3から送出されるデジタル放送を受信するチューナ等から構成され、個別情報記憶カード5の装着時に受信したデジタル信号を受信制御手段46に出力するものである。
ユーザ操作手段42は、ユーザの操作により指定されるコマンドを受信制御手段46に出力するものであり、例えば、リモコン装置等である。
表示手段43は、受信制御手段46の処理結果として復号されたデジタル放送番組、データ放送を画面上に表示するものであり、例えば、LCD等である。
【0117】
コンテンツ蓄積手段44は、放送受信手段41で受信したデジタル放送番組等のコンテンツを記憶するものであり、ハードディスク等で構成される。
記憶手段45は、受信制御手段46等の動作プログラムやその処理結果等を記憶するものであり、メモリやハードディスク等で構成される。この記憶手段45には、個別情報を取得する個別情報取得プログラムが予め記憶されている。なお、個別情報取得プログラムはデータ放送により配信するようにしてもよい。この記憶手段45には、例えば、ユーザの住所、年齢等の個人情報を記憶した不揮発性メモリであるNVRAMも含むこととする。
【0118】
受信制御手段46は、放送受信手段41で受信したデジタル信号の再生・表示制御するものである。ここでは、受信制御手段46は、2次元コード生成装置2と、コンテンツ再生制御手段461と、表示制御手段462とを備えている。
【0119】
2次元コード生成装置2は、デジタル放送送信装置3から、2次元コード生成プログラムを含む電子文書を受信した際に、当該電子文書に組み込まれている情報(2次元コード生成プログラム)に基づいて機能するものである。2次元コード生成装置2は、デジタル放送送信装置3の符号化演算支援装置1が出力する情報を含む電子文書を受信した際に、当該電子文書に組み込まれている情報(部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1))に基づいて、個別情報記憶カード5から、個別情報としてカード番号を取得し、2次元コードとしてQRコードを生成し、表示手段43に表示させる。
【0120】
コンテンツ再生制御手段461は、受信した多重化されたデジタル信号から暗号化鍵情報やコンテンツ等を分離し、鍵情報を復号して、コンテンツをデスクランブルすることでコンテンツを再生する制御を行うものである。
【0121】
表示制御手段462は、コンテンツ再生制御手段461で再生されたコンテンツを表示手段43に表示させるものである。また、表示制御手段462は、データ放送の電子文書であるBMLを解析し、表示制御を行うものでもある。
【0122】
このように、受信装置4は、共通情報の符号化および誤り訂正符号計算については、予め配信側で算出された結果をそのまま利用し、個別情報の符号化および誤り訂正符号計算については、受信装置4内で実行し、2次元コードを生成し、表示する。
【0123】
[デジタル放送システムの動作]
次に、デジタル放送システムSの動作について図4を参照(適宜図5参照)して説明する。まず、デジタル放送送信装置3は、放送制御手段32によって、放送用の電子文書に情報(2次元コード生成プログラム等)を組み込み、2次元コード表示用電子文書を生成する。また、デジタル放送送信装置3は、放送制御手段32によって、放送用の電子文書に情報(部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1))を組み込み、2次元コード表示用電子文書を生成する。なお、放送制御手段32は、2次元コード生成プログラムと、部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とをまとめて組み込んでもよい。そして、デジタル放送送信装置3は、生成した2次元コード表示用電子文書を、放送送出手段33によって、放送波を介して配信(送出)する(S31)。
【0124】
一方、受信装置4(図4では受信機2と表記)は、放送受信手段41によって、放送波を介して、2次元コード表示用電子文書を受信する。そして、受信装置4は、受信制御手段46によって、2次元コード表示用電子文書を解析し、2次元コード生成プログラムを展開することによって2次元コード生成装置2として機能する。また、この2次元コード生成装置2は、2次元コード表示用電子文書に組み込まれている部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを取得すると、受信機2に装着されているB-CASカード(個別情報記憶カード)5のカード番号等の個別情報を取得する(S32)。さらに、受信装置4の2次元コード生成装置2は、2次元コードパラメータによって、カード番号等の個別情報と、取得した部分的なQRコードとから2次元コードを生成する(S33)。
【0125】
これにより、受信機2は、データ放送(電子文書)上に、共通情報の文字列および個別情報の文字列を含むQRコードシンボルを生成し表示する。視聴者は、携帯電話機6の2次元コード読み取り機能を用いることで、画面表示されたQRコードシンボルを読み取る。そして、視聴者が、読み取ったURLにアクセスする操作を行うと、QRコードシンボルの内容のうち、共通情報の文字列が例えば、放送事業者のCGIサーバのアドレスを意味していれば、個別情報の文字列がインターネットを介して、このCGIサーバに伝送され、放送事業者でユーザ登録が管理されることとなる。
【0126】
第1実施形態によれば、送信側の符号化演算支援装置1によって、共通情報の文字列の大部分およびヘッダ情報を符号化したデータ符号の誤り訂正計算を予め行っておくので、2次元コードを生成して表示する受信側では、2次元コードを生成する処理負荷を軽減することができる。
【0127】
特に、古い受信機においてデータサイズの大きな個別QRコードを生成する場合には、従来は数十秒単位の所要時間であったが、本実施形態のQRコード生成プログラムをダウンロードした古い受信機は、QRコードの生成対象を、ほぼ個別情報の文字列だけに絞ることができる。そのため、全体のデータサイズに対する個別情報の文字列サイズの割合(受信側が分担する割合)にも依存するが、従来の1/3〜2/3程度の高速表示が可能である。そのため、この時間短縮効果により、現在世の中に普及している受信機性能のばらつきを考慮したとしても、より多くの視聴者の利便性を向上させることができる。
【0128】
また、広く普及した一般の携帯電話機を、QRコード対応の読み取り装置として利用できるため、デジタル放送システムにおいて、視聴者のユーザ登録の用途だけに限定されずに、クイズ番組に対する視聴者の回答や、アンケートの回収といった利用にすぐにでも導入することができる。この場合、視聴者の回答内容や、アンケート記入内容が個別情報として管理されることとなる。
【0129】
(第2実施形態)
第2実施形態に係る2次元コード生成システムは、図8に示す符号化演算支援装置1Bおよび図2に示す受信機(2次元コード生成装置)2を備える。
符号化演算支援装置1Bは、テキスト入力手段51と、2次元コードパラメータ入力手段52と、記憶手段13と、ヘッダ付加・データ符号化手段16と、誤り訂正符号化パラメータ変換手段17と、誤り訂正符号計算手段18と、出力手段19とを備えている。なお、第1実施形態の符号化演算支援装置1と同じ構成には同じ符号を付して説明を省略する。
【0130】
テキスト入力手段51は、共通情報の文字列と仮個別情報の文字列とを繋げたテキストを入力するものである。なお、テキスト入力手段51は、文字種のモードも入力する。
このテキスト入力手段51において、共通情報の文字数には、図1に示した共通情報入力手段11に入力される共通情報の文字数と同様な制限がある。入力されたテキストおよび文字種のモードは、ヘッダ付加・データ符号化手段16に出力される。
【0131】
2次元コードパラメータ入力手段52は、外部から2次元コードパラメータCpを入力するものである。この入力された2次元コードパラメータCpは、ヘッダ付加・データ符号化手段16、誤り訂正符号化パラメータ変換手段17、および出力手段19に出力される。
【0132】
ヘッダ付加・データ符号化手段16は、テキスト入力手段51から、共通情報の文字列と仮個別情報の文字列とを繋げたテキストと文字種のモードとを取得し、2次元コードパラメータ入力手段52から、2次元コードパラメータCpを取得する。また、ヘッダ付加・データ符号化手段16は、共通情報の文字列と仮個別情報の文字列とを繋げたテキストを取得すると、取得テキストの文字数をカウントする。このカウント結果は、共通情報および個別情報の文字列の文字数の合計値を示す。
【0133】
第2実施形態に係る符号化演算支援装置1Bは、2次元コードパラメータCpを外部から入力するので、装置内部で生成する場合に比べて簡易な構成とすることができる。例えば、共通情報および個別情報の文字列の文字数が固定された個別2次元コードを生成する用途に適している。
【0134】
(第3実施形態)
次に、図9および図10を参照して、第3実施形態に係る2次元コード生成システムについて説明する。前記第1および第2実施形態は、2次元コードを生成するための符号化演算処理を2つの装置で分担したが、3つ以上の装置で分担するようにしてもよい。この場合、最初と最後をつなぐ途中の装置(中継装置)は、同様な符号化演算処理を同様に行う多段構成とすることができる。第3実施形態に係る2次元コード生成システムは、図1(または図8)に示す符号化演算支援装置1(1B)および図2に示す受信機(2次元コード生成装置)2と、少なくとも1つの符号化演算支援装置1C(図9参照)とを備える。なお、QRコードの場合、RSブロック数は「81」まで規定されているので、理論的には処理を81分割して79の中継装置を設けることが可能である。
【0135】
図9に示す符号化演算支援装置(中継装置)1Cは、図1(または図8)に示す符号化演算支援装置1(1B)、または、他の符号化演算支援装置1Cが出力するデータおよびパラメータを引き継ぎ情報として取得し、処理結果として生成したデータおよびパラメータを、取得した引き継ぎ情報に加えて、図2に示す受信機(2次元コード生成装置)2または他の符号化演算支援装置1Cに出力する。
【0136】
このときの処理の概要を図10に示す。ここでは、第3の実施形態に係る2次元コード生成システムを、デジタル放送システムに適用する場合を想定し、符号化演算支援装置(中継装置)1Cは、放送局に設けられるものとする。この場合、放送局内で最後の中継装置が、デジタル放送送信装置3(図5参照)に組み込まれることとしてもよいし、最後の中継装置が、データおよびパラメータをBML文書に組み込む機能を有した他のデジタル放送送信装置に出力することとしてもよい。
【0137】
以下では、簡便のため、符号化演算支援装置1Cが1つの場合であって、図1に示す符号化演算支援装置1からデータおよびパラメータを取得するものとして図10を参照して処理の概要を説明する。なお、図9においては、図1に示す符号化演算支援装置1が出力するデータおよびパラメータを、部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)と表記し、符号化演算支援装置(中継装置)1Cが出力するデータおよびパラメータを、部分的なQRコード(D3、E3)と、パラメータ(Cp、B3、N3)と表記した。順序が最初の符号化演算支援装置1の仮個別情報付加手段14は、ヘッダの文字数指示子として、共通情報の文字数と全ての個別情報の文字数との合計文字数を符号化する。
【0138】
図10に示すS11〜S14Cは、図3に示すS11〜S14と同様である。ただし、S14Cでは、符号化演算支援装置1は、符号化演算支援装置(中継装置)1Cに対してデータおよびパラメータ(D1、E1、Cp、B1、N1)を出力する。
【0139】
図10に示すS15〜S18は、S11〜S14Cと同様である。ただし、S15では、符号化演算支援装置(中継装置)1Cは、当該中継装置またはその利用者の個別情報を入力する。また、S17では、符号化演算支援装置(中継装置)1Cは、図1に示すヘッダ付加・データ符号化手段16によるヘッダ付加はしない代わりに、当該装置に入力される個別情報を符号化した後に、その符号化後のビット列の頭に、取得した余剰ビットB1を付加する。さらに、S18では、符号化演算支援装置(中継装置)1Cは、受信機(2次元コード生成装置)2に対してデータおよびパラメータ(D3、E3、Cp、B3、N3)を出力(配信)する。
【0140】
図10に示すS21〜S25は、図3に示したものと同様なので、説明を省略する。ただし、S24Cでは、受信機(2次元コード生成装置)2は、データ符号D1および誤り訂正符号E1と、データ符号D3および誤り訂正符号E3とを取得し、データ符号D2および誤り訂正符号E2を有しているので、並び替え処理は次のように行う。すなわち、データ符号のグループと、誤り訂正符号のグループとに分別し、符号化演算処理を適用した順番に入れ替える。そのため、先頭(左)からデータ符号D1、データ符号D3、データ符号D2、誤り訂正符号E1、誤り訂正符号E3、誤り訂正符号E2の順に整列させる。なお、符号化演算支援装置側のS14Cで図示したシンボルと、中継装置のS18で図示したシンボルと、受信機側のS23で図示したシンボルとの3つの情報を合わせることで、受信機側のS25でQRコードシンボルが完成することを概念的に示した。
【0141】
図9に戻って、符号化演算支援装置(中継装置)1Cの構成を説明する。
符号化演算支援装置(中継装置)1Cは、個別情報入力手段61と、データ・パラメータ入力手段62と、記憶手段63と、2次元コードパラメータ・余剰ビット抽出手段64と、データ符号化・余剰ビット付加手段65と、誤り訂正符号化パラメータ変換手段66と、誤り訂正符号計算手段67と、出力手段68とを備えている。
【0142】
個別情報入力手段61と、データ・パラメータ入力手段62と、記憶手段63と、2次元コードパラメータ・余剰ビット抽出手段64と、データ符号化・余剰ビット付加手段65は、図2に示す受信機(2次元コード生成装置)2の個別情報入力手段21と、データ・パラメータ入力手段22と、記憶手段23と、2次元コードパラメータ・余剰ビット抽出手段24と、データ符号化・余剰ビット付加手段25と同様なので、説明を省略する。ただし、データ・パラメータ入力手段62は、部分的なQRコード(D1、E1)と、2次元コードパラメータCpとを出力手段68に出力する。
【0143】
また、誤り訂正符号化パラメータ変換手段66と、誤り訂正符号計算手段67と、出力手段68は、図1に示す符号化演算支援装置1の誤り訂正符号化パラメータ変換手段17と、誤り訂正符号計算手段18と、出力手段19と同様なので、説明を省略する。ただし、出力手段19は、部分的なQRコード(D1、E1、D3、E3)と、パラメータ(Cp、B3、N3)とを出力する。したがって、受信機(2次元コード生成装置)2の2次元コード化手段28は、並び替え処理により、左からデータ符号D1、データ符号D3、データ符号D2、誤り訂正符号E1、誤り訂正符号E3、誤り訂正符号E2の順に整列する。
【0144】
第3実施形態によれば、視聴者の受信機2に2次元コードを生成するための符号化演算処理を放送局側の多くの装置で分担できるので、より大きな2次元コードを視聴者の受信機2に表示することができる。例えば、本発明で適用できる最小サイズは、QRコードでは、「型番3」の29×29モジュールであるが、QRコードの最大サイズは「型番40」の177×177モジュールまであるので、こういった大きなサイズのQRコードシンボルが表示可能となる。
【0145】
なお、放送事業者では、自前の情報を視聴者に公開するだけではなく、例えば、天気予報であれば気象庁から情報を取得するなどしているので、中継装置を官公庁等の外部のサーバとしてもよい。
【0146】
また、共通情報の文字列として、URLを用いる代わりに、「mailto: … 」のようにメールアドレスやメール本文とすることもできる。そして、各中継装置またはその利用者の個別情報を、メールアドレス、メール本文、メール本文への署名とすることもできる。仮に、各中継装置の利用者の署名を、各中継装置で入力される個別情報として、かつ、共通情報をURLとすると、受信機2で入力された個別情報は、各中継装置の利用者全員の賛同がなければ、該当するURLに送信されない。この意味で、グループ署名に適用することが可能である。この場合、受信機2から収集され管理される個別情報へのアクセスを制限するといった運用が可能となる。
【0147】
(第4実施形態)
第4実施形態に係る2次元コード生成システムは、送信側でマスク処理まで行うこととした。このときの処理の概要を図11に示す。図11に示すS11〜S14Dは、図3に示すS11〜S14と同様である。ただし、S13とS14Dとの間に、符号化演算支援装置1は、生成した部分的なQRコード(D1、E1)にマスク処理を行う。このマスク処理は、図1に示す誤り訂正符号計算手段18において誤り訂正計算の処理の後に続いて行ってもよいし、図示しない専用のマスク処理手段を設けて行ってもよい。そして、S14Dでは、マスク処理された部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを出力する。
【0148】
図11に示すS21〜S25は、図3に示したものと同様なので、説明を省略する。ただし、受信機(2次元コード生成装置)2は、S23に続けて、個別情報の文字列に該当する部分だけマスク処理を行う(S231)。そのため、S24Dの2次元コード化処理は、並び替え処理だけを行う。
【0149】
第4実施形態によれば、送信側において、誤り訂正計算等の符号化演算処理に加えて、共通情報の文字列に該当する部分のマスク処理の数値演算処理まで行うので、受信側の処理負荷をより軽減することができる。
【0150】
(第5実施形態)
第5実施形態に係る2次元コード生成システムは、送信側でマスク処理に加えて、部分的なQRコードのシンボル化まで行うこととした。このときの処理の概要を図12に示す。図12に示すS11〜S14Eは、図11に示すS11〜S14Dと同様である。ただし、S131とS14Eとの間に、符号化演算支援装置1は、マスク処理後の部分的なQRコード(D1、E1)をシンボル化して画像ファイルとする。この処理は、図1に示す誤り訂正符号計算手段18においてマスク処理の後に続いて行ってもよいし、専用の2次元コード化手段28(図2参照)を設けて行ってもよい。そして、S14Eでは、画像ファイル化された部分的なQRコード(D1、E1)と、パラメータ(Cp、B1、N1)とを出力する。
【0151】
図12に示すS21〜S25は、図11に示したものと同様なので、説明を省略する。ただし、受信機(2次元コード生成装置)2は、S231に続けて、個別情報の文字列に該当する部分を文字列に変換する処理を行う(S232)。そのため、S24Eの2次元コード化処理は、送信側から取得した画像データ(部分的なQRコード)上に、S232で変換した文字列を配置する処理を行う。つまり、S24Eの処理は、共通情報の部分的なQRコードシンボルの上に、個別情報の部分的なQRコードシンボルを重ね合わせる処理
である。
【0152】
なお、S232において、QRコードで読み取らせようとするテキスト(個別情報の文字列)を符号化したビット列を、文字列に変換する処理は、非特許文献1に開示されているように、例えば、黒で塗りつぶされるシンボル部分を、“■”文字(文字コードShift JIS:0x81A1)に置き換えたり、左上1/4が黒い形状の外字フォントを用いて置き換えたりすることで実現できる。
【0153】
第5実施形態によれば、送信側において、誤り訂正計算等の符号化演算処理に加えて、部分的なQRコードのシンボル化まで行うので、受信機2は、並べ替え処理等をする必要がなく、受信側の処理負荷をより軽減することができる。
【0154】
以上、本発明の各実施形態について説明したが、本発明は、これらの実施形態には限定されない。その仕様さえ満足するならば、例えば、QRコード以外の2次元コードであっても用いることができる。また、各実施形態では、個別情報記憶カード5をB-CASカードとして例示したが、本発明はこれに限定されるものではなく、他のICカードを用いてもよい。
【符号の説明】
【0155】
1,1B 符号化演算支援装置
1C 符号化演算支援装置(中継装置)
11 共通情報入力手段
12 個別情報文字数入力手段
13 記憶手段
14 仮個別情報付加手段
15 2次元コードパラメータ生成手段
16 ヘッダ付加・データ符号化手段
17 誤り訂正符号化パラメータ変換手段
18 誤り訂正符号計算手段
19 出力手段
2 受信機(2次元コード生成装置)
21 個別情報入力手段
22 データ・パラメータ入力手段
23 記憶手段
24 2次元コードパラメータ・余剰ビット抽出手段
25 データ符号化・余剰ビット付加手段
26 誤り訂正符号化パラメータ変換手段
27 誤り訂正符号計算手段
28 2次元コード化手段
29 表示手段
3 デジタル放送送信装置
31 コンテンツ記憶手段
32 放送制御手段
33 放送送出手段
4 受信装置(デジタル放送受信装置)
41 放送受信手段
42 ユーザ操作手段
43 表示手段
44 コンテンツ蓄積手段
45 記憶手段
46 受信制御手段
461 コンテンツ再生制御手段
462 表示制御手段
5 個別情報記憶カード
6 携帯電話機
51 テキスト入力手段
52 2次元コードパラメータ入力手段
61 個別情報入力手段
62 データ・パラメータ入力手段
63 記憶手段
64 2次元コードパラメータ・余剰ビット抽出手段
65 データ符号化・余剰ビット付加手段
66 誤り訂正符号化パラメータ変換手段
67 誤り訂正符号計算手段
68 出力手段
【特許請求の範囲】
【請求項1】
複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成し電子文書表示デバイス上に表示する2次元コード生成装置と、2次元コードパラメータに基づいて前記共通情報および個別情報の文字列の符号化および誤り訂正計算を行う符号化演算を支援する符号化演算支援装置とを備える2次元コード生成システムにおける前記符号化演算支援装置であって、
前記2次元コードパラメータは、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含み、
前記符号化演算支援装置は、
前記2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段と、
前記共通情報の文字列の文字種のモードを符号化したモード指示子と、前記共通情報および個別情報の文字列の文字数の合計値を符号化した文字数指示子とを繋げてヘッダを生成し、前記文字種のモードで前記共通情報の文字列を符号化し、前記ヘッダに繋げることで第1ビット列データを生成するヘッダ付加・データ符号化手段と、
前記2次元コードパラメータを入力し、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記共通情報の文字列のデータ符号化後のビット数を算出すると共に、前記求めた誤り訂正パラメータから、前記第1ビット列データのビット数以下となるような最大の誤り訂正符号の誤り訂正ブロック数を算出し、各算出結果と前記求めた誤り訂正パラメータとにより誤り訂正計算手順を指定する誤り訂正符号化パラメータ変換手段と、
前記第1ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する誤り訂正符号計算手段と、
前記データ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記算出した誤り訂正符号と、前記2次元コードパラメータとを出力する出力手段と、
を備えることを特徴とする符号化演算支援装置。
【請求項2】
前記記憶手段は、
前記共通情報の文字列の文字種モードと、前記2次元コードの型と、前記共通情報文字列の許容最小文字数と、前記個別情報文字列の許容最大文字数との情報を予め関連付けて作成された2次元コードパラメータ変換表をさらに記憶し、
前記共通情報の文字列の文字数と、前記個別情報の文字列の文字数と、前記共通情報の文字列の文字種のモードとの各情報を入力し、前記2次元コードパラメータ変換表を参照し、前記入力された各情報に合致する2次元コードの型を含む2次元コードパラメータを生成する2次元コードパラメータ生成手段をさらに備えることを特徴とする請求項1に記載の符号化演算支援装置。
【請求項3】
前記2次元コードパラメータ生成手段は、外部から、前記2次元コードの型の優先順位を取得し、前記入力された各情報に合致する2次元コードの型の候補が複数ある場合には、前記取得した優先順位にしたがって前記2次元コードパラメータを生成することを特徴とする請求項2に記載の符号化演算支援装置。
【請求項4】
外部から前記2次元コードパラメータを入力する2次元コードパラメータ入力手段をさらに備えることを特徴とする請求項1に記載の符号化演算支援装置。
【請求項5】
複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードの生成過程で行う文字列の符号化および誤り訂正計算を行う符号化演算を支援するために、
複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含む2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段を備えたコンピュータを、
前記共通情報の文字列の文字種のモードを符号化したモード指示子と、前記共通情報および個別情報の文字列の文字数の合計値を符号化した文字数指示子とを繋げてヘッダを生成し、前記文字種のモードで前記共通情報の文字列を符号化し、前記ヘッダに繋げることで第1ビット列データを生成するヘッダ付加・データ符号化手段、
前記2次元コードパラメータを入力し、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記共通情報の文字列のデータ符号化後のビット数を算出すると共に、前記求めた誤り訂正パラメータから、前記第1ビット列データのビット数以下となるような最大の誤り訂正符号の誤り訂正ブロック数を算出し、各算出結果と前記求めた誤り訂正パラメータとにより誤り訂正計算手順を指定する誤り訂正符号化パラメータ変換手段、
前記第1ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する誤り訂正符号計算手段、
前記データ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記算出した誤り訂正符号と、前記2次元コードパラメータとを出力する出力手段、
として機能させることを特徴とする符号化演算支援プログラム。
【請求項6】
複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成し電子文書表示デバイス上に表示する2次元コード生成装置と、2次元コードパラメータに基づいて前記共通情報および個別情報の文字列の符号化および誤り訂正計算を行う符号化演算を支援する符号化演算支援装置とを備える2次元コード生成システムにおける前記2次元コード生成装置であって、
前記2次元コードパラメータは、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含み、
前記2次元コード生成装置は、
前記2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段と、
前記個別情報を入力する個別情報入力手段と、
前記符号化演算支援装置で生成されたデータおよびパラメータとして、前記共通情報の文字列を符号化してヘッダに繋げた第1ビット列データのビット数のうち、予め指定された誤り訂正ブロックに該当するデータを示すデータ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記データ符号から算出された誤り訂正符号と、前記2次元コードパラメータとを入力するデータ・パラメータ入力手段と、
前記入力された個別情報を符号化し、前記余剰ビットに繋げることで第2ビット列データを生成するデータ符号化・余剰ビット付加手段と、
前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記求めた誤り訂正パラメータにより誤り訂正計算手順を指定する誤り訂正符号化パラメータ変換手段と、
前記第2ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する誤り訂正符号計算手段と、
前記入力された2次元コードパラメータ、データ符号および誤り訂正符号と、前記第2ビット列データに含まれるデータ符号および前記算出された誤り訂正符号とを用いて前記2次元コードを生成する2次元コード化手段と、
を備えることを特徴とする2次元コード生成装置。
【請求項7】
複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成するために、
複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含む2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段を備えたコンピュータを、
前記個別情報を入力する個別情報入力手段、
入力データおよび入力パラメータとして、前記共通情報の文字列を符号化してヘッダに繋げた第1ビット列データのビット数のうち、予め指定された誤り訂正ブロックに該当するデータを示すデータ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記データ符号から算出された誤り訂正符号と、前記2次元コードパラメータとを入力するデータ・パラメータ入力手段、
前記入力された個別情報を符号化し、前記余剰ビットに繋げることで第2ビット列データを生成するデータ符号化・余剰ビット付加手段、
前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記求めた誤り訂正パラメータにより誤り訂正計算手順を指定する誤り訂正符号化パラメータ変換手段、
前記第2ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する誤り訂正符号計算手段、
前記入力された2次元コードパラメータ、データ符号および誤り訂正符号と、前記第2ビット列データに含まれるデータ符号および前記算出された誤り訂正符号とを用いて前記2次元コードを生成する2次元コード化手段、
として機能させることを特徴とする2次元コード生成プログラム。
【請求項1】
複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成し電子文書表示デバイス上に表示する2次元コード生成装置と、2次元コードパラメータに基づいて前記共通情報および個別情報の文字列の符号化および誤り訂正計算を行う符号化演算を支援する符号化演算支援装置とを備える2次元コード生成システムにおける前記符号化演算支援装置であって、
前記2次元コードパラメータは、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含み、
前記符号化演算支援装置は、
前記2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段と、
前記共通情報の文字列の文字種のモードを符号化したモード指示子と、前記共通情報および個別情報の文字列の文字数の合計値を符号化した文字数指示子とを繋げてヘッダを生成し、前記文字種のモードで前記共通情報の文字列を符号化し、前記ヘッダに繋げることで第1ビット列データを生成するヘッダ付加・データ符号化手段と、
前記2次元コードパラメータを入力し、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記共通情報の文字列のデータ符号化後のビット数を算出すると共に、前記求めた誤り訂正パラメータから、前記第1ビット列データのビット数以下となるような最大の誤り訂正符号の誤り訂正ブロック数を算出し、各算出結果と前記求めた誤り訂正パラメータとにより誤り訂正計算手順を指定する誤り訂正符号化パラメータ変換手段と、
前記第1ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する誤り訂正符号計算手段と、
前記データ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記算出した誤り訂正符号と、前記2次元コードパラメータとを出力する出力手段と、
を備えることを特徴とする符号化演算支援装置。
【請求項2】
前記記憶手段は、
前記共通情報の文字列の文字種モードと、前記2次元コードの型と、前記共通情報文字列の許容最小文字数と、前記個別情報文字列の許容最大文字数との情報を予め関連付けて作成された2次元コードパラメータ変換表をさらに記憶し、
前記共通情報の文字列の文字数と、前記個別情報の文字列の文字数と、前記共通情報の文字列の文字種のモードとの各情報を入力し、前記2次元コードパラメータ変換表を参照し、前記入力された各情報に合致する2次元コードの型を含む2次元コードパラメータを生成する2次元コードパラメータ生成手段をさらに備えることを特徴とする請求項1に記載の符号化演算支援装置。
【請求項3】
前記2次元コードパラメータ生成手段は、外部から、前記2次元コードの型の優先順位を取得し、前記入力された各情報に合致する2次元コードの型の候補が複数ある場合には、前記取得した優先順位にしたがって前記2次元コードパラメータを生成することを特徴とする請求項2に記載の符号化演算支援装置。
【請求項4】
外部から前記2次元コードパラメータを入力する2次元コードパラメータ入力手段をさらに備えることを特徴とする請求項1に記載の符号化演算支援装置。
【請求項5】
複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードの生成過程で行う文字列の符号化および誤り訂正計算を行う符号化演算を支援するために、
複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含む2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段を備えたコンピュータを、
前記共通情報の文字列の文字種のモードを符号化したモード指示子と、前記共通情報および個別情報の文字列の文字数の合計値を符号化した文字数指示子とを繋げてヘッダを生成し、前記文字種のモードで前記共通情報の文字列を符号化し、前記ヘッダに繋げることで第1ビット列データを生成するヘッダ付加・データ符号化手段、
前記2次元コードパラメータを入力し、前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記共通情報の文字列のデータ符号化後のビット数を算出すると共に、前記求めた誤り訂正パラメータから、前記第1ビット列データのビット数以下となるような最大の誤り訂正符号の誤り訂正ブロック数を算出し、各算出結果と前記求めた誤り訂正パラメータとにより誤り訂正計算手順を指定する誤り訂正符号化パラメータ変換手段、
前記第1ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する誤り訂正符号計算手段、
前記データ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記算出した誤り訂正符号と、前記2次元コードパラメータとを出力する出力手段、
として機能させることを特徴とする符号化演算支援プログラム。
【請求項6】
複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成し電子文書表示デバイス上に表示する2次元コード生成装置と、2次元コードパラメータに基づいて前記共通情報および個別情報の文字列の符号化および誤り訂正計算を行う符号化演算を支援する符号化演算支援装置とを備える2次元コード生成システムにおける前記2次元コード生成装置であって、
前記2次元コードパラメータは、複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含み、
前記2次元コード生成装置は、
前記2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段と、
前記個別情報を入力する個別情報入力手段と、
前記符号化演算支援装置で生成されたデータおよびパラメータとして、前記共通情報の文字列を符号化してヘッダに繋げた第1ビット列データのビット数のうち、予め指定された誤り訂正ブロックに該当するデータを示すデータ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記データ符号から算出された誤り訂正符号と、前記2次元コードパラメータとを入力するデータ・パラメータ入力手段と、
前記入力された個別情報を符号化し、前記余剰ビットに繋げることで第2ビット列データを生成するデータ符号化・余剰ビット付加手段と、
前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記求めた誤り訂正パラメータにより誤り訂正計算手順を指定する誤り訂正符号化パラメータ変換手段と、
前記第2ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する誤り訂正符号計算手段と、
前記入力された2次元コードパラメータ、データ符号および誤り訂正符号と、前記第2ビット列データに含まれるデータ符号および前記算出された誤り訂正符号とを用いて前記2次元コードを生成する2次元コード化手段と、
を備えることを特徴とする2次元コード生成装置。
【請求項7】
複数の2次元コード生成装置において共通な共通情報の文字列と、各2次元コード生成装置が個別に取得する個別情報の文字列とを含む2次元コードを生成するために、
複数の誤り訂正ブロックを有する2次元コードの型と、前記共通情報の文字列の文字種モードと、前記共通情報文字列の文字数との情報を含む2次元コードパラメータと、前記誤り訂正ブロックの個数およびサイズを指定する誤り訂正パラメータとを関連付けて予め作成された誤り訂正符号化パラメータ変換表を記憶する記憶手段を備えたコンピュータを、
前記個別情報を入力する個別情報入力手段、
入力データおよび入力パラメータとして、前記共通情報の文字列を符号化してヘッダに繋げた第1ビット列データのビット数のうち、予め指定された誤り訂正ブロックに該当するデータを示すデータ符号と、前記共通情報の文字列の符号化後のビット列のうち誤り訂正計算されなかったビット列を示す余剰ビットと、前記データ符号から算出された誤り訂正符号と、前記2次元コードパラメータとを入力するデータ・パラメータ入力手段、
前記入力された個別情報を符号化し、前記余剰ビットに繋げることで第2ビット列データを生成するデータ符号化・余剰ビット付加手段、
前記誤り訂正符号化パラメータ変換表を参照して、前記入力された2次元コードパラメータに合致する誤り訂正パラメータを求め、前記求めた誤り訂正パラメータにより誤り訂正計算手順を指定する誤り訂正符号化パラメータ変換手段、
前記第2ビット列データのビット数のうち、前記誤り訂正符号化パラメータ変換手段で指定された誤り訂正ブロックに該当するデータを示すデータ符号について誤り訂正計算を行って誤り訂正符号を算出する誤り訂正符号計算手段、
前記入力された2次元コードパラメータ、データ符号および誤り訂正符号と、前記第2ビット列データに含まれるデータ符号および前記算出された誤り訂正符号とを用いて前記2次元コードを生成する2次元コード化手段、
として機能させることを特徴とする2次元コード生成プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2011−113106(P2011−113106A)
【公開日】平成23年6月9日(2011.6.9)
【国際特許分類】
【出願番号】特願2009−265947(P2009−265947)
【出願日】平成21年11月24日(2009.11.24)
【出願人】(000004352)日本放送協会 (2,206)
【Fターム(参考)】
【公開日】平成23年6月9日(2011.6.9)
【国際特許分類】
【出願日】平成21年11月24日(2009.11.24)
【出願人】(000004352)日本放送協会 (2,206)
【Fターム(参考)】
[ Back to top ]