(57)【要約】【課題】元の状態を保存したマーカの位置や姿勢を高精度に求めることができるようにする。【解決手段】特徴点抽出部は、入力画像から特徴点を抽出し、特徴量算出部は、特徴点の特徴量を算出し、画像加工部は、入力画像に含まれるマーカ画像から抽出された特徴点が特異とならない場合、マーカ画像を加工して、特異でない特徴点の特徴量を、特異な特徴点の特徴量となるように変換し、マーカ画像生成部は、加工の結果に基づいて、新たなマーカ画像を生成する。本技術は、例えば、マーカ画像を生成する画像処理装置に適用することができる。【選択図】図２
2014123230.tif 000002
【特許請求の範囲】
【請求項１】
入力画像から特徴点を抽出する特徴点抽出部と、
前記特徴点の特徴量を算出する特徴量算出部と、
前記入力画像に含まれるマーカ画像から抽出された前記特徴点が特異とならない場合、前記マーカ画像を加工して、特異でない特徴点の特徴量を、特異な特徴点の特徴量となるように変換する画像加工部と、
加工の結果に基づいて、新たなマーカ画像を生成するマーカ画像生成部と
を備える画像処理装置。
【請求項２】
前記画像加工部は、注目している特徴点である注目特徴点の特徴量の値と、前記注目特徴点の近傍の特徴点の特徴量の値とが近似しないように、前記マーカ画像を加工する
請求項１に記載の画像処理装置。
【請求項３】
加工済みの前記マーカ画像に付加するための特徴点を生成して、加工済みの前記マーカ画像に付加する特徴点生成部をさらに備える
請求項２に記載の画像処理装置。
【請求項４】
前記特徴点生成部は、前記マーカ画像上の前記特徴点の分布に偏りがある場合、前記特徴点の分布に偏りがなくなるように、前記特徴点を付加する
請求項３に記載の画像処理装置。
【請求項５】
前記特徴点生成部は、前記マーカ画像上の前記特徴点の数が所定のしきい値を下回る場合、前記特徴点の数が増加するように、前記特徴点を付加する
請求項３に記載の画像処理装置。
【請求項６】
前記画像加工部は、前記入力画像の保存性を評価する項と、前記特徴点の特徴量の疎性を評価する項とからなる評価関数が最小化されるように、前記マーカ画像を加工する
請求項２に記載の画像処理装置。
【請求項７】
前記特徴量算出部は、前記マーカ画像に関連する情報のロバスト性を考慮するか、又は前記マーカ画像に関連する情報のロバスト性を考慮しないで、前記特徴量を算出する
請求項１に記載の画像処理装置。
【請求項８】
前記入力画像に含まれる、画像合成用の新たなマーカ画像を認識する認識部と、
認識された前記マーカ画像に、所定の重畳画像を合成する画像合成部と
をさらに備える請求項１に記載の画像処理装置。
【請求項９】
前記画像加工部は、特異でない特徴点に対応する画素の輝度値を修正する
請求項１に記載の画像処理装置。
【請求項１０】
画像処理装置の画像処理方法において、
前記画像処理装置が、
入力画像から特徴点を抽出し、
前記特徴点の特徴量を算出し、
前記入力画像に含まれるマーカ画像から抽出された前記特徴点が特異とならない場合、前記マーカ画像を加工して、特異でない特徴点の特徴量を、特異な特徴点の特徴量となるように変換し、
加工の結果に基づいて、新たなマーカ画像を生成する
ステップを含む画像処理方法。
【請求項１１】
コンピュータを、
入力画像から特徴点を抽出する特徴点抽出部と、
前記特徴点の特徴量を算出する特徴量算出部と、
前記入力画像に含まれるマーカ画像から抽出された前記特徴点が特異とならない場合、前記マーカ画像を加工して、特異でない特徴点の特徴量を、特異な特徴点の特徴量となるように変換する画像加工部と、
加工の結果に基づいて、新たなマーカ画像を生成するマーカ画像生成部と
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、画像処理装置、画像処理方法、及び、プログラムに関し、特に、元の状態を保存したマーカの位置や姿勢を高精度に求めることができることができるようにした画像処理装置、画像処理方法、及び、プログラムに関する。
【背景技術】
【０００２】
既知の２次元平面（以下、「マーカ」という）を撮影した撮影画像を解析して、その画像上のマーカの位置や姿勢を推定するとともに、マーカとカメラとの相対位置や姿勢を求める技術が知られている。
【０００３】
このような技術を利用したアプリケーションプログラムとしては、認証システムに事前に登録したマーカ画像を、撮影画像から推定して、画像合成によってマーカ画像の代わりに、別画像（重畳画像）に置き換えるものが想定される。
【０００４】
具体的には、図１に示すように、「イロハ」である企業の名称が記されたフィリップを含む撮影画像を、カメラで撮影して、その撮影画像に含まれるマーカの位置や方向を推定して、マーカ画像を、グラフ等の重畳画像に置き換えてモニタに出力する例が挙げられる。
【０００５】
このように別画像に置き換えるためには、マーカの位置や向きを正確に検出することが必要となる。カメラが移動又は回転した場合や、マーカが移動又は回転した場合には、それらの動きに追従して、置き換える画像の位置や向きを変化させて重畳画像を合成する必要がある。
【０００６】
このように、マーカの位置や姿勢に対応して映像やCG（Computer Graphics）を合成することを想定した場合、幾何学的な整合性が取れている必要があり、そのためにマーカの位置や姿勢を高精度に求めることは、重要な技術となる。
【０００７】
一般に、カメラのほか、マーカの位置や方向を検出するセンサを取り付けて撮影することで、上記の要件を達成することはできるが、そのようなシステムを安価に提供することは困難である。そのため、カメラにより撮影した撮影画像に画像認識処理を施すことで、マーカの位置や姿勢を推定する方法が提案されている。
【０００８】
このようなマーカの位置や姿勢を高精度に求める方法として、マーカの認識の方法に合わせて推定しやすいマーカ画像を生成する方法がある。
【０００９】
例えば、あらかじめ背景映像の画像特徴を抽出して、それらの画像特徴と異なる特異特徴を生成して、特異特徴が現われるようなマーカ画像を生成する技術が開示されている（例えば、特許文献１参照）。この技術によって、背景の画像特徴と、マーカ画像の画像特徴とを区別することが容易になり、マーカの位置や姿勢が推定しやすくなる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特許第４８６８１８６号
【発明の概要】
【発明が解決しようとする課題】
【００１１】
ところで、特許文献１に開示された技術は、マーカの位置を推定するための技術であるが、これを応用すれば、マーカの姿勢を推定することができる。具体的には、マーカ画像上に多数の特徴点を配置して、各点の画像特徴が特異になるように、マーカ画像を生成すればよい。
【００１２】
しかしながら、この場合、マーカ画像を一から生成することになるため、ユーザが所望する画像や文字等を、マーカ画像に含ませることができない。そのため、所望の画像や文字等を含むマーカの位置や姿勢を高精度に求めたいという要求がある。
【００１３】
本技術はこのような状況に鑑みてなされたものであり、元の状態を保存したマーカの位置や姿勢を高精度に求めることができるようにするものである。
【課題を解決するための手段】
【００１４】
本技術の一側面の画像処理装置は、入力画像から特徴点を抽出する特徴点抽出部と、前記特徴点の特徴量を算出する特徴量算出部と、前記入力画像に含まれるマーカ画像から抽出された前記特徴点が特異とならない場合、前記マーカ画像を加工して、特異でない特徴点の特徴量を、特異な特徴点の特徴量となるように変換する画像加工部と、加工の結果に基づいて、新たなマーカ画像を生成するマーカ画像生成部とを備える。
【００１５】
前記画像加工部は、注目している特徴点である注目特徴点の特徴量の値と、前記注目特徴点の近傍の特徴点の特徴量の値とが近似しないように、前記マーカ画像を加工する。
【００１６】
加工済みの前記マーカ画像に付加するための特徴点を生成して、加工済みの前記マーカ画像に付加する特徴点生成部をさらに備える。
【００１７】
前記特徴点生成部は、前記マーカ画像上の前記特徴点の分布に偏りがある場合、前記特徴点の分布に偏りがなくなるように、前記特徴点を付加する。
【００１８】
前記特徴点生成部は、前記マーカ画像上の前記特徴点の数が所定のしきい値を下回る場合、前記特徴点の数が増加するように、前記特徴点を付加する。
【００１９】
前記画像加工部は、前記入力画像の保存性を評価する項と、前記特徴点の特徴量の疎性を評価する項とからなる評価関数が最小化されるように、前記マーカ画像を加工する。
【００２０】
前記特徴量算出部は、前記マーカ画像に関連する情報のロバスト性を考慮するか、又は前記マーカ画像に関連する情報のロバスト性を考慮しないで、前記特徴量を算出する。
【００２１】
前記入力画像に含まれる、画像合成用の新たなマーカ画像を認識する認識部と、認識された前記マーカ画像に、所定の重畳画像を合成する画像合成部とをさらに備える。
【００２２】
前記画像加工部は、特異でない特徴点に対応する画素の輝度値を修正する。
【００２３】
本技術の一側面の画像処理装置は、独立した装置であってもよいし、１つの装置を構成している内部ブロックであってもよい。
【００２４】
本技術の一側面の画像処理方法又はプログラムは、上述した本技術の一側面の画像処理装置に対応する画像処理方法又はプログラムである。
【００２５】
本技術の一側面の画像処理装置、画像処理方法、及びプログラムにおいては、入力画像から特徴点が抽出され、前記特徴点の特徴量が算出され、前記入力画像に含まれるマーカ画像から抽出された前記特徴点が特異とならない場合、前記マーカ画像が加工され、特異でない特徴点の特徴量が、特異な特徴点の特徴量となるように変換され、加工の結果に基づいて、新たなマーカ画像が生成される。
【発明の効果】
【００２６】
本技術の一側面によれば、元の状態を保存したマーカの位置や姿勢を高精度に求めることができる。
【図面の簡単な説明】
【００２７】
【図１】画像合成を説明するための図である。
【図２】本技術を適用した画像処理装置の一実施の形態の構成を示す図である。
【図３】第１のマーカ生成処理を説明するフローチャートである。
【図４】入力画像を説明するための図である。
【図５】特徴点の抽出とその加工を説明するための図である。
【図６】偏り解消を目的とした特徴点付加を説明するための図である。
【図７】特徴点の増加を目的とした特徴点付加を説明するための図である。
【図８】本技術を適用した画像処理装置の一実施の形態の構成を示す図である。
【図９】第２のマーカ生成処理を説明するフローチャートである。
【図１０】特徴量算出処理の詳細を説明するフローチャートである。
【図１１】本技術を適用した画像処理装置の一実施の形態の構成を示す図である。
【図１２】合成画像生成処理を説明するフローチャートである。
【図１３】画像合成の具体的な生成方法を説明するための図である。
【図１４】コンピュータの構成例を示す図である。
【発明を実施するための形態】
【００２８】
以下、図面を参照しながら本技術の実施の形態について説明する。
【００２９】
＜第１の実施の形態＞
【００３０】
＜画像処理装置の構成例＞
【００３１】
図２は、本技術を適用した画像処理装置の一実施の形態の構成を示す図である。
【００３２】
図２に示すように、画像処理装置１は、画像入力部１１、特徴点抽出部１２、特徴量算出部１３、画像加工部１４、特徴点数・分布判定部１５、特徴点生成部１６、マーカ画像生成部１７、及び、マーカ画像出力部１８から構成される。
【００３３】
画像入力部１１は、外部の機器から入力される入力画像を取得し、特徴点抽出部１２に供給する。例えば、入力画像は、カメラや記録媒体、ネットワークを介して接続されたサーバなどから入力される。
【００３４】
特徴点抽出部１２は、画像入力部１１から供給される入力画像に含まれる特徴点を抽出し、特徴量算出部１３に供給する。
【００３５】
ここでは、例えば、Harris Corner Detectorを用いた特徴点抽出が行われる。ただし、特徴点抽出の手法は、一般に種々提案されており、それらの任意の手法を採用することができる。
【００３６】
特徴量算出部１３は、特徴点抽出部１２から供給される入力画像に含まれる各特徴点の特徴量を算出し、画像加工部１４に供給する。
【００３７】
ここでは、例えば、Random Fernsを用いた特徴点の算出が行われる。Random Fernsの詳細については下記の文献１に記されている。
【００３８】
文献１：Mustafa Ozuysal, Michael Calonder, Vincent Lepetit, Pascal Fua,"Fast KeyPoint Recognition Using Random Ferns,"IEEE Transactions on Pattern Analysis and Machine Intelligence, 15 Jan. 2009.
【００３９】
画像加工部１４は、特徴量算出部１３から供給される各特徴点の特徴量に基づいて、入力画像に含まれるマーカ画像から抽出された特徴点が特異とならない場合、マーカ画像を加工して、特異でない特徴点の特徴量を、特異な特徴点の特徴量となるように変換する。具体的には、各特徴点の近傍で、類似する特徴量を有する特徴点が存在しないように、マーカ画像が加工される。
【００４０】
加工済みのマーカ画像は、特徴点数・分布判定部１５に供給される。
【００４１】
特徴点数・分布判定部１５は、画像加工部１４から供給される加工済みのマーカ画像に対し、さらに特徴点を付加するか否かを判定し、その判定結果を特徴点生成部１６に供給する。この判定処理では、マーカ画像上の特徴点の分布に偏りがないかどうか、あるいは、マーカ画像上の特徴点の数が所定のしきい値以上であるかどうかなどが判定される。
【００４２】
特徴点生成部１６は、特徴点数・分布判定部１５から供給される判定結果に従い、マーカ画像上の特徴点の分布に偏りがある場合、特徴点の分布に偏りがなくなるように、特徴点を生成して、加工済みのマーカ画像に付加する。
【００４３】
また、特徴点生成部１６は、特徴点数・分布判定部１５から供給される判定結果に従い、マーカ画像上の特徴点の数が所定のしきい値未満である場合、特徴点の数が増加するように、特徴点を生成して、加工済みのマーカ画像に付加する。
【００４４】
特徴点が付加されることで、マーカ画像はさらに加工されることになる。この加工済みのマーカ画像は、マーカ画像生成部１７に供給される。ただし、特徴点生成部１６は、特徴点数・分布判定部１５によって特徴点を付加しないと判定された場合には、特徴点が付加されていない加工済みのマーカ画像をそのまま、マーカ画像生成部１７に供給する。
【００４５】
マーカ画像生成部１７は、特徴点生成部１６から供給される加工済みのマーカ画像に基づいて、新たなマーカ画像を生成し、マーカ画像出力部１８に供給する。
【００４６】
マーカ画像出力部１８は、マーカ画像生成部１７から供給される新たなマーカ画像を、外部の機器に出力する。
【００４７】
画像処理装置１は、以上のように構成される。
【００４８】
＜第１のマーカ生成処理＞
【００４９】
次に、図３のフローチャートを参照して、図２の画像処理装置１によって実行される第１のマーカ生成処理について説明する。
【００５０】
ステップＳ１において、特徴点抽出部１２は、画像入力部１１により取得された入力画像に対して、Harris Corner Detectorを用いた特徴点抽出処理を施し、入力画像から特徴点を抽出する。この特徴点抽出処理により、入力画像におけるエッジの交点であるコーナ点の２次元の座標が求められる。
【００５１】
ステップＳ２において、特徴量算出部１３は、特徴点抽出部１２により抽出された各特徴点に対して、Random Fernsを用いた特徴量算出処理を施し、特徴量を算出する。
【００５２】
Random Fernsでは、入力画像に対して幾何変換やノイズを加えた画像を複数生成したうえで、画像解析処理を施して特徴量を求めることで、マーカの向きやノイズにロバストな認識を行うことが可能な特徴量を得ることができる。一方で、ロバスト性が増加するにつれて、誤認識の確率が増加することが知られている。そのため、単純にロバスト性を考慮するのではなく、ロバスト性の有無を、アプリケーションプログラムごとに場面に応じて使い分けたり、ロバスト性を考慮した特徴量と、ロバスト性を考慮しない特徴量とを併用することが効果的である。
【００５３】
そこで、第１の実施の形態では、マーカの向きやノイズに対するロバスト性を考慮しない場合について説明し、後述する第２の実施の形態で、マーカの向きやノイズに対するロバスト性を考慮する場合について説明する。
【００５４】
第１の実施の形態のロバスト性を考慮しないRandom Fernsでは、入力画像を構成する画素のうち、注目している画素である注目画素の周辺でランダムに選択された２点の大小関係をバイナリ（0，1）で記述し、この試行を複数回にわたって行うことで、特徴量としてのビット列が得られる。つまり、ある特徴点piに対して、対応する特徴量fiが得られることになる。ただし、特徴点piは、画像上の座標値を表すベクトルである。また、特徴量fiは上記の各試行の結果を要素とするバイナリ値のベクトルであり、例えば、fi = ［011010・・・1］^Tという値を持つ。ここで、Tはベクトルの転置を表す。また、iは特徴点のインデックスを表しており、画像に含まれる特徴点の数がnのとき、i = 0,1,・・・,n-1となる。
【００５５】
ステップＳ２の処理によって、入力画像上の各特徴点の特徴量が算出されると、処理は、ステップＳ３に進められる。
【００５６】
ステップＳ３において、画像加工部１４は、第１の画像加工処理を行う。
【００５７】
この第１の画像加工処理では、入力画像に含まれるマーカ画像から抽出された各特徴点の近傍で、類似する特徴量を有する特徴点が存在しないように、マーカ画像が加工される。これにより、マーカ画像上の特徴点のうち、特異とならない特徴点が加工されて、特異でない特徴点の特徴量が、特異な特徴点の特徴量に変換されることになる。
【００５８】
すなわち、第１の画像加工処理では、特徴量間の特徴空間上での距離が近い組み合わせがなくなるようにするために、注目している注目特徴点の特徴量の値と、注目特徴点の近傍の特徴点の特徴量の値とが近似しないようにマーカ画像が加工されることになる。
【００５９】
その理由であるが、マーカの位置や姿勢を認識（推定）するための処理（以下、「マーカ認識処理」という）に起因するものである。つまり、後述のマーカ認識処理（図１２のステップＳ２０２）では、入力画像に対して特徴点抽出処理を行い、入力画像に含まれるマーカ画像の部分の特徴点と、あらかじめ用意された参照画像に含まれるマーカ画像の部分の特徴点との対応付けがなされる。これらの対応点の対応関係には、正しくない外れ値（outlier）が含まれている場合があるので、幾何拘束をかけることで、外れ値を取り除くことになる。そして、外れ値を取り除いた対応関係から、参照画像空間から入力画像空間への変換が行われることで、マーカの位置や姿勢が推定されることになる。
【００６０】
しかしながら、外れ値の中には、幾何拘束では取り除けないものがある。すなわち、正当な対応点と座標的に近い特徴点に対応付けられた場合、幾何拘束では矛盾が生じていないため、それを取り除くことはできない。このような対応点が、マーカの位置や姿勢の推定に用いられると、その精度が悪化することになる。したがって、マーカの位置や姿勢の推定の精度を向上させる一つの要因として、幾何拘束では取り除けない外れ値を発生させないことが挙げられる。
【００６１】
そこで、本技術では、注目特徴点の特徴量の値と、注目特徴点の近傍の特徴点の特徴量の値とが近似しないようにするが、近傍以外の特徴点との関係は考慮しないようにする。その理由は、上述したように、近傍の特徴点以外については、マーカ認識処理を行う際に、幾何拘束によって取り除くことができるからである。また、近傍以外の特徴点を考慮すると、各特徴点の特徴量の値が近似しないように、特徴量としてより複雑なものを用いることが必要となるが、複雑な特徴量を用いれば用いるほど、マーカ認識処理時の演算量が増加してしまう。それについても、注目特徴点の近傍の特徴点のみを比較対象とすることで、マーカ認識処理における演算量を増加させないようにすることができる。
【００６２】
次に、ステップＳ３の具体的な処理の内容について説明する。
【００６３】
ここでは、特徴量間の類似度を導入する。特徴量fi，fjに対して、下記の式（１）を定義する。
【００６４】
【数１】
2014123230.tif 000003
・・・（１）
【００６５】
ただし、式（１）において、||・||0は、L0ノルムを表し、ベクトル要素中で、0ではない要素数を与える。また、∧は、ベクトルの各要素で論理積（AND）をとるものとする。
【００６６】
ここで、マーカ画像を加工する場合に、ある程度、元の入力画像を保存することを考えると、マーカ画像の加工処理は、下記の式（２）の評価関数Ｊを最小化する問題と捉えることができる。
【００６７】
【数２】
2014123230.tif 000004
・・・（２）
【００６８】
ただし、式（２）において、λは、元のマーカ画像をどの程度保存するかを決定するためのパラメータである。また、α（pi，pj）は、piとpjの距離が離れているほど減衰する関数であって、αによって、近傍の特徴点以外は考慮しないという仕組みを実現している。さらに、Iは、元のマーカ画像の画素値を並べたベクトルを表し、I'は、元のマーカ画像を加工して得られる、加工済みのマーカ画像の画素値を並べたベクトルを表している。
【００６９】
すなわち、式（２）は、入力画像の保存性を評価するための第１の項と、特徴点の特徴量の疎性を評価するための第２の項とからなる。また、第１の項は、加工前後のマーカ画像がある程度類似するようにするものであるのに対し、第２の項では、マーカ画像上の近傍の特徴点が類似しないようにするものである点で、それらの項は相反する関係にあるともいえる。
【００７０】
ここでは、評価関数Ｊを最小化するI'が、最適な加工処理が施されたマーカ画像となるので、画像加工部１４は、評価関数Ｊの最小化を行う。ただし、I'のうち、特徴量の算出に関わらない画素については、元のマーカ画像と同一の画素値が最適解となるので、下記の式（３）に示すように、それらの画素の解は固定して最小化を行う。
【００７１】
【数３】
2014123230.tif 000005
・・・（３）
【００７２】
ただし、式（３）において、I[q]は、ベクトルIのq要素を表している。
【００７３】
なお、各特徴量が座標的に近くに集中していなければ、上述の評価関数Ｊの最小化問題を、部分最小化問題の集合と捉えて、動的計画法によって、評価関数Ｊの最小化が行われる。また、各特徴点が座標的に密になっている場合は、部分最小化問題と捉えても演算量は減らないため、その演算量は膨大になる。この場合は、近似的に評価関数Ｊの最小化を行うことを考え、simulated annealing法やIterative conditional modes法を用いて最小化を行うことになる。
【００７４】
ステップＳ３の処理によって、マーカ画像が加工されると、処理は、ステップＳ４に進められる。
【００７５】
ステップＳ４において、特徴点数・分布判定部１５は、加工済みのマーカ画像上の特徴点の分布（位置）に偏りがないかどうかを判定する。ステップＳ４において、特徴点の分布に偏りがあると判定された場合、処理は、ステップＳ５に進められる。
【００７６】
ステップＳ５において、特徴点生成部１６は、特徴点数・分布判定部１５による判定結果に従い、マーカ画像上の特徴点の分布の偏りを解消するための特徴点を生成する。
【００７７】
ステップＳ６において、特徴点生成部１６は、ステップＳ５で生成した特徴点を、加工済みのマーカ画像に付加する。
【００７８】
ステップＳ６における特徴点の付加は、以下のように行われる。
【００７９】
すなわち、後述のマーカ認識処理（図１２のステップＳ２０２）の精度を考慮すると、マーカ画像上の特徴点の重心位置は、マーカ画像の中心位置に近いほうが望ましい。その理由であるが、第１に、特徴点に偏りがあると、認識される結果に、偏差が生じる可能性がある点と、第２に、マーカ画像の一部が隠された場合のロバスト性を考えると、特徴点の配置は偏りがないほうが、対応点が極端に少なくなるということが起こりにくい点が挙げられる。これらの理由から特徴点の重心位置はマーカ画像の中心位置に近いほうが、認識結果の精度が良くなる。
【００８０】
ステップＳ６の具体的な処理の内容であるが、加工済みのマーカ画像上の全特徴点の座標の重心位置を評価し、その重心位置が、マーカ画像の中心位置から所定のしきい値以上離れている場合には、新たに特徴点を付加することで、重心位置がマーカ画像の中心位置に近づくようにする。例えば、新たな特徴点の座標は、他の特徴点からの距離が最大となる座標とすることができる。このマーカ画像の加工方法であるが、新たな特徴点の座標の画素値が特徴点となるように、極大値か極小値（ここでは元のマーカ画像から変化の少ないほうの値を選択する）に決定する。特徴量は、新たな特徴点の座標の近傍のみで、式（２）の評価関数Ｊを考えて、これを満たすように決定する。
【００８１】
特徴点生成部１６は、マーカ画像上の全特徴点の座標の重心位置が、マーカ画像の中心位置からしきい値以内になるまで、特徴点の付加を繰り返すことになる。
【００８２】
ステップＳ６において、マーカ画像上の特徴点の分布に偏りがなくなるまで特徴点が付加されると、処理は、ステップＳ７に進められる。また、ステップＳ４において、特徴点の分布に偏りがないと判定された場合、ステップＳ５乃至Ｓ６はスキップされ、処理はステップＳ７に進められる。
【００８３】
ステップＳ７において、特徴点数・分布判定部１５は、加工済みのマーカ画像上の特徴点の数が所定のしきい値以上かどうかを判定する。ステップＳ７において、特徴点の数が所定のしきい値未満であると判定された場合、処理は、ステップＳ８に進められる。
【００８４】
ステップＳ８において、特徴点生成部１６は、特徴点数・分布判定部１５による判定結果に従い、マーカ画像上の特徴点の数を増やすための特徴点を生成する。
【００８５】
ステップＳ９において、特徴点生成部１６は、ステップＳ８で生成した特徴点を、加工済みのマーカ画像に付加する。
【００８６】
ステップＳ９における特徴点の付加は、以下のように行われる。
【００８７】
すなわち、後述のマーカ認識処理（図１２のステップＳ２０２）では、特徴点の誤差の影響でマーカの推定精度が悪化することに対し、多数の対応点を用いて平滑化処理を行うことで、誤差の影響を少なくすることが行われる。ここで、平滑化処理を行うということは、誤差の分布として偏りがない分布を前提としている。実際のサンプルでは対応点の数を増やすことで、前提としている分布に近いものが得られるため、マーカの推定精度は対応点数に依存することになる。そこで、特徴点生成部１６は、特徴点の数が所定のしきい値未満となる場合には、新たな特徴点を生成して付加することで、マーカ画像に加工を加えることになる。
【００８８】
ステップＳ９において、マーカ画像上の特徴点の数が所定のしきい値以上となるまで特徴点が付加されると、処理は、ステップＳ１０に進められる。また、ステップＳ７において、特徴点の数が所定のしきい値以上となると判定された場合、ステップＳ８乃至Ｓ９はスキップされ、処理はステップＳ１０に進められる。
【００８９】
すなわち、上述の処理によって、マーカ画像は、ステップＳ３の処理、ステップＳ６の処理、及び、ステップＳ９の処理のうち、少なくともステップＳ３の処理を含む加工処理によって加工されることになる。
【００９０】
ステップＳ１０において、マーカ画像生成部１７は、少なくともステップＳ３の処理を含む加工処理によって加工されたマーカ画像に基づいて、新たなマーカ画像を生成する。
【００９１】
新たなマーカ画像は、加工済みのマーカ画像に対応するものであって、マーカ画像上の特徴点が特徴空間上で互いに疎となって、幾何拘束では取り除けない外れ値が含まれないため、マーカ認識処理において、参照画像を用いた特徴点の対応付けを確実に行うことができる。また、新たなマーカ画像では、特徴点が一様に分布されるようになされるため、マーカの位置や姿勢を求める際の特徴点の誤差の影響を抑えることができる。さらに、加工前後のマーカ画像はある程度類似するものとなるため、その結果として、ユーザが所望する画像や文字などの元の状態を保存したマーカの位置や姿勢を、高精度に求めることができるようになる。
【００９２】
マーカ画像生成部１７により生成されたマーカ画像は、マーカ画像出力部１８から出力される。
【００９３】
以上、第１のマーカ生成処理について説明した。
【００９４】
＜マーカ画像の具体的な加工方法＞
【００９５】
次に、図４乃至図７を参照して、マーカ画像の具体的な加工方法について説明する。
【００９６】
図４は、画像入力部１１に入力される入力画像を模式的に示している。入力画像は、例えば、「ＡＢＣ」である企業の名称が記されたフィリップを含む撮影画像である。この撮影画像には企業の名称のほか、「ＸＹＺ」である文字列が含まれている。
【００９７】
この入力画像に対する特徴点抽出処理（図３のステップＳ１の処理）が行われると、図５に示すように、マーカ画像上特徴点が抽出される。図５は、マーカ画像上の特徴点を模式的に示しており、図中の黒点が特徴点を表す。これらの特徴点ごとに特徴量が算出され（図３のステップＳ２の処理）、各特徴点の特徴量に応じた加工が施される（図３のステップＳ３の処理）。加工処理としては、例えば、マーカ画像上の各特徴点の近傍で、類似する特徴量を有する特徴点が存在しないように、特異でない特徴点に対応する画素の輝度値を修正する処理が行われる。
【００９８】
また、マーカ画像上の特徴点の分布に偏りがある場合には、特徴点の分布に偏りがなくなるように特徴点を付加する加工処理（図３のステップＳ４乃至Ｓ６の処理）が行われ、図６のマーカ画像が得られる。
【００９９】
この例の場合、マーカ画像上の全特徴点の座標の重心位置と、マーカ画像の中心位置とを比較したとき、「ＸＹＺ」である文字列から得られる特徴点がマーカ画像の右上の領域に集まっているが、左下の領域には特徴点が存在せず、不均衡な状態となっている。そこで、マーカ画像の左下の領域に、右上の領域に存在する特徴点と同様の配置で特徴点を分布させることで、特徴点の重心位置が、マーカ画像の中心位置に近づくようにする。
【０１００】
さらに、マーカ画像上の特徴点の数が所定のしきい値未満である場合には、特徴点の数が増加するように特徴点を付加する加工処理（図３のステップＳ７乃至Ｓ９の処理）が行われ、図７のマーカ画像が得られる。
【０１０１】
この例の場合、マーカ画像上の特徴点の数が所定のしきい値未満となるので、しきい値を超えるように、新たな特徴点がマーカ画像上の所定の位置に付加されている。
【０１０２】
このようにしてマーカ画像に加工が施され、新たなマーカ画像が生成されることになるが、「ＡＢＣ」や「ＸＹＺ」などの文字列の元の状態を保存した状態で新たなマーカ画像が生成される。その結果、所望の画像や文字を含むマーカの位置や姿勢を高精度に求めることができる。
【０１０３】
以上、マーカ画像の具体的な加工方法について説明した。
【０１０４】
＜第２の実施の形態＞
【０１０５】
＜画像処理装置の構成例＞
【０１０６】
図８は、本技術を適用した画像処理装置の一実施の形態の構成を示す図である。
【０１０７】
上述したように、第２の実施の形態では、特徴量算出処理において、マーカの向きやノイズに対するロバスト性を考慮して、マーカ画像を生成する。そのため、図８の画像処理装置１０１では、図２の画像処理装置１と比べて、特徴量算出部１３及び画像加工部１４の代わりに、特徴量算出部１１３及び画像加工部１１４が設けられている。
【０１０８】
特徴量算出部１１３は、特徴点抽出部１２によって抽出された各特徴点の特徴量を算出し、画像加工部１１４に供給する。ただし、特徴量算出部１１３では、ロバスト性を考慮したRandom Fernsを用いた特徴量算出処理が行われる。
【０１０９】
画像加工部１１４は、特徴量算出部１１３によって算出された各特徴点の特徴量に基づいて、マーカ画像上の各特徴点の近傍で、類似する特徴量を有する特徴点が存在しないように、マーカ画像を加工し、特徴点数・分布判定部１５に供給する。
【０１１０】
なお、図８の画像処理装置１０１において、特徴量算出部１１３及び画像加工部１１４以外の構成については、図２の画像処理装置１と同様の構成を有しているため、その説明は省略する。
【０１１１】
画像処理装置１０１は、以上のように構成される。
【０１１２】
＜第２のマーカ生成処理＞
【０１１３】
次に、図９のフローチャートを参照して、図８の画像処理装置１０１によって実行される第２のマーカ生成処理について説明する。
【０１１４】
ステップＳ１０１においては、図３のステップＳ１と同様に、特徴点抽出部１２によって、入力画像から特徴点が抽出される。
【０１１５】
ステップＳ１０２において、特徴量算出部１１３は、特徴点抽出部１２により抽出された各特徴点に対して、ロバスト性を考慮したRandom Fernsを用いた特徴量算出処理を施し、特徴量を算出する。
【０１１６】
マーカが様々な方向を向いていたり、ノイズが含まれていたりすると、後述のマーカ認識処理（図１２のステップＳ２０２）によって、正確なマーカ認識を行うことができないおそれがあり、特徴点の特徴量で何らかの対応を行う必要がある。ロバスト性を考慮したRandom Fernsでは、事前にマーカ画像の向きやノイズをシミュレーションした画像を生成しておいて、その画像を用いて特徴量を算出して辞書化し、マーカ認識処理に用いることで、マーカの向きやノイズにロバストな認識を行う。
【０１１７】
ここで、図１０のフローチャートを参照して、ロバスト性を考慮したRandom Fernsを用いた特徴量算出処理の詳細について説明する。
【０１１８】
ステップＳ１３１において、特徴量算出部１１３は、あらかじめ定められた画像変換回数を満たしたか否かを判定する。ステップＳ１３１において、画像変換回数を満たしていないと判定された場合、処理はステップＳ１３２に進められる。
【０１１９】
ステップＳ１３２において、特徴量算出部１１３は、入力画像に対してホモグラフィ（Homography）変換を行う。ホモグラフィ変換は、下記の式（４）を用いて行われる。
【０１２０】
【数４】
2014123230.tif 000006
・・・（４）
【０１２１】
式（４）において、(x，y)が入力画像の座標を表し、（u，v）が変換後の座標を表すものとし、(wiui，wivi，wi)は、（u，v）の同次座標を表すものとする。この変換によって、マーカの様々な向きをシミュレーションすることができる。ただし、ホモグラフィ変換のパラメータは、マーカの向きの上限値を定めて、その中でランダムに生成するものとする。なお、ここでは、幾何学的な変換として、ホモグラフィ変換を用いる例を説明するが、他の変換方法を用いることもできる。
【０１２２】
ステップＳ１３３において、特徴量算出部１１３は、ホモグラフィ変換後の入力画像を構成する画素の画素値に、ノイズを付加する。このノイズ量は、正規分布に従って加えられる。
【０１２３】
ステップＳ１３４において、特徴量算出部１１３は、各特徴点の特徴量を算出する。ここでは、図３のステップＳ２と同様にして、注目画素の周辺でランダムに選択された２点の大小関係をバイナリ（0，1）で記述し、これを複数回にわたって行うことで、特徴量としてのビット列が得られる。
【０１２４】
ステップＳ１３５において、特徴量算出部１１３は、各特徴点の特徴量に対応するヒストグラム（以下、「特徴量ヒストグラム」という）を生成する。ここでは、要素数が特徴量fiの取り得る値の数となるヒストグラムHが生成され、得られた特徴量に対応するバイナリのヒストグラムに加算される。
【０１２５】
ステップＳ１３５の処理が終了すると、処理はステップＳ１３１に戻され、画像変換を行った回数が、所定の画像変換回数に達するまで、上述のステップＳ１３２乃至Ｓ１３５が繰り返される。
【０１２６】
ステップＳ１３１において、所定の画像変換回数を満たしたと判定された場合、処理は、図９のステップＳ１０２に戻り、それ以降の処理が行われる。
【０１２７】
ステップＳ１０３において、画像加工部１１４は、第２の画像加工処理を行う。
【０１２８】
この第２の画像加工処理では、マーカ画像上の各特徴点の近傍で、類似する特徴量を有する特徴点が存在しないように、マーカ画像が加工される。これにより、マーカ画像上の特徴点のうち、特異とならない特徴点が加工されて、特異でない特徴点の特徴量が特異な特徴点の特徴量に変換されることになる。
【０１２９】
ただし、この第２の画像加工処理では、ステップＳ１０２の特徴量算出処理により得られた各特徴量fiについて、特徴量ヒストグラム間の特徴空間上での距離が近い組み合わせがなくなるように、マーカ画像を加工する処理が行われる。
【０１３０】
ステップＳ１０３の具体的な処理の内容について説明する。
【０１３１】
ここでは、特徴量間の類似度を導入する。特徴量ヒストグラムHi，Hjに対して、下記の式（５）を定義する。
【０１３２】
【数５】
2014123230.tif 000007
・・・（５）
【０１３３】
また、マーカ画像を加工する場合に、ある程度、元の入力画像を保存することを考えると、マーカ画像の加工処理は、下記の式（６）の評価関数Ｊを最小化する問題と捉えることができる。
【０１３４】
【数６】
2014123230.tif 000008
・・・（６）
【０１３５】
ただし、式（６）においては、上述の式（２）と同様に、λは元のマーカ画像の保存状態を決定するためのパラメータ、α（pi，pj）は減衰関数、Iは元のマーカ画像の画素値を並べたベクトル、I'は加工済みのマーカ画像の画素値を並べたベクトルをそれぞれ表している。
【０１３６】
すなわち、式（６）は、上述の式（２）と同様に、入力画像の保存性を評価するための第１項と、特徴点の特徴量の疎性を評価するための第２の項とからなり、それらの項は相反する関係にある。
【０１３７】
そして、ここでは、評価関数Ｊを最小化するI'が、最適な加工処理が施されたマーカ画像となるので、画像加工部１１４は、評価関数Ｊの最小化を行う。ただし、I'のうち、特徴量の算出に関わらない画素については、元のマーカ画像と同一の画素値が最適解となるので、下記の式（７）に示すように、それらの画素の解は固定して最小化を行う。
【０１３８】
【数７】
2014123230.tif 000009
・・・（７）
【０１３９】
ただし、式（７）においては、式（３）と同様に、I[q]は、ベクトルIのq要素を表している。
【０１４０】
なお、第1の実施の形態と同様に、各特徴量が座標的に近くに集中していなければ、上述の評価関数Ｊの最小化問題を、部分最小化問題の集合と捉えて、動的計画法によって、評価関数Ｊの最小化が行われる。また、各特徴点が座標的に密になっている場合は、部分最小化問題と捉えても演算量は減らないため、その演算量は膨大になる。この場合は、近似的に評価関数Ｊの最小化を行うことを考え、simulated annealing法やIterative conditional modes法を用いて最小化を行うことになる。
【０１４１】
また、評価関数Ｊの最小化を行う際に、DHの値を逐次処理ごとに求める必要がある。そのために、図１０のステップＳ１３２にて行ったホモグラフィ変換を、I'に対しても行い、特徴量ヒストグラムHを求めて、DHを計算する。このとき、画像全体について再度計算をする必要はなく、最小化ステップtとt+1の差分を考えることで、演算量を削減することができる。
【０１４２】
すなわち、ΔI = I'(t+1) - I'(t)と定義したとき、ΔI=0となる画素のみから得られる特徴量に対応するヒストグラムのビンの値は、H(I'(t+1)) = H(I'(t))となるので、最小化ステップtの値をそのまま用いて、ΔI=0でない画素についてのみ、ヒストグラムの算出を行えばよいことになる。ただし、I，I'は、上述の説明では画像を意味していたが、この段落の説明では画素を意味するものとして説明した。
【０１４３】
ステップＳ１０３の処理によって、マーカ画像が加工されると、処理は、ステップＳ１０４に進められる。
【０１４４】
ステップＳ１０４乃至Ｓ１０６においては、図３のステップＳ４乃至Ｓ６と同様に、マーカ画像上の特徴点の分布に偏りがある場合には、特徴点の分布に偏りがなくなるように特徴点が付加される。
【０１４５】
また、ステップＳ１０７乃至Ｓ１０９においては、図３のステップＳ７乃至Ｓ９と同様に、マーカ画像上の特徴点の数が所定のしきい値未満である場合には、特徴点の数が増加するように特徴点が付加される。
【０１４６】
ステップＳ１１０においては、図３のステップＳ１０と同様に、マーカ画像生成部１７によって、新たなマーカ画像が生成される。
【０１４７】
以上、第２のマーカ生成処理について説明した。
【０１４８】
＜第３の実施の形態＞
【０１４９】
＜画像処理装置の構成例＞
【０１５０】
図１１は、本技術を適用した画像処理装置の一実施の形態の構成を示す図である。
【０１５１】
図１１の画像処理装置２０１は、入力画像に含まれるマーカ画像に、重畳画像を合成することで、合成画像を生成する。そのため、画像処理装置２０１には、図２の画像処理装置１と比べて、マーカ画像出力部１８の代わりに、マーカ画像認識部２１１、参照画像記憶部２１２、画像合成部２１３、重畳画像記憶部２１４、及び、合成画像出力部２１５が設けられている。
【０１５２】
画像入力部１１乃至マーカ画像生成部１７では、上述したように、入力画像に含まれるマーカ画像が加工され、新たなマーカ画像が生成される。新たなマーカ画像を含む入力画像は、マーカ画像認識部２１１に供給される。
【０１５３】
マーカ画像認識部２１１は、マーカ画像生成部１７から入力画像が供給された場合、参照画像記憶部２１２に記憶された参照画像に基づいて、入力画像に含まれる新たなマーカ画像を認識し、その認識の結果を、画像合成部２１３に供給する。
【０１５４】
画像合成部２１３は、マーカ画像認識部２１１からの認識の結果に従い、入力画像に含まれる新たなマーカ画像に、重畳画像記憶部２１４に記憶された重畳画像を合成し、合成画像出力部２１５に供給する。
【０１５５】
合成画像出力部２１５は、画像合成部２１３から供給される合成画像を、外部の機器に出力する。
【０１５６】
画像処理装置２０１は、以上のように構成される。
【０１５７】
＜合成画像生成処理＞
【０１５８】
次に、図１２のフローチャートを参照して、図１１の画像処理装置２０１によって実行される合成画像生成処理について説明する。
【０１５９】
ステップＳ２０１においては、特徴点抽出部１２乃至マーカ画像生成部１７によって、図３の第１のマーカ画像生成処理が実行され、新たなマーカ画像が生成される。
【０１６０】
ステップＳ２０２において、マーカ画像認識部２１１は、入力画像に含まれる新たなマーカ画像を認識するためのマーカ認識処理を行う。
【０１６１】
このマーカ認識処理では、入力画像に対して特徴点抽出処理を行い、入力画像に含まれるマーカ画像の部分の特徴点と、参照画像記憶部２１２から読み出した参照画像に含まれるマーカ画像の部分の特徴点との対応付けがなされる。その際、外れ値を取り除くために幾何拘束をかけるが、新たなマーカ画像では、上述の第１の画像加工処理（図３のステップＳ３）によって、マーカ画像上の特徴点が特徴空間上で互いに疎となって、幾何拘束では取り除けない外れ値が含まれないため、参照画像を用いた特徴点の対応付けを確実に行うことができる。また、注目特徴点に対し、マーカ画像上の全ての特徴点との比較を行うのではなく、注目特徴点の近傍の特徴点のみとの比較により、特異でない特徴点の特徴量が、特異な特徴点の特徴量となるように変換するので、変換の回数を減らすことができる。その結果、特徴点の数が多くなっても特徴量を複雑にする必要がなくなり、マーカ認識処理時の演算量を減らすことができる。
【０１６２】
また、上述の図３のステップＳ４乃至Ｓ６によって、マーカ画像上の特徴点の分布の偏りを解消している場合には、認識結果に偏差が生じにくくなり、さらに対応点の数が極端に少なくなるといった事態も生じにくいため、マーカ認識処理の精度を向上させることができる。また、マーカ画像上の特徴点が一様に分布するようにすることで、マーカの位置や姿勢を求める際の特徴点の誤差の影響を抑えることができる。
【０１６３】
さらに、上述の図３のステップＳ７乃至Ｓ９によって、マーカ画像上の特徴点の数が所定のしきい値以上になるように増加されている場合には、平滑化処理を行う際に前提とする分布に近いものを得ることができるため、特徴点の誤差の影響の少なくしてマーカの推定精度の悪化を抑制することができる。つまり、マーカの推定精度と、マーカ画像上の特徴点数には一定の関係があり、特徴点数が多いほどその精度が良いので、特徴点数を増加させることで、マーカの位置や姿勢を高精度に求めることが可能となる。
【０１６４】
ステップＳ２０２の処理によってマーカ画像が認識されると、処理は、ステップＳ２０３に進められる。
【０１６５】
ステップＳ２０３において、画像合成部２１３は、マーカ画像認識部２１１からの認識の結果に従い、入力画像に含まれるマーカ画像の領域に、重畳画像記憶部２１４から読み出した重畳画像を合成して合成画像を生成する。
【０１６６】
ステップＳ２０４において、合成画像出力部２１５は、画像合成部２１３により生成された合成画像を出力する。
【０１６７】
以上、合成画像生成処理について説明した。
【０１６８】
＜合成画像の具体的な生成方法＞
【０１６９】
次に、図１３を参照して、合成画像の具体的な生成方法について説明する。
【０１７０】
図１３には、入力画像と、合成画像が模式的に示されている。図１３の左側の入力画像は上述した例と同様に、「ＡＢＣ」である企業の名称が記されたフィリップを含む撮影画像である。この撮影画像には企業の名称のほか、「ＸＹＺ」である文字列が含まれている。
【０１７１】
この入力画像に対するマーカ生成処理（図１２のステップＳ２０１）が行われると、マーカ画像の加工が行われ、新たにマーカ画像が生成される。
【０１７２】
また、入力画像に対するマーカ認識処理（図１２のステップＳ２０２）が行われると、新たに生成されたマーカ画像が撮影画像から認識される。そして、マーカ認識処理により認識されたマーカ画像の領域に、その企業の売り上げを示すグラフなどの重畳画像を重畳させる画像合成処理（図１２のステップＳ２０３）が行われ、図１３の右側の合成画像が得られる。
【０１７３】
以上、合成画像の具体的な生成方法について説明した。
【０１７４】
なお、第３の実施の形態では、第１の実施の形態と同様に、ロバスト性を考慮しないRandom Fernsを用いない特徴量算出処理を適用した場合のマーカ生成処理について説明したが、第２の実施の形態と同様に、ロバスト性を考慮しないRandom Fernsを用いた特徴量算出処理を適用するようにしてもよい。この場合、図１２のステップＳ２０１の処理では、図９の第２のマーカ生成処理が呼び出され、実行されることになる。
【０１７５】
以上のように、本技術によれば、ユーザが所望する画像や文字等をマーカ画像に含めることを可能にして、できるだけ元の画像や文字等を保存した状態のマーカの位置や姿勢が高精度に求められるようにしている。
【０１７６】
また、アプリケーションプログラムによっては、マーカとして様々な任意の画像を使用したい場合がある。例えば、雑誌を認識して所定の情報を重畳する場合、雑誌の表紙をマーカとして認識を行うが、雑誌の表紙は様々である。また、マーカの中には認識しやすいマーカだけではなく、認識しにくいマーカも存在する。これはマーカ認識処理からすると、認識しやすいマーカになっているかどうかに依存するものである。例えば、認識しにくいマーカとして上述の企業のロゴが挙げられる。企業のロゴをマーカとして使用する場合には、次の問題点が生じる。すなわち、文字などの繰り返しの多いパターンが含まれていると、マーカ認識処理の際に参照画像の特徴点の対応関係を得るときに間違える可能性が高いという問題がある。また、企業のロゴのようなシンプルなデザインの場合、基本的に抽出される特徴点が少ないために、安定してマーカの位置や方向を推定することができないという問題がある。
【０１７７】
本技術では、これらの問題を解決するために、元のマーカ画像を加工（修正）することで、元の画像情報をある程度保ったままで、認識しやすいマーカ画像を生成することができるようにしている。その結果、例えば雑誌の表紙や企業のロゴ等の認識し難いマーカであっても、その位置や姿勢を高精度に認識することができるようになる。
【０１７８】
＜本技術を適用したコンピュータの説明＞
【０１７９】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【０１８０】
図１４は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０１８１】
コンピュータ３０１において、CPU（Central Processing Unit）３１１，ROM（Read Only Memory）３１２，RAM（Random Access Memory）３１３は、バス３１４により相互に接続されている。
【０１８２】
バス３１４には、さらに、入出力インタフェース３１５が接続されている。入出力インタフェース３１５には、入力部３１６、出力部３１７、記録部３１８、通信部３１９、及び、ドライブ３２０が接続されている。
【０１８３】
入力部３１６は、キーボード、マウス、マイクロフォンなどよりなる。出力部３１７は、ディスプレイ、スピーカなどよりなる。記録部３１８は、ハードディスクや不揮発性のメモリなどよりなる。通信部３１９は、ネットワークインタフェースなどよりなる。ドライブ３２０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア３２１を駆動する。
【０１８４】
以上のように構成されるコンピュータ３０１では、CPU３１１が、例えば、記録部３１８に記憶されているプログラムを、入出力インタフェース３１５及びバス３１４を介して、RAM３１３にロードして実行することにより、上述した一連の処理が行われる。
【０１８５】
コンピュータ３０１（CPU３１１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア３２１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線又は無線の伝送媒体を介して提供することができる。
【０１８６】
コンピュータ３０１では、プログラムは、リムーバブルメディア３２１をドライブ３２０に装着することにより、入出力インタフェース３１５を介して、記録部３１８にインストールすることができる。また、プログラムは、有線又は無線の伝送媒体を介して、通信部３１９で受信し、記録部３１８にインストールすることができる。その他、プログラムは、ROM３１２や記録部３１８に、あらかじめインストールしておくことができる。
【０１８７】
なお、コンピュータ３０１が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１８８】
ここで、本明細書において、コンピュータ３０１に各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含むものである。
【０１８９】
また、プログラムは、１のコンピュータにより処理されるものであってもよいし、複数のコンピュータによって分散処理されるものであってもよい。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであってもよい。
【０１９０】
さらに、本明細書において、システムとは、複数の構成要素（装置、モジュール（部品）等）の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、１つの筐体の中に複数のモジュールが収納されている１つの装置は、いずれも、システムである。
【０１９１】
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０１９２】
例えば、本技術は、１つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【０１９３】
また、上述のフローチャートで説明した各ステップは、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０１９４】
さらに、１つのステップに複数の処理が含まれる場合には、その１つのステップに含まれる複数の処理は、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０１９５】
なお、本技術は、以下のような構成をとることができる。
【０１９６】
（１）
入力画像から特徴点を抽出する特徴点抽出部と、
前記特徴点の特徴量を算出する特徴量算出部と、
前記入力画像に含まれるマーカ画像から抽出された前記特徴点が特異とならない場合、前記マーカ画像を加工して、特異でない特徴点の特徴量を、特異な特徴点の特徴量となるように変換する画像加工部と、
加工の結果に基づいて、新たなマーカ画像を生成するマーカ画像生成部と
を備える画像処理装置。
（２）
前記画像加工部は、注目している特徴点である注目特徴点の特徴量の値と、前記注目特徴点の近傍の特徴点の特徴量の値とが近似しないように、前記マーカ画像を加工する
（１）に記載の画像処理装置。
（３）
加工済みの前記マーカ画像に付加するための特徴点を生成して、加工済みの前記マーカ画像に付加する特徴点生成部をさらに備える
（１）又は（２）に記載の画像処理装置。
（４）
前記特徴点生成部は、前記マーカ画像上の前記特徴点の分布に偏りがある場合、前記特徴点の分布に偏りがなくなるように、前記特徴点を付加する
（３）に記載の画像処理装置。
（５）
前記特徴点生成部は、前記マーカ画像上の前記特徴点の数が所定のしきい値を下回る場合、前記特徴点の数が増加するように、前記特徴点を付加する
（３）又は（４）に記載の画像処理装置。
（６）
前記画像加工部は、前記入力画像の保存性を評価する項と、前記特徴点の特徴量の疎性を評価する項とからなる評価関数が最小化されるように、前記マーカ画像を加工する
（１）乃至（５）のいずれか一項に記載の画像処理装置。
（７）
前記特徴量算出部は、前記マーカ画像に関連する情報のロバスト性を考慮するか、又は前記マーカ画像に関連する情報のロバスト性を考慮しないで、前記特徴量を算出する
（１）乃至（６）のいずれか一項に記載の画像処理装置。
（８）
前記入力画像に含まれる、画像合成用の新たなマーカ画像を認識する認識部と、
認識された前記マーカ画像に、所定の重畳画像を合成する画像合成部と
をさらに備える（１）乃至（７）のいずれか一項に記載の画像処理装置。
（９）
前記画像加工部は、特異でない特徴点に対応する画素の輝度値を修正する
（１）乃至（８）のいずれか一項に記載の画像処理装置。
（１０）
画像処理装置の画像処理方法において、
前記画像処理装置が、
入力画像から特徴点を抽出し、
前記特徴点の特徴量を算出し、
前記入力画像に含まれるマーカ画像から抽出された前記特徴点が特異とならない場合、前記マーカ画像を加工して、特異でない特徴点の特徴量を、特異な特徴点の特徴量となるように変換し、
加工の結果に基づいて、新たなマーカ画像を生成する
ステップを含む画像処理方法。
（１１）
コンピュータを、
入力画像から特徴点を抽出する特徴点抽出部と、
前記特徴点の特徴量を算出する特徴量算出部と、
前記入力画像に含まれるマーカ画像から抽出された前記特徴点が特異とならない場合、前記マーカ画像を加工して、特異でない特徴点の特徴量を、特異な特徴点の特徴量となるように変換する画像加工部と、
加工の結果に基づいて、新たなマーカ画像を生成するマーカ画像生成部と
して機能させるためのプログラム。
【符号の説明】
【０１９７】
１，１０１，２０１  画像処理装置，  １１  画像入力部，  １２  特徴点抽出部，  １３，１１３  特徴量算出部，  １４，１１４  画像加工部，  １５  特徴点数・分布判定部，  １６  特徴点生成部，  １７  マーカ画像生成部，  １８  マーカ画像出力部，  ２１１  マーカ画像認識部，  ２１２  参照画像記憶部，  ２１３  画像合成部，  ２１４  重畳画像記憶部，  ２１５  合成画像出力部，  ３０１  パーソナルコンピュータ，  ３１１  CPU
【図１】
2014123230.tif 000010
【図２】
2014123230.tif 000011
【図３】
2014123230.tif 000012
【図４】
2014123230.tif 000013
【図５】
2014123230.tif 000014
【図６】
2014123230.tif 000015
【図７】
2014123230.tif 000016
【図８】
2014123230.tif 000017
【図９】
2014123230.tif 000018
【図１０】
2014123230.tif 000019
【図１１】
2014123230.tif 000020
【図１２】
2014123230.tif 000021
【図１３】
2014123230.tif 000022
【図１４】
2014123230.tif 000023