JP4407244B2 - Robot apparatus and object learning method thereof - Google Patents
Robot apparatus and object learning method thereof Download PDFInfo
- Publication number
- JP4407244B2 JP4407244B2 JP2003381592A JP2003381592A JP4407244B2 JP 4407244 B2 JP4407244 B2 JP 4407244B2 JP 2003381592 A JP2003381592 A JP 2003381592A JP 2003381592 A JP2003381592 A JP 2003381592A JP 4407244 B2 JP4407244 B2 JP 4407244B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- feature
- feature amount
- learning
- group
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Analysis (AREA)
- Manipulator (AREA)
Description
本発明は、ユーザとの対話により環境中に存在する物体の視覚的特徴を学習するロボット装置及びその物体学習方法に関する。 The present invention relates to a robot apparatus that learns visual features of an object that exists in an environment through dialogue with a user and an object learning method thereof.
従来、ロボット装置等に搭載されている物体認識システムには、物体の視覚的特徴を学習する物体学習フェーズと、この学習結果に基づいて学習済みの物体を認識する物体認識フェーズとがある。 Conventionally, an object recognition system mounted on a robot apparatus or the like has an object learning phase for learning visual characteristics of an object and an object recognition phase for recognizing a learned object based on the learning result.
この場合、物体学習フェーズでは、例えば背景や照明環境が既知であるといった理想的な環境の下で、人間が予め選択した学習対象物体を物体認識システムに搭載されたカメラ等によって撮像させ、当該カメラから出力される画像データに基づき、その物体の特徴を装置に学習させる方法が広く用いられている(例えば下記特許文献1を参照)。
In this case, in the object learning phase, for example, under an ideal environment where the background and the lighting environment are known, a learning target object selected in advance by a human is captured by a camera or the like mounted on the object recognition system, and the camera Based on the image data output from the device, a method for causing the apparatus to learn the characteristics of the object is widely used (see, for example,
ところで、一般的にこのような従来の物体学習フェーズでは、前処理として画像領域分割手法を用いて物体領域を抽出し、その結果に基づいて特徴抽出を行うが、実環境のように背景や照明が多様に変化する場合には精度の良い領域分割ができず、満足な物体学習を期待することはできないという問題があった。 By the way, generally in such a conventional object learning phase, an object region is extracted as a pre-processing using an image region dividing method, and feature extraction is performed based on the result. However, there is a problem that satisfactory object learning cannot be expected when region changes in various ways.
また、従来の物体学習フェーズでは、ユーザが例えばキーボード、マウス、或いはタッチパネル等のユーザインターフェースを用いて所定の手続きを踏むことでロボット装置を操作しなければならないという問題があった。その一方で、ロボット装置が一般の家庭環境に入っていくためには、物体学習の際のロボット装置への操作手続きがユーザにとって負担にならないものである必要がある。例えば、対話によりロボット装置に物体を学習させることができれば、ユーザの負担という観点から好ましいと考えられる。 Further, in the conventional object learning phase, there is a problem that the user has to operate the robot apparatus by performing a predetermined procedure using a user interface such as a keyboard, a mouse, or a touch panel. On the other hand, in order for the robot apparatus to enter a general home environment, it is necessary that an operation procedure for the robot apparatus during object learning does not become a burden on the user. For example, it is preferable from the viewpoint of the user's burden if the robot apparatus can learn an object through dialogue.
本発明は、このような従来の実情に鑑みて提案されたものであり、背景が多様に変化する実環境下においても、ユーザとの対話により環境中の物体を精度よく学習するロボット装置及びその物体学習方法を提供することを目的とする。 The present invention has been proposed in view of such conventional situations, and a robot apparatus for accurately learning an object in the environment through dialogue with a user even in an actual environment where the background changes in various ways, and its The object is to provide an object learning method.
上述した目的を達成するために、本発明に係るロボット装置は、環境中に存在する物体の視覚的特徴を学習するロボット装置において、音声を認識し、ユーザから物体学習を開始する旨の指示が音声により与えられたか否かを判断する音声認識手段と、上記音声認識手段により上記ユーザから物体学習を開始する旨の指示が与えられたと判断されると、上記ユーザに対して物体学習の手続きとして学習対象となる学習対象物体を動かしながら提示するよう指示する音声を出力する音声出力手段と、上記学習対象物体を撮像する撮像手段と、撮像した画像中に上記学習対象物体が占める物体領域画像を抽出する画像抽出手段と、上記画像抽出手段により抽出された上記物体領域画像から、複数の特徴量からなる特徴量群を抽出して保持する特徴量保持手段とを備え、上記特徴量保持手段は、上記物体領域画像からの特徴量抽出の結果を評価することで、上記ユーザによる上記学習対象物体が適切な状況下で提示されているか否かを判断し、適切でない状況下で提示されていると判断した場合には、該物体領域画像から抽出された特徴量群を保持せず、上記音声出力手段は、上記ユーザに対して上記学習対象物体を適切な状況下で再提示するよう指示する音声を出力する。 In order to achieve the above-described object, the robot apparatus according to the present invention recognizes voice in a robot apparatus that learns the visual characteristics of an object existing in the environment, and receives an instruction to start object learning from the user. When it is determined that an instruction to start object learning is given from the user by the voice recognition means, the voice recognition means for determining whether or not it is given by voice , An audio output means for outputting a sound for instructing to present a learning target object to be learned while moving, an imaging means for imaging the learning target object, and an object region image occupied by the learning target object in the captured image Extracting image extracting means, and features for extracting and holding a feature quantity group consisting of a plurality of feature quantities from the object region image extracted by the image extracting means And a holding means, the feature quantity retention means, by evaluating the results of feature extraction from the object-area image, whether the learning object by the user is presented under appropriate circumstances If it is determined that it is presented under an inappropriate situation, the feature output group extracted from the object region image is not retained, and the audio output means Outputs a voice instructing the user to re-present under the appropriate circumstances.
ここで、上記画像抽出手段は、撮像した画像から上記学習対象物体を動かす前後で変化のあった領域である動き領域画像を抽出し、該動き領域画像から少なくとも上記学習対象物体を動かした上記ユーザの手部に相当する領域をマスキングして、上記物体領域画像を抽出する。 Here, the image extraction means extracts a motion region image that is a region that has changed before and after moving the learning target object from the captured image, and the user who has moved at least the learning target object from the motion region image The object region image is extracted by masking the region corresponding to the hand portion of the.
このようなロボット装置は、外部環境中に存在する物体の視覚的特徴を学習する際に、先ず学習対象となる学習対象物体を動かしてもらうように音声によりユーザに指示を与える。そして、ユーザがその学習対象物体を動かしている様子を撮像し、撮像画像から学習対象物体の物体領域画像を抽出し、その物体領域画像から特徴量群を抽出して保持する。 When learning such a visual feature of an object existing in the external environment, such a robot apparatus first gives an instruction to the user by voice so that the learning target object to be learned is moved. Then, an image of the user moving the learning target object is picked up, an object region image of the learning target object is extracted from the picked-up image, and a feature amount group is extracted from the object region image and held.
また、このロボット装置は、上記撮像手段によって撮像した入力画像から特徴量群を抽出する特徴量抽出手段と、上記特徴量保持手段に保持されている学習済みの物体の特徴量群と、上記特徴量抽出手段によって抽出された特徴量群とを比較し、上記入力画像中に上記学習済みの物体が存在するか否かを検出する特徴量比較手段とをさらに備えていてもよい。 The robot apparatus further includes a feature amount extracting unit that extracts a feature amount group from an input image captured by the imaging unit, a feature amount group of a learned object held in the feature amount holding unit, and the feature The image processing apparatus may further include a feature amount comparison unit that compares the feature amount group extracted by the amount extraction unit and detects whether or not the learned object exists in the input image.
この場合、このロボット装置は、撮像手段によって撮像した入力画像から特徴量群を抽出し、その特徴量群を特徴量保持手段に保持されている学習済みの物体の特徴量群と比較することで、入力画像中に学習済みの物体が存在するか否かをリアルタイムに検出する。 In this case, the robot apparatus extracts a feature amount group from the input image captured by the imaging unit, and compares the feature amount group with a learned feature amount group held in the feature amount holding unit. Then, it is detected in real time whether or not a learned object exists in the input image.
また、上述した目的を達成するために、本発明に係る物体学習方法は、環境中に存在する物体の視覚的特徴を学習するロボット装置の物体学習方法において、音声を認識し、ユーザから物体学習を開始する旨の指示が音声により与えられたか否かを判断する音声認識工程と、上記音声認識工程にて上記ユーザから物体学習を開始する旨の指示が与えられたと判断されると、上記ユーザに対して物体学習の手続きとして学習対象となる学習対象物体を動かしながら提示するよう指示する音声を出力する提示指示工程と、撮像手段により上記学習対象物体を撮像する撮像工程と、撮像した画像中に上記学習対象物体が占める物体領域画像を抽出する画像抽出工程と、上記画像抽出工程にて抽出された上記物体領域画像から、複数の特徴量からなる特徴量群を抽出して保持する特徴量保持工程とを有し、上記特徴量保持工程では、上記物体領域画像からの特徴量抽出の結果を評価することで、上記ユーザによる上記学習対象物体が適切な状況下で提示されているか否かを判断し、適切でない状況下で提示されていると判断した場合には、該物体領域画像から抽出された特徴量群を保持せず、上記音声出力手段は、上記ユーザに対して上記学習対象物体を適切な状況下で再提示するよう指示する音声を出力する。 In order to achieve the above-described object, the object learning method according to the present invention is an object learning method of a robot apparatus that learns visual features of an object existing in an environment, and recognizes speech and learns an object from a user. A voice recognition step for determining whether or not an instruction to start the object has been given by voice, and if the user gives an instruction to start object learning in the voice recognition step, the user A presentation instruction step for outputting a sound for instructing to move and present a learning target object as a learning target as an object learning procedure, an imaging step for imaging the learning target object by an imaging means, and in the captured image An image extraction step for extracting an object region image occupied by the learning target object, and a plurality of feature amounts from the object region image extracted in the image extraction step Have a feature amount holding step of holding by extracting the symptoms amount group, in the feature amount storing step, to assess the results of feature extraction from the object-area image and the learning target object by the user It is determined whether or not it is presented in an appropriate situation, and if it is judged that it is presented in an inappropriate situation, the voice output is performed without retaining the feature amount group extracted from the object region image. The means outputs a voice instructing the user to re-present the learning target object under an appropriate situation.
ここで、上記画像抽出工程では、撮像した画像から上記学習対象物体を動かす前後で変化のあった領域である動き領域画像を抽出し、該動き領域画像から少なくとも上記学習対象物体を動かした上記ユーザの手部に相当する領域をマスキングして、上記物体領域画像を抽出する。 Here, in the image extraction step, a motion region image that is a region that has changed before and after the learning target object is moved is extracted from the captured image, and at least the learning target object is moved from the motion region image. The object region image is extracted by masking the region corresponding to the hand portion of the.
このような物体学習方法では、ロボット装置が自身の行動する外部環境中に存在する物体の視覚的特徴を学習する際に、先ず学習対象となる学習対象物体を動かしてもらうように音声によりユーザに指示を与える。そして、ロボット装置は、ユーザがその学習対象物体を動かしている様子を撮像し、撮像画像から学習対象物体の物体領域画像を抽出し、その物体領域画像から特徴量群を抽出して保持する。 In such an object learning method, when the robot apparatus learns the visual characteristics of an object existing in the external environment in which the robot apparatus acts, the user first makes a voice call so that the learning target object to be learned is moved. Give instructions. The robot apparatus captures an image of the user moving the learning target object, extracts an object area image of the learning target object from the captured image, and extracts and holds a feature amount group from the object area image.
また、この物体学習方法は、上記撮像手段によって撮像した入力画像から特徴量群を抽出する特徴量抽出工程と、上記特徴量保持工程にて保持された学習済みの物体の特徴量群と、上記特徴量抽出工程にて抽出された特徴量群とを比較し、上記入力画像中に上記学習済みの物体が存在するか否かを検出する特徴量比較工程とをさらに有していてもよい。 Further, the object learning method includes a feature amount extraction step of extracting a feature amount group from the input image captured by the imaging unit, a feature amount group of the learned object held in the feature amount holding step, It may further include a feature amount comparison step of comparing the feature amount group extracted in the feature amount extraction step and detecting whether or not the learned object is present in the input image.
この場合、この物体学習方法では、ロボット装置の撮像手段によって撮像した入力画像から特徴量群を抽出し、その特徴量群を特徴量保持工程にて保持された学習済みの物体の特徴量群と比較することで、入力画像中に学習済みの物体が存在するか否かをリアルタイムに検出する。 In this case, in this object learning method, the feature amount group is extracted from the input image captured by the imaging unit of the robot apparatus, and the feature amount group is stored in the feature amount group of the learned object held in the feature amount holding step. By comparing, it is detected in real time whether there is a learned object in the input image.
本発明に係るロボット装置及びその物体学習方法によれば、ロボット装置が自身の行動する外部環境中に存在する物体の視覚的特徴を学習する際に、先ず学習対象となる学習対象物体を動かしてもらうように音声によりユーザに指示を与え、ユーザがその学習対象物体を動かしている様子を撮像し、撮像画像から学習対象物体の物体領域画像を抽出し、その物体領域画像から特徴量群を抽出して保持することにより、背景が多様に変化する実環境下においても、環境中の物体を精度よく学習することができる。特に、ユーザとの対話を通して物体を学習することができるため、物体を学習させるユーザの負担が少なく、また、ロボット装置のエンターテインメント性も向上する。 According to the robot apparatus and the object learning method of the present invention, when learning the visual characteristics of an object existing in the external environment in which the robot apparatus acts, first, the learning object to be learned is moved. The user is instructed by voice to capture the image of the user moving the learning target object, the object region image of the learning target object is extracted from the captured image, and the feature quantity group is extracted from the object region image In this way, objects in the environment can be accurately learned even in a real environment where the background changes in various ways. In particular, since the object can be learned through dialogue with the user, the burden on the user learning the object is reduced, and the entertainment characteristics of the robot apparatus are also improved.
また、ロボット装置の撮像手段によって撮像した入力画像から特徴量群を抽出し、その特徴量群を予め保持された学習済みの物体の特徴量群と比較することにより、入力画像中に学習済みの物体が存在するか否かをリアルタイムに検出することができる。 In addition, a feature amount group is extracted from the input image captured by the image pickup unit of the robot apparatus, and the feature amount group is compared with the feature amount group of the learned object stored in advance, so that it has been learned in the input image. Whether or not an object exists can be detected in real time.
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、外部環境中に存在する物体を学習する2足歩行タイプのロボット装置に適用したものである。このロボット装置は、住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットであり、人間が行う基本的な動作を表出できるエンターテインメントロボットでもある。 Hereinafter, specific embodiments to which the present invention is applied will be described in detail with reference to the drawings. In this embodiment, the present invention is applied to a biped walking type robot apparatus that learns an object existing in an external environment. This robot apparatus is a practical robot that supports human activities in various situations in the living environment and other daily lives, and is also an entertainment robot that can express basic actions performed by humans.
(1)ロボット装置の構成
図1に示すように、本実施の形態におけるロボット装置1は、体幹部ユニット2の所定の位置に頭部ユニット3が連結されると共に、左右2つの腕部ユニット4R/Lと、左右2つの脚部ユニット5R/Lが連結されて構成されている(但し、R及びLの各々は、右及び左の各々を示す接尾辞である。以下において同じ。)。
(1) Configuration of Robot Device As shown in FIG. 1, in the
このロボット装置1が具備する関節自由度構成を図2に模式的に示す。頭部ユニット3を支持する首関節は、首関節ヨー軸101と、首関節ピッチ軸102と、首関節ロール軸103という3自由度を有している。
The joint degree-of-freedom configuration of the
また、上肢を構成する各々の腕部ユニット4R/Lは、肩関節ピッチ軸107と、肩関節ロール軸108と、上腕ヨー軸109と、肘関節ピッチ軸110と、前腕ヨー軸111と、手首関節ピッチ軸112と、手首関節ロール軸113と、手部114とで構成される。手部114は、実際には、複数本の指を含む多関節・多自由度構造体である。但し、手部114の動作は、ロボット装置1の姿勢制御や歩行制御に対する寄与や影響が少ないので、本明細書ではゼロ自由度と仮定する。したがって、各腕部は7自由度を有するとする。
Each
また、体幹部ユニット2は、体幹ピッチ軸104と、体幹ロール軸105と、体幹ヨー軸106という3自由度を有する。
The
また、下肢を構成する各々の脚部ユニット5R/Lは、股関節ヨー軸115と、股関節ピッチ軸116と、股関節ロール軸117と、膝関節ピッチ軸118と、足首関節ピッチ軸119と、足首関節ロール軸120と、足部121とで構成される。本明細書中では、股関節ピッチ軸116と股関節ロール軸117の交点は、ロボット装置1の股関節位置を定義する。人体の足部121は、実際には多関節・多自由度の足底を含んだ構造体であるが、ロボット装置1の足底は、ゼロ自由度とする。したがって、各脚部は、6自由度で構成される。
Each
以上を総括すれば、ロボット装置1全体としては、合計で3+7×2+3+6×2=32自由度を有することになる。但し、エンターテインメント向けのロボット装置1が必ずしも32自由度に限定されるわけではない。設計・制作上の制約条件や要求仕様等に応じて、自由度すなわち関節数を適宜増減することができることはいうまでもない。
In summary, the
上述したようなロボット装置1がもつ各自由度は、実際にはアクチュエータを用いて実装される。外観上で余分な膨らみを排してヒトの自然体形状に近似させること、2足歩行という不安定構造体に対して姿勢制御を行うことなどの要請から、アクチュエータは小型且つ軽量であることが好ましい。
Each degree of freedom of the
図3には、ロボット装置1の制御システム構成を模式的に示している。図3に示すように、制御システムは、ユーザ入力などに動的に反応して情緒判断や感情表現を司る思考制御モジュール200と、アクチュエータ350の駆動などロボット装置1の全身協調運動を制御する運動制御モジュール300とで構成される。
FIG. 3 schematically shows a control system configuration of the
思考制御モジュール200は、情緒判断や感情表現に関する演算処理を実行するCPU(Central Processing Unit)211や、RAM(Random Access Memory)212、ROM(Read Only Memory)213、及び外部記憶装置(ハード・ディスク・ドライブなど)214で構成され、モジュール内で自己完結した処理を行うことができる独立駆動型の情報処理装置である。
The
この思考制御モジュール200は、画像入力装置251から入力される画像データや音声入力装置252から入力される音声データなど、外界からの刺激などに従って、ロボット装置1の現在の感情や意思を決定する。ここで、画像入力装置251は、例えばCCD(Charge Coupled Device)カメラを左右に1つずつ備えており、また、音声入力装置252は、例えばマイクロホンを複数備えている。また、思考制御モジュール200は、スピーカを備える音声出力装置253を介して、音声を出力することができる。
The
また、思考制御モジュール200は、意思決定に基づいた動作又は行動シーケンス、すなわち四肢の運動を実行するように、運動制御モジュール300に対して指令を発行する。
In addition, the
一方の運動制御モジュール300は、ロボット装置1の全身協調運動を制御するCPU311や、RAM312、ROM313、及び外部記憶装置(ハード・ディスク・ドライブなど)314で構成され、モジュール内で自己完結した処理を行うことができる独立駆動型の情報処理装置である。外部記憶装置314には、例えば、オフラインで算出された歩行パターンや目標とするZMP軌道、その他の行動計画を蓄積することができる。ここで、ZMPとは、歩行中の床反力によるモーメントがゼロとなる床面上の点のことであり、また、ZMP軌道とは、例えばロボット装置1の歩行動作期間中にZMPが動く軌跡を意味する。なお、ZMPの概念並びにZMPを歩行ロボットの安定度判別規範に適用する点については、Miomir Vukobratovic 著“LEGGED LOCOMOTION ROBOTS”(加藤一郎外著『歩行ロボットと人工の足』(日刊工業新聞社))に記載されている。
One
運動制御モジュール300には、図2に示したロボット装置1の全身に分散するそれぞれの関節自由度を実現するアクチュエータ350、体幹部ユニット2の姿勢や傾斜を計測する姿勢センサ351、左右の足底の離床又は着床を検出する接地確認センサ352,353、バッテリなどの電源を管理する電源制御装置354などの各種の装置が、バス・インターフェース(I/F)301経由で接続されている。ここで、姿勢センサ351は、例えば加速度センサとジャイロ・センサの組み合わせによって構成され、接地確認センサ352,353は、近接センサ又はマイクロ・スイッチなどで構成される。
The
思考制御モジュール200と運動制御モジュール300は、共通のプラットフォーム上で構築され、両者間はバス・インターフェース201,301を介して相互接続されている。
The
運動制御モジュール300では、思考制御モジュール200から指示された行動を体現すべく、各アクチュエータ350による全身協調運動を制御する。すなわち、CPU311は、思考制御モジュール200から指示された行動に応じた動作パターンを外部記憶装置314から取り出し、又は内部的に動作パターンを生成する。そして、CPU311は、指定された動作パターンに従って、足部運動、ZMP軌道、体幹運動、上肢運動、腰部水平位置及び高さなどを設定すると共に、これらの設定内容に従った動作を指示する指令値を各アクチュエータ350に転送する。
The
また、CPU311は、姿勢センサ351の出力信号によりロボット装置1の体幹部ユニット2の姿勢や傾きを検出すると共に、各接地確認センサ352,353の出力信号により各脚部ユニット5R/Lが遊脚又は立脚の何れの状態であるかを検出することによって、ロボット装置1の全身協調運動を適応的に制御することができる。
In addition, the
また、CPU311は、ZMP位置が常にZMP安定領域の中心に向かうように、ロボット装置1の姿勢や動作を制御する。
Further, the
さらに、運動制御モジュール300は、思考制御モジュール200において決定された意思通りの行動がどの程度発現されたか、すなわち処理の状況を、思考制御モジュール200に返すようになっている。
Furthermore, the
このようにしてロボット装置1は、制御プログラムに基づいて自己及び周囲の状況を判断し、自律的に行動することができる。
In this way, the
(1−2)ロボット装置の音声対話機能
次に、上述したロボット装置1が有する音声対話機能について、図4の機能ブロック図を用いて説明する。
(1-2) Voice Dialog Function of Robot Device Next, the voice dialog function of the
図4に示すように、ロボット装置1の音声対話機能に関する部分は、ユーザの発話を音声認識する音声認識部400と、この音声認識部400の認識結果に基づいて、複数種類の応答を生成する応答生成部410と、応答生成部410が生成した複数種類の応答の中から1つの応答を選択する対話制御部420と、対話制御部420により選択された応答の音声信号を生成する音声合成部430とで構成される。
As shown in FIG. 4, the part related to the voice interaction function of the
音声認識部400は、音声入力装置252(図3)から入力される音声データD1に基づいてユーザの発話内容を音声認識し、この認識結果を文字列のデータ(以下、「認識文字列データ」という。)D2として対話制御部420を介して応答制御部410に供給する。なお、認識文字列データD2には、認識処理時に得られたイントネーションやアクセント等の韻律情報などのパラ原語も含まれ、例えばユーザ発話の語尾の韻律が何かの質問をするときの韻律であると判断された場合には、「?」という文字がその発話に対する一連の文字列の最後尾に付加される。
The
応答生成部410は、ユーザの発話に対して各種応答を生成する応答生成モジュール410a,410b・・・から構成される。各応答生成モジュール410a,410b・・・は、それぞれユーザの発話内容に応じてどのような応答を返すべきかを予め規定したルール(以下、「応答生成ルール」という。)のデータを有しており、音声認識部400から認識文字列データD2が供給されると、対応する応答生成ルールに従って、この認識文字列データD2に基づき得られるユーザの発話内容に対する応答を生成し、その文字列データ(以下、「応答文字列データ」という。)D3a,D3b・・・を対話制御部420に供給する。
The
対話制御部420は、応答生成部410の応答生成モジュール410a,410b・・・から応答文字列データD3a,D3b・・・が供給されると、そのうちの1つを選択し、応答データD4として音声合成部430に供給する。
When the response character string data D3a, D3b,... Are supplied from the
音声合成部430は、対話制御部420から供給される応答データD4に基づいて音声合成処理を行うことにより音声信号D5を生成し、これを音声出力装置(図3)に出力する。この結果、この音声信号D5に基づいて、かかる応答データD4に応じた応答がロボット装置1から外部に出力される。
The
(1−3)ロボット装置の自律行動機能
続いて、上述したロボット装置1が有する自律行動機能について、図5の模式図を用いて説明する。図5において、丸で表されているのがオブジェクト又はプロセスと呼ばれるエンティティである。このオブジェクト同士が非同期に通信し合うことで、システム全体が動作する。各オブジェクトは、メッセージ通信と共有メモリを使用したオブジェクト間通信とにより、データの受け渡し及びInvokeを行っている。
(1-3) Autonomous Behavior Function of Robot Device Subsequently, the autonomous behavior function of the
図5に示すように、ロボット装置1の自律行動機能に関する部分は、キネマティックオドメトリ(Kinematics Odometry)KINE500と、平面抽出部(Plane Extractor)PLEX510と、グリッド占有率算出部(Occupancy Grid)OG520と、ランドマークセンサ部(Landmark Sensor)CLS530と、絶対座標算出部(Localization)LZ540と、経路計画決定部(Situated Behavior Layer)SBL550とで構成され、各オブジェクト単位にて処理がなされる。この各オブジェクトの動作について、図6のフローチャートを用いて詳細に説明する。
As shown in FIG. 5, the part relating to the autonomous behavior function of the
図5に示すキネマティックオドメトリKINE500には、左右のCCDカメラで撮像した画像データD11及びロボット装置1の関節角等のセンサデータD12が入力される。ステップS1において、キネマティックオドメトリKINE500は、これらの画像データD11及びセンサデータD12を受け取り、メモリに格納されていたそれまでの画像データ及びセンサデータを更新する。
The
次にステップS2において、キネマティックオドメトリKINE500は、画像データD11とセンサデータD12との時間的な対応を取る。具体的には、画像データD11の画像が撮像された時間におけるセンサデータD12の関節角を割り出す。
Next, in step S2,
続いてステップS3において、キネマティックオドメトリKINE500は、この関節角のデータを使用してロボット装置1を中心としたロボット中心座標系を頭部ユニット3に設けられたCCDカメラを中心としたカメラ座標系に変換する。この際、キネマティックオドメトリKINE500は、ロボット中心座標系からカメラ座標系の同次変換行列等を導出し、この同次変換行列D13とこれに対応する画像データとを画像認識を行うオブジェクトに供給する。具体的には、同次変換行列D13及び左右の画像データから得られた視差画像データD14を平面抽出部PLEX510に供給し、同次変換行列D13及び画像データD15をランドマークセンサ部CLS530に供給する。また、キネマティックオドメトリKINE500は、センサデータD12から得られる歩行パラメータと接地確認センサ352,353(図3)を使用した歩数のカウント値とからロボット装置1の移動量を求め、ロボット装置1のロボット中心座標系における移動量(以下、「オドメトリ」ともいう。)を算出する。キネマティックオドメトリKINE500は、このオドメトリD16をグリッド占有率算出部OG520及び絶対座標算出部LZ540に供給する。
Subsequently, at step S3, the
続いてステップS4,S5において、平面抽出部PLEX510及びグリッド占有率算出部OG520は、障害物のグリッド占有率(環境地図)を算出・更新し、ランドマークセンサ部CLS510及び絶対座標算出部LZ540は、絶対座標を算出・更新する。
Subsequently, in steps S4 and S5, the plane
ここで、このステップS4,S5での平面抽出部PLEX510及びグリッド占有率算出部OG520における処理と、ランドマークセンサ部CLS530及び絶対座標算出部LZ540における処理とは、それぞれ図7(A),(B)に示すように、同時並行的に行われるものである。
Here, the processing in the plane
すなわち、障害物グリッドを算出・更新する場合、平面抽出部PLEX510は、先ず図7(A)のステップS11において、キネマティックオドメトリKINE500にて算出されたキネマティックスデータである同次変換行列D13と、これに対応する視差画像データD14とが入力されると、それまでメモリに格納されていたこれらのデータを更新する。
That is, when the obstacle grid is calculated / updated, the plane
次にステップS12において、平面抽出部PLEX510は、CCDカメラのキャリブレーションパラメータ等を使用して視差画像データD14から3次元の位置データ(レンジデータ)を算出する(例えば特開2000−350239号公報を参照)。平面抽出部PLEX510は、このレンジデータからハフ変換等を使用して、例えば壁やテーブル等の平面を除く平面を平面として抽出する。そしてステップS13において、平面抽出部PLEX510は、同次変換行列D13からロボット装置1の足底が接地している平面との対応を取って床面を選択し、床面上にない点、例えば所定の閾値よりも高い位置にあるもの等を障害物として検出し、この障害物情報D17をグリッド占有率算出部520に供給する。
Next, in step S12, the plane
続いてステップS14において、グリッド占有率算出部OG520は、キネマティックオドメトリKINE500にて算出されたオドメトリと、平面抽出部PLEX510にて算出された障害物の観測情報(障害物情報)とが入力されると、メモリに格納されていたそれまでのデータを更新する。そしてステップS15において、グリッド占有率算出部OG520は、床面上に障害物があるか否かの確率を保持する障害物のグリッド占有率を確率的手法により更新する。 Subsequently, in step S14, the grid occupancy rate calculation unit OG520 receives the odometry calculated by the kinematic odometry KINE500 and the observation information (obstacle information) of the obstacle calculated by the plane extraction unit PLEX510. And the previous data stored in the memory is updated. In step S15, the grid occupancy rate calculation unit OG520 updates the grid occupancy rate of the obstacle that holds the probability of whether there is an obstacle on the floor surface by a probabilistic method.
このグリッド占有率算出部OG520は、ロボット装置1を中心とした例えば周囲4mの障害物情報(障害物のグリッド占有率)を示す環境地図と、ロボット装置1が向く方角を示す姿勢情報とを保持している。ここで、環境地図は、例えば図8に示すように、ロボット装置1を中心とした周囲の環境が複数のグリッドに分割されたものであり、各グリッドは、障害物が存在するグリッド(図中黒色で表されるグリッド)と、障害物が存在しないグリッド(図中白色で表されるグリッド)と、未観測のグリッド(図中斜線で表されるグリッド)とに分類される。グリッド占有率算出部OG520は、このような環境地図を更新し、更新した認識結果(障害物情報D19)を経路計画決定部SBL550に供給することにより、上位レイヤ、すなわち経路計画決定部SBL550にて障害物を回避する計画を作成することができる(例えば「佐部、大橋、河本、グットマン、福地、芦ヶ原、『二足歩行ロボットによるステレオ画像を用いた障害物回避と歩行計画』、第8回画像センシングシンポジウム講演論文集 p.237−242」を参照)。
The grid occupancy rate calculation unit OG520 holds, for example, an environment map indicating obstacle information (grid occupancy rate of obstacles) around 4m around the
一方、絶対座標を算出・更新する場合、ランドマークセンサ部CLS530は、先ずステップS21において、キネマティックオドメトリKINE500からキネマティックスデータである同次変換行列D13及び画像データD15が入力されると、予めメモリ内に格納されていたこれらのデータを更新する。そして、画像データD15の画像処理を行って、予め認識しているカラーランドマークを検出する。このカラーランドマークの画像データD15上での位置及び大きさをカメラ座標系での位置に変換する。さらにステップS22において、ランドマークセンサ部CLS530は、同次変換行列D13を使用してカラーランドマークのカメラ座標系での位置をロボット中心座標系における位置に変換し、ロボット中心座標系におけるカラーランドマーク位置の情報(カラーランドマーク相対位置情報)D18を絶対座標算出部LZ540に供給する。
On the other hand, when calculating / updating the absolute coordinates, the landmark
すなわち、ランドマークセンサ部CLS530は、例えば、グリーン、ピンク、又はブルー等のカラーを有する人工的なカラーランドマークを含む環境において、ロボット装置1のセンサ情報とロボット装置1が行った動作情報とによって、ロボット装置1の自己位置(位置及び姿勢)を同定する。
That is, the landmark
続いてステップS23において、絶対座標算出部LZ540は、キネマティックオドメトリKINE500からのオドメトリD16とランドマークセンサ部CLS530からのカラーランドマーク相対位置情報D18とが入力されると、予めメモリ内に格納されていたこれらのデータを更新する。 Subsequently, in step S23, when the odometry D16 from the kinematic odometry KINE500 and the color landmark relative position information D18 from the landmark sensor unit CLS530 are input, the absolute coordinate calculation unit LZ540 is stored in the memory in advance. Update these data.
続いてステップS24において、絶対座標算出部LZ540は、予め認識しているカラーランドマークの絶対座標(カメラ座標系での位置)、カラーランドマーク相対位置情報D18及びオドメトリD16を使用し、確率的手法によりロボット装置1の絶対座標(カメラ座標系での位置)を算出する。そして、この絶対座標位置D20を経路計画決定部SBL550に供給する。
Subsequently, in step S24, the absolute coordinate calculation unit LZ540 uses the absolute coordinates (positions in the camera coordinate system) of the color landmarks recognized in advance, the color landmark relative position information D18, and the odometry D16, and uses the probabilistic method. Thus, the absolute coordinate (position in the camera coordinate system) of the
図6に戻って、経路計画決定部SBL550は、グリッド占有率算出部OG520から障害物情報D19が入力され、絶対座標算出部LZ540から絶対座標位置D20が入力されると、予めメモリに格納されていたこれらのデータを更新する。そして、ステップS6において、経路計画決定部SBL550は、グリッド占有率算出部OG520からの障害物情報D19により、ロボット装置1の周囲に存在する障害物に関する認識結果を取得し、絶対座標算出部LZ540から現在のロボット装置1の絶対座標を取得することにより、カメラ座標系又はロボット中心座標系で与えられた目標地点に対して障害物に衝突せずに歩行可能な経路を生成し、経路に応じて経路を遂行する動作コマンドを発行する。すなわち、入力データから状況に応じてロボット装置1が取るべき行動を決定し、その行動列を出力する。
Returning to FIG. 6, when the obstacle information D19 is input from the grid occupancy rate calculation unit OG520 and the absolute coordinate position D20 is input from the absolute coordinate calculation unit LZ540, the route plan determination unit SBL550 is stored in the memory in advance. Update these data. In step S6, the route plan determination unit SBL550 acquires the recognition result regarding the obstacle existing around the
(2)物体認識システム
次に、上述したロボット装置1に搭載される物体認識システムについて説明する。この物体認識システムの動作には、未知の物体の視覚的特徴を学習する物体学習フェーズと、この学習結果に基づいて学習済みの物体を認識する物体認識フェーズとがある。
(2) Object recognition system Next, the object recognition system mounted in the
ここで、ロボット装置1が行動するような実環境において物体を学習・認識する場合には、視点や照明環境の変化に頑強な物体認識手法が必要とされる。そこで、本実施の形態では、このような物体認識手法の一例として、本件出願人が先に提案した特願2003−124225の明細書及び図面に記載された手法を用いることとし、これから学習しようとする物体の画像(以下、適宜「モデル画像」という。)と入力画像(以下、適宜「オブジェクト画像」という。)とから特徴点及びその特徴量を抽出し、類似する特徴量を有する特徴点のペア(候補対応特徴点ペア)を生成して、生成された候補対応特徴点ペア群を用いてオブジェクト画像中のモデル、すなわち入力画像中の既学習物体を認識する。
Here, when learning and recognizing an object in an actual environment in which the
なお、実際には、物体学習フェーズにおいて、複数のモデル画像の各特徴点における特徴量を予め学習しておき、物体認識フェーズにおいて、入力されたオブジェクト画像の特徴点における特徴量と複数のモデル画像についての特徴量とを比較し、オブジェクト画像中のモデルを検出するが、以下では、先ず、物体学習フェーズにおけるモデル画像からの特徴量抽出と物体認識フェーズにおけるオブジェクト画像からの特徴量抽出とを並行して行うものとして説明する。 In practice, in the object learning phase, feature quantities at each feature point of a plurality of model images are learned in advance, and in the object recognition phase, feature quantities at the feature points of the input object image and a plurality of model images In the following, the feature amount extraction from the model image in the object learning phase and the feature amount extraction from the object image in the object recognition phase are performed in parallel below. Will be described.
本実施の形態における物体認識システムの概略構成を図9に示す。図9に示す物体認識システム600において、特徴点抽出部610a,610bは、モデル画像及びオブジェクト画像からそれぞれモデル特徴点及びオブジェクト特徴点を抽出し、特徴量保持部620a,620bは、抽出された各特徴点について後述する特徴量を抽出し、特徴点の位置情報と共に保持する。そして特徴量比較部630は、各モデル特徴点の特徴量と各オブジェクト特徴点の特徴量とを比較して類似度又は相違度を計算し、この類似尺度を用いて特徴量が類似する、すなわち対応する可能性の高いモデル特徴点及びオブジェクト特徴点のペア(候補対応特徴点ペア)を生成する。
FIG. 9 shows a schematic configuration of the object recognition system in the present embodiment. In the
モデル姿勢推定部640は、生成された候補対応特徴点ペア群を用いてオブジェクト画像上のモデルの有無を検出し、「モデル有」の判定結果の場合には、「検出されるモデルはオブジェクト画像上へのアフィン変換による画像変形が施されている」という拘束条件の下、候補対応特徴点ペア群からランダムに選択した3ペアにより決定されるアフィン変換パラメータをパラメータ空間に投射する操作を繰り返し、パラメータ空間上で形成されたクラスタのうち最多メンバ数を持つクラスタの各メンバを真の特徴点ペア(インライヤ)とし、このインライヤを用いた最小自乗推定によりアフィン変換パラメータを求める。そして、モデル姿勢推定部640は、このアフィン変換パラメータで決定されるモデル姿勢をモデル認識結果として出力する。
The model
以下、上記物体認識システム600の各ブロックについて詳細に説明する。なお、以下では、画像の水平方向をX軸、垂直方向をY軸として説明する。
Hereinafter, each block of the
特徴点抽出部610a,610bは、特徴点抽出対象画像(モデル画像又はオブジェクト画像)に対し、先ず平滑化フィルタリング、例えば以下の式(1)で示す2次元ガウス関数による畳み込み積(ガウスフィルタリング)と、双2次線形補間リサンプリングによる画像縮小とを繰り返し交互に適用することで、画像の多重解像度ピラミッド構造を構築する。ここで、リサンプリングファクタとしては、式(1)のガウスフィルタで用いたσを用いる。
The feature
すなわち、図10に示すように、例えば入力画像Iにσ=√2であるガウスフィルタg(x、y)を施すことにより第1レベル(最高解像度)の画像I1を生成し、さらにガウスフィルタを施すことにより画像g*I1を生成する。そして、この画像g*I1をリサンプリングしてガウスフィルタを施すことにより第2レベルの画像I2,g*I2を生成し、同様にして画像g*I2から第3レベルの画像I3,g*I3を生成する。 That is, as shown in FIG. 10, for example, a first level (highest resolution) image I 1 is generated by applying a Gaussian filter g (x, y) with σ = √2 to the input image I, and further a Gaussian filter. To generate an image g * I 1 . Then, the second level images I 2 and g * I 2 are generated by resampling the image g * I 1 and applying a Gaussian filter. Similarly, the third level image I is generated from the image g * I 2 . 3 , g * I 3 is generated.
続いて、特徴点抽出部610a,610bは、各レベル(各解像度)の画像に対して、DoG(Difference of Gaussian)フィルタを適用する。このDoGフィルタは、画像の輪郭強調のために用いられる2次微分フィルタの一種であり、人間の視覚系で網膜からの情報が外側膝状体で中継されるまでに行われている処理の近似モデルとして、LoG(Laplacian of Gaussian)フィルタと共によく用いられるものである。DoGフィルタの出力は、2つのガウスフィルタ出力画像の差分を取ることにより容易に得られる。すなわち、図10に示すように、第1レベルの画像について画像DI1(=I1−g*I1)が得られ、第2レベル,第3レベルの画像について画像DI2(=I2−g*I2),画像DI3(=I3−g*I3)が得られる。
Subsequently, the feature
そして、特徴点抽出部610a,610bは、各レベルにおけるDoGフィルタ出力画像DI1,DI2,DI3・・・の局所点(局所極大点及び局所極小点)のうち、所定の範囲内の解像度変化によって位置の変化がないような点を特徴点として検出する。これにより、画像の拡大縮小操作に対してロバストな特徴点間のマッチングが実現できる。
Then, the feature
ここで、多重解像度ピラミッド構造の第Lレベル、すなわちσの(L−1)乗ファクタまでの解像度変化によって位置の変化がないような特徴点を検出する際の処理について図11のフローチャートを用いて説明する。 Here, processing for detecting a feature point whose position does not change due to a change in resolution up to the Lth level of the multi-resolution pyramid structure, that is, a factor up to the (L−1) th power factor of σ will be described with reference to the flowchart of FIG. explain.
先ずステップS31において、第1レベル(最高解像度)におけるDoGフィルタ出力画像DI1の局所点(局所極大点及び局所極小点)を検出する。なお、局所近傍としては、例えば3×3直接近傍を用いることができる。 First, in step S31, local points (local maximum points and local minimum points) of the DoG filter output image DI 1 at the first level (maximum resolution) are detected. For example, a 3 × 3 direct neighborhood can be used as the local neighborhood.
次にステップS32において、検出された各局所点について、その1つ上位レベル(解像度の1つ低い層)における対応点を解像度減少に伴う画像縮小を考慮して求め、この対応点が局所点か否かを判別する。局所点である場合(Yes)にはステップS33に進み、局所点でない場合(No)には探索を終了する。 Next, in step S32, for each detected local point, a corresponding point at the one higher level (one lower resolution layer) is obtained in consideration of image reduction accompanying resolution reduction. Determine whether or not. If it is a local point (Yes), the process proceeds to step S33, and if it is not a local point (No), the search is terminated.
続いてステップS33では、第Lレベルまで探索が成功したか否かを判別する。第Lレベルまで探索を行っていない場合(No)にはステップS32に戻ってさらに上位レベルの探索を行い、第Lレベルまで探索が成功した場合(Yes)には特徴点であるとして、ステップS34においてその位置情報を保持する。 Subsequently, in step S33, it is determined whether or not the search has been successful up to the Lth level. If the search has not been performed up to the L-th level (No), the process returns to step S32 to perform a higher-level search. If the search has been successful up to the L-th level (Yes), the feature point is determined to be a feature point. The position information is held at.
例えば第3レベルまでの解像度変化によって位置の変化がないような特徴点を検出する場合、図12に示すように、第1レベルの画像DI1において検出された局所点FP1,FP2のうち、FP1は第3レベルの画像DI3まで対応点が存在するため特徴点とされ、FP2は第2レベルまでしか対応点が存在しないため特徴点でないとされる。 For example, when detecting a feature point whose position does not change due to a resolution change up to the third level, as shown in FIG. 12, among the local points FP 1 and FP 2 detected in the first level image DI 1 , FP 1 is a feature point because corresponding points exist up to the image DI 3 of the third level, and FP 2 is not a feature point because corresponding points exist only up to the second level.
なお、この特徴点抽出部610a,610bでは、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フィルタ出力の代わりに用いるようにしても構わない。
Note that the feature
次に、特徴量保持部620a,620b(図9)は、特徴点抽出部610a,610bにて抽出された各特徴点について特徴量を抽出し、保持する。特徴量としては、多重解像度ピラミッド構造の各レベルの画像(Il,l=1,・・・,L)の画像情報から導出される特徴点の近傍領域各点の濃度勾配情報(勾配強度及び勾配方向)を用いる。点(x、y)における勾配強度Mx,y及び勾配方向Rx,yは以下の式(2),(3)により与えられる。
Next, the feature
ここで、特徴量を算出する特徴点近傍領域としては、回転変化に対して構造の変わらないような、特徴点に関して対称なものを選択することが好ましい。これにより、回転変化に対するロバスト性を実現することができる。例えば、(i)特徴点から半径rピクセルの範囲内を特徴点近傍領域とする手法や、(ii)特徴点を中心に幅σの特徴点に関して対称な2次元ガウス重みを濃度勾配に掛ける手法を用いることができる。 Here, as the feature point vicinity region for calculating the feature amount, it is preferable to select a region that is symmetric with respect to the feature point so that the structure does not change with respect to the rotation change. Thereby, the robustness with respect to a rotation change is realizable. For example, (i) a method in which a region within a radius r pixel from a feature point is used as a feature point neighboring region, or (ii) a method in which a two-dimensional Gaussian weight symmetric about a feature point having a width σ around the feature point is applied to the density gradient. Can be used.
特徴点から半径3.5ピクセルの範囲内を近傍領域とした場合における特徴点近傍領域の濃度勾配情報の例を図13(A)に示す。ここで、図13(A)において矢印の長さは勾配強度を表し、矢印の方向は勾配方向を表す。 FIG. 13A shows an example of density gradient information of the feature point neighboring area when the area within the radius of 3.5 pixels from the feature point is set as the neighboring area. Here, in FIG. 13A, the length of the arrow represents the gradient strength, and the direction of the arrow represents the gradient direction.
また、特徴量保持部620a,620bは、特徴点近傍の勾配方向に関するヒストグラム(方向ヒストグラム)も特徴量として保持する。図13(A)の濃度勾配情報から得られる勾配方向ヒストグラムの例を図13(B)に示す。ここで、図13(B)における階級幅Δθは10deg であり、階級数Nは36(=360deg /10deg )である。
The feature
続いて、特徴量比較部630(図9)は、各モデル特徴点の特徴量と各オブジェクト特徴点の特徴量とを比較し、類似する特徴量を有するモデル特徴点及びオブジェクト特徴点のペア(候補対応特徴点ペア)を生成する。 Subsequently, the feature quantity comparison unit 630 (FIG. 9) compares the feature quantity of each model feature point with the feature quantity of each object feature point, and a pair of model feature points and object feature points having similar feature quantities ( A candidate corresponding feature point pair) is generated.
この特徴量比較部630における処理の詳細について、図14のフローチャートを用いて説明する。先ず、ステップS41において、特徴量比較部630は、各モデル特徴点の方向ヒストグラムと各オブジェクト特徴点の方向ヒストグラムとを比較してヒストグラム間の距離(相違度)を計算すると共に、モデル−オブジェクト間の推定回転角度を求める。
Details of the processing in the feature
ここで、階級幅Δθと階級数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,∞が一般的に用いられる。 Here, two direction histograms H 1 = {h 1 (n), n = 1,..., N} and H 2 = {h 2 (n), where the class width Δθ and the class number N are the same. Assuming n = 1,..., N}, and h 1 (n), h 2 (n) indicate the frequencies in the class n, the distance d (between the histogram H 1 and the histogram H 2 H 1 , H 2 ) is given by, for example, the following formula (4). Here, r = 1, 2, ∞ is generally used as r in Equation (4).
この式(4)を用いて各モデル特徴点及び各オブジェクト特徴点の方向ヒストグラム間の相違度を計算するが、(i)モデル−オブジェクト間のスケール比がマッチング段階で未知であるため、モデル特徴点の各レベルとオブジェクト特徴点の各レベル間で方向ヒストグラム間のマッチングを行う必要がある。また、(ii)方向ヒストグラム間のマッチングに関しては、モデル−オブジェクト間の回転変換量を考慮する必要がある。 Using this equation (4), the degree of difference between the direction histograms of each model feature point and each object feature point is calculated. (I) Since the scale ratio between the model and the object is unknown at the matching stage, the model feature It is necessary to perform matching between direction histograms between each level of points and each level of object feature points. Further, regarding the matching between the direction histograms (ii), it is necessary to consider the rotational transformation amount between the model and the object.
モデル特徴点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との間の相違度とする。このとき、相違度の最小値を与えた時のシフト量(ずらした階級数)からオブジェクト特徴点の回転角度を推定することができる。なお、この手法は方向ヒストグラム交差法として知られている。 Direction histogram H m LV = {h m LV (n), n = 1,..., N} at the level LV of the model feature point m, and direction histogram H o lv = {h at the level lv of the object feature point o Consider a case where the degree of difference from o lv (n), n = 1 ,. Since the direction histogram changes cyclically with respect to the rotation transformation, the calculation of Equation (4) is performed while cyclically shifting the class of H o lv one by one, and the minimum values are calculated as H m LV and H o lv. The degree of difference between At this time, the rotation angle of the object feature point can be estimated from the shift amount (shifted class number) when the minimum value of the dissimilarity is given. This method is known as a direction histogram intersection method.
Ho lvをk階級分シフトさせた方向ヒストグラムをHo lv(k)とすると、方向ヒストグラム交差法による方向ヒストグラム間相違度dissimilarity(Hm LV,Ho lv(k))は、以下の式(5)で与えられる。 Assuming that a direction histogram obtained by shifting H o lv by k classes is H o lv (k) , the dissimilarity (H m LV , H o lv (k) ) between the direction histograms by the direction histogram crossing method is expressed by the following equation: It is given by (5).
また、最小のd(Hm LV,Ho lv(k))を与えるkをk’とすると、オブジェクト特徴点oの近傍領域における推定回転角度θ(m,LV,o,lv)は以下の式(6)で与えられる。 Further, assuming that k ′ that gives the minimum d (H m LV , H o lv (k) ) is k ′, the estimated rotation angle θ (m, LV, o, lv) in the region near the object feature point o is It is given by equation (6).
上述の(i)を考慮すると、モデル特徴点mとオブジェクト特徴点oとの方向ヒストグラム間相違度dissimilarity(Hm,Ho)は、以下の式(7)のようになる。 Considering the above (i), the dissimilarity (H m , H o ) between the direction histograms of the model feature point m and the object feature point o is expressed by the following equation (7).
特徴量比較部630は、モデル特徴点mとオブジェクト特徴点oとの各ペア(m、n)に対し、最小の方向ヒストグラム間相違度dissimilarity(Hm,Ho)を与えるレベルLV,lv(以下、それぞれLVm *,lvo *と表記する。)と、その推定回転角度θ(m,LVm *,o,lvo *)とを、方向ヒストグラム間相違度dissimilarity(Hm,Ho)と共に保持する。
The feature
次にステップS42(図14)において、特徴量比較部630は、各モデル特徴点mに対し方向ヒストグラム間相違度の小さい順にK個のオブジェク特徴点om1,・・・,omKを選択し、候補対応特徴点ペアを組ませる。すなわち、各モデル特徴点mに対してK個の候補対応特徴点ペア(m、om1),・・・,(m、omk),・・・,(m、omK)が組まれる。また、各候補対応特徴点ペア(m、omk)には対応するレベルLVm *,lvomk *と推定回転角度θ(m,LVm *,o,lvomk *)との情報が保持される。
Next, in step S42 (FIG. 14), the feature
以上のようにして、全モデル特徴点に対し候補対応特徴点ペアを組ませることで得られたペア群が、候補対応特徴点ペア群となる。 As described above, a pair group obtained by assembling candidate corresponding feature point pairs for all model feature points becomes a candidate corresponding feature point pair group.
このように、特徴量比較部630では、ヒストグラム度数に勾配強度を累積しておらず、単に勾配方向のみに注目しているため、明度変化に対してロバストな特徴量マッチングが可能になる。また、方向ヒストグラムの形状を考慮したより安定なマッチングを行うことができ、二次的に安定した特徴量(推定回転角度)を得ることもできる。
As described above, the feature
なお、上述のステップS42では、各モデル特徴点mに対してK個の候補対応特徴点ペアを選択するものとして説明したが、これに限定されるものではなく、方向ヒストグラム間相違度が閾値を下回るペア全てを選択するようにしても構わない。 In step S42 described above, it has been described that K candidate corresponding feature point pairs are selected for each model feature point m. However, the present invention is not limited to this. You may make it select all the pairs below.
ここで、上述の操作で生成された候補対応特徴点ペア群は、方向ヒストグラムが類似するものの濃度勾配の空間的特徴が異なっているような対応点ペアも含んでいる。そこで、続くステップS43(図14)では、濃度勾配ベクトル間類似度によるペアの選択、候補対応特徴点ペア群の更新を行う。 Here, the candidate corresponding feature point pair group generated by the above-described operation also includes corresponding point pairs that have similar direction histograms but have different spatial characteristics of the density gradient. Therefore, in the subsequent step S43 (FIG. 14), a pair is selected based on the similarity between density gradient vectors, and the candidate corresponding feature point pair group is updated.
具体的には、モデル特徴点mの近傍のレベルLVm *における濃度勾配ベクトルをUmとし、このモデル特徴点mと対応点ペアを組むオブジェクト特徴点oの近傍のレベルlvomk *における濃度勾配ベクトルをUoとしたとき、UmとUoとの類似度が閾値を下回るペアを排除し、候補対応特徴点ペア群を更新する。 Specifically, the density gradient vector at the level LV m * in the vicinity of the model feature point m is U m, and the density gradient at the level lv omk * in the vicinity of the object feature point o that forms a corresponding point pair with the model feature point m. When the vector is U o , pairs whose similarity between U m and U o falls below the threshold are excluded, and the candidate corresponding feature point pair group is updated.
濃度勾配ベクトルUm,Uo間の類似度の計算手法を図15に示す。先ず、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との内積を表す。 FIG. 15 shows a method for calculating the similarity between the density gradient vectors U m and U o . First, U m is spatially divided into four regions R i (i = 1,..., 4), and an average density gradient vector v i (i = 1,..., 4) of each region is obtained. The v i in 8-dimensional vector V summarizes the U m is expressed. Meanwhile, in order to perform the matching considering the density gradient information rotational transformation, U o of the estimated rotation angle of the gradient direction previously obtained θ (m, LV m *, o, lv omk *) is corrected by, U o Get * . At this time, the value of the intermediate position is obtained by biquadratic linear interpolation. Similarly to the above, U o * is divided into four regions R i (i = 1,..., 4), and the average density gradient vector w i (i = 1,..., 4) of each region is obtained. U o is expressed by an eight-dimensional vector W in which w i are combined. At this time, the similarity similarity (U m , U o ) ∈ [0, 1] between U m and U o is interpreted as the similarity between the average density gradient vectors V and W, for example, using a cosine correlation value. It calculates | requires by the following formula | equation (8). Here, in Expression (8), (V · W) represents the inner product of V and W.
特徴量比較部630は、各候補対応特徴点ペアに対して上記式(8)で得られる平均濃度勾配ベクトル間の類似度を求め、類似度が閾値δを下回るペアを候補対応特徴点ペア群から排除し、候補対応特徴点ペア群を更新する。
The feature
このように、特徴量比較部630では、部分領域の平均濃度勾配ベクトルを用いて特徴量の比較を行っているため、特徴点位置や推定回転角度の微妙なずれや、明度の変化による濃度勾配情報の変化に対してロバストなマッチングを実現することができ、計算量の削減にもなる。
As described above, the feature
以上の操作により、特徴点近傍の局所的な濃度勾配情報が類似する(モデル特徴点−オジェクト特徴点)ペア群を抽出することができるが、巨視的に見ると、このように得られたペア群は、対応特徴点間の空間的位置関係がモデルのオブジェクト画像上での姿勢(モデル姿勢)と矛盾するような「偽の特徴点ペア(アウトライヤ)」を含んでしまっている。 Through the above operation, it is possible to extract a group of (model feature point-object feature point) pairs having similar local density gradient information in the vicinity of the feature point, but when viewed macroscopically, the pair thus obtained is extracted. The group includes “false feature point pairs (outliers)” in which the spatial positional relationship between corresponding feature points is inconsistent with the posture (model posture) of the model on the object image.
ここで、候補対応特徴点ペアが3組以上ある場合には、最小自乗推定により近似アフィン変換パラメータの推定が可能であり、推定モデル姿勢と空間的位置関係の矛盾する対応ペアを排除し、残ったペアで再びモデル姿勢推定を行うという操作を繰り返すことで、モデル姿勢を認識することができる。 Here, when there are three or more candidate corresponding feature point pairs, it is possible to estimate approximate affine transformation parameters by least square estimation, eliminate corresponding pairs in which the estimated model pose and spatial positional relationship contradict, and remain The model posture can be recognized by repeating the operation of estimating the model posture again with the pair.
しかしながら、候補対応特徴点ペア群中のアウトライヤが多い場合や真のアフィン変換パラメータから極端に逸脱したアウトライヤが存在する場合には、最小自乗推定による推定結果は一般的に満足のいくものではないことが知られている(Hartley R., Zisserman A.,“Multiple View Geometry in Computer Vision.”, Chapter 3, pp.69-116, Cambridge University Press, 2000)ため、本実施の形態におけるモデル姿勢推定部640(図9)では、アフィン変換拘束の下、候補対応特徴点ペア群の空間的位置関係から「真の特徴点ペア(インライヤ)」を抽出し、抽出されたインライヤを用いてモデル姿勢(平行移動量,回転,拡大縮小,ストレッチを決定するアフィン変換パラメータ)を推定する。
However, if there are many outliers in the candidate-corresponding feature point pair group or there are outliers that deviate significantly from the true affine transformation parameters, the estimation result by least squares estimation is generally not satisfactory. (Hartley R., Zisserman A., “Multiple View Geometry in Computer Vision.”,
以下、このモデル姿勢推定部640における処理について説明する。上述したように、候補対応特徴点ペアが3組以上なければアフィン変換パラメータを決定できないため、候補対応特徴点ペアが2組以下の場合、モデル姿勢推定部640は、オブジェクト画像中にモデルが存在しない、又はモデル姿勢検出に失敗したとして、「認識不可」と出力し処理を終了する。一方、候補対応特徴点ペアが3組以上ある場合、モデル姿勢推定部640は、モデル姿勢を検出可能であるとし、アフィン変換パラメータの推定を行う。なお、モデル姿勢推定部640は、モデル画像及びオブジェクト画像の例えば第1レベル(最高解像度)における特徴点の空間的位置を元にモデル姿勢を推定するものとする。
Hereinafter, processing in the model
ここで、モデル特徴点[x y]Tのオブジェクト特徴点[u v]Tへのアフィン変換は、以下の式(9)で与えられる。 Here, the affine transformation of the model feature point [x y] T to the object feature point [u v] T is given by the following equation (9).
この式(9)において、ai(i=1,・・・,4)は回転,拡大縮小,ストレッチを決定するパラメータを表し、[b1 b2]Tは平行移動パラメータを表す。決定すべきアフィン変換パラメータはa1,・・・,a4及びb1,b2の6つであるため、候補対応特徴点ペアが3組あればアフィン変換パラメータを決定することができる。 In this equation (9), a i (i = 1,..., 4) represents parameters for determining rotation, enlargement / reduction, and stretch, and [b 1 b 2 ] T represents a translation parameter. Since there are six affine transformation parameters a 1 ,..., A 4 and b 1 , b 2 to be determined, the affine transformation parameters can be determined if there are three candidate corresponding feature point pairs.
3組の候補対応特徴点ペアで構成されるペア群Pを([x1 y1]T,[u1 v1]T),([x2 y2]T,[u2 v2]T),([x3 y3]T,[u3 v3]T)とすると、ペア群Pとアフィン変換パラメータとの関係は、以下の式(10)に示す線形システムで表現することができる。 A pair group P constituted by three pairs of candidate corresponding feature points is represented by ([x 1 y 1 ] T , [u 1 v 1 ] T ), ([x 2 y 2 ] T , [u 2 v 2 ] T ), ([X 3 y 3 ] T , [u 3 v 3 ] T ), the relationship between the pair group P and the affine transformation parameters can be expressed by the linear system shown in the following equation (10). .
この式(10)をRx=sのように書き直すと、アフィン変換パラメータxの最小自乗解は以下の式(11)で与えられる。 When this equation (10) is rewritten as Rx = s, the least squares solution of the affine transformation parameter x is given by the following equation (11).
さて、候補対応特徴点ペア群からアウトライヤが1つ以上混入するように繰り返しランダムにペア群Pを選択した場合、そのアフィン変換パラメータはパラメータ空間上に散らばって投射される。一方、インライヤのみから構成されるペア群Pを繰り返しランダムに選択した場合、そのアフィン変換パラメータは、何れもモデル姿勢の真のアフィン変換パラメータに極めて類似した、すなわちパラメータ空間上で距離の近いものとなる。したがって、候補対応特徴点ペア群からランダムにペア群Pを選択し、そのアフィン変換パラメータをパラメータ空間上に投射していく操作を繰り返すと、インライヤはパラメータ空間上で密度の高い(メンバ数の多い)クラスタを形成し、アウトライヤは散らばって出現することになる。このことから、パラメータ空間上でクラスタリングを行い、最多メンバ数を持つクラスタの要素がインライヤとなる。 When the pair group P is repeatedly selected at random so that one or more outliers are mixed from the candidate corresponding feature point pair group, the affine transformation parameters are scattered and projected on the parameter space. On the other hand, when the pair group P composed only of inliers is selected repeatedly at random, the affine transformation parameters are all very similar to the true affine transformation parameters of the model pose, that is, close in the parameter space. Become. Therefore, when the pair group P is randomly selected from the candidate corresponding feature point pair group and the operation of projecting the affine transformation parameters onto the parameter space is repeated, the inlier has a high density (a large number of members) on the parameter space. ) Clusters will form and outliers will appear scattered. For this reason, clustering is performed on the parameter space, and the element of the cluster having the largest number of members becomes an inlier.
モデル姿勢推定部640における処理の詳細を図16のフローチャートを用いて説明する。なお、このモデル姿勢推定部640におけるクラスタリング手法としては、NN(Nearest Neighbor)法を用いるものとする。この際、上述したb1,b2は、認識対象画像により様々な値を取り得るため、x空間でもクラスタリングにおいてクラスタリング閾値の選択が認識対象に依存してしまう。そこで、モデル姿勢推定部640では、「真のパラメータとa1,・・・,a4は類似するがb1,b2が異なるようなアフィン変換パラメータを与えるペア群Pは殆ど存在しない」という仮定の下、パラメータa1,・・・,a4(以下、Aと表記する。)で張られるパラメータ空間上のみでクラスタリングを行う。なお、上記仮定が成り立たない状況が生じたとしても、A空間とは独立にb1,b2で張られるパラメータ空間でクラスタリングを行いその結果を考慮することで、容易に問題を回避することができる。
Details of processing in the model
先ず図16のステップS51において初期化を行う。具体的には、繰り返し数のカウント値cntをcnt=1とし、候補対応特徴点ペア群からランダムにペア群P1を選択し、アフィン変換パラメータA1を求める。また、クラスタ数NをN=1とし、アフィン変換パラメータ空間A上でA1を中心とするクラスタZ1を作る。このクラスタZ1のセントロイドC1をC1=A1とし、メンバ数nz1をnz1=1とする。カウンタをcnt=2にし、ステップS52に進む。 First, initialization is performed in step S51 of FIG. Specifically, the count value cnt of the number of repetitions and cnt = 1, then select the pair group P 1 at random from the candidate corresponding feature point pair group to obtain the affine transformation parameters A 1. Further, the cluster number N is set to N = 1, and a cluster Z 1 centering on A 1 is created on the affine transformation parameter space A. The centroid C 1 of this cluster Z 1 and C 1 = A 1, the number of members nz 1 and nz 1 = 1. The counter is set to cnt = 2, and the process proceeds to step S52.
次にステップS52において、モデル姿勢推定部640は、候補対応特徴点ペア群からランダムにペア群Pcntを選択し、アフィン変換パラメータAcntを求める。
Next, in step S52, the model
続いてステップS53において、モデル姿勢推定部640は、NN法を用いてアフィン変換パラメータ空間のクラスタリングを行う。具体的には、先ず以下の式(12)に従ってアフィン変換パラメータAcntと各クラスタZiのセントロイドCi(i=1,・・・,N)との距離d(Acnt、Ci)のうち、最小の距離dminを求める。
Subsequently, in step S53, the model
そして、所定の閾値τ(例えばτ=0.1)に対してdmin<τであればdminを与えるクラスタZiにAcntを属させ、Acntを含めた全メンバでクラスタZiのセントロイドCiを更新する。また、クラスタZiのメンバ数nziをnzi=nzi+1とする。一方、dmin≧τであればアフィン変換パラメータ空間A上でAcntをセントロイドCN+1とする新しいクラスタZN+1を作り、メンバ数nzN+1をnzN+1=1とし、クラスタ数NをN=N+1とする。 Then, the cluster Z i giving d min if d min <tau to a predetermined threshold value tau (e.g. tau = 0.1) to belong to A cnt, the cluster Z i with all members including the A cnt to update the centroid C i. Further, the number of members nz i cluster Z i and nz i = nz i +1. On the other hand, if d min ≧ τ, a new cluster Z N + 1 having A cnt as the centroid C N + 1 is created on the affine transformation parameter space A, the number of members nz N + 1 is set to nz N + 1 = 1, and the number of clusters N is set to N = N + 1. And
続いてステップS54では、繰り返し終了条件を満たすか否かが判別される。ここで、繰り返し終了条件としては、例えば最多メンバ数が所定の閾値(例えば15)を超え、且つ最多メンバ数と2番目に多いメンバ数との差が所定の閾値(例えば3)を超える場合、或いは繰り返し数カウンタのカウント値cntが所定の閾値(例えば5000回)を超える場合に終了するように設定することができる。ステップS54において、繰り返し終了条件を満たさない場合(No)には、ステップS55で繰り返し数のカウント値cntをcnt=cnt+1とした後、ステップS52に戻る。一方、繰り返し終了条件を満たす場合(Yes)にはステップS56に進む。 Subsequently, in step S54, it is determined whether or not a repeated end condition is satisfied. Here, as the repetition end condition, for example, when the maximum number of members exceeds a predetermined threshold (for example, 15) and the difference between the maximum number of members and the second largest number of members exceeds a predetermined threshold (for example, 3), Alternatively, it can be set to end when the count value cnt of the repetition number counter exceeds a predetermined threshold (for example, 5000 times). In step S54, if the repetition end condition is not satisfied (No), the count value cnt of the number of repetitions is set to cnt = cnt + 1 in step S55, and the process returns to step S52. On the other hand, if the repeated end condition is satisfied (Yes), the process proceeds to step S56.
最後にステップS56において、モデル姿勢推定部640は、以上で得られたインライヤを用いて、最小自乗法によりモデル姿勢を決定するアフィン変換パラメータを推定する。
Finally, in step S56, the model
ここで、インライヤを([xIN1 yIN1]T,[uIN1 vIN1]T),([xIN2 yIN2]T,[uIN2 vIN2]T),・・・とすると、インライヤとアフィン変換パラメータとの関係は、以下の式(13)に示す線形システムで表現することができる。 Here, the inliers ([x IN1 y IN1] T , [u IN1 v IN1] T), ([x IN2 y IN2] T, [u IN2 v IN2] T), when a., Inliers and affine The relationship with the conversion parameter can be expressed by a linear system shown in the following equation (13).
この式(13)をRINxIN=sINのように書き直すと、アフィン変換パラメータxINの最小自乗解は以下の式(14)で与えられる。 When this equation (13) is rewritten as R IN x IN = s IN , the least squares solution of the affine transformation parameter x IN is given by the following equation (14).
そしてステップS56では、このアフィン変換パラメータxINで決定されるモデル姿勢をモデル認識結果として出力する。 In step S56, it outputs the model attitude determined by the affine transformation parameter x IN as a model recognition result.
なお、以上の説明では、閾値τが定数値であるものとしたが、ステップS52乃至ステップS55の繰り返し処理を行う際に、始めは比較的大きな閾値τを用いて大雑把なインライヤ抽出を行い、繰り返し回数が増える毎に次第に小さい閾値τを用いる、いわゆる「焼きなまし法」のような手法を適用してもよい。これにより、精度よくインライヤを抽出することができる。 In the above description, the threshold value τ is assumed to be a constant value. However, when performing the iterative processing from step S52 to step S55, first, rough inlier extraction is performed using a relatively large threshold value τ, and the repetition is repeated. A technique such as a so-called “annealing method” that uses a gradually smaller threshold τ each time the number of times increases may be applied. Thereby, an inlier can be extracted with high accuracy.
また、以上の説明では、候補対応特徴点ペア群からランダムにペア群Pを選択し、そのアフィン変換パラメータをパラメータ空間上に投射していく操作を繰り返し、パラメータ空間上で最多メンバ数を持つクラスタの要素をインライヤとして、最小自乗法によりモデル姿勢を決定するアフィン変換パラメータを推定したが、これに限定されるものではなく、例えば最多メンバ数を持つクラスタのセントロイドを、モデル姿勢を決定するアフィン変換パラメータとしても構わない。 Further, in the above description, a pair group P is randomly selected from the candidate corresponding feature point pair group, and the operation of projecting the affine transformation parameters onto the parameter space is repeated, and the cluster having the largest number of members on the parameter space. The affine transformation parameters that determine the model pose by the least squares method were estimated using the elements of, but this is not a limitation. For example, the centroid of the cluster with the largest number of members is used to determine the model pose. It does not matter as a conversion parameter.
実際のオブジェクト画像からのモデル抽出の一例を図17に示す。図17(A)はモデル画像、図17(B)はモデル画像から抽出された特徴点、図17(C)はオブジェクト画像、図17(D)はオブジェクト画像から抽出された特徴点、図17(E)は最終的な候補対応特徴点ペア、図17(F)はオブジェクト画像中のモデルの姿勢を示す。 An example of model extraction from an actual object image is shown in FIG. 17A is a model image, FIG. 17B is a feature point extracted from the model image, FIG. 17C is an object image, FIG. 17D is a feature point extracted from the object image, and FIG. (E) shows the final candidate corresponding feature point pair, and FIG. 17 (F) shows the posture of the model in the object image.
(2−2)物体学習フェーズ
上述したロボット装置1が環境中を移動しながら未知の物体を自律的に学習する物体学習フェーズについてさらに説明する。この物体学習フェーズでは、ロボット装置1がユーザに対して物体学習の手続きを音声で指示し、学習対象物体をロボット装置1の画像入力装置251が備える左右のCCDカメラの前で動かしてもらう。そして、ロボット装置1は、学習対象物体を動かしている様子を撮像し、その撮像画像から学習対象物体のモデル画像(後述する物体領域画像)を切り出し、そのモデル画像から特徴量(後述するモデル特徴量セット)を抽出して物体モデルデータベースに登録する。
(2-2) Object Learning Phase The object learning phase in which the
物体学習フェーズにおける処理を図18のフローチャートに示す。この物体学習フェーズは、予め設定されてある物体学習フェーズを開始するためのワード(以下、「トリガワード」という。)をユーザが発話することで開始される。 The processing in the object learning phase is shown in the flowchart of FIG. This object learning phase is started when the user speaks a word (hereinafter referred to as “trigger word”) for starting a preset object learning phase.
先ずステップS61において、ロボット装置1は、音声入力装置252から入力された音イベントとそのトリガワードとのマッチングをリアルタイムで行い、トリガワードが発話されたか否かを判別する。ここで、トリガワードが発話されていない場合(No)にはステップS61の処理を繰り返し、トリガワードが発話された場合(Yes)には物体学習フェーズを開始し、ステップS62以降の処理を行う。
First, in step S61, the
次にステップSS62において、ロボット装置1は、ユーザに対して物体学習フェーズの手続きを発話する。本実施の形態では、ユーザがロボット装置1のCCDカメラの前で学習対象物体を動かすことを前提としているため、ロボット装置1は、例えば「憶えさせたい物体を私の目の前で少しの間動かして」という音声を出力することで、ユーザに対して物体学習の手続きを明示する。これにより、この発話の後、ユーザがロボット装置1のCCDカメラの前で学習対象物体を動かすことが想定される。
Next, in step SS62, the
続いてステップS63において、後述するカウンタのカウント値cnt_OK、cnt_NG、cnt_exceed、cnt_close、cnt_fast、cnt_against及びcnt_farを0に初期化する。 Subsequently, in step S63, count values cnt_OK, cnt_NG, cnt_exceed, cnt_close, cnt_fast, cnt_against and cnt_far of a counter described later are initialized to zero.
続いてステップS64において、ロボット装置1は、ユーザが学習対象物体を動かした際の動画像情報(時間的に隣接する2枚の静止画像)から動き領域の抽出を行う。ここで、ロボット装置1の頭部ユニット3に設けられた左右のCCDカメラからは、各時刻における左右のカメラ画像が得られる。そして、この左右のカメラ画像から得られたステレオ画像データからは、上述したように、各画素の距離値が導出可能である。現時刻と1つ前の時刻のカメラ画像の差分から輝度値の変化のあった画素、つまり差分画像が検出される。これらの画素は、動き領域のエッジ近傍に検出される傾向があり、動き領域の一部分のみがこの操作によって抽出されることになる。したがって、これらの画素に関して距離値を横軸、画素数を縦軸とするヒストグラムを作成した場合、大きいピークを与える距離dを持つ画素群が動き領域となる。そこで、ステップS64では、先の距離画像においてdから所定の閾値の範囲内の距離値を持つ画素を抽出し、領域面積の大きい連結領域のみを動き領域画像として抽出する。
Subsequently, in step S64, the
このステップS64で抽出された動き領域画像には、学習対象物体とこの学習対象物体を動かしたユーザの手の一部が含まれている。そこで、ステップS65において、ロボット装置1は、ユーザの手部に相当する領域をマスキングし、物体領域画像のみを抽出する。この際、本実施の形態では、肌色領域をユーザの手部と見なし、ステップS64で抽出した動き領域画像から肌色領域をマスキングすることで、物体領域画像のみを抽出する。
The motion region image extracted in step S64 includes a learning target object and a part of a user's hand that moves the learning target object. Therefore, in step S65, the
ここで、画像中の肌色領域は、例えば特開2002−157596号公報に記載された技術を用いて抽出することができる。簡単には、以下の通りである。 Here, the skin color area in the image can be extracted using, for example, a technique described in JP-A-2002-157596. Briefly, it is as follows.
Yangらの報告(J.Yang, W.Lu, A.Waibel,“Skin-Color Modeling and Adaptation”, Technical Report of CMU, CMU-CS-97-146, 1997)によれば、肌色の分布は輝度で正規化された以下の式(15)及び式(16)により得られる(r,g)平面上で、人物や人種によらず正規分布に近い分布となることが実験的に知られている。 According to Yang et al. (J. Yang, W. Lu, A. Waibel, “Skin-Color Modeling and Adaptation”, Technical Report of CMU, CMU-CS-97-146, 1997) It is experimentally known that on the (r, g) plane obtained by the following formulas (15) and (16) normalized by the formula, the distribution is close to the normal distribution regardless of the person or race. Yes.
また、上述のYangらはこの色空間において肌色を表す正規分布のパラメータ推定値を、過去に測定されたデータの線形和の式(17)式及び式(18)として表現し、重み係数αj,βjの更新規則を最尤推定により導出している。ここで、式(17)式は平均であり、式(18)は分散である。また、mj,sjはそれぞれ、過去のjステップ前の平均値と分散値である。また、rは最大履歴数である。 Moreover, the above-mentioned Yang et al. Express parameter estimation values of normal distribution representing skin color in this color space as equations (17) and (18) of linear sums of data measured in the past, and weight coefficients α j , Β j is derived by maximum likelihood estimation. Here, the equation (17) is an average, and the equation (18) is a variance. Further, m j and s j are an average value and a variance value before j steps in the past, respectively. R is the maximum number of histories.
本実施の形態では、この定式化に基づいて動き領域画像の肌色領域を求め、この肌色領域をユーザの手部と見なしてマスキングする。 In the present embodiment, a skin color area of the motion area image is obtained based on this formulation, and the skin color area is regarded as a user's hand and masked.
ステップS64,ステップS65における操作の例を図19に示す。図19(A)は前時刻における左のCCDカメラによるカメラ画像、図19(B)は現時刻における左のCCDカメラによるカメラ画像をそれぞれ示し、共に学習対象物体SObとユーザの手部Hdが撮像されている。また、図19(C)は現時刻におけるレンジデータ、図19(D)は差分画像、図19(E)は差分画像に関する距離値のヒストグラムをそれぞれ示す。図19(F)は、図19(E)に示すヒストグラムのうち、大きいピークを与える距離近傍の画素群、具体的には図中矢印で示す範囲の距離値を有する画素群を抽出した動き領域画像を示し、図19(G)はステップS65で抽出された物体領域画像を示す。 An example of operations in steps S64 and S65 is shown in FIG. FIG. 19A shows a camera image by the left CCD camera at the previous time, and FIG. 19B shows a camera image by the left CCD camera at the current time, both taken by the learning object SOb and the user's hand Hd. Has been. FIG. 19C shows range data at the current time, FIG. 19D shows a difference image, and FIG. 19E shows a histogram of distance values related to the difference image. FIG. 19F illustrates a motion region in which a pixel group in the vicinity of a distance that gives a large peak, specifically, a pixel group having a distance value in a range indicated by an arrow in the drawing is extracted from the histogram illustrated in FIG. An image is shown, and FIG. 19G shows the object region image extracted in step S65.
続いてステップS66において、ロボット装置1は、物体認識システム(図9)の特徴点抽出部610a及び特徴量保持部620aを用いて物体領域画像の特徴点及びその特徴量(以下、特徴点及びその特徴量を総称して「特徴量」という。)を抽出する。
Subsequently, in step S66, the
続いてステップS67において、ロボット装置1は、特徴量抽出結果の評価を行い、抽出された特徴量がモデル画像の特徴量生成に適していれば時系列データメモリに保存し、そうでなければ、よりよい特徴量が抽出できるように、ユーザに対して学習対象物体の提示の仕方を指示する。そして、その評価結果に応じてステップS68(case1)、ステップS64(case2)、又はステップS72(case3)に進む。
Subsequently, in step S67, the
このステップS67における処理について、図20A乃至図20Cのフローチャートを用いて説明する。先ずステップS81において、ロボット装置1は、ステップS65(図18)で得られた物体領域の輪郭線上の画素のうち、画像のエッジと重なっている画素の割合が充分大きいか否かを判別する。ここで、画像のエッジと重なっている画素の割合が充分大きくない場合(No)には、学習対象物体が視野内に収まっていると見なし、ステップS89に進む。一方、画像のエッジと重なっている画素の割合が充分大きい場合(Yes)には、学習対象物体の一部が視野外にある状況と見なし、ステップS82に進む。
The processing in step S67 will be described using the flowcharts of FIGS. 20A to 20C. First, in step S81, the
次にステップS82において、ロボット装置1は、物体領域が充分大きいか否かを判別し、物体領域が充分大きい場合(Yes)には、ユーザによる学習対象物体の提示位置が近すぎると判断する。この場合、抽出された特徴量はモデル生成には不適当であるため時系列データメモリには保存せず、ステップS83でcnt_closeをインクリメントする。そして、ステップS84においてcnt_closeが閾値を超えたか否かを判別し、超えていない場合(No)にはcase2であるとして、図18のステップS64に戻る。一方、cnt_closeが閾値を超えた場合(Yes)、すなわち学習対象物体の提示位置が近すぎる状況が一定回数以上再現された場合には、ステップS85において、ユーザに対して「少し離れて動かして」と発話した後、case2であるとして、図18のステップS64に戻る。これによりユーザが物体提示の仕方を修正することが期待される。
Next, in step S82, the
一方、物体領域が充分大きくない場合(No)には、ユーザによる学習対象物体の提示位置がずれていると判断する。この場合、抽出された特徴量はモデル生成には不適当であるため時系列データメモリには保存せず、ステップS86でcnt_exceedをインクリメントする。そして、ステップS87においてcnt_exceedが閾値を超えたか否かを判別し、超えていない場合(No)にはcase2であるとして、図18のステップS64に戻る。一方、cnt_exceedが閾値を超えた場合(Yes)、すなわち学習対象物体の提示位置がずれている状況が一定回数以上再現された場合には、ステップS88において、ユーザに対して「もう少し上(下、右、左)で動かして」と発話した後、case2であるとして、図18のステップS64に戻る。これによりユーザが物体提示の仕方を修正することが期待される。 On the other hand, when the object area is not sufficiently large (No), it is determined that the presentation position of the learning target object by the user is shifted. In this case, since the extracted feature quantity is inappropriate for model generation, it is not stored in the time-series data memory, and cnt_exceed is incremented in step S86. Then, in step S87, it is determined whether or not cnt_exceed exceeds the threshold value. If it does not exceed (No), it is determined as case2 and the process returns to step S64 in FIG. On the other hand, when cnt_exceed exceeds the threshold value (Yes), that is, when the situation where the presentation position of the learning target object is shifted is reproduced a certain number of times or more, in step S88, the user is told “Slightly above (down, After moving “right, left)”, it returns to step S64 in FIG. Thereby, it is expected that the user corrects the way of object presentation.
ステップS81における判別がNoとなりステップS89に進んだ場合、ロボット装置1は、物体領域から抽出された特徴点の数が充分大きいか否かを判別する。ここで、物体領域から抽出された特徴点の数が充分大きくない場合(No)、1)物体が逆光状況下で提示されている、2)物体が激しく動かされて提示された結果、ぼけた物体領域画像が抽出されてしまった、3)物体提示位置が離れすぎている、の何れかの状況と考えられる。そこで、先ずステップS90において逆光であるか否かを判別する。この際、本実施の形態では、物体領域内の画素の濃淡値平均がある閾値以下の場合に逆光状況と見なす。例えば、濃淡値が0(黒)から255(白)の値を取る場合、閾値を50とすることができる。ステップS90で逆光と判断された場合(Yes)、抽出された特徴量はモデル生成には不適当であるため時系列データメモリには保存せず、ステップS91でcnt_againstをインクリメントする。そして、ステップS92においてcnt_againstが閾値を超えたか否かを判別し、超えていない場合(No)にはcase2であるとして、図18のステップS64に戻る。一方、cnt_againstが閾値を超えた場合(Yes)、すなわち逆光である状況が一定回数以上再現された場合には、ステップS93において、ユーザに対して「逆光だから場所を移動してやり直して」と発話した後、case3であるとして、図18のステップS72に進む。
When the determination in step S81 is No and the process proceeds to step S89, the
一方、ステップS90で逆光ではない場合(No)には、ステップS94において、物体領域が充分大きいか否かを判別する。ここで、物体領域が充分大きい場合(Yes)には、学習対象物体が激しく動かされて提示された状態と判断する。この場合、抽出された特徴量はモデル生成には不適当であるため時系列データメモリには保存せず、ステップS95でcnt_fastをインクリメントする。そして、ステップS96においてcnt_fastが閾値を超えたか否かを判別し、超えていない場合(No)にはcase2であるとして、図18のステップS64に戻る。一方、cnt_fastが閾値を超えた場合(Yes)、すなわち学習対象物体が激しく動かされて提示された状況が一定回数以上再現された場合には、ステップS97において、ユーザに対して「少しゆっくり動かして」と発話した後、case2であるとして、図18のステップS64に戻る。これによりユーザが物体提示の仕方を修正することが期待される。 On the other hand, if it is not backlit in step S90 (No), it is determined in step S94 whether or not the object area is sufficiently large. Here, when the object area is sufficiently large (Yes), it is determined that the learning target object has been presented violently. In this case, since the extracted feature quantity is inappropriate for model generation, it is not stored in the time-series data memory, and cnt_fast is incremented in step S95. Then, in step S96, it is determined whether or not cnt_fast exceeds the threshold value. If it does not exceed (No), it is determined as case2 and the process returns to step S64 in FIG. On the other hand, when cnt_fast exceeds the threshold value (Yes), that is, when the learning target object is moved violently and the situation presented is reproduced more than a certain number of times, in step S97, the user is asked to “move slightly slowly. ”And then returns to step S64 in FIG. 18 assuming that it is case2. Thereby, it is expected that the user corrects the way of object presentation.
ステップS94で物体領域が充分大きくない場合(No)には、学習対象物体を提示する位置が遠すぎたと判断する。この場合、抽出された特徴量はモデル生成には不適当であるため時系列データメモリには保存せず、ステップS98でcnt_farをインクリメントする。そして、ステップS99においてcnt_farが閾値を超えたか否かを判別し、超えていない場合(No)にはcase2であるとして、図18のステップS64に戻る。一方、cnt_farが閾値を超えた場合(Yes)、すなわち学習対象物体を提示する位置が遠すぎた状況が一定回数以上再現された場合には、ステップS100において、ユーザに対して「少し近づけて動かして」と発話した後、case2であるとして、図18のステップS64に戻る。これによりユーザが物体提示の仕方を修正することが期待される。
If the object area is not sufficiently large in step S94 (No), it is determined that the position where the learning target object is presented is too far. In this case, since the extracted feature quantity is inappropriate for model generation, it is not stored in the time series data memory, and cnt_far is incremented in step S98. Then, in step S99, it is determined whether or not cnt_far has exceeded the threshold value. If not (No), it is determined to be
一方、ステップS89で充分な数の特徴点が抽出されている場合(Yes)には、抽出された特徴量はモデル生成に適当なものと判断し、ステップS101において、時系列メモリに特徴量を保存する。そして、ステップS102においてcnt_OKをインクリメントし、ステップS103において、cnt_OKが既定数N(例えばN=10)を超えたか否かを判別する。ここで、cnt_OKが既定数Nを超えていない場合(No)には、case2であるとして、図18のステップS64に戻る。一方、cnt_OKが既定数Nを超えた場合(No)には、case1であるとして、図18のステップS68に進む。 On the other hand, if a sufficient number of feature points have been extracted in step S89 (Yes), it is determined that the extracted feature values are appropriate for model generation. In step S101, the feature values are stored in the time series memory. save. In step S102, cnt_OK is incremented. In step S103, it is determined whether cnt_OK exceeds a predetermined number N (for example, N = 10). Here, when cnt_OK does not exceed the predetermined number N (No), it is determined as case2 and the process returns to step S64 in FIG. On the other hand, when cnt_OK exceeds the predetermined number N (No), it is determined as case1 and the process proceeds to step S68 in FIG.
図18に戻って、ステップS64乃至ステップS67の繰り返し終了後には、時系列データメモリにはN枚の物体領域画像の特徴量セットが保持されている。そこでステップS68において、ロボット装置1は、この時系列特徴量セットから学習対象物体のモデルとなるモデル特徴量セットを抽出する。
Returning to FIG. 18, after the repetition of step S64 to step S67, the feature amount set of N object region images is held in the time-series data memory. Accordingly, in step S68, the
ここで、モデル特徴量セットの抽出は、時系列データメモリ内の各時刻の特徴量セット同士を全ての組み合わせで特徴量マッチングしたときに、マッチした、すなわち他の時刻における特徴量と類似し対応の取れる特徴量をより多く有する特徴量セットの中から、より多くマッチした特徴量のみを選択することで実現することができる。 Here, the extraction of the model feature value set corresponds to the feature value match when the feature value sets at each time in the time series data memory are matched with all combinations, that is, similar to the feature values at other times. This can be realized by selecting only feature quantities that match more from a feature quantity set having more feature quantities that can be taken.
以下、このモデル特徴量セットの抽出アルゴリズムについて説明する。時系列データメモリ内のN枚の物体領域画像の特徴量セットをF1,F2,・・・,FNとする。i=1,・・・,N、j=1,・・・,Nのi≠jである全ての組み合わせ(Fi,Fj)に関して、Fiをモデル画像の特徴量群、Fjをオブジェクト画像の特徴量群と仮に見なして物体認識システム(図9)の特徴量比較部630にかけ、(Fi,Fj)の候補対応特徴点ペア群を抽出する。そして、(Fi,Fj)の候補対応特徴点ペアの数をpijとし、j≠iである全てのjについてのpijの総和をPiとしたとき、Max{Pi}を満たすiを求め、以下ではFiに注目する。
The model feature quantity set extraction algorithm will be described below. Let F 1 , F 2 ,..., F N be feature quantity sets of N object region images in the time-series data memory. For all combinations (F i , F j ) where i = 1,..., N, j = 1,..., and N ≠ j, F i is the feature quantity group of the model image, and F j is The feature
具体的にN=5の場合、図21(A)に示すように、特徴量セットF1,F2,・・・,F5のi≠jである全ての組み合わせ(Fi,Fj)に関して候補対応特徴点ペア群を抽出する。例えば特徴量セットF4について、(F4,F1),(F4,F2),(F4,F3),(F4,F5)の組み合わせに関して候補対応特徴点ペア群を抽出する。この結果、候補対応特徴点ペアの数pijが例えばp41=3,p42=1,p43=2,p45=2となった場合、その総和P4は8となる。ここで、例えばp41=3とは、特徴量セットF4と特徴量セットF1との間の候補対応特徴点ペアが3組存在することを意味する。同様にして、P1=6,P2=5,P3=6,P5=7であった場合、その最大値を示すiは4であり、以下ではF4に注目する。 Specifically, when N = 5, as shown in FIG. 21A, all combinations (F i , F j ) where i ≠ j of feature quantity sets F 1 , F 2 ,..., F 5. A candidate corresponding feature point pair group is extracted. For example, a candidate corresponding feature point pair group is extracted for the combination of (F 4 , F 1 ), (F 4 , F 2 ), (F 4 , F 3 ), (F 4 , F 5 ) for the feature quantity set F 4. To do. As a result, when the number p ij of candidate corresponding feature point pairs becomes, for example, p 41 = 3, p 42 = 1, p 43 = 2 and p 45 = 2, the sum P 4 is 8. Here, for example, p 41 = 3 means that there are three candidate corresponding feature point pairs between the feature value set F 4 and the feature value set F 1 . Similarly, when P 1 = 6, P 2 = 5, P 3 = 6, and P 5 = 7, i indicating the maximum value is 4, and attention is paid to F 4 below.
次に、Fiの特徴量をvi1,vi2,・・・,viLとする。各特徴量vil(l=1,・・・,L)が他の特徴点とペア組みされた回数をq_vilとし、q_vilが充分大きい特徴量vil、例えば以下の式(19)を満たす特徴量vilのみを抽出し、学習対象物体のモデル特徴量セットMとする。 Next, the feature amount of F i v i1, v i2, ···, and v iL. The number of times each feature quantity v il (l = 1,..., L) is paired with another feature point is defined as q_v il, and q_v il is a sufficiently large feature quantity v il , for example, the following equation (19) Only the feature quantity v il that satisfies is extracted and set as a model feature quantity set M of the learning target object.
同様にN=5の場合、図21(B)に示すように、注目している特徴量セットF4の特徴量v41は、特徴量セットF1,F2,F3,F5の特徴点とペア組みされているため、q_v41=4となる。同様にして、q_v42=2,q_v43=3となった場合、上述した式(15)を満たす特徴量v41,v43を学習対象物体のモデル特徴量セットMとする。 Similarly, when N = 5, as shown in FIG. 21B, the feature quantity v 41 of the feature quantity set F 4 of interest is the feature quantity feature F 1 , F 2 , F 3 , F 5 . Since it is paired with a point, q_v 41 = 4. Similarly, when q_v 42 = 2 and q_v 43 = 3, the feature amounts v 41 and v 43 satisfying the above-described equation (15) are set as the model feature amount set M of the learning target object.
再び図18に戻って、ステップS69では、モデル特徴量セットMの特徴量数が充分多いか否かを判別する。そして、特徴量数が充分に多ければ、ステップS70でモデル特徴量セットMを物体モデルデータベースに登録し、ステップS71において、例えば「物体の学習が終了しました」という既定のセンテンスを発話することで物体学習が終了した旨をユーザに伝える。一方、ステップS69で特徴量数が充分多くない場合(No)にはステップ72に進み、例えば「物体学習が失敗しました。学習を終了します。もう一度学習させたい場合は『これを憶えて』と言ってください」という既定のセンテンスを発話することで物体学習が失敗した旨をユーザに伝える。 Returning to FIG. 18 again, in step S69, it is determined whether or not the number of feature quantities of the model feature quantity set M is sufficiently large. If the number of features is sufficiently large, the model feature set M is registered in the object model database in step S70, and in step S71, for example, a predetermined sentence such as “object learning is completed” is spoken. Tell the user that object learning has ended. On the other hand, if the number of feature values is not sufficiently large (No) in step S69, the process proceeds to step 72. For example, “Object learning has failed. Learning will be terminated. Tell the user that object learning has failed by speaking the default sentence.
(2−3)物体認識フェーズ
上述したロボット装置1が環境中を移動しながら学習済みの物体を認識する物体認識フェーズについてさらに説明する。この物体認識フェーズでは、ロボット装置1の頭部ユニット3に設けられたCCDカメラで撮像した入力画像の特徴量を抽出し、その特徴量を物体モデルデータベースに登録されている既学習物体の特徴量と比較することで、入力画像中に存在する物体をリアルタイムに検出する。
(2-3) Object Recognition Phase The object recognition phase in which the
物体認識フェーズにおける処理を図22のフローチャートに示す。先ずステップS111において、物体認識システム(図9)の特徴点抽出部610b及び特徴量保持部620bを用いて入力画像の特徴量セットFを抽出する。一方、物体モデルデータベースにはK個の既学習物体に対応するK個のモデル特徴量セットM1,M2,・・・,MKが登録されているとする。
The process in the object recognition phase is shown in the flowchart of FIG. First, in step S111, the feature amount set F of the input image is extracted using the feature
次にステップS112において、物体認識システムの特徴量比較部630及びモデル姿勢推定部640を用いて、特徴量セットFと各モデル特徴量セットMiとのマッチングをし、入力画像中の物体Miの検出を行う。このとき、モデル特徴量セットMiの要素数、すなわち特徴量数をmiとし、特徴量セットMiのうち特徴量セットFと対応がとれた要素数をmfiとして、以下の式(20)に示すように、mfiのmiに対する比率を物体Miの検出結果の確信度Ciと定義する。
In step S112, by using the feature
続いてステップS113において、入力画像中の既学習物体の認識結果を出力する。このとき、各既学習物体の認識結果は、確信度Ciと、mfiが3以上の場合は既学習物体の入力画像中での推定姿勢(アフィン変換パラメータ:既学習物体の平行移動量、回転角度、拡大率)により出力される。 In step S113, the recognition result of the learned object in the input image is output. At this time, the recognition result of each existing learning object, a confidence C i, the estimated posture (affine transformation parameters in the case of mf i is 3 or more in the input image already learning object: translation amount already learning object, (Rotation angle, magnification).
この手法では、各既学習物体に対応するモデル特徴量セットMiが独立してマッチングにかけられるため、入力画像中に複数の既学習物体が存在する場合にも対応することができる。また、この確信度Ciを、例えば複数の物体がオーバーラップして検出された場合の状況判断に用いることができる。例えば、A及びBの2物体が共に高い確信度でオーバーラップして検出された場合には、一方が他方を部分的に隠していると判断できる。一方、Aのみが高い確信度を持つ場合には、Bの大部分がAによって隠されているか、或いはBが誤検出である可能性が高いと推定できる。また、A,B共に低い確信度の場合には、何れの物体も誤検出である可能性が高いと推定できる。このようにファジィな認識結果を出力することにより、この認識結果に基づいて行われるロボット装置1の行動選択などに柔軟性を与えることが可能となる。
In this method, since it is subjected to matching by independent model feature quantity set M i for each already learning object, it is possible to cope with a case where there are a plurality of previously learned object in the input image. Further, the certainty factor C i can be used, for example, for situation determination when a plurality of objects are detected in an overlapping manner. For example, if two objects A and B are both detected with high certainty, it can be determined that one of them partially hides the other. On the other hand, when only A has a high certainty factor, it can be estimated that most of B is hidden by A or that B is likely to be a false detection. Further, when both A and B have low certainty, it can be estimated that any object is highly likely to be erroneously detected. By outputting the fuzzy recognition result in this way, it becomes possible to give flexibility to the action selection of the
(3)変形例
以上、本発明を実施するための最良の形態について説明したが、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
(3) Modifications The best mode for carrying out the present invention has been described above. However, the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the present invention. Of course, it can be changed.
例えば、上述した実施の形態では、2足歩行型のロボット装置に適用する場合について説明したが、これに限定されるものではなく、この他種々の構成のロボット装置及びロボット装置以外の他の装置に広く適用することができる。 For example, in the above-described embodiment, the case where the present invention is applied to a bipedal walking robot apparatus has been described. However, the present invention is not limited to this, and other various robot apparatuses and other apparatuses other than the robot apparatus may be used. Can be widely applied to.
また、上述した実施の形態では、既定のトリガワードを認識することで物体学習フェーズが開始されるものとして説明したが、これに限定されるものではなく、例えばロボット装置に設けられた特定のスイッチ等によるセンサ入力をトリガとして物体学習フェーズを開始するようにしても構わない。この手法は、音声認識手段を有さないロボット装置に本発明を適用する場合に有効である。 In the embodiment described above, the object learning phase is started by recognizing a predetermined trigger word. However, the present invention is not limited to this. For example, a specific switch provided in the robot apparatus is used. The object learning phase may be started by using a sensor input such as as a trigger. This technique is effective when the present invention is applied to a robot apparatus having no voice recognition means.
また、上述した実施の形態では、動領域を抽出する際に差分画像と距離情報とを用いるものとして説明したが、これに限定されるものではなく、例えばオプティカルフローを用いた手法(「岡田,白井,三浦,久野、『オプティカルフローと距離情報に基づく動物体追跡』、電子情報通信学会論文誌 D-II, Vol.J80-D-II, No.6, pp.1530-1538, 1997」参照)や、watershed法を用いた手法(「境田,苗村,金次、『背景差分法と時空間watershedによる領域成長法を併用した動画像オブジェクトの抽出』、電子情報通信学会論文誌 D-II, Vol.J84-D-II, No.12, pp.2541-2555, 2001」参照)など、種々の動領域抽出手法を適用することができる。 In the above-described embodiment, the difference image and the distance information are used when extracting the moving region. However, the present invention is not limited to this. For example, a technique using an optical flow (“Okada, See Shirai, Miura, and Kuno, "Tracking of moving objects based on optical flow and distance information", IEICE Transactions, D-II, Vol.J80-D-II, No.6, pp.1530-1538, 1997. ) And a method using the watershed method (“Sakaida, Naemura, Kinji,“ Extraction of moving image objects using the background difference method and the region growth method by spatio-temporal watershed ”), IEICE Transactions D-II, Vol.J84-D-II, No.12, pp.2541-2555, 2001 ") can be applied.
また、上述した実施の形態では、物体認識の基本技術として特許願2003−124225の明細書及び図面で提案した手法をベースとした場合について説明したが、これに限定されるものではなく、種々の物体認識システムを利用することができる。この場合、物体モデルデータベースには、その物体認識システムが利用する特徴量セットを保持すればよい。また、候補対応特徴点ペア群を出力しない物体認識システムを利用する場合には、図18のステップS64乃至ステップS67の繰り返しを1回のみにすることで本発明の適応が可能となる。 Further, in the above-described embodiment, the case where the technique proposed in the specification and drawings of Patent Application 2003-124225 is used as a basic object recognition technology has been described. An object recognition system can be used. In this case, the feature model set used by the object recognition system may be held in the object model database. Further, when using an object recognition system that does not output a candidate corresponding feature point pair group, the present invention can be adapted by repeating step S64 to step S67 of FIG. 18 only once.
また、上述した実施の形態では、物体学習フェーズの終了を既定センテンスを音声合成し発話することでユーザに明示するものとして説明したが、これに限定されるものではなく、ロボット装置に搭載された特定のLED(Light Emission Diode)を発光させたり、スピーカから特定の音を出力させたりすることで物体学習フェーズの終了をユーザに明示するようにしても構わない。この手法は、音声合成機能を有さないロボット装置に本発明を適用する場合に有効である。 In the above-described embodiment, the end of the object learning phase has been described as being clearly shown to the user by synthesizing and speaking a predetermined sentence. However, the present invention is not limited to this and is installed in the robot apparatus. The end of the object learning phase may be clearly indicated to the user by emitting a specific LED (Light Emission Diode) or outputting a specific sound from a speaker. This technique is effective when the present invention is applied to a robot apparatus that does not have a speech synthesis function.
上述した本発明によれば、ロボット装置が自身の行動する外部環境中に存在する物体の視覚的特徴を学習する際に、先ず学習対象となる学習対象物体を動かしてもらうように音声によりユーザに指示を与え、ユーザがその学習対象物体を動かしている様子を撮像し、撮像画像から学習対象物体の物体領域画像を抽出し、その物体領域画像から特徴量群を抽出して保持することにより、背景が多様に変化する実環境下においても、環境中の物体を精度よく自律的に学習することができる。特に、対話を介して物体を学習することができるため、物体を学習させるユーザの負担が少なく、また、ロボット装置のエンターテインメント性も向上する。また、ロボット装置の撮像手段によって撮像した入力画像から特徴量群を抽出し、その特徴量群を予め保持された学習済みの物体の特徴量群と比較することにより、入力画像中に学習済みの物体が存在するか否かをリアルタイムに検出することができる。 According to the above-described present invention, when the robot apparatus learns the visual characteristics of an object existing in the external environment in which the robot apparatus acts, the user first makes a voice call so that the learning target object to be learned is moved. By giving an instruction, capturing an image of the user moving the learning target object, extracting the object region image of the learning target object from the captured image, and extracting and holding a feature amount group from the object region image, Even in a real environment where the background changes variously, it is possible to autonomously learn objects in the environment with high accuracy. In particular, since an object can be learned through dialogue, the burden on the user who learns the object is reduced, and the entertainment characteristics of the robot apparatus are also improved. In addition, a feature amount group is extracted from the input image captured by the image pickup unit of the robot apparatus, and the feature amount group is compared with the feature amount group of the learned object stored in advance, so that it has been learned in the input image. Whether or not an object exists can be detected in real time.
1 ロボット装置、2 体幹部ユニット、3 頭部ユニット、4R/L 腕部ユニット、5R/L 脚部ユニット、400 音声認識部、410 応答生成部、410a,410b・・・ 応答生成モジュール、420 対話制御部、430 音声合成部、600 物体認識システム、610a,610b 特徴点抽出部、620a,620b 特徴量保持部、630 特徴量比較部、640 モデル姿勢推定部 1 robot apparatus, 2 trunk unit, 3 head unit, 4R / L arm unit, 5R / L leg unit, 400 speech recognition unit, 410 response generation unit, 410a, 410b ... response generation module, 420 dialogue Control unit, 430 Speech synthesis unit, 600 Object recognition system, 610a, 610b Feature point extraction unit, 620a, 620b Feature quantity holding unit, 630 Feature quantity comparison unit, 640 Model posture estimation unit
Claims (22)
音声を認識し、ユーザから物体学習を開始する旨の指示が音声により与えられたか否かを判断する音声認識手段と、
上記音声認識手段により上記ユーザから物体学習を開始する旨の指示が与えられたと判断されると、上記ユーザに対して物体学習の手続きとして学習対象となる学習対象物体を動かしながら提示するよう指示する音声を出力する音声出力手段と、
上記学習対象物体を撮像する撮像手段と、
撮像した画像中に上記学習対象物体が占める物体領域画像を抽出する画像抽出手段と、
上記画像抽出手段により抽出された上記物体領域画像から、複数の特徴量からなる特徴量群を抽出して保持する特徴量保持手段とを備え、
上記特徴量保持手段は、上記物体領域画像からの特徴量抽出の結果を評価することで、上記ユーザによる上記学習対象物体が適切な状況下で提示されているか否かを判断し、適切でない状況下で提示されていると判断した場合には、該物体領域画像から抽出された特徴量群を保持せず、上記音声出力手段は、上記ユーザに対して上記学習対象物体を適切な状況下で再提示するよう指示する音声を出力する
ロボット装置。 In a robotic device that learns the visual features of objects in the environment,
Voice recognition means for recognizing voice and determining whether or not an instruction to start object learning is given by voice from the user;
If it is determined by the voice recognition means that the user has given an instruction to start object learning, the user is instructed to present the object to be learned while moving as a procedure for object learning. Audio output means for outputting audio;
Imaging means for imaging the learning object;
Image extracting means for extracting an object region image occupied by the learning target object in the captured image;
Feature quantity holding means for extracting and holding a feature quantity group consisting of a plurality of feature quantities from the object region image extracted by the image extraction means ,
The feature amount holding unit determines whether or not the learning target object by the user is presented in an appropriate situation by evaluating a result of feature amount extraction from the object region image, and an inappropriate situation If it is determined that it is presented below, the speech output means does not hold the feature quantity group extracted from the object region image, and the sound output means A robot device that outputs a voice instructing re-presentation .
上記特徴量保持手段は、上記時系列の物体領域画像の各々から特徴量群を抽出し、抽出された上記時系列の物体領域画像の全特徴量群から、上記学習対象物体の特徴量を選択する
請求項1記載のロボット装置。 The image extraction means extracts a time-series object region image from a time-series captured image obtained by repeatedly capturing the learning target object by the imaging means,
The feature amount holding means extracts a feature amount group from each of the time-series object region images, and selects a feature amount of the learning target object from all the extracted feature amount groups of the time-series object region image. robot apparatus according to claim 1, wherein you.
上記特徴量保持手段に保持されている学習済みの物体の特徴量群と、上記特徴量抽出手段によって抽出された特徴量群とを比較し、上記入力画像中に上記学習済みの物体が存在するか否かを検出する特徴量比較手段と
をさらに備える請求項1記載のロボット装置。 Feature quantity extraction means for extracting a feature quantity group from an input image captured by the imaging means;
The feature quantity group of the learned object held in the feature quantity holding means is compared with the feature quantity group extracted by the feature quantity extraction means, and the learned object exists in the input image. robot apparatus further comprising Ru claim 1, wherein the feature quantity comparison means for detecting whether.
音声を認識し、ユーザから物体学習を開始する旨の指示が音声により与えられたか否かを判断する音声認識工程と、
上記音声認識工程にて上記ユーザから物体学習を開始する旨の指示が与えられたと判断されると、上記ユーザに対して物体学習の手続きとして学習対象となる学習対象物体を動かしながら提示するよう指示する音声を出力する提示指示工程と、
撮像手段により上記学習対象物体を撮像する撮像工程と、
撮像した画像中に上記学習対象物体が占める物体領域画像を抽出する画像抽出工程と、
上記画像抽出工程にて抽出された上記物体領域画像から、複数の特徴量からなる特徴量群を抽出して保持する特徴量保持工程とを有し、
上記特徴量保持工程では、上記物体領域画像からの特徴量抽出の結果を評価することで、上記ユーザによる上記学習対象物体が適切な状況下で提示されているか否かを判断し、適切でない状況下で提示されていると判断した場合には、該物体領域画像から抽出された特徴量群を保持せず、上記音声出力手段は、上記ユーザに対して上記学習対象物体を適切な状況下で再提示するよう指示する音声を出力する
物体学習方法。 In an object learning method of a robot apparatus that learns visual features of an object existing in an environment,
A voice recognition step of recognizing voice and determining whether or not an instruction to start object learning is given by voice from the user;
When it is determined in the voice recognition step that the user has given an instruction to start object learning, the user is instructed to present the learning target object to be learned while moving as an object learning procedure. A presentation instruction step for outputting a sound to be performed;
An imaging step of imaging the learning target object by an imaging means;
An image extraction step of extracting an object region image occupied by the learning target object in the captured image;
Possess from the object area image extracted by the image extraction step, the feature amount holding step of holding by extracting a feature amount group including a plurality of feature amounts,
In the feature amount holding step, it is determined whether or not the learning target object by the user is presented under an appropriate situation by evaluating a result of feature quantity extraction from the object region image. If it is determined that it is presented below, the speech output means does not hold the feature quantity group extracted from the object region image, and the sound output means An object learning method for outputting a voice instructing re-presentation .
上記特徴量保持工程では、上記時系列の物体領域画像の各々から特徴量群を抽出し、抽出された上記時系列の物体領域画像の全特徴量群から、上記学習対象物体の特徴量を選択する
請求項12記載の物体学習方法。 In the image extraction step, a time-series object region image is extracted from a time-series captured image obtained by repeatedly capturing the learning target object by the imaging means,
In the feature amount holding step, a feature amount group is extracted from each of the time-series object region images, and a feature amount of the learning target object is selected from all the feature amount groups of the extracted time-series object region images. object learning method according to claim 12, wherein you.
上記特徴量保持工程にて保持された学習済みの物体の特徴量群と、上記特徴量抽出工程にて抽出された特徴量群とを比較し、上記入力画像中に上記学習済みの物体が存在するか否かを検出する特徴量比較工程と
をさらに有する請求項12記載の物体学習方法。 A feature amount extraction step of extracting a feature amount group from the input image imaged by the imaging means;
The feature quantity group of the learned object held in the feature quantity holding step is compared with the feature quantity group extracted in the feature quantity extraction step, and the learned object exists in the input image. whether the feature quantity comparison step and the further object learning method according to claim 12, wherein that having a for detecting the to.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003381592A JP4407244B2 (en) | 2003-11-11 | 2003-11-11 | Robot apparatus and object learning method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003381592A JP4407244B2 (en) | 2003-11-11 | 2003-11-11 | Robot apparatus and object learning method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005148851A JP2005148851A (en) | 2005-06-09 |
JP4407244B2 true JP4407244B2 (en) | 2010-02-03 |
Family
ID=34690922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003381592A Expired - Fee Related JP4407244B2 (en) | 2003-11-11 | 2003-11-11 | Robot apparatus and object learning method thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4407244B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101553522B1 (en) * | 2008-12-29 | 2015-09-16 | 삼성전자 주식회사 | Robot and method thereof |
JP2012524663A (en) * | 2009-04-23 | 2012-10-18 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Object learning robot and method |
JP5310402B2 (en) * | 2009-09-02 | 2013-10-09 | 日本電気株式会社 | Image conversion parameter calculation apparatus, image conversion parameter calculation method, and program |
CN102375412B (en) * | 2010-08-13 | 2013-05-01 | 同济大学 | Robot walking learning information processing method under unknown environment based on rhythmic pattern |
JP6153086B2 (en) * | 2011-12-14 | 2017-06-28 | 日本電気株式会社 | Video processing system, video processing method, video processing apparatus for portable terminal or server, and control method and control program therefor |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06282654A (en) * | 1991-09-25 | 1994-10-07 | Carnegie Mellon Univ | Apparatus and method for learnable protection |
JPH11355709A (en) * | 1998-06-04 | 1999-12-24 | Minolta Co Ltd | Digital camera |
US6149490A (en) * | 1998-12-15 | 2000-11-21 | Tiger Electronics, Ltd. | Interactive toy |
JP3508658B2 (en) * | 1999-11-24 | 2004-03-22 | 日本電気株式会社 | Document image acquisition device, acquisition method, acquisition program recording medium |
JP2002160185A (en) * | 2000-03-31 | 2002-06-04 | Sony Corp | Robot device, behavior controlling method for robot device and device and method for detecting external force |
JP2003254716A (en) * | 2002-03-04 | 2003-09-10 | Sony Corp | Instrument and method for measuring three-dimensional position and posture, storage medium, and computer program |
-
2003
- 2003-11-11 JP JP2003381592A patent/JP4407244B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005148851A (en) | 2005-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4492036B2 (en) | Image recognition apparatus and method, and robot apparatus | |
Roy et al. | Active recognition through next view planning: a survey | |
JP4636016B2 (en) | Plane detection apparatus, plane detection method, and robot apparatus equipped with plane detection apparatus | |
Shabbir et al. | A survey of deep learning techniques for mobile robot applications | |
JP3994950B2 (en) | Environment recognition apparatus and method, path planning apparatus and method, and robot apparatus | |
Winters et al. | Omni-directional vision for robot navigation | |
CN108496127B (en) | Efficient three-dimensional reconstruction focused on an object | |
JP3945279B2 (en) | Obstacle recognition apparatus, obstacle recognition method, obstacle recognition program, and mobile robot apparatus | |
Sabe et al. | Obstacle avoidance and path planning for humanoid robots using stereo vision | |
Waldherr et al. | A gesture based interface for human-robot interaction | |
US20060241827A1 (en) | Obstacle avoiding apparatus, obstacle avoiding method, obstacle avoiding program and mobile robot apparatus | |
JP4618247B2 (en) | Robot apparatus and operation control method thereof | |
JP4016180B2 (en) | Planar extraction method, apparatus thereof, program thereof, recording medium thereof, and imaging apparatus | |
GB2612029A (en) | Lifted semantic graph embedding for omnidirectional place recognition | |
JP2005078376A (en) | Object detection device, object detection method, and robot device | |
JP4535096B2 (en) | Planar extraction method, apparatus thereof, program thereof, recording medium thereof, and imaging apparatus | |
Ma et al. | A probabilistic framework for object search with 6-dof pose estimation | |
Hueser et al. | Learning of demonstrated grasping skills by stereoscopic tracking of human head configuration | |
Shi et al. | Fuzzy dynamic obstacle avoidance algorithm for basketball robot based on multi-sensor data fusion technology | |
JP4449410B2 (en) | Robot apparatus and object learning method thereof | |
JP4407244B2 (en) | Robot apparatus and object learning method thereof | |
Hu et al. | Multi-user identification and efficient user approaching by fusing robot and ambient sensors | |
Gross et al. | Probabilistic multi-modal people tracker and monocular pointing pose estimator for visual instruction of mobile robot assistants | |
JP2005074562A (en) | Robotic device, controlling method of the robotic device, and recording medium | |
Raducanu et al. | Advances in Mobile Robots Self-Localization Using Morphological Neural Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090731 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090804 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090928 |
|
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: 20091020 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091102 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121120 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |