以下、図面を参照しながら、発明を実施するための形態を説明する。なお、図面の説明において同一要素には同一符号を付し、重複する説明は省略する。
●実施形態●
●システム構成
図1は、通信システムの全体構成の一例を示す図である。図1に示されている通信システム1は、所定の拠点内の移動する移動体10に対するユーザによる遠隔操作が可能なシステムである。
通信システム1は、所定の拠点に位置する移動体10および表示装置50を含む。通信システム1を構成する移動体10および表示装置50は、通信ネットワーク100を介して通信することができる。通信ネットワーク100は、インターネット、移動体通信網、LAN(Local Area Network)等によって構築されている。なお、通信ネットワーク100には、有線通信だけでなく、3G(3rd Generation)、4G(4th Generation)、5G(5th Generation)、Wi-Fi(Wireless Fidelity)(登録商標)、WiMAX(Worldwide Interoperability for Microwave Access)またはLTE(Long Term Evolution)等の無線通信によるネットワークが含まれてもよい。
移動体10は、対象拠点に設置され、対象拠点内を自律移動可能なロボットである。この自律移動は、対象拠点内における過去に移動した経路を模倣学習(機械学習)し、模倣学習の結果を利用して自律的に対象拠点内を移動する動作を含む。また、自律移動は、予め設定された移動経路に従って自律的に対象拠点内を移動する動作またはライントレース等の技術を用いて自律的に対象拠点内を移動する動作であってもよい。さらに、移動体10は、遠隔地にいるユーザからの手動操作によっても移動可能である。すなわち、移動体10は、自律移動とユーザによる手動操作とを切り替えながら、対象拠点内を移動することができる。また、移動体10は、例えば、対象拠点内を移動しながら、点検、保守、運搬または軽作業等の所定のタスクを実行することができる。ここで、移動体10は、広義のロボットを意味し、自律移動とユーザによる遠隔操作による移動の双方の動作が可能なロボットであればよい。また、移動体10には、遠隔地からの操作により自動運転と手動操作を切り替えて走行可能な自動車も含まれる。さらに、移動体10には、ドローン、マルチコプタまたは無人飛行体等の飛行体も含まれる。
また、移動体10が設置される対象拠点は、例えば、事業所、工場、建設現場、変電所、農場、田畑、農園、耕地もしくは災害現場等の屋外の拠点、またはオフィス、学校、工場、倉庫、商業施設、病院もしくは介護施設等の屋内の拠点である。すなわち、対象拠点は、従来人手で行われていたタスクを移動体10に担わせたいニーズが存在する拠点であればよい。
表示装置50は、対象拠点とは異なる管理拠点に位置し、移動体10に対する所定の操作を行う操作者(ユーザ)が使用するノートPC(Personal Computer)等のコンピュータである。操作者は、オフィス等の管理拠点において、表示装置50に表示される操作画面を用いて、移動体10に対する移動操作、または所定のタスクを実行させるための操作等を行う。例えば、操作者は、表示装置50に表示された対象拠点の画像を見ながら、移動体10の遠隔操作を行う。
なお、図1は、それぞれ一台の移動体10と表示装置50が通信ネットワーク100を介して接続されている例を示すが、表示装置50は、一つの対象拠点に位置する複数の移動体10と接続可能な構成であってもよいし、異なる対象拠点に位置する移動体10と接続可能な構成であってもよい。また、図1は、移動体10が設置された対象拠点とは異なる遠隔地の管理拠点に表示装置50が位置する例を示すが、表示装置50は、移動体10が設置された対象拠点内に位置する構成であってもよい。さらに、表示装置50は、ノートPCに限られず、例えば、デスクトップPC,タブレット端末、スマートフォンまたはウェアラブル端末等であってもよい。
従来、例えば、移動体が自律移動している際に障害物等によって走行不能になった場合に、操作者の手動操作により復帰動作を行って自律移動に戻す作業が行われていた。しかしながら、従来の操作者に提示される情報だけでは、手動操作から自律移動に復帰させるための切替判断を操作者が精度良く行うことが困難であった。また、手動操作の際の学習による自律移動を行う際に、天候または拠点内の建造物等の環境の変化によって、それまでの学習結果が適切に利用できない場合、再度学習を行うための手動操作への切替判断を操作者が行うことが困難であった。すなわち、移動体の自律移動と手動操作を操作者が切り替えたい場合において、従来の方法では、操作者が移動体の移動状態を適切に把握することが困難であった。また、これに伴い、操作者が適切な自律移動と手動操作の切り替えの判断を行うことが困難であった。
そこで、通信システム1は、移動体10を遠隔操作する操作者が使用する表示装置50に、移動体10によって撮影された撮影画像に写る対象拠点における移動体10の移動経路上に、仮想的な経路画像を重畳させて表示させることで、移動体10の移動状態を操作者に適切に把握させることができる。また、通信システム1は、表示装置50に表示させる操作画面を用いて、移動体10の自律移動と手動操作を相互に切り替えることができるので、自律移動と手動操作の切り替えの有無を容易に操作者に判断させることができるとともに、自律移動と手動操作を切り替える場合のユーザの操作性を向上させることができる。さらに、通信システム1は、手動操作を用いた自律移動の移動経路の学習を行うような移動体10に対しても、手動操作による学習の必要性を、操作者により適切に判断させることができる。
●移動体の構成
続いて、図2を用いて、移動体10の具体的な構成を説明する。図2は、移動体の構成の概略の一例を示す図である。なお、図2に示されている移動体10の構成は、必要に応じて構成要素が追加または削除されてもよい。
図2に示されている移動体10は、移動体10の処理または動作を制御する制御装置30を備えた筐体11、撮影装置12、支持部材13、ディスプレイ14、移動体10を移動させるための移動機構15(15a,15b)、および移動体10に所定の作業(動作)を行わせるための可動アーム16を備える。このうち、筐体11には、移動体10の胴体部分に位置し、移動体10の処理もしくは動作を制御する制御装置30等が内蔵されている。
撮影装置12は、移動体10が設置された拠点に位置する人物、物体または風景等の被写体を撮影して撮影画像を取得する。撮影装置12は、デジタル一眼レフカメラ、またはコンパクトデジタルカメラ等の平面画像(詳細画像)を取得可能なデジタルカメラ(一般撮影装置)である。なお、撮影装置12によって取得される撮影画像は、動画であっても静止画であってもよく、動画と静止画の両方であってもよい。また、撮影装置12によって取得される撮影画像は、画像データとともに音声データを含んでもよい。さらに、撮影装置12は、全天球(360°)パノラマ画像を取得可能な広角撮影装置であってもよい。広角撮影装置は、例えば、被写体を撮影して全天球(パノラマ)画像の元になる二つの半球画像を得るための全天球撮影装置である。さらに、広角撮影装置は、例えば、所定値以上の画角を有する広角画像を取得可能な広角カメラまたはステレオカメラ等であってもよい。すなわち、広角撮影装置は、所定値より焦点距離の短いレンズを用いて撮影された画像(全天球画像、広角画像)を取得可能な撮影手段である。また、移動体10は、複数の撮影装置12を備える構成であってもよい。この場合、移動体10は、撮影装置12として、広角撮影装置と、広角撮影装置によって撮影された被写体の一部を撮影して詳細画像(平面画像)を取得可能な一般撮影装置の両方を備える構成であってもよい。
支持部材13は、移動体10(筐体11)に撮影装置12を設置(固定)するための部材である。支持部材13は、筐体11に固定されたポール等であってもよいし、筐体11に固定された台座であってもよい。また、支持部材13には、撮影装置12の撮影方向(向き)や位置(高さ)を調整可能な可動式の部材であってもよい。
移動機構15は、移動体10を移動させるユニットであり、車輪、走行モータ、走行エンコーダ、ステアリングモータ、およびステアリングエンコーダ等で構成される。移動体10の移動制御については、既存の技術であるため、詳細な説明は省略するが、移動体10は、例えば、操作者(表示装置50)からの走行指示を受信し、移動機構15は、受信した走行指示に基づいて移動体10を移動させる。なお、移動機構15は、二足歩行の足型や単輪のものであってもよい。また、移動体10の形状は、図2に示されているような車両型に限られず、例えば、二足歩行の人型、生物を模写した形態、特定のキャラクターを模写した形態等であってもよい。
可動アーム16は、移動体10の移動以外の付加的動作を可能とする動作手段を有している。図2に示されているように、可動アーム16には、例えば、可動アーム16の先端に部品等の物体を掴むためのハンドが動作手段として備えられている。移動体10は、可動アーム16を回転または変形させることによって、所定の作業(動作)を行うことができる。なお、移動体10は、上記構成のほかに、移動体10の周囲の情報を検知可能な各種センサを有していてもよい。各種センサは、例えば、気圧計、温度計、光度計、人感センサ、ガスセンサ、臭気センサまたは照度計等のセンサデバイスである。
●ハードウエア構成
続いて、図3および図4を用いて、実施形態に係る通信システムを構成する装置または端末のハードウエア構成について説明する。なお、図3および図4に示されている装置または端末のハードウエア構成は、必要に応じて構成要素が追加または削除されてもよい。
○移動体のハードウエア構成○
図3は、移動体のハードウエア構成の一例を示す図である。移動体10は、移動体10の処理または動作を制御する制御装置30を備える。制御装置30は、上述のように、移動体10の筐体11の内部に備えられている。なお、制御装置30は、移動体10の筐体11の外部に設けられてもよく、または移動体10とは別の装置として設けられていてもよい。
制御装置30は、CPU(Central Processing Unit)301、ROM(Read Only Memory)302、RAM(Random Access Memory)303、HDD(Hard Disk Drive)304、メディアI/F(Interface)305、入出力I/F306、音入出力I/F307、ネットワークI/F308、近距離通信回路309、近距離通信回路309のアンテナ309a、外部機器接続I/F311、およびバスライン310を備える。
CPU301は、移動体10全体の制御を行う。CPU301は、ROM302またはHD(Hard Disk)304a等に格納された、プログラムもしくはデータをRAM303上に読み出し、処理を実行することで、移動体10の各機能を実現する演算装置である。
ROM302は、電源を切ってもプログラムまたはデータを保持することができる不揮発性のメモリである。RAM303は、CPU301のワークエリア等として用いられる揮発性のメモリである。HDD304は、CPU301の制御にしたがってHD304aに対する各種データの読み出し、または書き込みを制御する。HD304aは、プログラム等の各種データを記憶する。メディアI/F305は、USB(Universal Serial Bus)メモリ、メモリカード、光学ディスクまたはフラッシュメモリ等の記録メディア305aに対するデータの読み出しまたは書き込み(記憶)を制御する。
入出力I/F306は、文字、数値、各種指示等を各種外部機器等との間で入出力するためのインターフェースである。入出力I/F306は、LCD(Liquid Crystal Display)等のディスプレイ14に対するカーソル、メニュー、ウィンドウ、文字または画像等の各種情報の表示を制御する。なお、ディスプレイ14は、入力手段を備えたタッチパネルディスプレイであってもよい。また、入出力I/F306は、ディスプレイ14のほかに、例えば、マウス等のポインティングデバイス、キーボード等の入力手段が接続されていてもよい。音入出力I/F307は、CPU301の制御に従ってマイク307aおよびスピーカ307bとの間で音信号の入出力を処理する回路である。マイク307aは、CPU301の制御に従って音信号を入力する内蔵型の集音手段の一種である。スピーカ307bは、CPU301の制御に従って音信号を出力する再生手段の一種である。
ネットワークI/F308は、通信ネットワーク100を経由して、他の機器または装置との通信(接続)を行う通信インターフェースである。ネットワークI/F308は、例えば、有線または無線LAN等の通信インターフェースである。近距離通信回路309は、NFC(Near Field communication)またはBluetooth(登録商標)等の通信回路である。外部機器接続I/F311は、制御装置30に他の装置を接続するためのインターフェースである。
バスライン310は、上記各構成要素を電気的に接続するためのアドレスバスやデータバス等であり、アドレス信号、データ信号、および各種制御信号等を伝送する。CPU301、ROM302、RAM303、HDD304、メディアI/F305、入出力I/F306、音入出力I/F307、ネットワークI/F308、近距離通信回路309、および外部機器接続I/F311は、バスライン310を介して相互に接続されている。
さらに、制御装置30には、外部機器接続I/F311を介して、駆動モータ101、アクチュエータ102、加速度・方位センサ103、GPS(Global Positioning System)センサ104、撮影装置12、バッテリ120および障害物検知センサ106が接続されている。
駆動モータ101は、CPU301からの命令に基づき、移動機構15を回転駆動させて移動体10を地面に沿って移動させる。アクチュエータ102は、CPU301からの命令に基づき、可動アーム16を変形させる。加速度・方位センサ103は、地磁気を検知する電子磁気コンパス、ジャイロコンパスおよび加速度センサ等のセンサである。GPSセンサ104は、GPS衛星からGPS信号を受信する。バッテリ120は、移動体10の全体に必要な電力を供給するユニットである。なお、バッテリ120は、移動体10本体に内蔵されたもののほか、外部から補助的な電力供給の役割を担う外部バッテリを含んでもよい。障害物検知センサ106は、移動体10が移動する際における周囲の障害物を検知する検知センサである。障害物検知センサ106は、例えば、ステレオカメラ、もしくは光電変換素子が面状に配置されたエリアセンサを搭載したカメラ等の画像センサ、またはTOF(Time Of Flight)センサ、LIDAR(Light Detection and Ranging)センサ、レーダセンサ、レーザレンジファインダ、超音波センサ、デプスカメラもしくは深度センサ等の測距センサである。
○表示装置のハードウエア構成○
図4は、表示装置のハードウエア構成の一例を示す図である。表示装置50の各ハードウエア構成は、500番台の符号で示されている。表示装置50は、コンピュータによって構築されており、図4に示されているように、CPU501、ROM502、RAM503、HD504、HDDコントローラ505、ディスプレイ506、外部機器接続I/F507、ネットワークI/F508、バスライン510、キーボード511、ポインティングデバイス512、音入出力I/F513、マイク514、スピーカ515、カメラ516、DVD-RW(Digital Versatile Disk Rewritable)ドライブ517、およびメディアI/F519を備えている。
これらのうち、CPU501は、表示装置50全体の動作を制御する。ROM502は、IPL(Initial Program Loader)等のCPU501の駆動に用いられるプログラムを記憶する。RAM503は、CPU501のワークエリアとして使用される。HD504は、プログラム等の各種データを記憶する。HDDコントローラ505は、CPU501の制御にしたがってHD504に対する各種データの読み出しまたは書き込みを制御する。ディスプレイ506は、カーソル、メニュー、ウィンドウ、文字、または画像等の各種情報を表示する。なお、ディスプレイ506は、入力手段を備えたタッチパネルディスプレイであってもよい。また、ディスプレイ506は、表示部の一例である。ディスプレイ506としての表示部は、表示装置50に接続された表示機能を備える外部装置であってもよい。この場合の表示部は、例えば、IWB(Interactive White Board:電子黒板)等の外部ディスプレイ、または外部装置として接続されたPJ(Projector:プロジェクタ)またはHUD(Head-Up Display)からの画像が投影される被投影部(例えば、管理拠点の天井もしくは壁、自動車のフロントガラス等)であってもよい。外部機器接続I/F507は、各種の外部機器を接続するためのインターフェースである。ネットワークI/F508は、通信ネットワーク100を利用してデータ通信をするためのインターフェースである。バスライン510は、図4に示されているCPU501等の各構成要素を電気的に接続するためのアドレスバスまたはデータバス等である。
また、キーボード511は、文字、数値、各種指示等の入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス512は、各種指示の選択もしくは実行、処理対象の選択、またはカーソルの移動等を行う入力手段の一種である。なお、入力手段は、キーボード511およびポインティングデバイス512のみならず、タッチパネルまたは音声入力装置等であってもよい。また、キーボード511およびポインティングデバイス512等の入力手段は、表示装置50の外部のUI(User Interface)であってもよい。音入出力I/F513は、CPU501の制御に従ってマイク514およびスピーカ515との間で音信号の入出力を処理する回路である。マイク514は、音声を入力する内蔵型の集音手段の一種である。スピーカ515は、音声信号を出力する内蔵型の出力手段の一種である。カメラ516は、被写体を撮像して画像データを得る内蔵型の撮像手段の一種である。なお、マイク514、スピーカ515およびカメラ516は、表示装置50の内蔵型ではなく、外付けの装置であってもよい。DVD-RWドライブ517は、着脱可能な記録媒体の一例としてのDVD-RW518に対する各種データの読み出しまたは書き込みを制御する。なお、着脱可能な記録媒体は、DVD-RWに限らず、DVD-RまたはBlu-ray(登録商標) Disc(ブルーレイディスク)等であってもよい。メディアI/F519は、フラッシュメモリ等の記録メディア521に対するデータの読み出しまたは書き込み(記憶)を制御する。
なお、上記各プログラムは、インストール可能な形式または実行可能な形式のファイルで、コンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。記録媒体の例として、CD-R(Compact Disc Recordable)、DVD(Digital Versatile Disk)、Blu-ray Disc、SDカードまたはUSBメモリ等が挙げられる。また、記録媒体は、プログラム製品(Program Product)として、国内または国外へ提供されることができる。例えば、表示装置50は、本発明に係るプログラムが実行されることで本発明に係る表示制御方法を実現する。
●機能構成
続いて、図5乃至図8を用いて、実施形態に係る通信システムの機能構成について説明する。図5は、通信システムの機能構成の一例を示す図である。なお、図5は、図1に示されている装置または端末のうち、後述の処理または動作に関連しているものを示す。
○移動体(制御装置)の機能構成○
まず、図5を用いて、移動体10の処理または動作を制御する制御装置30の機能構成について説明する。制御装置30は、送受信部31、判断部32、撮影制御部33、状態検知部34、地図情報管理部35、目的地系列管理部36、自己位置推定部37、経路情報生成部38、経路情報管理部39、移動先設定部40、移動制御部41、モード設定部42、自律移動処理部43、手動操作処理部44、精度算出部45、画像生成部46、学習部47および記憶・読出部49を有している。これら各部は、図3に示されている各構成要素のいずれかが、RAM303上に展開された制御装置用プログラムに従ったCPU301からの命令によって動作することで実現される機能、または機能する手段である。また、制御装置30は、図3に示されているROM302、HD304aまたは記録メディア305aによって構築される記憶部3000を有している。
送受信部31は、主に、ネットワークI/F308に対するCPU301の処理によって実現され、通信ネットワーク100を介して、他の装置または端末との間で各種データまたは情報の送受信を行う。
判断部32は、CPU301の処理によって実現され、各種判断を行う。撮影制御部33は、主に、外部機器接続I/F311に対するCPU301の処理によって実現され、撮影装置12に対する撮影処理を制御する。撮影制御部33は、例えば、撮影装置12に対する撮影処理を指示する。また、撮影制御部33は、例えば、撮影装置12による撮影処理で得られた撮影画像を取得する。
状態検知部34は、主に、外部機器接続I/F311に対するCPU301の処理によって実現され、各種センサを用いて移動体10または移動体10の周囲の状態を検知する。状態検知部34は、例えば、障害物検知センサ106等を用いて、移動体10の周囲に存在する物体(障害物)までの距離を計測し、距離データとして出力する。
また、状態検知部34は、例えば、GPSセンサ104等を用いて、移動体10の位置を検知する。具体的には、状態検知部34は、GPSセンサ104等を用いて、地図情報管理DB3001に記憶されている環境地図上の位置を取得する。また、状態検知部34は、障害物検知センサ106等を用いて計測された距離データを用いて、SLAM(Simultaneous Localization and Mapping)を適用して環境地図との照合により位置を取得する構成であってもよい。ここで、SLAMは、自己位置推定と環境地図作成を同時に行うことが可能な技術である。
さらに、状態検知部34は、例えば、加速度・方位センサ103等を用いて、移動体10が向いている方向を検知する。
地図情報管理部35は、主に、CPU301の処理によって実現され、地図情報管理DB3001を用いて、移動体10が設置された対象拠点の環境地図を示す地図情報を管理する。地図情報管理部35は、例えば、外部のサーバ等からダウンロードした環境地図、またはSLAMを適用して作成された環境地図を示す地図情報を管理する。
目的地系列管理部36は、主に、CPU301の処理によって実現され、目的地系列管理DB3002を用いて、移動体10の移動経路上の目的地系列を管理する。目的地系列は、移動体10の移動経路上の最終目的地(ゴール)と最終目的地までの複数のウェイポイント(サブゴール)を含む。目的地系列は、例えば、緯度経度等の地図上の位置(座標値)を示す位置情報によって特定されるデータである。目的地系列は、例えば、移動体10を遠隔操作して指定することで得られる。指定方法は、例えば、環境地図上からGUI(Graphical user Interface)等で指定してもよい。
自己位置推定部37は、主に、CPU301の処理によって実現され、状態検知部34で検知された位置情報および移動体10が向いている方向を示す方向情報に基づいて、移動体10の現在位置(自己位置)を推定する。自己位置推定部37は、例えば、現在位置(自己位置)の推定に、拡張カルマンフィルタ(EKF:Extended Kalman Filter)等の手法を用いる。
経路情報生成部38は、主に、CPU301の処理によって実現され、移動体10の移動経路を示す経路情報を生成する。経路情報生成部38は、自己位置推定部37によって推定された移動体10の現在位置(自己位置)および目的地系列管理部36で管理されている目的地系列を用いて、最終目的地(ゴール)および複数のウェイポイント(サブゴール)を設定し、現在位置から最終目的地までの経路を示す経路情報を生成する。経路情報の生成方法は、例えば、現在位置から最終目的地までの各ウェイポイントを直線で結ぶ、または撮影画像もしくは状態検知部34によって得られる障害物の情報を用いて、障害物を回避しつつ移動時間を最小にする方法等を用いる。
経路情報管理部39は、主に、CPU301の処理によって実現され、経路情報管理DB3003を用いて、経路情報生成部38によって生成された経路情報を管理する。
移動先設定部40は、主に、CPU301の処理によって実現され、移動体10の移動先を設定する。移動先設定部40は、例えば、自己位置推定部37によって推定された移動体10の現在位置(自己位置)に基づいて、目的地系列管理部36で管理されている目的地系列の中から現在向かうべき目的地(現在のゴール)またはウェイポイント(サブゴール)を、移動先として設定する。移動先の設定方法は、例えば、まだ到達していない目的地系列(例えば、ステータスが「未到達」)の中で、移動体10の現在位置(自己位置)と最も近い目的地系列を設定する方法、またはまだ到達していない目的地系の中で、最もデータインデックスが小さい目的地系列を設定する方法等を用いる。
移動制御部41は、主に、外部機器接続I/F311に対するCPU301の処理によって実現され、移動機構15を駆動させることによって、移動体10の移動を制御する。移動制御部41は、例えば、自律移動処理部43または手動操作処理部44からの駆動命令に応じて、移動体10を移動させる。
モード設定部42は、主に、CPU301の処理によって実現され、移動体10を移動させる動作を示す動作モードの設定を行う、モード設定部42は、移動体10を自律移動させる自律移動モードおよび移動体10を操作者の手動操作により移動させる手動操作モードのいずれかの設定を行う。モード設定部42は、例えば、表示装置50から送信された切替要求に応じて、自律移動モードと手動操作モードの設定を切り替える。
自律移動処理部43は、主に、CPU301の処理によって実現され、移動体10の自律移動処理を制御する。自律移動処理部43は、例えば、経路情報生成部38によって生成された経路情報に示されている移動経路を通るように移動制御部41に対する移動体10の駆動命令を出力する。
手動操作処理部44は、主に、CPU301の処理によって実現され、移動体10の手動操作処理を制御する。手動操作処理部44は、例えば、表示装置50から送信された手動操作コマンドに応じて、移動制御部41に対する移動体10の駆動命令を出力する。
精度算出部45は、主に、CPU301の処理によって実現され、移動体10の自律移動の精度を算出する。ここで、移動体10の自律移動の精度は、移動体10が自律移動可能かどうかの確信度(自信度)を示す情報であり、算出される数値が高いほど移動体10が自律移動可能であることを示す。自律移動の精度の算出は、例えば、自己位置推定部37によって推定された自己位置の尤度の値に基づいて尤度が低くなったら数値を下げる、各種センサの分散等を用いて分散が大きいほど数値を下げる、自律移動処理部43による動作状態である移動経過時間を用いて自律移動モードの移動経過時間が長いほど数値を下げる、目的地系列と移動体10との距離に応じて距離が大きくなるほど数値を下げる、または状態検知部34によって検知された障害物の情報に応じて障害物が多い場合は数値を下げる等の方法を用いることができる。
画像生成部46は、主に、CPU301の処理によって実現され、表示装置50に表示させる表示画像を生成する。画像生成部46は、例えば、撮影制御部33によって撮影された撮影画像上における目的地系列管理部36によって管理されている目的地系列を示す経路画像を生成する。画像生成部46は、撮影制御部33によって取得された撮影画像データに対して、生成された経路画像を移動体10の移動経路上に描画する。撮影画像データへの経路画像の描画方法は、例えば、自己位置推定部37によって推定された移動体10の自己位置(現在位置)、撮影装置12の設置位置および撮影画像データの画角に基づいて、経路画像を透視投影変換して描画する方法等を用いる。なお、撮影画像データには、撮影装置12の撮影方向等を特定するためのPTZ(Pan-Tilt-Zoom)のパラメータを含ませてもよい。PTZのパラメータを含む撮影画像データは、移動体10の記憶部3000等に記憶(保存)される。また、PTZのパラメータは、目的地候補、すなわち目的地系列をなす最終目的地(ゴール)および最終目的地までの複数のウェイポイント(サブゴール)の位置情報と紐づけて記憶部3000に記憶させる構成であってもよい。また、目的地候補の位置情報と併せて、目的地候補の撮影画像データを取得したときの移動体10の姿勢を示す座標データ(x,y,θ)を同時に記憶部3000に記憶させる構成であってもよい。これにより、目的地に対する移動体10の実際の停止位置にずれが生じた場合に、PTZのパラメータと座標データ(x,y,θ)を用いて移動体10の姿勢を補正することが可能になる。なお、移動体10の自律移動経路(GPS軌跡)のデータ、および表示装置50への表示に用いる目的地候補の撮影画像データ等、一部のデータは、例えば、AWS(Amazon Web Services)(商標)等のクラウドコンピューティングサービスに蓄積する構成としてもよい。
また、画像生成部46は、例えば、自己位置推定部37によって推定された移動体10の現在位置(自己位置)と目的地系列管理部36によって管理されている目的地系列を、地図情報管理部35によって管理されている環境地図へ描画する。環境地図への描画方法は、例えば、GPSの経度緯度等の位置情報を用いる方法、またはSLAMにより得られる座標情報を用いる方法等である。
学習部47は、主に、CPU301の処理によって実現され、移動体10の自律移動を行うための移動経路の学習を行う。学習部47は、例えば、手動操作処理部44による手動操作モードにおける移動動作の際に取得された撮影画像および状態検知部34による検知データに基づいて、自律移動に関する移動経路の模倣学習(機械学習)を行う。自律移動処理部43は、例えば、学習部47による模倣学習の結果である学習データに基づいて、移動体10の自律移動を行う。
記憶・読出部49は、主に、CPU301の処理によって実現され、記憶部3000に、各種データ(または情報)を記憶したり、記憶部3000から各種データ(または情報)を読み出したりする。
○地図情報管理テーブル
図6は、地図情報管理テーブルの一例を示す概念図である。地図情報管理テーブルは、移動体10が設置された対象拠点の環境地図である地図情報を管理するためのテーブルである。記憶部3000には、図6に示されているような地図情報管理テーブルによって構成されている地図情報管理DB3001が構築されている。
地図情報管理テーブルは、移動体10が設置された対象拠点を識別する拠点IDおよび拠点名、並びに対象拠点の環境地図の記憶位置が関連づけられた地図情報を管理している。このうち、記憶位置は、例えば、環境地図が記憶された移動体10内の記憶領域または外部サーバへアクセスするための宛先情報であり、URL(Uniform Resource Locator)またはURI(Uniform Resource Identifier)によって示される。
○目的地系列管理テーブル
図7は、目的地系列管理テーブルの一例を示す概念図である。目的地系列管理テーブルは、移動体10の移動経路を特定するための移動経路上の最終目的地または複数のウェイポイントを含む目的地系列を管理するためのテーブルである。記憶部3000には、図7に示されているような目的地系列管理テーブルによって構成されている目的地系列管理DB3002が構築されている。
目的地系列管理テーブルは、移動体10が設置された拠点を識別する拠点IDおよび移動体10の移動経路を識別する経路IDごとに、目的地系列を識別する系列ID、目的地系列の環境地図上の位置を示す位置情報および目的地系列に対する移動体10の移動状態を示すステータスの情報を関連づけて管理している。このうち、位置情報は、目的地系列の移動体10の環境地図上の位置を示す緯度および経度の座標情報によって表される。また、ステータスは、移動体10が目的地系列に到達したか否かの情報を示す。ステータスは、例えば、「到達済」、「現在の目的地」および「未到達」等を含む。ステータスは、移動体10の現在位置および移動状態に応じて更新される。
○経路情報管理テーブル
図8は、経路情報管理テーブルの一例を示す概念図である。経路情報管理テーブルは、移動体10の移動経路を示す経路情報を管理するためのテーブルである。記憶部3000には、図8に示されているような経路情報管理テーブルによって構成されている経路情報管理DB3003が構築されている。
経路情報管理テーブルは、移動体10が設置された拠点を識別する拠点IDごとに、移動体10の移動経路を識別する経路IDおよび移動体10の移動経路を示す経路情報を関連づけて管理している。このうち、経路情報は、移動体10のこれからの移動経路を、将来の移動先となる目的地系列の順に示している。経路情報は、経路情報生成部38によって移動体10の移動を開始する際に生成される。
○表示装置の機能構成○
次に、図5を用いて、表示装置50の機能構成について説明する。表示装置50は、送受信部51、受付部52、表示制御部53、判断部54、音出力部55および記憶・読出部59を有している。これら各部は、図4に示されている各構成要素のいずれかが、RAM503上に展開された表示装置用プログラムに従ったCPU501からの命令によって動作することで実現される機能、または機能する手段である。また、表示装置50は、図4に示されているROM502、HD504または記録メディア521によって構築される記憶部5000を有している。
送受信部51は、主に、ネットワークI/F508に対するCPU501の処理によって実現され、他の装置または端末との間で各種データまたは情報の送受信を行う。
受付部52は、主に、キーボード511またはポインティングデバイス512に対するCPU501の処理によって実現され、利用者から各種の選択または入力を受け付ける。表示制御部53は、主に、CPU501の処理によって実現され、ディスプレイ506等の表示部に各種画面を表示させる。判断部54は、CPU501の処理によって実現され、各種判断を行う。音出力部55は、主に、音入出力I/F513に対するCPU501の処理によって実現され、移動体10の状態に応じてスピーカ515から警告音等の音声信号を出力する。
記憶・読出部59は、主に、CPU501の処理によって実現され、記憶部5000に、各種データ(または情報)を記憶したり、記憶部5000から各種データ(または情報)を読み出したりする。
●実施形態の処理または動作
○移動制御処理○
続いて、図9乃至図21を用いて、実施形態に係る通信システムの処理または動作について説明する。まず、図9を用いて、移動体10の移動操作についての全体の流れについて概略的に説明する。図9は、移動体の移動制御処理の一例を示すシーケンス図である。なお、図9に示されている各処理の詳細については、後述の図10乃至図19を用いて説明する。
まず、移動体10は、移動先設定部40によって移動体10の移動先となる現在の目的地の設定を行う(ステップS1)。この場合、移動先設定部40は、目的地系列管理DB3002(図7参照)に記憶されている目的地系列の位置およびステータスに基づいて、移動先の設定を行う。移動体10は、ステップS1で設定された移動先に対して、経路情報生成部38によって生成される経路情報に示されている移動経路に従う移動を開始する(ステップS2)。そして、移動体10は、ステップS1で設定された移動経路に従う移動中に、自己位置推定部37による自己位置推定、および移動先設定部40による最終目的地に到達するまでの直近の目的地である移動先の設定を行う(ステップS3)。
次に、表示装置50は、対象拠点内を移動中の移動体10から送信された各種データまたは情報に基づいて、移動体10を操作するための操作画面を、ディスプレイ506等の表示部に表示させる(ステップS4)。そして、移動体10は、表示装置50からの要求に基づいて自律移動と手動操作の切り替えを行う場合(ステップS5のYES)、処理をステップS6へ移行させる。一方で、移動体10は、自律移動と手動操作の切り替えを行わない場合(ステップS5のNO)、処理をステップS7へ移行させる。ステップS6において、移動体10は、モード設定部42によって移動体10の動作モードの切り替えを行い、対応する動作モード(自律移動モードまたは手動操作モード)に基づいた移動を行う。
そして、移動体10は、経路情報生成部38によって生成された経路情報に示されている最終目的地に到達した場合(ステップS7のYES)、処理を終了し、最終目的地で停止する。一方で、移動体10は、経路情報に示されている最終目的地に到達するまで、ステップS3からの処理を継続する(ステップS7のNO)。なお、移動体10は、最終目的地に到達しなくても、移動開始から一定時間以上経過した場合、移動経路上に障害物を検知した場合、または操作者からの停止命令を取得した場合等において、移動体10の移動を一時停止または移動処理の動作を途中で終了する構成であってもよい。
○移動体の移動開始までの処理
次に、図10乃至図11を用いて、移動体10の移動開始までの処理について説明する。図10は、移動体の移動開始までの処理の一例を示すシーケンス図である。
まず、表示装置50の送受信部51は、操作者の所定の入力操作等に応じて、移動体10に対して、移動体10の移動経路の入力を要求する旨を示す経路入力要求を送信する(ステップS11)。この経路入力要求には、移動体10が位置する拠点を識別する拠点IDを含む。これにより、移動体10が備える制御装置30の送受信部31は、表示装置50から送信された経路入力要求を受信する。
次に、制御装置30の地図情報管理部35は、ステップS11で受信された拠点IDを検索キーとして地図情報管理DB3001(図6参照)を検索することで、受信された拠点IDと同じ拠点IDに関連づけられた地図情報を、記憶・読出部49を介して読み出す(ステップS12)。ここで、地図情報管理DB3001には、図6に示されているように、予め外部サーバ等からダウンロードされた環境地図またはSLAMを適用して移動体10を遠隔操作して作成した環境地図の記憶位置が示されている。地図情報管理部35は、読み出された地図情報に示されている記憶位置にアクセスして、対応する地図画像データを読み出す。
次に、送受信部31は、要求元の表示装置50に対して、ステップS12で読み出された地図情報に対応する地図画像データを送信する(ステップS13)。これにより、表示装置50の送受信部51は、移動体10から送信された地図画像データを受信する。
次に、表示装置50の表示制御部53は、ステップS13で受信された地図画像データを含む経路入力画面200を、ディスプレイ506等の表示部に表示させる(ステップS14)。図11は、経路入力画面の一例を示す図である。図11に示されている経路入力画面200は、操作者が移動体10を移動させたい経路を入力するための表示画面である。
経路入力画面200には、ステップS13で受信された地図画像データに係る地図画像が表示されている。また、経路入力画面200は、表示された地図画像の拡大・縮小を行う場合に押下される表示選択ボタン205および経路入力処理を完了する場合に押下される「完了」ボタン210を含む。
図11Aに示されているように、経路入力画面200には、操作者がポインティングデバイス512等の入力手段を用いて地図画像上の所定の位置を選択することで、目的地系列250aが表示される。操作者は、経路入力画面200に表示された地図画像を見ながら、地図画像上の位置を選択していく。これにより、経路入力画面200には、図11Bに示されているように、操作者によって選択された位置に対応する複数の目的地系列250a~250hが表示される。
そして、図11Bに示されているように、操作者が地図画像上の所定の位置を選択して「完了」ボタン210を押下することで、受付部52は、目的地系列250a~250hの入力を受け付ける(ステップS15)。送受信部51は、移動体10に対して、ステップS15で受け付けられた目的地系列250a~250hを示す目的地系列データを送信する(ステップS16)。この目的地系列データは、ステップS15で入力された目的地系列250a~250hの地図画像上の位置を示す位置情報を含む。これにより、移動体10が備える制御装置30の送受信部31は、表示装置50から送信された目的地系列データを受信する。
次に、制御装置30の目的地系列管理部36は、ステップS16で受信された目的地系列データを、ステップS11で受信された拠点IDに関連づけて目的地系列管理DB3002(図7参照)に、記憶・読出部49を介して記憶させる(ステップS17)。目的地系列管理部36は、受信された目的地系列データに示されている複数の目的地系列(例えば、目的地系列250a~250h)を系列IDによって特定し、系列IDごとに対応する目的地系列の地図画像上の位置を示す位置情報を関連づけて記憶する。
次に、自己位置推定部37は、移動体10の現在位置を推定する(ステップS18)。具体的には、自己位置推定部37は、状態検知部34によって検知された移動体10の位置を示す位置情報および移動体10の向いている方向を示す方向情報を用いた拡張カルマンフィルタ等の手法によって、移動体10の自己位置(現在位置)を推定する。
次に、経路情報生成部38は、ステップS18で推定された自己位置およびステップS16で受信された目的地系列データに基づいて、移動体10の移動経路を示す経路情報を生成する(ステップS19)。具体的には、経路情報生成部38は、ステップS18で推定された移動体10の現在位置(自己位置)およびステップS16で受信された目的地系列データを用いて、移動体10の最終目的地(ゴール)および複数のウェイポイント(サブゴール)を設定する。そして、経路情報生成部38は、現在位置から最終目的地までの移動体10の移動経路を示す経路情報を生成する。経路情報生成部38は、例えば、現在位置から最終目的地までの各ウェイポイントを直線で結ぶ方法、または撮影画像または状態検知部34によって得られる障害物の情報を用いて、障害物を回避しつつ移動時間を最小にする方法を用いて移動経路を特定する。そして、経路情報管理部39は、経路情報生成部38によって生成された経路情報を、生成された経路IDに関連づけて経路情報管理DB3003(図8参照)に、記憶・読出部49を介して記憶させる。
次に、移動先設定部40は、ステップS18で推定された移動体10の現在位置およびステップS19で生成された経路情報に基づいて、移動体10の移動先を設定する(ステップS20)。具体的には、移動先設定部40は、推定された移動体10の現在位置(自己位置)に基づいて、生成された経路情報に示されている目的地系列の中から現在向かうべき目的地(現在のゴール)を、移動先として設定する。移動先設定部40は、例えば、まだ到達していない目的地系列(例えば、ステータスが「未到達」)の中で、移動体10の現在位置(自己位置)と最も近い目的地系列を移動体10の移動先として設定する。そして、移動制御部41は、ステップS20で設定された移動先への移動体10の移動処理を開始する(ステップS21)この場合、移動制御部41は、自律移動処理部43からの駆動命令に応じて、移動体10を自律移動させる。
このように、通信システム1は、操作者によって入力された目的地系列に応じて生成された移動経路に基づいて、移動体10を自律移動させることができる。なお、ステップS15において経路入力画面200に表示された地図画像上の位置を選択することによって目的地系列を選択する例を説明したが、経路入力画面200は、学習部47による学習データである過去の撮影画像を複数表示させ、操作者が表示された撮影画像を選択することによって、撮影画像の撮影位置に対応する目的地系列を選択させる構成であってもよい。この場合、目的地系列データは、位置情報に変えて、選択された撮影画像を識別する情報を含む。目的地系列管理DB3002には、位置情報に変えて撮影画像の識別情報が記憶される。
○移動体に対する操作者による移動制御
次に、図12乃至図19を用いて、操作者の遠隔操作による移動中の移動体10に対する制御処理について説明する。図12は、操作画面を用いた移動体の自律移動と手動操作の切替処理の一例を示すシーケンス図である。図12は、移動体10が図10に示されている処理によって拠点内の自律移動を開始している場合の例を示す。
まず、移動体が備える制御装置30の精度算出部45は、移動体10の自律移動精度を算出する(ステップS31)。精度算出部45は、例えば、経路情報生成部38によって生成された経路情報および自己位置推定部37によって推定された移動体10の現在位置に基づいて、自律移動精度を算出する。移動体10の自律移動の精度は、移動体10が自律移動可能かどうかの確信度(自信度)を示す情報であり、算出される数値が高いほど移動体10が自律移動可能であることを示す。また、精度算出部45は、例えば、学習部47による学習データおよび自己位置推定部37によって推定された移動体10の現在位置に基づいて、自律移動精度を算出してもよい。この場合、移動体10の自律移動の精度は、自律移動に関する学習精度を示す情報である。
また、精度算出部45は、自己位置推定部37によって推定された自己位置の尤度の値に基づいて尤度が低くなったら数値を下げる、または各種センサの分散等を用いて分散が大きいほど数値を下げるように、自律移動精度を算出してもよい。さらに、精度算出部45は、例えば、自律移動処理部43による動作状態である移動経過時間を用いて自律移動モードの移動経過時間が長いほど数値を下げる、または目的地系列と移動体10との距離に応じて距離が大きくなるほど数値を下げるように、自律移動精度を算出してもよい。また、精度算出部45は、例えば、状態検知部34によって検知された障害物の情報に応じて障害物が多い場合は数値を下げるように、自律移動精度を算出してもよい。
撮影制御部33は、拠点内を移動しながら撮影装置12を用いた撮影処理を行う(ステップS32)。画像生成部46は、ステップS32における撮影処理によって取得された撮影画像上に表示させる仮想的な経路画像を生成する(ステップS33)。経路画像は、例えば、自己位置推定部37によって推定された移動体10の現在位置、並びに目的地系列管理DB3002に記憶された目的地系列ごとの位置情報およびステータスに基づいて生成される。また、画像生成部46は、ステップS32で撮影された撮影画像に対して、ステップS33で生成された経路画像が描画された撮影表示画像を生成する(ステップS34)。
さらに、画像生成部46は、ステップS12で読み出された地図画像に対して、自己位置推定部37によって推定された移動体10の現在位置(自己位置)を示す現在位置表示画像およびステップS16で受信された目的地系列を示す系列画像が描画された地図表示画像を生成する(ステップS35)。
なお、ステップS31~ステップS35の処理の順序は前後してもよく、またはそれぞれ並行して行われてもよい。移動体10は、拠点を移動しながらステップS31~ステップS35の処理を継続的に実行する。移動体10は、ステップS31からステップS35の処理によって、移動体10の自律移動がうまくいっているかどうかを操作者に提示するための各種情報を生成する。
次に、送受信部31は、表示装置50に対して、ステップS31で算出された自律移動精度を示す通知情報、ステップS34で生成された撮影表示画像データ、およびステップS35で生成された地図表示画像データを送信する(ステップS36)。これにより、表示装置50の送受信部51は、移動体10から送信された通知情報、撮影表示画像データおよび地図表示画像データを受信する。
次に、表示装置50の表示制御部53は、操作画面400をディスプレイ106等の表示部に表示させる(ステップS37)。図13は、操作画面の一例を示す図である。図13に示されている操作画面400は、操作者が移動体10の遠隔操作を行うためのGUIの一例である。
操作画面400は、ステップS36で受信された地図表示画像データを表示する地図表示画像領域600、ステップS36で受信された撮影表示画像データを表示する撮影表示画像領域700、ステップS36で受信された通知情報を表示させる通知情報表示領域800、および自律移動モードと手動操作モードとを切り替える切替操作を受け付けるモード切替ボタン900を含む。
このうち、地図表示画像領域600に表示される地図表示画像は、移動体10の現在位置を示す現在位置表示画像601、移動体10の移動経路を構成する目的地系列を示す系列画像611,613,615、および移動体10の移動経路の軌跡を示す軌跡表示画像を、地図画像上に重畳させて表示している。また、地図表示画像領域600は、表示された地図画像の拡大・縮小を行う場合に押下される表示選択ボタン605を含む。
系列画像611,613,615は、地図画像上における目的地系列を、移動体10が既に移動した位置を示す移動履歴、現在の目的地および将来の目的地を操作者が識別可能に表示している。このうち、系列画像611は、移動体10が到達済みの目的地系列を示す。また、系列画像613は、移動体10の現在の目的地である目的地系列を示す。さらに、系列画像615は、移動体10の未到達の目的地(将来の目的地)を示す。系列画像611,613,615は、ステップS35の処理において、目的地系列管理DB3002に記憶された目的地系列のステータスに基づいて生成される。
撮影表示画像領域700に表示される撮影表示画像は、ステップS33の処理において生成された移動体10の移動経路を仮想的に示す経路画像711,713,715を含む。経路画像711,713,715は、撮影画像に写る拠点の位置に対応する目的地系列を、移動体10が既に移動した位置を示す移動履歴、現在の目的地および将来の目的地として操作者が識別可能に表示されている。このうち、経路画像711は、移動体10が到達済みの目的地系列を示す。また、経路画像713は、移動体10の現在の目的地である目的地系列を示す。さらに、経路画像715は、移動体10の未到達の目的地(将来の目的地)を示す。経路画像711,713,715は、ステップS33の処理において、目的地系列管理DB3002に記憶された目的地系列のステータスに基づいて生成される。なお、撮影表示画像領域700には、撮影装置12による撮影画像を、インターネットなどのコンピュータネットワークを通じてリアルタイムに配信されるライブストリーミング(live streaming)映像として表示させてもよい。
通知情報表示領域800には、ステップS36で受信された通知情報に示されている自律移動精度に関する情報が表示されている、通知情報表示領域800は、自律移動精度の情報を数値(%)で表示する数値表示領域810、および自律移動精度を示す数値を離散化し、自律移動の度合として表示する度合表示領域830を含む。数値表示領域810は、ステップS31の処理において算出された自律移動精度の数値を示す。また、度合表示領域830は、自律移動精度の数値に所定の閾値を設けて、数値に値に応じた自律移動の精度の度合(「高、中、低」)を示す。ここで、数値表示領域810に示されている自律移動精度を示す数値および度合表示領域830に示されている自律移動の度合は、自律移動の精度を示す通知情報の一例である。なお、通知情報表示領域800は、数値表示領域810および度合い表示領域830の少なくともいずれかを含む構成であればよい。
モード切替ボタン900は、自律移動モードと手動操作モードとを切り替える切替操作を受け付ける操作受付手段の一例である。操作者は、所定の入力手段を用いてモード切替ボタン900を選択することで、移動体10の自律移動モードと手動操作モードを相互に切替可能である。
図13に示されている例において、操作画面400は、移動体10が系列画像613および経路画像713の位置を現在の目的地として自律移動している状態を示す。また、操作画面400は、移動体10の現在の自律移動の精度が「93.8%」であり、比較的高い自律移動精度であることを示す。
図14は、図13に示されている状態から移動体10が移動した状態を示す。図14に示されている操作画面400では、図13に示す状態から移動体10が移動したため、現在の目的地を示す系列画像613および経路画像713の位置を変化している。また、図14に示されている操作画面400では、移動体10の現在の自律移動の精度が「87.9%」であり、図13に示す状態から自律移動精度の数値が下がっており、自律移動精度の度合も「高」から「中」に変化している。操作者は、操作画面400に示されている地図表示画像および拠点表示画像に示されている拠点の状況、並びに通知情報表示領域に示されている自律移動精度の変化を閲覧することで、移動体10を自律移動と手動操作の切り替えを行うか否かを判断することができる。
図12に戻り、操作者のポインティングデバイス512等の入力手段を用いた入力操作に応じて、受付部52は、操作画面400のモード切替ボタン900の選択を受け付ける(ステップS38)。操作画面400は、例えば、図15(A)に示されている状態において操作者がモード切替ボタン900(「手動操作への切替」と表示)を選択することで、図15(B)に示されているようなモード切替ボタン900(「自律移動再開」と表示)の表示に変化する。この場合、操作者は、移動体10の動作モードを自律移動モードから手動操作モードへ切り替えるために、モード切替ボタン900の選択を行う。
そして、送受信部51は、移動体10に対して、移動体10の自律移動モードと手動操作モードの切り替えを要求する旨を示すモード切替要求を送信する(ステップS39)。これにより、移動体10が備える制御装置30の送受信部31は、表示装置50から送信されたモード切替要求を受信する。
次に、制御装置30は、ステップS39におけるモード切替要求の受信に応じて、移動体10のモード切替処理を実行する(ステップS40)。
(自律移動と手動操作の切替処理)
ここで、図16を用いて、ステップS40におけるモード切替処理を詳細に説明する。図16は、移動体における自律移動モードと手動操作モードの切替処理の一例を示すフローチャートである。
まず、制御装置30は、送受信部31によって表示装置50から送信されたモード切替要求が受信された場合(ステップS51のYES)、処理をステップS52へ移行させる。一方で、制御装置30は、モード切替要求が受信するまでステップS51の処理を継続する(ステップS51のNO)。
次に、モード設定部42は、受信されたモード切替要求が手動操作モードへの切替を示す場合(ステップS52のYES)、処理をステップS53へ移行させる。移動制御部41は、自律移動処理部43からの自律移動処理の停止命令に応じて、移動体10の自律移動処理を停止させる(ステップS53)。そして、モード設定部42は、移動体10の動作を、自律移動モードから手動操作モードへ切り替える(ステップS54)。そして、移動制御部41は、手動操作処理部44からの駆動命令に応じて、手動操作による移動体10の移動を実行する(ステップS55)。
一方で、モード設定部42は、受信されたモード切替要求が手動操作モードへの切り替えを示さない場合、すなわち自律移動モードへの切り替えを示す場合、すなわち切替要求が自律移動モードへの切り替えを示す場合(ステップS52のNO)、処理をステップS56へ移行させる。モード設定部42は、移動体10の動作を、手動操作モードから自律移動モードへ切り替える(ステップS56)。そして、そして、移動制御部41は、自律移動処理部43からの駆動命令に応じて、自律移動による移動体10の移動を実行する(ステップS57)。
このように、表示装置50は、移動体10の移動経路上に示される経路画像711,713,715が撮影画像上に示されている撮影表示画像を含む操作画面400を表示させることで、自律移動と手動操作の切り替えの有無の判断を操作者に適切に行わせることができる。また、表示装置50は、目的地系列を示す系列画像611,613,615が地図画像上に示されている地図表示画像を、撮影表示画像ともに表示させることで、移動体10の移動状態をより視覚的に操作者に把握させることができるので、操作者の移動体10に対する操作性を向上させることができる。さらに、表示装置50は、撮影表示画像が表示された操作画面400上のモード切替ボタン900を用いて操作者に自律移動と手動操作の切り替えを行わせることで、操作者が自律移動と手動操作を切り替える場合の操作性を向上させることができる。また、移動体10は、表示装置50から送信された切替要求に応じて、動作モードである自律移動モードと手動操作モードの切り替えを行うことで、操作者の要求に応じた移動制御を行うことができる。
なお、移動体10は、表示装置50から送信された切替要求に応じた動作モードの切り替えだけでなく、例えば、精度算出部45によって算出された自律移動精度に応じて、自律移動精度の数値が所定の閾値を下回った場合に、自律移動モードから手動操作モードへの切り替えを行う構成であってもよい。
また、表示装置50は、操作画面400の表示のみならず、自律移動精度の度合を操作者に通知する手段を備えていてもよい。例えば、表示装置50の音出力部55は、自律移動精度の数値が所定の閾値を下回った場合に、スピーカ515から警告音を出力する構成であってもよい。また、表示装置50は、自律移動精度の数値が所定の閾値を下回った場合に、移動体の手動操作に用いるコントローラ等の入力手段を振動させる構成であってもよい。
さらに、表示装置50は、操作画面400に自律移動精度を直接表示するのではなく、自律移動精度の数値または度合に基づく所定のメッセージを、通知情報として表示させてもよい。この場合、操作画面400は、例えば、自律移動精度の数値または度合が所定の閾値を下回った場合、操作者へ手動操作への切り替えを促すメッセージを表示させてもよい。また、操作画面400は、例えば、自律移動精度の数値または度合が所定の閾値を上回った場合、操作者へ手動操作から自律移動への切り替えを促すメッセージを表示させてもよい。
○自律移動処理
次に、図17を用いて、ステップS57に示されている処理によって実行される移動体10の自律移動処理について説明する。図17は、移動体の自律移動処理の一例を示すフローチャートである。
まず、移動体10が備える制御装置30の移動先設定部40は、自己位置推定部37によって推定された移動体10の現在位置および経路情報管理DB3003(図8参照)に記憶された経路情報に基づいて、移動体10の移動先を設定する(ステップS71)。具体的には、移動先設定部40は、例えば、経路情報管理DB3003に記憶された経路情報に示されている目的地系列のうち、自己位置推定部37によって推定された移動体10の現在位置と最も近い目的地系列が示す位置を、移動先として設定する。図7に示されている例において、ステータスが現在の目的地である系列ID「P003」の目的地系列の位置が移動先として設定される。そして、移動先設定部40は、設定された移動先への移動経路を生成する。移動先設定部40による移動経路の生成方法は、現在位置と移動先を直線で結ぶ方法、または撮影画像もしくは状態検知部34によって得られる障害物の情報を用いて障害物を回避しつつ移動時間を最小にする方法等を用いる。
そして、移動制御部41は、ステップS71で生成された移動経路を通るように設定された移動先に対して、移動体10を移動させる。この場合、移動制御部41は、自律移動処理部43による駆動命令に応じて移動体10を自律移動させる。自律移動処理部43は、例えば、学習部47による模倣学習の結果である学習データに基づいた自律移動を実行させる(ステップS72)。
そして、移動制御部41は、移動体10が最終目的地に到達したかまたは自律移動処理部43による自律移動が中断した場合(ステップS73のYES)、処理を終了する。自律移動が中断した場合とは、例えば、図16に示されているような自律移動モードから手動操作モードへの切替要求に応じて、モード設定部42による自律移動モードから手動モードに切り替えが行われる場合である。一方で、移動制御部41は、移動体10の最終目的地への到達または自律移動処理部43による自律移動の中断が検知されるまで、ステップS72による自律移動処理を継続する(ステップS73のNO)。
このように、移動体10は、操作者からの切替要求等に応じて設定された自律移動モードにおける動作時において、生成された経路情報および手動操作モード時に学習された学習データ等を用いた自律移動を行うことができる。また、移動体10は、手動操作モードにおいて取得された各種データを用いて自律移動に関する学習を行うことで、学習データを用いた移動体10の自律移動を行うことができるとともに、移動体10の自律移動精度を向上させることができる。
○手動操作処理
次に、図18および図19を用いて、ステップS55に示されている処理によって実行される移動体10の手動操作処理について説明する。図18は、移動体の手動操作処理の一例を示すシーケンス図である。
まず、表示装置50の受付部52は、図19に示されているような操作コマンド入力画面450に対する操作者の入力操作に応じて、手動操作コマンドを受け付ける(ステップS91)。図19は、操作コマンド入力画面の一例を示す図である。図19に示されている操作コマンド入力画面450は、移動体10の遠隔操作を行うためのアイコンが表示されている。操作コマンド入力画面450は、例えば、移動体10の動作モードが手動操作モードに設定されている場合に、操作画面400上に表示される。操作コマンド入力画面450は、移動体10の水平方向(前進、後退、右回転、左回転)の移動を要求する場合に押下される移動指示キー455、および移動体10の移動速度の状態を示す移動速度を表示される速度バー457を含む。表示装置50を用いて移動体10を遠隔操作する操作者が移動指示キー455を選択することで、受付部52は、選択された移動指示キー455に対する手動操作コマンドを受け付ける。
なお、図19において、操作コマンド入力画面450に表示された移動指示キー455に対する選択を受け付けることによって移動体10の移動を遠隔操作する例を説明するが、移動体10の移動操作は、キーボード、またはジョイスティクを備えたゲームパッド等の専用コントローラ等で行われる構成であってもよい。また、操作者による移動指示キー455の入力操作において、移動体10が前進している途中で、操作者が「後退(↓)」を選択した場合は、撮影画像を移動体10の後方画面に切り替え、その時点から移動体10を後退(後進)させる構成としてもよい。また、表示装置50から移動体10への手動操作コマンドの送信は、例えば、AWS IoT Core(商標)のようなマネージドクラウドプラットフォームを介して行う構成であってもよい。
次に、送受信部51は、移動体10に対して、ステップS91で受け付けられた手動操作コマンドを送信する(ステップS92)。これにより、移動体10が備える制御装置30の送受信部31は、表示装置50から送信された手動操作コマンドを受信する。そして、制御装置30の手動操作処理部44は、ステップS92で受信された手動操作コマンドに基づく駆動命令を移動制御部41へ出力する。移動制御部41は、手動操作処理部44による駆動命令に応じて移動体10の移動処理を実行する(ステップS93)。また、学習部47は、手動操作処理部44による手動操作に応じた移動経路の模倣学習(機械学習)を行う(ステップS94)。学習部47は、例えば、手動操作処理部44による手動操作モードにおける移動動作の際に取得された撮影画像および状態検知部34による検知データに基づいて、自律移動に関する移動経路の模倣学習を行う。なお、学習部47は、手動操作の際に取得された撮影画像のみを用いて移動経路の模倣学習を行う構成であってもよいし、撮影画像と状態検知部34による検知データの両方を用いて移動経路の模倣学習を行う構成であってもよい。また、学習部47による模倣学習に用いる撮影画像は、自律移動処理部43による自律移動モードにおける自律移動の際に取得された撮影画像であってもよい。
このように、移動体10は、操作者からの切替要求等に応じて設定された手動操作モードにおける動作時において、操作者からの手動操作コマンドに応じた移動を行うことができる。また、移動体10は、手動操作モードにおいて取得された撮影画像等の各種データを用いて自律移動に関する学習を行うことができる。
○操作画面の変形例○
次に、図20乃至図25を用いて、表示装置50に表示させる操作画面400の変形例について説明する。図20は、操作画面の変形例1を示す図である。図20に示されている操作画面400Aは、操作画面400の構成に加えて、地図表示画像領域600および撮影表示画像領域700に自律移動精度を示す通知情報を表示している。
操作画面400Aの地図表示画像領域600に表示される地図表示画像は、操作画面400の地図表示画像領域600に表示された構成に加え、地図画像上に自律移動精度の度合を示す精度表示画像660を含む。同様に、操作画面400Aの撮影表示画像領域700に表示される撮影表示画像は、操作画面400の撮影表示画像領域700に表示された構成に加え、撮影画像上に自律移動精度の度合を示す精度表示画像760を含む。精度表示画像660,760は、自律移動精度の度合を円の大きさで表示している。精度表示画像660,760は、例えば、自律移動精度が高いほど円の大きさが小さくなり、自律移動精度が低いほど円の大きさを大きくして、自律移動または自己位置の不確実性を示す。ここで、精度表示画像660および精度表示画像760は、自律移動の精度を示す通知情報の一例である。なお、精度表示画像660,760は、自律移動精度の度合に応じて円の色を変える等の方法によって、自律移動精度の度合を示す構成であってもよい。
精度表示画像660は、精度算出部45によって算出された自律移動精度の数値に基づいて、ステップS35の処理によって地図画像上に描画されることによって生成される。同様に、精度表示画像760は、精度算出部45によって算出された自律移動精度の数値に基づいて、ステップS34の処理によって撮影画像上に描画されることによって生成される。操作画面400Aは、地図画像上に精度表示画像660を重畳させた地図表示画像、および撮影画像上に精度表示画像760を重畳させた撮影表示画像を表示する。
このように、操作画面400Aは、地図画像および撮影画像上に自律移動精度を示す画像を表示させることで、操作者に対して、移動体10の移動する状況を見ながら直観的に現在の移動体10の自律移動の精度を把握させることができる。
図21は、操作画面の変形例2を示す図である。図21に示されている操作画面400Bは、操作画面400の構成に加えて、操作画面400Aと同様に、地図表示画像領域600および撮影表示画像領域700に自律移動精度を示す通知情報を表示している。
操作画面400Bの地図表示画像領域600に表示される地図表示画像は、操作画面400の地図表示画像領域600に表示された構成に加え、地図画像上に自律移動精度の度合を示す精度表示画像670を含む。同様に、操作画面400Bの撮影表示画像領域700に表示される撮影表示画像は、操作画面400の撮影表示画像領域700に表示された構成に加え、撮影画像上に自律移動精度の度合を示す精度表示画像770を含む。精度表示画像670,770は、自律移動精度の度合を等高線図で表示している。精度表示画像670,770は、例えば、地図画像および撮影画像上でのそれぞれの位置における自律移動精度の度合を等高線で示す。ここで、精度表示画像670および精度表示画像770は、自律移動の精度を示す通知情報の一例である。なお、精度表示画像670,770は、自律移動精度の度合に応じて等高線の色を変える等の方法によって、自律移動精度の度合を示す構成であってもよい。
精度表示画像670は、精度算出部45によって算出された自律移動精度の数値に基づいて、ステップS35の処理によって地図画像上に描画されることによって生成される。同様に、精度表示画像770は、精度算出部45によって算出された自律移動精度の数値に基づいて、ステップS34の処理によって撮影画像上に描画されることによって生成される。操作画面400Bは、地図画像上に精度表示画像670を重畳させた地図表示画像、および撮影画像上に精度表示画像770を重畳させた撮影表示画像を表示する。
このように、操作画面400Bは、地図画像および撮影画像上に自律移動精度を示す等高線の画像を表示させることで、どのエリアの自律移動精度が低いのかが明確になり、操作者の手動操作の際に自律移動精度の高いルートを通るように視覚的に補助することができる。また、手動操作させるごとに自律移動性能を向上させる機械学習等を用いる場合において、通信システム1は、操作者が自律移動精度を示す等高線図を見て自律移動精度が低いところを手動操作によって移動させて学習データを蓄積することにより、自律移動可能なエリアを拡大させることができる。
図22は、操作画面の変形例3を示す図である。図22に示されている操作画面400Cは、操作画面400の構成に加えて、通知情報表示領域800に自律移動精度の度合を段階的に異なる顔画像で表示している。
操作画面400Cの通知情報表示領域800は、操作画面400の通知情報表示領域800に表示された構成に加えて、自律移動の度合を顔画像として示す度合表示領域835を含む。度合表示領域835は、度合表示領域830と同様に、自律移動精度を示す数値を離散化して自律移動の度合として表示する。度合表示領域835は、自律移動精度の数値に所定の閾値を設けて、精度算出部45によって算出された自律移動精度の数値に応じて顔画像の表情を切り替えて表示する。ここで、度合表示領域835に示されている顔画像は、自律移動の精度を示す通知情報の一例である。なお、度合表示領域835は、顔画像に限られず、自律移動精度の度合を操作者に段階的に認識させることが可能な所定のイラストの画像等を表示させる構成であってもよい。
図23は、操作画面の変形例4を示す図である。図23に示されている操作画面400Dは、操作画面400の構成に加えて、自律移動精度を操作画面の画面枠の色で表示している。
操作画面400Dは、操作画面400の構成に加えて、自律移動精度の度合を色に変換して画面枠として表示する画面枠表示領域430を含む。画面枠表示領域430は、自律移動精度の度合に応じて画面枠の色を変化させる。画面枠表示領域430は、自律移動精度の数値に所定の閾値を設けて、精度算出部45によって算出された自律移動精度の数値に応じて画面枠の色を変化させる。画面枠表示領域430は、例えば、自律移動精度が低い場合には画面枠の色を赤くして、自律移動精度が高い場合には画面枠の色を青くして表示する。ここで、画面枠表示領域430に示されている画面枠の色は、自律移動の精度を示す通知情報の一例である。なお、操作画面400Dは、画面枠だけでなく、自律移動精度の度合に応じて操作画面全体の色を変化させる構成であってもよい。
図24は、操作画面の変形例5を示す図である。図24に示されている操作画面400Eは、操作画面400の構成に加えて、地図表示画像領域600および撮影表示画像領域700に、手動操作時に移動体10に向かってほしい方向を表示している。
操作画面400Eの地図表示画像領域600に表示される地図表示画像は、操作画面400の地図表示画像領域600に表示された構成に加え、地図画像上に移動体10が手動操作時に向かってほしい方向を矢印で示す方向表示画像690を含む。同様に、操作画面400Eの撮影表示画像領域700に表示される撮影表示画像は、操作画面400の撮影表示画像領域700に表示された構成に加え、撮影画像上に移動体10が手動操作時に向かってほしい方向を矢印で示す方向表示画像790を含む。手動操作時に向かってほしい方向は、例えば、自律移動精度が高いエリアを示す方向であり、自律移動再開できる可能性が高い位置へ誘導する方向である。なお、方向表示画像690,790は、矢印を用いた表示に限られず、移動体10が手動操作時に向かってほしい方向を操作者が識別可能な表示構成であればよい。
このように、操作画面400Eは、地図画像および撮影画像上に手動操作時に移動体10が向かってほしい方向を表示させることで、移動体10を移動させるべき方向を操作者に視覚的に把握させることができる。
図25は、操作画面の変形例6を示す図である。図25に示されている操作画面400Fは、上述の各操作画面に表示されていた地図表示画像領域600を表示させずに、撮影表示画像領域700、通知情報表示領域800およびモード切替ボタン900が表示されている。
このうち、操作画面400Fの撮影表示画像領域700に表示される撮影表示画像は、操作画面400Bで示した精度表示画像760および操作画面400Eで示した方向表示画像690を撮影画像上に表示している。また、操作画面400Fに表示される撮影表示画像には、上述の各操作画面とは異なり、撮影画像上に経路画像711,713,715が表示されていない。通知情報表示領域800およびモード切替ボタン900は、操作画面400に表示された構成と同様である。
このように、操作画面400Fは、少なくとも移動体10が撮影した撮影画像および移動体10の自律移動精度を示す通知情報を表示させることで、必要最低限の情報を用いて、操作者に移動体10の移動状態を把握させることができる。なお、操作画面400Fは、図25に示されている要素に加えてまたは要素の変わりに、上述の各操作画面における撮影表示画像領域700および通知情報表示領域800に表示されている要素がそれぞれ表示される構成であってもよい。
●実施形態の効果
以上説明したように、通信システム1は、移動体10の移動経路上に示される経路画像711,713,715が撮影画像上に示されている撮影表示画像を、操作者が使用する操作画面に表示させることで、移動体10の移動状態を操作者に適切に把握させることができるとともに、自律移動と手動操作の切り替えの判断を操作者に容易に行わせることができる。また、通信システムは、撮影表示画像等が表示された操作画面上のモード切替ボタン900を用いて操作者に自律移動と手動操作の切り替えを行わせることで、操作者が自律移動と手動操作を切り替える場合の操作性を向上させることができる。
さらに、通信システム1は、操作者の切替要求に応じて、移動体10の自律移動モードと手動操作モードの切り替えを行うことができるので、操作者の要求に応じた移動体10の自律移動と手動操作の切替制御を行うことができる。また、通信システム1は、手動操作モードにおいて取得された撮影画像等を用いて自律移動に関する学習を行う移動体10に対して、手動操作による学習の必要性を、操作者により適切に判断させることができる。
ここで、上述の各操作画面には、少なくとも撮影表示画像領域700に示されている撮影表示画像が表示されている構成であればよい。また、各操作画面に示されているモード切替ボタン900は、操作画面に表示させずに、表示装置50のキーボード511等の入力手段をよって代用されてもよい。また、通信システム1は、表示装置50の外部に自律移動モードと手動操作モードの切替操作を受け付ける専用ボタン等の外部入力手段を備える構成であってもよい。これらの場合、表示装置50のキーボード511等の入力手段または表示装置50の外部の専用ボタン等の外部入力手段は、操作受付手段の一例である。さらに、モード切替ボタン900を含む操作画面を表示させる表示装置50もしくはキーボード511等の入力手段等を用いて切替操作を受け付ける表示装置50、または表示装置50と専用ボタン等の外部入力手段を含むシステムは、本実施形態における表示システムの一例である。さらに、操作受付手段には、モード切替ボタン900等を用いた自律移動モードと手動操作モードの切替操作のみでなく、移動体10の所定の制御を行うための操作を受け付け可能な手段が含まれていてもよい。
●実施形態の変形例
○変形例1○
続いて、図26および図27を用いて、実施形態に係る通信システムの変形例1について説明する。なお、上記の実施形態と同一の構成および同一の機能は、同一の符号を付して、その説明を省略する。変形例1に係る通信システム1Aは、移動体10Aの自律移動精度の算出および操作画面400等に表示させる各種表示画像の生成を、表示装置50Aで実行する場合の例である。
図26は、実施形態の変形例1に係る通信システムの機能構成の一例を示す図である。図26に示されている変形例1に係る表示装置50Aは、図5に示されている表示装置50の構成に加えて、精度算出部56および画像生成部57を含む。
精度算出部56は、主に、CPU501の処理によって実現され、移動体10Aの自律移動の精度を算出する。画像生成部57は、主に、CPU501の処理によって実現され、表示装置50Aに表示させる表示画像を生成する。精度算出部56および画像生成部57は、それぞれ図5に示されている精度算出部45および画像生成部46と同様の構成を有する。これに伴い、変形例1に係る移動体10Aの処理または動作を制御する制御装置30Aは、精度算出部45および画像生成部46の機能を備えていない構成となる。
図27は、実施形態の変形例1に係る操作画面を用いた移動体の自律移動と手動操作の切替処理の一例を示すシーケンス図である。図27は、図12と同様に、移動体10Aが図10に示されている処理によって拠点内の自律移動を開始している場合の例を示す。
まず、移動体10Aが備える制御装置30Aの撮影制御部33は、拠点内を移動しながら撮影装置12を用いた撮影処理を行う(ステップS101)。そして、送受信部31は、表示装置50Aに対して、ステップS101で撮影された撮影画像データ、ステップS12で読み出された地図画像データ、経路情報管理DB3003に記憶されている経路情報、自己位置推定部37によって推定された移動体10Aの現在位置(自己位置)を示す位置情報および学習部47による学習データを送信する(ステップS102)。これにより、表示装置50Aの送受信部51は、移動体10Aから送信された各種データおよび情報を受信する。
次に、表示装置50Aの精度算出部56は、移動体10Aの自律移動精度を算出する(ステップS103)。精度算出部45は、例えば、ステップS102で受信された経路情報および位置情報に基づいて、自律移動精度を算出する。また、精度算出部56は、例えば、ステップS102で受信された学習データおよび位置情報に基づいて、自律移動精度を算出してもよい。
次に、画像生成部57は、ステップS102で受信された撮影画像上に表示させる経路画像を生成する(ステップS104)。経路画像は、例えば、ステップS102で受信された位置情報、並びにステップS102で受信された経路情報に示されている目的地系列ごとの位置情報およびステータスに基づいて生成される。また、画像生成部57は、ステップS102で受信された撮影画像に対して、ステップS104で生成された経路画像が描画された撮影表示画像を生成する(ステップS105)。さらに、画像生成部57は、ステップS102で受信された地図画像に対して、ステップS102で受信された位置情報に示されている移動体10Aの現在位置(自己位置)を示す現在位置表示画像およびステップS102で受信された経路情報に示されている目的地系列を示す系列画像が描画された地図表示画像を生成する(ステップS106)。
なお、ステップS103,S104,S105,S106の処理の詳細は、それぞれ図12に示されているステップS31,S33,S34,S35の処理と同様である。なお、ステップS103~ステップS106の処理の順序は前後してもよく、またはそれぞれ並行して行われてもよい。表示装置50Aは、ステップS102の処理によって移動体10Aから送信された撮影画像データ等を随時受信し、ステップS103~ステップS106の処理を継続的に実行する。
次に、表示制御部53は、図13等に示されている操作画面400をディスプレイ106等の表示部に表示させる(ステップS107)。表示制御部53は、ステップS103~ステップS106の処理において算出または生成された情報を、操作画面400上に表示させる。なお、表示制御部53は、操作画面400に限られず、上述の操作画面400A~400Fのいずれかを表示させる構成であってもよい。以降のステップS108~ステップS110の処理は、図12に示されているステップS38~ステップS40の処理と同様であるため、説明を省略する。
このように、変形例1に係る通信システム1Aは、表示装置50Aにおいて自律移動精度の算出および各種表示画面の生成を行う場合であっても、撮影表示画像等を含む操作画面400を表示装置50Aに表示させることができるので、移動体10Aの移動状態および自律移動と手動操作の切り替えを操作者に容易に判断させることができる。
○変形例2○
続いて、図28乃至図31を用いて、実施形態に係る通信システムの変形例2について説明する。なお、上記の実施形態と同一の構成および同一の機能は、同一の符号を付して、その説明を省略する。変形例2に係る通信システム1Bは、移動体10Bの自律移動精度の算出および操作画面400等に表示させる各種表示画像の生成を、情報処理装置90で実行する場合の例である。
図28は、実施形態の変形例2に係る通信システムの全体構成の一例を示す図である。変形例2に係る通信システム1Bは、上述の実施形態の構成に加えて、移動体10Bおよび表示装置50Bと通信ネットワーク100を介して通信可能な情報処理装置90を備える。
情報処理装置90は、移動体10Bと表示装置50Bとの間の通信の管理、移動体10Bの各種制御、および表示装置50Bに表示させる各種表示画面の生成等を行うためのサーバコンピュータである。なお、情報処理装置90は、一台のサーバコンピュータによって構成されてもよく、複数のサーバコンピュータによって構成されてもよい。また、情報処理装置90は、クラウド環境に存在するサーバコンピュータであるものとして説明するが、オンプレミス環境に存在するサーバであってもよい。ここで、情報処理装置90のハードウエア構成は、図4に示されているような表示装置50と同様の構成を有する。以下、便宜上、情報処理装置90のハードウエア構成は、図4に示されている構成に対して900番台の符号を用いて説明する。
図29は、実施形態の変形例2に係る通信システムの機能構成の一例を示す図である。図29に示されている変形例2に係る表示装置50Bの構成は、図5に示されている表示装置50の構成と同様である。また、変形例2に係る移動体10Bの処理または動作を制御する制御装置30Bは、地図情報管理部35、精度算出部45および画像生成部46の機能並びに記憶部3000に構築されていた地図情報管理DB3001を備えていない構成となる。
情報処理装置90は、送受信部91、地図情報管理部92、精度算出部93、画像生成部94および記憶・読出部99を有している。これら各部は、図4に示されている各構成要素のいずれかが、RAM903上に展開された情報処理装置用プログラムに従ったCPU901からの命令によって動作することで実現される機能、または機能する手段である。また、情報処理装置90は、図4に示されているROM902、HD904または記録メディア921によって構築される記憶部9000を有している。
送受信部91は、主に、ネットワークI/F908に対するCPU901の処理によって実現され、他の装置または端末との間で各種データまたは情報の送受信を行う。
地図情報管理部92は、主に、CPU901の処理によって実現され、地図情報管理DB9001を用いて、移動体10Bが設置された対象拠点の環境地図を示す地図情報を管理する。地図情報管理部92は、例えば、外部のサーバ等からダウンロードした環境地図、またはSLAMを適用して作成された環境地図を示す地図情報を管理する。
精度算出部93は、主に、CPU901の処理によって実現され、移動体10Bの自律移動の精度を算出する。画像生成部94は、主に、CPU301の処理によって実現され、表示装置50Bに表示させる表示画像を生成する。精度算出部93および画像生成部94は、それぞれ図5に示されている精度算出部45および画像生成部46と同様の構成を有する。
記憶・読出部99は、主に、CPU901の処理によって実現され、記憶部9000に、各種データ(または情報)を記憶したり、記憶部9000から各種データ(または情報)を読み出したりする。また、記憶部9000には、地図情報管理DB9001が構築されている。地図情報管理DB9001は、図6に示されている地図情報管理テーブルによって構成されている。
図30は、実施形態の変形例2に係る移動体の移動開始までの処理の一例を示すシーケンス図である。まず、表示装置50Bの送受信部51は、操作者の所定の入力操作等に応じて、情報処理装置90に対して、移動体10の移動経路の入力を要求する旨を示す経路入力要求を送信する(ステップS201)。この経路入力要求には、移動体10Bが位置する拠点を識別する拠点IDを含む。これにより、情報処理装置90の送受信部91は、表示装置50Bから送信された経路入力要求を受信する。
次に、情報処理装置90の地図情報管理部92は、ステップS201で受信された拠点IDを検索キーとして地図情報管理DB9001(図6参照)を検索することで、受信された拠点IDと同じ拠点IDに関連づけられた地図情報を、記憶・読出部99を介して読み出す(ステップS202)。地図情報管理部92は、読み出された地図情報に示されている記憶位置にアクセスして、対応する地図画像データを読み出す。
次に、送受信部91は、要求元の表示装置50Bに対して、ステップS202で読み出された地図情報に対応する地図画像データを送信する(ステップS203)。これにより、表示装置50Bの送受信部51は、情報処理装置90から送信された地図画像データを受信する。
次に、表示装置50Bの表示制御部53は、ステップS203で受信された地図画像データを含む経路入力画面200(図11参照)を、ディスプレイ506等の表示部に表示させる(ステップS204)。そして、操作者が地図画像上の所定の位置を選択して「完了」ボタン210を押下することで、受付部52は、図12のステップS15と同様に、目的地系列250a~250hの入力を受け付ける(ステップS205)。送受信部51は、情報処理装置90に対して、ステップS205で受け付けられた目的地系列250a~250hを示す目的地系列データを送信する(ステップS206)。この目的地系列データは、ステップS205で入力された目的地系列250a~250hの地図画像上の位置を示す位置情報を含む。情報処理装置90の送受信部91は、移動体10Bに対して、表示装置50Bから送信された目的地系列データを送信(転送)する(ステップS207)。これにより、移動体10Bが備える制御装置30Bの送受信部31は、表示装置50Bから送信された目的地系列データを受信する。以降のステップS208~ステップS212の処理は、図10に示されているステップS17~ステップS21の処理と同様であるため、説明を省略する。
図31は、実施形態の変形例2に係る操作画面を用いた移動体の自律移動と手動操作の切替処理の一例を示すシーケンス図である。図31は、図12と同様に、移動体10Bが図10に示されている処理によって拠点内の自律移動を開始している場合の例を示す。
まず、移動体10Bが備える制御装置30Bの撮影制御部33は、拠点内を移動しながら撮影装置12を用いた撮影処理を行う(ステップS231)。そして、送受信部31は、情報処理装置90に対して、ステップS231で撮影された撮影画像データ、経路情報管理DB3003に記憶されている経路情報、自己位置推定部37によって推定された移動体10Bの現在位置(自己位置)を示す位置情報および学習部47による学習データを送信する(ステップS232)。これにより、情報処理装置90の送受信部91は、移動体10Bから送信された各種データおよび情報を受信する。
次に、情報処理装置90の精度算出部93は、移動体10Bの自律移動精度を算出する(ステップS233)。精度算出部45は、例えば、ステップS232で受信された経路情報および位置情報に基づいて、自律移動精度を算出する。また、精度算出部56は、例えば、ステップS232で受信された学習データおよび位置情報に基づいて、自律移動精度を算出してもよい。
次に、画像生成部94は、ステップS232で受信された撮影画像上に表示させる経路画像を生成する(ステップS234)。経路画像は、例えば、ステップS232で受信された位置情報、並びにステップS232で受信された経路情報に示されている目的地系列ごとの位置情報およびステータスに基づいて生成される。また、画像生成部57は、ステップS232で受信された撮影画像に対して、ステップS234で生成された経路画像が描画された撮影表示画像を生成する(ステップS235)。さらに、画像生成部94は、ステップS202で読み出された地図画像に対して、ステップS232で受信された位置情報に示されている移動体10Bの現在位置(自己位置)を示す現在位置表示画像およびステップS232で受信された経路情報に示されている目的地系列を示す系列画像が描画された地図表示画像を生成する(ステップS236)。
なお、ステップS233,S234,S235,S236の処理の詳細は、それぞれ図12に示されているステップS31,S33,S34,S35の処理と同様である。なお、ステップS233~ステップS236の処理の順序は前後してもよく、またはそれぞれ並行して行われてもよい。情報処理装置90は、ステップS232の処理によって移動体10から送信された撮影画像データ等を随時受信し、ステップS233~ステップS236の処理を継続的に実行する。
次に、送受信部91は、表示装置50Bに対して、ステップS233で算出された自律移動精度を示す通知情報、ステップS235で生成された撮影表示画像データ、およびステップS236で生成された地図表示画像データを送信する(ステップS237)。これにより、表示装置50Bの送受信部51は、情報処理装置90から送信された通知情報、撮影表示画像データおよび地図表示画像データを受信する。
次に、表示装置50Bの表示制御部53は、図13等に示されている操作画面400をディスプレイ106等の表示部に表示させる(ステップS238)。表示制御部53は、ステップS237で受信されたデータおよび情報を、操作画面400上に表示させる。なお、表示制御部53は、操作画面400に限られず、上述の操作画面400A~400Fのいずれかを表示させる構成であってもよい。
次に、図12のステップS38と同様に、操作者のポインティングデバイス512等の入力手段を用いた入力操作に応じて、受付部52は、操作画面400のモード切替ボタン900の選択を受け付ける(ステップS239)。送受信部51は、情報処理装置90に対して、移動体10Bの自律移動モードと手動操作モードの切り替えを要求する旨を示すモード切替要求を送信する(ステップS240)。そして、情報処理装置90の送受信部91は、移動体10Bに対して、表示装置50Bから送信されたモード切替要求を送信(転送)する(ステップS241)。これにより、移動体10Bが備える制御装置30Bの送受信部31は、表示装置50Bから送信されたモード切替要求を受信する。そして、制御装置30Bは、ステップS241におけるモード切替要求の受信に応じて、図16に示されているような移動体10Bのモード切替処理を実行する(ステップS242)。
このように、変形例2に係る通信システム1Bは、情報処理装置90において自律移動精度の算出および各種表示画面の生成を行う場合であっても、撮影表示画像等を含む操作画面400を表示装置50Bに表示させることができるので、移動体10の移動状態および自律移動と手動操作の切り替えを操作者に容易に判断させることができる。
図32は、通信システムの機能構成の一例を示す図である。図29に示された通信システムの機能構成との比較において、表示装置50は、図29に示されている表示装置50の構成と同様である。移動体10Cの処理または動作を制御する制御装置30Cは、図29に示された制御装置30Bから目的地系列管理部36、経路情報生成部38、経路情報管理部39、ならびに記憶部3000に構築されていた目的地系列管理DB3002および経路情報管理DB3003を除いた構成である。
図32に示された通信システム1Cにおいて、情報処理装置90は、例えば、AWS(商標)等のクラウドコンピューティングサービスに対応しており、通信システム1Cは、表示装置50と移動体10C(制御装置30C)が、矢印aおよび矢印bで示されるように情報処理装置90を介して通信する。また、制御装置30Bから除かれた目的地系列管理部36、経路情報生成部38、経路情報管理部39、目的地系列管理DB3002および経路情報管理DB3003の機能は、情報処理装置90に移されている。つまり、情報処理装置90は、送受信部91、地図情報管理部92、精度算出部93、画像生成部94、目的地系列管理部95、経路情報生成部96および経路情報管理部97を有している。また、情報処理装置90の記憶部9000には、地図情報管理DB9001、目的地系列管理DB9002および経路情報管理DB9003が構築されている。なお、制御装置30B(図29)から情報処理装置90に移された上記各部が有する機能は、図29などで説明した機能と同様であるため、その説明は省略する。
上記のように、通信システム1Cでは、表示装置50と移動体10C(制御装置30C)との通信が、クラウドコンピューティングサービスに対応した情報処理装置90を介して行われる。このような情報処理装置90では、通信時にクラウドコンピューティングサービスによる認証処理を利用することで、表示装置50からの手動操作コマンドや、移動体10Cからの撮影画像データ等のセキュリティ性を高めることができる。また、各データの生成機能および管理機能を情報処理装置90(クラウドサービス)に置くことで、同じデータを複数拠点で共有することが可能になり、P2P(Peer to Peer)通信(1対1の直接通信)に限らず、1対多拠点通信にも柔軟に対応できるようになる。
●まとめ●
以上説明したように、本発明の一実施形態に係る表示システムは、所定の拠点内を移動する移動体10(10A,10B,10C)によって撮影された画像を表示する表示システムであって、移動体10(10A,10B,10C)から送信された、拠点が撮影された撮影画像を受信し、受信された撮影画像に写る拠点における移動体10(10A,10B,10C)の移動経路上に、仮想的な経路画像711,713,715を重畳させて表示させる。これにより、本発明の一実施形態に係る表示システムは、ユーザに移動体10(10A,10B,10C)の移動状態を適切に把握させることができる。
また、本発明の一実施形態に係る表示システムであって、経路画像711,713,715は、移動経路上の複数の地点を示す画像を含み、移動体10(10A,10B,10C)の移動履歴および移動体10(10A,10B,10C)の将来の目的地を示す画像を含む。これにより、本発明の一実施形態に係る表示システムは、移動体10(10A,10B,10C)の移動経路上に示される経路画像711,713,715が撮影画像上に示されている撮影表示画像を、操作者が使用する操作画面400等に表示させることで、移動体10(10A,10B,10C)の移動状態を操作者に適切に把握させることができる。
さらに、本発明の一実施形態に係る表示システムは、移動体10(10A,10B,10C)の移動経路を示す経路情報の入力を受け付け、入力が受け付けられた経路情報を、移動体10(10A,10B,10C)に送信し、送信された経路情報に基づいて、移動体10(10A,10B,10C)を移動させる。また、表示システムは、拠点を示す地図画像上に入力された経路情報を受け付け、経路情報を示す系列画像611,613,615が重畳された地図画像を、仮想的な経路画像711,713,715が重畳された撮影画像とともに表示させる。これにより、本発明の一実施形態に係る表示システムは、経路情報を示す系列画像611,613,615が地図画像上に示されている地図表示画像を、撮影表示画像ともに表示させることで、移動体10(10A,10B,10C)の移動状態をより視覚的に操作者に把握させることができるので、操作者の移動体10(10A,10B,10C)に対する操作性を向上させることができる。
また、本発明の一実施形態に係る表示システムは、移動体10(10A,10B,10C)に対する所定の制御を行うための操作を受け付ける操作受付手段を備える。また、操作受付手段は、移動体10(10A,10B,10C)を手動操作により移動させる手動操作モードと、移動体10(10A,10B,10C)を自律移動により移動させる自律移動モードとを切り替える切替操作を受け付けるモード切替ボタン900である。これにより、本発明の一実施形態に係る表示システムは、モード切替ボタン900を用いて操作者に自律移動と手動操作の切り替えを行わせることで、操作者が自律移動と手動操作を切り替える場合の操作性を向上させることができる。
さらに、本発明の一実施形態に係る表示システムは、自律移動は、学習に基づく自律移動であり、移動体10(10A,10B,10C)が自律移動モードから手動操作モードに切り替わった場合、自律移動のための学習を行うことが可能となる。また、自律移動のための学習は、移動体10(10A,10B,10C)によって撮影された撮影画像を用いて行われる。これにより、本発明の一実施形態に係る表示システムは、撮影画像を用いて自律移動のための学習を行うことで、学習データを用いた移動体10(10A,10B,10C)の自律移動を行うことができるとともに、移動体10(10A,10B,10C)の自律移動精度を向上させることができる。
また、本発明の一実施形態に係る通信システムは、所定の拠点内を移動する移動体10(10A,10B,10C)によって撮影された画像を表示する表示システムと、移動体10(10A,10B,10C)と、を備える通信システム1(1A,1B)であって、移動体10(10A,10B,10C)の現在位置を示す位置情報および当該移動体10(10A,10B)の移動経路を示す経路情報に基づいて、仮想的な経路画像711,713,715を撮影画像に重畳させた表示画像を生成し、生成された表示画像を表示させる。これにより、通信システム1(1A,1B,1C)は、移動体10(10A,10B,10C)の移動経路の経路を視覚的に示す撮影表示画像が生成して表示させることで、移動体10(10A,10B,10C)の移動状態を操作者に適切に把握させることができる。
さらに、本発明の一実施形態に係る通信システムであって、移動体10(10A,10B,10C)は、表示システムから送信された自律移動モードと手動操作モードの切替要求を受信し、受信された切替要求に基づいて、自律移動モードおよび手動操作モードのいずれかを設定し、設定されたモードに基づいて、移動体10(10A,10B,10C)の移動処理を実行する。これにより、通信システム1(1A,1B,1C)は、表示システムから送信された切替要求に応じて、移動体10(10A,10B,10C)が自律移動モードと手動操作モードの切り替えを行うことで、ユーザの要求に応じた移動体10(10A,10B,10C)の移動制御を行うことができる。
●補足●
上記で説明した実施形態の各機能は、一または複数の処理回路によって実現することが可能である。ここで、本実施形態における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウエアによって各機能を実行するようプログラミングされたプロセッサ、並びに上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)、SOC(System on a chip)、GPU(Graphics Processing Unit)および従来の回路モジュール等のデバイスを含むものとする。
また、上記で説明した実施形態の各種テーブルは、機械学習の学習効果によって生成されたものでもよく、関連づけられている各項目のデータを機械学習にて分類付けすることで、テーブルを使用しなくてもよい。ここで、機械学習とは、コンピュータに人のような学習能力を獲得させるための技術であり,コンピュータが,データ識別等の判断に必要なアルゴリズムを、事前に取り込まれる学習データから自律的に生成し,新たなデータについてこれを適用して予測を行う技術のことをいう。機械学習のための学習方法は、教師あり学習、教師なし学習、半教師学習、強化学習および深層学習のいずれかの方法でもよく、さらに、これらの学習方法を組み合わせた学習方法でもよく、機械学習のための学習方法は問わない。
これまで本発明の一実施形態に係る表示システム、通信システム、表示制御方法およびプログラムについて説明してきたが、本発明は上述した実施形態に限定されるものではなく、他の実施形態の追加、変更または削除等、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。