(57)【要約】【課題】撮像する対象物との距離を適切に保つことのできる移動体をより低いコストで提供する。【解決手段】対象物を追尾する移動体１３０であって、撮像部１３２と、撮像部１３２が撮像した画像のうち対象物に相当する対象部分を特定する特定部１３５と、対象部分に含まれるピクセル数を取得する取得部１３６と、対象部分に含まれるピクセル数に基づいて、移動体の移動を制御する制御部１３７と、を備える移動体１３０。【選択図】図１１
2020087074.tif 000002
【特許請求の範囲】
【請求項１】
対象物を追尾する移動体であって、
撮像部と、
前記撮像部が撮像した画像のうち前記対象物に相当する対象部分を特定する特定部と、
前記対象部分に含まれるピクセル数を取得する取得部と、
前記対象部分に含まれるピクセル数に基づいて、前記移動体の移動を制御する制御部と、を備える移動体。
【請求項２】
前記対象部分に含まれるピクセル数に関する第１閾値と、前記第１閾値よりも大きい第２閾値とを設定する設定部をさらに備え、
前記制御部は、前記対象部分に含まれるピクセル数が前記第１閾値と前記第２閾値との間の値となるように、前記移動体の移動を制御する、
請求項１に記載の移動体。
【請求項３】
前記制御部は、前記対象部分に含まれるピクセル数が前記第１閾値以下である場合、前記対象物に近づくように前記移動体の移動を制御する、
請求項２に記載の移動体。
【請求項４】
前記制御部は、前記対象部分に含まれるピクセル数が前記第２閾値以上である場合、前記対象物から遠ざかるように前記移動体の移動を制御する、
請求項２又は３に記載の移動体。
【請求項５】
前記制御部は、前記撮像部が撮像した画像内における前記対象部分の位置に基づいて、前記移動体の向きを制御する、
請求項１から４のいずれか一項に記載の移動体。
【請求項６】
前記制御部は、前記対象部分の位置と、前記画像内の所定領域の位置との関係に基づいて前記移動体の向きを制御する、
請求項５に記載の移動体。
【請求項７】
前記制御部は、前記撮像部が撮像した画像内における前記対象部分の位置に基づいて、前記撮像部の向きを制御する、
請求項５に記載の移動体。
【請求項８】
前記撮像部が撮像した画像を情報処理装置に送信する送信部をさらに備える、
請求項１から７のいずれか一項に記載の移動体。
【請求項９】
前記移動体の移動量に基づいて前記対象物の移動量を推定する移動量推定部をさらに備え、
前記送信部は、推定された移動量を前記情報処理装置に送信する、
請求項８に記載の移動体。
【請求項１０】
情報処理装置に、
撮像するステップと、
撮像した画像のうち対象物に相当する対象部分を特定するステップと、
前記対象部分に含まれるピクセル数を取得するステップと、
前記対象部分に含まれるピクセル数に基づいて、移動体の移動を制御するステップと、を実行させるプログラム。
【請求項１１】
情報処理装置が、
撮像するステップと、
撮像した画像のうち対象物に相当する対象部分を特定するステップと、
前記対象部分に含まれるピクセル数を取得するステップと、
前記対象部分に含まれるピクセル数に基づいて、移動体の移動を制御するステップと、を実行する制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体、プログラム及び制御方法に関する。
【背景技術】
【０００２】
近年、ホームロボットやドローンといった移動体に関する開発が盛んに行われており、移動体の様々な活用方法が生まれている。例えば、室内を動き回るペットや野外を逃走する不審者といった対象物を、カメラを搭載した移動体が追尾しつつ撮像し、画像をユーザの端末に送信するという活用方法が存在する（例えば、特許文献１）。
【０００３】
このように対象物を移動体が追尾する場合、移動体は、対象物と衝突することや対象物から離れすぎることを防止する必要がある。そこで、移動体に、奥行き方向の情報を取得し対象物との距離を計測可能なステレオカメラを搭載し、対象物との距離を適切に保ちつつ対象物を追尾させる場合がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１８−０９３５３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、奥行き方向の情報を取得しない他のカメラと比較してステレオカメラは高額である場合が多く、上記の方法では移動体の製造に大きいコストがかかることがある。
【０００６】
そこで、本発明は、撮像する対象物との距離を適切に保つことのできる移動体をより低いコストで提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様に係る移動体は、対象物を追尾する移動体であって、撮像部と、前記撮像部が撮像した画像のうち対象物に相当する対象部分を特定する特定部と、対象部分に含まれるピクセル数を取得する取得部と、対象部分に含まれるピクセル数に基づいて、移動体の移動を制御する制御部と、を備える。
【０００８】
この態様によれば、移動体は、撮像部が撮像した画像に含まれる対象部分のピクセル数に基づいて、対象物との距離を適切に保ちつつ対象物の追尾を行うことができる。すなわち、対象物との距離を計測するためのステレオカメラ等を搭載する必要がないため、移動体の製造コストをより低く抑えることができる。
【発明の効果】
【０００９】
本発明によれば、撮像する対象物との距離を適切に保つことのできる移動体をより低いコストで提供することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態に係る通信システムを示す図である。
【図２】端末及びサーバのハードウェア構成の一例を示す図である。
【図３】端末の機能ブロック構成の一例を示す図である。
【図４】移動体の外観の一例を示す図である。
【図５】移動体のハードウェア構成の一例を示す図である。
【図６】移動体の機能ブロック構成の一例を示す図である。
【図７】撮像部によって撮像された画像の一例を示す図である。
【図８】撮像部によって撮像された画像の一例を示す図である。
【図９】撮像部によって撮像された画像の一例を示す図である。
【図１０】通信システムによる処理の一例を示すシーケンス図である。
【図１１】移動体による移動処理の一例を示すフローチャートである。
【図１２】移動体による対象物探索処理の一例を示す図ある。
【発明を実施するための形態】
【００１１】
添付図面を参照して、本発明の実施形態について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
【００１２】
図１は、本実施形態に係る通信システム１を示す図である。通信システム１は、移動する対象物を移動体１３０によって追尾させるシステムであって、移動体１３０に搭載された撮像部により対象物を撮像し、撮像した対象物の画像（静止画像及び動画像を含む）をユーザの端末１２０に送信するシステムである。なお、移動体１３０が追尾する対象物は、移動する任意の物体（生物及び無生物を含む。）であってもよい。
【００１３】
通信システム１は、サーバ１１０、端末１２０及び移動体１３０を備える。サーバ１１０、端末１２０及び移動体１３０は、インターネットや無線ＬＡＮ等の通信ネットワークＮを介して互いに通信可能に接続される。なお、通信システム１が備えるサーバ１１０、端末１２０及び移動体１３０の数は一つに限られず、複数備えてもよい。また、サーバ１１０は、１つの機器から構成されてもよいし、複数の機器から構成されてもよいし、クラウド上で実現されるサーバであってもよい。
【００１４】
端末１２０は、例えば、スマートフォン、タブレット端末、携帯電話機、パーソナルコンピュータ（ＰＣ）、携帯情報端末（ＰＤＡ:Personal Digital Assistant）、家庭用ゲーム機器等、どのような端末が用いられてもよい。なお、本実施形態において、サーバ１１０及び端末１２０を区別する必要のない場合には、両者をまとめて情報処理装置２００と称することがある。
【００１５】
また、本実施形態における移動体１３０は、室内を移動するホームロボットであるが、移動体１３０はホームロボットに限られず、屋外を移動するロボットやドローン、自動搬送車（ＡＧＶ：Automatic  Guided  Vehicle）、パーソナルモビリティ、自動車等であってもよい。
【００１６】
図２は、情報処理装置２００のハードウェア構成の一例を示す図である。情報処理装置２００は、ＣＰＵ（Central Processing Unit）２０１、記憶装置２０２、通信ＩＦ（Interface）２０３、入力デバイス２０４及び出力デバイス２０５を有する。これらの各構成は、相互にデータ送受信可能に接続される。
【００１７】
ＣＰＵ２０１は、記憶装置２０２に記憶されたプログラムの実行に関する制御やデータの演算、加工を行う制御部である。ＣＰＵ２０１は、通信ＩＦ２０３からデータを受け取り、データの演算結果を出力デバイス２０５に出力したり、記憶装置２０２に記憶したりしてもよい。
【００１８】
記憶装置２０２は、各種情報を記憶するデバイスである。記憶装置２０２は、データの書き換えが可能な揮発性の記憶媒体やデータの読み出しのみが可能な不揮発性の記憶媒体であってもよい。
【００１９】
通信ＩＦ２０３は、情報処理装置２００を通信ネットワークＮに接続するデバイスである。通信ＩＦ２０３は、情報処理装置２００の外部に設けられてもよい。その場合、通信ＩＦ２０３は、例えばＵＳＢ(Universal Serial Bus)等のインタフェースを介して情報処理装置２００に接続される。
【００２０】
入力デバイス２０４は、ユーザからの情報の入力を受け付けるためのデバイスである。入力デバイス２０４は、例えばタッチパネル、ボタン、キーボード、マウス及びマイク等であってもよい。
【００２１】
出力デバイス２０５は、情報を出力するためのデバイスである。出力デバイス２０５は、例えば液晶ディスプレイ、有機ＥＬ(Electronic Luminescent)ディスプレイ及びスピーカ等であってもよい。
【００２２】
図３は、端末１２０の機能ブロック構成の一例を示す図である。端末１２０は、通信部１２１、入力受付部１２２、表示制御部１２３、撮像部１２４及び記憶部１２５を含む。通信部１２１、入力受付部１２２、表示制御部１２３、撮像部１２４及び記憶部１２５は、端末１２０のＣＰＵ２０１が、記憶装置２０２に記憶されたプログラムを実行することにより実現することができる。当該プログラムは、サーバ１１０からダウンロードされて端末１２０にインストール可能なプログラム（アプリケーション）であってもよい。また、当該プログラムは、記憶媒体に格納することができる。当該プログラムを格納した記憶媒体は、コンピュータ読み取り可能な非一時的な記憶媒体（Non-transitory computer readable medium）であってもよい。非一時的な記憶媒体は、特に限定されないが、例えば、ＵＳＢメモリ又はＣＤ−ＲＯＭ(Compact Disc Read Only Memory)等の記憶媒体であってもよい。
【００２３】
通信部１２１は、通信ネットワークＮを介してサーバ１１０又は移動体１３０と情報の送受信を行う。例えば、通信部１２１は、追尾を行う対象物を設定する際、端末１２０の撮像部１２４が撮像した対象物の画像を移動体１３０の通信部１３１へ送信してもよい。また、通信部１２１は、移動体１３０の撮像部１３２が撮像した対象物の画像を移動体１３０が備える通信部１３１から受信してもよい。
【００２４】
入力受付部１２２は、タッチパネル等の入力デバイス２０４を介して、ユーザから各種情報の入力を受け付ける。
【００２５】
表示制御部１２３は、サーバ１１０や移動体１３０から受信した情報に基づき、液晶ディスプレイ等の出力デバイス２０５に各種の画面を表示する。例えば、表示制御部１２３は、移動体１３０から受信した対象物の画像を出力デバイス２０５のディスプレイに表示してもよい。
【００２６】
撮像部１２４は、画像を撮像する。例えば、撮像部１２４は、ＣＣＤイメージセンサ、ＣＭＯＳイメージセンサ、レンズ等の撮像素子を含む。撮像部１２４は、入力受付部１２２がユーザから受け付けた撮像指示に基づいて画像の撮像を行ってもよい。撮像部１２４により撮像された画像は、記憶部１２５に記憶されてもよい。
【００２７】
記憶部１２５は、端末１２０の撮像部１２４により撮像された画像等の各種データを記憶する。記憶部１２５は、通信部１２１が移動体１３０から受信したデータ（移動体１３０が撮像した画像等）を記憶してもよい。
【００２８】
図４は、移動体１３０の外観の一例を示す図である。移動体１３０は、本体部１６０、車輪１６１、車軸１６２備える。また、本体部１６０には、撮像部１３２が調整部１５０を介して搭載される。なお、移動体１３０の外観は図４の例に限定されない。例えば車軸１６２は二つに限らず任意の個数を備えてもよい。
【００２９】
本実施形態において、移動体１３０は、移動体１３０に設けられた撮像部１３２が撮像した画像に含まれる対象物に相当する部分（以下、対象部分ともいう。）のピクセル数に基づいて移動を行う。例えば、移動体１３０は、対象部分のピクセル数が予め設定された目標ピクセル数になるように移動を行う。この場合、対象部分のピクセル数が目標ピクセル数よりも大きい場合には、移動体１３０は、対象部分のピクセル数が小さくなるように対象物から遠ざかる。一方、対象部分のピクセル数が目標ピクセル数よりも小さい場合には、移動体１３０は、対象部分のピクセル数が大きくなるように対象物へ近づく。目標ピクセル数は、予め定められた値であってもよいし、端末１２０の入力受付部１２２がユーザから目標ピクセル数の設定を受け付けることで定められる値であってもよい。また、移動体１３０は、対象部分のピクセル数が、第１閾値と第２閾値（＞第１閾値）との間になるように移動してもよい。
【００３０】
本体部１６０は、移動体１３０を構成する各種部品が収容された筐体である。本実施形態において、本体部１６０は、円盤形状を呈するが、本体部の形状はこれに限られない。移動体１３０は、四つの車輪１６１を備える。図４の矢印で示すように、移動体１３０において撮像部１３２が位置する方向を前方とし、前方と逆方向を後方とすると、移動体１３０は、前方側及び後方側にそれぞれ二つの車輪１６１を有する。移動体１３０は、本体部１６０を貫くように位置する二つの車軸１６２を備え、一方の車軸１６２は前方側の二つの車輪１６１同士を接続し、他方の車軸１６２は後方側の二つの車輪１６１同士を接続する。
【００３１】
本体部１６０には、車輪１６１を回転させる駆動モータ（不図示）が収容される。車輪１６１は、当該駆動モータに車軸１６２等を介して接続され、駆動モータからの駆動力を動力源に回転する。移動体１３０は、車輪１６１が回転することにより、図４に示す前後方向に移動する。また、移動体１３０は、車輪１６１の向きを調整する調整機構（不図示）を備え、図４の矢印で示す左右方向にも移動可能である。駆動モータや調整機構の動作は、後述する制御部１３７により制御される。
【００３２】
本体部１６０の前方側には、調整部１５０を介して撮像部１３２が搭載される。撮像部１３２は、画像を撮像する。撮像部１３２は、常時撮像を行ってもよいし、所定の間隔ごと、又は、ユーザからの撮像指示が端末１２０を介して入力された場合に撮像を行ってもよい。
【００３３】
調整部１５０は、撮像部１３２の向きを調整する。調整部１５０は、内部に駆動モータ等が収容され、撮像部１３２の向きを左右方向に調整可能である。なお、調整部１５０は、左右方向に限らず、撮像部１３２の向きを上下方向（調整部１５０の軸方向）に調整可能な設計でもよい。調整部１５０の動作は、後述する制御部１３７により制御されてもよい。
【００３４】
図５は、移動体１３０のハードウェア構成の一例を示す図である。移動体１３０は、ＣＰＵ３０１、記憶装置３０２、通信ＩＦ３０３、入力デバイス３０４、出力デバイス３０５及び駆動モータ３０６を有する。これらの各構成は、相互にデータ送受信可能に接続される。
【００３５】
ＣＰＵ３０１は、記憶装置３０２に記憶されたプログラムの実行に関する制御やデータの演算、加工を行う制御部である。ＣＰＵ３０１は、通信ＩＦ３０３からデータを受け取り、データの演算結果を出力デバイス３０５に出力したり、記憶装置３０２に記憶したりしてもよい。
【００３６】
記憶装置３０２は、各種情報を記憶するデバイスである。記憶装置３０２は、データの書き換えが可能な揮発性の記憶媒体やデータの読み出しのみが可能な不揮発性の記憶媒体であってもよい。
【００３７】
通信ＩＦ３０３は、移動体１３０を通信ネットワークＮに接続するデバイスである。通信ＩＦ３０３は、移動体１３０の外部に設けられてもよい。その場合、通信ＩＦ３０３は、例えばＵＳＢ等のインタフェースを介して移動体１３０に接続される。
【００３８】
入力デバイス３０４は、ユーザからの情報の入力を受け付けるためのデバイスである。入力デバイス３０４は、例えばタッチパネル、ボタン、キーボード、マウス及びマイク等であってもよい。
【００３９】
出力デバイス３０５は、情報を出力するためのデバイスである。出力デバイス３０５は、例えば液晶ディスプレイ、有機ＥＬディスプレイ及びスピーカ等であってもよい。
【００４０】
駆動モータ３０５は、移動体１３０が有する車輪１６１を回転させるための駆動力を提供する。駆動モータ３０５から生じる駆動力は、車軸１６２を介して車輪１６１に伝達される。駆動モータ３０５の動作は、後述する制御部１３７により制御されてもよい。
【００４１】
図６は、移動体１３０の機能ブロック構成の一例を示す図である。移動体１３０は、通信部１３１、撮像部１３２、特徴取得部１３３、記憶部１３４、特定部１３５、ピクセル数取得部１３６、制御部１３７、設定部１３８、移動量推定部１３９及び位置推定部１４０を備える。
【００４２】
通信部１３１は、通信ネットワークＮを介してサーバ１１０又は端末１２０と情報の送受信を行う。例えば、通信部１３１は、移動体１３０の撮像部１３２が撮像した対象物の画像を端末１２０の通信部１２１へ送信してもよい。
【００４３】
撮像部１３２は、上述したように画像の撮像を行う。撮像部１３２が撮像した画像は、通信部１３１により端末１２０に送信されてもよい。また、撮像部１３２が撮像した画像は、記憶部１３４に撮像日時等の情報と関連付けられ保存されてもよい。
【００４４】
特徴取得部１３３は、追尾対象となる対象物の特徴を取得する。対象物の設定を行う場合、まず、ユーザは端末１２０の撮像部１２４で対象物を撮像し、撮像された画像を移動体１３０の通信部１３１に送信する。特徴取得部１３３は、通信部１３１が受信した画像に基づいて、対象物の特徴を取得する。特徴とは、撮像した画像のうち対象物に相当する部分を特定するための情報であり、対象物の形状や色等を含んでもよい。なお、対象物によっては、撮像する角度によって形や色が異なる場合がある。そのため、特徴取得部１３３は、様々な角度から対象物を撮像した画像を端末１２０から取得し、複数の画像に基づいて対象物の特徴を取得することが望ましい。特徴取得部１３３が取得した特徴は、記憶部１２５に記憶されてもよい。
【００４５】
なお、特徴取得部１３３は、端末１２０に含められてもよい。このとき、移動体１３０の通信部１３１は、端末１２０が備える特徴取得部が取得した対象物の特徴に関する情報を、通信ネットワークＮを介して端末１２０から受信してもよい。また、端末１２０が備える特徴取得部が取得した対象物の特徴に関する情報は、端末１２０の記憶部１２５に記憶されてもよい。
【００４６】
記憶部１３４は、撮像部１３２により撮像された画像や特徴取得部１３３が取得した特徴を含む各種データを記憶する。
【００４７】
特定部１３５は、撮像部１３２が撮像した画像のうち対象部分を特定する。特定部１３５は、特徴取得部１３３が取得した特徴に基づいて対象部分を特定してもよい。図７は、撮像部１３２により撮像された画像１７０の一例である。画像には、犬Ｄが含まれる。また、図７に示す方眼は、画像１７０のピクセルを表す。例えば、当該犬Ｄが追尾する対象物であった場合、上述した特徴取得部１３３は、対象物の設定の際に犬Ｄの形状や色等を特徴として取得する。特定部１３５は、特徴取得部１３３が取得した犬Ｄの特徴に基づいて、撮像部１３２が撮像した画像１７０のうち犬Ｄに相当する部分を特定する。例えば、特定部１３５は、パターンマッチングを用いて対象部分を特定してもよい。この場合、特徴取得部１３３により取得された形状や色等を、特定部１３５が特定パターンとして保持し、撮像された画像から特定パターンと一致するパターンを特定する。また、特定パターンについては、サイズが異なるパターンが複数用意されるとよい。
【００４８】
なお、対象部分の特定は、上述した方法に限られない。例えば、サイズや向きが異なる対象物の画像を教師データとして学習させた学習済みモデルが準備され、特定部１３５は、入力された画像に対し、学習済みモデルを用いて対象物を含むか否かを判定してもよい。特定部１３５は、対象物を含むと判定された画像に対し、対象物に相当する対象部分の特定を行ってもよい。当該学習済みモデルは、移動体１３０又はサーバ１１０が備えてもよい。また、特定部１３５は、一度対象部分が特定されると、その後は、対象部分内の画素値と、対象部分外の画素値との違いを用いて輪郭（境界）を特定し、特定した輪郭によって対象部分を特定してもよい。これにより、特定部１３５の処理負荷を軽減することが可能になる。
【００４９】
ピクセル数取得部１３６は、対象部分に含まれるピクセル数を取得する。本実施形態において、ピクセル数取得部１３６は、図７に示す画像１７０のうち、特定部１３５が特定した犬Ｄに相当する部分のピクセル数を取得する。このとき、対象部分とその他の部分が混在するピクセル（対象部分の輪郭に位置するピクセル）については、対象部分に含まれるピクセルとしてカウントされてもよいし、対象部分に含まれないピクセルとしてカウントされなくてもよい。ピクセル数取得部１３６が取得したピクセル数は、制御部１３７に送出される。
【００５０】
制御部１３７は、移動体１３０の移動を制御する。制御部１３７は、車輪１６１の動力源である駆動モータの動作を制御することにより、移動体１３０の移動を制御してもよい。制御部１３７は、ピクセル数取得部１３６により取得されたピクセル数に基づいて移動体１３０の移動を制御する。例えば、ピクセル数取得部１３６により取得されたピクセル数が目標ピクセル数よりも大きい場合、制御部１３７は、対象物から遠ざかるように移動体１３０の動きを制御する。一方、ピクセル数取得部１３６により取得されたピクセル数が目標ピクセル数よりも小さい場合、制御部１３７は、対象物に近づくように移動体１３０の動きを制御する。
【００５１】
図８は、撮像部１３２が撮像した犬Ｄの画像の一例を示す図である。図８（ａ）は、対象物である犬Ｄが大きく撮像された画像であり、図８（ｂ）は犬Ｄが小さく撮像された画像である。
【００５２】
図８（ａ）は、ピクセル数取得部１３６により取得された対象部分（犬Ｄに相当する部分）のピクセル数が目標ピクセル数よりも大きい場合を示す。このとき、制御部１３７は、車輪１６１の駆動モータ等を制御し、移動体１３０を犬Ｄから離れるように移動させる。
【００５３】
一方、図８（ｂ）は、ピクセル数取得部１３６により取得された対象部分（犬Ｄに相当する部分）のピクセル数が目標ピクセル数よりも小さい場合を示す。このとき、制御部１３７は、車輪１６１の駆動モータ等を制御し、移動体１３０を犬Ｄに近づくように移動させる。
【００５４】
なお、対象物によっては、撮像する方向によって大きさが異なる。例えば、犬Ｄの場合、前方側（顔側）から撮像した場合よりも、側方側（腹部側）から撮像した場合の方が、犬Ｄからの距離が同じであっても大きく見える。すなわち、対象物との距離が同じ状況であっても、対象物の向きが異なると、撮像部１３２が撮像した画像のうち対象部分に含まれるピクセル数は異なる。そのため、目標ピクセル数は、対象物の向きに応じて複数設定されていてもよい。このとき、特定部１３５は、パターンマッチングなどにより対象物の向きも併せて特定し、制御部１３７は、対象物の向きに応じて目標ピクセル数を適宜選択し、ピクセル数取得部１３６により取得された対象部分のピクセル数と比較してもよい。
【００５５】
また、制御部１３７は、移動体１３０の向きを制御する。制御部１３７は、車輪１６１の向きを調整する調整機構の動作を制御することにより、移動体の向きを制御してもよい。制御部１３７は、撮像部１３２が撮像した画像内における対象部分の位置に基づいて、移動体１３０の向きを制御してもよい。例えば、制御部１３７は、撮像した画像内において対象部分が右寄りに位置する場合には、移動体１３０が右側に向くように制御する。一方、制御部１３７は、撮像した画像内において対象部分が左寄りに位置する場合には、移動体１３０が左側に向くように制御する。そうすることで、移動体１３０が対象物の位置する方向に向かって移動するため、撮像部１３２の画角から対象物が外れてしまう蓋然性が低下する。
【００５６】
図９は、撮像部１３２が撮像した犬Ｄの画像の一例を示す図である。図９（ａ）は、対象部分である犬Ｄに相当する部分が右寄り位置する画像である。このとき、制御部１３７は、移動体１３０が右側に向くよう制御する。一方、図９（ｂ）は、犬Ｄに相当する部分が左寄りに位置する画像である。このとき、制御部１３７は、移動体１３０が左側に向くよう制御する。
【００５７】
また、制御部１３７は、撮像部１３２が撮像した画像内における対象部分の位置と、画像内の所定領域の位置との関係に基づいて移動体１３０の向きを制御してもよい。例えば、所定領域として、画像内の中央領域が指定されている場合、制御部１３７は、当該中央領域に対象部分が位置するように移動体１３０の向きを制御してもよい。例えば、図９（ａ）に示す例において犬Ｄに相当する部分は、中央領域よりも右寄りに位置する。そのため、制御部１３７は、犬Ｄに相当する部分が中央領域内に位置するよう、移動体１３０の向きを右側に制御する。
【００５８】
また、制御部１３７は、撮像部１３２が撮像した画像内における対象部分の位置に基づいて、撮像部１３２の向きを制御してもよい。このとき、制御部１３７は、移動体１３０全体の向きは変更せずに、撮像部１３２の向きのみを調整する制御を行ってもよい。制御部１３７は、調整部１５０を回転させる駆動モータの動作を制御することにより、撮像部１３２の向きを制御してもよい。
【００５９】
図９（ａ）に示す例において、犬Ｄに相当する部分は中央領域よりも右寄りに位置する。このとき、制御部１３７は、犬Ｄに相当する部分がより中央に位置するように撮像部１３２の向きを右側に向ける制御を実行してもよい。
【００６０】
設定部１３８は、対象部分に含まれるピクセル数に関する閾値を設定する。追尾対象となる対象物は移動体であるため、撮像部１３２が撮像した画像の対象部分に含まれるピクセル数は時間ごとに変化する。そのため、ピクセル数取得部１３６が取得したピクセル数が、目標ピクセル数からわずかにずれる度に移動体１３０の移動が行われると、移動体１３０の移動処理が煩雑となる。そこで、設定部１３８が対象部分に含まれるピクセル数に関する第１閾値と、第１閾値よりも大きい第２閾値とを設定し、制御部１３７は、当該閾値を超えた場合に移動体１３０の移動を行うようにしてもよい。設定部１３８は、目標ピクセル数に所定のピクセル数を減算した値を第１閾値として設定し、目標ピクセル数に所定のピクセル数を加算した値を第２閾値として設定してもよい。設定部１３８により設定された閾値は、記憶部１３４に記憶されてもよい。
【００６１】
移動量推定部１３９は、移動体１３０の移動量に基づいて対象物の移動量を推定する。例えば、移動量推定部１３９は、車輪１６１の動力源である駆動モータの回転数を取得し、当該回転数に基づいて、移動体１３０の移動量を算出してもよい。移動量推定部１３９は、算出した移動体１３０の移動量そのものの値を対象物の移動量と推定してもよい。また、移動量推定部１３９は、移動体１３０の移動量に所定の係数を乗じた値を対象物の移動量と推定してもよい。移動量推定部１３９により推定された対象物の移動量は、記憶部１３４に記憶されてもよい。
【００６２】
位置推定部１４０は、他のデバイスから取得した対象物の位置情報に基づいて対象物の位置を推定する。位置推定部１４０は、撮像部１３２が撮像した画像内に対象物が含まれていない場合（特定部１３５が対象部分を特定できない場合）に、対象物の位置を推定してもよい。位置推定部１４０は、例えば、室内に取り付けられた俯瞰カメラや対象物に取り付けられた送信機から対象物の位置情報を取得し、当該位置情報に基づいて対象物の位置を推定してもよい。なお、撮像部１３２によって対象物が撮像されれば移動体１３０と対象物との距離の調整は可能である。そのため、位置推定部１４０が他のデバイスから取得する対象物の位置情報は、対象物のおおよその位置が特定できる情報であればよく、対象物と移動体１３０との正確な距離が取得できる位置情報でなくともよい。
【００６３】
なお、上述した特徴取得部１３３、記憶部１３４、特定部１３５、ピクセル数取得部１３６、制御部１３７、設定部１３８、移動量推定部１３９及び位置推定部１４０は、移動体１３０ではなくサーバ１１０が備えていてもよい。
【００６４】
図１０は、通信システム１による処理の一例を示すシーケンス図である。図１０を用いて、移動体１３０が対象物を追尾し撮像する処理を説明する。
【００６５】
まず、追尾する対象物の設定が行われる。具体的には、端末１２０の撮像部１２４が、対象物を撮像する（ステップＳ１００）。対象物は、撮像する角度によって形状が異なることある。そのため、対象物を複数の角度から撮像することが望ましい。そうすることにより、後に行われる対象物の特徴を取得するステップにおいて複数の画像からより多くの特徴を取得でき、対象部分の特定精度が向上する。
【００６６】
端末１２０の通信部１２１は、撮像された画像を移動体１３０の通信部１３１に送信する（ステップＳ１０１）。移動体１３０の通信部１３１は、受信した画像を特徴取得部１３３に送出する。
【００６７】
移動体１３０の特徴取得部１３３は、通信部１３１が受信した画像に基づいて、対象物の特徴を取得する（ステップＳ１０２）。例えば、図７に示す犬Ｄの画像が対象物の画像として受信された場合、特徴取得部１３３は、犬Ｄの形状や色を特徴として取得する。特徴取得部１３３により取得された特徴は、記憶部１３４に記憶されてもよい。
【００６８】
移動体１３０の撮像部１３２は、周囲の景観を撮像する（ステップＳ１０３）。撮像部１３２は、撮像した画像を特定部１３５に送出する。
【００６９】
移動体１３０の特定部１３５は、特徴取得部１３３が取得した特徴に基づいて、撮像部１３２が撮像した画像のうち対象部分を特定する（ステップＳ１０４）。
【００７０】
移動体１３０のピクセル数取得部１３６は、特定部１３５が特定した対象部分に含まれるピクセル数を取得する（ステップＳ１０５）。
【００７１】
なお、上述した、特定部１３５が対象物の特徴を取得するステップ（ステップＳ１０２）からピクセル数取得部１３６が対象部分に含まれるピクセル数を取得するステップ（ステップＳ１０５）までの少なくともいずれかのステップは、サーバ１１０において実行されてもよい。
【００７２】
移動体１３０の制御部１３７は、ピクセル数取得部１３６が取得したピクセル数に基づいて移動体１３０の移動を制御する（ステップＳ１０６）。例えば、ピクセル数取得部１３６が取得したピクセル数が、目標ピクセル数よりも大きい場合、制御部１３７は、対象物から遠ざかるように移動体１３０の動きを制御する。一方、ピクセル数取得部１３６が取得したピクセル数が、目標ピクセル数よりも小さい場合、制御部１３７は、対象物に近づくように移動体１３０の動きを制御する。なお、目標ピクセル数は、予め定められ記憶部１３４等に記憶された値であってもよいし、対象物ごとにユーザによって設定される値であってもよい。
【００７３】
制御部１３７により移動体１３０の移動が行われた後、移動体１３０の撮像部１３２は再び画像の撮像を行う（ステップＳ１０７）。
【００７４】
移動体１３０の通信部１３１は、撮像部１３２により撮像された画像を端末１２０の通信部１２１に送信する（ステップＳ１０８）。また、通信部１３１は、撮像部１３２により撮像された画像をサーバ１１０に送信してもよい。撮像画像の送信間隔は、予め設定された間隔でもよい。例えば、３０分、又は１時間に一度、画像が送信されればよい。
【００７５】
端末１２０の表示制御部１２３は、通信部１２１が受信した画像を、端末１２０のディスプレイ等に表示する制御を行う（ステップＳ１０９）。
【００７６】
移動体１３０の記憶部１３４は、撮像部１３２により撮像された画像を記憶する（ステップＳ１１０）。記憶部１３４は、撮像部１３２が撮像した日時等の情報と関連付けて画像を保存してもよい。以上で通信システム１による処理は終了する。
【００７７】
図１１は、移動体１３０の処理の一例を示すフローチャートである。図１１は、撮像部１３２により撮像された画像に含まれる対象部分のピクセル数が設定部１３８で設定された閾値内の値をとるように、制御部１３７が移動体１３０の移動を制御する処理を示す。
【００７８】
まず、設定部１３８は、対象部分に含まれるピクセル数に関する第１閾値及び第１閾値よりも大きい第２閾値を設定する（ステップＳ１２０）。設定部１３８は、例えば、目標ピクセル数に所定のピクセル数を減算した値を第１閾値として設定し、目標ピクセル数に所定のピクセル数を加算した値を第２閾値として設定してもよい。また、設定部１３８により設定された閾値は、記憶部１３４に記憶されてもよい。
【００７９】
撮像部１３２は、画像の撮像を開始するか否かを判定する（ステップＳ１２１）。撮像部１３２は、移動体１３０の電源がオンになった場合に撮像を開始すると判定してもよいし、ユーザから撮像指示を受け付けた場合に撮像を開始すると判定してもよい。
【００８０】
撮像部１３２は、撮像を開始すると判定した場合（ステップＳ１２１：Ｙｅｓ）、画像の撮像を行う（ステップＳ１２２）。撮像部１３２は、撮像を開始すると判定しない場合（ステップＳ１２１：Ｎｏ）、再度判定処理を行う（ステップＳ１２１）。
【００８１】
撮像部１３２により画像が撮像されると、特定部１３５は、特徴取得部１３３が取得した特徴に基づいて、撮像部１３２が撮像した画像のうち対象部分を特定する（ステップＳ１２３）。
【００８２】
その後、ピクセル数取得部１３６は、特定部１３５が特定した対象部分に含まれるピクセル数を取得する（ステップＳ１２３）。ピクセル数取得部１３６は、取得したピクセル数を制御部１３７に送出する。
【００８３】
制御部１３７は、ピクセル数取得部１３６が取得したピクセル数が、設定部１３８の設定した第１閾値と第２閾値との間に含まれるか否かを判定する（ステップＳ１２５）。
【００８４】
制御部１３７は、閾値判定の結果に基づいて移動体１３０の移動を制御する（ステップＳ１２６）。例えば、ピクセル数取得部１３６が取得したピクセル数が第１閾値以下である場合、制御部１３７は、対象物に近づくように移動体１３０を移動する。一方、ピクセル数取得部１３６が取得したピクセル数が第２閾値以上である場合、制御部１３７は、対象物から遠ざかるように移動体１３０を移動する。ピクセル数取得部１３６が取得したピクセル数が、第１閾値と第２閾値との間の値である場合、制御部１３７は移動体１３０を移動する処理を実行しない。
【００８５】
制御部１３７による移動体１３０の移動処理が終了すると、撮像部１３２は、画像の撮像を行う（ステップＳ１２７）。撮像部１３２は、撮像した画像を記憶部１３４及び通信部１３１に送出してもよい。
【００８６】
記憶部１３４は、撮像部１３２が撮像した画像を記憶する。なお、記憶部１３４は、撮像部１３２による撮像の直後ではなく、任意のタイミングで画像を記憶してもよい。
【００８７】
通信部１３１は、画像を端末１２０に送信するタイミングか否かを判定する（ステップＳ１２９）。例えば、通信部１３１は、前回の画像送信から所定の時間（例えば、３０分又は１時間）が経過した場合に画像を送信するタイミングであると判定してもよいし、ユーザから画像の送信要求を受け付けた場合に画像を送信するタイミングであると判定してもよい。
【００８８】
通信部１３１は、画像を送信するタイミングであると判定した場合（ステップＳ１２９：Ｙｅｓ）、端末１２０の通信部１２１に画像を送信する（ステップＳ１３０）。一方、通信部１３１は、画像を送信するタイミングであると判定しない場合（ステップＳ１２９：Ｎｏ）、画像の送信は行わず、送信タイミングであるか否かの判定処理を再度実行する。（ステップＳ１２９）。
【００８９】
その後、撮像部１３２は、画像の撮像を終了するか否かの判定を実行する（ステップＳ１３１）。撮像部１３２は、移動体１３０の電源がオフになった場合に撮像を終了すると判定してもよいし、ユーザから撮像終了の指示を受け付けた場合に撮像を終了すると判定してもよい。
【００９０】
撮像部１３２は、画像の撮像を終了すると判定した場合（ステップＳ１３１：Ｙｅｓ）、撮像処理を終了する。また、撮像部１３２は、画像の撮像を終了すると判定しない場合（ステップＳ１３１：Ｎｏ）、画像の撮像処理（ステップＳ１２７）に戻る。以上で、移動体１３０の処理が終了する。
【００９１】
本実施形態に係る移動体１３０は、撮像部１３２が撮像した画像に含まれる対象部分のピクセル数に基づいて、対象物との距離を適切に保ちつつ対象物の追尾を行うことができる。すなわち、対象物との距離を計測するステレオカメラ等を搭載する必要がないため、移動体１３０の製造コストをより低く抑えることができる。
【００９２】
また、本実施形態に係る移動体１３０は、ピクセル数取得部１３６が取得したピクセル数が第１閾値以下である場合、又は、第１閾値よりも大きい第２閾値以上である場合に移動する。一方、ピクセル数取得部１３６が取得したピクセル数が第１閾値と第２閾値との間の値をとる場合、移動体１３０は移動を行わない。すなわち、ピクセル数取得部１３６が取得したピクセル数のわずかな変動に応じて、移動体１３０が頻繁に移動するといった煩雑な移動処理が防止される。
【００９３】
図１２は、移動体１３０により実行される対象物の探索処理の一例を示す図である。探索処理は、移動体１３０が他のデバイスから対象物の位置情報を受信し、当該位置情報に基づいて対象物の探索を実行する処理である。当該探索処理は、例えば特定部１３５が、撮像部１３２の撮像した画像において対象部分を特定できない場合に実行されてもよい。
【００９４】
まず、移動体１３０の通信部１３１は、対象物の位置情報を他のデバイスから受信する（ステップＳ１３０）。通信部１３１は、例えば、室内に取り付けられた俯瞰カメラや対象物に取り付けられた送信機から対象物の位置情報を受信してもよい。通信部１３１は、受信した位置情報を位置推定部１４０に送出する。
【００９５】
位置推定部１４０は、取得した位置情報に基づいて対象物の位置を推定する（ステップＳ１３１）。その後、制御部１３７は、位置推定部１４０により推定された位置へ移動体１３０を移動させる制御を実行する（ステップＳ１３２）。
【００９６】
移動体１３０の移動が完了すると、撮像部１３２は画像の撮像を行う（ステップＳ１３３）。撮像部１３２は、撮像した画像を特定部１３５に送出する。
【００９７】
特定部１３５は、特徴取得部１３３が取得した特徴に基づいて、撮像部１３２が撮像した画像のうち対象部分を特定する（ステップＳ１３４）。以降は、図１０に示すステップＳ１０５以降と同様の処理が実行されるため説明を省略する。以上で、移動体１３０による対象物の探索処理は終了する。なお、上述したように、撮像部１３２によって対象物が撮像されれば移動体１３０と対象物との距離の調整は可能である。そのため、位置推定部１４０が他のデバイスから取得する対象物の位置情報は、対象物のおおよその位置が特定できる情報であればよく、対象物と移動体１３０との正確な距離が取得できる位置情報でなくともよい。
【００９８】
本実施形態に係る移動体１３０は、対象物を見失った場合であっても、他のデバイスから取得した位置情報に基づいて対象物の位置を推定し、推定した位置に移動体１３０が移動するため、再び対象物を追尾することが可能となる。
【００９９】
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。例えば、本実施形態に係る移動体１３０がパーソナルモビリティや自動車等の車両であった場合には、当該移動体１３０は前方を走行する車両を一定距離を保ったまま自動で追尾することが可能になる。
【符号の説明】
【０１００】
１…通信システム、１１０…サーバ、１２０…端末、１２１…通信部、１２２…入力受付部、１２３…表示制御部、１２４…撮像部、１２５…記憶部、１３０…移動体、１３１…通信部、１３２…撮像部、１３３…特徴取得部、１３４…記憶部、１３５…特定部、１３６…ピクセル数取得部、１３７…制御部、１３８…設定部、１３９…移動量推定部、１４０…位置推定部、１５０…調整部、１６０…本体部、１６１…車輪、１６２…車軸、１７０…画像、２００…情報処理装置、２０１…ＣＰＵ、２０２…記憶装置、２０３…通信ＩＦ、２０４…入力デバイス、２０５…出力デバイス、３０１…ＣＰＵ、３０２…記憶装置、３０３…通信ＩＦ、３０４…入力デバイス、３０５…出力デバイス、３０６…駆動モータ
【図１】
2020087074.tif 000003
【図２】
2020087074.tif 000004
【図３】
2020087074.tif 000005
【図４】
2020087074.tif 000006
【図５】
2020087074.tif 000007
【図６】
2020087074.tif 000008
【図７】
2020087074.tif 000009
【図８】
2020087074.tif 000010
【図９】
2020087074.tif 000011
【図１０】
2020087074.tif 000012
【図１１】
2020087074.tif 000013
【図１２】
2020087074.tif 000014