(57)【特許請求の範囲】
【請求項１】
プレビュー画像に仮想情報を重畳させる画像処理装置であって、
前記プレビュー画像を取得する画像取得手段と、
前記画像取得手段により取得されたプレビュー画像内のオブジェクトを認識する画像認識手段と、
前記画像処理装置とは異なる第１の画像処理装置で認識されたオブジェクトの認識結果を、当該画像処理装置を基準とした認識結果に変換する協調認識処理手段と、
前記画像認識手段による認識結果と、前記協調認識処理手段により変換された認識結果と、に基づいて、前記画像取得手段により取得されたプレビュー画像に仮想情報を重畳させる仮想情報表示手段と、を備えることを特徴とする画像処理装置。
【請求項２】
前記協調認識処理手段は、
前記画像認識手段による認識結果と、前記第１の画像処理装置での認識結果と、の双方に認識結果が含まれているオブジェクトが存在していれば、当該オブジェクトについての当該画像認識手段による認識結果と、当該オブジェクトについての当該第１の画像処理装置での認識結果と、に基づいて前記画像処理装置と当該第１の画像処理装置との相対的な位置関係を示す相対姿勢を推定し、
前記相対姿勢を用いて、前記第１の画像処理装置での認識結果を、前記画像処理装置を基準とした認識結果に変換することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記協調認識処理手段は、前記画像処理装置と前記第１の画像処理装置との相対的な位置関係を示す相対姿勢と、当該第１の画像処理装置と第２の画像処理装置との相対的な位置関係を示す相対姿勢と、に基づいて、当該画像処理装置と当該第２の画像処理装置との相対的な位置関係を示す相対姿勢を推定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記協調認識処理手段は、前記画像認識手段により認識していないオブジェクトについて、前記第１の画像処理装置での認識結果を、前記画像処理装置を基準とした認識結果に変換することを特徴とする請求項１から３のいずれかに記載の画像処理装置。
【請求項５】
前記画像認識手段は、オブジェクトごとの認識結果に、当該認識結果の認識精度の指標となる情報を付加し、
前記協調認識処理手段は、前記画像処理装置での認識結果の認識精度の方が、前記第１の画像処理装置での認識結果の認識精度よりも低いオブジェクトについて、当該第１の画像処理装置での認識結果を、当該画像処理装置を基準とした認識結果に変換することを特徴とする請求項１から４のいずれかに記載の画像処理装置。
【請求項６】
前記画像認識手段は、前記認識精度の指標として、オブジェクトに対する撮影距離と、オブジェクトに対する撮影角度と、のうち少なくともいずれかを用いることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記画像認識手段は、前記認識精度の指標として、局所特徴量のマッチング数と、局所特徴量のマッチングのスコアと、のうち少なくともいずれかを用いることを特徴とする請求項５に記載の画像処理装置。
【請求項８】
前記画像認識手段は、前記認識精度の指標として、ＳＳＤ（Sum  of  Squared  Difference）の応答値と、ＮＣＣ（Normalized  Cross  Correlation）の応答値と、のうち少なくともいずれかを用いることを特徴とする請求項５に記載の画像処理装置。
【請求項９】
前記画像認識手段による認識結果と、前記第１の画像処理装置での認識結果と、の双方に認識結果が含まれているオブジェクトが２つ以上存在していれば、
前記協調認識処理手段は、前記画像認識手段による認識結果と、前記第１の画像処理装置での認識結果と、の双方に認識結果が含まれている２つ以上のオブジェクトのうち少なくとも１つを認識休止オブジェクトとし、当該認識休止オブジェクトについての前記第１の画像処理装置での認識結果を、前記画像処理装置を基準とした認識結果に変換し、
前記画像認識手段は、前記認識休止オブジェクトの認識を休止することを特徴とする請求項１から８のいずれかに記載の画像処理装置。
【請求項１０】
前記画像認識手段による認識結果と、前記第１の画像処理装置での認識結果と、の双方に認識結果が含まれているオブジェクトが２つ以上存在しており、前記画像処理装置の処理能力が前記第１の画像処理装置の処理能力よりも低ければ、
前記協調認識処理手段は、前記画像認識手段による認識結果と、前記第１の画像処理装置での認識結果と、の双方に認識結果が含まれている２つ以上のオブジェクトのうち少なくとも１つを認識休止オブジェクトとし、当該認識休止オブジェクトについての前記第１の画像処理装置での認識結果を、前記画像処理装置を基準とした認識結果に変換し、
前記画像認識手段は、前記認識休止オブジェクトの認識を休止することを特徴とする請求項１から８のいずれかに記載の画像処理装置。
【請求項１１】
前記協調認識処理手段は、前記画像認識手段による認識結果を求めるために要した時間が長くなるに従って小さくなる数値を設定し、当該数値を前記画像処理装置の処理能力として用いることを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記協調認識処理手段は、前記認識休止オブジェクトであるオブジェクトの数を、前記画像取得手段によりプレビュー画像が取得されるたびに最大で１つずつ増加させることを特徴とする請求項９から１１のいずれかに記載の画像処理装置。
【請求項１３】
前記協調認識処理手段は、前記第１の画像処理装置での認識結果に含まれていないオブジェクトを、前記認識休止オブジェクトから除外することを特徴とする請求項９から１２のいずれかに記載の画像処理装置。
【請求項１４】
画像取得手段、画像認識手段、協調認識処理手段、および仮想情報表示手段を備え、プレビュー画像に仮想情報を重畳させる画像処理装置における画像処理方法であって、
前記画像取得手段が、前記プレビュー画像を取得する第１のステップと、
前記画像認識手段が、前記第１のステップで取得されたプレビュー画像内のオブジェクトを認識する第２のステップと、
前記協調認識処理手段が、前記画像処理装置とは異なる第１の画像処理装置で認識されたオブジェクトの認識結果を、当該画像処理装置を基準とした認識結果に変換する第３のステップと、
前記仮想情報表示手段が、前記第２のステップによる認識結果と、前記第３のステップで変換された認識結果と、に基づいて、前記第１のステップで取得されたプレビュー画像に仮想情報を重畳させる第４のステップと、を備えることを特徴とする画像処理方法。
【請求項１５】
画像取得手段、画像認識手段、協調認識処理手段、および仮想情報表示手段を備え、プレビュー画像に仮想情報を重畳させる画像処理装置における画像処理方法を、コンピュータに実行させるためのプログラムであって、
前記画像取得手段が、前記プレビュー画像を取得する第１のステップと、
前記画像認識手段が、前記第１のステップで取得されたプレビュー画像内のオブジェクトを認識する第２のステップと、
前記協調認識処理手段が、前記画像処理装置とは異なる第１の画像処理装置で認識されたオブジェクトの認識結果を、当該画像処理装置を基準とした認識結果に変換する第３のステップと、
前記仮想情報表示手段が、前記第２のステップによる認識結果と、前記第３のステップで変換された認識結果と、に基づいて、前記第１のステップで取得されたプレビュー画像に仮想情報を重畳させる第４のステップと、をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、現実空間の画像（映像）をコンピュータで処理して仮想情報を重畳するＡＲ（拡張現実感）技術が注目を集めている。ＡＲ技術を用いることで、ユーザの行動を支援したり、ユーザに直観的な情報提示を行ったりすることが可能となる。例えば、ユーザの周囲に存在する看板や広告にＡＲ技術を用いることで、限られたスペースでは伝えることのできない詳細な情報や動画や３Ｄコンテンツなどを提示したり、場所や時間や閲覧者の属性などによって提示する情報を適宜変更したりすることができる。
【０００３】
ＡＲ技術の主要なプラットフォームとして、携帯端末が期待されている。この携帯端末としては、例えば、撮像装置（カメラ）およびディスプレイを搭載し、画像処理に十分な処理性能を備えたスマートフォンやＨＭＤ（Head  Mounted  Display）などの端末がある。
【０００４】
ＡＲ技術では、仮想情報を正しい位置に重畳するために、撮像装置と現実空間との相対的な姿勢（位置および向き）をリアルタイムで推定する必要がある。
【０００５】
上述の姿勢推定の手法として、例えば、認識対象となる基準マーカを用いる手法が提案されている（例えば、非特許文献１、２参照）。基準マーカとして、非特許文献１ではＡＲマーカが適用され、非特許文献２では任意の画像が適用される。しかし、非特許文献１、２に示されている手法では、上述の姿勢推定を行う装置に、基準マーカを予め登録しておく必要がある。
【０００６】
そこで、上述の姿勢推定の手法として、仮想情報を重畳する前段階の処理で現実空間をモデリングし、復元（モデリング）された空間全体を基準マーカとして扱うための手法が提案されている（例えば、非特許文献３参照）。この手法によれば、基準マーカを適宜作成するので、上述の姿勢推定を行う装置に、基準マーカを予め登録しておく必要がなくなる。
【０００７】
これらＡＲマーカを用いる手法と、任意の画像を用いる手法と、基準マーカを適宜作成する手法とには、それぞれ利便性や処理負荷のトレードオフが存在する。このため、適切な手法を、状況に応じて選択する必要がある。
【０００８】
上述のＡＲ技術は、主に個人での利用を想定したものである。一方、複数人での利用を想定したＡＲ技術についても、検討が進められている。仮想情報やＡＲ空間全体を複数人で共有することで、共同作業の支援（ＣＳＣＷ：Computer  Supported  Cooperative  Work）や、マルチプレイ型のＡＲゲームを提供することが可能となる。
【０００９】
そこで、例えば特許文献１、２には、ＡＲ空間内の任意の位置にユーザが仮想情報を固定配置し、配置された仮想情報を複数のユーザで共有するための技術が提案されている。また、例えば特許文献３には、マルチプレイ型のＡＲゲームのユーザビリティを向上させるために、姿勢推定に必要なＡＲマーカと仮想情報とを同時に撮像できるように、仮想情報の配置を調整する技術が提案されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１３−１６４６９６号公報
【特許文献２】特開２０１３−１６４６９７号公報
【特許文献３】特開２０１３−５９５４１号公報
【非特許文献】
【００１１】
【非特許文献１】H.  Kato  and  M.  Billinghurst,  “Marker  tracking  and  hmd  calibration  for  a  video-based  augmented  reality  conferencing  system,”  in  Proc.  Of  IEEE  and  ACM  International  Workshop  on  Augmented  Reality,  1999.
【非特許文献２】D.  Wagner,  G.  Reitmayr,  A.  Mulloni,  T.  Drummond,  and  D.  Schmalstieg,  “Real-time  detection  and  tracking  for  augmented  reality  on  mobile  phones,”  IEEE  Trans.  On  Visualization  and  Computer  Graphics,  2010.
【非特許文献３】G.  Klein  and  D.  Murray.  Parallel  tracking  and  mapping  for  small  ar  workspaces.  In  Proc.  Of  International  Symposium  on  Mixed  and  Augmented  Reality,  2007.
【発明の概要】
【発明が解決しようとする課題】
【００１２】
ＡＲ技術において、仮想情報を配置する方法として、２つの方法がある。１つ目の方法は、基準マーカに対する仮想情報の相対的な位置関係を登録しておくことで、仮想情報をＡＲ空間内に固定配置する方法である。２つ目の方法は、基準マーカとは異なるオブジェクトに対する仮想情報の相対的な位置関係を登録しておくことで、仮想情報をＡＲ空間内に配置する方法である。
【００１３】
２つ目の方法では、基準となるオブジェクトの位置に合わせて、仮想情報の表示位置や、基準マーカに対する仮想情報の相対的な位置関係が変化する。この２つ目の方法は、例えばトレーディングカードの上に３Ｄモデルといった仮想情報を表示する場合に用いられる。この場合、トレーディングカードをユーザが動かしても正しい位置に仮想情報を表示し続けるためには、各端末は、非特許文献１や非特許文献２の手法を用いて、個々のオブジェクト（トレーディングカード）を認識し続ける（姿勢を推定し続ける）必要がある。なお、非特許文献３の手法については、静的な空間のみ認識可能であるため、個々のオブジェクトの認識に用いることはできない。
【００１４】
すなわち、２つ目の方法では、各端末は、自端末の姿勢を推定するために、基準マーカの認識を行いつつ、個々のオブジェクトを独立に認識し続ける必要があるので、１つ目の方法と比べて、各端末における処理負荷が高くなる。さらに、非特許文献１や非特許文献２の手法を用いた場合、各端末における処理負荷は、オブジェクトの数が増加するに従ってほぼ線形に上昇する。このため、２つ目の方法において、非特許文献１や非特許文献２の手法を用いた場合、多数のオブジェクトを認識しようとするとリアルタイム処理の実現が困難になってしまい、各端末が認識可能なオブジェクトの数が限定されてユーザビリティが低下してしまうおそれがあった。
【００１５】
また、特許文献１から３の技術では、主に固定配置された仮想情報の共有を想定している。このため、特許文献１から３の技術においても、各端末は、個々のオブジェクトを認識し続ける必要がある。したがって、２つ目の方法において非特許文献１や非特許文献２の手法を用いた場合と同様に、多数のオブジェクトを認識しようとするとリアルタイム処理の実現が困難になってしまい、各端末が認識可能なオブジェクトの数が限定されてユーザビリティが低下してしまうおそれがあった。
【００１６】
また、各オブジェクトに対する撮像装置の視点（距離や角度）は、撮像装置を備える端末ごとに異なるため、オブジェクトの認識精度は、端末ごとに異なる。このため、同一のオブジェクトについて、認識できる端末と、認識できない端末と、が生じる可能性がある。この場合、仮想情報を確認できるユーザと確認できないユーザとが生じ、これらユーザ間での意思疎通の妨げとなり、ユーザビリティが低下してしまうおそれがあった。
【００１７】
そこで、本発明は、上述の課題に鑑みてなされたものであり、複数人での利用を想定したＡＲ技術において、ユーザビリティを向上させることを目的とする。
【課題を解決するための手段】
【００１８】
本発明は、上記の課題を解決するために、以下の事項を提案している。
（１）  本発明は、プレビュー画像に仮想情報を重畳させる画像処理装置（例えば、図１の画像処理装置１に相当）であって、前記プレビュー画像を取得する画像取得手段（例えば、図１の画像取得部１０に相当）と、前記画像取得手段により取得されたプレビュー画像内のオブジェクト（例えば、図２のＭ１、Ｍ２、Ｍ３に相当）を認識する画像認識手段（例えば、図１の画像認識部２０に相当）と、前記画像処理装置とは異なる第１の画像処理装置（例えば、後述の他端末に相当）で認識されたオブジェクトの認識結果を、当該画像処理装置を基準とした認識結果に変換する協調認識処理手段（例えば、図１の協調認識処理部４０に相当）と、前記画像認識手段による認識結果と、前記協調認識処理手段により変換された認識結果と、に基づいて、前記画像取得手段により取得されたプレビュー画像に仮想情報（例えば、図３の仮想情報Ｃ１、Ｃ２、Ｃ３に相当）を重畳させる仮想情報表示手段（例えば、図１の仮想情報表示部５０に相当）と、を備えることを特徴とする画像処理装置を提案している。
【００１９】
この発明によれば、プレビュー画像に仮想情報を重畳させる画像処理装置に、画像取得手段、画像認識手段、協調認識処理手段、および仮想情報表示手段を設け、画像取得手段により、プレビュー画像を取得することとした。また、画像認識手段により、プレビュー画像内のオブジェクトを認識し、協調認識処理手段により、第１の画像処理装置で認識されたオブジェクトの認識結果を、画像処理装置を基準とした認識結果に変換し、仮想情報表示手段により、画像認識手段による認識結果と、協調認識処理手段により変換された認識結果と、に基づいて、プレビュー画像に仮想情報を重畳させることとした。このため、第１の画像処理装置での認識結果を、画像処理装置での認識結果に変換して用いることができる。したがって、第１の画像処理装置での認識結果を画像処理装置での認識結果に変換して用いることで、画像処理装置の画像認識手段により認識するオブジェクトの数を減少させたり、画像処理装置の画像認識手段では認識できなかったオブジェクトを認識したりすることができる。よって、複数人での利用を想定したＡＲ技術において、ユーザビリティを向上させることができる。
【００２０】
（２）  本発明は、（１）の画像処理装置について、前記協調認識処理手段は、前記画像認識手段による認識結果と、前記第１の画像処理装置での認識結果と、の双方に認識結果が含まれているオブジェクトが存在していれば、当該オブジェクトについての当該画像認識手段による認識結果と、当該オブジェクトについての当該第１の画像処理装置での認識結果と、に基づいて前記画像処理装置と当該第１の画像処理装置との相対的な位置関係を示す相対姿勢（例えば、後述の相対姿勢ＷＳＴ、ＷＳＵに相当）を推定し、前記相対姿勢を用いて、前記第１の画像処理装置での認識結果を、前記画像処理装置を基準とした認識結果に変換することを特徴とする画像処理装置を提案している。
【００２１】
この発明によれば、（１）の画像処理装置において、画像認識手段による認識結果と、第１の画像処理装置での認識結果と、の双方に認識結果が含まれているオブジェクトが存在していれば、このオブジェクトについての画像認識手段による認識結果と、このオブジェクトについての第１の画像処理装置での認識結果と、に基づいて、協調認識処理手段により画像処理装置と第１の画像処理装置との相対的な位置関係を示す相対姿勢を推定することとした。また、推定した相対姿勢を用いて、第１の画像処理装置での認識結果を、画像処理装置を基準とした認識結果に変換することとした。このため、第１の画像処理装置での認識結果を変換して得られた、画像処理装置を基準とした認識結果について、認識精度を向上させることができるので、ユーザビリティをさらに向上させることができる。
【００２２】
（３）  本発明は、（１）または（２）の画像処理装置について、前記協調認識処理手段は、前記画像処理装置と前記第１の画像処理装置との相対的な位置関係を示す相対姿勢（例えば、後述の相対姿勢ＷＳＴに相当）と、当該第１の画像処理装置と第２の画像処理装置との相対的な位置関係を示す相対姿勢（例えば、後述の相対姿勢ＷＴＵに相当）と、に基づいて、当該画像処理装置と当該第２の画像処理装置との相対的な位置関係を示す相対姿勢（例えば、後述の相対姿勢ＷＳＵに相当）を推定することを特徴とする画像処理装置を提案している。
【００２３】
この発明によれば、（１）または（２）の画像処理装置において、協調認識処理手段により、画像処理装置と第１の画像処理装置との相対的な位置関係を示す相対姿勢と、第１の画像処理装置と第２の画像処理装置との相対的な位置関係を示す相対姿勢と、に基づいて、画像処理装置と第２の画像処理装置との相対的な位置関係を示す相対姿勢を推定することとした。このため、画像処理装置と第２の画像処理装置との相対姿勢を直接求めることができない場合でも、画像処理装置と第１の画像処理装置との相対姿勢と、第１の画像処理装置と第２の画像処理装置との相対姿勢と、が分かっていれば、画像処理装置と第２の画像処理装置との相対姿勢を求めることができる。
【００２４】
（４）  本発明は、（１）から（３）のいずれかの画像処理装置について、前記協調認識処理手段は、前記画像認識手段により認識していないオブジェクトについて、前記第１の画像処理装置での認識結果を、前記画像処理装置を基準とした認識結果に変換することを特徴とする画像処理装置を提案している。
【００２５】
この発明によれば、（１）から（３）のいずれかの画像処理装置において、協調認識処理手段により、前記画像認識手段により認識していないオブジェクトについて、第１の画像処理装置での認識結果を、画像処理装置を基準とした認識結果に変換することとした。このため、画像処理装置の画像認識手段では認識していないオブジェクトを認識することができるので、仮想情報を確認できるユーザと確認できないユーザとが生じてしまうのを防止することができる。したがって、複数人での利用を想定したＡＲ技術において、ユーザビリティを向上させることができる。
【００２６】
（５）  本発明は、（１）から（４）のいずれかの画像処理装置について、前記画像認識手段は、オブジェクトごとの認識結果に、当該認識結果の認識精度の指標となる情報を付加し、前記協調認識処理手段は、前記画像処理装置での認識結果の認識精度の方が、前記第１の画像処理装置での認識結果の認識精度よりも低いオブジェクトについて、当該第１の画像処理装置での認識結果を、当該画像処理装置を基準とした認識結果に変換することを特徴とする画像処理装置を提案している。
【００２７】
この発明によれば、（１）から（４）のいずれかの画像処理装置において、画像認識手段により、オブジェクトごとの認識結果に、認識結果の認識精度の指標となる情報を付加することとした。また、協調認識処理手段により、画像処理装置での認識結果の認識精度の方が、第１の画像処理装置での認識結果の認識精度よりも低いオブジェクトについて、第１の画像処理装置での認識結果を、画像処理装置を基準とした認識結果に変換することとした。このため、各オブジェクトについて、画像処理装置での認識結果と、第１の画像処理装置での認識結果と、のうち認識精度の高い方を用いて、プレビュー画像に仮想情報を重畳させることができる。このため、ユーザビリティをさらに向上させることができる。
【００２８】
（６）  本発明は、（５）の画像処理装置について、前記画像認識手段は、前記認識精度の指標として、オブジェクトに対する撮影距離と、オブジェクトに対する撮影角度と、のうち少なくともいずれかを用いることを特徴とする画像処理装置を提案している。
【００２９】
この発明によれば、（５）の画像処理装置において、画像認識手段により、認識精度の指標として、オブジェクトに対する撮影距離と、オブジェクトに対する撮影角度と、のうち少なくともいずれかを用いることとした。このため、オブジェクトに対する撮影距離や、オブジェクトに対する撮影角度を用いて、認識精度の指標を設定することができる。
【００３０】
（７）  本発明は、（５）の画像処理装置について、前記画像認識手段は、前記認識精度の指標として、局所特徴量のマッチング数と、局所特徴量のマッチングのスコアと、のうち少なくともいずれかを用いることを特徴とする画像処理装置を提案している。
【００３１】
この発明によれば、（５）の画像処理装置において、画像認識手段により、認識精度の指標として、局所特徴量のマッチング数と、局所特徴量のマッチングのスコアと、のうち少なくともいずれかを用いることとした。このため、局所特徴量のマッチング数や、局所特徴量のマッチングのスコアを用いて、認識精度の指標を設定することができる。
【００３２】
（８）  本発明は、（５）の画像処理装置について、前記画像認識手段は、前記認識精度の指標として、ＳＳＤ（Sum  of  Squared  Difference）の応答値と、ＮＣＣ（Normalized  Cross  Correlation）の応答値と、のうち少なくともいずれかを用いることを特徴とする画像処理装置を提案している。
【００３３】
この発明によれば、（５）の画像処理装置において、画像認識手段により、認識精度の指標として、ＳＳＤの応答値と、ＮＣＣの応答値と、のうち少なくともいずれかを用いることとした。このため、ＳＳＤの応答値や、ＮＣＣの応答値を用いて、認識精度の指標を設定することができる。
【００３４】
（９）  本発明は、（１）から（８）のいずれかの画像処理装置について、前記画像認識手段による認識結果と、前記第１の画像処理装置での認識結果と、の双方に認識結果が含まれているオブジェクトが２つ以上存在していれば、前記協調認識処理手段は、前記画像認識手段による認識結果と、前記第１の画像処理装置での認識結果と、の双方に認識結果が含まれている２つ以上のオブジェクトのうち少なくとも１つを認識休止オブジェクトとし、当該認識休止オブジェクトについての前記第１の画像処理装置での認識結果を、前記画像処理装置を基準とした認識結果に変換し、前記画像認識手段は、前記認識休止オブジェクトの認識を休止することを特徴とする画像処理装置を提案している。
【００３５】
この発明によれば、（１）から（８）のいずれかの画像処理装置において、画像認識手段による認識結果と、第１の画像処理装置での認識結果と、の双方に認識結果が含まれているオブジェクトが２つ以上存在していれば、協調認識処理手段により、画像認識手段による認識結果と、第１の画像処理装置での認識結果と、の双方に認識結果が含まれている２つ以上のオブジェクトのうち少なくとも１つを認識休止オブジェクトとし、認識休止オブジェクトについての第１の画像処理装置での認識結果を、画像処理装置を基準とした認識結果に変換することとした。また、画像認識手段により、認識休止オブジェクトの認識を休止することとした。このため、画像処理装置の画像認識手段により認識するオブジェクトの数を減少させることができるので、画像処理装置における処理負荷を軽減することができ、画像処理装置におけるリアルタイム処理の実現の困難性を低下させることができる。したがって、複数人での利用を想定したＡＲ技術において、ユーザビリティを向上させることができる。
【００３６】
（１０）  本発明は、（１）から（８）のいずれかの画像処理装置について、前記画像認識手段による認識結果と、前記第１の画像処理装置での認識結果と、の双方に認識結果が含まれているオブジェクトが２つ以上存在しており、前記画像処理装置の処理能力が前記第１の画像処理装置の処理能力よりも低ければ、前記協調認識処理手段は、前記画像認識手段による認識結果と、前記第１の画像処理装置での認識結果と、の双方に認識結果が含まれている２つ以上のオブジェクトのうち少なくとも１つを認識休止オブジェクトとし、当該認識休止オブジェクトについての前記第１の画像処理装置での認識結果を、前記画像処理装置を基準とした認識結果に変換し、前記画像認識手段は、前記認識休止オブジェクトの認識を休止することを特徴とする画像処理装置を提案している。
【００３７】
この発明によれば、（１）から（８）のいずれかの画像処理装置において、画像認識手段による認識結果と、第１の画像処理装置での認識結果と、の双方に認識結果が含まれているオブジェクトが２つ以上存在しており、画像処理装置の処理能力が第１の画像処理装置の処理能力よりも低ければ、協調認識処理手段により、画像認識手段による認識結果と、第１の画像処理装置での認識結果と、の双方に認識結果が含まれている２つ以上のオブジェクトのうち少なくとも１つを認識休止オブジェクトとし、認識休止オブジェクトについての第１の画像処理装置での認識結果を、画像処理装置を基準とした認識結果に変換することとした。また、画像認識手段により、認識休止オブジェクトの認識を休止することとした。このため、認識休止オブジェクトの認識は、第１の画像処理装置に任せることになるが、これにより第１の画像処理装置の処理負荷が過度に上昇してしまうのを防止しつつ、画像処理装置の画像認識手段により認識するオブジェクトの数を減少させることができ、複数人での利用を想定したＡＲ技術において、ユーザビリティを向上させることができる。
【００３８】
（１１）  本発明は、（１０）の画像処理装置について、前記協調認識処理手段は、前記画像認識手段による認識結果を求めるために要した時間が長くなるに従って小さくなる数値を設定し、当該数値を前記画像処理装置の処理能力として用いることを特徴とする画像処理装置を提案している。
【００３９】
この発明によれば、（１０）の画像処理装置において、協調認識処理手段により、画像認識手段による認識結果を求めるために要した時間が長くなるに従って小さくなる数値を設定し、この数値を画像処理装置の処理能力として用いることとした。このため、画像認識手段による認識結果を求めるために要した時間が長くなるに従って、画像処理装置の処理能力が低いものとして扱うことができる。
【００４０】
（１２）  本発明は、（９）から（１１）のいずれかの画像処理装置について、前記協調認識処理手段は、前記認識休止オブジェクトであるオブジェクトの数を、前記画像取得手段によりプレビュー画像が取得されるたびに最大で１つずつ増加させることを特徴とする画像処理装置を提案している。
【００４１】
この発明によれば、（９）から（１１）のいずれかの画像処理装置において、協調認識処理手段により、認識休止オブジェクトであるオブジェクトの数を、画像取得手段によりプレビュー画像が取得されるたびに最大で１つずつ増加させることとした。このため、画像処理装置における認識休止オブジェクトが急激に増加してしまうのを防止することができるので、第１の画像処理装置の処理負荷が過度に上昇してしまうのを防止することができる。
【００４２】
（１３）  本発明は、（９）から（１２）のいずれかの画像処理装置について、前記協調認識処理手段は、前記第１の画像処理装置での認識結果に含まれていないオブジェクトを、前記認識休止オブジェクトから除外することを特徴とする画像処理装置を提案している。
【００４３】
この発明によれば、（９）から（１２）のいずれかの画像処理装置において、協調認識処理手段により、第１の画像処理装置での認識結果に含まれていないオブジェクトを、認識休止オブジェクトから除外することとした。このため、認識休止オブジェクトの中から、第１の画像処理装置で認識できなくなったオブジェクトが発生した場合には、このオブジェクトを画像処理装置の画像認識手段により認識して、オブジェクトの認識精度を向上させることができる。
【００４４】
（１４）  本発明は、画像取得手段（例えば、図１の画像取得部１０に相当）、画像認識手段（例えば、図１の画像認識部２０に相当）、協調認識処理手段（例えば、図１の協調認識処理部４０に相当）、および仮想情報表示手段（例えば、図１の仮想情報表示部５０に相当）を備え、プレビュー画像に仮想情報を重畳させる画像処理装置（例えば、図１の画像処理装置１に相当）における画像処理方法であって、前記画像取得手段が、前記プレビュー画像を取得する第１のステップと、前記画像認識手段が、前記第１のステップで取得されたプレビュー画像内のオブジェクト（例えば、図２のＭ１、Ｍ２、Ｍ３に相当）を認識する第２のステップと、前記協調認識処理手段が、前記画像処理装置とは異なる第１の画像処理装置（例えば、後述の他端末に相当）で認識されたオブジェクトの認識結果を、当該画像処理装置を基準とした認識結果に変換する第３のステップと、前記仮想情報表示手段が、前記第２のステップによる認識結果と、前記第３のステップで変換された認識結果と、に基づいて、前記第１のステップで取得されたプレビュー画像に仮想情報（例えば、図３の仮想情報Ｃ１、Ｃ２、Ｃ３に相当）を重畳させる第４のステップと、を備えることを特徴とする画像処理方法を提案している。
【００４５】
この発明によれば、上述した効果と同様の効果を奏することができる。
【００４６】
（１５）  本発明は、画像取得手段（例えば、図１の画像取得部１０に相当）、画像認識手段（例えば、図１の画像認識部２０に相当）、協調認識処理手段（例えば、図１の協調認識処理部４０に相当）、および仮想情報表示手段（例えば、図１の仮想情報表示部５０に相当）を備え、プレビュー画像に仮想情報を重畳させる画像処理装置（例えば、図１の画像処理装置１に相当）における画像処理方法を、コンピュータに実行させるためのプログラムであって、前記画像取得手段が、前記プレビュー画像を取得する第１のステップと、前記画像認識手段が、前記第１のステップで取得されたプレビュー画像内のオブジェクト（例えば、図２のＭ１、Ｍ２、Ｍ３に相当）を認識する第２のステップと、前記協調認識処理手段が、前記画像処理装置とは異なる第１の画像処理装置（例えば、後述の他端末に相当）で認識されたオブジェクトの認識結果を、当該画像処理装置を基準とした認識結果に変換する第３のステップと、前記仮想情報表示手段が、前記第２のステップによる認識結果と、前記第３のステップで変換された認識結果と、に基づいて、前記第１のステップで取得されたプレビュー画像に仮想情報（例えば、図３の仮想情報Ｃ１、Ｃ２、Ｃ３に相当）を重畳させる第４のステップと、をコンピュータに実行させるためのプログラムを提案している。
【００４７】
この発明によれば、コンピュータを用いてプログラムを実行することで、上述した効果と同様の効果を奏することができる。
【発明の効果】
【００４８】
本発明によれば、複数人での利用を想定したＡＲ技術において、ユーザビリティを向上させることができる。
【図面の簡単な説明】
【００４９】
【図１】本発明の第１実施形態に係る画像処理装置のブロック図である。
【図２】本発明の第１実施形態に係る画像処理装置の利用例を示す模式図である。
【図３】本発明の第１実施形態に係る画像処理装置の利用例を示す模式図である。
【図４】本発明の第１実施形態に係る画像処理装置の利用例を示す模式図である。
【図５】本発明の第１実施形態に係る画像処理装置のフローチャートである。
【図６】本発明の第１実施形態に係る画像処理装置のフローチャートである。
【図７】本発明の第２実施形態に係る画像処理装置のブロック図である。
【図８】本発明の第２実施形態に係る画像処理装置のフローチャートである。
【図９】本発明の第２実施形態に係る画像処理装置のフローチャートである。
【図１０】本発明の第２実施形態に係る画像処理装置のフローチャートである。
【発明を実施するための形態】
【００５０】
以下、本発明の実施の形態について図面を参照しながら説明する。なお、以下の実施形態における構成要素は適宜、既存の構成要素などとの置き換えが可能であり、また、他の既存の構成要素との組み合せを含む様々なバリエーションが可能である。したがって、以下の実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【００５１】
＜第１実施形態＞
［画像処理装置１の概要］
図１は、本発明の第１実施形態に係る画像処理装置１のブロック図である。画像処理装置１は、複数人での利用を想定したＡＲ技術に対応している。この画像処理装置１の概要について、図２、３、４を用いて以下に説明する。
【００５２】
図２は、画像処理装置１の利用例を示す模式図である。図２では、テーブルＡＡの上に３つのオブジェクトＭ１、Ｍ２、Ｍ３が直線状に配置されている。ユーザＵ１が所有する端末１００は、内蔵しているカメラで、オブジェクトＭ１の側からテーブルＡＡ上を撮影しており、ユーザＵ２が所有する端末２００は、内蔵しているカメラで、オブジェクトＭ３の側からテーブルＡＡ上を撮影している。端末１００、２００には、それぞれ、上述の画像処理装置１が内蔵されている。
【００５３】
図３は、図２における端末１００の表示画面１１０を示す図である。表示画面１１０には、下方（図３において下方）から上方（図３において上方）に向かってオブジェクトＭ１、Ｍ２、Ｍ３の順番にオブジェクトＭ１からＭ３が表示されている。また、オブジェクトＭ１の右方（図３において右方）には、オブジェクトＭ１に紐付けられた仮想情報Ｃ１が重畳されている。また、オブジェクトＭ２の右方（図３において右方）には、オブジェクトＭ２に紐付けられた仮想情報Ｃ２が重畳されている。また、オブジェクトＭ３の右方（図３において右方）には、オブジェクトＭ３に紐付けられた仮想情報Ｃ３が重畳されている。このため、端末１００を所有するユーザＵ１は、表示画面１１０を通して、ＡＲ空間に存在する仮想情報Ｃ１からＣ３を認識することができる。
【００５４】
図４は、図２における端末２００の表示画面２１０を示す図である。表示画面２１０には、上方（図４において上方）から下方（図４において下方）に向かってオブジェクトＭ１、Ｍ２、Ｍ３の順番にオブジェクトＭ１からＭ３が表示されている。また、オブジェクトＭ１の左方（図４において左方）には、オブジェクトＭ１に紐付けられた仮想情報Ｃ１が重畳されている。また、オブジェクトＭ２の左方（図４において左方）には、オブジェクトＭ２に紐付けられた仮想情報Ｃ２が重畳されている。また、オブジェクトＭ３の左方（図４において左方）には、オブジェクトＭ３に紐付けられた仮想情報Ｃ３が重畳されている。このため、端末２００を所有するユーザＵ２は、表示画面２１０を通して、ＡＲ空間に存在する仮想情報Ｃ１からＣ３を認識することができる。
【００５５】
なお、端末２００の表示画面２１０では、仮想情報Ｃ１からＣ３のそれぞれは、端末１００の表示画面１１０に表示されている仮想情報Ｃ１からＣ３を１８０度回転させた状態で表示されている。これは、端末２００が、端末１００と１８０度反対の方向から、オブジェクトＭ１からＭ３のそれぞれを撮影しているためである。このため、端末１００を所有するユーザＵ１と、端末２００を所有するユーザＵ２とは、表示画面１１０、２１０を通して、仮想情報Ｃ１からＣ３を互いに反対側から見ているように認識することができる。
【００５６】
ここで、仮想情報Ｃ１からＣ３のそれぞれは、現実空間には存在しておらず、オブジェクトＭ１からＭ３のそれぞれと紐付けて端末１００、２００のそれぞれに記憶されている。なお、オブジェクトＭ２がテーブルＡＡ上で固定される場合、すなわちユーザＵ１、Ｕ２の双方がオブジェクトＭ２を動かさない場合には、オブジェクトＭ２を基準マーカとして扱い、仮想情報Ｃ２がテーブルＡＡ上に固定配置されていると見なすことができる。本実施形態では、オブジェクトＭ２は、基準マーカとして扱われるものとする。
【００５７】
仮想情報Ｃ２は、基準マーカＭ２（オブジェクトＭ２）を中心としたＡＲ空間内に固定配置されている。このため、端末１００のカメラが基準マーカＭ２を撮影できる範囲内でユーザＵ１が端末１００を動かした場合、表示画面１１０内では、基準マーカＭ２との相対的な位置関係を保持した状態で仮想情報Ｃ２も動くことになる。表示画面２１０内においても表示画面１１０内と同様に、端末２００のカメラが基準マーカＭ２を撮影できる範囲内でユーザＵ２が端末２００を動かした場合、基準マーカＭ２との相対的な位置関係を保持した状態で仮想情報Ｃ２も動くことになる。また、ＡＲ空間内に固定配置されている仮想情報が仮想情報Ｃ２以外にも存在する場合には、その仮想情報も仮想情報Ｃ２と同様に動くことになる。
【００５８】
一方、オブジェクトＭ１、Ｍ３は、ユーザＵ１、Ｕ２の双方が動かすことのできるものである。このため、オブジェクトＭ１を動かすと、表示画面１１０、２１０のそれぞれの中で、オブジェクトＭ１の動きに追随して仮想情報Ｃ１が動くことになる。また、オブジェクトＭ３を動かすと、表示画面１１０、２１０のそれぞれの中で、オブジェクトＭ３の動きに追随して仮想情報Ｃ３が動くことになる。
【００５９】
以上によれば、ＡＲ技術により、仮想情報Ｃ２がテーブルＡＡ上に固定配置されているとともに、仮想情報Ｃ１、Ｃ３のそれぞれがオブジェクトＭ１、Ｍ３のそれぞれに近接して存在しているように、ユーザＵ１、Ｕ２に体感させることができる。
【００６０】
ここで、画像認識処理におけるオブジェクトの認識精度は、オブジェクトとカメラとの距離が離れるに従って低下する。また、カメラの位置や向きによって、端末間で、認識できるオブジェクトに差異が生じることがある。このような理由により、例えば、オブジェクトＭ２については、端末１００、２００の双方が認識できるが、オブジェクトＭ３については、端末２００のみが認識でき、端末１００は認識できないといった状況が起こり得る。
【００６１】
そこで、まず、図２から４を用いて上述したＡＲ空間を、上述の特許文献１から３の技術で実現する場合について、以下に説明する。この場合において、上述の状況が起こると、端末１００は仮想情報Ｃ３の表示位置を決定できないため、表示画面１１０に仮想情報Ｃ３を表示できなくなってしまう。これによれば、ユーザＵ１とユーザＵ２とがＡＲ空間を正しく共有できなくなってしまい、共同作業を行う上でのユーザＵ１とユーザＵ２との意思疎通の妨げとなり、ユーザビリティが低下してしまう。
【００６２】
次に、図２から４を用いて上述したＡＲ空間を、本実施形態に係る画像処理装置１で実現する場合について、以下に説明する。この場合、画像処理装置１は、仮想情報を重畳するために、端末１００と端末２００とでオブジェクトの認識結果を共有する。具体的には、まず、端末１００は、オブジェクトＭ２の認識結果を端末２００に送信し、端末２００は、オブジェクトＭ２、Ｍ３の認識結果を端末１００に送信する。次に、端末１００は、オブジェクトＭ２の自端末での認識結果と、オブジェクトＭ２の端末２００での認識結果と、に基づいて、端末１００に対する端末２００の相対的な位置関係を示す相対姿勢を推定する。次に、端末１００は、推定した相対姿勢を用いて、オブジェクトＭ３の端末２００での認識結果を、自端末を基準とした認識結果に変換する。これによれば、端末１００がオブジェクトＭ３を直接認識できなくても、端末２００における認識結果を変換して、オブジェクトＭ３を認識することができる。このため、表示画面１１０に仮想情報Ｃ３を表示することができるので、ユーザＵ１とユーザＵ２とがＡＲ空間を正しく共有でき、共同作業を行う上でのユーザＵ１とユーザＵ２との意思疎通が妨げられてしまうのを防止して、ユーザビリティの低下を抑制することができる。
【００６３】
［画像処理装置１の構成］
以上の画像処理装置１について、以下に詳述する。図１に戻って、画像処理装置１は、デスクトップＰＣといった据え置き型のコンピュータや、ラップトップＰＣ、携帯電話機、携帯ゲーム機、ＨＭＤなどの携帯型の情報端末に搭載可能である。この画像処理装置１は、画像取得部１０、画像認識部２０、認識結果共有処理部３０、協調認識処理部４０、および仮想情報表示部５０を備える。
【００６４】
［画像取得部１０の構成および動作］
画像取得部１０は、ＷＥＢカメラやカメラモジュールといった撮像装置で撮影された画像を連続的に取得する。本実施形態では、画像取得部１０は、６０ｆｐｓのフレームレートで画像を取得するものとする。なお、画像を連続的に撮影する撮像装置は、画像処理装置１の内部に設けられるものであってもよいし、画像処理装置１の外部に設けられるものであってもよい。
【００６５】
［画像認識部２０の構成および動作］
画像認識部２０は、画像取得部１０により取得された画像（以降、プレビュー画像とする）を入力とする。この画像認識部２０は、入力されたプレビュー画像内のオブジェクトを識別し、識別した各オブジェクトの姿勢を推定して、識別した各オブジェクトを認識する。この画像認識部２０は、オブジェクト識別部２１、初期姿勢推定部２２、および姿勢追跡部２３を備える。
【００６６】
オブジェクト識別部２１は、画像取得部１０により取得されたプレビュー画像を入力とする。このオブジェクト識別部２１は、入力されたプレビュー画像内のオブジェクトの識別処理を行う。識別処理では、プレビュー画像から局所特徴量を検出し、特徴量データベース（辞書）に予め登録されているオブジェクトごとの局所特徴量と照合して、オブジェクトを識別する。
【００６７】
なお、オブジェクトの識別処理は、例えば外部サーバで行われるものとしてもよい。この場合には、オブジェクト識別部２１は、プレビュー画像を外部サーバに送信し、外部サーバから識別処理の結果を受け取ることになる。これによれば、識別処理をアウトソースすることができるので、大規模なオブジェクトや多数のオブジェクトを扱う場合に好適である。
【００６８】
一方、オブジェクトの数が少数である場合には、画像認識部２０からオブジェクト識別部２１を省くことが可能である。
【００６９】
初期姿勢推定部２２は、画像取得部１０により取得されたプレビュー画像を入力とする。この初期姿勢推定部２２は、入力されたプレビュー画像に含まれる、オブジェクト識別部２１により識別されたオブジェクトについて、姿勢を推定し、推定結果を姿勢の初期値とする。初期姿勢推定部２２は、後述の姿勢追跡部２３によるオブジェクトの姿勢の追跡を開始する際と、姿勢追跡部２３によるオブジェクトの姿勢の追跡を行わなくなった場合と、において上述の姿勢の推定を行う。
【００７０】
本実施形態では、オブジェクトの姿勢を六自由度の姿勢行列（４行４列）で表現する。姿勢行列は、画像取得部１０が取得するプレビュー画像を撮影する撮像装置と、オブジェクトと、の相対的な位置関係を示す情報を有するものであり、三次元特殊ユークリッド群ＳＥ（３）に属し、ともに三自由度の三次元回転行列および三次元並進ベクトルで表される。姿勢行列を用いる場合、プレビュー画像中におけるオブジェクトのピクセル座標と、初期姿勢推定部２２に予め登録されているこのオブジェクト上の座標と、の関係は、以下の数式（１）で表すことができる。
【００７１】
【数１】
0006290020.tif 000002
【００７２】
数式（１）において、Ａは、撮像装置の内部パラメータを示す。撮像装置の内部パラメータは、予めカメラキャリブレーションによって求めておくことが好ましい。ただし、撮像装置の内部パラメータは、実際の値とずれていたとしても、最終的に推定した姿勢行列と打ち消し合うため、仮想情報を重畳する位置には影響しない。このため、撮像装置の内部パラメータには、一般的なカメラの内部パラメータを代用することが可能である。
【００７３】
数式（１）において、Ｒは、三次元空間内の回転を表すパラメータを示す。Ｒにおける各パラメータは、オイラー角といった表現により三パラメータで表現することが可能である。
【００７４】
数式（１）において、ｔは、三次元空間内の平行移動を表すパラメータを示す。また、Ｘ、Ｙ、Ｚのそれぞれは、初期姿勢推定部２２に予め登録されているオブジェクト上のＸ座標、Ｙ座標、Ｚ座標のそれぞれを示す。また、ｕ、ｖは、プレビュー画像中のｕ座標およびｖ座標を示す。
【００７５】
なお、本実施形態では、姿勢行列の推定を、画像内の自然特徴を用いて行うものとする。自然特徴とは、画像間の点対応の取得やマッチングを行うために、画像の局所領域から算出される特徴のことであり、画像内のエッジやコーナーなどの、対応付けの容易な局所領域から抽出される。自然特徴の代表例としては、ＳＩＦＴ（Scale  Invariant  Feature  Transform）やＳＵＲＦ（Speed  Up  Robust  Features）などの、高精度な対応付けが可能な局所特徴量があり、これらを用いて姿勢行列を算出する手法は一般に知られている。
【００７６】
オブジェクトの姿勢は、オブジェクトや撮像装置が動くことによって、画像取得部１０により連続的に取得されるプレビュー画像中において刻々と変化する。このため、初期姿勢推定部２２には、上述のオブジェクト識別部２１と比べて処理速度が求められる。したがって、画像取得部１０は、画像処理装置１の内部に設けられる必要があり、非特許文献２に開示されているように処理負荷の小さいアルゴリズムを用いることが望ましい。
【００７７】
姿勢追跡部２３は、画像取得部１０により取得されたプレビュー画像と、初期姿勢推定部２２により推定されたオブジェクトの姿勢の初期値と、を入力とする。この姿勢追跡部２３は、入力されたプレビュー画像およびオブジェクトの姿勢の初期値に基づいて、オブジェクトの姿勢の追跡処理を行ってオブジェクトの姿勢を推定し、オブジェクトを認識する。
【００７８】
姿勢追跡部２３は、オブジェクトの姿勢の追跡に成功した場合、すなわちオブジェクトの認識に成功した場合には、認識に成功したオブジェクトの識別子（ＩＤ）と、認識に成功したオブジェクトの姿勢の推定値と、を認識結果として出力する。また、この認識結果を、画像取得部１０により取得された次フレームのプレビュー画像において追跡処理を行う際の初期値として用いる。このため、オブジェクトの姿勢の追跡に成功している間は、このオブジェクトに対して初期姿勢推定部２２による処理を行う必要がない。
【００７９】
また、オブジェクトの姿勢の追跡に成功している間は、このオブジェクトに対する追跡処理を、画像取得部１０によりプレビュー画像が取得されるたびに行う必要がある。このため、姿勢追跡部２３には、上述の初期姿勢推定部２２と比べて処理速度が求められる。したがって、姿勢追跡部２３は、画像処理装置１の内部に設けられる必要があるとともに、オブジェクトの姿勢の追跡処理を最低でもリアルタイムで行うことができる必要があり、非特許文献２に開示されているように処理負荷の小さい姿勢追跡アルゴリズムを用いることが望ましい。
【００８０】
以上の画像認識部２０は、上述のオブジェクトの姿勢の推定を、オブジェクトごとに行う。オブジェクトごとの姿勢の推定処理は、互いに独立であるため並列に実施してもよいし、順番に実施してもよい。
【００８１】
また、ＡＲ空間内に仮想情報を固定配置して重畳させる場合には、画像認識部２０は、オブジェクトの認識に加えて、基準マーカの認識も行う。オブジェクトを認識する場合と同様の処理で基準マーカを認識できる場合には、画像認識部２０は、オブジェクトと基準マーカとを区別することなく認識を行う。一方、基準マーカが、非特許文献１の手法で認識可能なＡＲマーカである場合や、非特許文献３の手法で認識可能な復元された空間である場合には、基準マーカをオブジェクトと区別して、基準マーカのみ、対応する認識手法で認識を行う。ＡＲ空間内に固定配置して重畳させる仮想情報がない場合や、そもそも基準マーカが存在しない場合には、画像認識部２０は、オブジェクトの認識のみ行う。
【００８２】
いずれにせよ、画像認識部２０が行うことは、オブジェクト（存在する場合には基準マーカも）の姿勢の推定である。なお、基準マーカの有無、基準マーカの種類、および姿勢の推定に用いる認識手法は、上述の手法に限定されるものではない。
【００８３】
［認識結果共有処理部３０の構成および動作］
認識結果共有処理部３０は、自端末の画像認識部２０による認識結果と、他端末の画像認識部２０による認識結果と、を入力とするとともに、入力された自端末の画像認識部２０による認識結果を他端末の画像認識部２０に送信する。これによれば、自端末と他端末との間で、画像認識部２０による認識結果を共有することができる。
【００８４】
他端末の画像認識部２０との認識結果の送受信は、アドホック通信で実現される。これによれば、同一ＬＡＮ内の他端末と通信を行うことができる。また、アクセスポイントが存在しない場合でも、Ｗｉ−Ｆｉ  ＤｉｒｅｃｔやＢｌｕｅｔｏｏｔｈ（登録商標）を用いて近接する端末間で通信を行うことが可能である。アドホック通信に必要なペアリング機能、ディスカバリ機能などを備えたソフトウェア（ライブラリ）は一般に公開されており、このようなライブラリを利用することで本機能の実現は容易に可能である。ただし、他端末の画像認識部２０との認識結果の送受信は、上述のアドホック通信に限らず、有線や無線で情報をやり取りできる通信であれば実現可能である。
【００８５】
なお、認識結果共有処理部３０による処理は、自端末と他端末とで同期する必要がないため、自端末の画像認識部２０による認識結果を他端末の画像認識部２０に送信する処理と、他端末の画像認識部２０による認識結果を自端末の画像認識部２０で受信する処理と、は独立に実行することが可能である。また、認識結果の送受信のための通信処理では、一般的に遅延が発生するため、他端末の画像認識部２０との認識結果の送信処理および受信処理は、他の処理とは独立に（プログラム上の別スレッドで）実行することが可能である。
【００８６】
［協調認識処理部４０の構成および動作］
協調認識処理部４０は、自端末の画像認識部２０による認識結果と、他端末の画像認識部２０による認識結果と、を入力とする。協調認識処理部４０は、他端末での認識結果を、自端末を基準とした認識結果に変換し、自端末での認識結果と統合する。この協調認識処理部４０は、相対姿勢推定部４１および姿勢変換部４２を備える。
【００８７】
相対姿勢推定部４１は、自端末の画像認識部２０による認識結果と、他端末の画像認識部２０による認識結果と、を入力とする。この相対姿勢推定部４１は、自端末での認識結果と、他端末での認識結果と、に基づいて、自端末と他端末との相対的な位置関係を示す姿勢（相対姿勢）を推定する。本実施形態では、オブジェクトの姿勢と同様に、相対姿勢も姿勢行列で表すこととする。なお、以降では、画像処理装置１が内蔵された自端末のことを自端末Ｓとし、画像処理装置１が内蔵された他端末のことを他端末Ｔとする。
【００８８】
相対姿勢の推定は、自端末Ｓでの認識結果および他端末Ｔでの認識結果の双方に、同一のオブジェクトについての認識結果が含まれている場合に、実行可能である。なお、同一のオブジェクトは、基準マーカであってもよい。
【００８９】
ここで、以降では、上述の同一のオブジェクトのことをオブジェクトａとする。また、自端末Ｓの姿勢追跡部２３により推定されたオブジェクトａの姿勢行列のことを姿勢行列ＷＳａとし、他端末Ｔの姿勢追跡部２３により推定されたオブジェクトａの姿勢行列のことを姿勢行列ＷＴａとする。すると、以下の数式（２）により、自端末Ｓと他端末Ｔとの相対姿勢ＷＳＴを求めることができる。
【００９０】
【数２】
0006290020.tif 000003
【００９１】
なお、上述の同一のオブジェクトとして基準マーカが存在する場合には、上述のオブジェクトａとして基準マーカを用いることが好ましい。これは、基準マーカが、一般的に容易に認識できるようにデザインされており、他のオブジェクトと比べて画像認識部２０による認識精度が高いためである。
【００９２】
一方、上述の同一のオブジェクトとして基準マーカが存在しない場合には、自端末および他端末の双方で認識できているオブジェクトを、上述のオブジェクトａとして用いればよい。上述の同一のオブジェクトとして基準マーカが存在しない場合としては、画像取得部１０により取得されたプレビュー画像内にそもそも基準マーカが存在しない場合や、画像取得部１０により取得されたプレビュー画像内に基準マーカは存在しているものの自端末および他端末のうち少なくともいずれかで認識できていない場合が考えられる。
【００９３】
なお、数式（２）を用いて上述した相対姿勢の推定は、自端末Ｓおよび他端末Ｔの２台の端末が存在している場合である。端末が３台以上存在している場合には、以下のようにして相対姿勢を推定することもできる。ここで、例えば、３台の端末を、自端末Ｓ、他端末Ｔ、他端末Ｕとし、自端末Ｓと他端末Ｔとの相対姿勢ＷＳＴと、他端末Ｔと他端末Ｕとの相対姿勢ＷＴＵと、を求めることができているものとする。この場合、自端末Ｓと他端末Ｕとの相対姿勢ＷＳＵは、以下の数式（３）により求めることができる。
【００９４】
【数３】
0006290020.tif 000004
【００９５】
このため、自端末Ｓおよび他端末Ｕの双方で認識できているオブジェクトが存在していない場合でも、数式（２）の代わりに数式（３）を用いることで、自端末Ｓと他端末Ｕとの相対姿勢ＷＳＵを求めることができる。ただし、この場合には、協調認識処理部４０に、他端末Ｔと他端末Ｕとの相対姿勢ＷＴＵが、他端末Ｔまたは他端末Ｕの少なくともいずれかから入力される必要がある。
【００９６】
姿勢変換部４２は、他端末の画像認識部２０による認識結果と、相対姿勢推定部４１により推定された相対姿勢ＷＳＴと、を入力とする。この姿勢変換部４２は、相対姿勢ＷＳＴを用いて、他端末での認識結果を、自端末を基準とした認識結果に変換する。
【００９７】
ここで、自端末Ｓが認識できていないオブジェクトｂについての認識結果が、他端末Ｔでの認識結果に含まれており、他端末Ｔの姿勢追跡部２３により推定されたオブジェクトｂの姿勢行列が姿勢行列ＷＴｂで表されているものとする。すると、以下の数式（４）により、他端末Ｔの姿勢追跡部２３により推定されたオブジェクトｂの姿勢行列ＷＴｂを、自端末Ｓにおけるオブジェクトｂの姿勢行列ＷＳｂに変換し、自端末Ｓにおけるオブジェクトｂの認識結果とすることができる。
【００９８】
【数４】
0006290020.tif 000005
【００９９】
これによれば、自端末Ｓの姿勢変換部４２は、自端末Ｓの画像認識部２０により認識されていないオブジェクトｂについても、他端末Ｔの画像認識部２０による認識結果と、自端末Ｓと他端末Ｔとの相対姿勢と、に基づいて認識することができる。
【０１００】
また、姿勢変換部４２は、この自端末Ｓにおけるオブジェクトｂの認識結果と、自端末Ｓの画像認識部２０による認識結果（自端末Ｓにおけるオブジェクトａの認識結果）と、を統合し、統合認識結果とする。これによれば、姿勢変換部４２は、オブジェクトａおよびオブジェクトｂについて、自端末Ｓにおける認識結果を得ることができる。
【０１０１】
なお、上述のように相対姿勢を用いることで、他端末での認識結果に含まれる全てのオブジェクトについて、他端末での認識結果から、自端末を基準とした認識結果に変換することができる。ただし、他端末での認識結果に含まれる全てのオブジェクトのうち、相対姿勢を求める際に用いたオブジェクトについては、この相対姿勢を用いて自端末における認識結果に変換すると、自端末におけるこのオブジェクトの認識結果に一致することになる。このため、他端末での認識結果に含まれる全てのオブジェクトのうち、相対姿勢を求める際に用いたオブジェクトについては、相対姿勢を用いて変換することに意味はない。
【０１０２】
また、自端末および他端末の双方で認識できているオブジェクトについては、自端末での認識結果と、他端末での認識結果を相対姿勢を用いて変換したものと、のいずれかを用いることができる。ただし、本実施形態では、自端末での認識結果を優先的に用い、自端末で認識していないオブジェクトについてのみ、他端末での認識結果を相対姿勢を用いて変換したものを用いるものとする。なお、自端末で認識していないオブジェクトとは、自端末で認識処理を行ったが認識に失敗してしまったオブジェクトと、そもそも自端末で認識処理が行われていないオブジェクトと、のことである。
【０１０３】
［仮想情報表示部５０の構成および動作］
仮想情報表示部５０は、画像取得部１０により取得されたプレビュー画像と、姿勢変換部４２により得られた統合認識結果と、を入力とする。この仮想情報表示部５０は、プレビュー画像に、統合認識結果に基づいて仮想情報を重畳させる。なお、仮想情報を重畳させる際に、仮想情報表示部５０は、撮像装置の内部パラメータ行列（画角といった情報を含む）と、重畳させる仮想情報が紐付けられているオブジェクトの姿勢行列と、を用いて、３Ｄレンダリングによって対応する位置にこの仮想情報を重畳させる。また、仮想情報を重畳させる際に、仮想情報表示部５０は、統合認識結果に基づいて仮想情報の位置や向きを補正する。
【０１０４】
なお、仮想情報表示部５０は、有線ケーブルや無線ネットワークを介して自端末と接続された外部モニタや、自端末に搭載されているディスプレイ（網膜投影型を含む）や、プロジェクタなどの、映像をユーザに掲示するための表示装置を制御するものである。この表示装置が、例えば、光学シースルー型のＨＭＤや、プロジェクタを用いて視界に直接付加情報を重畳するものである場合には、プレビュー画像は表示させず、仮想情報のみを表示させることとしてもよい。
【０１０５】
［画像処理装置１の動作］
以上の構成を備える画像処理装置１の動作について、図５、６を用いて以下に説明する。
【０１０６】
図５は、画像処理装置１のフローチャートである。
【０１０７】
ステップＳ１において、画像処理装置１は、画像取得部１０によりプレビュー画像を取得し、ステップＳ２に処理を移す。
【０１０８】
ステップＳ２において、画像処理装置１は、認識結果共有処理部３０により、他端末の画像認識部２０による認識結果を取得し、ステップＳ３に処理を移す。
【０１０９】
ステップＳ３において、画像処理装置１は、画像認識部２０により第１の認識処理を行って、ステップＳ１で取得したプレビュー画像内の各オブジェクトを認識し、ステップＳ４に処理を移す。なお、第１の認識処理の詳細については、図６を用いて後述する。
【０１１０】
ステップＳ４において、画像処理装置１は、認識結果共有処理部３０により、ステップＳ３で求めた自端末での認識結果を、他端末での認識結果共有処理部３０に送信し、ステップＳ５に処理を移す。
【０１１１】
ステップＳ５において、画像処理装置１は、相対姿勢推定部４１により、ステップＳ２で取得した他端末での認識結果に、ステップＳ３で認識していないオブジェクト（以降では、このオブジェクトのことをオブジェクトＰと呼ぶこととする）についての認識結果が含まれているかを判別する。含まれている場合には、ステップＳ６に処理を移し、含まれていない場合には、ステップＳ１０に処理を移す。
【０１１２】
ステップＳ６において、画像処理装置１は、相対姿勢推定部４１により、ステップＳ２で取得した他端末での認識結果と、ステップＳ３で求めた自端末での認識結果と、に基づいて自端末と他端末との相対姿勢を推定し、ステップＳ７に処理を移す。
【０１１３】
ステップＳ７において、画像処理装置１は、姿勢変換部４２により、オブジェクトＰについての他端末での認識結果を、ステップＳ６で推定した相対姿勢を用いて自端末における認識結果に変換し、ステップＳ８に処理を移す。
【０１１４】
ステップＳ８において、画像処理装置１は、姿勢変換部４２により、ステップＳ３で求めた自端末での認識結果と、ステップＳ７で変換したオブジェクトＰについての自端末における認識結果と、を統合し、ステップＳ９に処理を移す。
【０１１５】
ステップＳ９において、画像処理装置１は、仮想情報表示部５０により、ステップＳ８で統合した認識結果を用いて、ステップＳ１で取得したプレビュー画像に仮想情報を重畳させ、図５に示した処理を終了する。
【０１１６】
ステップＳ１０において、画像処理装置１は、仮想情報表示部５０により、ステップＳ３で求めた自端末での認識結果を用いて、ステップＳ１で取得したプレビュー画像に仮想情報を重畳させ、図５に示した処理を終了する。
【０１１７】
図６は、画像処理装置１が行う上述の第１の認識処理のフローチャートである。
【０１１８】
ステップＳ２１において、画像処理装置１は、姿勢追跡部２３により、ステップＳ１で取得したプレビュー画像中に、追跡中のオブジェクトが含まれているか否かを判別する。含まれている場合には、ステップＳ２２に処理を移し、含まれていない場合には、ステップＳ２６に処理を移す。なお、追跡中のオブジェクトとは、前フレームにおけるプレビュー画像において初期姿勢推定部２２により姿勢の初期値が求められたオブジェクト（後述のステップＳ２７参照）と、前フレームにおけるプレビュー画像において姿勢追跡部２３により認識されたオブジェクト（後述のステップＳ２２参照）と、のことである。
【０１１９】
ステップＳ２２において、画像処理装置１は、姿勢追跡部２３により、ステップＳ２１で追跡中であると判別した各オブジェクトについて、前フレームでの姿勢を初期値として姿勢の追跡処理を行って認識し、ステップＳ２３に処理を移す。
【０１２０】
ステップＳ２３において、画像処理装置１は、姿勢追跡部２３により、ステップＳ２２での姿勢の追跡に失敗したオブジェクトがあるか否かを判別する。ある場合には、ステップＳ２４に処理を移し、ない場合には、ステップＳ２５に処理を移す。
【０１２１】
ステップＳ２４において、画像処理装置１は、姿勢追跡部２３により、ステップＳ２３で姿勢の追跡に失敗したと判別したオブジェクトを、追跡中のオブジェクトから除外し、ステップＳ２５に処理を移す。これによれば、ステップＳ２３で姿勢の追跡に失敗したと判別されたオブジェクトについては、次フレームでは、初期姿勢推定部２２による姿勢の推定が行われることになる。
【０１２２】
ステップＳ２５において、画像処理装置１は、姿勢追跡部２３により、追跡中のオブジェクトの数が、予め定められた上限値に達したか否かを判別する。達した場合には、図６に示した処理を終了し、達していない場合には、ステップＳ２６に処理を移す。
【０１２３】
ステップＳ２６において、画像処理装置１は、オブジェクト識別部２１により、ステップＳ１で取得したプレビュー画像内のオブジェクトを識別し、ステップＳ２７に処理を移す。
【０１２４】
ステップＳ２７において、画像処理装置１は、初期姿勢推定部２２により、ステップＳ１で取得したプレビュー画像に含まれるステップＳ２６で識別したオブジェクトについて、姿勢を推定し、図６の処理を終了する。
【０１２５】
以上の画像処理装置１によれば、以下の効果を奏することができる。
【０１２６】
画像処理装置１は、画像認識部２０により、プレビュー画像内のオブジェクトを認識し、協調認識処理部４０により、画像認識部２０により認識していないオブジェクトについて、他端末で認識されたオブジェクトの認識結果を、自端末を基準とした認識結果に変換し、仮想情報表示部５０により、画像認識部２０による認識結果と、協調認識処理部４０により変換された認識結果と、に基づいて、プレビュー画像に仮想情報を重畳させる。このため、他端末での認識結果を、自端末での認識結果に変換して用いることができる。したがって、他端末での認識結果を自端末での認識結果に変換して用いることで、自端末の画像認識部２０では認識していないオブジェクトを認識することができるので、仮想情報を確認できるユーザと確認できないユーザとが生じてしまうのを防止することができる。よって、複数人での利用を想定したＡＲ技術において、ユーザビリティを向上させることができる。
【０１２７】
また、画像処理装置１は、画像認識部２０による認識結果と、他端末での認識結果と、の双方に認識結果が含まれているオブジェクトが存在していれば、このオブジェクトについての画像認識部２０による認識結果と、このオブジェクトについての他端末での認識結果と、に基づいて、協調認識処理部４０により自端末と他端末との相対的な位置関係を示す相対姿勢を推定する。また、推定した相対姿勢を用いて、他端末での認識結果を、自端末を基準とした認識結果に変換する。このため、他端末での認識結果を変換して得られた、自端末を基準とした認識結果について、認識精度を向上させることができるので、ユーザビリティをさらに向上させることができる。
【０１２８】
また、画像処理装置１は、協調認識処理部４０により、自端末Ｓと他端末Ｔとの相対姿勢ＷＳＴと、他端末Ｔと他端末Ｕとの相対姿勢ＷＴＵと、に基づいて、自端末Ｓと他端末Ｕとの相対姿勢ＷＳＵを推定する。このため、自端末Ｓと他端末Ｕとの相対姿勢を直接求めることができない場合でも、自端末Ｓと他端末Ｔとの相対姿勢と、他端末Ｔと他端末Ｕとの相対姿勢と、が分かっていれば、自端末Ｓと他端末Ｕとの相対姿勢を求めることができる。
【０１２９】
＜第２実施形態＞
［画像処理装置１Ａの概要］
図７は、本発明の第２実施形態に係る画像処理装置１Ａのブロック図である。画像処理装置１Ａは、図１に示した本発明の第１実施形態に係る画像処理装置１とは、協調認識処理部４０の代わりに協調認識処理部４０Ａを備える点で異なる。なお、画像処理装置１Ａにおいて、画像処理装置１と同一の構成要件については、同一符号を付し、その説明を省略する。
【０１３０】
ここで、まず、図２から４を用いて上述したＡＲ空間を、上述の特許文献１から３の技術で実現する場合について、以下に説明する。この場合、端末１００、２００のそれぞれは、上述のように、オブジェクトＭ１からＭ３をそれぞれ独立に認識し続ける必要があり、リアルタイム処理の実現が困難になってしまう。このため、端末１００、２００のそれぞれが認識可能なオブジェクトの数が限定されて、ユーザビリティが低下してしまうおそれがある。
【０１３１】
次に、図２から４を用いて上述したＡＲ空間を、本実施形態に係る画像処理装置１Ａで実現する場合について、以下に説明する。ここで、例えば、端末２００がオブジェクトＭ１の認識に成功しているものとする。すると、端末１００には、オブジェクトＭ１の認識結果が端末２００から送信される。そこで、端末１００は、オブジェクトＭ１の端末２００での認識結果を、自端末を基準とした認識結果に変換し、オブジェクトＭ１の端末１００の姿勢追跡部２３による追跡処理を休止する。これによれば、端末１００が姿勢追跡部２３による追跡処理を行わなくてはならないオブジェクトの数が減少するので、端末１００の処理負荷を軽減することができ、ユーザビリティの低下を抑制することができる。
【０１３２】
［画像処理装置１Ａの構成］
以上の画像処理装置１Ａについて、以下に詳述する。図７に戻って、画像処理装置１Ａに設けられた協調認識処理部４０Ａは、協調認識処理部４０とは、認識処理制御部４３を備える点で異なる。
【０１３３】
ここで、姿勢変換部４２により他端末での認識結果を自端末における認識結果に変換する処理は、姿勢追跡部２３による追跡処理と比べて、大幅に低負荷である。また、他端末での認識結果を、自端末を基準とした認識結果に変換するためには、相対姿勢を推定する必要があり、相対姿勢を推定するためには他端末でも認識されているオブジェクトを１つ認識しなくてはならないが、他のオブジェクトについては、自端末で認識しなくても、他端末での認識結果から相対姿勢を用いて求めることができる。
【０１３４】
そこで、認識処理制御部４３は、自端末の処理能力を示す情報と、他端末の処理能力を示す情報と、を入力とし、自端末での認識結果および他端末での認識結果の双方に２つ以上の同一のオブジェクトについての認識結果が含まれている場合、すなわち自端末および他端末の双方で認識できているオブジェクトが２つ以上存在する場合に、自端末の処理能力が他端末の処理能力よりも低ければ、これら双方で認識できている２つ以上のオブジェクトのうちの１つを認識休止オブジェクトとして登録する。また、認識処理制御部４３は、認識休止オブジェクトについては、姿勢追跡部２３による追跡処理ではなく、姿勢変換部４２による変換処理により、認識する。これによれば、認識休止オブジェクトについては、姿勢追跡部２３による追跡処理と、初期姿勢推定部２２によるオブジェクトの姿勢の初期値の推定処理と、を行う対象から除外されることになる。
【０１３５】
なお、認識処理制御部４３は、自端末での認識処理時間が長くなるに従って小さくなる数値を設定し、この数値を自端末の処理能力を示す情報として用いる。例えば、上述の数値として、自端末での認識処理時間の逆数を設定してもよいし、予め定められた値から自端末での認識処理時間を減算した値を設定してもよい。自端末での認識処理時間とは、前フレームにおいて、自端末の画像認識部２０によるオブジェクトの姿勢の推定にかかった時間のことを示し、自端末での認識処理時間が短くなるに従って、自端末の処理能力が高いものとする。他端末の処理能力を示す情報は、他端末での認識結果とともに他端末から送信される。
【０１３６】
また、認識処理制御部４３は、認識休止オブジェクトの中に他端末で認識されなくなったものがある場合には、このオブジェクトを認識休止オブジェクトから除外する。これによれば、認識休止オブジェクトのうち他端末で認識されなくなったものは、初期姿勢推定部２２によるオブジェクトの姿勢の初期値の推定処理の対象となる。
【０１３７】
［画像処理装置１Ａの動作］
以上の構成を備える画像処理装置１Ａの動作について、図８、９、１０を用いて以下に説明する。
【０１３８】
図８は、画像処理装置１Ａのフローチャートである。
【０１３９】
ステップＳ３１において、画像処理装置１Ａは、画像取得部１０によりプレビュー画像を取得するとともに、認識処理制御部４３により自端末での認識処理時間の計測を開始し、ステップＳ３２に処理を移す。
【０１４０】
ステップＳ３２において、画像処理装置１Ａは、認識結果共有処理部３０により、他端末の画像認識部２０による認識結果と、他端末の処理能力と、を取得し、ステップＳ３３に処理を移す。
【０１４１】
ステップＳ３３において、画像処理装置１Ａは、画像認識部２０および認識処理制御部４３により第２の認識処理を行って、ステップＳ３１で取得したプレビュー画像内の各オブジェクトを認識し、ステップＳ３４に処理を移す。なお、第２の認識処理の詳細については、図９、１０を用いて後述する。
【０１４２】
ステップＳ３４において、画像処理装置１Ａは、認識結果共有処理部３０により、ステップＳ３３で求めた自端末での認識結果と、前フレームにおいて後述のステップＳ６４（図１０参照）で求めた自端末の処理能力と、を他端末での認識結果共有処理部３０に送信し、ステップＳ３５に処理を移す。
【０１４３】
ステップＳ３５からＳ４０のそれぞれにおいて、画像処理装置１Ａは、図５のステップＳ５からＳ１０のそれぞれにおいて画像処理装置１が行う処理と同様の処理を行う。
【０１４４】
図９、１０は、画像処理装置１Ａが行う上述の第２の認識処理のフローチャートである。
【０１４５】
ステップＳ５１において、画像処理装置１Ａは、認識処理制御部４３により、全ての認識休止オブジェクトが、ステップＳ３２で取得した他端末での認識結果に含まれているか否かを判別する。含まれている場合には、ステップＳ５３に処理を移す。全ての認識休止オブジェクトのうち少なくとも１つが、ステップＳ３２で取得した他端末での認識結果に含まれていない場合には、ステップＳ５２に処理を移す。
【０１４６】
ステップＳ５２において、画像処理装置１Ａは、認識処理制御部４３により、全ての認識休止オブジェクトのうちステップＳ３２で取得した他端末での認識結果に含まれていないと判別したオブジェクトについて、認識休止オブジェクトから除外し、ステップＳ５３に処理を移す。
【０１４７】
ステップＳ５３において、画像処理装置１Ａは、認識処理制御部４３により、前フレームにおける自端末の処理能力から、ステップＳ３２で取得した他端末の処理能力を減算して、処理能力差を求め、ステップＳ５４に処理を移す。
【０１４８】
ステップＳ５４において、画像処理装置１Ａは、認識処理制御部４３により、ステップＳ５３で求めた処理能力差が閾値−αよりも低いか否かを判別する。低い場合には、ステップＳ５５に処理を移し、低くない場合には、ステップＳ５７に処理を移す。
【０１４９】
ステップＳ５５において、画像処理装置１Ａは、認識処理制御部４３により、前フレームにおける自端末での認識結果と、ステップＳ３２で取得した他端末での認識結果と、の双方に、同一のオブジェクトについての認識結果が２つ以上含まれているか否かを判別する。含まれている場合には、ステップＳ５６に処理を移し、含まれていない場合には、ステップＳ５７に処理を移す。
【０１５０】
ステップＳ５６において、画像処理装置１Ａは、認識処理制御部４３により、前フレームにおける自端末での認識結果と、ステップＳ３２で取得した他端末での認識結果と、の双方に認識結果が含まれている２つ以上の同一のオブジェクトの中から１つを選択し、選択した１つのオブジェクトを認識休止オブジェクトに登録し、ステップＳ５７に処理を移す。
【０１５１】
ステップＳ５７からＳ６３のそれぞれにおいて、画像処理装置１Ａは、図６のステップＳ２１からＳ２７のそれぞれにおいて画像処理装置１が行う処理と同様の処理を行う。
【０１５２】
ステップＳ６４において、画像処理装置１Ａは、認識処理制御部４３により、ステップＳ３１で開始した自端末での認識処理時間の計測を終了し、計測結果に基づいて自端末の処理能力を設定し、図９、１０に示した処理を終了する。
【０１５３】
以上の画像処理装置１Ａによれば、画像処理装置１が奏することのできる上述の効果に加えて、以下の効果を奏することができる。
【０１５４】
画像処理装置１Ａは、画像認識部２０による認識結果と、他端末での認識結果と、の双方に認識結果が含まれているオブジェクトが２つ以上存在しており、自端末の処理能力が他端末の処理能力よりも低ければ、協調認識処理部４０により、画像認識部２０による認識結果と、他端末での認識結果と、の双方に認識結果が含まれている２つ以上のオブジェクトのうち少なくとも１つを認識休止オブジェクトとし、認識休止オブジェクトについての他端末での認識結果を、自端末を基準とした認識結果に変換する。また、画像認識部２０により、認識休止オブジェクトの認識を休止する。このため、自端末の画像認識部２０により認識するオブジェクトの数を減少させることができるので、自端末における処理負荷を軽減することができ、自端末におけるリアルタイム処理の実現の困難性を低下させることができる。したがって、複数人での利用を想定したＡＲ技術において、ユーザビリティを向上させることができる。
【０１５５】
また、画像処理装置１Ａは、協調認識処理部４０により、画像認識部２０による認識結果を求めるために要した時間が長くなるに従って小さくなる数値を設定し、この数値を自端末の処理能力として用いる。このため、画像認識部２０による認識結果を求めるために要した時間が長くなるに従って、自端末の処理能力が低いものとして扱うことができる。
【０１５６】
また、画像処理装置１Ａは、協調認識処理部４０により、認識休止オブジェクトであるオブジェクトの数を、画像取得部１０によりプレビュー画像が取得されるたびに最大で１つずつ増加させる。このため、自端末における認識休止オブジェクトが急激に増加してしまうのを防止することができるので、他端末の処理負荷が過度に上昇してしまうのを防止することができる。
【０１５７】
また、画像処理装置１Ａは、協調認識処理部４０により、他端末での認識結果に含まれていないオブジェクトを、認識休止オブジェクトから除外する。このため、認識休止オブジェクトの中から、他端末で認識できなくなったオブジェクトが発生した場合には、このオブジェクトを自端末の画像認識部２０により認識して、オブジェクトの認識精度を向上させることができる。
【０１５８】
なお、本発明の画像処理装置１、１Ａの処理を、コンピュータ読み取り可能な非一時的な記録媒体に記録し、この記録媒体に記録されたプログラムを画像処理装置１、１Ａに読み込ませ、実行することによって、本発明を実現できる。
【０１５９】
ここで、上述の記録媒体には、例えば、ＥＰＲＯＭやフラッシュメモリといった不揮発性のメモリ、ハードディスクといった磁気ディスク、ＣＤ−ＲＯＭなどを適用できる。また、この記録媒体に記録されたプログラムの読み込みおよび実行は、画像処理装置１、１Ａに設けられたプロセッサによって行われる。
【０１６０】
また、上述のプログラムは、このプログラムを記憶装置などに格納した画像処理装置１、１Ａから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネットなどのネットワーク（通信網）や電話回線などの通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【０１６１】
また、上述のプログラムは、上述の機能の一部を実現するためのものであってもよい。さらに、上述の機能を画像処理装置１、１Ａにすでに記録されているプログラムとの組み合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【０１６２】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計なども含まれる。
【０１６３】
例えば、上述の各実施形態では、オブジェクトとして、図２から４では二次元バーコードを記載したが、これに限らず、任意の図や文字や物体などであってもよい。
【０１６４】
また、上述の各実施形態において、画像認識部２０は、認識結果を推定した際の時刻を認識結果に付加することとしてもよい。これによれば、自端末と他端末との間で行われた認識結果の送受信の際の通信遅延を考慮することができる。このため、例えば、他端末での認識結果に付加されている時刻が、自端末での認識結果に付加されている時刻と比べて、予め定められた閾値β以上遅れている場合には、協調認識処理部４０は、他端末での認識結果を破棄することで、大幅な通信遅延による仮想情報の表示のずれが発生してしまうのを防ぐことができる。
【０１６５】
なお、上述の閾値βについては、協調認識処理部４０が、自端末およびオブジェクトの移動状態に応じて設定することとしてもよい。具体的には、例えば、画像取得部１０による前フレームにおけるプレビュー画像の取得時と比べて、自端末やオブジェクトの移動距離が大きくなるに従って閾値βを小さく設定することとしてもよい。これによれば、自端末が静止している場合には、通信遅延による表示のずれが小さいので、閾値βを大きく設定しても、ユーザが体感する表示のずれを効率的に抑えてユーザビリティを向上させることができる。
【０１６６】
また、上述の自端末の移動状態については、自端末に対する基準マーカの姿勢の変動から推定したり、自端末に加速度センサやジャイロスコープなどが搭載されている場合にはこれらの応答値を用いて推定したりすることができる。また、上述のオブジェクトの移動状態については、例えば、このオブジェクトの自端末に対する姿勢の変動から推定することができる。複数のオブジェクトのそれぞれが独立に動く場合には、移動状態はオブジェクトごとに異なるので、オブジェクトごとに上述の閾値βを設定することとしてもよい。
【０１６７】
また、上述の第１実施形態では、姿勢変換部４２は、自端末での認識結果を優先的に用い、自端末で認識していないオブジェクトについてのみ、他端末での認識結果を相対姿勢を用いて変換したものを用いるものとした。しかしこれに限らず、例えば、自端末および他端末のそれぞれにおいて、画像認識部２０が、認識結果を求めた際に、その認識結果の認識精度の指標となる情報をオブジェクトごとの認識結果に付加することとしてもよい。これによれば、姿勢変換部４２は、自端末での認識結果の認識精度の指標の方が、他端末での認識結果の認識精度の指標よりも高いオブジェクトについては、自端末での認識結果を用い、自端末での認識結果の認識精度の指標の方が、他端末での認識結果の認識精度の指標よりも低いオブジェクトについては、他端末での認識結果を相対姿勢を用いて変換したものを用いることができる。なお、上述の認識精度の指標としては、例えば、オブジェクトに対する撮影距離や撮影角度を採用したり、局所特徴量を用いる場合にはマッチング数やマッチングのスコアを採用したり、ＳＳＤ（Sum  of  Squared  Difference）やＮＣＣ（Normalized  Cross  Correlation）といったテンプレートマッチングの手法を用いる場合にはＳＳＤやＮＣＣの応答値をそのまま採用したりすることができる。
【０１６８】
また、上述の第２実施形態では、ステップＳ５５において、前フレームにおける自端末での認識結果と、ステップＳ３２で取得した他端末での認識結果と、の双方に、同一のオブジェクトについての認識結果が２つ以上含まれているか否かを判別し、２つ以上含まれていると判別した場合に、ステップＳ５６において、これら２つ以上のオブジェクトのうちの１つを認識休止オブジェクトとして登録するものとした。このため、自端末において、前フレームでは認識できていたにもかかわらず現フレームでは認識に失敗してしまったオブジェクトが存在している場合に、このオブジェクト以外が認識休止オブジェクトとして登録されるとともに、このオブジェクトの認識結果を用いた相対姿勢の推定が行われる可能性がある。しかし、この場合には、このオブジェクトの認識結果を適切に求めることができないため、相対姿勢を適切に求めることができず、その結果、認識休止オブジェクトの姿勢を適切に求めることができなくなってしまうおそれがある。
【０１６９】
そこで、上述の第２実施形態において、以下の第１の手順から第３の手順をさらに行うこととしてもよい。第１の手順では、ステップＳ５５で判別した２つ以上のオブジェクトのうち、ステップＳ５６で認識休止オブジェクトとして登録したものを、記憶する。第２の手順では、ステップＳ５５で判別した２つ以上のオブジェクトのうち、ステップＳ５６で認識休止オブジェクトとして登録したオブジェクトを除くものの中に、前フレームでは認識できていたにもかかわらず現フレームでは認識に失敗してしまったオブジェクトが含まれているか否かを判別する。第３の手順では、第２の手順で含まれていると判別した場合に、第１の手順で記憶したオブジェクトを、認識休止オブジェクトから除外する。
【０１７０】
また、上述の第２実施形態では、自端末での認識処理時間が長くなるに従って小さくなる数値を設定し、この数値を自端末の処理能力を示す情報として用いることとした。しかし、これに限らず、例えば、自端末におけるＣＰＵ使用率が高くなるに従って小さくなる数値を設定し、この数値を自端末の処理能力を示す情報として用いることとしてもよい。また、例えば、自端末における空きメモリ量を、自端末の処理能力を示す情報として用いてもよい。
【符号の説明】
【０１７１】
１、１Ａ；画像処理装置
１０；画像取得部
２０；画像認識部
３０；認識結果共有処理部
４０、４０Ａ；協調認識処理部
５０；仮想情報表示部
Ｃ１、Ｃ２、Ｃ３；仮想情報
Ｍ１、Ｍ２、Ｍ３；オブジェクト
【図１】
0006290020.tif 000006
【図２】
0006290020.tif 000007
【図３】
0006290020.tif 000008
【図４】
0006290020.tif 000009
【図５】
0006290020.tif 000010
【図６】
0006290020.tif 000011
【図７】
0006290020.tif 000012
【図８】
0006290020.tif 000013
【図９】
0006290020.tif 000014
【図１０】
0006290020.tif 000015