(57)【要約】【課題】画像情報を表示させる作業対象の３次元位置を精度よく特定する。【解決手段】記憶部１ａは、作業現場２の環境を再現した３次元モデル２ａを示す３次元モデルデータ２ｂを記憶する。演算部１ｂは、作業現場２に存在する作業者３の向きＤ１の検出結果に基づいて、３次元モデル２ａから作業対象４が存在する部分領域５ａを特定し、部分領域５ａの幾何形状、または部分領域５ａの色情報の少なくとも一方に基づいて、部分領域５ａから作業対象４に対応する部分領域５ｂを特定し、３次元モデル２ａが形成された座標空間における部分領域５ｂの３次元座標を、作業現場２を撮像した画像上に作業対象４の位置に応じて画像情報を表示するための位置情報として記憶部１ａに登録する。【選択図】図１
2019121136.tif 000002
【特許請求の範囲】
【請求項１】
作業現場の環境を再現した３次元モデルを示すデータを記憶する記憶部と、
前記作業現場に存在する作業者の向きの検出結果に基づいて、前記３次元モデルから作業対象が存在する第１の部分領域を特定し、前記第１の部分領域の幾何形状、または前記第１の部分領域の色情報の少なくとも一方に基づいて、前記第１の部分領域から前記作業対象に対応する第２の部分領域を特定し、前記３次元モデルが形成された座標空間における前記第２の部分領域の３次元座標を、前記作業現場を撮像した画像上に前記作業対象の位置に応じて画像情報を表示するための位置情報として前記記憶部に登録する演算部と、
を有する情報処理装置。
【請求項２】
前記演算部は、さらに、前記作業者の位置の検出結果に基づいて、前記作業者が移動しているかを判定し、
前記第１の部分領域の特定は、前記作業者が移動していないと判定された場合に実行される、
請求項１記載の情報処理装置。
【請求項３】
前記作業者が指差し動作を行った場合、前記第１の部分領域は、前記作業者の向きと、前記指差し動作における指差し方向とに基づいて特定される、
請求項１または２記載の情報処理装置。
【請求項４】
前記第１の部分領域は、前記作業者を起点とした前記作業者の向きと、前記３次元モデルとが交差する位置に基づいて特定される、
請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第２の部分領域は、前記第１の部分領域から検出された平面領域の大きさ、および、前記平面領域と前記作業者との距離に基づいて特定される、
請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記第２の部分領域は、前記第１の部分領域における色別の領域の大きさに基づいて特定される、
請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記第２の部分領域は、前記作業対象をモデル化した他の３次元モデルと、前記第１の部分領域とのマッチング処理によって特定される、
請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記作業者の向きは、前記作業者が保持し、前記作業現場を撮像する撮像装置による撮像画像に基づいて検出される、
請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
前記撮像画像に基づいて、前記作業者の向きが検出されるとともに、前記３次元モデルが作成される、
請求項８記載の情報処理装置。
【請求項１０】
作業現場に存在する作業者の向きを検出する検出装置と、
前記作業現場の環境を再現した３次元モデルを示すデータを記憶する記憶部、および、
前記作業者の向きの検出結果に基づいて、前記３次元モデルから作業対象が存在する第１の部分領域を特定し、前記第１の部分領域の幾何形状、または前記第１の部分領域の色情報の少なくとも一方に基づいて、前記第１の部分領域から前記作業対象に対応する第２の部分領域を特定し、前記３次元モデルが形成された座標空間における前記第２の部分領域の３次元座標を、前記作業現場を撮像した画像上に前記作業対象の位置に応じて画像情報を表示するための位置情報として前記記憶部に登録する演算部、
を有する情報処理装置と、
を含む情報処理システム。
【請求項１１】
前記検出装置は、前記作業者が保持し、前記作業現場を撮像する撮像装置による撮像画像に基づいて、前記作業者の向きを検出する、
請求項１０記載の情報処理システム。
【請求項１２】
前記検出装置は、前記撮像画像に基づいて、前記作業者の向きの検出処理と、前記３次元モデルの形成処理とを実行し、前記作業者の向きの検出結果と形成された前記３次元モデルのデータとを前記情報処理装置に送信する、
請求項１１記載の情報処理システム。
【請求項１３】
コンピュータが、
作業現場に存在する作業者の向きの検出結果に基づいて、前記作業現場の環境を再現した３次元モデルから作業対象が存在する第１の部分領域を特定し、
前記第１の部分領域の幾何形状、または前記第１の部分領域の色情報の少なくとも一方に基づいて、前記第１の部分領域から前記作業対象に対応する第２の部分領域を特定し、
前記３次元モデルが形成された座標空間における前記第２の部分領域の３次元座標を、前記作業現場を撮像した画像上に前記作業対象の位置に応じて画像情報を表示するための位置情報として記憶部に登録する、
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システムおよび情報処理方法に関する。
【背景技術】
【０００２】
現実空間を撮影した画像上の所定位置に仮想的な画像を重畳して表示する拡張現実感（Augmented Reality，ＡＲ）技術が知られている。このＡＲ技術は、例えば、工場などの作業空間において、作業内容や注意点などを示す画像情報をカメラ画像上に重畳表示することによって作業者の作業を支援する、といった用途で普及しつつある。
【０００３】
このような技術の一例として、作業者がヘッドマウントディスプレイ（ＨＭＤ）とヘッドマウントカメラ（ＨＭＣ）を保持するとともに、ＨＭＣによって撮影された画像を基に生成された作業現場のパノラマ画像をオペレータが視認するようにした遠隔協調作業支援システムが提案されている。このシステムでは、オペレータがパノラマ画像上に指示入力を行うと、作業者に対する指示情報がＨＭＤに送信される。ＨＭＤの画面には、カメラ画像が表示されるとともに、カメラ画像上の指示入力に応じた位置に指示情報がＡＲ画像として重畳表示される。
【０００４】
また、関連技術の一例として、ＨＭＤに備えられた深度センサの検出結果に基づき、ＨＭＤに表示されたカメラ画像上の作業対象物の位置に、この作業対象物を示す３次元モデルを表示させるようにしたシステムが提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−１６７６８８号公報
【特許文献２】特開２０１５−１２５６４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、カメラ画像上の作業対象に対応する位置に、作業支援のための画像情報を重畳表示させるためには、作業対象ごとに、作業現場の環境を再現した３次元モデルの座標空間における位置（３次元座標）を、あらかじめ設定しておく必要がある。このような設定作業を人手によって行うと、その作業は繁雑であり、作業効率が低いという問題がある。そこで、このような設定作業を自動化することが考えられるが、その場合、作業対象の位置を正確に特定することが難しいという問題がある。
【０００７】
１つの側面では、本発明は、画像情報を表示させる作業対象の３次元位置を精度よく特定可能な情報処理装置、情報処理システムおよび情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
１つの案では、記憶部と演算部とを有する次のような情報処理装置が提供される。記憶部は、作業現場の環境を再現した３次元モデルを示すデータを記憶する。演算部は、作業現場に存在する作業者の向きの検出結果に基づいて、３次元モデルから作業対象が存在する第１の部分領域を特定し、第１の部分領域の幾何形状、または第１の部分領域の色情報の少なくとも一方に基づいて、第１の部分領域から作業対象に対応する第２の部分領域を特定し、３次元モデルが形成された座標空間における第２の部分領域の３次元座標を、作業現場を撮像した画像上に作業対象の位置に応じて画像情報を表示するための位置情報として記憶部に登録する。
【０００９】
また、１つの案では、作業現場に存在する作業者の向きを検出する検出装置と、上記の情報処理装置とを含む情報処理システムが提供される。
さらに、１つの案では、上記の情報処理装置と同様の処理をコンピュータが実行する情報処理方法が提供される。
【発明の効果】
【００１０】
１態様によれば、画像情報を表示させる作業対象の３次元位置を精度よく特定できる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施の形態に係る情報処理装置の構成例および処理例を示す図である。
【図２】本作業フェーズで用いられる装置の構成例を示す図である。
【図３】作業支援を実現するための処理について説明するための図である。
【図４】カメラ画像におけるＡＲコンテンツの表示例を示す図である。
【図５】オーサリング作業フェーズで用いられる装置の構成例を示す図である。
【図６】作業支援装置による作業対象箇所の特定処理の概要について説明するための図である。
【図７】オーサリング作業フェーズで用いられる各装置のハードウェア構成例を示す図である。
【図８】作業者端末および作業支援装置が備える処理機能の構成例を示すブロック図である。
【図９】作業者端末で実行される処理の手順を示すフローチャートの例である。
【図１０】ＳＬＡＭ処理部２３１の内部構成例を示す図である。
【図１１】作業支援装置で実行される処理の手順を示すフローチャートの例である。
【図１２】停留状態の判定処理手順を示すフローチャートの例である。
【図１３】停留状態の判定例を示す図である。
【図１４】指差し方向ベクトルの算出手順を示すフローチャートの例である。
【図１５】手および円筒の３次元モデルの例を示す図である。
【図１６】ベクトルに基づく作業対象領域の推定処理例を示す図である。
【図１７】作業対象箇所の特定処理手順を示すフローチャートの例である。
【図１８】平面領域の抽出処理手順を示すフローチャートの例である。
【図１９】領域の絞り込み処理手順を示すフローチャートの例である。
【図２０】平面の抽出および領域絞り込みの処理例を示す図である。
【図２１】色情報に基づく切り出し処理手順を示すフローチャートの例である。
【図２２】平面抽出および色情報に基づく切り出しによる作業対象箇所の特定処理例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について図面を参照して説明する。
〔第１の実施の形態〕
図１は、第１の実施の形態に係る情報処理装置の構成例および処理例を示す図である。
【００１３】
第１の実施の形態に係る情報処理装置１は、例えば、次のような作業支援システムで用いる情報を作成するための装置である。この作業支援システムは、作業現場で作業する作業者に対して、その作業を支援するための情報を画像情報として提供するためのシステムである。具体的には、作業者には、作業対象を含む領域を撮影した画像をリアルタイムに視認できる環境が与えられる。そして、その画像上に、作業支援のための画像情報がＡＲ技術を用いて重畳表示される。
【００１４】
このような作業支援システムでは、画像情報が表示される作業対象の３次元座標が、あらかじめ登録される。本実施の形態に係る情報処理装置１は、このような作業対象を自動的に特定し、特定された作業対象の３次元座標を登録する。
【００１５】
図１に示すように、本実施の形態では、作業対象の登録のために、作業現場２において作業者３に実際に作業させる。そして、作業者３の動きが検出され、その検出結果と、作業現場２の環境を再現した３次元モデル２ａのデータ（３次元モデルデータ２ｂ）とに基づいて、３次元モデル２ａから作業対象が特定される。作業者３の動きとしては、少なくとも作業者３の向きが検出される。以下の説明では、作業現場２に作業対象４が存在するものとして説明する。
【００１６】
情報処理装置１は、記憶部１ａと演算部１ｂを有する。記憶部１ａは、例えば、ＲＡＭ（Random Access Memory）やＨＤＤ（Hard Disk Drive）など、情報処理装置１が備える記憶装置の記憶領域として実現される。演算部１ｂは、例えば、情報処理装置１が備えるプロセッサとして実現される。
【００１７】
記憶部１ａには、前述した３次元モデルデータ２ｂに加えて、３次元座標５ｃが記憶される。３次元モデルデータ２ｂは、例えば、あらかじめ作成されて記憶部１ａに格納される。また、例えば、作業者３がその視線方向を撮影するカメラを保持していて、カメラの画像を基に作業者３の向きが検出される場合には、作業者３の向きの検出とともに３次元モデル２ａが作成され、３次元モデルデータ２ｂが記憶部１ａに格納されてもよい。３次元座標５ｃは、演算部１ｂによって特定されて記憶部１ａに登録される。
【００１８】
演算部１ｂは、次のような処理を実行する。
演算部１ｂは、作業者３の向きＤ１の検出結果に基づいて、３次元モデル２ａから作業対象４が存在する部分領域５ａ（第１の部分領域）を特定する（ステップＳ１）。図１では、３次元モデル２ａにおいて網掛けを付して示した領域が、部分領域５ａとして特定されている。
【００１９】
ここで、作業者３の向きＤ１の検出方法は、特に限定されるものではない。例えば、作業者３の向きＤ１は、作業現場２に固定的に配置されたカメラなどのセンサによって検出されてもよいし、あるいは、前述のように作業者３が保持するカメラの画像を基に検出されてもよい。
【００２０】
また、作業者３の向きＤ１の検出結果は、例えば、３次元モデル２ａが形成された３次元座標空間上の向きＤ１ａに変換され、ステップＳ１では、変換後の向きＤ１ａに基づいて部分領域５ａが特定される。ただし、例えば、上記のように、作業者３が保持するカメラの画像を基に作業者３の向きの検出と３次元モデル２ａの作成とが行われる場合には、このような変換が不要な場合もある。
【００２１】
また、作業者３の向きＤ１としては、作業者３の注目方向（視線の方向）が検出されることが望ましい。さらに、例えば、作業者３が作業対象４を確認するための指差し動作を行う場合がある。このような指差し動作が検出された場合、作業者３の向きＤ１と、指差し方向とに基づいて、部分領域５ａが特定されてもよい。
【００２２】
次に、演算部１ｂは、特定された部分領域５ａの幾何形状、または部分領域５ａの色情報の少なくとも一方に基づいて、部分領域５ａから作業対象４に対応する部分領域５ｂ（第２の部分領域）を特定する（ステップＳ２）。例えば、部分領域５ａにおける平面領域の大きさや、平面領域と作業者３との距離、部分領域５ａにおける色別の領域の大きさなどに基づいて、部分領域５ｂが特定される。
【００２３】
そして、演算部１ｂは、３次元モデル２ａが形成された３次元座標空間における部分領域５ｂの３次元座標５ｃを、記憶部１ａに登録する（ステップＳ３）。図１では、部分領域５ａのうち実線で示した領域が、部分領域５ｂとして特定されている。この３次元座標５ｃは、作業現場２を撮影した画像上に作業対象４の位置に応じて画像情報を表示するための位置情報であり、例えば、前述した作業支援システムにおいて使用される。なお、３次元座標５ｃとしては、例えば、特定された部分領域５ｂの中心部分（例えば重心）の座標が登録される。
【００２４】
以上の演算部１ｂの処理では、ステップＳ１の特定処理により、３次元モデル２ａの中から、作業対象４に対応する領域が存在する可能性の高い領域が絞り込まれる。この処理が作業者３の向きＤ１の検出結果に基づいて行われることで、作業対象４に対応する領域が存在する領域が正確に特定される。そして、ステップＳ２の特定処理において、特定された部分領域５ａから、部分領域５ａの幾何形状または色情報に基づいて、作業対象４に対応する領域がより詳細に特定される。これにより、作業対象４に対応する領域を自動的に特定して、その３次元座標５ｃを効率よく登録できるとともに、３次元座標５ｃを高精度に特定できる。
【００２５】
〔第２の実施の形態〕
次に、第２の実施の形態に係る作業支援システムについて説明する。
第２の実施の形態に係る作業支援システムは、作業現場で作業する作業者に対して、その作業を支援するための情報を画像情報として提供するためのシステムである。具体的には、作業者には、作業対象箇所を含む領域を撮影した画像をリアルタイムに視認できる環境が与えられる。そして、その画像上に、作業支援のための画像情報がＡＲ技術を用いて重畳表示される。
【００２６】
以下、重畳表示される画像情報を、「ＡＲコンテンツ」と記載する。ＡＲコンテンツとしては、例えば、作業内容、作業の注意事項などのテキスト情報が、作業対象箇所を指し示す画像などとともに表示される。これにより、例えば、作業者の作業の正確性を高める、習熟度の低い作業者でも容易かつ正確に作業できる、といったメリットが得られる。
【００２７】
作業者が画像を視認するための環境は、次のようにして実現される。例えば、ディスプレイを備えるとともに、ディスプレイの背面側にカメラを備える携帯型端末を、作業者が携帯する。作業者がディスプレイを視認しながら作業対象箇所にカメラを向けると、ディスプレイ上に作業対象箇所を含む領域の画像が表示されるとともに、その画像上にＡＲコンテンツが重畳表示される。また、別の例として、カメラとディスプレイとを備えるヘッドマウントユニットが、作業者の頭部に装着されてもよい。
【００２８】
また、作業支援システムは、作業支援装置を含む。作業支援装置は、作業現場の環境を示す３次元モデルと、カメラによって撮影された画像とに基づいて、画像におけるＡＲコンテンツの表示位置を算出し、制御する。作業支援装置は、このような制御を実現するために、ＡＲコンテンツと、それに対応する作業対象箇所の３次元座標とが登録されたＡＲコンテンツデータベースを備える。このようなＡＲコンテンツデータベースが参照されることで、ＡＲコンテンツを、画像に写っている作業対象箇所の位置に正確に合わせて表示させることができる。
【００２９】
ＡＲコンテンツデータベースには、作業現場における複数の作業対象箇所について、それぞれ作業対象箇所の３次元座標とＡＲコンテンツとが登録される。したがって、上記のようなＡＲコンテンツを用いた作業支援を実現するためには、事前にＡＲコンテンツを作成してＡＲコンテンツデータベースに登録するオーサリング作業が行われる。
【００３０】
以下の説明では、ＡＲコンテンツを用いた作業支援が行われる作業フェーズを、「本作業フェーズ」と記載する。また、本作業フェーズで参照されるＡＲコンテンツデータベースを構築するための事前作業フェーズを、「オーサリング作業フェーズ」と記載する。
【００３１】
ここでは、まず、作業支援システムに含まれる装置のうち、本作業フェーズで用いられる装置の構成について説明し、その後に、オーサリング作業フェーズで用いられる装置の構成について説明する。
【００３２】
図２は、本作業フェーズで用いられる装置の構成例を示す図である。図２に示すように、本作業フェーズでは、作業支援装置１００、作業者端末２００ｂおよびヘッドマウントユニット３００ｂが用いられる。作業支援装置１００と作業者端末２００ｂとは、例えば、ネットワークを介して通信可能になっている。また、作業者端末２００ｂとヘッドマウントユニット３００ｂとは、例えば、近距離無線通信によって通信可能になっている。
【００３３】
作業者４０２は、作業者端末２００ｂを携帯するとともに、ヘッドマウントユニット３００ｂを頭部に装着した状態で、作業を行う。ヘッドマウントユニット３００ｂは、カメラ３１１、深度センサ３１２およびディスプレイ３１３を備える。
【００３４】
カメラ３１１は、作業者４０２の視線とほぼ同じ方向の領域を撮影する。深度センサ３１２は、カメラ３１１の撮影領域について、カメラ３１１からの出力画像の画素ごとに深度（距離）を計測する。深度センサ３１２は、例えば、赤外線照射装置と赤外線受光装置とを備え、ＴＯＦ（Time Of Flight）方式などによって画素ごとの深度を計測する。このようなヘッドマウントユニット３００ｂからは、例えば、カメラ３１１によって得られたカラー画像の画像データと、深度センサ３１２によって得られた深度データとを含むＲＧＢ−Ｄ（Red Green Blue-Depth）データが出力される。ディスプレイ３１３は、いわゆるヘッドマウントディスプレイであり、作業者４０２が作業を行いながら画像を視認することを可能にする。
【００３５】
ここで、図３は、作業支援を実現するための処理について説明するための図である。まず、図３を用いて、本作業フェーズにおける作業支援装置１００および作業者端末２００ｂの処理例について説明する。
【００３６】
作業者端末２００ｂは、ヘッドマウントユニット３００ｂから、カメラ３１１によって撮影された画像（以下、「カメラ画像」と記載する）の画像データと、深度センサ３１２によって検出された深度データとを受信し、これらを作業支援装置１００に送信する（ステップＳ２１）。また、作業者端末２００ｂは、受信した画像データをヘッドマウントユニット３００ｂに送信して、この画像データに基づくカメラ画像をディスプレイ３１３に表示させる。
【００３７】
作業支援装置１００は、作業者端末２００ｂから受信した画像データと深度データに基づいて、カメラ３１１の位置姿勢を推定する（ステップＳ２２）。推定されるカメラ３１１の位置は、作業者４０２の位置（例えば、作業者４０２の目の位置）を示し、推定されるカメラ３１１の姿勢は、作業者４０２の視線の方向を示す。カメラ３１１の位置姿勢の推定では、例えば、事前に作成された作業現場の３次元モデルが参照される。この３次元モデルとしては、オーサリング作業フェーズで作成されたものが使用されてもよい。
【００３８】
また、作業支援装置１００は、ＡＲコンテンツデータベース（ＤＢ）１０１を保持している。前述のように、ＡＲコンテンツデータベース１０１には、複数の作業対象箇所について、それぞれ作業対象箇所の３次元座標とＡＲコンテンツとが登録されている。
【００３９】
作業支援装置１００は、受信した画像データに基づくカメラ画像の撮影領域に作業対象箇所が含まれる場合に、その作業対象箇所に対応するＡＲコンテンツをＡＲコンテンツデータベース１０１から特定する。そして、作業支援装置１００は、特定されたＡＲコンテンツのカメラ画像における表示位置を算出する（ステップＳ２３）。
【００４０】
ＡＲコンテンツの特定処理では、作業支援装置１００は、例えば、推定されたカメラ３１１の位置姿勢と、ＡＲコンテンツデータベース１０１に登録された各作業対象箇所の３次元座標とに基づいて、カメラ画像の撮影領域に含まれる作業対象箇所を自動的に特定する。あるいは、作業支援装置１００のオペレータが、カメラ画像を表示させた画面を視認し、カメラ画像に作業対象箇所が写り込んだときに対応するＡＲコンテンツをＡＲコンテンツデータベース１０１から選択してもよい。さらに別の例としては、各作業対象箇所に対応するマーカが作業対象箇所付近にあらかじめ設置されていてもよい。この場合、作業支援装置１００は、例えば、カメラ画像からマーカを検出すると、そのマーカ内に記述された識別情報を読み取り、読み取られた識別情報に基づいてＡＲコンテンツをＡＲコンテンツデータベース１０１から特定する。
【００４１】
また、カメラ画像におけるＡＲコンテンツの表示位置は、例えば、ＡＲコンテンツに対応付けられた３次元座標と、推定されたカメラ３１１の位置姿勢と、３次元モデルを示す情報（３次元マップ）とに基づいて算出される。このとき、カメラ画像におけるＡＲコンテンツの表示角度も算出されてもよい。
【００４２】
作業支援装置１００は、特定されたＡＲコンテンツの表示位置を、ＡＲコンテンツのデータとともに作業者端末２００ｂに送信する。作業者端末２００ｂは、受信した表示位置の情報に基づいて、ディスプレイ３１３に表示させているカメラ画像上に、ＡＲコンテンツを重畳表示させる（ステップＳ２４）。これにより、例えば、カメラ画像に写っている作業対象箇所を正確に指し示す状態で、ＡＲコンテンツが表示される。
【００４３】
図４は、カメラ画像におけるＡＲコンテンツの表示例を示す図である。図４に例示する画像３２０では、作業対象箇所としてレバー３２１が写っており、レバー３２１に対応するＡＲコンテンツ３２２が重畳表示されている。この例では、ＡＲコンテンツデータベース１０１には、作業対象箇所の３次元座標としレバー３２１の中心部３２１ａの座標が登録されており、ＡＲコンテンツ３２２は、中心部３２１ａを指し示す形態の画像として表示されている。このようなＡＲコンテンツをカメラ画像上に重畳表示させることで、作業者４０２の作業を支援することができる。
【００４４】
次に、図３を用いて、オーサリング作業フェーズについて説明する。オーサリング作業フェーズでは、例えば、次のような処理が実行される。
まず、作業現場の３次元形状を再現した３次元モデルが作成される（ステップＳ１１）。この作業では、３次元モデル上に設定された多数の特徴点の３次元座標が登録された３次元マップが作成される。次に、３次元モデルの座標空間における各作業対象箇所の位置が特定される（ステップＳ１２）。次に、各作業対象箇所に対応するＡＲコンテンツが作成され、作成されたＡＲコンテンツと、それに対応する作業対象箇所の３次元モデルにおける３次元座標とが、ＡＲコンテンツデータベース１０１に登録される（ステップＳ１３）。
【００４５】
これらの処理のうち、特に、ステップＳ１２の作業対象箇所の特定処理を、オペレータの操作にしたがって実行しようとすると、大きな手間がかかり、また、その特定を正確にできない可能性もある。例えば、作業者に保持されたカメラの画像をオペレータが視認しながら、画像の中に写った作業対象箇所をオペレータが判別し、その位置情報を登録する方法が考えられる。しかし、この方法では、作業対象となる設備やデバイスをオペレータが正確に判別し、作業対象箇所を示す位置をオペレータが正確に指定する必要がある。作業対象箇所の判別のためには、オペレータに高度の知識が必要となる。また、作業対象箇所の形状や色、さらには画像撮影時における作業者の立ち位置や向きによっては、オペレータが作業対象箇所を正確に判別したり、その位置を正確に指定することが困難になる可能性がある。
【００４６】
本実施の形態では、オーサリング作業のために作業者に作業現場で実際に作業してもらう。このとき、作業者に作業者端末２００ａを携帯させ、作業者の動きを示す各種の検出値を作業者端末２００ａに収集させ、それらの検出値を作業支援装置１００に送信させる。そして、それらの検出値を基に、作業支援装置１００においてＡＲコンテンツデータベース１０１の構築処理を実行させる。この構築処理においては、上記のステップＳ１２の処理が自動化される。これにより、オーサリング作業を大幅に効率化し、その作業の正確性を向上させることができる。
【００４７】
より具体的には、図３に示したオーサリング作業フェーズにおける処理のうち、ステップＳ１１の処理が作業者端末２００ａに実行され、ステップＳ１２，Ｓ１３の処理が作業支援装置１００に実行される。ステップＳ１１では、作業者端末２００ａは、図２に示したカメラ３１１および深度センサ３１２と同様のカメラおよび深度センサを用いて、ＳＬＡＭ（Simultaneous Localization and Mapping）処理により、カメラの位置姿勢を推定するとともに、作業現場に対応する３次元モデルを作成する。この処理では、作業者の作業の進捗に伴ってリアルタイムに３次元モデルが作成されるので、作成作業を効率化でき、作成作業時間を短縮できる。
【００４８】
また、ステップＳ１２では、作業支援装置１００は、作成された３次元モデルや、作業者端末２００ａでの検出値に基づく作業者の位置や作業者の視線の推定結果を用いて、作業対象箇所の３次元座標を自動的に特定する。この処理では、最終的に作業対象箇所としてＡＲコンテンツデータベース１０１に登録される場所の候補が特定されてもよい。このステップＳ１２の処理が自動化されることで、オーサリング作業を大幅に効率化し、その作業の正確性を向上させることができる。
【００４９】
最後に、ステップＳ１３では、作業支援装置１００のオペレータの操作によって、特定された作業対象箇所に対応するＡＲコンテンツが作成される。この処理では、例えば、作業者とオペレータとの間で音声が授受され、オペレータは作業者と会話しながら、作業内容や注意事項など、ＡＲコンテンツに記載するテキスト情報を入力することができる。
【００５０】
なお、このようなステップＳ１２，Ｓ１３の処理は、作業支援装置１００とは別の、オーサリング専用の装置において実行されてもよい。
図５は、オーサリング作業フェーズで用いられる装置の構成例を示す図である。オーサリング作業フェーズでは、前述の作業支援装置１００および作業者端末２００ａに加えて、図５に示すヘッドマウントユニット３００ａが用いられる。なお、作業支援装置１００と作業者端末２００ａとは、例えば、ネットワークを介して通信可能になっている。また、作業者端末２００ａとヘッドマウントユニット３００ａとは、例えば、近距離無線通信によって通信可能になっている。
【００５１】
作業者４０１は、作業者端末２００ａを携帯するとともに、ヘッドマウントユニット３００ａを頭部に装着した状態で、作業現場４００において実際の作業を行う。ヘッドマウントユニット３００ａは、カメラ３０１、深度センサ３０２および音声入出力装置３０３を備える。
【００５２】
カメラ３０１は、作業者４０１の視線とほぼ同じ方向の領域を撮影する。深度センサ３０２は、カメラ３０１の撮影領域について、カメラ３０１からの出力画像の画素ごとに深度を計測する。このようなヘッドマウントユニット３００ａからは、例えば、カメラ３０１によって得られたカラー画像の画像データと、深度センサ３０２によって得られた深度データとを含むＲＧＢ−Ｄデータが出力される。
【００５３】
作業者端末２００ａは、ヘッドマウントユニット３００ａから受信した画像データと深度データとに基づいて、ＳＬＡＭ処理を実行して、作業現場４００の３次元形状を再現した３次元モデルを作成するとともに、カメラ３０１の位置姿勢を推定する。作業者端末２００ａは、作成された３次元モデルを示す３次元マップのデータや、推定された位置姿勢のデータを、カメラ画像の画像データと深度データとともに作業支援装置１００に送信する。
【００５４】
音声入出力装置３０３は、マイクロフォンとスピーカとを備え、作業者４０１が発する音声を収音するとともに、音声を作業者４０１に対して伝達する。後述するように、音声入出力装置３０３によって収音された音声のデータは、作業者端末２００ａを介して作業支援装置１００に送信され、これにより作業者４０１の音声が作業支援装置１００のオペレータに伝達される。また、オペレータの音声のデータは、作業支援装置１００から作業者端末２００ａを介して音声入出力装置３０３に送信され、これによりオペレータの音声が作業者４０１に伝達される。
【００５５】
また、作業者端末２００ａは、作業者４０１の移動状態を検出するためのセンサとして、ジャイロセンサ２０１と加速度センサ２０２を備える。作業者端末２００ａは、これらのセンサによる検出値を作業支援装置１００に送信する。
【００５６】
作業支援装置１００の処理については、次の図６を用いて説明する。
図６は、作業支援装置による作業対象箇所の特定処理の概要について説明するための図である。図６（Ａ）は、作業現場における作業対象箇所の位置の例を示し、図６（Ｂ）は、作業者の動きと作業対象箇所の特定処理との関係について示す。
【００５７】
図６（Ａ）では例として、作業現場４００に３つの作業対象箇所４１１，４１２，４１３が存在するケースを示す。作業者４０１は、点線矢印４２１に示すように、作業現場４００に進入して作業現場４００の中を移動し、作業対象箇所４１１，４１２，４１３のそれぞれに対してあらかじめ決められた作業を行う。この場合、オーサリング作業では、作業対象箇所４１１，４１２，４１３のそれぞれについての３次元座標がＡＲコンテンツデータベース１０１に登録される。
【００５８】
作業支援装置１００は、作業者端末２００ａから受信した情報に基づいて、次のような処理を実行する。まず、作業支援装置１００は、ジャイロセンサ２０１と加速度センサ２０２による検出結果に基づいて、作業者４０１の移動状態を監視する。そして、作業支援装置１００は、移動状態の監視結果に基づいて、作業者４０１がある作業対象箇所に対して作業する領域（作業領域）に到達したことを判定する。作業を行う際、作業者４０１の位置はほとんど移動しないと考えられる。そこで、作業支援装置１００は、移動状態の監視結果に基づき、作業者４０１が停留したと判定された場合に、作業者が作業領域に到達したと判定する。
【００５９】
図６（Ｂ）では例として、作業対象箇所４１１に対して作業するための作業領域４２２に、作業者４０１が到達したと判定されたものとする。すると、作業支援装置１００は、作業者４０１の注目方向に基づいて、３次元モデル上の作業対象領域４２３を推定する。注目方向とは、例えば、作業者４０１の視線の方向であり、図６（Ｂ）は、作業者４０１の視線を矢印４２４によって表している。
【００６０】
作業対象領域４２３は、作業対象箇所４１１を包含する３次元領域として推定される。より具体的には、作業対象領域４２３は、３次元モデル上の特徴点のうち、作業対象箇所４１１を包含する３次元領域に含まれる特徴点群として推定される。したがって、作業対象領域４２３の推定により、３次元モデル上の特徴点の中から、作業対象箇所４１１の近傍に存在すると推定される特徴点が絞り込まれる。
【００６１】
また、例えば、作業者４０１が作業対象箇所４１１に対する指差し動作を行っていることを検出した場合、作業対象領域４２３は、作業者４０１の注目方向に加えて、指差し方向に基づいて推定されてもよい。図６（Ｂ）では、作業者４０１の指差し方向を矢印４２５によって表している。
【００６２】
次に、作業支援装置１００は、作業対象領域４２３に含まれる３次元モデルの幾何形状や色情報に基づいて、作業対象箇所４１１の形状を切り出し、作業対象箇所４１１の３次元座標（例えば、重心の座標）を特定する。以上の処理により、作業対象箇所４１１の３次元空間上の位置が自動的に特定される。
【００６３】
次に、作業者端末２００ａおよび作業支援装置１００について、詳細に説明する。
まず、図７は、オーサリング作業フェーズで用いられる各装置のハードウェア構成例を示す図である。
【００６４】
作業者端末２００ａは、例えば、ＣＰＵ（Central Processing Unit）２１１、ＲＡＭ２１２、フラッシュメモリ２１３、ネットワークインタフェース（Ｉ／Ｆ）２１４、通信インタフェース（Ｉ／Ｆ）２１５およびセンサユニット２１６を備える。
【００６５】
ＣＰＵ２１１は、プログラムにしたがって、作業者端末２００ａ全体を統括的に制御する。ＣＰＵ２１１は、例えば、１または複数のプロセッサを備える。
ＲＡＭ２１２は、作業者端末２００ａの主記憶装置として使用される。ＲＡＭ２１２には、ＣＰＵ２１１に実行させるＯＳ（Operating System）プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ２１２には、ＣＰＵ２１１による処理に必要な各種データが格納される。
【００６６】
フラッシュメモリ２１３は、作業者端末２００ａの補助記憶装置として使用される。フラッシュメモリ２１３には、ＯＳプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、ＨＤＤなどの他の種類の不揮発性記憶装置を使用することもできる。
【００６７】
ネットワークインタフェース２１４は、ネットワークを介して、作業支援装置１００との間でデータを送受信する。
通信インタフェース２１５は、例えば、近距離無線通信を行うためのインタフェース装置であり、ヘッドマウントユニット３００ａとの間で無線通信によりデータを送受信する。近距離無線通信方式としては、Ｂｌｕｅｔｏｏｔｈ（登録商標）などの方式を使用可能である。
【００６８】
センサユニット２１６には、前述したジャイロセンサ２０１と加速度センサ２０２が内蔵されている。これらの各センサによる検出値は、ＣＰＵ２１１に送信される。
ヘッドマウントユニット３００ａは、前述したカメラ３０１、深度センサ３０２および音声入出力装置３０３に加えて、通信インタフェース（Ｉ／Ｆ）３０４を備える。通信インタフェース３０４は、作業者端末２００ａの通信インタフェース２１５との間で無線通信によりデータを送受信する。
【００６９】
作業支援装置１００は、例えば、ＣＰＵ１１１、ＲＡＭ１１２、ＨＤＤ１１３、グラフィックインタフェース（Ｉ／Ｆ）１１４、入力インタフェース（Ｉ／Ｆ）１１５、読み取り装置１１６およびネットワークインタフェース（Ｉ／Ｆ）１１７を有する。
【００７０】
ＣＰＵ１１１は、プログラムにしたがって、作業支援装置１００全体を統括的に制御する。ＣＰＵ１１１は、例えば、１または複数のプロセッサを備える。
ＲＡＭ１１２は、作業支援装置１００の主記憶装置として使用される。ＲＡＭ１１２には、ＣＰＵ１１１に実行させるＯＳプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１１２には、ＣＰＵ１１１による処理に必要な各種データが格納される。
【００７１】
ＨＤＤ１１３は、作業支援装置１００の補助記憶装置として使用される。ＨＤＤ１１３には、ＯＳプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、ＳＳＤ（Solid State Drive）などの他の種類の不揮発性記憶装置を使用することもできる。
【００７２】
グラフィックインタフェース１１４には、ディスプレイ１１４ａが接続されている。グラフィックインタフェース１１４は、ＣＰＵ１１１からの命令にしたがって、画像をディスプレイ１１４ａに表示させる。ディスプレイ１１４ａとしては、液晶ディスプレイや有機ＥＬ（Electroluminescence）ディスプレイなどがある。
【００７３】
入力インタフェース１１５には、入力装置１１５ａが接続されている。入力インタフェース１１５は、入力装置１１５ａから出力される信号をＣＰＵ１１１に送信する。入力装置１１５ａとしては、キーボードやポインティングデバイスなどがある。ポインティングデバイスとしては、マウス、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００７４】
読み取り装置１１６には、可搬型記録媒体１１６ａが脱着される。読み取り装置１１６は、可搬型記録媒体１１６ａに記録されたデータを読み取ってＣＰＵ１１１に送信する。可搬型記録媒体１１６ａとしては、光ディスク、光磁気ディスク、半導体メモリなどがある。
【００７５】
ネットワークインタフェース１１７は、ネットワークを介して、作業者端末２００ａとの間でデータを送受信する。
図８は、作業者端末および作業支援装置が備える処理機能の構成例を示すブロック図である。
【００７６】
作業者端末２００ａは、記憶部２２０、ＳＬＡＭ処理部２３１、音声処理部２３２および送受信処理部２３３を有する。なお、記憶部２２０は、例えば、ＲＡＭ２１２、フラッシュメモリ２１３などの作業者端末２００ａが備える記憶装置の記憶領域として実現される。ＳＬＡＭ処理部２３１、音声処理部２３２および送受信処理部２３３の処理は、例えば、ＣＰＵ２１１が所定のアプリケーションプログラムを実行することで実現される。
【００７７】
記憶部２２０には、３次元マップ２２１が記憶される。３次元マップ２２１には、作業現場の３次元形状を再現した３次元モデルを示すデータが登録される。具体的には、３次元マップ２２１には、３次元モデルに含まれる特徴点ごとに、３次元座標、特徴量および色情報（ＲＧＢ情報）が登録される。
【００７８】
ＳＬＡＭ処理部２３１は、カメラ３０１から出力された画像データと、深度センサ３０２から出力された深度データと、３次元マップ２２１とに基づいて、ＳＬＡＭ処理を実行する。ＳＬＡＭ処理により、作業現場についての３次元モデルが作成されるとともに、カメラ３０１の位置姿勢が推定される。ＳＬＡＭ処理部２３１は、新たな特徴点を抽出すると、その特徴点についてのデータを３次元マップ２２１に追加的に登録していく。
【００７９】
音声処理部２３２は、音声入出力装置３０３によって収音された、作業者の音声のデータを、送受信処理部２３３に供給する。また、音声処理部２３２は、送受信処理部２３３から入力された、オペレータの音声のデータを、音声入出力装置３０３に出力して、オペレータの音声を出力させる。
【００８０】
送受信処理部２３３は、ＳＬＡＭ処理部２３１から入力されたデータを作業支援装置１００に送信する。具体的には、カメラ画像の画像データ、３次元マップ２２１に対して新たに登録された特徴点についてのデータ、推定されたカメラ３０１の位置姿勢、および、センサユニット２１６内の各センサによる検出データが、作業支援装置１００に送信される。また、送受信処理部２３３は、音声処理部２３２から入力された、作業者の音声のデータも、作業支援装置１００に送信する。さらに、送受信処理部２３３は、作業支援装置１００から受信した、オペレータの音声のデータを、音声処理部２３２に出力する。
【００８１】
一方、作業支援装置１００は、記憶部１２０、送受信処理部１３１、画像・音声処理部１３２、停留状態判定部１３３、作業対象領域推定部１３４、作業対象箇所特定部１３５およびＡＲコンテンツ作成処理部１３６を有する。
【００８２】
なお、記憶部１２０は、例えば、ＲＡＭ１１２、ＨＤＤ１１３などの作業支援装置１００が備える記憶装置の記憶領域として実現される。送受信処理部１３１、画像・音声処理部１３２、停留状態判定部１３３、作業対象領域推定部１３４、作業対象箇所特定部１３５およびＡＲコンテンツ作成処理部１３６の処理は、例えば、ＣＰＵ１１１が所定のアプリケーションプログラムを実行することで実現される。
【００８３】
記憶部１２０には、ＡＲコンテンツデータベース１０１と３次元マップ１０２が記憶される。３次元マップ１０２には、作業者端末２００ａ内の３次元マップ２２１と同じデータが登録される。
【００８４】
送受信処理部１３１は、作業者端末２００ａの送受信処理部２３３から送信されたデータを受信する。送受信処理部１３１は、作業者端末２００ａから受信した特徴点のデータを、３次元マップ１０２に登録する。これにより、３次元マップ１０２の登録内容が３次元マップ２２１の登録内容と同一になる。また、送受信処理部１３１は、作業者端末２００ａから受信した画像データと音声データを、画像・音声処理部１３２に出力する。さらに、送受信処理部１３１は、画像・音声処理部１３２から入力された、オペレータの音声のデータを、作業者端末２００ａに送信する。
【００８５】
画像・音声処理部１３２は、送受信処理部１３１から入力された画像データをディスプレイ１１４ａに出力して、カメラ画像を表示させる。また、画像・音声処理部１３２は、送受信処理部１３１から入力された音声データを音声入出力装置１１５ｂに出力して、作業者の音声を出力させる。さらに、画像・音声処理部１３２は、音声入出力装置１１５ｂによって収音されたオペレータの音声のデータを、送受信処理部１３１に出力する。
【００８６】
停留状態判定部１３３は、センサユニット２１６内の各センサによる検出データを、送受信処理部１３１から取得する。停留状態判定部１３３は、これらの検出データに基づいて、作業者が停留状態になったかを判定する。停留状態とは、作業者の位置がほとんど移動しない状態である。作業者が停留状態であるとき、作業者は、ある作業対象箇所に対する作業を行うための作業領域に到達していると判断される。
【００８７】
作業対象領域推定部１３４は、作業者が停留状態になっている期間でのカメラ３０１の位置姿勢に基づいて、作業者の注目方向ベクトルを算出する。また、作業対象領域推定部１３４は、３次元マップ１０２に登録された、注目方向の近傍に存在する特徴点群のデータに基づき、作業者が指差し動作を行ったことを検出した場合には、指差し方向ベクトルを算出する。作業対象領域推定部１３４は、これらのベクトルを平均した平均ベクトルを求め、作業者を起点として平均ベクトルの方向に沿った直線と、３次元マップ１０２に基づく３次元モデルとの干渉チェックを行うことで、作業対象領域を推定する。
【００８８】
作業対象箇所特定部１３５は、推定された作業対象領域における３次元モデルの幾何形状や色情報に基づいて、作業対象となる物体（設備や装置）の３次元モデルを特定し、特定結果に基づいて作業対象箇所の３次元座標を特定する。作業対象箇所特定部１３５は、特定された作業対象箇所の３次元座標を、ＡＲコンテンツデータベース１０１に登録する。
【００８９】
ＡＲコンテンツ作成処理部１３６は、オペレータの操作にしたがって、特定された作業対象箇所のそれぞれについて、表示させるＡＲコンテンツを作成し、作業対象箇所に対応付けてＡＲコンテンツデータベース１０１に登録する。
【００９０】
次に、作業者端末２００ａの処理について説明する。
図９は、作業者端末で実行される処理の手順を示すフローチャートの例である。作業者端末２００ａでは、１フレーム分のカメラ画像の画像データが深度データとともに入力されるたびに、図９の処理が実行される。
【００９１】
［ステップＳ１０１］ＳＬＡＭ処理部２３１は、カメラ画像の画像データと、深度データと、３次元マップ２２１とに基づいて、ＳＬＡＭ処理を実行する。ＳＬＡＭ処理により、作業現場についての３次元モデルが作成されるとともに、カメラ３０１の位置姿勢が推定される。ＳＬＡＭ処理部２３１は、新たな特徴点が抽出された場合、その特徴点についての３次元座標、特徴量および色情報を、３次元マップ２２１に追加する。
【００９２】
［ステップＳ１０２］送受信処理部２３３は、カメラ画像の画像データと、推定されたカメラ３０１の位置姿勢とをＳＬＡＭ処理部２３１から取得し、これらを作業支援装置１００に送信する。また、送受信処理部２３３は、ステップＳ１０１で新たな特徴点が抽出された場合、その特徴点に対応するデータを３次元マップ２２１から取得して、作業支援装置１００に送信する。さらに、送受信処理部２３３は、センサユニット２１６内のジャイロセンサ２０１と加速度センサ２０２から検出データを取得し、これらの検出データを作業支援装置１００に送信する。
【００９３】
図１０は、ＳＬＡＭ処理部２３１の内部構成例を示す図である。この図１０を用いて、図９のステップＳ１０１の処理について説明する。
ＳＬＡＭ処理部２３１は、例えば、特徴点検出部２３１ａ、マッチング部２３１ｂ、位置姿勢推定部２３１ｃおよびマップ登録部２３１ｄを備える。
【００９４】
特徴点検出部２３１ａは、入力されたカメラ画像から特徴点を複数抽出する。
マッチング部２３１ｂは、抽出された各特徴点と、３次元マップ２２１に登録された特徴点とのマッチング処理を実行する。なお、このマッチング処理では、例えば、カメラ画像と複数のキーフレームとの間で特徴点のマッチング処理が実行されてもよい。キーフレームとは、過去にカメラ３０１の位置姿勢の推定に成功したカメラ画像の中から、撮影時刻の差が所定時間以上であるといった条件に基づいて選択された画像である。
【００９５】
位置姿勢推定部２３１ｃは、マッチング処理の結果に基づいて、カメラ３０１の位置姿勢を推定する。なお、位置姿勢のデータは送受信処理部２３３に出力される。カメラ３０１の位置は、作業者の位置（具体的には、作業者の視点の位置）を近似的に示し、カメラ３０１の姿勢は、作業者の向き（具体的には、作業者の注目方向）を近似的に示す。
【００９６】
マップ登録部２３１ｄは、カメラ画像から抽出された特徴点のうち、３次元マップ２２１に登録されていない新たな特徴点についてのデータを、３次元マップ２２１に追加的に登録する。特徴点についてのデータとしては、例えば、３次元座標、特徴量、色情報が登録される。
【００９７】
なお、本実施の形態では上記のように、作業者が携帯するセンサデバイス（カメラ３０１、深度センサ３０２）を用いて、作業者の位置や注目方向が推定される。しかし、作業者の位置や注目方向は、他の方法によって検出されてもよい。例えば、作業現場に対応する３次元マップが事前に用意されている場合には、作業現場に１組以上のカメラおよび深度センサが固定的に設置されてもよい。そして、これらのセンサデバイスによる検出データと、事前に用意された３次元マップとに基づいて、作業者の位置や注目方向が推定されてもよい。
【００９８】
次に、作業支援装置１００の処理について説明する。
図１１は、作業支援装置で実行される処理の手順を示すフローチャートの例である。
［ステップＳ１１１］停留状態判定部１３３は、センサユニット２１６による検出データを送受信処理部１３１から取得し、この検出データに基づいて、作業者が停留状態かを判定する。停留状態であると判定された場合、停留状態判定部１３３は、ステップＳ１１２の処理を実行する。一方、停留状態でないと判定された場合、停留状態判定部１３３は、センサユニット２１６による次の検出データを送受信処理部１３１が受信するのを待機し、次の検出データが受信されると、その検出データに基づいてステップＳ１１１の処理を再度実行する。
【００９９】
［ステップＳ１１２］作業対象領域推定部１３４は、カメラ３０１の位置姿勢を送受信処理部１３１から取得し、この位置姿勢に基づいて、作業者の注目方向を示す注目方向ベクトルを算出する。また、作業対象領域推定部１３４は、３次元マップ１０２に登録された特徴点群の中から、作業者の注目方向（視線の方向）の近傍に存在する特徴点群のデータを抽出する。作業対象領域推定部１３４は、抽出された特徴点群のデータに基づいて、作業者が作業対象箇所に対する指差し動作を行っているかを判定する。指差し動作を行っていると判定された場合、作業対象領域推定部１３４は、指差し方向を示す指差し方向ベクトルを算出する。
【０１００】
［ステップＳ１１３］作業対象領域推定部１３４は、算出された注目方向ベクトルと指差し方向ベクトルとの平均ベクトルを算出する。作業対象領域推定部１３４は、作業者を起点として平均ベクトルの方向に沿った直線と、３次元マップ１０２に基づく３次元モデルとの干渉チェックを行うことで、作業対象領域を推定する。
【０１０１】
［ステップＳ１１４］作業対象箇所特定部１３５は、推定された作業対象領域における３次元モデルの幾何形状や色情報に基づいて、作業対象となる設備や装置の３次元モデルを特定し、特定結果に基づいて作業対象箇所の３次元座標を特定する。作業対象箇所特定部１３５は、特定された作業対象箇所の３次元座標を、ＡＲコンテンツデータベース１０１に登録する。
【０１０２】
［ステップＳ１１５］ＡＲコンテンツ作成処理部１３６は、作業支援装置１００のオペレータの操作にしたがって、特定された作業対象箇所に表示させるＡＲコンテンツを作成する。例えば、オペレータは、ＡＲコンテンツによって表示させる作業内容や注意事項のテキスト情報を入力する。このとき、オペレータは、作業者との会話を通じて入力内容を考えることができるので、本作業フェーズで作業する作業者にとって有用な情報を入力することができる。また、例えば、オペレータは、入力されたテキスト情報をどのような形態で表示させるかを、あらかじめ用意された表示形態の中から選択する。
【０１０３】
ＡＲコンテンツ作成処理部１３６は、オペレータによる登録操作に応じて、このようにして作成されたＡＲコンテンツを、ステップＳ１１４で登録された作業対象箇所の３次元座標に対応付けてＡＲコンテンツデータベース１０１に登録する。
【０１０４】
次に、図１２、図１３を用いて、ステップＳ１１１での停留状態の判定処理について説明する。
図１２は、停留状態の判定処理手順を示すフローチャートの例である。停留状態判定部１３３は、送受信処理部１３１が作業者端末２００ａからセンサユニット２１６による検出データを受信するたびに、図１２の処理を実行する。
【０１０５】
［ステップＳ１２１］作業対象領域推定部１３４は、送受信処理部１３１によって受信された、センサユニット２１６による検出データを取得する。具体的には、作業対象領域推定部１３４は、ジャイロセンサ２０１によって検出されたジャイロデータ（例えば、角速度データ）と、加速度センサ２０２によって検出された加速度データとを取得する。
【０１０６】
［ステップＳ１２２］作業対象領域推定部１３４は、取得されたジャイロデータと加速度データのそれぞれについて、ハイパスフィルタを用いてＡＣ（Alternating Current）成分を分離する。
【０１０７】
［ステップＳ１２３］作業対象領域推定部１３４は、ジャイロデータと加速度データのそれぞれについて、直近に算出されたＴ個のＡＣ成分を取得する。ここで取得されるＡＣ成分には、ステップＳ１２２で分離されたＡＣ成分も含まれる。作業対象領域推定部１３４は、ジャイロデータおよび加速度データのそれぞれについて、取得されたＴ個のＡＣ成分を用いてＳＭＡ（Signal Magnitude Area）を算出する。
【０１０８】
例えば、３軸の加速度データのＡＣ成分を用いたＳＭＡは、次の式（１）にしたがって算出される。なお、ｉは、Ｔ個のＡＣ成分のそれぞれに順に付与される番号を示し、ｘ（ｉ），ｙ（ｉ），ｚ（ｉ）は、ｉ番目のＡＣ成分のデータについてのｘ軸成分、ｙ軸成分、ｚ軸成分をそれぞれ示す。
ＳＭＡ＝Σ（｜ｘ（ｉ）｜＋｜ｙ（ｉ）｜＋｜ｚ（ｉ）｜）／Ｔ      ・・・（１）
［ステップＳ１２４］作業対象領域推定部１３４は、算出されたＳＭＡを所定の閾値と比較する。ここでは、ジャイロデータと加速度データのそれぞれに対して個別に閾値ＴＨ１，ＴＨ２が設定される。ジャイロデータに基づくＳＭＡが閾値ＴＨ１以下であり、かつ、加速度データに基づくＳＭＡが閾値ＴＨ２以下である場合、作業対象領域推定部１３４は、ステップＳ１２５の処理を実行する。一方、上記条件を満たさない場合、作業対象領域推定部１３４は、ステップＳ１２６の処理を実行する。
【０１０９】
［ステップＳ１２５］作業対象領域推定部１３４は、作業者が停留状態であると判定する。
［ステップＳ１２６］作業対象領域推定部１３４は、作業者が移動状態である（停留状態でない）と判定する。
【０１１０】
前述した図１１の処理では、ステップＳ１１１において、上記のステップＳ１２５，Ｓ１２６の判定結果が用いられる。作業対象箇所に対する作業を行っているとき、作業者の立ち位置はほとんど移動しないと考えられる。そこで、図１１の処理では、作業者が停留状態であるとき、作業者が作業領域に位置して作業中であると判断され、このような状態でのみステップＳ１１２以降の処理、すなわち、作業対象箇所を特定するための処理が実行される。これにより、作業対象箇所を精度よく特定できるようになる。また、作業中でない状態では作業対象箇所の特定処理の実行が停止されるので、作業支援装置１００の処理負荷を軽減できる。
【０１１１】
図１３は、停留状態の判定例を示す図である。図１３では例として、加速度センサ２０２による３軸の加速度データに基づいて停留状態が判定されるものとする。図１３において、グラフ１３３ａは、加速度データの遷移を示し、グラフ１３３ｂは、ＳＭＡの遷移を示す。この図１３の例では、ＳＭＡと閾値ＴＨとが比較されることで、期間Ｔ１，Ｔ３で移動状態と判定され、期間Ｔ２で停留状態と判定されている。
【０１１２】
なお、上記のように、本実施の形態では、作業者の移動状態を検出するためのセンサデバイスの一例として、ジャイロセンサ２０１と加速度センサ２０２を用いたが、これらのセンサに限定されるものではない。例えば、ＳＬＡＭ処理部２３１によって推定されるカメラ３０１の位置に基づいて、作業者の移動状態が検出されてもよい。
【０１１３】
次に、図１１のステップＳ１１２，Ｓ１１３に示した作業対象領域推定部１３４の処理について説明する。
ステップＳ１１２において、作業対象領域推定部１３４は、作業者の注目方向を示す注目方向ベクトルを算出する。また、作業対象領域推定部１３４は、作業者が作業対象箇所に対する指差し動作を行っている場合、その指差し方向を示す指差し方向ベクトルを算出する。
【０１１４】
注目方向ベクトルと指差し方向ベクトルは、例えば、大きさが同一のベクトル（例えば、単位ベクトル）として算出される。また、注目方向ベクトルの方向は、送受信処理部１３１が作業者端末２００ａから受信したカメラ３０１の姿勢の方向として算出される。一方、指差し方向ベクトルは、次の図１４、図１５に示すような処理によって算出される。
【０１１５】
図１４は、指差し方向ベクトルの算出手順を示すフローチャートの例である。また、図１５は、手および円筒の３次元モデルの例を示す図である。
［ステップＳ１３１］作業対象領域推定部１３４は、３次元マップ１０２から、作業者の注目方向（視線の方向）に存在する特徴点群のデータを取得する。この処理では、作業対象領域推定部１３４は、例えば、カメラ３０１の位置姿勢と、あらかじめ求められたカメラ３０１のカメラパラメータとに基づいて、カメラ画像に写り込んでいる特徴点群のデータを３次元マップ１０２から取得する。
【０１１６】
［ステップＳ１３２］作業対象領域推定部１３４は、ステップＳ１３１で取得された特徴点群と、あらかじめ用意された手の３次元モデルとのマッチングを行う。手の３次元モデルとしては、例えば、図１５に示す３次元モデル４３１のように、腕から手の先までの形状を示すモデルが使用される。また、マッチング処理としては、例えば、ＩＣＰ（Iterative Closet Points）アルゴリズムを用いることができる。
【０１１７】
［ステップＳ１３３］作業対象領域推定部１３４は、マッチングに成功した場合、すなわち、指差し動作が検出された場合には、ステップＳ１３４の処理を実行し、マッチングに失敗した場合、指差し方向のベクトル算出処理を終了する。
【０１１８】
［ステップＳ１３４］作業対象領域推定部１３４は、マッチングの結果から、腕部（肘から手の先までの領域）を特定する。
［ステップＳ１３５］作業対象領域推定部１３４は、特定された腕部の３次元形状を、図１５に例示するような円筒形状モデル４３２によって近似する。
【０１１９】
［ステップＳ１３６］作業対象領域推定部１３４は、近似された円筒形状モデル４３２の軸と同一の方向を有し、あらかじめ決められた大きさ（注目方向ベクトルと同じ大きさ）を有する指差し方向ベクトルを算出する。図１５では、円筒形状モデル４３２の軸の方向、すなわち指差し方向ベクトルの方向を、矢印４３３によって表している。
【０１２０】
図１６は、ベクトルに基づく作業対象領域の推定処理例を示す図である。この図１６を用いて、図１１のステップＳ１１３の処理例について説明する。
作業対象領域推定部１３４は、注目方向ベクトルＶ１と指差し方向ベクトルＶ２とを平均した平均ベクトルＶ３を算出する。また、作業対象領域推定部１３４は、作業者の目の位置と、作業者の指先の位置との中間点Ｐ１を算出する。なお、目の位置は、カメラ３０１の位置として特定され、指先の位置は、図１４の処理でマッチングに成功した手の３次元モデルから特定される。
【０１２１】
作業対象領域推定部１３４は、中間点Ｐ１を起点とし、平均ベクトルＶ３の方向に延びる直線Ｌ１を設定する。ただし、指差し動作が検出されていない場合には、作業者の目の位置を起点とし、注目方向ベクトルＶ１の方向に延びる直線が、直線Ｌ１として設定される。そして、作業対象領域推定部１３４は、設定された直線Ｌ１と、３次元マップ２２１に登録された３次元モデルの特徴点群とが交差する交点Ｐ２を特定し、交点Ｐ２を中心とした一定の３次元領域を、作業対象領域として設定する。図１６の例では、交点Ｐ２を中心として３軸方向にそれぞれ一定距離の位置に内接する立方体４４１が、作業対象領域として設定されている。
【０１２２】
設定された作業対象領域に含まれる、３次元モデルの特徴点群４４２が、図１１のステップＳ１１４において作業対象箇所特定部１３５によって利用される。すなわち、上記処理により、作業対象箇所を特定するために利用される３次元モデルのデータが、３次元マップ１０２の中から絞り込まれる。
【０１２３】
なお、図１１では、作業者が停留状態となった直後のタイミングでのみ、注目方向ベクトルと指差し方向ベクトルとが算出された。しかし、停留状態と判定されている期間内の複数のタイミングにおいて、それぞれベクトルの算出が行われてもよい。例えば、停留期間内で画像データおよびカメラ３０１の位置姿勢が入力されるたびに、注目方向ベクトルが算出され、各注目方向ベクトルと１つの指差し方向ベクトルとの平均により平均ベクトルが算出されてもよい。
【０１２４】
次に、図１１のステップＳ１１４に示した作業対象箇所特定部１３５の処理について説明する。
図１７は、作業対象箇所の特定処理手順を示すフローチャートの例である。
【０１２５】
［ステップＳ１４１］作業対象箇所特定部１３５は、３次元マップ１０２から、作業対象領域推定部１３４によって特定された作業対象領域に含まれる特徴点群のデータを、処理対象として取得する。
【０１２６】
［ステップＳ１４２］作業対象箇所特定部１３５は、取得された特徴点群の３次元座標に基づいて、３次元モデル上の平面領域を抽出する。
［ステップＳ１４３］作業対象箇所特定部１３５は、抽出された平面領域の中から、所定の条件に合致しない平面領域を選択し、その平面領域を示す特徴点群のデータを処理対象から（すなわち、ステップＳ１４１で取得された特徴点群から）削除する。この処理では、作業対象領域に含まれる３次元モデルから、作業対象箇所を含まないと推定される平面領域を削除して、作業対象箇所の特定するための領域を絞り込む。例えば、一定の大きさ以上の平面領域は作業対象箇所でないと判断されて、その平面領域が作業対象箇所を特定するための領域から除外される。
【０１２７】
［ステップＳ１４４］作業対象箇所特定部１３５は、処理対象の特徴点群のデータに基づいて、作業対象箇所の近似形状を特定する。例えば、作業対象箇所の近似形状は、処理対象の特徴点群に基づく３次元モデルから、色情報に基づき、特徴的な色が存在する部分を切り出すことで特定される。また、作業対象箇所の形状を示す３次元モデルがあらかじめ用意されている場合には、処理対象の特徴点群と用意された３次元モデルとのマッチングにより、作業対象箇所の近似形状が特定されてもよい。
【０１２８】
［ステップＳ１４５］作業対象箇所特定部１３５は、特定された近似形状における重心の３次元座標を、作業対象箇所の３次元座標としてＡＲコンテンツデータベース１０１に登録する。
【０１２９】
図１８は、平面領域の抽出処理手順を示すフローチャートの例である。この図１８を用いて、図１７のステップＳ１４２における平面抽出処理の例について説明する。
［ステップＳ１５１］作業対象箇所特定部１３５は、処理対象の特徴点群のデータに基づき、作業対象領域からノーマルベクトルとエッジを抽出する。
【０１３０】
［ステップＳ１５２］作業対象箇所特定部１３５は、ノーマルベクトルとエッジの抽出結果に基づいてピクセルセグメンテーションを行い、作業対象領域から小領域を１つ抽出する。
【０１３１】
［ステップＳ１５３］作業対象箇所特定部１３５は、抽出された小領域に含まれる画素数（ここでは、特徴点の数）が、所定の閾値αより大きいかを判定する。作業対象箇所特定部１３５は、画素数が閾値αより大きい場合、ステップＳ１５４の処理を実行し、画素数が閾値α以下の場合、ステップＳ１５７の処理を実行する。
【０１３２】
［ステップＳ１５４］作業対象箇所特定部１３５は、抽出された小領域に含まれる特徴点群のデータに基づき、ＲＡＮＳＡＣ（Random Sample Consensus）によって平面モデルを推定する。
【０１３３】
［ステップＳ１５５］作業対象箇所特定部１３５は、推定された平面モデルに含まれる特徴点群を示すインライアの数が、所定の閾値βより大きいかを判定する。作業対象箇所特定部１３５は、インライアの数が閾値βより大きい場合、ステップＳ１５６の処理を実行し、インライアの数が閾値β以下の場合、ステップＳ１５７の処理を実行する。
【０１３４】
［ステップＳ１５６］作業対象箇所特定部１３５は、推定された平面モデルを調整し、平面の境界線を抽出する。このステップＳ１５６の処理が実行された場合には、ステップＳ１５２で抽出された小領域から平面領域が抽出されたことになる。
【０１３５】
［ステップＳ１５７］作業対象箇所特定部１３５は、作業対象領域の全体についてステップＳ１５２〜Ｓ１５６の処理が完了したかを判定する。作業対象箇所特定部１３５は、未実行の領域がある場合、処理をステップＳ１５２に進めて、未実行の領域についてステップＳ１５２以降の処理を実行する。一方、作業対象箇所特定部１３５は、領域全体について処理が完了した場合、平面抽出処理を終了する。
【０１３６】
なお、以上の図１８の処理では、作業対象領域に含まれる特徴点群のデータを用いて平面抽出処理が実行されたが、他の例として、深度センサ３０２によって検出された、カメラ画像の画素ごとの深度データを用いて平面抽出処理が実行されてもよい。
【０１３７】
図１９は、領域の絞り込み処理手順を示すフローチャートの例である。この図１９を用いて、図１７のステップＳ１４３における領域の絞り込み処理の例について説明する。図１９では例として、抽出された平面領域の大きさ、および、各平面領域と作業者の位置（カメラ３０１の位置）との距離に基づいて、作業対象箇所を含む可能性のある平面領域が探索される。そして、そのような平面領域が見つかった場合には、それ以外の平面領域が、作業対象箇所を特定するための領域から除外される。
【０１３８】
［ステップＳ１６１］作業対象箇所特定部１３５は、図１８の処理によって抽出された各平面領域と、作業者との距離、すなわちカメラ３０１との距離を算出する。作業対象箇所特定部１３５は、抽出された平面領域を作業者との距離が近い順にソートする。
【０１３９】
［ステップＳ１６２］作業対象箇所特定部１３５は、抽出された平面領域を１つ選択する。ここでは、ステップＳ１６２の処理が実行されるたびに、ソートされた順序にしたがって先頭から１つ平面領域が選択される。作業対象箇所特定部１３５は、選択された平面領域の面積を算出する。
【０１４０】
［ステップＳ１６３］作業対象箇所特定部１３５は、算出された面積が所定の閾値以内かを判定する。作業対象箇所特定部１３５は、面積が閾値以内の場合、ステップＳ１６６の処理を実行し、面積が閾値を超える場合、ステップＳ１６４の処理を実行する。なお、このステップＳ１６３では、他の例として、選択された平面領域の縦横のそれぞれの大きさがそれぞれ所定の閾値以内かが判定されてもよい。
【０１４１】
［ステップＳ１６４］作業対象箇所特定部１３５は、図１８の処理によって抽出されたすべての平面領域について処理対象として選択済みかを判定する。作業対象箇所特定部１３５は、未選択の平面領域がある場合、処理をステップＳ１６２に進め、未選択の平面領域の中から１つを選択する。一方、作業対象箇所特定部１３５は、すべての平面領域について選択済みの場合、ステップＳ１６５の処理を実行する。
【０１４２】
［ステップＳ１６５］このケースでは、抽出されたすべての平面領域の面積が閾値より大きく、作業対象箇所を含まない可能性が高いと判定される。そのため、作業対象箇所特定部１３５は、作業対象領域に含まれる３次元モデルから、推定されたすべての平面領域を削除する。これにより、作業対象箇所特定の処理対象となる特徴点群のデータが絞り込まれる。
【０１４３】
［ステップＳ１６６］作業対象箇所特定部１３５は、ステップＳ１６２で選択された平面領域を、作業対象箇所を含む可能性のある領域として特定する。この場合、作業対象箇所特定部１３５は、図１８の処理によって抽出された平面領域の中から、ステップＳ１６２で選択された平面領域以外の他の平面領域を削除対象として選択し、作業対象領域に含まれる３次元モデルから、削除対象の平面領域を削除する。これにより、作業対象箇所特定の処理対象となる特徴点群のデータが絞り込まれる。
【０１４４】
以上の図１９の処理によれば、抽出された平面領域の中から、面積が閾値以下であり、かつ、作業者の位置に最も近い平面領域が、作業対象箇所を含む可能性のある領域として作業対象領域に残され、その他の平面領域が作業対象領域から削除される。
【０１４５】
図２０は、平面の抽出および領域絞り込みの処理例を示す図である。図２０の例では、カメラ画像４５１において、構造物４５２，４５３の３次元モデルが写っているものとする。そして、構造物４５２から平面領域４５２ａが抽出され、構造物４５３から平面領域４５３ａが抽出されたとする。さらに、例えば、図１９の処理によって、作業対象箇所を含む可能性のある領域として平面領域４５２ａが選択されたとする。
【０１４６】
この場合、平面領域４５３ａは、構造物４５２の背景領域の可能性があると推定されて、作業対象領域から削除される。一方、平面領域４５２ａが検出された構造物４５２は、その大きさが小さく、かつ、作業者側に突出していると推定されることから、作業対象箇所を含む可能性があると判断される。
【０１４７】
次に、図１７のステップＳ１４４の処理例について説明する。前述のように、ステップＳ１４４では、処理対象の特徴点群のデータに基づいて、作業対象箇所の近似形状が特定される。この処理では、例えば、色情報に基づく切り出し処理が実行される。
【０１４８】
図２１は、色情報に基づく切り出し処理手順を示すフローチャートの例である。
［ステップＳ１７１］作業対象箇所特定部１３５は、処理対象の各特徴点についての３次元座標と色情報とを、３次元マップ１０２から取得する。
【０１４９】
［ステップＳ１７２］作業対象箇所特定部１３５は、色ごとの画素数（特徴点数）をカウントし、そのカウント結果に基づいて同色の領域（特徴点群）を抽出する。
［ステップＳ１７３］作業対象箇所特定部１３５は、抽出された同色領域の中から、背景として除去が必要な領域があるかを判定する。例えば、特徴点全体の数に対する大きさの（特徴点数）の割合が一定以上の同色領域が、除去が必要な領域と判定される。作業対象箇所特定部１３５は、除去が必要な領域がある場合、ステップＳ１７４の処理を実行し、除去が必要な領域がない場合、ステップＳ１７５の処理を実行する。
【０１５０】
［ステップＳ１７４］作業対象箇所特定部１３５は、除去が必要と判定された同色領域、すなわち背景領域に含まれる特徴点を、処理対象から除外する。これにより、作業対象領域に含まれる３次元モデルから背景領域が除去される。
【０１５１】
［ステップＳ１７５］作業対象箇所特定部１３５は、作業者の位置と向き（すなわち、カメラ３０１の位置姿勢）に基づいて、同色領域の中から最も大きい領域を特定する。例えば、作業対象箇所特定部１３５は、同色領域のそれぞれについて、作業者の位置から見た場合の面積を算出し、算出された面積が最も大きい同色領域を特定する。作業対象箇所特定部１３５は、特定された同色領域を、作業対象箇所の近似形状として３次元モデルから切り出す。
【０１５２】
以上の図２１の処理によれば、同色領域のうち、ある程度大きい領域については、背景領域と推定されて作業対象箇所に含まれる３次元モデルから除去される。そして、残りの同色領域の中から最も大きい同色領域が、特徴的な色の領域であり、作業対象箇所を含むと推定される領域として特定される。
【０１５３】
作業対象箇所特定部１３５は、以上のようにして特定された同色領域に含まれる３次元モデルを、作業対象箇所の近似形状として特定する。そして、図１７のステップＳ１４５において、作業対象箇所特定部１３５は、特定された近似形状における重心の３次元座標を、作業対象箇所の３次元座標としてＡＲコンテンツデータベース１０１に登録する。
【０１５４】
図２２は、平面抽出および色情報に基づく切り出しによる作業対象箇所の特定処理例を示す図である。作業対象箇所は、実際には３次元形状として特定されるが、図２２では便宜的に、カメラ画像４６１の撮影方向を基準として作業対象箇所の特定処理について説明する。
【０１５５】
図２２の例では、図１９に示した平面抽出処理により、平面領域４６２，４６３が抽出されている。また、これらのうち、平面領域４６２が作業対象箇所を含む可能性のある領域として特定される一方、平面領域４６３は、作業対象領域に含まれる３次元モデルから削除される。
【０１５６】
次に、平面領域４６３が削除された作業対象領域に含まれる各特徴点について、図２１に示した色情報に基づく切り出し処理が実行され、同色領域４６４が特定される。その結果、３次元モデルから同色領域４６４に対応する３次元形状４６５が、作業対象箇所の近似形状として特定され、この３次元形状４６５の重心４６５ａの３次元座標が、作業対象箇所の３次元座標としてＡＲコンテンツデータベース１０１に登録される。
【０１５７】
なお、上記の図２２の処理では、作業対象箇所を含む可能性の低い領域を除去することのみを目的として、平面抽出処理が実行されていた。しかし、他の例として、作業対象箇所を含む可能性の高い領域を絞り込むことを目的として、平面抽出処理が実行されてもよい。例えば、図２２において、色情報に基づく切り出し処理が、平面領域４６２に含まれる特徴点群の色情報だけを用いて実行されてもよい。
【０１５８】
また、作業対象箇所の近似形状の特定処理では、前述のように、あらかじめ用意された、作業対象箇所の形状を示す３次元モデルを用いたマッチング処理が行われてもよい。この場合、例えば、作業対象箇所に含まれる３次元モデル全体からマッチングが行われてもよいし、図２２の右上に示したカメラ画像４６１のように、背景の平面領域が除去された領域からマッチングが行われてもよい。さらに、３次元モデルを用いたマッチングと、色情報に基づく切り出しとが併用されてもよい。この場合、例えば、それぞれの処理によって作業対象箇所として特定された領域の重複部分が、作業対象箇所の近似形状として最終的に特定される。
【０１５９】
以上のように、作業対象箇所特定部１３５は、作業対象領域における３次元モデルの幾何形状や色情報などに基づいて、作業対象となる設備や装置の３次元モデルの領域を特定できる。ここで、作業対象領域推定部１３４により、作業者の注目方向や指差し方向に基づいて作業対象領域が絞り込まれ、作業対象箇所特定部１３５は、このような作業対象領域に含まれる３次元モデルのみから作業対象箇所を探索する。これにより、作業対象箇所特定部１３５は、作業対象箇所を精度よく特定できる。
【０１６０】
なお、以上説明した第２の実施の形態に係る作業支援システムは、次のように変形することができる。例えば、作業支援装置１００の処理機能の一部を、作業者端末２００ａが備えてもよい。一例として、停留状態判定部１３３の処理機能を作業者端末２００ａが備えてもよい。この場合、作業者端末２００ａにおいて、センサユニット２１６の検出データに基づいて停留状態か否かが判定される。そして、停留状態であると判定されている期間において、作業者端末２００ａからカメラ３０１の位置姿勢が作業支援装置１００に送信される。これにより、センサユニット２１６の検出データとカメラ３０１の位置姿勢とを作業支援装置１００に常時送信しなくてよくなり、ネットワークの通信負荷を軽減できる。
【０１６１】
また、作業者端末２００ａの処理機能の一部を、作業支援装置１００が備えてもよい。例えば、ＳＬＡＭ処理部２３１の処理機能を作業支援装置１００が備えてもよい。この場合、作業者端末２００ａから画像データと深度データとが作業支援装置１００に送信され、作業支援装置１００においてＳＬＡＭ処理が実行される。
【０１６２】
なお、上記の各実施の形態に示した装置（例えば、情報処理装置１、作業支援装置１００、作業者端末２００ａ，２００ｂ）の処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disc）、ブルーレイディスク（ＢＤ）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。
【０１６３】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１６４】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムにしたがった処理を実行することもできる。
【符号の説明】
【０１６５】
１  情報処理装置
１ａ  記憶部
１ｂ  演算部
２  作業現場
２ａ  ３次元モデル
２ｂ  ３次元モデルデータ
３  作業者
４  作業対象
５ａ，５ｂ  部分領域
５ｃ  ３次元座標
Ｄ１，Ｄ１ａ  向き
Ｓ１〜Ｓ３  ステップ
【図１】
2019121136.tif 000003
【図２】
2019121136.tif 000004
【図３】
2019121136.tif 000005
【図４】
2019121136.tif 000006
【図５】
2019121136.tif 000007
【図６】
2019121136.tif 000008
【図７】
2019121136.tif 000009
【図８】
2019121136.tif 000010
【図９】
2019121136.tif 000011
【図１０】
2019121136.tif 000012
【図１１】
2019121136.tif 000013
【図１２】
2019121136.tif 000014
【図１３】
2019121136.tif 000015
【図１４】
2019121136.tif 000016
【図１５】
2019121136.tif 000017
【図１６】
2019121136.tif 000018
【図１７】
2019121136.tif 000019
【図１８】
2019121136.tif 000020
【図１９】
2019121136.tif 000021
【図２０】
2019121136.tif 000022
【図２１】
2019121136.tif 000023
【図２２】
2019121136.tif 000024