JP2005074562A - ロボット装置、ロボット装置の制御方法、及び記録媒体 - Google Patents
ロボット装置、ロボット装置の制御方法、及び記録媒体 Download PDFInfo
- Publication number
- JP2005074562A JP2005074562A JP2003307925A JP2003307925A JP2005074562A JP 2005074562 A JP2005074562 A JP 2005074562A JP 2003307925 A JP2003307925 A JP 2003307925A JP 2003307925 A JP2003307925 A JP 2003307925A JP 2005074562 A JP2005074562 A JP 2005074562A
- Authority
- JP
- Japan
- Prior art keywords
- card
- image
- additional information
- robot apparatus
- feature point
- 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.)
- Withdrawn
Links
Images
Landscapes
- Manipulator (AREA)
- Image Analysis (AREA)
Abstract
【課題】 ユーザが楽しみながら各種動作状態を制御する指示を行うようにすることでエンターテイメント性を向上させたロボット装置、ロボット装置の動作制御方法、及び動作制御を行うためのプログラムが記録された記録媒体を提供する。
【解決手段】 ロボット装置は、撮像部により撮像された入力画像が入力され、カード画像が登録されたデータベースを参照して入力画像に含まれるカードに一致する登録カード画像を抽出する画像認識部と、画像認識部により認識された登録カード画像に対応付けられた付加情報に基づき動作を発現させたり、各種設定を行わせたり、動作モードを遷移させたり等を制御する制御部とを有する。各カードには、個別に識別可能なパターンが記載され、ダンスを踊る、お座りをする等の各種行動を発現させるコマンド等となる付加情報が対応付けられている。
【選択図】 図2
【解決手段】 ロボット装置は、撮像部により撮像された入力画像が入力され、カード画像が登録されたデータベースを参照して入力画像に含まれるカードに一致する登録カード画像を抽出する画像認識部と、画像認識部により認識された登録カード画像に対応付けられた付加情報に基づき動作を発現させたり、各種設定を行わせたり、動作モードを遷移させたり等を制御する制御部とを有する。各カードには、個別に識別可能なパターンが記載され、ダンスを踊る、お座りをする等の各種行動を発現させるコマンド等となる付加情報が対応付けられている。
【選択図】 図2
Description
本発明は、自律的に動作可能なロボット装置及びロボット装置の制御方法に関し、特に、ユーザの指示に応じて動作状態を制御するロボット装置及びロボット装置の制御方法に関する。
電気的又は磁気的な作用を用いて人間(生物)の動作に似た運動を行う機械装置を「ロボット」という。我が国においてロボットが普及し始めたのは、1960年代末からであるが、その多くは、工場における生産作業の自動化・無人化等を目的としたマニピュレータ及び搬送ロボット等の産業用ロボット(Industrial Robot)であった。
最近では、人間のパートナーとして生活を支援する、すなわち住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットの開発が進められている。このうな実用ロボットは、産業用ロボットとは異なり、人間の生活環境の様々な局面において、個々に個性の相違した人間、又は様々な環境への適応方法を自ら学習する能力を備えている。例えば、犬又は猫のように4足歩行の動物の身体メカニズム及びその動作を模した「ペット型」ロボット、或いは、2足直立歩行を行う人間等の身体メカニズム及びその動作をモデルにしてデザインされた「人間型」又は「人間形」ロボット(Humanoid Robot)等のロボット装置は、既に実用化されつつある。
これらのロボット装置は、産業用ロボットと比較して、例えばエンターテインメント性を重視した様々な動作等を行うことができるため、エンターテインメントロボットと呼称される場合もある。また、そのようなロボット装置には、CCD(Charge Coupled Device)カメラ及びマイクロホン等の各種外部センサが搭載され、これら外部センサの出力に基づいて外部状況を認識して、外部からの情報及び内部の状態に応じて自律的に動作するものがある(下記特許文献1等)。
かかるロボット装置は、自律的に動作する自律モードとは別に、ユーザの音声指示等、外部からの指示に従って「ダンスを踊る」、「写真を撮影する」等の所定の動作を発現する他律モードとを有し、自律的にも他律的にも動作を発現するようになされているものがある。
ところで、上記特許文献1に記載のペット型ロボットのように、エンターテイメント用性を重視したロボット装置において、自律的動作を発現することは勿論重要であるが、他律モードとして特にユーザの要求に応じて行わせる動作、例えば発現中の動作を中断させたり、所定の動作を発現させたりする制御も必要となってくる。この場合に、単にユーザの音声指示に従わせたり、リモートコントロール等により動作制御するのみではなく、ロユーザとボット装置と他の方法で動作状態を制御できれば、更にエンターテイメント性を向上させることができる。
本発明は、このような従来の実情に鑑みて提案されたものであり、ユーザが楽しみながら各種動作状態を制御する指示を行うようにすることでエンターテイメント性を向上させたロボット装置、ロボット装置の動作制御方法、及び動作制御を行うためのプログラムが記録された記録媒体を提供することを目的とする。
上述した目的を達成するために、本発明に係るロボット装置は、自律的に動作可能なロボット装置において、個別に識別可能なパターンを有するカードを入力画像として撮像する撮像手段と、上記カードを示すカード画像と、各カード画像に対応付けられた1以上の付加情報とが登録された記憶手段と、上記記憶手段に登録されたカード画像と上記入力画像とを比較し、該入力画像に含まれるカードに一致又は類似すると判断されるカード画像を抽出する画像認識手段と、上記抽出したカード画像に対応付けられた付加情報に基づき動作状態を制御する制御手段とを有することを特徴とする。
本発明においては、個別に識別可能なパターンが記載されたカードを認識させることで、これに対応付けられた付加情報によりロボット装置の動作状態を制御することができ、ユーザは、音声等による直接的な指示ではなく、カードを提示して認識させるという新たな指示方法により、ロボット装置に動作を発現させることができる。
また、上記付加情報は、発現する動作を指定する動作指定情報、所定の設定を行わせる機能に切替える機能切替情報、動作モードを切り替える動作モード切替情報、及び入力として必要となるデータを示す識別情報のうち何れか1以上を含むものとすることができ、付加情報として様々なコマンドを設定することができる。
更に、上記画像認識手段により2以上のカード画像が抽出された場合、上記制御手段は、該2以上のカード画像に対応付けられた付加情報に基づき動作状態を制御することができ、認識手段により認識可能であれば複数枚のカードを使用することができ、これにより制御できる動作のバリエーションを増加させることができる。
更にまた、所定の時間内に2以上のカード画像が抽出された場合、上記制御手段は、上記2以上のカード画像に対応付けられた動作を並列して発現させてもよく、歌いながらダンスする等、各種行動を組み合わせることができる。
更にまた、上記付加情報は、所定の設定を行わせる機能に切替える機能切替情報及び/又は該所定の設定のために必要となるデータを示す識別情報を有し、上記機能切替情報に基づき行われる所定の設定は、上記識別情報により設定されるものであって、上記制御手段は、上記抽出されたカード画像に対応付けられた付加情報が上記機能切替情報である場合、上記識別情報を有する他のカードを提示するよう要求する動作を発現させることができ、例えば時刻の設定等は、設定する時刻を音声で入力してもよいが、カードにより時刻設定用情報を順次指示していくことも可能である。
また、上記カード画像は、カードに記載されたパターンとその姿勢に応じて異なる上記付加情報が設定され、上記画像認識手段は、上記入力画像に含まれるカードに一致又は類似するカード画像を抽出すると共に、該入力画像に含まれるカードのパターンの姿勢を検出し、上記制御手段は、上記パターンの姿勢に応じて対応付けられた付加情報に基づき動作状態を制御することができ、ユーザは提示するカードの向きを変えることで、ロボット装置にこれを検出して例えば方向転換したり、音量調節したり等の動作を行わせることでカードの向きにより異なる動作制御が可能となる。
本発明に係るロボット装置の制御方法は、自律的に動作可能なロボット装置の制御方法において、個別に識別可能なパターンを有するカードを入力画像として撮像する撮像工程と、上記カードを示すカード画像と、各カード画像に対応付けられた1以上の付加情報とが登録された記憶手段に記憶された各カード画像と上記入力画像とを比較し、該入力画像に含まれるカードに一致又は類似すると判断されるカード画像を抽出する画像認識工程と、上記抽出したカード画像に対応付けられた付加情報に基づき動作状態を制御する制御工程とを有することを特徴とする。
本発明に係る記録媒体は、所定の動作を自律的に動作可能なロボット装置が備えるコンピュータに実行させるためのプログラムが記録されたコンピュータ読み取り可能な記録媒体であって、個別に識別可能なパターンを有するカードを入力画像として撮像する撮像工程と、上記カードを示すカード画像と、各カード画像に対応付けられた1以上の付加情報とが登録された記憶手段に記憶された各カード画像と上記入力画像とを比較し、該入力画像に含まれるカードに一致又は類似すると判断されるカード画像を抽出する画像認識工程と、上記抽出したカード画像に対応付けられた付加情報に基づき動作状態を制御する制御工程とを有するプログラムが記録されたものである。
本発明によれば、個別に識別可能なパターンを有するカードを示すカード画像に識別情報を対応づけ登録しておき、撮像手段により撮像した画像内にカードが含まれる場合には、そのカードがカード画像の何れに一致するかを識別し、一致したカード画像に対応付けられている付加情報に基づき動作状態を制御することができ、ユーザはロボット装置にカードを提示して認識させることで、ロボット装置とインタラクションを図ることができ、更に、音声やリモートコントロール等の直接的な指示ではなく、カードを識別させ、カードに対応づけられている付加情報を認識させるという新たな方法により、ユーザが楽しみつつロボット装置の動作状態を制御することができ、娯楽性、エンターテイメント性を向上させることができる。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、所定のパターンが記載されたカードを使用し、この
カードに対応付けられた付加情報をコマンド等として受け取り動作を実行するロボット装置に適用したものである。
カードに対応付けられた付加情報をコマンド等として受け取り動作を実行するロボット装置に適用したものである。
(1)カードによる動作状態の制御
本実施の形態におけるロボット装置は、付加情報が対応付けられたカードを認識してその付加情報に応じて動作状態を制御することができる。このことにより、ユーザは、外部からの指示として従来の例えば音声やリモートコントロール等の代わりに、上記カードを認識させることで、そのカードに応じた動作を発現させることができる。
本実施の形態におけるロボット装置は、付加情報が対応付けられたカードを認識してその付加情報に応じて動作状態を制御することができる。このことにより、ユーザは、外部からの指示として従来の例えば音声やリモートコントロール等の代わりに、上記カードを認識させることで、そのカードに応じた動作を発現させることができる。
各カードには、それぞれ異なるパターンが記載され、これを識別したロボット装置は、そのパターンに対応付けられたコマンド等となる付加情報に基づき、動作を発現させたり、各種設定を行わせたり、動作モードを遷移させたり等の動作状態の制御を行う。
図1は、本実施の形態におけるロボット装置において、カードによる指示により動作制御を行うための主要部分のみを示すブロック図である。なお、ロボット装置の構成及び制御プログラムの詳細は後述する。
図1に示すように、ロボット装置の動作状態制御部101は、カードを撮影する撮像部102により撮像された入力画像が入力され、登録カード画像が登録されたデータベース103を参照して入力画像に含まれるカードに一致する登録カード画像を抽出する画像認識部104と、画像認識部104により認識された登録カード画像に対応付けられた付加情報に基づき動作状態を制御する制御部105とを有する。
撮像部102は、例えば後述するCCD(Charge Coupled Device)カメラやCMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等であり、制御部105は、後述する信号処理回路等とすることができる。また、登録画像データベース103は、ロボット装置内に設けられるか又は外部から装着可能な記録媒体等の記憶手段からなる。
本実施の形態においては、個別に識別可能となっているパターンが記載されたカードを用意し、これに1以上の付加情報を対応づけ、登録画像データベース103に登録する。ユーザ等がこのカードを撮像部102にて撮像できるように提示し、カードをロボット装置に認識させることにより、ロボット装置に例えば音声指示等と同様に例えば動作を発現するよう指示することができる。
登録画像データベース103に登録される複数のカードは、画像認識部104にて識別可能なパターンが記載されたものであり、予めこれらのカードを識別するためのカード画像と、そのカードが示すコマンドや設定情報等となる付加情報とが対応付けられ、登録画像データベース103に登録されているものとする。カード画像は、カードのパターンを示すパターンデータからなる画像であっても、又はカードを撮像した撮像画像でもよい。ロボット装置は、撮像部102により撮像した撮像画像を入力画像とし、画像認識部104は、この入力画像内に含まれるカードと、登録画像データベース103に登録された各登録カード画像とを比較し、入力画像に含まれるカードに一致又は類似すると判断する登録カード画像を選択する。
画像認識部104は、入力画像に含まれるカードと、登録画像データベース103に登録される複数の登録カード画像とを比較し、両者の特徴量に基づき入力画像に含まれるカードに一致する又は最も類似するカード画像を選択する。画像認識部104については、後述するが、登録カード画像のパターンを回転、縮小・拡大、移動させたものが入力画像に含まれるカードであるか否かを認識することができる。このとき、一致又は類似するカードを抽出するのみでなく、必要に応じて後述する方向を指示するカード等のように、パターンがどちらの方向に向いているかを示すパターン姿勢を検出することができる。
動作制御部105は、抽出された登録カード画像の情報が供給され、登録カード画像に対応付けられた付加情報に基づき各種動作を発現するためのコマンドを生成し、所定の処理部に送ることで動作を発現したり、所定の設定を行わせる機能に切り替えたり、動作モードを遷移させたりすることができる。
次に、本実施の形態において、上記登録画像データベース103に登録されるカード画像となるカード及びこれに対応付けられた付加情報について詳細に説明する。図2及び図3は、カードの分類と、そのカードに対応付けられた付加情報を説明する図である。また、図4(a)〜(c)乃至図8(a)〜(c)は、それぞれカードA〜カードOの具体的例を示す図である。また、各カードA〜カードOは、付加情報として動作状態を制御するコマンドに加えて、後述するように、数値や午前、午後といった時刻設定用の時刻設定用情報、及び数値やプラス、マイナスといった演算処理に使用される演算用情報を有する。また、制御部105は、現在の動作状態に基づき、各カードに対応付けられている複数の付加情報のうち一の付加情報を認識し、これに基づき制御を実行するようになされている。また、これら各カードに対して複数設定される各情報をユーザが理解するために、各カードA〜カードOの裏面には、図9(a)〜(c)乃至図13(a)〜(c)に示すように、各カードのコマンド、時刻設定用情報、演算用情報に対応する説明が記載される。
図2及び図3に示すように、本実施の形態において使用するカードに対応付けられた付加情報(コマンド)は、ロボット装置の制御系、設定系、モード遷移系の3つに分類することができる。
先ず、制御系コマンドとして作用する動作指定情報としての付加情報を有するカードとしては、ダンスカードA、写真カードB、UターンカードC、お座りカードD、伏せカードE、方向カードF、自己充電カードE、及び追跡(ホロー)カードF等がある。
先ず、ダンスカードAは、例えばその表面及び裏面が、それぞれ図4(a)及び図9(a)のように記載される。すなわち、ロボット装置は、図4(a)に示すパターンを識別し認識すると、これに対応付けられた「ダンス」の動作を発現するものである。なお、カードに記載するパターンは「ダンス」に関連するようなものにしておくと、ユーザにも理解しやすく、ユーザがカードのパターンを見て楽しみながら動作状態を制御することができ、エンターテイメント性が向上する。また、裏面には、図9(a)に示すように、このカードAの役割を示す情報が付される。すなわち、例えば、ダンスカードAであることを示す識別子「A」及びこのカードAを認識することにより発現する動作である「ダンス」の文字がそれぞれ左上及び左下に記載され、ユーザがカードAの意味を理解できるようになされている。
また、右上に記載される数値及び時計の図は、後述する目覚まし時刻設定の際に使用する時刻設定用情報を示すものであり、このダンスカードAには、時刻設定用情報として「1時」又は「13時」が設定されていることを示す。また、右下に記載される数値は、後述する演算処理モードにおいて使用されるものであり、演算処理情報として「1」が設定されていることを示す。
このダンスカードAに対応付けられる付加情報は、音声認識では、例えば「ダンスを踊って」等に相当するものであり、このダンスカードAを認識すると、ロボット装置は、ランダムにダンスコンテンツを発生させるような仕様となっている。
写真カードBは、例えばその表面及び裏面がそれぞれ図4(b)及び図9(b)のように記載される。この写真カードBに対応付けられる付加情報は、音声認識では「写真とって」に相当するものである。すなわち、この写真カードBには、写真撮影モードに遷移するための付加情報(コマンド)が対応付けられており、写真カードBを認識することにより写真撮影を開始する。
UターンカードCは、例えばその表面及び裏面がそれぞれ図4(c)及び図9(c)のように記載される。このUターンカードCは、Uターンアイテム(進入禁止)として作用するものであり、止まって180度回転、すなわちUターンする動作を発現するような付加情報(コマンド)が対応付けられている。ロボット装置は、このUターンカードCを認識すると、Uターンする動作を発現する。
お座りカードDは、例えばその表面及び裏面がそれぞれ図5(a)及び図10(a)のように記載される。このお座りカードDは、音声認識では、例えば「お座り」等に対応する付加情報(コマンド)が対応付けられたものであり、ロボット装置は、このお座りカードDを認識するとお座りの動作を実行する。
伏せカードEは、例えばその表面及び裏面がそれぞれ図5(b)及び図10(b)のように記載される。この伏せカードEは、音声認識では、例えば「伏せ」等に対応する付加情報(コマンド)が対応付けられたものであり、ロボット装置は、この伏せカードを認識すると伏せの動作を実行する。
方向カードFは、例えばその表面及び裏面がそれぞれ図5(c)及び図10(c)のように記載される。この方向カードFは、方向アイテムとして作用し、方向カードFの方向を認識し、その方向に移動する動作を実行するような付加情報(コマンド)が対応付けられている。ここで、例えば図5(c)に示すように、方向カードFは、ロボット装置に移動方向を指示するための矢印が記載されたものとなっており、ロボット装置は、この矢印の方向を認識して移動することができる。すなわち、ロボット装置は、この矢印が移動方向を指示するものであるという情報と、矢印の方向に移動するという情報とを有しており、この方向カードFを認識した場合には、この矢印が向く方向に移動するという動作を発現する。例えば図5(c)に示す方向カードFを回転して矢印の方向を右又は左に向ければ、ロボット装置はこれを認識して右又は左に移動する。また、図5(c)のように、矢印が上方向を示す場合、又は下方向を示す場合には、移動できない旨の表現、例えば頭部ユニットのみ上下させたり、困ったような動作を実行するようにしてもよい。
自己充電カードGは、例えばその表面及び裏面がそれぞれ図6(a)及び図11(a)のように記載される。この自己充電カードGに対応付けられる付加情報は、音声認識では例えば「ステーションにいこう」等に相当するものである。すなわち、この自己充電カードGを認識すると、充電ステーションを探し、自身で充電ステーションに移動し自己充電を行う動作を実行するような付加情報(コマンド)が対応付けられている。
追跡カードHは、例えばその表面及び裏面がそれぞれ図6(b)及び図11(b)のように記載される。この追跡カードHは、トラキングアイテムとして作用し、この追跡カードHを認識している間は、この追跡カードHを追いかけるような動作を実行する付加情報(コマンド)が対応付けられている。
また、設定系コマンドとして作用する機能切り替え情報としての付加情報に対応付けられたカードとしては、目覚まし時刻設定カードI、目覚ましON/OFFカードJ、及び音量カードK等がある。なお、これらのカードI〜カードKにおいても、上述の制御系カードと同様、時刻設定用情報及び演算用情報として、時間又は演算のための数値等、又は演算方法を指定する情報等も重ねて対応付けられるものとする。
目覚まし時刻設定カードIは、例えばその表面及び裏面がそれぞれ図6(c)及び図11(c)のように記載される。この目覚まし時刻設定カードIを認識すると、目覚まし時刻設定モードに遷移するような機能切替え情報が対応付けられており、この時刻設定カードIを認識すると、目覚まし時刻設定モードに遷移し、ロボットの目覚まし時刻を設定することができる。目覚まし時刻の設定方法については後述する。
また、目覚ましON/OFFカードJは、例えばその表面及び裏面がそれぞれ図7(a)及び図12(a)のように記載される。この目覚ましON/OFFカードJは、目覚ましがONの場合にこのカードJを認識すると目覚ましはOFFになり、目覚ましがOFFの場合にカードJを認識すると目覚ましがONに設定される機能切替え情報が対応付けられている。
音量カードKは、例えばその表面及び裏面がそれぞれ図7(b)及び図12(b)のように記載される。この音量カードKは、音量を調節するためのもので、カードKの向きにより音量の上下を指示することができ、例えば1度認識すると、1段階音量が上がる又は下がる、のような仕様となっている。すなわち、上述した方向カードFと同様に、音量カードKには、音量調節を実行するという情報かつその矢印の向きに応じて音量を上げるか下げるかの情報が対応付けられており、ロボット装置は、音量調節用の矢印パターン及びその方向を認識して音量の調節を実行するものである。この音量調整方法については後述する。
また、モード遷移系コマンドとして作用する動作モード切替情報としての付加情報が対応付けられたカードとしては、ゲームモード1カードL、ゲームモード2カードM、ゲームモード3カードN、クリニックカードO等がある。これらのカードL〜カードOにおいても、上述の制御系カードA〜カードH、設定系カードI〜カードKと同様、時刻設定用情報及び演算用情報として、時間又は演算のための数値等、又は演算方法を指定する情報等も重ねて対応付けられるものとする。
カードL,M、Nは、例えばその表面及び裏面がそれぞれ図7(c)及び図12(c)、図7(a)及び図12(a)、並びに図8(b)及び図13(b)のように記載される。そして、このカードL、M、Nは、それぞれ設定されたゲームモード1〜3に遷移するための動作モード切替情報が対応付けられている。
クリニックカードOは、例えばその表面及び裏面がそれぞれ図8(c)及び図13(c)のように記載される。このクリニックカードOは、これを認識すると、クリニックモードに遷移する動作モード切替え情報が対応付けられており、クリニックモードに遷移すると、ロボット装置は、システムに異常がないかの自己診断を実行する。
ここで、上述したように、これら15枚のカードA〜Oには、各種動作指定情報、機能切替情報、又は動作モード切替情報等を示す付加情報(コマンド)のみならず、その他の複数の識別情報としての付加情報を有している。通常、すなわち自律モードにある場合には、上記カードに対応付けされるコマンドを認識し、このコマンドに従って動作状態が制御されるが、所定のモード(動作状態)においては、他の付加情報である識別情報として認識するよう設定されている。
図2及び図3に示すように、目覚まし時刻設定時刻モードに遷移した際に使用される時計設定用情報として、カードA〜カードLには、それぞれ1〜12の数値を示す識別情報が対応付けられ、また、カードM、N、Oには、それぞれ午前(AM)、午後(PM)、0の識別情報が対応付けられている。
更に、計算モードに遷移した際に使用される演算用情報として、カードA〜カードJには、それぞれ1〜10の数値を示す識別情報が対応付けられ、カードK、L、M、N、及びOには、それぞれイコール(=)、乗算(×)、除算(÷)、減算(―)、加算(+)の意味を示す情報が対応付けられている。従って、これらの時刻設定用情報及び演算用情報をユーザが理解可能なように、これらの情報の説明も、上述した動作状態制御用のコマンドの説明と共にカードの裏面に記録される。
次に、これらのカードを認識した際のロボット装置の行動について説明する。ここでは、代表的なカードを例にとってカード認識から行動発現までについて説明する。先ず動作制御系コマンドが対応付けられたUターンカードC、方向カードFの場合について説明する。
図14及び図15は、それぞれUターンカードC及び方向カードFを認識してから行動を発現し終了するまでの工程を示すフローチャートである。
図14に示すように、本ロボット装置は、外部の刺激や自身の内部状態に応じて自律動作をするロボット装置であり、通常は自律モードにある(ステップS1)。自律モード中に、ロボット装置がUターンカードCを認識すると(ステップS2)、お座り・伏せの状態か、又は立ち姿勢・歩行中かが判断され(ステップS3)、お座り・伏せの状態のときは、立ち上がってカードCとの距離が20センチ程度まで近づく(ステップS4)。また、立ち姿勢・歩行中のときは、そのままカードCに近づき、同様に距離20センチ程度まで接近する(ステップS5)。なお、ここでは、距離20センチ程度まで近づくものとして説明するが、後述する認識技術等においては、ステップS2の時点でカードを認識することができる。すなわち、ロボット装置はステップS2の時点において、UターンカードCと対応付けられたコマンドであるUターンするという動作を認識している。
ここで、本実施の形態におけるロボット装置は、カードCを認識した後においても、20センチ程度までUターンカードCに近づいてカードCを覗き込む動作を発現する(ステップS6)。なお、ロボット装置は、ロボット装置に搭載されている距離センサにより、カードとの距離を認識することができる。このように、20cm程度までカードCに近づくことにより、何を指示されているのだろう等と考える素振りをさせるものである。
そして、カードCを覗き込んだ後、UターンカードCのコマンドを理解した素振りとして、例えば首を左右に振る等、前進できないことに対して不満又は残念な感じを表出させ、180°旋回する(ステップS6)。これにより、ロボット装置は、UターンカードCを見失い(ステップS7)、再び自律モードに移行する。
また、図15に示すように、方向カードFにおいては、カードFを認識して覗き込むまでの動作は、図14に示すUターンカードと同様である。方向カードFは、上述した如く、図5(c)に示すように、矢印が記載されており、この矢印の方向へロボット装置が移動するよう設定されている。すなわち、ステップS12において、ロボット装置は、方向カードFのパターン(矢印)を認識していると共にそのパターンの姿勢、すなわち矢印の向きも認識しているものとする。後述する画像認識装置においては、図5(c)に示す方向カードFのパターンを1つ登録しておくことで、その姿勢も認識可能であるが、必要であれば、上下左右の方向となるようカードFを回転させた画像を個別に登録してもよい。
そして、上述と同様に、カードFを覗き込んだ後(ステップS16)、方向カードFが右又は左の方向を示している場合(ステップS17)には、ロボット装置はこれに従い、右又は左方向に90°旋回して移動する(ステップS18)。そして、旋回によりカードを見失い(ステップS20)、再び自律モードに移行する。ここで、例えは、方向カードFが右方向を示している場合に、一旦右を向き、再び正面を向き、その後右方向に90°旋回し、方向カードFが左方向を示している場合に、一旦左を向き、正面を向き、その後左方向に90°旋回して移動する等とすることができる。
一方、方向カードFの矢印が指し示す方向が上又は下である場合(ステップS17、No)には、ロボット装置は、上方向にも下方向にも進めないため、例えば上方向を示している場合には、頭部ユニットを一旦上に向け、再び正面に向け、その後右に旋回する、又はその後首を傾げる等の行動を設定しておくことができる(ステップS19)。また、矢印の方向を右又は左の何れかに判定してしまうように設定しておいてもよい。
これらのUターンカードCや方向カードFは、ユーザ等により提示されてもよく、また、ロボット装置が近づくと危険であるような領域の入り口や、例えばユーザの家の玄関等に貼っておけば、ロボット装置が危険な領域に近づいたり、外に出たりすることを防止することができる。
次に、設定系コマンドが対応付けられたカードI〜カードKの動作状態の制御方法について説明する。図16乃至図19は、目覚まし時刻設定カードIを認識してから時刻設定を終了するまでを説明するフローチャートである。
先ず、図16に示すように、自律モードのロボット装置に対し、目覚まし時刻設定カードIを見せる(ステップS22)。ロボット装置は、カードIを識別し、その機能切り替え情報に基づき目覚まし設定を開始する。目覚まし設定機能においては、図20(a)に示す台詞1〜7を使用してロボット装置とユーザとがコミュニケーションを取りつつ目覚まし時刻を設定するものとする。また、目覚まし時刻設定の際、カードX1〜カードX4の4枚のカードを使用するものとし、図20(b)にカードX1〜カードX4として使用可能な時刻設定用情報を示す。
先ず、目覚まし時刻設定カードIを認識すると、ロボット装置は、
台詞1:「時間を設定します。午前、午後のどちらですか?カードを見せて下さい。」
等の台詞を発言する(ステップS23)。
台詞1:「時間を設定します。午前、午後のどちらですか?カードを見せて下さい。」
等の台詞を発言する(ステップS23)。
ここで、ユーザは、カードX1を見せる。本実施の形態においては、図3に示すカードMを見せれば午前を指定でき、カードNを見せれば午後を指定することができる。(ステップS24)。ここで、カードとして、例えば、数値情報「1」を有するカードA等、入力として必要な情報である午前又は午後以外の情報を有するカードが認識された場合(ステップS25)、ロボット装置は、
台詞3:「間違っています。」
等の台詞を発言し(ステップS26)、再び、ステップS23の台詞1を発言する。
台詞3:「間違っています。」
等の台詞を発言し(ステップS26)、再び、ステップS23の台詞1を発言する。
また、台詞1を発言してから例えば30秒等所定時間経過しても次のカードが認識できない場合(ステップS27)、ロボット装置は、
台詞4:「設定されませんでした。設定を終了します。」
等の台詞を発言して(ステップS56)、自律モードに戻る。
台詞4:「設定されませんでした。設定を終了します。」
等の台詞を発言して(ステップS56)、自律モードに戻る。
また、頭を触る等の所定動作が、上記午前又は午後を設定する動作をスキップする動作に対応するように設定しておいてもよく(ステップS28)、その場合には、図17のステップ31に進む。
更に、あごを触られる等所定動作が、上記午前又は午後を設定する動作をキャンセルする動作に対応するよう設定しておいてもよく(ステップS29)、この場合もステップS56に進み、上述の台詞4を発言して自律モードに戻る。
更にまた、例えば5〜10秒毎に、ステップS23に戻るように設定しておくことで(ステップS30)、5〜10秒毎に台詞1を発言し、カードを認識できない場合等にユーザにカードの提示を促すことができる。ここで、ステップS30を設ける場合は、最初に台詞1を発言したときからの総経過時間をカウントし、これが所定時間となったか否かをステップS27にて判断すればよい。
ステップS24にてカードX1として、例えば午前を示すカードMが認識されると、図17に示すステップS31に進む。ステップS31では、
台詞2:「午前何時ですか?カードを見せてください。」
等の台詞を発言する。なお、カードX1としてカードNを見せられた場合には、台詞2として「午後何時ですか?カードを見せてください。」等の台詞を発言するものとする。これにより、ユーザは、ロボット装置の要求に応じてカードX2として図20(b)に示すように、0〜12の何れかの数値を示すカードを見せる(ステップS32)。なお、ここでは、0と12は同じ情報を示すものとする。上述の図2及び図3に示す例においては、カードX2としては、カードA〜L又はカードOを認識させることができる。
台詞2:「午前何時ですか?カードを見せてください。」
等の台詞を発言する。なお、カードX1としてカードNを見せられた場合には、台詞2として「午後何時ですか?カードを見せてください。」等の台詞を発言するものとする。これにより、ユーザは、ロボット装置の要求に応じてカードX2として図20(b)に示すように、0〜12の何れかの数値を示すカードを見せる(ステップS32)。なお、ここでは、0と12は同じ情報を示すものとする。上述の図2及び図3に示す例においては、カードX2としては、カードA〜L又はカードOを認識させることができる。
また、上述と同様、入力として必要な時刻設定用情報入力以外の情報を有するカード(カードM、N)を見せられた場合(ステップS33)、ロボット装置は上述の台詞3等を発言し(ステップS34)する。また、台詞2を最初に発言してから所定時間経過したり(ステップS33)、あごを触られてキャンセル指示された場合(ステップS37)には、台詞4を発言し(ステップS56)、自律モードに戻る。更に、頭を触られてスキップ指示された場合(ステップS36)、図18に示すステップS39に進む。また、例えば5〜10秒毎に台詞31を発言するステップS31に戻る(ステップS38)。
ところで、ステップS32にてカードX2としてカードAを見せられ時刻設定用情報「1」を認識したロボット装置は、図18に示すように、
台詞5:「午前1時(カードX2に対応付けられている時刻)何分ですか?」
等の台詞を発言する(ステップS39)。この要求に応じてユーザは、分情報のうち、十の位となる数値を示すカードを見せる(ステップS40)。
台詞5:「午前1時(カードX2に対応付けられている時刻)何分ですか?」
等の台詞を発言する(ステップS39)。この要求に応じてユーザは、分情報のうち、十の位となる数値を示すカードを見せる(ステップS40)。
また、時刻設定用情報として認識不可能な数値に対応づけられたカード(カードF〜N)を見せられた場合(ステップS41)には、台詞3を発言して(ステップS42)、ステップS39に戻ったり、所定時間経過後(ステップS43)及びキャンセル指示により(ステップS45)、台詞4を発言して(ステップS56)、自律モードに移行したり(ステップS21)、スキップ指示により(ステップS44)次のステップにスキップしたり、カードを認識できない場合には5〜10秒毎に台詞5を発言したり(ステップS39)するものとする。
そして、ステップS40にて設定時刻の分情報のうち十の位が設定された後、図19に示すように、
台詞6:「設定する分の一の位のカードを見せて下さい。」
等の台詞6を発言する(ステップS47)。この要求に応じてユーザがカードX3を見せると、これを分の一の位として認識し(ステップS48)、
台詞7:「午前(カードX1の時刻設定用情報)、1(カードX2の時刻設定用情報)時、2(カードX3の時刻設定用情報)3(カードX4の時刻設定用情報)分に設定されました。設定を終了します。」
等の台詞7を発言する(ステップS49)。これにて目覚まし時刻設定動作は終了し、ロボット装置は、自律モードに移行する(ステップS21)。
台詞6:「設定する分の一の位のカードを見せて下さい。」
等の台詞6を発言する(ステップS47)。この要求に応じてユーザがカードX3を見せると、これを分の一の位として認識し(ステップS48)、
台詞7:「午前(カードX1の時刻設定用情報)、1(カードX2の時刻設定用情報)時、2(カードX3の時刻設定用情報)3(カードX4の時刻設定用情報)分に設定されました。設定を終了します。」
等の台詞7を発言する(ステップS49)。これにて目覚まし時刻設定動作は終了し、ロボット装置は、自律モードに移行する(ステップS21)。
また、時刻設定用情報として認識不可能な数値に対応付けられたカード(カードJ〜N)を見せられた場合(ステップS50)には、台詞3を発言して(ステップS51)、ステップS39に戻ったり、所定時間経過後(ステップS52)及びキャンセル指示により(ステップS54)、台詞4を発言して(ステップS56)、自律モードに移行したり(ステップS21)、スキップ指示により(ステップS53)、ステップS49にスキップしたり、カードを認識できない場合には5〜10秒毎に台詞5を発言したり(ステップS55)するものとする。
また、図16乃至図19にて示すスキップ動作においてスキップする場合には、前回の設定内容を反映するか、又はデフォルト値とすることができる。例えば、前回の設定内容を反映するようにしておけば、前回が午前6時00分に設定してあった場合に、午前7時00分に設定し直す場合、ユーザは、ステップS32のカードX3の設定のみ行い、後の設定はスキップすればよい。
更に、ここでは、1枚ずつカードを提示し、時刻情報としての数値を認識させるものとしたが、例えば、2枚同時に認識させて例えば分情報等を一度に認識させるようにしてもよい。
図21及び図22は、それぞれ目覚まし機能ON/OFFを設定する目覚ましON/OFFカードJ及び音量カードKの動作状態制御方法を示すフローチャートである。
図21に示すように、上述と同じく自律モードで動作している(ステップS61)ロボット装置が目覚ましON/OFFカードFを認識する(ステップS62)と、目覚まし設定がONであるかOFFであるかを検出し(ステップS63)する。そして、目覚まし設定がONである場合には、目覚まし設定OFFにし(ステップS64)、「目覚ましを解除しました。」等の台詞を発言し(ステップS65)、自律モードに戻る。また、目覚まし設定がOFFの場合には目覚まし設定をONにして(ステップS66)、「××時〇〇分に設定しました。」等の台詞を発現し(ステップS67)、自律モードに戻るものとする。
なお、上述したように、目覚まし時刻設定カードIを使用して目覚まし時刻が予め設定してある場合には、その設定した目覚まし時刻に設定されるが、目覚まし時刻が設定していない場合には、例えば午前7時00分等、デフォルトの目覚まし時刻に設定されるものとする。
また、図22に示すように、音量カードKを認識した場合には、自律モードから(ステップS71)、音量カードKであること、及び音量アップの指示であるか、音量ダウンの指示であるかを示す矢印の方向を認識し(ステップS72)、音量カードKの向きが音量プラスの向きであるか否かを判断する(ステップS73)。そして、音量プラスの指示である場合には、音量を一段階上げる(ステップS73)。ここで、例えば音量を一段階上げた場合には、音を鳴らす等の合図をするようにしてもよい。そして、例えば3秒等、所定時間の待機時間を経て(ステップS76)自立モードに移行する。
また、音量カードKの向きが音量マイナスの向きである場合には、音量を一段階下げる(ステップS75)。ここでも、音を鳴らす等、音量が変化したことをユーザに伝えるようにしておく。その後、同様に例えば3秒の待機時間を経て(ステップS76)、自立モードに遷移させる。ここで、音量レベルを上げたり、下げたりした後に待機時間を設けるのは、音量カードKを認識し続けて音量を上げ続けたり、下げ続けたりすることを防止するためである。
次に、その他のカードを認識した際の基本遷移動作について説明する。ダンスカードA、写真カードB、お座りカードD、伏せカードE、自己充電カードG、各種設定系カードI〜K、及びモード遷移系カードL〜O等においては、基本的には以下に説明する方法にて動作状態を遷移したり、動作を発現したりすることができる。
すなわち、図23に示すように、先ず自律モードから(ステップS81)、ユーザに提示される等してカードを認識すると(ステップS82)、認識したことをロボット装置がユーザに伝えるために、例えばうなずく、耳をパタパタさせる等の認識できたことを示す動作を発現する(ステップS83)。その後、各カードに対応付けられているモードに遷移するか、各カードに対応付けられた動作を発現する(ステップS84)。そして、これらの動作を終了すると再び自律モードに移行する。
例えば、ダンスカードAであれば、ユーザから「ダンスを踊って」等と言われた際に音声認識して発現するときと同様、ダンスを踊る動作モジュールが起動してダンスを発現する。また、写真カードBにおいても、ユーザから「写真とって」等と言われた際に音声認識して発現するときと同様、撮影用モジュールが起動して、カメラ撮影を行う。
また、お座りカードDや伏せカードEにおいても同様であって、「お座り」や「伏せ」等と言われた際に音声認識して発現するときと同様、お座りや伏せの姿勢に移行する。更に、自己充電カードGにおいても「ステーションにいこう」のユーザ指示の音声認識と同様、充電ステーションを探して自己充電するものである。なお、モード遷移とは、指定のモードに移ることを示す。
このように、カードを用いての制御は、各カードに対応付けられた各種付加情報により、1枚のカードを認識させ、これに対応付けられた付加情報により動作状態を制御してもよく、また、上述した目覚まし時刻設定のように、複数枚のカードを順次認識させることで、1つの動作状態を制御するようにしてもよい。その際、全ての動作制御をカードのみにて行うこともできるが、例えばロボット装置の本体部等にスイッチを設けてこれにより一部の動作状態を制御してもよい。具体的には、例えば目覚まし時刻設定用のスイッチにより目覚まし時刻設定開始状態に遷移させておいてから、時刻設定用情報を指示するカードを認識させて時刻を設定したり、また、デモ用コンテンツを発現するモードに遷移させておいてから、各種カードを認識させれば、デモンストレーション用の動作を発現するように設定することもできる。
また、デモンストレーション用の動作を発現させるように設定した場合、例えば音量カード等は、成長段階又はロボット装置の個性に応じて用意されている音量レベルや、音質等を発するようにすることができる。また、本実施の形態においては、ゲームモード1〜3を有しており、プレイモード1におけるデモンストレーション動作として、嬉しい、悲しい、楽しい等の各種感情を表現したり、PCと連動させた動作を発現したり、ネットワークを介して行われる動作を発現したりしてもよい。
また、複数枚のカードにより一連の動作状態を制御する他の例として、上述のカードとしては図示していないが、足し算や引き算を行わせる演算処理モード等が上げられる。例えば演算処理モードに遷移させる動作モード切替情報が付加情報として対応付けられたカードを用意し、これを認識させることで演算処理モードに移行させ、その後、カードを認識させることにより、図2及び図3に示したような数値や演算処理を指示する情報として付加情報を認識し、これに従い、数値を加算したり、乗算したりして演算を行わせることができる。演算結果は、例えばロボット装置が結果の数だけ手を叩いたり、音声にて出力したりすることができる。なお、この場合においても、本体部に演算処理モードに移行するためのスイッチ等を設けて、それを使用して遷移させてもよい。
また、以上の例においては、1枚のカードをロボット装置に提示し、そのカードを認識させ、カードに対応付けられた動作制御を行うものであったが、複数枚のカードを同時に提示し、複数のコマンドにより同時に動作状態を制御することも可能である。
図24は、複数枚のカードを同時に提示して動作制御する場合の動作遷移を示すフローチャートである。図24に示すように、例えばロボット装置は、自律モードから(ステップS91)、ダンスカードAを提示されることにより(ステップS92)、ダンスカードAに対応付けられたダンスコマンドを認識しこれによりダンスを踊るという動作を発現させる(ステップS93)ものであるが、ダンスカードAと共に、例えば回転する動作を指示する付加情報が対応付けられた回転カードY1、歌を歌う動作を指示する付加情報が対応付けられた歌カードY2を用意する。
そして、ダンスカードAと回転カードY1とを同時に見せる(ステップS94)と、例えば1秒以内等、所定時間内に2枚のカードを認識した場合には、2枚のカードA、Y1に対応付けられた計2つの付加情報に従って動作状態が制御される。すなわち、回りながらダンスを踊るという動作を発現する(ステップS96)。
また、ダンスカードA、回転カードY1、歌カードY2の3枚のカードを同時に見せる(ステップS97)、1秒以内等、所定時間内に3枚のカードを認識した場合(ステップS98)には、3枚のカードに対応づけられた計3つの付加情報に従って動作状態が制御される。すなわち、回りながらダンスも踊り、歌も歌うよう動作制御される。このように並列可能な複数の動作に対応付けられたカードを同時に認識した場合には、同時に複数の動作を並列して発現することができる。
なお、所定時間内に複数枚のカードが認識できなかった場合は、例えば後から認識されたカードに対応付けられた付加情報に従って動作状態が制御されるものとすることができる。すなわち、例えばカードAが認識されてから3秒後にカードY1が認識された場合には、ロボット装置は、ダンスではなく、回転動作を発現するようにすることができる。
(2)画像認識
次に、本実施の形態における画像認識部104の一具体例として、本願出願人が先に出願した特願2003−124525号に記載の画像認識装置について詳細に説明する。この画像認識装置は、1以上のオブジェクトを含む入力画像(以下、オブジェクト画像という)。と、検出対象となるモデルを示すモデル画像とを比較し、オブジェクト画像に含まれるオブジェクトであると判断されるモデル画像をデータベース103から抽出するものである。ここで、オブジェクトが入力画像に含まれるカードに対応し、モデルが上述した各カード画像に相当する。
次に、本実施の形態における画像認識部104の一具体例として、本願出願人が先に出願した特願2003−124525号に記載の画像認識装置について詳細に説明する。この画像認識装置は、1以上のオブジェクトを含む入力画像(以下、オブジェクト画像という)。と、検出対象となるモデルを示すモデル画像とを比較し、オブジェクト画像に含まれるオブジェクトであると判断されるモデル画像をデータベース103から抽出するものである。ここで、オブジェクトが入力画像に含まれるカードに対応し、モデルが上述した各カード画像に相当する。
図25は、画像認識装置の概略構成を示す図である。図25に示す画像認識装置201において、特徴点抽出部210a,210bは、モデル画像及びオブジェクト画像からそれぞれモデル特徴点及びオブジェクト特徴点を抽出し、特徴量保持部211a,211bは、抽出された各特徴点について後述する特徴量を抽出し、特徴点の位置情報と共に保持する。そして特徴量比較部212は、各モデル特徴点の特徴量と各オブジェクト特徴点の特徴量とを比較して類似度又は相違度を計算し、この類似尺度を用いて特徴量が類似する、すなわち対応する可能性の高いモデル特徴点及びオブジェクト特徴点のペア(候補対応特徴点ペア)を生成する。
モデル姿勢推定部213は、生成された候補対応特徴点ペア群を用いてオブジェクト画像上のモデルの有無を検出し、「モデル有」の判定結果の場合には、「検出されるモデルはオブジェクト画像上へのアフィン変換による画像変形が施されている」という拘束条件の下、候補対応特徴点ペア群からランダムに選択した3ペアにより決定されるアフィン変換パラメータをパラメータ空間に投射する操作を繰り返し、パラメータ空間上で形成されたクラスタのうち最多メンバ数を持つクラスタの各メンバを真の特徴点ペア(インライヤ)とし、このインライヤを用いた最小自乗推定によりアフィン変換パラメータを求める。そして、モデル姿勢推定部213は、このアフィン変換パラメータで決定されるモデル姿勢をモデル認識結果として出力する。
以下、上記画像認識装置201の各ブロックについて詳細に説明する。なお、以下では、画像の水平方向をX軸、垂直方向をY軸として説明する。
特徴点抽出部210a,210bは、特徴点抽出対象画像(モデル画像又はオブジェクト画像)に対し、先ず平滑化フィルタリング、例えば以下の式(1)で示す2次元ガウス関数による畳み込み積(ガウスフィルタリング)と、双2次線形補間リサンプリングによる画像縮小とを繰り返し交互に適用することで、画像の多重解像度ピラミッド構造を構築する。ここで、リサンプリングファクタとしては、式(1)のガウスフィルタで用いたσを用いる。
すなわち、図26に示すように、例えば入力画像Iにσ=√2であるガウスフィルタg(x、y)を施すことにより第1レベル(最高解像度)の画像I1を生成し、さらにガウスフィルタを施すことにより画像g*I1を生成する。そして、この画像g*I1をリサンプリングしてガウスフィルタを施すことにより第2レベルの画像I2,g*I2を生成し、同様にして画像g*I2から第3レベルの画像I3,g*I3を生成する。
続いて、特徴点抽出部210a,210bは、各レベル(各解像度)の画像に対して、DoG(Difference of Gaussian)フィルタを適用する。このDoGフィルタは、画像の輪郭強調のために用いられる2次微分フィルタの一種であり、人間の視覚系で網膜からの情報が外側膝状体で中継されるまでに行われている処理の近似モデルとして、LoG(Laplacian of Gaussian)フィルタと共によく用いられるものである。DoGフィルタの出力は、2つのガウスフィルタ出力画像の差分を取ることにより容易に得られる。すなわち、図26に示すように、第1レベルの画像について画像DI1(=I1−g*I1)が得られ、第2レベル,第3レベルの画像について画像DI2(=I2−g*I2),画像DI3(=I3−g*I3)が得られる。
そして、特徴点抽出部210a,210bは、各レベルにおけるDoGフィルタ出力画像DI1,DI2,DI3・・・の局所点(局所極大点及び局所極小点)のうち、所定の範囲内の解像度変化によって位置の変化がないような点を特徴点として検出する。これにより、画像の拡大縮小操作に対してロバストな特徴点間のマッチングが実現できる。
ここで、多重解像度ピラミッド構造の第Lレベル、すなわちσの(L−1)乗ファクタまでの解像度変化によって位置の変化がないような特徴点を検出する際の処理について図27のフローチャートを用いて説明する。
先ずステップS101において、第1レベル(最高解像度)におけるDoGフィルタ出力画像DI1の局所点(局所極大点及び局所極小点)を検出する。なお、局所近傍としては、例えば3×3直接近傍を用いることができる。
次にステップS102において、検出された各局所点について、その1つ上位レベル(解像度の1つ低い層)における対応点を解像度減少に伴う画像縮小を考慮して求め、この対応点が局所点か否かを判別する。局所点である場合(Yes)にはステップS103に進み、局所点でない場合(No)には探索を終了する。
続いてステップS103では、第Lレベルまで探索が成功したか否かを判別する。第Lレベルまで探索を行っていない場合(No)にはステップS102に戻ってさらに上位レベルの探索を行い、第Lレベルまで探索が成功した場合(Yes)には特徴点であるとして、ステップS104においてその位置情報を保持する。
例えば第3レベルまでの解像度変化によって位置の変化がないような特徴点を検出する場合、図28に示すように、第1レベルの画像DI1において検出された局所点FP1,FP2のうち、FP1は第3レベルの画像DI3まで対応点が存在するため特徴点とされ、FP2は第2レベルまでしか対応点が存在しないため特徴点でないとされる。
なお、この特徴点抽出部210a,210bでは、DoGフィルタの代わりにLoGフィルタを用いるようにしてもよい。また、文献「Harris C. and Stephens M.,“A combined corner and edge detector.”, in Proc. Alvey Vision Conf., pp.147-151, 1988」で物体のコーナー検出に用いられているcorner-ness 関数の出力値をDoGフィルタ出力の代わりに用いるようにしてもよい。
次に、特徴量保持部211a,211b(図25)は、特徴点抽出部210a,210bにて抽出された各特徴点について特徴量を抽出し、保持する。特徴量としては、多重解像度ピラミッド構造の各レベルの画像(Il,l=1,…,L)の画像情報から導出される特徴点の近傍領域各点の濃度勾配情報(勾配強度及び勾配方向)を用いる。点(x、y)における勾配強度Mx,y及び勾配方向Rx,yは以下の式(2),(3)により与えられる。
ここで、特徴量を算出する特徴点近傍領域としては、回転変化に対して構造の変わらないような、特徴点に関して対称なものを選択することが好ましい。これにより、回転変化に対するロバスト性を実現することができる。例えば、(i)特徴点から半径rピクセルの範囲内を特徴点近傍領域とする手法や、(ii)特徴点を中心に幅σの特徴点に関して対称な2次元ガウス重みを濃度勾配に掛ける手法を用いることができる。
特徴点から半径3.5ピクセルの範囲内を近傍領域とした場合における特徴点近傍領域の濃度勾配情報の例を図29(a)に示す。ここで、図29(a)において矢印の長さは勾配強度を表し、矢印の方向は勾配方向を表す。
また、特徴量保持部211a,211bは、特徴点近傍の勾配方向に関するヒストグラム(方向ヒストグラム)も特徴量として保持する。図29(a)の濃度勾配情報から得られる勾配方向ヒストグラムの例を図29(b)に示す。ここで、図29(b)における階級幅Δθは10deg であり、階級数Nは36(=360deg /10deg )である。
続いて、特徴量比較部212(図25)は、各モデル特徴点の特徴量と各オブジェクト特徴点の特徴量とを比較し、類似する特徴量を有するモデル特徴点及びオブジェクト特徴点のペア(候補対応特徴点ペア)を生成する。
この特徴量比較部12における処理の詳細について、図30のフローチャートを用いて説明する。先ず、ステップS110において、特徴量比較部212は、各モデル特徴点の方向ヒストグラムと各オブジェクト特徴点の方向ヒストグラムとを比較してヒストグラム間の距離(相違度)を計算すると共に、モデル−オブジェクト間の推定回転角度を求める。
ここで、階級幅Δθと階級数Nとが同一である2つの方向ヒストグラムH1={h1(n),n=1,…,N}及びH2={h2(n),n=1,…,N}を想定し、h1(n),h2(n)が階級nにおける度数を示すものとすると、ヒストグラムH1とヒストグラムH2との間の距離d(H1,H2)は、例えば以下の式(4)で与えられる。ここで、式(4)におけるrとしては、r=1,2,∞が一般的に用いられる。
この式(4)を用いて各モデル特徴点及び各オブジェクト特徴点の方向ヒストグラム間の相違度を計算するが、(i)モデル−オブジェクト間のスケール比がマッチング段階で未知であるため、モデル特徴点の各レベルとオブジェクト特徴点の各レベル間で方向ヒストグラム間のマッチングを行う必要がある。また、(ii)方向ヒストグラム間のマッチングに関しては、モデル−オブジェクト間の回転変換量を考慮する必要がある。
モデル特徴点mのレベルLVにおける方向ヒストグラムHm LV={hm LV(n),n=1,…,N}と、オブジェクト特徴点oのレベルlvにおける方向ヒストグラムHo lv={ho lv(n),n=1,…,N}との相違度を求める場合を考える。方向ヒストグラムは回転変換に対して巡回的に変化するため、Ho lvを巡回的に階級を1つずつシフトさせながら式(4)の計算を行い、その最小値をHm LVとHo lvとの間の相違度とする。このとき、相違度の最小値を与えた時のシフト量(ずらした階級数)からオブジェクト特徴点の回転角度を推定することができる。なお、この手法は方向ヒストグラム交差法として知られている。
Ho lvをk階級分シフトさせた方向ヒストグラムをHo lv(k)とすると、方向ヒストグラム交差法による方向ヒストグラム間相違度dissimilarity(Hm LV,Ho lv(k))は、以下の式(5)で与えられる。
また、最小のd(Hm LV,Ho lv(k))を与えるkをk’とすると、オブジェクト特徴点oの近傍領域における推定回転角度θ(m,LV,o,lv)は以下の式(6)で与えられる。
上述の(i)を考慮すると、モデル特徴点mとオブジェクト特徴点oとの方向ヒストグラム間相違度dissimilarity(Hm,Ho)は、以下の式(7)のようになる。
特徴量比較部212は、モデル特徴点mとオブジェクト特徴点oとの各ペア(m、n)に対し、最小の方向ヒストグラム間相違度dissimilarity(Hm,Ho)を与えるレベルLV,lv(以下、それぞれLVm *,lvo *と表記する。)と、その推定回転角度θ(m,LVm *,o,lvo *)とを、方向ヒストグラム間相違度dissimilarity(Hm,Ho)と共に保持する。
次にステップS111(図30)において、特徴量比較部212は、各モデル特徴点mに対し方向ヒストグラム間相違度の小さい順にK個のオブジェク特徴点om1,…,omKを選択し、候補対応特徴点ペアを組ませる。すなわち、各モデル特徴点mに対してK個の候補対応特徴点ペア(m、om1),…,(m、omk),…,(m、omK)が組まれる。また、各候補対応特徴点ペア(m、omk)には対応するレベルLVm *,lvomk *と推定回転角度θ(m,LVm *,o,lvomk *)との情報が保持される。
以上のようにして、全モデル特徴点に対し候補対応特徴点ペアを組ませることで得られたペア群が、候補対応特徴点ペア群となる。
このように、特徴量比較部212では、ヒストグラム度数に勾配強度を累積しておらず、単に勾配方向のみに注目しているため、明度変化に対してロバストな特徴量マッチングが可能になる。また、本実施の形態では方向ヒストグラムの形状を考慮したより安定なマッチングを行うことができる。更に、二次的に安定した特徴量(推定回転角度)を得ることができる。
なお、上述のステップS111では、各モデル特徴点mに対してK個の候補対応特徴点ペアを選択するものとして説明したが、これに限定されるものではなく、方向ヒストグラム間相違度が閾値を下回るペア全てを選択するようにしてもよい。
ここで、上述の操作で生成された候補対応特徴点ペア群は、方向ヒストグラムが類似するものの濃度勾配の空間的特徴が異なっているような対応点ペアも含んでいる。そこで、続くステップS112(図30)では、濃度勾配ベクトル間類似度によるペアの選択、候補対応特徴点ペア群の更新を行う。
具体的には、モデル特徴点mの近傍のレベルLVm *における濃度勾配ベクトルをUmとし、このモデル特徴点mと対応点ペアを組むオブジェクト特徴点oの近傍のレベルlvomk *における濃度勾配ベクトルをUoとしたとき、UmとUoとの類似度が閾値を下回るペアを排除し、候補対応特徴点ペア群を更新する。
濃度勾配ベクトルUm,Uo間の類似度の計算手法を図31に示す。先ず、Umを空間的に4領域Ri(i=1,…,4)に分割し、各領域の平均濃度勾配ベクトル<Vi>(i=1,…,4)を求める。この<Vi>をまとめた8次元ベクトル<V>でUmが表現される。一方、回転変換を考慮した濃度勾配情報のマッチングを行うために、Uoの勾配方向を先に求めた推定回転角度θ(m,LVm *,o,lvomk *)で補正し、Uo *を得る。この際、中間位置の値は、双2次線形補間により求める。先と同様にUo *を4領域Ri(i=1,…,4)に分割し、各領域の平均濃度勾配ベクトル<Wi>(i=1,…,4)を求める。この平均濃度勾配ベクトル<Wi>をまとめた8次元ベクトル<W>でUoが表現される。このとき、UmとUoとの類似度similarity(Um、Uo)∈[0,1]は、平均濃度勾配ベクトル<V>と<W>との類似度として解釈され、例えばコサイン相関値を用いて以下の式(8)により求められる。ここで、式(8)において(<V>・<W>)は<V>と<W>との内積を表す。
特徴量比較部212は、各候補対応特徴点ペアに対して上記式(8)で得られる平均濃度勾配ベクトル間の類似度を求め、類似度が閾値δを下回るペアを候補対応特徴点ペア群から排除し、候補対応特徴点ペア群を更新する。
このように、特徴量比較部212では、部分領域の平均濃度勾配ベクトルを用いて特徴量の比較を行っているため、特徴点位置や推定回転角度の微妙なずれや、明度の変化による濃度勾配情報の変化に対してロバストなマッチングを実現することができ、計算量の削減にもなる。
以上の操作により、特徴点近傍の局所的な濃度勾配情報が類似する(モデル特徴点−オジェクト特徴点)ペア群を抽出することができるが、巨視的に見ると、このように得られたペア群は、対応特徴点間の空間的位置関係がモデルのオブジェクト画像上での姿勢(モデル姿勢)と矛盾するような「偽の特徴点ペア(アウトライヤ)」を含んでしまっている。
ここで、候補対応特徴点ペアが3組以上ある場合には、最小自乗推定により近似アフィン変換パラメータの推定が可能であり、推定モデル姿勢と空間的位置関係の矛盾する対応ペアを排除し、残ったペアで再びモデル姿勢推定を行うという操作を繰り返すことで、モデル姿勢を認識することができる。
しかしながら、候補対応特徴点ペア群中のアウトライヤが多い場合や真のアフィン変換パラメータから極端に逸脱したアウトライヤが存在する場合には、最小自乗推定による推定結果は一般的に満足のいくものではないことが知られている(Hartley R., Zisserman A.,“Multiple View Geometry in Computer Vision.”, Chapter 3, pp.69-116, Cambridge University Press, 2000)ため、本実施の形態におけるモデル姿勢推定部213(図25)では、アフィン変換拘束の下、候補対応特徴点ペア群の空間的位置関係から「真の特徴点ペア(インライヤ)」を抽出し、抽出されたインライヤを用いてモデル姿勢(平行移動量,回転,拡大縮小,ストレッチを決定するアフィン変換パラメータ)を推定する。
以下、このモデル姿勢推定部213における処理について説明する。上述したように、候補対応特徴点ペアが3組以上なければアフィン変換パラメータを決定できないため、候補対応特徴点ペアが2組以下の場合、モデル姿勢推定部213は、オブジェクト画像中にモデルが存在しない、又はモデル姿勢検出に失敗したとして、「認識不可」と出力し処理を終了する。一方、候補対応特徴点ペアが3組以上ある場合、モデル姿勢推定部213は、モデル姿勢を検出可能であるとし、アフィン変換パラメータの推定を行う。なお、モデル姿勢推定部213は、モデル画像及びオブジェクト画像の例えば第1レベル(最高解像度)における特徴点の空間的位置を元にモデル姿勢を推定するものとする。
ここで、モデル特徴点[x y]Tのオブジェクト特徴点[u v]Tへのアフィン変換は、以下の式(9)で与えられる。
この式(9)において、ai(i=1,…,4)は回転,拡大縮小,ストレッチを決定するパラメータを表し、[b1 b2]Tは平行移動パラメータを表す。決定すべきアフィン変換パラメータはa1,…,a4及びb1,b2の6つであるため、候補対応特徴点ペアが3組あればアフィン変換パラメータを決定することができる。
3組の候補対応特徴点ペアで構成されるペア群<P>を([x1 y1]T,[u1 v1]T),([x2 y2]T,[u2 v2]T),([x3 y3]T,[u3 v3]T)とすると、ペア群<P>とアフィン変換パラメータとの関係は、以下の式(10)に示す線形システムで表現することができる。
この式(10)を<A><x>=<b>のように書き直すと、アフィン変換パラメータ<x>の最小自乗解は以下の式(11)で与えられる。
さて、候補対応特徴点ペア群からアウトライヤが1つ以上混入するように繰り返しランダムにペア群<P>を選択した場合、そのアフィン変換パラメータはパラメータ空間上に散らばって投射される。一方、インライヤのみから構成されるペア群<P>を繰り返しランダムに選択した場合、そのアフィン変換パラメータは、何れもモデル姿勢の真のアフィン変換パラメータに極めて類似した、すなわちパラメータ空間上で距離の近いものとなる。したがって、候補対応特徴点ペア群からランダムにペア群<P>を選択し、そのアフィン変換パラメータをパラメータ空間上に投射していく操作を繰り返すと、インライヤはパラメータ空間上で密度の高い(メンバ数の多い)クラスタを形成し、アウトライヤは散らばって出現することになる。このことから、パラメータ空間上でクラスタリングを行い、最多メンバ数を持つクラスタの要素がインライヤとなる。
モデル姿勢推定部213における処理の詳細を図32のフローチャートを用いて説明する。なお、このモデル姿勢推定部213におけるクラスタリング手法としては、NN(Nearest Neighbor)法を用いるものとする。この際、上述したb1,b2は、認識対象画像により様々な値を取り得るため、アフィン変換パラメータ<x>空間でもクラスタリングにおいてクラスタリング閾値の選択が認識対象に依存してしまう。そこで、モデル姿勢推定部13では、「真のパラメータとa1,…,a4は類似するがb1,b2が異なるようなアフィン変換パラメータを与えるペア群<P>は殆ど存在しない」という仮定の下、パラメータa1,…,a4(以下、<a>と表記する。)で張られるパラメータ空間上のみでクラスタリングを行う。なお、上記仮定が成り立たない状況が生じたとしても、<a>空間とは独立にb1,b2で張られるパラメータ空間でクラスタリングを行いその結果を考慮することで、容易に問題を回避することができる。
先ず図32のステップS120において初期化を行う。具体的には、繰り返し数のカウント値cntをcnt=1とし、候補対応特徴点ペア群からランダムにペア群<P1>を選択し、アフィン変換パラメータ<a1>を求める。また、クラスタ数NをN=1とし、アフィン変換パラメータ空間<a>上で<a1>を中心とするクラスタC1を作る。このクラスタC1のセントロイド<c1>を<c1>=<a1>とし、メンバ数nc1をnc1=1とする。
次にステップS121において、モデル姿勢推定部213は、候補対応特徴点ペア群からランダムにペア群<Pcnt>を選択し、アフィン変換パラメータ<acnt>を求める。
続いてステップS122において、モデル姿勢推定部213は、NN法を用いてアフィン変換パラメータ空間のクラスタリングを行う。具体的には、先ず以下の式(12)に従ってアフィン変換パラメータ<acnt>と各クラスタCiのセントロイド<ci>(i=1,…,N)との距離d(<acnt>、<ci>)のうち、最初の距離dminを求める。
そして、所定の閾値τ(例えばτ=0.1)に対してdmin<τであればdminを与えるクラスタCiにアフィン変換パラメータ<acnt>を属させ、<acnt>を含めた全メンバでクラスタCiのセントロイド<ci>を更新する。また、クラスタCiのメンバ数nciをnci=nci+1とする。一方、dmin≧τであればクラスタ数NをN=N+1とし、アフィン変換パラメータ空間<a>上で<acnt>をセントロイド<cN+1>とする新しいクラスタCN+1を作り、メンバ数ncN+1をncN+1=1とする。
続いてステップS123では、繰り返し終了条件を満たすか否かが判別される。ここで、繰り返し終了条件としては、例えば最多メンバ数が所定の閾値(例えば15)を超え、且つ最多メンバ数と2番目に多いメンバ数との差が所定の閾値(例えば3)を超える場合、或いは繰り返し数カウンタのカウント値cntが所定の閾値(例えば5000回)を超える場合に終了するように設定することができる。ステップS123において、繰り返し終了条件を満たさない場合(No)には、ステップS124で繰り返し数のカウント値cntをcnt=cnt+1とした後、ステップS121に戻る。一方、繰り返し終了条件を満たす場合(Yes)にはステップS125に進む。
最後にステップS125において、モデル姿勢推定部213は、以上で得られたインライヤを用いて、最小自乗法によりモデル姿勢を決定するアフィン変換パラメータを推定する。
ここで、インライヤを([xIN1 yIN1]T,[uIN1 vIN1]T),([xIN2 yIN2]T,[uIN2 vIN2]T),…とすると、インライヤとアフィン変換パラメータとの関係は、以下の式(13)に示す線形システムで表現することができる。
この式(13)を<AIN><xIN>=<bIN>のように書き直すと、アフィン変換パラメータ<xIN>の最小自乗解は以下の式(14)で与えられる。
そしてステップS125では、このアフィン変換パラメータ<xIN>で決定されるモデル姿勢をモデル認識結果として出力する。
なお、以上の説明では、閾値τが定数値であるものとしたが、ステップS121乃至ステップS124の繰り返し処理を行う際に、始めは比較的大きな閾値τを用いて大雑把なインライヤ抽出を行い、繰り返し回数が増える毎に次第に小さい閾値τを用いる、いわゆる「焼きなまし法」のような手法を適用してもよい。これにより、精度よくインライヤを抽出することができる。
また、以上の説明では、候補対応特徴点ペア群からランダムにペア群Pを選択し、そのアフィン変換パラメータをパラメータ空間上に投射していく操作を繰り返し、パラメータ空間上で最多メンバ数を持つクラスタの要素をインライヤとして、最小自乗法によりモデル姿勢を決定するアフィン変換パラメータを推定したが、これに限定されるものではなく、例えば最多メンバ数を持つクラスタのセントロイドを、モデル姿勢を決定するアフィン変換パラメータとしてもよい。
また、特徴量比較部212で生成された候補対応特徴点ペア群中のアウトライヤの比率が大きくなるほどモデル姿勢推定部213におけるインライヤの選択確率が低下し、モデル姿勢を推定する際に繰り返し回数が多くなるため、計算時間が増大してしま場合がある。そのような場合には、上記検出可能判定部213に入力される候補対応特徴点ペア群からできる限りアウトライヤを排除しておくことが望ましい。そこで、画像認識装置1の特徴量比較部212とモデル姿勢推定部213との間に候補対応特徴点ペア選択部を設け、これにより、特徴量比較部212で生成された候補対応特徴点ペア群のうち、推定回転角度ヒストグラムのピークを与える推定回転角度を有するペアを選択したり、回転,拡大縮小率,平行移動(x、y方向)の4つの画像変換パラメータを特徴空間(投票空間)とした一般化ハフ変換を用い、最多投票パラメータに投票した候補対応特徴点ペア群を選択してからモデル姿勢推定部213に供給するようにしてもよい。
このような画像認識装置及びその方法によれば、特徴量が類似するとして生成された候補対応特徴点ペアを用いて上記オブジェクト画像上のモデルの有無を検出し、モデルが存在する場合に該モデルの位置及び姿勢を推定する際に、ランダムに選択した3組の候補対応特徴点ペアから決定されるアフィン変換パラメータをパラメータ空間に投射する操作を繰り返し、パラメータ空間上で形成されたクラスタのうち最多メンバ数を持つクラスタに属するアフィン変換パラメータに基づいて上記モデルの位置及び姿勢を決定するアフィン変換パラメータを求める。このように、最小自乗推定を用いてモデルの位置及び姿勢を決定するアフィン変換パラメータを求めるのではなく、アフィン変換パラメータを投射したパラメータ空間上で最多メンバ数を持つクラスタに属するアフィン変換パラメータに基づいてアフィン変換パラメータを求めることにより、候補対応特徴点ペアに偽の対応点ペア含まれている場合であっても、安定してモデルの位置及び姿勢を推定することができる。
このような画像認識装置201によれば、特徴点の近傍領域における濃度勾配情報から得られる濃度勾配方向ヒストグラムを特徴量として特徴量マッチングを行う際に、比較対象となる特徴点同士の濃度勾配方向ヒストグラムの一方を濃度勾配方向に巡回的にシフトさせながら濃度勾配方向ヒストグラム間の距離を求め、最小の距離を濃度勾配方向ヒストグラム間の距離として、距離の類似する特徴点同士で候補対応特徴点ペアを生成する。このように、ヒストグラム度数に勾配強度を累積せず、単に勾配方向のみに注目しているため、明度変化に対してロバストな特徴量マッチングが可能になる。また、方向ヒストグラムの形状を考慮したより安定なマッチングを行うことができると共に、二次的に安定した特徴量(推定回転角度)を得ることができる。
(3)ロボット装置
次に、図1にその主要部のみを示したロボット装置の構成について詳細に説明する。本ロボット装置は、外部の刺激や内部状態に応じて自律的に動作が可能なロボット装置である。
次に、図1にその主要部のみを示したロボット装置の構成について詳細に説明する。本ロボット装置は、外部の刺激や内部状態に応じて自律的に動作が可能なロボット装置である。
(3−1)ロボット装置の構成
図33に示すように、本実施の形態によるロボット装置1は、4足歩行の脚式移動ロボットとされ、胴体部ユニット2の前後左右にそれぞれ脚部ユニット3A,3B,3C,3Dが連結されると共に、胴体部ユニット2の前端部に頭部ユニット4が連結されて構成されている。
図33に示すように、本実施の形態によるロボット装置1は、4足歩行の脚式移動ロボットとされ、胴体部ユニット2の前後左右にそれぞれ脚部ユニット3A,3B,3C,3Dが連結されると共に、胴体部ユニット2の前端部に頭部ユニット4が連結されて構成されている。
胴体部ユニット2には、図34に示すように、CPU(Central Processing Unit)10、DRAM(Dynamic Random Access Memory)11、フラッシュROM(Read Only Memory)12、PC(Personal Computer)カードインターフェース回路13及び信号処理回路14が内部バス15を介して相互に接続されることにより形成されたコントロール部16と、このロボット装置1の動力源としてのバッテリ17とが収納されている。また、胴体部ユニット2には、ロボット装置1の向きや動きの加速度を検出するための角速度センサ18及び加速度センサ19なども収納されている。
また、頭部ユニット4には、外部の状況を撮像するとともに、周囲の明るさを検出するためのCCD(Charge Coupled Device)カメラ20と、前後に倒すといった使用者からの物理的な働きかけを検出するためのタッチセンサ21と、前方に位置する物体までの距離を測定するための距離センサ22と、外部音を集音するためのマイクロホン23と、各種音声を出力するためのスピーカ24と、頭部ユニット4内に格納可能とされたヘッドライト25と、ロボット装置1の「目」に相当するLED(Light Emitting Diode)(図示せず)などがそれぞれ所定位置に配置されている。なお、ロボット装置1においては、タッチセンサ21以外にも、胴体部ユニット2及び頭部ユニット4の所定位置に複数のタッチセンサが配置されている。
さらに、各脚部ユニット3A〜3Dの関節部分や各脚部ユニット3A〜3D及び胴体部ユニット2の各連結部分、並びに頭部ユニット4及び胴体部ユニット2の連結部分などにはそれぞれ自由度数分のアクチュエータ261〜26n及びポテンショメータ271〜27nが配設されている。例えば、アクチュエータ261〜26nはサーボモータを構成として有している。サーボモータの駆動により、脚部ユニット3A〜3Dが制御されて、目標の姿勢或いは動作に遷移する。
そして、これら角速度センサ18、加速度センサ19、タッチセンサ21、距離センサ22、マイクロホン23、スピーカ24、及び各ポテンショメータ271〜27nなどの各種センサ並びにヘッドライト25、LED及び各アクチュエータ261 〜26nは、それぞれ対応するハブ281〜28nを介してコントロール部16の信号処理回路14と接続され、CCDカメラ20及びバッテリ17は、それぞれ信号処理回路14と直接接続されている。
信号処理回路l4は、上述の各センサから供給されるセンサデータや画像データ及び音声データを順次取り込み、これらをそれぞれ内部バス15を介してDRAM11内の所定位置に順次格納する。また信号処理回路14は、これと共にバッテリ17から供給されるバッテリ残量を表すバッテリ残量データを順次取り込み、これをDRAM11内の所定位置に格納する。
このようにしてDRAM11に格納された各センサデータ、画像データ、音声データ及びバッテリ残量データは、この後CPU10がこのロボット装置1の動作制御を行う際に利用される。
実際上CPU10は、ロボット装置1の電源が投入された初期時、胴体部ユニット2の図示しないPCカードスロットに装填されたメモリカード29又はフラッシュROM12に格納された制御プログラムをPCカードインターフェース回路13を介して又は直接読み出し、これをDRAM11に格納する。
また、CPU10は、この後上述のように信号処理回路14よりDRAM11に順次格納される各センサデータ、画像データ、音声データ及びバッテリ残量データに基づいて自己及び周囲の状況や、使用者からの指示及び働きかけの有無などを判断する。
さらに、CPU10は、この判断結果及びDRAM11に格納した制御プログラムに基づいて続く行動を決定すると共に、当該決定結果に基づいて必要なアクチュエータ261〜26nを駆動させることにより、頭部ユニット4を上下左右に振らせたり、各脚部ユニット3A〜3Dを駆動させて歩行させるなどの行動を行わせる。
また、この際CPU10は、必要に応じて音声データを生成し、これを信号処理回路14を介して音声信号としてスピーカ24に与えることにより当該音声信号に基づく音声を外部に出力させたり、上述のLEDを点灯、消灯又は点滅させる。また、CPU10は、後述するように、CCDカメラ20を用いて周囲の明るさを検出させ、その検出結果に応じてヘッドライト25を点灯させる。
このようにしてこのロボット装置1においては、自己及び周囲の状況や、使用者からの指示及び働きかけに応じて自律的に行動し得るようになされている。
(3−2)制御プログラムのソフトウェア構成
ここで、ロボット装置1における上述の制御プログラムのソフトウェア構成は、図35に示すようになる。この図35において、デバイス・ドライバ・レイヤ30は、この制御プログラムの最下位層に位置し、複数のデバイス・ドライバからなるデバイス・ドライバ・セット31から構成されている。この場合、各デバイス・ドライバは、CCDカメラ20(図19)やタイマ等の通常のコンピュータで用いられるハードウェアに直接アクセスすることを許されたオブジェクトであり、対応するハードウェアからの割り込みを受けて処理を行う。
ここで、ロボット装置1における上述の制御プログラムのソフトウェア構成は、図35に示すようになる。この図35において、デバイス・ドライバ・レイヤ30は、この制御プログラムの最下位層に位置し、複数のデバイス・ドライバからなるデバイス・ドライバ・セット31から構成されている。この場合、各デバイス・ドライバは、CCDカメラ20(図19)やタイマ等の通常のコンピュータで用いられるハードウェアに直接アクセスすることを許されたオブジェクトであり、対応するハードウェアからの割り込みを受けて処理を行う。
また、ロボティック・サーバ・オブジェクト32は、デバイス・ドライバ・レイヤ30の最下位層に位置し、例えば上述の各種センサやアクチュエータ261〜26n等のハードウェアにアクセスするためのインターフェースを提供するソフトウェア群でなるバーチャル・ロボット33と、電源の切換えなどを管理するソフトウェア群でなるバワーマネージャ34と、他の種々のデバイス・ドライバを管理するソフトウェア群でなるデバイス・ドライバ・マネージャ35と、ロボット装置1の機構を管理するソフトウェア群でなるデザインド・ロボット36とから構成されている。
マネージャ・オブジェクト37は、オブジェクト・マネージャ38及びサービス・マネージャ39から構成されている。オブジェクト・マネージャ38は、ロボティック・サーバ・オブジェクト32、ミドル・ウェア・レイヤ40、及びアプリケーション・レイヤ41に含まれる各ソフトウェア群の起動や終了を管理するソフトウェア群であり、サービス・マネージャ39は、メモリカード29(図34)に格納されたコネクションファイルに記述されている各オブジェクト間の接続情報に基づいて各オブジェクトの接続を管理するソフトウェア群である。
ミドル・ウェア・レイヤ40は、ロボティック・サーバ・オブジェクト32の上位層に位置し、画像処理や音声処理などのこのロボット装置1の基本的な機能を提供するソフトウェア群から構成されている。また、アプリケーション・レイヤ41は、ミドル・ウェア・レイヤ40の上位層に位置し、当該ミドル・ウェア・レイヤ40を構成する各ソフトウェア群によって処理された処理結果に基づいてロボット装置1の行動を決定するためのソフトウェア群から構成されている。
なお、ミドル・ウェア・レイヤ40及びアプリケーション・レイヤ41の具体なソフトウェア構成をそれぞれ図36に示す。
ミドル・ウェア・レイヤ40は、図36に示すように、騒音検出用、温度検出用、明るさ検出用、音階認識用、距離検出用、姿勢検出用、タッチセンサ用、動き検出用及び色認識用の各信号処理モジュール50〜58並びに入力セマンティクスコンバータモジュール59などを有する認識系60と、出力セマンティクスコンバータモジュール68並びに姿勢管理用、トラッキング用、モーション再生用、歩行用、転倒復帰用、ライト点灯用及び音再生用の各信号処理モジュール61〜67などを有する出力系69とから構成されている。
認識系60の各信号処理モジュール50〜58は、ロボティック・サーバ・オブジェクト32のバーチャル・ロボット33によりDRAM11(図34)から読み出される各センサデータや画像データ及び音声データのうちの対応するデータを取り込み、当該データに基づいて所定の処理を施して、処理結果を入力セマンティクスコンバータモジュール59に与える。ここで、例えば、バーチャル・ロボット33は、所定の通信規約によって、信号の授受或いは変換をする部分として構成されている。
入力セマンティクスコンバータモジュール59は、これら各信号処理モジュール50〜58から与えられる処理結果に基づいて、「うるさい」、「暑い」、「明るい」、「ボールを検出した」、「転倒を検出した」、「撫でられた」、「叩かれた」、「ドミソの音階が聞こえた」、「動く物体を検出した」又は「障害物を検出した」などの自己及び周囲の状況や、使用者からの指令及び働きかけを認識し、認識結果をアプリケーション・レイヤ41(図34)に出力する。
アプリケーション・レイヤ4lは、図37に示すように、行動モデルライブラリ70、行動切換モジュール71、学習モジュール72、感情モデル73及び本能モデル74の5つのモジュールから構成されている。
行動モデルライブラリ70には、図38に示すように、「バッテリ残量が少なくなった場合」、「転倒復帰する」、「障害物を回避する場合」、「感情を表現する場合」、「ボールを検出した場合」などの予め選択された複数の条件項目にそれぞれ対応させて、それぞれ独立した行動モデル701〜70nが設けられている。
そして、これら行動モデル701〜70nは、それぞれ入力セマンティクスコンバータモジュール59から認識結果が与えられたときや、最後の認識結果が与えられてから一定時間が経過したときなどに、必要に応じて後述のように感情モデル73に保持されている対応する情動のパラメータ値や、本能モデル74に保持されている対応する欲求のパラメータ値を参照しながら続く行動をそれぞれ決定し、決定結果を行動切換モジュール71に出力する。
なお、この実施の形態の場合、各行動モデル701〜70nは、次の行動を決定する手法として、図39に示すような1つのノード(状態)NODE0〜NODEnから他のどのノードNODE0〜NODEnに遷移するかを各ノードNODE0〜NODEnに間を接続するアークARC1〜ARCnに対してそれぞれ設定された遷移確率P1〜Pnに基づいて確率的に決定する有限確率オートマトンと呼ばれるアルゴリズムを用いる。
具体的に、各行動モデル701〜70nは、それぞれ自己の行動モデル701〜70nを形成するノードNODE0〜NODEnにそれぞれ対応させて、これらノードNODE0〜NODEnごとに図40に示すような状態遷移表80を有している。
この状態遷移表80では、そのノードNODE0〜NODEnにおいて遷移条件とする入力イベント(認識結果)が「入力イベント名」の列に優先順に列記され、その遷移条件についてのさらなる条件が「データ名」及び「データ範囲」の列における対応する行に記述されている。
したがって、図40の状態遷移表80で表されるノードNODE100では、「ボールを検出(BALL)」という認識結果が与えられた場合に、当該認識結果と共に与えられるそのボールの「大きさ(SIZE)」が「0から1000」の範囲であることや、「障害物を検出(OBSTACLE)」という認識結果が与えられた場合に、当該認識結果と共に与えられるその障害物までの「距離(DISTANCE)」が「0から100」の範囲であることが他のノードに遷移するための条件となっている。
また、このノードNODE100では、認識結果の入力がない場合においても、行動モデル701〜70nが周期的に参照する感情モデル73及び本能モデル74にそれぞれ保持された各情動及び各欲求のパラメータ値のうち、感情モデル73に保持された「喜び(JOY)」、「驚き(SURPRISE)」若しくは「悲しみ(SUDNESS)」のいずれかのパラメータ値が「50から100」の範囲であるときには他のノードに遷移することができるようになっている。
また、状態遷移表80では、「他のノードヘの遷移確率」の欄における「遷移先ノード」の行にそのノードNODE0〜 NODEnから遷移できるノード名が列記されていると共に、「入力イベント名」、「データ値」及び「データの範囲」の列に記述された全ての条件が揃ったときに遷移できる他の各ノードNODE0〜NODEnへの遷移確率が「他のノードヘの遷移確率」の欄内の対応する箇所にそれぞれ記述され、そのノードNODE0〜NODEnに遷移する際に出力すべき行動が「他のノードヘの遷移確率」の欄における「出力行動」の行に記述されている。なお、「他のノードヘの遷移確率」の欄における各行の確率の和は100[%]となっている。
したがって、図40の状態遷移表80で表されるノードNODE100では、例えば「ボールを検出(BALL)」し、そのボールの「SIZE(大きさ)」が「0から1000」の範囲であるという認識結果が与えられた場合には、「30[%]」の確率で「ノードNODE120(node 120)」に遷移でき、そのとき「ACTION1」の行動が出力されることとなる。
各行動モデル701〜70nは、それぞれこのような状態遷移表80として記述されたノードNODE0〜 NODEnがいくつも繋がるようにして構成されており、入力セマンティクスコンバータモジュール59から認識結果が与えられたときなどに、対応するノードNODE0〜NODEnの状態遷移表を利用して確率的に次の行動を決定し、決定結果を行動切換モジュール71に出力するようになされている。
図37に示す行動切換モジュール71は、行動モデルライブラリ70の各行動モデル701〜70nからそれぞれ出力される行動のうち、予め定められた優先順位の高い行動モデル701〜70nから出力された行動を選択し、当該行動を実行すべき旨のコマンド(以下、これを行動コマンドという。)をミドル・ウェア・レイヤ40の出力セマンティクスコンバータモジュール68に送出する。なお、この実施の形態においては、図38において下側に表記された行動モデル701〜70nほど優先順位が高く設定されている。
また、行動切換モジュール71は、行動完了後に出力セマンティクスコンバータモジュール68から与えられる行動完了情報に基づいて、その行動が完了したことを学習モジュール72、感情モデル73及び本能モデル74に通知する。
一方、学習モジュール72は、入力セマンティクスコンバータモジュール59から与えられる認識結果のうち、「叩かれた」や「撫でられた」など、使用者からの働きかけとして受けた教示の認識結果を入力する。
そして、学習モジュール72は、この認識結果及び行動切換モジュール71からの通知に基づいて、「叩かれた(叱られた)」ときにはその行動の発現確率を低下させ、「撫でられた(誉められた)」ときにはその行動の発現確率を上昇させるように、行動モデルライブラリ70における対応する行動モデル701〜70nの対応する遷移確率を変更する。
他方、感情モデル73は、「喜び(joy)」、「悲しみ(sadness)」、「怒り(anger)」、「驚き(surprise)」、「嫌悪(disgust)」及び「恐れ(fear)」の合計6つの情動について、各情動ごとにその情動の強さを表すパラメータを保持している。そして、感情モデル73は、これら各情動のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール59から与えられる「叩かれた」及び「撫でられた」などの特定の認識結果と、経過時間及び行動切換モジュール71からの通知などに基づいて周期的に更新する。
具体的には、感情モデル73は、入力セマンティクスコンバータモジュール59から与えられる認識結果と、そのときのロボット装置1の行動と、前回更新してからの経過時間などに基づいて所定の演算式により算出されるそのときのその情動の変動量を△E[t]、現在のその情動のパラメータ値をE[t]、その情動の感度を表す係数をkeとして、下記式(15)によって次の周期におけるその情動のパラメータ値E[t+1]を算出し、これを現在のその情動のパラメータ値E[t]と置き換えるようにしてその情動のパラメータ値を更新する。また、感情モデル73は、これと同様にして全ての情動のパラメータ値を更新する。
なお、各認識結果や出力セマンティクスコンバータモジュール68からの通知が各情動のパラメータ値の変動量△E[t]にどの程度の影響を与えるかは予め決められており、例えば「叩かれた」といった認識結果は「怒り」の情動のパラメータ値の変動量△E[t]に大きな影響を与え、「撫でられた」といった認識結果は「喜び」の情動のパラメータ値の変動量△E[t]に大きな影響を与えるようになっている。
ここで、出力セマンティクスコンバータモジュール68からの通知とは、いわゆる行動のフィードバック情報(行動完了情報)であり、行動の出現結果の情報であり、感情モデル73は、このような情報によっても感情を変化させる。これは、例えば、「吠える」といった行動により怒りの感情レベルが下がるといったようなことである。なお、出力セマンティクスコンバータモジュール68からの通知は、上述した学習モジュール72にも入力されており、学習モジュール72は、その通知に基づいて行動モデル701〜70nの対応する遷移確率を変更する。
なお、行動結果のフィードバックは、行動切換モジュール71の出力(感情が付加された行動)によりなされるものであってもよい。
一方、本能モデル74は、「運動欲(exercise)」、「愛情欲(affection)」、「食欲(appetite)」及び「好奇心(curiosity)」の互いに独立した4つの欲求について、これら欲求ごとにその欲求の強さを表すパラメータを保持している。そして、本能モデル74は、これらの欲求のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール59から与えられる認識結果や、経過時間及び行動切換モジュール71からの通知などに基づいて周期的に更新する。
具体的には、本能モデル74は、「運動欲」、「愛情欲」及び「好奇心」については、認識結果、経過時間及び出力セマンティクスコンバータモジュール68からの通知などに基づいて所定の演算式により算出されるそのときのその欲求の変動量をΔI[k]、現在のその欲求のパラメータ値をI[k]、その欲求の感度を表す係数kiとして、所定周期で下記式(16)用いて次の周期におけるその欲求のパラメータ値I[k+1]を算出し、この演算結果を現在のその欲求のパラメータ値I[k]と置き換えるようにしてその欲求のパラメータ値を更新する。また、本能モデル74は、これと同様にして「食欲」を除く各欲求のパラメータ値を更新する。
なお、認識結果及び出力セマンティクスコンバータモジュール68からの通知などが各欲求のパラメータ値の変動量△I[k]にどの程度の影響を与えるかは予め決められており、例えば出力セマンティクスコンバータモジュール68からの通知は、「疲れ」のパラメータ値の変動量△I[k]に大きな影響を与えるようになっている。
なお、本実施の形態においては、各情動及び各欲求(本能)のパラメータ値がそれぞれ0から100までの範囲で変動するように規制されており、また係数ke、kiの値も各情動及び各欲求ごとに個別に設定されている。
一方、ミドル・ウェア・レイヤ40の出力セマンティクスコンバータモジュール68は、図36に示すように、上述のようにしてアプリケーション・レイヤ41の行動切換モジュール71から与えられる「前進」、「喜ぶ」、「鳴く」又は「トラッキング(ボールを追いかける)」といった抽象的な行動コマンドを出力系69の対応する信号処理モジュール61〜67に与える。
そしてこれら信号処理モジュール61〜67は、行動コマンドが与えられると当該行動コマンドに基づいて、その行動を行うために対応するアクチュエータ261〜26n(図34)に与えるべきサーボ指令値や、スピーカ24(図34)から出力する音の音声データ及び又は「目」のLEDに与える駆動データを生成し、これらのデータをロボティック・サーバ・オブジェクト32のバーチャル・ロボット33及び信号処理回路14(図34)を順次介して対応するアクチュエータ261〜26n又はスピーカ24又はLEDに順次送出する。
このようにしてロボット装置1においては、制御プログラムに基づいて、自己(内部)及び周囲(外部)の状況や、使用者からの指示及び働きかけに応じた自律的な行動を行うことができるようになされている。この際、ユーザからの指示として音声指示は勿論のこと、上述したように、カードによる動作状態の制御を行うことができる。
1 ロボット装置、101 動作状態制御部、102 撮像部、103 データベース、104 画像認識部、105 制御部、201 画像認識装置、210a,210b 特徴点抽出部、211a,211b 特徴量保持部、212 特徴量比較部、213 モデル姿勢推定部、214 候補対応特徴点ペア選択部
Claims (24)
- 自律的に動作可能なロボット装置において、
個別に識別可能なパターンを有するカードを入力画像として撮像する撮像手段と、
上記カードを示すカード画像と、各カード画像に対応付けられた1以上の付加情報とが登録された記憶手段と、
上記記憶手段に登録されたカード画像と上記入力画像とを比較し、該入力画像に含まれるカードに一致又は類似すると判断されるカード画像を抽出する画像認識手段と、
上記抽出したカード画像に対応付けられた付加情報に基づき動作状態を制御する制御手段と
を有することを特徴とするロボット装置。 - 上記付加情報は、発現する動作を指定する動作指定情報を含む
ことを特徴とする請求項1記載のロボット装置。 - 上記付加情報は、所定の設定を行わせる機能に切替える機能切替情報を含む
ことを特徴とする請求項1記載のロボット装置。 - 上記付加情報は、動作モードを切り替える動作モード切替情報を含む
ことを特徴とする請求項1記載のロボット装置。 - 上記付加情報は、入力として必要となるデータを示す識別情報を含む
ことを特徴とする請求項1記載のロボット装置。 - 上記カード画像は、上記パターン及び現在の動作状態に応じて2以上の付加情報が対応付けられたものである
ことを特徴とする請求項1記載のロボット装置。 - 上記画像認識手段により2以上のカード画像が抽出された場合、上記制御手段は、該2以上のカード画像に対応付けられた付加情報に基づき動作状態を制御する
ことを特徴とする請求項1記載のロボット装置。 - 所定の時間内に2以上のカード画像が抽出された場合、上記制御手段は、上記2以上のカード画像に対応付けられた動作を並列して発現させる
ことを特徴とする請求項7記載のロボット装置。 - 上記付加情報は、所定の設定を行わせる機能に切替える機能切替情報及び/又は該所定の設定のために必要となるデータを示す識別情報を有し、
上記機能切替情報に基づき行われる所定の設定は、上記識別情報により設定されるものであって、
上記制御手段は、上記抽出されたカード画像に対応付けられた付加情報が上記機能切替情報である場合、上記識別情報を有する他のカードを提示するよう要求する動作を発現させる
ことを特徴とする請求項7記載のロボット装置。 - 音声出力手段を有し、
上記制御手段は、上記音声出力手段により上記他のカードを提示するよう要求する
ことを特徴とする請求項9記載のロボット装置。 - 上記制御手段は、所定の時間内に上記画像認識手段によりカード画像が抽出されない場合には、上記所定の設定を停止する
ことを特徴とする請求項9記載のロボット装置。 - 上記カード画像は、カードに記載されたパターンと該パターンの姿勢に応じて異なる上記付加情報が設定され、
上記画像認識手段は、上記入力画像に含まれるカードに一致又は類似するカード画像を抽出すると共に、該入力画像に含まれるカードのパターンの姿勢を検出し、
上記制御手段は、上記パターンの姿勢に応じて対応付けられた付加情報に基づき動作状態を制御する
ことを特徴とする請求項1記載のロボット装置。 - 上記画像認識手段は、上記入力画像及び上記カード画像の各々から特徴点を抽出する特徴点抽出手段と、上記入力画像及び上記カード画像の各々について、少なくとも上記特徴点の近傍領域における濃度勾配情報から得られる濃度勾配方向ヒストグラムを特徴量として抽出して保持する特徴量保持手段と、上記入力画像の各特徴点と上記カード画像の各特徴点とを比較し、比較対象となる特徴点同士の上記濃度勾配方向ヒストグラムの一方を濃度勾配方向に巡回的にシフトさせながら求めた該濃度勾配方向ヒストグラム間の距離の最小を該濃度勾配方向ヒストグラム間の最小距離とし、少なくとも該最小距離が所定の閾値以下となる特徴点ペアを候補対応特徴点ペアとして生成する特徴量比較手段と、上記候補対応特徴点ペアを用いて上記入力画像に含まれる上記カードに一致又は類似するカード画像の有無を検出する推定手段とを有する
ことを特徴とする請求項1記載のロボット装置。 - 自律的に動作可能なロボット装置の制御方法において、
個別に識別可能なパターンを有するカードを入力画像として撮像する撮像工程と、
上記カードを示すカード画像と、各カード画像に対応付けられた1以上の付加情報とが登録された記憶手段に記憶された各カード画像と上記入力画像とを比較し、該入力画像に含まれるカードに一致又は類似すると判断されるカード画像を抽出する画像認識工程と、
上記抽出したカード画像に対応付けられた付加情報に基づき動作状態を制御する制御工程と
を有することを特徴とするロボット装置の制御方法。 - 上記付加情報は、発現する動作を指定する動作指定情報を含む
ことを特徴とする請求項14記載のロボット装置の制御方法。 - 上記付加情報は、所定の設定を行わせる機能に切替える機能切替情報を含む
ことを特徴とする請求項14記載のロボット装置の制御方法。 - 上記付加情報は、動作モードを切り替える動作モード切替情報を含む
ことを特徴とする請求項14記載のロボット装置の制御方法。 - 上記付加情報は、入力として必要となるデータを示す識別情報を含む
ことを特徴とする請求項14記載のロボット装置の制御方法。 - 上記カード画像は、上記パターン及び現在の動作状態に応じて2以上の付加情報が対応付けられたものである
ことを特徴とする請求項14記載のロボット装置の制御方法。 - 上記画像認識工程にて2以上のカード画像が抽出された場合、上記制御工程では、該2以上のカード画像に対応付けられた付加情報に基づき動作状態を制御する
ことを特徴とする請求項14記載のロボット装置の制御方法。 - 所定の時間内に2以上のカード画像が抽出された場合、上記制御工程では、上記2以上のカード画像に対応付けられた動作を並列して発現させる
ことを特徴とする請求項20記載のロボット装置の制御方法。 - 上記付加情報は、所定の設定を行わせる機能に切替える機能切替情報及び/又は該所定の設定のために必要となるデータを示す識別情報を有し、
上記機能切替情報に基づき行われる所定の設定は、上記識別情報により設定されるものであって、
上記制御工程では、上記抽出されたカード画像に対応付けられた付加情報が上記機能切替情報である場合、上記識別情報を有する他のカードを提示するよう要求する動作を発現させる
ことを特徴とする請求項20記載のロボット装置の制御方法。 - 上記カード画像は、カードに記載されたパターンと該カードの姿勢に応じて異なる上記付加情報が設定され、
上記画像認識工程では、上記入力画像に含まれるカードに一致又は類似するカード画像を抽出すると共に、該入力画像に含まれるカードのパターンの姿勢を検出し、
上記制御工程では、上記パターンの姿勢に応じて対応付けられた付加情報に基づき動作状態を制御する
ことを特徴とする請求項14記載のロボット装置の制御方法。 - 所定の動作を自律的に動作可能なロボット装置が備えるコンピュータに実行させるためのプログラムが記録されたコンピュータ読み取り可能な記録媒体であって、
個別に識別可能なパターンを有するカードを入力画像として撮像する撮像工程と、
上記カードを示すカード画像と、各カード画像に対応付けられた1以上の付加情報とが登録された記憶手段に記憶された各カード画像と上記入力画像とを比較し、該入力画像に含まれるカードに一致又は類似すると判断されるカード画像を抽出する画像認識工程と、
上記抽出したカード画像に対応付けられた付加情報に基づき動作状態を制御する制御工程とを有するプログラムが記録された記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003307925A JP2005074562A (ja) | 2003-08-29 | 2003-08-29 | ロボット装置、ロボット装置の制御方法、及び記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003307925A JP2005074562A (ja) | 2003-08-29 | 2003-08-29 | ロボット装置、ロボット装置の制御方法、及び記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005074562A true JP2005074562A (ja) | 2005-03-24 |
Family
ID=34410567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003307925A Withdrawn JP2005074562A (ja) | 2003-08-29 | 2003-08-29 | ロボット装置、ロボット装置の制御方法、及び記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005074562A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008171411A (ja) * | 2006-12-13 | 2008-07-24 | Canon Inc | 動的なコネクタ解析のための方法及び装置 |
JP2010055195A (ja) * | 2008-08-26 | 2010-03-11 | Sony Corp | 画像処理装置および方法、並びにプログラム |
WO2010055991A1 (ko) * | 2008-11-13 | 2010-05-20 | 주식회사 로보로보 | 아동용 교육 로봇 장치 및 이의 작동방법 |
WO2012172721A1 (ja) * | 2011-06-14 | 2012-12-20 | パナソニック株式会社 | ロボット装置、ロボット制御方法、及びロボット制御プログラム |
KR101266374B1 (ko) * | 2009-12-31 | 2013-05-22 | 한국기술교육대학교 산학협력단 | 비전시스템 접목형 보행로봇의 모션 수행 방법 |
-
2003
- 2003-08-29 JP JP2003307925A patent/JP2005074562A/ja not_active Withdrawn
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008171411A (ja) * | 2006-12-13 | 2008-07-24 | Canon Inc | 動的なコネクタ解析のための方法及び装置 |
JP4623676B2 (ja) * | 2006-12-13 | 2011-02-02 | キヤノン株式会社 | 動的なコネクタ解析のための方法、装置及び記憶媒体 |
US7991233B2 (en) | 2006-12-13 | 2011-08-02 | Canon Kabushiki Kaisha | Method and apparatus for dynamic connector analysis |
JP2010055195A (ja) * | 2008-08-26 | 2010-03-11 | Sony Corp | 画像処理装置および方法、並びにプログラム |
JP4547639B2 (ja) * | 2008-08-26 | 2010-09-22 | ソニー株式会社 | 画像処理装置および方法、並びにプログラム |
WO2010055991A1 (ko) * | 2008-11-13 | 2010-05-20 | 주식회사 로보로보 | 아동용 교육 로봇 장치 및 이의 작동방법 |
KR101266374B1 (ko) * | 2009-12-31 | 2013-05-22 | 한국기술교육대학교 산학협력단 | 비전시스템 접목형 보행로봇의 모션 수행 방법 |
WO2012172721A1 (ja) * | 2011-06-14 | 2012-12-20 | パナソニック株式会社 | ロボット装置、ロボット制御方法、及びロボット制御プログラム |
JP5172049B2 (ja) * | 2011-06-14 | 2013-03-27 | パナソニック株式会社 | ロボット装置、ロボット制御方法、及びロボット制御プログラム |
US8583287B2 (en) | 2011-06-14 | 2013-11-12 | Panasonic Corporation | Robotic system, robot control method and robot control program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102497042B1 (ko) | 사용자 행동을 바탕으로 반응하는 로봇 및 그의 제어 방법 | |
JP3945279B2 (ja) | 障害物認識装置、障害物認識方法、及び障害物認識プログラム並びに移動型ロボット装置 | |
JP2005078375A (ja) | 方向認識装置、方向認識方法、方向認識システム及びロボット装置 | |
JP4032793B2 (ja) | 充電システム及び充電制御方法、ロボット装置、及び充電制御プログラム及び記録媒体 | |
KR102275300B1 (ko) | 이동 로봇 및 그 제어방법 | |
JP3855812B2 (ja) | 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 | |
JP4609584B2 (ja) | ロボット装置、顔認識方法及び顔認識装置 | |
US7532743B2 (en) | Object detector, object detecting method and robot | |
US7133744B2 (en) | Information processing apparatus and method, program storage medium, and program | |
JP2020161141A (ja) | 移動ロボット及びその制御方法 | |
US20120232891A1 (en) | Speech communication system and method, and robot apparatus | |
EP1151779A2 (en) | Robot and action deciding method for robot | |
US20200376676A1 (en) | Method of localization using multi sensor and robot implementing same | |
US11540690B2 (en) | Artificial intelligence robot cleaner | |
WO2002041254A1 (fr) | Dispositif robot et procede d'identification faciale, et dispositif et procede d'identification d'images | |
JP2003266345A (ja) | 経路計画装置、経路計画方法及び経路計画プログラム並びに移動型ロボット装置 | |
US20210187732A1 (en) | Artificial intelligence cleaning robot and method thereof | |
JP2003271975A (ja) | 平面抽出方法、その装置、そのプログラム、その記録媒体及び平面抽出装置搭載型ロボット装置 | |
JP2003266349A (ja) | 位置認識方法、その装置、そのプログラム、その記録媒体及び位置認識装置搭載型ロボット装置 | |
US11055341B2 (en) | Controlling method for artificial intelligence moving robot | |
JP2004298975A (ja) | ロボット装置、障害物探索方法 | |
JP2005074562A (ja) | ロボット装置、ロボット装置の制御方法、及び記録媒体 | |
JP4449410B2 (ja) | ロボット装置及びその物体学習方法 | |
US11709499B2 (en) | Controlling method for artificial intelligence moving robot | |
JP2003271958A (ja) | 画像処理方法、その装置、そのプログラム、その記録媒体及び画像処理装置搭載型ロボット装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20061107 |