(57)【要約】処理能力に差がある装置間においても分散処理を実行することができる監視サーバを提供することを目的とする。追跡対象物を追跡するロボット（２０）から定期的に送信された画像データ、ロボット（２０）との間の通信ネットワークの通信品質に関する情報、及びロボット（２０）の負荷情報を受信する通信部（１１）と、画像データから判別される追跡対象物（３０）の追跡動作環境情報、通信品質に関する情報、及び負荷情報のうち少なくとも１つに基づいて、追跡対象物（３０）を特定する画像解析処理であって、複数の処理を含む画像解析処理のうちロボット（２０）において実行する処理及び自装置において実行する処理を決定する分散処理制御部（１２）と、を備え、通信部（１１）は、ロボット（２０）において実行する処理に関する情報をロボット（２０）へ送信する。
2017038100.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置で取得された画像データを受信する通信手段と、
要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する分散処理制御手段と、を備える、監視サーバ。
【請求項２】
前記分散処理制御手段は、前記画像解析処理の出力の種類に基づいて、前記画像解析処理の内容を決定する、請求項１に記載の監視サーバ。
【請求項３】
前記通信手段は、さらに前記情報処理装置との間の通信ネットワークの通信品質に関する情報または前記情報処理装置の処理負荷情報の少なくとも一方を受信し、
前記分散処理制御手段は、前記画像解析処理の内容、前記通信品質に関する情報、または前記処理負荷情報のうち少なくとも１つに基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する、請求項１又は２に記載の監視サーバ。
【請求項４】
前記分散処理制御手段は、前記画像データに基づくアプリケーションの実行状況の情報に基づいて、前記画像解析処理の出力の種類を決定する、請求項１乃至３のいずれか１項に記載の監視サーバ。
【請求項５】
前記通信手段は、追跡対象物を追跡する前記情報処理装置であるロボットから定期的に送信された画像データ、前記ロボットとの間の通信ネットワークの通信品質に関する情報、及び前記ロボットの処理負荷情報を受信し、
前記分散処理制御手段は、前記画像データから判別される前記追跡対象物の追跡動作環境情報、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記追跡対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記ロボットにおいて実行する処理及び自装置において実行する処理を決定し、
前記通信手段は、さらに、前記ロボットにおいて実行する処理に関する情報を前記ロボットへ送信する、請求項１乃至４のいずれか１項に記載の監視サーバ。
【請求項６】
前記分散処理制御手段は、
前記ロボットにおける処理負荷が所定の第１の処理負荷よりも低い場合、前記追跡動作環境情報及び前記通信品質に関する情報にかかわらず、前記画像解析処理に含まれるすべての処理を前記ロボットにおいて実行することを決定する、請求項５に記載の監視サーバ。
【請求項７】
前記分散処理制御手段は、
前記ロボットにおける処理負荷が所定の第１の処理負荷よりも高く、前記通信品質が所定の第１の通信品質よりも良好である場合、前記ロボットが、未加工画像データを送信することを決定し、前記画像解析処理に含まれるすべての処理を自装置において実行することを決定する、請求項５又は６に記載の監視サーバ。
【請求項８】
前記分散処理制御手段は、
前記通信品質が前記所定の第１の通信品質よりも不良であり、かつ第２の通信品質よりも良好であって、前記第１の通信品質が前記第２の通信品質よりも良好である場合、並びに、前記ロボットにおける処理負荷が前記所定の第１の処理負荷よりも高く、かつ第２の処理負荷よりも低く、前記第１の処理負荷が前記第２の処理負荷よりも低い場合、
前記ロボットが、前記未加工画像データを圧縮した画像データを送信するか、もしくは、前記ロボットが、前記画像解析処理に含まれる前記追跡対象物の特徴量を抽出する特徴量抽出処理を実行するか、を決定する、請求項７に記載の監視サーバ。
【請求項９】
前記分散処理制御手段は、
前記追跡動作環境情報において、前記追跡対象物の他に、移動する対象物が含まれていない場合、前記ロボットが、前記画像解析処理に含まれる前記追跡対象物の特徴量を抽出する特徴量抽出処理を実行することを決定する、請求項８に記載の監視サーバ。
【請求項１０】
前記分散処理制御手段は、
前記追跡動作環境情報において、前記追跡対象物の他に、移動する対象物が含まれている場合、前記ロボットが、前記未加工画像データを圧縮した画像データを送信することを決定する、請求項８又は９に記載の監視サーバ。
【請求項１１】
前記分散処理制御手段は、
前記ロボットにおける処理負荷が所定の第２の処理負荷よりも高く、前記第２の処理負荷が前記第１の処理負荷よりも高い場合、並びに、前記通信品質が所定の第１の通信品質よりも良好である場合、前記ロボットが未加工画像データを送信することを決定し、前記画像解析処理に含まれるすべての処理を自装置において実行することを決定する、請求項６に記載の監視サーバ。
【請求項１２】
前記分散処理制御手段は、
前記通信品質が第２の通信品質よりも良好であって、前記第２の通信品質が前記第１の通信品質よりも不良である場合、並びに、前記ロボットにおける処理負荷が前記所定の第１の処理負荷よりも高く、かつ第２の処理負荷よりも低く、前記第１の処理負荷が前記第２の処理負荷よりも低い場合、
前記ロボットが、未加工画像データを圧縮した画像データを送信するか、もしくは、前記ロボットが、前記画像解析処理に含まれる前記追跡対象物の特徴量を抽出する特徴量抽出処理を実行するか、を決定する、請求項１１に記載の監視サーバ。
【請求項１３】
前記分散処理制御手段は、
前記追跡動作環境情報において、前記追跡対象物の他に、移動する対象物が含まれていない場合、前記ロボットが、前記画像解析処理に含まれる前記追跡対象物の特徴量を抽出する特徴量抽出処理を実行することを決定する、請求項１２に記載の監視サーバ。
【請求項１４】
前記分散処理制御手段は、
前記追跡動作環境情報において、前記追跡対象物の他に、移動する対象物が含まれている場合、前記ロボットが、前記未加工画像データを圧縮した画像データを送信することを決定する、請求項１２又は１３に記載の監視サーバ。
【請求項１５】
前記画像解析処理は、
前記追跡対象物の特徴量を抽出する特徴量抽出処理、前記追跡対象物の物体を認識する物体認識処理、及び前記追跡対象物を特定する物体特定処理を含む、請求項５乃至１４のいずれか１項に記載の監視サーバ。
【請求項１６】
追跡対象物を追跡するロボットから定期的に送信された画像データを受信する通信手段と、
前記画像データから判別される前記追跡対象物の移動速度情報に基づいて、前記追跡対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記ロボットにおいて実行する処理及び自装置において実行する処理を決定する分散処理制御手段と、を備え、
前記通信手段は、
前記ロボットにおいて実行する処理に関する情報を前記ロボットへ送信する、監視サーバ。
【請求項１７】
前記通信手段は、ＡＲサービスを提供する前記情報処理装置であるデバイスから定期的に送信された画像データ、前記デバイスとの間の通信ネットワークの通信品質に関する情報、及び前記デバイスの処理負荷情報を受信し、
前記分散処理制御手段は、前記画像データから判別される対象物の撮影状態、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記デバイスにおいて実行する処理及び自装置において実行する処理を決定し、
前記通信手段は、さらに、前記デバイスにおいて実行する処理に関する情報を前記デバイスへ送信する、請求項１乃至４のいずれか１項に記載の監視サーバ。
【請求項１８】
前記分散処理制御手段は、
前記デバイスにおける処理負荷が所定の第１の処理負荷よりも低い場合、前記撮影状態及び前記通信品質に関する情報にかかわらず、前記画像解析処理に含まれるすべての処理を前記デバイスにおいて実行することを決定する、請求項１７に記載の監視サーバ。
【請求項１９】
前記分散処理制御手段は、
前記デバイスにおける処理負荷が所定の第１の処理負荷よりも高く、前記通信品質が所定の第１の通信品質よりも良好である場合、前記デバイスが、未加工画像データを送信することを決定し、前記画像解析処理に含まれるすべての処理を自装置において実行することを決定する、請求項１７又は１８に記載の監視サーバ。
【請求項２０】
前記分散処理制御手段は、
前記通信品質が前記所定の第１の通信品質よりも不良であり、かつ第２の通信品質よりも良好であって、前記第１の通信品質が前記第２の通信品質よりも良好である場合、並びに、前記デバイスにおける処理負荷が前記所定の第１の処理負荷よりも高く、かつ第２の処理負荷よりも低く、前記第１の処理負荷が前記第２の処理負荷よりも低い場合、
前記デバイスが、複数の画像処理のうち一部の処理を実行すること、を決定する、請求項１９に記載の監視サーバ。
【請求項２１】
前記分散処理制御手段は、
前記撮影状態において、前記対象物が未加工画像データの一部の領域のみに表示される場合、前記デバイスが、前記対象物の特徴量を抽出する特徴量抽出処理を実行する、もしくは、前記対象物のみを抽出するトリミング処理を実行することを決定する、請求項２０に記載の監視サーバ。
【請求項２２】
前記分散処理制御手段は、
前記撮影状態において、前記対象物が予め定められた大きさよりも大きく表示される場合、前記デバイスが、前記対象物の特徴量を抽出する特徴量抽出処理を実行する、もしくは、前記未加工画像データを圧縮した画像データを送信することを決定する、請求項２０又は２１に記載の監視サーバ。
【請求項２３】
前記分散処理制御手段は、
前記撮影状態において、前記対象物のみが表示される場合、前記デバイスが、前記対象物の特徴量を抽出する特徴量抽出処理を実行する、前記未加工画像データをグレースケール化する、前記未加工画像データを２値化する、もしくはエッジ検出することを決定する、請求項２０乃至２２のいずれか１項に記載の監視サーバ。
【請求項２４】
前記分散処理制御手段は、
前記デバイスにおける処理負荷が第２の処理負荷よりも高く、前記第２の処理負荷が第１の処理負荷よりも高い場合、並びに、前記通信品質が所定の第１の通信品質よりも良好である場合、前記デバイスが、未加工画像データを送信することを決定し、前記画像解析処理に含まれるすべての処理を自装置において実行することを決定する、請求項１７又は１８に記載の監視サーバ。
【請求項２５】
前記分散処理制御手段は、
前記通信品質が第２の通信品質よりも良好であって、前記第２の通信品質が前記第１の通信品質よりも不良である場合、並びに、前記デバイスにおける処理負荷が前記所定の第１の処理負荷よりも高く、かつ第２の処理負荷よりも低く、前記第１の処理負荷が前記第２の処理負荷よりも低い場合、
前記デバイスが、複数の前記画像解析処理のうち一部の処理を実行すること、を決定する、請求項２４に記載の監視サーバ。
【請求項２６】
前記分散処理制御手段は、
前記撮影状態において、前記対象物が未加工画像データの一部の領域のみに表示される場合、前記デバイスが、前記対象物の特徴量を抽出する特徴量抽出処理を実行する、もしくは、前記対象物のみを抽出するトリミング処理を実行することを決定する、請求項２５に記載の監視サーバ。
【請求項２７】
前記分散処理制御手段は、
前記撮影状態において、前記対象物が予め定められた大きさよりも大きく表示される場合、前記デバイスが、前記未加工画像データを圧縮した画像データを送信する、もしくは、前記対象物の特徴量を抽出する特徴量抽出処理を実行することを決定する、請求項２５又は２６に記載の監視サーバ。
【請求項２８】
前記分散処理制御手段は、
前記撮影状態において、前記対象物のみが表示される場合、前記デバイスが、前記対象物の特徴量を抽出する特徴量抽出処理を実行する、前記未加工画像データをグレースケール化する、前記未加工画像データを２値化する、もしくはエッジ検出することを決定する、請求項２５乃至２７のいずれか１項に記載の監視サーバ。
【請求項２９】
情報処理装置で取得された画像データを受信し、
要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する、分散処理決定方法。
【請求項３０】
追跡対象物を追跡する前記情報処理装置であるロボットから定期的に送信された画像データ、前記ロボットとの間の通信ネットワークの通信品質に関する情報、及び前記ロボットの処理負荷情報を受信し、
前記処理を決定する際に、前記画像データから判別される前記追跡対象物の追跡動作環境情報、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記追跡対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記ロボットにおいて実行する処理及び自装置において実行する処理を決定し、
さらに、前記ロボットにおいて実行する処理に関する情報を前記ロボットへ送信する、請求項２９に記載の分散処理決定方法。
【請求項３１】
ＡＲサービスを提供する前記情報処理装置であるデバイスから定期的に送信された画像データ、前記デバイスとの間の通信ネットワークの通信品質に関する情報、及び前記デバイスの処理負荷情報を受信し、
前記処理を決定する際に、前記画像データから判別される対象物の撮影状態、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記デバイスにおいて実行する処理及び自装置において実行する処理を決定し、
さらに、前記デバイスにおいて実行する処理に関する情報を前記デバイスへ送信する、請求項２９に記載の分散処理決定方法。
【請求項３２】
情報処理装置で取得された画像データを受信し、
要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する、ことをコンピュータに実行させるプログラムが格納された非一時的なコンピュータ可読媒体。
【請求項３３】
追跡対象物を追跡する前記情報処理装置であるロボットから定期的に送信された画像データ、前記ロボットとの間の通信ネットワークの通信品質に関する情報、及び前記ロボットの処理負荷情報を受信し、
前記処理を決定する際に、前記画像データから判別される前記追跡対象物の追跡動作環境情報、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記追跡対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記ロボットにおいて実行する処理及び自装置において実行する処理を決定し、
さらに、前記ロボットにおいて実行する処理に関する情報を前記ロボットへ送信することをコンピュータに実行させる請求項３２に記載のプログラムが格納された非一時的なコンピュータ可読媒体。
【請求項３４】
ＡＲサービスを提供する前記情報処理装置であるデバイスから定期的に送信された画像データ、前記デバイスとの間の通信ネットワークの通信品質に関する情報、及び前記デバイスの処理負荷情報を受信し、
前記処理を決定する際に、前記画像データから判別される対象物の撮影状態、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記デバイスにおいて実行する処理及び自装置において実行する処理を決定し、
さらに、前記デバイスにおいて実行する処理に関する情報を前記デバイスへ送信することをコンピュータに実行させる請求項３２に記載のプログラムが格納された非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は監視サーバ、分散処理決定方法、及びプログラムに関し、特に画像解析処理を分散制御する監視サーバ、分散処理決定方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、日常生活におけるセキュリティ意識の高まりによって、様々な場所において監視カメラを用いた監視の強化が行われている。例えば、カメラを備えた小型ロボットを用いることによって、不審者の追跡を可能とするシステムが検討されている。小型ロボットが不審者の追跡を行うには、小型ロボットが撮影した画像を解析処理する必要がある。一般的に、小型ロボットに対する消費電力の削減及び小型化等の要求により、画像解析はサーバ装置等において行われ、小型ロボットは、サーバ装置等において行われた画像解析の結果を用いて追跡動作を実行することが考えられている。【０００３】
特許文献１には、ネットワークに接続された画像処理装置の処理性能、処理状況、及びネットワーク負荷等を勘案して、複数の画像処理装置において画像処理を分散化することが記載されている。具体的には、特許文献１には、人間の顔認識を行うタスクを、複数の監視カメラにおいて分担して処理すること、さらに、認識された顔から性別を判別して画像中の人物の数を性別ごとに算出するタスクを、複数の監視カメラにおいて分担して処理することが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１０２６９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に記載されている分散処理は、複数の監視カメラ間における分散処理であり、例えば、小型ロボットとサーバ装置等のように、処理能力に差がある装置間における分散処理を行うことは記載されていない。【０００６】
処理能力に差がある装置間においては、同様の内容の処理を異なる装置に分散したとしても、処理能力の劣る小型ロボットにおいては、サーバ装置と同様の処理を実行することができない場合がある。このような場合、小型ロボットに過剰な負荷がかかる、もしくは、分散処理を実行することができないという問題がある。【０００７】
また、小型デバイスを用いたリアルタイムなＡＲ（Augmented Reality：拡張現実）サービスにおいても、リアルタイムの画像処理が求められる。そのため、ＡＲサービスにおける画像処理を小型デバイスとサーバ装置との間において分散した場合、小型デバイスに過剰な負荷がかかる、もしくは、分散処理を実行することができないという、小型ロボットに発生する問題と同様の問題がある。【０００８】
本発明の目的は、処理能力に差がある装置間においても分散処理を実行することができる監視サーバ、分散処理決定方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
本発明の第１の態様にかかる監視サーバは、情報処理装置で取得された画像データを受信する通信部と、要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する分散処理制御部と、を備えるものである。【００１０】
本発明の第２の態様にかかる分散処理決定方法は、情報処理装置で取得された画像データを受信し、要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定するものである。【００１１】
本発明の第３の態様にかかるプログラムは、情報処理装置で取得された画像データを受信し、要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する、ことをコンピュータに実行させるものである。
【発明の効果】
【００１２】
本発明により、処理能力に差がある装置間においても分散処理を実行することができる監視サーバ、分散処理決定方法、及びプログラムを提供することができる。
【図面の簡単な説明】
【００１３】
【図１】実施の形態１にかかる通信システムの構成図である。
【図２】実施の形態２にかかる監視サーバの構成図である。
【図３】実施の形態２にかかるロボットの構成図である。
【図４】実施の形態２にかかるロボット制御シーケンス図である。
【図５】実施の形態２にかかる分散制御内容を説明する図である。
【図６】実施の形態２にかかる分散制御決定処理の流れを示す図である。
【図７】実施の形態２にかかる分散制御決定処理の流れを示す図である。
【図８】実施の形態３にかかる分散制御内容を説明する図である。
【図９】実施の形態３にかかる分散制御決定処理の流れを示す図である。
【図１０】実施の形態３にかかる分散制御決定処理の流れを示す図である。
【図１１】実施の形態４にかかる分散制御内容を説明する図である。
【図１２】実施の形態５にかかる小型デバイスの構成図である。
【図１３】実施の形態５にかかる分散制御内容を説明する図である。
【図１４】実施の形態５にかかる分散制御内容を説明する図である。
【図１５】それぞれの実施の形態にかかるロボット及び小型デバイスの構成図である。
【図１６】それぞれの実施の形態にかかる監視サーバの構成図である。
【発明を実施するための形態】
【００１４】
（実施の形態１）
以下、図面を参照して本発明の実施の形態について説明する。はじめに、図１を用いて本発明の実施の形態１にかかる通信システムの構成例について説明する。図１の通信システムは、監視サーバ１０、ロボット２０、及び追跡対象物３０を有している。
【００１５】
ロボット２０は、プロセッサがメモリに格納されているプログラムを実行することによって動作するコンピュータ装置もしくは情報処理装置であってもよい。ロボット２０は、地上を移動する、もしくは、飛び上がって移動する、等によって追跡対象物３０を追跡する。追跡対象物３０は、移動している人、もしくは人以外の移動している物であってもよい。移動している物とは、例えば、自動車、自転車、電車等の移動手段であってもよい。もしくは、追跡対象物３０は、人以外の動物であってもよい。もしくは、追跡対象物３０は、移動体ではなく、橋梁、オフィスビル、家屋、工場などの建物の内外、太陽光発電装置や風力発電装置、森林、河川、山岳（火山など含む）、平野、海、あるいは田畑や災害現場などにおける目的地点や目的物体であってもよい。この場合、目的地点や目的物体は、随時変更されてもよい。さらに、この場合、後述する追跡対象物３０の移動速度、移動距離、及び移動方向等は、ロボット２０自身が移動することによって、目的地点や目的物体が相対的に移動することを表現している。
【００１６】
監視サーバ１０は、プロセッサがメモリに格納されているプログラムを実行することによって動作するコンピュータ装置であってもよい。具体的には、監視サーバ１０は、例えば、３ＧＰＰ（3rd Generation Partnership Project）において規定された無線通信方式を実行するモバイル網（３Ｇ網、ＬＴＥ：Long Term Evolution網）における無線基地局に設置されるコンピュータ装置であってもよい。モバイル網の無線基地局に設置されるコンピュータ装置は、ＭＥＣ（Mobile Edge Computing）サーバであってもよい。さらに、監視サーバ１０は、ＷｉＦｉ（無線ＬＡＮ通信）やＺｉｇＢｅｅ（または、ＩＥＥＥ  ８０２．１５．４）通信、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信、ＲＦＩＤ周波数帯による通信、特定省電力無線の周波数帯による通信、あるいはその他の専用用途の周波数帯による通信における無線基地局（無線アクセスポイント、親機、ネットワークコーディネータ、リーダなど）に設置されるコンピュータ装置であってもよい。例えば、監視サーバ１０は、無線ＬＡＮの場合、ブロードバンドルータや無線ＬＡＮアクセスポイントなどに設置されるコンピュータ装置であってもよく、ＺｉｇＢｅｅ通信の場合、ＺｉｇＢｅｅのＰＡＮ（Private Area Network）を統括するＺｉｇＢｅｅコーディネータなどに設置されるコンピュータ装置であってもよく、ラジコン制御用の特定省電力無線の周波数帯による通信の場合、操作装置であるグランドステーションに設置されるコンピュータ装置であってもよい。また、これらのコンピュータが、ホームゲートウェイ、Ｍ２Ｍゲートウェイ、ＩｏＴ（Internet of Things）ゲートウェイ、ＨＥＭＳ（Home Energy Management Server）サーバ、グランドステーションと呼ばれる装置であってもよい。さらに、監視サーバ１０は、ロボット２０に対して専用線やインターネット網越しに位置するデータセンターやオフィス、工場、家庭などに設置されるコンピュータ装置であってもよい。これらインターネット網越しに設置されるコンピュータ装置はクラウドサーバであってもよい。ここで、監視サーバ１０の構成例について説明する。
【００１７】
監視サーバ１０は、通信部１１及び分散処理制御部１２を有している。監視サーバ１０の構成要素は、プロセッサがメモリに格納されているプログラムを実行することによって処理が実行されるソフトウェアもしくはモジュール等であってもよい。もしくは、監視サーバ１０の構成要素は、回路もしくはチップ等のハードウェアであってもよい。
【００１８】
通信部１１は、追跡対象物３０を追跡するロボット２０から定期的に送信された画像データ、監視サーバ１０とロボット２０との間の通信ネットワークの通信品質情報、及びロボット２０の負荷情報を受信する。画像データは、ロボット２０が追跡対象物３０を撮影した際に生成されるデータである。例えば、ロボット２０は、画像データを、数ミリ秒、もしくは数十ミリ秒や数百ミリ秒毎に定期的に監視サーバ１０へ送信してもよい。また、ロボット２０は、追跡対象物３０を撮影した未加工の画像データを定期的に監視サーバ１０へ送信してもよく、あるいは例えば、低解像度化した画像データやトリミングした画像データ、グレースケール化や２値化した画像データを監視サーバ１０へ送信してもよい。
【００１９】
通信部１１は、通信ネットワークを介してロボット２０と通信を行う。通信部１１は、例えば、光通信等の有線通信を介して通信ネットワークに接続してもよく、無線通信を介して通信ネットワークに接続してもよい。
【００２０】
未加工画像データは、例えば、追跡対象物３０を撮影した際に生成された画像データに関して、後に詳述する画像解析処理がなんら実行されていない画像データであってもよい。言い換えると、未加工画像データはカメラにより撮影して取得されたままのＲＡＷ画像データや、情報圧縮を行っていないＢＭＰ画像データであってもよい。
【００２１】
通信品質情報は、監視サーバ１０とロボット２０との間において通信ネットワークを介して送受信されたデータに関する遅延時間であってもよい。ロボット２０は、無線通信を行うことによって通信ネットワークに接続してもよい。また、無線通信は、例えば、３ＧＰＰ（3rd Generation Partnership Project）において規定された無線通信方式を実行するモバイル通信であってもよく、その他の標準化団体において規定された無線通信方式を実行するモバイル通信であってもよい。３ＧＰＰにおいて規定された無線通信方式は、例えばＬＴＥ（Long Term Evolution）であってもよい。もしくは、無線通信は、無線ＬＡＮ通信やＺｉｇＢｅｅ（または、ＩＥＥＥ  ８０２．１５．４）通信、Ｂｌｕｅｔｏｏｔｈ通信、ＲＦＩＤ周波数帯による通信、特定省電力無線の周波数帯による通信、あるいはその他の専用用途の周波数帯による通信であってもよい。
【００２２】
また、通信品質情報は、監視サーバ１０とロボット２０との間において通信ネットワークを介して送受信されたデータのスループットであってもよい。さらにスループットなどから求められる通信帯域であっても良い。もしくは、通信品質情報は、ロボット２０から送信された無線信号の信号強度等や監視サーバ１０で計測した無線信号の信号強度等であってもよい。また、通信品質情報は、過去のデータ通信等における遅延、スループット、帯域、もしくは信号強度等の情報を用いた各種推定方式や分析方式（ベイズ推定、カルマンフィルタ、パーティクルフィルタ、線形予測法、最小二乗法、統計分析、単純な直近の前回値の採用等）によって推定されてもよい。
【００２３】
ロボット２０の負荷情報は、例えば、ロボット２０のプロセッサ使用率、メモリ使用率、もしくはバッファ使用率等であってもよい。また、ロボット２０の負荷情報は、例えば、後に詳細する画像解析処理の各処理で要するプロセッサ使用率、メモリ使用率、バッファ使用率等、および各処理で要するそれらの合計であってもよい。さらに、ロボット２０の負荷情報は、例えば、画像解析処理の各処理が要する計算処理時間、および各処理で要する計算処理時間の合計であってもよい。なお、計算処理時間は、以前に扱った画像データの解析処理に要した各処理の計算処理時間から、各種推定方式や分析方式（ベイズ推定、カルマンフィルタ、パーティクルフィルタ、線形予測法、最小二乗法、統計分析、単純な直近の前回値の採用等）によって導きだされてもよい。
【００２４】
分散処理制御部１２は、通信品質情報、負荷情報、及びロボット２０から送信された画像データから判別される追跡対象物３０の追跡動作環境情報、の少なくとも１つに基づいて、複数の処理を含む画像解析処理のうちロボットにおいて実行する処理及び監視サーバ１０において実行する処理を決定する。なお、追跡対象物３０の追跡動作環境情報は、ロボット２０から送信された画像データだけでなく、他の搭載する各種センサ（加速度センサ、ジャイロセンサ、磁気センサ、超音波センサ、ミリ波レーダセンサ、照度センサ、気圧センサ、温湿度センサなど）から判定されてもよい。画像解析処理は、追跡対象物３０を特定するために実施する処理である。
【００２５】
追跡動作環境情報は、例えば、画像データ内に追跡対象物３０以外の対象物やその他の障害物が写っているか否か、もしくは追跡対象物３０の動作方向や動作速度、追跡対象物３０とのロボット２０との距離等の情報、移動環境（風向きおよび風圧、気圧、路面状態（凸凹、なめらか等）、太陽などの光源に対して向いている逆光状態であるか否か等）の情報、ロボット２０自身の移動速度や移動方向、および運動力学などから導かれる運動状態の情報であってもよい。例えば、画像データ内に追跡対象物３０以外の対象物やその他の対象物が写っている場合、分散処理制御部１２は、複数の対象物の中から追跡対象物３０を特定する必要がある（具体的には、例えば、赤い服を着た人間を特定するなど）。また、画像データ内に追跡対象物３０のみが写っている場合、追跡対象物３０の種類を特定すればよい（具体的には、人間を特定するなど）。種類を特定するとは、例えば、人、動物、その他の物等の種類を特定することである。すなわち、分散処理制御部１２は、画像解析アプリケーションの要求（例えば、ロボットによる追跡アプリケーションであれば、追跡対象物を追い続けること）を満たす画像解析処理の出力の種類（上記の例のとおり、画像解析処理で複数の対象物の中から特定の追跡対象物の位置を出力すれば良いのか、あるいは追跡対象物の種類を特定してその位置を出力すれば良いのか等）を、追跡動作環境情報などから判断し、画像解析処理の出力の種類に応じて、ロボット２０におおいて実行する処理及び監視サーバ１０において実行する処理を決定してもよい。また上記の異なる表現としては、画像解析処理において出力される情報、言い換えると、特定する対象物に応じて、分散処理制御部１２は、用いる画像データを変更してもよい。例えば、分散処理制御部１２は、追跡対象物３０を特定する必要がある場合、鮮明な画像データ（例えば、未加工画像データや、後述する色情報や模様情報を取得できる程度の画像データなど）を用い、追跡対象物３０の種類を特定すればよい場合、情報量の少ない画像データ（例えば、後述する前処理を実施した後の画像データなど）を用いてもよい。つまり、分散処理制御部１２は、画像解析処理において出力される情報に応じて、ロボット２０において実行する処理及び監視サーバ１０において実行する処理を決定してもよい。
【００２６】
画像解析処理は、例えば、前処理、特徴量抽出処理、物体認識処理、及び特定物体認識処理等を含んでもよい。前処理は、画像データの圧縮（単純な解像度の変更や、ＪＰＥＧ、ＰＮＧ、ＧＩＦなどの圧縮画像への変換等）、グレースケール化、２値化、エッジ検出（Ｓｏｂｅｌフィルタ、ラプラシアンフィルタ、キャニー法等）、トリミング（画像の部分切り出し）、輝度補正、明度補正、彩度補正、及びノイズ除去（移動平均フィルタ、メディアンフィルタ等）などのうち少なくとも１つを行う処理であってもよい。
【００２７】
特徴量抽出処理は、特定領域の色情報の抽出、ＨＯＧ（Histograms of Oriented Gradients）、ＳＩＦＴ（Scale Invariant Feature Transform）、ＳＵＲＦ（Speeded Up Robust Features）、ＡＫＡＺＥ（Accelerated-KAZE）、Ｓｈａｐｅｌｅｔ、ＥＯＨ（Edge of Oriented Histograms）、もしくはＨａａｒ−ｌｉｋｅ等による特徴量の抽出が行われてもよい。
【００２８】
物体認識処理は、画像データ内の物体を検出する処理であってもよい。例えば、物体認識処理は、ＨＯＧによる特徴量及びＳＶＭ（Support Vector Machine）などのパターン認識モデルによる学習から作成されたパターン分類データベース（辞書、識別器）の検索結果から画像データ内の人を検出してもよい。なお、パターン分類データベースは、ニューラルネットワークや線形判別分析法（ＬＤＡ）、ＡｄａＢｏｏｓｔ（Adaptive Boosting）を用いた学習から作成されてもよい。またテンプレートを用意することで作成してもよい。
【００２９】
特定物体認識処理は、画像データ内の追跡対象の追跡対象物３０を検出する処理であってもよい。例えば、画像データ内に複数の人が検出された場合、追跡対象物３０の色情報や服などの模様情報、もしくは顔情報等を用いて特定の追跡対象物３０を検出する処理であってもよい。特定の追跡対象物３０を検出するために用いる色情報や服などの模様情報、顔情報等は、前述した特徴量抽出処理などから得てもよい。
【００３０】
通信部１１は、分散処理制御部１２において、ロボットにおいて実行する処理として決定された処理に関する情報をロボット２０へ送信する。
【００３１】
以上説明したように、図１の監視サーバ１０を用いることによって、画像解析処理において実行される複数の処理のうち、ロボットにおいて実行する処理及び監視サーバ１０において実行する処理を分散することができる。また、監視サーバ１０は、追跡動作環境情報、通信品質情報、及び負荷情報等を用いて、分散処理内容を決定することによって、ロボット２０において実行可能な処理を選択することができる。これによって、ロボット２０及び監視サーバ１０において画像解析処理内の異なる処理を分散して実行することができる。
【００３２】
（実施の形態２）
続いて、図２を用いて本発明の実施の形態２にかかる監視サーバ４０の構成例について説明する。監視サーバ４０は、通信部４１、分散処理制御部４２、画像解析部４３、及び動作決定部４４を有している。通信部４１は、図１の通信部１１に相当する。分散処理制御部４２は、図１の分散処理制御部１２に相当する。
【００３３】
はじめに、監視サーバ４０における動作の概要について説明する。
【００３４】
監視サーバ４０は、後述するロボット５０の追跡動作を制御するために用いられる。ロボット５０の追跡動作は、一連の制御ループによる処理が繰り返されることによって制御される。制御ループは、例えば、画像取得処理、画像解析処理、及び動作決定処理が含まれる。
【００３５】
画像取得処理は、ロボット５０が追跡対象物３０を撮影して画像データを生成する処理である。画像解析処理は、画像データを用いて追跡対象物３０を特定する処理である。動作決定処理は、追跡対象物３０を追跡するための動作内容を決定する処理である。ロボット５０は、動作決定処理において決定された動作内容に従って追跡対象物３０を追跡する。
【００３６】
ロボット５０が、継続して追跡対象物３０を追跡動作するために、制御ループは、予め定められた時間内に完了する必要がある。ここで、制御ループには、画像解析処理及び動作決定処理を監視サーバ４０において実行する場合に、ロボット５０が監視サーバ４０へ画像データを送信する際の伝送遅延、及び、監視サーバ４０が動作内容をロボット５０へ送信する際の伝送遅延も含まれる。制御ループを完了するために予め定められた時間は、例えば、要求遅延、必要周期等と称されてもよい。
【００３７】
監視サーバ４０は、要求遅延を満足するように、ロボット５０と監視サーバ４０との間において処理を分散する分散制御を行う。以下の説明においては、監視サーバ４０が、複数の処理を含む画像解析処理を分散制御する例について説明する。以下に、監視サーバ４０を構成するそれぞれの構成要素について説明する。通信部４１及び分散処理制御部４２については、図１の通信部１１及び分散処理制御部１２と共通する機能及び動作の説明を省略する。
【００３８】
画像解析部４３は、分散処理制御部４２によって監視サーバ４０において実行される処理として決定された処理を実行する。例えば、画像解析部４３は、前処理、特徴量抽出処理、物体認識処理、及び特定物体認識処理の画像解析処理に関する全ての処理を実行してもよく、一部の処理のみを実行してもよい。一部の処理のみの実行としては、例えば、特定認識処理及び物体認識処理のみを実行してもよい。あるいは例えば、特徴量抽出処理、物体認識処理および特定物体認識処理のみを実行してもよく、さらに例えば、特定物体認識処理のみを実行してもよい。一部の処理の実行は上記例には限られない。
【００３９】
動作決定部４４は、ロボット５０における追跡動作内容を決定する。例えば、動作決定部４４は、画像解析部４３における画像解析処理の結果を用いて、ロボット５０の移動方向及びロボット５０の移動速度等を決定してもよい。動作決定部４４は、決定した追跡動作に関する情報を分散処理制御部４２へ出力する。なお、動作決定部４４は、人などがロボット５０を操作する装置（ラジコンのコントローラ（別名、プロポ：プロポーショナルシステム）や、スマートフォンによる操縦装置など）に置き換えられても良い。この場合、ロボット５０の移動速度、移動距離、及び移動方向などを決定するのは操縦者である。また、この場合、画像解析部４３あるいは図示しない他の機能部が、図示しないモニタにロボット５０から得た画像情報を表示してもよい。このモニタは操縦者がロボット５０の移動状態・移動環境および追跡対象物３０の位置や状態を把握するためのものであってもよい。
【００４０】
分散処理制御部４２は、通信部４１を介してロボット２０へ、ロボット２０において実行する処理内容に関する情報を送信する。さらに、分散処理制御部４２は、動作決定部４４から出力されたロボット２０の追跡動作に関する情報を、通信部４１を介してロボット２０へ送信する。
【００４１】
ここで、動作決定部４４における追跡動作内容を決定する処理について詳細に説明する。はじめに、動作決定部４４は、画像解析部４３において画像解析処理において特定された追跡対象物３０の、画像データ内の位置を特定する。例えば、動作決定部４４は、予め定められた画像データ内の基準点と、追跡対象物３０の位置とのピクセル間距離を算出する。さらに、動作決定部４４は、算出したピクセル間距離に予め定められた変換係数を乗算することによって、追跡対象物３０の移動速度、移動距離、及び移動方向等を特定する。変換係数は、例えば、速度係数もしくは距離係数等であってもよい。
【００４２】
動作決定部４４は、移動速度、移動距離、及び移動方向等が特定された追跡対象物３０をロボット５０に追跡させるために、ロボット５０の移動速度、移動距離、及び移動方向等を決定する。また、動作決定部４４は、ロボット５０の動きを滑らかにするために、徐々に加速、あるいは減速することによって、決定した移動速度に近づけるようにしてもよい。そのため、動作決定部４４は、移動速度に加えて、移動速度に到達するまでの時間を決定してもよい。あるいは、動作決定部４４は、加減速モデルに従い、各制御ループにおける最大速度、あるいは最低速度を設定し、急な加減速を制限してもよい。
【００４３】
続いて、図３を用いて本発明の実施の形態２にかかるロボット５０の構成例について説明する。ロボット５０は、通信部５１、分散処理制御部５２、センサ情報取得部５３、画像解析部５４、動作決定部５５、及びロボット制御部５６を有している。ロボット５０の構成要素は、プロセッサがメモリに格納されているプログラムを実行することによって処理が実行されるソフトウェアもしくはモジュール等であってもよい。もしくは、ロボット５０の構成要素は、回路もしくはチップ等のハードウェアであってもよい。
【００４４】
通信部５１は、無線通信を実行することによって通信ネットワークと接続する。
【００４５】
センサ情報取得部５３は、例えば、センサ情報として、追跡対象物３０を撮影した画像データを取得してもよい。あるいは例えば、センサ情報取得部５３は、センサ情報として、加速度センサ、ジャイロセンサ、磁気センサ、超音波センサ、ミリ波レーダセンサ、照度センサ、気圧センサ、温湿度センサから得られるセンサデータを取得してもよい。センサ情報取得部５３は、取得した画像データなどのセンサ情報を分散処理制御部５２へ出力する。
【００４６】
分散処理制御部５２は、通信部５１を介して監視サーバ４０から送信された、ロボット５０において実行する処理に関する指示メッセージを受信する。例えば、分散処理制御部５２は、センサ情報取得部５３から送信された画像データに関して、前処理の実行を指示するメッセージ、前処理及び特徴量抽出処理の実行を指示するメッセージ、もしくは画像解析処理に関するすべての処理の実行を指示するメッセージを受信してもよい。分散処理制御部５２は、指示メッセージにおいて指定された処理内容に関する情報を画像解析部５４へ出力する。
【００４７】
また、分散処理制御部５２は、通信部５１を介して監視サーバ４０から送信された、ロボット５０の追跡動作に関する情報を動作決定部５５へ出力する。
【００４８】
画像解析部５４は、分散処理制御部５２から出力された処理内容に関する情報に応じて、画像解析処理に関する処理を実行する。画像解析部５４は、処理結果を分散処理制御部５２へ出力する。分散処理制御部５２は、処理結果を通信部５１を介して監視サーバ４０へ送信する。なお、ロボット５０の動作決定に必用なすべての画像解析処理（例えば、前処理から特定物体認識処理まで、あるいは前処理から物体認識処理までなど）を画像解析部５４で実行してもよい。この場合、分散処理制御部５２は、画像解析部５４から出力された処理結果を、動作決定部５５へ出力する。
【００４９】
動作決定部５５は、分散処理制御部５２から出力されたロボット５０の追跡動作に関する情報を、ロボット制御部５６へ出力する。具体的には、動作決定部５５は、ロボット５０の移動速度、移動距離、及び移動方向等に関する情報をロボット制御部５６へ出力する。なお、動作決定部５５は、前述した動作決定部４４と同様に、画像解析部５４における画像解析処理の結果を用いて、ロボット５０の移動方向及びロボット５０の移動速度等を決定してもよい。決定方法の詳細は動作決定部４４と同様のため、説明を省略する。
【００５０】
ロボット制御部５６は、動作決定部５５から出力された追跡動作に関する情報を用いて、実際にロボット５０を動作させるモータの動作等を制御する。また、ロボット制御部５６は、ロボット５０の移動方向を決定するタイヤもしくは翼（あるいはプロペラ）、舵の方向等を制御してもよい。
【００５１】
続いて、図４を用いて本発明の実施の形態２にかかるロボット制御シーケンスについて説明する。図４のロボット制御シーケンスにおいては、はじめに、ロボット５０は、追跡対象物３０を撮影した際に生成される画像データを定期的に監視サーバ４０へ送信することを前提とする（Ｓ１１〜Ｓ１３）。ステップＳ１１〜Ｓ１３において画像データが送信されてきている場合には、監視サーバ４０が画像解析処理に関する全ての処理、あるいは例えば、前処理以外の処理、前処理と特徴量抽出処理以外の処理を実行していることを前提とする。
【００５２】
つまり、監視サーバ４０は、ステップＳ１１〜Ｓ１３において画像データが送信される度に、画像解析処理及び動作決定処理を実行し、ロボット５０へ追跡動作内容に関する情報（ロボット動作指示）を送信しているとする。ステップＳ１１〜Ｓ１３においては、例えば、ロボット５０は、未加工画像データを監視サーバ４０へ送信してもよい。
【００５３】
次に、ロボット５０は、ロボット５０における負荷状況を示す負荷情報を監視サーバ４０へ送信する（Ｓ１４）。さらに、監視サーバ４０は、ロボット５０と監視サーバ４０との間の通信ネットワークの状況を示す通信品質情報を判定する（Ｓ１５）。
【００５４】
図４においては、ロボット５０が、ステップＳ１１〜Ｓ１３において画像データを送信した後に、ステップＳ１４において負荷情報を監視サーバ４０へ送信している例について説明しているが、ロボット５０は、負荷情報を画像データとともに監視サーバ４０へ送信してもよい。
【００５５】
次に、監視サーバ４０は、ロボット５０から送信された画像データ、負荷情報、及び通信品質情報を用いて、ロボット５０において実行する画像解析処理内容と、監視サーバ４０において実行する画像解析処理内容とを決定する（Ｓ１６）。なお、ステップＳ１６における分散制御決定処理の内容については、後に詳述する。監視サーバ４０は、ロボット５０から送信された画像データとして、ステップＳ１１〜Ｓ１３において蓄積していた画像データを用いる。
【００５６】
次に、監視サーバ４０は、ロボット５０において実行する処理として決定した処理内容を指示するメッセージをロボット５０へ送信する。（Ｓ１７）。次に、ロボット５０は、ステップＳ１７の指示メッセージにおいて指示された処理内容を実行する。ロボット５０は、指示された処理内容を実行した結果に関するデータを監視サーバ４０へ送信する（Ｓ１８）。
【００５７】
次に、監視サーバ４０は、ステップＳ１６において、監視サーバ４０において実行する処理として決定された画像解析処理内容を実行する（Ｓ１９）。次に、監視サーバ４０は、ロボット５０が画像解析処理の結果特定された追跡対象物３０を追跡するための追跡動作を決定する（Ｓ２０）。次に、監視サーバ４０は、決定した追跡動作内容に関する情報（ロボット動作指示）をロボット５０へ送信する（Ｓ２１）。なお、Ｓ１５からＳ１７は、ロボット５０が画像データ（Ｓ１１やＳ１２やＳ１３）や処理結果データ（Ｓ１８）を送信する周期内（すなわち制御ループ周期内）で処理してもよいし、その周期とは無関係な任意の時間で処理してもよい。
【００５８】
ここで、図５を用いて、図４のステップＳ１６において決定される分散制御内容について説明する。図５には、通信ネットワーク状況、追跡動作環境、及び負荷状況に基づいて定まる分散制御内容を示している。図５においては、分散制御内容をパターン１〜６に分類している。
【００５９】
通信ネットワーク状況は、例えば、低遅延、中遅延、及び高遅延が定められている。低遅延、中遅延、及び高遅延は、例えば、監視サーバ４０とロボット５０との間において送受信されるデータの遅延が、閾値Ａよりも小さければ低遅延とし、閾値Ｂよりも大きければ高遅延としてもよい。ここで、閾値Ｂは、閾値Ａよりも大きい値とする。また、監視サーバ４０とロボット５０との間において送受信されるデータの遅延が、閾値Ａ以上、閾値Ｂ以下であれば、中遅延としてもよい。ここでは、遅延時間を用いて通信ネットワーク状況を定める例について説明しているが、遅延時間の代わりに、スループットや帯域情報もしくはロボット５０から送信される無線信号の信号強度や監視サーバ４０で計測した無線信号の信号強度等が用いられてもよい。この場合、スループットであれば、スループットが大きい場合は低遅延、小さい場合は高遅延となり、中遅延はその中間にある。また、帯域情報であれば、広帯域であれば低遅延、狭帯域であれば高遅延となり、中遅延はその中間にある。また、信号強度であれば、強い信号強度であれば低遅延、弱い信号強度であれば高遅延となり、中遅延はその中間にある。
【００６０】
追跡動作環境は、追跡対象物３０以外に移動する同類の対象物や異類の対象物（例えば人物を追跡対象物としている場合、車など人物以外の移動物など）、あるいは壁などの障害物などを含んでいるか否かが定められている。分散処理制御部４２は、例えば、定期的にロボット５０から送信されてくる未加工画像データを蓄積しておき、蓄積した未加工画像データの中に追跡対象物３０以外に移動する対象物を含んでいるか否かを判定してもよい。例えば、移動する対象物は人、動物、もしくは電車、車等の移動手段であってもよい。
【００６１】
負荷状況は、例えば、低負荷、中負荷、及び高負荷が定められている。例えば、ロボット５０におけるプロセッサ使用率が、閾値Ｃよりも小さければ低負荷とし、閾値Ｄよりも大きければ高負荷としてもよい。ここで、閾値Ｄは、閾値Ｃよりも大きい値とする。また、ロボット５０におけるプロセッサ使用率が、閾値Ｃ以上、閾値Ｄ以下であれば、中負荷としてもよい。ここでは、プロセッサ使用率を用いて負荷状況を定める例について説明したが、プロセッサ使用率の代わりに、メモリ使用率もしくはバッファ使用率等が用いられてもよい。あるいは負荷状況として、画像解析処理の各処理が要する計算処理時間、および各処理で要する計算処理時間が用いられてもよい。すなわち、画像解析処理にかかる計算処理時間が短い場合は低負荷、長い場合は高負荷となり、その中間に中負荷がある。
【００６２】
分散処理制御部４２は、ロボット５０の負荷状況が低負荷であると判定した場合、通信ネットワーク状況及び追跡動作環境にかかわらず、全ての画像解析処理をロボット５０において実施すると決定する（パターン１）。ロボット５０の負荷状況が低負荷である場合、ロボット５０において全ての画像解析処理を実行することによって、監視サーバ４０とロボット５０との間のデータ伝送における遅延の影響を除外することができる。
【００６３】
分散処理制御部４２は、通信ネットワーク状況が低遅延であり、負荷状況が高負荷もしくは中負荷である場合、追跡動作環境にかかわらず、全ての画像解析処理を監視サーバ４０において実施すると決定する（パターン２）。つまり、ロボット５０は、未加工画像データを監視サーバ４０へ送信する。通信ネットワーク状況が低遅延である場合、データサイズの大きい未加工画像データであっても、監視サーバ４０とロボット５０との間における遅延は小さい。そこで、ロボット５０の負荷が低負荷以外である場合は、ロボット５０が、未加工画像データを監視サーバ４０へ送信することによって、ロボット５０の負荷を軽減させるとともに、ロボット５０が追跡動作を行うために実行される制御ループの要求遅延を満足することを実現する。
【００６４】
分散処理制御部４２は、通信ネットワーク状況が中遅延であり、負荷状況が中負荷であり、追跡動作環境が追跡対象物３０のみを含む場合、前処理及び特徴量抽出処理をロボット５０で実施する、あるいは前処理をロボット５０で実施すると決定する（パターン３）。通信ネットワーク状況が中遅延である場合、ロボット５０がデータサイズの大きい未加工画像データを送信すると、遅延が大きくなり、ロボット５０の高速動作制御を実行するための要求遅延の値を超える可能性がある。また、ロボット５０の負荷状況が中負荷である場合、ロボット５０は、画像解析処理の一部の処理であれば実施できる状況である。
【００６５】
さらに、追跡動作環境において、画像データ内に追跡対象物３０のみが含まれている場合、監視サーバ４０は、特徴量抽出結果生成される特徴量データを用いれば、追跡対象物３０を特定することができる。その理由は、特徴量データによって認識された物体は、一意に追跡対象物３０ということになるからである。
【００６６】
また、パターン３においては、ロボット５０が特徴量抽出処理を行わず前処理までを行い、その処理結果データを監視サーバ４０へ送信してもよい。具体的には、例えば、ロボット５０は前処理として追跡対象物３０をトリミング（画像の部分切り出し）し、トリミング後の画像データを監視サーバ４０へ送信してもよい。トリミング後の画像データは、未加工画像データよりもデータサイズが小さいため、ロボット５０と監視サーバ４０との間における遅延の増加を抑制することができる。あるいは例えば、前処理として、画像データの圧縮やグレースケール化、２値化、エッジ検出などを行ってもよい。これらの処理後の画像データは、未加工画像データよりもデータサイズが小さくなる。
【００６７】
そこで、分散処理制御部４２は、ロボット５０において、前処理及び特徴量抽出処理、あるいは前処理を実行させ、未加工画像データよりも小さいデータサイズである特徴量抽出データもしくは前処理後の画像データ（例えば、トリミング後の画像データなど）を監視サーバ４０へ送信させることによって、ロボット５０が追跡動作を行うために実行される制御ループの要求遅延を満足することを実現する。
【００６８】
分散処理制御部４２は、通信ネットワーク状況が中遅延であり、負荷状況が中負荷であり、追跡動作環境が追跡対象物３０以外の移動する対象物など（同異類の対象物や障害物など）を含む場合、未加工画像データのデータ圧縮（低解像度化、ＪＰＥＧ化、ＰＮＧ化、ＧＩＦ化など）をロボット５０において実施すると決定する（パターン４）。通信ネットワーク状況が中遅延である場合、ロボット５０がデータサイズの大きい未加工画像データを送信すると、遅延が大きくなり、ロボット５０の高速動作制御を実行するための要求遅延の値を超える可能性がある。
【００６９】
さらに、追跡動作環境において、画像データ内に追跡対象物３０以外の移動する対象物などが含まれている場合、監視サーバ４０は、複数の移動する対象物の中から追跡対象物３０を特定する必要がある。しかし、監視サーバ４０は、パターン３のようにロボット５０から送信された特徴量データ、あるいはグレースケール化データ、２値化データ、エッジ検出後データを用いても、追跡対象物３０を含む複数の物体を認識するにとどまり、複数の物体の中から追跡対象物３０を特定することが困難となる。あるいは、トリミングなどの前処理をすることで追跡対象物以外の認識ができず、追突・衝突などの危険性が高まる可能性がある。
【００７０】
そこで、監視サーバ４０は、物体を検出するための特徴量データ以外にも、特定物体を認識するために、色情報、顔情報、もしくは模様情報等に関する特徴量データを生成し、複数の物体の中から追跡対象物３０を特定する。監視サーバ４０は、色情報、顔情報、もしくは模様情報等に関する特徴量データを生成するために、未加工画像データよりもデータサイズが小さい、データ圧縮（低解像度化など）された画像データを用いる。
【００７１】
その結果、パターン４においては、分散処理制御部４２は、ロボット５０においてデータ圧縮（低解像度化など）された画像データを送信させることによって、ロボット５０と監視サーバ４０との間の遅延が増加することを抑制し、ロボット５０が追跡動作を行うために実行される制御ループの要求遅延を満足することを実現する。また、分散処理制御部４２は、色情報、顔情報、もしくは模様情報等に関する特徴量データの生成を監視サーバ４０において実行することによって、中負荷であるロボット５０における負荷の上昇を抑えることができる。ここでは、色情報、顔情報、もしくは模様情報等に関する特徴量データの生成に関する処理は、前処理として未加工画像データをデータ圧縮（低解像度化など）する処理よりも負荷が大きいとする。
【００７２】
ロボット５０の負荷状況が高負荷である場合、ロボット５０は、画像解析処理に含まれる前処理及び特徴量抽出処理も実施することができない。さらに、通信ネットワーク状況が中遅延である場合、ロボット５０は、未加工画像データを送信することもできない。このような状況の場合、分散処理制御部４２は、管理者等が認識することができるアラートを出力する（パターン５）。アラートが出力される状況の場合、監視サーバ４０からロボット５０へ通常の画像解析結果に基づく制御内容を指示するメッセージは送信されない。そのため、ロボット５０は、過去に指示されたロボットの動作指示に従い動作する。例えば、具体的には、カルマンフィルタやパーティクルフィルタ等による物体位置推定を用いて、推定動作を行ってもよい。なお、通信ネットワーク状況が中遅延であり監視サーバ４０が動作指示情報であれば送信できる状態であれば、監視サーバはアラートの出力にあわせてロボット５０に対して動作指示情報を送信してもよい。
【００７３】
また、ロボット５０の通信ネットワーク状況が高遅延である場合、ロボット５０から監視サーバ４０へデータを送信することは実質的に不可能となる。さらに、ロボット５０の負荷状況が中負荷もしくは高負荷である場合、ロボット５０において画像解析処理に関する全ての処理を実行することはできない。このような状況の場合、分散処理制御部４２は、管理者等が認識することができるアラートを出力する（パターン６）。アラートが出力される状況の場合、監視サーバ４０からロボット５０へ制御内容を指示するメッセージは送信されない。そのため、ロボット５０は、過去に指示されたロボットの動作指示に従い動作する。
【００７４】
続いて、図６及び図７を用いて本発明の実施の形態２にかかる分散処理制御部４２における分散制御決定処理の流れについて説明する。図６においては、監視サーバ４０は、定期的にロボット５０から送信される未加工画像データを受信し、蓄積しているとする。
【００７５】
はじめに、分散処理制御部４２は、通信ネットワーク状況を判定する（Ｓ３１）。具体的には、分散処理制御部４２は、監視サーバ４０とロボット５０との間のデータ送受信において発生する遅延が、低遅延か、中遅延か、もしくは高遅延かを判定する。あるいは前述のとおり、通信ネットワーク状況はスループット、帯域情報、電波信号強度の情報であってもよいため、それらから導かれる低遅延、中遅延、高遅延を判定してもよい。
【００７６】
次に、分散処理制御部４２は、ロボット５０から送信されたロボット５０の負荷状況に関する情報を取得する（Ｓ３２）。例えば、分散処理制御部４２は、ロボット５０から送信されたプロセッサ使用率等の情報に基づいて、ロボット５０の負荷状況が低負荷か、中負荷か、もしくは高負荷かを判定する。あるいは前述のとおり、負荷状況は、画像解析処理の各処理が要する計算処理時間、および各処理で要する計算処理時間であってもよいため、この計算処理時間の大きさから導かれる低負荷、中負荷、高負荷を判定してもよい。
【００７７】
次に、分散処理制御部４２は、過去に送信され、蓄積されている未加工画像データや各種センサから得られたセンサデータを用いて、追跡動作環境を判定する（Ｓ３３）。例えば、分散処理制御部４２は、蓄積されている未加工画像データに、追跡対象物３０以外の移動する対象物が含まれているか否かを判定する。
【００７８】
ステップＳ３１〜Ｓ３３の処理の順番は、図６に示される順番に制限されない。
【００７９】
次に、分散処理制御部４２は、ロボット５０の負荷状況が低負荷であるか否かを判定する（Ｓ３４）。分散処理制御部４２は、ロボット５０の負荷状況が低負荷であると判定した場合、画像解析処理に関する全ての処理をロボット５０で実施することを決定する（Ｓ３５）。ステップＳ３５における決定内容は、図５のパターン１に相当する。
【００８０】
分散処理制御部４２は、ステップＳ３４において、ロボット５０の負荷状況が、中負荷もしくは高負荷であると判定した場合、通信ネットワーク状況が低遅延であるか否かを判定する（Ｓ３６）。分散処理制御部４２は、通信ネットワーク状況が低遅延であると判定した場合、画像解析処理に関する全ての処理を監視サーバ４０にて実施することを決定する。つまり、分散処理制御部４２は、ロボット５０に対して未加工画像データを送信させることを決定する（Ｓ３７）。ステップＳ３７における決定内容は、図５のパターン２に相当する。
【００８１】
次に、分散処理制御部４２は、ステップＳ３６において、通信ネットワーク状況が中遅延もしくは高遅延であると判定した場合、通信ネットワーク状況が中遅延かつロボット５０の負荷状況が中負荷であるか否かを判定する（Ｓ３８）。
【００８２】
分散処理制御部４２は、通信ネットワーク状況が中遅延かつロボット５０の負荷状況が中負荷ではないと判定した場合、アラートを出力する（Ｓ３９）。通信ネットワーク状況が中遅延かつロボット５０の負荷状況が中負荷ではないとは、通信ネットワーク状況が中遅延かつロボット５０の負荷状況が高負荷（図５のパターン５）、もしくは、通信ネットワーク状況が高遅延かつロボット５０の処理負荷状況が高負荷（図５のパターン６）、もしくは、通信ネットワーク状況が高遅延かつロボット５０の処理負荷状況が中負荷（図５のパターン６）の場合である。
【００８３】
次に、分散処理制御部４２は、ステップＳ３８において、通信ネットワーク状況が中遅延かつロボット５０の負荷状況が中負荷であると判定した場合、追跡動作環境が、追跡対象物３０のみを含むか否かを判定する（Ｓ４０）。
【００８４】
分散処理制御部４２は、追跡動作環境が追跡対象物３０以外の移動する対象物など（同異類の対象物や障害物など）も含むと判定した場合、未加工画像データのデータ圧縮（低解像度化など）の前処理をロボット５０において実行することを決定する（Ｓ４１）。ステップＳ４１における決定内容は、図５のパターン４に相当する。
【００８５】
分散処理制御部４２は、追跡動作環境が追跡対象物３０のみを含むと判定した場合、前処理（画像データ圧縮、トリミング、グレースケール化、２値化、エッジ検出など）及び特徴量抽出処理、あるいは前処理をロボット５０において実行することを決定する（Ｓ４２）。ステップＳ４２における決定内容は、図５のパターン３に相当する。
【００８６】
以上説明したように、本発明の実施の形態２にかかる分散制御を実行することによって、ロボット５０と監視サーバ４０との間における画像解析処理の分散を実施することができる。具体的に、分散処理制御部４２は、ロボット５０の高速動作制御を実行するための要求遅延を満足し、かつ、ロボット５０に過剰な負荷がかかることを回避するようにそれぞれの装置における処理内容を決定することができる。
【００８７】
（実施の形態３）
続いて、図８を用いて本発明の実施の形態３にかかる分散制御内容について説明する。図８の分散制御内容を、パターン１１〜１６に分類している。パターン１１、１５、及び１６は、図５のパターン１、５、及び６と同じであるため詳細な説明を省略する。
【００８８】
分散処理制御部４２は、通信ネットワーク状況が低遅延であり、負荷状況が高負荷である場合、追跡動作環境にかかわらず、全ての画像解析処理を監視サーバ４０において実施すると決定する（パターン１２）。つまり、ロボット５０は、未加工画像データを監視サーバ４０へ送信する。パターン１２と、図５のパターン２との差異は、ロボット５０の負荷状況が中負荷の場合をパターン２から除外している点である。ロボット５０の負荷状況が中負荷である場合、ロボット５０において、画像解析処理の一部の処理であれば実施できる状況である。そのため、通信ネットワーク状況が低遅延である場合であっても、ロボット５０において画像解析処理の一部の処理を実行させる。ロボット５０が、画像解析処理の一部の処理を実行することによってロボット５０から監視サーバ４０へ送信されるデータサイズは小さくなる。その結果、ロボット５０と監視サーバ４０との間の通信帯域を抑制することができる。
【００８９】
通信ネットワーク状況が低遅延であり、負荷状況が中負荷である場合に、ロボット５０が実行する画像解析処理の一部の処理については、パターン１３及び１４に示している。
【００９０】
パターン１３は、図５のパターン３に、通信ネットワーク状況の条件として低遅延である場合を追加している。さらに、パターン１４も、図５のパターン４に、通信ネットワーク状況の条件として低遅延である場合を追加している。
【００９１】
続いて、図９及び図１０を用いて本発明の実施の形態３にかかる分散処理制御部４２における分散制御決定処理の流れについて説明する。図９においては、監視サーバ４０は、定期的にロボット５０から送信される未加工画像データを受信し、蓄積しているとする。ステップＳ５１〜Ｓ５５は、図６のステップＳ３１〜Ｓ３３と同様であるため詳細な説明を省略する。
【００９２】
分散処理制御部４２は、ステップＳ５４において、ロボット５０の負荷状況が、中負荷もしくは高負荷であると判定した場合、通信ネットワーク状況が高遅延であるか否かを判定する（Ｓ５６）。分散処理制御部４２は、通信ネットワーク状況が高遅延であると判定した場合、アラートを出力する。（Ｓ５７）。ステップＳ５７における決定内容は、図８のパターン１６に相当する。
【００９３】
分散処理制御部４２は、ステップＳ５６において、通信ネットワーク状況が低遅延もしくは中遅延であると判定した場合、通信ネットワーク状況が低遅延もしくは中遅延、かつ、ロボット５０の負荷状況が中負荷であるか否かを判定する（Ｓ５８）。
【００９４】
分散処理制御部４２は、通信ネットワーク状況が低遅延もしくは中遅延、かつ、ロボット５０の負荷状況が中負荷、には該当しないと判定した場合、通信ネットワーク状況が低遅延か否かを判定する（Ｓ５９）。ステップＳ５８において、通信ネットワーク状況が低遅延もしくは中遅延、かつ、ロボット５０の負荷状況が中負荷、には該当しないとは、通信ネットワーク状況が低遅延もしくは中遅延、かつ、ロボット５０の負荷状況が高負荷、であることを意味する。
【００９５】
ステップＳ５９において、分散処理制御部４２は、通信ネットワーク状況が低遅延であると判定した場合、画像解析処理に関する全ての処理を監視サーバ４０にて実施することを決定する。つまり、分散処理制御部４２は、ロボット５０に対して未加工画像データを送信させることを決定する（Ｓ６０）。ステップＳ６０における決定内容は、図８のパターン１２に相当する。
【００９６】
ステップＳ５９において、分散処理制御部４２は、通信ネットワーク状況が中遅延であると判定した場合、アラートを出力する（Ｓ６１）。ステップＳ６１における決定内容は、図８のパターン１５に相当する。
【００９７】
ステップＳ５８において、分散処理制御部４２は、通信ネットワーク状況が低遅延もしくは中遅延、かつ、ロボット５０の負荷状況が中負荷、に該当すると判定した場合、追跡動作環境が、追跡対象物３０のみを含むか否かを判定する（Ｓ６２）。
【００９８】
分散処理制御部４２は、追跡動作環境が、追跡対象物３０以外の移動する対象物など（異類の対象物や障害物など）も含むと判定した場合、未加工画像データをデータ圧縮（低解像度化など）する前処理をロボット５０において実行することを決定する（Ｓ６３）。ステップＳ４１における決定内容は、図８のパターン１４に相当する。
【００９９】
分散処理制御部４２は、追跡動作環境が追跡対象物３０のみを含むと判定した場合、前処理画像データ圧縮、トリミング、グレースケール化、２値化、エッジ検出など）及び特徴量抽出処理、あるいは前処理をロボット５０において実行することを決定する（Ｓ６４）。ステップＳ６４における決定内容は、図８のパターン１３に相当する。
【０１００】
以上説明したように、本発明の実施の形態３においては、ロボット５０と監視サーバ４０との間の通信帯域を抑制することを目的とした分散制御決定処理を実行することができる。
【０１０１】
ロボット５０は、無線通信を行うことによって定期的に、監視サーバ４０へ画像データもしくは特徴量抽出結果等を送信する。無線通信においては、瞬時に無線環境が変動する可能性がある。そのため、通信ネットワーク状況が低遅延であったとしても、瞬時に無線環境が変動して、無線環境が悪化してしまうこともある。これより、通信ネットワーク状況が低遅延であったとしても、ロボット５０における負荷状況に余裕がある中負荷である場合には、ロボット５０が送信するデータ量を減少させるように制御する。これによって、無線通信環境が変動した場合であっても、要求遅延を満足するように動作することが可能である。また、通信ネットワーク状況が低遅延でも積極的にロボット５０に画像解析処理を実行させることで、無線通信のトラヒックを抑制可能となるため、無線利用効率が向上する。結果、同様の仕組みで動作するロボット数の増加や通信利用料、電力消費抑制などの低減が可能となる。
【０１０２】
（実施の形態４）
続いて、図１１を用いて本発明の実施の形態４にかかる分散制御内容について説明する。図１１の分散制御内容を、パターン２１及び２２に分類している。
【０１０３】
図１１においては、追跡動作環境には、追跡対象物３０が高速移動しているか低速移動しているかが定められている。追跡対象物３０が高速移動しているか低速移動しているかについては、例えば、過去に行った追跡動作内容を決定する処理において特定した追跡対象物３０の移動速度に関する情報を用いて決定してもよい。例えば、分散処理制御部４２は、追跡対象物３０の移動速度が、予め定められた閾値よりも速い場合に、高速移動していると決定し、閾値よりも遅い場合に、低速移動していると決定してもよい。
【０１０４】
また、分散処理制御部４２は、追跡動作内容を決定する処理において特定した追跡対象物３０の移動速度が、ｎ（ｎは２以上の整数）回連続して閾値よりも速い場合に高速移動していると決定し、ｎ回連続して閾値よりも遅い場合に低速移動していると決定してもよい。
【０１０５】
追跡対象物３０の移動速度は、過去の複数の制御ループで得た画像内の追跡対象物の位置の変化の大きさから導きだしてもよい。例えば、直近の過去２回の制御ループで得た画像内における追跡対象物の位置の差分から移動速度を導き、現在の移動速度を推定してもよい。あるいは、例えば、過去ｍ回分の画像データを用いて現在の移動速度を推定してもよい。推定には、例えば、カルマンフィルタやパーティクルフィルタなどを用いてもよい。また、追跡対象物３０の移動速度は、ロボット５０が備える加速度センサの値から導いてもよい。さらに、加速度センサの値に加えミリ波レーダや超音波センサなどによる対象物との距離情報を用いて、追跡対象物３０の移動速度を導いてもよい。
【０１０６】
パターン２１及び２２は、通信ネットワーク状況が中遅延であり、ロボット５０の負荷状況が中負荷である場合を定めている。パターン２１においては、追跡対象物３０が低速移動していると決定された場合、分散処理制御部４２は、Ｘ（Ｘは２以上の整数）回にＫ回（１≦Ｋ＜Ｘ：Ｋは１以上かつＸより小さい整数）の頻度にて、全ての画像解析処理を監視サーバ４０にて行うと決定する。つまり、分散処理制御部４２は、Ｘ回にＫ回の頻度において、ロボット５０から未加工画像データを監視サーバ４０へ送信することを決定する。Ｘ回、Ｋ回とは、ロボット５０へ追跡動作内容を指示する回数（すなわち制御ループの回数）である。
【０１０７】
追跡対象物３０が低速移動している場合、追跡対象物３０の移動後の位置を容易に推測することができる。そのため、追跡対象物３０を追跡動作するための制御ループに対する要求遅延を長くすることができる。言い換えると、制御ループの要求遅延が長くなったとしても、追跡対象物３０は低速移動しているため、十分に追跡対象物３０を追跡することができる。
【０１０８】
そのため、追跡対象物３０が低速移動している場合、通信状況が中遅延であっても、分散処理制御部４２は、ロボット５０に対して未加工画像データの送信を行わせることを決定する。また、ロボット５０が未加工画像データの送信を行わないＸ−Ｋ回については、ロボット５０は、過去の追跡動作内容に従って動作（前述のアラート時の推定動作など）してもよく、停止してもよい。
【０１０９】
パターン２２においては、追跡対象物３０が高速移動していると決定された場合、分散処理制御部４２は、前処理および特徴量抽出処理、あるいは前処理をロボットにて行うことを決定する。
【０１１０】
追跡対象物３０が高速移動している場合、追跡対象物３０の移動後の位置を容易に推測することができない。そのため、通信ネットワーク状況が中遅延である場合、制御ループの要求遅延を満足するために、分散処理制御部４２は、ロボット５０に対して、未加工画像データよりもデータサイズの小さい前処理済みデータや特徴量データを送信させる。
【０１１１】
以上説明したように、本発明の実施の形態４にかかる分散制御内容を実行することによって、通信ネットワーク状況が中遅延となり、無線環境が劣化している場合であっても、監視サーバ４０は、未加工画像データを用いて画像解析処理を実行することができる。
【０１１２】
監視サーバ４０は、未加工画像データを用いることによって、高精度の追跡動作内容を決定することができる。
【０１１３】
また、図１１においては、追跡動作環境が、追跡対象物３０の移動速度を用いて決定されているが、追跡対象物３０の動作方向や移動モデル（直線移動か、ランダムウェイポイント移動かなど）等の情報を用いて決定されてもよい。例えば、追跡対象物３０の動作方向が直線方向である場合、追跡対象物３０の移動後の位置を容易に推測することができる。そのため、この場合、パターン２１の分散制御内容が実行されてもよい。また、追跡対象物３０の動作方向が定まらない場合、追跡対象物３０の移動後の位置を容易に推測することができない。そのため、この場合、パターン２２の分散制御内容が実行されてもよい。
【０１１４】
（実施の形態５）
続いて、小型デバイスを用いたリアルタイムなＡＲサービスにおける画像解析処理の分散制御について説明する。ＡＲサービスに用いられる小型デバイスは、スマートフォンもしくはウェアラブルデバイス等の情報処理装置であってもよい。ここで、ウェアラブルデバイスとして、ヘッドマウントディスプレイ（ＨＭＤ：Head Mount Display）を用いたＡＲサービスについて説明する。
【０１１５】
ＨＭＤを用いたＡＲサービスとして、例えば、機械の組み立て作業の支援画像をＨＭＤに表示するサービスがある。この場合、ＨＭＤに組立対象の機械を表示するとともに、機械の組み立て手順を示す支援画像をＨＭＤに表示する。具体的には、機械を組み立てる際にネジを用いる手順がある場合に、ネジを用いる箇所を示す支援画像をＨＭＤに表示してもよい。この場合の支援画像は、文字もしくは記号等を表示する画像が用いられてもよい。ここで、支援画像は、ＡＲ画像と称されてもよい。
【０１１６】
また、実施の形態１〜４においては、移動する物体を追跡する例について説明したが、実施の形態５においては、ＨＭＤを装着している人が動くことによって、ＨＭＤの向きが変わり、その結果、ＨＭＤに表示される画面上における対象物の位置が変更する例について主に説明する。言い換えると、対象物が移動しない場合であっても、ＨＭＤの向きが変わることによって、画面上の対象物の位置が変化する場合について主に説明する。対象物は、例えば、組立対象の機械等である。ただし、スポーツ観戦において対象物となるスポーツ選手の付加情報（選手のデータや、その試合での実績など）をＡＲ画像として表示するケースでは、スポーツ選手が移動することでＨＭＤの向きが変わらなくても画面上の対象物の位置が変化する。本実施の形態５はこのような対象物が移動するケースも含む。
【０１１７】
ＨＭＤに表示される画面上における対象物の位置が変更された場合、支援画像や対象物の付加情報の位置も変更する必要がある。そのため、対象物及びＡＲ画像の位置を特定する画像解析処理をリアルタイムに実行する必要がある。
【０１１８】
ここで、ＡＲサービスにおける画像解析処理は、実施の形態１〜４において説明した画像解析処理と同様に、前処理、特徴量抽出処理、物体認識処理、及び特定物体認識処理等を含む。また、ＡＲサービスにおける動作決定処理として、ＡＲ画像特定処理及びＡＲ画像表示位置特定処理が実行される。
【０１１９】
ＡＲ画像特定処理は、画像解析処理の結果に応じて表示するＡＲ画像を決定する処理である。また、ＡＲ画像表示位置特定処理は、対象物の位置の変化に応じて、ＡＲ画像を表示される位置を特定する処理である。
【０１２０】
ここで、図１２を用いてＨＭＤ等の小型デバイス６０の構成例について説明する。なお、監視サーバについては、図２の監視サーバ４０と同様の構成であるため詳細な説明を省略する。
【０１２１】
小型デバイス６０は、通信部６１、分散処理制御部６２、センサ情報取得部６３、画像解析部６４、動作決定部６５、及び画像表示制御部６６を有している。通信部６１、分散処理制御部６２、センサ情報取得部６３、画像解析部６４、動作決定部６５、については、図３のロボット５０と同様の機能もしくは動作については詳細な説明を省略する。
【０１２２】
動作決定部６５は、ＡＲ画像特定処理及びＡＲ画像表示位置特定処理を実行する。動作決定部６５は、ＡＲ画像特定処理において表示することを決定したＡＲ画像、及びＡＲ画像表示位置特定処理において決定したＡＲ画像を表示する位置を画像表示制御部６６へ出力する。画像表示制御部６６は、動作決定部６５から出力された情報に従って、ＡＲ画像を小型デバイス６０の表示部（不図示）へ表示する。
【０１２３】
ここで、図１３を用いて、小型デバイスと監視サーバとの間の分散制御内容について説明する。図１３には、通信ネットワーク状況、撮影状態、及び負荷状況に基づいて定まる分散制御内容を示している。図１３においては、分散制御内容をパターン３１〜３７に分類している。通信ネットワーク状況及び負荷状況は、図５と同様であるため詳細な説明を省略する。
【０１２４】
撮影状態は、小型デバイスが撮影した撮影画像における対象物の表示状態を定めている。具体的には、撮影画像の一部の領域のみに対象物が表示されている状態、対象物が大きく表示されている状態、及び撮影画像内に対象物のみ表示されている状態が定められている。撮影画像の一部の領域は、予め定められていてもよい。また、対象物が大きく表示されている状態とは、例えば、撮影画像における対象物が表示されている領域の割合が予め定められた閾値を超える場合、対象物が大きく表示されている状態に該当するとしてもよい。
【０１２５】
パターン３１及び３２は、図５のパターン１及び２において、ロボット５０を小型デバイスと変更する以外は図５のパターン１及び２と同様であるため詳細な説明を省略する。また、パターン３６及び３７は、図５のパターン５及び６と同様であるため詳細な説明を省略する。
【０１２６】
パターン３３は、通信ネットワーク状況が中遅延であり、負荷状況が中負荷であり、撮影状態として一部領域のみに対象物が表示されている場合、前処理及び特徴量抽出処理、あるいは前処理を小型デバイスにおいて実施することを規定する。また、パターン３３においては、特徴量データを用いる代わりに、小型デバイスが、例えば対象物をトリミングし、トリミング後の画像データを監視サーバへ送信してもよい。トリミング後の画像データは、未加工画像データよりもデータサイズが小さいため、小型デバイスと監視サーバとの間における遅延の増加を抑制することができる。さらに、対象物が表示されていない領域は、不要な領域となる。そのため、対象物のみをトリミングすることによって、不要な領域を削除してデータサイズを小さくすることができる。
【０１２７】
パターン３４は、通信ネットワーク状況が中遅延であり、負荷状況が中負荷であり、撮影状態として対象物が大きく表示されている場合、未加工画像データのデータ圧縮（低解像度化など）を小型デバイスにおいて実施することを規定する。対象物が大きく表示されている場合、未加工画像をデータ圧縮（低解像度化など）した後の画像データであっても、監視サーバは対象物の特定をすることができる。また、パターン３４では、特徴量抽出処理までを小型デバイスにおいて実施することを規定してもよい。
【０１２８】
パターン３５は、通信ネットワーク状況が中遅延であり、負荷状況が中負荷であり、撮影状態として対象物のみが表示されている場合、未加工画像データのグレースケール化や２値化、エッジ検出を小型デバイスで実施することを規定する。対象物のみが表示されている場合、色情報を削減しても対象物の特定は容易であるため、データサイズを小さくするために、未加工画像データのグレースケール化等を実施する。また、パターン３５では、特徴量抽出処理までを小型デバイスにおいて実施することを規定してもよい。
【０１２９】
ここで、監視サーバにおける分散制御決定処理は、図６及び図７のロボットを小型デバイスに置き換えると、図６及び図７と同様であるため詳細な説明を省略する。また、ＡＲサービスにおいては、図７のステップＳ４０において、撮影状態を判定し、撮影状態に応じてパターン３３〜３５を決定する。
【０１３０】
続いて、図１４を用いて図１３とは異なる分散制御内容について説明する。図１４の分散制御内容を、パターン４１〜４７に分類している。パターン４１、４６、及び４７は、図１３のパターン３１、３６、及び３７と同じであるため詳細な説明を省略する。
【０１３１】
パターン４２は、通信ネットワーク状況が低遅延であり、負荷状況が高負荷である場合、撮影状態にかかわらず、全ての画像解析処理を監視サーバ４０において実施することを規定する。つまり、小型デバイス６０は、未加工画像データを監視サーバ４０へ送信する。パターン４２と、図１３のパターン３２との差異は、小型デバイス６０の負荷状況が中負荷の場合をパターン３２から除外している点である。小型デバイス６０の負荷状況が中負荷である場合、小型デバイス６０において、画像解析処理の一部の処理であれば実施できる状況である。そのため、通信ネットワーク状況が低遅延である場合であっても、小型デバイス６０において画像解析処理の一部の処理を実行させる。小型デバイス６０が、画像解析処理の一部の処理を実行することによって小型デバイス６０から監視サーバ４０へ送信されるデータサイズは小さくなる。その結果、小型デバイス６０と監視サーバ４０との間の通信帯域を抑制することができる。
【０１３２】
通信ネットワーク状況が低遅延もしくは中遅延であり、負荷状況が中負荷である場合に、小型デバイス６０が実行する画像解析処理の一部の処理については、パターン４３〜４５に示している。
【０１３３】
パターン４３は、図１３のパターン３３に、通信ネットワーク状況の条件として低遅延である場合を追加している。さらに、パターン４４及び４５も、図１３のパターン３４及び３５に、通信ネットワーク状況の条件として低遅延である場合を追加している。
【０１３４】
以上説明したように、ＡＲサービスにおける画像解析処理も、実施の形態１〜４と同様に小型デバイスと監視サーバとの間において画像解析処理を分散することができる。小型デバイスの負荷状況、通信ネットワーク状況、及び撮影状態に応じて画像解析処理を分散させることによって、ＡＲサービスにおいて、要求される伝送遅延を満たすように画像解析処理を分散させることができる。
【０１３５】
続いて以下では、上述の複数の実施形態で説明された監視サーバ１０及び４０、ロボット２０及び５０、小型デバイス６０の構成例について説明する。
【０１３６】
図１５は、ロボット２０及び５０と、小型デバイス６０との構成例を示すブロック図である。Radio Frequency（RF）トランシーバ１１０１は、基地局と通信するためにアナログRF信号処理を行う。RFトランシーバ１１０１により行われるアナログRF信号処理は、周波数アップコンバージョン、周波数ダウンコンバージョン、及び増幅を含む。RFトランシーバ１１０１は、アンテナ１１０２及びベースバンドプロセッサ１１０３と結合される。すなわち、RFトランシーバ１１０１は、変調シンボルデータ（又はOFDMシンボルデータ）をベースバンドプロセッサ１１０３から受信し、送信RF信号を生成し、送信RF信号をアンテナ１１０２に供給する。また、RFトランシーバ１１０１は、アンテナ１１０２によって受信された受信ＲＦ信号に基づいてベースバンド受信信号を生成し、これをベースバンドプロセッサ１１０３に供給する。
【０１３７】
ベースバンドプロセッサ１１０３は、無線通信のためのデジタルベースバンド信号処理（データプレーン処理）とコントロールプレーン処理を行う。デジタルベースバンド信号処理は、(a) データ圧縮／復元、(b) データのセグメンテーション／コンカテネーション、(c) 伝送フォーマット（伝送フレーム）の生成／分解、(d) 伝送路符号化／復号化、(e) 変調（シンボルマッピング）／復調、及び(f) Inverse Fast Fourier Transform（IFFT）によるOFDMシンボルデータ（ベースバンドOFDM信号）の生成などを含む。一方、コントロールプレーン処理は、レイヤ１（e.g., 送信電力制御）、レイヤ２（e.g., 無線リソース管理、及びhybrid automatic repeat request（HARQ）処理）、及びレイヤ３（e.g., アタッチ、モビリティ、及び通話管理に関するシグナリング）の通信管理を含む。
【０１３８】
例えば、LTEおよびLTE-Advancedの場合、ベースバンドプロセッサ１１０３によるデジタルベースバンド信号処理は、Packet Data Convergence Protocol（PDCP）レイヤ、Radio Link Control（RLC）レイヤ、MACレイヤ、およびPHYレイヤの信号処理を含んでもよい。また、ベースバンドプロセッサ１１０３によるコントロールプレーン処理は、Non-Access Stratum（NAS）プロトコル、RRCプロトコル、及びMAC CEの処理を含んでもよい。
【０１３９】
ベースバンドプロセッサ１１０３は、デジタルベースバンド信号処理を行うモデム・プロセッサ（e.g., Digital Signal Processor（DSP））とコントロールプレーン処理を行うプロトコルスタック・プロセッサ（e.g., Central Processing Unit（CPU）、又はMicro Processing Unit（MPU））を含んでもよい。この場合、コントロールプレーン処理を行うプロトコルスタック・プロセッサは、後述するアプリケーションプロセッサ１１０４と共通化されてもよい。
【０１４０】
アプリケーションプロセッサ１１０４は、CPU、MPU、マイクロプロセッサ、又はプロセッサコアとも呼ばれる。アプリケーションプロセッサ１１０４は、複数のプロセッサ（複数のプロセッサコア）を含んでもよい。アプリケーションプロセッサ１１０４は、メモリ１１０６又は図示されていないメモリから読み出されたシステムソフトウェアプログラム（Operating System（OS））及び様々なアプリケーションプログラム（例えば、通話アプリケーション、WEBブラウザ、メーラ、カメラ操作アプリケーション、音楽再生アプリケーション）を実行することによって、ロボット２０及び５０と、小型デバイス６０との各種機能を実現する。
【０１４１】
いくつかの実装において、図１５に破線（１１０５）で示されているように、ベースバンドプロセッサ１１０３及びアプリケーションプロセッサ１１０４は、１つのチップ上に集積されてもよい。言い換えると、ベースバンドプロセッサ１１０３及びアプリケーションプロセッサ１１０４は、１つのSystem on Chip（SoC）デバイス１１０５として実装されてもよい。SoCデバイスは、システムLarge Scale Integration（LSI）またはチップセットと呼ばれることもある。
【０１４２】
メモリ１１０６は、揮発性メモリ若しくは不揮発性メモリ又はこれらの組合せである。メモリ１１０６は、物理的に独立した複数のメモリデバイスを含んでもよい。揮発性メモリは、例えば、Static Random Access Memory（SRAM）若しくはDynamic RAM（DRAM）又はこれらの組み合わせである。不揮発性メモリは、マスクRead Only Memory（MROM）、Electrically Erasable Programmable ROM（EEPROM）、フラッシュメモリ、若しくはハードディスクドライブ、又はこれらの任意の組合せである。例えば、メモリ１１０６は、ベースバンドプロセッサ１１０３、アプリケーションプロセッサ１１０４、及びSoC１１０５からアクセス可能な外部メモリデバイスを含んでもよい。メモリ１１０６は、ベースバンドプロセッサ１１０３内、アプリケーションプロセッサ１１０４内、又はSoC１１０５内に集積された内蔵メモリデバイスを含んでもよい。さらに、メモリ１１０６は、Universal Integrated Circuit Card（UICC）内のメモリを含んでもよい。
【０１４３】
メモリ１１０６は、上述の複数の実施形態で説明されたロボット２０及び５０と、小型デバイス６０とによる処理を行うための命令群およびデータを含むソフトウェアモジュール（コンピュータプログラム）を格納してもよい。いくつかの実装において、ベースバンドプロセッサ１１０３又はアプリケーションプロセッサ１１０４は、当該ソフトウェアモジュールをメモリ１１０６から読み出して実行することで、上述の実施形態で説明されたロボット２０及び５０と、小型デバイス６０との処理を行うよう構成されてもよい。
【０１４４】
図１６は、監視サーバ１０及び４０の構成例を示すブロック図である。図１６を参照すると、監視サーバ１０及び４０は、ネットワークインターフェース１２０１、プロセッサ１２０２、及びメモリ１２０３を含む。ネットワークインターフェース１２０１は、ネットワークノード（e.g., eNodeB１３０、MME、P-GW、）と通信するために使用される。ネットワークインターフェース１２０１は、例えば、IEEE 802.3 seriesに準拠したネットワークインタフェースカード（NIC）を含んでもよい。
【０１４５】
プロセッサ１２０２は、メモリ１２０３からソフトウェア（コンピュータプログラム）を読み出して実行することで、上述の実施形態においてシーケンス図及びフローチャートを用いて説明された監視サーバ１０及び４０の処理を行う。プロセッサ１２０２は、例えば、マイクロプロセッサ、MPU、又はCPUであってもよい。プロセッサ１２０２は、複数のプロセッサを含んでもよい。
【０１４６】
メモリ１２０３は、揮発性メモリ及び不揮発性メモリの組み合わせによって構成される。メモリ１２０３は、プロセッサ１２０２から離れて配置されたストレージを含んでもよい。この場合、プロセッサ１２０２は、図示されていないI/Oインタフェースを介してメモリ１２０３にアクセスしてもよい。
【０１４７】
図１６の例では、メモリ１２０３は、ソフトウェアモジュール群を格納するために使用される。プロセッサ１２０２は、これらのソフトウェアモジュール群をメモリ１２０３から読み出して実行することで、上述の実施形態において説明された監視サーバ１０及び４０の処理を行うことができる。
【０１４８】
図１５及び図１６を用いて説明したように、上述の実施形態における監視サーバ１０及び４０、ロボット２０及び５０、小型デバイス６０が有するプロセッサの各々は、図面を用いて説明されたアルゴリズムをコンピュータに行わせるための命令群を含む１又は複数のプログラムを実行する。
【０１４９】
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【０１５０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述した実施の形態においては、主に画像解析処理に関する分散制御について説明したが、動作決定処理に関する分散制御を実施してもよい。
【０１５１】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記によって限定されるものではない。本願発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１５２】
この出願は、２０１５年９月３日に出願された日本出願特願２０１５−１７３８１１を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【０１５３】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
（付記１）
情報処理装置で取得された画像データを受信する通信部と、
要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する分散処理制御部と、を備える、監視サーバ。
（付記２）
前記分散処理制御部は、前記画像解析処理の出力の種類に基づいて、前記画像解析処理の内容を決定する、付記１に記載の監視サーバ。
（付記３）
前記通信部は、さらに前記情報処理装置との間の通信ネットワークの通信品質に関する情報または前記情報処理装置の処理負荷情報の少なくとも一方を受信し、
前記分散処理制御部は、前記画像解析処理の内容、前記通信品質に関する情報、または前記処理負荷情報のうち少なくとも１つに基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する、付記１又は２に記載の監視サーバ。
（付記４）
前記分散処理制御部は、前記画像データに基づくアプリケーションの実行状況の情報に基づいて、前記画像解析処理の出力の種類を決定する、付記１乃至３のいずれか１項に記載の監視サーバ。
（付記５）
前記通信部は、追跡対象物を追跡する前記情報処理装置であるロボットから定期的に送信された画像データ、前記ロボットとの間の通信ネットワークの通信品質に関する情報、及び前記ロボットの処理負荷情報を受信し、
前記分散処理制御部は、前記画像データから判別される前記追跡対象物の追跡動作環境情報、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記追跡対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記ロボットにおいて実行する処理及び自装置において実行する処理を決定し、
前記通信部は、さらに、前記ロボットにおいて実行する処理に関する情報を前記ロボットへ送信する、付記１乃至４のいずれか１項に記載の監視サーバ。
（付記６）
前記分散処理制御部は、
前記ロボットにおける処理負荷が所定の第１の処理負荷よりも低い場合、前記追跡動作環境情報及び前記通信品質に関する情報にかかわらず、前記画像解析処理に含まれるすべての処理を前記ロボットにおいて実行することを決定する、付記５に記載の監視サーバ。
（付記７）
前記分散処理制御部は、
前記ロボットにおける処理負荷が所定の第１の処理負荷よりも高く、前記通信品質が所定の第１の通信品質よりも良好である場合、前記ロボットが、未加工画像データを送信することを決定し、前記画像解析処理に含まれるすべての処理を自装置において実行することを決定する、付記５又は６に記載の監視サーバ。
（付記８）
前記分散処理制御部は、
前記通信品質が前記所定の第１の通信品質よりも不良であり、かつ第２の通信品質よりも良好であって、前記第１の通信品質が前記第２の通信品質よりも良好である場合、並びに、前記ロボットにおける処理負荷が前記所定の第１の処理負荷よりも高く、かつ第２の処理負荷よりも低く、前記第１の処理負荷が前記第２の処理負荷よりも低い場合、
前記ロボットが、前記未加工画像データを圧縮した画像データを送信するか、もしくは、前記ロボットが、前記画像解析処理に含まれる前記追跡対象物の特徴量を抽出する特徴量抽出処理を実行するか、を決定する、付記７に記載の監視サーバ。
（付記９）
前記分散処理制御部は、
前記追跡動作環境情報において、前記追跡対象物の他に、移動する対象物が含まれていない場合、前記ロボットが、前記画像解析処理に含まれる前記追跡対象物の特徴量を抽出する特徴量抽出処理を実行することを決定する、付記８に記載の監視サーバ。
（付記１０）
前記分散処理制御部は、
前記追跡動作環境情報において、前記追跡対象物の他に、移動する対象物が含まれている場合、前記ロボットが、前記未加工画像データを圧縮した画像データを送信することを決定する、付記８又は９に記載の監視サーバ。
（付記１１）
前記分散処理制御部は、
前記ロボットにおける処理負荷が所定の第２の処理負荷よりも高く、前記第２の処理負荷が前記第１の処理負荷よりも高い場合、並びに、前記通信品質が所定の第１の通信品質よりも良好である場合、前記ロボットが未加工画像データを送信することを決定し、前記画像解析処理に含まれるすべての処理を自装置において実行することを決定する、付記６に記載の監視サーバ。
（付記１２）
前記分散処理制御部は、
前記通信品質が第２の通信品質よりも良好であって、前記第２の通信品質が前記第１の通信品質よりも不良である場合、並びに、前記ロボットにおける処理負荷が前記所定の第１の処理負荷よりも高く、かつ第２の処理負荷よりも低く、前記第１の処理負荷が前記第２の処理負荷よりも低い場合、
前記ロボットが、未加工画像データを圧縮した画像データを送信するか、もしくは、前記ロボットが、前記画像解析処理に含まれる前記追跡対象物の特徴量を抽出する特徴量抽出処理を実行するか、を決定する、付記１１に記載の監視サーバ。
（付記１３）
前記分散処理制御部は、
前記追跡動作環境情報において、前記追跡対象物の他に、移動する対象物が含まれていない場合、前記ロボットが、前記画像解析処理に含まれる前記追跡対象物の特徴量を抽出する特徴量抽出処理を実行することを決定する、付記１２に記載の監視サーバ。
（付記１４）
前記分散処理制御部は、
前記追跡動作環境情報において、前記追跡対象物の他に、移動する対象物が含まれている場合、前記ロボットが、前記未加工画像データを圧縮した画像データを送信することを決定する、付記１２又は１３に記載の監視サーバ。
（付記１５）
前記画像解析処理は、
前記追跡対象物の特徴量を抽出する特徴量抽出処理、前記追跡対象物の物体を認識する物体認識処理、及び前記追跡対象物を特定する物体特定処理を含む、付記５乃至１４のいずれか１項に記載の監視サーバ。
（付記１６）
追跡対象物を追跡するロボットから定期的に送信された画像データを受信する通信部と、
前記画像データから判別される前記追跡対象物の移動速度情報に基づいて、前記追跡対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記ロボットにおいて実行する処理及び自装置において実行する処理を決定する分散処理制御部と、を備え、
前記通信部は、
前記ロボットにおいて実行する処理に関する情報を前記ロボットへ送信する、監視サーバ。
（付記１７）
前記通信部は、ＡＲサービスを提供する前記情報処理装置であるデバイスから定期的に送信された画像データ、前記デバイスとの間の通信ネットワークの通信品質に関する情報、及び前記デバイスの処理負荷情報を受信し、
前記分散処理制御部は、前記画像データから判別される対象物の撮影状態、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記デバイスにおいて実行する処理及び自装置において実行する処理を決定し、
前記通信部は、さらに、前記デバイスにおいて実行する処理に関する情報を前記デバイスへ送信する、付記１乃至４のいずれか１項に記載の監視サーバ。
（付記１８）
前記分散処理制御部は、
前記デバイスにおける処理負荷が所定の第１の処理負荷よりも低い場合、前記撮影状態及び前記通信品質に関する情報にかかわらず、前記画像解析処理に含まれるすべての処理を前記デバイスにおいて実行することを決定する、付記１７に記載の監視サーバ。
（付記１９）
前記分散処理制御部は、
前記デバイスにおける処理負荷が所定の第１の処理負荷よりも高く、前記通信品質が所定の第１の通信品質よりも良好である場合、前記デバイスが、未加工画像データを送信することを決定し、前記画像解析処理に含まれるすべての処理を自装置において実行することを決定する、付記１７又は１８に記載の監視サーバ。
（付記２０）
前記分散処理制御部は、
前記通信品質が前記所定の第１の通信品質よりも不良であり、かつ第２の通信品質よりも良好であって、前記第１の通信品質が前記第２の通信品質よりも良好である場合、並びに、前記デバイスにおける処理負荷が前記所定の第１の処理負荷よりも高く、かつ第２の処理負荷よりも低く、前記第１の処理負荷が前記第２の処理負荷よりも低い場合、
前記デバイスが、複数の画像処理のうち一部の処理を実行すること、を決定する、付記１９に記載の監視サーバ。
（付記２１）
前記分散処理制御部は、
前記撮影状態において、前記対象物が未加工画像データの一部の領域のみに表示される場合、前記デバイスが、前記対象物の特徴量を抽出する特徴量抽出処理を実行する、もしくは、前記対象物のみを抽出するトリミング処理を実行することを決定する、付記２０に記載の監視サーバ。
（付記２２）
前記分散処理制御部は、
前記撮影状態において、前記対象物が予め定められた大きさよりも大きく表示される場合、前記デバイスが、前記対象物の特徴量を抽出する特徴量抽出処理を実行する、もしくは、前記未加工画像データを圧縮した画像データを送信することを決定する、付記２０又は２１に記載の監視サーバ。
（付記２３）
前記分散処理制御部は、
前記撮影状態において、前記対象物のみが表示される場合、前記デバイスが、前記対象物の特徴量を抽出する特徴量抽出処理を実行する、前記未加工画像データをグレースケール化する、前記未加工画像データを２値化する、もしくはエッジ検出することを決定する、付記２０乃至２２のいずれか１項に記載の監視サーバ。
（付記２４）
前記分散処理制御部は、
前記デバイスにおける処理負荷が第２の処理負荷よりも高く、前記第２の処理負荷が第１の処理負荷よりも高い場合、並びに、前記通信品質が所定の第１の通信品質よりも良好である場合、前記デバイスが、未加工画像データを送信することを決定し、前記画像解析処理に含まれるすべての処理を自装置において実行することを決定する、付記１７又は１８に記載の監視サーバ。
（付記２５）
前記分散処理制御部は、
前記通信品質が第２の通信品質よりも良好であって、前記第２の通信品質が前記第１の通信品質よりも不良である場合、並びに、前記デバイスにおける処理負荷が前記所定の第１の処理負荷よりも高く、かつ第２の処理負荷よりも低く、前記第１の処理負荷が前記第２の処理負荷よりも低い場合、
前記デバイスが、複数の前記画像解析処理のうち一部の処理を実行すること、を決定する、付記２４に記載の監視サーバ。
（付記２６）
前記分散処理制御部は、
前記撮影状態において、前記対象物が未加工画像データの一部の領域のみに表示される場合、前記デバイスが、前記対象物の特徴量を抽出する特徴量抽出処理を実行する、もしくは、前記対象物のみを抽出するトリミング処理を実行することを決定する、付記２５に記載の監視サーバ。
（付記２７）
前記分散処理制御部は、
前記撮影状態において、前記対象物が予め定められた大きさよりも大きく表示される場合、前記デバイスが、前記未加工画像データを圧縮した画像データを送信する、もしくは、前記対象物の特徴量を抽出する特徴量抽出処理を実行することを決定する、付記２５又は２６に記載の監視サーバ。
（付記２８）
前記分散処理制御部は、
前記撮影状態において、前記対象物のみが表示される場合、前記デバイスが、前記対象物の特徴量を抽出する特徴量抽出処理を実行する、前記未加工画像データをグレースケール化する、前記未加工画像データを２値化する、もしくはエッジ検出することを決定する、付記２５乃至２７のいずれか１項に記載の監視サーバ。
（付記２９）
情報処理装置で取得された画像データを受信し、
要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する、分散処理決定方法。
（付記３０）
追跡対象物を追跡する前記情報処理装置であるロボットから定期的に送信された画像データ、前記ロボットとの間の通信ネットワークの通信品質に関する情報、及び前記ロボットの処理負荷情報を受信し、
前記処理を決定する際に、前記画像データから判別される前記追跡対象物の追跡動作環境情報、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記追跡対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記ロボットにおいて実行する処理及び自装置において実行する処理を決定し、
さらに、前記ロボットにおいて実行する処理に関する情報を前記ロボットへ送信する、付記２９に記載の分散処理決定方法。
（付記３１）
ＡＲサービスを提供する前記情報処理装置であるデバイスから定期的に送信された画像データ、前記デバイスとの間の通信ネットワークの通信品質に関する情報、及び前記デバイスの処理負荷情報を受信し、
前記処理を決定する際に、前記画像データから判別される対象物の撮影状態、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記デバイスにおいて実行する処理及び自装置において実行する処理を決定し、
さらに、前記デバイスにおいて実行する処理に関する情報を前記デバイスへ送信する、付記２９に記載の分散処理決定方法。
（付記３２）
情報処理装置で取得された画像データを受信し、
要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する、ことをコンピュータに実行させるプログラム。
（付記３３）
追跡対象物を追跡する前記情報処理装置であるロボットから定期的に送信された画像データ、前記ロボットとの間の通信ネットワークの通信品質に関する情報、及び前記ロボットの処理負荷情報を受信し、
前記処理を決定する際に、前記画像データから判別される前記追跡対象物の追跡動作環境情報、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記追跡対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記ロボットにおいて実行する処理及び自装置において実行する処理を決定し、
さらに、前記ロボットにおいて実行する処理に関する情報を前記ロボットへ送信することをコンピュータに実行させる付記３２に記載のプログラム。
（付記３４）
ＡＲサービスを提供する前記情報処理装置であるデバイスから定期的に送信された画像データ、前記デバイスとの間の通信ネットワークの通信品質に関する情報、及び前記デバイスの処理負荷情報を受信し、
前記処理を決定する際に、前記画像データから判別される対象物の撮影状態、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記デバイスにおいて実行する処理及び自装置において実行する処理を決定し、
さらに、前記デバイスにおいて実行する処理に関する情報を前記デバイスへ送信することをコンピュータに実行させる付記３２に記載のプログラム。
【符号の説明】
【０１５４】
１０  監視サーバ
１１  通信部
１２  分散処理制御部
２０  ロボット
３０  追跡対象物
４０  監視サーバ
４１  通信部
４２  分散処理制御部
４３  画像解析部
４４  動作決定部
５０  ロボット
５１  通信部
５２  分散処理制御部
５３  センサ情報取得部
５４  画像解析部
５５  動作決定部
５６  ロボット制御部
６０  小型デバイス
６１  通信部
６２  分散処理制御部
６３  センサ情報取得部
６４  画像解析部
６５  動作決定部
６６  画像表示制御部
【図１】
2017038100.tif 000003
【図２】
2017038100.tif 000004
【図３】
2017038100.tif 000005
【図４】
2017038100.tif 000006
【図５】
2017038100.tif 000007
【図６】
2017038100.tif 000008
【図７】
2017038100.tif 000009
【図８】
2017038100.tif 000010
【図９】
2017038100.tif 000011
【図１０】
2017038100.tif 000012
【図１１】
2017038100.tif 000013
【図１２】
2017038100.tif 000014
【図１３】
2017038100.tif 000015
【図１４】
2017038100.tif 000016
【図１５】
2017038100.tif 000017
【図１６】
2017038100.tif 000018
【手続補正書】
【提出日】平成30年2月28日(2018.2.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
情報処理装置で取得された画像データを受信する通信手段と、
要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する分散処理制御手段と、を備える、監視サーバ。
【請求項２】
前記分散処理制御手段は、前記画像解析処理の出力の種類に基づいて、前記画像解析処理の内容を決定する、請求項１に記載の監視サーバ。
【請求項３】
前記通信手段は、さらに前記情報処理装置との間の通信ネットワークの通信品質に関する情報または前記情報処理装置の処理負荷情報の少なくとも一方を受信し、
前記分散処理制御手段は、前記画像解析処理の内容、前記通信品質に関する情報、または前記処理負荷情報のうち少なくとも１つに基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する、請求項１又は２に記載の監視サーバ。
【請求項４】
前記分散処理制御手段は、前記画像データに基づくアプリケーションの実行状況の情報に基づいて、前記画像解析処理の出力の種類を決定する、請求項１乃至３のいずれか１項に記載の監視サーバ。
【請求項５】
前記通信手段は、追跡対象物を追跡する前記情報処理装置であるロボットから定期的に送信された画像データ、前記ロボットとの間の通信ネットワークの通信品質に関する情報、及び前記ロボットの処理負荷情報を受信し、
前記分散処理制御手段は、前記画像データから判別される前記追跡対象物の追跡動作環境情報、前記通信品質に関する情報、及び前記処理負荷情報のうち少なくとも１つに基づいて、前記追跡対象物を特定する画像解析処理であって、複数の処理を含む前記画像解析処理のうち前記ロボットにおいて実行する処理及び自装置において実行する処理を決定し、
前記通信手段は、さらに、前記ロボットにおいて実行する処理に関する情報を前記ロボットへ送信する、請求項１乃至４のいずれか１項に記載の監視サーバ。
【請求項６】
前記分散処理制御手段は、
前記ロボットにおける処理負荷が所定の第１の処理負荷よりも低い場合、前記追跡動作環境情報及び前記通信品質に関する情報にかかわらず、前記画像解析処理に含まれるすべての処理を前記ロボットにおいて実行することを決定する、請求項５に記載の監視サーバ。
【請求項７】
前記分散処理制御手段は、
前記ロボットにおける処理負荷が所定の第１の処理負荷よりも高く、前記通信品質が所定の第１の通信品質よりも良好である場合、前記ロボットが、未加工画像データを送信することを決定し、前記画像解析処理に含まれるすべての処理を自装置において実行することを決定する、請求項５又は６に記載の監視サーバ。
【請求項８】
前記分散処理制御手段は、
前記通信品質が前記所定の第１の通信品質よりも不良であり、かつ第２の通信品質よりも良好であって、前記第１の通信品質が前記第２の通信品質よりも良好である場合、並びに、前記ロボットにおける処理負荷が前記所定の第１の処理負荷よりも高く、かつ第２の処理負荷よりも低く、前記第１の処理負荷が前記第２の処理負荷よりも低い場合、
前記ロボットが、前記未加工画像データを圧縮した画像データを送信するか、もしくは、前記ロボットが、前記画像解析処理に含まれる前記追跡対象物の特徴量を抽出する特徴量抽出処理を実行するか、を決定する、請求項７に記載の監視サーバ。
【請求項９】
情報処理装置で取得された画像データを受信し、
要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する、分散処理決定方法。
【請求項１０】
情報処理装置で取得された画像データを受信し、
要求される前記画像データの画像解析処理の出力の種類に基づいて、前記画像解析処理のうち、前記情報処理装置で実行する処理および自装置で実行する処理を決定する、ことをコンピュータに実行させるプログラム。
【国際調査報告】
2017038100.tif 000019
2017038100.tif 000020
2017038100.tif 000021
2017038100.tif 000022