(57)【要約】【課題】マーカのサイズが小さい場合やマーカの撮影距離が遠い場合でも、同マーカからデータを読み取ることが可能な情報処理装置、方法、及びプログラムを提供する。【解決手段】情報処理装置は、取得部と、検出部と、抽出部と、読取部を備える。取得部は、位置検出パタンを有するマーカが含まれる入力画像を取得する。検出部は、入力画像に含まれる位置検出パタンの検出に用いられる識別データであって、態様の異なる複数の位置検出パタンから生成される識別データを用いて、入力画像に含まれる位置検出パタンを検出する。抽出部は、検出された位置検出パタンに対応するマーカを入力画像から抽出する。読取部は、抽出されたマーカに対応付けられたデータを読み取る。【選択図】図１
2015032213.tif 000002
【特許請求の範囲】
【請求項１】
位置検出パタンを有するマーカが含まれる入力画像を取得する取得部と、
前記入力画像に含まれる前記位置検出パタンの検出に用いられる識別データであって、態様の異なる複数の位置検出パタンから生成される前記識別データを用いて、前記入力画像に含まれる前記位置検出パタンを検出する検出部と、
検出された前記位置検出パタンに対応する前記マーカを前記入力画像から抽出する抽出部と、
抽出された前記マーカに対応付けられたデータを読み取る読取部と、
を備える情報処理装置。
【請求項２】
前記識別データは、正解画像と非正解画像とを含み、
態様の異なる複数の位置検出パタンの画像データと、前記位置検出パタンを含まない複数の背景画像とが合成された合成画像から前記正解画像を生成して格納するとともに、前記位置検出パタンが含まれない前記背景画像から前記非正解画像を生成して格納する管理部をさらに備え、
前記検出部は、前記正解画像と前記非正解画像とを用いて、前記入力画像に含まれる前記位置検出パタンの位置を検出する、
請求項１に記載の情報処理装置。
【請求項３】
前記管理部は、前記合成画像のうち、前記位置検出パタンの割合が所定の閾値以上の合成画像を前記正解画像とし、前記位置検出パタンの割合が前記閾値未満の合成画像を前記非正解画像とする、
請求項２に記載の情報処理装置。
【請求項４】
前記検出部は、前記識別データを用いて前記入力画像を全探索して前記位置検出パタンの候補領域を検出し、
前記抽出部は、前記候補領域同士の距離でグループ化を行って、グループ化された前記候補領域を前記位置検出パタンとして認識し、グループ化されなかった前記候補領域を除外する、
請求項１〜３のいずれか一項に記載の情報処理装置。
【請求項５】
前記抽出部は、前記入力画像中に二以上のマーカが含まれる場合、グループ化された前記候補の中心間距離に基づいて、前記マーカーが同一か否かを判定する
請求項４に記載の情報処理装置。
【請求項６】
前記抽出部が抽出した前記マーカの解像度が低いほど、前記マーカの鮮鋭度又は前記解像度を高く設定する設定部と、
設定された前記鮮鋭度と前記解像度とを用いて、前記マーカに対して画像処理を行う処理部と、
を更に備え、
前記読取部は、前記画像処理が行われた前記マーカから前記識別データの読み取りを行う、
請求項１〜５のいずれか一項に記載の情報処理装置。
【請求項７】
前記設定部は、前記読取部が前記識別データを読み取れなかった場合、前記マーカの鮮鋭度又は前記解像度の少なくとも一方をより高く設定する、
請求項６に記載の情報処理装置。
【請求項８】
前記鮮鋭度は、画像のアンシャープマスキングの強度である、
請求項６に記載の情報処理装置。
【請求項９】
前記処理部は、グループ化された前記位置検出パタンの候補領域全体の解像度が、設定された前記解像度となる拡大率で、前記マーカを拡大する、
請求項６に記載の情報処理装置。
【請求項１０】
位置検出パタンを有するマーカが含まれる入力画像を取得し、
前記入力画像に含まれる前記位置検出パタンの検出に用いられる識別データであって、態様の異なる複数の位置検出パタンから生成される前記識別データを用いて、前記入力画像に含まれる前記位置検出パタンを検出し、
検出された前記位置検出パタンに対応する前記マーカを前記入力画像から抽出し、
抽出された前記マーカに対応付けられたデータを読み取る、
情報処理方法。
【請求項１１】
コンピュータを、
位置検出パタンを有するマーカが含まれる入力画像を取得する手段と、
前記入力画像に含まれる前記位置検出パタンの検出に用いられる識別データであって、態様の異なる複数の位置検出パタンから生成される前記識別データを用いて、前記入力画像に含まれる前記位置検出パタンを検出する手段と、
検出された前記位置検出パタンに対応する前記マーカを前記入力画像から抽出する手段と、
抽出された前記マーカに対応付けられたデータを読み取る手段と
して機能させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報処理装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
情報処理システムに用いる迅速かつ安価な情報読み取り手段として、一次元マーカや、二次元マーカ（例えば、ＱＲコード（登録商標））が広く利用されている。近年は携帯端末の普及に伴い、マーカに格納された情報を読み取るための様々な技術が開発されている。
【０００３】
例えば、画像中に含まれるマーカを、エッジ検出によって取得した直線の組み合わせにより認識する技術が知られている。認識に失敗した場合は、直線の複数の組み合わせ結果を再利用し、認識できるまで処理を繰り返す。また、画像の色情報を用いた、ルールベースによるマーカを認識する方式も用いられている。２値化した入力画像にさらにぼかし処理を加え、暗画素が所定の割合以上かつマーカの特徴を満たす領域をマーカ領域とし、領域中の白黒情報から、白または黒のセグメントの羅列情報を推定してそれらを再生成することにより、マーカに格納されたＩＤの認識を行っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平７−２３４９１５号公報
【特許文献２】特開２０１１−１４０１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来の技術にあっては、マーカが小さい場合や撮影距離が遠い場合、画像中のマーカに含まれる位置検出パタンが小さくなり、エッジ検出が困難になる。加えて、背景の映り込みによるノイズも増加するため、位置検出パタンを検出できず、画像中からマーカの位置を発見できない、という問題がある。
【０００６】
発明の実施形態は、上記に鑑みてなされたものであって、マーカのサイズが小さい場合やマーカの撮影距離が遠い場合でも、同マーカからデータを読み取ることが可能な情報処理装置、方法、及びプログラムを提供することである。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明の実施形態の情報処理装置は、取得部と、検出部と、抽出部と、読取部とを備える。取得部は、位置検出パタンを有するマーカが含まれる入力画像を取得する。検出部は、前記入力画像に含まれる前記位置検出パタンの検出に用いられる識別データであって、態様の異なる複数の位置検出パタンから生成される前記識別データを用いて、前記入力画像に含まれる前記位置検出パタンを検出する。抽出部は、検出された前記位置検出パタンに対応する前記マーカを前記入力画像から抽出する。読取部は、抽出された前記マーカに対応付けられたデータを読み取る。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態の情報処理装置を示すブロック図。
【図２】第１の実施形態の情報処理装置のハードウェア構成図。
【図３】第１の実施形態の取得された入力画像の一例図。
【図４】第１の実施形態の情報処理装置のマーカ検出の処理のフローチャート。
【図５】管理部に格納する各種データの生成態様を示す図。
【図６】第１の実施形態の情報処理装置による効果を示す図。
【図７】実施形態の情報処理装置を評価するための評価データの内訳を示す図。
【図８】第２の実施形態の情報処理装置を示すブロック図。
【図９】第２の実施形態の情報処理装置のフローチャート。
【図１０】第２の実施形態の情報処理装置による効果を示す図。
【発明を実施するための形態】
【０００９】
（第１の実施形態）
以下、本発明の第１の実施形態について図面を参照しながら説明する。第１の実施形態の情報処理装置１は、入力画像中に含まれる、位置検出パタンを有する少なくとも一のマーカから、当該マーカに対応付けられたデータを読み取るものである。例えば、当該マーカはＱＲコード（登録商標）であってよい。当該位置検出パタンは、ＱＲコード（登録商標）に含まれるファインダパタンであってよい。本実施形態によれば、例えば、位置検出パタンを有する少なくとも一のマーカが小さい場合や撮影距離が遠い場合に、画像中のマーカ位置の検出精度を向上させることができる。また、マーカを撮影する環境に応じて、マーカの位置検出のために用いる識別データの記憶部に格納されるデータを変更すれば、ユーザの環境下で最も検出の精度がよくなるように最適化することができる。
【００１０】
情報処理装置１は、位置検出パタンを有する少なくとも一のマーカを含む入力画像から、位置検出パタンを検出する。情報処理装置１は、形状と大きさとが異なる複数の位置検出パタンから生成される識別データを用いて位置検出パタンを検出する。識別データとは、入力画像中に位置検出パタンが含まれるか否かを識別するためのデータである。例えば、識別データは、形状と大きさなどの態様の異なる複数の位置検出パタンを用いて作成されてよい。なお、異なる態様としては、形状と大きさ以外にも、例えば、色の濃さなど他の要素を加えてもよい。情報処理装置１は、検出した識別データを用いて、検出した位置検出パタンに対応するマーカの領域を入力画像から抽出する。情報処理装置１は、抽出したマーカの領域からデータを読み取る。これにより、入力画像に含まれる位置検出パタンが小さい場合や撮影位置が遠い場合でも、マーカの位置を精度よく検出できる。
【００１１】
また、本実施形態のマーカは、位置検出パタンとなりうる、例えば特定の記号や文字・数字等を含むようなものであれば、例えばＥＡＮ−８などの一次元マーカや、Ｄａｔａ  Ｍａｔｒｉｘなどの２次元マーカであってよい。
【００１２】
図１は、情報処理装置１を示すブロック図である。情報処理装置１は、入力画像から、位置検出パタンを有する少なくとも一のマーカを読み取る装置である。情報処理装置１は、取得部１０１と、管理部１０２と、検出部１０３と、抽出部１０４と、読取部１０５とを備える。取得部１０１は、例えばカメラなどで撮影をすることで入力画像を取得する。管理部１０２は、識別データを格納する。検出部１０３は、管理部１０２を参照し、入力画像に含まれる位置検出パタンの位置を検出する。抽出部１０４は、検出された位置検出パタンに対応するマーカの領域を入力画像から抽出する。読取部１０５は、抽出されたマーカの領域から、当該マーカに対応付けられたデータを読み取る。なお、ここでは、管理部１０２は情報処理装置１に含まれる例を示したが、管理部１０２を別の端末やサーバに設け、ネットワーク回線を通じてデータの通信や処理を行うように、実現してもよい。なお、管理部１０２は、ＳＶＭ（Support  Vector  Machine）や、ＡｄａＢＯＯＳＴ（Adaptive  Boosting）の学習アルゴリズムを用いた識別器であってよい。
【００１３】
図２は、情報処理装置１のハードウェア構成を示すブロック図である。図２に示されるように、情報処理装置１は、通常のコンピュータを利用したハードウェアで構成されており、装置全体を制御するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等の制御部２０１と、各種データや各種プログラムを記憶するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の記憶部２０２と、各種データや各種プログラムを記憶するＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）ドライブ装置等の補助記憶部２０３と、ユーザの指示入力を受け付けるキーボードやマウスなどの操作部２０４と、外部装置との通信を制御する通信部２０５と、位置検出パタンを有する少なくとも一のマーカを含む画像を撮影するカメラ２０６と、これらを接続するバス２０７と、を備えている。
【００１４】
このようなハードウェア構成において、制御部２０１がＲＯＭ等の記憶部２０２や補助記憶部２０３に記憶された各種プログラムを実行することにより以下の機能が実現される。なお、上記各部は、プログラムによって記載されたソフトウェアによって実現してもよいし、電子回路によるハードウェアによって実現してもよい。
【００１５】
取得部１０１は、カメラ２０６が撮影した入力画像を取得する。この入力画像には、位置検出パタンを有する少なくとも一のマーカが含まれる。図３は入力画像の一例図である。図３の入力画像は、マーカ１０（ＱＲコード（登録商標））が印字された用紙が撮影されたものである。マーカ１０は３つの位置検出パタンを含んでいる。
【００１６】
なお、取得部１０１は、カメラ２０６ではなく、補助記憶部２０３や通信部２０５によって接続された外部装置から入力画像を取得してもよい。管理部１０２に格納される識別データは、正解画像と、非正解画像とを含んでいる。正解画像は、入力画像中の位置検出パタンが含まれている領域を位置検出パタンと認識するために用いられる画像である。なお、正解画像は、形状と大きさとが異なる複数の位置検出パタンのＣＧ画像と、位置検出パタンを含まない複数の背景画像とを合成した合成画像の一部領域から得られる。正解画像には、合成画像に含まれる位置検出パタンが一定以上含まれており、正解画像に含まれる位置検出パタンの割合は、例えば０．６や０．７など任意の値に設定してもよい。
【００１７】
また、非正解画像は、画像中の位置検出パタンが含まれていない領域を位置検出パタンでないと認識するために用いられる画像であり、背景画像から得られる。非正解画像に用いられる位置検出パタンを含まない複数の背景画像としては、直線のエッジが強く出やすい画像が選択されるのが望ましい。また、正解画像に対する特徴量の差分値が明確に出やすいような、例えば正解画像と空間周波数が異なる画像などを背景画像として用いてもよい。
【００１８】
識別データに用いられる、正解画像として切り取られたブロック画像と、非正解画像として切り取られたブロック画像とは、画像の縦横比が１：１の正方のブロック画像であり、画像サイズは例えば１６×１６など任意のサイズに設定してもよい。また、ブロック画像の切り出しの際は画像のピクセルステップ幅と、水平方向、垂直方向のパッチ開始位置の摂動幅とが設定される。ここで、ピクセルステップ幅および摂動幅は、例えば２など任意の値に設定してもよい。
【００１９】
識別データに用いられる、正解画像として切り取られたブロック画像と、非正解画像として切り取られたブロック画像とにおける、画像サイズと、ピクセルステップ幅と、摂動幅とは、互いに同一の値に設定される。
【００２０】
検出部１０３は、管理部１０２を参照し、入力画像に含まれる位置検出パタンを検出する。具体的には、検出部１０３は、取得部１０１で取得した位置検出パタンを有するマーカを少なくとも一つ含む入力画像の中から、識別データを用いて入力画像の全ての領域を全探索して位置検出パタンとして認識可能な領域の集合である候補領域を検出する。抽出部１０４は、検出した候補領域同士の距離や、候補領域同士の類似度を算出し、算出した位置検出パタン同士の中心間距離等でグループ化を行い、グループから除外された部分を過検出部分と判定し、位置検出パタンではないものとして除外する。なお、距離としては例えば領域の中心間距離が用いられる。中心間距離によるグループ化とは、互いの中心間の距離が所定の範囲内にある候補領域を１つのグループとし、それ以外の候補領域を除外することである。
【００２１】
抽出部１０４は、検出部１０３で検出した位置検出パタンに対応するマーカ領域を入力画像から抽出する。入力画像中に二以上のマーカが含まれる場合、検出部１０３でグループ化され生成されたそれぞれのマーカの中心間距離を算出し、中心間距離が所定の距離以上はなされている場合は、それぞれを別のマーカであると判断して、個別にマーカ領域を取得する。読取部１０５は、抽出部１０４で抽出した領域からデータを読み取る。読取部１０５に送られる画像は、抽出部１０４で抽出した領域を切り取った画像であって、抽出部１０４で抽出した領域に含まれるマーカに含まれるデータの読取方法は、例えば２値化処理による色の羅列情報から読み取る手法など、ユーザが任意に定めてもよい。
【００２２】
次に図４のフローチャートを用いて、本実施形態にかかる情報処理装置の処理を説明する。また、図５は、ＣＧ画像と背景画像とから生成された各画像の態様を示す図である。まず、取得部１０１は、分析対象となる入力画像を取得する（ステップＳ３０１）。この入力画像には、位置検出パタンを有する少なくとも一のマーカが含まれる。入力画像は、カメラ２０６からキャプチャ画像を取得してもよいし、補助記憶部２０３や通信部２０５によって接続された外部装置から画像を取得してもよい。
【００２３】
この取得部１０１による処理と並行して、ステップＳ３０２からの処理が行われる。ステップＳ３０２からＳ３０８の処理は、管理部１０２において正解画像と、非正解画像とが生成される処理であり、所定の周期毎に実行される。管理部１０２は、図５に示されるように形状と大きさとが異なる複数の位置検出パタンのＣＧ画像を生成して格納する（ステップＳ３０２）。ＣＧ画像は、ＲＧＢ３チャネルのカラー画像とする。例えば、管理部１０２は、１つの位置検出パタンの画像データからこれらの複数の態様のＣＧ画像を生成する。
【００２４】
また、管理部１０２は、位置検出パタンを含まない複数の背景画像を入力画像から取得し、格納する（ステップＳ３０３）。背景画像は、直線のエッジが強く出やすい画像を選択してもよいし、正解画像に対する特徴量の差分値が明確に出やすいような、例えば正解画像とは空間周波数が異なる画像などを選択してもよい。
【００２５】
そして、管理部１０２は、形状と大きさとが異なる複数の位置検出パタンのＣＧ画像と、位置検出パタンを含まない複数の背景画像と、を合成した合成画像を生成し、格納する（ステップＳ３０４）。なお、合成画像について、画像サイズ縮小させ、ジャギーを除去する処理や、シャギー除去画像にアンシャープマスキングを施す処理を行って鮮鋭化させる処理を行ってもよい。管理部１０２は、この生成された合成画像中に含まれる位置検出パタンの割合を判定し、割合が所定の閾値以上のものを正解画像に、所定の閾値未満のものを非正解画像とする（ステップＳ３０６）。正解画像は、位置検出パタンが一定以上含まれているように、合成画像の一部を切り取ったブロック画像とする。ブロック画像の切り出し方の一例としては、３チャネルの合成画像中でブロック画像をスライドしていき、位置検出パタンがブロック画像中にどれだけ含まれているかを算出するといった方法が一例として採用可能である。ブロック画像は、縦横比が１：１の正方画像とし、画像サイズは例えば１６×１６など任意のサイズに設定してもよい。合成画像に含まれる位置検出パタンの割合ｘとは、合成画像の全面積に対して、位置検出パタンの面積の割合から算出される。ここで、正解画像とする場合の閾値をｔｈ２、非正解画像とする場合の閾値をｔｈ１（ｔｈ１、ｔｈ２はともに０より大きく１以下の整数）とすると、以下のようにして合成画像を正解画像とするか、非正解画像とするかを決定することができる。
【００２６】
０＜ｘ＜ｔｈ１である場合、この合成画像は非正解画像とされる。
ｔｈ２≦ｘ≦１である場合、この合成画像は正解画像とされる。
ｔｈ１≦ｘ＜ｔｈ２である場合、この合成画像は消去される。
なお、ｔｈ１、ｔｈ２は互いに同じ値であってもよい。
【００２７】
また、ブロック画像の切り出しの際は、画像のピクセルステップ幅と、水平方向、垂直方向のパッチ開始位置の摂動幅とを設定する。ここで、ピクセルステップ幅および摂動幅は、例えば「２」など任意の値に設定してもよい。
【００２８】
そして、管理部１０２は、位置抽出パタンの割合が所定値以上であるブロック画像と、位置検出パタンを含まない複数の背景画像を組み合わせて正解画像を生成する（ステップＳ３０７）。一方、管理部１０２は、位置検出パタンを含まない複数の背景画像や、位置検出パタンが含まれる割合が所定の閾値未満の合成画像から、非正解画像を生成する（ステップＳ３０８）。非正解画像は、背景画像の一部を切り取ったブロック画像であって、ブロック画像中に位置検出パタンが含まれていない、又は所定の閾値未満しか含まれていない。ブロック画像のサイズ、切り出し方は、ステップＳ３０７の正解画像と同様の値を設定する。
【００２９】
そして、ステップＳ３０９では、管理部１０２は、正解画像と非正解画像と、正解画像のバリデーションデータと、非正解画像のバリデーションデータとを用いて、Ｓ３０１で取得した入力画像に含まれる位置検出パタンを識別するための識別データを生成する（ステップＳ３０９）。識別データの生成において、最大特徴数は、例えば「１００」など任意の値に設定してよい。また、最大誤検出率、および最小正検出率についても、例えば「０．６５」および「０．９５」など、任意の値に設定してよい。
【００３０】
以降、ステップＳ３１０以降の説明へと戻る。検出部１０３は、Ｓ３０９で生成された識別データを用いて、Ｓ３０１で取得した入力画像に含まれる位置検出パタンを検出する（ステップＳ３１０）。すなわち、検出部１０３は、位置検出パタンの候補領域を抽出し、抽出した候補領域同士の中心間距離を算出し、算出した候補領域同士の中心間距離でクラスタリングを行う。検出部１０３は、クラスタから除外された部分は過検出部分と判定し、位置検出パタンではないものとして除外する。
【００３１】
次いで、抽出部１０４は、ステップＳ３１０で検出された位置検出パタンに対応するマーカ領域を入力画像から抽出する（ステップＳ３０２）。入力画像中に二以上のマーカが含まれる場合、Ｓ３１０でクラスタリングされ生成されたクラスタ数に基づきマーカ領域を取得する。そして、読取部１０５は、Ｓ３１１で抽出したマーカ領域からマーカのデータを読み取る（ステップＳ３１２）。読み取り方法は、例えば画像の２値化処理を施した色の羅列情報から読み取る手法など、ユーザが任意に定めてよい。
【００３２】
次に、位置検出パタンの検出処理を行った上記の処理による本実施形態の効果について図６、図７を参照して説明する。図６は、位置検出パタンの検出処理の導入の有無による、位置検出パタンのデータ読取精度の比較結果を示す。また、図７は、評価に用いたデータの内訳である。実験に用いた画像は、位置検出パタンを有するマーカを一つだけ含む画像とする。図６の左側縦軸は読取率、右側縦軸は画像に含まれるマーカが画像中に占める総ピクセル数である。図６の棒グラフは位置検出パタンの検出とマーカ領域の抽出とを行わずに、入力画像に対して直接データを読み取る場合の読取精度と、本実施形態のように、位置検出パタンの検出とマーカ領域の抽出とを行い、マーカ領域に対してデータを読み取る場合の読取精度である。また、折れ線グラフはマーカとマーカを撮影するカメラとの距離における、マーカの画像中の総ピクセル数である。図６を参照すると、いずれのマーカであるＱＲコード（登録商標）の大きさや、撮影時の距離に関わらずに、本実施形態のように位置検出パタンの検出とマーカ領域の抽出を行った場合のほうが、読取精度が向上していることが確認される。
【００３３】
このように、本実施形態の情報処理装置は、位置検出パタンを有する少なくとも一のマーカを含む入力画像から、位置検出パタンを検出する。位置検出パタンを検出する際、形状と大きさとが異なる複数の位置検出パタンから生成される、入力画像中に位置検出パタンが含まれるか否かを識別するような識別データが格納される管理部を用いる。これにより、画像中のマーカに含まれる位置検出パタンが小さい場合でも、管理部との照合により位置検出パタンを検出できる。また、検出した位置検出パタンに対応するマーカの領域を入力画像から抽出し、抽出したマーカの領域を用いてデータを読み取るため、背景の映り込みによるノイズを除去でき読取精度を向上させることができるようになる。
【００３４】
（第２の実施形態）
第２の実施形態に係る情報処理装置２について説明する。なお、上述した第１の実施形態と同等の構成については、同一の符号を付与し、その説明を省略する。図８は、情報処理装置２を示すブロック図である。情報処理装置２は、設定部４０１、処理部４０２を更に備えている。なお、ハードウェア構成については、第１の実施形態と同様のものを用いることができる。
【００３５】
設定部４０１は、抽出部１０４で抽出した入力画像のマーカ領域の解像度に応じて、入力画像に含まれるマーカに埋め込まれたデータが読取可能になるように、マーカ領域の鮮鋭度と解像度とを設定する。設定部４０１で設定する鮮鋭度は、抽出部１０４で抽出したマーカ領域に対して行うアンシャープマスキングの強度であり、パラメータの値１２８が、アンシャープマスキングの実施回数１に相当する。ここで、アンシャープマスキングの強度の値は、例えば２５６など、任意に値を設定してよい。設定部４０１で解像度が設定されると、処理部４０２は、抽出部１０４で抽出したマーカ領域の解像度と、設定された解像度との比較から、マーカ領域を何倍に拡大するかを示す拡大率を算出する。また、拡大率は、例えば「２」など任意の値に設定してよい。
【００３６】
処理部４０２は、設定された鮮鋭度と解像度とを用いて、抽出部１０４で抽出したマーカ領域に対し画像処理を施す。すなわち、処理部４０２は、設定部４０１で設定された鮮鋭度を用いて、抽出部１０４で抽出したマーカ領域に対して画像の先鋭化を行う。また、処理部４０２は、設定された解像度と、抽出したマーカ領域の解像度とから算出される拡大率を用いて、抽出したマーカ領域を拡大する。そして、処理部４０２で生成した、抽出部１０４で抽出したマーカ領域とは鮮鋭度と解像度とが異なるマーカ領域から、読取部１０５でマーカに埋め込まれたデータが読み取れなかった場合、再度設定部４０１に戻り、鮮鋭度および解像度をさらに高い値に再設定する。読取部１０５でマーカに埋め込まれたデータが読み取れなかった場合の、設定部４０１で再設定する鮮鋭度の値は、例えば「５１２」など、任意に値を設定してよい。読取部１０５でマーカに埋め込まれたデータが読み取れなかった場合の、設定部４０１で再設定する解像度の値は、例えば「３」など、任意に値を設定してよい。
【００３７】
次に、本実施形態の処理の流れについて図９のフロー図を参照して説明する。なお、ステップＳ３０１〜ステップＳ３１１の処理は、第１の実施形態の図４のフローチャートと同様であるので説明を省略する。抽出部１０４によるマーカの抽出が完了すると、設定部４０１は、抽出した入力画像に含まれるマーカの領域の解像度に応じて、マーカに埋め込まれたデータが読取可能になるように、マーカ領域の鮮鋭度と解像度とを設定する（ステップＳ５０１）。鮮鋭度はアンシャープマスキングの強度を表す。強度は、パラメータが１２８の場合がアンシャープマスキングの実施回数「１」に相当する。ここで、アンシャープマスキングの強度の値は、例えば「２５６」など任意の値を設定してよい。
【００３８】
ステップＳ５０２では、処理部４０２は、ステップＳ５０１で設定された鮮鋭度と解像度とを用いて、ステップＳ３１１で抽出したマーカ領域に対して画像の先鋭化とサイズの拡大とを行う。続いて、読取部１０５は、設定が変更された抽出したマーカ領域からマーカのデータを読み取る（ステップＳ３１２）。そして、読取部１０５は、入力画像に含まれるマーカから、埋め込まれたデータが読み取れて検出できているか否かを判定する（ステップＳ５０３）。読み取れている場合（ステップＳ５０３：Ｙｅｓ）、処理を終了する。
【００３９】
一方、読み取れていない場合（ステップＳ５０３：Ｎｏ）、ステップＳ５０４へ移行し、設定部４０１は、鮮鋭度および解像度を、画像に含まれるマーカに埋め込まれたデータが読取可能になるように、さらに高い値に再設定する（ステップＳ５０４）。鮮鋭度および解像度の値を再設定後、ステップＳ５０２へ進む。ここで、再設定する鮮鋭度および解像度の値は、最初に設定した値とは異なる値に設定することとし、この条件を満たしていれば、値は任意に設定してよい。
【００４０】
図１０は、第２の実施形態の導入の有無による、位置検出パタンのデータ読取精度の比較結果を示す。図１０の左側縦軸は読取率、右側縦軸は画像に含まれるマーカが画像中に占める総ピクセル数である。図１０の棒グラフは位置検出パタンの検出と、マーカ領域の抽出と、鮮鋭化処理と、画像拡大処理とを行わずに、入力画像に対して直接データを読み取る場合の読取精度と、第２の実施形態のように、位置検出パタンを検出してマーカ領域を抽出し、抽出したマーカ領域に対して鮮鋭化処理と画像拡大処理とを導入した場合のデータを読み取る場合の読取精度である。また、折れ線グラフはマーカとマーカを撮影するカメラとの距離における、マーカの画像中の総ピクセル数である。図１０に示されるように、第１の実施形態と比較し、情報処理装置２では、更に読取精度の改善効果が確認できる。
【００４１】
なお、以上説明した本実施形態における一部機能もしくは全ての機能は、ソフトウェア処理により実現可能であるが、ハードウェアにより実現してもよい。また、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００４２】
１  情報処理装置
１０  マーカ
１１  位置検出パタン
１０１  取得部
１０２  管理部
１０３  検出部
１０４  抽出部
１０５  読取部
２０１  制御部
２０２  記憶部
２０３  補助記憶部
２０４  操作部
２０５  通信部
２０６  カメラ
２０７  バス
４０１  設定部
４０２  処理部
【図１】
2015032213.tif 000003
【図２】
2015032213.tif 000004
【図３】
2015032213.tif 000005
【図４】
2015032213.tif 000006
【図５】
2015032213.tif 000007
【図６】
2015032213.tif 000008
【図７】
2015032213.tif 000009
【図８】
2015032213.tif 000010
【図９】
2015032213.tif 000011
【図１０】
2015032213.tif 000012