(57)【特許請求の範囲】
【請求項１】
撮像部と、記憶部と、画像表示部とを有し、紙面に印刷された複数のモジュールから成るコードを読み取る画像処理装置の制御方法において、
前記撮像部を用いて前記コードが含まれる前記紙面のイメージ画像を取得し、
前記コードから前記コードに含まれる前記モジュールのサイズ情報を取得し、
前記取得したモジュールのサイズ情報と、前記コードの一辺を形成するモジュールの数とから前記紙面における前記コードの一辺の長さを算出し、
前記紙面にてコンテンツを表示する座標を前記記憶部から取得し、
前記イメージ画像における前記コードの位置を検出し、
前記イメージ画像における前記コードのピクセル座標を取得し、
前記算出した前記コードの一辺の長さと、前記検出された前記コードの位置を基準とした前記コンテンツを表示する座標と、前記コードのピクセル座標とから、前記コンテンツを前記イメージ画像において表示するピクセル座標を算出し、
前記算出したピクセル座標に基づいて、前記コンテンツを前記画像表示部に表示する、
ことを特徴とする画像処理装置の制御方法。
【請求項２】
前記コードは、前記コードを識別する識別情報を有し、
前記識別情報を参照して、前記コードの読取を行っている画像処理装置が前記コードを利用したコンテンツの処理に対応しているか否かを判定し、
読取中の前記コードが読取を行っている前記画像処理装置と対応していない場合、前記コードから前記コードに対応したコンテンツに関する説明情報を取得し、前記説明情報を前記画像表示部に表示する、
ことを特徴とする請求項１記載の画像処理装置の制御方法。
【請求項３】
前記コードがＱＲコードの場合、前記ＱＲコードの３頂点位置に配置された位置検出パターンを用いて、前記位置検出パターンが両端に配置された２辺を基準座標軸として検出する、
ことを特徴とする請求項１記載の画像処理装置の制御方法。
【請求項４】
前記コードがデータマトリックスコードの場合、前記データマトリックスコードの２辺に配置されたファインダパターンを用いて、前記ファインダパターンを含む２辺を基準座標軸として検出する、
ことを特徴とする請求項１記載の画像処理装置の制御方法。
【請求項５】
前記コードは、複数のコードの連携によってコンテンツの表示を行う際の前記複数のコードの物理的な相対位置情報と処理の優先順情報を有し、前記コードを参照し、前記相対位置情報と前記優先順情報とに応じて前記画像表示部に付加情報を表示することを特徴とする請求項１記載の画像処理装置の制御方法。
【請求項６】
画像表示部を有し、紙面に印刷された複数のモジュールから成るコードを読み取る画像処理装置において、
前記紙面からコード画像を撮像する画像撮影部と、
前記紙面にてコンテンツを表示する座標を記憶する記憶部と、
前記コードから前記コードに含まれる前記モジュールのサイズ情報を取得し、前記取得したモジュールのサイズ情報と、前記コードの一辺を形成するモジュールの数とから前記紙面における前記コードの一辺の長さを算出するサイズ決定部と、
前記画像撮影部が撮像した前記コードが含まれる前記紙面のイメージ画像から、前記イメージ画像における前記コードの位置を検出する位置検出部と、
前記イメージ画像における前記コードのピクセル座標を取得し、前記算出した前記コードの一辺の長さと、前記検出された前記コードの位置を基準とした前記コンテンツを表示する座標と、前記コードのピクセル座標とから、前記コンテンツを表示する座標を前記イメージ画像において表示するピクセル座標に変換する座標変換方法決定部と、
前記変換したピクセル座標に基づいて、前記コンテンツを前記画像表示部に表示するコンテンツ表示実行部と、
を有することを特徴とする画像処理装置。
【請求項７】
撮像部と、記憶部と、画像表示部とを有し、紙面に印刷された複数のモジュールから成るコードを読み取る画像処理装置を制御する制御プログラムであって、
前記画像処理装置に、
前記撮像部を用いて前記コードが含まれる前記紙面のイメージ画像を取得し、
前記コードから前記コードに含まれる前記モジュールのサイズ情報を取得し、
前記取得したモジュールのサイズ情報と、前記コードの一辺を形成するモジュールの数とから前記紙面における前記コードの一辺の長さを算出し、
前記紙面にてコンテンツを表示する座標を前記記憶部から取得し、
前記イメージ画像における前記コードの位置を検出し、
前記イメージ画像における前記コードのピクセル座標を取得し、
前記算出した前記コードの一辺の長さと、前記検出された前記コードの位置を基準とした前記コンテンツを表示する座標と、前記コードのピクセル座標とから、前記コンテンツを前記イメージ画像において表示するピクセル座標を算出し、
前記算出したピクセル座標に基づいて、前記コンテンツを前記画像表示部に表示する、
処理を実行させることを特徴とする画像処理装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置の制御方法、画像処理装置及び画像処理装置の制御プログラムに関する。
【背景技術】
【０００２】
２次元コードでは、単位サイズの正方形要素であるモジュールを縦横２次元の正方形の格子状に並べてデータを表現する。２次元コードでは、取り得るサイズ、即ち１辺のモジュール数は仕様により決まっている。また、２次元コードでは、認識時に回転角度等の撮影画像中の姿勢が特定可能な形状が存在する。例えば、ＱＲコードの場合、３頂点位置に位置検出パターンが存在し、Ｄａｔａ  Ｍａｔｒｉｘコードの場合、２つの境界線上にファインダパターンが存在する。さらに、２次元コードでは、データには任意の文字列・バイナリデータを用いることが可能である。
【０００３】
一方、近年盛んに提唱されている拡張現実感（ＡＲ：Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ）を用いたアプリケーションの１つとして、撮影画像中の専用マーカの位置・姿勢・サイズを検出し、その部分に情報を重畳表示してユーザに提示するサービスが普及しつつある。このサービスでは、ユーザは、まず一般的なバーコードリーダーアプリケーションを用いて、例えば、左下に配置されたＱＲコードの読取を行い、アプリケーションの説明を読んだ後に専用アプリケーションをダウンロードする。続いて、専用アプリケーションを起動し、例えば右下に配置された専用マーカの読取を行うことで、コンテンツ情報を得ることができる。
【０００４】
先行技術文献としては、下記のものがある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−０７２３２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ＡＲを用いたアプリケーションやサービスでは、使用しているマーカの特徴に起因して、以下の問題点がある。専用マーカのサイズは汎用的な仕様・規格としては決まっておらず、アプリケーション側でその仕様を事前に定義して格納しておく必要がある。また、前記の課題や様々なサービス形態に対応するため、専用マーカの仕様及びサービス形態に対応した専用アプリケーションを使用する必要がある。もし、非対応のアプリケーションで専用マーカを認識しようとしても、専用マーカの認識が行えないために何も起こらず、ユーザが混乱を来たす。よって、その説明や専用アプリケーションのダウンロード方法の説明のために、別途説明文を専用マーカの周辺に記述したり、説明を記載したＷＥＢサイトのＵＲＬを格納したＱＲコードを配置したりする必要が有り、紙面を余計に消費する。
【０００７】
本技術の開示での課題は、紙面から専用マーカを無くして、ＡＲコンテンツを使用することができる画像処理装置を提供することである。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、撮像部と、記憶部と、画面表示部とを有し、紙面に印刷された複数のモジュールから成るコードを読み取る画像処理装置の制御方法は、前記撮像部を用いて前記コードが含まれる前記紙面のイメージ画像を取得し、前記コードから前記コードに含まれる前記モジュールのサイズ情報を取得し、前記取得したモジュールのサイズ情報と、前記コードの一辺を形成するモジュールの数とから前記紙面における前記コードの一辺の長さを算出し、前記紙面にてコンテンツを表示する座標を前記記憶部から取得し、前記イメージ画像における前記コードの位置を検出し、前記イメージ画像における前記コードのピクセル座標を取得し、前記算出した前記コードの一辺の長さと、前記検出された前記コードの位置を基準とした前記コンテンツを表示する座標と、前記コードのピクセル座標とから、前記コンテンツを前記イメージ画像において表示するピクセル座標を算出し、前記算出したピクセル座標に基づいて、前記コンテンツを前記画像表示部に表示する。
【発明の効果】
【０００９】
本開示の技術の一側面によれば、紙面から専用マーカを無くして、ＡＲコンテンツを使用することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態の概要図を示す図（その１）である。
【図２】本実施形態の概要図を示す図（その２）である。
【図３】本実施形態の概要図を示す図（その３）である。
【図４】本実施形態における２次元コードの例を示す図（その１）である。
【図５】本実施形態における２次元コードの例を示す図（その２）である。
【図６】本実施形態における２次元コードの格納データ一例を示す図（その１）である。
【図７】本実施形態における画像処理装置の構成の一例を示す。
【図８】本実施形態におけるアプリケーション処理部の構成の一例（その１）を示す
【図９】本実施形態におけるアプリケーション処理部の構成の一例（その２）を示す
【図１０】本実施形態におけるアプリケーション処理部の構成の一例（その３）を示す。
【図１１】本実施形態における物理サイズと座標位置の定義方法について説明する図（その１）である。
【図１２】本実施形態における物理サイズと座標位置の定義方法について説明する図（その２）である。
【図１３】本実施形態における座標軸について説明する図である。
【図１４】本実施形態における画像処理を示すフローチャートである。
【図１５】本実施形態の概要図を示す図（その４）である。
【図１６】本実施形態の概要図を示す図（その５）である。
【図１７】本実施形態における２次元コードの格納データ一例を示す図（その２）である。
【図１８】本実施形態におけるアプリケーション処理部の構成の一例（その４）を示す。
【図１９】本実施形態における画像処理装置の構成を示す図である。
【発明を実施するための形態】
【００１１】
以下、本実施形態における画像処理装置について説明する。
【００１２】
＜実施の形態１＞
図１に本実施形態の概要図を示す。紙面１には、２次元コード３０が印刷されている。ユーザは、画像処理装置１０を用いて、紙面１に印刷された２次元コード３０を読み込む。
【００１３】
図２に本実施形態の概要図を示す。画像処理装置１０は、２次元コード３０から情報コンテンツの説明情報３０１、情報コンテンツを取得するための専用アプリケーションの説明情報３０２を取得する。なお、情報コンテンツの説明情報３０１及び専用アプリケーションの説明情報３０２については後述する。
【００１４】
図３に本実施形態の概要図を示す。ユーザは、画像処理装置１０を用いて、２次元コード３０が含まれた画像を取得し表示画面２０に表示させる。画像処理装置１０は専用アプリケーションを用いて、２次元コード３０を基準とした物理座標系、表示画面２０の左上を原点とした表示座標系を定義し、専用アプリケーションに予め含まれるＡＲコンテンツ５００の表示座標を表示座標系に変換する。そして、専用アプリケーションはＡＲコンテンツ５００を表示画面２０にて表示する。
【００１５】
図４及び図５に、本実施形態における２次元コードの例を示す。２次元コードは、データがセル化されて２次元状に配置されたコードであり、１つのセルは一般に複数の画素に対応する。
【００１６】
図４の２次元コードは、クイックレスポンス（ＱＲ：Ｑｕｉｃｋ  Ｒｅｓｐｏｎｓｅ）コード１００と呼ばれる２次元コードであり、コード領域の右上、左上、及び左下にコードの位置検出パターン１０１を有している。画像処理装置１０は、３つの位置検出パターン１０１を検出することで、ＱＲコード１００の向きを検出する。また、ＱＲコード１００は、タイミングパターン１０４を有する。タイミングパターン１０４には、白と黒のセルが交互に配列されている。
【００１７】
図５の２次元コードは、データマトリックス（ＤＭ：Ｄａｔａ  Ｍａｔｒｉｘ）コード２００と呼ばれる２次元コードであり、コード領域の左辺及び下辺にファインダパターン２０１を有している。ファインダパターン２０１には、黒のセルが配列されており、画像処理装置１０は、ファインダパターン２０１を検出することで、ＤＭコード２００の向きを検出する。また、ＤＭコード２００は、タイミングパターン２０３を有する。ＤＭコード２００のタイミングパターン２０３にも、白と黒のセルが交互に配列されている。
【００１８】
図６に、本実施形態における２次元コードの格納データ３００の一例を示す。２次元コードは少なくとも格納元の２次元コードに対応した情報コンテンツの説明情報３０１、情報コンテンツを表示するための専用アプリケーションの説明情報３０２、コードの物理サイズ情報３０４及びコードの識別情報３０５を格納する。情報コンテンツの説明情報３０１は一般的なテキスト情報の他に、ＷＥＢサイトへのアクセス情報（ＵＲＬ）を含むことが可能である。コードの物理サイズ情報３０４及びコードの識別情報３０５は、ＡＲを用いたアプリケーションにおいて２次元コードをマーカとして使用する際に必要なデータである。
【００１９】
図７に、本実施形態における画像処理装置１０の構成の一例を示す。画像撮影部１０２は、デジタルカメラ等を用いて２次元コードを撮影し、２次元コードを含む画像データを取得する。２次元コード認識部１０５は、取得した画像データから２次元コードの認識を行い、２次元コードに格納された格納データを取り出す。アプリケーション対応判別部１０６は、２次元コードの読取を行っているアプリケーションがその２次元コードを利用した情報コンテンツの処理に対応しているかどうかを判別する。例えば、携帯電話などに一般的に搭載されているバーコードリーダーは、情報コンテンツの処理に非対応であるため、アプリケーション対応判別部１０６は、非対応アプリケーションとしての処理を行う。また、アプリケーション対応判別部１０６は、情報コンテンツの処理用の専用アプリケーションであっても、格納データ中の識別情報を確認し、その識別情報に対応した情報コンテンツ処理が自身の機能に対応/非対応であるかを判別し、その結果に応じて以降の処理を切り替える。アプリケーション処理部１０８は、アプリケーション対応判別部１０６の判別結果に従い、アプリケーションが対応している場合と対応していない場合でそれぞれ異なる処理を実行する。画像表示部１１０は、アプリケーション処理部１０８の処理に基づいて、表示画面２０に情報表示を行う。
【００２０】
この構成と処理によって、２次元コードを読取っているアプリケーションの情報コンテンツ処理への対応/非対応を自動的に判別し、適切な処理を選択してユーザに提示することが可能となる。また、１つの２次元コードをアプリケーション説明用及び情報コンテンツ表示のマーカ用として兼用することが可能となり、従来の専用マーカや説明文用の紙面スペースを削減することが可能となる。また、ユーザから見た場合、最初に２次元コードを読取る場合に、アプリケーションの対応/非対応を気にする必要が無くなり、また非対応の場合にどうすれば良いかの説明情報を得ることが可能となるため、ユーザフレンドリな処理を提供することが可能となる。
【００２１】
図８に、本実施形態におけるアプリケーション処理部１０８の構成の一例を示す。図８に示したアプリケーション処理部１０８の構成は、２次元コードを情報コンテンツ非対応アプリケーションで読取る場合の構成である。
【００２２】
本処理は、アプリケーション対応判別部１０６において、読取中の２次元コードと読取を行っているアプリケーションとが対応していないと判別された場合にアプリケーション処理部１０８にて実行される。格納データ解析部１０８１は、２次元コードの格納データの内容を解析する。格納データ表示実行部１０８８は、格納データから少なくとも読取り中の２次元コードに対応した情報コンテンツに関する説明情報を取り出し、画像表示部に表示してユーザに内容を提示する。情報アクセス実行部１０８９は、格納データ解析部で格納データ中にＷＥＢサイトへのアクセス情報（ＵＲＬ）が含まれていると判断した場合に、アクセス情報と対応したコンテンツを表示画面２０に表示してユーザに内容を提示する。
【００２３】
この構成と処理によって、読取中の２次元コードと読取を行っているアプリケーションとが対応していないと判別された場合、すなわち、ユーザが一般的なバーコードリーダーを用いて２次元コードの読取りを行った場合にも、ユーザに情報コンテンツに関する説明情報を提示することが可能である。
【００２４】
図９に、本実施形態におけるアプリケーション処理部１０８の構成の一例を示す。図９に示したアプリケーション処理部１０８の構成は、２次元コードを情報コンテンツ非対応アプリケーションで読取る場合の構成である。図９に示したアプリケーション処理部１０８の構成は、図９に示したアプリケーション処理部１０８の構成に、アプリケーション入手方法提示部１０９０と対応アプリケーション起動部１０９１が追加されている。
【００２５】
アプリケーション入手方法提示部１０９０は、格納データ解析部１０８１での解析から、説明情報の中に対応アプリケーションの入手方法が含まれている場合に、その方法を画像表示部に表示してユーザに入手方法を提示する。対応アプリケーション起動部１０９１は、提示したアプリケーション入手方法に従ってユーザが対応アプリケーションを入手し終えた時に、対応アプリケーションを起動して２次元コードの読取を再開する。
【００２６】
この構成と処理によって、読取中の２次元コードと読取を行っているアプリケーションとが対応していないと判別された場合、ユーザに対応アプリケーションの入手方法を提示して取得させることが可能である。また、ユーザが対応アプリケーションをネットワークダウンロード等の手段で取得した際には、自動的に対応アプリケーションを起動して、２次元コードの読取り処理を継続させることが可能である。このようにユーザフレンドリな処理を提供することが可能となる。
【００２７】
図１０に、本実施形態におけるアプリケーション処理部１０８の構成の一例を示す。図１０に示したアプリケーション処理部１０８の構成は、２次元コードを情報コンテンツ対応アプリケーションで読取る場合の構成である。本処理は、アプリケーション対応判別部１０６において、読取中の２次元コードと読取を行っているアプリケーションとが対応していると判別された場合にアプリケーション処理部にて実行される。
【００２８】
格納データ解析部１０８１は、２次元コードの格納データの内容を解析する。
【００２９】
コード仕様取得部１０８２は、読取中の２次元コードの仕様に基づいてコードの種類と縦/横１辺当りのモジュール数を取得する。コード物理サイズ決定部１０８３は、格納データ解析部で取得したコードの物理サイズ情報とコード仕様取得部から取得した１辺あたりのモジュール数からコードの物理サイズを決定する。なお、コード仕様取得部１０８２及びコード物理サイズ決定部１０８３の詳細な処理は後述する。
【００３０】
コード位置検出部１０８４は、読取中の２次元コードの仕様に基づいて画像データ中の２次元コードの４頂点の表示座標及び仕様で規定された特定の画像特徴を有する２辺を基準座標軸として検出する。なお、コード位置検出部１０８４の詳細な処理は後述する。
【００３１】
座標変換方法決定部１０８５は、前記のコードの物理サイズと基準座標軸を基に、表示コンテンツの物理サイズ・物理表示位置を画像データ中の表示座標に変換する座標変換方法を決定する。なお、座標変換方法決定部１０８５の詳細な処理は後述する。
【００３２】
情報コンテンツ表示実行部１０８６は、決定した座標変換方法を用い、格納データ解析部で取得したコードの識別情報に対応した情報コンテンツの表示位置を決定し、表示画面２０に表示されている撮影画像データの上に重畳表示してユーザに内容を提示する。
【００３３】
情報コンテンツ表示実行部１０８７は、情報コンテンツを取得する。
【００３４】
図１１を用いて、本実施形態における２次元コードとしてＱＲコードを用いた場合の物理サイズと座標位置の定義方法について説明する。
【００３５】
ＱＲコードに格納するコードの物理サイズ情報としては、１モジュールの１辺の物理的な長さ（例：０．２５ｍｍ）を用いる。１辺のモジュール数は、図中のタイミングパターンの部分の白黒モジュール数を数えるか、ＱＲコード内にその規格仕様として格納されているバージョン情報から換算するかのいずれかによって求めることがでる。求めた数に１モジュールの物理的な長さをかけることで、ＱＲコードの１辺の物理的な長さを求めることができる。
【００３６】
また、ＱＲコードの場合、コードの３頂点位置に配置された位置検出パターンを検出することができる。位置検出パターンが両端に配置された２辺を基準座標軸として、図９のようにＱＲコードの外形を基準とした物理座標系を規定することが可能である。
【００３７】
コード仕様取得部１０８２は、２次元コードの種類として、ＱＲコードであることを取得する。コード仕様取得部１０８２は、ＱＲコードの１辺のモジュール数として「２５」を取得する。コード物理サイズ決定部１０８３は、コード仕様取得部１０８２が取得したモジュール数「２５」と、格納データ解析部１０８１が取得したコードの物理サイズ情報「０．２５（ｍｍ）」とをかけた値「６．２５（ｍｍ）」をＱＲコードの１辺の物理サイズとして決定する。
【００３８】
図１１において、ＱＲコードの左下の位置検出パターンの左下を原点として、右方向にＸ軸を、上方向にＹ軸を設定すると、ＱＲコードの右下の位置検出パターンの右下の座標は（６．２５，０）、ＱＲコードの左上の位置検出パターンの左上の座標は（０，６．２５）となる。
【００３９】
図１２を用いて、本実施形態における２次元コードとしてＤＭコードを用いた場合の物理サイズと座標位置の定義方法について説明する。
【００４０】
ＤＭコードに格納するコードの物理サイズ情報としては、１モジュールの１辺の物理的な長さ（例：０.２５ｍｍ）を用いる。１辺のモジュール数は、図中のタイミングパターンの部分の白黒モジュール数を数えることによって求めることがでる。求めた数に１モジュールの物理的な長さを掛けることで、ＤＭコードの１辺の物理的な長さを求めることができる。
【００４１】
また、ＤＭコードの場合、コードの２辺に配置されたファインダパターンを検出することができる。ファインダパターンを含む２辺を基準座標軸として、図１２のようにＤＭコードの外形を基準とした物理座標系を規定することが可能である。
【００４２】
コード仕様取得部１０８２は、２次元コードの種類として、ＤＭコードであることを取得する。コード仕様取得部１０８２は、ＤＭコードの１辺のモジュール数として「２０」を取得する。コード物理サイズ決定部１０８３は、コード仕様取得部１０８２が取得したモジュール数「２０」と、格納データ解析部１０８１が取得したコードの物理サイズ情報「０．２５（ｍｍ）」とをかけた値「５．００（ｍｍ）」をＤＭコードの１辺の物理サイズとして決定する。
【００４３】
図１２において、ＤＭコードの左下を原点として、右方向にＸ軸を、上方向にＹ軸を設定すると、ＤＭコードの右下の座標は（５．００，０）、ＤＭコードの左上の座標は（０，５．００）となる。
【００４４】
コード位置検出部１０８４は、画像データを小ブロック領域（矩形ブロック単位）に区切って走査し、ブロックを選択してコードを探索する。次に、選択したブロックのうち所定の条件として、ブロック内の画素の階調値の分散が所定の範囲内にあることを判別するか、または、ブロック内の黒画素と白画素の比率が所定の範囲内にあるかを判別する。そして、２次元コードを検出する。
【００４５】
図１に示すように２次元コードは、白、黒のようにコントラストの差が大きい２つの色を用いて印刷されている。またコード内の領域では２つの色の占める面積の比率が１対１に近くなるように配列がなされている。そのため画素の階調値のばらつき（分散）、または標準偏差が大きくなるという特徴がある。
【００４６】
これに対して文字が印刷されている領域では、文字の色が下地に対して占める面積の比率が小さくなり、画素の階調値のばらつきも小さくなる。また写真などが印刷されている領域では、画素の階調値が任意の値をとり、階調値のばらつきは小さくなる。この特徴を利用して、ブロック内の画素の階調値のばらつきが所定の範囲内となるブロックを検出することによって２次元コードが含まれる領域を検出することが可能となる。
【００４７】
２次元コードの領域内では、白と黒の色の面積の比率が所定の範囲、例えば５０％±１０％以内となるようにコードが作成されている。そこでブロック内の白黒画素の比率が所定の範囲内になるブロックを検出することによって、２次元コードが含まれる領域を検出することが可能となる。
【００４８】
２次元コードでは、２次元に配置された明暗ドット（セル）の組合せによってデータが表現され、コード内部ではできるだけ明暗が一様になるようになっている。そのため、水平方向のライン上の画素を取り出した場合にも、また垂直方向のライン上の画素を取り出した場合にも、画素の階調値が急変する点としてのエッジの数があまり変わらないという特徴がある。また文字が印刷されている領域においてライン上の画素を取り出した場合には、文字間／行間など、エッジが存在しない場所があり、コード領域とはその特徴が明らかに異なってくる。
【００４９】
そこで本実施形態では、ブロック内の水平／垂直ライン上のエッジ数が所定の範囲内と
なるブロックを検出することによって、精度良く２次元コードが含まれる領域を検出することが可能となる。
【００５０】
図１３を用いて、座標変換方法決定部１０８５の詳細な処理について説明する。
【００５１】
まず、コード位置検出部１０８４は、ＱＲコードを検出する。次に、座標変換方法決定部１０８５は、コード位置検出部１０８４が検出したＱＲコードの右下の頂点を原点とし、ＱＲコードの左下の頂点方向をＸ軸、ＱＲコードの右上の頂点方向をＹ軸とした物理座標系を定義する。
【００５２】
次に、座標変換方法決定部１０８５は、コード物理サイズ決定部１０８３が算出したＱＲコードの左下の頂点の物理座標及びＱＲコードの右上の頂点の物理座標を取得する。具体的には、図１１に示したＱＲコードでは、１辺のモジュール数が２５個であり、モジュールの１辺の長さは０．２５ｍｍであるため、ＱＲコードの左下の頂点の物理座標は（６．２５，０）、ＱＲコードの右上の頂点の物理座標は、（０，６．２５）となる。ここで、それぞれの物理座標の単位は「ｍｍ」である。続いて、座標変換方法決定部１０８５は、ＡＲコンテンツを表示する物理座標を取得する。ＡＲコンテンツを表示する物理座標は、例えば、（３．００，４．００）である。
【００５３】
そして、座標変換方法決定部１０８５は、画像データの左上を原点とし、原点から右方向をＸ軸、原点から下方向をＹ軸とした表示座標系を定義する。座標変換方法決定部１０８５は、ＱＲコードの右下の頂点、左下の頂点及び右上の頂点の表示座標を取得する。
【００５４】
最後に、座標変換方法決定部１０８５は、ＱＲコードの左下の頂点の物理座標、ＱＲコードの右下の頂点の物理座標、ＱＲコードの右上の頂点の物理座標、コンテンツを表示する物理座標、ＱＲコードの右下の頂点の表示座標、左下の頂点の表示座標及び右上の頂点の表示座標を用いてアフィン変換を行うことにより、表示座標系においてＡＲコンテンツを表示する表示座標を算出する。
【００５５】
図１４を用いて、本実施形態における画像処理について説明する。
【００５６】
まず、ユーザはまだ情報コンテンツに対応した専用アプリケーションを入手していないものとする。この場合、ユーザは、情報コンテンツに非対応の一般的なバーコードリーダーアプリケーションを用いてＱＲコードの認識を行う。ここでは、説明情報として、情報コンテンツと専用アプリケーションの説明がテキスト情報として格納されており、表示画面２０に表示されている。また、専用アプリケーションの入手（ダウンロード）方法が説明されているＷＥＢサイトのＵＲＬ情報も格納されており、図１中の「ダウンロード」リンク表示の形で表示画面２０に表示されている。ユーザは、テキストの説明文を読むことで、この情報コンテンツの内容や使い方を理解することができる。さらに、この情報コンテンツを利用したい場合には、「ダウンロード」リンクを選択して専用アプリケーションの入手を行う。
【００５７】
専用アプリケーションはダウンロード後に自動的に起動する。この後、ユーザは、専用アプリケーションを用いてＱＲコードの認識を行う。専用アプリケーションでは、ＱＲコードに格納されている物理サイズ情報を基に、ＱＲコードの２辺を基準座標軸とした物理座標系（ｍｍ単位）を規定する。他方、撮影画像を表示している表示画面には、左上隅を基準点とした表示座標系（ピクセル単位)を規定する。専用アプリケーションでは、この物理座標系から表示座標系への変換式を算出し決定する。変換方法にはアフィン変換などを用いても良い。
【００５８】
個々の表示コンテンツには、その物理サイズと物理座標系を基準とした表示位置の情報が設定されている。専用アプリケーションでは、これらの情報を前述した変換式を用いて表示座標系に変換した後、表示画面の撮影画像の上に重畳表示することでユーザに提示する。
【００５９】
なお、専用アプリケーションでは、ユーザによるカメラ撮影位置の移動に応じてこの処理を繰り返すことで、情報コンテンツを適切な画面位置に表示し続けてユーザに提示する。
【００６０】
ステップＳ１０１において、画像撮影部１０２は、２次元コードを取得する。２次元コード認識部１０５は、２次元コードを認識する。処理はステップＳ１０２へ移行する。
【００６１】
ステップＳ１０２において、アプリケーション対応判別部１０６は、ＡＲコンテンツを表示する専用アプリケーションが、画像処理装置１０にインストールされているか否かを判定する。ＡＲコンテンツを表示する専用アプリケーションが、画像処理装置１０にインストールされている場合、処理はステップＳ１０７へ移行する。一方、ＡＲコンテンツを表示する専用アプリケーションが、画像処理装置１０にインストールされていない場合、処理はステップＳ１０３へ移行する。
【００６２】
ステップＳ１０３において、格納データ表示実行部１０８８は、説明情報を表示画面２０に表示させる。処理はステップＳ１０４へ移行する。
【００６３】
ステップＳ１０４において、アプリケーション入手方法提示部１０９０は、ＡＲコンテンツを表示する専用アプリケーションの入手方法を表示画面２０に表示させる。処理はステップＳ１０５へ移行する。
【００６４】
ステップＳ１０５において、対応アプリケーション起動部１０９１は、ＡＲコンテンツを表示する専用アプリケーションを画像処理装置１０にインストールする。処理はステップＳ１０６へ移行する。
【００６５】
ステップＳ１０６において、対応アプリケーション起動部１０９１は、ＡＲコンテンツを表示する専用アプリケーションを起動する。処理はステップＳ１０１に戻る。
【００６６】
ステップＳ１０７において、コード仕様取得部１０８２は、格納データ解析部１０８１による２次元コードの格納データの内容の解析結果に基づき、読取中の２次元コードの仕様からコードの種類と縦/横１辺当りのモジュール数を取得する。処理はステップＳ１０８へ移行する。
【００６７】
ステップＳ１０８において、画像撮影部１０２は、２次元コードが含まれる画像を取得する。処理はステップＳ１０９へ移行する。
【００６８】
ステップＳ１０９において、コード位置検出部１０８４は、画像中の２次元コードの位置を検出する。処理はステップＳ１１０へ移行する。
【００６９】
ステップＳ１１０において、座標変換方法決定部１０８５は、２次元コードを基準とした物理座標を決定する。処理はステップＳ１１１へ移行する。
【００７０】
ステップＳ１１１において、座標変換方法決定部１０８５は、座標系の変換式を決定する。本実施形態においては、座標系の変換式としてアフィン変換を用いるが、他の変換式を用いても良い。処理はステップＳ１１２へ移行する。
【００７１】
ステップＳ１１２において、情報コンテンツ取得部１０８７は、２次元コードから識別情報を取得する。処理はステップＳ１１３へ移行する。
【００７２】
ステップＳ１１３において、情報コンテンツ取得部１０８７は、識別情報に対応するＡＲコンテンツを取得する。処理はステップＳ１１４へ移行する。
【００７３】
ステップＳ１１４において、情報コンテンツ表示実行部１０８６は、座標変換方法決定部１０８５が決定した座標系の変換式を用いて、ＡＲコンテンツの表示位置を決定する。処理はステップＳ１１５へ移行する。
【００７４】
ステップＳ１１５において、情報コンテンツ表示実行部１０８６は、ＡＲコンテンツを画像中に表示する。処理はステップＳ１１６へ移行する。
【００７５】
ステップＳ１１６において、情報コンテンツ表示実行部１０８６は、専用アプリケーションが終了したか否かを判定する。専用アプリケーションが終了した場合、処理は終了する。一方、専用アプリケーションが終了していない場合、処理はステップＳ１０１に戻る。
【００７６】
本実施形態では、印刷された紙面の右下にＱＲコードが配置されている。この場合、紙面にはＱＲコード１個のみが配置されており、専用マーカは使用する必要が無い。その分だけ紙面スペースを節約することが可能である。
【００７７】
＜実施の形態２＞
図１５に本実施形態の概要図を示す。本実施形態では、紙面１の左上と右下の２箇所に２次元コード３０が配置されている。
【００７８】
図１６に本実施形態の概要図を示す。本実施形態では、紙面１の左上の２次元コード３０を読み取ると、ＡＲコンテンツ６００が表示される。ＡＲコンテンツ６００は、例えば、「次は右下のＱＲコードを読んで」というメッセージを表示する。同様に、紙面１の右下の２次元コード３０を読み取ると、ＡＲコンテンツ５００が表示される。
【００７９】
図１７に本実施形態における２次元コードの格納データ４００の一例を示す。格納データ４００は、情報コンテンツの説明情報４０１、専用アプリケーションの説明情報４０２、コードの物理サイズ情報４０４、コードの識別情報４０５の他に、双方の２次元コードの物理座標系における相対位置情報４０７と優先順位情報４０６を有している。本実施形態では、左上の２次元コードが優先で先に読取られることを想定した情報コンテンツの内容となっている。
【００８０】
専用アプリケーションを未入手の場合、ユーザはどちらの２次元コードを読取っても、説明情報を取得することが可能である。専用アプリケーションで左上の２次元コードを読取った場合、情報コンテンツが重畳表示されると共に、次に読取る２次元コードの位置が矢印表示される。ユーザはこの矢印の方向に携帯電話を移動させることで、次に読取るべき２次元コードを容易に探し出して撮影することが可能である。
【００８１】
図１８に、本実施形態における２次元コードを情報コンテンツ対応アプリケーションで読取る場合のアプリケーション処理部１０８の処理構成を示す。本実施形態では、アプリケーション処理部１０８複数コード連携表示実行部１０９２を追加している。
【００８２】
この２次元コードを対応アプリケーションで読取った際に、格納データ解析部１０８１の処理によって、相対位置の情報と処理の優先順情報が含まれていると判断される。この時、複数コード連携表示実行部１０９２では、格納データの内容に応じた追加情報を表示画面２０に表示してユーザに内容を提示する。例えば、現在読取りを行っている２次元コードの次に読取る順番となっている２次元コードが存在されている方向を、画面上に矢印表示してユーザに伝える。
【００８３】
この構成と処理によって、複数の２次元コードを連携させて情報コンテンツを提供するアプリケーションの場合にも、２次元コードの読取り順や配置されている場所を順次ユーザに提示することが可能となり、ユーザフレンドリな処理を提供することが可能となる。
【００８４】
図１９は、本実施形態における画像処理装置１０のハードウェア構成の一例を簡略的に示すブロック図である。画像処理装置１０は、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ、中央処理装置）７０２、操作部７０４、表示部２０、ＲＯＭ７０８、ＲＡＭ７１０、撮像装置７１２、外部記憶装置７１４及びネットワークインタフェース装置７１８を有する。バス７１６は、ＣＰＵ７０２、操作部７０４、表示部２０、ＲＯＭ７０８、ＲＡＭ７１０、撮像装置７１２、外部記憶装置７１４及びネットワークインタフェース装置７１８を相互に接続する。
【００８５】
ＣＰＵ７０２は、各種演算処理を実行する。操作部７０４は、ユーザからのデータの入力を受け付ける。表示部２０は、各種情報を表示する。ＲＯＭ７０８は、Ｏｐｅｒａｔｉｎｇ  Ｓｙｔｅｍ（ＯＳ、オペレーティングシステム）等の各種プログラムを格納する。ＲＡＭ７１０は、プログラムの実行やデータの記憶を行う。撮像装置７１２は、紙面１から２次元コード３０を画像として読み取る。外部記憶装置７１４は、専用アプリケーション等を格納する。ネットワークインタフェース装置７１８は、ネットワークを介して他装置との間でデータの送受信を行う。なお、専用アプリケーションは、例えば、ＣＤ−ＲＯＭやＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリなどのコンピュータ読取可能な記録媒体に格納されても良い。
【００８６】
ユーザが操作部７０４を利用して画像の撮像を行いたい旨の命令を行うと、ＣＰＵ７０２は、ユーザに撮像装置７１２を用いて生体情報の入力を促すメッセージを表示部２０に表示する。撮像装置７１２は２次元コード３０を画像として取得する。そして、ＣＰＵ７０２は専用アプリケーションを外部記憶装置７１４から読み出してＲＡＭ７１０に展開することにより、専用アプリケーションを実行する。専用アプリケーションが実行されることにより、ＣＰＵ７０２は、撮像装置７１２が読み込んだコード画像から各種情報を取得する。
【００８７】
以上、本発明の例示的な実施の形態の画像処理装置について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【００８８】
１  紙面
１０  画像処理装置
２０  表示画面
３０  ２次元コード
１００  ＱＲコード
１０１  位置検出パターン
１０２  画像撮影部
１０４、２０３  タイミングパターン
１０５  ２次元コード認識部
１０６  アプリケーション対応判別部
１０８  アプリケーション処理部
１０８１  格納データ解析部
１０８２  コード仕様取得部
１０８３  コード物理サイズ決定部
１０８４  コード位置検出部
１０８５  座標変換方法決定部
１０８６  情報コンテンツ表示実行部
１０８７  情報コンテンツ取得部
１０８８  格納データ表示実行部
１０８９  情報アクセス実行部
１０９０  アプリケーション入手方法提示部
１０９１  対応アプリケーション起動部
１０９２  複数コード連携表示実行部
１１０  画面表示部
２００  ＤＭコード
２０１  ファインダパターン
３００、４００  格納データ
３０１、４０１  情報コンテンツの説明情報
３０２、４０２  専用アプリケーションの説明情報
３０４、４０４  コードの物理サイズ情報
３０５、４０５  コードの識別情報
４０６  優先順位情報
４０７  相対位置情報
５００、６００  ＡＲコンテンツ
７０２  ＣＰＵ
７０４  操作部
７０８  ＲＯＭ
７１０  ＲＡＭ
７１２  撮像装置
７１４  外部記憶装置
７１６  バス
【図１】
0005686003.tif 000002
【図２】
0005686003.tif 000003
【図３】
0005686003.tif 000004
【図４】
0005686003.tif 000005
【図５】
0005686003.tif 000006
【図６】
0005686003.tif 000007
【図７】
0005686003.tif 000008
【図８】
0005686003.tif 000009
【図９】
0005686003.tif 000010
【図１０】
0005686003.tif 000011
【図１１】
0005686003.tif 000012
【図１２】
0005686003.tif 000013
【図１３】
0005686003.tif 000014
【図１４】
0005686003.tif 000015
【図１５】
0005686003.tif 000016
【図１６】
0005686003.tif 000017
【図１７】
0005686003.tif 000018
【図１８】
0005686003.tif 000019
【図１９】
0005686003.tif 000020