(57)【要約】【課題】作業効率を向上させることができる移動支援装置、方法及びプログラムを提供する。【解決手段】実施形態の移動支援装置は、撮像部と、第１算出部と、第２算出部と、第３算出部と、出力部と、を備える。撮像部は、第１視点で対象物の第１画像を撮像し、第２視点に移動して対象物の第２画像を撮像する。第１算出部は、第１画像及び第２画像を用いて、第１視点での撮像部の第１位置及び第１姿勢を算出するとともに、第２視点での撮像部の第２位置及び第２姿勢を算出する。第２算出部は、第１位置、第１姿勢、第２位置、及び第２姿勢を用いて、第１視点での撮像部の第１光軸に基づく第１軸と第２視点での撮像部の第２光軸に基づく第２軸とが成す第１角を算出する。第３算出部は、第１角の角度を増加させる方向に位置する次撮像を行う次視点を算出する。出力部は、第２視点から次視点の方向への撮像部の移動を促す情報を出力する。【選択図】図１
2016061654.tif 000002
【特許請求の範囲】
【請求項１】
第１視点で対象物の第１画像を撮像するとともに、前記第１視点から第２視点に移動して前記対象物の第２画像を撮像する撮像部と、
前記第１画像及び前記第２画像を用いて、前記第１視点での前記撮像部の第１位置及び第１姿勢を算出するとともに、前記第２視点での前記撮像部の第２位置及び第２姿勢を算出する第１算出部と、
前記第１位置、前記第１姿勢、前記第２位置、及び前記第２姿勢を用いて、前記第１視点での前記撮像部の第１光軸に基づく第１軸と前記第２視点での前記撮像部の第２光軸に基づく第２軸とが成す第１角を算出する第２算出部と、
前記第１軸と前記第２軸との交点を基準に前記第２軸を回転させることで前記第１角の角度を増加させる方向に位置する次撮像を行う次視点を算出する第３算出部と、
前記第２視点から前記次視点の方向への前記撮像部の移動を促す情報を出力する出力部と、
を備える移動支援装置。
【請求項２】
前記第１軸は、前記第１光軸と前記第２光軸との外積に対して垂直となる面に前記第１光軸を射影した軸であり、
前記第２軸は、前記面に前記第２光軸を射影した軸である請求項１に記載の移動支援装置。
【請求項３】
前記第３算出部は、前記第１軸と、前記次視点と前記交点とを結ぶ線と、が成す第２角の角度分、前記第１軸の方向ベクトルを前記第１角の角度を増加させる方向に回転させることで、前記次視点を算出する請求項１に記載の移動支援装置。
【請求項４】
前記出力部は、前記第２視点から前記次視点への前記撮像部の移動を促す情報を出力する請求項１に記載の移動支援装置。
【請求項５】
前記撮像部は、前記第２視点から実際に移動した第３視点で前記対象物の第３画像を撮像し、
前記第１算出部は、前記第１画像及び前記第３画像を用いて、前記第３視点での前記撮像部の第３位置及び第３姿勢を算出するとともに、前記第２画像及び前記第３画像を用いて、前記第３視点での前記撮像部の第４位置及び第４姿勢を算出し、
前記第２算出部は、前記第１位置、前記第１姿勢、前記第３位置、及び前記第３姿勢を用いて、前記第１軸と、前記第３視点での前記撮像部の第３光軸に基づく第３軸と、が成す第３角を算出し、
前記出力部は、前記第３角の角度が前記第１角の角度より小さい場合、又は前記第４角が算出できない場合、前記撮像部の移動が不適切である旨を出力する請求項１に記載の移動支援装置。
【請求項６】
前記第３軸は、前記第１光軸と前記第２光軸との外積に対して垂直となる面に前記第３光軸を射影した軸である請求項５に記載の移動支援装置。
【請求項７】
前記出力部は、更に、前記次視点の方向への前記撮像部の移動を促す情報を出力する請求項５に記載の移動支援装置。
【請求項８】
前記第１画像上の複数の第１特徴点の数及び分布の少なくともいずれかに基づいて、前記撮像部の位置及び姿勢の算出を開始するか否かを判定する第１判定部と、
開始すると判定された場合、前記第１画像上での前記複数の第１特徴点の重心位置を算出する第４算出部と、を更に備え、
前記出力部は、前記重心位置に基づく方向への前記撮像部の移動を促す情報を出力する請求項１に記載の移動支援装置。
【請求項９】
前記出力部は、前記重心位置が前記第１画像の中心よりも右側に位置する場合、反時計回り方向への前記撮像部の移動を促す情報を出力し、前記重心位置が前記第１画像の中心よりも左側に位置する場合、時計回り方向への前記撮像部の移動を促す情報を出力する請求項８に記載の移動支援装置。
【請求項１０】
前記出力部は、開始しないと判定された場合、前記第１画像の再撮像を促す情報を出力する請求項８に記載の移動支援装置。
【請求項１１】
前記第１判定部は、前記数及び前記分布の少なくともいずれかが第１閾値を超えた場合に、前記撮像部の位置及び姿勢の算出を開始すると判定する請求項８に記載の移動支援装置。
【請求項１２】
前記第１算出部は、前記第１画像上の複数の第１特徴点それぞれと前記第２画像上の複数の第２特徴点それぞれとを対応付けることで、前記第１位置、前記第１姿勢、前記第２位置、及び前記第２姿勢を算出し、
対応付けられた第１特徴点及び第２特徴点の組毎に、当該第１特徴点と前記第１視点とを結ぶ線と、当該第２特徴点と前記第１視点とを結ぶ線と、が成す第４角、及び当該第１特徴点と前記第２視点とを結ぶ線と、当該第２特徴点と前記第２視点とを結ぶ線と、が成す第５角を算出する第５算出部と、
算出された前記複数の第４角及び前記複数の第５角に基づいて、前記撮像部の位置及び姿勢の算出を終了するか否かを判定する第２判定部と、を更に備え、
前記出力部は、終了すると判定された場合、その旨を出力する請求項１に記載の移動支援装置。
【請求項１３】
前記第２判定部は、前記複数の第４角及び前記複数の第５角の角度の最小値、平均値、及び中央値の少なくともいずれかが第２閾値を超えた場合、前記撮像部の位置及び姿勢の算出を終了すると判定する請求項１２に記載の移動支援装置。
【請求項１４】
第１視点で対象物の第１画像を撮像するとともに、前記第１視点から第２視点に移動して前記対象物の第２画像を撮像する撮像ステップと、
前記第１画像及び前記第２画像を用いて、前記第１視点での前記撮像部の第１位置及び第１姿勢を算出するとともに、前記第２視点での前記撮像部の第２位置及び第２姿勢を算出する第１算出ステップと、
前記第１位置、前記第１姿勢、前記第２位置、及び前記第２姿勢を用いて、前記第１視点での前記撮像部の第１光軸に基づく第１軸と前記第２視点での前記撮像部の第２光軸に基づく第２軸とが成す第１角を算出する第２算出ステップと、
前記第１軸と前記第２軸との交点を基準に前記第２軸を回転させることで前記第１角の角度を増加させる方向に位置する次撮像を行う次視点を算出する第３算出ステップと、
前記第２視点から前記次視点の方向への前記撮像部の移動を促す情報を出力する出力ステップと、
を含む移動支援方法。
【請求項１５】
第１視点で対象物の第１画像を撮像するとともに、前記第１視点から第２視点に移動して前記対象物の第２画像を撮像する撮像ステップと、
前記第１画像及び前記第２画像を用いて、前記第１視点での前記撮像部の第１位置及び第１姿勢を算出するとともに、前記第２視点での前記撮像部の第２位置及び第２姿勢を算出する第１算出ステップと、
前記第１位置、前記第１姿勢、前記第２位置、及び前記第２姿勢を用いて、前記第１視点での前記撮像部の第１光軸に基づく第１軸と前記第２視点での前記撮像部の第２光軸に基づく第２軸とが成す第１角を算出する第２算出ステップと、
前記第１軸と前記第２軸との交点を基準に前記第２軸を回転させることで前記第１角の角度を増加させる方向に位置する次撮像を行う次視点を算出する第３算出ステップと、
前記第２視点から前記次視点の方向への前記撮像部の移動を促す情報を出力する出力ステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、移動支援装置、方法及びプログラムに関する。
【背景技術】
【０００２】
単眼カメラを移動させて視点を変えながら対象物を撮像し、撮像した視点が異なる複数の画像を用いて、各視点の３次元位置及び３次元姿勢、並びに対象物の３次元形状を算出することを繰り返すことで、広域な対象物の３次元形状を算出するvisual  mono-SLAM（Simultaneous  localization  and  mapping）と呼ばれる手法が知られている。
【０００３】
例えば、特許文献１には、次の画像を撮像する次視点をユーザに教示するため、移動した撮像部の位置が次視点の条件を満たすと、ガイダンスを行う技術が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２４６１１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述したような従来技術では、撮像部の位置が次視点の条件を満たさなければガイダンスが行われない。このため、次視点がどのあたりにあるかを推測できない熟練度の低いユーザの場合、撮像部を次視点に移動させるために撮像部をどの方向に移動させればいいか判断できず、作業効率を向上できない。
【０００６】
本発明が解決しようとする課題は、作業効率を向上させることができる移動支援装置、方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００７】
実施形態の移動支援装置は、撮像部と、第１算出部と、第２算出部と、第３算出部と、出力部と、を備える。撮像部は、第１視点で対象物の第１画像を撮像するとともに、前記第１視点から第２視点に移動して前記対象物の第２画像を撮像する。第１算出部は、前記第１画像及び前記第２画像を用いて、前記第１視点での前記撮像部の第１位置及び第１姿勢を算出するとともに、前記第２視点での前記撮像部の第２位置及び第２姿勢を算出する。第２算出部は、前記第１位置、前記第１姿勢、前記第２位置、及び前記第２姿勢を用いて、前記第１視点での前記撮像部の第１光軸に基づく第１軸と前記第２視点での前記撮像部の第２光軸に基づく第２軸とが成す第１角を算出する。第３算出部は、前記第１軸と前記第２軸との交点を基準に前記第２軸を回転させることで前記第１角の角度を増加させる方向に位置する次撮像を行う次視点を算出する。出力部は、前記第２視点から前記次視点の方向への前記撮像部の移動を促す情報を出力する。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態の移動支援装置の例を示す構成図。
【図２】第１実施形態の撮像部の移動例を示す図。
【図３】第１実施形態の光軸の例を示す図。
【図４】第１実施形態の第１角の例を示す図。
【図５】第１実施形態の第１角の例を示す図。
【図６】第１実施形態の出力例を示す図。
【図７】第１実施形態の出力例を示す図。
【図８】第１実施形態の撮像部の不適切な移動例を示す図。
【図９】第１実施形態の移動支援装置の処理例を示すフローチャート。
【図１０】第２実施形態の移動支援装置の例を示す構成図。
【図１１】第２実施形態の重心位置の例を示す図。
【図１２】第２実施形態の出力例を示す図。
【図１３】第２実施形態の移動支援装置の処理例を示すフローチャート。
【図１４】第３実施形態の移動支援装置の例を示す構成図。
【図１５】第３実施形態の第４角及び第５角の例を示す図。
【図１６】第３実施形態の移動支援装置の処理例を示すフローチャート。
【図１７】各実施形態の移動支援装置のハードウェア構成例を示す図。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照しながら、実施形態を詳細に説明する。
【００１０】
（第１実施形態）
図１は、第１実施形態の移動支援装置１０の一例を示す構成図である。図１に示すように、移動支援装置１０は、撮像部１１と、第１算出部１３と、第２算出部１５と、第３算出部１７と、出力制御部１９と、出力部２１とを、備える。
【００１１】
撮像部１１は、例えば、ＣＣＤ（Charge  Coupled  Device）やＣＭＯＳ（Complementary  Metal-Oxide  Semiconductor）を画像センサに用いた単眼カメラなどの撮像装置により実現できる。第１算出部１３、第２算出部１５、第３算出部１７、及び出力制御部１９は、例えば、ＣＰＵ（Central  Processing  Unit）などの処理装置にプログラムを実行させること、即ち、ソフトウェアにより実現してもよいし、ＩＣ（Integrated  Circuit）などのハードウェアにより実現してもよいし、ソフトウェア及びハードウェアを併用して実現してもよい。出力部２１は、例えば、液晶ディスプレイやタッチパネルディスプレイなどの表示装置により実現してもよいし、スピーカなどの音声出力装置により実現してもよいし、ランプやＬＥＤ（Light  Emitting  Diode）などの発光装置により実現してもよいし、これらを併用して実現してもよい。
【００１２】
移動支援装置１０は、撮像部１１を移動させて視点を変えながら対象物を撮像し、対象物の３次元形状を計測（算出）する計測装置などに適用できる。
【００１３】
撮像部１１は、ユーザにより移動させられ、視点を変えながら対象物を撮像する。例えば、撮像部１１は、図２に示すように、第１視点５１で対象物４０の第１画像を撮像するとともに、第１視点５１から第２視点５２に移動して対象物４０の第２画像を撮像する。
【００１４】
第１算出部１３は、撮像部１１により新たな視点で撮像が行われる毎に、撮像部１１により異なる視点で撮像された複数の画像（前回までに撮像された１以上の画像と新たに撮像された画像）に対し、各画像上の特徴点を対応付けることで、各視点での撮像部１１の３次元位置及び３次元姿勢を算出する。これにより、対象物のうち複数の画像内に写る部分の３次元形状も計測（算出）される。この３次元形状の計測手法は、Structure  from  motionなどにより実現できる。
【００１５】
例えば、第１算出部１３は、撮像部１１により撮像された第１画像及び第２画像を用いて、第１視点５１での撮像部１１の第１位置及び第１姿勢を算出するとともに、第２視点５２での撮像部１１の第２位置及び第２姿勢を算出する。第１実施形態では、第１位置及び第２位置は、３次元上の位置であり、第１姿勢及び第２姿勢は、３次元上の姿勢であることを想定しているが、これに限定されるものではない。
【００１６】
具体的には、第１算出部１３は、第１画像から複数の第１特徴点を検出するとともに第２画像から複数の第２特徴点を検出し、第１画像上の複数の第１特徴点それぞれと第２画像上の複数の第２特徴点それぞれとを対応付けることで、第１位置、第１姿勢、第２位置、及び第２姿勢を算出する。
【００１７】
第１特徴点及び第２特徴点は、画像上の特徴を表す点であり、例えば、画像上の局所的な輝度変化が特徴的な画素などが挙げられる。また、複数の第１特徴点それぞれと複数の第２特徴点それぞれとの対応付けは、周辺領域のテクスチャが類似する第１特徴点及び第２特徴点を対応付けることで行う。そして、複数の第１特徴点それぞれと複数の第２特徴点それぞれとが対応付けられた第１画像及び第２画像に対し、例えば、Ｄａｖｉｄ  Ｎｉｓｔｅｒ，“Ａｎ  ｅｆｆｉｃｉｅｎｔ  ｓｏｌｕｔｉｏｎ  ｔｏ  ｔｈｅ  ｆｉｖｅ−ｐｏｉｎｔ  ｒｅｌａｔｉｖｅ  ｐｏｓｅ  ｐｒｏｂｌｅｍ，”ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｐａｔｔｅｒｎ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｍａｃｈｉｎｅ  Ｉｎｔｅｌｌｉｇｅｎｃｅ，Ｖｏｌｕｍｅ．２６，  Ｉｓｓｕｅ．６，ｐｐ．７５６−７７０，２００４．に記載された手法を用いることで、第１位置、第１姿勢、第２位置、及び第２姿勢、並びに対象物５０のうち第１画像及び第２画像に写る部分の３次元形状が算出できる。
【００１８】
第２算出部１５は、第１算出部１３により算出された各視点の３次元位置及び３次元姿勢を用いて、各視点での撮像部１１の光軸に基づく軸同士が成す第１角を算出する。例えば、第２算出部１５は、第１算出部１３により算出された第１位置、第１姿勢、第２位置、及び第２姿勢を用いて、第１視点５１での撮像部１１の第１光軸に基づく第１軸と第２視点５２での撮像部１１の第２光軸に基づく第２軸とが成す第１角を算出する。
【００１９】
光軸は、撮像部１１の光学中心から焦点を通る直線であり、ある視点での撮像部１１の３次元位置及び３次元姿勢が算出されることで求まる。
【００２０】
例えば、第１視点５１での３次元位置が３次元座標Ｘ１で表され、３次元姿勢が３次元方向ベクトルＶ１で表されるとする。この場合、図３に示すように、第１視点５１での撮像部１１の光学中心６１の３次元位置がＸ１、第１光軸８１の３次元向きがＶ１となるため、第１視点５１での３次元位置及び３次元姿勢から第１光軸８１を求めることができる。
【００２１】
また例えば、第２視点５２での３次元位置が３次元座標Ｘ２で表され、３次元姿勢が３次元方向ベクトルＶ２で表されるとする。この場合、図３に示すように、第２視点５２での撮像部１１の光学中心６２の３次元位置がＸ２、第２光軸８２の３次元向きがＶ２となるため、第２視点５２での３次元位置及び３次元姿勢から第２光軸８２を求めることができる。
【００２２】
なお、第１実施形態では、視点と光学中心とが一致していることを想定しているが、これに限定されるものではない。
【００２３】
また、各視点での撮像部１１の光軸に基づく軸は、具体的には、各光軸が成す外積に対して垂直となる面に各光軸を射影した軸である。但し、各光軸が成す外積に対して垂直となる面上に各光軸が元々位置する場合、各視点での撮像部１１の光軸に基づく軸は、各視点での撮像部１１の光軸そのものとなる。
【００２４】
例えば、第１光軸８１に基づく第１軸及び第２光軸に基づく第２軸であれば、第１光軸８１と第２光軸８２との外積に対して垂直となる面に第１光軸を射影した軸が第１軸となり、当該面に第２光軸を射影した軸が第２軸となる。
【００２５】
例えば、図４に示す例の場合、第１光軸８１と第２光軸８２との外積は、第１光軸８１と第２光軸８２とを結ぶ最短の直線９２の方向ベクトルを表す。このため、第１光軸８１と第２光軸８２との外積に対して垂直となる面は、光学中心６１と、光学中心６２と、第１光軸８１と第２光軸８２とを結ぶ最短の直線９２の中央点９１と、が位置する面とすることができる。この場合、第１軸８１’は、第１光軸８１を当該面に射影した軸となり、第２軸８２’は、第２光軸８２を当該面に射影した軸となる。そして、第１軸８１’の３次元方向ベクトルをＶ１’第２軸８２’の３次元方向ベクトルをＶ２’とすると、第１軸８１’と第２軸８２’とが成す第１角θ１２’は、数式（１）で求められる。
【００２６】
θ１２’＝ｃｏｓ−１（Ｖ１’・Ｖ２’／｜Ｖ１’｜｜Ｖ２’｜）      …（１）
【００２７】
なお、Ｖ１’・Ｖ２’は、Ｖ１’とＶ２’との内積を表し、｜Ｖ１’｜は、Ｖ１’のノルムを表し、｜Ｖ２’｜は、Ｖ２’のノルムを表す。
【００２８】
また例えば、図５に示す例の場合、第１光軸８１と第２光軸８２との外積は、直線９２の方向ベクトルを表す。ここで、第１光軸８１と第２光軸８２とは、直線９２上の交点９１で交わっているため、第１光軸８１と第２光軸８２との外積に対して垂直となる面は、光学中心６１と、光学中心６２と、交点９１と、が位置する面とすることができる。この場合、第１光軸８１と第２光軸８２は、当該面上に位置するため、第１軸は、第１光軸８１そのものとなり、第２軸は、第２光軸８２そのものとなり、第１光軸８１（第１軸）と第２光軸８２（第２）とが成す第１角θ１２は、数式（２）で求められる。
【００２９】
θ１２＝ｃｏｓ−１（Ｖ１・Ｖ２／｜Ｖ１｜｜Ｖ２｜）      …（２）
【００３０】
なお、Ｖ１・Ｖ２は、Ｖ１とＶ２との内積を表し、｜Ｖ１｜は、Ｖ１のノルムを表し、｜Ｖ２｜は、Ｖ２のノルムを表す。
【００３１】
第３算出部１７は、第２算出部１５により算出された第１角の角度を増加させる方向に位置する次撮像を行う次視点を算出する。例えば、第３算出部１７は、第１軸と第２軸との交点を基準に第２軸を回転させることで、第２算出部１５により算出された第１角の角度を増加させる方向に位置する次撮像を行う次視点を算出する。具体的には、第３算出部１７は、第１軸と、次視点と交点とを結ぶ線と、が成す第２角の角度分、第１軸の方向ベクトルを第１角の角度を増加させる方向に回転させることで、次視点を算出する。
【００３２】
例えば、図４に示す例の場合、第１軸８１’の３次元方向ベクトルＶ１’の回転軸を直線９２、回転中心を中央点９１とする。この場合、回転軸の方向ベクトルＡは、数式（３）で求められる。
【００３３】
Ａ＝Ｖ１×Ｖ２＝（ａｘ，  ａｙ，  ａｚ）      …（３）
【００３４】
なお、Ｖ１×Ｖ２は、Ｖ１とＶ２との外積を表す。
【００３５】
また、次視点での撮像部１１の光学中心６３と回転中心である中央点９１とを結ぶ線８３と、第１軸８１’と、が成す第２角θ１３’は、数式（４）で表わされる。
【００３６】
θ１３’＝θ１２’＋θｐ      …（４）
【００３７】
θｐは、線８３と第２軸８２’とが成す角である。
【００３８】
なお、第１実施形態では、次視点は、回転中心である中央点９１を基準に第２軸８２’を回転させることで、θ１２’を増加させる方向に位置することを想定しており、詳細には、中央点９１を基準に第２軸８２’を、θ１２’を増加させる方向に３０度程度回転させたあたりに位置することを想定しているが、これに限定されるものではない。
【００３９】
そして、回転中心である中央点９１から次視点での撮像部１１の光学中心６３方向への３次元方向ベクトルＶ３’は、ロドリゲスの公式より、数式（５）〜（７）で求められる。
【００４０】
【数１】
2016061654.tif 000003
【００４１】
Ｒは、第１軸８１’の３次元方向ベクトルＶ１’を、回転軸Ａ周りに回転させる回転行列を示す。
【００４２】
Ｒ’＝Ｉ＋ｓｉｎθ１３’／θ１２’Ｒ＋（１−ｃｏｓθ１３’）／θ１２’２Ｒ２      …（６）
【００４３】
Ｒ’は、第１軸８１’の３次元方向ベクトルＶ１’を、回転軸Ａ周りにθ１３’分回転させる回転行列を示す。
【００４４】
Ｖ３’＝Ｒ’Ｖ１’      …（７）
【００４５】
これにより、次視点が算出される。
【００４６】
なお、図５に示す例の場合については、第１軸８１’を第１光軸８１、第２軸８２’を第２光軸８２、３次元方向ベクトルＶ１’を３次元方向ベクトルＶ１、３次元方向ベクトルＶ２’を３次元方向ベクトルＶ２、３次元方向ベクトルＶ３’を３次元方向ベクトルＶ３として、図４に示す例の場合と同様の処理を行えばよいので、詳細な説明は省略する。
【００４７】
出力制御部１９は、第２視点５２から次視点の方向への撮像部１１の移動を促す情報を出力部２１に出力させる。具体的には、第２視点５２から次視点への撮像部１１の移動を促す情報を出力部２１に出力させる。
【００４８】
例えば、出力制御部１９は、図６に示すように、第１視点５１、第２視点５２、次視点５３、回転中心である中央点９１、及び第１角θ１２’（但し、θ１２の場合もある）を可視化して出力部２１に出力し、第２視点５２から次視点５３へ撮像部１１を移動させるため、即ち、第２視点５２から第１角θ１２’を増加させる方向に撮像部１１を移動させるため、反時計回り方向への移動を促すメッセージを出力してもよい。なお、出力制御部１９は、第２角θ１３’も出力部２１に出力してもよい。
【００４９】
また例えば、出力制御部１９は、図７に示すように、第２視点５２から次視点５３へ撮像部１１を移動させるため、即ち、第２視点５２から第１角θ１２’を増加させる方向に撮像部１１を移動させるため、撮像部１１の移動方向を矢印で表して出力部２１に出力してもよい。
【００５０】
また例えば、出力制御部１９は、第２視点５２から第１角θ１２’を増加させる方向に撮像部１１を移動させることを促す情報を出力部２１に出力してもよい。
【００５１】
また出力制御部１９は、撮像部１１の移動が不適切である旨を出力部２１に出力させてもよい。
【００５２】
例えば、図８に示すように、第２視点５２から撮像部１１を回転移動させて第３視点５４に移動させた結果、第２視点５２での撮像部１１の光学中心６２と第３視点５４での撮像部１１の光学中心とが一致するとする。この場合、第２視点５２で撮像した第２画像と第３視点５４で撮像した第３画像間に視差が生じないため、第３視点５４での撮像部１１の位置及び姿勢を算出できず、不適切な撮像部１１の移動となる。なお、第３視点５４は、撮像部１１が第２視点５２から実際に移動した視点であり、前述した次視点５３とは異なる視点であるとする。
【００５３】
また例えば、出力部２１で促された方向と反対方向、即ち、第２視点５２から第１角θ１２’を減少させる方向に撮像部１１を移動させて第３視点に移動させた場合、作業効率を悪化させるため、不適切な撮像部１１の移動となる。
【００５４】
また例えば、出力部２１で促された方向に撮像部１１を移動させて第３視点に移動させたとしても移動量が足りない場合、両画像間で新たに対応付けられる特徴点の数が足りないため、第３視点５４での撮像部１１の位置及び姿勢を算出できず、不適切な撮像部１１の移動となる。
【００５５】
このような場合、出力制御部１９は、撮像部１１の移動が不適切である旨を出力部２１に出力する。具体的には、撮像部１１は、第２視点５２から実際に移動した第３視点で対象物４０の第３画像を撮像する。第１算出部１３は、第１画像及び第３画像を用いて、第３視点での撮像部１１の第３位置及び第３姿勢を算出するとともに、第２画像及び第３画像を用いて、第３視点での撮像部１１の第４位置及び第４姿勢を算出する。第２算出部１５は、第１位置、第１姿勢、第３位置、及び第３姿勢を用いて、第１軸８１’と、第３視点での撮像部１１の第３光軸に基づく第３軸と、が成す第３角を算出する。第３軸は、第１光軸８１と第２光軸８２との外積に対して垂直となる面に第３光軸を射影した軸である。そして出力制御部１９は、第３角の角度が第１角θ１２’の角度より小さい場合、又は第４角が算出できない場合、撮像部１１の移動が不適切である旨を出力部２１に出力する。この際、出力制御部１９は、撮像部１１が第２視点５２に位置する際に算出した次視点の方向への撮像部１１の移動を促す情報を出力部２１に更に出力してもよい。
【００５６】
図９は、第１実施形態の移動支援装置１０で行われる処理の手順の流れの一例を示すフローチャートである。
【００５７】
まず、撮像部１１は、第ｉ視点で対象物４０の第ｉ画像を撮像する（ステップＳ１０１）。なお、ｉの初期値は１である。
【００５８】
続いて、撮像部１１は、第（１＋ｉ）視点で対象物４０の第（１＋ｉ）画像を撮像する（ステップＳ１０３）。
【００５９】
続いて、第１算出部１３は、第ｉ画像及び第（１＋ｉ）画像を用いて、第ｉ視点での撮像部１１の第ｉ位置及び第ｉ姿勢を算出するとともに、第（１＋ｉ）視点での撮像部１１の第（１＋ｉ）位置及び第（１＋ｉ）姿勢を算出する（ステップＳ１０５）。
【００６０】
続いて、第２算出部１５は、第ｉ位置、第ｉ姿勢、第（１＋ｉ）位置、及び第（１＋ｉ）姿勢を用いて、第ｉ視点での撮像部１１の第ｉ光軸に基づく第ｉ軸と第（１＋ｉ）視点での撮像部１１の第（１＋ｉ）光軸に基づく第（１＋ｉ）軸とが成す第１角を算出する（ステップＳ１０７）。
【００６１】
続いて、第３算出部１７は、第ｉ軸と第（１＋ｉ）軸との交点を基準に第（１＋ｉ）軸を回転させることで、第１角の角度を増加させる方向に位置する次撮像を行う次視点を算出する（ステップＳ１０９）。
【００６２】
続いて、出力制御部１９は、第（１＋ｉ）視点から次視点の方向への撮像部１１の移動を促す情報を出力部２１に出力させる（ステップＳ１１１）。
【００６３】
ステップＳ１１１が終わると、ｉに１を足したものをｉとして（ｉをインクリメントして）、ステップＳ１０３〜ステップＳ１１１の処理が繰り返される。
【００６４】
以上のように第１実施形態によれば、現在撮像（計測）を行った視点から次の撮像（計測）を行う次視点の方向への撮像部１１の移動を促す情報が出力されるため、熟練度の低いユーザであっても、撮像部を次視点に移動させるために撮像部をどの方向に移動させればいいか判断でき、作業効率を向上することができる。
【００６５】
また第１実施形態によれば、不適切な撮像部１１の移動が行われた場合、その旨が出力されるため、作業効率がこれ以上悪化してしまうことを抑制することができる。
【００６６】
（第２実施形態）
第２実施形態では、撮像部の位置及び姿勢の算出を開始できるか否かを判定する例について説明する。以下では、第１実施形態との相違点の説明を主に行い、第１実施形態と同様の機能を有する構成要素については、第１実施形態と同様の名称・符号を付し、その説明を省略する。
【００６７】
図１０は、第２実施形態の移動支援装置１１０の一例を示す構成図である。図１０に示すように、第２実施形態の移動支援装置１１０は、第１判定部１２３、第４算出部１２５、及び出力制御部１１９が、第１実施形態と相違する。
【００６８】
第１判定部１２３は、撮像部１１により撮像された第１画像上の複数の第１特徴点を検出し、検出した複数の第１特徴点の数及び分布の少なくともいずれかに基づいて、撮像部１１の位置及び姿勢の算出を開始するか否かを判定する。具体的には、第１判定部１２３は、複数の第１特徴点の数及び分布の少なくともいずれかが第１閾値を超えた場合に、撮像部１１の位置及び姿勢の算出を開始すると判定し、複数の第１特徴点の数及び分布の少なくともいずれかが第１閾値以下の場合に、撮像部１１の位置及び姿勢の算出を開始できないと判定する。
【００６９】
第４算出部１２５は、撮像部１１の位置及び姿勢の算出を開始すると判定された場合、第１画像上での複数の第１特徴点の重心位置を算出する。
【００７０】
出力制御部１１９は、撮像部１１の位置及び姿勢の算出を開始すると判定された場合、第４算出部１２５により算出された重心位置に基づく方向への撮像部１１の移動を促す情報を出力部２１に出力させる。
【００７１】
例えば、図１１に示すように、複数の第１特徴点１５１の重心位置１５３が第１画像の中心１５２よりも右側に位置する場合、出力制御部１１９は、図１２に示すように、第１視点５１から反時計回り方向への撮像部１１の移動を促す情報を出力部２１に出力する。このようにすれば、第２視点５２は、第１視点５１の反時計回り方向に位置することが期待できるため、第２視点５２で撮像部１１により撮像された第２画像において、複数の第１特徴点に対応する複数の第２特徴点が、第１画像に比べ第２画像の中心に集まること、即ち、複数の第２特徴点が第２画像内に写ることが期待できる。この結果、第２視点５２での撮像部１１の位置及び姿勢の算出が成功しやすくなることが期待できる。なお、図１１に示す例では、複数の第１特徴点１５１のｘ座標を用いて、ｘ軸上の重心位置１５３が求められている。
【００７２】
また、複数の第１特徴点の重心位置が第１画像の中心よりも左側に位置する場合、出力制御部１１９は、第１視点５１から時計回り方向への撮像部１１の移動を促す情報を出力部２１に出力する。
【００７３】
また、出力制御部１１９は、撮像部１１の位置及び姿勢の算出を開始できないと判定された場合、第１視点を変えて第１画像を再撮像することを促す情報を出力部２１に出力させる。
【００７４】
図１３は、第２実施形態の移動支援装置１１０で行われる処理の手順の流れの一例を示すフローチャートである。
【００７５】
まず、撮像部１１は、第ｉ視点で対象物４０の第ｉ画像を撮像する（ステップＳ２０１）。なお、ｉの初期値は１である。
【００７６】
続いて、第１判定部１２３は、撮像部１１により撮像された第ｉ画像上の複数の第１特徴点を検出し、検出した複数の第１特徴点の数及び分布の少なくともいずれかに基づいて、撮像部１１の位置及び姿勢の算出を開始するか否かを判定する（ステップＳ２０３）。
【００７７】
撮像部１１の位置及び姿勢の算出を開始できない場合（ステップＳ２０３でＮｏ）、出力制御部１１９は、第ｉ視点を変えて第ｉ画像を再撮像することを促す情報を出力部２１に出力させる（ステップＳ２０５）。
【００７８】
一方、撮像部１１の位置及び姿勢の算出を開始できる場合（ステップＳ２０３でＹｅｓ）、第４算出部１２５は、第１画像上での複数の第１特徴点の重心位置を算出する（ステップＳ２０７）。
【００７９】
続いて、出力制御部１１９は、第４算出部１２５により算出された重心位置に基づく方向への撮像部１１の移動を促す情報を出力部２１に出力させる（ステップＳ２０９）。
【００８０】
以降のステップＳ２１１〜Ｓ２１９の処理は、図９に示すフローチャートのステップＳ１０３〜Ｓ１１１の処理と同様であるため、説明を省略する。
【００８１】
以上のように第２実施形態によれば、撮像部１１の位置及び姿勢を算出できる第１画像が撮像されると、撮像部１１の位置及び姿勢の算出が開始されるため、作業効率をより向上することができる。
【００８２】
また第２実施形態によれば、撮像部１１の位置及び姿勢の算出を開始する前から、現在の視点から次の撮像（計測）を行う次視点の方向への撮像部１１の移動を促す情報が出力されるため、作業効率をより向上することができる。
【００８３】
（第３実施形態）
第３実施形態では、撮像部の位置及び姿勢の算出を終了できるか否かを判定する例について説明する。以下では、第１実施形態との相違点の説明を主に行い、第１実施形態と同様の機能を有する構成要素については、第１実施形態と同様の名称・符号を付し、その説明を省略する。
【００８４】
図１４は、第３実施形態の移動支援装置１１０の一例を示す構成図である。図１０に示すように、第３実施形態の移動支援装置２１０は、第５算出部２２７、第２判定部２２９、及び出力制御部２１９が、第１実施形態と相違する。
【００８５】
第５算出部２２７は、第１算出部１３により対応付けられた第１特徴点及び第２特徴点の組毎に、当該第１特徴点と第１視点とを結ぶ線と、当該第２特徴点と第１視点とを結ぶ線と、が成す第４角、及び当該第１特徴点と第２視点とを結ぶ線と、当該第２特徴点と第２視点とを結ぶ線と、が成す第５角を算出する。
【００８６】
第５算出部２２７は、例えば、図１５に示すように、対応付けられた第１特徴点２５１Ａ及び第２特徴点２５１Ｂの組に対し、第１特徴点２５１Ａと第１視点５１（光学中心６１）とを結ぶ線２６１と、第２特徴点２５１Ｂと第１視点５１（光学中心６１）とを結ぶ線２６２と、が成す第４角θＡ、及び第１特徴点２５１Ａと第２視点５２（光学中心６２）とを結ぶ線２７１と、第２特徴点２５１Ｂと第２視点５２（光学中心６２）とを結ぶ線２７２と、が成す第５角θＢを算出する。
【００８７】
第２判定部２２９は、算出された複数の第４角及び複数の第５角に基づいて、撮像部１１の位置及び姿勢の算出を終了するか否かを判定する。具体的には、第２判定部２２９は、複数の第４角及び複数の第５角の角度の最小値、平均値、及び中央値の少なくともいずれかが第２閾値を超えた場合、撮像部１１の位置及び姿勢の算出を終了すると判定する。
【００８８】
第１実施形態で説明したように、第１算出部１３は、撮像部１１の位置及び姿勢を算出することにより、対象物のうち複数の画像内に写る部分の３次元形状も計測（算出）している。そして、撮像部１１の位置及び姿勢が新たに算出されると、対象物のうち新たな部分の３次元形状も計測（算出）されるとともに、計測（算出）済みの部分の３次元形状も更新される。
【００８９】
ここで、一般的に、計測（算出）済みの部分の３次元形状は、更新されるほど、計測（算出）精度が高くなり、第４角や第５角の角度が大きくなる傾向にある。このため、第３実施形態では、複数の第４角及び複数の第５角の角度の最小値、平均値、及び中央値の少なくともいずれかが第２閾値を超えた場合、求めている精度で対象物４０の３次元形状を計測できたと判断し、撮像部１１の位置及び姿勢の算出、即ち、対象物４０の３次元形状の計測を終了する。
【００９０】
出力制御部２１９は、撮像部１１の位置及び姿勢の算出を終了すると判定された場合、その旨を出力部２１に出力させる。
【００９１】
図１６は、第３実施形態の移動支援装置２１０で行われる処理の手順の流れの一例を示すフローチャートである。
【００９２】
まず、ステップＳ３０１〜Ｓ３０５の処理は、図９に示すフローチャートのステップＳ１０１〜Ｓ１０５の処理と同様である。
【００９３】
続いて、第５算出部２２７は、第１算出部１３により対応付けられた第ｉ特徴点及び第（ｉ＋１）特徴点の組毎に、当該第ｉ特徴点と第ｉ視点とを結ぶ線と、当該第（ｉ＋１）特徴点と第ｉ視点とを結ぶ線と、が成す第４角、及び当該第ｉ特徴点と第（ｉ＋１）視点とを結ぶ線と、当該第（ｉ＋１）特徴点と第（ｉ＋１）視点とを結ぶ線と、が成す第５角を算出する（ステップＳ３０７）。
【００９４】
続いて、第２判定部２２９は、算出された複数の第４角及び複数の第５角に基づいて、撮像部１１の位置及び姿勢の算出を終了するか否かを判定する（ステップＳ３０９）。
【００９５】
撮像部１１の位置及び姿勢の算出を終了する場合（ステップＳ３０９でＹｅｓ）、出力制御部２１９は、その旨を出力部２１に出力させる（ステップＳ３１１）。
【００９６】
一方、撮像部１１の位置及び姿勢の算出を終了しない場合（ステップＳ３０９でＮｏ）、ステップＳ３１３へ進む。
【００９７】
以降のステップＳ３１３〜Ｓ３１７の処理は、図９に示すフローチャートのステップＳ１０７〜Ｓ１１１の処理と同様であるため、説明を省略する。
【００９８】
以上のように第３実施形態によれば、撮像部１１の位置及び姿勢の算出を終了できる場合、その旨が出力されるため、作業効率をより向上することができる。
【００９９】
（ハードウェア構成）
図１７は、上記各実施形態の移動支援装置のハードウェア構成の一例を示すブロック図である。図１７に示すように、上記各実施形態の移動支援装置は、ＣＰＵなどの制御装置９０１と、ＲＯＭやＲＡＭなどの記憶装置９０２と、ＨＤＤやＳＳＤなどの外部記憶装置９０３と、ディスプレイなどの表示装置９０４と、マウスやキーボードなどの入力装置９０５と、通信Ｉ／Ｆ９０６と、カメラなどの撮像装置９０７とを、備えており、通常のコンピュータを利用したハードウェア構成で実現できる。
【０１００】
上記各実施形態の移動支援装置で実行されるプログラムは、ＲＯＭ等に予め組み込んで提供される。
【０１０１】
また、上記各実施形態の移動支援装置で実行されるプログラムを、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、ＣＤ−Ｒ、メモリカード、ＤＶＤ、フレキシブルディスク（ＦＤ）等のコンピュータで読み取り可能な記憶媒体に記憶されて提供するようにしてもよい。
【０１０２】
また、上記各実施形態の移動支援装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記各実施形態の移動支援装置で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。
【０１０３】
上記各実施形態の移動支援装置で実行されるプログラムは、上述した各部をコンピュータ上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、例えば、制御装置９０１が外部記憶装置９０３からプログラムを記憶装置９０２上に読み出して実行することにより、上記各部がコンピュータ上で実現されるようになっている。
【０１０４】
以上説明したとおり、上記各実施形態によれば、作業効率を向上させることができる。
【０１０５】
なお本発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また上記各実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせても良い。
【０１０６】
例えば、上記実施形態のフローチャートにおける各ステップを、その性質に反しない限り、実行順序を変更し、複数同時に実施し、あるいは実施毎に異なった順序で実施してもよい。
【０１０７】
また例えば、上記第２実施形態と上記第３実施形態とを組み合わせてもよい。
【符号の説明】
【０１０８】
１０、１１０、２１０  移動支援装置
１１  撮像部
１３  第１算出部
１５  第２算出部
１７  第３算出部
１９、１１９、２１９  出力制御部
２１  出力部
１２３  第１判定部
１２５  第４算出部
２２７  第５算出部
２２９  第２判定部
【図１】
2016061654.tif 000004
【図２】
2016061654.tif 000005
【図３】
2016061654.tif 000006
【図４】
2016061654.tif 000007
【図５】
2016061654.tif 000008
【図６】
2016061654.tif 000009
【図７】
2016061654.tif 000010
【図８】
2016061654.tif 000011
【図９】
2016061654.tif 000012
【図１０】
2016061654.tif 000013
【図１１】
2016061654.tif 000014
【図１２】
2016061654.tif 000015
【図１３】
2016061654.tif 000016
【図１４】
2016061654.tif 000017
【図１５】
2016061654.tif 000018
【図１６】
2016061654.tif 000019
【図１７】
2016061654.tif 000020