遠隔操作装置
【構成】遠隔操作装置10は、LRF12a,12bを含み、LRF12a,12bと同じ場所に設けられるロボット14を遠隔操作する。遠隔操作装置10はLRF12a,12bを利用して検出領域(E)内に居る人間の局所行動を検出し、その局所行動を記録する。検出領域(E)内は空間グリッド化され、その空間グリッド毎に局所行動のヒストグラムが算出される。遠隔操作装置10は、ヒストグラムから算出される類似度に基づいて空間グリッドをクラスタリングして、クラスタリング地図をLCD(22)に表示する。表示されたクラスタリング地図に含まれる任意のエリアが選択されると、ロボット14には、選択されたエリアの属性に基づいて決まる動作命令と、座標情報とが付与される。
【効果】使用者は、複数の人間の行動が視覚的に示されるクラスタリング地図を参照して、ロボット14を遠隔操作することができる。
【効果】使用者は、複数の人間の行動が視覚的に示されるクラスタリング地図を参照して、ロボット14を遠隔操作することができる。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、遠隔操作装置に関し、特にたとえば複数の人間が任意に行動する場所に設置されたロボットを遠隔操作する、遠隔操作装置に関する。
【背景技術】
【0002】
非特許文献1に開示されている、環境情報構造化システムには、自律行動によって人間に近づきサービスを開始することができるロボットが含まれ、そのロボットの活動範囲内に設けられるLRF(レーザーレンジファインダ)を利用して人間の歩行軌跡を計測し、その歩行軌跡から、複数の局所行動を認識する。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Takayuki Kanda, Dylan F. Glas, Masahiro Shiomi, Hiroshi Ishiguro and Norihiro Hagita, Who will be the customer?: A social robot that anticipates people’s behavior from their trajectories, Tenth International Conference on Ubiquitous Computing (UbiComp 2008), pp.380-389, 2008
【発明の概要】
【発明が解決しようとする課題】
【0004】
このように、非特許文献1では、人間の局所行動を取得して空間をクラスタリングすることができるが、そのようなクラスタリング技術をロボットの遠隔操作と組み合わせる技術はこれまで実現されていない。
【0005】
それゆえに、この発明の主たる目的は、新規な、遠隔操作装置を提供することである。
【0006】
この発明の他の目的は、複数の人間の行動に基づいて、ロボットの遠隔操作を行うことができる、遠隔操作装置である。
【課題を解決するための手段】
【0007】
この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、この発明の理解を助けるために記述する実施形態との対応関係を示したものであって、この発明を何ら限定するものではない。
【0008】
第1の発明は、複数の人間が任意に行動する場所に設置されたロボットを遠隔操作する遠隔操作装置であって、場所における複数の人間それぞれの局所行動を検出する検出手段、検出手段によって検出された所定時間分の局所行動をクラスタリングして複数のエリアを含む地図を作成する地図作成手段、地図を表示する表示手段、および表示された地図において任意のエリアが選択されたとき、任意のエリアの属性に基づいて、ロボットに動作命令を付与する命令付与手段を備える、遠隔操作装置である。
【0009】
第1の発明では、遠隔操作装置10は、たとえばショッピングモールに設置されたロボット(14)を遠隔操作することが可能である。また、ロボットが設置された場所には、検出領域(E)内に居る人間(A)の位置を検出する数台のLRF(12)が設置され、検出手段(12,16,S3)は、数台のLRFを利用して複数の人間の局所行動を検出する。また、遠隔操作装置は、検出領域を空間グリッド化することで、空間グリッド毎に局所行動のヒストグラムを算出する。そして、地図作成手段(16,S23,S25)は、局所行動のヒストグラムから算出される類似度が近い空間グリッドをクラスタリングすることで、複数のエリアを含む地図(クラスタリング地図)を作成する。作成された地図は、ロボットを遠隔操作するための操作画面(200)の一部として、たとえばLCDである表示手段(22)に表示される。命令付与手段(16,26,28,S33,S35)は、地図に含まれる任意のエリアが選択されると、エリアの属性である局所行動に基づいて、ロボットに動作命令を付与する。
【0010】
第1の発明によれば、遠隔操作装置の使用者は、複数の人間の行動が視覚的に示される地図を参照して、ロボットを遠隔操作することができる。
【0011】
第2の発明は、第1の発明に従属し、命令付与手段は、動作命令として、任意のエリアの座標情報を付与する座標情報付与手段を含む。
【0012】
第2の発明では、座標情報付与手段(16,S35)は、たとえば、任意のエリアにおける、両端の座標、座標範囲および重心座標などを座標情報としてロボットに付与する。
【0013】
第2の発明によれば、使用者は、ロボットが移動する位置やコースを示す座標を指定しなくても、任意のエリアを選択するだけで、ロボットが移動する位置やコースを指定できる。
【発明の効果】
【0014】
この発明によれば、複数の人間の局所行動を視覚的に示す地図が表示されるため、遠隔操作装置の使用者は、その地図を参照して、ロボットの遠隔操作を容易に行うことができる。
【0015】
この発明の上述の目的、その他の目的、特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0016】
【図1】図1はこの発明の遠隔操作装置の概要を示す図解図である。
【図2】図2は図1に示す遠隔操作装置の電気的な構成を示すブロック図である。
【図3】図3は図1に示すロボットの外観を正面から見た図解図である。
【図4】図4は図1に示すロボットの電気的な構成を示すブロック図である。
【図5】図5は図1および図2に示すLRFの計測領域を示す図解図である。
【図6】図6は図1および図2に示すLRFを利用して取得された人間の歩行軌跡の一例を示す図解図である。
【図7】図7は図2に示すCPUによって検出される局所行動と対応する歩行軌跡の一例を示す図解図である。
【図8】図8は図1に示すLRFおよびロボットが設置される或る場所の地図を示す図解図である。
【図9】図9は図2に示すCPUによって作成されるクラスタリング地図の一例を示す図解図である。
【図10】図10は図2に示すLCDに表示されるクラスタリング地図の一例を示す図解図である。
【図11】図11は図2に示す遠隔操作装置のメモリのメモリマップの一例を示す図解図である。
【図12】図12は図2に示す遠隔操作装置のCPUの位置情報記録処理を示すフロー図である。
【図13】図13は図2に示す遠隔操作装置のCPUの遠隔操作処理を示すフロー図である。
【発明を実施するための形態】
【0017】
図1を参照して、この実施例の遠隔操作装置10は、LRF12a,12bを含む数台のLRFを備え、ネットワーク100を介して、自律移動ロボット(以下、単に「ロボット」と言う。)14に動作命令を付与することが可能である。また、LRF12a,12bはロボット14と共に人間Aが任意に行動できる場所に設置される。そして、遠隔操作装置10はLRF12a,12bを利用して人間Aの位置を検出する。たとえば、人間Aが任意に行動できる場所とは、会社のフロア、博物館、ショッピングモールまたはアトラクション会場などであり、LRF12a,12bは様々な場所(環境)に設置される。
【0018】
なお、ここでは簡単のため人間は1人しか示していないが、遠隔操作装置10は2人以上の位置を同時に検出することができる。さらに、ロボット14も同様に1台しか示していないが、遠隔操作装置は2台以上のロボット14を同時に管理することができる。また、ロボット14は、相互作用指向のロボット(コミュニケーションロボット)でもあり、人間Aのようなコミュニケーションの対象(コミュニケーション対象)との間で、身振り手振りのような身体動作および音声の少なくとも一方を含むコミュニケーション行動を実行する機能を備えている。
【0019】
図2は遠隔操作装置10の電気的な構成を示すブロック図である。この図2を参照して、遠隔操作装置10は、LRF12a−12fおよびCPU16を含む。このCPU16は、マイクロコンピュータ或いはプロセサとも呼ばれ、先述したLRF12aおよびLRF12bに加えて、LRF12c,LRF12d,LRF12eおよびLRF12fともそれぞれ接続される。さらに、CPU16は、メモリ18、位置情報DB20、LCD22、入力装置24および通信LANボード26ともそれぞれ接続される。なお、LRF12a−12fを区別する必要がない場合には、まとめて「LRF12」と言う。
【0020】
LRF12は、レーザーを照射し、物体(人間も含む)に反射して戻ってくるまでの時間から当該物体ための距離を計測するものである。たとえば、トランスミッタ(図示せず)から照射したレーザーを回転ミラー(図示せず)で反射させて、前方を扇状に一定角度(たとえば、0.5度)ずつスキャンする。ここで、LRF12としては、SICK社製のレーザーレンジファインダ(型式 LMS200)を用いることができる。このレーザーレンジファインダを用いた場合には、距離8mを±15mm程度の誤差で計測可能である。
【0021】
メモリ18は、図示は省略をするが、ROM,HDDおよびRAMを含み、ROMおよびHDDには、遠隔操作装置10の動作を制御するための制御プログラムが予め記憶される。たとえば、LRF12による人間の検出に必要なプログラムなどが記録される。また、RAMは、ワークメモリやバッファメモリとして用いられる。
【0022】
位置情報データベース(位置情報DB)20は、LRF12によって検出された人間の位置と局所的な行動(局所行動)とを蓄積するためのデータベースであり、HDD(図示せず)のような記憶媒体を用いて構成される。なお、人間の値は、x−y座標で示される。
【0023】
LCD22は、ロボット14を遠隔操作する際の操作画面(図10参照)を表示する。また、入力装置24はマイクや、マウスおよびキーボード(図示せず)から構成される。たとえば、使用者はLCD22に表示された操作画面を見ながら、マウスなどを使ってロボット14を遠隔操作する。
【0024】
また、CPU16は、通信LANボード26に接続される。通信LANボード26は、たとえばDSPで構成され、CPU16から与えられた送信データを無線通信装置28に与え、無線通信装置28は送信データを、ネットワーク100を介してロボット14に送信する。たとえば、送信データとしては、遠隔操作装置10からロボット14に付与する動作命令の信号(コマンド)であったりする。また、通信LANボード26は、無線通信装置28を介してデータを受信し、受信したデータをCPU16に与える。
【0025】
図3はこの実施例のロボット14の外観を示す正面図である。図3を参照して、ロボット14は台車30を含み、台車30の下面にはロボット14を自律移動させる2つの車輪32および1つの従輪34が設けられる。2つの車輪32は車輪モータ36(図4参照)によってそれぞれ独立に駆動され、台車30すなわちロボット14を前後左右の任意方向に動かすことができる。また、従輪34は車輪32を補助する補助輪である。したがって、ロボット14は、配置された空間内を自律制御によって移動可能である。
【0026】
台車30の上には、円柱形のセンサ取り付けパネル38が設けられ、このセンサ取り付けパネル38には、多数の赤外線距離センサ40が取り付けられる。これらの赤外線距離センサ40は、センサ取り付けパネル38すなわちロボット14の周囲の物体(人間や障害物など)との距離を測定するものである。
【0027】
なお、この実施例では、距離センサとして、赤外線距離センサを用いるようにしてあるが、赤外線距離センサに代えて、小型のLRFや、超音波距離センサおよびミリ波レーダなどを用いることもできる。
【0028】
センサ取り付けパネル38の上には、胴体42が直立するように設けられる。また、胴体42の前方中央上部(人の胸に相当する位置)には、上述した赤外線距離センサ40がさらに設けられ、ロボット14の前方の主として人間との距離を計測する。また、胴体42には、その側面側上端部のほぼ中央から伸びる支柱44が設けられ、支柱44の上には、全方位カメラ46が設けられる。全方位カメラ46は、ロボット14の周囲を撮影するものであり、後述する眼カメラ70とは区別される。この全方位カメラ46としては、たとえばCCDやCMOSのような固体撮像素子を用いるカメラを採用することができる。なお、これら赤外線距離センサ40および全方位カメラ46の設置位置は、当該部位に限定されず適宜変更され得る。
【0029】
胴体42の両側面上端部(人の肩に相当する位置)には、それぞれ、肩関節48Rおよび肩関節48Lによって、上腕50Rおよび上腕50Lが設けられる。図示は省略するが、肩関節48Rおよび肩関節48Lは、それぞれ、直交する3軸の自由度を有する。すなわち、肩関節48Rは、直交する3軸のそれぞれの軸廻りにおいて上腕50Rの角度を制御できる。肩関節48Rの或る軸(ヨー軸)は、上腕50Rの長手方向(または軸)に平行な軸であり、他の2軸(ピッチ軸およびロール軸)は、その軸にそれぞれ異なる方向から直交する軸である。同様にして、肩関節48Lは、直交する3軸のそれぞれの軸廻りにおいて上腕50Lの角度を制御できる。肩関節48Lの或る軸(ヨー軸)は、上腕50Lの長手方向(または軸)に平行な軸であり、他の2軸(ピッチ軸およびロール軸)は、その軸にそれぞれ異なる方向から直交する軸である。
【0030】
また、上腕50Rおよび上腕50Lのそれぞれの先端には、肘関節52Rおよび肘関節52Lが設けられる。図示は省略するが、肘関節52Rおよび肘関節52Lは、それぞれ1軸の自由度を有し、この軸(ピッチ軸)の軸回りにおいて前腕54Rおよび前腕54Lの角度を制御できる。
【0031】
前腕54Rおよび前腕54Lのそれぞれの先端には、人の手に相当する球体56Rおよび球体56Lがそれぞれ固定的に設けられる。ただし、指や掌の機能が必要な場合には、人間の手の形をした「手」を用いることも可能である。また、図示は省略するが、台車30の前面、肩関節48Rと肩関節48Lとを含む肩に相当する部位、上腕50R、上腕50L、前腕54R、前腕54L、球体56Rおよび球体56Lには、それぞれ、接触センサ58(図4で包括的に示す)が設けられる。台車30の前面の接触センサ58は、台車30への人間や他の障害物の接触を検知する。したがって、ロボット14は、その自身の移動中に障害物との接触が有ると、それを検知し、直ちに車輪32の駆動を停止してロボット14の移動を急停止させることができる。また、その他の接触センサ58は、当該各部位に触れたかどうかを検知する。なお、接触センサ58の設置位置は、当該部位に限定されず、適宜な位置(人の胸、腹、脇、背中および腰に相当する位置)に設けられてもよい。
【0032】
胴体42の中央上部(人の首に相当する位置)には首関節60が設けられ、さらにその上には頭部62が設けられる。図示は省略するが、首関節60は、3軸の自由度を有し、3軸の各軸廻りに角度制御可能である。或る軸(ヨー軸)はロボット14の真上(鉛直上向き)に向かう軸であり、他の2軸(ピッチ軸、ロール軸)は、それぞれ、それと異なる方向で直交する軸である。
【0033】
頭部62には、人の口に相当する位置に、スピーカ64が設けられる。スピーカ64は、ロボット14が、それの周辺の人間に対して音声ないし音によってコミュニケーションを取るために用いられる。また、人の耳に相当する位置には、マイク66Rおよびマイク66Lが設けられる。以下、右のマイク66Rと左のマイク66Lとをまとめてマイク66と言うことがある。マイク66は、周囲の音、とりわけコミュニケーションを実行する対象である人間の音声を取り込む。さらに、人の目に相当する位置には、眼球部68Rおよび眼球部68Lが設けられる。眼球部68Rおよび眼球部68Lは、それぞれ眼カメラ70Rおよび眼カメラ70Lを含む。以下、右の眼球部68Rと左の眼球部68Lとをまとめて眼球部68と言うことがある。また、右の眼カメラ70Rと左の眼カメラ70Lとをまとめて眼カメラ70と言うことがある。
【0034】
眼カメラ70は、ロボット14に接近した人間の顔や他の部分ないし物体などを撮影して、それに対応する映像信号を取り込む。また、眼カメラ70は、上述した全方位カメラ46と同様のカメラを用いることができる。たとえば、眼カメラ70は、眼球部68内に固定され、眼球部68は、眼球支持部(図示せず)を介して頭部62内の所定位置に取り付けられる。図示は省略するが、眼球支持部は、2軸の自由度を有し、それらの各軸廻りに角度制御可能である。たとえば、この2軸の一方は、頭部62の上に向かう方向の軸(ヨー軸)であり、他方は、一方の軸に直交しかつ頭部62の正面側(顔)が向く方向に直行する方向の軸(ピッチ軸)である。眼球支持部がこの2軸の各軸廻りに回転されることによって、眼球部68ないし眼カメラ70の先端(正面)側が変位され、カメラ軸すなわち視線方向が移動される。なお、上述のスピーカ64、マイク66および眼カメラ70の設置位置は、当該部位に限定されず、適宜な位置に設けられてよい。
【0035】
このように、この実施例のロボット14は、車輪32の独立2軸駆動、肩関節48の3自由度(左右で6自由度)、肘関節52の1自由度(左右で2自由度)、首関節60の3自由度および眼球支持部の2自由度(左右で4自由度)の合計17自由度を有する。
【0036】
図4はロボット14の電気的な構成を示すブロック図である。この図4を参照して、ロボット14は、CPU80を含む。CPU80は、マイクロコンピュータ或いはプロセッサとも呼ばれ、バス82を介して、メモリ84、モータ制御ボード86、センサ入力/出力ボード88および音声入力/出力ボード90に接続される。
【0037】
メモリ84は、図示は省略をするが、ROMおよびRAMを含む。ROMには、ロボット14の動作を制御するための制御プログラムが予め記憶される。たとえば、各センサの出力(センサ情報)を検知するための検知プログラムや、外部コンピュータ(遠隔操作装置10)との間で必要なデータやコマンドを送受信するための通信プログラムなどが記録される。また、RAMは、ワークメモリやバッファメモリとして用いられる。
【0038】
モータ制御ボード86は、たとえばDSPで構成され、各腕や首関節および眼球部などの各軸モータの駆動を制御する。すなわち、モータ制御ボード86は、CPU80からの制御データを受け、右眼球部68Rの2軸のそれぞれの角度を制御する2つのモータ(図4では、まとめて「右眼球モータ92」と示す)の回転角度を制御する。同様に、モータ制御ボード86は、CPU80からの制御データを受け、左眼球部68Lの2軸のそれぞれの角度を制御する2つのモータ(図4では、まとめて「左眼球モータ94」と示す)の回転角度を制御する。
【0039】
また、モータ制御ボード86は、CPU80からの制御データを受け、肩関節48Rの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節52Rの角度を制御する1つのモータとの計4つのモータ(図4では、まとめて「右腕モータ96」と示す)の回転角度を制御する。同様に、モータ制御ボード86は、CPU80からの制御データを受け、肩関節48Lの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節52Lの角度を制御する1つのモータとの計4つのモータ(図4では、まとめて「左腕モータ98」と示す)の回転角度を制御する。
【0040】
さらに、モータ制御ボード86は、CPU80からの制御データを受け、首関節60の直交する3軸のそれぞれの角度を制御する3つのモータ(図4では、まとめて「頭部モータ110」と示す)の回転角度を制御する。そして、モータ制御ボード86は、CPU80からの制御データを受け、車輪32を駆動する2つのモータ(図4では、まとめて「車輪モータ36」と示す)の回転角度を制御する。なお、この実施例では、車輪モータ36を除くモータは、制御を簡素化するためにステッピングモータ(すなわち、パルスモータ)を用いる。ただし、車輪モータ36と同様に直流モータを用いるようにしてもよい。また、ロボット14の身体部位を駆動するアクチュエータは、電流を動力源とするモータに限らず適宜変更されてもよい。たとえば、他の実施例では、エアアクチュエータなどが適用されてもよい。
【0041】
センサ入力/出力ボード88は、モータ制御ボード86と同様に、DSPで構成され、各センサからの信号を取り込んでCPU80に与える。すなわち、赤外線距離センサ40のそれぞれからの反射時間に関するデータがこのセンサ入力/出力ボード88を通じてCPU80に入力される。また、全方位カメラ46からの映像信号が、必要に応じてセンサ入力/出力ボード88で所定の処理を施してからCPU80に入力される。眼カメラ70からの映像信号も、同様に、CPU80に入力される。また、上述した複数の接触センサ58(図4では、まとめて「接触センサ58」と示す)からの信号がセンサ入力/出力ボード88を介してCPU80に与えられる。音声入力/出力ボード90もまた、同様に、DSPで構成され、CPU80から与えられる音声合成データに従った音声または声がスピーカ64から出力される。また、マイク66からの音声入力が、音声入力/出力ボード90を介してCPU80に与えられる。
【0042】
また、CPU80は、バス82を介して通信LANボード112に接続される。通信LANボード112は、たとえばDSPで構成され、CPU80から与えられた送信データを無線通信装置114に与え、無線通信装置114は送信データを、ネットワーク100を介して外部コンピュータ(遠隔操作装置10)に送信する。また、通信LANボード112は、無線通信装置114を介してデータを受信し、受信したデータをCPU80に与える。たとえば、送信データとしては、全方位カメラ46および目カメラ70によって撮影された周囲の映像データであったりする。
【0043】
次にLRF12について詳細に説明する。図5を参照して、LRF12の計測範囲は、半径R(R≒8m)の半円形状(扇形)で示される。つまり、LRF12は、その正面方向を中心とした場合に、左右90°の方向を所定の距離(R)以内で計測可能である。
【0044】
また、使用しているレーザーは、日本工業規格 JIS C 6802「レーザー製品の安全基準」におけるクラス1レーザーであり、人の眼に対して影響を及ぼさない安全なレベルである。また、この実施例では、LRF12のサンプリングレートを37Hzとした。これは、歩行するなどにより移動する人間の位置を連続して検出するためである。
【0045】
さらに、先述したように、LRF12は、様々な場所に配置される。具体的には、LRF12a,12bの各々は、検出領域が重なるように配置され、図示は省略するが、床面から約90cmの高さに固定される。この高さは、被験者の胴体と腕(両腕)とを検出可能とするためであり、たとえば、日本人の成人の平均身長から算出される。したがって、遠隔操作装置10を設ける場所(地域ないし国)や被験者の年齢ないし年代(たとえば、子供,大人)に応じて、LRF12を固定する高さを適宜変更するようにしてよい。なお、本実施例では、設定されるLRF12は6台としたが、2台以上であれば、任意の台数のLRF12を設置してもよい。
【0046】
このような構成の遠隔操作装置10では、CPU16がLRF12からの出力(距離データ)に基づいて、パーティクルフィルタを用いて、人間の現在位置の変化を推定する。そして、推定された現在位置の変化は歩行軌跡として記録される。
【0047】
たとえば、図6を参照して、LRF12a,12bは互いに向い合せに設置され、LRF12a,12bの計測範囲が重なる範囲は斜線が付されて示される。斜線が付された範囲は検出領域Eとされ、この検出領域E内では人間の現在位置が連続的に検出される。そして、連続的に検出された現在位置のデータは歩行軌跡として示される。たとえば、歩行軌跡Kaおよび歩行軌跡Kbのように示される。なお、歩行軌跡Ka,Kbを区別する必要がない場合には、まとめて「歩行軌跡K」と言う。
【0048】
ここで、本実施例では、SVM(Support Vector Machine)によって人間の歩行軌跡Kから人間の歩き方の判別を行い、遠隔操作装置10は、局所行動を検出する。なお、SVMによる判別手法については、広く一般的な方法であるため、ここでは詳細な説明を省略する。
【0049】
まず、歩行軌跡Kは特徴量データが抽出される。具体的には、歩行軌跡Kは、左側中央が始点となるように方向の正規化処理が施され、方向の正規化後の歩行軌跡Kと囲む長方形の幅(縦軸方向)および長さ(横軸方向)が算出される。また、歩行軌跡Kは近似する折れ線に変換され、連続する2つの直線のなす角がそれぞれ算出される。さらに、歩行軌跡Kにおける一定時間毎の変化量を時間で微分することで、移動軌跡Kの速度が算出される。そして、このように求められた、歩行軌跡Kの終点、歩行軌跡Kを囲む長方形の幅と長さ、歩行軌跡Kのなす角度および速度のそれぞれが歩行軌跡Kの特徴量データとされる。
【0050】
次に、特徴量データに対してラベル付けし、ラベル付けされた特徴量データをSVMに学習させる。以下、特徴量データに対するラベル付けおよびSVMの学習について詳細に説明する。
【0051】
本実施例では、特徴量データをラベル付けするために、「歩き方」、「歩く速さ」、「短時間の歩き方」および「短時間の歩く速さ」の4つのクラスを定義する。「歩き方」のクラスは、「まっすぐ」、「右に曲がる」、「左に曲がる」、「うろうろする」、「Uターン」および「不明」の6つのカテゴリから構成され、5.1秒の歩行軌跡Kから抽出される特徴量データがラベル付けされる。そして、SVMには、ラベル付けされた226個の特徴量データを学習させる。また、「歩く速さ」のクラスは、「走っている」、「忙しく歩く」、「ゆっくり歩く」、「止まっている」および「待っている」の5つのカテゴリから構成され、4.9秒の歩行軌跡Kから抽出される特量データがラベル付けされる。そして、SVMには、ラベル付けされた166個の特徴量データを学習させる。
【0052】
「短時間の歩き方」のクラスは、「歩き方」と類似するカテゴリから構成さる。そして、SVMには、2.1秒の歩行軌跡Kであり、かつ「うろうろする」のカテゴリを除いた、150個の特徴量データをSVMに学習させる。「短時間の歩く速さ」のクラスは、「歩く速さ」と類似するカテゴリから構成される。そして、SVMには、2.2秒の歩行軌跡Kであり、かつ「待っている」のカテゴリを除いた、159の特徴量データを学習させる。
【0053】
そして、遠隔操作装置10では、このように学習したSVMによって検出される歩行軌跡Kから局所行動を判別し、判別結果をマージする。具体的には、「歩き方」のクラスでは「右に曲がる」、「左に曲がる」および「Uターン」を「うろうろする」にマージし、「歩く速さ」のクラスでは「待っている」を「止まっている」にマージする。さらに、「短時間の歩き方」のクラスは「歩き方」のクラスにマージされ、「短時間の歩く速さ」のクラスは「歩く速さ」のクラスにマージされる。これにより、遠隔操作装置10は、「忙しく歩く」、「ゆっくり歩く」、「うろうろする」および「止まっている」の4つの局所行動を検出することができるようになる。
【0054】
ここで、各局所行動のそれぞれに対応する歩行軌跡Kを図7(A)−図7(D)に示す。図7(A)は「忙しく歩く」の局所行動の一例を示しており、歩行軌跡Kの形状が直線的であり、始点と終点との距離が長い。また、図7(B)は「ゆっくり歩く」の局所行動の一例を示しており、歩行軌跡Kの形状が直線的ではあるが、始点と終点との距離が短い。また、図7(C)は「うろうろする」の局所行動の一例を示しており、歩行軌跡Kがおよそ90度以下で2回曲がっている。そして、図7(D)は「止まっている」の局所行動の一例を示しており、歩行軌跡Kにおける始点と終点とがほぼ変わらない位置にある。
【0055】
ここで、本実施例では、時刻tに検出されるn人(n:自然数)の位置情報を、位置情報Pn(t)と表わし、この位置情報Pn(t)は人間の位置(x、y)に加え、4種類の局所行動の有無を表わすブール変数b1−b4を含むものと定義する。そして、位置情報DB20には、位置情報Pn(t)が記録される。また、位置情報Pn(t)は、数1に示す式で表すことができる。
【0056】
[数1]
Pn(T)={x,y,b1,b2,b3,b4}
ここで、ブール変数b1は「忙しく歩く」の有無を表わし、ブール変数b2は「ゆっくり歩く」の有無を表わし、ブール変数b3は「うろうろする」の有無を表わし、ブール変数b4は「止まっている」の有無を表わす。
【0057】
なお、歩行軌跡Kから抽出される特徴量は4つだけに限らず、加重方向指数ヒストグラム法などによって抽出された特徴量が用いられてもよい。さらに、汎用性を高めるために、判別結果が全くマージされなくてもよし、マージされる判別結果が減らされてもよい。そして、検出される局所行動に応じてブール変数の数も変化するため、位置情報Pn(t)が含むブール変数の数も変化する。また、本実施例におけるブール変数b1−b4のそれぞれは、0〜100までの値をとる。
【0058】
次に、LRF12によって人間の位置を検出可能な空間(検出領域E)を、25cm四方で空間グリッド化する。ここで、遠隔操作装置10は、位置情報DB20に記録される位置情報Pn(t)を読み出すことで、或る時刻tの空間グリッドiにおいて、空間グリッドi内の局所行動の生起回数を集計することができる。そして、その集計結果として、「忙しく歩く」、「ゆっくり歩く」、「うろうろする」および「止まっている」の局所行動それぞれに対応する、ヒストグラムH1(i,t)、ヒストグラムH2(i,t)、ヒストグラムH3(i,t)およびヒストグラムH4(i,t)のそれぞれが算出される。
【0059】
たとえば、検出領域Eが図8(A)に示す地図に対応する場所(本実施例ではショッピングモール)に含まれる場合に、短時間の集計によって得られたヒストグラムに基づき、局所行動を空間グリッドi毎に視覚化すると図8(B)に示す局所行動地図のようになる。図8(B)を参照して、局所行動が検出された空間グリッドiには、検出された局所行動に対応する色が彩色され、局所行動が検出されていない空間グリッドiは何も彩色されない。たとえば、青色(図8(B)では、濃い右斜線示す)に彩色された空間グリッドiは局所行動が「忙しく歩く」を示し、緑色(図8(B)では、濃い左斜線示す)に彩色された空間グリッドiは局所行動が「ゆっくり歩く」を示し、桃色(図8(B)では、薄い右斜線示す)に彩色された空間グリッドiは局所行動が「うろうろする」を示し、茶色(図8(B)では、網掛けで示す)に彩色された空間グリッドiは、局所行動が「止まっている」を示す。なお、図8(A)の地図に示される「案内図」と「店舗」とは、図8(B)および後述する図9(A)、図9(B)では省略する。
【0060】
そして、本実施例では、全ての空間グリッドiに対して4種類の局所行動のヒストグラムを算出した後に、類似する空間グリッドを周知のISODATA法によりクラスタリングし、クラスタリング地図を作成する。具体的には、ヒストグラムH1−H4から空間グリッドiと隣接する空間グリッドjの類似度をそれぞれ算出し、類似度が近い空間グリッドiと隣接する空間グリッドjとを併合して空間パーティション(エリア)を作成する。また、空間グリッドiと隣接する空間グリッドjの類似度は数2に示す式から算出される。
【0061】
【数2】
【0062】
たとえば、図9(A)を参照して、所定時間(時刻t1、時刻t2、時刻t3,…)の位置情報Pn(t)を位置情報DB20から読み出し、各空間グリッドをクラスタリングすると、図9(B)に示すクラスタリング地図が作成される。なお、図9(A)では、読み出された位置情報Pn(t)を局所行動地図として表わす。
【0063】
図9(B)を参照して、青色のエリアは「忙しく歩く」の局所行動を属性として持っており、この青色のエリアでは人々が早歩きで歩き去る。たとえば、この青色のエリアは通路などに多く設定されている。緑色のエリアは「ゆっくり歩く」の局所行動を属性として持っており、この緑色のエリアでは人々はゆっくり歩く。たとえば、緑色のエリアは店舗の前に比較的近い処や、案内図の前などに設定されている。桃色のエリアは「うろうろする」の局所行動を属性として持っており、この桃色のエリアでは人々はうろうろする。たとえば、この桃色のエリアは店舗の前に設定されている。茶色のエリアは「止まっている」の局所行動を属性として持っており、この茶色のエリアでは人々は立ち止まっている。たとえば、この茶色のエリアはベンチ(図示せず)の周辺や、店舗の前の一部に設定されている。
【0064】
また、同じ緑色で示されるエリアG1およびエリアG2は、属性が同じ「ゆっくり歩く」ではあるが、類似度が近くなかったため、併合されていない。また、同様に、エリアB1およびエリアB2も、類似度が近くなかったため、併合されずに異なるエリアとして設定される。
【0065】
そして、このように作成されたクラスタリング地図は、LCD22に表示される。図10を参照して、LCD22はGUIとして操作画面200を表示し、その操作画面200にはロボットアイコン202a−202c、ロボットカメラ画像204および地図表示206が含まれる。ロボットアイコン202a−202cは、ショッピングモールに設置されている3台のロボット14にそれぞれ対応する。たとえば、ロボットアイコン202aと対応するロボット14は、遠隔操作の動作命令が付与可能な状態である。ロボットアイコン202bと対応するロボット14は自律行動によってショッピングモール内を巡回している。ロボットアイコン202cと対応するロボット14は遠隔操作できない状態である。また、ロボットカメラ画像204には、遠隔操作中のロボット14から送信されてくる映像データが表示される。
【0066】
地図表示206には、作成されたクラスタリング地図が表示される。また、表示されたクラスタリング地図において、使用者によって任意に選択されたエリアが選択エリアSEとして選択表示される。遠隔操作装置10は、選択エリアSEが選択されると、その選択エリアSEの属性に基づいてロボット14に対する動作命令を決定し、さらに遠隔操作装置10は、その動作命令と選択エリアSEの座標情報とをロボット14に付与(送信)する。これにより、ロボット14は、付与された座標情報が示すエリアに移動し、その選択エリアSEで動作命令に基づく動作を実行する。
【0067】
たとえば、使用者がエリアG1(図9(B)参照)を選択すると、エリアG1が選択エリアSEとして選択表示され、さらに選択エリアSEの両端座標が座標P1および座標P2で示される。このとき、遠隔操作装置10は、エリアG1の属性、「ゆっくり歩く」に基づいて、動作命令を「ゆっくり移動する」とし、さらに、遠隔操作装置10は、エリアG1の両端を示す座標P1と座標P2を座標情報として算出する。そして、ロボット14は、遠隔操作装置10から付与される動作命令と座標情報とに基づいて、選択エリアSE(エリアG1)内で座標P1から座標P2に向けてゆっくり移動する。
【0068】
また、属性が「忙しく歩く」であれば動作命令を「早く移動する」とする。また、属性が「止まっている」であれば動作命令を「エリア内で待機する」とし、座標情報としてはそのエリアの一端を示す座標とする。また、属性が「うろうろする」であれば動作命令を「エリア内で待機する」とするが、座標情報としてはそのエリアの重心位置(中心)を示す座標とする。
【0069】
図11は、図2に示すメモリ18のメモリマップ300の一例を示す図解図である。図11に示すように、メモリ18はプログラム記憶領域302およびデータ記憶領域304を含む。プログラム記憶領域302には、位置情報記録プログラム312および遠隔操作プログラム314が記憶される。
【0070】
位置情報記録プログラム312は、たとえばショッピングモール内に居る人間の位置情報Pn(t)を逐次記録するためのプログラムである。遠隔操作プログラム314は、ロボット14を遠隔操作するためのプログラムであり、所定時間毎にクラスタリング地図を操作画面200に表示する。
【0071】
なお、図示は省略するが、遠隔操作装置10を動作させるためのプログラムは、ネットワーク100を介してデータ通信を行うプログラムおよび操作画面200を表示するためのプログラムなどを含む。
【0072】
また、データ記憶領域304には、表示画像バッファ330が設けられると共に、GUIデータ332および地図データ334が記録される。表示画像バッファ330は、LCD22に表示するクラスタリング地図のデータを一時的に記録するためのバッファである。GUIデータ332は、操作画面200を表示するための画像データなどであり、たとえばロボットアイコン202を表示するために利用される。地図データ334は、クラスタリング地図を作成する際に元になる地図のデータであり、たとえば図8(A)に示す地図である。
【0073】
なお、図示は省略するが、データ記憶領域304には、様々な計算の結果を一時的に格納するバッファなどが設けられると共に、遠隔操作装置10の動作に必要な他のカウンタやフラグも設けられる。
【0074】
具体的には、遠隔操作装置10のCPU16は、図12および図13に示す処理を含む、複数の処理を並列的に実行する。
【0075】
図12に示すように、遠隔操作装置10のCPU16は、位置情報記録処理を実行すると、ステップS1では、現在時刻Tを記録する。つまり、CPU16が含むRTCから得られる現在時刻Tを記録する。続いて、ステップS3では、各人間の位置情報Pn(T)を取得する。つまり、LRF12によって検出される、人間の位置およびその位置での局所行動を記録する。続いて、ステップS5では、現在位置Tと位置情報Pn(T)とを位置情報DB20に記録し、ステップS1に戻る。つまり、位置情報Pn(T)と、その位置情報Pn(T)を検出した現在時刻Tとを対応付けて、位置情報DB20に記録する。なお、ステップS3の処理を実行するCPU16は検出手段として機能する。
【0076】
図13は、遠隔操作処理のフロー図である。図13で示すように、CPU16は、ステップS21では、終了操作か否かを判断する。たとえば、入力装置24に対して、遠隔操作処理を終了する操作がされたか否かを判断する。ステップS21で“YES”であれば、つまり終了操作がされれば、遠隔操作処理を終了する。一方、ステップS21で“NO”であば、つまり終了操作がされていなければ、ステップS23で所定時間分の位置情報Pn(t)を読み出してクラスタリングする。たとえば、図9(A),(B)で示したように、時刻t1,t2,t3を含む所定時間分の位置情報Pn(t)を位置情報DB20から読み出し、類似度の近い空間グリッドiをクラスタリングする。
【0077】
続いて、ステップS25では、クラスタリング結果に基づいて、複数のエリアを含むクラスタリング地図を作成する。つまり、地図データ334を読み出し、ステップS23でのクラスタリング結果に基づいて、図9(B)に示すような複数のエリアを含むクラスタリング地図を作成する。また、作成されたクラスタリング地図は表示画像バッファ330に格納される。なお、ステップS23,S25の処理を実行するCPU16は地図作成手段として機能する。
【0078】
続いて、ステップS27では、クラスタリング地図を表示する。つまり、表示画像バッファ330に格納されているクラスタリング地図を読み出してLCD26に表示させる。たとえば、読み出されたクラスタリング地図は、図10に示すように表示画面200の地図表示206に表示される。なお、ステップS27の処理を実行するCPU16は表示手段として機能する。続いて、ステップS29では、地図上のエリアが選択されたか否かを判断する。たとえば、クラスタリング地図におけるエリアG1(図9(B)参照)を選択する操作が、入力装置24に対して行われたか否かを判断する。
【0079】
ステップS29で“NO”であれば、つまりエリアが選択されなければステップS21に戻る。一方、ステップS29で“YES”であれば、つまりエリアが選択されていれば、ステップS31で選択されたエリアを選択表示する。たとえば、エリアG1は、図10に示す選択エリアSEのように周囲を太線で囲われ、さらに両端を示す座標P1および座標P2が示される。
【0080】
続いて、ステップS33では選択されたエリアの属性に基づいて、動作命令を決定する。たとえば、エリアG1の属性は「ゆっくり歩く」であるため、ロボット14に送信する動作命令の内容は、「ゆっくりと移動する」になる。続いて、ステップS35では、選択されたエリアの座標情報と動作命令とを送信(付与)し、ステップS21に戻る。たとえば、座標P1および座標P2を含む座標情報と、内容が「ゆっくりと移動する」である動作命令とがロボット14に送信(付与)される。これにより、ロボット14は、選択エリアSE内で、点P1から点P2へ向けてゆっくりと移動する。
【0081】
なお、ロボット14に付与される動作命令は、「2点間をゆっくり往復する」などでもよく、この場合は点P1および点P2の間をゆっくり移動しながら往復する。
【0082】
また、属性が「うろうろする」である場合には、短い距離を動いては待機する行動を繰り返しながら2点間を往復する動作命令であってもよいし、コミュニケーションを誘発させる音声(たとえば、「困ったことはありませんか?」など)を発しながら2点間を往復する動作命令であってもよい。たとえば、「うろうろする」の属性を持つエリア内の人間は興味がある物(案内図、店舗など)の近くに居る場合が多く、ガイド(案内)を必要としている可能性が高いため、使用者は、周囲の人間がロボット14に対して話しかけやすいように動作させる。
【0083】
また、属性が「止まっている」である場合には、移動しない人間に対してコミュニケーション行動を開始する動作命令であってもよい。たとえば、「止まっている」の属性を持つエリア内の人間は休憩している場合が多く、ロボット14に興味を持ちやすい状態にあるため、使用者は、ロボット14から積極的にコミュニケーション行動を開始させる。
【0084】
また、ロボット14が掃除を行う掃除ロボットである場合には、遠隔操作装置10は、動作命令を「掃除する」とし、座標情報を選択エリアSEの座標範囲とする。
【0085】
このように、遠隔操作装置10は、選択エリアSEの属性に基づいて、様々な動作命令をロボット14に付与することができる。
【0086】
また、ステップS33,S35の処理を実行するCPU16は命令付与手段として機能し、さらにステップS33のみを実行するCPU16は座標情報付与手段として機能する。
【0087】
ここで、本実施例の遠隔操作装置10は、CPU16に遠隔操作処理を所定時間毎に実行させることで、操作画面200に表示されるクラスタリング地図を所定時間毎に更新する。ただし、遠隔操作装置10は以下の手法などでクラスタリング地図を更新してもよい。
【0088】
たとえば、所定時間を計測する計測カウンタをメモリ18に設け、ステップS21の処理の前に、前回のクラスタリング地図を表示してから所定時間が経過したかを判断する処理を加える。そして、CPU16は、その処理で“YES”と判断されたときに、ステップS21−S35の処理を実行する。
【0089】
この実施例によれば、遠隔操作装置10は、ショッピングモールなどに設けられるLRF12を含み、LRF12と同じ場所に設けられるロボット14を遠隔操作する。ショッピングモールでは、人間Aの位置情報Pn(t)が記録される。また、検出領域Eは、25cm四方の空間グリッド化され、その空間グリッド毎に局所行動のヒストグラムH1−H4が算出される。そして、遠隔操作装置10は、ヒストグラムH1−H4から類似度を算出し、その類似度の近い空間グリッドをクラスタリングすることで、クラスタリング地図を作成してLCD22に表示する。使用者は、表示されたクラスタリング地図に含まれる、任意のエリアを選択することで、そのエリアの属性に基づいて動作命令と座標情報とをロボット14に付与することができる。
【0090】
このように、使用者は、複数の人間の行動が視覚的に示されるクラスタリング地図を参照して、容易にロボットを遠隔操作することができる。
【0091】
また、使用者は、ロボット14が移動する位置やコースを示す座標を詳細に指定しなくても、任意のエリアを選択するだけで、ロボット14が移動する位置やコースを指定できる。
【0092】
なお、本実施例では、空間グリッドを併合するときの類似度の閾値を変更することで、クラスタリング地図に含まれるエリアの数を変更することができる。これにより、使用者は、直感的にエリアを認識しやすくなるように、類似度の閾値を恣意的に設定できる。また、人間の位置を検出するためにLRF12を用いたが、LRF12に代えて超音波距離センサやミリ波レーダなどを用いて、人間の位置を検出してもよい。
【0093】
また、入力装置24は、LCD22の表面を覆うタッチパネルを含んでもよく、使用者が直感的な操作で任意のエリアを選択できるようにしてもよい。
【符号の説明】
【0094】
10 …遠隔操作装置
12a−12f …LRF
14 …ロボット
16 …CPU
18 …メモリ
20 …位置情報DB
22 …LCD
24 …入力装置
26 …通信LANボード
28 …無線通信装置
100 …ネットワーク
【技術分野】
【0001】
この発明は、遠隔操作装置に関し、特にたとえば複数の人間が任意に行動する場所に設置されたロボットを遠隔操作する、遠隔操作装置に関する。
【背景技術】
【0002】
非特許文献1に開示されている、環境情報構造化システムには、自律行動によって人間に近づきサービスを開始することができるロボットが含まれ、そのロボットの活動範囲内に設けられるLRF(レーザーレンジファインダ)を利用して人間の歩行軌跡を計測し、その歩行軌跡から、複数の局所行動を認識する。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Takayuki Kanda, Dylan F. Glas, Masahiro Shiomi, Hiroshi Ishiguro and Norihiro Hagita, Who will be the customer?: A social robot that anticipates people’s behavior from their trajectories, Tenth International Conference on Ubiquitous Computing (UbiComp 2008), pp.380-389, 2008
【発明の概要】
【発明が解決しようとする課題】
【0004】
このように、非特許文献1では、人間の局所行動を取得して空間をクラスタリングすることができるが、そのようなクラスタリング技術をロボットの遠隔操作と組み合わせる技術はこれまで実現されていない。
【0005】
それゆえに、この発明の主たる目的は、新規な、遠隔操作装置を提供することである。
【0006】
この発明の他の目的は、複数の人間の行動に基づいて、ロボットの遠隔操作を行うことができる、遠隔操作装置である。
【課題を解決するための手段】
【0007】
この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、この発明の理解を助けるために記述する実施形態との対応関係を示したものであって、この発明を何ら限定するものではない。
【0008】
第1の発明は、複数の人間が任意に行動する場所に設置されたロボットを遠隔操作する遠隔操作装置であって、場所における複数の人間それぞれの局所行動を検出する検出手段、検出手段によって検出された所定時間分の局所行動をクラスタリングして複数のエリアを含む地図を作成する地図作成手段、地図を表示する表示手段、および表示された地図において任意のエリアが選択されたとき、任意のエリアの属性に基づいて、ロボットに動作命令を付与する命令付与手段を備える、遠隔操作装置である。
【0009】
第1の発明では、遠隔操作装置10は、たとえばショッピングモールに設置されたロボット(14)を遠隔操作することが可能である。また、ロボットが設置された場所には、検出領域(E)内に居る人間(A)の位置を検出する数台のLRF(12)が設置され、検出手段(12,16,S3)は、数台のLRFを利用して複数の人間の局所行動を検出する。また、遠隔操作装置は、検出領域を空間グリッド化することで、空間グリッド毎に局所行動のヒストグラムを算出する。そして、地図作成手段(16,S23,S25)は、局所行動のヒストグラムから算出される類似度が近い空間グリッドをクラスタリングすることで、複数のエリアを含む地図(クラスタリング地図)を作成する。作成された地図は、ロボットを遠隔操作するための操作画面(200)の一部として、たとえばLCDである表示手段(22)に表示される。命令付与手段(16,26,28,S33,S35)は、地図に含まれる任意のエリアが選択されると、エリアの属性である局所行動に基づいて、ロボットに動作命令を付与する。
【0010】
第1の発明によれば、遠隔操作装置の使用者は、複数の人間の行動が視覚的に示される地図を参照して、ロボットを遠隔操作することができる。
【0011】
第2の発明は、第1の発明に従属し、命令付与手段は、動作命令として、任意のエリアの座標情報を付与する座標情報付与手段を含む。
【0012】
第2の発明では、座標情報付与手段(16,S35)は、たとえば、任意のエリアにおける、両端の座標、座標範囲および重心座標などを座標情報としてロボットに付与する。
【0013】
第2の発明によれば、使用者は、ロボットが移動する位置やコースを示す座標を指定しなくても、任意のエリアを選択するだけで、ロボットが移動する位置やコースを指定できる。
【発明の効果】
【0014】
この発明によれば、複数の人間の局所行動を視覚的に示す地図が表示されるため、遠隔操作装置の使用者は、その地図を参照して、ロボットの遠隔操作を容易に行うことができる。
【0015】
この発明の上述の目的、その他の目的、特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0016】
【図1】図1はこの発明の遠隔操作装置の概要を示す図解図である。
【図2】図2は図1に示す遠隔操作装置の電気的な構成を示すブロック図である。
【図3】図3は図1に示すロボットの外観を正面から見た図解図である。
【図4】図4は図1に示すロボットの電気的な構成を示すブロック図である。
【図5】図5は図1および図2に示すLRFの計測領域を示す図解図である。
【図6】図6は図1および図2に示すLRFを利用して取得された人間の歩行軌跡の一例を示す図解図である。
【図7】図7は図2に示すCPUによって検出される局所行動と対応する歩行軌跡の一例を示す図解図である。
【図8】図8は図1に示すLRFおよびロボットが設置される或る場所の地図を示す図解図である。
【図9】図9は図2に示すCPUによって作成されるクラスタリング地図の一例を示す図解図である。
【図10】図10は図2に示すLCDに表示されるクラスタリング地図の一例を示す図解図である。
【図11】図11は図2に示す遠隔操作装置のメモリのメモリマップの一例を示す図解図である。
【図12】図12は図2に示す遠隔操作装置のCPUの位置情報記録処理を示すフロー図である。
【図13】図13は図2に示す遠隔操作装置のCPUの遠隔操作処理を示すフロー図である。
【発明を実施するための形態】
【0017】
図1を参照して、この実施例の遠隔操作装置10は、LRF12a,12bを含む数台のLRFを備え、ネットワーク100を介して、自律移動ロボット(以下、単に「ロボット」と言う。)14に動作命令を付与することが可能である。また、LRF12a,12bはロボット14と共に人間Aが任意に行動できる場所に設置される。そして、遠隔操作装置10はLRF12a,12bを利用して人間Aの位置を検出する。たとえば、人間Aが任意に行動できる場所とは、会社のフロア、博物館、ショッピングモールまたはアトラクション会場などであり、LRF12a,12bは様々な場所(環境)に設置される。
【0018】
なお、ここでは簡単のため人間は1人しか示していないが、遠隔操作装置10は2人以上の位置を同時に検出することができる。さらに、ロボット14も同様に1台しか示していないが、遠隔操作装置は2台以上のロボット14を同時に管理することができる。また、ロボット14は、相互作用指向のロボット(コミュニケーションロボット)でもあり、人間Aのようなコミュニケーションの対象(コミュニケーション対象)との間で、身振り手振りのような身体動作および音声の少なくとも一方を含むコミュニケーション行動を実行する機能を備えている。
【0019】
図2は遠隔操作装置10の電気的な構成を示すブロック図である。この図2を参照して、遠隔操作装置10は、LRF12a−12fおよびCPU16を含む。このCPU16は、マイクロコンピュータ或いはプロセサとも呼ばれ、先述したLRF12aおよびLRF12bに加えて、LRF12c,LRF12d,LRF12eおよびLRF12fともそれぞれ接続される。さらに、CPU16は、メモリ18、位置情報DB20、LCD22、入力装置24および通信LANボード26ともそれぞれ接続される。なお、LRF12a−12fを区別する必要がない場合には、まとめて「LRF12」と言う。
【0020】
LRF12は、レーザーを照射し、物体(人間も含む)に反射して戻ってくるまでの時間から当該物体ための距離を計測するものである。たとえば、トランスミッタ(図示せず)から照射したレーザーを回転ミラー(図示せず)で反射させて、前方を扇状に一定角度(たとえば、0.5度)ずつスキャンする。ここで、LRF12としては、SICK社製のレーザーレンジファインダ(型式 LMS200)を用いることができる。このレーザーレンジファインダを用いた場合には、距離8mを±15mm程度の誤差で計測可能である。
【0021】
メモリ18は、図示は省略をするが、ROM,HDDおよびRAMを含み、ROMおよびHDDには、遠隔操作装置10の動作を制御するための制御プログラムが予め記憶される。たとえば、LRF12による人間の検出に必要なプログラムなどが記録される。また、RAMは、ワークメモリやバッファメモリとして用いられる。
【0022】
位置情報データベース(位置情報DB)20は、LRF12によって検出された人間の位置と局所的な行動(局所行動)とを蓄積するためのデータベースであり、HDD(図示せず)のような記憶媒体を用いて構成される。なお、人間の値は、x−y座標で示される。
【0023】
LCD22は、ロボット14を遠隔操作する際の操作画面(図10参照)を表示する。また、入力装置24はマイクや、マウスおよびキーボード(図示せず)から構成される。たとえば、使用者はLCD22に表示された操作画面を見ながら、マウスなどを使ってロボット14を遠隔操作する。
【0024】
また、CPU16は、通信LANボード26に接続される。通信LANボード26は、たとえばDSPで構成され、CPU16から与えられた送信データを無線通信装置28に与え、無線通信装置28は送信データを、ネットワーク100を介してロボット14に送信する。たとえば、送信データとしては、遠隔操作装置10からロボット14に付与する動作命令の信号(コマンド)であったりする。また、通信LANボード26は、無線通信装置28を介してデータを受信し、受信したデータをCPU16に与える。
【0025】
図3はこの実施例のロボット14の外観を示す正面図である。図3を参照して、ロボット14は台車30を含み、台車30の下面にはロボット14を自律移動させる2つの車輪32および1つの従輪34が設けられる。2つの車輪32は車輪モータ36(図4参照)によってそれぞれ独立に駆動され、台車30すなわちロボット14を前後左右の任意方向に動かすことができる。また、従輪34は車輪32を補助する補助輪である。したがって、ロボット14は、配置された空間内を自律制御によって移動可能である。
【0026】
台車30の上には、円柱形のセンサ取り付けパネル38が設けられ、このセンサ取り付けパネル38には、多数の赤外線距離センサ40が取り付けられる。これらの赤外線距離センサ40は、センサ取り付けパネル38すなわちロボット14の周囲の物体(人間や障害物など)との距離を測定するものである。
【0027】
なお、この実施例では、距離センサとして、赤外線距離センサを用いるようにしてあるが、赤外線距離センサに代えて、小型のLRFや、超音波距離センサおよびミリ波レーダなどを用いることもできる。
【0028】
センサ取り付けパネル38の上には、胴体42が直立するように設けられる。また、胴体42の前方中央上部(人の胸に相当する位置)には、上述した赤外線距離センサ40がさらに設けられ、ロボット14の前方の主として人間との距離を計測する。また、胴体42には、その側面側上端部のほぼ中央から伸びる支柱44が設けられ、支柱44の上には、全方位カメラ46が設けられる。全方位カメラ46は、ロボット14の周囲を撮影するものであり、後述する眼カメラ70とは区別される。この全方位カメラ46としては、たとえばCCDやCMOSのような固体撮像素子を用いるカメラを採用することができる。なお、これら赤外線距離センサ40および全方位カメラ46の設置位置は、当該部位に限定されず適宜変更され得る。
【0029】
胴体42の両側面上端部(人の肩に相当する位置)には、それぞれ、肩関節48Rおよび肩関節48Lによって、上腕50Rおよび上腕50Lが設けられる。図示は省略するが、肩関節48Rおよび肩関節48Lは、それぞれ、直交する3軸の自由度を有する。すなわち、肩関節48Rは、直交する3軸のそれぞれの軸廻りにおいて上腕50Rの角度を制御できる。肩関節48Rの或る軸(ヨー軸)は、上腕50Rの長手方向(または軸)に平行な軸であり、他の2軸(ピッチ軸およびロール軸)は、その軸にそれぞれ異なる方向から直交する軸である。同様にして、肩関節48Lは、直交する3軸のそれぞれの軸廻りにおいて上腕50Lの角度を制御できる。肩関節48Lの或る軸(ヨー軸)は、上腕50Lの長手方向(または軸)に平行な軸であり、他の2軸(ピッチ軸およびロール軸)は、その軸にそれぞれ異なる方向から直交する軸である。
【0030】
また、上腕50Rおよび上腕50Lのそれぞれの先端には、肘関節52Rおよび肘関節52Lが設けられる。図示は省略するが、肘関節52Rおよび肘関節52Lは、それぞれ1軸の自由度を有し、この軸(ピッチ軸)の軸回りにおいて前腕54Rおよび前腕54Lの角度を制御できる。
【0031】
前腕54Rおよび前腕54Lのそれぞれの先端には、人の手に相当する球体56Rおよび球体56Lがそれぞれ固定的に設けられる。ただし、指や掌の機能が必要な場合には、人間の手の形をした「手」を用いることも可能である。また、図示は省略するが、台車30の前面、肩関節48Rと肩関節48Lとを含む肩に相当する部位、上腕50R、上腕50L、前腕54R、前腕54L、球体56Rおよび球体56Lには、それぞれ、接触センサ58(図4で包括的に示す)が設けられる。台車30の前面の接触センサ58は、台車30への人間や他の障害物の接触を検知する。したがって、ロボット14は、その自身の移動中に障害物との接触が有ると、それを検知し、直ちに車輪32の駆動を停止してロボット14の移動を急停止させることができる。また、その他の接触センサ58は、当該各部位に触れたかどうかを検知する。なお、接触センサ58の設置位置は、当該部位に限定されず、適宜な位置(人の胸、腹、脇、背中および腰に相当する位置)に設けられてもよい。
【0032】
胴体42の中央上部(人の首に相当する位置)には首関節60が設けられ、さらにその上には頭部62が設けられる。図示は省略するが、首関節60は、3軸の自由度を有し、3軸の各軸廻りに角度制御可能である。或る軸(ヨー軸)はロボット14の真上(鉛直上向き)に向かう軸であり、他の2軸(ピッチ軸、ロール軸)は、それぞれ、それと異なる方向で直交する軸である。
【0033】
頭部62には、人の口に相当する位置に、スピーカ64が設けられる。スピーカ64は、ロボット14が、それの周辺の人間に対して音声ないし音によってコミュニケーションを取るために用いられる。また、人の耳に相当する位置には、マイク66Rおよびマイク66Lが設けられる。以下、右のマイク66Rと左のマイク66Lとをまとめてマイク66と言うことがある。マイク66は、周囲の音、とりわけコミュニケーションを実行する対象である人間の音声を取り込む。さらに、人の目に相当する位置には、眼球部68Rおよび眼球部68Lが設けられる。眼球部68Rおよび眼球部68Lは、それぞれ眼カメラ70Rおよび眼カメラ70Lを含む。以下、右の眼球部68Rと左の眼球部68Lとをまとめて眼球部68と言うことがある。また、右の眼カメラ70Rと左の眼カメラ70Lとをまとめて眼カメラ70と言うことがある。
【0034】
眼カメラ70は、ロボット14に接近した人間の顔や他の部分ないし物体などを撮影して、それに対応する映像信号を取り込む。また、眼カメラ70は、上述した全方位カメラ46と同様のカメラを用いることができる。たとえば、眼カメラ70は、眼球部68内に固定され、眼球部68は、眼球支持部(図示せず)を介して頭部62内の所定位置に取り付けられる。図示は省略するが、眼球支持部は、2軸の自由度を有し、それらの各軸廻りに角度制御可能である。たとえば、この2軸の一方は、頭部62の上に向かう方向の軸(ヨー軸)であり、他方は、一方の軸に直交しかつ頭部62の正面側(顔)が向く方向に直行する方向の軸(ピッチ軸)である。眼球支持部がこの2軸の各軸廻りに回転されることによって、眼球部68ないし眼カメラ70の先端(正面)側が変位され、カメラ軸すなわち視線方向が移動される。なお、上述のスピーカ64、マイク66および眼カメラ70の設置位置は、当該部位に限定されず、適宜な位置に設けられてよい。
【0035】
このように、この実施例のロボット14は、車輪32の独立2軸駆動、肩関節48の3自由度(左右で6自由度)、肘関節52の1自由度(左右で2自由度)、首関節60の3自由度および眼球支持部の2自由度(左右で4自由度)の合計17自由度を有する。
【0036】
図4はロボット14の電気的な構成を示すブロック図である。この図4を参照して、ロボット14は、CPU80を含む。CPU80は、マイクロコンピュータ或いはプロセッサとも呼ばれ、バス82を介して、メモリ84、モータ制御ボード86、センサ入力/出力ボード88および音声入力/出力ボード90に接続される。
【0037】
メモリ84は、図示は省略をするが、ROMおよびRAMを含む。ROMには、ロボット14の動作を制御するための制御プログラムが予め記憶される。たとえば、各センサの出力(センサ情報)を検知するための検知プログラムや、外部コンピュータ(遠隔操作装置10)との間で必要なデータやコマンドを送受信するための通信プログラムなどが記録される。また、RAMは、ワークメモリやバッファメモリとして用いられる。
【0038】
モータ制御ボード86は、たとえばDSPで構成され、各腕や首関節および眼球部などの各軸モータの駆動を制御する。すなわち、モータ制御ボード86は、CPU80からの制御データを受け、右眼球部68Rの2軸のそれぞれの角度を制御する2つのモータ(図4では、まとめて「右眼球モータ92」と示す)の回転角度を制御する。同様に、モータ制御ボード86は、CPU80からの制御データを受け、左眼球部68Lの2軸のそれぞれの角度を制御する2つのモータ(図4では、まとめて「左眼球モータ94」と示す)の回転角度を制御する。
【0039】
また、モータ制御ボード86は、CPU80からの制御データを受け、肩関節48Rの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節52Rの角度を制御する1つのモータとの計4つのモータ(図4では、まとめて「右腕モータ96」と示す)の回転角度を制御する。同様に、モータ制御ボード86は、CPU80からの制御データを受け、肩関節48Lの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節52Lの角度を制御する1つのモータとの計4つのモータ(図4では、まとめて「左腕モータ98」と示す)の回転角度を制御する。
【0040】
さらに、モータ制御ボード86は、CPU80からの制御データを受け、首関節60の直交する3軸のそれぞれの角度を制御する3つのモータ(図4では、まとめて「頭部モータ110」と示す)の回転角度を制御する。そして、モータ制御ボード86は、CPU80からの制御データを受け、車輪32を駆動する2つのモータ(図4では、まとめて「車輪モータ36」と示す)の回転角度を制御する。なお、この実施例では、車輪モータ36を除くモータは、制御を簡素化するためにステッピングモータ(すなわち、パルスモータ)を用いる。ただし、車輪モータ36と同様に直流モータを用いるようにしてもよい。また、ロボット14の身体部位を駆動するアクチュエータは、電流を動力源とするモータに限らず適宜変更されてもよい。たとえば、他の実施例では、エアアクチュエータなどが適用されてもよい。
【0041】
センサ入力/出力ボード88は、モータ制御ボード86と同様に、DSPで構成され、各センサからの信号を取り込んでCPU80に与える。すなわち、赤外線距離センサ40のそれぞれからの反射時間に関するデータがこのセンサ入力/出力ボード88を通じてCPU80に入力される。また、全方位カメラ46からの映像信号が、必要に応じてセンサ入力/出力ボード88で所定の処理を施してからCPU80に入力される。眼カメラ70からの映像信号も、同様に、CPU80に入力される。また、上述した複数の接触センサ58(図4では、まとめて「接触センサ58」と示す)からの信号がセンサ入力/出力ボード88を介してCPU80に与えられる。音声入力/出力ボード90もまた、同様に、DSPで構成され、CPU80から与えられる音声合成データに従った音声または声がスピーカ64から出力される。また、マイク66からの音声入力が、音声入力/出力ボード90を介してCPU80に与えられる。
【0042】
また、CPU80は、バス82を介して通信LANボード112に接続される。通信LANボード112は、たとえばDSPで構成され、CPU80から与えられた送信データを無線通信装置114に与え、無線通信装置114は送信データを、ネットワーク100を介して外部コンピュータ(遠隔操作装置10)に送信する。また、通信LANボード112は、無線通信装置114を介してデータを受信し、受信したデータをCPU80に与える。たとえば、送信データとしては、全方位カメラ46および目カメラ70によって撮影された周囲の映像データであったりする。
【0043】
次にLRF12について詳細に説明する。図5を参照して、LRF12の計測範囲は、半径R(R≒8m)の半円形状(扇形)で示される。つまり、LRF12は、その正面方向を中心とした場合に、左右90°の方向を所定の距離(R)以内で計測可能である。
【0044】
また、使用しているレーザーは、日本工業規格 JIS C 6802「レーザー製品の安全基準」におけるクラス1レーザーであり、人の眼に対して影響を及ぼさない安全なレベルである。また、この実施例では、LRF12のサンプリングレートを37Hzとした。これは、歩行するなどにより移動する人間の位置を連続して検出するためである。
【0045】
さらに、先述したように、LRF12は、様々な場所に配置される。具体的には、LRF12a,12bの各々は、検出領域が重なるように配置され、図示は省略するが、床面から約90cmの高さに固定される。この高さは、被験者の胴体と腕(両腕)とを検出可能とするためであり、たとえば、日本人の成人の平均身長から算出される。したがって、遠隔操作装置10を設ける場所(地域ないし国)や被験者の年齢ないし年代(たとえば、子供,大人)に応じて、LRF12を固定する高さを適宜変更するようにしてよい。なお、本実施例では、設定されるLRF12は6台としたが、2台以上であれば、任意の台数のLRF12を設置してもよい。
【0046】
このような構成の遠隔操作装置10では、CPU16がLRF12からの出力(距離データ)に基づいて、パーティクルフィルタを用いて、人間の現在位置の変化を推定する。そして、推定された現在位置の変化は歩行軌跡として記録される。
【0047】
たとえば、図6を参照して、LRF12a,12bは互いに向い合せに設置され、LRF12a,12bの計測範囲が重なる範囲は斜線が付されて示される。斜線が付された範囲は検出領域Eとされ、この検出領域E内では人間の現在位置が連続的に検出される。そして、連続的に検出された現在位置のデータは歩行軌跡として示される。たとえば、歩行軌跡Kaおよび歩行軌跡Kbのように示される。なお、歩行軌跡Ka,Kbを区別する必要がない場合には、まとめて「歩行軌跡K」と言う。
【0048】
ここで、本実施例では、SVM(Support Vector Machine)によって人間の歩行軌跡Kから人間の歩き方の判別を行い、遠隔操作装置10は、局所行動を検出する。なお、SVMによる判別手法については、広く一般的な方法であるため、ここでは詳細な説明を省略する。
【0049】
まず、歩行軌跡Kは特徴量データが抽出される。具体的には、歩行軌跡Kは、左側中央が始点となるように方向の正規化処理が施され、方向の正規化後の歩行軌跡Kと囲む長方形の幅(縦軸方向)および長さ(横軸方向)が算出される。また、歩行軌跡Kは近似する折れ線に変換され、連続する2つの直線のなす角がそれぞれ算出される。さらに、歩行軌跡Kにおける一定時間毎の変化量を時間で微分することで、移動軌跡Kの速度が算出される。そして、このように求められた、歩行軌跡Kの終点、歩行軌跡Kを囲む長方形の幅と長さ、歩行軌跡Kのなす角度および速度のそれぞれが歩行軌跡Kの特徴量データとされる。
【0050】
次に、特徴量データに対してラベル付けし、ラベル付けされた特徴量データをSVMに学習させる。以下、特徴量データに対するラベル付けおよびSVMの学習について詳細に説明する。
【0051】
本実施例では、特徴量データをラベル付けするために、「歩き方」、「歩く速さ」、「短時間の歩き方」および「短時間の歩く速さ」の4つのクラスを定義する。「歩き方」のクラスは、「まっすぐ」、「右に曲がる」、「左に曲がる」、「うろうろする」、「Uターン」および「不明」の6つのカテゴリから構成され、5.1秒の歩行軌跡Kから抽出される特徴量データがラベル付けされる。そして、SVMには、ラベル付けされた226個の特徴量データを学習させる。また、「歩く速さ」のクラスは、「走っている」、「忙しく歩く」、「ゆっくり歩く」、「止まっている」および「待っている」の5つのカテゴリから構成され、4.9秒の歩行軌跡Kから抽出される特量データがラベル付けされる。そして、SVMには、ラベル付けされた166個の特徴量データを学習させる。
【0052】
「短時間の歩き方」のクラスは、「歩き方」と類似するカテゴリから構成さる。そして、SVMには、2.1秒の歩行軌跡Kであり、かつ「うろうろする」のカテゴリを除いた、150個の特徴量データをSVMに学習させる。「短時間の歩く速さ」のクラスは、「歩く速さ」と類似するカテゴリから構成される。そして、SVMには、2.2秒の歩行軌跡Kであり、かつ「待っている」のカテゴリを除いた、159の特徴量データを学習させる。
【0053】
そして、遠隔操作装置10では、このように学習したSVMによって検出される歩行軌跡Kから局所行動を判別し、判別結果をマージする。具体的には、「歩き方」のクラスでは「右に曲がる」、「左に曲がる」および「Uターン」を「うろうろする」にマージし、「歩く速さ」のクラスでは「待っている」を「止まっている」にマージする。さらに、「短時間の歩き方」のクラスは「歩き方」のクラスにマージされ、「短時間の歩く速さ」のクラスは「歩く速さ」のクラスにマージされる。これにより、遠隔操作装置10は、「忙しく歩く」、「ゆっくり歩く」、「うろうろする」および「止まっている」の4つの局所行動を検出することができるようになる。
【0054】
ここで、各局所行動のそれぞれに対応する歩行軌跡Kを図7(A)−図7(D)に示す。図7(A)は「忙しく歩く」の局所行動の一例を示しており、歩行軌跡Kの形状が直線的であり、始点と終点との距離が長い。また、図7(B)は「ゆっくり歩く」の局所行動の一例を示しており、歩行軌跡Kの形状が直線的ではあるが、始点と終点との距離が短い。また、図7(C)は「うろうろする」の局所行動の一例を示しており、歩行軌跡Kがおよそ90度以下で2回曲がっている。そして、図7(D)は「止まっている」の局所行動の一例を示しており、歩行軌跡Kにおける始点と終点とがほぼ変わらない位置にある。
【0055】
ここで、本実施例では、時刻tに検出されるn人(n:自然数)の位置情報を、位置情報Pn(t)と表わし、この位置情報Pn(t)は人間の位置(x、y)に加え、4種類の局所行動の有無を表わすブール変数b1−b4を含むものと定義する。そして、位置情報DB20には、位置情報Pn(t)が記録される。また、位置情報Pn(t)は、数1に示す式で表すことができる。
【0056】
[数1]
Pn(T)={x,y,b1,b2,b3,b4}
ここで、ブール変数b1は「忙しく歩く」の有無を表わし、ブール変数b2は「ゆっくり歩く」の有無を表わし、ブール変数b3は「うろうろする」の有無を表わし、ブール変数b4は「止まっている」の有無を表わす。
【0057】
なお、歩行軌跡Kから抽出される特徴量は4つだけに限らず、加重方向指数ヒストグラム法などによって抽出された特徴量が用いられてもよい。さらに、汎用性を高めるために、判別結果が全くマージされなくてもよし、マージされる判別結果が減らされてもよい。そして、検出される局所行動に応じてブール変数の数も変化するため、位置情報Pn(t)が含むブール変数の数も変化する。また、本実施例におけるブール変数b1−b4のそれぞれは、0〜100までの値をとる。
【0058】
次に、LRF12によって人間の位置を検出可能な空間(検出領域E)を、25cm四方で空間グリッド化する。ここで、遠隔操作装置10は、位置情報DB20に記録される位置情報Pn(t)を読み出すことで、或る時刻tの空間グリッドiにおいて、空間グリッドi内の局所行動の生起回数を集計することができる。そして、その集計結果として、「忙しく歩く」、「ゆっくり歩く」、「うろうろする」および「止まっている」の局所行動それぞれに対応する、ヒストグラムH1(i,t)、ヒストグラムH2(i,t)、ヒストグラムH3(i,t)およびヒストグラムH4(i,t)のそれぞれが算出される。
【0059】
たとえば、検出領域Eが図8(A)に示す地図に対応する場所(本実施例ではショッピングモール)に含まれる場合に、短時間の集計によって得られたヒストグラムに基づき、局所行動を空間グリッドi毎に視覚化すると図8(B)に示す局所行動地図のようになる。図8(B)を参照して、局所行動が検出された空間グリッドiには、検出された局所行動に対応する色が彩色され、局所行動が検出されていない空間グリッドiは何も彩色されない。たとえば、青色(図8(B)では、濃い右斜線示す)に彩色された空間グリッドiは局所行動が「忙しく歩く」を示し、緑色(図8(B)では、濃い左斜線示す)に彩色された空間グリッドiは局所行動が「ゆっくり歩く」を示し、桃色(図8(B)では、薄い右斜線示す)に彩色された空間グリッドiは局所行動が「うろうろする」を示し、茶色(図8(B)では、網掛けで示す)に彩色された空間グリッドiは、局所行動が「止まっている」を示す。なお、図8(A)の地図に示される「案内図」と「店舗」とは、図8(B)および後述する図9(A)、図9(B)では省略する。
【0060】
そして、本実施例では、全ての空間グリッドiに対して4種類の局所行動のヒストグラムを算出した後に、類似する空間グリッドを周知のISODATA法によりクラスタリングし、クラスタリング地図を作成する。具体的には、ヒストグラムH1−H4から空間グリッドiと隣接する空間グリッドjの類似度をそれぞれ算出し、類似度が近い空間グリッドiと隣接する空間グリッドjとを併合して空間パーティション(エリア)を作成する。また、空間グリッドiと隣接する空間グリッドjの類似度は数2に示す式から算出される。
【0061】
【数2】
【0062】
たとえば、図9(A)を参照して、所定時間(時刻t1、時刻t2、時刻t3,…)の位置情報Pn(t)を位置情報DB20から読み出し、各空間グリッドをクラスタリングすると、図9(B)に示すクラスタリング地図が作成される。なお、図9(A)では、読み出された位置情報Pn(t)を局所行動地図として表わす。
【0063】
図9(B)を参照して、青色のエリアは「忙しく歩く」の局所行動を属性として持っており、この青色のエリアでは人々が早歩きで歩き去る。たとえば、この青色のエリアは通路などに多く設定されている。緑色のエリアは「ゆっくり歩く」の局所行動を属性として持っており、この緑色のエリアでは人々はゆっくり歩く。たとえば、緑色のエリアは店舗の前に比較的近い処や、案内図の前などに設定されている。桃色のエリアは「うろうろする」の局所行動を属性として持っており、この桃色のエリアでは人々はうろうろする。たとえば、この桃色のエリアは店舗の前に設定されている。茶色のエリアは「止まっている」の局所行動を属性として持っており、この茶色のエリアでは人々は立ち止まっている。たとえば、この茶色のエリアはベンチ(図示せず)の周辺や、店舗の前の一部に設定されている。
【0064】
また、同じ緑色で示されるエリアG1およびエリアG2は、属性が同じ「ゆっくり歩く」ではあるが、類似度が近くなかったため、併合されていない。また、同様に、エリアB1およびエリアB2も、類似度が近くなかったため、併合されずに異なるエリアとして設定される。
【0065】
そして、このように作成されたクラスタリング地図は、LCD22に表示される。図10を参照して、LCD22はGUIとして操作画面200を表示し、その操作画面200にはロボットアイコン202a−202c、ロボットカメラ画像204および地図表示206が含まれる。ロボットアイコン202a−202cは、ショッピングモールに設置されている3台のロボット14にそれぞれ対応する。たとえば、ロボットアイコン202aと対応するロボット14は、遠隔操作の動作命令が付与可能な状態である。ロボットアイコン202bと対応するロボット14は自律行動によってショッピングモール内を巡回している。ロボットアイコン202cと対応するロボット14は遠隔操作できない状態である。また、ロボットカメラ画像204には、遠隔操作中のロボット14から送信されてくる映像データが表示される。
【0066】
地図表示206には、作成されたクラスタリング地図が表示される。また、表示されたクラスタリング地図において、使用者によって任意に選択されたエリアが選択エリアSEとして選択表示される。遠隔操作装置10は、選択エリアSEが選択されると、その選択エリアSEの属性に基づいてロボット14に対する動作命令を決定し、さらに遠隔操作装置10は、その動作命令と選択エリアSEの座標情報とをロボット14に付与(送信)する。これにより、ロボット14は、付与された座標情報が示すエリアに移動し、その選択エリアSEで動作命令に基づく動作を実行する。
【0067】
たとえば、使用者がエリアG1(図9(B)参照)を選択すると、エリアG1が選択エリアSEとして選択表示され、さらに選択エリアSEの両端座標が座標P1および座標P2で示される。このとき、遠隔操作装置10は、エリアG1の属性、「ゆっくり歩く」に基づいて、動作命令を「ゆっくり移動する」とし、さらに、遠隔操作装置10は、エリアG1の両端を示す座標P1と座標P2を座標情報として算出する。そして、ロボット14は、遠隔操作装置10から付与される動作命令と座標情報とに基づいて、選択エリアSE(エリアG1)内で座標P1から座標P2に向けてゆっくり移動する。
【0068】
また、属性が「忙しく歩く」であれば動作命令を「早く移動する」とする。また、属性が「止まっている」であれば動作命令を「エリア内で待機する」とし、座標情報としてはそのエリアの一端を示す座標とする。また、属性が「うろうろする」であれば動作命令を「エリア内で待機する」とするが、座標情報としてはそのエリアの重心位置(中心)を示す座標とする。
【0069】
図11は、図2に示すメモリ18のメモリマップ300の一例を示す図解図である。図11に示すように、メモリ18はプログラム記憶領域302およびデータ記憶領域304を含む。プログラム記憶領域302には、位置情報記録プログラム312および遠隔操作プログラム314が記憶される。
【0070】
位置情報記録プログラム312は、たとえばショッピングモール内に居る人間の位置情報Pn(t)を逐次記録するためのプログラムである。遠隔操作プログラム314は、ロボット14を遠隔操作するためのプログラムであり、所定時間毎にクラスタリング地図を操作画面200に表示する。
【0071】
なお、図示は省略するが、遠隔操作装置10を動作させるためのプログラムは、ネットワーク100を介してデータ通信を行うプログラムおよび操作画面200を表示するためのプログラムなどを含む。
【0072】
また、データ記憶領域304には、表示画像バッファ330が設けられると共に、GUIデータ332および地図データ334が記録される。表示画像バッファ330は、LCD22に表示するクラスタリング地図のデータを一時的に記録するためのバッファである。GUIデータ332は、操作画面200を表示するための画像データなどであり、たとえばロボットアイコン202を表示するために利用される。地図データ334は、クラスタリング地図を作成する際に元になる地図のデータであり、たとえば図8(A)に示す地図である。
【0073】
なお、図示は省略するが、データ記憶領域304には、様々な計算の結果を一時的に格納するバッファなどが設けられると共に、遠隔操作装置10の動作に必要な他のカウンタやフラグも設けられる。
【0074】
具体的には、遠隔操作装置10のCPU16は、図12および図13に示す処理を含む、複数の処理を並列的に実行する。
【0075】
図12に示すように、遠隔操作装置10のCPU16は、位置情報記録処理を実行すると、ステップS1では、現在時刻Tを記録する。つまり、CPU16が含むRTCから得られる現在時刻Tを記録する。続いて、ステップS3では、各人間の位置情報Pn(T)を取得する。つまり、LRF12によって検出される、人間の位置およびその位置での局所行動を記録する。続いて、ステップS5では、現在位置Tと位置情報Pn(T)とを位置情報DB20に記録し、ステップS1に戻る。つまり、位置情報Pn(T)と、その位置情報Pn(T)を検出した現在時刻Tとを対応付けて、位置情報DB20に記録する。なお、ステップS3の処理を実行するCPU16は検出手段として機能する。
【0076】
図13は、遠隔操作処理のフロー図である。図13で示すように、CPU16は、ステップS21では、終了操作か否かを判断する。たとえば、入力装置24に対して、遠隔操作処理を終了する操作がされたか否かを判断する。ステップS21で“YES”であれば、つまり終了操作がされれば、遠隔操作処理を終了する。一方、ステップS21で“NO”であば、つまり終了操作がされていなければ、ステップS23で所定時間分の位置情報Pn(t)を読み出してクラスタリングする。たとえば、図9(A),(B)で示したように、時刻t1,t2,t3を含む所定時間分の位置情報Pn(t)を位置情報DB20から読み出し、類似度の近い空間グリッドiをクラスタリングする。
【0077】
続いて、ステップS25では、クラスタリング結果に基づいて、複数のエリアを含むクラスタリング地図を作成する。つまり、地図データ334を読み出し、ステップS23でのクラスタリング結果に基づいて、図9(B)に示すような複数のエリアを含むクラスタリング地図を作成する。また、作成されたクラスタリング地図は表示画像バッファ330に格納される。なお、ステップS23,S25の処理を実行するCPU16は地図作成手段として機能する。
【0078】
続いて、ステップS27では、クラスタリング地図を表示する。つまり、表示画像バッファ330に格納されているクラスタリング地図を読み出してLCD26に表示させる。たとえば、読み出されたクラスタリング地図は、図10に示すように表示画面200の地図表示206に表示される。なお、ステップS27の処理を実行するCPU16は表示手段として機能する。続いて、ステップS29では、地図上のエリアが選択されたか否かを判断する。たとえば、クラスタリング地図におけるエリアG1(図9(B)参照)を選択する操作が、入力装置24に対して行われたか否かを判断する。
【0079】
ステップS29で“NO”であれば、つまりエリアが選択されなければステップS21に戻る。一方、ステップS29で“YES”であれば、つまりエリアが選択されていれば、ステップS31で選択されたエリアを選択表示する。たとえば、エリアG1は、図10に示す選択エリアSEのように周囲を太線で囲われ、さらに両端を示す座標P1および座標P2が示される。
【0080】
続いて、ステップS33では選択されたエリアの属性に基づいて、動作命令を決定する。たとえば、エリアG1の属性は「ゆっくり歩く」であるため、ロボット14に送信する動作命令の内容は、「ゆっくりと移動する」になる。続いて、ステップS35では、選択されたエリアの座標情報と動作命令とを送信(付与)し、ステップS21に戻る。たとえば、座標P1および座標P2を含む座標情報と、内容が「ゆっくりと移動する」である動作命令とがロボット14に送信(付与)される。これにより、ロボット14は、選択エリアSE内で、点P1から点P2へ向けてゆっくりと移動する。
【0081】
なお、ロボット14に付与される動作命令は、「2点間をゆっくり往復する」などでもよく、この場合は点P1および点P2の間をゆっくり移動しながら往復する。
【0082】
また、属性が「うろうろする」である場合には、短い距離を動いては待機する行動を繰り返しながら2点間を往復する動作命令であってもよいし、コミュニケーションを誘発させる音声(たとえば、「困ったことはありませんか?」など)を発しながら2点間を往復する動作命令であってもよい。たとえば、「うろうろする」の属性を持つエリア内の人間は興味がある物(案内図、店舗など)の近くに居る場合が多く、ガイド(案内)を必要としている可能性が高いため、使用者は、周囲の人間がロボット14に対して話しかけやすいように動作させる。
【0083】
また、属性が「止まっている」である場合には、移動しない人間に対してコミュニケーション行動を開始する動作命令であってもよい。たとえば、「止まっている」の属性を持つエリア内の人間は休憩している場合が多く、ロボット14に興味を持ちやすい状態にあるため、使用者は、ロボット14から積極的にコミュニケーション行動を開始させる。
【0084】
また、ロボット14が掃除を行う掃除ロボットである場合には、遠隔操作装置10は、動作命令を「掃除する」とし、座標情報を選択エリアSEの座標範囲とする。
【0085】
このように、遠隔操作装置10は、選択エリアSEの属性に基づいて、様々な動作命令をロボット14に付与することができる。
【0086】
また、ステップS33,S35の処理を実行するCPU16は命令付与手段として機能し、さらにステップS33のみを実行するCPU16は座標情報付与手段として機能する。
【0087】
ここで、本実施例の遠隔操作装置10は、CPU16に遠隔操作処理を所定時間毎に実行させることで、操作画面200に表示されるクラスタリング地図を所定時間毎に更新する。ただし、遠隔操作装置10は以下の手法などでクラスタリング地図を更新してもよい。
【0088】
たとえば、所定時間を計測する計測カウンタをメモリ18に設け、ステップS21の処理の前に、前回のクラスタリング地図を表示してから所定時間が経過したかを判断する処理を加える。そして、CPU16は、その処理で“YES”と判断されたときに、ステップS21−S35の処理を実行する。
【0089】
この実施例によれば、遠隔操作装置10は、ショッピングモールなどに設けられるLRF12を含み、LRF12と同じ場所に設けられるロボット14を遠隔操作する。ショッピングモールでは、人間Aの位置情報Pn(t)が記録される。また、検出領域Eは、25cm四方の空間グリッド化され、その空間グリッド毎に局所行動のヒストグラムH1−H4が算出される。そして、遠隔操作装置10は、ヒストグラムH1−H4から類似度を算出し、その類似度の近い空間グリッドをクラスタリングすることで、クラスタリング地図を作成してLCD22に表示する。使用者は、表示されたクラスタリング地図に含まれる、任意のエリアを選択することで、そのエリアの属性に基づいて動作命令と座標情報とをロボット14に付与することができる。
【0090】
このように、使用者は、複数の人間の行動が視覚的に示されるクラスタリング地図を参照して、容易にロボットを遠隔操作することができる。
【0091】
また、使用者は、ロボット14が移動する位置やコースを示す座標を詳細に指定しなくても、任意のエリアを選択するだけで、ロボット14が移動する位置やコースを指定できる。
【0092】
なお、本実施例では、空間グリッドを併合するときの類似度の閾値を変更することで、クラスタリング地図に含まれるエリアの数を変更することができる。これにより、使用者は、直感的にエリアを認識しやすくなるように、類似度の閾値を恣意的に設定できる。また、人間の位置を検出するためにLRF12を用いたが、LRF12に代えて超音波距離センサやミリ波レーダなどを用いて、人間の位置を検出してもよい。
【0093】
また、入力装置24は、LCD22の表面を覆うタッチパネルを含んでもよく、使用者が直感的な操作で任意のエリアを選択できるようにしてもよい。
【符号の説明】
【0094】
10 …遠隔操作装置
12a−12f …LRF
14 …ロボット
16 …CPU
18 …メモリ
20 …位置情報DB
22 …LCD
24 …入力装置
26 …通信LANボード
28 …無線通信装置
100 …ネットワーク
【特許請求の範囲】
【請求項1】
複数の人間が任意に行動する場所に設置されたロボットを遠隔操作する遠隔操作装置であって、
前記場所における前記複数の人間それぞれの局所行動を検出する検出手段、
前記検出手段によって検出された所定時間分の局所行動をクラスタリングして複数のエリアを含む地図を作成する地図作成手段、
前記地図を表示する表示手段、および
前記表示された地図において任意のエリアが選択されたとき、前記任意のエリアの属性に基づいて、前記ロボットに動作命令を付与する命令付与手段を備える、遠隔操作装置。
【請求項2】
前記命令付与手段は、前記動作命令として、前記任意のエリアの座標情報を付与する座標情報付与手段を含む、請求項1記載の遠隔操作装置。
【請求項1】
複数の人間が任意に行動する場所に設置されたロボットを遠隔操作する遠隔操作装置であって、
前記場所における前記複数の人間それぞれの局所行動を検出する検出手段、
前記検出手段によって検出された所定時間分の局所行動をクラスタリングして複数のエリアを含む地図を作成する地図作成手段、
前記地図を表示する表示手段、および
前記表示された地図において任意のエリアが選択されたとき、前記任意のエリアの属性に基づいて、前記ロボットに動作命令を付与する命令付与手段を備える、遠隔操作装置。
【請求項2】
前記命令付与手段は、前記動作命令として、前記任意のエリアの座標情報を付与する座標情報付与手段を含む、請求項1記載の遠隔操作装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2010−231359(P2010−231359A)
【公開日】平成22年10月14日(2010.10.14)
【国際特許分類】
【出願番号】特願2009−76450(P2009−76450)
【出願日】平成21年3月26日(2009.3.26)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成20年4月1日付平成20年度科学技術総合研究委託事業「科学技術連携施策群の効果的・効率的な推進 施設内外の人計測と環境情報構造化の研究」、産業技術力強化法第19条の適用を受ける特許出願
【出願人】(393031586)株式会社国際電気通信基礎技術研究所 (905)
【Fターム(参考)】
【公開日】平成22年10月14日(2010.10.14)
【国際特許分類】
【出願日】平成21年3月26日(2009.3.26)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成20年4月1日付平成20年度科学技術総合研究委託事業「科学技術連携施策群の効果的・効率的な推進 施設内外の人計測と環境情報構造化の研究」、産業技術力強化法第19条の適用を受ける特許出願
【出願人】(393031586)株式会社国際電気通信基礎技術研究所 (905)
【Fターム(参考)】
[ Back to top ]