(57)【要約】【課題】環境の変化等に対応して、制御対象物のビジュアルフィードバック制御を短時間でかつ適切に行えるようにし、しかもマーカや制御パラメータの設定に伴う作業時間の短縮及び労力の低減を可能とする。【解決手段】過去に制御対象ＣＣ１の動作を制御した時の制御結果またはシミュレーションにより作成した設定情報を含むマーカ検出用データ及び制御パラメータデータを、条件ごとに管理するための付帯情報に関連付けて通信ネットワークＮＷ上の保存装置ＳＶ１に記憶して管理しておき、制御ユニットＣＵ１において、制御対象ＣＣ１の動作を制御するとき、予め決められた条件、例えばシステムや環境の新規構築時や、ある瞬間に制御不可能になった場合に、条件に合ったマーカ検出用データ及び制御パラメータデータを通信ネットワークＮＷ上の保存装置ＳＶ１から取得する。【選択図】      図２
2014102705.tif 000002
【特許請求の範囲】
【請求項１】
制御対象物または当該制御対象物の周囲に位置する対象物に貼り付けたマーカを撮像部にて撮影し、前記撮像部で得られる撮像視野内の画像信号を、直接または通信ネットワークを介して制御部に入力し、当該制御部にて撮像視野内の画像信号を画像処理して前記制御対象物を検出し、検出結果に基づいて前記制御対象物の動作を制御するビジュアルフィードバック制御方法であって、
前記制御対象物の動作を制御した時の制御結果または予め作成した設定情報を含む動作制御情報を、条件ごとに管理するための付帯情報に関連付けて前記通信ネットワーク上の記憶部に記憶し、
前記制御部にて前記制御対象物の動作が制御されるとき、予め決められた条件に基づいて、前記記憶部から該当する付帯情報に関連づけられた動作制御情報を取得し、前記動作制御情報に基づいて、前記制御対象物の動作を制御することを特徴とするビジュアルフィードバック制御方法。
【請求項２】
前記記憶することは、前記動作制御情報として、過去の制御時に使用したマーカ検出用データを、検出失敗率、利用回数、有効照度情報、利用者の評価の少なくとも１つを含む付帯情報に関連付けて前記通信ネットワーク上の前記記憶部に記憶することを特徴とする請求項１記載のビジュアルフィードバック制御方法。
【請求項３】
前記記憶することは、前記動作制御情報として、前記制御対象物の動作を制御するための制御パラメータを、有効照度範囲情報、最大消費電力量情報、安全動作用のフラグ、許容計算能力情報の少なくとも１つを含む付帯情報に関連付けて前記通信ネットワーク上の前記記憶部に記憶することを特徴とする請求項１記載のビジュアルフィードバック制御方法。
【請求項４】
前記制御することは、前記条件に基づいて、前記記憶部から該当する付帯情報及び前記付帯情報に関連づけられた動作制御情報を取得して利用者に提示し、この提示に対し利用者が選択指示を入力した場合に、選択した動作制御情報に基づいて、前記制御対象物の動作を制御することを特徴とする請求項１記載のビジュアルフィードバック制御方法。
【請求項５】
前記制御することは、前記条件の判断に、制御不可通知を用い、前記制御不可通知を受信した場合に、前記サーバ装置から該当する付帯情報に関連づけられた動作制御情報を取得し、前記動作制御情報に基づいて、前記制御対象物の動作を制御することを特徴とする請求項１記載のビジュアルフィードバック制御方法。
【請求項６】
さらに、前記通信ネットワーク上の他の処理装置に対し、前記記憶部に記憶された前記付帯情報及び前記動作制御情報を共有し、要求に応じて前記付帯情報及び前記動作制御情報を提供することを特徴とする請求項１記載のビジュアルフィードバック制御方法。
【請求項７】
制御対象物または当該制御対象物の周囲に位置する対象物に貼り付けたマーカを撮像部にて撮影し、前記撮像部で得られる撮像視野内の画像信号を、直接または通信ネットワークを介して制御部に入力し、当該制御部にて撮像視野内の画像信号を画像処理して前記制御対象物を検出し、検出結果に基づいて前記制御対象物の動作を制御するビジュアルフィードバック制御システムであって、
前記通信ネットワーク上に設けられ、前記制御対象物の動作を制御した時の制御結果または予め作成した設定情報を含む動作制御情報を、条件ごとに管理するための付帯情報に関連付けて記憶する記憶部を備え、
前記制御部は、前記制御対象物の動作が制御されるとき、予め決められた条件に基づいて、前記記憶部から該当する付帯情報に関連づけられた動作制御情報を取得し、前記動作制御情報に基づいて、前記制御対象物の動作を制御する手段を備えることを特徴とするビジュアルフィードバック制御システム。
【請求項８】
制御対象物または当該制御対象物の周囲に位置する対象物に貼り付けたマーカを撮影する撮像部で得られる撮像視野内の画像信号を、直接または通信ネットワークを介して入力し、前記撮像視野内の画像信号を画像処理して前記制御対象物を検出し、検出結果に基づいて前記制御対象物の動作を制御する制御部により実行されるプログラムであって、前記制御部を、
前記制御対象物の動作を制御した時の制御結果または予め作成した設定情報を含む動作制御情報を、条件ごとに管理するための付帯情報に関連付けて前記通信ネットワーク上の記憶部に記憶し、
前記制御対象物の動作が制御されるとき、予め決められた条件に基づいて、前記記憶部から該当する付帯情報に関連づけられた動作制御情報を取得し、前記動作制御情報に基づいて、前記制御対象物の動作を制御するように動作させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットやアクチュエータを、カメラから得られた画像を用いて制御・操作する方法に係り、アクチュエータやその周りの物体にマーカを貼り付け、そのマーカをアクチュエータが動作する環境やアクチュエータ自体に取り付けられた撮像装置で撮影し、画像認識によってそれらマーカを検出し、その検出結果に基づくアクチュエータや物体の位置や速度等の推定情報を基にアクチュエータを制御するビジュアルフィードバック制御方法及びビジュアルフィードバック制御システム及びプログラムに関する。
【背景技術】
【０００２】
ロボットやアクチュエータを制御する方法として、ビジュアルフィードバックという制御法が知られている(非特許文献１)。また、環境や、アクチュエータに取り付けられたマーカを撮影し、更に画像認識技術等によってそのマーカを検出することによって、アクチュエータ等様々な対象物の位置や速度が推定可能な方法も知られている(非特許文献２)。
【０００３】
そこで、計算機が検出可能なマーカを、アクチュエータに張り付けたり、その付近の環境に張り付けたりすることで、上記方法が適用可能になり、アクチュエータの位置などの推定や、アクチュエータの周りの障害物、特別な処理対象等を検出し、都度必要な動作命令をアクチュエータにフィードバックすることが可能となる。この方法は、日常的な環境でアクチュエータを動かすために有効な手法として検討されている。
【０００４】
また、特定のサーバや管理者が、ネットワークを経由して、アクチュエータの作業や動作に関する情報収集を行うこと、また逆に、計算機やサーバからそれらアクチュエータに動作を制御する信号を送信することも、現在では可能になった。
ところで、前述の画像認識を使ってマーカの位置等を計算するためには、そのマーカを認識するための検出器(検出用プログラム、フィルタ等)と検出用データ（検出用プログラムやフィルタに設定する内部パラメータ）が必要となる。一般に、この検出用データを得ることは、機械学習のような自動化された方法（非特許文献３）を用いても長時間を要する。しかも機械学習のような方法による自動化は、その学習プログラムに与える最適な入力や構築用パラメータが明らかでない場合があることや、学習自体が必ずしも成功しないため、やり直しが必要なこともある。また、得られた検出用データが、マーカを検出する環境の変化に対応できる保証はなく、更にマーカの検出自体が適切に行われても、適切な制御信号が生成できない場合があり得る。
【０００５】
例えば、ある検出用データによるマーカの検出が、アクチュエータの停止時には適切に行われたとしても、アクチュエータの動作時や環境が変わった場合では、検出そのものが失敗する可能性や、適切な制御信号が生成されなくなる可能性がある。より具体的には、マーカが張り付けられたアクチュエータを、カメラでそのマーカを検出しながら制御しようとした時、カメラとアクチュエータの位置関係によっては、アクチュエータ（マーカ）がカメラの撮影範囲内で速く動きすぎてしまい、検出ができなくなることが考えられる。また、同じ理由によって、検出自体は適切に行われても、動作が速すぎるために「ある目的の場所での停止」等の命令を、命令通りに達成できなくなること（例：行き過ぎてしまう）が考えられる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】カメラを用いたロボット制御の方法  http://www.k2.t.u-tokyo.ac.jp/vision/1msVisualFeedback/index-j.html
【非特許文献２】マーカによる各物体の状態推定に関する方法  加藤博一,他「マーカ追跡に基づく拡張現実感システムとそのキャリブレーション」、日本バーチャルリアリティ学会論文誌、Ｖｏｌ４、Ｎｏ．４、１９９９年
【非特許文献３】Paul Viola and Michael J. Jones, "Rapid Object Detection using a Boosted Cascade of Simple Features", IEEE CVPR, 2001.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記方法では、ビジュアルフィードバックに用いることが可能なマーカとその検出用データを、システムの利用者が入手可能とすることが困難である。また、単一のマーカの利用やアクチュエータの動作パラメータ設定では、アクチュエータの動作、環境の変化等による影響に、対応することが困難である。
【０００８】
本発明の目的は、環境の変化等に対応して、制御対象物のビジュアルフィードバック制御を短時間でかつ適切に行えるようにし、しかもマーカや制御パラメータの設定に伴う作業時間の短縮及び労力の低減を可能とするビジュアルフィードバック制御方法及びビジュアルフィードバック制御システム及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、この発明に係るビジュアルフィードバック制御方法は、制御対象物または当該制御対象物の周囲に位置する対象物に貼り付けたマーカを撮像部にて撮影し、撮影部で得られる撮像視野内の画像信号を、直接または通信ネットワークを介して制御部に入力し、当該制御部にて撮像視野内の画像信号を画像処理して制御対象物を検出し、検出結果に基づいて前記制御対象物の動作を制御するビジュアルフィードバック制御方法であって、制御対象物の動作を制御した時の制御結果または予め作成した設定情報を含む動作制御情報を、条件ごとに管理するための付帯情報に関連付けて通信ネットワーク上の記憶部に記憶し、制御部にて制御対象物の動作が制御されるとき、予め決められた条件に基づいて、記憶部から該当する付帯情報に関連づけられた動作制御情報を取得し、動作制御情報に基づいて、制御対象物の動作を制御するようにしたものである。
【００１０】
この構成によれば、過去に制御対象物の動作を制御した時の制御結果またはシミュレーションにより作成した設定情報を含む動作制御情報を、条件ごとに管理するための付帯情報に関連付けて通信ネットワーク上の記憶部に記憶して管理しておき、制御対象物の動作が制御されるとき、予め決められた条件、例えばシステムや環境の新規構築時や、ある瞬間に制御不可能になった場合に、条件に合った動作制御情報を通信ネットワーク上の記憶部から取得することができるので、環境の変化等の影響に対応して、制御対象物の制御を短時間で適切に行うことができ、一方、利用者にとっては制御対象物の制御に必要な労力とコストを低減することが可能となる。
【００１１】
上記記憶することは、動作制御情報として、過去の制御時に使用したマーカ検出用データを、検出失敗率、利用回数、有効照度情報、利用者の評価の少なくとも１つを含む付帯情報に関連付けて通信ネットワーク上の記憶部に記憶する。
この構成によれば、マーカ検出不可通知を受信した場合等に、現在の照度に有効なマーカ検出用データを自動的に選択でき、これにより照度の変動に自動的に対応可能なマーカ検出系を構築可能となる。その他、検出失敗率、利用回数、利用者の評価を使用することで、利用する環境に対して最も適したマーカ検出用データを自動的に選択することが可能となる。
【００１２】
上記記憶することは、動作制御情報として、制御対象物の動作を制御するための制御パラメータを、有効照度範囲情報、最大消費電力量情報、安全動作用のフラグ、許容計算能力情報の少なくとも１つを含む付帯情報に関連付けて通信ネットワーク上の記憶部に記憶する。
【００１３】
この構成によれば、外部照度センサから環境の照度情報を受け取る場合に、現在の照度の適用範囲内の制御パラメータを取得でき、これにより照度の変動に自動的に対応可能なビジュアルフィードバック系を構築可能となる。また、制御対象物からセンサ情報としてバッテリ残量を受け取る場合に、最大消費電力情報を用いて、最大消費電力が少ない制御パラメータを選択でき、これによりバッテリ駆動される制御対象物のより長時間の動作が可能となる。
【００１４】
上記制御することは、条件に基づいて、記憶部から該当する付帯情報及び前記付帯情報に関連づけられた動作制御情報を取得して利用者に提示し、この提示に対し利用者が選択指示を入力した場合に、選択した動作制御情報に基づいて、制御対象物の動作を制御する。
【００１５】
この構成によれば、例えばシステムや環境の新規構築時や、ある瞬間に制御不可能になった場合に、利用者が自身でマーカ検出用データまたは制御パラメータが必要か否かを判断して指示することができ、これにより真に必要なマーカ検出用データまたは制御パラメータを取得することが可能となる。
【００１６】
さらに、通信ネットワーク上の他の処理装置に対し、記憶部に記憶された付帯情報及び動作制御情報を共有し、要求に応じて付帯情報及び動作制御情報を提供する。
この構成によれば、通信ネットワーク上の処理装置間で、記憶部に記憶された付帯情報及び動作制御情報を共有することで、既製品の制御対象物を所有する利用者間で、制御対象物をビジュアルフィードバック制御することが可能となり、さらに個々がマーカを使えるようにするためだけに要する労力を低減することができる。また、利用者が多くなるほど、共有されるデータが記憶部に蓄積され、様々な環境に適合する可能性の高いシステムを構築できる。
【発明の効果】
【００１７】
上記発明によれば、環境の変化等に対応して、制御対象物のビジュアルフィードバック制御を短時間でかつ適切に行えるようにし、しかもマーカや制御パラメータの設定に伴う作業時間の短縮及び労力の低減を可能とするビジュアルフィードバック制御方法及びビジュアルフィードバック制御システム及びプログラムを提供することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態に係るビジュアルフィードバック制御システムを示すブロック図。
【図２】本実施形態における制御プログラムと保存装置との接続関係を示すブロック図。
【図３】本実施形態で使用されるマーカデータの構造、マーカ検出用データの構造を示す図。
【図４】本実施形態で使用される制御パラメータデータの構造を示す図。
【図５】本実施形態におけるマーカを更新する際の利用者、制御プログラム、保存装置間の処理シーケンスを示す図。
【図６】本実施形態におけるマーカ更新時の制御プログラムの制御処理手順を示すフローチャート。
【図７】本実施形態におけるマーカ管理情報の構造を示す図。
【図８】本実施形態における制御パラメータを更新する際の利用者、制御プログラム、保存装置間の処理シーケンスを示す図。
【図９】本実施形態における制御パラメータ更新時の制御プログラムの制御処理手順を示すフローチャート。
【図１０】本実施形態における制御パラメータ管理情報の構造を示す図。
【図１１】本実施形態の保存装置に記憶されたマーカ検出用データ、制御パラメータを利用して制御対象を操作する例を示す図。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態について図面を参照して詳細に説明する。  
図１は、本発明の一実施形態に係るビジュアルフィードバック制御システムを示すブロック図である。
図１に示すシステムは、複数の制御ユニットＣＵ１〜ＣＵｍと、保存装置ＳＶ１とを備え、互いに通信ネットワークＮＷを介して接続されている。ここで、制御ユニットＣＵ１は、例えば工場等に設置されるもので、ロボットやマニュピュレータといった制御対象ＣＣ１〜ＣＣｉと、マーカが貼り付けられた制御対象ＣＣ１〜ＣＣｉを撮像するための撮像装置ＣＡ１〜ＣＡｎと、管理装置ＭＵ１と、表示器及びキーボードを含む他装置ＵＡ１とを備えている。
【００２０】
このうち、管理装置ＭＵ１には、制御プログラム１００が選択的にセットされる。この制御プログラム１００は、マーカの検出機能、制御対象の状態推定機能、制御信号の生成機能を備える。この制御プログラム１００がセットされた管理装置ＭＵ１は、例えば撮像装置ＣＡ１により撮影された制御対象ＣＣ１の画像信号を直接もしくは通信ネットワークを介して取り込み、画像認識やマーカ検出により各マーカを認識・検出する。認識したマーカに関して、マーカがどの制御対象に関する物かを保持するマーカ管理情報、及び撮像された画像内におけるマーカの位置や移動速度等を参照して、制御対象ＣＣ１に所望の動作を達成させるための制御信号を生成する。この制御信号は、制御対象ＣＣ１の動作制御に供される。
【００２１】
他装置ＵＡ１は、撮像画像の表示や制御対象ＣＣ１の状態情報の表示、制御対象ＣＣ１の制御指示等の管理装置ＭＵ１に対し種々の動作指示を入力するために使用するもので、通信ネットワークＮＷ上の保存装置ＳＶ１に対し、過去の制御操作時に得られた制御結果または予めシミュレーションにより作成した設定情報を含む動作制御情報となる、マーカデータ、マーカ検出用データ、制御パラメータの登録指示の入力と、保存装置ＳＶ１に対するマーカデータ、マーカ検出用データ、制御パラメータの取得要求または更新要求の送信指示の入力にも使用される。上記マーカデータ、マーカ検出用データ、制御パラメータの登録指示が入力された場合には、上記マーカデータ、マーカ検出用データ、制御パラメータがそれぞれ条件ごとに管理するための付帯情報に関連付けられて保存装置ＳＶ１に記憶保持される。
【００２２】
保存装置ＳＶ１に記憶されたｊ（ｊは整数）個のマーカデータ、ｊ個のマーカ検出用データ、ｋ（ｋは整数）個の制御パラメータは、ｍ（ｍは整数）個の制御ユニットＣＵ１〜ＣＵｍ間及び利用者１〜ｐ間で共有される。そして、保存装置ＳＶ１は、制御ユニットＣＵ２からの要求に応じて付帯情報及びマーカデータ、マーカ検出用データ、制御パラメータを制御ユニットＣＵ２に提供する。また、保存装置ＳＶ１は、利用者３から要求に応じて付帯情報及びマーカデータ、マーカ検出用データ、制御パラメータを利用者３に提供する。
【００２３】
図２は、上記制御プログラム１００と保存装置ＳＶ１との接続関係を示すブロック図である。
制御プログラム１００は、画像処理部１０１と、マーカ検出部１０２と、状態推定部１０３と、制御・操作信号生成部１０４と、制御対象インタフェース部１０５と、マーカ管理部１０６と、制御パラメータ管理部１０７とを備える。
【００２４】
画像処理部１０１は、各撮像装置ＣＡ１〜ＣＡｎより撮像データを受け取り、画像データへの復号や、画像解析、マーカの検出を成功しやすくするための前処理を行う。この前処理としては、色空間調整やメディアンフィルタ（平滑化フィルタ）等を施す。
マーカ検出部１０２は、画像処理部１０１から受け取った画像データに対して、設定されたマーカ管理情報を利用して、画像認識等の画像解析やマーカ検出処理を行い、画像データ内のマーカの有無、及びその画像データ内における位置を検出する機能、また、検出に失敗した場合はその失敗したことを通知するためのマーカ検出不可通知を出力する機能を有する。
【００２５】
状態推定部１０３は、検出されたマーカの位置情報を利用して、制御対象ＣＣ１〜ＣＣｉの位置や速度等の状態を推定する機能を有する。
制御・操作信号生成部１０４は、推定された状態の情報を利用し、更に利用者や他装置ＵＡ１からの制御・操作入力、制御パラメータ管理情報、制御対象ＣＣ１〜ＣＣｉ内部からの帰還制御信号を基に、制御対象ＣＣ１〜ＣＣｉの制御・操作信号を生成し、また、（１）マーカ検出部がマーカ検出に失敗、事前に定めた一定時間以上経っても目標状態にならない、（２）制御対象ＣＣ１〜ＣＣｉが生成した制御・操作信号通りに動作しない、（３）制御パラメータの形式が制御対象に合致しない、等の状況に基づいて、制御不可通知を制御パラメータ管理情報に送信する機能を有する。
【００２６】
制御対象インタフェース部１０５は、生成された制御・操作信号を制御対象ＣＣ１〜ＣＣｉが認識可能な形式に変換するインタフェースとしての機能を有する。
マーカ管理部１０６は、利用者からのマーカ更新要求、もしくは外部装置からのセンサ情報の入力、前記マーカ検出部１０２からのマーカ検出不可通知に基づいて、通信ネットワークＮＷを経由して通信ネットワークＮＷ上の保存装置ＳＶ１にアクセスし、その保存装置ＳＶ１から利用可能なマーカデータ、及びそのマーカを検出するためのマーカ検出用データを取得し、利用可能なマーカデータ、及びマーカ検出用データを利用者に提示し、利用者によって選択されたマーカを物理的なマーカとして利用可能なようにプリントアウト等の外部出力を行い、その選択されたマーカに関するマーカ管理情報をマーカ検出部１０２に設定する機能を有する。
【００２７】
制御パラメータ管理部１０７は、利用者からの制御パラメータ更新要求に基づいて、もしくは外部装置からのセンサ情報や制御・操作信号生成部１０４からの制御不可通知に基づいて、通信ネットワークＮＷを経由して通信ネットワークＮＷ上の保存装置ＳＶ１にアクセスし、その保存装置ＳＶ１から利用可能な制御パラメータを取得し、利用可能な制御パラメータを利用者に提示し、利用者によって選択された制御パラメータを、制御パラメータ管理情報として制御・操作信号部１０４に設定する。
【００２８】
保存装置ＳＶ１は、マーカデータ保持部２０１と、マーカ検出用データ保持部２０２と、制御パラメータ保持部２０３と、データ登録インタフェース部２０４とを備える。
マーカデータ保持部２０１は、ビットマップ等の画像データのような、どのようなマーカであるかを利用者が視認することが可能な状態に変換可能なマーカ画像データと、人間が可読できる形に変換可能な、当該マーカに関する説明用文章のデータ、当該マーカを識別・参照するためのマーカID等の付帯情報が、一組になったマーカデータを、多数保存することが可能である。
【００２９】
マーカ検出用データ保持部２０２は、マーカデータによって紙やシール等に再現されるマーカを検出するために、マーカ検出部１０２のマーカ検出処理に用いるフィルタや計算処理に与える必要があるマーカ検出用パラメータと、人間が可読できる形に変換可能な、前記マーカ検出用パラメータ構築に関する情報（例：機械学習時のその学習プログラムに与えるパラメータ等）である構築用パラメータ、検出失敗率、有効照度領域、利用回数、利用者の評価等の付帯情報が一組なったマーカ検出用データを、前記マーカID等を利用して対応するマーカに対応付けて、多数保存することが可能である。
【００３０】
制御パラメータ保持部２０３は、速さや加速度を指定するための数値や命令コードのような、制御対象ＣＣ１〜ＣＣｉにとって有意に認識可能な形に変換可能な形式であり、かつその内容ついて人間が可読できる形に変換可能な、説明用文章のデータ、有効照度領域、最大消費電力、安全動作フラグ、許容計算能力等の付帯情報が、一組にされた制御パラメータデータを、多数保存することが可能である。
【００３１】
データ登録インタフェース部２０４は、上記マーカデータ保持部２０１、マーカ検出用データ保持部２０２、制御パラメータ保持部２０３に、利用者がそれぞれ対応するデータを入力することを可能にする、Ｗｅｂブラウザやファイル転送プロトコル用アプリケーション、ファイル共有アプリケーションのような、利用者への入力インタフェースとしての機能を有し、また、各データについて利用者がその有効性や性能についてコメントや評価を行うことを可能とし、かつその利用者のコメントや評価を保存・提示する機能を有する。
【００３２】
通信ネットワークＮＷは、無線ＬＡＮやＢｌｕｅｔｏｏｔｈ（登録商標）、ｚｉｇｂｅｅ（登録商標）、ＬＴＥといった無線ネットワーク、及びイーサネット（登録商標）、ＵＳＢ、ＰＣＩバス、ＳＡＴＡのような有線ネットワーク、或いはそれらの組み合わせによって構築される、データ転送を実現する機能を有する。
【００３３】
図３は、上記マーカデータ保持部２０１に記憶されるマーカデータの構造、上記マーカ検出用データ保持部２０２に記憶されるマーカ検出用データの構造を示している。
マーカデータは、図３（ａ）に示すように、マーガ画像データと、付帯情報としてのマーカ説明テキスト及びマーカＩＤとから構成される。また、マーカ検出用データは、図３（ｂ）に示すように、マーカ検出部のフィルタや計算処理に用いられるマーカ検出用パラメータ及びマーカＩＤと、構築用パラメータ、検出失敗率、有効照度情報、利用回数、利用者の評価の少なくとも１つを含む付帯情報とから構成される。
【００３４】
上記マーカデータとマーカ検出用データは、上記マーカＩＤ等を利用して対応関係を持つが、一つのマーカデータに対し、複数のマーカ検出用データを対応付けしてもよい。例えば、対象とするマーカの形や画像自体は同一だが、異なる条件で構築されたマーカ検出パラメータや、有効な照度領域が異なるマーカ検出データが複数ある時、それらのマーカ検出用データのマーカＩＤは単一のマーカデータに対応させても良い。
【００３５】
上記検出失敗率は以下のようにして、定義・算出可能である。  
（ａ１）  マーカが一つだけ映っているテスト画像を十分に多い数用意し、そのマーカを検出可能なように設定されたマーカ検出部１０２によって、その内の何枚の画像においてマーカを正確に検出できなかったか  
（ａ２）  マーカを撮像装置ＣＡ１で十分に長い時間撮像し、そのマーカを検出可能なように設定されたマーカ検出部１０２によって、撮像時間中のどのくらいの時間、撮像データからマーカを正確に検出できなかったか（なお、ここで撮像中に、撮像領域からはみ出さない範囲で、任意にマーカを移動させてもよい）
上記有効照度領域は以下のようにして、定義・測定可能である。  
（ｂ１）  あるマーカとそのマーカ検出用データにおいて、そのマーカの検出失敗率が50%以下となる、マーカ表面の照度の下限値、及び上限値によって定められる照度領域  
（ｂ２）  あるマーカとそのマーカ検出用データにおいて、そのマーカの検出失敗率が50%以下となる、撮像された画像の輝度の下限値、及び上限値によって定められる輝度領域
上記利用回数は以下のようにして、定義・算出可能である。
【００３６】
（ｃ１）  当該マーカ検出用データが、過去に制御プログラムによって取得された回数
上記利用者の評価は以下のようにして、定義・算出可能である。
（ｄ１）  当該マーカ検出用データを過去に利用した利用者による、成功、もしくは失敗という評価の回数をそれぞれカウントし、その成功−失敗の値  
（ｄ２）当該マーカ検出用データを利用している制御プログラムから、マーカ検出不可通知を受け取り、その回数の多さ（多いほど悪い評価）
上記保存装置ＳＶ１に対して、複数の前記制御プログラムが、ネットワークを介して接続可能としても良い。また、上記データ登録インタフェース部２０４は、複数の利用者が同時接続する場合は、各データの登録、削除に関して排他制御を行う。これは、データ登録インタフェース部２０４が、各データに、「作業中」「登録中」といった状態の管理機能を設けることで実現する。
【００３７】
データ登録用インタフェース部２０４は、各マーカ検出用データの付帯情報の詳細を利用者に表示する機能も有する。例えば、利用者があるマーカ検出用データを参照した際、その構築用パラメータ、検出失敗率、利用者の評価等を表示する。また、あるマーカデータに対応している複数のマーカ検出用データを、特定の評価軸（検出失敗率等）に基づいて、評価値の高い順、あるいは低い順に順番に表示する機能も有する。例えば、ウェブブラウザ経由で、選択可能な評価軸のタブを表示し、利用者がそのタブを選択すると、選択されたタブの評価軸に関してマーカ検出用データの該当する付帯情報を調べ、その値順にソートしてウェブブラウザ上に表示する。これによって、利用者は、どのようなマーカ検出用データが使われているか、更にどのような構築用パラメータで構築されているか、どのような有効領域を持つかが把握しやすくなるため、利用者の要求を満たすマーカ検出用データを探しやすくなること、新しく利用者が作る際の参考値になること、利用者間で協力し合うことで異なる有効領域を持つものを作り、マーカ検出用データ全体としての利用価値の向上等が見込める。
【００３８】
図４は、上記制御パラメータ保持部２０３に記憶される制御パラメータデータの構造を示している。
制御パラメータデータは、制御対象ＣＣ１〜ＣＣｉの制御時に利用される各種制御パラメータと、詳細は後述するが、制御パラメータ説明用テキスト、有効照度情報、最大消費電力、安全動作フラグ、許容計算能力の少なくとも１つを含む付帯情報とから構成される。
【００３９】
次に、上記構成における動作について説明する。
（利用者とマーカ管理部間の処理）  
図５は、マーカを更新する際の利用者、制御プログラム１００、保存装置ＳＶ１間の処理シーケンスを示す。図６は、マーカ更新時の制御プログラム１００の制御処理手順を示すフローチャートである。
【００４０】
制御プログラム１００は、更新要求が到来するか否かを監視しており（ステップＳＴ９ａ）、更新要求が到来しなければ（Ｎｏ）、撮像装置ＣＡ１から撮像画像信号を受信するか否かの判断を行う（ステップＳＴ９ｂ）。ここで、撮像画像信号を受信した場合（Ｙｅｓ）、制御プログラム１００は撮像画像信号に対し色空間調整、フィルタ処理等の画像処理を施し（ステップＳＴ９ｃ）、画像解析、画像認識によりマーカを検出し（ステップＳＴ９ｄ）、検出されたマーカと関連付けられた制御対象ＣＣ１の照合を行い（ステップＳＴ９ｅ）、制御パラメータ管理部１０７に設定された制御パラメータを参照し（ステップＳＴ９ｆ）、制御対象ＣＣ１の状態推定、制御信号生成を行い（ステップＳＴ９ｇ）、制御対象ＣＣ１に制御信号を送信する（ステップＳＴ９ｈ）。
【００４１】
ここで、利用者は、他装置ＵＡ１を操作して制御プログラム１００のマーカ管理部１０６にマーカ更新要求を送信する（図５（１））。マーカ更新要求を受け取ったマーカ管理部１０６は、制御対象ＣＣ１を一旦停止させ（ステップＳＴ９ｉ）、通信ネットワークＮＷ上の保存装置ＳＶ１に対し利用可能なマーカリスト要求を送信する（図５（２））。
【００４２】
保存装置ＳＶ１は、マーカリスト要求を受信すると、制御プログラム１００に対し利用可能なマーカリストを送信する（図５（３））。そして、マーカ管理部１０６は、マーカリストを受信すると（ステップＳＴ９ｊ）、更にマーカデータ内のマーカ画像データ、及びその付帯情報を用いて、どのようなマーカであるか、を利用者に提示する（図５（４）、ステップＳＴ９ｋ）。このとき、マーカ管理部１０６は、利用者の選択待ちとなる（ステップＳＴ９ｌ）。
【００４３】
この状態で、利用者は他装置ＵＡ１を操作して提示されたマーカデータの中から使用するマーカを選択し、同時に当該マーカは、（ｅ１）制御対象に用いるのか、その場合どの制御対象に用いるのか（一つしかない場合は不要）、（ｅ２）障害物に用いるのか、（ｅ３）制御対象に何らかの作業を行わせるための作業対象に用いるのか、その場合どの作業対象なのかのいずれに使うかも選択し、選択結果をマーカ管理部１０６に通知する（図５（５））。
【００４４】
マーカ管理部１０６は上記選択に基づき、選択されたマーカデータのマーカ画像データをプリントアウト等の外部装置に出力し（ステップＳＴ９ｍ）、当該マーカデータに対応するマーカ検出用データ要求を保存装置ＳＶ１に送信し（図５（６））、保存装置ＳＶ１内のマーカ検出用データ保持部２０２から取得し（図５（７）、ステップＳＴ９ｎ）、図７に示すように、当該マーカの識別値であるマーカＩＤ、当該マーカの対象、当該マーカの検出用データがセットになったマーカ管理情報を生成し、更に、このマーカ管理情報をマーカ検出部１０２に設定し（図５（８）、ステップＳＴ９ｏ）、マーカの更新が完了したことを利用者に通知する（図５（９））。但し、上記マーカ画像データの外部出力は、すでにマーカが用意してある、或いは物体の模様やロゴ等をマーカとして扱う場合は、行わなくても良い。
【００４５】
利用者は、出力されたマーカ画像を、上記の選択した対象と相違のないように、対象に取り付ける。
なお、このマーカ管理情報は、マーカＩＤによる識別が可能な限り、マーカ検出部に複数設定することも可能である。但し、画像として、同じ、或いは近い形をもつマーカ画像データを対象にしたマーカ管理情報は、同時に設定すべきではない。
【００４６】
上記処理は、例えばシステムや環境の新規構築時や、ある瞬間使用していたマーカが何らかの理由により使用できなくなった時に、通信ネットワークＮＷ上の保存装置ＳＶ１に保存されているマーカを取得し、更にそれをビジュアルフィードバックに使えるようにマーカ検出部１０２に設定するもの、と言える。通信ネットワークＮＷ上の保存装置ＳＶ１に保存されているマーカデータは、過去に自分が保存したものでも良いし、他の誰かが作ったものでも良い。即ち、共有することによって、上記の構築や、マーカの更新処理をより簡単に行えるようになる。なお、最も効果があると考えられるのは、例えば制御対象のロゴや模様をマーカデータとしている場合である。この場合、前記外部出力、マーカ取り付け作業が不要であり、しかも、既製品をそのまま検出することになるので、ただ作業対象を配置するだけで、その対象の検出が可能になる。
【００４７】
この処理によって、マーカ検出部１０２は、当該マーカの検出が可能になり、そのマーカの検出された位置やそのマーカが何を表すか等の情報を、状態推定部１０３に渡すことが可能になる。
（マーカ管理部の拡張）  
マーカ管理部１０６の基本的な動作は上記のようになるが、マーカ検出部１０２からのマーカ検出不可通知や、外部装置等からのセンサ情報などを利用する拡張を行っても良い。
【００４８】
拡張の実装例と、その効果を以下に列挙する。  
（ｆ１）  付帯情報内部の値が異なる複数のマーカ検出用データが、あるマーカデータに対して対応付けしていても良い。この場合、利用者が使用するマーカデータを選択した後、マーカ管理部１０６は、その選択されたマーカデータに対応している複数のマーカ検出用データを保存装置ＳＶ１より取得し、マーカ検出用データをそれぞれ提示する。この時、マーカ管理部１０６は各マーカ検出用データの付帯情報の内容も同時に提示してよい。そして、マーカ管理部１０６は、利用者によって選択されたマーカ検出用データを、マーカ管理情報に用いるデータとして採用する。これは、利用者が各マーカ検出用データの特性や有効領域を確認し、利用者の環境において適切なマーカ検出用データを選ぶのを補助する効果が期待できる。
【００４９】
（ｆ２）  上記処理において、マーカ管理部１０６は、マーカ検出用データを利用者に提示する際、マーカ検出用データの付帯情報部の値を参照し、様々な評価軸に基づいて、各マーカ検出用データを順番に並べて利用者に提示してもよい。例えば、前記付帯情報内の、適用照度領域を参照し、その照度情報の暗い順から並べることや、利用者の評価情報から、その評価値の高い順から並べること、検出失敗率の低い順、利用回数の多い順等が実行可能であり、これは、利用者が要求する評価基準に合致したマーカ検出用データを選びやすくする効果が期待できる。
【００５０】
（ｆ３）  マーカ検出用データの選択処理の自動化を行っても良い。マーカ管理部１０６は、利用者が選択したマーカデータに対応し、かつ有効照度範囲情報が異なるマーカ検出用データを、内部に複数保持する、もしくは、保存装置ＳＶ１内のマーカ検出用データ保持部２０２から参照・取得可能な状態である。また、マーカ管理部１０６に入力されるセンサ情報は、環境の照度情報である。マーカ検出部１０２より、マーカ検出不可通知を受け取った場合、マーカ管理部１０６は、現在の照度に有効なマーカ検出用データを自律的に選択し、当該マーカ検出用データによるマーカ管理情報をマーカ検出部１０２に設定する。これにより、照度の変動に自動的に対応可能なマーカ検出系が構築可能となる。
【００５１】
（ｆ４）  上記自動化は、マーカ検出用データに異なる評価軸に基づく付帯情報を、及びマーカ管理部１０６に測定対象が前記評価軸と関連性のあるセンサ情報に基づくものを入力することで、照度情報以外の環境状態の変動に対応するマーカ検出系としてもよい。
【００５２】
（ｆ５）マーカ検出用データの付帯情報である、検出失敗率、利用回数、利用者の評価、等を利用して、マーカ管理部１０６は、その有効だと想定される順（検出失敗率の低い順等）にマーカ検出用データを提示する。但し、付帯情報に基づくマーカ検出用データが、必ずしもある利用環境において最適である保証はないため、マーカ管理部は、マーカ検出用データの、実際の利用環境における検出失敗率である、実効検出失敗率を、測定し、内部に保持しても良い。なお、検出失敗率の測定手順は、検出失敗率の定義や測定法に基づく方法を用いても良い。実装例として、利用者があるマーカデータを選択した際、マーカ管理部は、そのマーカデータに対応するマーカ検出用データを、利用者の評価が高い順にいくつかを取得する。次に利用者は、前記選択されたマーカデータに基づくマークが描かれている紙やシールを、もしくはマーカデータが対象としているロゴや模様を持つ物体を、撮像装置ＣＡ１の撮像領域内に用意する。そして、マーカ管理部１０６は、取得したマーカ検出用データを用いて、一つのマーカに対して複数のマーカ管理情報を生成し、一定時間それぞれマーカ検出部に当該マーカ管理情報を設定する。マーカ検出部１０２は、設定されたマーカ管理情報に基づき、マーカの検出を試み、失敗した場合は、マーカ検出不可通知をマーカ管理部１０６に出力する。この検出不可通知の回数、或いは不可通知を受け取り続けた時間等測定することにより、マーカ検出部１０２は、各マーカ検出用データに対して、前記実効検出失敗率を算出し、その実行検出失敗率の最も低いマーカ検出用データを、マーカ管理情報として再度マーカ検出部１０２に設定する。もし、利用者の要求仕様などに満たない場合は、前回取得されなかったマーカ検出用データの内いくつかを取得し、同じ処理を繰り返す。
【００５３】
これによって、利用者は、選択したマーカに対して、利用する環境に対して最も適したマーカ検出用データを自動的選択することが可能となる。
（ｆ６）前記有効だと想定される順、に関しては複数の評価軸に基づく評価関数によって上位に来たものから順に選んでも良い。例として、検出失敗率をx,利用回数をy、利用者の評価をzとして、評価関数として、  
P=-2(x*y)+y+3z
というものを用いてもよい。この場合、利用者の評価が最も重みのある評価軸でありを、利用回数がもっとも重みが軽い評価軸であることになる。これにより、どのような単一の評価基準ではなく、複数の評価基準でマーカ検出用データを選ぶことできる。
【００５４】
（利用者と制御パラメータ管理部間の処理）  
図８は、制御パラメータを更新する際の利用者、制御プログラム１００、保存装置ＳＶ１間の処理シーケンスを示す。図９は、制御パラメータ更新時の制御プログラム１００の制御処理手順を示すフローチャートである。
【００５５】
制御プログラム１００は、更新要求が到来するか否かを監視しており（ステップＳＴ１０ａ）、更新要求が到来しなければ（Ｎｏ）、撮像装置ＣＡ１から撮像画像信号を受信するか否かの判断を行う（ステップＳＴ１０ｂ）。ここで、撮像画像信号を受信した場合（Ｙｅｓ）、制御プログラム１００は撮像画像信号に対し色空間調整、フィルタ処理等の画像処理を施し（ステップＳＴ１０ｃ）、画像解析、画像認識によりマーカを検出し（ステップＳＴ１０ｄ）、検出されたマーカと関連付けられた制御対象ＣＣ１の照合を行い（ステップＳＴ１０ｅ）、制御パラメータ管理部１０７に設定された制御パラメータを参照し（ステップＳＴ１０ｆ）、制御対象ＣＣ１の状態推定、制御信号生成を行い（ステップＳＴ１０ｇ）、制御対象ＣＣ１に制御信号を送信する（ステップＳＴ１０ｈ）。
【００５６】
ここで、利用者は、他装置ＵＡ１を操作して制御プログラム１００の制御パラメータ管理部１０７に制御パラメータ更新要求を送信する（図８（１））。制御パラメータ更新要求を受け取った制御パラメータ管理部１０７は、制御対象ＣＣ１を一旦停止させ（ステップＳＴ１０ｉ）、通信ネットワークＮＷ上の保存装置ＳＶ１に対し利用可能なパラメータリスト要求を送信する（図８（２））。
【００５７】
保存装置ＳＶ１は、パラメータリスト要求を受信すると、制御プログラム１００に対し利用可能なパラメータリストを送信する（図８（３））。そして、制御パラメータ管理部１０７は、パラメータリストを受信すると（ステップＳＴ１０ｊ）、更に制御パラメータデータ内の付帯情報から、どのような制御パラメータであるか、を利用者に提示する（図８（４）、ステップＳＴ１０ｋ）。このとき、制御パラメータ管理部１０７は、利用者の選択待ちとなる（ステップＳＴ１０ｌ）。
【００５８】
この状態で、利用者は他装置ＵＡ１を操作して提示された制御パラメータの中から使用する制御パラメータを選択し、同時に当該制御パラメータをどの制御対象に用いるのか（但し一つしかない場合は不要）も選択し、選択結果を制御パラメータ管理部１０７に通知する（図８（５））。
【００５９】
制御パラメータ管理部１０７は上記選択に基づき、選択された制御パラメータデータを、図１０に示すように、制御パラメータ、及び当該制御パラメータの対象、がセットになった制御パラメータ管理情報を生成し、更に、この制御パラメータ管理情報を制御・操作信号生成部１０４に設定し（ステップＳＴ１０ｍ）、制御パラメータの更新が完了したことを利用者に通知する（図８（６））。
【００６０】
上記処理は、例えばシステムや環境の新規構築時や、制御対象の制御が何らかの理由により適切に行われなくなった時に、ネットワーク上のサーバに保存されている制御パラメータを取得し、更にそれをビジュアルフィードバックが適切に行われるように制御・操作信号生成部１０４に設定するもの、と言える。通信ネットワークＮＷ上の保存装置ＳＶ１に保存されている制御パラメータデータは、過去に自分が保存したものでも良いし、他の誰かが作ったものでも良い。即ち、共有することによって、上記の構築や、制御パラメータの更新処理をより簡単に行えるようになる。
【００６１】
実際の制御対象ＣＣ１を様々な環境で動作させたとき、適切な制御対象ＣＣ１の制御パラメータを決定することは必ずしも簡単ではない。例えば、明るい環境下で動作する制御対象の制御と、暗い環境下で動作する制御対象ＣＣ１の制御は、撮像装置ＣＡ１の１フレーム分の露光時間等が変わってしまうことを考えると、同じ速さではビジュアルフィードバックで制御できないことが想定される。そこで、実験等により、適切な速さの値を探すことになるが、この実験などによって定められた値を保存装置ＳＶ１で共有し、更に制御パラメータデータの付帯情報に説明を書くことで、様々な利用者が同じパラメータを使用したり、或いは自身で実験する際の参考にしたりすることが可能になる。
【００６２】
（制御パラメータ管理部の拡張）  
制御パラメータ管理部１０７の基本的な動作は上記のようになるが、制御・操作信号生成部１０４からの制御不可通知や、外部装置等からのセンサ情報などを利用する拡張を行っても良い。
拡張の実装例と、その効果を以下に列挙する。  
（ｇ１）  保存装置ＳＶ１内の制御パラメータ保持部２０３における、各制御パラメータデータの付帯情報は、有効照度範囲情報を有する。また、制御パラメータ管理部１０７は、外部照度センサから環境の照度情報を受け取る。制御パラメータ管理部１０７は、利用者からのパラメータ更新要求に基づき、利用者に利用可能な制御パラメータデータを提示する際、環境の照度情報を基に、現在の照度の適用範囲内のもののみを提示する。これにより、照度が変動する環境下において有効なものを利用者が選択しやすくなる。
【００６３】
（ｇ２）  上記処理は、自動化しても良い。制御パラメータ管理部１０７は、上記有効照度範囲情報が異なる制御パラメータデータを、内部に複数保持する、もしくは、保存装置ＳＶ１内の制御パラメータ保持部２０３から参照・取得可能な状態である。制御・操作信号生成部１０４より、制御不可通知を受け取った場合、制御パラメータ管理部１０７は環境の照度情報を基に、現在の照度に有効な制御パラメータデータを自律的に選択し、当該制御パラメータデータによる制御パラメータ管理情報を制御・操作信号生成部１０４に設定する。これにより、照度の変動に自動的に対応可能なビジュアルフィードバック系が構築可能となる。  
（ｇ３）  保存装置ＳＶ１内の制御パラメータ保持部２０３における、各制御パラメータデータの付帯情報は、最大消費電力量情報を有する。また、制御パラメータ管理部１０７は、例えば制御対象ＣＣ２からセンサ情報としてバッテリ残量を受け取る。利用者からのパラメータ更新要求に基づき、利用者に利用可能な制御パラメータデータを提示する際、上記最大消費電力情報を基に、消費電力量の最も少ないものから順番に並べて、利用者に提示する。これにより、利用者は消費電力の少ない制御パラメータを選択しやすくなる。
【００６４】
（ｇ４）  上記処理は、自動化しても良い。制御パラメータ管理部１０７は、上記最大消費電力情報が異なる制御パラメータデータを、内部に複数保持する、もしくは、保存装置ＳＶ１内の制御パラメータ保持部２０３から参照・取得可能な状態である。この際、各制御パラメータデータは、最大消費電力の少ない順から順に並べておく。前記バッテリ残量情報を基に、制御パラメータ管理部１０７は、バッテリ残量が少なくなるほど、前記制御パラメータデータにおいて、最大消費電力量が少ないものを選択し、制御・操作信号生成部１０４に設定する。これにより、バッテリ駆動される制御対象ＣＣ２のより長時間の動作が可能となる。
【００６５】
（ｇ５）  保存装置ＳＶ１内の制御パラメータ保持部２０３における、各制御パラメータデータの付帯情報は、安全動作用のフラグを持ち、それぞれ安全動作用、もしくは非安全動作用のどちらかである。例えば、高速に動作する制御パラメータに関しては非安全動作用、低速に動作する制御パラメータに関しては安全動作用、等のようにする。制御パラメータ管理部１０７は、撮像装置ＣＡ１やその他センサ等から、環境に人間の存在があるかどうかについて、センサ情報として受け取る。上記人間の存在に関するセンサ情報に基づいて、制御パラメータ管理部１０７は、人間が環境に存在すると判断する場合は、安全動作用にフラグが設定された制御パラメータデータを、人間が存在しない場合は、非安全動作用のフラグが設定された制御パラメータデータを制御・操作信号生成部１０４に設定する。これにより、制御系の安全性向上が期待できる。
【００６６】
（ｇ６）  上記処理は、センサとして、人間の感知だけでなく、複数の制御対象ＣＣ１〜ＣＣｉがある場合の制御対象物間の距離、制御対象と環境中の障害物との距離、等としても良い。
（ｇ７）  保存装置ＳＶ１内の制御パラメータ保持部２０３における、各制御パラメータデータの付帯情報は、許容計算能力情報を有する。また、制御パラメータ管理部１０７は、他の計測プログラムなどにより、制御プログラムが動作している計算機等制御ユニットの、計算能力の測定結果をセンサ情報として受け取る。利用者からのパラメータ更新要求に基づき、利用者に利用可能な制御パラメータデータを提示する際、上記計算能力の測定結果を参考にして、制御プログラム１００が動作している制御ユニットＣＵ１において利用可能なもののみを利用者に提示する。これにより、利用者は制御ユニットＣＵ１の計算能力に見合わない制御パラメータを選択する可能性を下げることができる。
【００６７】
（ｇ８）  上記処理は、自動化しても良い。制御パラメータ管理部１０７は、上記許容計算能力情報が異なる制御パラメータデータを、内部に複数保持する、もしくは、保存装置ＳＶ１内の制御パラメータ保持部２０３から参照・取得可能な状態である。上記計算能力の測定結果のセンサ情報を逐次参照し、外部要因によって制御ユニットＣＵ１の計算能力が変化したときは（制御プログラムに割り当てることのできる計算能力が変化したときは）、上記制御パラメータデータにおいて、現在の計算能力に見合うものを選択し、制御・操作信号生成部１０４に設定する。これにより、制御ユニットＣＵ１が制御プログラム以外のプログラムを動かしていたり、一つの制御ユニットＣＵ１内に複数の制御プログラムが稼働していたりしていても、各制御対象ＣＣ１〜ＣＣｉが制御可能な状態をより維持しやすくなることが期待できる。
【００６８】
次に、上記実施形態の使用例について説明する。図１１は、上記実施形態の保存装置ＳＶ１に記憶されたマーカ検出用データ、制御パラメータを利用して制御対象ＣＣ１を操作する例を示す。
まず、制御ユニットＣＵ１の利用者は、例えばロボットといった制御対象ＣＣ１を操作する際に、制御対象ＣＣ１が動く例えば部屋Ａに撮像装置ＣＡ１を設置する。そして、利用者は、他装置ＵＡ１を操作して通信ネットワークＮＷ上の保存装置ＳＶ１から、制御対象ＣＣ１に貼り付けるマーカ１と、部屋Ａ内の障害物１、２に貼り付けるマーカ２、３とをダウンロードし、プリントアウトして、マーカ１を制御対象ＣＣ１に貼り付け、マーカ２、３を障害物１、２に貼り付ける。これらマーカは、部屋Ａの照度に合ったマーカである。
【００６９】
同時に、マーカ検出用データを制御プログラム１００に登録しておく。これにより、制御対象ＣＣ１の位置、部屋Ａ内の障害物１、２の位置も認識可能となる。
上記のような環境において、部屋Ａの照度が変化する場合、従来は、利用者が部屋Ａの明るさに応じたマーカを一から作成する必要があったが、本実施形態の場合、部屋Ａの照度を検出する照度センサからの検出結果に基づいて、保存装置ＳＶ１から該当するマーカをダウンロードするだけでよく、利用者はマーカを作成する必要がない。
【００７０】
以上のように上記実施形態では、過去に制御対象ＣＣ１の動作を制御した時の制御結果またはシミュレーションにより作成した設定情報を含むマーカ検出用データ及び制御パラメータデータを、条件ごとに管理するための付帯情報に関連付けて通信ネットワークＮＷ上の保存装置ＳＶ１に記憶して管理しておき、制御対象ＣＣ１の動作が制御されるとき、予め決められた条件、例えばシステムや環境の新規構築時や、ある瞬間に制御不可能になった場合に、条件に合ったマーカ検出用データ及び制御パラメータデータを通信ネットワークＮＷ上の保存装置ＳＶ１から取得することができるので、環境の変化等の影響に対応して、制御対象ＣＣ１の制御を短時間で適切に行うことができ、一方、利用者にとっては制御対象ＣＣ１の制御に必要な労力とコストを低減することが可能となる。
【００７１】
また、上記実施形態では、過去の制御時に使用したマーカ検出用データを、検出失敗率、利用回数、有効照度情報、利用者の評価の少なくとも１つを含む付帯情報に関連付けて通信ネットワークＮＷ上の保存装置ＳＶ１に記憶しておくことで、制御プログラム１００をセットした管理装置ＭＵ１において、マーカ検出不可通知を受信した場合等に、現在の照度に有効なマーカ検出用データを自動的に選択でき、これにより照度の変動に自動的に対応可能なマーカ検出系を構築可能となる。その他、検出失敗率、利用回数、利用者の評価を使用することで、利用する環境に対して最も適したマーカ検出用データを自動的に選択することが可能となる。
【００７２】
また、上記実施形態では、制御対象ＣＣ１の動作を制御するための制御パラメータを、有効照度範囲情報、最大消費電力量情報、安全動作用のフラグ、許容計算能力情報の少なくとも１つを含む付帯情報に関連付けて通信ネットワークＮＷ上の保存装置ＳＶ１に記憶しておくことで、制御プログラム１００をセットした管理装置ＭＵ１において、外部照度センサから環境の照度情報を受け取る場合に、現在の照度の適用範囲内の制御パラメータを取得でき、これにより照度の変動に自動的に対応可能なビジュアルフィードバック系を構築可能となる。また、例えば制御対象ＣＣ２からセンサ情報としてバッテリ残量を受け取る場合に、最大消費電力情報を用いて、最大消費電力が少ない制御パラメータを選択でき、これによりバッテリ駆動される制御対象ＣＣ２のより長時間の動作が可能となる。
【００７３】
また、上記実施形態では、条件に基づいて、保存装置ＳＶ１から該当する付帯情報及び付帯情報に関連づけられたマーカ検出用データまたは制御パラメータデータを取得して利用者に提示し、この提示に対し利用者が選択指示を入力した場合に、選択したマーカ検出用データまたは制御パラメータに基づいて、制御対象ＣＣ１の動作を制御するようにしているので、例えばシステムや環境の新規構築時や、ある瞬間に制御不可能になった場合に、利用者が自身でマーカ検出用データまたは制御パラメータが必要か否かを判断して指示することができ、これにより真に必要なマーカ検出用データまたは制御パラメータを取得することが可能となる。
【００７４】
さらに、上記実施形態の技術を用いることによって、まず、マーカを自分で用意する必要性を下げることが可能となる。自分でマーカを自作する場合、どのようなマーカにするか、自体は困難なことではないが、その自作されたマーカを制御ユニットＣＵ１内の管理装置ＭＵ１で認識させるようにするためには、多大な労力を要する。本実施形態の技術は、この各人が作るマーカを、多人数で共有することにより、一人一人がマーカを使えるようにするためだけに要する労力を減らすことが可能になる。また、例えば、既製品のロボット等の模様やロゴに関して、管理装置ＭＵ１で認識可能にし、更に共有すれば、物理的な紙、シールなどを用意せずとも、その既製品のロボットを持っている人は全員がそのロボットをビジュアルフィードバック制御することが可能になる。
【００７５】
同様の利点が制御パラメータについてもいえる。各利用者が、制御対象を運用する環境は異なる為、単一の制御パラメータ設定で同じ作業が可能にある保証はない。しかし、どのような環境で使われたデータであるかと共に制御パラメータが用意・共有されていれば、仮にそのパラメータが完全に各自の環境に適合するものではなかったとしても、最適なパラメータを探すための手掛かりとなる可能性がある。また、列挙した実現手段のように、制御対象に知能制御的な側面を与えることが可能となり、使う人が多くなるほど、共有されるデータが多くなるほど、様々な環境に適合する可能性の高いシステムになる。
【００７６】
なお、この発明は上記実施形態に限定されるものではない。例えば、マーカ検出用データの付帯情報に、検出失敗率、利用回数、有効照度情報、利用者の評価以外の情報を含ませてもよく、制御パラメータの付帯情報に、有効照度範囲情報、最大消費電力量情報、安全動作用のフラグ、許容計算能力情報以外の情報を含ませてもよい。
その他、制御プログラムの構成、保存装置の構成、ビジュアルフィードバック制御システムの構成等についても、この発明の要旨を逸脱しない範囲で種々変形して実施可能である。
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【００７７】
１００…制御プログラム、１０１…画像処理部、１０２…マーカ検出部、１０３…状態推定部、１０４…制御・操作信号生成部、１０５…制御対象インタフェース部、１０６…マーカ管理部、１０７…制御パラメータ管理部、２０１…マーカデータ保持部、２０２…マーカ検出用データ保持部、２０３…制御パラメータ保持部、２０４…データ登録インタフェース部、ＣＵ１〜ＣＵｍ…制御ユニット、ＣＡ１〜ＣＡｎ…撮像装置、ＣＣ１〜ＣＣｉ…制御対象、ＭＵ１…管理装置、ＵＡ１…他装置、ＳＶ１…保存装置、ＮＷ…通信ネットワーク。
【図１】
2014102705.tif 000003
【図２】
2014102705.tif 000004
【図３】
2014102705.tif 000005
【図４】
2014102705.tif 000006
【図５】
2014102705.tif 000007
【図６】
2014102705.tif 000008
【図７】
2014102705.tif 000009
【図８】
2014102705.tif 000010
【図９】
2014102705.tif 000011
【図１０】
2014102705.tif 000012
【図１１】
2014102705.tif 000013