オンライン会議やテレワークなどが普及し、遠隔地から動作制御が可能な、いわゆる「テレプレゼンスロボット」が身近な存在になってきました。例えば東京の日本橋にある「分身ロボットカフェDAWN」のアバターロボットなどが有名ですね(参考リンク:https://dawn2021.orylab.com/)。
このようなロボットを遠隔操作するユーザは、端末に備わったカメラで周囲の状況を見ながらロボットを移動させていきますが、足元に障害物がある場合など、カメラの向きによってはロボットの移動をうまく制御することができませんでした。
今回紹介する発明は、テレプレゼンスロボット等の移動体が、移動する際に、移動体のカメラの死角となる場所を確認しやすくすることで、移動体の操作を適切に行えるようにする技術です。このような技術が発達することによって、遠隔操作でも様々なサービス等が提供できるわけですね。
発明の背景
近年、インターネットを用いたテレビ会議システムが普及しました。テレビ会議システムでは、お互いに顔を見ながら話すだけでなく、テレプレゼンスロボットを用いる場合もあります。テレプレゼンスロボットとは、カメラを備え、遠隔地にいるユーザによってカメラの向きや位置を操作できるロボットです。テレプレゼンスロボットとして、遠隔地のユーザからの指令によって移動できる移動体が知られています。
具体的には、遠隔地ユーザへ撮影画像を提供するためのカメラを備えた移動体(テレプレゼンスロボット)が知られています。遠隔地ユーザは、自分の手元にある端末を操作することで、遠隔地にある移動体を操作します。一般的に、遠隔操作用の端末は、移動体に備わったカメラの撮像画像を表示します。端末のユーザは、端末に表示された撮像画像を見ながら移動体を操作しますが、遠隔地の画像を単に端末に表示するだけでは、移動体を適切に操作できない場合があります。
どんな発明?
発明の目的
上記のような問題点から、遠隔地にある移動体を適切に操作できるシステム、端末、および、プログラムが要望されています。もし、移動体を自在に遠隔操作できれば、テレビ会議システム以外の用途でも、カメラを備えた移動体をまるで自分のアバターのように操作できます。
本発明は、このような問題点を解決すべく、端末を用いて移動体の操作を適切に行うことができる新規な移動体システムなどに関します。
発明の詳細
まず、概要を説明しますと、本発明のシステムは、移動体、および、移動体の操作に用いられる端末を含みます。
本発明の端末は、移動体を操作するために用いられる端末です。本発明のプログラムは、コンピュータに、移動体の操作を実行させるためのプログラムです。
本発明において、「移動体」の一例として、カメラおよび駆動部を備えるロボット(例えば、テレプレゼンスロボット、アバターロボット等)を説明します。しかし、「移動体」は、このようなロボットに限定されません。「移動体」としては、例えば、自動走行若しくは半自動走行が可能な車両や重機、ドローンもしくは飛行機、スポーツスタジアム等に設置されてレールの上を移動可能なカメラを備えたロボット、または、宇宙空間に打ち上げられ姿勢制御やカメラの撮像方向を制御可能な衛星型ロボットが例示されます。その他にも、本発明の「移動体」は、カメラおよび駆動部を備えるさまざまな機械、装置もしくは端末などを包含します。
本発明における「移動体」は、一般的な装置(例えば、スマートフォン、タブレット等)を備える場合があります。このように、「移動体」は、カメラおよび駆動部を備えていれば、一体的に構成された装置であったり、複数の装置が組み合わされて構成されていたりします。
システムの全体構成
図1は、本実施形態に係るシステムの全体構成の一例を示す図です。
図1に示すように、システム1は端末10を備え、端末10を用いて操作されるロボット20をさらに備えます。端末10およびロボット20は、互いに通信を行います。具体的には、ロボット20および端末10は、ネットワーク(例えば、インターネット、LAN等)を介して通信を行ったり、直接互いに通信を行ったりします。ロボット20および端末10の間の通信は、有線通信または無線通信などです。
なお、システム1を構成する端末10およびロボット20の数は、図1に示す例に限られません。また、システム1は、ネットワークを介して端末10やロボット20と接続されます。図示されていませんが、システム1は、サーバ等を含む場合があります。サーバは、例えばロボット20の予約等、ロボット20に関する各種処理を端末10から受け付けます。
端末10は、ロボット20を操作するためにユーザが使用する情報処理装置です。端末10は、例えば、スマートフォン、タブレット端末、パーソナルコンピュータ、ヘッドマウントディスプレイなどの汎用または専用の情報処理装置です。図1に示すように、端末10は、表示部10fを備えます。
ロボット20は、移動型のロボットです。図1に示すように、ロボット20は、駆動部20gおよびカメラ20hを備えます。例えば、図1の駆動部20gは、車輪を回転駆動させることでロボット20を特定の面S上で移動させます。特定の面Sは、例えば、地面、床、月面等です。図1において駆動部20gは、複数の車輪で構成されていますが、例えばロボット20は、一輪、二輪もしくは多輪によって走行可能、または、キャタピラによって走行可能、または、レールの上を走行可能です。または、飛び跳ねて移動可能であり、二足歩行、四足歩行もしくは多足歩行可能であり、または、スクリューによって水上もしくは水中を航行可能であり、または、プロペラ等によって飛行可能です。
カメラ20hは、端末10からの指示に従って決定される所定の領域を撮像します。ロボット20は、例えば、複数のカメラ20hを有し、複数のカメラ20hを使って複数の異なる領域を撮像できます。例えば、図1では、ロボット20は、端末10からの指示に基づいて決定される第1領域(移動方向先の様子など)を撮像する第1のカメラ(以下、「メインカメラ」という)20h1を備えます。ロボット20は、さらに第2のカメラ(以下、「ナビゲーション用カメラ」という)20h2を備え、第2のカメラ20h2を使って、ロボット20が移動する特定の面S上の第2領域(例えばロボット20の足元)を撮像します。メインカメラ20h1、および、ナビゲーション用カメラ20h2は、撮像する方向の向きを所定角度範囲で制御できます。
なお、ロボット20は、複数のカメラ20hを備えない場合もあります。例えば、撮像方向の向きを360度の角度範囲で制御できる1つのカメラ20hを備える場合があります。
ユーザは、端末10を用いてロボット20を操作します。端末10の表示部10fには、カメラ20hによって撮像された画像(以下、「撮像画像」)が表示されます。ユーザは、表示部10fに表示された撮像画像を見て、ロボット20の状態を確認できます。端末10は、ロボット20が移動している状態であるか否かに基づいて、撮像画像の表示様式を制御します。
ユーザは、端末10を介してロボット20を操作します。例えば、ロボット20を移動させる操作、または、ロボット20に搭載されたカメラの操作を行います。ロボット20を操作するための指示は、端末10からロボット20に送信されます。指示は、端末10からロボット20に直接送信されたり、端末10からサーバ等(不図示)を介してロボット20に送信されたりします。
ロボット20は、端末10からの指示に応じて、カメラ20hによる撮像画像を端末10に送信します。さらにロボット20は、ロボット20のマイクで取得された音声の他、例えば、ロボット20によって取得または検知等された各種のデータを端末10に送信します。これにより、ユーザは、端末10およびロボット20を介して、ロボット20がいる場所に自分もいるかのような感覚を得ます。
端末10およびロボット20の物理的構成
次に、端末10の物理的構成の一例を簡単に説明します。
端末10は、演算部に相当するプロセッサ、記憶部に相当するRAM、記憶部に相当するROM、通信部、入力部、表示部、および、カメラを有します。これらの各構成は、データが相互に送受信できるように接続されています。
プロセッサは、例えばCPUです。プロセッサは、RAMまたはROMに記憶されているプログラムを実行することにより、端末10における各種処理を制御します。プロセッサは、入力部や通信部から種々のデータを受け取り、データの演算結果を表示部に表示したり、RAMに格納したりします。
RAMおよびROMは、各種処理に必要なデータおよび処理結果のデータを記憶します。端末10は、RAMおよびROM以外に、ハードディスクドライブ等の大容量の記憶手段を備える場合があります。RAMおよびROMは、例えば、半導体記憶素子で構成されます。
通信部は、端末10を他の機器に接続するインターフェースであり、他の機器と通信します。
入力部は、ユーザからデータの入力を受け付けるためのデバイス、または、端末10の外部からデータを入力するためのデバイスです。入力部は、例えば、キーボード、マウスおよびタッチパネル等を有します。入力部は、音声入力のためのマイクを含む場合もあります。
表示部は、プロセッサによる演算結果を視覚的に表示するために、例えば液晶ディスプレイによって構成されます。表示部は、ロボット20のカメラ20hによる撮像画像を表示します。表示部は、複数の表示部を有する場合があり、複数の表示部それぞれは、カメラ20hによる異なる領域の撮像画像を表示します。例えば、メインカメラ20h1およびナビゲーション用カメラ20h2それぞれの撮像画像を表示します。なお、表示部は、端末10のカメラによる撮像画像を表示する場合があります。
カメラは、静止画像または動画像を撮像する撮像素子を有します。そして、所定の領域を撮像して撮像画像(例えば、静止画または動画)を生成し、ロボット20に送信します。
ロボット20の操作を実行させるためのプログラムは、例えば、コンピュータによって読み取り可能な記憶媒体(RAMやROM等)に記憶されて提供されます。または、例えば、通信部によって接続される通信ネットワークを介して提供されます。端末10では、プロセッサがプログラムを実行することにより、ロボット20を制御するための様々な動作が実現されます。
続いて、ロボット20の物理的構成の一例を簡単に説明します。
ロボット20は、演算部に相当するプロセッサ、記憶部に相当するRAM、記憶部に相当するROM、通信部、入力部、表示部、駆動部、および、カメラを有します。これらの各構成は、データによって相互に送受信できるように接続されています。
プロセッサは、RAMまたはROMに記憶されたプログラムの実行に関する制御、データの演算、加工を行います。プロセッサは、入力部や通信部から種々のデータを受け取り、データの演算結果を表示部に表示したり、RAMに格納したりします。また、プロセッサは、駆動部20gを制御し、ロボット20の動作を制御します。
RAMおよびROMは、各種処理に必要なデータおよび処理結果のデータを記憶します。ロボット20は、RAMおよびROM以外に、ハードディスクドライブ等の大容量の記憶手段を備える場合があります。
通信部は、外部装置との通信を行うデバイスです。
入力部は、外部からデータを入力するためのデバイスです。入力部は、例えば、キーボードおよびタッチパネルを有します。また、入力部は、音声入力のためのマイクを有する場合があります。
表示部は、各種情報を表示するためのデバイスです。表示部は、プロセッサによる演算結果を視覚的に表示し、例えば、液晶ディスプレイにより構成されています。例えば表示部は、端末10のカメラによる撮像画像を表示します。また、表示部は、ロボット20のカメラ20hによる撮像画像を表示する場合もあります。
カメラは、静止画像または動画像を撮像する撮像素子を有します。そして、所定の領域の撮像により撮像画像(例えば、静止画像または動画像)を生成し、生成された撮像画像を端末10に送信します。
ロボット20の制御を実行させるためのプログラムは、例えば、コンピュータによって読み取り可能な記憶媒体(RAMやROM等)に記憶されて提供されます。一方、通信ネットワークを介して提供される場合もあります。ロボット20では、プロセッサがプログラムを実行することにより、ロボット20を制御するための様々な動作が実現されます。
端末10の機能的構成
さらに、端末10の機能的構成の一例を簡単に説明します。
端末10の機能は、記憶装置(記憶部)に記憶されたコンピュータプログラムをプロセッサ(制御部)が読み込んで実行することによって実現されます。端末10は、例えば以下のように機能します。
端末10は、ロボット20への指示入力を受け付けます。指示は、例えば、ロボット20の移動、停止、移動方向D、駆動部20gの回転方向、カメラ20hが撮像する領域等を示します。
端末10は、ロボット20による撮像画像を取得します。具体的には、端末10は、上記ロボット20に対する指示に基づいて決定される第1領域を映す第1撮像画像(移動方向先の様子)、および、この指示に基づいて移動体を移動させる特定の面上の第2領域を映す第2撮像画像(ロボットの足元)を取得します。
端末10は、ロボット20の状態を判定します。具体的には、端末10は、ロボット20が移動している状態(以下、「移動状態」という)であるか否かを判定します。例えば、受け付けた指示に基づいて、ロボット20が移動状態であるか、または、ロボット20が移動していない状態(以下、「停止状態」という)のいずれであるかを判定します。なお、移動状態とは、ロボット20が実際に移動している状態の場合もあれば、実際に移動しているか否かを問わずに移動していると推定される状態の場合もあります。同様に、停止状態とは、ロボット20が実際に停止している状態の場合もあれば、実際に停止しているか否かを問わずに停止していると推定される状態の場合もあります。
端末10は、ロボット20が移動状態であるか否かに基づいて、第1撮像画像(移動方向先の様子)および第2撮像画像(ロボットの足元)の各表示を制御します。具体的には、端末10は、ロボット20が移動状態である場合、第1撮像画像および第2撮像画像の両方を表示します。一方、ロボット20が停止状態である場合、第2撮像画像を表示せずに第1撮像画像(移動方向先の様子)を表示します。
引き続いて、ロボット20が移動状態である場合の一例について図5を示しつつ説明します。図5(A)および図5(B)のいずれも、ロボット20が移動状態である場合を示しています。
図5(A)には、移動状態のロボット20のカメラ20hによって撮像される第1領域および第2領域が示されています。また、図5(B)には、端末10の画面の一例が示されています。
図5(A)に示すように、ロボット20が移動状態である場合、端末10からのロボット20に対する指示に基づいて決定される第1領域は、ロボット20が移動する方向D(以下、「移動方向D」という)の所定の領域を少なくとも含みます。例えば、図5(A)では、ロボット20のメインカメラ20h1が第1領域(移動方向先の様子)を撮像して、第1領域に対応する第1撮像画像を生成します。
一方、図5(A)に示すように、第2領域は、例えば、ロボット20の移動方向Dであって特定の面S上の所定の領域(例えば、ロボット20の移動方向Dの足元の所定の領域)です。例えば、図5(A)では、ロボット20のナビゲーション用カメラ20h2が第2領域(ロボットの足元)を撮像して、第2領域に対応する第2撮像画像を生成します。
なお、図5(A)では、メインカメラ20h1およびナビゲーション用カメラ20h2がそれぞれ第1および第2領域を撮像して第1および第2撮像画像が生成されていますが、同一のカメラ20hが第1および第2領域を短時間の間に切り替えて両方の撮像画像が生成される場合もあります。生成された第1および第2撮像画像は、ロボット20から端末10に送信されます。
図5(B)に示すように、ロボット20が移動状態である場合、端末10は、第1撮像画像および第2撮像画像の両方を表示します。例えば、図5(B)における端末10では、画面の上方に第1撮像画像が表示され、画面の下方に第2撮像画像が表示されます。図5(B)では、第1撮像画像が第2撮像画像よりも大きく表示されていますが、このような表示に限られません。
図5(B)に示される画面では、ロボット20の移動方向Dの状態が第1撮像画像によって端末10のユーザに示されるだけでなく、ロボット20が移動する特定の面S(例えば、地面)の状態も、第2撮像画像によって示されます。したがって、端末10を操作するユーザは、ロボット20の足元の障害物等を第2撮像画像によって認識できます。そのため、ロボット20に対する指示(例えば、ロボット20の移動方向Dの変更指示等)を端末10に入力すれば、端末10のユーザは、ロボット20と障害物との衝突を回避できます。このように、ロボット20が移動状態である場合、第1撮像画像および第2撮像画像の両方を表示させることにより、端末10を操作するユーザがロボット20の操作を適切に行うことができます。
さらに、ロボット20が停止状態である場合の一例について図6を示しつつ説明します。図6(A)および図6(B)のいずれも、ロボット20が移動状態である場合を示しています。
図6(A)には、停止状態のロボット20のカメラ20hによって撮像される第1領域(移動方向先の様子等)が示されています。また、図6(B)には、端末10の画面の一例が示されています。
ロボット20が停止状態である場合、第1領域は、ロボット20に対する端末10からの指示に基づいて決定される所定の領域です。例えば図6(A)では、ロボット20のメインカメラ20h1が第1領域を撮像して、第1領域に対応する第1撮像画像を生成します。生成された第1撮像画像は、ロボット20から端末10に送信されます。
図6(B)に示すように、ロボット20が停止状態である場合、端末10は、第2撮像画像を表示させずに上記第1撮像画像を表示します。例えば、図6(B)に示される画面では、端末10からの指示に基づいて決定される所定の領域の状態が、第1撮像画像によって端末10のユーザに示されます。
ロボット20が停止状態である場合、端末10を操作するユーザは、ロボット20の足元の障害物等を認識しなくともロボット20を操作できます。そのため、第1撮像画像だけを端末10で表示させることにより、所望の第1領域の状態を認識し易くなります。したがって、ロボット20が停止状態である場合、第2撮像画像を表示させずに第1撮像画像を表示することにより、端末10のユーザがロボット20の操作を適切に行うことができます。
システムの動作
最後に、図7のフローチャート用いて、システムの動作の一例について説明します。
図7に示すように、ステップS101において、端末10は、ロボット20に対するユーザからの指示の入力を受け付けます。
ステップS102において、端末10は、ロボット20が移動状態であるか否かを判定します。例えば、端末10は、ステップS101で入力されたロボット20に対する指示に基づいて、ロボット20が移動状態であるか否かを判定します。
ロボット20が移動状態であると判定される場合(ステップS102のYES)、ステップS103において、端末10は、第1撮像画像および第2撮像画像の両方を取得します。例えば、図5(A)で説明したように、第1撮像画像(移動方向先の様子)は、ロボット20のメインカメラ20h1による第1領域の撮像によって生成されます。また、第2撮像画像(ロボットの足元)は、ロボット20のナビゲーション用カメラ20h2による第2領域の撮像によって生成されます。
ステップS104において、端末10は、第1撮像画像および第2撮像画像の両方を表示します(例えば、図5(B)参照)。
ロボット20が移動状態ではない(すなわち、停止状態である)と判定される場合(ステップS102のNO)、ステップS105において端末10は、第1撮像画像を取得します。例えば図6(A)で説明したように、第1撮像画像は、ロボット20のメインカメラ20h1による第1領域の撮像によって生成されます。
ステップS106において、端末10は、第2撮像画像を表示させずに第1撮像画像を表示部10fに表示させます(例えば、図6(B)参照)。
なお、図7に示す動作は、例示にすぎません。例えば、ロボット20が移動状態であるか否かに関係なく、端末10は第1撮像画像および第2撮像画像の両方を取得できます。この場合、ロボット20が移動状態であるなら第1および第2撮像画像の両方を表示させ、ロボット20が停止状態であるなら第2撮像画像を表示させずに第1撮像画像のみを表示させます。
以上のように、本発明のシステムでは、ロボット20が移動状態であるか否かに基づいて、上記第1撮像画像と第2撮像画像との表示が制御されます。したがって、端末10のユーザは、端末10に表示された、ロボット20のカメラ20hからの撮像画像に基づいて、ロボット20の操作を適切に行うことができます。
具体的には、ロボット20が移動状態である場合、図5(B)に示すように、ロボット20の移動方向Dの状態を示す第1撮像画像だけでなく、ロボット20が移動する特定の面Sの状態(足元付近)を示す第2撮像画像が端末10に表示されます。したがって、端末10のユーザは、第2撮像画像によりロボット20の足元の障害物等を認識できます。その結果、例えば、ロボット20と障害物との衝突を回避する等、ロボット20の操作を適切に行うことができます。
変形例
上記の説明では、ロボット20のカメラ20hによって撮像される第1領域は、1つの領域でしたが、複数の領域を含む場合もあります。具体的には、第1領域は、端末10からの指示に基づいて決定される所定の領域だけでなく、この領域とは異なる方向の領域を含む場合があります。例えば、図5(A)において、第1領域は、移動方向Dだけでなく、移動方向Dとは逆方向の領域、移動方向Dの左方向の領域、または、移動方向Dの右方向の領域等をさらに含む場合もあります。この場合、例えば、図5(B)の第1撮像画像の表示領域において、複数の撮像画像が表示されます。図6(A)および図6(B)についても同様の変更が可能です。
また、上記の説明では、ロボット20のカメラ20hにより撮像される第2領域は、1つの領域を想定しましたが、複数の領域を含む場合があります。例えば、図5(A)において、第2領域は、ロボット20の移動方向Dであってロボット20が移動する特定の面S上の所定の領域だけでなく、移動方向Dとは逆方向、左方向、右方向等であって上記特定の面Sを含む所定の領域等を含む場合もあります。この場合、例えば、図5(B)の第2撮像画像の表示領域において、複数の撮像画像が表示されます。
ここがポイント!
上記の通り、本発明は、たとえば、端末を用いて移動体の操作を適切に行うことができるシステムを提供します。
本出願で特許となった本発明のポイントを解説しますと、ロボットが移動状態である場合、ロボットの移動方向先の空間の様子を示す画像だけでなく、ロボットの移動方向先の地面の様子を示す画像が端末に表示されます。よって、端末のユーザは、ロボットの足元の障害物等を認識できます。ロボットと障害物との衝突を回避できるため、ロボットを適切に操作できる点に特徴があります。
本発明を要約しますと、本発明のシステムは、移動体、および、端末(移動体の操作に用いられる)を備えます。
移動体は、駆動部を有し、端末からの指示に基づいて特定の面上(たとえば地面の上)を移動します。
移動体は、さらにカメラを有し、端末からの指示に基づいて決定される第1領域(移動方向先の様子)、および、特定の面上の第2領域(地面の一部)を撮像します。
詳しくは、端末は、第1領域に対応する第1撮像画像、および、第2領域に対応する第2撮像画像を取得します。さらに端末は、移動体が移動している状態であるか否かに基づいて、第1撮像画像および第2撮像画像の表示の仕方を制御します。
本発明のもう1つは、移動体の操作に用いられる端末です。
詳しくは、端末には、移動体への指示が入力されます。端末は、指示に基づいて第1撮像画像(移動方向先の様子)を取得します。また、指示に基づいて上記の第2撮像画像(地面の一部の画像)を取得します。さらに端末では、移動体が移動している状態であるか否かに基づいて、第1撮像画像(移動方向先の様子)および第2撮像画像(地面の一部の画像)の表示様式が制御されます。
本発明のもう1つは、コンピュータに、移動体の操作を実行させるためのプログラムです。
詳しくは、プログラムは、移動体への指示を受け付けます。また、上記の第1撮像画像、および、上記の第2撮像画像を取得します。また、移動体が移動している状態であるか否かに基づいて、第1撮像画像と前記第2撮像画像との表示を制御します。
未来予想
本特許は、avatarin(アバターイン)株式会社から出願されたものです。この会社は、まだあまり知られていませんが航空分野のANAホールディングスが作った会社です。言い換えますと、ANA初のスタートアップ会社であり、ANAにおけるアバター事業を担う会社です。ウェブサイトを見ますと、上述した図面で示したロボットと同様の「newme(ニューミー)」というアバターロボットが紹介されています。
本特許の発明は、まさしく上記の「newme(ニューミー)」を開発する際に考え出されたアイデアであると思われます。航空分野で活躍しているANAホールディングスですが、アバター分野でもスタートアップ会社を作って事業を早急に拡大させたいという意図があるようです。
特許の概要
発明の名称 |
システム、端末及びプログラム |
出願番号 |
特願2020-176174 |
公開番号 |
特開2022-067459 |
出願日 |
令和2年10月20日 (2020/10/20) |
公開日 |
令和4年5月6日 (2022/05/06) |
出願人 |
avatarin株式会社 |
発明者 |
深堀 昂、梶谷 ケビン |
国際特許分類 |
H04N 7/18U |
経過情報 |
・本願はまだ審査請求されていないため、未審査です。 |