JP7225763B2 - 自律移動装置、自律移動方法及びプログラム - Google Patents

自律移動装置、自律移動方法及びプログラム Download PDF

Info

Publication number
JP7225763B2
JP7225763B2 JP2018235719A JP2018235719A JP7225763B2 JP 7225763 B2 JP7225763 B2 JP 7225763B2 JP 2018235719 A JP2018235719 A JP 2018235719A JP 2018235719 A JP2018235719 A JP 2018235719A JP 7225763 B2 JP7225763 B2 JP 7225763B2
Authority
JP
Japan
Prior art keywords
mobile device
autonomous mobile
index
existence
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018235719A
Other languages
English (en)
Other versions
JP2019160289A (ja
Inventor
敬輔 島田
浩一 中込
崇史 山谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to US16/289,154 priority Critical patent/US20190278294A1/en
Priority to CN201910169913.9A priority patent/CN110238837B/zh
Publication of JP2019160289A publication Critical patent/JP2019160289A/ja
Application granted granted Critical
Publication of JP7225763B2 publication Critical patent/JP7225763B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Description

本発明は、自律移動装置、自律移動方法及びプログラムに関する。
用途に応じて自律的に移動する自律移動装置が普及してきている。例えば、屋内の掃除のために自律的に移動する自律移動装置が知られている。そして、ユーザの呼びかけを認識した場合に、目的地としてのユーザのいる所に移動する機能を持つ自律移動装置も開発されている。例えば特許文献1には、センサーユニットからの信号に基づいてユーザの測位計算を行って、測位計算によって得られたユーザの位置にロボットを誘導するロボット誘導システムが開示されている。
特開2008-46956号公報
特許文献1に記載のロボット誘導システムのような従来技術においては、センサーユニットからの信号に基づいてユーザの測位計算を行うことができる場合には、測位計算で得られたユーザの位置にロボットを誘導することができる。しかし、ユーザの測位計算を行うことができない場合には、ロボットが移動するべき場所(目的地)が不明になってしまうという課題があった。
本発明は、上記課題を解決するためになされたものであり、自律移動装置が移動するべき場所が不明な場合の対応を改善することを目的とする。
上記目的を達成するため、本発明の自律移動装置は、
所定の地図に基づいて移動する自律移動装置であって、
自律移動装置を移動させるように構成された駆動部と、
制御部と、を備え、
前記制御部は、
前記地図の上の複数の地点の各々における物体の存在の可能性を示す指標である存在指標を取得し、
目的地とすべき前記物体が検出されているか否かを判定し、
前記物体が検出されていないと判定した場合、生成された前記複数の地点のうち対応する前記存在指標で示される前記物体の存在の可能性が高いリストから、前記物体の存在の最も高い可能性を示す存在指標に対応する地点を前記目的地として設定し、
前記設定した目的地に前記自律移動装置が移動するように、前記駆動部を制御する。
本発明によれば、自律移動装置が移動するべき場所が不明な場合の対応を改善することができる。
本発明の実施形態1に係る自律移動装置の機能構成を示す図である。 実施形態1に係る自律移動装置の外観の一例を示す図である。 実施形態1に係る環境地図の一例を示す図である。 実施形態1に係る存在指標の一例を示す図である。 実施形態1に係る呼びかけ検出移動処理のフローチャートである。 実施形態1に係る存在指標の更新の処理のフローチャートである。 実施形態1に係る顔の位置推定の処理のフローチャートである。 実施形態1に係る呼びかけ検出移動処理の具体例を説明する際に用いる存在指標を付加した環境地図の一例を示す図である。 本発明の実施形態2に係る呼びかけ検出移動処理のフローチャートである。 本発明の実施形態3に係る自律移動装置の機能構成を示す図である。 実施形態3に係る指標補正情報の一例を示す図である。 本発明の実施形態5に係る自律移動装置の機能構成を示す図である。 実施形態5に係る農作物刈り取り処理のフローチャートである。 本発明の実施形態6に係る自律移動装置の機能構成を示す図である。 実施形態6に係る農薬散布処理のフローチャートである。
以下、本発明の実施形態に係る自律移動装置について、図表を参照して説明する。なお、図中同一又は相当部分には同一符号を付す。
(実施形態1)
本発明の実施形態1に係る自律移動装置は、周囲の地図を作成しながら、用途に応じて自律的に移動する装置である。この用途とは、例えば、警備監視用、屋内掃除用、ペット用、玩具用等である。そして、この自律移動装置は、ユーザの呼びかけを認識すると、ユーザの存在している所に移動する機能を持っている。
図1に示すように、本発明の実施形態1に係る自律移動装置100は、機能構成として、制御部10、記憶部20、センサ部30、撮像部41、駆動部42、音声取得部43、音声出力部44、通信部45、を備える。
また、自律移動装置100は、図2に示すように、かわいらしい動物のような形状をしている。そして、自律移動装置100は、目の位置に障害物センサ31を、鼻の位置にカメラ131を、頭部に複数のマイクロホンからなるマイクロホンアレイ132を、口の位置にスピーカ133を、耳の位置に人感センサ32を、前足の位置に自在に向きの変わるキャスター134を、後ろ足の位置に独立2輪駆動の車輪135を、それぞれ備える。
制御部10は、CPU(Central Processing Unit)等で構成され、記憶部20に記憶されたプログラムを実行することにより、後述する各部(SLAM処理部11、環境地図作成部12、音源定位部13、位置取得部14、存在指標更新部15、移動制御部16)の機能を実現する。また、制御部10は、時計(図示せず)を備え、現在時刻の取得や経過時間のカウントをすることができる。
記憶部20は、ROM(Read Only Memory)、RAM(Random Access Memory)等で構成され、機能的に、画像記憶部21、SLAM(Simultaneous Localization and Mapping)地図記憶部22、環境地図記憶部23及び存在指標記憶部24を含む。ROMには制御部10のCPUが実行するプログラム及びプログラムを実行する上で予め必要なデータが記憶されている。RAMには、プログラム実行中に作成されたり変更されたりするデータが記憶される。
画像記憶部21には、撮像部41により撮影された画像(フレーム)が記憶される。ただし、記憶容量を節約するために、撮影された全ての画像を記憶しなくてもよい。自律移動装置100は、画像記憶部21に記憶された複数の画像を用いて、SLAM処理により、SLAM処理用のデータ(後述するMap点のデータ)の生成及び自機位置の推定を行う。自機位置の推定に用いる画像はキーフレームと呼ばれ、画像記憶部21には、キーフレームの画像の情報と共に、そのキーフレームを撮影した時の自機位置(自機の位置及び向き)の情報等も記憶される。
SLAM地図記憶部22には、画像記憶部21に記憶されたキーフレームに含まれている特徴点のうち、3次元位置(X,Y,Z)が求められた特徴点(Map点と言う)の情報が記憶される。特徴点とは画像中の、エッジ部分やコーナー部分等、画像内の特徴的な部分の点のことを言う。特徴点は、SIFT(Scale-Invariant Feature Transform)やSURF(Speeded Up Robust Features)等のアルゴリズムを用いて取得することができる。SLAM地図記憶部22には、特徴点の情報として、その3次元位置と、その特徴点の特徴量(例えばSIFT等で得た特徴量)と、が紐付けられて記憶される。
環境地図記憶部23には、センサ部30からの情報に基づいて環境地図作成部12が作成した環境地図が記憶される。環境地図は、図3に示すように、床面を例えば5cm×5cmのグリッドに分割し、グリッド単位でそのグリッドに対応する環境(床面、障害物等)の状態を記録したものである。環境の状態としては、例えば、障害物がなく自由に通過できる自由空間303、通過できない障害物302、状態が不明な不明空間304等がある。また、環境地図には、充電器301の位置も記録されている。
存在指標記憶部24には、位置取得部14からの情報に基づいて取得した、環境地図の上の複数の地点の各々における人の存在の可能性を示す指標(存在指標)が記憶される。存在指標は、図4に示すように、床面を例えば5cm×5cmのグリッドに分割し、グリッド単位でそのグリッドの位置に人が存在する確率(可能性)を記録したものである。なお、図4では存在指標として人がそのグリッドの位置に存在する確率を記録したものを示しているが、存在指標として、そのグリッドの位置で人を検出した回数を記録してもよい。また図4では、確率を小数で示しているが、対数オッズで確率を表すことにより、確率を整数で表すようにしてもよい。
また、図4では、人(ユーザ)を区別せずに、また、時間帯を指定せずに、そのグリッドに誰かが存在する確率を示している。しかし、位置取得部14は後述するようにユーザ識別することが可能なので、ユーザ毎に(個人別に)存在指標を記録してもよい。また、制御部10が備える時計により、位置取得部14が人の位置を取得した時刻を取得することにより、時間帯毎の存在指標を記録してもよい。もちろん、ユーザ毎及び時間帯毎に存在指標を記録してもよい。
センサ部30は、障害物センサ31と、人感センサ32と、を備える。障害物センサ31は、周囲に存在する物体(障害物)を検出し、該物体(障害物)までの距離を測定することができる距離センサであって、例えば、赤外線距離センサ、超音波センサである。なお、独立した障害物センサ31を搭載せずに、撮像部41を用いて障害物を検出するようにしても良い。この場合、撮像部41が障害物センサ31を兼ねることになる。また、障害物センサ31として、距離センサではなく、他の物体に衝突したことを検知するバンパーセンサを備えても良い。この場合、自律移動装置100は、バンパーセンサにより衝突を検知した位置に障害物が存在することを検出できる。
人感センサ32は、人が自律移動装置100の近くに存在することを検出することができるセンサである。人感センサ32は、例えば赤外線人感センサである。
撮像部41は、単眼の撮像装置(カメラ131)を備える。撮像部41は、例えば、30fps(frames per second)で画像(フレーム)を撮影して取得する。自律移動装置100は、撮像部41が逐次取得した画像に基づいて、SLAM処理により、自機位置と周囲環境とをリアルタイムに認識しながら、自律移動を行う。
駆動部42は、独立2輪駆動の車輪135とモータとを備え、制御部10からの指示(制御)により自律移動装置100を移動させるように構成されている。自律移動装置100は、2つの車輪135の同一方向駆動により前後の平行移動(並進移動)を、2つの車輪135の逆方向駆動によりその場での回転(向き変更)を、2つの車輪135のそれぞれ速度を変えた駆動により旋回移動(並進+回転(向き変更)移動)を、行うことができる。また、各々の車輪135にはロータリエンコーダが備えられており、ロータリエンコーダで車輪135の回転数を計測し、車輪135の直径、車輪135間の距離等の幾何学的関係を利用することによって並進移動量及び回転量を計算できる。
例えば、車輪135の直径をD、回転数をCとすると、その車輪135の接地部分での並進移動量はπ・D・Cとなる。ここで、回転数Cは、車輪135に備えられたロータリエンコーダにより測定可能である。また、車輪135の直径をD、左右の車輪135間の距離をI、右の車輪135の回転数をC、左の車輪135の回転数をCとすると、向き変更の回転量は(右回転を正とすると)360°×D×(C-C)/(2×I)となる。この並進移動量及び回転量をそれぞれ逐次足し合わせていくことで、駆動部42は、メカオドメトリとして機能し、自機位置(移動開始時の位置及び向きを基準とした位置及び向き)を計測することができる。車輪135に備えられたロータリエンコーダは、距離計測部として機能する。
なお、駆動部42は、車輪135の代わりにクローラを備えるようにしても良いし、複数(例えば二本)の足を備えて足で歩行することによって移動を行うようにしても良い。これらの場合も、二つのクローラの動き、足の動き等に基づいて、車輪135の場合と同様に自機の位置及び向きの計測が可能である。
音声取得部43は、複数のマイクロホンからなるマイクロホンアレイ132を備え、周囲の音声を取得する。自律移動装置100は、音声取得部43のマイクロホンアレイ132で取得した音声データを用いて、MUSIC(MUltiple SIgnal Classification)法を適用することによって、音声を発した人の位置を推定することができる。
音声出力部44は、スピーカ133を備え、音声を出力する。自律移動装置100は、音声出力部44により、ユーザに話しかけることができる。そして、自律移動装置100は、ユーザの発話した音声を音声取得部43で取得して、制御部10が音声認識し、返答内容を音声出力部44から音声出力することにより、ユーザと対話することができる。
通信部45は、外部装置と通信するためのモジュールであり、外部装置と無線通信する場合にはアンテナを含む無線モジュールである。例えば、通信部45は、Bluetooth(登録商標)に基づく近距離無線通信を行うための無線モジュールである。通信部45を用いることにより、自律移動装置100は、外部とデータの受け渡し等を行うことができる。例えば、自律移動装置100は、外部のサーバ(図示せず)と通信部45で通信することによって、制御部10の機能の一部を外部のサーバで実行させることができる。また、記憶部20に記憶するデータの一部を外部のサーバに記憶させたり、外部のサーバから取得したりすることができる。
次に、自律移動装置100の制御部10の機能的構成について説明する。制御部10は、SLAM処理部11、環境地図作成部12、音源定位部13、位置取得部14、存在指標更新部15、移動制御部16、の機能を実現し、自律移動装置100の移動制御等を行う。また、制御部10は、マルチスレッド機能に対応しており、複数のスレッド(異なる処理の流れ)を並行して実行することができる。
SLAM処理部11は、撮像部41が撮影し画像記憶部21に記憶された画像を複数用いて、それらの画像から得られる特徴点の情報に基づき、SLAM処理により自機の姿勢(位置及び向き)を推定する。より簡単に説明すると、SLAM処理部11は、画像記憶部21に記憶されている複数のキーフレーム間で、同一の特徴点の対応を取得し、取得した対応特徴点の3次元位置をSLAM地図記憶部22から取得することによって、自機位置の推定を行う。このSLAM処理を行う際には、画像に含まれる特徴点を抽出し、3次元位置を計算できた特徴点(Map点)について、SLAM地図記憶部22に該Map点の情報を記憶させる。なお、自律移動装置100の姿勢(位置及び向き)の推定には、駆動部42から取得できるメカオドメトリの情報を用いてもよい。自律移動装置100は、自機の位置及び向きの推定にメカオドメトリの情報を用いる場合は、SLAM処理を行わなくてもよい。
環境地図作成部12は、SLAM処理部11が推定した自機の位置及び向きの情報と、障害物センサ31からの情報と、を用いて障害物302の位置を記録した環境地図を作成し、作成した環境地図の情報を環境地図記憶部23に書き込む。
音源定位部13は、音声取得部43が備えるマイクロホンアレイ132により、ユーザが発した音声を観測し、MUSIC法により、その音声の発生源の位置を計算する。なお、マイクロホンアレイ132は、人が発した音声以外の音も観測できるが、音源定位部13は、マイクロホンアレイ132が観測した音の周波数成分等を用いて、人の声か否かを判定する。そして、音源定位部13は、人の声(音声)について、MUSIC法を適用することにより、その音声がどこから発せられたか(音声の聞こえてくる方向及び音源までの距離)を算出する。また、音源定位部13は、観測した音声の周波数成分等を用いてユーザ識別を行い、その音声が誰の音声かを識別して、誰がどの位置から音声を発したかを取得することもできる。
位置取得部14は、撮像部41によって取得した画像の中から人の顔を検出することにより、その人がいる位置を取得する。位置取得部14は、画像中の顔の大きさに基づき、その人のいる位置までの距離を推定し、撮像部41の撮影方向と画像中の人の顔の位置とから、その人のいる方向を推定する。位置取得部14は、これらの推定結果からその人がいる位置を取得する。また、位置取得部14は、検出した顔をユーザ識別することにより、誰がどの位置にいるかを取得することもできる。なお、ユーザ識別が不要な場合には、位置取得部14は、人感センサ32を用いて人の位置を取得してもよい。
存在指標更新部15は、位置取得部14が取得した人の位置の情報を用いて、環境地図記憶部23に記憶されている環境地図の複数の地点の各々における人の存在確率を取得し、取得した存在確率を用いて、存在指標記憶部24に記憶されている存在指標を更新する。
移動制御部16は、後述する上位アプリケーションプログラムから目的地の指示を受けて、経路及び移動速度を設定し、設定した経路に沿って、自機を移動させるように駆動部42を制御する。移動制御部16が経路を設定する際には、環境地図作成部12が作成した環境地図に基づき、自機の現在位置から目的地までの経路を設定する。
以上、自律移動装置100の機能構成について説明した。次に、自律移動装置100の呼びかけ検出移動処理について、図5を参照して説明する。自律移動装置100は、電源オフ時は充電器301(充電ステーション)に接続して充電されており、電源が投入されると、充電器301に接続された位置で、呼びかけ検出移動処理が開始される。なお、自律移動装置100は電源が投入されると、この「呼びかけ検出移動」の処理以外に、用途に応じた上位アプリケーションプログラムが別途(別スレッドで)起動し、上位アプリケーション又はユーザが目的地を設定する。例えば、用途が屋内掃除用であるなら、上位アプリケーションプログラムは、屋内をくまなく巡りながら掃除をするために、移動場所を逐次目的地に設定していく。上位アプリケーションプログラムの詳細については割愛する。
「呼びかけ検出移動」の処理が開始されると、自律移動装置100の制御部10は、記憶部20に記憶されている各種データ(画像記憶部21、SLAM地図記憶部22、環境地図記憶部23、存在指標記憶部24)を初期化する(ステップS101)。環境地図の初期化については、自律移動装置100は起動すると充電器301の位置から移動を開始するので、この時点では、環境地図は「自機が充電器の位置に存在する」ということを示す情報で初期化される。また、存在指標については、予め過去に収集しておいた情報で初期化してもよい。
次に、制御部10は、SLAM処理のための各種スレッドを起動する(ステップS102)。具体的には、自機位置推定スレッド、地図作成スレッド、ループクロージングスレッドを起動する。これらのスレッドが並行して動作することにより、SLAM処理部11は、撮像部41が撮影した画像から特徴点を抽出して、自機位置の推定を行う。SLAM処理のための各スレッドの説明は割愛する。
次に、制御部10は、動作終了(例えば、上位アプリケーションプログラム又はユーザから動作終了指示を受けた)か否かを判定する(ステップS103)。動作終了(動作終了指示を受けた)なら(ステップS103;Yes)、「呼びかけ検出移動」の処理を終了する。動作終了でない(動作終了指示を受けていない)なら(ステップS103;No)、環境地図作成部12は、環境地図の作成と更新を行い、存在指標更新部15は存在指標の更新を行う(ステップS104)。存在指標の更新の処理については、後述する。
次に、移動制御部16は、上位アプリケーションプログラムから目的地の指示を受け、自機を移動させる(ステップS105)。次に、音源定位部13は、音声取得部43で音声が検出できたか否かを判定する(ステップS106)。音声が検出できなければ(ステップS106;No)、ステップS103に戻る。音声が検出できたら(ステップS106;Yes)、音源定位部13は、その音声が発せられた位置を算出する(ステップS107)。
そして、制御部10は、その音声が発せられた方向に、撮像部41を向ける(ステップS108)。この処理では、自律移動装置100の頭部のみを動かして撮像部41を音声の方向に向けてもよいし、駆動部42を駆動して自律移動装置100自体を音声の方向に向けることによって、撮像部41を音声の方向に向けてもよい。
そして、位置取得部14は、撮像部41で撮影した画像から顔が検出されるか否かを判定する(ステップS109)。顔が検出されなければ(ステップS109;No)、ステップS115に進む。顔が検出されたら(ステップS109;Yes)、顔の位置を推定し、存在指標を更新する(ステップS110)。顔の位置の推定方法については、後述する。
そして、位置取得部14は、その顔の人がこちら(自律移動装置100)を見ている(注目している)か否かを判定する(ステップS111)。こちらを見ていなければ(ステップS111;No)、ステップS115に進む。
位置取得部14が検出した顔の人がこちらを見ているなら(ステップS111;Yes)、移動制御部16は、その人の位置まで自律移動装置100を移動させる(ステップS112)。そして、位置取得部14は、検出した顔の人までの距離が音声認識可能距離(例えば1.5m)以下か否かを判定する(ステップS113)。検出した顔の人までの距離が音声認識可能距離以下でなければ(ステップS113;No)、ステップS109に戻る。
検出した顔の人までの距離が音声認識可能距離以下なら(ステップS113;Yes)、制御部10は、音声取得部43と音声出力部44とを用いて、その人と対話を行う(ステップS114)。そして、ステップS103に戻る。
一方、ステップS109で顔が検出されない場合(ステップS109;No)及びステップS111で検出した顔の人がこちらを見ていない場合(ステップS111;No)は、制御部10は、存在指標記憶部24に記憶されている情報に基づき、「人のいそうな位置のリスト」を作成する(ステップS115)。例えば、図4に示す存在指標(人のいる確率)が存在指標記憶部24に記憶されていて、「人のいそうな位置」の存在指標基準値を0.65とすると、図4で存在指標が0.65より大きい2カ所が「人のいそうな位置のリスト」に登録される。制御部10は、このリストに登録されている順番に「人のいそうな位置」(=目的地用の地点)を選択することになるので、このリストを、(a)確率の高い順、(b)自機位置から見た音声方向からのずれの角度の小さい順、(c)自機位置からの距離が小さい順、等に基づいてソートしてもよい。
また、「人のいそうな位置のリスト」を作成する際には、必ずしも存在指標基準値を用いる必要はない。例えば、存在指標記憶部24に記憶されている存在指標が最も高い位置を「人のいそうな位置のリスト」に登録してもよいし、存在指標記憶部24に記憶されている存在指標を高い順に所定の数(例えば3個)取り出して、その存在指標に対応する位置を「人のいそうな位置のリスト」に登録してもよい。
そして、制御部10は、人のいそうな位置のリストが空か否かを判定する(ステップS116)。このリストが空なら(ステップS116;Yes)、ステップS103に戻る。このリストが空でないなら(ステップS116;No)、リストから「人のいそうな位置」を1つ取り出す(ステップS117)。そして、「人のいそうな位置が見える所」へ移動する(ステップS118)。「人のいそうな位置が見える所」とは、(A)「人のいそうな位置」との間に障害物がない、(B)「人のいそうな位置」に人がいた場合に顔の検出が可能な距離、という2つの条件を満たす場所である。
ここで、(A)の条件は環境地図記憶部23に記憶されている障害物302の位置の情報に基づき判定可能である。また(B)の条件は、環境地図のグリッドサイズ、最小顔検出サイズ、標準的な顔サイズ及び撮像部41の画角から判定可能である。この2つの条件を満たす場所が複数存在する場合には、自律移動装置100の現在位置からの距離の近い所又は音声方向からのずれの角度が小さい所を選択する。
移動後に、制御部10は、「人のいそうな位置」を撮像部41で撮影し、撮影した画像から顔が検出されるか否かを判定する(ステップS119)。顔が検出されたら(ステップS119;Yes)、ステップS110に進む。顔が検出されなければ(ステップS119;No)、所定時間(例えば3秒)が経過したか否かを判定する(ステップS120)。所定時間が経過していなければ(ステップS120;No)、ステップS119に戻る。所定時間が経過しているなら(ステップS120;Yes)、ステップS116に戻って、「人のいそうな位置のリスト」が空になるまで「人のいそうな位置が見える所」までの移動と顔の検出を繰り返す。
以上が呼びかけ検出移動の処理の流れである。次に、上述のステップS104で行われる存在指標の更新の処理について、図6を参照して説明する。
まず、SLAM処理部11は、自律移動装置100の現在の位置と方向をSLAM処理により取得する(ステップS201)。なお、後述する顔の位置推定の処理のステップS301において、これらを既に取得済みの場合は、それをそのまま用いてもよい。次に、位置取得部14は、自律移動装置100の周囲に人がいることが検出されるか否かを判定する(ステップS202)。人が検出されなければ(ステップS202;No)、処理を終了する。
自律移動装置100の周囲に人がいることが検出されたら(ステップS202;Yes)、位置取得部14は、検出された人までの距離及びその人の方向を取得する(ステップS203)。これらの値も、後述する顔の位置推定の処理のステップS303において、顔までの距離及び顔の方向を推定済みの場合は、それらをそのまま用いてもよい。そして、存在指標更新部15は、ステップS201で取得した自律移動装置100の現在の位置及び方向と、ステップS203で取得した検出された人までの距離及びその人の方向と、に基づき、環境地図上のその人の位置に投票し(ステップS204)、処理を終了する。
ここで、投票とは、存在指標記憶部24に記憶されている存在指標を更新する操作の一種であり、例えば、その人の位置に対応する存在指標(確率)の値を所定の値(例えば0.1)だけ増加させる。存在指標(確率)を対数オッズで表している場合は、例えば1増加させる。
また、検出された人を観察し続けて、その位置に留まっている時間を計測し、その時間(滞留時間)が多いほど存在指標を増加させる値を大きくしてもよい(対数オッズを採用している場合、例えばその人がm分間滞留した場合は、m増加させる等)。また、存在指標を増加させる値を、その人を検出した際の尤度に基づいて決定してもよい(例えば、尤度がLの場合は、L増加させる等)。
なお、位置取得部14が、顔認識等によりユーザ識別を行う場合には、ユーザ毎の存在指標と、ユーザによらない(全ての人を対象とする)存在指標と、をそれぞれ更新するようにする。
以上、存在指標の更新の処理について説明した。次に、顔の位置推定の処理について、図7を参照して説明する。
まず、SLAM処理部11は、自律移動装置100の現在の位置と方向をSLAM処理により取得する(ステップS301)。次に、位置取得部14は、呼びかけ検出移動処理(図5)のステップS109で検出した顔の画像中での座標及びサイズを取得する(ステップS302)。ここでは、顔の中心部の画像中での座標を(f_x,f_y)、サイズを横幅f_width、高さf_heightとして取得したとする。
次に、位置取得部14は、顔までの距離と方向を推定する(ステップS303)。それぞれの推定方法について以下に補足説明する。
まず、顔までの距離f_distについては、平均サイズの顔を1メートルの距離から撮影した時の横幅をF_WIDTH_1Mで表したとすると、以下の式(1)で表すことができる。
f_dist=F_WIDTH_1M/f_width …(1)
また、顔の方向については、カメラ131との角度をf_dir、カメラ131の画角をAOV、カメラ131の撮影画像の水平方向のサイズをWIDTHで表したとすると、以下の式(2)で表すことができる。
f_dir=AOV/2×|f_x-WIDTH/2|/(WIDTH/2) …(2)
そして、位置取得部14は、ステップS301で取得した自律移動装置100の現在の位置及び方向と、ステップS303で推定した検出された顔までの距離及びその顔の方向と、に基づき、顔の位置を算出し(ステップS304)、処理を終了する。
以上、顔の位置推定の処理について説明した。ここで、呼びかけ検出移動処理(図5)の簡単な具体例について、図8を参照して説明する。まず、自律移動装置100が、図8の100Aの位置にいた状態で、ユーザ200が呼びかけたとする。そして、自律移動装置100は(ステップS106及びステップS107で)図8において右下45度の方向から音声を検出したとする。すると、自律移動装置100は(ステップS108で)音声の方向を見ても、障害物302Aに遮られて(ステップS109で)ユーザ200の顔を検出することができない。したがって、制御部10は、ステップS115で、「人のいそうな位置のリスト」を作成する。ここでは、「人のいそうな位置のリスト」には、存在指標が0.7となっている2つの位置が登録されたとする。
そして、制御部10は、「人のいそうな位置のリスト」を、まず、確率の高い順にソートし、次に、自機位置から見た音声方向からのずれの角度の小さい順にソートしたとする。この場合、リストに登録された2つの位置の確率は0.7で同じだが、音声方向からのずれの角度は図8において下の方にある0.7の方が小さいので、ユーザ200がいる0.7の方が(ステップS117で)「人のいそうな位置」として最初に取り出されることになる。
そして、ステップS118で、この「人のいそうな位置」が見える所に移動するが、ここでは、「人のいそうな位置が見える所」として、100Bと100Cの2つの候補が存在する。現在位置である100Aから距離が近い所は100Bだが、音声方向(右下45度)からのずれの角度が小さい所は100Cなので、距離を重視する場合は100Bが、角度を重視する場合は100Cが、「人のいそうな位置が見える所」として選定され、自律移動装置100はそこへ移動する。そして、ステップS119で顔を検出し、(ステップS112で)顔の位置まで移動し、(ステップS114で)ユーザと対話することになる。
このような処理を行うことによって、自律移動装置100は、呼びかけた人の音声の方向に、人の顔を見つけることができない場合でも、存在指標に基づいて、人のいそうな位置に移動することができる。その結果、呼びかけた人の位置に移動できる可能性が高まる。
また、存在指標をユーザ毎に記憶し、呼びかけた人の音声からユーザを識別するようにしておけば、「人のいそうな位置のリスト」を作成する際に、識別したユーザの存在指標を用いてこのリストを作成でき、そのユーザのいる位置に移動できる可能性を高めることができる。
また、存在指標を時間帯毎に記憶するようにしておけば、「人のいそうな位置のリスト」を作成する際に、現在時刻の時間帯に対応する存在指標を用いてこのリストを作成でき、人のいる位置に移動できる可能性を高めることができる。
さらに、存在指標をユーザ毎及び時間帯毎に記憶し、呼びかけた人の音声からユーザを識別するようにしておけば、「人のいそうな位置のリスト」を作成する際に、識別したユーザの現在時刻の時間帯に対応する存在指標を用いてこのリストを作成でき、そのユーザのいる位置に移動できる可能性をさらに高めることができる。
(変形例1)
実施形態1では、「人のいそうな位置のリスト」を作成する際に、存在指標記憶部24に記憶されている存在指標が存在指標基準値(例えば0.65)より大きい位置を「人のいそうな位置」としていた。しかし、自律移動装置100の位置から物陰となって死角となる領域は、人の存在を確認しづらいため、存在指標の値が上がりにくい。そこで、「人のいそうな位置のリスト」を作成する際に、存在指標に加えて、又は、存在指標の代わりに、死角領域を用いる変形例1について説明する。
変形例1では、「呼びかけ検出移動」処理(図5)のステップS115で、制御部10が「人のいそうな位置リスト」を作成する際に、環境地図上の障害物302の位置と自律移動装置100の位置との関係から、自律移動装置100の撮像部41の撮影領域から外れている領域(自律移動装置100から見て死角となる領域である死角領域)を算出し、その領域(死角領域)内の地点を「人のいそうな位置」として、「人のいそうな位置リスト」に追加する。なお、制御部10は、「人のいそうな位置リスト」に、実施形態1と同様に、存在指標が存在指標基準値より大きい位置についても「人のいそうな位置」として、「人のいそうな位置リスト」に追加してもよい。
変形例1が、実施形態1と異なる点は、上述した点のみである。「人のいそうな位置リスト」に、死角領域内の地点が追加されることにより、ステップS117でリストから取り出した位置が死角領域内の地点だった場合、ステップS118では、その死角領域が見える所に移動することになる。そのため、もし死角領域に人がいても、制御部10は、ステップS119で顔を検出することができるようになる。
以上説明したように、変形例1では、自律移動装置100は、元々は人の存在を確認できなかった死角領域が見える場所に移動することができるので、人が死角領域にいた場合でも、人のいる位置に移動できる可能性を高めることができる。
(実施形態2)
実施形態1では、人を探しに行く前に移動した結果に基づいて存在指標を更新しているが、人を探しに行った結果に基づいて存在指標を更新してもよい。このような実施形態2について説明する。
実施形態2に係る自律移動装置101の機能構成は、図1に示した実施形態1に係る自律移動装置100の機能構成と同じである。自律移動装置101は、「呼びかけ検出移動」の処理における存在指標の更新の仕方が自律移動装置100と異なる。実施形態2に係る自律移動装置101の「呼びかけ検出移動」の処理について、図9を参照して説明する。
自律移動装置101の「呼びかけ検出移動」の処理(図9)は、実施形態1に係る自律移動装置100の「呼びかけ検出移動」の処理(図5)に、ステップS131を追加した処理内容になっているので、このステップS131について説明する。
ステップS131では、存在指標更新部15は、ステップS112で接近したユーザのいる位置及び対話結果に基づいて、存在指標記憶部24に記憶されている存在指標を更新する。ステップS131での存在指標更新とステップS110での存在指標更新の違いであるが、ステップS110での存在指標の更新では、対話の有無に関わらず、今回顔を検出したユーザの位置に対応する存在指標の確率の値を単純に大きくした(例えば0.1加算した)。
これに対し、ステップS131での存在指標更新では、存在指標の確率に加算する値を、対話結果に基づいて、以下のように変更する(以下の全てを採用してもよいし、一部のみを採用してもよい)。
(a)接近したユーザと対話した場合には、加算する値を大きくする(例えば0.2加算する)。
(b)対話内容が「呼んでないよ」、「来なくても良かったのに」等、否定的な内容だった場合には、加算する値を小さくする(例えば0.01加算する)。
(c)対話時間を加味して、対話時間が長いほど、加算する値を大きくする(例えば対話時間がn分の場合は、n/10加算する)。
実施形態2では、以上のように、対話結果に基づいて存在指標を更新する値をきめ細かく変更することによって、単に人のいる位置に移動できる可能性を高めるだけでなく、自律移動装置101と対話したいと思っている人の位置に移動できる可能性を高めることができる。
(実施形態3)
実施形態1では、存在指標記憶部24には、図4に示すように、グリッド単位で人がいる確率が記憶されている。しかし、ユーザの行動特性等を考慮した存在指標としてもよい。このような実施形態3について説明する。
実施形態3に係る自律移動装置102の機能構成は、図10に示すように、実施形態1に係る自律移動装置100の機能構成に、指標補正情報記憶部25が追加されたものになっている。指標補正情報記憶部25には、図11に示すような、人物、時間、季節、ノイズ種類等によって人の存在の可能性がどのような傾向を示すのかを表す指標補正情報が記憶されている。そして、自律移動装置102の存在指標は、存在指標の更新の処理(図6)で更新された存在指標を図11に示す指標補正情報によって補正したものになる。
図11に示す情報において、人物の特定、物体の特定、ノイズの特定等は、任意の方法で行うことができる。例えば、音声情報を用いて声認識により個人を特定することができる。また画像情報から、顔認識、人体認識等により個人を特定することもできる。また、画像情報からパソコン、ソファー等の物体や、キッチン、玄関等の場所を特定することができる。また、音情報から、テレビの音、流しの音等、ノイズを特定することができる。
実施形態3においては、このように、指標補正情報を用いて存在指標を補正することによって、ユーザの位置に移動できる可能性をさらに高めることができる。
(実施形態4)
上述の実施形態では、ユーザの呼びかけに応じて、ユーザに接近する自律移動装置100,101,102を説明したが、実施形態4として、ユーザに呼びかけられなくても、ユーザに接近する自律移動装置も考えられる。例えば、毎朝7時にユーザを起こすためにユーザの位置に移動する自律移動装置も考えられる。実施形態4に係る自律移動装置は、音声を検出しなくても接近の条件(例えば朝7時になった)を満たしたら、呼びかけ検出移動処理(図5)のステップS115に進み、人のいそうな位置に移動する。
この場合、ユーザは(寝ているので)自律移動装置の方を見ないことも多いと考えられるため、実施形態4に係る呼びかけ検出移動処理では、ステップS111の判定をスキップして、ステップS110の次にステップS112に進むようにする。また、この場合、ユーザの音声を認識する必要はなく、ユーザとの距離が離れていてもユーザを起こす必要があるため、ステップS113の判定もスキップし、ステップS114でユーザを起こす発話を行う。
以上説明したように、実施形態4に係る自律移動装置は、ユーザに呼びかけられなくても(ユーザの現在の位置が分からなくても)、存在指標に基づいてユーザの位置に移動して、ユーザと対話(ユーザに発話)することができる。
また、実施形態4の変形例として、人の検出や存在指標の更新処理を行わずに、予め存在指標記憶部24に記憶されている存在指標に基づいて移動する自律移動装置も考えられる。この場合、環境地図上の複数の地点の中から、存在指標記憶部24に記憶されている存在指標に基づいて、人のいそうな位置を目的地に設定して移動することになる。なお、存在指標記憶部24に予め記憶させておく存在指標は、過去の統計情報等に基づいて作成されたものであってもよいし、外部のサーバから通信部45を介して取得されたものであってもよい。
(実施形態5)
また、上述の実施形態では、位置取得部14が、撮像部41によって取得した画像の中から人の顔を検出することにより、その人がいる位置を取得した。しかし、位置取得部14は、人だけでなく、撮像部41によって取得した画像の中から他のロボット、物質(空き缶等のアルミニウムや鉄、容器やストロー等のプラスティック、有害物質等)、動物(害虫、害獣、食用とする鳥獣等)、植物(雑草、農作物等)等の物体を認識することにより、その物体が存在する位置を取得してもよい。そして、存在指標更新部15は、位置取得部14が取得したロボット、物質、動物、植物等の物体の位置の情報を用いて、環境地図記憶部23に記憶されている環境地図の上の複数の地点の各々における該物体の存在の可能性を示す存在指標(存在確率)を取得し、取得した存在指標を用いて、存在指標記憶部24に記憶されている存在指標を更新することができる。この存在指標も人の存在指標と同様に、物体や個人を区別せずに求めてもよいし、物体や個人をそれぞれ識別して、物体毎、個人毎に求めてもよい。
このような自律移動装置は、「人のいそうな位置のリスト」と同様にして「ロボット、物質、動物、植物等の物体の存在しそうな位置のリスト」を作成することができ、このリストに基づいて移動することにより、人だけでなく、他のロボット、物質、動物、植物等の物体のいる位置に移動できる可能性を高めることができる。
ここでは、実施形態5として、農作物刈り取りロボットとしての自律移動装置103について説明する。実施形態5に係る自律移動装置103の機能構成は図12に示すように、農作物刈り取り部46を備えることを除くと自律移動装置100の機能構成(図1)と同様である。ただし、自律移動装置103は、人の呼びかけに応じたり、人に近づいたりしなくてもよいなら、音声取得部43及び音源定位部13並びに人感センサ32を備えなくてもよい。
農作物刈り取り部46は、制御部10からの指示に基づき、農作物を刈り取る。また、位置取得部14は、人の位置ではなく、撮像部41によって取得した画像の中から、農作物を検出することにより、農作物が存在する位置を取得する。また、位置取得部14は、農作物の種類を画像識別することにより、農作物の種類毎にその位置を取得してもよい。
また、自律移動装置103は、呼びかけ検出移動処理(図5)の代わりに、図13に示すような農作物刈り取り処理を行う。自律移動装置103の電源が投入されると、この農作物刈り取り処理が開始される。なお、自律移動装置103は電源が投入されると、この農作物刈り取り処理以外に、用途に応じた上位アプリケーションプログラムが別途(別スレッドで)起動し、上位アプリケーション又はユーザが目的地を設定する。例えば、用途が畑全体からの農作物の刈り取りであるなら、上位アプリケーションプログラムは、畑全体をくまなく巡りながら農作物を刈り取るために、移動場所を畑内の各地点に逐次設定していく。上位アプリケーションプログラムの詳細については割愛する。では、図13を参照して、農作物刈り取り処理について説明する。
農作物刈り取り処理(図13)のステップS101からステップS105までの処理は、呼びかけ検出処理(図5)と同じであるため、説明を省略する。ステップS105の次に、位置取得部14は、撮像部41で撮影した画像から農作物が検出されるか否かを判定する(ステップS151)。農作物が検出されなければ(ステップS151;No)、ステップS155に進む。
農作物が検出されたら(ステップS151;Yes)、農作物の位置を推定し、存在指標を更新する(ステップS152)。農作物の位置の推定は、上述した実施形態1に係る顔の位置推定の処理(図7)と同様の方法で行うことができる。実施形態1に係る顔の位置推定の処理(図7)では、顔を対象として位置の推定を行っているが、ステップS152における農作物の位置の推定では、顔の代わりに農作物を対象として、画像中の農作物の座標及びサイズを取得し(ステップS302)、農作物までの距離と方向を推定し(ステップS303)、自機の位置及び方向並びに農作物までの距離及び方向に基づき農作物の位置を算出する(ステップS304)ことにより、農作物の位置を推定する。
また、存在指標の更新も、上述した実施形態1に係る存在指標の更新の処理(図6)と同様の方法で行うことができる。実施形態1に係る存在指標の更新の処理(図6)では、人を対象として、人の存在指標を更新しているが、ステップS152における存在指標の更新では、人の代わりに農作物を対象として、農作物を検出し(ステップS202)、農作物までの距離と方向を取得し(ステップS203)、自機の位置及び方向並びに農作物までの距離及び方向に基づき環境地図上の農作物の位置に投票する(ステップS204)ことにより、農作物の存在指標を更新する。
そして、移動制御部16は、位置取得部14が推定した農作物の位置まで、自律移動装置103を移動させる(ステップS153)。そして、制御部10は農作物刈り取り部46を制御して、農作物を刈り取る動作を行わせ(ステップS154)、ステップS103に戻る。
一方、ステップS151で農作物が検出されないなら(ステップS151;No)、制御部10は、存在指標記憶部24に記憶されている情報に基づき、「農作物の存在しそうな位置のリスト」を作成する(ステップS155)。例えば、図4に示す存在指標(農作物の存在する確率)が存在指標記憶部24に記憶されていて、「農作物の存在しそうな位置」の存在指標基準値を0.65とすると、図4で存在指標が0.65より大きい2カ所が「農作物の存在しそうな位置のリスト」に登録される。制御部10は、このリストに登録されている順番に「農作物の存在しそうな位置」(=目的地用の地点)を選択することになるので、このリストを、(a)確率の高い順、(b)自機位置からの距離が小さい順、等に基づいてソートしてもよい。なお、上述の実施形態1と同様、「農作物の存在しそうな位置のリスト」を作成する際には、必ずしも存在指標基準値を用いる必要はなく、例えば、存在指標記憶部24に記憶されている存在指標を高い順に所定の数(例えば3個)取り出して、その存在指標に対応する位置を「農作物の存在しそうな位置のリスト」に登録してもよい。
また、図4では、床面を例えば5cm×5cmのグリッドに分割した2次元情報の存在指標を示しているが、存在指標は2次元情報に限られない。空間を例えば縦5cm×横5cm×高さ5cmの3次元格子に分割して、3次元情報の存在指標を用いてもよい。
そして、制御部10は、農作物としての物体の存在しそうな位置のリストが空か否かを判定する(ステップS156)。このリストが空なら(ステップS156;Yes)、ステップS103に戻る。このリストが空でないなら(ステップS156;No)、リストから「物体の存在しそうな位置」を1つ取り出す(ステップS157)。そして、駆動部42を制御して「物体の存在しそうな位置が見える所」へ移動する(ステップS158)。「物体の存在しそうな位置が見える所」とは、「物体の存在しそうな位置」との間に障害物がない場所である。
そして、位置取得部14は、撮像部41で撮影した画像から物体(農作物)が検出されるか否かを判定する(ステップS159)。物体が検出されたら(ステップS159;Yes)、ステップS152に進む。物体が検出されなければ(ステップS159;No)、所定時間(例えば3秒)が経過したか否かを判定する(ステップS160)。所定時間が経過していなければ(ステップS160;No)、ステップS159に戻る。所定時間が経過しているなら(ステップS160;Yes)、ステップS156に戻って、「物体の存在しそうな位置のリスト」が空になるまで「物体の存在しそうな位置が見える所」までの移動と物体(農作物)の検出を繰り返す。
以上の処理により、自律移動装置102は、物体を検出できない場合でも、存在指標に基づいて、物体としての農作物の存在しそうな位置に移動して、農作物を刈り取ることができる。
なお、物体として、農作物ではなく他のロボットを対象とする場合、上述のステップS159では、単に物体が検出されるか否かの判定をするのではなく、実施形態1での呼びかけ検出移動処理(図5)のステップS119と同様に、他のロボットの顔(当該物体の顔に相当する部分)が検出されるか否かを判定してもよい。このような判定をすることにより、他のロボットがこちらを向いている時だけ当該ロボットに向かって移動する処理を行うことができるようになる。
なお、例えば農作物Aの畑、農作物Bの畑、というように複数の畑を持っている農家における農作物刈り取りロボットの場合、農作物Aを刈り取るための存在指標A、農作物Bを刈り取るための存在指標Bというように、農作物各々に対応した存在指標を設定・更新してもよい。
(実施形態6)
実施形態5に係る自律移動装置103は、物体としての農作物を検出し、検出した物体の位置に基づいて存在指標を更新するが、物体を検出せずに、外部からの情報に基づいて存在指標を更新する実施形態も考えられる。ここでは、実施形態6として、物体としての害虫、雑草、農作物を検出せずに農薬を散布する農薬散布ロボットとしての自律移動装置104について説明する。実施形態6に係る自律移動装置104の機能構成は図14に示すように、農薬散布部47を備えることと、音源定位部13及び位置取得部14を備えないことを除くと自律移動装置100の機能構成(図1)と同様である。ただし、自律移動装置103と同様、自律移動装置104は、人の呼びかけに応じたり、人に近づいたりしなくてもよいなら、音声取得部43や人感センサ32を備えなくてもよい。
農薬散布部47は、制御部10から指定された方向に指定された量の農薬を散布する。なお、自律移動装置104は、物体(害虫、雑草、農作物)を検出しないので、農薬散布部47は、実際の物体の有無に関わらず、制御部10から受けた指示に基づく位置及び方向に向かって農薬を散布する動作を行う。
また、自律移動装置104は、呼びかけ検出移動処理(図5)の代わりに、図15に示すような農薬散布処理を行う。自律移動装置104の電源が投入されると、この農薬散布処理が開始される。なお、自律移動装置104は電源が投入されると、この農薬散布処理以外に、用途に応じた上位アプリケーションプログラムが別途(別スレッドで)起動し、上位アプリケーション又はユーザが目的地を設定する。例えば、用途が畑全体への農薬の散布であるなら、上位アプリケーションプログラムは、畑全体をくまなく巡りながら農薬を散布するために、移動場所を畑内の各地点に逐次設定していく。上位アプリケーションプログラムの詳細については割愛する。では、図15を参照して、農薬散布処理について説明する。
農薬散布処理(図15)のステップS101からステップS105までの処理は、実施形態1の呼びかけ検出処理(図5)と同じであるため、説明を省略する。ただし、自律移動装置104は、物体(害虫、雑草、農作物)を検出しないため、ステップS104で行われる存在指標の更新の処理については、実施形態1の存在指標の更新処理(図6)と異なる。自律移動装置104における存在指標の更新の処理は、外部(サーバ、ネットワーク、人等)から通信部45を介して存在指標のデータを受信して、存在指標記憶部24に書き込む処理となる。農薬を散布する場所は予めわかっていることが多いので、そのような場所を存在指標データとして外部(サーバ等)で作成しておくことで、自律移動装置104はステップS104で当該存在指標データを取得(更新)することができる。
なお、自律移動装置104は存在指標の更新の処理を行わなくてもよく、この場合は予め存在指標記憶部24に記憶されている存在指標がそのまま用いられることになる。この予め存在指標記憶部24に記憶されている存在指標は、過去の統計情報等に基づいて作成されたものであってもよいし、外部のサーバ等から通信部45を介して取得されたものであってもよい。
そして、ステップS105の次に、制御部10は、存在指標記憶部24に記憶されている情報に基づき、「物体の存在しそうな位置のリスト」を作成する(ステップS161)。この処理は、実施形態5に係る農作物刈り取り処理(図13)のステップS155での処理と同様である。そして、制御部10は、物体の存在しそうな位置のリストが空か否かを判定する(ステップS162)。このリストが空なら(ステップS162;Yes)、ステップS103に戻る。このリストが空でないなら(ステップS162;No)、リストから「物体の存在しそうな位置」を1つ取り出す(ステップS163)。そして、駆動部42を制御して「物体の存在しそうな位置」へ移動する(ステップS164)。
そして、制御部10は農薬散布部47を制御して「物体の存在しそうな位置」で農薬を散布する動作を行わせる(ステップS165)。そして、ステップS162に戻って、「物体の存在しそうな位置のリスト」が空になるまで「物体の存在しそうな位置」への移動と農薬の散布とを繰り返す。
以上の処理により、実施形態6に係る自律移動装置104は、物体(害虫、雑草、農作物)を検出せずに、外部から取得した(又は予め記憶していた)存在指標に基づいて、物体の存在しそうな位置に移動して、農薬を散布することができる。
また、実施形態6においても、記憶部20に指標補正情報記憶部25を追加して、実施形態3で説明した指標補正情報(図11)として、人の行動特性だけでなく、物体(害虫、雑草、農作物)の特性に基づいて予め設定された指標補正情報を用いることもできる。指標補正情報を用いることにより、自律移動装置104は、例えば、「春は、高度1mくらいのところを害虫が飛んでいることが多い。」、「秋は、地面に害虫がいることが多い。」等の指標補正情報に基づいて、農薬散布の位置を調整することができる。
また、実施形態6は、画像認識ができない又は困難な物体を対象とする場合にも用いることができる。例えば、実施形態6に係る自律移動装置として、海洋中に漂っているマイクロプラスティックを回収するロボットを想定することも可能である。この場合、自律移動装置104の農薬散布部47を、マイクロプラスティックを回収する回収部に置き換えた自律移動装置になる。マイクロプラスティックは特に海洋中に存在する微小なプラスティックであり、画像認識によって位置を特定することは困難だが、発生源の位置、海流等に基づいて、統計的に海洋中の存在確率を算出することは可能である。そこで、そのようにして算出した存在確率に基づいて存在指標を設定すれば、実施形態6に係る自律移動装置は、マイクロプラスティックの存在確率が高い位置に自動的に移動することができ、マイクロプラスティックを効率的に回収することができる。
また、実施形態6に係る自律移動装置104は、農薬散布部47を殺虫剤散布部に置き換えることにより、害虫を駆除する害虫駆除ロボットにも適用できる。害虫は小さくて飛び回っていることが多いので、画像認識で検出するのが困難な場合が多く、また検出したとしても(飛び回っているため)検出した位置には既にいないことが多い。しかし、人が害虫の存在する可能性の高い位置を存在指標データとして自律移動装置104に与えたり、外部のサーバが(例えばSNS(Social Network Sevice)の書き込みを解析する等して)害虫の多く発生している場所を存在指標データとして自律移動装置104に送信したりすることが可能である。このようにすることにより、自律移動装置104は、外部から与えられた存在指標に基づいて害虫が存在する可能性の高い位置に移動して農薬を散布して害虫を駆除することができる。
さらに、この害虫駆除ロボットにおいても、記憶部20に指標補正情報記憶部25を追加して、実施形態3で説明した指標補正情報(図11)として、人の行動特性だけでなく、害虫の特性に基づいて予め設定された指標補正情報を用いることもできる。例えば、公園の樹木は季節毎に変化することが多いので、季節毎に害虫が発生しそうな場所を指標補正情報として設定しておくことにより、公園の害虫(毛虫、蚊等)を効果的に駆除することが可能になる。
また、実施形態6に係る自律移動装置104は、農薬散布部47を農作物刈り取り部46に置き換えることにより、農作物刈り取りロボットにも適用できる。例えば、農作物としての稲の刈り取りにおいては、刈り取るべき稲の場所は予め分かっていることが普通である。したがって、稲を刈り取る農作物刈り取りロボットの場合、稲を画像認識して稲の存在する位置を取得しなくても、予め稲を刈り取る場所を存在指標記憶部24に記憶させておけば、稲を刈り取ることが可能である。また、この場合、例えば農作物Aの畑、農作物Bの畑、というように複数の畑を持っている農家における農作物刈り取りロボットの場合、農作物Aを刈り取るための存在指標A、農作物Bを刈り取るための存在指標Bというように、農作物各々に対応した存在指標を、予めサーバに記憶し、サーバから受信することによって、当該農作物刈り取りロボットは、各農作物を画像認識して位置を取得しなくても、各農作物に対応した存在指標を用いることによって、当該農作物を刈り取ることができる。
(変形例2)
上述の各実施形態では、自律移動装置100,101,102,103,104が、SLAM処理部11及び環境地図作成部12によりSLAM地図及び環境地図を作成することを前提に説明した。しかし、SLAM地図及び環境地図の作成は必須ではない。自律移動装置100,101,102,103,104がGPS(Global Positioning System)等の自己位置推定手段を備え、また、移動範囲が予め決められた範囲内である場合は、予めその移動範囲内の環境地図を環境地図記憶部23に記憶させておくことにより、SLAM地図及び環境地図を作成しなくても、GPSにより自己位置推定を行うことができ、また環境地図記憶部23に記憶されている環境地図を参照することにより必要な場所へ移動することができる。このような変形例2も本発明に含まれる。
なお、自律移動装置100,101,102,103,104の各機能は、通常のPC(Personal Computer)等のコンピュータによっても実施することができる。具体的には、上記実施形態では、自律移動装置100,101,102,103,104が行う自律移動制御処理のプログラムが、記憶部20のROMに予め記憶されているものとして説明した。しかし、プログラムを、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)及びMO(Magneto-Optical Disc)等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータに読み込んでインストールすることにより、上述の各機能を実現することができるコンピュータを構成してもよい。
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
(付記1)
所定の地図に基づいて移動する自律移動装置であって、
自律移動装置を移動させるように構成された駆動部と、
制御部と、を備え、
前記制御部は、
前記地図の上の複数の地点の各々における物体の存在の可能性を示す指標である存在指標を取得し、
前記取得した存在指標に基づいて、前記複数の地点から目的地用の地点を選択し、
前記選択した地点を目的地として設定し、
前記設定した目的地に前記自律移動装置が移動するように、前記駆動部を制御する、
自律移動装置。
(付記2)
前記制御部は、
前記目的地とすべき前記物体が検出されているか否かを判定し、
前記物体が検出されていないと判定した場合に、前記存在指標に基づく前記目的地の設定を実行し、前記物体が検出されていると判定した場合に、前記検出された前記物体の位置を前記目的地として設定する、
付記1に記載の自律移動装置。
(付記3)
前記自律移動装置の周囲の画像を撮影する撮像部をさらに備え、
前記制御部は、
前記撮像部により撮影された前記自律移動装置の周囲の画像に基づいて、前記目的地とすべき前記物体が検出されているか否かを判定する、
付記2に記載の自律移動装置。
(付記4)
さらに、
前記自律移動装置の周囲の画像を撮影する撮像部と、
記憶部と、を備え、
前記制御部は、
前記撮像部が撮影した前記自律移動装置の周囲の画像を取得し、前記取得した画像に基づいて、前記存在指標を設定し、
前記設定した存在指標を前記記憶部に記憶し、
前記記憶部に記憶された存在指標を取得する、
付記1又は2に記載の自律移動装置。
(付記5)
さらに、
音声データを取得する音声取得部を備え、
前記制御部は、
前記音声取得部が取得した音声データに基づき前記物体が存在する方向を算出し、
前記撮像部により撮影された、前記算出した方向の画像を取得し、
前記取得した画像に基づいて、前記物体が検出されているか否かを判定する、
付記4に記載の自律移動装置。
(付記6)
さらに、
前記自律移動装置の周囲の音声データを取得する音声取得部と、
音声を出力する音声出力部と、
記憶部と、
を備え、
前記制御部は、
前記音声取得部と前記音声出力部とを用いて前記物体としての人と対話する制御を行い、
前記人と対話した結果に基づいて、前記存在指標を設定し、
前記設定した存在指標を前記記憶部に記憶し、
前記記憶部に記憶された存在指標を取得する、
付記1から3のいずれか1つに記載の自律移動装置。
(付記7)
前記制御部は、前記複数の地点のうち、対応する前記存在指標で示される前記物体の存在の可能性が所定の指標基準値で示される前記物体の存在の可能性よりも高い地点を選択し、前記目的地として設定する、
付記1から6のいずれか1つに記載の自律移動装置。
(付記8)
前記制御部は、
前記取得した存在指標に、前記指標基準値で示される可能性よりも高い可能性を示す存在指標が複数存在する場合には、前記複数の存在指標の各々に対応する前記地点のうち、対応する前記存在指標で示される前記物体の存在の可能性が最も高い地点を目的地として設定する、
付記7に記載の自律移動装置。
(付記9)
前記制御部は、
前記取得した存在指標に、前記指標基準値で示される前記物体の存在の可能性よりも高い前記物体の存在の可能性を示す存在指標が複数存在する場合には、前記複数の存在指標の各々に対応する前記地点の各々と前記自律移動装置との間の距離を算出し、前記複数の存在指標の各々に対応する前記地点のうち、前記算出された距離が最も小さい地点を前記目的地として設定する、
付記7に記載の自律移動装置。
(付記10)
前記制御部は、前記複数の地点のうち、前記物体の存在の最も高い可能性を示す存在指標に対応する地点を前記目的地として設定する、
付記1から6のいずれか1つに記載の自律移動装置。
(付記11)
前記自律移動装置に設けられ、所定の撮影方向の画像を撮影する撮像部をさらに備え、
前記制御部は、
前記複数の地点から、前記取得した存在指標に基づいて前記目的地用の地点の候補を選択し、
前記複数の地点から、前記撮像部の撮影領域から外れている領域内の地点を、前記存在指標に基づく前記候補とともに、前記目的地用の地点の前記候補として選択し、
前記選択した前記候補から前記目的地用の地点を選択する、
付記1又は2に記載の自律移動装置。
(付記12)
さらに、前記物体の特性に基づいてあらかじめ設定された指標補正情報を記憶する記憶部を備え、
前記制御部は、前記記憶部に記憶されている前記指標補正情報に基づいて前記存在指標を補正する、
付記1から11のいずれか1つに記載の自律移動装置。
(付記13)
前記存在指標は、前記物体を識別せずに設定されることを特徴とする、
付記1から12のいずれか1つに記載の自律移動装置。
(付記14)
前記存在指標は、前記物体を識別して前記物体毎に設定されることを特徴とする、
付記1から12のいずれか1つに記載の自律移動装置。
(付記15)
前記複数の地点に対応する複数の前記存在指標は、前記複数の地点の各々において同一の物体の存在の可能性を示す指標又は同一の種類の物体の存在の可能性を示す指標であることを特徴とする、
付記1から14のいずれか1つに記載の自律移動装置。
(付記16)
前記物体は人である、
付記1から15のいずれか1つに記載の自律移動装置。
(付記17)
所定の地図に基づいて移動する自律移動装置の自律移動方法であって、
前記地図の上の複数の地点の各々における物体の存在の可能性を示す指標である存在指標を取得し、
前記取得した存在指標に基づいて、前記複数の地点から目的地用の地点を選択し、
前記選択した地点を目的地として設定し、
前記設定した目的地に前記自律移動装置が移動するように、駆動部を制御する、
自律移動方法。
(付記18)
所定の地図に基づいて移動する自律移動装置のコンピュータに所定の処理を実行させるためのプログラムであって、
前記所定の処理は、
前記地図の上の複数の地点の各々における物体の存在の可能性を示す指標である存在指標を取得し、
前記取得した存在指標に基づいて、前記複数の地点から目的地用の地点を選択し、
前記選択した地点を目的地として設定し、
前記設定した目的地に前記自律移動装置が移動するように、駆動部を制御する、
処理を含む、
プログラム。
10…制御部、11…SLAM処理部、12…環境地図作成部、13…音源定位部、14…位置取得部、15…存在指標更新部、16…移動制御部、20…記憶部、21…画像記憶部、22…SLAM地図記憶部、23…環境地図記憶部、24…存在指標記憶部、25…指標補正情報記憶部、30…センサ部、31…障害物センサ、32…人感センサ、41…撮像部、42…駆動部、43…音声取得部、44…音声出力部、45…通信部、46…農作物刈り取り部、47…農薬散布部、100,100A,100B,100C,101,102,103,104…自律移動装置、131…カメラ、132…マイクロホンアレイ、133…スピーカ、134…キャスター、135…車輪、200…ユーザ、301…充電器、302,302A…障害物、303…自由空間、304…不明空間

Claims (15)

  1. 所定の地図に基づいて移動する自律移動装置であって、
    自律移動装置を移動させるように構成された駆動部と、
    制御部と、を備え、
    前記制御部は、
    前記地図の上の複数の地点の各々における物体の存在の可能性を示す指標である存在指標を取得し、
    目的地とすべき前記物体が検出されているか否かを判定し、
    前記物体が検出されていないと判定した場合、生成された前記複数の地点のうち対応する前記存在指標で示される前記物体の存在の可能性が高いリストから、前記物体の存在の最も高い可能性を示す存在指標に対応する地点を前記目的地として設定し、
    前記設定した目的地に前記自律移動装置が移動するように、前記駆動部を制御する、
    自律移動装置。
  2. 前記自律移動装置の周囲の画像を撮影する撮像部をさらに備え、
    前記制御部は、
    前記撮像部により撮影された前記自律移動装置の周囲の画像に基づいて、前記目的地とすべき前記物体が検出されているか否かを判定する、
    請求項に記載の自律移動装置。
  3. さらに、
    前記自律移動装置の周囲の画像を撮影する撮像部と、
    記憶部と、を備え、
    前記制御部は、
    前記撮像部が撮影した前記自律移動装置の周囲の画像を取得し、前記取得した画像に基づいて、前記存在指標を設定し、
    前記設定した存在指標を前記記憶部に記憶し、
    前記記憶部に記憶された存在指標を取得する、
    請求項に記載の自律移動装置。
  4. さらに、
    音声データを取得する音声取得部を備え、
    前記制御部は、
    前記音声取得部が取得した音声データに基づき前記物体が存在する方向を算出し、
    前記撮像部により撮影された、前記算出した方向の画像を取得し、
    前記取得した画像に基づいて、前記物体が検出されているか否かを判定する、
    請求項に記載の自律移動装置。
  5. さらに、
    前記自律移動装置の周囲の音声データを取得する音声取得部と、
    音声を出力する音声出力部と、
    記憶部と、
    を備え、
    前記制御部は、
    前記音声取得部と前記音声出力部とを用いて前記物体としての人と対話する制御を行い、
    前記人と対話した結果に基づいて、前記存在指標を設定し、
    前記設定した存在指標を前記記憶部に記憶し、
    前記記憶部に記憶された存在指標を取得する、
    請求項1又は2に記載の自律移動装置。
  6. 前記リストは、前記存在指標で示される前記物体の存在の可能性が所定の指標基準値で示される前記物体の存在の可能性よりも高い地点が登録されている、
    請求項1からのいずれか1項に記載の自律移動装置。
  7. 前記制御部は、
    前記リストに前記物体の存在の可能性よりも高い地点が複数登録されている場合には、前記複数の存在指標の各々に対応する前記地点の各々と前記自律移動装置との間の距離を算出し、前記複数の存在指標の各々に対応する前記地点のうち、前記算出された距離が最も小さい地点を前記目的地として設定する、
    請求項に記載の自律移動装置。
  8. 前記自律移動装置に設けられ、所定の撮影方向の画像を撮影する撮像部をさらに備え、
    前記制御部は、
    記複数の地点から、前記撮像部の撮影領域から外れている領域内の地点を、前記目的地用の地点の候補として選択し、
    前記選択した前記候補から前記目的地用の地点を選択する、
    請求項に記載の自律移動装置。
  9. さらに、前記物体の特性に基づいてあらかじめ設定された指標補正情報を記憶する記憶部を備え、
    前記制御部は、前記記憶部に記憶されている前記指標補正情報に基づいて前記存在指標を補正する、
    請求項1からのいずれか1項に記載の自律移動装置。
  10. 前記存在指標は、前記物体を識別せずに設定されることを特徴とする、
    請求項1からのいずれか1項に記載の自律移動装置。
  11. 前記存在指標は、前記物体を識別して前記物体毎に設定されることを特徴とする、
    請求項1からのいずれか1項に記載の自律移動装置。
  12. 前記複数の地点に対応する複数の前記存在指標は、前記複数の地点の各々において同一の物体の存在の可能性を示す指標又は同一の種類の物体の存在の可能性を示す指標であることを特徴とする、
    請求項1から11のいずれか1項に記載の自律移動装置。
  13. 前記物体は人である、
    請求項1から12のいずれか1項に記載の自律移動装置。
  14. 所定の地図に基づいて移動する自律移動装置の自律移動方法であって、
    前記地図の上の複数の地点の各々における物体の存在の可能性を示す指標である存在指標を取得するステップと、
    目的地とすべき前記物体が検出されているか否かを判定するステップと、
    前記物体が検出されていないと判定した場合、生成された前記複数の地点のうち対応する前記存在指標で示される前記物体の存在の可能性が高いリストから、前記物体の存在の最も高い可能性を示す存在指標に対応する地点を前記目的地として設定するステップと、
    前記設定した目的地に前記自律移動装置が移動するように、駆動部を制御するステップと、
    を含む自律移動方法。
  15. 所定の地図に基づいて移動する自律移動装置のコンピュータに、
    前記地図の上の複数の地点の各々における物体の存在の可能性を示す指標である存在指標を取得する手順、
    目的地とすべき前記物体が検出されているか否かを判定する手順、
    前記物体が検出されていないと判定した場合、生成された前記複数の地点のうち対応する前記存在指標で示される前記物体の存在の可能性が高いリストから、前記物体の存在の最も高い可能性を示す存在指標に対応する地点を前記目的地として設定する手順、
    前記設定した目的地に前記自律移動装置が移動するように、駆動部を制御する手順、
    を実行させるためのプログラム。
JP2018235719A 2018-03-07 2018-12-17 自律移動装置、自律移動方法及びプログラム Active JP7225763B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/289,154 US20190278294A1 (en) 2018-03-07 2019-02-28 Autonomous mobile apparatus, autonomous move method, and recording medium
CN201910169913.9A CN110238837B (zh) 2018-03-07 2019-03-06 自主移动装置、自主移动方法以及存储介质

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018040392 2018-03-07
JP2018040392 2018-03-07

Publications (2)

Publication Number Publication Date
JP2019160289A JP2019160289A (ja) 2019-09-19
JP7225763B2 true JP7225763B2 (ja) 2023-02-21

Family

ID=67997148

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018235719A Active JP7225763B2 (ja) 2018-03-07 2018-12-17 自律移動装置、自律移動方法及びプログラム

Country Status (1)

Country Link
JP (1) JP7225763B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102305328B1 (ko) * 2019-12-24 2021-09-28 한국도로공사 카메라 기반의 자동화된 정밀도로지도 생성 시스템 및 방법
JP7402721B2 (ja) * 2020-03-24 2023-12-21 株式会社フジタ 発話制御装置
CN113640744B (zh) * 2021-08-20 2024-07-30 歌尔科技有限公司 声源定位方法及音频设备
KR20240062705A (ko) * 2022-11-02 2024-05-09 엘지전자 주식회사 로봇

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008158868A (ja) 2006-12-25 2008-07-10 Toyota Motor Corp 移動体、及びその制御方法
JP2013030004A (ja) 2011-07-28 2013-02-07 Fujitsu Ltd 在不在継続時間推定方法、在不在継続時間推定プログラム及び在不在継続時間推定装置
WO2014167700A1 (ja) 2013-04-12 2014-10-16 株式会社日立製作所 移動ロボット、及び、音源位置推定システム
US20150224640A1 (en) 2005-09-30 2015-08-13 Irobot Corporation Companion robot for personal interaction
WO2016009688A1 (ja) 2014-07-16 2016-01-21 株式会社リコー システム、機械、制御方法、プログラム
CN106548231A (zh) 2016-11-24 2017-03-29 北京地平线机器人技术研发有限公司 移动控制装置、可移动机器人和移动到最佳交互点的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150224640A1 (en) 2005-09-30 2015-08-13 Irobot Corporation Companion robot for personal interaction
JP2008158868A (ja) 2006-12-25 2008-07-10 Toyota Motor Corp 移動体、及びその制御方法
JP2013030004A (ja) 2011-07-28 2013-02-07 Fujitsu Ltd 在不在継続時間推定方法、在不在継続時間推定プログラム及び在不在継続時間推定装置
WO2014167700A1 (ja) 2013-04-12 2014-10-16 株式会社日立製作所 移動ロボット、及び、音源位置推定システム
WO2016009688A1 (ja) 2014-07-16 2016-01-21 株式会社リコー システム、機械、制御方法、プログラム
CN106548231A (zh) 2016-11-24 2017-03-29 北京地平线机器人技术研发有限公司 移动控制装置、可移动机器人和移动到最佳交互点的方法

Also Published As

Publication number Publication date
JP2019160289A (ja) 2019-09-19

Similar Documents

Publication Publication Date Title
JP7225763B2 (ja) 自律移動装置、自律移動方法及びプログラム
CN110238837B (zh) 自主移动装置、自主移动方法以及存储介质
EP3505312B1 (en) Mobile robot and control method therefor
US10102429B2 (en) Systems and methods for capturing images and annotating the captured images with information
US11737635B2 (en) Moving robot and control method thereof
Eliakim et al. A fully autonomous terrestrial bat-like acoustic robot
CN110968083B (zh) 栅格地图的构建方法、避障的方法、设备及介质
US11148294B2 (en) Autonomously acting robot that maintains a natural distance
JP6181321B2 (ja) 目標物体を誘導する方法、システム、及び装置
US10772295B2 (en) Unmanned aerial vehicle for determining geolocation foraging zones
KR20180134230A (ko) 청소 로봇 및 그 제어 방법
JP2019528535A5 (ja)
JP6671577B2 (ja) 人を識別する自律行動型ロボット
US11519456B2 (en) Joint structure appropriate for robot joint
CN117148836A (zh) 自移动机器人控制方法、装置、设备及可读存储介质
JP6560305B2 (ja) 目標物体を誘導する方法及びuav
Schiano et al. Autonomous detection and deterrence of pigeons on buildings by drones
Bhusal et al. Bird deterrence in a vineyard using an unmanned aerial system (uas)
US11986959B2 (en) Information processing device, action decision method and program
JP7189620B2 (ja) 天球画像の歪みを補正する画像処理装置とそれを備えるロボット
Viswanathan Mobile robot obstacle avoidance using a computational model of the locust brain

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221222

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230123

R150 Certificate of patent or registration of utility model

Ref document number: 7225763

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150