(57)【要約】【課題】少ない演算量で正確な位置合わせを行うこと。【解決手段】画像処理装置１００は、予め指定された作業空間に含まれる物体の形状をモデリングした３次元モデルと、前フレームにおいて距離センサから取得した３次元情報を示す第１情報との重なりを判定する。画像処理装置１００は、前フレームから現フレームまでの間に移動したカメラの移動量を判定する。画像処理装置１００は、３次元モデルと、第１情報と、現フレームにおいて距離センサから取得した３次元情報を示す第２情報との重なりを判定する。画像処理装置１００は、各判定結果を基にして、３次元モデルと位置合わせを行う３次元情報の部分集合を選択する。【選択図】図４
2017062748.tif 000002
【特許請求の範囲】
【請求項１】
予め指定された作業空間に含まれる物体の形状をモデリングした３次元モデルと、前フレームにおいて距離センサから取得した３次元情報を示す第１情報との重なりを判定する第１判定部と、
前フレームから現フレームまでの間に移動したカメラの移動量を判定する第２判定部と、
前記３次元モデルと、前記第１情報と、現フレームにおいて前記距離センサから取得した３次元情報を示す第２情報との重なりを判定する第３判定部と、
前記第１判定部の判定結果と、前記第２判定部の判定結果と、前記第３判定部の判定結果とを基にして、前記３次元モデルと位置合わせを行う３次元情報の部分集合を選択する選択部と
を有することを特徴とする位置合わせ装置。
【請求項２】
前記選択部は、前記３次元モデルと前記第１情報との重なりが、第１閾値以上であり、かつ、前記カメラの移動量が所定移動量未満であり、かつ、前記３次元モデルと前記第１情報と前記第２情報との重なりが第２閾値以上である場合には、前記３次元モデルと前記第１情報と前記第２情報とに共通して含まれる３次元情報を、前記３次元モデルと位置合わせを行う部分集合として選択することを特徴とする請求項１に記載の位置合わせ装置。
【請求項３】
前記選択部は、前記カメラの移動量が所定移動量以上である場合、または、前記３次元モデルと前記第１情報と前記第２情報との重なりが第２閾値未満である場合には、前記３次元モデルと前記第１情報と前記第２情報とに共通して含まれる３次元情報と、前記３次元モデルおよび前記第２情報に共通して含まれる３次元情報とを、前記３次元モデルと位置合わせを行う部分集合として選択することを特徴とする請求項１または２に記載の位置合わせ装置。
【請求項４】
コンピュータが実行する位置合わせ方法であって、
予め指定された作業空間に含まれる物体の形状をモデリングした３次元モデルと、前フレームにおいて距離センサから取得した３次元情報を示す第１情報との重なりを判定し、
前フレームから現フレームまでの間に移動したカメラの移動量を判定し、
前記３次元モデルと、前記第１情報と、現フレームにおいて前記距離センサから取得した３次元情報を示す第２情報との重なりを判定し、
判定結果を基にして、前記３次元モデルと位置合わせを行う３次元情報の部分集合を選択する
処理を実行することを特徴とする位置合わせ方法。
【請求項５】
コンピュータに、
予め指定された作業空間に含まれる物体の形状をモデリングした３次元モデルと、前フレームにおいて距離センサから取得した３次元情報を示す第１情報との重なりを判定し、
前フレームから現フレームまでの間に移動したカメラの移動量を判定し、
前記３次元モデルと、前記第１情報と、現フレームにおいて前記距離センサから取得した３次元情報を示す第２情報との重なりを判定し、
判定結果を基にして、前記３次元モデルと位置合わせを行う３次元情報の部分集合を選択する
処理を実行させることを特徴とする位置合わせプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置合わせ装置等に関する。
【背景技術】
【０００２】
近年、作業者が作業現場で用いる端末装置の画面に、コンピュータグラフィックス（ＣＧ）等で付加情報を重畳表示させて、作業支援を行うＡＲ（Augmented  Reality）技術が存在する。
【０００３】
図１１は、ＡＲ技術の一例を示す図である。図１１に示すように、例えば、利用者が端末装置１０に内蔵されたカメラを用いて、マーカ１１および点検対象１２を撮影すると、端末装置１０の表示画面１０ａに、マーカ１１に対するオブジェクト情報１３が表示される。
【０００４】
このＡＲ技術を応用して、作業者がカメラで撮影した撮影画像をその場にいない遠隔支援者に送信し、遠隔支援者は送信された撮影画像を見ながら作業者に作業の指示をする非特許文献１がある。例えば、非特許文献１では、遠隔支援者が、撮影画像に含まれる作業対象にマーカを付与し、マーカが重畳された撮影画像を、作業現場の作業者の端末装置に表示させることで、作業者の作業支援を行う。
【０００５】
例えば、ＡＲ技術では、作業空間の３次元モデルと、端末装置の距離センサから取得する３次元情報とを比較して、位置合わせを行うことで、端末装置の位置姿勢等を推定し、付加情報を重畳表示する位置を調整している。位置合わせを行う技術として、非特許文献２、特許文献１等がある。非特許文献２では、３次元モデルの全領域と、３次元情報とを直接比較して、位置合わせを行う。
【０００６】
特許文献１では、初回の位置合わせでは、非特許文献２と同様にして、位置合わせを行い、２回目以降の位置合わせにおいては、前回の３次元情報と今回の３次元情報との重なりから、間接的に、３次元モデルとの位置合わせを行う。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１０−２７９０２３号公報
【特許文献２】特開２００４−２３４３４９号公報
【特許文献３】特開２００８−０４６７５０号公報
【非特許文献】
【０００８】
【非特許文献１】東日本電信電話株式会社、日本電信電話株式会社、”ARサポート機能」に関する実証実験の開始について”［平成２７年９月１８日検索］、インターネット＜URL：https://www.ntt-east.co.jp/release/detail/20131024_01.html＞
【非特許文献２】畠山龍、金井理、伊達宏昭、「レーザースキャン環境モデル内でのデプスカメラによるモンテカルロ自己位置推定」、精密工学会学術講演会講演論文集  2013A(0)、633-634、2013
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述した従来技術では、少ない演算量で正確な位置合わせを行うことができないという問題がある。
【００１０】
例えば、非特許文献２では、３次元モデルの全領域と、距離センサから取得した３次元情報とを直接比較する処理を毎回実行するため、演算量が大きくなる。一方、特許文献１では、非特許文献２と比較して、演算量を削減することができるものの、端末装置の動きが大きくなると、前回の３次元情報と今回の３次元情報との重なりが小さくなり、位置合わせの精度が低下する。
【００１１】
また、非特許文献２、特許文献１では、距離センサから取得する３次元情報に、３次元モデルに存在しない作業者の手の情報等が含まれていると、位置合わせを精度良く実行することができない場合があった。
【００１２】
１つの側面では、本発明は、少ない演算量で正確な位置合わせを行うことができる位置合わせ装置、位置合わせ方法および位置合わせプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
第１の案では、位置合わせ装置は、第１判定部と、第２判定部と、第３判定部と、選択部とを有する。第１判定部は、予め指定された作業空間に含まれる物体の形状をモデリングした３次元モデルと、前フレームにおいて距離センサから取得した３次元情報を示す第１情報との重なりを判定する。第２判定部は、前フレームから現フレームまでの間に移動したカメラの移動量を判定する。第３判定部は、３次元モデルと、第１情報と、現フレームにおいて距離センサから取得した３次元情報を示す第２情報との重なりを判定する。選択部は、第１判定部の判定結果と、第２判定部の判定結果と、第３判定部の判定結果とを基にして、３次元モデルと位置合わせを行う３次元情報の部分集合を選択する。
【発明の効果】
【００１４】
少ない演算量で正確な位置合わせを行うことができる。
【図面の簡単な説明】
【００１５】
【図１】図１は、本実施例に係る遠隔作業支援システムの構成を示す図である。
【図２】図２は、重なり部分を説明するための図（１）である。
【図３】図３は、重なり部分を説明するための図（２）である。
【図４】図４は、本実施例に係る画像処理装置の構成を示す機能ブロック図である。
【図５】図５は、３次元モデル情報の一例を示す図である。
【図６】図６は、位置合わせ部の処理を説明するための図である。
【図７】図７は、表示画面の一例を示す図である。
【図８】図８は、本実施例に係る画像処理装置の処理手順を示すフローチャート（１）である。
【図９】図９は、本実施例に係る画像処理装置の処理手順を示すフローチャート（２）である。
【図１０】図１０は、位置合わせプログラムを実行するコンピュータの一例を示す図である。
【図１１】図１１は、ＡＲ技術の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下に、本願の開示する位置合わせ装置、位置合わせ方法および位置合わせプログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【００１７】
図１は、本実施例に係る遠隔作業支援システムの構成を示す図である。図１に示すように、このシステムは、画像処理装置１００と、遠隔支援者端末２００とを有する。例えば、画像処理装置１００および遠隔支援者端末２００は、ネットワーク５０を介して相互に接続される。画像処理装置１００は、位置合わせ装置の一例である。
【００１８】
画像処理装置１００は、作業者が作業現場で利用する装置である。画像処理装置１００は、カメラで撮影した撮影画像の情報を、遠隔支援者端末２００に通知する。また、画像処理装置１００は、撮影画像を表示する場合に、作業空間の３次元モデルと、距離センサから取得する３次元情報との位置合わせを行うことで、距離センサ１２０の位置姿勢を推定し、位置姿勢に応じた付加情報を表示させる。
【００１９】
遠隔支援者端末２００は、作業者の作業を支援する支援者が利用する装置である。例えば、遠隔支援者端末２００は、画像処理装置１００から通知される表示画面を表示することで、支援者は、作業者の作業状況を把握し、各種の支援を実行する。
【００２０】
続いて、画像処理装置１００が実行する作業空間の３次元モデルと、距離センサから取得する３次元情報との位置合わせを実行する処理の一例について説明する。以下の説明では、適宜、作業空間の３次元モデルを３次元モデル情報と表記する。
【００２１】
画像処理装置１００は、位置合わせを実行する場合に、３次元モデル情報と、３次元情報との重なりの大小を基にして、第１位置合わせ処理、第２位置合わせ処理、第３位置合わせ処理のうち、何れかの位置合わせ処理を選択する。
【００２２】
画像処理装置１００は、３次元モデル情報と、前フレームの３次元情報との重なり部分を判定し、重なり部分が第１閾値未満である場合に、第１位置合わせ処理を実行すると判定する。
【００２３】
画像処理装置１００は、上記判定において、第１位置合わせ処理を実行しないと判定した場合には、前フレームから現フレームまでのカメラの移動量が、所定移動量以上であるか否かを判定する。画像処理装置１００は、前フレームから現フレームまでのカメラの移動量が、所定移動量以上である場合には、第２位置合わせ処理を実行すると判定する。
【００２４】
画像処理装置１００は、カメラの移動量が、所定移動量未満であると判定した場合には、３次元モデル情報と、前フレームの３次元情報と、現フレームの３次元情報との重なり部分を判定する。画像処理装置１００は、前フレームの３次元情報と、現フレームの３次元情報との重なり部分が、第２閾値未満である場合に、第２位置合わせ処理を実行すると判定する。一方、画像処理装置１００は、前フレームの３次元情報と、現フレームの３次元情報との重なり部分が、第２閾値以上である場合には、第３位置合わせ処理を実行すると判定する。
【００２５】
続いて、第１位置合わせ処理、第２位置合わせ処理、第３位置合わせ処理について説明する。第１位置合わせ処理について説明する。画像処理装置１００は、現フレームの３次元情報と、３次元モデルとを直接的に比較することで、３次元モデルと３次元情報との位置合わせを実行する。
【００２６】
第２位置合わせ処理について説明する。画像処理装置１００は、前フレームの３次元情報および３次元モデルの位置合わせ結果と、カメラの移動量から、現フレームの３次元情報に対応する３次元モデル上の位置を間接的に特定する。そして、画像処理装置１００は、間接的に特定した位置を基準として、３次元モデルと、現フレームの３次元情報とを直接的に比較することで、３次元モデルと３次元情報との位置合わせを実行する。
【００２７】
第３位置合わせ処理について説明する。画像処理装置１００は、前フレームの３次元情報および３次元モデルの位置合わせ結果と、カメラの移動量から、重なり部分を３次元モデルに投影する。この重なり部分は、３次元モデルと、前フレームの３次元情報と、現フレームの３次元情報とに共通する部分である。画像処理装置１００は、重なり部分と、３次元モデルとを比較して、位置合わせを実行する。
【００２８】
画像処理装置１００は、上記のように、位置合わせを実行する場合に、３次元モデル情報と、３次元情報との重なりの大小を基にして、第１位置合わせ処理、第２位置合わせ処理、第３位置合わせ処理のうち、何れかの位置合わせ処理を選択する。このため、少ない演算量で、位置合わせを精度良く実行することができる。
【００２９】
ここで、３次元モデルと、前フレームの３次元情報と、現フレームの３次元情報との重なり部分について定義する。図２、３は、重なり部分を説明するための図である。図２に示す例では、３次元モデルを３次元モデルＭとし、前フレームの３次元情報を３次元情報Ｃｉとし、現フレームの３次元情報を３次元情報Ｃｊとする。
【００３０】
図３に示すように、本実施例では、各重なり部分を、重なり部分Ｐ２，Ｐ３，Ｐ４，Ｐ５，Ｐ６，Ｐ７に分類する。重なり部分Ｐ２は、３次元モデルＭおよび３次元情報Ｃｉに含まれ、かつ、３次元情報Ｃｊに含まれない部分を示す。重なり部分Ｐ３は、３次元モデルＭ、３次元情報Ｃｉ、３次元情報Ｃｊに共通して含まれる部分を示す。重なり部分Ｐ４は、３次元モデルＭおよび３次元情報Ｃｊに含まれ、かつ、３次元情報Ｃｉに含まれない部分を示す。
【００３１】
重なり部分Ｐ５は、３次元モデルＭ、３次元情報Ｃｊに含まれず、３次元情報Ｃｉに含まれる部分を示す。重なり部分Ｐ６は、３次元モデルＭに含まれず、かつ、３次元情報Ｃｉおよび３次元情報Ｃｊに共通して含まれる部分を示す。重なり部分Ｐ７は、３次元モデルＭおよび３次元情報Ｃｉに含まれず、かつ、３次元情報Ｃｊに含まれる部分を示す。
【００３２】
例えば、３次元情報Ｃｉは、重なり部分Ｐ２，Ｐ３，Ｐ５，Ｐ６を組み合わせた領域に対応する。３次元情報Ｃｊは、重なり部分Ｐ３，Ｐ４，Ｐ６，Ｐ７を組み合わせた領域に対応する。
【００３３】
次に、本実施例に係る画像処理装置１００の構成について説明する。図４は、本実施例に係る画像処理装置の構成を示す機能ブロック図である。図４に示すように、この画像処理装置１００は、通信部１１０と、距離センサ１２０と、カメラ１３０と、入力部１４０と、表示部１５０と、記憶部１６０と、制御部１７０とを有する。例えば、距離センサ１２０およびカメラ１３０は、作業者が作業時に着用するヘルメット等に設置されていても良い。
【００３４】
通信部１１０は、ネットワーク５０を介して、遠隔支援者端末２００とデータ通信を実行する通信装置である。後述する制御部１７０は、通信部１１０を介して、データを送受信する。
【００３５】
距離センサ１２０は、距離センサ１２０から、計測範囲に含まれる物体までの３次元距離を計測するセンサである。例えば、距離センサ１２０は、三角測距方式、タイム・オブ・フライト等に基づいて、３次元距離を計測することで、３次元情報を生成する。距離センサ１２０は、３次元情報を、制御部１７０に出力する。
【００３６】
カメラ１３０は、撮影範囲の画像を撮影する装置である。カメラ１３０が撮影した撮影画像を、制御部１７０に出力する。カメラ１３０は、撮影画像の情報を制御部１７０に出力する。カメラ１３０は距離センサ１２０との相対距離が変化しないように配置されているものとする。例えば、カメラ１３０および距離センサ１２０は、作業者が頭部に装着するＨＭＤ（Head  Mounted  Display）に搭載されていても良い。
【００３７】
入力部１４０は、画像処理装置１００に各種の情報を入力する入力装置である。入力部１４０は、タッチパネルや入力ボタン等の入力装置に対応する。
【００３８】
表示部１５０は、制御部１７０から出力される情報を表示する表示装置である。表示部１５０は、液晶ディスプレイやタッチパネル等に対応する。
【００３９】
記憶部１６０は、３次元モデル情報１６１と、３次元取得情報１６２と、重なり部分情報１６３とを有する。記憶部１６０は、例えば、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子などの記憶装置に対応する。
【００４０】
３次元モデル情報１６１は、作業空間に含まれる複数の物体の形状をモデリングした情報である。例えば、３次元モデル情報１６１は、予め設定される世界座標系の原点を基準として、複数の物体を配置し、物体を配置した３次元座標や物体の形状を定義する。図５は、３次元モデル情報の一例を示す図である。図５では、３次元モデル情報１６１を正面から見たものを示す。
【００４１】
３次元取得情報１６２は、距離センサ１２０によって計測された３次元情報をフレーム毎に保持している。
【００４２】
重なり部分情報１６３は、３次元モデル情報１６１と、現フレームの３次元情報との重なり部分の情報を有する。ここで、重なり部分を判定した時点における現フレームの３次元情報を３次元情報Ｃｊとし、前フレームの３次元情報を３次元情報Ｃｉとすると、重なり部分情報１６３には、重なり部分Ｐ３および重なり部分Ｐ４の情報が含まれる。
【００４３】
図４の説明に戻る。制御部１７０は、取得部１７１、第１判定部１７２、第２判定部１７３、第３判定部１７４、選択部１７５、位置合わせ部１７６、画面生成部１７７を有する。制御部１７０は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）や、ＦＰＧＡ（Field  Programmable  Gate  Array）などの集積装置に対応する。また、制御部１７０は、例えば、ＣＰＵやＭＰＵ（Micro  Processing  Unit）等の電子回路に対応する。
【００４４】
取得部１７１は、通信部１１０または入力部１４０から３次元モデル情報１６１を取得する。また、取得部１７１は、距離センサ１２０から、３次元情報を取得する。取得部１７１は、３次元モデル情報１６１を、記憶部１６０に格納する。取得部１７１は、３次元情報を、３次元取得情報１６２に格納する。
【００４５】
第１判定部１７２は、３次元モデル情報１６１と、前フレームの３次元情報との重なり部分を特定し、特定した重なり部分の大きさが第１閾値以上であるか否かを判定する処理部である。第１判定部１７２は、判定結果を、選択部１７５に出力する。
【００４６】
例えば、第１判定部１７２は、重なり部分情報１６３を読み出して、３次元モデル情報１６１と、前フレームの３次元情報との重なり部分を特定する。ここで、第１判定部１７２が判定する時点における現フレームの３次元情報を３次元情報Ｃｊとし、前フレームの３次元情報を３次元情報Ｃｉとすると、重なり部分情報１６３から読み出される重なり部分は、重なり部分Ｐ２および重なり部分Ｐ３を組み合わせた重なり部分となる。
【００４７】
なお、第１判定部１７２は、前フレームの３次元情報の全領域に対する重なり部分（Ｐ２＋Ｐ３）の割合が、例えば、８割以上である場合に、重なり部分（Ｐ２＋Ｐ３）の大きさが第１閾値以上であると判定しても良い。
【００４８】
第２判定部１７３は、カメラ１３０の移動量が、所定移動量以上であるか否かを判定する処理部である。第２判定部１７３は、判定結果を、選択部１７５に出力する。第２判定部１７３は、どのようにカメラ１３０の移動量を算出しても良いが、例えば、前フレームの３次元情報と、現フレームの３次元情報との間で、オプティカルフローを用いて、カメラ１３０の移動量を算出する。また、第２判定部１７３は、各３次元情報から特徴点抽出を行い、ホモグラフィを用いて、カメラ１３０の移動量を推定しても良い。また、第２判定部１７３は、加速度センサや慣性センサなどを用いて、カメラ１３０の移動量を推定しても良い。
【００４９】
なお、第２判定部１７３は、前フレームの３次元情報と、現フレームの３次元情報の重なり部分（Ｐ３＋Ｐ６）を簡易的に算出し、この重なり部分が閾値以上の場合に、カメラの移動量が所定移動量未満であると判定しても良い。
【００５０】
第３判定部１７４は、３次元モデル情報１６１と、前フレームの３次元情報と、現フレームの３次元情報との重なり部分を特定する。３次元モデル情報１６１と、前フレームの３次元情報と、現フレームの３次元情報との重なり部分は、重なり部分Ｐ３に対応する。第３判定部１７４は、重なり部分Ｐ３の大きさが第２閾値以上であるか否かを判定し、判定結果を、選択部１７５に出力する。
【００５１】
選択部１７５は、第１判定部１７２の判定結果、第２判定部１７３の判定結果、第３判定部１７４の判定結果を取得し、各判定結果を基にして、３次元モデル情報１６１と位置合わせを行う３次元情報の部分集合を選択する処理部である。選択部１７５は、選択した結果の情報を、位置合わせ部１７６に出力する。以下において、選択部１７５の具体的な処理について説明する。
【００５２】
まず、選択部１７５は、第１判定部１７２の判定結果を参照し、３次元モデル情報１６１と前フレームの３次元情報との重なり部分を判定し、重なり部分が第１閾値未満である場合に、第１位置合わせ処理を実行すると判定する。第１位置合わせ処理では、重なり部分Ｐ３およびＰ４を組み合わせた３次元情報を用いて、位置合わせ処理を実行することになる。
【００５３】
選択部１７５は、上記判定において、第１位置合わせ処理を実行しないと判定した場合には、第２判定部１７３の判定結果を参照して判定を行う。具体的に、選択部１７５は、前フレームから現フレームまでのカメラの移動量が、所定移動量以上であるか否かを判定する。選択部１７５は、前フレームから現フレームまでのカメラの移動量が、所定移動量以上である場合には、第２位置合わせ処理を実行すると判定する。第２位置合わせ処理では、重なり部分Ｐ３およびＰ４を組み合わせた３次元情報を用いて、位置合わせ処理を実行することになる。
【００５４】
選択部１７５は、前フレームから現フレームまでのカメラの移動量が、所定移動量未満である場合には、選択部１７５は、更に、第３判定部１７４の判定結果を参照して判定を行う。選択部１７５は、３次元モデル情報１６１と、前フレームの３次元情報と、現フレームの３次元情報との重なり部分が、第２閾値未満である場合に、第２位置合わせ処理を実行すると判定する。一方、選択部１７５は、３次元モデル情報と、前フレームの３次元情報と、現フレームの３次元情報との重なり部分が、第２閾値以上である場合には、第３位置合わせを実行すると判定する。第３位置合わせ処理では、重なり部分Ｐ３の３次元情報を用いて、位置合わせを実行する。
【００５５】
位置合わせ部１７６は、選択部１７５の判定結果を基にして、第１位置合わせ処理、第２位置合わせ処理、第３位置合わせ処理を実行する処理部である。位置合わせ部１７６は、現フレームの３次元情報の位置合わせ結果を、画面生成部１７７に出力する。なお、位置合わせ部１７６は、前フレームの３次元情報が存在しない、最初の位置合わせ処理については、第１位置合わせ処理を実行する。
【００５６】
第１位置合わせ処理について説明する。位置合わせ部１７６は、３次元モデル情報１６１と、現フレームの３次元情報とを直接比較して、３次元モデル情報１６１と３次元情報との位置合わせを簡易的に実行する。例えば、位置合わせ部１７６は、現フレームの３次元情報と、３次元モデル情報１６１との位置合わせを、ＩＣＰ（Iterative  Closest  Point）を用いて位置合わせする。
【００５７】
位置合わせ部１７６は、簡易的に位置合わせをした結果を基に、３次元モデル情報１６１と、現フレームの３次元情報と、前フレームの３次元情報との重なり部分を比較して、重なり部分Ｐ３およびＰ４を特定する。位置合わせ部１７６は、前フレームの３次元情報の位置合わせ結果を保持しているものとする。
【００５８】
位置合わせ部１７６は、重なり部分Ｐ３およびＰ４を組み合わせた３次元情報と、３次元モデル情報１６１とを比較して、重なり部分Ｐ３およびＰ４の位置合わせを実行する。位置合わせ部１７６は、重なり部分Ｐ３およびＰ４の３次元情報と一致する３次元モデル情報１６１の領域を特定し、一致した際の位置姿勢を、現フレームの３次元情報の位置であると判定する。
【００５９】
図６は、位置合わせ部の処理を説明するための図である。図６に示す例では、３次元モデル情報１６１と、前フレームの３次元情報Ｃｉと、現フレームの３次元情報Ｃｊとを示す。位置合わせ部１７６は、３次元モデル情報１６１、３次元情報Ｃｉ、３次元情報Ｃｊを比較して、重なり部分Ｐ３およびＰ４を特定する。例えば、３次元情報Ｃｉは、３次元モデル情報１６１の３次元情報１６１Ｃｉ部分に対応させる。３次元情報Ｃｊは、３次元モデル情報１６１の３次元情報１６１Ｃｊ部分に対応させる。
【００６０】
第２位置合わせ処理について説明する。位置合わせ部１７６は、前フレームの３次元情報の位置合わせ結果と、カメラの移動量を手がかりに、現フレームの３次元情報の３次元モデル情報１６１上の位置を、間接的に求めることで、現フレームの３次元情報の位置合わせを行う。
【００６１】
位置合わせ部１７６は、間接的に求めた位置合わせ結果を基にして、３次元モデル情報１６１と、現フレームの３次元情報と、前フレームの３次元情報との重なり部分を比較して、重なり部分Ｐ３およびＰ４を特定する。
【００６２】
位置合わせ部１７６は、重なり部分Ｐ３およびＰ４を組み合わせた３次元情報と、３次元モデル情報１６１とを比較して、重なり部分Ｐ３およびＰ４の位置合わせを実行する。位置合わせ部１７６は、重なり部分Ｐ３およびＰ４の３次元情報と一致する３次元モデル情報１６１の領域を特定し、一致した位置姿勢を、現フレームの３次元情報の位置であると判定する。
【００６３】
第３位置合わせ処理について説明する。位置合わせ部１７６は、前フレームの３次元情報の位置合わせ結果と、カメラの移動量を手がかりに、現フレームの３次元情報の３次元モデル情報１６１上の位置を間接的に求めることで、現フレームの３次元情報の位置合わせを行う。
【００６４】
位置合わせ部１７６は、間接的に求めた位置合わせ結果を基にして、現フレームの３次元情報と、前フレームの位置合わせで求めた３次元モデル情報１６１と前フレームの３次元情報との重なり部分と、を比較して、重なり部分Ｐ３を特定する。
【００６５】
位置合わせ部１７６は、重なり部分Ｐ３の３次元情報と、３次元モデル情報１６１とを比較して、重なり部分Ｐ３の位置合わせを実行する。位置合わせ部１７６は、重なり部分Ｐ３の３次元情報と一致する３次元モデル情報１６１の領域を特定し、一致した位置姿勢を、現フレームの３次元情報の位置であると判定する。
【００６６】
位置合わせ部１７６は、上記の第１位置合わせ処理、第２位置合わせ処理、または、第３位置合わせ処理を実行した後に、重なり部分Ｐ３および重なり部分Ｐ４を再抽出し、抽出した重なり部分Ｐ３，Ｐ４の情報を、重なり部分情報１６３に登録する。
【００６７】
図４の説明に戻る。画面生成部１７７は、位置合わせ部１７６から取得した現フレームの位置合わせ結果を基にして、表示画面を生成する処理部である。例えば、画面生成部１７７は、位置合わせ結果から、画像処理装置１００の位置姿勢を推定し、撮影画像に付加情報を重畳することで、表示画面を生成する。
【００６８】
図７は、表示画面の一例を示す図である。図７に示す例では、表示画面６０には、撮影画像６０ａと、３次元モデル情報１６１を正面から見た画面６０ｂとが配置されている。また、撮影画像６０ａには、付加情報６１，６２が重畳されている。画面生成部１７７は、生成した表示画面６０の情報を、遠隔支援者端末２００に通知する。
【００６９】
次に、本実施例に係る画像処理装置１００の処理手順について説明する。図８および図９は、本実施例に係る画像処理装置の処理手順を示すフローチャートである。図８に示すように、画像処理装置１００の取得部１７１は、３次元モデル情報１６１を取得し（ステップＳ１０１）、３次元情報を取得する（ステップＳ１０２）。
【００７０】
画像処理装置１００の位置合わせ部１７６は、最初の処理であるか否かを判定する（ステップＳ１０３）。位置合わせ部１７６は、最初の処理である場合には（ステップＳ１０３，Ｙｅｓ）、図９のステップＳ１１４に移行する。一方、位置合わせ部１７６は、最初の処理でない場合には（ステップＳ１０３，Ｎｏ）、ステップＳ１０４に移行する。
【００７１】
画像処理装置１００の第１判定部１７２は、前フレームの３次元情報と、３次元モデル情報１６１との重なり部分（Ｐ２＋Ｐ３）を重なり部分情報１６３から読み込む（ステップＳ１０４）。第１判定部１７２は、重なり部分（Ｐ２＋Ｐ３）の大きさが第１閾値以上であるか否かを判定する（ステップＳ１０５）。重なり部分（Ｐ２＋Ｐ３）の大きさが第１閾値以上でない場合には（ステップＳ１０５，Ｎｏ）、図９のステップＳ１１４に移行する。一方、重なり部分（Ｐ２＋Ｐ３）の大きさが第１閾値以上である場合には（ステップＳ１０５，Ｙｅｓ）、ステップＳ１０６に移行する。
【００７２】
画像処理装置１００の第２判定部１７３は、前フレームの３次元情報と、現フレームの３次元情報とを基にして、カメラの移動量を簡易的に算出する（ステップＳ１０６）。第２判定部１７３は、カメラの移動量が所定移動量未満であるか否かを判定する（ステップＳ１０７）。カメラの移動量が所定移動量未満でない場合には（ステップＳ１０７，Ｎｏ）、図９のステップＳ１１５に移行する。一方、カメラの移動量が所定移動量未満である場合には（ステップＳ１０７，Ｙｅｓ）、ステップＳ１０８に移行する。
【００７３】
画像処理装置１００の第３判定部１７４は、現フレームの３次元情報を３次元モデル情報１６１に投影し、重なり部分（Ｐ２＋Ｐ３）と、現フレームの３次元情報との重なり部分（Ｐ３）を算出する（ステップＳ１０８）。
【００７４】
第３判定部１７４は、重なり部分（Ｐ３）の大きさが第２閾値以上であるか否かを判定する（ステップＳ１０９）。重なり部分（Ｐ３）の大きさが第２閾値以上でない場合には（ステップＳ１０９，Ｎｏ）、図９のステップＳ１１５に移行する。一方、重なり部分（Ｐ３）の大きさが第２閾値以上である場合には（ステップＳ１０９，Ｙｅｓ）、ステップＳ１１０に移行する。
【００７５】
画像処理装置１００の位置合わせ部１７６は、前フレームの３次元情報と３次元モデル情報１６１との位置関係、カメラの移動量に基づいて、重なり部分（Ｐ３）を、３次元モデル情報１６１に位置合わせする（ステップＳ１１０）。
【００７６】
位置合わせ部１７６は、重なり部分（Ｐ３＋Ｐ４）を再度抽出し（ステップＳ１１１）、重なり部分（Ｐ３＋Ｐ４）の情報を、重なり部分情報１６３に格納する（ステップＳ１１２）。画像処理装置１００の画面生成部１７７は、表示画面を生成し（ステップＳ１１３）、ステップＳ１０２に移行する。
【００７７】
図９のステップＳ１１４について説明する。位置合わせ部１７６は、３次元モデル情報１６１と現フレームの３次元情報とを比較して、３次元情報の位置合わせを行い（ステップＳ１１４）、ステップＳ１１６に移行する。
【００７８】
図９のステップＳ１１５について説明する。位置合わせ部１７６は、前フレームの３次元情報の位置合わせ結果と、カメラの移動量を手がかりにして、現フレームの３次元情報の３次元モデル情報１６１上の位置を間接的に求め（ステップＳ１１５）、ステップＳ１１６に移行する。
【００７９】
位置合わせ部１７６は、現フレームの３次元情報と３次元モデル情報１６１との重なり部分（Ｐ３＋Ｐ４）を算出する（ステップＳ１１６）。ステップＳ１１６において、位置合わせ部１７６は、重なり部分（Ｐ３＋Ｐ４）と、それ以外の部分（Ｐ６＋Ｐ７）とを分割する。位置合わせ部１７６は、重なり部分（Ｐ３＋Ｐ４）を、３次元モデル情報１６１に精密に位置合わせし（ステップＳ１１７）、図８のステップＳ１１１に移行する。
【００８０】
次に、本実施例に係る画像処理装置１００の効果について説明する。画像処理装置１００は、３次元モデル情報１６１と、前フレームの３次元情報と、現フレームの３次元情報との重なり部分の大小を判定し、判定結果を基にして、３次元モデル情報１６１と位置合わせを行う３次元情報の部分集合を取捨選択する。このため、画像処理装置１００によれば、少ない演算量で、正確な位置合わせを行うことができる。
【００８１】
画像処理装置１００は、重なり部分（Ｐ２＋Ｐ３）が、第１閾値以上であり、かつ、カメラの移動量が所定移動量未満であり、かつ、重なり部分（Ｐ３）が第２閾値以上である場合には、重なり部分（Ｐ３）を用いて、位置合わせを行う。このため、３次元情報の全てを用いる場合と比較して、演算量を少なくすることができる。また、前フレームと現フレームとが余り移動しておらず、演算対象の３次元情報量をＰ３に限定しても、精度を保つことができる。
【００８２】
画像処理装置１００は、カメラの移動量が所定移動量以上である場合、または、重なり部分（Ｐ３）が第２閾値未満である場合には、重なり部分（Ｐ３＋Ｐ４）を用いて、位置合わせを行う。このため、カメラ移動量が大きめの場合や、重なり部分が少ない場合には、位置合わせを行う重なり部分を大きめに設定することで、精度が低下することを防止できる。また、全ての３次元情報よりも小さい重なり領域（Ｐ３＋Ｐ４）により位置合わせを行うので、演算量を削減することができる。
【００８３】
次に、上記実施例に示した画像処理装置１００と同様の機能を実現する位置合わせプログラムを実行するコンピュータの一例について説明する。図１０は、位置合わせプログラムを実行するコンピュータの一例を示す図である。
【００８４】
図１０に示すように、コンピュータ３００は、各種演算処理を実行するＣＰＵ３０１と、ユーザからのデータの入力を受け付ける入力装置３０２と、ディスプレイ３０３とを有する。また、コンピュータ３００は、記憶媒体からプログラム等を読み取る読み取り装置３０４と、ネットワークを介して他のコンピュータとの間でデータの授受を行うインターフェース装置３０５と、カメラ３０６と、距離センサ３０７とを有する。また、コンピュータ３００は、各種情報を一時記憶するＲＡＭ３０８と、ハードディスク装置３０９とを有する。そして、各装置３０１〜３０９は、バス３１０に接続される。
【００８５】
ハードディスク装置３０９は、判定プログラム３０９ａ、選択プログラム３０９ｂを有する。ＣＰＵ３０１は、判定プログラム３０９ａ、選択プログラム３０９ｂを読み出してＲＡＭ３０８に展開する。
【００８６】
判定プログラム３０９ａは、判定プロセス３０８ａとして機能する。選択プログラム３０９ｂは、選択プロセス３０８ｂとして機能する。判定プロセス３０８ａの処理は、第１判定部１７２、第２判定部１７３、第３判定部１７４の処理に対応する。選択プロセス３０８ｂの処理は、選択部１７５の処理に対応する。
【００８７】
なお、判定プログラム３０９ａ、選択プログラム３０９ｂについては、必ずしも最初からハードディスク装置３０９に記憶させておかなくても良い。例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ３００が各プログラム３０９ａ，３０９ｂを読み出して実行するようにしてもよい。
【００８８】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００８９】
（付記１）予め指定された作業空間に含まれる物体の形状をモデリングした３次元モデルと、前フレームにおいて距離センサから取得した３次元情報を示す第１情報との重なりを判定する第１判定部と、
前フレームから現フレームまでの間に移動したカメラの移動量を判定する第２判定部と、
前記３次元モデルと、前記第１情報と、現フレームにおいて前記距離センサから取得した３次元情報を示す第２情報との重なりを判定する第３判定部と、
前記第１判定部の判定結果と、前記第２判定部の判定結果と、前記第３判定部の判定結果とを基にして、前記３次元モデルと位置合わせを行う３次元情報の部分集合を選択する選択部と
を有することを特徴とする位置合わせ装置。
【００９０】
（付記２）前記選択部は、前記３次元モデルと前記第１情報との重なりが、第１閾値以上であり、かつ、前記カメラの移動量が所定移動量未満であり、かつ、前記３次元モデルと前記第１情報と前記第２情報との重なりが第２閾値以上である場合には、前記３次元モデルと前記第１情報と前記第２情報とが共通して含まれる３次元情報を、前記３次元モデルと位置合わせを行う部分集合として選択することを特徴とする付記１に記載の位置合わせ装置。
【００９１】
（付記３）前記選択部は、前記カメラの移動量が所定移動量以上である場合、または、前記３次元モデルと前記第１情報と前記第２情報との重なりが第２閾値未満である場合には、前記３次元モデルと前記第１情報と前記第２情報とに共通して含まれる３次元情報と、前記３次元モデルおよび前記第２情報に共通して含まれる３次元情報とを、前記３次元モデルと位置合わせを行う部分集合として選択することを特徴とする付記１または２に記載の位置合わせ装置。
【００９２】
（付記４）コンピュータが実行する位置合わせ方法であって、
予め指定された作業空間に含まれる物体の形状をモデリングした３次元モデルと、前フレームにおいて距離センサから取得した３次元情報を示す第１情報との重なりを判定し、
前フレームから現フレームまでの間に移動したカメラの移動量を判定し、
前記３次元モデルと、前記第１情報と、現フレームにおいて前記距離センサから取得した３次元情報を示す第２情報との重なりを判定し、
判定結果を基にして、前記３次元モデルと位置合わせを行う３次元情報の部分集合を選択する
処理を実行することを特徴とする位置合わせ方法。
【００９３】
（付記５）前記選択する処理は、前記３次元モデルと前記第１情報との重なりが、第１閾値以上であり、かつ、前記カメラの移動量が所定移動量未満であり、かつ、前記３次元モデルと前記第１情報と前記第２情報との重なりが第２閾値以上である場合には、前記３次元モデルと前記第１情報と前記第２情報とに共通して含まれる３次元情報を、前記３次元モデルと位置合わせを行う部分集合として選択することを特徴とする付記４に記載の位置合わせ方法。
【００９４】
（付記６）前記選択する処理は、前記カメラの移動量が所定移動量以上である場合、または、前記３次元モデルと前記第１情報と前記第２情報との重なりが第２閾値未満である場合には、前記３次元モデルと前記第１情報と前記第２情報とに共通して含まれる３次元情報と、前記３次元モデルおよび前記第２情報に共通して含まれる３次元情報とを、前記３次元モデルと位置合わせを行う部分集合として選択することを特徴とする付記４または５に記載の位置合わせ方法。
【００９５】
（付記７）コンピュータに、
予め指定された作業空間に含まれる物体の形状をモデリングした３次元モデルと、前フレームにおいて距離センサから取得した３次元情報を示す第１情報との重なりを判定し、
前フレームから現フレームまでの間に移動したカメラの移動量を判定し、
前記３次元モデルと、前記第１情報と、現フレームにおいて前記距離センサから取得した３次元情報を示す第２情報との重なりを判定し、
判定結果を基にして、前記３次元モデルと位置合わせを行う３次元情報の部分集合を選択する
処理を実行させることを特徴とする位置合わせプログラム。
【００９６】
（付記８）前記選択する処理は、前記３次元モデルと前記第１情報との重なりが、第１閾値以上であり、かつ、前記カメラの移動量が所定移動量未満であり、かつ、前記３次元モデルと前記第１情報と前記第２情報との重なりが第２閾値以上である場合には、前記３次元モデルと前記第１情報と前記第２情報とに共通して含まれる３次元情報を、前記３次元モデルと位置合わせを行う部分集合として選択することを特徴とする付記７に記載の位置合わせプログラム。
【００９７】
（付記９）前記選択する処理は、前記カメラの移動量が所定移動量以上である場合、または、前記３次元モデルと前記第１情報と前記第２情報との重なりが第２閾値未満である場合には、前記３次元モデルと前記第１情報と前記第２情報とに共通して含まれる３次元情報と、前記３次元モデルおよび前記第２情報に共通して含まれる３次元情報とを、前記３次元モデルと位置合わせを行う部分集合として選択することを特徴とする付記７または８に記載の位置合わせプログラム。
【符号の説明】
【００９８】
１００    画像処理装置
１７０    制御部
１７１    取得部
１７２    第１判定部
１７３    第２判定部
１７４    第３判定部
１７５    選択部
１７６    位置合わせ部
１７７    画面生成部
２００    遠隔支援者端末
【図１】
2017062748.tif 000003
【図２】
2017062748.tif 000004
【図３】
2017062748.tif 000005
【図４】
2017062748.tif 000006
【図５】
2017062748.tif 000007
【図６】
2017062748.tif 000008
【図７】
2017062748.tif 000009
【図８】
2017062748.tif 000010
【図９】
2017062748.tif 000011
【図１０】
2017062748.tif 000012
【図１１】
2017062748.tif 000013