(57)【特許請求の範囲】
【請求項１】
ユーザーにより指定された構造体を操作する作業ロボットが導入される環境を、事前にモデル化する操作環境モデル構築システムであって、
前記環境内にある被操作体の計測により得られる立体像と、前記被操作体に対して作業ロボットにより行われるべき操作内容を示す操作情報とを取得する操作端末と、
前記操作端末が取得した前記立体像に対して幾何プリミティブを適応させて前記被操作体の幾何的特性を示す幾何情報と、前記被操作体の空間位置を示す位置情報とを、前記操作端末から送信された前記操作情報と関連付けて記憶するサーバーと、
を具備した操作環境モデル構築システム。
【請求項２】
前記被操作体の幾何的特性は、前記立体像に対する複数の前記幾何プリミティブの適応によって表現されることを特徴とする請求項１に記載の操作環境モデル構築システム。
【請求項３】
前記幾何情報は、前記立体像に対して適応された複数の前記幾何プリミティブの形状を示す情報を含むことを特徴とする請求項１又は２に記載の操作環境モデル構築システム。
【請求項４】
前記幾何情報は、前記立体像に対して適応された複数の前記幾何プリミティブの位置を示す情報を含むことを特徴とする請求項１乃至３のいずれか一項に記載の操作環境モデル構築システム。
【請求項５】
前記操作情報は、少なくとも前記被操作体の移動方向を示すための情報を含むことを特徴とする請求項１乃至４のいずれか一項に記載の操作環境モデル構築システム。
【請求項６】
前記位置情報の取得及び前記幾何情報の生成は、前記被操作体に対する操作内容のユーザーによる割り当てに応じて実行されることを特徴とする請求項１乃至５のいずれか一項に記載の操作環境モデル構築システム。
【請求項７】
記憶対象となる前記操作情報は、操作内容の類型化に応じて予め用意された複数の操作情報の中からユーザーにより選択された操作情報であることを特徴とする請求項１乃至６のいずれか一項に記載の操作環境モデル構築システム。
【請求項８】
前記被操作体に対して前記幾何プリミティブが適応された状態の画像を生成することを特徴とする請求項１乃至７のいずれか一項に記載の操作環境モデル構築システム。
【請求項９】
前記操作情報の内容は変更可能に構成されていることを特徴とする請求項１乃至８のいずれか一項に記載の操作環境モデル構築システム。
【請求項１０】
前記被操作体の周囲にある特徴を抽出し、この特徴の空間位置を事前に記憶し、
前記特徴を再度抽出し、今回抽出した前記特徴に対して登録済みの前記特徴を空間的にフィッティングし、事前登録された前記特徴に対して相対位置が定められた情報を前記フィッティングの結果に応じた位置に表示することを特徴とする請求項１乃至９のいずれか一項に記載の操作環境モデル構築システム。
【請求項１１】
ユーザーにより持ち運び可能な端末装置と、
前記端末装置に対して通信可能に接続されたサーバと、を含み、
前記端末装置は、前記位置情報の取得を実行し、
前記サーバは、前記幾何情報の生成を実行する、請求項１乃至１０のいずれか一項に記載の操作環境モデル構築システム。
【請求項１２】
請求項１１に記載の操作環境モデル構築システムと、
前記操作環境モデル構築システムに対して通信可能に構成された作業ロボットと、
を備えるシステムであって、
前記作業ロボットは、前記被操作体の位置を特定するための位置情報を前記サーバに対して送信し、
前記サーバは、前記作業ロボットから受信した前記位置情報に対して関連付けられた前記操作情報を前記端末装置に対して送信し、
前記端末装置は、前記サーバから送信した前記操作情報に基づいて、前記作業ロボットに対する作業指示の入力を前記ユーザーに対して要求する、システム。
【請求項１３】
ユーザーにより指定された構造体を操作する作業ロボットが導入される環境を、事前にモデル化する操作環境モデルの構築方法であって、
前記環境内にある被操作体の計測により得られる立体像と、前記被操作体に対して作業ロボットにより行われるべき操作内容を示す操作情報とを操作端末により取得し、
前記操作端末により取得された前記立体像に対して幾何プリミティブを適応させて前記被操作体の幾何的特性を示す幾何情報と、前記被操作体の空間位置を示す位置情報とを、前記操作端末から送信された前記操作情報と関連付けてサーバーに記憶する、操作環境モデルの構築方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操作環境モデル構築システム、および操作環境モデル構築方法に関する。
【背景技術】
【０００２】
様々な環境へロボット技術を適用する試みが従来から為されている。
【０００３】
特許文献１には、一般家庭、オフィス、ホテル、店舗及び病院等のヒトが活動を行う生活空間内でロボットに物品の移動作業を実行させるシステムが開示されている。特許文献１では、電子タグを使って物品を識別可能とした状態が予め構築されている（例えば、同文献の段落００２９、００６６〜００６７参照）。作業ロボットによる物品の移動等は、電子タグから得られる情報に基づいて行われる（例えば、同文献の段落０１５３参照）。特許文献２には、同文献の図１４、１５に示されているように、操作画面を介して、物品を移動させる手順が開示されている。
【０００４】
特許文献３には、作業ロボットに対して適切な作業指示を与えることができるロボット作業教示システムが開示されている。同文献の図３に示されているように、対象物の物体モデルを選択し（同文献の段落００２７参照）、その後作業モデルを選択している（同文献の段落００２８参照）。同文献の図４は、画面例であり、同文献の図５は、作業対象物の種類を指定するアイコンリストであり、同文献の図６は、対象物に対する作業を指定するアイコンリストである。
【０００５】
特許文献４には、視覚センサを有するロボットの動作をオフラインで疑似的に遂行するロボットシミュレーション装置が開示されている。特許文献５には、指定された素形状モデルを３次元データに対してフィッティングし、この結果に基づいて適切な把持パターンをデータベースから取得することが開示されている（同文献の図２参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３７３８２５６号
【特許文献２】特許第３７１３０２１号
【特許文献３】特開２００８−６８３４８号公報
【特許文献４】特許第４１５３５２８号
【特許文献５】特開２００９−２１４２１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
作業ロボットが導入される環境を事前にモデル化することが行われる場合がある。端的には、家具、扉等の構造物に対するロボットの操作を円滑化するため、それらのモデル化を事前に行う場合がある。作業ロボットが構造物を操作するためには、その構造物のどの部位をどのように操作すべきかの情報が必要であるためである。
【０００８】
しかしながら、そのような周辺環境をＣＡＤ等によって３次元的にモデル化する作業は、専門家をしても手間がかかり、この作業負担を無視することはできない。また、ロボットの導入環境毎にモデル化を行う必要が生じる場合があり、全体的な導入コスト／導入負担は著しいものと成り得る。仮に、ロボット導入後の環境変化（例えば、家具のレイアウト変更、増改築等）があると、適宜、既存の３次元モデルを修正する必要が生じ、メンテナンス負担が増大してしまうおそれもある。
【０００９】
上述の説明から明らかなように、作業ロボットの導入環境のモデル化負担を低減することが強く求められている。
【課題を解決するための手段】
【００１０】
本発明に係る操作環境モデル構築システムは、被操作体の計測により得られる立体像に対して幾何プリミティブを適応させて前記被操作体の幾何的特性を示す幾何情報を生成し、前記幾何情報の生成対象である前記被操作体の空間位置を示す位置情報を取得し、前記被操作体に対して作業ロボットにより行われるべき操作内容を示す操作情報を、生成された前記幾何情報及び取得された前記位置情報に対して関連付けて記憶する。
【００１１】
前記被操作体の幾何的特性は、前記立体像に対する複数の前記幾何プリミティブの適応によって表現される、と良い。
【００１２】
前記幾何情報は、前記立体像に対して適応された複数の前記幾何プリミティブの形状を示す情報を含む、と良い。
【００１３】
前記幾何情報は、前記立体像に対して適応された複数の前記幾何プリミティブの位置を示す情報を含む、と良い。
【００１４】
前記操作情報は、少なくとも前記被操作体の移動方向を示すための情報を含む、と良い。
【００１５】
前記位置情報の取得及び前記幾何情報の生成は、前記被操作体に対する操作内容のユーザーによる割り当てに応じて実行される、と良い。
【００１６】
記憶対象となる前記操作情報は、操作内容の類型化に応じて予め用意された複数の操作情報の中からユーザーにより選択された操作情報である、と良い。
【００１７】
前記被操作体に対して前記幾何プリミティブが適応された状態の画像を生成する、と良い。
【００１８】
前記操作情報の内容は変更可能に構成されている、と良い。
【００１９】
前記被操作体の周囲にある特徴を抽出し、この特徴の空間位置を事前に記憶し、前記特徴を再度抽出し、今回抽出した前記特徴に対して登録済みの前記特徴を空間的にフィッティングし、事前登録された前記特徴に対して相対位置が定められた情報を前記フィッティングの結果に応じた位置に表示する、と良い。
【００２０】
上述のいずれか一項に記載の操作環境モデル構築システムは、ユーザーにより持ち運び可能な端末装置と、前記端末装置に対して通信可能に接続されたサーバと、を含み、前記端末装置は、前記位置情報の取得を実行し、前記サーバは、前記幾何情報の生成を実行する、と良い。
【００２１】
本発明に係るシステムは、上述の操作環境モデル構築システムと、前記操作環境モデル構築システムに対して通信可能に構成された作業ロボットと、を備えるシステムであって、前記作業ロボットは、前記被操作体の位置を特定するための位置情報を前記サーバに対して送信し、前記サーバは、前記作業ロボットから受信した前記位置情報に対して関連付けられた前記操作情報を前記端末装置に対して送信し、前記端末装置は、前記サーバから送信した前記操作情報に基づいて、前記作業ロボットに対する作業指示の入力を前記ユーザーに対して要求する。
【００２２】
本発明に係る操作環境モデルの構築方法は、システムは、被操作体の計測により得られる立体像に対して幾何プリミティブを適応させて前記被操作体の幾何的特性を示す幾何情報を生成し、前記システムは、前記幾何情報の生成の被対象物である前記被操作体の空間位置を示す位置情報を取得し、前記システムは、作業ロボットにより行われるべき操作内容を示す操作情報を、生成された前記幾何情報及び取得された前記位置情報に対して関連付けて記憶する。
【発明の効果】
【００２３】
本発明によれば、作業ロボットの導入環境のモデル化負担を低減することが可能になる。
【図面の簡単な説明】
【００２４】
【図１】実施の形態１にかかるシステムの概略的なブロック図である。
【図２】実施の形態１にかかる端末装置の概略図である。
【図３】実施の形態１にかかる端末装置の使用状態を示す概略図である。
【図４】実施の形態１にかかる作業ロボットの動作状態を示す概略図である。
【図５】実施の形態１にかかる環境モデリングサーバの概略的なブロック図である。
【図６】実施の形態１にかかる端末装置の概略的なブロック図である。
【図７】実施の形態１にかかる３Ｄ画像取得部の概略的なブロック図である。
【図８】実施の形態１にかかる端末装置に組み込まれた位置姿勢情報取得部の概略的なブロック図である。
【図９】実施の形態１にかかる作業ロボットの概略的なブロック図である。
【図１０】実施の形態１にかかる作業ロボットに組み込まれた位置姿勢情報取得部の概略的なブロック図である。
【図１１】実施の形態１にかかるシステムの概略動作を示すフローチャートである。
【図１２】実施の形態１にかかる操作タグの配置動作を示す概略的なフローチャートである。
【図１３】実施の形態１にかかる操作タグの配置動作時の表示画像を示す図である。
【図１４】実施の形態１にかかる操作タグの配置動作時の表示画像を示す図である。
【図１５】実施の形態１にかかる操作タグの配置動作時の表示画像を示す図である。
【図１６】実施の形態１にかかる操作タグの配置動作時の表示画像を示す図である。
【図１７】実施の形態１にかかる操作タグの配置動作時の表示画像を示す図である。
【図１８】実施の形態１にかかる画像として表示される操作アイコンを示す図である。
【図１９】実施の形態１にかかる操作タグデータベースに格納される操作タグのデータ構造を示す模式図である。
【図２０】実施の形態１にかかる幾何プリミティブと指示動作内容との関係を示す模式図である。
【図２１】実施の形態１にかかる幾何プリミティブと指示動作内容との組み合わせの変形例を示す模式図である。
【図２２】実施の形態１にかかる操作情報の変更手順を示す概略的なフローチャートである。
【図２３】実施の形態１にかかる操作情報の変更時の表示画像を示す図である。
【図２４】実施の形態１にかかる操作情報の変更時の表示画像を示す図である。
【図２５】実施の形態１にかかる操作情報の変更時の表示画像を示す図である。
【図２６】実施の形態１にかかる操作情報の変更時の表示画像を示す図である。
【図２７】実施の形態１にかかる操作タグの配置状態を模式的に示す仮想図である。
【図２８】実施の形態１にかかる作業ロボットに対する操作指示手順を示す概略的なフローチャートである。
【図２９】実施の形態１にかかる作業ロボットに対する操作指示時の表示画像を示す図である。
【図３０】実施の形態１にかかる作業ロボットに対する操作指示時の表示画像を示す図である。
【図３１】実施の形態１にかかる作業ロボットに対する操作指示時の表示画像を示す図である。
【図３２】実施の形態１にかかる作業ロボットに対する操作指示時の表示画像を示す図である。
【図３３】実施の形態１にかかる作業ロボットに対する操作指示時の表示画像を示す図である。
【図３４】実施の形態１にかかる幾何プリミティブのバリエーションを示す図である。
【図３５】実施の形態２にかかる環境モデリングサーバの概略的なブロック図である。
【図３６】実施の形態２にかかる被操作体の周囲にある特徴点の抽出状態を示す図である。
【図３７】実施の形態２にかかる操作タグデータベースに格納される操作タグのデータ構造を示す模式図である。
【図３８】実施の形態２にかかる特徴点の登録手順を示す概略的なフローチャートである。
【図３９】実施の形態２にかかる操作タグの位置修正表示手順を示す概略的なフローチャートである。
【図４０】実施の形態２にかかる被操作体の周囲にある特徴点の抽出状態を示す他の図である。
【発明を実施するための形態】
【００２５】
以下、図面を参照しながら、本発明の実施形態について説明する。各実施形態と個々に独立したものではなく、適宜、組み合わせることが可能であり、また、組み合わせに基づく相乗効果も主張可能なものとする。同一の要素には同一の符号を付し、重複説明は省略する。
【００２６】
実施の形態１
以下、図面を参照して本発明の実施の形態について説明する。図１は、システムの概略的なブロック図である。図２は、端末装置の概略図である。図３は、端末装置の使用状態を示す図である。図４は、作業ロボットの動作状態を示す図である。図５は、環境モデリングサーバの概略的なブロック図である。図６は、端末装置の概略的なブロック図である。図７は、３Ｄ画像取得部の概略的なブロック図である。図８は、位置姿勢情報取得部の概略的なブロック図である。図９は、作業ロボットの概略的なブロック図である。図１０は、作業ロボットに組み込まれた位置姿勢情報取得部の概略的なブロック図である。図１１は、システムの概略動作を示すフローチャートである。図１２は、操作タグの配置動作を示す概略的なフローチャートである。図１３〜図１７は、操作タグの配置動作時の表示画像を示す図である。図１８は、操作アイコンを示す図である。図１９は、操作タグデータベースに格納される操作タグのデータ構造を示す模式図である。図２０は、幾何プリミティブと指示動作内容との関係を示す模式図である。図２１は、幾何プリミティブと指示動作内容との組み合わせの変形例を示す模式図である。図２２は、操作情報の変更手順を示す概略的なフローチャートである。図２３乃至図２６は、操作情報の変更時の表示画像を示す図である。図２７は、操作タグの配置状態を模式的に示す仮想図である。図２８は、作業ロボットに対する操作指示手順を示す概略的なフローチャートである。図２９乃至図３３は、作業ロボットに対する操作指示時の表示画像を示す図である。図３４は、幾何プリミティブのバリエーションを示す図である。
【００２７】
図１に示すように、システム１００は、無線ネットワーク２０を介して互いに通信可能に接続された環境モデリングサーバ１０、端末装置３０、及び作業ロボット４０から構築される。なお、当業者であれば、適宜、システム変更をなすことが可能である。例えば、環境モデリングサーバ１０に対して、端末装置３０、作業ロボット４０の一部の機能を移設することも可能である（その逆も然り）。
【００２８】
環境モデリングサーバ１０は、一般的なサーバ装置であり、高度な演算処理を実行可能に構成され、かつデータベースサーバとして機能可能に構成されている。端末装置３０は、汎用レベルの処理機能を有するコンピュータから構成される。作業ロボット４０にも、汎用レベルの処理機能を有するコンピュータが組み込まれている。なお、周知のように、コンピュータは、ＣＰＵ(Central Processing Unit)、ハードディスク、メモリ、マザーボード、ドーターボード、外部インターフェイス等から構成される。ＣＰＵは、ハードディスク、メモリ等の記憶領域に格納されたプログラムを実行する。このようなＣＰＵによるプログラム処理によって、様々な機能が具現化される。
【００２９】
図２に示すように、端末装置３０は、ユーザーにより持ち運び可能なサイズに構成されている。端末装置３０の前面３０ａには、表示部３０ｃが設けられ、その背面３０ｂには、３次元計測部３０ｄ、及び画像取得部３０ｅが設けられている。端末装置３０の表示部３０ｃは、タッチパネル装置が組み込まれている（図３も併せて参照のこと）。ユーザー２１０は、端末装置３０のタッチパネルに表示されるアイコンを指で指定することによって、端末装置３０に対して指示を入力する。画像取得部３０ｅは、後述の画像取得部３８ｂに相当する。３次元計測部３０ｄは、後述の奥行き情報取得部３８ｃに相当する。
【００３０】
図３に模式的に示すように、ユーザー２１０は、端末装置３０を持ち、作業ロボット４０の導入環境に固定されている構造物（被操作体）９０ａ〜９０ｃを順次撮影し、後述の説明のように、端末装置３０により取得された立体像に対して仮想的に操作タグを設定する。ユーザー２１０は、端末装置３０の位置／姿勢を適当なものとすることによって、任意の構造物を撮影することができる。従って、目的とする構造物を迅速に、直感的に計測することができる。この場合には、固定カメラ等の場合のように死角が問題となることは低減される。
【００３１】
システム１００によって実行される操作タグの設定方法は、概略的に説明すれば、次のとおりである。まず、構造物の位置を示すための"位置データ（位置情報）"、その構造物の幾何形状を示すための"構造データ（幾何情報）"、その構造物に対して作業ロボットが成すべき動作内容を指定するための"操作内容データ（操作情報）"を生成し、これらを操作タグＩＤにて関連づけて記憶する。このようにして、導入空間内に存在する各構造物に対して作業ロボット４０が為すべき操作内容が事前設定される。なお、各操作タグは、操作タグＩＤによって識別され、上述のデータを含んで構成される。本願では、操作タグＩＤに対して関連付けられたデータ群を単に"操作タグ"と簡略的に呼ぶ場合があるものとする。この点は、説明の便宜上の問題であり、この点を根拠として本願発明の技術的範囲が狭く解釈されることは許されない。
【００３２】
上述の構造データは、好適には、構造物の３次元計測により得られた立体像に対して幾何プリミティブを適用することによって得られる。これによって、作業ロボット４０の操作対象となる構造物の実形状をシステム側が把握することが可能になり、作業ロボット４０による構造物の操作精度が向上する。上述の位置データは、ＧＰＳ測位、無線ＬＡＮアクセスを測位基準として利用した測位、携帯電話基地局を利用した測位等によって取得される。操作内容データは、予め類型化されたデータから選択されるものである。
【００３３】
図３に例示的に示すように、作業ロボットの導入環境には、タンス９０ａ、物入れ９０ｂ、および扉９０ｃ等の構造物９０が設けられている。タンス９０ａには、取っ手９１ａにより開閉される引き出し、及び取っ手９１ｂにより開閉される引き出しが設けられている。物入れ９０ｂには、取っ手９１ｃにより開閉される扉が設けられている。扉９０ｃは、取っ手９１ｄによって開閉される。
【００３４】
図４に模式的に示すように、作業ロボット４０は、導入環境内にて様々な作業を行う。例えば、作業ロボット４０は、タンス９０ａの取っ手９１ａを手前に引き、タンス９０ａに設けられた上段引出しの中身を撮像する。作業ロボット４０は、扉９０ｃの取っ手９１ｄを手前に引き、扉９０ｃの向こう側の部屋へ移動する。作業ロボット４０による各構造物の操作は、ユーザーによる端末装置３０の操作によって実行される。
【００３５】
作業ロボット４０に対する操作指示は、ユーザー側から見ると、次のように実行される。端末装置３０は、作業ロボット４０の取得画像に操作タグアイコンが重畳表示された画像をユーザーに提示する。ユーザーは、端末装置３０が提示する操作タグアイコンを指タッチし、これから導かれる操作内容を指タッチにより指定する。端末装置３０から作業ロボット４０に対して、ユーザーによる操作指示が転送され、作業ロボット４０は所望の動作を実行する。構造物の３次元計測データに対して幾何プリミティブを適応することにより構造物の実形状が把握可能となっているため、作業ロボット４０による構造物の操作は、精度よく実行可能である。また、作業ロボット４０に対して伝達される操作指示は、構造物から得られたデータに対してフィッティングされた幾何プリミティブとの関係において特定される。これによって、構造物に対する作業ロボット４０の操作内容を簡潔に示すことが可能になる。
【００３６】
なお、図４に示すように、作業ロボット４０は、外観要素として、車両部４０ａ、胴部４０ｂ、頭部４０ｃ、及び腕部４０ｄ、４０ｅを有する。作業ロボット４０の腕部４０ｄは、リンク部４０ｄ１、４０ｄ２、ハンド部４０ｄ３が関節接続されて構成される。作業ロボット４０の腕部４０ｅについても腕部４０ｄと同様である。車両部４０ａには、個別に回転制御される一組の車輪４０ａ１が設けられている。車両部４０ａには、一組の車輪を個別に制御する制御機構が組み込まれている。胴部４０ｂには、作業ロボット４０が行う様々な動作を制御する制御装置が組み込まれている。頭部４０ｃには、様々なセンシングデバイス等が組み込まれている。
【００３７】
作業ロボット４０は、例えば、目的地までの移動経路等を自律的に決定し、決定した移動経路に沿って自律移動することが可能に構成されている。作業ロボット４０は、センシングデバイスにて検出されるセンシング結果に基づいて自身の現在姿勢を検知することが可能に構成されている。作業ロボット４０は、自律的又はユーザーからの指令に応じて、所望の姿勢に変化することが可能に構成されている。作業ロボット４０による構造物の操作は、作業ロボット４０の姿勢変化によって実行される。作業ロボット４０内に組み込まれたアクチュエータ、モータ等の動作量を適当なものとすることによって、作業ロボット４０の姿勢制御が実行される。
【００３８】
繰り返しとなるが、本実施形態では、各構造物に対して仮想的に操作タグが付与される。各構造物に対して成す作業ロボットの操作内容は、操作対象の構造物に対して事前設定された操作タグに基づいて実行される。操作タグは、より好適には、被操作体の位置を示す位置データ（位置情報）、その被操作体の３次元計測から得られた立体像に対して幾何プリミティブを適応させて得られる構造データ（幾何情報）、およびその被操作体に対して作業ロボットが成すべき操作内容を示す操作内容データ（操作内容情報）を含む。ユーザーが構造物に対して操作タグを仮想的に事前設定することで、適切な操作環境モデルを構築することができ、作業ロボット４０が導入される環境のモデル化の負担を低減することが可能になる。
【００３９】
構造物に対して仮想的に操作タグを付与することは、仮想空間内において、構造物に対応づけて操作タグを設定することを意味し、構造物に対して直接的に情報を持たせることは意味しない。構造物に対して関連付けられた操作タグを情報として管理することは、システム１００（本例では、環境モデリングサーバ１０）によって実行される。
【００４０】
構造物を特定するための情報（構造物の位置、形状等を特定するための情報）に対して、同構造物に対して作業ロボット４０が成すべき操作内容を付加して記憶することを繰り返すことによって、各構造物に対して操作タグを仮想的に付与することができる。作業ロボット４０に対して実作業を実行させる場合、システム１００は、作業ロボット４０が得たデータ（位置データ、姿勢データ等）に基づいて、作業ロボット４０が操作対象とする構造物に対して事前付与された操作タグをユーザーに対して提示する。ユーザーには、作業ロボットが成し得る動作内容が提示される。ユーザーは、端末装置３０の操作によって、作業ロボット４０に対して所定の操作を実行させる。
【００４１】
図５乃至図１０を参照して、システム１００の動作の詳細について説明する。なお、上述のように、システムの具体的な構成態様は任意である。端末装置３０を単なる入出力装置として扱い、端末装置３０が実行する演算処理機能の大部分を環境モデリングサーバ１０に実行させても良い。端末装置３０を用いて操作タグの設定を実行しているが、作業ロボット４０を活用して操作タグの設定を実行しても良い。この場合、端末装置３０に対して、３次元計測手段、位置姿勢計測手段等のセンシング機構を具備させる必要性を回避することができる。
【００４２】
図５に示すように、環境モデリングサーバ１０は、通信部１１、制御部１２、操作タグデータベース１３、操作タグ生成部１４、及びフィッティング実行部１５を有する。通信部１１は、無線ネットワーク２０に対して無線接続される。制御部１２は、通信部１１、操作タグデータベース１３、及び操作タグ生成部１４に対して接続される。操作タグ生成部１４は、フィッティング実行部１５に対して接続される。
【００４３】
通信部１１は、無線ネットワーク２０を介して、端末装置３０、作業ロボット４０と通信を行う。通信部１１は、技術標準に準拠して構成される。制御部１２は、通信制御、データベースアクセス制御、メモリアクセス制御、シーケンス制御、演算制御、データ転送制御、データ圧縮／解凍制御等を行う。操作タグデータベース１３は、データを管理するユニットであり、データベースコントローラを内蔵する。操作タグ生成部１４は、操作タグデータベースに格納される操作タグを生成する。フィッティング実行部１５は、端末装置３０、作業ロボット４０から転送された３次元データに対して、予め登録されている幾何プリミティブのフィッティングを実行する。
【００４４】
図６に示すように、端末装置３０は、通信部３１、制御部３２、表示画像生成部３３（メニュー生成部３３ａ、仮想画像生成部３３ｂ、合成画像生成部３３ｃ）、表示部３６、指示入力部３７、３Ｄ画像取得部３８、および位置姿勢情報取得部３９を有する。通信部３１は、無線ネットワーク２０に対して無線接続される。制御部３２は、通信部３１、表示画像生成部３３、表示部３６、指示入力部３７、３Ｄ画像取得部３８、および位置姿勢情報取得部３９に対して接続される。
【００４５】
通信部３１は、無線ネットワーク２０を介して、環境モデリングサーバ１０、作業ロボット４０と通信を行う。通信部３１は、技術標準に準拠して構成される。制御部３２は、通信制御、メモリアクセス制御、シーケンス制御、演算制御、データ転送制御、データ圧縮／解凍制御等を行う。表示画像生成部３３は、表示部３６にて生成されるべき画像を生成する。メニュー生成部３３ａは、メニュー等の表示項目を生成する。仮想画像生成部３３ｂは、実在しない仮想表示を生成する。合成画像生成部３３ｃは、画像の合成処理を実行する。表示部３６は、液晶ディスプレイ等から構成される画像表示部である。指示入力部３７は、タッチパネルディスプレイに格納される指示入力位置検出装置等により構成される。３Ｄ画像取得部３８は、周囲環境を写す２次元画像に加えて、画像の奥行き情報を取得する。位置姿勢情報取得部３９は、端末装置３０の位置姿勢情報を取得する。
【００４６】
３Ｄ画像取得部３８の具体的構成は任意である。例えば、異なる位置に配置された２つのカメラにて画像取得し、異なる視点から取得された２つの画像に基づいて奥行き情報を算出しても良い。ＴＯＦ(Time Of Flight)の原理に基づいて奥行き情報を求めても良い。或いは、コード化した光の投光によって得られる反射光の検知に基づいて奥行き情報を取得しても良い。図７に例示的に示すように、３Ｄ画像取得部３８は、制御部３８ａ、画像取得部３８ｂ、奥行き情報取得部３８ｃ、奥行き算出部３８ｄを有する。制御部３８ａは、画像取得部３８ｂ、奥行き情報取得部３８ｃ、及び奥行き算出部３８ｄに対して接続される。奥行き情報取得部３８ｃは、奥行き算出部３８ｄに対して接続される。制御部３８ａは、制御部３２に対して接続される。
【００４７】
制御部３８ａは、画像取得部３８ｂ、奥行き情報取得部３８ｃ、奥行き算出部３８ｄの動作を制御する。画像取得部３８ｂは、好適には、カメラによって構成される。カメラは、ＣＭＯＳセンサ（撮像素子）、ＣＭＯＳセンサに対して被写体像を結像させるレンズ（光学系）、レンズを変位させる機構（レンズ駆動装置）、及びＣＭＯＳセンサの出力データを処理する機能回路等から構成される。画像取得部３８ｂで取得された画像データは、バスを介して、表示部３６に伝送される。奥行き情報取得部３８ｃは、パターン光投光部と、パターン光受光部とから構成される。奥行き算出部３８ｄは、パターン光の投光時点から反射されたパターン光の受光時点間の時間計測に基づいて、奥行き情報を算出する。或いは、パターン光投光位置とカメラの視差によるステレオ原理に基づいて、奥行き情報を算出しても良い。
【００４８】
位置姿勢情報取得部３９の具体的構成は任意である。例えば、位置姿勢情報取得部３９は、導入環境に設定された複数の発信源から発信される信号の受信強度に基づいて、現在位置を算出する。昨今においては、衛星から受信したＧＰＳ信号に基づいて現在位置を算出することが多用されている。従って、この技術を活用して現在位置を取得しても良い。姿勢情報は、本体に内蔵されたジャイロセンサ等の出力から求めることができる。
【００４９】
図８に例示的に示すように、位置姿勢情報取得部３９は、制御部３９ａ、ＧＰＳ信号受信部３９ｂ、加速度検出部３９ｃ、地磁気検出部３９ｄを有する。制御部３９ａは、ＧＰＳ信号受信部３９ｂ、加速度検出部３９ｃ、地磁気検出部３９ｄに対して接続される。制御部３９ａは、制御部３２に対して接続される。
【００５０】
制御部３９ａは、ＧＰＳ信号受信部３９ｂ、加速度検出部３９ｃ、地磁気検出部３９ｄを制御し、各ユニットから入力されるデータに対して演算処理等する。ＧＰＳ信号受信部３９ｂは、ＧＰＳ信号を受信する。加速度検出部３９ｃは、３軸方向の加速度を検出する。地磁気検出部３９ｄは、地磁気を検出する。
【００５１】
図９に示すように、作業ロボット４０は、通信部４１、制御部４２、３Ｄ画像取得部４３、位置姿勢情報取得部４４、および駆動制御部４５を有する。通信部３１は、無線ネットワーク２０に対して無線接続される。制御部４２は、通信部４１、３Ｄ画像取得部４３、位置姿勢情報取得部４４、および駆動制御部４５に対して接続される。
【００５２】
通信部３１は、無線ネットワーク２０を介して、環境モデリングサーバ１０、端末装置３０と通信を行う。通信部４１は、技術標準に準拠して構成される。制御部４２は、通信制御、メモリアクセス制御、シーケンス制御、演算制御、データ転送制御、データ圧縮／解凍制御等を行う。３Ｄ画像取得部４３は、周囲環境を写す２次元画像に加えて、画像の奥行き情報を取得する。位置姿勢情報取得部４４は、作業ロボット４０の位置姿勢情報を取得する。駆動制御部４５は、作業ロボット４０に内蔵される駆動機構を制御する。
【００５３】
図１０に例示的に示すように、位置姿勢情報取得部４４は、制御部４４ａ、ＧＰＳ信号受信部４４ｂ、加速度検出部４４ｃ、地磁気検出部４４ｄ、及び関節軸角度検出部４４ｅを有する。制御部４４ａは、ＧＰＳ信号受信部４４ｂ、加速度検出部４４ｃ、地磁気検出部４４ｄ、及び関節軸角度検出部４４ｅに対して接続される。制御部４４ａは、制御部３２に対して接続される。関節軸角度検出部４４ｅは、ロータリーエンコーダ等の活用によって、リンク間の回転各等を検出する。なお、作業ロボット４０には、作業ロボット４０の現在姿勢を検出することに必要な様々なセンシングデバイスが内蔵されることは上述したとおりである。
【００５４】
図５乃至図１０に開示した要素の具体的な動作内容は、後述の説明から更に明らかになる。
【００５５】
図１１に示すように、システム１００は、操作タグデータベースの構築をし、その後、操作タグデータベースの格納された操作タグを活用してロボット制御する。
【００５６】
図１２を参照して、操作タグの配置手順について説明する。図１３乃至図２０も適宜参照して説明する。
【００５７】
まず、被操作体を表示する（Ｓ１００）。具体的には、ユーザーは、図３に模式的に示すように、作業ロボット４０の導入空間にて端末装置３０を持ち、構造物（例えば、タンス９０ａの取っ手９１ａ）を撮影する。ユーザーは、端末装置３０を適切な位置とすることによって、端末装置３０により取っ手９１ａを撮影する。端末装置３０の表示部３６は、図１３に模式的に示すように、取っ手９１ａを表示する。
【００５８】
次に、キャプチャ動作を実行する（Ｓ１０１）。具体的には、ユーザーは、端末装置３０の表示部３６に表示されているカメラアイコンを指でタッチし、端末装置３０に対してキャプチャ動作の実行を指示する。
【００５９】
端末装置３０は、キャプチャ実行指示の入力に応じて、（１）被操作体を写す画像のキャプチャ、（２）被操作体の３次元計測、（３）端末装置の位置姿勢データの取得を同時刻に実行する。なお、キャプチャ動作の実行指示の入力は、指示入力部３７を介して制御部３２に伝達する。制御部３２は、３Ｄ画像取得部３８、位置姿勢情報取得部３９に対してデータ取得動作を指示する。３次元計測の具体的な手法は任意である。例えば、３次元計測は、１以上のカメラとパターン光投影機によって実行される。他の例では、２以上のカメラによるステレオ画像計測装置によって、３次元計測が実行される。他の例では、レーザレンジスキャナによって３次元計測が実行される。
【００６０】
画像取得部３８ｂは、キャプチャ実行指示の入力時に応じて、現在の取得画像を保持する。
【００６１】
奥行き情報取得部３８ｃは、キャプチャ実行指示の入力に応じて、キャプチャ画像の面内における奥行き情報を取得する。例えば、光学的な手法によって奥行き情報は取得される。パターン光の出射から、パターン光が物体に反射して戻ってくる戻り光の検出までの時間を計測することによって、パターン光の照射範囲内の奥行き情報が取得される。なお、奥行き情報の取得方法は任意であり、この例に限られるべきものではない。
【００６２】
光学的手法により奥行き情報を取得する場合、次のような構成が採用可能である。奥行き情報取得部３８ｃは、パターン光の出射から戻り光の受光までの時間を計測するセンシングユニットである。奥行き算出部３８ｄは、そのセンシングユニットから出力される時間情報から距離を算出する演算ユニットである。
【００６３】
位置姿勢情報取得部３９は、キャプチャ実行指示の入力に応じて、端末装置３０の位置姿勢情報を取得する。ＧＰＳ信号受信部３９ｂは、ＧＰＳ信号を受信する。加速度検出部３９ｃは、３軸方向の加速度を検出する。地磁気検出部３９ｄは、地磁気を検出する。制御部３９ａは、ＧＰＳ信号から、端末装置３０の現在位置を算出する。制御部３９ａは、３軸方向の加速度から端末装置３０の鉛直からの姿勢状態を示す値を算出する。制御部３９ａは、検出された地磁気の値から端末装置３０の水平面内の姿勢を算出する。制御部３９ａは、これらの鉛直および水平面内の姿勢から端末の姿勢を算出する。
【００６４】
キャプチャ動作の実行指示の入力に応じて取得された（１）キャプチャ画像、（２）被操作体の３次元計測データ、（３）端末装置の位置姿勢データは、バッファ等に一時的に格納される。このバッファは、例えば、制御部３２内に設けられる。
【００６５】
次に、アイコン選択画像を生成／表示する（Ｓ１０２）。具体的には、制御部３２は、表示画像生成部３３に対して、キャプチャ画像に対して操作アイコンの選択画像を付加した表示画像の生成を指示する。これに応じて、表示画像生成部３３は、メニュー生成部３３ａに対してアイコン選択画像の生成を指示し、合成画像生成部３３ｃに対してキャプチャ画像とアイコン選択画像との合成処理を指示する。合成画像生成部３３ｃで生成された合成画像は、表示部３６によって表示される。これにより、端末装置３０は、図１４に模式的に示す画面を表示する。
【００６６】
図１４に開示された動作Ａ〜動作Ｄを示すアイコンには、図１８に模式的に示すアイコンが表示されるものとする。図１８（ａ）に示されたアイコンは、直線に沿って取っ手を押し／引きする操作を示すアイコンである。図１８（ｂ）に示されたアイコンは、曲線に沿って取っ手を押し／引きする操作を示すアイコンである。図１８（ｃ）に示されたアイコンは、直線に沿って取っ手を回転させ、続いて、曲線に沿って取っ手を押し／引きする操作を示すアイコンである。図１８（ｄ）に示されたアイコンは、直線に沿ってボタンを押し／離す操作を示すアイコンである。図１８に開示されたアイコンは、構造物に対して作業ロボットが為すべき操作内容を示す。
【００６７】
表示画像生成部３３の具体的な画像生成態様は任意である。例えば、メニュー生成部３３ａは、図１４に示す表示領域Ｒ１０に表示されるべきアイコン選択画像を生成する。合成画像生成部３３ｃは、メニュー生成部３３ａにて生成された画像とキャプチャ画像とに基づく合成画像を生成する。なお、図１４に示す表示領域Ｒ１０、Ｒ２０には、適宜、他の処理をユーザーに提示／案内するためのアイコンを表示させても良い。また、表示領域Ｒ２０を画面全体として、表示領域Ｒ１０を透過表示させても良い。
【００６８】
次に、操作タグアイコンの選択をする（Ｓ１０３）。具体的には、図１５に模式的に示すように、ユーザーは、表示部３６に表示されている構造体上へ、作業ロボット４０が成すべき動作を示す適切なアイコンを選択的に移動させる。図１５に表示された構造物は、図３のタンス９０ａの取っ手９１ａである。従って、ユーザーは、図１８（ａ）に示すアイコンを選択して、これを取っ手９１ａ上へ移動させる。このようにして、キャプチャされた構造体に対して、操作情報が関連づけられることになる。なお、ユーザーによるアイコンの選択は、指示入力部３７、制御部３２、表示部３６等らの協調的動作によって実現される。タッチパネルセンサの制御技術は確立されているため、その詳細な動作説明は省略する。
【００６９】
次に、フィッティングを実行する（Ｓ１０４）。具体的には、端末装置３０は、環境モデリングサーバ１０に対してフィッティングに必要なデータを送信する。環境モデリングサーバ１０は、端末装置３０から受信したデータに基づいて、被操作体の３次元計測データに対して幾何プリミティブをフィッティングする。
【００７０】
端末装置３０は、キャプチャ動作により取得したデータ（キャプチャ画像データ、３次元計測データ）を環境モデリングサーバ１０へ送信する。好適には、端末装置３０は、環境モデリングサーバ１０のフィッティング処理の短縮のため、操作アイコンがドロップされたキャプチャ画像上の位置を示すデータも環境モデリングサーバ１０へ送信する。
【００７１】
環境モデリングサーバ１０は、端末装置３０からの受信データに基づいて、被操作体の３次元計測データに対して幾何プリミティブをフィッティングし、フィッティングにより得られたデータを端末装置３０へ送信する。フィッティングにより得られるデータは、幾何プリミティブの形状、位置、姿勢を指定するデータである。端末装置３０は、環境モデリングサーバ１０から供給されたデータに基づいて、図１６に模式的に示すように、キャプチャ画像に対して幾何プリミティブが重畳された画像を合成表示する。
【００７２】
フィッティング実行部１５は、幾何プリミティブ対（円柱プリミティブと矩形プリミティブの組）を活用して、構造物の３次元形状を示すデータを生成する。上述のように、端末装置３０から環境モデリングサーバ１０には、上述のデータ（キャプチャ画像データ、３次元計測データ、及び操作アイコンがドロップされたキャプチャ画像上の位置を示すデータ）が転送される。
【００７３】
フィッティング実行部１５は、キャプチャ画像に対する操作アイコンのドロップ位置に基づいて、操作アイコンのドロップ位置周辺部分の奥行き情報（３次元計測データ）に対して幾何プリミティブをフィッティングする。
【００７４】
フィッティングの具体的方法は任意である。例えば、２次元画像及びその奥行き情報から構造物の輪郭及び表面形状が得られる。構造物の輪郭及び表面形状に対して円柱プリミティブを適応し、円柱プリミティブの特定データを得る。円柱プリミティブの特定データは、円柱プリミティブの初期位置姿勢を示すデータ、円柱プリミティブの形状を示すデータを含む。このようなフィッティングによって、円柱プリミティブの位置ベクトル（基準点から円柱プリミティブの中心点を結ぶベクトル）、円柱プリミティブの姿勢ベクトル（円柱の長手方向／延在方向を示すベクトル）が決定される。
【００７５】
次に、２次元画像及びその奥行き情報から、取っ手が取り付けられた面の表面形状が得られる。取っ手が取り付けられた面に対して矩形プリミティブを適応し、矩形プリミティブの特定データを得る。矩形プリミティブの特定データは、円柱からの距離を示すデータ、矩形の横幅を示すデータ、矩形の縦幅を示すデータを含む。このようにして、被操作体の幾何形状を特定することに十分なデータが取得される。上述の場合、円柱プリミティブの位置ベクトル、姿勢ベクトルを基準として、矩形プリミティブの位置、姿勢が把握される。矩形プリミティブは、鉛直方向に対して平行に配置されるように設定されている。
【００７６】
フィッティングの具体的な態様は任意である。例えば、３次元計測データから抽出される構造物の表面形状に対して幾何プリミティブを適応し、所定のアルゴリズムを活用して幾何プリミティブの形状、位置、姿勢の収束点を求める。これによって、構造物に対してフィットした状態の幾何プリミティブの形状、位置、姿勢を算出することができる。
【００７７】
次に、フィッティング結果を表示する（Ｓ１０５）。具体的には、環境モデリングサーバ１０によるフィッティングにより得られた上述のデータは、端末装置３０に転送され、端末装置３０によって処理される。これによって、キャプチャ画像に対して幾何プリミティブが重畳された画像が合成表示される。
【００７８】
具体的には、次のとおりである。環境モデリングサーバ１０のフィッティング実行部１５で生成されたデータは、端末装置３０の表示画像生成部３３に転送される。表示画像生成部３３は、仮想画像生成部３３ｂに対して、受信データに基づいて、円柱プリミティブと矩形プリミティブが表示された仮想画像を生成させる。表示画像生成部３３は、合成画像生成部３３ｃに対して、キャプチャ画像に対して仮想画像が付加された画像を合成させる。これによって、図１６に示すように、構造物（取っ手９１ａ）に対して円柱プリミティブと矩形プリミティブが重畳された画像が表示される。
【００７９】
次に、フィッティングが成功したか否かを判断する（Ｓ１０６）。具体的には、ユーザーは、端末装置３０に表示されたフィッティング状態が適当なものか否かを判断し、その判断結果を端末装置３０に入力する。図１６に模式的に示すように、端末装置３０の表示部３６には、ＯＫアイコン、ＮＧアイコンが表示される。ユーザーは、いずれかのアイコンを選択することによって、フィッティングＯＫ又はＮＧの判断結果を端末装置３０に入力する。フィッティングＮＧの場合、ステップＳ１００に戻り、キャプチャ対象の構造物を再セットして、同様の作業を実行する。
【００８０】
フィッティングＯＫの場合、操作タグを記憶する（Ｓ１０７）。具体的には、端末装置３０は、操作タグの記憶を指示する信号を環境モデリングサーバ１０に送信する。操作タグ生成部１４は、この信号に応じて、所定のデータ構造を有する操作タグを生成する（図１９を用いて後述する）。次に、制御部１２は、生成された操作タグを操作タグデータベース１３に対して格納処理する。
【００８１】
図１９（ａ）に示すように、操作タグは、ＩＤ、基準位置、操作モデル、固有パラメータから構成される。ＩＤは、各操作タグを識別すための識別値である。基準位置は、操作タグの基準位置を示す（基準位置は、例えば、取っ手の中心、すなわち、円柱プリミティブの中心等の操作モデルの代表点とする）。操作モデルは、図１８に模式的に示した操作アイコンに対応し、構造物に対して作業ロボット４０が成すべき操作内容の分類を示す。固有パラメータは、図１９（ａ）とは別のテーブルに格納されている。固有パラメータには、関連付けられたテーブルを指定するポインタがセットされている。
【００８２】
図１９（ａ）に示すポインタＰＯ１が示すテーブル内容を図１９（ｂ）に示す。図１９（ｂ）に示すように、固有パラメータは、幾何プリミティブ情報、操作モデル情報を含む。幾何プリミティブ情報は、円柱プリミティブの情報、矩形プリミティブの情報を含む。円柱プリミティブには、その特定データ（位置ベクトル、姿勢ベクトル、円柱の直径、円柱の長さ）が関連づけられている。矩形プリミティブに対しては、円柱プリミティブからの距離、縦幅、横幅が関連づけられている。
【００８３】
操作モデルは、被操作体に対して作業ロボット４０が成すべき操作内容を定義する情報である。図１３乃至図１７に示す例では、作業ロボット４０が取っ手に対して成す操作は、取っ手を引く又は戻す作業である。操作モデル情報は、そのような操作の指定に必要なデータから構成される。好適には、軌道と操作パラメータによって、作業ロボット４０の操作内容が定義される。軌道は、初期位置と引き出しベクトルとによって定義される。操作パラメータは、最大操作力により定義される。作業ロボット４０による操作動作は、操作モデルに規定されることになる。なお、操作モデルが示す操作内容は、操作モデルの種別により定まるものである。ここでは、操作モデルの種別指定から、所定の操作内容が特定されるものとする。
【００８４】
図１９に示したデータは、図２０に模式的に表現することが可能である。操作タグの基準位置は、Ｔ１に対応する。円柱プリミティブの直径ｃｄ、長さｄｌ、矩形プリミティブの縦幅ｒａ、横幅ｒｂは、図２０に示すとおりである。円柱プリミティブからの矩形プリミティブの間隔ｒ１も、図２０に示すとおりである。円柱プリミティブの位置ベクトルは、例えば、空間内における操作タグの基準位置からみた円柱の中心（幾何的中心）により指定される。なお、円柱プリミティブの位置、姿勢の特定方法は任意であり、この例にかぎられるべきものではない。操作モデルの軌道の初期位置は、点ＳＰに示すとおりであり、終点位置は、点ＥＰに示すとおりである。軌道の初期位置及び終点位置は、基準位置からみた座標値により示される。初期位置ＳＰと終点位置ＥＰとを結んだベクトルＬ１は、被操作体の操作方向を示す。操作の最大操作力は、被操作体の重量に応じて適宜設定されるべきものである。
【００８５】
次に、データベースに登録された操作タグアイコンを表示する（Ｓ１０８）。端末装置３０は、図１７に模式的に示すように、幾何プリミティブの表示を停止し、構造物に対して操作タグが割り当てられていることを示す操作タグアイコンを表示する。その後、適宜、ステップＳ１００に戻り、他の被操作体に対する操作タグのセット動作が繰り返される。
【００８６】
制御部１２は、操作タグデータベース１３への操作タグの登録後、操作タグの位置を示すデータを端末装置３０に転送する。表示画像生成部３３は、仮想画像生成部３３ｂに対して、操作タグの位置を示すデータから特定される位置に操作タグアイコンが配置された画像を生成させる。表示画像生成部３３は、合成画像生成部３３ｃに対して、操作タグアイコンが表示された画像をキャプチャ画像に対して合成処理させる。表示部３６は、合成画像生成部３３ｃにより生成された合成画像を表示する。
【００８７】
なお、上述の場合、円柱プリミティブと、矩形プリミティブとを用いて、構造物に対する幾何プリミティブの適応を実行したが、被操作体に対して適応される幾何プリミティブの種類は任意である。
【００８８】
図２１（ａ）は、被操作体がボタンの場合を示す。この場合には、円柱プリミティブを用いずに、矩形プリミティブのみを用いる。同図に模式的に示すように、操作の始点／終点、操作ベクトル等によって、操作動作が定義される。
【００８９】
図２１（ｂ）は、被操作体が扉の場合を示す。この場合には、上記例と同様、円柱プリミティブと矩形プリミティブを扉に対して適応させる。被操作体が異なるため、円柱プリミティブの姿勢は、上記例とは異なるように設定される。また、操作動作も、異なるように定義される。
【００９０】
図２２のフローチャートを参照して、上述のように設定した操作タグのプロパティ―変更手順について説明する。図２３乃至図２６も併せて参照して説明する。操作タグのプロパティ―変更とは、操作タグから特定される操作モデルの具体値等を変更することを意味する。操作モデルの具体的値は、指定の手間を省くため、操作タグの生成時に適当なデフォルト値が割り当てられているが、プロパティ―変更によって、個別に設定内容を修正し、所定の構造物に対する操作内容を最適化することが可能になる。
【００９１】
まず、被操作体を表示する（Ｓ２００）。この動作は、上述のＳ１００と同様である。
【００９２】
次に、位置姿勢データの取得／送信を実行する（Ｓ２０１）。具体的には、端末装置３０は、自身の現在位置を示す情報を取得し、これを環境モデリングサーバ１０へ送信する。
【００９３】
次に、操作タグのダウンロードが実行される（Ｓ２０２）。具体的には、環境モデリングサーバ１０は、受信した位置データの近傍に位置する操作タグを特定し、特定された操作タグを端末装置３０に送信する。好適には、環境モデリングサーバ１０の制御部１２は、操作タグデータベース１３に対して、端末装置３０から受信した位置データの所定範囲内に存在する操作タグを出力させる。制御部１２は、操作タグデータベース１３から出力された操作タグを、端末装置３０に対して通信部１１を介して送信する。なお、図１９に示したデータ構造を有するデータを単に"操作タグ"と簡略説明する場合があることは上述したとおりである。
【００９４】
次に、合成画像を生成する（Ｓ２０３）。端末装置３０は、まず、環境モデリングサーバ１０から受信した操作タグ（ＩＤ、基準位置、操作モデル、固有パラメータ（各プリミティブの位置姿勢パラメータ、形状パラメータ、操作モデルの内容））を一時的にバッファする。制御部３２は、操作タグの位置を示す位置データを表示画像生成部３３に供給する。表示画像生成部３３は、仮想画像生成部３３ｂに対して、その位置データが示す位置に操作タグアイコンが配置された仮想画像を生成するように指示する。表示画像生成部３３は、合成画像生成部３３ｃに対して、現在撮影表示される画像と、仮想画像生成部３３ｂにより生成される仮想画像とに基づいて合成画像を生成することを指示する。表示部３６は、合成画像生成部３３ｃにより合成された合成画像を表示する。このようにして、図２３に示すように、端末装置３０によりユーザーに提示される現在ビューに対して操作タグアイコンが重畳表示される。
【００９５】
次に、操作タグアイコンの長押し有りか否かを判定する（Ｓ２０４）。端末装置３０は、ユーザーによるタッチパネルの操作によって、操作タグアイコンがユーザーによって所定時間以上押されたか否かを検知する。例えば、２秒〜３秒程度の時間を閾値として用いる。詳細には、制御部３２は、指示入力部３７の入力に基づいて、操作タグアイコンが表示されている箇所に対してユーザーの指が所定時間以上配置されたか否かを判定する。
【００９６】
操作タグアイコンの長押し有りの場合、操作タグのプロパティ表示が実行される（Ｓ２０５）。具体的には、端末装置３０は、所定時間以上、ユーザーの指が操作タグアイコン上に配置されたことを検出すると、選択された操作タグに対して関連付けられているプロパティ―を表示する。制御部３２は、長押しの検出に応じて、表示画像生成部３３に対してプロパティ―画面が付加された画像の生成を指示する。表示画像生成部３３は、メニュー生成部３３ａに対してプロパティ―画面の生成を指示し、合成画像生成部３３ｃに対して現在の撮影画像に対してプロパティ―画面を付加した画像を生成させる。
【００９７】
プロパティ―として表示される具体的情報は、好適には、操作モデルの内容又はこれから算出される情報である。例えば、図２４に示すように、図１９に示した固有パラメータ（軌道：初期位置；終点位置）から算出される開き幅が表示される。また、図１９に示した操作モデルの固有パラメータ（最大操作力）が表示される。
【００９８】
次に、プロパティ情報の変更指示が入力される（Ｓ２０６）。例えば、端末装置３０は、最大操作力の表示箇所に対してユーザーの指がタッチしたことを検出すると、図２５に示すような値変更画面をユーザーに提示する。具体的には、端末装置３０は、最大操作力の表示枠を点灯表示し、かつ、値を入力するためのキーボードを表示する。これらの表示制御は、例えば、制御部３２が、表示画像生成部３３に対して適切な指令を与えることで実行される。一例としては、表示画像生成部３３は、メニュー生成部３３ａに対してキーボード表示の生成を指示し、合成画像生成部３３ｃに対してキーボード表示を現在ビューに対して組み込ませることを指示する。これによって、パラメータ変更が入力可能な状態となる。ユーザーは、表示されたキーボードをタッチして、最大操作力の値を変更する。変更値は、制御部３２によって一時的に保持される。ユーザーによるキーボードの入力に応じて、表示部３６の画面は、図２５から図２６に示す表示となる。
【００９９】
次に、変更値の反映準備を実行する（Ｓ２０７）。具体的には、端末装置３０は、操作タグＩＤ、及び変更値等を環境モデリングサーバ１０に対して送信する。環境モデリングサーバ１０は、端末装置３０からの受信データに基づいて、新たな変更値を操作タグデータベース１３に格納等する。なお、実際の書き換え処理は、更新の確定を待って行われる。従って、変更値は、一時的に、データベースの空き容量にバッファされることになる。
【０１００】
次に、変更の確認／実行が行われる（Ｓ２０８）。具体的には、環境モデリングサーバ１０は、端末装置３０に対して更新準備完了を示す信号を送信する。端末装置３０は、環境モデリングサーバ１０からの信号受信に応じて、ユーザーによって入力された更新値をユーザーに対して表示する。例えば、端末装置３０は、変更がなされた図２６に示す枠を点灯表示する。更新値が正しければ、ユーザーは、操作プロパティ―の表示部分以外の部分を指タッチする。これによって、更新が確定される。具体的には、制御部１２は、操作プロパティ―の表示部分以外の部分を指タッチの検出を指示入力部３７の出力から検知し、更新値が承認されたことを環境モデリングサーバ１０に対して通知する。環境モデリングサーバ１０は、この通知に応じて、実際に値を書き換える処理を実行する。このようにしてプロパティ―値（本例では、図１９（ｂ）に示した最大操作力）が更新される。更新内容に誤りがある場合、ユーザーは、再度、変更作業を繰り返すことになる。
【０１０１】
上述の作業を繰り返すことによって、図２７に模式的に示すように、作業ロボット４０の導入空間に配置されている構造物に対して仮想的に操作タグが付与される。
【０１０２】
図２８のフローチャートを参照して、環境モデリングサーバ１０の操作タグデータベース１３に格納された操作タグを活用して作業ロボット４０に対して操作指示する手順について説明する。図２９乃至図３３も併せて参照して説明する。なお、図２９乃至図３３に示す画像は、端末装置３０に表示されるものであるが、作業ロボット４０によって取得された画像に基づいて生成された画像である。図２８に示すフローチャートは、導入空間に対して作業ロボット４０が配置され、ユーザーが作業ロボット４０の取得画像を端末装置３０を介して見ている状態が前提となっている。なお、これらの前提事項は、あくまで本発明の一態様であり、この開示に基づいて本願発明の技術的範囲が狭く解釈されることは許されない。
【０１０３】
まず、被操作体の表示が実行される（Ｓ３００）。作業ロボット４０が取得した映像は、無線ネットワーク２０を介して端末装置３０へ転送され、端末装置３０によって表示される。図９に模式的に示したように、作業ロボット４０は、内蔵カメラで取得した画像を通信回線を介して端末装置３０に対して供給可能に構成されている。なお、作業ロボット４０と端末装置３０間のデータ転送は、環境モデリングサーバ１０を介在して実行されても良い。
【０１０４】
次に、位置姿勢データの取得／送信が実行される（Ｓ３０１）。作業ロボット４０は、作業ロボット４０自身の現在位置を示す位置姿勢データを取得し、これを環境モデリングサーバ１０に対して送信する。環境モデリングサーバ１０は、作業ロボット４０の現在位置に基づいて、その周囲に存在する操作タグを特定する。
【０１０５】
次に、操作タグのダウンロードが実行される（Ｓ３０２）。環境モデリングサーバ１０は、無線ネットワーク２０を介して、特定した操作タグを端末装置３０へ送信する。
【０１０６】
次に、合成画像の生成をする（Ｓ３０３）。端末装置３０は、環境モデリングサーバ１０からダウンロードした操作タグに基づいて、図２９に示すように、作業ロボット４０から転送される現在ビューに対して操作タグアイコンが組み込まれたビューを生成して表示する（図２９参照）。
【０１０７】
次に、操作タグアイコンの選択の有無が判断される（Ｓ３０４）。端末装置３０は、指示入力部３７の出力に基づいて、操作タグアイコンの表示部分に対してユーザーの指がタッチしたか否かを判定する。
【０１０８】
操作タグアイコンの表示部分に対してユーザーの指がタッチすると、操作メニューが表示される（Ｓ３０５）。端末装置３０は、ユーザーによる指タッチに応じて操作メニューを表示する（図３０参照）。端末装置３０によって表示される操作メニューの内容は、ユーザーによって選択された操作タグに関連付けられた操作モデルの内容に応じたものである。取っ手９１ａに割り当てられた動作モデルは、図１８（ａ）に示すモデルであり、これに対応した情報（掴む／離す、開ける／閉じる）が表示される。
【０１０９】
次に、操作内容が選択される（Ｓ３０６）。ユーザーは、表示された操作メニューから所望の動作内容を提示する領域をタッチする。例えば、ユーザーは、表示された操作メニューのうち掴むという操作アイコンを指定する（図３０参照）。これに応じて、端末装置３０は、ユーザーにより選択された動作内容を検出する。
【０１１０】
次に、操作内容が指示される（Ｓ３０７）。端末装置３０は、ユーザーにより入力された指示内容を、無線ネットワーク２０を介して作業ロボット４０へ送信する。端末装置３０から作業ロボット４０へのデータ転送は、環境モデリングサーバ１０を介して実行されても良い点は上述したとおりである。
【０１１１】
次に、操作内容が実行される（Ｓ３０８）。作業ロボット４０は、受信した操作指示に応じた操作内容を実行する。作業ロボット４０は、掴むという指令に応じて、作業ロボット４０の目標姿勢を算出し、現在姿勢を目標姿勢へ変化させる。これによって、図３１に示すように、作業ロボット４０が取っ手９１ａを把持した状態となる。
【０１１２】
作業ロボット４０の姿勢変化制御は、制御部４２が、駆動制御部４５を制御することによって実行される。駆動制御部４５は、制御部４２から伝達される制御指示に応じて、アクチュエータ等を実際に駆動制御する。
【０１１３】
次に、端末装置３０は、次操作指示有りか否かを判断する（Ｓ３０９）。端末装置３０は、ユーザーによる次操作指示が有る場合、ステップＳ３０６〜Ｓ３０８を再度繰り返す。
【０１１４】
次サイクルにおいて、操作指示の選択が実行される（Ｓ３０６）。図３１に示す状態が端末装置３０に表示されると、ユーザーは、開ける／閉じるという操作アイコンを選択する。端末装置３０は、図３３に模式的に示すように、開ける／閉じる動作を定義づけるためのベクトルをユーザーに対して提示する。ユーザーは、取っ手９１ａをどの程度まで開くのかを指示するため、操作タグが表示された部分からベクトル上を指でなぞる。取っ手９１ａの移動が停止する位置において、ユーザーは、タッチパネル上から指を離す。これによって、端末装置３０には、取っ手９１ａの移動の終点位置を検出することができる。
【０１１５】
次に、端末装置３０から作業ロボット４０へ操作内容が転送される。次に、作業ロボット４０は、受信した指示内容に応じた作業を実行する。このようなサイクルを繰り返すことによって、多段階的に、タンスの引き出しを開ける作業が実行される。また、ユーザがタッチパネルから指を離す前のドラッグ操作を逐一作業ロボットへ転送することで連続的に引き出しを開ける作業を実行させることもできる。
【０１１６】
上述の説明では、円柱プリミティブと矩形プリミティブを活用して構造物の３次元形状を把握したが、幾何プリミティブの種類は任意である。図３４に幾何プリミティブ例を示す。幾何プリミティブの具体的な形状は任意であり、図３４（ａ）〜（ｆ）に例示するような幾何形状を採用することができる。図３４（ａ）は、点プリミティブである。図３４（ｂ）は、線プリミティブである。図３４（ｃ）は、矩形プリミティブである。図３４（ｄ）は、円柱プリミティブである。図３４（ｅ）は、立体プリミティブである。図３４（ｆ）は、２面プリミティブである。
【０１１７】
上述の説明から明らかなように、本実施形態では、各構造物に対して仮想的に操作タグが付与され、各構造物に対して成す作業ロボットの操作内容は、操作対象の構造物に対して事前設定された操作タグに基づいて実行される。操作タグは、被操作体の位置を示すデータ、その被操作体の３次元計測により取得した立体画像に対して幾何プリミティブを適応させて得られるデータ、およびその被操作体に対して成すべき操作内容を示すデータを含む。操作タグの設定自体は、システムを購入したユーザー側にて任意に行うことができるため、作業ロボットが導入される環境のモデル化の負担を大きく低減することが可能になる。また、幾何プリミティブの適応によって操作対象物の幾何特性を検知することができるため、大きさ、形状、場所等の異なる様々な構造物に対して同種の操作を実現可能になる。
【０１１８】
実施の形態２
図３５乃至図４０を参照して本発明の実施の形態２について説明する。本実施形態では、実施の形態１の手順に加えて、操作タグが付与される構造物の周辺に存在する幾何特徴（特徴）を抽出して、この幾何特徴を空間的に特定するデータを操作タグ内に記憶する。操作タグは、登録された幾何特徴を空間的に特定するデータ（以下、特徴特定データと呼ぶ場合がある）を包含する。その後、同構造物に対して操作タグを重畳表示する際、過去に登録された幾何特徴を、現在取得した幾何特徴に対してフィッティングする。操作タグ内では、登録済みの位置データの相対的な関係が記憶されているため、過去に登録された幾何特徴に対して現在の幾何特徴をフィッティングすることで、今、表示すべき情報の表示位置が定まる。例えば、操作タグを重畳表示する際に、位置データ取得時の誤差（端末装置３０の位置姿勢等）や表示時の誤差（端末装置或いはロボットの位置姿勢等）によって操作対象と操作タグの表示にずれが生じる。しかし、ある構造物に対して付与される操作タグ内に、その構造物の周囲にある幾何特徴の空間位置を盛り込むことによって、表示されるべき情報の位置を修正した状態でその情報を表示することが可能になる。また、操作によって可動する構造物（半開きの扉等）のように、その軌道上ではあるがデータ記録時とは異なる場所に位置することもある。そのような場合、記録されたタグ位置から軌道に沿って、幾何学特徴の探索範囲を広げることで効率良くフィッティングを実施可能となる。これによって、より的確な表示をユーザーに対して提示することが可能になる。また、構造物の位置の変動を吸収することが可能になる。なお、抽出される特徴の種類は任意であり、幾何的な特徴に限らず、周囲に存在する物の色等であっても構わない。
【０１１９】
図３５に示すように、環境モデリングサーバ１０は、周辺特徴抽出部１６、特徴フィッティング実行部１７を有する。周辺特徴抽出部１６は、図３６に模式的に示すように、キャプチャ画像に対して画像処理によって、取っ手９１ａと取っ手９１ａの取り付け面との間にある任意の種類と数の幾何特徴ＳＬ１〜ＳＬ４を抽出する。周辺特徴抽出部１６は、図３７に模式的に示すように、キャプチャ画像内において抽出された幾何特徴位置を操作タグデータベースに格納する。幾何特徴ＳＬ１、ＳＬ３は、円柱面によって位置、姿勢、直径、及び長さが特定される。幾何特徴ＳＬ２、ＳＬ４は、円弧エッジによって、中心、半径、傾き、始点終点角度が特定される。なお、操作タグには、特徴画像として、特徴的な画像部分のピクセルデータも格納可能に構成されている。このようにして過去の時点において、抽出された特徴の空間的な位置が操作タグ内に記憶される。
【０１２０】
その後、周辺特徴抽出部１６は、同構造物に対して操作タグを表示させる際、同様に、同構造物の周囲にある幾何特徴を抽出する。特徴フィッティング実行部１７は、今回抽出された幾何特徴に対して過去の幾何特徴をフィッティングさせる。これによって、操作タグに格納された他の位置データ（図１９（ａ）に示す基準位置、図１９（ｂ）に示される初期位置等）の表示位置を実際の操作対象物に対してより精度良く位置決め可能となる。これによって、操作タグ内に登録された位置データの誤差や端末或いはロボットの位置姿勢計測誤差等に依存することなく、適切な表示位置にて情報をユーザーに提示することが可能になる。
【０１２１】
図３８に示すように、Ｓ１０６のステップによりフィッティングＯＫが判定されると、上述のように、特徴の抽出をする（Ｓ１０９）。次に、上述のように、抽出された特徴の空間位置を特定するためのデータも含めて操作タグを記憶する（Ｓ１０７）。
【０１２２】
図３９に示すように、端末装置３０に対して操作タグ内に包含される位置データに基づいた情報を提示する場合、まず、周辺の幾何特徴の抽出を行う（Ｓ２０１）。次に、現在ビューに表示されるべき操作タグを検索する（Ｓ２０２）。次に、検索により得られた操作タグの幾何特徴を、Ｓ２０１によって得られた幾何特徴に対してフィッティングする（Ｓ２０３）。次に、フィッティングにより特定される位置姿勢と操作タグの幾何プリミティブとの相対関係の記録データから操作タグの幾何プリミティブの位置姿勢を修正して情報を表示する（Ｓ２０４）。このようにして、新旧の特徴の空間的な位置のフィッティングから情報の表示位置精度をより高めることができる。これにより、適当な位置に情報を提示することが可能になる。フィッティングから得られる位置に基づいて、データベースにある操作タグ内の位置データの値を修正しても良い。このような修正作業を繰り返すことによって、操作タグ内の位置データの精度を高めることが可能になる。
【０１２３】
図４０に模式的に示すように、被操作体が図１８（ｄ）に示すものであれば、その周囲に存在する枠のエッジを特徴点として抽出するとよい。
【０１２４】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、端末装置３０の機能と作業ロボット４０の機能とを部分的に共通化しても良い。端末装置３０の具体的な形状は任意である。
【符号の説明】
【０１２５】
１００    システム
１０    環境モデリングサーバ
１１    通信部
１２    制御部
１３    操作タグデータベース
１４    操作タグ生成部
１５    フィッティング実行部
１６    周辺特徴抽出部
１７    特徴フィッティング実行部
２０    無線ネットワーク
３０    端末装置
３１    通信部
３２    制御部
３３    表示画像生成部
３６    表示部
３７    指示入力部
３８    ３Ｄ画像取得部
３９    位置姿勢情報取得部
４０    作業ロボット
４１    通信部
４２    制御部
４３    画像取得部
４４    位置姿勢情報取得部
４５    駆動制御部
９０    構造物
【図１】
0005659787.tif 000002
【図２】
0005659787.tif 000003
【図３】
0005659787.tif 000004
【図４】
0005659787.tif 000005
【図５】
0005659787.tif 000006
【図６】
0005659787.tif 000007
【図７】
0005659787.tif 000008
【図８】
0005659787.tif 000009
【図９】
0005659787.tif 000010
【図１０】
0005659787.tif 000011
【図１１】
0005659787.tif 000012
【図１２】
0005659787.tif 000013
【図１３】
0005659787.tif 000014
【図１４】
0005659787.tif 000015
【図１５】
0005659787.tif 000016
【図１６】
0005659787.tif 000017
【図１７】
0005659787.tif 000018
【図１８】
0005659787.tif 000019
【図１９】
0005659787.tif 000020
【図２０】
0005659787.tif 000021
【図２１】
0005659787.tif 000022
【図２２】
0005659787.tif 000023
【図２３】
0005659787.tif 000024
【図２４】
0005659787.tif 000025
【図２５】
0005659787.tif 000026
【図２６】
0005659787.tif 000027
【図２７】
0005659787.tif 000028
【図２８】
0005659787.tif 000029
【図２９】
0005659787.tif 000030
【図３０】
0005659787.tif 000031
【図３１】
0005659787.tif 000032
【図３２】
0005659787.tif 000033
【図３３】
0005659787.tif 000034
【図３４】
0005659787.tif 000035
【図３５】
0005659787.tif 000036
【図３６】
0005659787.tif 000037
【図３７】
0005659787.tif 000038
【図３８】
0005659787.tif 000039
【図３９】
0005659787.tif 000040
【図４０】
0005659787.tif 000041