(57)【要約】【課題】２次元コードのデータを示さない領域に配置されるモジュールが、任意のデザインを構成して配置されるように２次元コードを生成すること。【解決手段】２次元コード生成するためのシステムである。このシステムは、２次元コード１０のサイズデータと、２次元コード１０から読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部１１０と、サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードの不使用データ領域３２を特定する不使用データ領域特定部１１４と、不使用データ領域３２に対応する２値化デザインデータを、２次元コードのフォーマット情報に基づいて逆変換したビットコードを求める２値化デザインデータ変換部１１８と、求められたビットコードと原データのビットコードとを、２次元コードのフォーマット情報に基づいて変換して２次元コード１０を生成する２次元コード生成部１２０とを含む。【選択図】図８
2007241327.tif 000002
【特許請求の範囲】
【請求項１】
２次元コードを生成するためのプログラムであって、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードの不使用データ領域を特定する不使用データ領域特定部と、
前記不使用データ領域に対応する２値化デザインデータを２次元コードのフォーマット情報に基づいて逆変換したビットコードを求める２値化デザインデータ変換部と、
前記求められたビットコードと前記原データのビットコードとを、前記２次元コードのフォーマット情報に基づいて変換して２次元コードを生成する２次元コード生成部としてコンピュータを機能させることを特徴とするプログラム。
【請求項２】
請求項１において、
前記２次元コード生成部が、
前記ビットコードに基づいて、生成される２次元コードの読み取り誤りを訂正するための誤り訂正データを生成する誤り訂正データ生成部を更に含み、
不使用データ領域特定部が、
前記サイズデータに応じて２次元コードの誤り訂正データ領域を特定し、前記原データに基づいて２次元コードの原データ領域を特定し、前記２次元コードのサイズデータと前記誤り訂正データ領域と前記原データ領域とに基づいて前記不使用データ領域を特定することを特徴とするプログラム。
【請求項３】
請求項２において、
前記誤り訂正データ生成部は、
誤り訂正レベルデータに応じて誤り訂正データを生成し、
前記誤り訂正レベルデータに応じて生成された２次元コードの変更処理を受け付ける２次元コード変更部としてコンピュータを更に機能させることを特徴とするプログラム。
【請求項４】
請求項１〜３のいずれかにおいて、
前記２次元コード生成部が、
２次元コードの読み取りに用いられる位置合せパターンを設定する位置合せパターン設定部を更に含み、
前記位置合せパターン設定部は、
前記位置合せパターンの省略処理を受け付けることを特徴とするプログラム。
【請求項５】
請求項１〜４のいずれかにおいて、
前記２値化デザインデータのサイズに応じて２次元コードのサイズを決定するコードサイズ決定部として更にコンピュータを機能させることを特徴とするプログラム。
【請求項６】
２次元コードを生成するためのデータを生成するプログラムであって、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードの不使用データ領域を特定する不使用データ領域特定部と、
前記不使用データ領域に対応する２値化デザインデータを、２次元コードのフォーマット情報に基づいて逆変換したビットコードを求める２値化デザインデータ変換部としてコンピュータを機能させることを特徴とするプログラム。
【請求項７】
２次元コードとして読み取られる２次元コード画像を生成するためのプログラムであって、
２次元コードから読み取られるべき原データ画像のデータと、２次元コードの不使用データ領域に設定される２値化デザイン画像のデータとに基づいて、前記２次元コード画像を生成する画像生成部としてコンピュータを機能させ、
前記画像生成部は、
前記２値化デザイン画像のデータを変化させて前記２次元コード画像を生成することを特徴とするプログラム。
【請求項８】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１〜７のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項９】
請求項１〜６のいずれかのプログラムにより生成された２次元コードが印刷された印刷物。
【請求項１０】
２次元コード生成システムであって、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードの不使用データ領域を特定する不使用データ領域特定部と、
前記不使用データ領域に対応する２値化デザインデータを、２次元コードのフォーマット情報に基づいて逆変換したビットコードを求める２値化デザインデータ変換部と、
前記求められたビットコードと前記原データのビットコードとを、前記２次元コードのフォーマット情報に基づいて変換して２次元コードを生成する２次元コード生成部とを含むことを特徴とする２次元コード生成システム。
【請求項１１】
２次元コードとして読み取られる２次元コード画像を生成するための画像生成システムであって、
２次元コードから読み取られるべき原データ画像のデータと、２次元コードの不使用データ領域に設定される２値化デザイン画像のデータとに基づいて、前記２次元コード画像を生成する画像生成部を含み、
前記画像生成部は、
前記２値化デザイン画像のデータを変化させて前記２次元コード画像を生成することを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体、２次元コード生成システム、画像生成システム及び印刷物に関する。
【背景技術】
【０００２】
従来より、所定のフォーマット情報に基づいて、データを示すモジュールを２次元に配置した２次元コードが知られている。この２次元コードでは、１次元コードに比して狭い領域で多くのデータを読み取らせることができる。このような従来の技術として、例えば特許第２９３８３３８号公報に開示されるものがある。
かかる２次元コードでは２次元コードのサイズに対してデータ量が少ないと、データを示さない領域が発生する。この場合、従来の２次元コードでは、データを示さない領域に所定のフォーマット情報に従ってモジュールを配置する。
【特許文献１】特許第２９３８３３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、データを示さない領域にモジュールを配置するフォーマット情報は、各種モジュールがデータを示さない領域にバランスよく配置されるように構成されている。従って、生成される２次元コードのモジュールパターンの構成に特徴を持たせて、他の２次元コードと差別化をはかることができなかった。
【０００４】
そこで本発明は、２次元コードのデータを示さない領域に配置されるモジュールが、任意のデザインを構成して配置されるように２次元コードを生成することができるプログラム、情報記憶媒体、生成された２次元コードの画像を生成する画像生成システム及び印刷物を提供することにある。
【課題を解決するための手段】
【０００５】
（１）本発明は、２次元コードを生成するためのシステムであって、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードの不使用データ領域を特定する不使用データ領域特定部と、
前記不使用データ領域に対応する２値化デザインデータを、２次元コードのフォーマット情報に基づいて逆変換したビットコードを求める２値化デザインデータ変換部と、
前記求められたビットコードと前記原データのビットコードとを、前記２次元コードのフォーマット情報に基づいて変換して２次元コードを生成する２次元コード生成部を含む２次元コード生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶（記録）した情報記憶媒体に関係する。また本発明は、上記２次元コード生成システム、プログラム、情報記憶媒体を用いて生成された２次元コードが印刷された印刷物に関係する。
【０００６】
本発明では、２値化デザインデータを逆変換したビットコードを求めることにより、２値化デザインが構成された２次元コードを生成することができる。そして、生成された２次元コードには、原データの情報が配置されているので、２次元コードの読取装置により、本システム利用者が２次元コードを介して伝達しようとする情報である原データを読み取らせることができる。
【０００７】
このように、本発明によれば、人目を引き付けることができる２値化デザインパターンが構成された２次元コードを、通常の２次元コードの生成手順に従って簡易に生成することができる。しかも、２値化デザインが構成されていても、通常の２次元コードの生成手順に従って生成されているので、２次元コードを読取装置により正確に読み取らせることができる。
【０００８】
（２）また本発明に係る２次元コード生成システム、プログラム及び情報記憶媒体では、
前記２次元コード生成部が、
前記ビットコードに基づいて、生成される２次元コードの読み取り誤りを訂正するための誤り訂正データを生成する誤り訂正データ生成部を更に含み、
不使用データ領域特定部が、
前記サイズデータに応じて２次元コードの誤り訂正データ領域を特定し、前記原データに基づいて２次元コードの原データ領域を特定し、前記２次元コードのサイズデータと前記誤り訂正データ領域と前記原データ領域とに基づいて前記不使用データ領域を特定するようにしてもよい。
【０００９】
本発明によれば、誤り訂正データ領域と原データ領域とから、２値化デザインが施される不使用データ領域を特定して、不使用データ領域の２値化デザインデータを抽出することができる。
【００１０】
（３）また本発明に係る２次元コード生成システム、プログラム及び情報記憶媒体では、
前記誤り訂正データ生成部は、
誤り訂正レベルデータに応じて誤り訂正データを生成し、
前記誤り訂正レベルデータに応じて生成された２次元コードの変更処理を受け付ける２次元コード変更部を更に含むようにしてもよい。
【００１１】
本発明によれば、誤り訂正アルゴリズムの復元能力の範囲内で、生成された２次元コードの変更を行うことができる。例えば、誤り訂正データ領域に配置される２次元コードモジュールを変更して、誤り訂正データ領域の一部をもデザイン領域とすることができる。
【００１２】
（４）また本発明に係る２次元コード生成システム、プログラム及び情報記憶媒体では、
前記２次元コード生成部が、
２次元コードの読み取りに用いられる位置合せパターンを設定する位置合せパターン設定部を更に含み、
前記位置合せパターン設定部は、
前記位置合せパターンの省略処理を受け付けるようにしてもよい。
【００１３】
本発明によれば、位置合せパターンの配置を省略することにより、不使用データ領域に構成されるデザインパターンの自由度を飛躍的に上げるとともに、構成されたデザインパターンをより美しく見せることができる。
【００１４】
（５）また本発明に係る２次元コード生成システム、プログラム及び情報記憶媒体では、
前記２値化デザインデータのサイズに応じて２次元コードのサイズを決定するコードサイズ決定部を更に含むようにしてもよい。
【００１５】
本発明によれば、２値化デザインデータのサイズに応じて、２値化デザインパターンを収めることができる２次元コードのサイズを自動的に決定することができる。
【００１６】
（６）また２次元コードを生成するためのデータを生成するシステム、プログラム及び情報記憶媒体では、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードの不使用データ領域を特定する不使用データ領域特定部と、
前記不使用データ領域に対応する２値化デザインデータを、２次元コードのフォーマット情報に基づいて逆変換したビットコードを求める２値化デザインデータ変換部を含むようにしてもよい。
【００１７】
本発明によれば、２値化デザインパターンが構成された２次元コードを生成することができるデータを生成することができる。そして、生成された２次元コードを生成するためのデータには、原データの情報が含まれている。従って、本発明により生成したデータに基づいて２次元コードを生成すれば、２次元コードにデザインパターンを構成しつつ、本システム利用者が２次元コードシンボルを介して伝達しようとする情報である原データを２次元コードの読取装置に読み取らせることができる。
【００１８】
このように、本発明によれば、人目を引き付けることができる２値化デザインパターンが構成された２次元コードを、通常の２次元コードの生成手順に従って簡易に生成することができる。しかも、生成された２次元コードは２値化デザインが構成されていても、通常の２次元コードの生成手順に従って生成されているので、２次元コードを読取装置により正確に読み取らせることができる。
【００１９】
（７）また２次元コードとして読み取られる２次元コード画像を生成するシステム、プログラム及び情報記憶媒体では、
２次元コードから読み取られるべき原データ画像のデータと、２次元コードの不使用データ領域に設定される２値化デザイン画像のデータとに基づいて、前記２次元コード画像を生成する画像生成部としてコンピュータを機能させ、
前記画像生成部は、
前記２値化デザイン画像のデータを変化させて前記２次元コード画像を生成するようにしてもよい。
【００２０】
本発明によれば、２次元コード画像の２値化デザインパターンを変化させて、２次元コードに人目をより一層引き付けることにより、当該２次元コードの利用度を大幅に増加させることができる。
【発明を実施するための最良の形態】
【００２１】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００２２】
１．２次元コードの構造
図１に、本実施の形態の２次元コード生成システムで生成される２次元コードシンボルの構造の例を示す。本実施の形態では、２次元コードとしてＱＲコード（株式会社デンソーウェーブの登録商標）を用いた例を示すが、本実施の形態により生成できる２次元コードはＱＲコードに限らない。
【００２３】
図１に示すように、本実施の形態の２次元コードシンボル１０は、正方形のモジュールを縦横に４５個正方形に配列して構成されている。このシンボル１０には、シンボル１０からデータを読み取る際に用いられる位置検出パターン１２と位置合せパターン１３とタイミングパターン１４とが配置されている。そして、位置検出パターン１２と位置合せパターン１３とタイミングパターン１４とが配置されている領域以外の領域として、シンボル１０から読み取られるべきデータのモジュールパターン（符号化パターン）が配置される符号化領域１６が設けられている。
【００２４】
この符号化領域１６には、シンボル１０の型番情報（サイズ情報）の符号化パターンが配置される型番領域１８と、シンボル１０の形式情報（誤り訂正レベル情報、マスク処理パターンに関する情報）の符号化パターンが配置される形式領域２０と、本実施の形態のシステムの利用者が任意に入力可能なデータの符号化パターンが配置されるデータ領域２２とが含まれる。
【００２５】
２．２次元コードの生成処理
図２に、本実施の形態の２次元コード生成システムの処理の流れの一例を示す。まず、ステップＳ１において、２次元コードを生成するための各種データを取得する。
【００２６】
図３に、このデータ取得処理の詳細を示す。まず、ステップＳ２において、入力部への入力情報に基づき、システムの利用者が所望するシンボルの型番情報と形式情報とを取得する。ここで、型番情報には、シンボル１０の大きさを特定するサイズ情報（１〜４０）が含まれている。本実施の形態では、サイズ情報によりシンボル１０を構成するモジュールの数とその配置を特定することができる。また、形式情報には、生成されるシンボルの読み取り誤りを訂正するための誤り訂正アルゴリズムの種類を特定する誤り訂正レベル情報が含まれる。本実施の形態では、誤り訂正レベルがＬ、Ｍ、Ｑ、Ｈの４段階用意されており、誤り訂正レベルに応じて誤り訂正の精度が異なる。
【００２７】
そして、ステップＳ４において、本システム利用者が２次元コードシンボルを介して伝達しようとする情報である原データの文字列を取得する。この原データとしては、例えばＵＲＬやメールアドレス等のネットワークアドレス情報や、種々の管理情報、識別情報、暗号化情報等が入力される。すると、ステップＳ６において、取得した原データの文字列を２次元コードのフォーマット情報に基づいて変換し、原データのビット列を生成する。そして、ステップＳ８において、原データのビット列の最後に原データの終端を示すエンドパターンのビット列を挿入する。このエンドパターンは、２次元コードを読み取った場合に、エンドパターン以降の符号化パターンについては情報として出力する必要がないことを示すものである。
【００２８】
そして、図２のステップＳ１０において、エンドパターンを含む原データのビット列を２次元コードのフォーマット情報に基づいて８ビットコード語（データコード語）に分割する。すると、ステップＳ１２において、取得したサイズ情報、誤り訂正レベル情報に基づき、当該サイズ、誤り訂正レベルが要求するデータコード語数を満たすか否かを判断する。
【００２９】
ここで、要求するデータコード語数を満たさないと判断すると（ステップＳ１２のＮ）、即ち２次元コードのサイズに対して原データのデータ量が少ないと、ステップＳ１４において、データコード語列の後に埋め草コード語を付加する。この埋め草コード語とは、２次元コードのサイズに対して原データのデータ量が少ない場合に、原データを示す符号化パターン以降の符号化領域１６が例えば空白（明モジュールのみ）となると、２次元コードの読み取りに支障があることを考慮して付加されるものである。本実施の形態では、２次元コードのフォーマットに基づいて、データが空であることを示す所定の符号化パターンが繰返し付加される。
【００３０】
一方、要求するデータコード語数を満たすと判断すると（ステップＳ１２のＹ）、埋め草コード語は付加せずに、ステップＳ１６において、データコード語列を誤り訂正用のブロック数に分割し、ステップＳ１８において、各ブロックに対して誤り訂正コード語を生成する。この誤り訂正コード語とは、２次元コードの読み取り誤りを訂正するための誤り訂正アルゴリズムに用いられる情報の符号化パターンを生成するための所定のビット列単位である。そして、ステップＳ２０において、データコード語列の後に誤り訂正コード語を付加する。
【００３１】
そして、ステップＳ２２において、２次元コードのフォーマット情報に従って各ブロックのデータコード語・誤り訂正コード語をインターリーブにし、必要に応じて残余ビットを付加し、ステップＳ２４において、２次元コードのフォーマット情報に基づいてマトリックスに、位置検出パターン１２、位置合せパターン１３、タイミングパターン１４、コード語列に対応させた暗（黒）モジュールと明（白）モジュールとを配置する。
【００３２】
そして、ステップＳ２６において、シンボルの符号化領域１６にマスク処理パターンを適用する。このマスク処理は、ステップＳ２４において符号化領域１６に配置された暗（黒）モジュールと明（白）モジュールとが、バランスよく配置されるようにするための処理である。そして、ステップＳ２８において、ステップＳ２で取得した型番情報の符号化パターンを型番領域１８に配置し、形式情報の符号化パターンを形式領域２０に配置し、シンボルを完成する。
【００３３】
図４に、このようにして生成された２次元コードシンボルの一例を示す。本実施の形態では、各コード語列に対応させた暗（黒）モジュールと明（白）モジュールの配置は、図４に示すシンボル１０の右下隅から開始し、上方向、下方向を交互に操作し、右から左へ配置する。ここで、各コード語列は、原データとそのエンドパターンを示すデータコード語、埋め草コード語、誤り訂正コード語の順に配列されている。従って、シンボル１０の符号化領域１６には、図４に示すように、原データの符号化パターンが配置された原データ領域３０と、埋め草データの符号化パターンが配置された不使用データ領域３２と、誤り訂正コードの符号化パターンが配置された誤り訂正コード領域３４とが形成される。
【００３４】
３．デザインデータ処理
ここで、本実施の形態では、不使用データ領域３２の符号化パターンが、データが空であることを示しているに過ぎないことを利用して、不使用データ領域３２の暗（黒）モジュールと明（白）モジュールの配置（パターン）が、所与のデザインを構成するように２次元コードシンボル１０を生成する。そのため、本実施の形態では、図２のステップＳ１のデータ取得処理において、本実施の形態に特徴的なデザインデータ処理を行う。
【００３５】
３−１．２値化デザインデータ取得処理
図５に、デザインデータ処理の流れの一例を示す。まず、図３のステップＳ８までにおいて、サイズ情報・誤り訂正レベル情報・原データを取得して（ステップＳ２、ステップＳ４）、２次元コードのフォーマット情報に基づいて原データのビット列を生成すると（ステップＳ６、ステップＳ８）、図５のステップＳ４０において、２次元コードのマトリックスに対応付けられた所与の２値化デザインパターンを取得して、２値化デザインパターンのビット列（２値化デザインデータ）を生成する。
【００３６】
本実施の形態では、２値化デザインパターンを取得するために、まずシステムの利用者に２次元コードのフォーマットに基づくマトリックス上で、各モジュールを暗（黒）モジュールと明（白）モジュールのいずれか一方に設定させ、２値化デザインパターン（絵、文字、記号、模様等）を構成させる。そして、取得した２値化デザインパターンを２次元コードのマトリックス（各モジュール）に対応付け、２次元コードのフォーマットに応じた２値化デザインパターンのビット列を生成する。
【００３７】
図６（Ａ）は、システムの利用者に２値化デザインパターンを構成させるために表示部に表示する表示画面の一例である。本実施の形態では、図４に示すように原データ領域３０がサイズ情報と原データのデータ量に応じて定まり、誤り訂正データ領域３４がサイズ情報に応じて定まる。よって、サイズ情報と原データのビット列に基づいて原データ領域３０を特定し、サイズ情報に基づいて誤り訂正データ領域３４を特定し、サイズ情報と原データ領域３０と誤り訂正データ領域３４とに基づいて、デザイン領域となる不使用データ領域３２を特定することができる。従って、図６（Ａ）に示すように、２次元コードシンボル１０を、デザイン領域となる不使用データ領域３２が空白となるように表示することができる。
【００３８】
図６（Ｂ）は、利用者が構成した２値化デザインパターンの一例である。図６（Ｂ）の例は、図６（Ａ）に示す２次元コードシンボル１０を表示部に表示し、利用者に不使用データ領域３２の各モジュールを暗（黒）モジュールと明（白）モジュールのいずれか一方に設定させて、２値化デザインパターンを構成させたものである。従って、図６（Ｂ）の例では、利用者が各モジュールを暗（黒）モジュールと明（白）モジュールのいずれか一方に設定すると、構成させた２値化デザインパターンをそのまま不使用データ領域３２の各モジュールに対応付けて、２値化デザインパターンのビット列を生成することができる。
【００３９】
３−２．２値化デザインデータ逆変換処理
しかし、本実施の形態では、図２のステップＳ２６のように、２次元コードを生成する際にマスクパターンとコード語モジュールパターンとでＸＯＲ演算による変換を行う。従って、２次元コードの不使用データ領域３２で所与のデザインを構成する２値化デザインパターンのビット列を生成しても、そのままではマスクパターンとのＸＯＲ演算により、２値化デザインパターンのビット列が２次元コード上でデザインを構成しないビット列に変換されてしまう。
【００４０】
そこで、本実施の形態では、２次元コードを生成する際にマスクパターンとのＸＯＲ演算を行うと２値化デザインパターンのビット列に戻るように、生成した２値化デザインパターンのビット列を予め逆変換しておく。即ち、本実施の形態では、図２のステップＳ２６でマスクパターンが適用される前に、予め２値化デザインパターンとマスクパターンとでＸＯＲ演算による変換を行う。
【００４１】
より詳細には、図５のステップＳ４２において、サイズ情報、誤り訂正レベル情報、原データのビット列に基づき、不使用データ領域３２を特定し、ステップＳ４４において、不使用データ領域３２に該当する２値化デザインパターンのビット列を抽出する。そして、ステップＳ４６において、抽出した２値化デザインパターンのビット列とマスクパターンのビット列とでＸＯＲ演算による変換を行う。
【００４２】
図７は、図６（Ｂ）の例から抽出した２値化デザインパターン４０と、マスクパターン４２とでＸＯＲ演算による変換を行って得られる逆変換モジュールパターン４４の例である。図７に示すように、本実施の形態では、２値化デザインパターン４０とマスクパターン４２とで対応するモジュールが、同種のモジュールである場合には当該モジュールを暗（黒）モジュールとし（０＋０＝１、１＋１＝１）、異種のモジュールである場合には当該モジュールを明（白）モジュールとする（０＋１＝０、１＋０＝０）。
【００４３】
従って、ＸＯＲ演算による変換を行って得られる逆変換モジュールパターン４４はデザインを構成しないものとなるが、２次元コードを生成する際に再びマスクパターンとのＸＯＲ演算を行うと２値化デザインパターンに戻るものである。こうして、不使用データ領域３２に対応する２値化デザインパターンのビット列をマスクパターンで逆変換した逆変換ビット列を生成する。なお、マスクパターン４２の４隅などのグレーの部分、即ち生成される２次元コードの位置検出パターン１２と位置合せパターン１３とタイミングパターン１４とに対応する領域４６には、マスク処理を適用しないようになっている。
【００４４】
すると、図２のステップＳ１０以降において、図３のステップＳ８で生成された終端パターンを含む原データのビット列と、生成された２値化デザインパターンの逆変換ビット列とをデータコード語に分割し、ステップＳ１２において、得られたデータコード語列がデータコード語数を満たすか否かを判断する。
【００４５】
ここで、２値化デザインパターンの逆変換ビット列は、不使用データ領域３２のモジュール全てを含んでいる。よって、原データのビット列と逆変換ビット列とからなるデータコード語列は、ステップＳ１２において、データコード語数を満たすと判断される（ステップＳ１２のＹ）。従って、ステップＳ１４で埋め草コード語は付加されず、そのままステップＳ１６〜ステップＳ２４までの２次元コードのフォーマットに基づく処理が行われる。すると、図８の左側のモジュールパターン５４のように、位置検出パターン１２等が配置され、原データのモジュールパターン４８と逆変換モジュールパターン４４と、それらに対応する誤り訂正コードパターン５０とを含むマスク前パターン５２が生成される。
【００４６】
そして、ステップＳ２６において、マスク前パターン５２にマスク処理パターンを適用すると、２値化デザインパターンの逆変換ビット列が変換されて、元の２値化デザインパターンのビット列に戻る。即ち、図８に示すように、マスク前パターン５２と、マスクパターン４２とでＸＯＲ演算による変換を行うことにより、不使用データ領域３２に２値化デザインパターン４０が構成されたデザイン２次元コードシンボル５４を生成することができる。
【００４７】
こうして、本実施の形態によれば、逆変換モジュールパターン４４を生成しておくことにより、その後は通常の２次元コードの生成手順に従って、２値化デザインパターン４０が構成された２次元コードシンボル５４を生成することができる。そして、２値化デザインパターン４０が構成された２次元コードシンボル５４のうち、原データ領域３０には原データのモジュールパターン４８が配置されているので、２次元コードの読取装置がこの２次元コード５４を読み取ると、本システム利用者が２次元コードシンボルを介して伝達しようとする情報である原データを読み取らせることができる。なお、本実施の形態では、２値化デザインパターン４０は原データのモジュールパターンの終端パターンの後に付加されているので、不使用データ領域３２の２値化デザインパターン４０は読取装置に読み取られてもデータは示さない。
【００４８】
このように、本実施の形態によれば、人目を引き付けることができる２値化デザインパターンが構成された２次元コードを、通常の２次元コードの生成手順に従って簡易に生成することができる。しかも、生成された２次元コードは２値化デザインが構成されていても、通常の２次元コードの生成手順に従って生成されているので、２次元コードを読取装置により正確に読み取らせることができる。
【００４９】
なお、図５のステップＳ４４において、原データ領域３０に該当する原データのビット列も合わせて抽出し、原データのビット列及び２値化デザインパターンのビット列と、マスクパターンとでＸＯＲ演算による変換を行ってもよい。即ち、少なくとも不使用データ領域３２に該当する２値化デザインパターンのビット列について、逆変換がなされていればよい。
【００５０】
また、本実施の形態では、２次元コードを生成する際のマスクパターンによる変換処理を考慮して逆変換を行う例を挙げて説明したが、取得した２値化デザインパターンのビット列に対して２次元コードを生成する際に他の変換処理が行われる場合には、その変換処理を行うと２値化デザインパターンのビット列に戻るように、生成した２値化デザインパターンのビット列を予め逆変換しておく。ここで、逆変換とは、２次元コードを生成する際の変換処理により２値化デザインパターンのビット列に戻るようなビット列に、２値化デザインパターンのビット列を変換する処理をいう。例えば本実施の形態では、逆変換処理と、２次元コードを生成する際の変換処理とが、ともにＸＯＲ演算であって同一の変換処理となるものであるが、かかる場合も逆変換の概念に含まれる。
【００５１】
なお、図２のステップＳ２６のマスク処理において、複数種類のマスクパターンが適用され、所定の評価関数に基づいて最もバランスよくモジュールが配置されるマスクパターンが選択される場合には、図３のステップＳ２において、マスク処理で適用させるマスクパターンを指定するマスクパターン情報を取得し、当該マスクパターンで図５のステップＳ４６の逆変換処理と、図２のステップＳ２６の変換処理とを行うようにしてもよい。
【００５２】
４．符号化パターンの変更処理
本実施の形態の２次元コードでは、誤り訂正コード領域３４に配置された誤り訂正コードパターンにより、符号化領域１６の符号化パターンを２次元コードの読み取り装置で読み取る際の読み誤りを訂正することができる。例えば、誤り訂正レベルがＬの場合には復元能力は７パーセントとされ、おおよそ１００個のモジュールのうち７個のモジュールが汚れ等で誤ったパターンとして読み取られたとしても、元の正しいモジュールパターンに復元することができる。
【００５３】
そこで、本実施の形態では、上述のようにして生成された２次元コードの誤り訂正レベル情報に応じて、生成された２次元コードの変更処理を受け付ける。具体的には、図９（Ａ）に示すように、本実施の形態で生成された所与の２値化デザインパターンが配置された２次元コードシンボル１０を表示部に表示する。そして、システムの利用者からいずれかのモジュールの変更設定を受け付ける。なお、図９（Ａ）〜（Ｃ）のシンボル１０は、図６で表示したシンボル１０を反時計回りに９０度回転させて表示したものである。
【００５４】
例えば、図９（Ａ）の例では、海に浮かぶ島に人が立っている様子がデザインされているが、誤り訂正コード領域３４のモジュールパターンにより島の輪郭が明確でない。そこで、本実施の形態によればモジュールの変更設定を受け付けて、図９（Ｂ）に示すように、誤り訂正コード領域３４の一部の領域６０の暗（黒）モジュールを一部削除し、島の輪郭を明確化させることができる。このように、本実施の形態では、誤り訂正データ領域３４の一部をもデザイン領域とすることができる。
【００５５】
そして、変更設定されたモジュールに対応するビット列のビットも変更する。このとき、設定されている誤り訂正レベル情報とサイズ情報とに応じて、変更設定を受け付けるモジュール数を制限する。
【００５６】
例えば、誤り訂正レベル情報が「Ｍ」（復元能力は１５パーセント）であって、サイズ情報が７型（データビット数は１２４８）である場合には、例えば１００個までのモジュールの変更設定を受け付ける。また、誤り訂正レベル情報が「Ｈ」（復元能力は３０パーセント）であって、サイズ情報が１５型（データビット数は１７８４）である場合には、例えば３００個までのモジュールの変更設定を受け付ける。
【００５７】
また、図９（Ｃ）に示すように、図９（Ｂ）では表示させていた位置合せパターン１３の省略処理を受け付けるようにしてもよい。この場合、図２のステップＳ２４で配置した位置合せパターン１３を削除する処理を行う。なお、この位置合せパターン１３の省略処理は、図２のステップＳ１のデータ取得処理において予め位置合せパターン１３の配置処理を省略する旨の情報を取得し、図２のステップＳ２４で該当する位置合せパターン１３の配置処理を省略するように構成してもよい。
【００５８】
５．構成
図１０に本実施形態の２次元コード生成システムの機能ブロック図の例を示す。なお本実施形態の２次元コード生成システムは図１０の構成要素（各部）の一部を省略した構成としてもよい。
【００５９】
入力部１６０は、生成する２次元コードの基本データ、生成した２次元コードから読み取られるべき原データ、生成した２次元コードに構成されるデザインデータなどを入力するためのものである。その機能は、例えばボタンやレバーの他、入力部と表示部の両方の機能を有するタッチパネル型表示部（パネルに画像が表示されると共に、指やペンで画面を触れたり押すことで情報を入力できる装置）により実現できる。また、スキャナやカメラ等の光学読み取り装置によりデザインデータを入力するようにしてもよい。
【００６０】
記憶部１７０は、処理部１００などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００６１】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部をコンピュータに実現させるためのプログラム）が記憶（記録、格納）される。
【００６２】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能はＣＲＴ、液晶ディスプレイ、プラズマディスプレイ、入力部と表示部の両方の機能を有するタッチパネル型表示部により実現できる。
【００６３】
通信部１９６は、外部（例えばホストや他の端末）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００６４】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト（サーバー）が有する情報記憶媒体からネットワーク（広域ネットワーク、インターネット）及び通信部１９６を介して情報記憶媒体１８０（記憶部１７０）に配信するようにしてもよい。このようなホスト（サーバー）の情報記憶媒体の使用も本発明の範囲内に含まれる。
【００６５】
処理部１００（プロセッサ）は、入力部１６０からの入力データやプログラムなどに基づいて、データ表示処理、データ加工処理、データ変換処理、２次元コード生成処理などの各種の処理を行う。この場合、処理部１００は、記憶部１７０内の主記憶部１７２をワーク領域として使用して、各種の処理を行う。この処理部１００の機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）又はＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００６６】
処理部１００は、データ取得部１１０、コードサイズ決定部１１２、不使用データ領域特定部１１４、２値化デザインデータ変換部１１８、２次元コード生成部１２０、２次元コード変更部１２２を含む。なお、処理部１００は、これらの各部（機能ブロック）を全て含む必要はなく、その一部を省略してもよい。
【００６７】
データ取得部１１０は、入力部１６０への入力情報に基づき、シンボルの型番情報（サイズ情報）と形式情報（誤り訂正レベル情報）とを取得する。また、本システム利用者が２次元コードシンボルを介して伝達しようとする情報である原データ（ネットワークアドレス情報等）を、２次元コードのフォーマットに基づいてビットコード（ビット列）に変換する。
【００６８】
また、データ取得部１１０は、２次元コードに対応付けられた所与の２値化デザインデータを、２次元コードのフォーマットに基づいてビットコード（ビット列）に変換する。ここで、データ取得部１１０は、利用者が不使用データ領域３２の各モジュールに対応付けながら入力したデザインパターンを取得することにより、２値化デザインパターンのビットコードを取得するようにしてもよい。また、データ取得部１１０は、スキャナ等のハードウェアで取り込んだデザインデータや情報記憶媒体に記憶されたデザインデータを、２次元コードのマトリックスに対応付ける変換処理を行い、２値化デザインパターンとして取得するようにしてもよい。
【００６９】
また、コードサイズ決定部１１２を採用し、取得した２値化デザインデータのサイズ（領域、ビット数）に応じて２次元コードのサイズを決定するようにしてもよい。例えば、取得した２値化デザインパターンに対応するモジュールが不使用データ領域３２内に納まるように２次元コードのサイズ情報を決定し、データ取得部１１０が当該サイズ情報を取得するようにしてもよい。この場合、原データのビットコード、２値化デザインデータのビットコードに基づいて、当該２値化デザインパターンを配置可能な不使用データ領域３２を確保できる２次元コードのサイズ情報を特定するようにしてもよい。
【００７０】
不使用データ領域特定部１１４は、２次元コードのサイズ情報と、原データを変換したビットコードとに基づいて、原データのデータ量に応じた２次元コードの不使用データ領域３２を特定する。より詳細には、不使用データ領域特定部１１４は、サイズ情報に応じて誤り訂正データ領域３４を特定し、原データに基づいて原データ領域３０を特定し、サイズ情報と誤り訂正データ領域３４と原データ領域３０とに基づいて不使用データ領域３２を特定する。
【００７１】
２値化デザインデータ変換部１１８は、不使用データ領域３２に対応する２値化デザインデータを、２次元コードのフォーマット情報に基づいて逆変換したビットコードを求める。具体的には、図５及び図５の説明に示す各処理を行って、２値化デザインパターンのビットコードを逆変換したビットコードを求める。
【００７２】
２次元コード生成部１２０は、２値化デザインデータを逆変換したビットコードと原データを示すビットコードとを２次元コードのフォーマット情報に基づいて変換して、２次元コードを生成する。具体的には、図２及び図２の説明に示す各処理を行って２次元コードを生成する。
【００７３】
特に２次元コード生成部１２０は、誤り訂正データ生成部１２２と位置合せマーク設定部１２４とを含む。この誤り訂正データ生成部１２２は、２値化デザインデータを逆変換したビットコードと原データを示すビットコードとに基づいて、生成される２次元コードの読み取り誤りを訂正するための誤り訂正データを生成する。また、位置合せパターン設定部１２４は、２次元コードの読み取りに用いられる位置合せパターン１３を配置する。
【００７４】
また、位置合せパターン設定部１２４は、位置合せパターン１３の省略処理を受け付けるようにしてもよい。例えば、２次元コードを生成する前に設定された情報に基づいて、位置合せパターン１３を配置しないようにしてもよい。また、所定のアルゴリズムにより、２値化デザインパターンに対応する所定のカバー領域に含まれる位置合せパターン１３を配置しないようにしてもよい。また、位置合せパターン１３を配置して２次元コードシンボル１０を完成させてから、入力情報に基づいて位置合せパターン１３を削除するようにしてもよい。
【００７５】
２次元コード変更部１２２は、誤り訂正レベルデータに応じて、生成された２次元コードの変更処理を受け付ける。本実施の形態では、誤り訂正レベルが４段階用意されており、それぞれの復元能力が決められている。従って、２次元コードのサイズ情報と誤り訂正レベル情報とから、変更しても復元可能なモジュール数（ビット数、パターン数）の範囲内で、配置されたモジュール（ビット）の変更を受け付ける。
【００７６】
６．２次元コードの利用
本実施の形態で生成された、不使用データ領域３２に所与の２値化デザインパターンが配置された２次元コードは、種々の印刷物に印刷してこれを利用することができる。また、テレビ放送やビデオ放映、ゲーム機等、種々のメディアを介してモニタ等の表示部に画像表示させることができる。この場合には、本実施の形態で生成された２値化デザインパターンが配置された２次元コードの画像データを生成して、表示部に表示させればよい。
【００７７】
特に、本実施の形態で生成された２次元コードを画像表示させる場合には、不使用データ領域３２に配置される２値化デザインパターンを複数種類用意しておく。この複数種類の２値化デザインパターンとして、例えば、丸、三角、四角等、形状が異なる２値化デザインパターンを用意してもよいし、連続して切り替え表示すると人が走っているように見えるように、所与のモーションをコマ割りしてそれぞれをデザインした複数の２値化デザインパターンを用意してもよい。
【００７８】
そして、各２値化デザインパターンを不使用データ領域３２に配置した際の誤り訂正コードパターンも用意しておく。そして、複数種類の２値化デザインパターンとそれに対応する誤り訂正コードパターンの画像データを生成する。そして、原データ領域３０の画像データは変化させずに、２値化デザインパターンの画像とその誤り訂正コードパターンの画像とを対応付けて、これらを変化させる。これによれば、２次元コード画像の２値化デザインパターンを変化させて、より人目を引き付けることができるとともに、２値化デザインパターンの変化に対応させて誤り訂正コードパターンも変化させているので、２次元コード画像の２値化デザインパターンを変化させても正確に２次元コードを読み取らせることができる。なお、２値化デザインパターンとその誤り訂正コードパターンの画像を変化させるのみならず、原データのモジュールパターンをも変化させるようにしてもよい。
【００７９】
また、本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【００８０】
また本発明は、ＱＲコードなどのマトリックス式の２次元コードのみならず、スタック式の２次元コードなど、種々の２次元コードに関して適用することができる。その場合には、各２次元コードのフォーマットに応じて各処理を行う。
【００８１】
また本発明は、デザインパターンが配置された２次元コードを生成するためのプログラムのみならず、デザインパターンが配置された２次元コードを生成するためのビットコードを生成するためのプログラム、デザインパターンが配置された２次元コード画像を生成するためのプログラム、及びそれらのプログラムを記憶した情報記憶媒体、システムにも適用することができる。
【図面の簡単な説明】
【００８２】
【図１】本実施の形態の２次元コードの構造の一例を示す図である。
【図２】本実施の形態の処理の流れの一例を示すフローチャート図である。
【図３】本実施の形態の処理の流れの一例を示すフローチャート図である。
【図４】本実施の形態で生成される２次元コードの一例を示す図である。
【図５】本実施の形態の処理の流れの一例を示すフローチャート図である。
【図６】図６（Ａ）、（Ｂ）は、本実施の形態で表示部に表示される画面の一例を示す図である。
【図７】本実施の形態の逆変換処理の一例を説明するための図である。
【図８】本実施の形態の２次元コード生成処理の一例を説明するための図である。
【図９】図９（Ａ）は、本実施の形態の符号化パターンの変更処理を説明するための図であり、図９（Ｂ）は、本実施の形態の位置合せパターンの省略処理を説明するための図である。
【図１０】本実施の形態の機能ブロックの一例を示す図である。
【符号の説明】
【００８３】
１０  ２次元コードシンボル
１３  位置合せパターン
１６  符号化領域
３０  原データ領域
３２  不使用データ領域
３４  誤り訂正コード領域
４０  ２値化デザインパターン
４２  マスクパターン
４４  逆変換モジュールパターン
５２  マスク前パターン
５４  デザイン２次元コードシンボル
１００  処理部
１１０  データ取得部
１１２  コードサイズ決定部
１１４  不使用データ領域特定部
１１８  ２値化デザインデータ変換部
１２０  ２次元コード生成部
１２２  ２次元コード変更部
１６０  入力部
１７０  記憶部
１８０  情報記憶媒体
１９０  表示部
【図２】
2007241327.tif 000003
【図３】
2007241327.tif 000004
【図４】
2007241327.tif 000005
【図５】
2007241327.tif 000006
【図６】
2007241327.tif 000007
【図９】
2007241327.tif 000008
【図１０】
2007241327.tif 000009
【図１】
2007241327.tif 000010
【図７】
2007241327.tif 000011
【図８】
2007241327.tif 000012
【手続補正書】
【提出日】平成18年10月2日(2006.10.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
２次元コードを生成するためのプログラムであって、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードのデザインデータ領域を特定するデザインデータ領域特定部と、
前記デザインデータ領域に対応する２値化デザインデータを２次元コードのフォーマット情報に基づいて逆変換したビット列を求める２値化デザインデータ変換部と、
前記求められたビット列と前記原データのビット列とを、前記２次元コードのフォーマット情報に基づいて変換して２次元コードを生成する２次元コード生成部としてコンピュータを機能させることを特徴とするプログラム。
【請求項２】
請求項１において、
前記２次元コード生成部が、
前記ビット列に基づいて、生成される２次元コードの読み取り誤りを訂正するための誤り訂正データを生成する誤り訂正データ生成部を更に含み、
デザインデータ領域特定部が、
前記サイズデータに応じて２次元コードの誤り訂正データ領域を特定し、前記原データに基づいて２次元コードの原データ領域を特定し、前記２次元コードのサイズデータと前記誤り訂正データ領域と前記原データ領域とに基づいて前記デザインデータ領域を特定することを特徴とするプログラム。
【請求項３】
請求項２において、
前記誤り訂正データ生成部は、
誤り訂正レベルデータに応じて誤り訂正データを生成し、
前記誤り訂正レベルデータに応じて生成された２次元コードの変更処理を受け付ける２次元コード変更部としてコンピュータを更に機能させることを特徴とするプログラム。
【請求項４】
請求項１〜３のいずれかにおいて、
前記２次元コード生成部が、
２次元コードの読み取りに用いられる位置合せパターンを設定する位置合せパターン設定部を更に含み、
前記位置合せパターン設定部は、
前記位置合せパターンの省略処理を受け付けることを特徴とするプログラム。
【請求項５】
請求項１〜４のいずれかにおいて、
前記２値化デザインデータのサイズに応じて２次元コードのサイズを決定するコードサイズ決定部として更にコンピュータを機能させることを特徴とするプログラム。
【請求項６】
２次元コードを生成するためのデータを生成するプログラムであって、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードのデザインデータ領域を特定するデザインデータ領域特定部と、
前記デザインデータ領域に対応する２値化デザインデータを、２次元コードのフォーマット情報に基づいて逆変換したビット列を求める２値化デザインデータ変換部としてコンピュータを機能させることを特徴とするプログラム。
【請求項７】
２次元コードとして読み取られる２次元コード画像を生成するためのプログラムであって、
２次元コードから読み取られるべき原データ画像のデータと、２次元コードのデザインデータ領域に設定される２値化デザイン画像のデータとに基づいて、前記２次元コード画像を生成する画像生成部としてコンピュータを機能させ、
前記画像生成部は、
前記２値化デザイン画像のデータを変化させて前記２次元コード画像を生成することを特徴とするプログラム。
【請求項８】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１〜７のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項９】
請求項１〜６のいずれかのプログラムにより生成された２次元コード。
【請求項１０】
２次元コード生成システムであって、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードのデザインデータ領域を特定するデザインデータ領域特定部と、
前記デザインデータ領域に対応する２値化デザインデータを、２次元コードのフォーマット情報に基づいて逆変換したビット列を求める２値化デザインデータ変換部と、
前記求められたビット列と前記原データのビット列とを、前記２次元コードのフォーマット情報に基づいて変換して２次元コードを生成する２次元コード生成部とを含むことを特徴とする２次元コード生成システム。
【請求項１１】
２次元コードとして読み取られる２次元コード画像を生成するための画像生成システムであって、
２次元コードから読み取られるべき原データ画像のデータと、２次元コードのデザインデータ領域に設定される２値化デザイン画像のデータとに基づいて、前記２次元コード画像を生成する画像生成部を含み、
前記画像生成部は、
前記２値化デザイン画像のデータを変化させて前記２次元コード画像を生成することを特徴とする画像生成システム。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、プログラム、情報記憶媒体、２次元コード生成システム、画像生成システム及び２次元コードに関する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
そこで本発明は、２次元コードのデータを示さない領域に配置されるモジュールが、任意のデザインを構成して配置されるように２次元コードを生成することができるプログラム、情報記憶媒体、生成された２次元コードの画像を生成する画像生成システム及び２次元コードを提供することにある。
【手続補正書】
【提出日】平成19年2月26日(2007.2.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
２次元コードを生成するためのプログラムであって、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードのデザインデータ領域を特定するデザインデータ領域特定部と、
前記デザインデータ領域に対応する２値化デザインデータを２次元コードのフォーマット情報に基づいて逆変換した逆変換ビット列を求める２値化デザインデータ変換部と、
前記逆変換ビット列と前記原データのビット列とに基づいて、２次元コードの読み取り誤りを訂正するための誤り訂正データを生成する誤り訂正データ生成部と、
前記逆変換ビット列と前記原データのビット列と前記誤り訂正データのビット列とを、前記２次元コードのフォーマット情報に基づいて変換して２次元コードを生成する２次元コード生成部としてコンピュータを機能させることを特徴とするプログラム。
【請求項２】
請求項１において、
デザインデータ領域特定部が、
前記サイズデータに応じて２次元コードの誤り訂正データ領域を特定し、前記原データに基づいて２次元コードの原データ領域を特定し、前記２次元コードのサイズデータと前記誤り訂正データ領域と前記原データ領域とに基づいて前記デザインデータ領域を特定することを特徴とするプログラム。
【請求項３】
請求項２において、
前記誤り訂正データ生成部は、
誤り訂正レベルデータに応じて誤り訂正データを生成し、
前記誤り訂正レベルデータに応じて生成された２次元コードの変更処理を受け付ける２次元コード変更部としてコンピュータを更に機能させることを特徴とするプログラム。
【請求項４】
請求項１〜３のいずれかにおいて、
前記２次元コード生成部が、
２次元コードの読み取りに用いられる位置合せパターンを設定する位置合せパターン設定部を更に含み、
前記位置合せパターン設定部は、
前記位置合せパターンの省略処理を受け付けることを特徴とするプログラム。
【請求項５】
請求項１〜４のいずれかにおいて、
前記２値化デザインデータのサイズに応じて２次元コードのサイズを決定するコードサイズ決定部として更にコンピュータを機能させることを特徴とするプログラム。
【請求項６】
２次元コードの読み取り誤りを訂正するための誤り訂正データを入力データのビット列に基づいて生成し、前記入力データのビット列と前記誤り訂正データのビット列とを２次元コードのフォーマット情報に基づいて変換して２次元コードを生成する２次元コード生成装置に入力する前記入力データを生成するプログラムであって、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードのデザインデータ領域を特定するデザインデータ領域特定部と、
前記デザインデータ領域に対応する２値化デザインデータを、前記２次元コードのフォーマット情報に基づいて逆変換した逆変換ビット列を求める２値化デザインデータ変換部と、
前記原データのビット列と前記逆変換ビット列とを、前記２次元コード生成装置に入力するための前記入力データとして生成する入力データ生成部としてコンピュータを機能させることを特徴とするプログラム。
【請求項７】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１〜６のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項８】
請求項１〜６のいずれかのプログラムにより生成されたことを特徴とする２次元コード。
【請求項９】
２次元コードから読み取られるべき原データのビット列と、
前記原データのデータ量と２次元コードのサイズデータとに基づいて特定されたデザインデータ領域に対応する２値化デザインデータを、２次元コードのフォーマット情報に基づいて逆変換した逆変換ビット列と、
前記原データのビット列と前記逆変換ビット列とに基づいて生成された、２次元コードの読み取り誤りを訂正するための誤り訂正データのビット列とを、
前記２次元コードのフォーマット情報に基づいて変換して生成したことを特徴とする２次元コード。
【請求項１０】
２次元コードから読み取られるべき原データのビット列を、２次元コードのフォーマット情報に基づいて変換して配置した原データモジュール群と、
前記原データのデータ量と２次元コードのサイズデータとに基づいて特定されたデザインデータ領域に対応する２値化デザインデータを前記２次元コードのフォーマット情報に基づいて逆変換した逆変換ビット列を、前記２次元コードのフォーマット情報に基づいて変換して配置したデザインデータモジュール群と、
前記原データのビット列と前記逆変換ビット列とに基づいて生成された、２次元コードの読み取り誤りを訂正するための誤り訂正データのビット列を、前記２次元コードのフォーマット情報に基づいて変換して配置した誤り訂正データモジュール群と、
から構成されたことを特徴とする２次元コード。
【請求項１１】
請求項８〜１０のいずれかの２次元コードが印刷されたことを特徴とする印刷物。
【請求項１２】
請求項８〜１０のいずれかの２次元コードを画像として表示することを特徴とする画像表示方法。
【請求項１３】
２次元コードから読み取られるべき原データのビット列を、２次元コードのフォーマット情報に基づいて変換して配置した原データモジュール群と、
前記原データのデータ量と２次元コードのサイズデータとに基づいて特定されたデザインデータ領域に対応する２値化デザインデータを前記２次元コードのフォーマット情報に基づいて逆変換した逆変換ビット列を、前記２次元コードのフォーマット情報に基づいて変換して配置したデザインデータモジュール群と、
前記原データのビット列と前記逆変換ビット列とに基づいて生成された、２次元コードの読み取り誤りを訂正するための誤り訂正データのビット列を、前記２次元コードのフォーマット情報に基づいて変換して配置した誤り訂正データモジュール群と、
から構成された２次元コードであって、異なる前記２値化デザインデータに基づいて構成された複数の前記２次元コードを連続的に切り替えて画像表示することを特徴とする２次元コードの画像表示方法。
【請求項１４】
２次元コード生成システムであって、
２次元コードのサイズデータと、２次元コードから読み取られるべき原データと、所与の２値化デザインデータとを取得するデータ取得部と、
前記サイズデータと原データとに基づいて、原データのデータ量に応じた２次元コードのデザインデータ領域を特定するデザインデータ領域特定部と、
前記デザインデータ領域に対応する２値化デザインデータを、２次元コードのフォーマット情報に基づいて逆変換した逆変換ビット列を求める２値化デザインデータ変換部と、
前記逆変換ビット列と前記原データのビット列とに基づいて、２次元コードの読み取り誤りを訂正するための誤り訂正データを生成する誤り訂正データ生成部と、
前記逆変換ビット列と前記原データのビット列と前記誤り訂正データのビット列とを、前記２次元コードのフォーマット情報に基づいて変換して２次元コードを生成する２次元コード生成部とを含むことを特徴とする２次元コード生成システム。