(57)【要約】【課題】移動体の制御において操作性を向上できる。【解決手段】情報処理装置１０は、表示部１３と検知部１２と制御部１１とを有する。表示部１３は、撮像部を備える移動体２０の撮像部によって撮像された画像情報を表示する。検知部１２は、操作者が注視している表示部１３の画面上の座標である検知座標を検知する。制御部１１は、画像情報を移動体２０から受信し、検知座標に応じて移動体２０を制御する制御情報を決定し、制御情報を移動体２０に通知する。【選択図】図１
2019079091.tif 000002
【特許請求の範囲】
【請求項１】
撮像部を備える移動体から前記撮像部によって撮像された画像情報を受信し、
前記画像情報を表示した表示部において、操作者が注視している前記表示部の画面上の座標である検知座標を検知し、
前記検知座標に応じて前記移動体を制御する制御情報を決定し、前記制御情報を前記移動体に通知する、
処理をコンピュータに実行させる移動体制御プログラム。
【請求項２】
前記画面上の基準位置から前記検知座標への方向に応じて前記移動体を移動させる移動制御命令を決定する、
請求項１記載の移動体制御プログラム。
【請求項３】
前記基準位置と前記検知座標との距離に応じて前記移動制御命令の実行時間を決定する、
請求項２記載の移動体制御プログラム。
【請求項４】
前記移動制御命令と前記移動制御命令の実行時間とを含む前記制御情報を前記移動体に通知する、
請求項２記載の移動体制御プログラム。
【請求項５】
前記移動制御命令の決定では、前記検知座標が前記基準位置に対して第１の方向に位置する場合、前記移動体の撮像部による撮像方向に対する前記第１の方向に前記移動体を移動させる命令を前記移動制御命令として決定する、
請求項２記載の移動体制御プログラム。
【請求項６】
前記基準位置を含む基準領域に前記検知座標が含まれる場合、
前記操作者が前記基準領域を注視した時刻における前記移動体の位置を維持させる命令を前記移動制御命令として決定し、
前記移動制御命令と前記移動制御命令を所定時間実行させる実行時間とを含む制御情報を前記移動体に通知する、
請求項２記載の移動体制御プログラム。
【請求項７】
前記撮像部による撮像方向に前記移動体を移動させる移動制御命令を決定し、
前記操作者が注視した時間に応じて前記移動制御命令の実行時間を決定する、
請求項１記載の移動体制御プログラム。
【請求項８】
前記移動体から前記画像情報を受信するごとに前記画像情報を表示し、
所定の時間ごとに前記検知座標を検知する、
請求項１記載の移動体制御プログラム。
【請求項９】
コンピュータが、
撮像部を備える移動体から前記撮像部によって撮像された画像情報を受信し、
前記画像情報を表示した表示部において、操作者が注視している前記表示部の画面上の座標である検知座標を検知し、
前記検知座標に応じて前記移動体を制御する制御情報を決定し、前記制御情報を前記移動体に通知する、
移動体制御方法。
【請求項１０】
撮像部を備える移動体の前記撮像部によって撮像された画像情報を表示する表示部と、
操作者が注視している前記表示部の画面上の座標である検知座標を検知する検知部と、
前記画像情報を前記移動体から受信し、前記検知座標に応じて前記移動体を制御する制御情報を決定し、前記制御情報を前記移動体に通知する制御部と、
を備える情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体制御プログラム、移動体制御方法および情報処理装置に関する。
【背景技術】
【０００２】
近年、近赤外線などを利用者の眼球に照射して、角膜表面における反射像の位置から得られる角膜曲率中心と瞳孔中心から視線を検出する技術がある。この視線を検出する技術を利用し、利用者が注視するディスプレイ上の位置を判定することで、利用者がキーボードを操作しなくてもディスプレイ上のオブジェクトを選択する技術が実現されている。
【０００３】
また、近年、ドローン（drone）と呼ばれる飛行体の技術が進歩し、物流、空撮、測量、農薬散布などにおいて利用が期待されている。ドローンは、無線通信を使用したコントローラによって無線制御される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−６５７８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
これまでドローンは、操作者がコントローラを手動で操作することにより制御されている。ドローンのコントローラは、上下および左右回転の動きを操作する制御スティックと前後および左右の動きを操作する制御スティックの２つの制御スティックを備えている。操作者は、２つの制御スティックを左右それぞれの手で操作する必要がある。操作に慣れていない者にとってドローンをコントローラで制御することは難しい。
【０００６】
また、ドローンに限らず無線制御される移動体の操作においては、操作者が両手でコントローラを操作し移動体の位置を制御することが多い。このため、操作者は、移動体に備えられた移動以外の機能（アームの操作、カメラの角度操作、農薬散布操作など）の操作を実行することが困難であった。
【０００７】
このため、無線制御される移動体を移動させる操作において、操作性を向上することが望まれている。
１つの側面では、本発明の目的は、移動体の制御において操作性を向上できる移動体制御プログラム、移動体制御方法および情報処理装置を提供することにある。
【課題を解決するための手段】
【０００８】
１つの態様では、移動体制御プログラムが提供される。移動体制御プログラムは、撮像部を備える移動体から撮像部によって撮像された画像情報を受信し、画像情報を表示した表示部において、操作者が注視している表示部の画面上の座標である検知座標を検知し、検知座標に応じて移動体を制御する制御情報を決定し、制御情報を移動体に通知する、処理をコンピュータに実行させる。
【発明の効果】
【０００９】
１つの側面では、移動体の制御において操作性を向上できる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施の形態の移動体制御システムの一例を示す図である。
【図２】第２の実施の形態の飛行体制御システムの一例を示す図である。
【図３】情報処理装置のハードウェアの一例を示す図である。
【図４】飛行体のハードウェアの一例を示す図である。
【図５】視線検知座標と検知領域の一例を示す図である。
【図６】検知領域の他の一例を示す図である。
【図７】飛行体制御システムが有する機能の一例を示したブロック図である。
【図８】制御管理情報の一例を示す図である。
【図９】飛行体制御処理の一例を示すフローチャートである。
【図１０】移動制御処理の一例を示すフローチャートである。
【図１１】画像表示処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本実施の形態について図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の移動体制御システムの一例を示す図である。
【００１２】
第１の実施の形態の移動体制御システムは、情報処理装置１０および移動体２０を含む。移動体制御システムは、情報処理装置１０が操作者の視線の座標を検知し、検知した座標に基づいて移動体２０の移動を制御するシステムである。情報処理装置１０と移動体２０は、無線通信が可能である。
【００１３】
情報処理装置１０は、例えば、制御部１１および記憶部を有するコンピュータである。情報処理装置１０は、検知部１２および表示部１３を有する。なお、記憶部は、図示を省略する。
【００１４】
制御部１１は、情報処理装置１０の制御を行うものであり、例えば、プロセッサである。プロセッサは、ＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）などである。制御部１１は、検知部１２で検知した情報に基づき、移動体２０の移動を制御する制御情報を決定し、制御情報を移動体２０に通知する。
【００１５】
制御情報には、移動制御命令と移動制御命令の実行時間とを含む。移動制御命令は、例えば、移動体２０を上下左右の各方向に移動させる命令（コマンド）である。実行時間は、例えば、移動体２０を移動させる命令を実行する時間である。制御部１１は、移動体２０から画像情報を受信し、画像情報を表示部１３に表示する制御を行う。記憶部は、各種プログラムや情報を記憶する記憶装置であり、例えば、ＲＡＭ（Random Access Memory）、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）などである。
【００１６】
検知部１２は、情報処理装置１０を操作する操作者の視線を検知するセンサである。検知部１２は、表示部１３において操作者が注視した画面上の座標（検知座標）と、操作者が注視した時間（注視時間）とを取得し、制御部１１に出力する。検知座標は、操作者の視線に相当する直線と表示部１３の画面に相当する平面との交点の座標ともいえる。
【００１７】
表示部１３は、画像を表示するものであり、例えば、ディスプレイである。表示部１３は、制御部１１の制御に従い、入力された画像情報に応じた画像を表示する。
移動体２０は、例えば、地上から数ｃｍ〜数十ｍ程度の高度を飛行するドローンなどの飛行体である。図１において、移動体２０の一例としてドローンを描画しているが、ドローン以外の移動体を用いてもよい。ドローンとは、遠隔操縦式又は自律式の制御機構を有するマルチコプタ（３つ以上のロータを搭載する回転翼機）である。ドローン以外の移動体の一例として、無線制御可能な車両、船舶、潜水艇、ロボットおよび内視鏡などがある。
【００１８】
移動体２０は、制御部、撮像部、駆動部を有するが、図示を省略する。制御部は、移動体２０の制御を行うものであり、例えば、プロセッサである。
制御部は、情報処理装置１０から受信した制御情報に基づき駆動部を制御する。例えば、制御部は、上方向に移動させる命令を３秒間実行する制御情報を受信した場合、制御情報に基づき駆動部を制御する。制御部は、撮像部に画像を撮像する制御を行い、撮像した画像データを情報処理装置１０に送信する。撮像部は、移動体２０の正面に備えられ、画像を撮像するものであり、例えば、カメラである。撮像部の向きは、移動体２０の前方を向くように固定されている。そして、撮像部は移動体２０の前方の風景を撮像する。移動体２０が移動するとき、撮像部は移動体２０の進行方向に臨む風景を撮像する。駆動部は、制御部の制御に従い、移動体２０の回転翼の制御を行う。
【００１９】
ここで、情報処理装置１０によって移動体２０を制御する移動体制御方法について説明する。まず、操作者は、情報処理装置１０の表示部１３の画面を目視する。表示部１３に表示される画面は、第１の画面１３ａであるものとする。第１の画面１３ａは、移動体２０の正面に備えられたカメラによって台形状の物体（例えば、山）を撮像した画像の画像情報を表示部１３に表示したものである。情報処理装置１０は、移動体２０から画像情報を受信するごとに、画像情報を表示部１３に表示する。表示部１３に表示される画面において、中心部を基準位置１３ｏとし、中心部を含む所定の領域を基準領域１３ｐとする。なお、基準位置１３ｏは一例に過ぎず、他の位置を基準位置１３ｏとしてもよい。また、基準領域１３ｐは一例に過ぎず、他の形状の領域（例えば、矩形や楕円など）を基準領域１３ｐの形状としてもよい。
【００２０】
検知部１２は、操作者が注視している第１の画面１３ａ上の座標を検知する。検知部１２は、第１の画面１３ａにおいて検知した操作者が注視している座標が検知座標１３ｊであると検知する。制御部１１は、検知部１２から検知座標１３ｊを取得し、検知座標１３ｊが基準領域１３ｐに含まれると判定し、ホバリングを行う移動制御命令を含む制御情報を移動体２０に送信する。なお、制御部１１は、所定時間（例えば、１０秒間）ホバリングを行う移動制御命令（ホバリングコマンド）を制御情報に含めることができる。移動体２０は、制御情報を制御部１１から受信し、ホバリングを行う。なお、ホバリングを行う移動制御命令は一例に過ぎず、移動体２０に応じて現在（操作者が基準領域１３ｐを注視した時刻）の座標を維持するコマンドであればよい。例えば、移動体２０が車両やロボットである場合、移動体２０を停止させるコマンドであってもよい。また、移動体２０が船舶や潜水艇である場合、基準領域１３ｐを注視した時刻における位置を維持するため、潮の流れに逆らう方向に移動させるコマンドや碇を投下させるコマンドであってもよい。
【００２１】
つぎに、操作者は、視線を移動させたものとする。検知部１２は、操作者が注視している座標が検知座標１３ｋであると検知する。制御部１１は、検知部１２から検知座標１３ｋを取得し、検知座標１３ｋが基準位置１３ｏに対して左上方向にあると判定し、左上に移動を行う移動制御命令（左進行コマンドおよび上昇コマンド）を含む制御情報を移動体２０に送信する。移動体２０は、制御情報を制御部１１から受信し、左上に移動する。
【００２２】
移動体２０は、左上に移動し、撮像した画像情報を情報処理装置１０に通知する。情報処理装置１０は、移動体２０から画像情報を取得し、第２の画面１３ｂを表示部１３に表示する。
【００２３】
こうして、情報処理装置１０は、検知座標１３ｋが基準位置１３ｏに対して第１の方向に位置する場合、移動体２０の撮像部による撮像方向に対する第１の方向に移動体２０を移動させる命令を移動体２０に通知する。第１の方向とは、撮像方向の地面と水平な成分に対する方向である。なお、第１の方向とは、表示部１３の画面における座標系（Ｘ座標およびＹ座標）に対する基準位置１３ｏから検知座標１３ｋへの方向であってもよい。
【００２４】
このように、情報処理装置１０は、操作者が注視している画面上の座標を検知し、検知した座標に応じて移動体２０を制御する制御情報を決定し、移動体２０に通知する。これにより、操作者は、表示部１３を注視し視線を移動させることで、移動体２０を移動させる操作が可能となり、手動でコントローラを操作せずとも移動体を移動させることが可能となる。
【００２５】
こうして、移動体制御システムは、移動体２０の制御において操作性を向上できる。
［第２の実施の形態］
図２は、第２の実施の形態の飛行体制御システムの一例を示す図である。第２の実施の形態の飛行体制御システムは、情報処理装置１００、飛行体２００を有する。
【００２６】
情報処理装置１００は、操作者の視線を検知し、飛行体２００に制御情報を送信するコンピュータである。情報処理装置１００は、視線を検知する装置を備えており、検知した視線に応じた制御情報を飛行体２００に送信する。情報処理装置１００は、飛行体２００から画像情報を受信しディスプレイなどの表示部に表示する。
【００２７】
情報処理装置１００は、飛行体２００との間で無線通信が可能である。無線通信の規格として、例えば、ＩＥＥＥ（The Institute of Electrical and Electronic Engineers）８０２．１５．１（Bluetooth（登録商標））やＩＥＥＥ８０２．１１（無線ＬＡＮ（Local Area Network））などの規格がある。なお、情報処理装置１００と飛行体２００との無線通信に利用する規格は、ＬＴＥ（Long Term Evolution）やＷｉ−Ｆｉ（登録商標）などの他の規格であってもよい。
【００２８】
飛行体２００は、情報処理装置１００から制御情報を受信し、制御情報に基づいて移動する装置である。飛行体２００の一例として、回転翼機の一種であるドローンを図示する。ドローンは、遠隔操縦式又は自律式の制御機構を有するマルチコプタ（３つ以上のロータを搭載する回転翼機）である。また、ドローンは、カメラおよび通信機能を備えており、画像情報を撮像し送信することが可能である。ドローンには、移動経路や各種処理の制御を遠隔操作により実施する遠隔操縦式の制御機能を備えるものや、自律的に移動経路や各種処理の制御を実施するプログラムを実行する自律式の制御機能を備えるものがある。ここでは、飛行体２００として、遠隔操縦式の制御機能を備えるドローンを対象とするが、自律式の制御機能を備えてもよい。
【００２９】
ここで、操作者が情報処理装置１００を用いて飛行体２００を操作する場合について説明する。まず、情報処理装置１００は、操作者の視線を検知する。具体的には、情報処理装置１００は、視線を検知する装置から所定時間ごとに（例えば、１秒間に１５回）視線を検知した座標情報（視線検知座標）を取得する。情報処理装置１００は、視線検知座標に基づき、移動制御を実行する制御情報を飛行体２００に送信する。また、情報処理装置１００は、飛行体２００のカメラが撮像した画像情報を所定時間ごとに受信し、ディスプレイなどの表示部に表示する。飛行体２００は、飛行体２００の前方方向を向き、前方方向の風景を撮像するカメラを備えている。飛行体２００は、当該カメラを用いて矩形の物体を正面から撮像した画像情報を情報処理装置１００に送信したものとする。情報処理装置１００は、画像情報を飛行体２００から受信し表示部に表示する。
【００３０】
次に、情報処理装置１００は、操作者の視線が移動したことを検知する。情報処理装置１００は、視線検知座標に基づき、移動制御を実行する制御情報を飛行体２００に送信する。例えば、情報処理装置１００は、視線が左上に移動したことを検知した場合、飛行体２００の前方に向かって（飛行体２００の撮像方向に対して）左上に移動する制御情報を飛行体２００に送信する。飛行体２００は、情報処理装置１００から受信した制御情報に基づき移動する。飛行体２００は、移動した位置から撮像した画像情報（移動前の位置の左上前方からのカメラの視野に入る矩形の物体の画像を含む画像情報）を情報処理装置１００に送信する。情報処理装置１００は、飛行体２００から受信した画像情報を表示部に表示する。
【００３１】
このようにして、情報処理装置１００は、操作者の視線を検知し、視線検知座標に基づき制御情報を飛行体２００に送信することにより、飛行体２００を操作する。また、操作者は、情報処理装置１００の表示部に表示された画像を目視で確認しつつ、飛行体２００を操作することが可能になる。
【００３２】
図３は、情報処理装置のハードウェアの一例を示す図である。情報処理装置１００は、プロセッサ１０１、ＲＡＭ１０２、ＨＤＤ１０３、画像信号処理部１０４、入力信号処理部１０５、媒体リーダ１０６、ＮＩＣ（Network Interface Card）１０７および外部インタフェース１０８を有する。各ハードウェアは情報処理装置１００のバスに接続されている。
【００３３】
プロセッサ１０１は、情報処理装置１００の情報処理を制御するハードウェアである。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ、ＤＳＰ、ＡＳＩＣまたはＦＰＧＡなどである。プロセッサ１０１は、ＣＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡなどのうちの２以上の要素の組合せであってもよい。
【００３４】
ＲＡＭ１０２は、情報処理装置１００の主記憶装置である。ＲＡＭ１０２は、プロセッサ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ１０２は、プロセッサ１０１による処理に用いる各種データを記憶する。
【００３５】
ＨＤＤ１０３は、情報処理装置１００の補助記憶装置である。ＨＤＤ１０３は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ１０３は、ＯＳのプログラム、アプリケーションプログラム、および各種データを記憶する。情報処理装置１００は、フラッシュメモリやＳＳＤなどの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。
【００３６】
画像信号処理部１０４は、プロセッサ１０１からの命令に従って、情報処理装置１００に接続されたディスプレイ１２１に画像を出力する。ディスプレイ１２１として、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイなどを用いることができる。
【００３７】
入力信号処理部１０５は、情報処理装置１００に接続された入力デバイス１２２から入力信号を取得し、プロセッサ１０１に出力する。入力デバイス１２２として、例えば、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。
【００３８】
媒体リーダ１０６は、記録媒体１２３に記録されたプログラムやデータを読み取る装置である。記録媒体１２３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤなどの磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。また、記録媒体１２３として、例えば、フラッシュメモリカードなどの不揮発性の半導体メモリを使用することもできる。媒体リーダ１０６は、例えば、プロセッサ１０１からの命令に従って、記録媒体１２３から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。
【００３９】
ＮＩＣ１０７は、ネットワーク１３０を介して他の装置と通信を行う。ＮＩＣ１０７は、有線通信インタフェースでもよいし、無線通信インタフェースでもよい。
外部インタフェース１０８は、情報処理装置１００に接続された視線検出装置１４０から信号を取得し、プロセッサ１０１に出力する。視線検出装置１４０は、操作者が注視しているディスプレイ１２１上の座標（視線検知座標）を検出し、操作者が所定の座標を注視している時間を検出できる。
【００４０】
図４は、飛行体のハードウェアの一例を示す図である。飛行体２００は、ＣＰＵ２０１、メモリ２０２、カメラ２０３、通信処理部２０４ａ、アンテナ２０４ｂ、駆動部２０５ａ、およびロータ２０５ｂを有する。
【００４１】
ＣＰＵ２０１は、飛行体２００の制御を実施する。ＣＰＵ２０１は、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡなどで代替可能である。
メモリ２０２は、例えば、ＲＡＭ、ＲＯＭ（Read Only Memory）、ＨＤＤ、ＳＳＤなどの記憶装置である。
【００４２】
カメラ２０３は、飛行体２００の正面に備えられ、画像を撮像し、画像データをＣＰＵ２０１に出力する。カメラ２０３は、動画、静止画いずれも撮像可能であってもよいし、動画のみが撮像可能であってもよい。
【００４３】
通信処理部２０４ａは、アンテナ２０４ｂを備え、情報処理装置１００と情報を送受信する。例えば、通信処理部２０４ａは、情報処理装置１００から制御情報を受信し、ＣＰＵ２０１に出力する。また、通信処理部２０４ａは、カメラ２０３が撮像した画像の画像情報を情報処理装置１００に送信する。通信処理部２０４ａは、通信に必要となるＲＦ（Radio Frequency）回路や、信号処理回路などを備える。ＲＦ回路は、アンテナ２０４ｂによるＲＦ信号の送受信、周波数変換、ＡＤ（Analog to Digital）・ＤＡ（Digital to Analog）変換処理などの処理を実行する。信号処理回路は、変調・復調などの処理を実行する。アンテナ２０４ｂは、ＲＦ信号の送受信に用いられるアンテナである。
【００４４】
駆動部２０５ａは、回転翼機の翼であるロータ２０５ｂの回転軸に接続されるモータを駆動し、ロータ２０５ｂを回転させる。駆動部２０５ａは、ロータ２０５ｂの回転を制御することで水平位置、高度、姿勢、移動方向などを制御する。なお、飛行体２００は、複数のロータ２０５ｂを備えるが、図示を省略する。
【００４５】
なお、飛行体２００は、図示しないセンサ群を備えることができる。センサ群は、例えば、気圧センサや超音波センサを含むセンサの集合である。気圧センサは、例えば、高度の測定に利用される。超音波センサは、例えば、障害物の検知に利用される。センサ群には、現在位置の測定に利用できるＧＰＳ（Global Positioning System）や加速度センサなどが含まれてもよい。
【００４６】
図５は、視線検知座標と検知領域の一例を示す図である。図５（Ａ）は、視線検知座標の一例を示す図である。情報処理装置１００は、視線検出装置１４０を介して操作者がディスプレイ１２１の画面を注視した座標を検知する。ここでは、操作者が注視した座標が視線検知座標３５０であるものとする。画面において、中心位置を原点３０１とし、視線検知座標３５０の位置をＸ座標およびＹ座標で示す。Ｘ軸のプラス方向は、原点３０１から水平右方向である。Ｘ軸のマイナス方向は、原点３０１から水平左方向である。Ｙ軸のプラス方向は、原点３０１から垂直上方向である。Ｙ軸のマイナス方向は、原点３０１から垂直下方向である。なお、視線検知座標３５０は、ドットやピクセルなどの値で示してもよい。
【００４７】
図５（Ｂ）は、検知領域の一例を示す図である。検知領域は、ディスプレイ１２１の画面を複数の区画に区切った領域である。検知領域は、左上指示領域３０２、上昇指示領域３０３、右上指示領域３０４、左横指示領域３０５、中心領域３０６、右横指示領域３０７、左下指示領域３０８、下降指示領域３０９および右下指示領域３１０を含む。なお、検知領域を区切る領域は一例に過ぎず、その他の領域で検知領域を区切ることも可能である。
【００４８】
情報処理装置１００は、視線検知座標３５０が含まれる検知領域に応じて飛行体２００に送信する制御情報を決定する。例えば、情報処理装置１００は、左上指示領域３０２に視線検知座標３５０が含まれることを検知した場合、左上に移動する制御情報を飛行体２００に送信する。
【００４９】
図６は、検知領域の他の一例を示す図である。図６に示す検知領域は、ディスプレイ１２１の画面を５行５列のマトリクス状の区間に区切った領域である。各検知領域は、行と列によって識別可能であり、例えば、左上の検知領域は検知領域Ａ１として識別され、右下の検知領域は検知領域Ｅ５として識別される。なお、検知領域は、ｍ行ｍ列に限らず、ｍ行ｎ列（ｍ≠ｎ）でマトリクス状の区画に区分された領域であってもよい。
【００５０】
図５においては、視線検出装置１４０が操作者によって注視された位置を詳細に検知する例を示したが、図６においては、視線検出装置１４０が操作者によって注視された位置の検知の精度が低い場合の一例を示すものとする。
【００５１】
図６において、視線検出装置１４０は、操作者が注視した位置が検知領域Ａ１〜Ｅ５のいずれかに含まれることを検知するものとする。
例えば、視線検出装置１４０は、操作者が注視した位置が検知領域Ａ１に含まれる場合、視線検知座標３５０として（−２，２）をプロセッサ１０１に出力するものとする。また、視線検出装置１４０は、操作者が注視した位置が検知領域Ｅ５に含まれる場合、視線検知座標３５０として（２，−２）をプロセッサ１０１に出力するものとする。
【００５２】
なお、情報処理装置１００は、検知領域Ａ１，Ａ２，Ｂ１，Ｂ２を左上指示領域３０２として扱い、検知領域Ａ３，Ｂ３を上昇指示領域３０３として扱い、検知領域Ａ４，Ａ５，Ｂ４，Ｂ５を右上指示領域３０４として扱うことができる。また、情報処理装置１００は、検知領域Ｃ１，Ｃ２を左横指示領域３０５として扱い、検知領域Ｃ３を中心領域３０６として扱い、検知領域Ｃ４，Ｃ５を右横指示領域３０７として扱うことができる。また、情報処理装置１００は、検知領域Ｄ１，Ｄ２，Ｅ１，Ｅ２を左下指示領域３０８として扱い、検知領域Ｄ３，Ｅ３を下降指示領域３０９として扱い、検知領域Ｄ４，Ｄ５，Ｅ４，Ｅ５を右下指示領域３１０として扱うことができる。
【００５３】
このように、情報処理装置１００は、視線検出装置１４０の精度が低い場合であっても、操作者がいずれの検知領域を注視しているかを検知し、検知領域に応じた制御情報を決定できる。
【００５４】
図７は、飛行体制御システムが有する機能の一例を示したブロック図である。情報処理装置１００は、制御部１５０、記憶部１５１および表示部１５２を有する。制御部１５０は、プロセッサ１０１により実現される。具体的には、プロセッサ１０１は、ＲＡＭ１０２に記憶されたプログラムを実行することで、制御部１５０の機能を発揮する。ただし、制御部１５０は、ＦＰＧＡやＡＳＩＣなどハードワイヤードロジックにより実現されてもよい。
【００５５】
記憶部１５１は、ＲＡＭ１０２の記憶領域やＨＤＤ１０３の記憶領域を用いて実現される。記憶部１５１は、制御管理情報を記憶する。制御管理情報は、情報処理装置１００が視線検知座標に基づいて飛行体２００を制御するために用いる情報である。制御管理情報は、後で図８を用いて説明する。
【００５６】
表示部１５２は、ディスプレイ１２１により実現される。表示部１５２は、制御部１５０の制御に従い情報を表示する。なお、表示部１５２は、情報処理装置１００に外付けであってもよいし、情報処理装置１００と一体化したものであってもよい。
【００５７】
制御部１５０は、視線検出装置１４０が検知した視線検知座標と記憶部１５１に記憶された制御管理情報に基づき、制御情報を飛行体２００に送信する。また、制御部１５０は、飛行体２００から受信した画像情報を表示部１５２に表示する。
【００５８】
飛行体２００は、制御部２５０を有する。制御部２５０は、ＣＰＵ２０１により実現される。具体的には、ＣＰＵ２０１は、メモリ２０２に記憶されたプログラムを実行することで、制御部２５０の機能を発揮する。ただし、制御部２５０は、ＦＰＧＡやＡＳＩＣなどハードワイヤードロジックにより実現されてもよい。
【００５９】
制御部２５０は、カメラ２０３で画像を撮像し、撮像した画像データを情報処理装置１００に送信する。制御部２５０は、情報処理装置１００から受信した制御情報に基づいて駆動部２０５ａを制御し、飛行体２００を移動させる。
【００６０】
図８は、制御管理情報の一例を示す図である。制御管理情報４０１は、検知領域に応じた制御情報を管理する情報である。制御管理情報４０１は、情報処理装置１００の記憶部１５１に記憶される情報である。
【００６１】
制御管理情報４０１は、領域、実行コマンドおよび実行時間（秒）の項目を含む。制御情報は、実行コマンドおよび実行時間を含むものとする。
領域の項目には、検知領域が登録される。検知領域に登録される領域は、図５（Ｂ）で説明した通りである。
【００６２】
実行コマンドの項目には、飛行体２００の移動を制御するコマンドが登録される。ここで、各コマンドの移動方向について説明する。飛行体２００の正面には、カメラ２０３が備えられている。飛行体２００は、左進行コマンドを実行した場合、カメラ２０３で撮像している方向に対して左方向に移動する。また、飛行体２００は、右進行コマンドを実行した場合、カメラ２０３で撮像している方向に対して右方向に移動する。飛行体２００は、上昇コマンドを実行した場合、カメラ２０３で撮像している方向に対して上方向に移動する。飛行体２００は、下降コマンドを実行した場合、カメラ２０３で撮像している方向に対して下方向に移動する。
【００６３】
実行時間の項目には、実行コマンドを実行する時間が登録される。なお、｜Ｘ座標｜は、Ｘ座標の絶対値を示す。また、｜Ｙ座標｜は、Ｙ座標の絶対値を示す。
例えば、制御管理情報４０１には、領域が「左上指示領域」、実行コマンドが「左進行コマンド」および実行時間が「｜Ｘ座標｜×０．２」、実行コマンドが「上昇コマンド」および実行時間が「Ｙ座標×０．１」という情報が登録される。
【００６４】
これは、情報処理装置１００が、操作者が注視する視線検知座標が左上指示領域３０２に含まれることを検知した場合に、飛行体２００に送信する制御情報を示す。情報処理装置１００は、左進行コマンドを「｜Ｘ座標｜×０．２」秒間実行する制御情報と、上昇コマンドを「Ｙ座標×０．１」秒間実行する制御情報とを飛行体２００に送信することを示す。
【００６５】
このように、情報処理装置１００は、操作者が画面の左上指示領域３０２を注視した場合に、左進行コマンドと上昇コマンドとを組み合わせた制御情報を飛行体２００に送信することで、飛行体２００を左上に移動させることができる。また、情報処理装置１００は、原点３０１と操作者が注視した位置（視線検知座標）との距離（Ｘ座標、Ｙ座標）に応じて実行時間を設定する。これにより、情報処理装置１００は、距離に比例して飛行体２００の移動距離を制御できる。
【００６６】
なお、制御管理情報４０１において、下降コマンドの実行時間に上限を設けることで、急激に下降することによる地面との接触を回避することも可能である。
なお、ホバリングコマンドは一例に過ぎず、現在（操作者が中心領域３０６を注視した時刻）における飛行体２００の位置を維持できるコマンドであればその他のコマンドであってもよい。以下の説明においても同様とする。
【００６７】
次に、情報処理装置１００による飛行体２００に制御情報を送信する手順を説明する。図９は、飛行体制御処理の一例を示すフローチャートである。以下、図９に示す処理をステップ番号に沿って説明する。飛行体制御処理は、情報処理装置１００が飛行体２００に制御情報を送信し、飛行体２００を操作する処理である。情報処理装置１００の制御部１５０は、視線検出装置１４０から視線検知座標および注視時間を取得し、飛行体制御処理を実行する。なお、視線検出装置１４０は、所定の時間ごとに（例えば、１秒間に１５回）視線検知座標および注視時間を制御部１５０に出力するものとする。
【００６８】
［ステップＳ１１］制御部１５０は、視線検出装置１４０から視線検知座標を取得する。
［ステップＳ１２］制御部１５０は、視線検知座標が中心領域３０６に含まれるか否かを判定する。制御部１５０は、視線検知座標が中心領域３０６に含まれる場合にステップＳ１３にすすみ、含まれない場合にステップＳ１１にすすむ。
【００６９】
［ステップＳ１３］制御部１５０は、離陸コマンドを飛行体２００に送信する。具体的には、制御部１５０は、上昇コマンドを所定の時間（例えば、５秒間）実行する制御情報を飛行体２００に送信する。ここで、飛行体２００は、制御情報を受信し、離陸するものとする。
【００７０】
［ステップＳ１４］制御部１５０は、ホバリングコマンドを飛行体２００に送信する。制御部１５０は、次の制御情報を送信するまで飛行体２００がホバリングを継続するようにホバリングコマンドを飛行体２００に送信する。
【００７１】
［ステップＳ１５］制御部１５０は、視線検出装置１４０から視線検知座標を取得する。
［ステップＳ１６］制御部１５０は、所定時間（例えば、１秒）が経過したか否かを判定する。制御部１５０は、所定時間が経過した場合、ステップＳ１７にすすむ。制御部１５０は、所定の時間が経過していない場合にステップＳ１５にすすむ。
【００７２】
本ステップの処理は、制御部１５０が、操作者がいずれの検知領域を注視しているかを判定するための視線検知座標を取得する処理である。例えば、視線検出装置１４０が、１秒間に１５回の頻度で視線検知座標を制御部１５０に送る場合、制御部１５０は所定時間である１秒間に１５個の視線検知座標を取得する。また、１つの視線検知座標を操作者が注視している時間は、１５分の１秒（１／１５秒）であるものとする。
【００７３】
［ステップＳ１７］制御部１５０は、視線検知座標が検知領域内であるか否かを判定する。制御部１５０は、視線検知座標が検知領域内である場合、ステップＳ１８にすすむ。制御部１５０は、視線検知座標が検知領域内でない場合、言い換えると、視線検知座標が画面外である場合、ステップＳ１９にすすむ。
【００７４】
［ステップＳ１８］制御部１５０は、移動制御処理を実行する。移動制御処理は、視線検知座標と注視時間に基づき、飛行体２００に送信する制御情報を特定する処理である。移動制御処理は、後で図１０を用いて説明する。
【００７５】
［ステップＳ１９］制御部１５０は、所定時間（例えば、１５秒）が経過したか否かを判定する。制御部１５０は、所定時間が経過した場合、言い換えると、視線検知座標が検知領域外である状態が所定時間継続した場合、ステップＳ２０にすすむ。制御部１５０は、所定時間が経過しない場合、言い換えると、視線検知座標が検知領域外である状態が所定時間継続していない場合、ステップＳ１５にすすむ。
【００７６】
［ステップＳ２０］制御部１５０は、着陸コマンドを飛行体２００に送信し、処理を終了する。
なお、情報処理装置１００の制御部１５０は、離陸および着陸を別の方法で実行してもよい。例えば、情報処理装置１００は、操作者による離陸コマンドの入力に応じて当該離陸コマンドを飛行体２００に送信してもよい。また、情報処理装置１００は、操作者による着陸コマンドの入力に応じて当該着陸コマンドを飛行体２００に送信してもよい。
【００７７】
図１０は、移動制御処理の一例を示すフローチャートである。以下、図１０に示す処理をステップ番号に沿って説明する。移動制御処理は、視線検知座標と注視時間に基づき、飛行体２００に送信する制御情報を特定する処理である。移動制御処理は、飛行体操作処理のステップＳ１８で制御部１５０が実行する処理である。
【００７８】
［ステップＳ３１］制御部１５０は、ステップＳ１５で取得した視線検知座標に基づき、操作者が注視した領域を特定する。
例えば、ステップＳ１５において取得した視線検知座標が１５個であり、左上指示領域３０２に含まれる視線検知座標が１０個で最多である場合、制御部１５０は左上指示領域３０２を特定する。
【００７９】
［ステップＳ３２］制御部１５０は、検知領域に基づき制御管理情報４０１から制御情報を特定する。具体的には、制御部１５０は、ステップＳ３１で特定した領域に対応する実行コマンドを特定する。また、制御部１５０は、視線検知座標（Ｘ座標、Ｙ座標）に基づき、実行コマンドに対応する実行時間を特定する。
【００８０】
例えば、左上指示領域３０２が特定され、視線検知座標が（−２，２）である場合、制御部１５０は、左進行コマンドを｜−２｜×０．２＝０．４（秒）実行し、上昇コマンドを２×０．１＝０．２（秒）実行する制御情報を特定する。
【００８１】
［ステップＳ３３］制御部１５０は、特定した制御情報（実行コマンドおよび実行時間）を飛行体２００に送信する。
［ステップＳ３４］制御部１５０は、ステップＳ３１で特定した検知領域を操作者が注視した時間である注視時間を算出する。
【００８２】
例えば、ステップＳ３１において、左上指示領域３０２に含まれる視線検知座標が１０個である場合、１個の視線検知座標を注視した時間が（１／１５秒）であるため、（１／１５）×１０＝２／３（秒）として算出できる。
【００８３】
なお、注視時間の算出方法は一例に過ぎず、その他の方法で算出してもよいし、センサで注視時間を検出してもよい。
［ステップＳ３５］制御部１５０は、前進コマンドと実行時間を注視時間とする制御情報を飛行体２００に送信し、処理を終了する。前進コマンドとは、飛行体２００が備えるカメラ２０３による撮像方向（すなわち、飛行体２００の前方方向）に飛行体２００を移動させる移動制御命令である。
【００８４】
制御部１５０は、操作者の視線を検知した方向に飛行体２００を移動させる制御情報を飛行体２００に送信し、注視時間に応じて飛行体２００を前進させる制御情報を飛行体２００に送信する。操作者による注視時間が長いほど飛行体２００を前進させるコマンドの実行時間が長くなるため、飛行体２００が前方に進行する距離も長くなる。
【００８５】
このようにして、情報処理装置１００は、操作者の視線を視線検出装置１４０で検知し、飛行体２００を制御する。操作者は、コントローラを手動で操作することなく、表示部１５２の画面上において視線を移動させることで飛行体２００を制御できる。
【００８６】
次に、情報処理装置１００による飛行体２００から受信した画像情報を表示する手順を説明する。図１１は、画像表示処理の一例を示すフローチャートである。以下、図１１に示す処理をステップ番号に沿って説明する。
【００８７】
画像表示処理は、情報処理装置１００の制御部１５０が飛行体２００から受信した画像情報を表示する処理である。情報処理装置１００の制御部１５０は、飛行体２００から画像情報を受信し、画像表示処理を実行する。なお、制御部１５０は、画像表示処理を飛行体制御処理とは独立して実行できる。また、飛行体２００は、所定の時間ごとに画像情報を情報処理装置１００に送信することができる。
【００８８】
［ステップＳ４１］制御部１５０は、画像情報を飛行体２００から受信する。なお、画像情報は、静止画のデータであってもよいし、動画のデータであってもよい。
［ステップＳ４２］制御部１５０は、画像情報を表示部１５２に表示し、ステップＳ４１にすすむ。
【００８９】
このように、制御部１５０が飛行体２００から受信した画像情報を表示部１５２に表示することにより、操作者は、表示部１５２に表示された画像情報を目視で確認しつつ飛行体２００の制御ができる。
【００９０】
こうして、飛行体制御システムは、情報処理装置１００において操作者の視線を検知し、検知した視線の座標情報に応じた制御情報を特定し、制御情報を飛行体２００に送信することにより、操作者の視線による飛行体２００の操作を可能とする。
【００９１】
なお、第１の実施の形態においては制御対象物として移動体２０を例示し、第２の実施の形態においては制御対象物として飛行体２００を例示したが、他のものを制御対象物としてもよい。例えば、制御対象の移動体は、無線制御可能な車両、船舶、潜水艇、ロボットおよび内視鏡などであってもよい。本システムは、視線により移動体の移動を制御可能とすることで、例えば、操作者は手を用いて、移動以外の機能（移動体が備えるアームの操作、カメラ角度操作、農薬散布操作など）の操作を容易に行えるようになる。
【００９２】
なお、第１の実施の情報処理は、制御部１１にプログラムを実行させることで実現できる。また、第２の実施の形態の情報処理は、プロセッサ１０１にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体１２３に記録できる。
【００９３】
例えば、プログラムを記録した記録媒体１２３を配布することで、プログラムを流通させることができる。また、プログラムを他のコンピュータに格納しておき、ネットワーク１３０経由でプログラムを配布してもよい。コンピュータは、例えば、記録媒体１２３に記録されたプログラムまたは他のコンピュータから受信したプログラムをＲＡＭ１０２やＨＤＤ１０３などの記憶装置に格納し（インストールし）、記憶装置からプログラムを読み込んで実行してもよい。
【符号の説明】
【００９４】
１０  情報処理装置
１１  制御部
１２  検知部
１３  表示部
１３ａ  第１の画面
１３ｂ  第２の画面
１３ｊ，１３ｋ  検知座標
１３ｏ  基準位置
１３ｐ  基準領域
２０  移動体
【図１】
2019079091.tif 000003
【図２】
2019079091.tif 000004
【図３】
2019079091.tif 000005
【図４】
2019079091.tif 000006
【図５】
2019079091.tif 000007
【図６】
2019079091.tif 000008
【図７】
2019079091.tif 000009
【図８】
2019079091.tif 000010
【図９】
2019079091.tif 000011
【図１０】
2019079091.tif 000012
【図１１】
2019079091.tif 000013