JP2003271975A - Method of extracting plane, extractor therefor, program therefor, recording medium therefor, and robot system mounted with plane extractor - Google Patents
Method of extracting plane, extractor therefor, program therefor, recording medium therefor, and robot system mounted with plane extractorInfo
- Publication number
- JP2003271975A JP2003271975A JP2002073387A JP2002073387A JP2003271975A JP 2003271975 A JP2003271975 A JP 2003271975A JP 2002073387 A JP2002073387 A JP 2002073387A JP 2002073387 A JP2002073387 A JP 2002073387A JP 2003271975 A JP2003271975 A JP 2003271975A
- Authority
- JP
- Japan
- Prior art keywords
- plane
- voting
- dimensional data
- parameter
- calculating
- 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.)
- Granted
Links
Landscapes
- Manipulator (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、視差又は距離画像
等の3次元データから平面を抽出する平面抽出方法、そ
の装置、そのプログラム、その記録媒体及び平面抽出装
置搭載型ロボット装置に関し、特に、平面抽出における
信頼度及び演算速度を高めた平面抽出方法、その装置、
そのプログラム、その記録媒体及び平面抽出装置搭載型
ロボット装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a plane extraction method for extracting a plane from three-dimensional data such as parallax or range images, an apparatus therefor, a program therefor, a recording medium therefor, and a robot apparatus equipped with a plane extraction apparatus. Plane extraction method and apparatus for improving reliability and calculation speed in plane extraction,
The present invention relates to the program, a recording medium thereof, and a plane extraction device-mounted robot device.
【0002】[0002]
【従来の技術】電気的又は磁気的な作用を用いて人間
(生物)の動作に似た運動を行う機械装置を「ロボッ
ト」という。我が国においてロボットが普及し始めたの
は、1960年代末からであるが、その多くは、工場に
おける生産作業の自動化・無人化等を目的としたマニピ
ュレータ及び搬送ロボット等の産業用ロボット(Indust
rialRobot)であった。2. Description of the Related Art A mechanical device that makes a movement similar to that of a human being (organism) using electric or magnetic action is called a "robot". Robots started to spread in Japan from the end of the 1960s, but most of them are industrial robots such as manipulators and transfer robots (Industrial Robots) for the purpose of automating and unmanning production work in factories.
rialRobot).
【0003】最近では、人間のパートナーとして生活を
支援する、即ち住環境その他の日常生活上の様々な場面
における人的活動を支援する実用ロボットの開発が進め
られている。このような実用ロボットは、産業用ロボッ
トとは異なり、人間の生活環境の様々な局面において、
個々に個性の相違した人間、又は様々な環境への適応方
法を自ら学習する能力を備えている。例えば、犬又は猫
のように4足歩行の動物の身体メカニズム及びその動作
を模した「ペット型」ロボット、或いは、2足直立歩行
を行う人間等の身体メカニズム及びその動作をモデルに
してデザインされた「人間型」又は「人間形」ロボット
(Humanoid Robot)等のロボット装置は、既に実用化さ
れつつある。Recently, practical robots have been developed to support life as a human partner, that is, to support human activities in various situations such as living environment and other daily life. Unlike an industrial robot, such a practical robot is used in various aspects of the human living environment.
It has the ability to self-learn how to adapt to individuals with different personalities or various environments. For example, it is designed by using a “pet type” robot that imitates the body mechanism and movement of a quadruped animal such as a dog or a cat, or a body mechanism and movement of a human walking two legs upright. Robot devices such as “humanoid” or “humanoid” robots (Humanoid Robots) are already in practical use.
【0004】これらのロボット装置は、産業用ロボット
と比較して、例えばエンターテインメント性を重視した
様々な動作等を行うことができるため、エンターテイン
メントロボットと呼称される場合もある。また、そのよ
うなロボット装置には、外部からの情報及び内部の状態
に応じて自律的に動作するものがある。These robot devices are sometimes called entertainment robots because they can perform various operations, etc., with emphasis on entertainment, as compared with industrial robots. Further, some of such robot devices operate autonomously in accordance with information from the outside and internal states.
【0005】ところで、自律型ロボット装置において、
自身の周りの環境を認識して経路計画を立て、それに応
じて移動する能力は言うまでもなく重要である。環境を
認識するためには、ロボット装置の周囲の障害物情報等
が必要である。従って、ロボット装置は、距離画像又は
視差画像等の3次元データから床となる平面を検出し、
障害物を認識する必要がある。By the way, in the autonomous robot apparatus,
Needless to say, the ability to recognize the environment around oneself, plan a route, and move accordingly. In order to recognize the environment, information on obstacles around the robot is required. Therefore, the robot device detects the plane that is the floor from the three-dimensional data such as the range image or the parallax image,
You need to recognize obstacles.
【0006】3次元データから平面を抽出する方法とし
ては、ハフ変換(Hough Transform)を使用する方法が
ある。ハフ変換には、Forward Position,Backward Pos
ition,Feature Point Pairs等といわれるいくつかの方
法がある。以下、これらのハフ変換について、簡単のた
め、2次元画像平面内の直線検出の例として説明する。
元画像からは何らかの画像処理により、エッジ(直線上
にのると予想される特徴点)が検出されているものとす
る。また、特徴点の数をMとし、元画像の大きさをL×
L、投票先のパラメータ空間(投票箱)の大きさをl
(エル)×l(エル)とする。As a method of extracting a plane from three-dimensional data, there is a method of using Hough Transform. Forward Position, Backward Pos
There are several methods called ition and Feature Point Pairs. Hereinafter, these Hough transforms will be described as an example of straight line detection in a two-dimensional image plane for simplicity.
It is assumed that edges (feature points expected to lie on a straight line) have been detected from the original image by some image processing. Further, the number of feature points is M, and the size of the original image is L ×
L, the size of the voting destination parameter space (ballot box) is l
(L) x 1 (L).
【0007】Forward Positionでは、元画像の特徴点を
順次たどり、各点をパラメータ空間内に写像したときの
曲線が通るスロット1つ1つに投票していく。アルゴリ
ズムの複雑度はO(Ml)である。In Forward Position, the characteristic points of the original image are sequentially traced, and votes are cast for each slot through which the curve when each point is mapped in the parameter space passes. The complexity of the algorithm is O (Ml).
【0008】Backward Positionでは、パラメータ空間
内の各スロットを順次操作し、各スロットを元画像に対
し逆写像した直線上にのっている特徴点の数をそのスロ
ットの得票とする。アルゴリズムの複雑度はO(L
l2)である。In Backward Position, each slot in the parameter space is sequentially operated, and the number of characteristic points on the straight line obtained by inversely mapping each slot to the original image is used as the vote of that slot. The complexity of the algorithm is O (L
12 ).
【0009】Feature Point Pairsでは、特徴点2点の
あらゆる組み合わせを順次たどり、その2点の組から計
算されるパラメータが属するスロッドに得票する。アル
ゴリズムの複雑度はO(M2)である。In Feature Point Pairs, every combination of two characteristic points is sequentially traced, and the slod to which the parameter calculated from the pair of two characteristic points belongs is voted. The complexity of the algorithm is O (M 2 ).
【0010】しかしながら、これらのハフ変換により3
次元データから平面を抽出する方法は、演算量及び使用
メモリが極めて多くなる。これは、次元数が2次元より
も1つ多い上に、全てのデータポイントが特徴点として
の意味を有するためである。従って、これらのハフ変換
は、3次元データからの平面検出というタスクにおいて
は、演算量及び使用メモリの観点から何れも現実的では
ない。However, these Hough transforms result in 3
The method of extracting the plane from the dimensional data requires an extremely large amount of calculation and memory. This is because the number of dimensions is one more than that in two dimensions, and all the data points have meaning as feature points. Therefore, neither of these Hough transforms is practical in terms of the amount of calculation and memory used in the task of plane detection from three-dimensional data.
【0011】また、ランダム化ハフ変換(Randomized H
ough Transform:RHT)と呼ばれるハフ変換がある。
このランダム化ハフ変換は、上述したFeature Point Pa
irsの派生であり、上述の2次元画像平面内において
は、特徴点2点のあらゆる組み合わせではなく、ランダ
ムサンプリングによるK通りの組み合わせについてのみ
処理を行うものである。このアルゴリズムの複雑度はO
(K)である。In addition, Randomized Hough transform
There is a Hough transform called ough Transform (RHT).
This randomized Hough transform is based on the above Feature Point Pa
This is a derivation of irs, and in the above-described two-dimensional image plane, not all combinations of two feature points but only K combinations by random sampling are processed. The complexity of this algorithm is O
(K).
【0012】従来、3次元データから平面を検出するた
めにハフ変換を利用した方法が提案されている。例え
ば、特開平10−96607号公報には、3次元データ
に対してハフ変換処理をして平面物体の3次元空間にお
ける位置を推定する物体検出方法及び平面推定方法が開
示されている(以下、従来例1という。)。従来例1に
記載の技術においては、3次元データである視差画像か
らハフ曲線をある平面上にプロットし、これらのハフ曲
線が最も多く通過する平面上の点を求め、これに基づ
き、ある平面上にあると仮定した平面直線群の垂線の傾
き及びY軸までの距離を補正して平面物体を推定してい
る。Conventionally, there has been proposed a method using Hough transform for detecting a plane from three-dimensional data. For example, Japanese Laid-Open Patent Publication No. 10-96607 discloses an object detection method and a plane estimation method for performing Hough transform processing on three-dimensional data to estimate the position of a plane object in a three-dimensional space (hereinafter, referred to as a plane estimation method). Conventional example 1.). In the technique described in Conventional Example 1, a Hough curve is plotted on a certain plane from a parallax image that is three-dimensional data, points on the plane through which these Huff curves most pass are determined, and based on this, a certain plane is obtained. The plane object is estimated by correcting the inclination of the perpendicular line of the plane straight line group assumed to be above and the distance to the Y axis.
【0013】また、特開平9−81755号公報には、
平面上の距離データを精度よく測定することを目的とし
た平面推定方法が開示されている(以下、従来例2とい
う)。従来例2に記載の技術においては、ステレオ画像
を矩形小領域に分割してこの小領域毎に距離データを求
め、この小領域毎を水平方向にグループ化した大領域毎
に、これらの領域に含まれるM個の距離データからハフ
変換により平面通過直線を当てはめ、これを全ての大領
域について行うことにより撮像空間における平面を推定
するものである。Further, Japanese Patent Laid-Open No. 9-81755 discloses that
A plane estimation method has been disclosed for the purpose of accurately measuring distance data on a plane (hereinafter referred to as Conventional Example 2). In the technique described in the second conventional example, a stereo image is divided into rectangular small areas, distance data is obtained for each small area, and each small area is grouped in the horizontal direction into these areas. The plane in the imaging space is estimated by fitting a plane passing straight line from the included M pieces of distance data by Hough transform and performing this for all large areas.
【0014】更に、特開平7−271978号公報に
は、メモリ容量及び処理時間短縮を図った画像処理装置
が開示されている(以下、従来例3という。)この従来
例3に記載の技術においては、3次元空間から直線群を
入力し、この直線群の法線ベクトルを特徴空間に投票
し、これに基づき所定の本数の直線を含む平面を抽出す
るものである。Further, Japanese Unexamined Patent Publication No. 7-271978 discloses an image processing apparatus which has a reduced memory capacity and a reduced processing time (hereinafter referred to as Conventional Example 3). Is to input a straight line group from a three-dimensional space, vote a normal vector of this straight line group in the feature space, and extract a plane including a predetermined number of straight lines based on this.
【0015】[0015]
【発明が解決しようとする課題】しかしながら、従来例
1乃至従来例3に記載の技術においては、投票空間に対
して平面パラメータを求め直接投票するものではないた
め、処理が煩雑になると共に、ハフ変換が有する確率推
定としての利点を十分に生かすことができないという問
題点がある。However, in the techniques described in the conventional examples 1 to 3, since the plane parameters are not directly obtained and voting is performed in the voting space, the process becomes complicated and the Hough There is a problem that the advantage of the probability estimation of the transformation cannot be fully utilized.
【0016】また、ハフ変換を利用すると、処理時間が
長くなり、高速化が困難であるという問題点もある。Further, when the Hough transform is used, there is a problem that the processing time becomes long and it is difficult to increase the speed.
【0017】このように、ノイズが多い3次元データか
ら未知の平面パラメータを決定する、即ち、平面を検出
する方法は確立されていない。As described above, a method for determining an unknown plane parameter from the noisy three-dimensional data, that is, for detecting the plane has not been established.
【0018】本発明は、このような従来の実情に鑑みて
提案されたものであり、ノイズに対してロバストであ
り、信頼性が高い平面を抽出することができる平面抽出
方法、その装置、そのプログラム、その記録媒体及び平
面抽出装置搭載型ロボット装置を提供することを目的と
する。The present invention has been proposed in view of such a conventional situation, and is a plane extraction method capable of extracting a plane which is robust against noise and has high reliability, its apparatus, and An object of the present invention is to provide a program, a recording medium for the program, and a robot apparatus equipped with a plane extraction device.
【0019】[0019]
【課題を解決するための手段】上述した目的を達成する
ために、本発明に係る平面抽出方法は、3次元データ群
から3点以上の3次元データをサンプリングし、上記3
次元データによって決まる1つの平面を示す平面パラメ
ータを複数算出する平面算出工程と、この平面算出工程
から得られた複数の平面パラメータを投票空間に投票し
てこの投票結果に基づき平面を決定する平面決定工程と
を有することを特徴とする。In order to achieve the above-mentioned object, the plane extraction method according to the present invention samples three-dimensional data of three or more points from a three-dimensional data group, and
A plane calculation step of calculating a plurality of plane parameters indicating one plane determined by the dimension data, and a plurality of plane parameters obtained from the plane calculation step are voted in a voting space to determine a plane based on the voting result. And a process.
【0020】本発明においては、3次元データから平面
パラメータ算出し、この平面パラメータを投票空間に直
接投票するため、ノイズの多い3次元データからでも平
面を安定して抽出することができる。In the present invention, the plane parameters are calculated from the three-dimensional data and the plane parameters are directly voted in the voting space, so that the plane can be stably extracted even from the noisy three-dimensional data.
【0021】上記平面算出工程は、上記平面の法線ベク
トルの向きを(θ,φ)、原点からの距離をdとしたと
き、上記平面パラメータ(θ,φ,d)を算出する工程
であって、上記投票空間は、下記数式(1−1)又は数
式(1−2)で表されるものとすることができる。The plane calculation step is a step of calculating the plane parameter (θ, φ, d) when the direction of the normal vector of the plane is (θ, φ) and the distance from the origin is d. Then, the voting space may be represented by the following formula (1-1) or formula (1-2).
【0022】[0022]
【数3】 [Equation 3]
【0023】これにより、平面を指定する平面パラメー
タは、元の3次元直交座標空間に対して極座標を形成す
ることから、投票スロット(グリッド)が元の対応空間
内で同一の面積を占めるように投票空間を上記数式(1
−1)又は数式(1−2)として設計することにより、
更にロバストで精度が高いデータが得られる。As a result, the plane parameter designating the plane forms polar coordinates with respect to the original three-dimensional Cartesian coordinate space, so that the voting slots (grids) occupy the same area in the original corresponding space. The voting space is defined by the above formula (1
-1) or equation (1-2),
Furthermore, robust and highly accurate data can be obtained.
【0024】また、上記3次元データ群は、入力画像に
基づき3次元データ群に変換されるものであって、各上
記3次元パラメータは上記入力画像に基づき算出される
信頼度パラメータを個別に有し、この信頼度パラメータ
に基づいて上記3次元データ群の3次元データを選別す
るデータ選別工程を有することができ、信頼度が低い3
次元データを破棄すること等ができ、処理結果の信頼性
及び安定性を向上することができる。The three-dimensional data group is converted into a three-dimensional data group based on the input image, and each of the three-dimensional parameters individually has a reliability parameter calculated based on the input image. However, it is possible to have a data selection step of selecting the three-dimensional data of the above-mentioned three-dimensional data group based on this reliability parameter.
Dimensional data can be discarded and the reliability and stability of the processing result can be improved.
【0025】更に、上記サンプリングデータは、3点を
ランダムにサンプリングしたものか、又はランダムにサ
ンプリングされた1つの基準点と、この基準点から所定
の距離内でランダムにサンプリングされた他の2点とか
らなるものであって、上記ランダムサンプリングを複数
回繰り返すことができる。更にまた、3点のデータから
直接解法によって上記平面パラメータを算出する工程を
有することができ、サンプリングデータから上記投票空
間へ投票するハフ変換により高精度の平面パラメータを
推定することができる。Further, the sampling data is obtained by randomly sampling three points, or one randomly sampled reference point and two other randomly sampled points within a predetermined distance from the reference point. And the random sampling can be repeated a plurality of times. Furthermore, it is possible to have a step of calculating the plane parameter from the data of three points by a direct solution method, and it is possible to estimate the plane parameter with high accuracy by Hough transform for voting from the sampling data to the voting space.
【0026】また、上記サンプリングデータは、3次元
空間を所定の領域に分割しこの領域内の3次元データと
することができる。更にまた、3点以上の上記3次元デ
ータから共分散行列を固有値展開して最小固有値に対応
するベクトルを抽出する主成分分析により上記平面パラ
メータを算出するか、又は上記平面が原点を通らない任
意の平面であると仮定し最小二乗法を使用して上記平面
パラメータを算出することができる。The sampling data can be divided into a predetermined area in the three-dimensional space to be three-dimensional data in this area. Furthermore, the plane parameter is calculated by principal component analysis in which the covariance matrix is expanded from the three-dimensional data of three or more points to extract the vector corresponding to the minimum eigenvalue, or the plane does not pass through the origin. The plane parameters can be calculated using the least squares method assuming that the plane parameters are
【0027】更に、上記平面決定工程は、上記投票を繰
り返し、上記投票の総数が所定の閾値を超えた場合、又
は上記投票数に基づいて決定される投票値が最も高い位
置における投票値の合計が全ての投票値の合計である総
投票値の所定の割合に達した場合に投票をうち切る工程
を有することができるため、処理を高速化することがで
きる。Further, in the plane determining step, the voting is repeated, and when the total number of votes exceeds a predetermined threshold value, or the sum of the voting values at the position with the highest voting value determined based on the number of votes. Can have a step of cutting off the voting when a predetermined ratio of the total voting value, which is the sum of all voting values, is reached, so that the processing can be speeded up.
【0028】更にまた、上記平面決定工程は、上記3次
元データの信頼度及び/又は平面算出方法により異なる
重みを定めて投票する重付投票工程を有するため、デー
タの信頼度が高く精度が向上するため、投票総数を減ら
すことができ、高速処理が可能となる。Furthermore, since the plane determination step has a weighted voting step of voting by setting different weights according to the reliability of the three-dimensional data and / or the plane calculation method, the reliability of the data is high and the accuracy is improved. Therefore, the total number of votes can be reduced and high-speed processing can be performed.
【0029】また、上記平面決定工程は、上記投票空間
の投票のピーク近傍における投票数による重み付き平均
を行う重付平均工程を有することができ、投票空間の量
子化サイズよりも細かい精度でパラメータを推定するこ
とができるため、量子化サイズを大きくして処理の高速
化を図ることができる。Further, the plane determining step can include a weighted averaging step of performing a weighted average by the number of votes in the vicinity of the peak of votes of the vote space, and the parameter can be obtained with a precision finer than the quantization size of the vote space. Therefore, the quantization size can be increased and the processing speed can be increased.
【0030】更に、上記平面決定工程により抽出された
平面に含まれる3次元データが2次元となる座標変換行
列を求め、上記3次元データを該座標変換行列により写
像して出力する写像工程を有することができ、これによ
り、後段の処理が容易になる。Further, there is a mapping step of obtaining a coordinate transformation matrix in which the three-dimensional data included in the plane extracted by the plane decision step becomes two-dimensional, and mapping the three-dimensional data by the coordinate transformation matrix to output. It is possible to facilitate the subsequent processing.
【0031】更にまた、上記平面決定工程は、上記投票
結果により推定された平面パラメータを初期パラメータ
としてイタレーションにより該初期パラメータから最適
パラメータを算出する最適パラメータ算出工程を有する
ことができるため、投票による平面パラメータ推定段階
においては、ある程度の精度で推定しておけば、最適パ
ラメータ計算により精度を向上することができるため、
更に高速化が可能となる。Furthermore, the plane determining step can include an optimum parameter calculating step of calculating an optimum parameter from the initial parameter by iteration using the plane parameter estimated by the voting result as an initial parameter. In the plane parameter estimation stage, the accuracy can be improved by the optimum parameter calculation if estimated with a certain degree of accuracy.
Further speedup is possible.
【0032】また、上記平面決定工程は、上記投票にお
ける投票ピークの鋭さ、上記イタレーションに使用した
データポイント数、及び上記イタレーションにより算出
される誤差残差からなる群から選択された1以上を信頼
度のパラメータとして使用し、決定される平面の信頼度
を算出する信頼度算出工程を有することができるため、
抽出された平面の精度が明確になり、精度が低いデータ
については破棄する等してデータを選別することができ
る。In the plane determining step, at least one selected from the group consisting of the sharpness of the voting peak in the voting, the number of data points used in the iteration, and the error residual calculated by the iteration is selected. Since it can have a reliability calculation step of calculating the reliability of the plane to be used, which is used as a reliability parameter,
The accuracy of the extracted plane becomes clear, and data with low accuracy can be discarded and the data can be selected.
【0033】本発明に係る平面抽出装置は、3次元デー
タ群から3点以上の3次元データをサンプリングし、上
記3次元データによって決まる1つの平面を示す平面パ
ラメータを複数算出する平面算出手段と、この平面算出
工程から得られた複数の平面パラメータを投票空間に投
票してこの投票結果に基づき平面を決定する平面決定手
段とを有することを特徴とする。The plane extraction device according to the present invention comprises plane calculation means for sampling three or more three-dimensional data from a three-dimensional data group and calculating a plurality of plane parameters indicating one plane determined by the three-dimensional data. A plurality of plane parameters obtained from the plane calculation step are voted in a voting space, and a plane determining means for determining a plane based on the voting result is provided.
【0034】本発明に係るロボット装置は、供給された
入力情報に基づいて動作を行う自律型のロボット装置で
あって、3次元データ群から3点以上の3次元データを
サンプリングし、上記3次元データによって決まる1つ
の平面を示す平面パラメータを複数算出する平面算出手
段と、この平面算出工程から得られた複数の平面パラメ
ータを投票空間に投票してこの投票結果に基づき平面を
決定する平面決定手段とを有することを特徴とする。The robot device according to the present invention is an autonomous robot device that operates based on the supplied input information. The robot device samples three-dimensional data of three or more points from a three-dimensional data group, and Plane calculating means for calculating a plurality of plane parameters indicating one plane determined by data, and plane determining means for voting a plurality of plane parameters obtained from the plane calculating step in a voting space and determining a plane based on the voting result. And having.
【0035】本発明に係るプログラムは、所定の動作を
コンピュータに実行させるためのプログラムであって、
3次元データ群から3点以上の3次元データをサンプリ
ングし、上記3次元データによって決まる1つの平面を
示す平面パラメータを複数算出する平面算出工程と、こ
の平面算出工程から得られた複数の平面パラメータを投
票空間に投票してこの投票結果に基づき平面を決定する
平面決定工程とを有することを特徴とする。A program according to the present invention is a program for causing a computer to execute a predetermined operation,
A plane calculation step of sampling three or more three-dimensional data from a three-dimensional data group and calculating a plurality of plane parameters indicating one plane determined by the three-dimensional data, and a plurality of plane parameters obtained from this plane calculation step In a voting space and determining a plane based on the voting result.
【0036】本発明に係る記録媒体は、所定の動作をコ
ンピュータに実行させるためのプログラムを記録したコ
ンピュータ読み取り可能な記録媒体であって、3次元デ
ータ群から3点以上の3次元データをサンプリングし、
上記3次元データによって決まる1つの平面を示す平面
パラメータを複数算出する平面算出工程と、この平面算
出工程から得られた複数の平面パラメータを投票空間に
投票してこの投票結果に基づき平面を決定する平面決定
工程とを有することを特徴とする。A recording medium according to the present invention is a computer-readable recording medium in which a program for causing a computer to execute a predetermined operation is recorded, and three-dimensional data of three or more points are sampled from a three-dimensional data group. ,
A plane calculation step of calculating a plurality of plane parameters indicating one plane determined by the three-dimensional data, and a plurality of plane parameters obtained from this plane calculation step are voted in a voting space and a plane is determined based on this voting result. And a plane determining step.
【0037】[0037]
【発明の実施の形態】以下、本発明を適用した具体的な
実施の形態について、図面を参照しながら詳細に説明す
る。本実施の形態においては、平面抽出装置が搭載され
た2足歩行のロボット装置について説明する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Specific embodiments to which the present invention is applied will be described below in detail with reference to the drawings. In the present embodiment, a bipedal robot device equipped with a plane extraction device will be described.
【0038】図1は、本発明の実施の形態におけるロボ
ット装置の概略を示すブロック図である。図1に示すよ
うに、ロボット装置1の頭部ユニット250には、2台
のCCDカメラ200R,200Lが設けられ、このC
CDカメラ200R,200Lの後段には、ステレオ画
像処理装置210が設けられている。2台のCCDカメ
ラ(以下、右目200R、左目200Lという。)によ
り撮像された右目画像201R、左目画像201Lは、
ステレオ画像処理装置210に入力される。ステレオ画
像処理装置210は、各画像201R,201Lの視差
情報(disparity data)(距離情報)を計算し、カラー
画像(YUV:輝度Y、UV色差)202及び視差画像
(YDR:輝度Y、視差D、信頼度R)203をフレー
ム毎に左右交互に算出する。ここで、視差とは、空間中
のある点が左目及び右目に写像される点の違いを示し、
そのカメラからの距離に応じて変化するものである。FIG. 1 is a block diagram showing an outline of a robot apparatus according to an embodiment of the present invention. As shown in FIG. 1, the head unit 250 of the robot apparatus 1 is provided with two CCD cameras 200R and 200L.
A stereo image processing device 210 is provided behind the CD cameras 200R and 200L. The right eye image 201R and the left eye image 201L captured by two CCD cameras (hereinafter, referred to as right eye 200R and left eye 200L) are
It is input to the stereo image processing device 210. The stereo image processing apparatus 210 calculates disparity information (disparity data) (distance information) of each of the images 201R and 201L, and a color image (YUV: luminance Y, UV color difference) 202 and a parallax image (YDR: luminance Y, parallax D). , Reliability R) 203 is calculated alternately for each frame. Here, the parallax indicates the difference between the points at which a certain point in space is mapped to the left eye and the right eye,
It changes according to the distance from the camera.
【0039】このカラー画像202及び視差画像203
はロボット装置1の体幹部260に内蔵されたCPU
(制御部)220に入力される。また、ロボット装置1
の各関節にはアクチュエータ230が設けられており、
CPU220からの指令となる制御信号221が供給さ
れて、その指令値に応じてモータを駆動する。各関節
(アクチュエータ)には、ポテンショメータが取り付け
られ、その時のモータの回転角がCPU220へ送られ
る。このアクチュエータに取り付けられたポテンショメ
ータ、足底に取り付けられたタッチセンサ及び体幹部に
取り付けられたジャイロ・センサ等の各センサ240
は、現在の関節角度、設置情報、及び姿勢情報等の現在
のロボット装置の状態を計測し、センサデータ241と
してCPU220へ出力する。CPU220は、ステレ
オ画像処理装置210からのカラー画像202及び視差
画像203と、各アクチュエータ230の全ての関節角
度等のセンサデータ241とが入力され、後述するソフ
トウェア構成を実現する。This color image 202 and parallax image 203
Is a CPU built in the trunk 260 of the robot apparatus 1.
(Control unit) 220 is input. Also, the robot device 1
An actuator 230 is provided at each joint of
A control signal 221 serving as a command from the CPU 220 is supplied to drive the motor according to the command value. A potentiometer is attached to each joint (actuator), and the rotation angle of the motor at that time is sent to the CPU 220. Each sensor 240 such as a potentiometer attached to this actuator, a touch sensor attached to the sole of the foot, and a gyro sensor attached to the trunk
Measures the current state of the robot apparatus such as the current joint angle, installation information, and posture information, and outputs it as sensor data 241 to the CPU 220. The CPU 220 is input with the color image 202 and the parallax image 203 from the stereo image processing device 210 and the sensor data 241 such as all joint angles of each actuator 230, and realizes a software configuration described later.
【0040】本実施の形態のソフトウェアは、オブジェ
クト単位で構成され、ロボット装置の位置、移動量、周
囲の障害物、及び環境地図等を認識し、ロボット装置が
最終的に取るべき行動についての行動列を出力する各種
認識処理等を行うものである。なお、ロボット装置の位
置を示す座標として、例えば、後述するランドマーク等
の特定の物体等に基づく所定位置を座標の原点としたワ
ールド基準系のカメラ座標系(以下、絶対座標ともい
う。)と、ロボット装置自身を中心(座標の原点)とし
たロボット中心座標系(以下、相対座標ともいう。)と
の2つの座標を使用する。The software of this embodiment is configured in units of objects, recognizes the position, movement amount, surrounding obstacles, environment map, etc. of the robot device, and takes action about the action that the robot device should finally take. It is for performing various recognition processes for outputting a column. As the coordinates indicating the position of the robot device, for example, a camera coordinate system of a world reference system (hereinafter also referred to as absolute coordinates) having a predetermined position based on a specific object such as a landmark described later as an origin of the coordinates. , And a robot center coordinate system (hereinafter, also referred to as relative coordinates) centered on the robot apparatus itself (origin of coordinates).
【0041】図2は、本実施の形態におけるロボット装
置のソフトウェアの構成を示す模式図である。同図にお
いて、丸で表されているのが、オブジェクト又はプロセ
スと呼ばれるエンティティである。オブジェクト同士が
非同期に通信し合うことで、システム全体が動作する。
各オブジェクトはメッセージ通信と共有メモリを使用し
たオブジェクト間通信方法によりデータの受け渡し及び
プログラムの起動(Invoke)を行っている。FIG. 2 is a schematic diagram showing the software configuration of the robot apparatus according to this embodiment. In the figure, the circles represent entities called objects or processes. The entire system operates by communicating objects asynchronously.
Each object transfers data and activates a program (Invoke) by an inter-object communication method using message communication and shared memory.
【0042】図2に示すように、ソフトウェア300
は、キネマティックオドメトリ(Kinematics Odometr
y)KINE310、平面抽出部(Plane Extractor)P
LEX320、障害物グリッド算出部(Occupancy Gri
d)OG330、ランドマーク位置検出部(Landmark Se
nsor)CLS340、絶対座標算出部(Localization)
LZ350及び行動決定部(Situated behavior Laye
r)SBL360から構成され、各オブジェクト単位に
て処理がなされる。これらのソフトウェアの詳細な構成
及び動作については後述する。また、ロボット装置につ
いての詳細な構成及び動作についても後述する。As shown in FIG. 2, software 300
Kinematics Odometr
y) KINE310, Plane Extractor P
LEX320, Obstacle grid calculator (Occupancy Gri
d) OG330, landmark position detector (Landmark Se
nsor) CLS340, absolute coordinate calculation unit (Localization)
LZ350 and Situated behavior Laye
r) It is composed of the SBL 360, and processing is performed for each object. The detailed configuration and operation of these software will be described later. The detailed configuration and operation of the robot device will also be described later.
【0043】ここで、先ず、上述したロボット装置1に
搭載される平面抽出装置、即ち、上述した平面抽出部P
LEX320の平面抽出方法について説明する。Here, first, the plane extraction device mounted on the robot apparatus 1 described above, that is, the plane extraction unit P described above.
The plane extraction method of LEX320 is demonstrated.
【0044】本発明の平面抽出方法は、3次元データか
らランダムにデータをサンプリングして平面パラメータ
を算出し、ハフ変換(ランダム化ハフ変換:Randomized
Hough Transform)、即ち、平面パラメータを投票空間
に直接投票して平面であるか否かを決定するものであ
る。即ち、下記数式(2)に示すN固の3次元データか
ら、法線ベクトルの向きを(θ,φ)、原点からの距離
をdとしたときの平面パラメータ(θ,φ,d)、即ち
下記数式(3)に示す平面方程式を求める方法である。In the plane extraction method of the present invention, plane parameters are calculated by randomly sampling data from three-dimensional data, and Hough transform (randomized Hough transform: Randomized) is performed.
Hough Transform), that is, the plane parameter is directly voted in the voting space to determine whether or not the plane is a plane. That is, the plane parameter (θ, φ, d), where the direction of the normal vector is (θ, φ) and the distance from the origin is d, from N-dimensional three-dimensional data shown in the following mathematical expression (2), that is, This is a method of obtaining the plane equation shown in the following mathematical expression (3).
【0045】[0045]
【数4】 [Equation 4]
【0046】[0046]
【数5】 [Equation 5]
【0047】そして、投票、即ちヒストグラムに基づく
確率密度関数の推定により3次元データから、その3次
元データに含まれる支配的な平面のパラメータを決定す
る確率論的方法である。Then, it is a probabilistic method for determining the parameters of the dominant plane included in the three-dimensional data from the three-dimensional data by voting, that is, estimating the probability density function based on the histogram.
【0048】以下、本発明の実施の形態における平面抽
出方法ついて詳細に説明する。図3は、本実施の形態に
おける平面抽出方法の工程を示すフローチャートであ
る。The plane extraction method according to the embodiment of the present invention will be described in detail below. FIG. 3 is a flowchart showing steps of the plane extraction method according to the present embodiment.
【0049】例えば、ステレオ視(ステレオカメラ)等
による方法、又はレンジセンサ等の操作によって得られ
た視差又は距離画像は、適切なキャリブレーションに基
づく変換により、3次元データに容易に変換することが
でき、この3次元データの配列が入力される。For example, a parallax or range image obtained by a method such as stereoscopic vision (stereo camera) or an operation of a range sensor or the like can be easily converted into three-dimensional data by conversion based on appropriate calibration. Then, this array of three-dimensional data is input.
【0050】先ず、N個のデータ(3次元データ){p
1,p2,p3,…,pN}からM組のサブセット{p
1 1,p2 1,p3 1,…,pN 1},{p1 2,p2
2,p3 2,…,pN 2},…,{p1 M,p2 M,p
3 M,…,pN M}を取り出す(ステップS1)。この
ときの投票総数はMとなる。次に、各サブセット{p 1
i,p2 i,p3 i,…,pN i}から、パラメータ
(θi,φi,di)を計算する(ステップS2)。次
いで、計算されたパラメータを量子化し、投票先グリッ
ドを決定し、これに対して各パラメータ毎に個別に投票
を行う(ステップS3)。そして、最終的に投票数が多
いパラメータを解とする。即ち、このパラメータを有す
る平面を平面として推定し、後述するイタレーション等
の処理を行い、平面を決定する(ステップS4)。First, N pieces of data (three-dimensional data) {p
1, PTwo, PThree,,, pN} To M subsets {p
1 1, PTwo 1, PThree 1,,, pN 1}, {P1 Two, PTwo
Two, PThree Two,,, pN Two}, ..., {p1 M, PTwo M, P
Three M,,, pN M} Is taken out (step S1). this
The total number of votes at that time is M. Then each subset {p 1
i, PTwo i, PThree i,,, pN i} From the parameters
(Θi, Φi, Di) Is calculated (step S2). Next
, Quantize the calculated parameters, and
To determine each and vote individually for each parameter
Is performed (step S3). And finally, the number of votes is high
The parameter is the solution. I.e. have this parameter
It is estimated that the plane that is
Is performed to determine the plane (step S4).
【0051】先ず、ステップS1でデータを取り出す前
に行われる処理について説明する。図4は、ステップS
1の前工程を示すフローチャートである。例えば距離画
像又は視差画像等のような形で得られた3次元座標デー
タ群を処理する方法について説明する。図4に示すよう
に、ステレオ視401又はレンジセンサ402からのデ
ータが入力され、キャリブレーション又はパラメータ変
換されて3次元のデータ配列が生成される(ステップS
01)。ここで、3次元座標に変換された3次元データ
群と共に、この3次元データの信頼度rを示す信頼度パ
ラメータがステレオ視401又はレンジセンサ402か
ら入力される(ステップS02)。本実施の形態におい
ては、ステレオ視等に基づく距離画像を入力画像とし、
ステレオ距離計算の過程で得られる信頼度パラメータを
有効利用することができる。また、このような信頼度パ
ラメータが利用不可能である場合、これを定数と見なす
ことで信頼度パラメータが付随しない3次元データにも
直接応用することができる。First, the processing performed before taking out the data in step S1 will be described. FIG. 4 shows the step S
It is a flowchart which shows the front process of 1. A method of processing a three-dimensional coordinate data group obtained in the form of, for example, a distance image or a parallax image will be described. As shown in FIG. 4, data from the stereoscopic view 401 or the range sensor 402 is input, and calibration or parameter conversion is performed to generate a three-dimensional data array (step S).
01). Here, the reliability parameter indicating the reliability r of the three-dimensional data is input from the stereoscopic view 401 or the range sensor 402 together with the three-dimensional data group converted into the three-dimensional coordinates (step S02). In the present embodiment, a distance image based on stereoscopic vision or the like is used as an input image,
The reliability parameter obtained in the process of stereo distance calculation can be effectively used. Further, when such a reliability parameter is not available, it can be directly applied to three-dimensional data not accompanied by the reliability parameter by treating it as a constant.
【0052】信頼度パラメータについては様々な評価値
を用いて求めることができるが、本実施の形態において
は、テンプレートの分散値による信頼度パラメータの求
め方及びマッチングスコアによる信頼度パラメータの求
め方の2つの方法について説明する。Although the reliability parameter can be calculated using various evaluation values, in the present embodiment, the reliability parameter can be calculated by the variance value of the template and the reliability parameter can be calculated by the matching score. Two methods will be described.
【0053】上述したように、本実施の形態の3次元デ
ータは、ステレオ視による距離画像を入力としている。
ステレオ距離計測では左右のステレオ画像中の画素の対
応関係をテンプレートマッチングによって探索する。例
えば、左のステレオ画像を基準画像、右のステレオ画像
をマッチング先の画像とし、マッチングテンプレート内
の画素の輝度の分散値を求める。そして、探索する全て
のテンプレートの分散値を算出し、分散値の大きさを信
頼度パラメータとすることができる。即ち、分散値が高
い程信頼度が高いことを示し、分散値が低い程、信頼度
が低いことを示す。As described above, the three-dimensional data according to the present embodiment is input with the stereoscopic range image.
In stereo distance measurement, the correspondence between pixels in the left and right stereo images is searched for by template matching. For example, using the left stereo image as the reference image and the right stereo image as the matching destination image, the variance value of the luminance of the pixels in the matching template is obtained. Then, the variance value of all the templates to be searched can be calculated, and the magnitude of the variance value can be used as the reliability parameter. That is, the higher the variance value is, the higher the reliability is, and the lower the variance value is, the lower the reliability is.
【0054】また、マッチングスコアによる信頼度画像
の求め方としては、基準画像におけるテンプレートと、
マッチング先画像のエピポーララインに沿って選択され
た領域とを比較し、これらの領域内の画素の輝度の差か
らマッチングスコア値を算出する。そして、マッチング
スコア値、最小マッチングスコア値付近におけるピーク
の幅、及びグラフの急峻度値等からマッチングスコアに
よる信頼度パラメータを求めることができる。即ち、マ
ッチングスコア値が低く、最小スコア値付近におけるピ
ークの幅が小さく、グラフの急峻度値が大きいもの程、
信頼度が高いことを示す。As a method of obtaining the reliability image by the matching score, a template in the reference image and
A region selected along the epipolar line of the matching destination image is compared, and a matching score value is calculated from the difference in luminance of pixels in these regions. Then, the reliability parameter based on the matching score can be obtained from the matching score value, the peak width near the minimum matching score value, the steepness value of the graph, and the like. That is, the matching score value is low, the peak width near the minimum score value is small, and the steepness value of the graph is large,
Shows high reliability.
【0055】このように、各3次元パラメータは個別に
信頼度パラメータが算出され、この信頼度パラメータに
より、信頼度が所定の閾値より低いデータは切り捨てる
等して入力データの選別が行われる(ステップS0
3)。上述した何れの従来例においても、入力3次元デ
ータの信頼性に関する考慮が全くなされてないため、ノ
イズが多く紛れ込みやすいデータとなり、このノイズに
より性能が悪化するという問題点があったが、本実施の
形態のように、信頼度パラメータによる3次元データの
選別を行うことにより、信頼性及び安定性を向上し、性
能悪化を防止することができる。As described above, the reliability parameter is calculated individually for each three-dimensional parameter, and the input data is selected by truncating the data whose reliability is lower than the predetermined threshold value (step). S0
3). In any of the conventional examples described above, since no consideration is given to the reliability of the input three-dimensional data, there is a problem in that the data tends to be mixed with a lot of noise, and this noise deteriorates the performance. By selecting the three-dimensional data by the reliability parameter as in the embodiment, it is possible to improve reliability and stability and prevent performance deterioration.
【0056】次に、ステップS1におけるN個の3次元
データからM組のサブセットを取り出す方法について説
明する。図5は、ステップS1乃至ステップS3の工程
を示すフローチャートである。上述したステップS03
にて選別された3次元データ群(x,y,z)及び各デ
ータに付随する信頼度パラメータ(信頼度r)が出力さ
れ(ステップS11)、これらのデータ群から、平面パ
ラメータを推定するためのサンプルを抽出するサンプリ
ングを行う。サンプリングの方法としては、3次元デー
タ(x,y,z)から
1.全くランダムにサンプリングする方法
2.基準点となる1点を3次元データ全体からランダム
にサンプリングし、残りのデータを基準点近傍点、例え
ば3次元空間内での距離が十分近いデータ群等からサン
プリングする方法
3.3次元データを複数の解像度レベルに亘ってスキャ
ンしながら各小近傍(例えば、3次元空間内での距離が
十分近いデータ群等)のデータをひとまとまりにしてサ
ブセットとする方法等がある。Next, a method for extracting M subsets from the N three-dimensional data in step S1 will be described. FIG. 5 is a flowchart showing the steps S1 to S3. Step S03 described above
The three-dimensional data group (x, y, z) selected in step 3 and the reliability parameter (reliability r) associated with each data are output (step S11), and the plane parameters are estimated from these data groups. Sampling is performed to extract the sample. As a sampling method, three-dimensional data (x, y, z) can be used for 1. 1. Method of sampling at random A method of randomly sampling one point serving as a reference point from the entire three-dimensional data and sampling the remaining data from points near the reference point, for example, a data group having a sufficiently short distance in the three-dimensional space. There is a method in which data in each small neighborhood (for example, a data group having a sufficiently short distance in a three-dimensional space) is collected as a subset while scanning over a plurality of resolution levels.
【0057】3次元空間内での距離が十分近いデータ群
とは、例えば基準点との距離が閾値dmin乃至d
maxであるような任意の点とすることができる。The data group having a sufficiently short distance in the three-dimensional space is, for example, the distance from the reference point to the threshold values d min to d.
It can be any point such that it is max .
【0058】ここで、入力データ中には、支配的な単一
の平面が存在することを仮定したとき、又は何らかの付
加情報により支配的な平面が存在することを知ることが
できたとき等、平面領域が大きい場合には画面全体から
高域にサンプリングすると効果的となる。また、小規模
領域におけるデータをサンプリングする場合は、小さい
段差等を多く含む画像に効果的となる。Here, when it is assumed that a dominant single plane exists in the input data, or when it can be known that a dominant plane exists by some additional information, When the plane area is large, it is effective to sample the entire screen in the high frequency range. In addition, sampling data in a small area is effective for an image including many small steps.
【0059】次に、ステップS2における平面パラメー
タの算出方法について説明する。図5に示すステップS
21においては、3種類の平面パラメータの算出方法を
有し、必要に応じて最適な算出方法をとることができ
る。先ず、第1のパラメータ算出方法は、3点の3次元
データから直接解法を使用してパラメータを決定する方
法である。Next, the method of calculating the plane parameters in step S2 will be described. Step S shown in FIG.
21 has three types of plane parameter calculation methods, and an optimum calculation method can be taken as necessary. First, the first parameter calculation method is a method of determining parameters from a three-dimensional data of three points by using a direct solution method.
【0060】平面αは、法線ベクトルの向きと座標原点
からの距離という3つのパラメータによって決定され
る。即ち、図6に示すように、法線ベクトルの向きを
(θ,φ)で極座標表示し、原点からの距離をdとした
とき、下記数式(4)が平面αを決定する方程式とな
る。The plane α is determined by three parameters: the direction of the normal vector and the distance from the coordinate origin. That is, as shown in FIG. 6, when the direction of the normal vector is displayed in polar coordinates with (θ, φ) and the distance from the origin is d, the following mathematical expression (4) is an equation that determines the plane α.
【0061】[0061]
【数6】 [Equation 6]
【0062】また、別の見方をすれば、上記数式(4)
は、下記数式(5)に置き換えることもできる。From another point of view, the above equation (4)
Can be replaced with the following formula (5).
【0063】[0063]
【数7】 [Equation 7]
【0064】従って、同一直線にない3点の座標が与え
られれば上記数式(4)を満たす(θ,φ,d)を求め
ることは極めて容易であり、どちらか一方が求まれば他
方も直ちに決定される。Therefore, it is extremely easy to obtain (θ, φ, d) satisfying the above equation (4) if the coordinates of three points that are not on the same straight line are given. If either one is obtained, the other is immediately obtained. It is determined.
【0065】例えば、3点{p0,p1,p2}が与え
られているとき、下記数式(6)で示す平面の方程式
は、ベクトルm=(p1−p0)×(p2−p0)を使
用して、下記数式(7)によって一意に計算される。For example, when three points {p 0 , p 1 , p 2 } are given, the equation of the plane shown by the following equation (6) is the vector m = (p 1 −p 0 ) × (p 2 -P 0 ) is used to uniquely calculate by Equation (7) below.
【0066】[0066]
【数8】 [Equation 8]
【0067】[0067]
【数9】 [Equation 9]
【0068】なお、一般性を損ねないものと仮定して、
3点は同一直線上にはなく(|ベクトルm|≠0)、3
点のうち1点p0は原点と一致しない(|p0|≠0)
ものとする。Assuming that the generality is not impaired,
3 points are not on the same line (| vector m | ≠ 0), 3
One of the points, p 0, does not coincide with the origin (| p 0 | ≠ 0)
I shall.
【0069】第2のパラメータ算出方法は、主成分分析
による平面パラメータの推定方法である。即ち、画面全
体を適当な分解粒度・解像度でスキャンして入力される
3次元データを3次元空間内の近傍領域毎に分割する等
して得られた各データ群に対し、主成分分析を行って平
面パラメータを推定する方法である。The second parameter calculation method is a plane parameter estimation method by principal component analysis. That is, the principal component analysis is performed on each data group obtained by scanning the entire screen with appropriate resolution granularity and resolution and dividing the input three-dimensional data into neighboring regions in the three-dimensional space. Is a method of estimating the plane parameters.
【0070】先ず、同一平面上にあると期待されるN個
の3次元データを下記数式(8)とする。First, N pieces of three-dimensional data expected to be on the same plane are represented by the following formula (8).
【0071】[0071]
【数10】 [Equation 10]
【0072】上記数式(8)から、これらの共分散行列
C=PPTは、(理想的には)ランク(階数)2の3×
3行列となる。即ち、Cを固有値分解し、最小固有値に
対応する個有ベクトルを取れば、これが平面の法線ベク
トルとなる。ここで、第1及び第2主成分は、平面を張
る2つのベクトルを与え、これらに垂直なベクトルが第
3主成分となる。こうして主成分分析から下記数式(9
−1)に示す平面方程式は、下記数式(9−2)により
計算される。From the above equation (8), these covariance matrices C = PP T are (ideally) 3 × of rank (rank) 2.
There are 3 matrices. That is, if C is eigenvalue decomposed and the unique vector corresponding to the minimum eigenvalue is taken, this becomes the plane normal vector. Here, the first and second principal components give two vectors extending in a plane, and the vector perpendicular to these two vectors becomes the third principal component. Thus, from the principal component analysis, the following mathematical expression (9
The plane equation shown in -1) is calculated by the following mathematical expression (9-2).
【0073】[0073]
【数11】 [Equation 11]
【0074】但し、v3は、最小の固有値λ3に対応す
る固有ベクトルである。こうして、第2の方法によって
も平面パラメータ(θ,φ,d)は直ちに計算すること
ができる。However, v 3 is an eigenvector corresponding to the minimum eigenvalue λ 3 . Thus, the plane parameters (θ, φ, d) can be calculated immediately by the second method as well.
【0075】また、平面パラメータを求める第3のパラ
メータ算出方法は、最小二乗法を使用して平面パラメー
タを当てはめる方法である。例えば、上述と同様に、画
面全体を適当な分割粒度・解像度でスキャンし、得られ
た距離画像等を例えば矩形小領域に分割する等して、3
次元空間内の近傍領域毎に3次元データ群を分割し、線
形最小二乗法を使用して平面パラメータを算出する方法
である。A third parameter calculation method for obtaining the plane parameter is a method of fitting the plane parameter using the least square method. For example, in the same manner as described above, the entire screen is scanned with an appropriate division granularity and resolution, the obtained distance image or the like is divided into, for example, rectangular small areas, and the like.
This is a method of dividing a three-dimensional data group for each neighboring area in a dimensional space and calculating a plane parameter using the linear least squares method.
【0076】これは、本発明の実施の形態が適用される
状況に巧妙に特化した方法であり、数学的には汎用の方
法ではない。即ち、推定すべき平面は座標原点を通らな
いと仮定して求める方法である。この仮定により、以下
に説明する簡明な解法が適用可能となる。This is a method that is expertly specialized in the situation to which the embodiment of the present invention is applied, and is not a mathematically general method. In other words, it is a method of obtaining it assuming that the plane to be estimated does not pass through the coordinate origin. With this assumption, the simple solution method described below can be applied.
【0077】先ず、同一平面上にあると期待されるN個
の3次元データを上記数式(8)とし、この平面の方程
式を下記数式(10)とする。First, N pieces of three-dimensional data expected to be on the same plane are represented by the above equation (8), and the equation of this plane is represented by the following equation (10).
【0078】[0078]
【数12】 [Equation 12]
【0079】上記数式(10)で示される方程式は、座
標原点を通らない任意の平面を表す方程式である。ここ
で、パラメータΓ=(α,β,γ)には、何の制約条件
も付いていない。このとき、解くべき方程式は、下記数
式(11)となる。The equation represented by the above equation (10) is an equation representing an arbitrary plane that does not pass through the coordinate origin. Here, the parameter Γ = (α, β, γ) has no constraint condition. At this time, the equation to be solved is the following equation (11).
【0080】[0080]
【数13】 [Equation 13]
【0081】従って、特異値展開等の方法によりPの一
般化逆行列P−1を計算すれば、下記数式(12)に示
すパラメータΓが、下記数式(13)に示す誤差残差r
を最小二乗法における意味で最小にする最適解を与え
る。Therefore, if the generalized inverse matrix P −1 of P is calculated by a method such as singular value expansion, the parameter Γ shown in the following equation (12) becomes the error residual r shown in the following equation (13).
This gives an optimal solution that minimizes in the sense of least squares.
【0082】[0082]
【数14】 [Equation 14]
【0083】[0083]
【数15】 [Equation 15]
【0084】なお、ここで、下記数式(14)が成り立
つ。Here, the following mathematical expression (14) is established.
【0085】[0085]
【数16】 [Equation 16]
【0086】次に、ステップS3における投票について
説明する。平面を決定するパラメータとして(θ,φ,
d)を使用することは極めて自然である。ここで、平面
の法線ベクトルnは原点を中心とする半径1の単位球の
表面上に存在するとみることができ、下記数式(15)
に示す関係が成り立つ。Next, the voting in step S3 will be described. As a parameter that determines the plane (θ, φ,
The use of d) is quite natural. Here, it can be considered that the normal vector n of the plane exists on the surface of the unit sphere having a radius of 1 with the origin as the center, and the following equation (15)
The relationship shown in is established.
【0087】[0087]
【数17】 [Equation 17]
【0088】しかしながら、法線ベクトルの微少変化を
考えると、ヤコビアンJは下記数式(16)となるた
め、平面を決定するパラメータ(θ,φ,d)をハフ変
換を使用する際の投票先の空間の直交軸を張るパラメー
タとして利用するのは適切ではない。However, considering a slight change in the normal vector, since the Jacobian J is given by the following mathematical expression (16), the parameters (θ, φ, d) that determine the plane are the voting destinations when the Hough transform is used. It is not appropriate to use it as a parameter that stretches the orthogonal axis of space.
【0089】[0089]
【数18】 [Equation 18]
【0090】即ち、パラメータ(φ,θ)の極座標をと
ると、図7(a)に示す投票空間500において、各グ
リッド501は同一面積であるであるのに対し、図7
(b)に示すように、実際の空間に示す面積は異なる。
即ち、実際の空間を球体510としたとき、例えば球体
の中心を通り紙面に平行且つ上向きのAの直線を中心軸
とし、上記中心から中心軸に垂直な方向の球体510上
のグリッド511の面積を例えばSとすると、上記中心
から中心軸方向の球体510上のグリッド512の面積
はScosθとなり、グリッドの面積が異なる。従っ
て、図7(a)に示す投票空間500に投票すると、実
際には、異なる面積のグリッド上に投票することにな
り、適切な投票値を得ることができない。That is, when the polar coordinates of the parameters (φ, θ) are taken, in the voting space 500 shown in FIG. 7A, each grid 501 has the same area, whereas in FIG.
As shown in (b), the areas shown in the actual space are different.
That is, when the actual space is a sphere 510, for example, the area of the grid 511 on the sphere 510 in the direction perpendicular to the central axis from the center is a straight line of A passing through the center of the sphere and parallel to the paper surface and upward. Is S, for example, the area of the grid 512 on the sphere 510 in the direction of the central axis from the center is S cos θ, and the areas of the grid are different. Therefore, when voting in the voting space 500 shown in FIG. 7A, the voting actually takes place on grids of different areas, and it is not possible to obtain an appropriate voting value.
【0091】このように、投票先の3次元パラメータ空
間を素朴に設計して投票した場合、元の対応空間内で異
なる面積のグリッドに投票することになり、ピークが鋭
く現れない場合があり、ノイズに対する脆弱性となる。In this way, when the three-dimensional parameter space of the voting destination is simply designed and voted, the grids of different areas are voted in the original corresponding space, and the peak may not appear sharply. It is vulnerable to noise.
【0092】ここで、本願発明者等は投票空間下記数式
(1−1)又は数式(1−2)で定義すれば、上述の問
題を解決することができることを知見した。Here, the present inventors have found that the above-mentioned problem can be solved by defining the voting space by the following formula (1-1) or formula (1-2).
【0093】[0093]
【数19】 [Formula 19]
【0094】図8は、上記数式(1−1)に示す投票空
間を示す模式図である。図8(a)に示すように、投票
空間600を上記数式(1−1)で定義することによ
り、投票空間600に仕切られた直交グリッド601の
ひとつひとつが、図8(b)に示す実際の3次元空間6
10における平面の微小変化に対し、一様に対応付けら
れるとみなすことができる。上記数式(1−1)のよう
に仮定することにより、例えば紙面に平行な方向の球体
の中心を通る直線を中心軸とすれば、中心軸に平行な方
向のグリッド611及び中心軸に垂直な方向のグリッド
612は共に面積Sとなり、グリッドサイズが等しくな
る。また、投票空間を上記数式(1−2)で表される空
間としても、各グリッドは、元の対応空間内で同一の面
積を占めるものとなる。なお、投票空間は、その各グリ
ッドが対応空間内で同一の面積を占めるように設計すれ
ばよく、上記数式(1−1)及び(1−2)に示される
ものに限らない。FIG. 8 is a schematic diagram showing the voting space shown in the equation (1-1). As shown in FIG. 8A, by defining the voting space 600 by the above mathematical expression (1-1), each of the orthogonal grids 601 partitioned into the voting space 600 is the actual grid shown in FIG. 8B. Three-dimensional space 6
It can be considered that the small changes in the plane at 10 are uniformly associated. Assuming that the straight line passing through the center of the sphere in the direction parallel to the plane of the drawing is the central axis, the grid 611 in the direction parallel to the central axis and the vertical axis to the central axis are assumed by the above-mentioned mathematical expression (1-1). The grids 612 in both directions have the area S, and the grid sizes are the same. Further, even if the voting space is the space represented by the above mathematical expression (1-2), each grid occupies the same area in the original corresponding space. The voting space may be designed so that each grid occupies the same area in the corresponding space, and is not limited to the ones expressed by the mathematical formulas (1-1) and (1-2).
【0095】このように、平面を指定する平面パラメー
タは、元の3次元直交座標空間に対して極座標を形成す
ることから、投票スロット(グリッド)が元の対応空間
内で同一の大きさとなるように投票空間を上記数式(1
−1)又は(1−2)として設計することにより、更に
ロバストで精度が高いデータが得られ、従ってサンプリ
ング数を減らすことができ、処理が高速化する。As described above, the plane parameters that specify the plane form polar coordinates with respect to the original three-dimensional rectangular coordinate space, so that the voting slots (grids) have the same size in the original corresponding space. The voting space in the above formula (1
By designing as -1) or (1-2), more robust and highly accurate data can be obtained. Therefore, the number of samplings can be reduced and the processing speed can be increased.
【0096】次にステップS3の投票について説明す
る。一般に、投票の際の1票の重みは同じである場合が
多い。即ち、例えば1の投票に対しその投票値を1とす
る。これに対して、本実施の形態においては、誤差の性
質を考慮して一票の重みを定め、ノイズに対するロバス
ト性を向上する。即ち、1の投票に対し、誤差の評価に
よって、その投票値を例えば0.5又は2等とするもの
である。投票数誤差の評価方法としては以下に説明する
方法等がある。Next, the voting in step S3 will be described. In general, the weight of one vote when voting is often the same. That is, for example, for one vote, the vote value is set to one. On the other hand, in the present embodiment, the weight of one vote is determined in consideration of the nature of the error, and the robustness against noise is improved. That is, for one vote, the vote value is set to, for example, 0.5 or 2 by evaluating the error. As a method of evaluating the error in the number of votes, there is a method described below.
【0097】先ず、第1の誤差評価方法としては、投票
先を計算(平面パラメータを計算)するために使用した
元の3次元データの信頼度(信頼度パラメータ)を使用
する方法である。この場合、平面パラメータを求めるの
に使用した各3次元データに付随する各信頼度を平均す
る等して投票値に重み付けすることができる。First, the first error evaluation method is a method of using the reliability (reliability parameter) of the original three-dimensional data used for calculating the voting destination (calculating the plane parameter). In this case, the voting values can be weighted by, for example, averaging the reliability associated with each of the three-dimensional data used to determine the plane parameter.
【0098】第2の誤差評価方法は、投票先を計算する
ために使用した元の3次元データの誤差の標準偏差を使
用する方法である。この誤差とは、例えば、3点から直
接解法によって平面パラメータを求める第1のパラメー
タ算出方法であれば誤差0、主成分分析によって平面パ
ラメータを求める第2のパラメータ算出方法であれば本
来0であるべき最小固有値λ3から計算した値、最小二
乗法によって平面パラメータを求める第3のパラメータ
算出方法であれば誤差残差rから計算した値等とするこ
とができる。The second error evaluation method is a method using the standard deviation of the error of the original three-dimensional data used for calculating the voting destination. The error is, for example, an error of 0 in the first parameter calculation method for obtaining the plane parameter from the three points by the direct solution method, and is essentially 0 in the second parameter calculation method of obtaining the plane parameter by the principal component analysis. A value calculated from the power minimum eigenvalue λ 3 or a value calculated from the error residual r can be used in the case of the third parameter calculation method for obtaining the plane parameter by the least square method.
【0099】第3の誤差方法としては、3次元距離デー
タがステレオ視装置、又はレンジセンサ等から得られる
場合、一般的に視差方向における誤差は極めて小さく、
距離方向における誤差は、距離の測定値に比例する。こ
のことにより、計算元の3次元データの分布を視点中心
の球面に投影したときの立体角が大きい程、測定誤差が
計測結果に与える影響が小さくなるため、この立体角に
応じて投票値に重み付けをする。また、立体角が同じ場
合は実空間でのデータの分布の分散が大きい程、特に、
主成分分析による第2の方法においては、第1主成分と
第2主成分との積λ1λ2が大きい程、測定誤差が計算
結果に与える影響が小さい。このことを考慮して投票値
の重み付けを行うことができる。As a third error method, when three-dimensional distance data is obtained from a stereoscopic device, a range sensor or the like, the error in the parallax direction is generally very small,
The error in the distance direction is proportional to the measured distance. As a result, the larger the solid angle when the distribution of the three-dimensional data of the calculation source is projected onto the spherical surface at the center of the viewpoint, the smaller the influence of the measurement error on the measurement result. Weight. Also, when the solid angles are the same, the greater the variance of the data distribution in real space,
In the second method based on principal component analysis, the larger the product λ 1 λ 2 of the first principal component and the second principal component, the smaller the influence of the measurement error on the calculation result. The voting value can be weighted in consideration of this fact.
【0100】このようにして誤差評価によって、1票の
投票値に対して異なる重み付けを行うことにより、入力
データのバラツキ、距離画像等を撮像する装置の特性に
よるバラツキ等、及びサンプルリングの仕方によるバラ
ツキ等を低減することができる。また、これらのことか
ら、計算結果の誤差に対するセンシティビティの指標を
得ることができる。In this way, by differently weighting the voting value of one vote by the error evaluation, variations in input data, variations due to the characteristics of a device for capturing a range image, etc., and a sampling method. It is possible to reduce variations and the like. Further, from these, it is possible to obtain an index of the sensitivity to the error of the calculation result.
【0101】これらの誤差の評価値によって、投票の際
の1票の投票値の重みを異ならせ、ノイズに対してロバ
ストな投票値を得ることができる(ステップS31)。
そして、投票総数が閾値Nmaxを超えたか、又は投票
総数が閾値Nmaxを超え且つ投票値の分布が十分なピ
ークを形成しているか否かを判定する(ステップS3
2)。十分なピークとは、ピーク位置のグリッドにおけ
るデータが例えば全ての投票の数(総投票数)の一定以
上の割合を有するか、又はピーク位置のグリッドにおけ
る投票数の合計(得票数)又は投票値の合計(得票値)
が所定の閾値以上であるか否か等により判定することが
できる。ここで、十分であると判定された場合は、ピー
ク位置又はその近傍のグリッド内の平面パラメータを後
述する方法にて平均処理する。一方、十分でないと判定
された場合は、ステップS21に戻り、3次元データ群
からデータサブセットを抽出して平面パラメータを算出
する。Based on the evaluation values of these errors, it is possible to obtain different voting values that are robust against noise by changing the weighting of the voting value of one vote at the time of voting (step S31).
Then, it is determined whether the total number of votes exceeds the threshold N max , or whether the total number of votes exceeds the threshold N max and the distribution of the vote values forms a sufficient peak (step S3).
2). Sufficient peak means that the data in the grid at the peak position has a certain ratio or more of the total number of votes (total votes), or the total number of votes in the grid at the peak position (the number of votes) or the vote value. Total (Voting value)
Can be determined by whether or not is greater than or equal to a predetermined threshold. Here, when it is determined that it is sufficient, the plane parameters in the grid at the peak position or its vicinity are averaged by the method described later. On the other hand, if it is determined that the plane parameter is not sufficient, the process returns to step S21 to extract the data subset from the three-dimensional data group to calculate the plane parameter.
【0102】次に、平面を決定するステップS4につい
て説明する。図9及び図10は平面決定工程を示すフロ
ーチャートである。ステップS4の平面決定において
は、図9に示すように、先ず、ピーク値近傍における重
み付き平均処理が行われる(ステップS41)。この重
み付き平均処理により、ピークのより正確な位置を推定
することができる。Next, step S4 for determining the plane will be described. 9 and 10 are flowcharts showing the plane determining step. In the plane determination in step S4, as shown in FIG. 9, first, a weighted averaging process in the vicinity of the peak value is performed (step S41). This weighted averaging process allows the more accurate position of the peak to be estimated.
【0103】投票空間のピーク値近傍グリッド集合をg
とすると、この集合gに含まれる各グリッドGiの得票
値(投票値の合計)をvi、代表パラメータを(θi,
φi,di)とすれば、推定パラメータ(θk,φk,
dk)は下記数式(17)として算出される。Let g be the grid set near the peak value of the voting space.
Then, the voting value (total of voting values) of each grid G i included in this set g is v i , and the representative parameter is (θ i ,
If φ i , d i ), the estimated parameters (θ k , φ k ,
d k ) is calculated as the following mathematical expression (17).
【0104】[0104]
【数20】 [Equation 20]
【0105】上記数式(17)に示すように、各グリッ
ドの代表パラメータの量子化サイズよりも細かい粒度で
のパラメータ推定が可能となる。ここで、上記数式(1
7)では、ピーク値近傍においては、確立分布がほぼ正
規分布をなすと仮定している。As shown in the equation (17), parameter estimation can be performed with a finer granularity than the quantization size of the representative parameter of each grid. Here, the above formula (1
In 7), it is assumed that the probability distribution is almost normal in the vicinity of the peak value.
【0106】図9に示すように、ステップS41での重
み付き平均処理により、推定パラメータの初期値(初期
パラメータ)(θ0,φ0,d0)を出力する。次に、
この初期パラメータ(θ0,φ0,d0)と3次元座標
700とからイタレーションを計算する(ステップS4
2)。このイタレーションにより、更に正確な平面パラ
メータを推定する。そして、図10に示すように、ステ
ップS42のイタレーションによるパラメータの変化量
が収束するか、又は所定の回数以上繰り返すかして終了
判定を行い(ステップS43)、その結果の信頼度を判
定し(ステップS44)、終了判定された平面パラメー
タ(θ,φ,d)及びその信頼度を出力する。As shown in FIG. 9, initial values (initial parameters) (θ 0 , φ 0 , d 0 ) of estimated parameters are output by the weighted averaging process in step S41. next,
An iteration is calculated from the initial parameters (θ 0 , φ 0 , d 0 ) and the three-dimensional coordinate 700 (step S4).
2). With this iteration, more accurate plane parameters are estimated. Then, as shown in FIG. 10, the end determination is made by determining whether the variation of the parameter due to the iteration of step S42 has converged or repeated a predetermined number of times or more (step S43), and the reliability of the result is determined. (Step S44), the plane parameter (θ, φ, d) for which termination is determined and its reliability are output.
【0107】本実施の形態においては、3次元データは
フィルタバンク(FBK)により、リアルタイムに多重
解像度化されており、上述のハフ変換による初期パラメ
ータ推定の際には低解像度の3次元データを使用して処
理を高速化すると共に、このイタレーションにおいて
は、高解像度の3次元データを使用することにより、精
度を更に高めるものである。即ち、イタレーションにお
いては、初期パラメータから推定される推定平面の十分
近傍にある点をサンプルとして抽出する。In this embodiment, the three-dimensional data is multiresolution-ized in real time by the filter bank (FBK), and the low-resolution three-dimensional data is used in the initial parameter estimation by the Hough transform. In this iteration, the precision is further improved by using high-resolution three-dimensional data. That is, in the iteration, points that are sufficiently close to the estimation plane estimated from the initial parameters are sampled.
【0108】以下、このステップS42及びS43につ
いて更に詳細に説明する。図11は、ステップS42及
びS43を示すフローチャートである。図11に示すよ
うに、初期パラメータ(θ0,φ0,d0)が入力され
ると、上述したステップS03にて信頼度パラメータで
フィルタ済みの入力3次元データセットの中から、誤差
tolで推定平面にのるデータポイント、即ち、下記数
式(18)の条件を満たすデータサブセットPiを抽出
する(ステップS421)。誤差tolにおいて、誤差
許容範囲の初期値tol0は、予め適当に定めるものと
する。The steps S42 and S43 will be described in more detail below. FIG. 11 is a flowchart showing steps S42 and S43. As shown in FIG. 11, when the initial parameters (θ 0 , φ 0 , d 0 ) are input, an error tol is calculated from the input three-dimensional data set filtered by the reliability parameter in step S03 described above. A data point on the estimation plane, that is, a data subset P i satisfying the condition of the following formula (18) is extracted (step S421). In the error tol, the initial value tol 0 of the error allowable range is appropriately determined in advance.
【0109】[0109]
【数21】 [Equation 21]
【0110】次に、下記数式(19)に示すPiの一般
化逆行列Pi −1を計算し、最小二乗の意味でのデータ
に最適に当てはまる平面のパラメータΓ(αi,βi,
γi)=(−1,−1,…,−1)Pi −1を求める
(ステップS422)。Next, the generalized inverse matrix P i -1 of Pi shown in the following equation (19) is calculated, and the plane parameters Γ (α i , β i , which are optimally fitted to the data in the meaning of least squares are given.
γ i ) = (− 1, −1, ..., −1) P i −1 is calculated (step S422).
【0111】[0111]
【数22】 [Equation 22]
【0112】そして、パラメータの変化量が十分小さく
収束したとみなせるか、又はイタレーションの回数が予
め設定された最大繰り返し数Itermaxに達するか
を判定し(ステップS431)、収束したか又は最大繰
り返し数Itermaxに達している場合はステップS
432へ進む。また、誤差tolを小さくさせて収束を
早めることも可能である。一方、収束していない、又は
所定回数に達していない場合は、次回のイタレーション
における誤差許容値toliを誤差残差riから決定
し、iをインクリメントしてステップS421に戻る。Then, it is judged whether or not the change amount of the parameter is considered to be sufficiently small and converged, or whether the number of iterations reaches a preset maximum number of iterations Iter max (step S431), and it is converged or the maximum number of iterations is reached. If the number Iter max is reached, step S
Proceed to 432. It is also possible to reduce the error tol and accelerate the convergence. On the other hand, if it has not converged or has not reached the predetermined number of times, the error allowable value tol i in the next iteration is determined from the error residual r i , i is incremented, and the process returns to step S421.
【0113】ステップS431から入力されたデータか
ら下記数式(20)によって平面パラメータ(θ,φ,
d)を決定する(ステップS342)。From the data input from step S431, the plane parameters (θ, φ,
d) is determined (step S342).
【0114】[0114]
【数23】 [Equation 23]
【0115】図10に戻って、ステップS44では、ス
テップS43から出力された平面パラメータ(θ,φ,
d)の信頼度を計算する。この信頼度の計算は、事前知
識を有する場合は、ステップS432において算出され
た平面パラメータ(θ,φ,d)と、事前知識とを比較
し、予想の範囲内であることを確認し、範囲外である場
合はこの値を棄却する。また、上述したステップS3に
おけるピーク値近傍の得票数又は得票値が夫々投票総数
又は投票値の合計に占める割合、及びステップS42の
イタレーションにおいてパラメータ推定に使用した3次
元データの個数等を推定結果の信頼度として使用するこ
とができる。即ち、信頼度は下記数式(21−1)乃至
(21−3)に示す各指数によって計算することができ
る。ここで計算した信頼度は、平面パラメータと共に出
力する。また、規定の信頼度に達しない場合は、そのデ
ータを棄却する等することができる。Returning to FIG. 10, in step S44, the plane parameters (θ, φ,
Calculate the reliability of d). In the calculation of the reliability, if there is prior knowledge, the plane parameter (θ, φ, d) calculated in step S432 is compared with the prior knowledge, and it is confirmed that it is within the expected range. If it is outside, reject this value. In addition, the number of votes in the vicinity of the peak value in step S3 described above, or the ratio of the votes to the total number of votes or votes, and the number of three-dimensional data used for parameter estimation in the iteration of step S42 are estimated results. Can be used as a confidence level. That is, the reliability can be calculated by each index shown in the following formulas (21-1) to (21-3). The reliability calculated here is output together with the plane parameters. If the prescribed reliability is not reached, the data can be rejected.
【0116】[0116]
【数24】 [Equation 24]
【0117】また、投票空間には、複数のピークが検出
された場合には、各ピーク毎に上述したパラメータ推定
処理(ステップS42乃至S44)を繰り返し、最も信
頼度が高いパラメータを平面パラメータとして決定す
る。When a plurality of peaks are detected in the voting space, the above-described parameter estimation process (steps S42 to S44) is repeated for each peak, and the parameter with the highest reliability is determined as the plane parameter. To do.
【0118】更に、決定された平面パラメータ(θ,
φ,d)を有する平面について、z’=0とする座標変
換行列を求め、入力データ群をその変換行列で写像して
出力することにより、後述する後段においての処理が便
利である。Furthermore, the determined plane parameters (θ,
For a plane having φ, d), a coordinate transformation matrix with z ′ = 0 is obtained, the input data group is mapped by the transformation matrix, and the transformed matrix is output, so that the later-described processing is convenient.
【0119】本実施の形態においては、3次元データか
らハフ変換により直接平面パラメータを推定することが
できるため、ハフ変換の確率密度推定としての利点、即
ち、ノイズに対してロバストなデータを得ることがで
き、また、平面パラメータを求める際は、ランダムにサ
ンプリングすることができるため、より速く全体の統計
的な特徴点を把握することができる。また、3次元パラ
メータの投票空間を上記数式(1−1)又は(1−2)
と定義するため、より正確な投票結果を得ることができ
る。更に、ノイズが多い入力3次元データに対して信頼
度パラメータを使用してデータの選別を行うと共に、こ
の選別された3次元データから求められた3次元パラメ
ータ自体の信頼性も考慮するため、ノイズに対して極め
てロバストであり、信頼性及び安定性が高い結果を得る
ことができる。更にまた、投票を適当な回数でうち切
り、イタレーション等により精度を向上することによ
り、ハフ変換により平面パラメータを求めても高速化が
可能である。入力データをハードウェアで複数解像度で
サンプリングするため、データ全体の大局的な構造をつ
かむフェーズでの高速化が可能となる。In the present embodiment, since the plane parameters can be directly estimated from the three-dimensional data by the Hough transform, the advantage of the Hough transform as the probability density estimation, that is, the data robust to the noise can be obtained. In addition, since the plane parameters can be randomly sampled, the overall statistical feature points can be grasped faster. In addition, the voting space of the three-dimensional parameter is defined by the above formula (1-1) or (1-2).
Therefore, more accurate voting results can be obtained. Furthermore, since the reliability parameter is used to sort the input three-dimensional data with a lot of noise and the reliability of the three-dimensional parameter itself obtained from the sorted three-dimensional data is also taken into consideration, the noise is reduced. It is extremely robust with respect to and can provide highly reliable and stable results. Furthermore, by cutting the voting at an appropriate number of times and improving the accuracy by iteration or the like, it is possible to speed up even if the plane parameters are obtained by the Hough transform. Since the input data is sampled by hardware at multiple resolutions, the speed can be increased in the phase of grasping the overall structure of the entire data.
【0120】また、ハフ変換は、投票先の3次元パラメ
ータ空間の量子化サイズと精度との間にトレードオフの
関係がある。即ち、量子化サイズを小さくすると、精度
は向上するものの、サンプリング数を増やさなければな
らず、ピーク検出に時間がかかるが、量子化サイズを大
きくすると、高速化するものの、結果の粒度が粗く精度
が低下する。本実施の形態においては、投票結果のピー
ク周辺で重み付き平均処理をすることにより、投票先の
3次元パラメータ空間の量子化サイズよりも細かい粒度
のパラメータ推定が可能である。更に、ハフ変換の結果
を初期パラメータとしてイタレーションによる最適化を
実行して最終結果を生成するため、投票先の3次元パラ
メータ空間の量子化サイズをある程度の大きさとしても
十分高い精度が得られる。In the Hough transform, there is a trade-off relationship between the quantization size of the voted three-dimensional parameter space and the accuracy. That is, if the quantization size is reduced, the accuracy is improved, but the number of samplings must be increased and it takes time to detect peaks. However, if the quantization size is increased, the speed is increased, but the granularity of the result is coarse and the accuracy is high. Is reduced. In the present embodiment, by performing weighted averaging around the peak of the voting result, it is possible to estimate parameters with a finer granularity than the quantization size of the three-dimensional parameter space of the voting destination. Furthermore, since the final result is generated by performing optimization by iteration using the Hough transform result as an initial parameter, sufficiently high accuracy can be obtained even if the quantization size of the voted three-dimensional parameter space is set to a certain size. .
【0121】更に、ハフ変換においては、投票先の3次
元パラメータ空間のサイズが大きくなると、処理速度が
遅くなり、また記憶するデータ量が増加するため、カメ
ラと平面との位置関係を別の手段で取得し、その情報を
利用することでパラメータの検索空間を制限することに
より、更に高速化が可能となる。このように、本実施の
形態においては、ノイズにロバストであり精度が高いと
いうハフ変換の利点を生かしつつ、高速化を実現するこ
とができる。Further, in the Hough transform, if the size of the three-dimensional parameter space of the vote destination becomes large, the processing speed becomes slow and the amount of data to be stored also increases. Therefore, the positional relationship between the camera and the plane is changed by another means. Further, the speed can be further increased by limiting the search space of the parameter by using the information obtained in step 1. As described above, in the present embodiment, it is possible to realize high speed while taking advantage of the Hough transform that is robust against noise and has high accuracy.
【0122】更にまた、3次元データ群から平面パラメ
ータを推定する場合、その関係式は非線形の制約条件を
含むため、1ステップの直接解放で解くことは難しい
が、本実施の形態においては、カメラと平面との位置関
係に対して、特殊な仮定、即ち、平面はカメラ位置(原
点)を通らないという仮定をすることで、単なる線形問
題に定式化し直し、この定式化を使用したことにより、
極めて容易に平面方程式(平面パラメータ)が算出でき
る。Furthermore, when the plane parameters are estimated from the three-dimensional data group, it is difficult to solve by direct release in one step because the relational expression includes a non-linear constraint condition, but in the present embodiment, the camera is used. With respect to the positional relationship between the plane and the plane, by making a special assumption, that is, the plane does not pass through the camera position (origin), it is reformulated into a simple linear problem, and by using this formulation,
The plane equation (plane parameter) can be calculated extremely easily.
【0123】次に、以上説明した平面抽出部PLEX3
20を有する上述した図2に示すロボット装置1のソフ
トウェアの構成及び動作について詳細に説明する。図1
2は、図2に示すソフトウェア300の動作を示すフロ
ーチャートである。Next, the plane extraction unit PLEX3 described above.
The software configuration and operation of the robot device 1 shown in FIG. Figure 1
2 is a flowchart showing the operation of the software 300 shown in FIG.
【0124】図2に示すソフトウェア300のキネマテ
ィックオドメトリKINE310には、上述したよう
に、画像データ301及びセンサデータ302が入力さ
れる。この画像データ301は、カラー画像及びステレ
オカメラによる視差画像である。また、センサデータ3
02は、ロボット装置の関節角等のデータである。キネ
マティックオドメトリKINE310は、これらの入力
データ301,302を受け取り、メモリに格納されて
いたそれまでの画像及びセンサデータを更新する(ステ
ップS101)。As described above, the image data 301 and the sensor data 302 are input to the kinematic odometry KINE 310 of the software 300 shown in FIG. This image data 301 is a color image and a parallax image from a stereo camera. Also, sensor data 3
02 is data such as the joint angle of the robot apparatus. The kinematic odometry KINE 310 receives these input data 301 and 302, and updates the image and sensor data stored so far in the memory (step S101).
【0125】次に、これら画像データ301とセンサデ
ータ302との時間的な対応を取る(ステップS102
−1)。即ち、画像データ301の画像が撮像された時
間におけるセンサデータ302の関節角を割り出す。次
いで、この関節角のデータを使用してロボット装置1が
中心に固定されたロボット中心座標系を頭部ユニットに
設けられたカメラの座標系へ変換する(ステップS10
2−2)。この場合、本実施の形態においては、ロボッ
ト中心座標系からカメラ座標系の同時変換行列等を導出
し、この同時変換行列311とこれに対応する画像デー
タとを画像認識を行うオブジェクトへ送信する。即ち、
同時変換行列311及びこれに対応する視差画像312
を平面抽出部PLEX320へ出力し、同時変換行列3
11及びカラー画像313をランドマークセンサ部CL
S340へ出力する。Next, the image data 301 and the sensor data 302 are temporally associated (step S102).
-1). That is, the joint angle of the sensor data 302 at the time when the image of the image data 301 is captured is calculated. Next, using this joint angle data, the robot central coordinate system in which the robot apparatus 1 is fixed to the center is converted into the coordinate system of the camera provided in the head unit (step S10).
2-2). In this case, in the present embodiment, the simultaneous conversion matrix and the like of the camera coordinate system are derived from the robot center coordinate system, and this simultaneous conversion matrix 311 and the image data corresponding thereto are transmitted to the object that performs image recognition. That is,
Simultaneous conversion matrix 311 and corresponding parallax image 312
To the plane extraction unit PLEX320, and the simultaneous conversion matrix 3
11 and the color image 313 in the landmark sensor section CL
Output to S340.
【0126】また、センサデータ302から得られる歩
行パラメータと、足底センサを使用した歩数のカウント
数とからロボット装置1の移動量を算出し、ロボット装
置1のロボット装置中心座標系における移動量を算出す
る。以下、ロボット装置中心座標系の移動量をオドメト
リともいう。このオドメトリ314を障害物グリッド算
出部OG330及び絶対座標算出部LZ350へ出力す
る。Further, the movement amount of the robot apparatus 1 is calculated from the walking parameters obtained from the sensor data 302 and the number of steps counted using the sole sensor, and the movement amount of the robot apparatus 1 in the robot apparatus central coordinate system is calculated. calculate. Hereinafter, the amount of movement of the robot device central coordinate system is also referred to as odometry. The odometry 314 is output to the obstacle grid calculation unit OG330 and the absolute coordinate calculation unit LZ350.
【0127】平面抽出部PLEX320は、キネマティ
ックオドメトリKINE310にて算出された同時変換
行列311と、これに対応するステレオカメラから得ら
れる視差画像312とが入力されると、それまでメモリ
に格納されていたこれらのデータを更新する(ステップ
S103)。そして、ステレオカメラのキャリブレーシ
ョンパラメータ等を使用して視差画像312から3次元
の位置データ(レンジデータ)を算出する(ステップS
104−1)。次いで、このレンジデータからハフ変換
等を使用して、例えば壁及びテーブル等の平面を除く平
面を平面として抽出する。また、座標変換行列311か
らロボット装置1の足底が接地している平面との対応を
取り、床面を選択し、床面上にない点、例えば所定の閾
値よりも高い位置にあるもの等を障害物として床面から
の距離を算出し、この障害物情報(obstacle)321を
障害物グリッド算出部330に出力する(ステップS1
04−2)。The plane extraction unit PLEX 320 receives the simultaneous conversion matrix 311 calculated by the kinematic odometry KINE 310 and the parallax image 312 obtained from the stereo camera corresponding to the simultaneous conversion matrix 311, and the parallax image 312 is stored in the memory until then. Also, these data are updated (step S103). Then, three-dimensional position data (range data) is calculated from the parallax image 312 using the calibration parameters of the stereo camera (step S).
104-1). Then, using the Hough transform or the like, the planes other than the planes such as the wall and the table are extracted as the planes from the range data. Further, by taking a correspondence from the coordinate transformation matrix 311 with a plane where the sole of the robot apparatus 1 is in contact with the ground, selecting a floor surface, a point that is not on the floor surface, for example, a position higher than a predetermined threshold value, etc. Is used as an obstacle to calculate the distance from the floor surface, and the obstacle information (obstacle) 321 is output to the obstacle grid calculation unit 330 (step S1).
04-2).
【0128】障害物グリッド算出部OG330では、上
述したように、キネマティックオドメトリKINE31
0にて算出されたオドメトリ314と、平面抽出部PL
EX320にて算出された障害物の観測情報(障害物情
報)321とが入力されると、メモリに格納されていた
それまでのデータを更新する(ステップS105)。そ
して、床面上に障害物があるか否かの確率を保持する障
害物グリッドを確率的手法により更新する(ステップS
106)。In the obstacle grid calculation unit OG330, as described above, the kinematic odometry KINE31.
Odometry 314 calculated at 0 and plane extraction unit PL
When the obstacle observation information (obstacle information) 321 calculated by the EX 320 is input, the data stored up to that point stored in the memory is updated (step S105). Then, the obstacle grid holding the probability of whether or not there is an obstacle on the floor is updated by the stochastic method (step S
106).
【0129】この障害物グリッド算出部OG330は、
ロボット装置1を中心とした例えば周囲4mの障害物情
報、即ち、上述した環境地図と、ロボット装置1の向く
方角を示す姿勢情報とを保持しており、上述の方法によ
り、環境地図を更新し、この更新した認識結果(障害物
情報331)を出力することにより、上位レイヤ、即
ち、本実施の形態においては、経路計画決定部SBL3
60にて障害物を回避する計画を作成することができ
る。This obstacle grid calculation unit OG330
For example, information about an obstacle around the robot device 1 around 4 m, that is, the environment map described above, and posture information indicating the direction in which the robot device 1 faces are held, and the environment map is updated by the method described above. By outputting the updated recognition result (obstacle information 331), the upper layer, that is, the route plan determination unit SBL3 in the present embodiment.
At 60, a plan to avoid obstacles can be created.
【0130】ランドマークセンサCLS340は、キネ
マティックオドメトリKINE310から同時変換行列
311及びカラー画像313が入力されると、予めメモ
リ内に格納されていたこれらのデータを更新する(ステ
ップS107)。そして、カラー画像313の画像処理
を行って、予め認識しているカラーランドマークを検出
する。このカラーランドマークのカラー画像313上で
の位置及び大きさをカメラ座標系での位置に変換する。
更に、同時変換行列311を使用し、カラーランドマー
クのカメラ座標系での位置をロボット中心位置座標系に
おける位置に変換し、ロボット中心位置座標系における
カラーランドマーク位置の情報(カラーランドマーク相
対位置情報)341を絶対座標算出部LZ350に出力
する(ステップS108)。When the simultaneous conversion matrix 311 and the color image 313 are input from the kinematic odometry KINE 310, the landmark sensor CLS 340 updates these data stored in advance in the memory (step S107). Then, the color image 313 is subjected to image processing to detect a color landmark recognized in advance. The position and size of this color landmark on the color image 313 are converted into the position on the camera coordinate system.
Further, using the simultaneous conversion matrix 311, the position of the color landmark in the camera coordinate system is converted into the position in the robot center position coordinate system, and the information of the color landmark position in the robot center position coordinate system (color landmark relative position The information) 341 is output to the absolute coordinate calculation unit LZ350 (step S108).
【0131】絶対座標算出部LZ350は、キネマティ
ックオドメトリKINE310からのオドメトリ314
と、ランドマークセンサ部CLS340からのカラーラ
ンドマーク相対位置情報341とが入力されると、予め
メモリ内に格納されていたこれらのデータが更新される
(ステップS109)。そして、絶対座標算出部LZ3
50が予め認識しているカラーランドマークの絶対座標
(ワールド座標系での位置)、カラーランドマーク相対
位置情報341、及びオドメトリ314を使用し、確率
的手法によりロボット装置の絶対座標(ワールド座標系
での位置)を算出する。そして、この絶対座標位置35
1を経路計画決定部SBL360に出力する。The absolute coordinate calculation unit LZ350 uses the odometry 314 from the kinematic odometry KINE310.
And the color landmark relative position information 341 from the landmark sensor unit CLS340 are input, these data stored in advance in the memory are updated (step S109). Then, the absolute coordinate calculation unit LZ3
50 uses the absolute coordinates (position in the world coordinate system) of the color landmarks, the relative position information 341 of the color landmarks, and the odometry 314 that the 50 recognizes in advance, and uses the probabilistic method to determine the absolute coordinates (world coordinate system) of the robot device. Position) is calculated. And this absolute coordinate position 35
1 is output to the route plan determination unit SBL360.
【0132】経路計画決定部SBL360は、障害物グ
リッド算出部OG330から障害物グリッド情報331
が入力され、絶対座標算出部LZ350から絶対座標位
置351が入力されると、予めメモリに格納されていた
これらのデータが更新される(ステップS111)。そ
して、経路計画決定部SBL360障害物グリッド算出
部OG330からの障害物情報331により、ロボット
装置1の周囲に存在する障害物に関する認識結果を取得
し、絶対座標算出部LZ350から現在のロボット装置
1の絶対座標を取得することにより、絶対座標系又はロ
ボット装置中心のロボット中心座標系で与えられた目標
地点に対して障害物に衝突せずに歩行可能な経路を生成
し、経路に応じて経路を遂行する動作コマンドを発行す
る。即ち、入力データから状況に応じてロボット装置1
が取るべき行動を決定し、その行動列を出力する(ステ
ップS112)。The route plan determination unit SBL360 receives the obstacle grid information 331 from the obstacle grid calculation unit OG330.
Is input and the absolute coordinate position 351 is input from the absolute coordinate calculation unit LZ350, these data stored in advance in the memory are updated (step S111). Then, the recognition result regarding the obstacle existing around the robot apparatus 1 is acquired from the obstacle information 331 from the route plan determination unit SBL360 obstacle grid calculation unit OG330, and the current coordinate of the robot apparatus 1 is acquired from the absolute coordinate calculation unit LZ350. By acquiring the absolute coordinates, a path that can be walked without colliding with an obstacle is generated for the target point given in the absolute coordinate system or the robot center coordinate system centered on the robot device, and the route is set according to the route. Issue an action command to perform. That is, from the input data, the robot device 1 can be used according to the situation.
Determines the action to be taken by the user and outputs the action sequence (step S112).
【0133】また、人間によるナビゲーションの場合に
は、障害物グリッド算出部OG330からロボット装置
の周囲に存在する障害物に関する認識結果及び絶対座標
算出部LZ350からの現在のロボット装置の位置の絶
対座標をユーザに提供し、このユーザからの入力に応じ
て動作コマンドを発行させる。In the case of human navigation, the obstacle grid calculation unit OG330 gives the recognition result regarding the obstacles existing around the robot apparatus and the absolute coordinates of the current position of the robot apparatus from the absolute coordinate calculation unit LZ350. It is provided to the user and the operation command is issued in response to the input from the user.
【0134】図13は、上述のソフトウェアに入力され
るデータの流れを模式的に示す図である。なお、図13
において、図1及び図2に示す構成と同一構成要素には
同一符号を伏してその詳細な説明は省略する。FIG. 13 is a diagram schematically showing the flow of data input to the above software. Note that FIG.
2, the same components as those shown in FIGS. 1 and 2 are designated by the same reference numerals, and detailed description thereof will be omitted.
【0135】顔検出部FDT(FaceDetecto
r)371は、画像フレーム中から顔領域を検出するオ
ブジェクトであり、カメラ等の画像入力装置からカラー
画像202を受け取り、それを例えば9段階のスケール
画像に縮小変換する。この全ての画像の中から顔に相当
する矩形領域を探索する。重なりあった候補領域を削減
して最終的に顔と判断された領域に関する位置、大き
さ、及び特徴量等の情報372を出力して、顔識別部F
I(FaceIdentify)377へ送る。Face Detection Unit FDT (FaceDetecto)
r) 371 is an object that detects a face area in the image frame, receives the color image 202 from an image input device such as a camera, and reduces and converts the color image 202 into, for example, a nine-step scale image. A rectangular area corresponding to the face is searched from all the images. The face identification unit F outputs the information 372 such as the position, size, and feature amount regarding the area finally determined to be the face by reducing the overlapping candidate areas.
I (Face Identification) 377.
【0136】顔識別部FI377は、検出された顔画像
を識別するオブジェクトであり、顔の領域を示す矩形領
域画像からなる情報372を顔検出部FDT371から
受け取り、この顔画像がメモリに格納されている手持ち
の人物辞書のうちでどの人物に相当するかを比較して人
物の識別を行う。そして、顔検出部FDT371から受
け取った顔画像の顔画像領域の位置、大きさ情報と共に
人物のID情報378をDIL379に出力する。The face identifying section FI377 is an object for identifying the detected face image, receives information 372 consisting of a rectangular area image indicating the area of the face from the face detecting section FDT371, and stores this face image in the memory. The person is identified by comparing which person in the existing person dictionary corresponds to. Then, the ID information 378 of the person is output to the DIL 379 together with the position and size information of the face image area of the face image received from the face detection unit FDT371.
【0137】色認識部MCT(MultiColorT
racker)373は、色認識を行うオブジェクトで
あり、カメラ等の画像入力装置からカラー画像202を
受け取り、予め保有している複数のカラー・モデル情報
に基づいて色領域を抽出し、連続した領域に分割する。
色認識部MCT373は、分割した各領域の位置、大き
さ及び特徴量等の情報374を距離情報付加部DIL
(DistanceInformationLinke
r)379に出力する。Color recognition unit MCT (MultiColorT)
The racker) 373 is an object for performing color recognition, receives the color image 202 from an image input device such as a camera, extracts a color area based on a plurality of color model information held in advance, and forms a continuous area. To divide.
The color recognition unit MCT 373 provides information 374 such as the position, size, and feature amount of each divided area to the distance information addition unit DIL.
(DistanceInformationLinke
r) Output to 379.
【0138】動き検出部MDT(MotionDete
ctor)375は、画像の中で動いている部分を検出
するオブジェクトであり、検出した動き領域の情報37
6を距離情報付加部DIL379に出力する。Motion Detection Unit MDT (MotionDete)
(ctor) 375 is an object for detecting a moving portion in the image, and information 37 of the detected moving area.
6 is output to the distance information adding unit DIL379.
【0139】距離情報付加部DIL379は、入力され
た2次元の情報に距離情報を付加して3次元の情報を出
力するオブジェクトであり、顔検出部FI377からの
ID情報378、色認識部MCT373からの分割した
各領域の位置、大きさ及び特徴量等の情報374並びに
動き検出部MDT375からの動き領域の情報376に
距離情報を付加して3次元情報380を短期記憶部ST
M(ShortTermMemory)381に出力す
る。The distance information adding unit DIL379 is an object which adds distance information to the input two-dimensional information and outputs three-dimensional information. The ID information 378 from the face detecting unit FI377 and the color recognizing unit MCT373. The distance information is added to the information 374 such as the position, size, and feature amount of each of the divided regions of FIG.
The data is output to the M (Short Term Memory) 381.
【0140】短期記憶部STM381は、ロボット装置
1の外部環境に関する情報を比較的短い時間だけ保持す
るオブジェクトであり、ArthurDecoder
(図示せず)から音声認識結果(単語、音源方向、確信
度)を受け取り、色認識部MCT373から肌色の領域
の位置、大きさと顔領域の位置、大きさを受け取り、顔
識別部FI377から人物のID情報等を受け取る。ま
た、ロボット装置1の機体上の各センサからロボット装
置の首の方向(関節角)を受け取る。そして、これらの
認識結果及びセンサ出力を統合的に使って、現在どこに
どの人物がいて、しゃべった言葉がどの人物のものであ
り、その人物とはこれまでにどんな対話を行ったのかと
いう情報を保存する。こうした物体、即ちターゲットに
関する物理情報と時間方向でみたイベント(履歴)を出
力として、経路計画決定部(状況依存行動階層)(SB
L)360等の上位モジュールに渡す。The short-term storage unit STM381 is an object that holds information about the external environment of the robot apparatus 1 for a relatively short time, and ArthurDecoder
The voice recognition result (word, sound source direction, certainty factor) is received from (not shown), the position and size of the flesh color area and the position and size of the face area are received from the color recognition unit MCT373, and the face recognition unit FI377 receives the person. Receives ID information and the like. Further, the direction (joint angle) of the neck of the robot apparatus is received from each sensor on the body of the robot apparatus 1. Then, by using these recognition results and sensor outputs in an integrated manner, it is possible to obtain information about which person is currently in which person, the spoken word belongs to which person, and what kind of dialogue has been performed with that person so far. save. The physical information about such an object, that is, the target, and the event (history) viewed in the time direction are output, and the route plan determination unit (situation-dependent action hierarchy) (SB
L) Pass it to a higher-level module such as 360.
【0141】経路計画決定部SBL360は、上述の短
期記憶部STM381からの情報を基にロボット装置1
の行動(状況に依存した行動)を決定するオブジェクト
である。複数の行動を同時に評価したり、実行したりす
ることができる。また、行動を切り替えて機体をスリー
プ状態にしておき、別の行動を起動することができる。The route plan determining unit SBL360 uses the information from the above-mentioned short-term storage unit STM381 as the basis for the robot apparatus 1.
It is an object that determines the behavior of (the behavior depending on the situation). Multiple actions can be evaluated and performed simultaneously. In addition, the action can be switched to put the aircraft in a sleep state, and another action can be activated.
【0142】以下、上述した各オブジェクトについて更
に詳細に説明する。先ず、上述の実施の形態において説
明した平面抽出部PLEX320について説明する。平
面抽出部PLEX320は、同時変換行列311と、こ
れに対応する図14に示す左目画像201L及び右目画
像201Rから得られた視差画像312を受け取り、以
下の図15に示す処理手順にしたがって障害物を認識す
る。The above objects will be described in more detail below. First, the plane extraction unit PLEX320 described in the above embodiment will be described. The plane extraction unit PLEX 320 receives the simultaneous conversion matrix 311, and the parallax image 312 obtained from the left-eye image 201L and the right-eye image 201R shown in FIG. 14 corresponding to the simultaneous conversion matrix 311, and removes an obstacle according to the processing procedure shown in FIG. 15 below. recognize.
【0143】先ず、平面抽出部PLEX320は、同時
変換行列311とこれに対応する視差画像312を受け
取る(ステップS61)。そして、視差画像312から
レンズ歪みとステレオの取り付け誤差を吸収したキャリ
ブレーションパラメータを利用して、画素毎にカメラ座
標から見た3次元の位置データ(x,y,z)を距離画
像として生成する(ステップS62)。First, the plane extraction unit PLEX320 receives the simultaneous conversion matrix 311 and the parallax image 312 corresponding thereto (step S61). Then, three-dimensional position data (x, y, z) viewed from the camera coordinates for each pixel is generated as a distance image using a calibration parameter that absorbs lens distortion and stereo mounting error from the parallax image 312. (Step S62).
【0144】次に、平面抽出部PLEX320は、ステ
ップS62で生成された距離画像からハフ変換等を用い
て画像中の支配的な平面のパラメータを検出する(ステ
ップS63)。この平面のパラメータは図16に示すパ
ラメータ空間(θ,φ)(投票空間)のヒストグラムに
より検出される。パラメータの投票が小さいいと障害
物、大きいと平面上のものと見なすことができる。この
平面のパラメータを使って、元々画像から得られた距離
の測定点が平面上からどれくらいの距離であるかが分か
る。以上は、上述の実施の形態において説明した通りで
ある。Next, the plane extraction unit PLEX320 detects the parameters of the dominant plane in the image from the range image generated in step S62 by using Hough transform or the like (step S63). The parameters of this plane are detected by the histogram of the parameter space (θ, φ) (voting space) shown in FIG. A small parameter vote can be regarded as an obstacle, and a large parameter vote can be regarded as on a plane. Using the parameters of this plane, it is possible to know how far the distance measurement point originally obtained from the image is on the plane. The above is as described in the above embodiment.
【0145】次に、カメラ座標系の同時変換行列311
から図17に示すようにロボットの足底接地面への変換
を求める(ステップS64)。これにより、カメラ座標
系で表現される接地平面のパラメータの算出が行われ
る。そして、前記ステップS63での画像による平面の
検出と、前記ステップS64での足底接地平面の照合か
ら、画像中の平面パラメータから床面に相当するものを
選択する(ステップS65)。Next, the simultaneous conversion matrix 311 of the camera coordinate system
To conversion of the robot to the ground contact surface of the sole of the foot as shown in FIG. 17 (step S64). As a result, the parameters of the ground plane expressed in the camera coordinate system are calculated. Then, based on the detection of the plane in the image in step S63 and the collation of the sole grounding plane in step S64, the one corresponding to the floor surface is selected from the plane parameters in the image (step S65).
【0146】次に、前記ステップS65にて選択された
平面パラメータを使って、元の距離画像から平面上に載
っている点を選択する(ステップS66)。これは下記
数式(22)、数式(23)を使用して、平面からの距
離dがしきい値Dthより小さい事を使って判断する。Next, using the plane parameters selected in step S65, points on the plane are selected from the original range image (step S66). This is determined by using the following formulas (22) and (23) by using the fact that the distance d from the plane is smaller than the threshold value Dth .
【0147】[0147]
【数25】 [Equation 25]
【0148】[0148]
【数26】 [Equation 26]
【0149】図18には、しきい値Dthを1cmとした
範囲で選択された測定点(×印)を示す。この図18に
て、黒く抜かれている点が平面と判断されなかった点で
ある。FIG. 18 shows the measurement points (marked with X) selected within the range where the threshold value D th is 1 cm. In FIG. 18, the black dots are points that were not determined to be flat.
【0150】したがって、前記ステップS66にて平面
上(床面)上に載っている点以外の点(床面上に無い
点)を障害物としてステップS67にて認識することが
できる。これらの判断結果は床平面上の点(x、y)と
その高さzで表現される。例えば、高さz<0は、平面
より凹んでいる点を示す。Therefore, points other than the points lying on the plane (floor surface) in step S66 (points not on the floor surface) can be recognized as obstacles in step S67. These judgment results are expressed by a point (x, y) on the floor plane and its height z. For example, the height z <0 indicates a point that is recessed from the plane.
【0151】これにより、高さがロボットより高い障害
物点はそれをくぐることができるので障害物ではないと
いう判断も可能とすることができる。As a result, an obstacle point having a height higher than that of the robot can pass through the obstacle point, so that it can be determined that the obstacle point is not an obstacle.
【0152】また、ロボットビュー(図19の(a))
から得た床面抽出画像(図19の(b))の高さzを0
(z=0)となるように座標変換すれば、図19の
(c)に示すように、平面上の2次元の位置で床か障害
物かを表現することができる。The robot view ((a) in FIG. 19)
The height z of the floor surface extraction image ((b) of FIG. 19) obtained from FIG.
If the coordinates are converted so that (z = 0), it is possible to represent a floor or an obstacle at a two-dimensional position on a plane as shown in (c) of FIG.
【0153】このように、障害物認識装置は、多数の測
定点を使って平面の検出を行うために安定した平面を抽
出できる。また、画像から得られる平面候補をロボット
の姿勢から得られる床面パラメータと照合することで正
しい平面を選択できる。また、障害物を認識するのでは
なく、実質的には床面を認識するので障害物の形状や大
きさに因らない認識が可能である。また、床面からの距
離で障害物を表現するので細かい段差や凹みまで検出す
ることができる。またロボットの大きさを考慮して跨い
だり、くぐったりする判断も容易である。さらに、2次
元床面上の障害物表現となるので経路計画などに既存の
移動ロボットで用いられる手法が適用可能であるし、3
次元の表現より高速に演算できる。As described above, the obstacle recognizing device can detect a stable plane because the plane is detected using a large number of measurement points. In addition, the correct plane can be selected by comparing the plane candidates obtained from the image with the floor surface parameters obtained from the posture of the robot. Moreover, since the floor surface is substantially recognized instead of recognizing the obstacle, it is possible to recognize the obstacle irrespective of the shape or size of the obstacle. Further, since the obstacle is represented by the distance from the floor surface, it is possible to detect even a small step or a recess. In addition, it is easy to determine whether to cross over or pass through considering the size of the robot. Furthermore, since it represents an obstacle on a two-dimensional floor surface, the method used by existing mobile robots can be applied to route planning and the like.
It can be operated faster than dimensional representation.
【0154】障害物グリッド算出部OG330は、所定
の大きさのグリッドに分割された、ロボット中心座標系
の地図情報である環境地図と、例えば環境地図上におい
てx軸方向又はy軸方向等の所定の方角からロボット装
置が向く方角を示す姿勢情報とを有している。また、環
境地図は、障害物情報が上述した平面抽出部PLEX3
20から入力され、障害物として認識されているグリッ
ド(障害物占有領域)を有する。この障害物グリッド算
出部OG330は、ロボット装置が移動すると、即ち、
オドメトリ314が入力されると、予めメモリ内に格納
されていた環境地図及び姿勢情報を、ロボット装置の姿
勢の変化(差分移動角)及び移動距離(差分移動量)に
伴って、予め認識している環境地図及び姿勢方向の情報
を更新する。ここで、差分移動量がグリッドサイズより
小さければ環境地図を更新せず、移動量がグリッドのサ
イズを超える場合は環境地図を更新する。また、環境地
図及びそのグリッドの大きさを必要に応じて適宜変更す
ることにより、計算量及びメモリコピーコスト等を低減
することができる。The obstacle grid calculation unit OG330 divides the grid into a grid of a predetermined size and is an environment map which is the map information of the robot center coordinate system, and a predetermined x-axis direction or y-axis direction on the environment map. And orientation information indicating the direction in which the robot device faces from the direction. In addition, the environment map includes the plane extraction unit PLEX3 whose obstacle information is described above.
It has a grid (obstacle occupied area) input from 20 and recognized as an obstacle. This obstacle grid calculation unit OG330 is used when the robot apparatus moves, that is,
When the odometry 314 is input, the environment map and the posture information stored in advance in the memory are recognized in advance along with the change in the posture (difference movement angle) and the movement distance (difference movement amount) of the robot apparatus. Update the information on the environment map and posture direction. Here, if the difference movement amount is smaller than the grid size, the environment map is not updated, and if the movement amount exceeds the grid size, the environment map is updated. Further, by appropriately changing the size of the environment map and the grid thereof as necessary, it is possible to reduce the calculation amount and the memory copy cost.
【0155】ランドマーク位置検出部CLS340は、
図20に示すように、例えば、グリーン部分1001、
ピンク部分1002、又はブルー部分1003等のカラ
ーを有する人工的なカラーランドマーク1004を含む
環境において、ロボット装置1のセンサ情報と、ロボッ
ト装置1が行った動作情報によって、ロボット装置の自
己位置(位置及び姿勢)を同定する。The landmark position detector CLS340 is
As shown in FIG. 20, for example, the green portion 1001,
In an environment including an artificial color landmark 1004 having a color such as a pink portion 1002 or a blue portion 1003, the robot device 1's self-position (position) is determined by the sensor information of the robot device 1 and the motion information performed by the robot device 1. And posture).
【0156】例えば、2次元的な作業空間上では、略等
間隔状にグリッド(x,y)を設け、各グリッドの位置
l(localization)毎にロボット装置が存在する確率p
(l)を管理する。この存在確率p(l)は、ロボット
装置の移動(move)、即ち内界観測情報a、又はラ
ンドマークの観測、即ち外界観測情報sの入力に応じて
更新される。For example, in a two-dimensional work space, grids (x, y) are provided at substantially equal intervals, and the probability p that a robot device exists for each position l (localization) of each grid.
Manage (l). The existence probability p (l) is updated in response to the movement of the robot apparatus, that is, the internal observation information a, or the observation of the landmark, that is, the external observation information s.
【0157】存在確率p(l)は、ロボット装置の以前
の状態、即ち自己位置l'における存在確率p(l')
と、以前の状態l'において移動aを行ったときに状態
lになるという遷移確率p(l|a,l')に依拠す
る。即ち、これまでの各状態l'になる確率p(l')
と、状態l'において移動aを行ったときに状態lにな
るという遷移確率p(l|a,l')の積を加算してい
く(若しくは積分する)ことによって、現在の状態、即
ち自己位置lになるという存在確率p(l)に収束す
る。従って、外界観測結果としてのロボット装置の移動
aが観測されたときには、各グリッドでは、下記数式
(24)に従ってロボット装置の存在確率p(l)を更
新することができる。The existence probability p (l) is the existence probability p (l ') at the previous state of the robot apparatus, that is, the self position l'.
And the transition probability p (l | a, l ′) that the state becomes l when the movement a is performed in the previous state l ′. That is, the probability p (l ') of each state l'
And adding (or integrating) the products of transition probabilities p (l | a, l ′) that the state 1 is obtained when the movement a is performed in the state l ′. It converges to the existence probability p (l) that the position is 1. Therefore, when the movement a of the robot device as the result of the external world observation is observed, the existence probability p (l) of the robot device can be updated in each grid according to the following mathematical expression (24).
【0158】[0158]
【数27】 [Equation 27]
【0159】また、状態、即ち自己位置lにロボット装
置が存在するという存在確率p(l)は、存在確率p
(l)とこの状態lにおいてランドマークを観察すると
いう遷移確率p(s|l)に依拠する。したがって、状
態lにおいてランドマークの観測、即ち外界観測情報s
が入力された場合には、下式に従ってロボット装置の存
在確率p(l)を更新することができる。但し、下記数
式(25)に示すように右辺では、正規化のため、ラン
ドマークを観察するという確率p(s)で除して正規化
している。Further, the existence probability p (l) that the robot device exists at the state, that is, at the self position l is the existence probability p.
(L) and the transition probability p (s | l) of observing a landmark in this state l. Therefore, in the state 1, the landmark observation, that is, the external observation information s
When is input, the existence probability p (l) of the robot device can be updated according to the following equation. However, as shown in the following mathematical expression (25), the right side is normalized for normalization by dividing by the probability p (s) of observing the landmark.
【0160】[0160]
【数28】 [Equation 28]
【0161】図21は、マルコフ・ローカリゼーション
と拡張カルマン・フィルタを併用した本実施形態に係る
ランドマークセンサCLS(自己位置同定システム)3
40の機能構成を模式的に示している。同図に示すよう
に、このランドマークセンサCLS340は、マルコフ
・ローカリゼーション部(ML)342と、拡張カルマ
ン・フィルタ部(EKL)343と、拡張カルマン・フ
ィルタ部343の動作を制御するEKL制御部344と
で構成されている。FIG. 21 shows a landmark sensor CLS (self-localization system) 3 according to the present embodiment, which uses both Markov localization and extended Kalman filter.
The functional configuration of 40 is schematically shown. As shown in the figure, the landmark sensor CLS340 includes a Markov localization unit (ML) 342, an extended Kalman filter unit (EKL) 343, and an EKL control unit 344 that controls the operations of the extended Kalman filter unit 343. It consists of and.
【0162】マルコフ・ローカリゼーション部342
は、作業空間内の自分の位置を離散的なグリッド上の自
己位置確率密度分布として保持し、ランドマークの観測
に関する外界観測情報sと、ロボット装置自身の動作に
関する内界観測情報aを入力して、自己位置確率密度分
布の更新を行う。そして、各時刻において、自己位置確
率密度分布の最も高い値を持つグリッドを自己位置の推
定結果としてEKL制御部344に出力する。Markov Localization Section 342
Holds its own position in the work space as a self-position probability density distribution on a discrete grid, and inputs external observation information s regarding the observation of landmarks and internal observation information a regarding the movement of the robot device itself. Then, the self-position probability density distribution is updated. Then, at each time point, the grid having the highest value of the self-position probability density distribution is output to the EKL control unit 344 as the self-position estimation result.
【0163】図22は、マルコフ・ローカリゼーション
部342により求められた各グリッド上での自己位置確
率密度分布を表している。同図では、各グリッドにおけ
る確率密度を濃淡により表現している。最も色が濃い、
即ち自己位置確率密度分布が最も高い値を有するグリッ
ドが自己位置の推定結果となる。FIG. 22 shows the self-position probability density distribution on each grid obtained by the Markov localization unit 342. In the figure, the probability density in each grid is represented by shading. Darkest color,
That is, the grid having the highest value of the self-position probability density distribution becomes the self-position estimation result.
【0164】このマルコフ・ローカリゼーションによる
自己位置同定は、センサのノイズに対してロバストであ
り、同定解の精度は粗いが解の収束速度が速いことを主
な特徴とする。The self-position identification by the Markov localization is robust against the noise of the sensor, and is characterized mainly in that the accuracy of the identification solution is coarse but the convergence speed of the solution is fast.
【0165】一方、図21に示す拡張カルマン・フィル
タ部343は、自己位置を状態変数[x,y,θ]を実
測値として保持し、環境内に設置されたカラーランドマ
ーク1004を観測すると、ランドマークからの相対位
置に基づいて自己位置を推定する。また、自身の動作情
報を観測すると、その動作情報に基づいて状態量の推定
を行う。On the other hand, the extended Kalman filter unit 343 shown in FIG. 21 holds the self position as a state variable [x, y, θ] as an actually measured value, and observes the color landmark 1004 installed in the environment, The self-position is estimated based on the relative position from the landmark. Further, when observing its own motion information, the state quantity is estimated based on the motion information.
【0166】拡張カルマン・フィルタ部343は、ロボ
ット装置自身の動作情報aと状態、即ち、自己位置lと
の関係を規定した状態モデルと、自己位置lとランドマ
ークの観測情報sとの関係を規定した観測モデルとで構
成されている。The extended Kalman filter unit 343 shows the relationship between the motion information a of the robot apparatus itself and the state, that is, the state model defining the relationship between the self position l and the self position l and the observation information s of the landmark. It consists of a specified observation model.
【0167】状態モデルは、ロボット装置が状態(自己
位置)lにおいて動作aを行った場合における理論的な
状態lを与える遷移関数F(l,a)を備えている。実
際には理論的な状態lに対してノイズ成分wが重畳され
ることから、ロボット装置の状態lは状態モデルにより
下記数式(26)のように収束する。The state model has a transition function F (l, a) that gives a theoretical state 1 when the robot apparatus performs the action a in the state (self position) l. In reality, since the noise component w is superimposed on the theoretical state 1, the state 1 of the robot apparatus converges according to the following equation (26) according to the state model.
【0168】[0168]
【数29】 [Equation 29]
【0169】また、観測モデルは、ロボット装置が状
態、即ち自己位置iにおいて、ある既知の環境Env
(例えばランドマークの位置など)に関する観測の理論
値sを与える観測関数H(Env,l)を備えている。
実際には観測の理論値に対してノイズ成分vが重畳され
ることから、観測値sは観測モデルにより下記数式(2
7)のように収束する。Further, the observation model is such that the robot device is in a state, that is, in the self position i, in a known environment Env.
It is provided with an observation function H (Env, l) that gives a theoretical value s of observation (for example, the position of a landmark).
Since the noise component v is actually superimposed on the theoretical value of observation, the observed value s is calculated by the following mathematical formula (2
It converges like 7).
【0170】[0170]
【数30】 [Equation 30]
【0171】なお、状態l並びに観測sに重畳されるそ
れぞれのノイズw及びvは、ここではゼロを中央値とす
るガウス分布として仮定する。Note that the noises w and v superimposed on the state 1 and the observation s are assumed to be Gaussian distributions whose center value is zero.
【0172】ロボット装置自身の動作情報aと自己位置
lとの関係を規定した状態モデルと自己位置lとランド
マークの観測情報sとの関係を規定した観測モデルを備
えた拡張カルマン・フィルタ部343において、動作情
報aは内界観測結果として、ランドマークの観測情報s
は外界観測結果として、夫々既知である。従って、ロボ
ット装置の自己位置同定を、ロボット装置の状態lをロ
ボット装置の動作情報a及び観測情報sにより推定する
という問題に帰着することができる。ここでは、ロボッ
ト装置の動作a、状態l、及び観測sをそれぞれ下記に
示すガウス分布として表現することができる。An extended Kalman filter unit 343 having a state model defining the relationship between the motion information a of the robot apparatus itself and the self position l and an observation model defining the relationship between the self position l and the observation information s of the landmark. In the above, the operation information a is the observation information s of the landmark as the internal observation result.
Are known as external observation results. Therefore, the self-position identification of the robot device can be reduced to the problem of estimating the state 1 of the robot device from the motion information a and the observation information s of the robot device. Here, the operation a, the state l, and the observation s of the robot device can be expressed as a Gaussian distribution shown below.
【0173】[0173]
【数31】 [Equation 31]
【0174】ある時点でのロボット装置の状態lがある
中央値と及び共分散を有するガウス分布をとるものとし
て推定する。そして、ロボット装置の動作aが観測され
たときには、状態lの推定値に関する中央値並びに共分
散を下記数式(28−1),(28−2)により更新す
ることができる。It is estimated that the state 1 of the robot apparatus at a certain time point is a Gaussian distribution having a certain median value and covariance. Then, when the motion a of the robot apparatus is observed, the median value and the covariance regarding the estimated value of the state 1 can be updated by the following mathematical expressions (28-1) and (28-2).
【0175】[0175]
【数32】 [Equation 32]
【0176】ここで、▽Fl,▽Faは、下記とする。Here, ∇F l and ∇F a are as follows.
【0177】[0177]
【数33】 [Expression 33]
【0178】同様に、ある時点でのロボット装置の状態
lがある中央値及び共分散を有するガウス分布をとるも
のとして推定する。そして、ランドマークの観測情報s
が観測されたときには、状態lの推定値に関する中央値
並びに共分散を下記数式(29−1),(29−2)に
より更新することができる。Similarly, the state 1 of the robot apparatus at a certain point of time is estimated to have a Gaussian distribution having a certain median and covariance. And the landmark observation information s
When is observed, the median and the covariance regarding the estimated value of the state 1 can be updated by the following mathematical expressions (29-1) and (29-2).
【0179】[0179]
【数34】 [Equation 34]
【0180】ここで、各パラメータは下記数式(30−
1)乃至(30−4)とする。Here, each parameter is represented by the following formula (30-
1) to (30-4).
【0181】[0181]
【数35】 [Equation 35]
【0182】拡張カルマン・フィルタ343はセンサ情
報に対するロバスト性に優れているので、拡張カルマン
・フィルタ部343の推定結果は、ランドマークセンサ
CLS340全体の出力としている。Since the extended Kalman filter 343 is excellent in robustness to sensor information, the estimation result of the extended Kalman filter unit 343 is the output of the entire landmark sensor CLS340.
【0183】EKL制御部344は、マルコフ・ローカ
リゼーション部342の出力結果に応じて拡張カルマン
・フィルタ部344の動作を制御する。より具体的に
は、マルコフ・ローカリゼーション部342の自己位置
推定結果に基づいて、ランドマークの観測情報sに関す
る妥当性を検証する。観測情報sの妥当性は、マルコフ
・ローカリゼーション部342において最大の存在確率
となるグリッド位置mlpにおいてランドマークを観測
する確率p(s|mlp)が所定の閾値パラメータth
reshobsを越えたかどうかで判断することができ
る。The EKL control section 344 controls the operation of the extended Kalman filter section 344 according to the output result of the Markov localization section 342. More specifically, the validity of the landmark observation information s is verified based on the self-position estimation result of the Markov localization unit 342. The validity of the observation information s is that the probability p (s | mlp) of observing a landmark at the grid position mlp, which is the maximum existence probability in the Markov localization unit 342, is a predetermined threshold parameter th.
It can be judged by whether or not it exceeds the resh obs .
【0184】グリッド位置mlpにおいてランドマーク
を観測する確率p(s|mlp)が閾値パラメータth
reshobsを下回る場合には、センサ・ノイズに対し
てロバストなマルコフ・ローカリゼーション部342に
おいてさえ、センサ・ノイズのために同定解が充分に収
束していないことが推測される。このような場合、セン
サ・ノイズに対するロバスト性が低い拡張カルマン・フ
ィルタ部343において自己位置を推定しても、精度が
高い解が得られず、むしろ演算時間を浪費するだけであ
る。このため、観測情報sが妥当でないと判断された場
合には、切換器345を用いて拡張カルマン・フィルタ
部343への外界観測情報s、即ちランドマークの観測
情報の入力を遮断して、拡張カルマン・フィルタ部34
3における自己位置推定値の更新を停止させる。The probability p (s | mlp) of observing a landmark at the grid position mlp is the threshold parameter th.
When it is less than resh obs , it is estimated that even in the Markov localization unit 342 that is robust against sensor noise, the identification solution does not sufficiently converge due to sensor noise. In such a case, even if the self-position is estimated in the extended Kalman filter unit 343, which has low robustness against sensor noise, a highly accurate solution cannot be obtained, and rather the calculation time is wasted. Therefore, when it is determined that the observation information s is not appropriate, the input of the external observation information s, that is, the observation information of the landmark, to the extended Kalman filter unit 343 is blocked using the switch 345, and the extension is performed. Kalman filter unit 34
The update of the self-position estimation value in 3 is stopped.
【0185】また、EKL制御部344は、拡張カルマ
ン・フィルタ部343の自己位置推定結果の妥当性も検
証する。自己位置推定結果の妥当性は、推定された状態
lの中央値及び共分散を用いて、マルコフ・ローカリゼ
ーション部342から出力される存在確率p(l)との
分布比較テストにより判断することができる。分布比較
テストの一例は、カイ自乗テストchi−square
−test(ml,ekf)である。The EKL control unit 344 also verifies the validity of the self-position estimation result of the extended Kalman filter unit 343. The validity of the self-position estimation result can be determined by a distribution comparison test with the existence probability p (l) output from the Markov localization unit 342, using the estimated median and covariance of the state l. . An example of the distribution comparison test is the chi-square test chi-square.
-Test (ml, ekf).
【0186】分布比較テストによりマルコフ・ローカリ
ゼーション部342と拡張カルマン・フィルタ部343
との各確率分布が類似していない場合には、センサ・ノ
イズに対するロバスト性が低い拡張カルマン・フィルタ
部343における自己位置推定値の方が、センサ・ノイ
ズの影響により妥当でないと判断することができる。こ
のような場合、EKL制御部344は拡張カルマン・フ
ィルタ部343の再初期化を行わせる。何故ならば、拡
張カルマン・フィルタは再復帰に多大な時間を要するか
らである。By the distribution comparison test, the Markov localization unit 342 and the extended Kalman filter unit 343.
If the probability distributions of and are not similar, it may be determined that the self-position estimation value in the extended Kalman filter unit 343, which has low robustness to sensor noise, is not valid due to the influence of sensor noise. it can. In such a case, the EKL control unit 344 causes the extended Kalman filter unit 343 to be reinitialized. This is because the extended Kalman filter requires a great deal of time to restore again.
【0187】次に、ランドマークセンサCLS340の
動作について説明する。図23は、ランドマークセンサ
CLS340の動作を示すフローチャートである。図2
3に示すように、ロボット装置1の移動に関する内界観
測情報aがランドマークセンサCLS340に入力され
ると、まずマルコフ・ローカリゼーション部342にお
いて、上記数式(24)を用いて自己位置推定値の更新
処理が行われる(ステップS201)。次いで、拡張カ
ルマン・フィルタ部343において、上記数式数(28
−1),(28−2)を用いて自己位置推定値の更新処
理が行われる(ステップS202)。Next, the operation of the landmark sensor CLS340 will be described. FIG. 23 is a flowchart showing the operation of the landmark sensor CLS340. Figure 2
As shown in FIG. 3, when the inner-field observation information a regarding the movement of the robot apparatus 1 is input to the landmark sensor CLS340, first, in the Markov localization unit 342, the self-position estimation value is updated using the mathematical expression (24). Processing is performed (step S201). Then, in the extended Kalman filter unit 343,
-1) and (28-2) are used to update the self-position estimation value (step S202).
【0188】また、ランドマークの観測に関する外界観
測情報sがランドマークセンサCLS340に入力され
ると、まずマルコフ・ローカリゼーション部342にお
いて、上記数式(25)を用いて、自己位置推定値の更
新処理が行われる(ステップS211)。When the outside world observation information s regarding the observation of the landmark is input to the landmark sensor CLS340, the Markov localization unit 342 first updates the self-position estimation value using the above equation (25). It is performed (step S211).
【0189】マルコフ・ローカリゼーション部342の
出力結果は、EKL制御部344に入力されて、観測情
報sの妥当性が検証される(ステップS212)。観測
情報sの妥当性は、マルコフ・ローカリゼーション部3
42において最大の存在確率となるグリッド位置mlp
においてランドマークを観測する確率p(s|mlp)
が所定の閾値パラメータthreshobsを越えたかど
うかで判断することができる。The output result of the Markov localization unit 342 is input to the EKL control unit 344, and the validity of the observation information s is verified (step S212). The validity of the observation information s is based on the Markov localization section 3
The grid position mlp having the maximum existence probability at 42
Probability of observing landmarks at p (s | mlp)
Can exceed the predetermined threshold parameter thresh obs .
【0190】グリッド位置mlpにおいてランドマーク
を観測する確率p(s|mlp)が閾値パラメータth
reshobsを下回る場合には、センサ・ノイズに対し
てロバストなマルコフ・ローカリゼーション部342に
おいてさえ、センサ・ノイズのために同定解が充分に収
束していないことが推測される。このような場合、セン
サ・ノイズに対するロバスト性が低い拡張カルマン・フ
ィルタ部343において自己位置を推定しても、精度の
よい解が得られず、むしろ演算時間を浪費するだけであ
る。このため、観測情報sが妥当でないと判断された場
合には、切換器345を用いて拡張カルマン・フィルタ
部343への外界観測情報s、即ちランドマークの観測
情報の入力を遮断して、拡張カルマン・フィルタ部34
3における自己位置推定値の更新を停止させる。The probability p (s | mlp) of observing a landmark at the grid position mlp is the threshold parameter th.
When it is less than resh obs , it is estimated that even in the Markov localization unit 342 that is robust against sensor noise, the identification solution does not sufficiently converge due to sensor noise. In such a case, even if the extended Kalman filter unit 343, which has low robustness to sensor noise, estimates the self-position, an accurate solution cannot be obtained, but rather the calculation time is wasted. Therefore, when it is determined that the observation information s is not appropriate, the input of the external observation information s, that is, the observation information of the landmark, to the extended Kalman filter unit 343 is blocked using the switch 345, and the extension is performed. Kalman filter unit 34
The update of the self-position estimation value in 3 is stopped.
【0191】他方、観測情報sを検証した結果、妥当性
を満たす、即ちグリッド位置mlpにおいてランドマー
クを観測する確率p(s|mlp)が閾値パラメータt
hreshobsを上回る場合には、さらに拡張カルマン
・フィルタ部343において、上記数式(29−1),
(29−2)を用いて更新処理が行われる(ステップS
213)。On the other hand, as a result of verifying the observation information s, the probability p (s | mlp) that satisfies the validity, that is, the landmark is observed at the grid position mlp is the threshold parameter t.
When it exceeds hresh obs , the extended Kalman filter unit 343 further calculates the above mathematical expression (29-1),
The update process is performed using (29-2) (step S
213).
【0192】拡張カルマン・フィルタ部343による自
己位置推定の結果は、EKL制御部344に入力され
て、その妥当性が検証される(ステップS214)。拡
張カルマン・フィルタ部343による自己位置推定結果
の妥当性は、推定された状態lの中央値及び共分散を用
いて、マルコフ・ローカリゼーション部342から出力
される存在確率p(l)との分布比較テストにより判断
することができる。分布比較テストの一例は、カイ自乗
テストchi−square−test(ml,ek
f)である。The result of self-position estimation by the extended Kalman filter unit 343 is input to the EKL control unit 344 and its validity is verified (step S214). The validity of the self-position estimation result by the extended Kalman filter unit 343 is determined by comparing the distribution with the existence probability p (l) output from the Markov localization unit 342, using the estimated median and covariance of the state l. Can be judged by the test. An example of a distribution comparison test is a chi-square test chi-square-test (ml, ek
f).
【0193】分布比較テストによりマルコフ・ローカリ
ゼーション部342と拡張カルマン・フィルタ部343
それぞれの確率分布が類似していない場合には、センサ
・ノイズに対するロバスト性が低い拡張カルマン・フィ
ルタ部343における自己位置推定値の方が、センサ・
ノイズの影響により妥当でないと判断することができ
る。このような場合、EKL制御部344は拡張カルマ
ン・フィルタ部343の再初期化を行わせる(ステップ
S215)。何故ならば、拡張カルマン・フィルタは再
復帰に多大な時間を要するからである。By the distribution comparison test, the Markov localization unit 342 and the extended Kalman filter unit 343.
When the respective probability distributions are not similar, the self-position estimation value in the extended Kalman filter unit 343, which has low robustness to sensor noise, is the sensor position.
It can be judged to be invalid due to the influence of noise. In such a case, the EKL control unit 344 causes the extended Kalman filter unit 343 to be re-initialized (step S215). This is because the extended Kalman filter requires a great deal of time to restore again.
【0194】このようにして、ランドマークセンサCL
S340では、広い範囲で比較的短い探索時間で探索を
行う大域探索と高精度だが探索時間を要する局所的探索
とを併用して、高精度で、高速且つロバストな自己位置
同定を行うことができる。In this way, the landmark sensor CL
In S340, it is possible to perform high-accuracy, high-speed, and robust self-localization by using both the global search, which performs a search in a relatively short search time in a wide range, and the local search, which has a high accuracy but requires a search time. .
【0195】経路計画決定部SBL360は、障害物グ
リッド算出部OG330からの障害物情報331によ
り、ロボット装置1の周囲に存在する障害物に関する認
識結果を取得し、絶対座標算出部LZ350から現在の
ロボット装置1の絶対座標を取得することにより、絶対
座標系又はロボット装置中心のロボット中心座標系で与
えられた目標地点に対して障害物に衝突せずに歩行可能
な経路を生成し、経路に応じて経路を遂行する動作コマ
ンドを発行する。即ち、入力データから状況に応じてロ
ボット装置1が取るべき行動を決定し、その行動列を出
力する。ここで、障害物グリッド算出部OG330の、
障害物情報331に基づいた処理については後述する。The path plan determination unit SBL360 acquires the recognition result regarding the obstacle existing around the robot apparatus 1 from the obstacle information 331 from the obstacle grid calculation unit OG330, and the current robot is calculated from the absolute coordinate calculation unit LZ350. By acquiring the absolute coordinates of the device 1, a path that can be walked without colliding with an obstacle to a target point given in the absolute coordinate system or the robot center coordinate system of the robot device center is generated, Issue an operation command to carry out the route. That is, the action to be taken by the robot apparatus 1 is determined from the input data according to the situation, and the action sequence is output. Here, in the obstacle grid calculation unit OG330,
The processing based on the obstacle information 331 will be described later.
【0196】障害物グリッド算出部OG330からの障
害物情報331により生成される障害物地図上の点は、
図24に示すように以下の3つの種類に分類される。The points on the obstacle map generated by the obstacle information 331 from the obstacle grid calculation unit OG330 are
As shown in FIG. 24, they are classified into the following three types.
【0197】第1の点は、障害物の存在する点(図中の
黒色で表される点)である。第2の点は、自由空間(障
害物が存在しない空間)上の点(図中の白で表される
点)である。そして、第3の点は、未観測領域上の点
(図中の斜線で表される点)である。The first point is a point where an obstacle exists (point shown in black in the figure). The second point is a point (point represented by white in the figure) on the free space (space where no obstacle exists). Then, the third point is a point on the unobserved region (point indicated by the diagonal line in the figure).
【0198】次に、前記経路計画決定部SBL360が
採用する経路計画アルゴリズムを図25のフローチャー
トに示し、以下に詳細を説明する。Next, the route planning algorithm adopted by the route plan determining unit SBL360 is shown in the flowchart of FIG. 25, and the details will be described below.
【0199】先ず、現在位置から目的位置までを結ぶ直
線経路の周辺の障害物地図が作成されるように、視線を
目的地方向に向ける(ステップS71)。そして距離画
像を観測し、距離計測を行い、障害物地図を作成(更
新)する(ステップS72)。First, the line of sight is directed toward the destination so that an obstacle map around a straight route connecting the current position to the target position is created (step S71). Then, the distance image is observed, the distance is measured, and the obstacle map is created (updated) (step S72).
【0200】次に、生成された障害物地図において、未
観測領域と自由空間領域を移動可能領域とみなして経路
計画を行う(ステップS73)。Next, in the generated obstacle map, the unobserved area and the free space area are regarded as the movable area and the route is planned (step S73).
【0201】この経路計画としては、例えば経路全体の
コストを最小化するA*探索(A*search)いう方法を
用いる。このA*探索は、評価関数としてfを用い、h
関数が許容的であるような最良優先探索である。いかな
るヒューリスティック関数に対しても効率最適という点
を用いている。[0201] As the path planning, for example, A * search (A * search) that minimizes the cost of the entire route using the method referred to. In this A * search, f is used as the evaluation function, and h
It is a best-first search in which the function is admissible. We use the point of efficiency optimization for any heuristic function.
【0202】このステップS73にて例えばA*探索を
適用することにより生成された経路が移動可能であるな
否かをステップS74にてチェックし、障害物を回避す
ることのできる経路が計画できなかった場合(NO)に
は、これ以上観測を続けても移動可能な経路が得られる
可能性がないため、その旨を告げて経路計画を終了する
(ステップS75)。In step S73, it is checked in step S74 whether or not the route generated by applying the A * search is movable, and the route that can avoid the obstacle cannot be planned. In the case of (NO), there is no possibility that a movable route can be obtained even if the observation is continued any more, so that is notified and the route planning ends (step S75).
【0203】ステップS73にて移動可能経路が例えば
前記A*探索を適用して計画できた場合(YES)に
は、ステップS76に進み、出力された経路上に未観測
領域が含まれるか否かを検索する。このステップS76
にて経路上に未観測領域が含まれなかった場合(NO)
には、ステップS77にて目的地までの経路計画として
移動可能経路を出力する。ステップS76にて未観測領
域が含まれる場合(YES)には、ステップS78に進
んで現在位置から未観測領域までの歩数を計算し、その
歩数が閾値を超えるか否かをチェックする。In step S73, if the movable route can be planned by applying, for example, the A * search (YES), the process proceeds to step S76, and whether or not an unobserved region is included in the output route. To search. This step S76
If no unobserved area is included in the route (NO)
, A movable route is output as a route plan to the destination in step S77. If the unobserved region is included in step S76 (YES), the process proceeds to step S78, the step count from the current position to the unobserved region is calculated, and it is checked whether the step count exceeds a threshold value.
【0204】ステップS78において歩数が閾値を超え
る場合(YES)には、ステップS79により未知領域
までの移動可能経路を出力してから、ステップS71の
処理に戻る。一方、ステップS78において未知観測領
域までの歩数が閾値に満たない場合(NO)は、未観測
領域が距離観測されるように視線方向の制御を行って再
観測を行い(ステップS80)、再び障害物地図の更新
を行う。If the step count exceeds the threshold value in step S78 (YES), the movable route to the unknown area is output in step S79, and the process returns to step S71. On the other hand, when the number of steps to the unknown observation region is less than the threshold value in step S78 (NO), the line-of-sight direction is controlled so that the unobserved region is observed by distance (step S80), and the obstacle is detected again. Update the physical map.
【0205】以上のような経路計画アルゴリズムを採用
した経路計画決定部SBL360は、未観測領域と自由
空間領域を移動可能領域とみなして経路計画を行い、出
力された経路上に含まれる未観測領域部のみを再観測す
ることにより、目的地に移動する際に不必要な観測及び
距離画像計算処理を行わなわず、効率的で短時間に移動
経路計画を生成することが可能となる。The route plan determination unit SBL360 which adopts the route planning algorithm as described above, considers the unobserved region and the free space region as a movable region, performs the route planning, and outputs the unobserved region included in the route. By re-observing only a part, it is possible to generate a moving route plan efficiently and in a short time without performing unnecessary observation and distance image calculation processing when moving to a destination.
【0206】以下、本発明の実施の形態における上述し
た平面抽出装置を搭載した2足歩行タイプのロボット装
置について詳細に説明する。この人間型のロボット装置
は、住環境その他の日常生活上の様々な場面における人
的活動を支援する実用ロボットであり、内部状態(怒
り、悲しみ、喜び、楽しみ等)に応じて行動できるほ
か、人間が行う基本的な動作を表出できるエンターテイ
ンメントロボットである。Hereinafter, a bipedal walking type robot device equipped with the above-mentioned plane extracting device according to the embodiment of the present invention will be described in detail. This humanoid robot device is a practical robot that supports human activities in various situations in the living environment and other daily life, and can act according to internal conditions (anger, sadness, joy, enjoyment, etc.), It is an entertainment robot that can express the basic actions that humans perform.
【0207】図26に示すように、ロボット装置1は、
体幹部ユニット2の所定の位置に頭部ユニット3が連結
されると共に、左右2つの腕部ユニット4R/Lと、左
右2つの脚部ユニット5R/Lが連結されて構成されて
いる(但し、R及びLの各々は、右及び左の各々を示す
接尾辞である。以下において同じ。)。As shown in FIG. 26, the robot apparatus 1 has
The head unit 3 is connected to a predetermined position of the trunk unit 2, and two left and right arm units 4R / L and two left and right leg units 5R / L are connected (however, provided. Each of R and L is a suffix indicating each of right and left. The same applies below.).
【0208】このロボット装置1が具備する関節自由度
構成を図27に模式的に示す。頭部ユニット3を支持す
る首関節は、首関節ヨー軸101と、首関節ピッチ軸1
02と、首関節ロール軸103という3自由度を有して
いる。FIG. 27 schematically shows the joint degree-of-freedom configuration of the robot apparatus 1. The neck joint supporting the head unit 3 includes a neck joint yaw axis 101 and a neck joint pitch axis 1.
02 and the neck joint roll shaft 103 have three degrees of freedom.
【0209】また、上肢を構成する各々の腕部ユニット
4R/Lは、肩関節ピッチ軸107と、肩関節ロール軸
108と、上腕ヨー軸109と、肘関節ピッチ軸110
と、前腕ヨー軸111と、手首関節ピッチ軸112と、
手首関節ロール軸113と、手部114とで構成され
る。手部114は、実際には、複数本の指を含む多関節
・多自由度構造体である。ただし、手部114の動作
は、ロボット装置1の姿勢制御や歩行制御に対する寄与
や影響が少ないので、本明細書ではゼロ自由度と仮定す
る。したがって、各腕部は7自由度を有するとする。Each arm unit 4R / L constituting the upper limb has a shoulder joint pitch axis 107, a shoulder joint roll axis 108, an upper arm yaw axis 109, and an elbow joint pitch axis 110.
, Forearm yaw axis 111, wrist joint pitch axis 112,
It is composed of a wrist joint roll shaft 113 and a hand portion 114. The hand portion 114 is actually a multi-joint / multi-degree-of-freedom structure including a plurality of fingers. However, since the motion of the hand portion 114 has little contribution or influence to the posture control and the walking control of the robot apparatus 1, it is assumed that the degree of freedom is zero in this specification. Therefore, each arm has seven degrees of freedom.
【0210】また、体幹部ユニット2は、体幹ピッチ軸
104と、体幹ロール軸105と、体幹ヨー軸106と
いう3自由度を有する。The trunk unit 2 has three degrees of freedom: a trunk pitch axis 104, a trunk roll axis 105, and a trunk yaw axis 106.
【0211】また、下肢を構成する各々の脚部ユニット
5R/Lは、股関節ヨー軸115と、股関節ピッチ軸1
16と、股関節ロール軸117と、膝関節ピッチ軸11
8と、足首関節ピッチ軸119と、足首関節ロール軸1
20と、足部121とで構成される。本明細書中では、
股関節ピッチ軸116と股関節ロール軸117の交点
は、ロボット装置1の股関節位置を定義する。人体の足
部121は、実際には多関節・多自由度の足底を含んだ
構造体であるが、ロボット装置1の足底は、ゼロ自由度
とする。したがって、各脚部は、6自由度で構成され
る。Further, each leg unit 5R / L constituting the lower limb has a hip joint yaw axis 115 and a hip joint pitch axis 1
16, a hip joint roll shaft 117, and a knee joint pitch shaft 11
8, ankle joint pitch axis 119, and ankle joint roll axis 1
20 and a foot 121. In this specification,
The intersection of the hip joint pitch axis 116 and the hip joint roll axis 117 defines the hip joint position of the robot apparatus 1. The foot 121 of the human body is actually a structure including a multi-joint, multi-degree-of-freedom foot, but the foot of the robot apparatus 1 has zero degrees of freedom. Therefore, each leg has 6 degrees of freedom.
【0212】以上を総括すれば、ロボット装置1全体と
しては、合計で3+7×2+3+6×2=32自由度を
有することになる。ただし、エンターテインメント向け
のロボット装置1が必ずしも32自由度に限定されるわ
けではない。設計・制作上の制約条件や要求仕様等に応
じて、自由度、即ち関節数を適宜増減することができる
ことはいうまでもない。In summary, the robot apparatus 1 as a whole has 3 + 7 × 2 + 3 + 6 × 2 = 32 degrees of freedom. However, the robot device 1 for entertainment is not necessarily limited to 32 degrees of freedom. It is needless to say that the degree of freedom, that is, the number of joints, can be appropriately increased or decreased in accordance with design / production constraints, required specifications, and the like.
【0213】上述したようなロボット装置1がもつ各自
由度は、実際にはアクチュエータを用いて実装される。
外観上で余分な膨らみを排してヒトの自然体形状に近似
させること、2足歩行という不安定構造体に対して姿勢
制御を行うことなどの要請から、アクチュエータは小型
且つ軽量であることが好ましい。Each degree of freedom of the robot apparatus 1 as described above is actually implemented by using an actuator.
It is preferable that the actuator be small and lightweight in view of demands such as eliminating extra bulges in appearance and approximating the shape of a natural human body, and performing posture control for an unstable structure such as bipedal walking. .
【0214】図28には、ロボット装置1の制御システ
ム構成を模式的に示している。同図に示すように、ロボ
ット装置1は、ヒトの四肢を表現した体幹部ユニット
2,頭部ユニット3,腕部ユニット4R/L,脚部ユニ
ット5R/Lと、各ユニット間の協調動作を実現するた
めの適応制御を行う制御ユニット10とで構成される。FIG. 28 schematically shows the control system configuration of the robot apparatus 1. As shown in the figure, the robot device 1 performs a coordinated operation between the trunk unit 2, the head unit 3, the arm unit 4R / L, the leg unit 5R / L, which represent human limbs, and the respective units. And a control unit 10 that performs adaptive control for realizing the above.
【0215】ロボット装置1全体の動作は、制御ユニッ
ト10によって統括的に制御される。制御ユニット10
は、CPU(Central Processing Unit)や、DRA
M、フラッシュROM等の主要回路コンポーネント(図
示しない)で構成される主制御部11と、電源回路やロ
ボット装置1の各構成要素とのデータやコマンドの授受
を行うインターフェイス(何れも図示しない)などを含
んだ周辺回路12とで構成される。The overall operation of the robot apparatus 1 is controlled by the control unit 10. Control unit 10
Is a CPU (Central Processing Unit) or DRA
An interface (not shown) for exchanging data and commands with the main control unit 11 including main circuit components (not shown) such as M and flash ROM, and the power supply circuit and each component of the robot apparatus 1. And the peripheral circuit 12 including.
【0216】本発明を実現するうえで、この制御ユニッ
ト10の設置場所は、特に限定されない。図28では体
幹部ユニット2に搭載されているが、頭部ユニット3に
搭載してもよい。あるいは、ロボット装置1外に制御ユ
ニット10を配備して、ロボット装置1の機体とは有線
又は無線で交信するようにしてもよい。In implementing the present invention, the installation place of the control unit 10 is not particularly limited. Although it is mounted on the trunk unit 2 in FIG. 28, it may be mounted on the head unit 3. Alternatively, the control unit 10 may be provided outside the robot apparatus 1 to communicate with the body of the robot apparatus 1 in a wired or wireless manner.
【0217】図27に示したロボット装置1内の各関節
自由度は、それぞれに対応するアクチュエータによって
実現される。即ち、頭部ユニット3には、首関節ヨー軸
101、首関節ピッチ軸102、首関節ロール軸103
の各々を表現する首関節ヨー軸アクチュエータA2、首
関節ピッチ軸アクチュエータA3、首関節ロール軸アク
チュエータA4が配設されている。The degree of freedom of each joint in the robot apparatus 1 shown in FIG. 27 is realized by an actuator corresponding to each joint. That is, the head unit 3 includes a neck joint yaw axis 101, a neck joint pitch axis 102, and a neck joint roll axis 103.
, A neck joint yaw axis actuator A 2 , a neck joint pitch axis actuator A 3 , and a neck joint roll axis actuator A 4 are provided.
【0218】また、頭部ユニット3には、外部の状況を
撮像するためのCCD(Charge Coupled Device)カメ
ラが設けられているほか、前方に位置する物体までの距
離を測定するための距離センサ、外部音を集音するため
のマイク、音声を出力するためのスピーカ、使用者から
の「撫でる」や「叩く」といった物理的な働きかけによ
り受けた圧力を検出するためのタッチセンサ等が配設さ
れている。Further, the head unit 3 is provided with a CCD (Charge Coupled Device) camera for picking up an image of an external situation, and a distance sensor for measuring a distance to an object located in front of the head unit 3. A microphone for collecting external sound, a speaker for outputting voice, a touch sensor for detecting the pressure received by the physical action of the user such as "stroking" or "striking" are provided. ing.
【0219】また、体幹部ユニット2には、体幹ピッチ
軸104、体幹ロール軸105、体幹ヨー軸106の各
々を表現する体幹ピッチ軸アクチュエータA5、体幹ロ
ール軸アクチュエータA6、体幹ヨー軸アクチュエータ
A7が配設されている。また、体幹部ユニット2には、
このロボット装置1の起動電源となるバッテリを備えて
いる。このバッテリは、充放電可能な電池によって構成
されている。Further, the trunk unit 2 has a trunk pitch axis actuator A 5 , a trunk roll axis actuator A 6 , which expresses the trunk pitch axis 104, trunk roll axis 105, and trunk yaw axis 106, respectively. A trunk yaw axis actuator A 7 is provided. Also, in the trunk unit 2,
The robot apparatus 1 is provided with a battery as a power source. This battery is composed of a chargeable / dischargeable battery.
【0220】また、腕部ユニット4R/Lは、上腕ユニ
ット41R/Lと、肘関節ユニット42R/Lと、前腕
ユニット43R/Lに細分化されるが、肩関節ピッチ軸
107、肩関節ロール軸108、上腕ヨー軸109、肘
関節ピッチ軸110、前腕ヨー軸111、手首関節ピッ
チ軸112、手首関節ロール軸113の各々表現する肩
関節ピッチ軸アクチュエータA8、肩関節ロール軸アク
チュエータA9、上腕ヨー軸アクチュエータA10、肘
関節ピッチ軸アクチュエータA11、肘関節ロール軸ア
クチュエータA12、手首関節ピッチ軸アクチュエータ
A13、手首関節ロール軸アクチュエータA14が配備
されている。The arm unit 4R / L is subdivided into an upper arm unit 4 1 R / L, an elbow joint unit 4 2 R / L, and a forearm unit 4 3 R / L. 107, shoulder joint roll axis 108, upper arm yaw axis 109, elbow joint pitch axis 110, forearm yaw axis 111, wrist joint pitch axis 112, wrist joint roll axis 113, respectively, shoulder joint pitch axis actuator A 8 , shoulder joint roll An axis actuator A 9 , an upper arm yaw axis actuator A 10 , an elbow joint pitch axis actuator A 11 , an elbow joint roll axis actuator A 12 , a wrist joint pitch axis actuator A 13 , and a wrist joint roll axis actuator A 14 are provided.
【0221】また、脚部ユニット5R/Lは、大腿部ユ
ニット51R/Lと、膝ユニット5 2R/Lと、脛部ユ
ニット53R/Lに細分化されるが、股関節ヨー軸11
5、股関節ピッチ軸116、股関節ロール軸117、膝
関節ピッチ軸118、足首関節ピッチ軸119、足首関
節ロール軸120の各々を表現する股関節ヨー軸アクチ
ュエータA16、股関節ピッチ軸アクチュエータ
A17、股関節ロール軸アクチュエータA18、膝関節
ピッチ軸アクチュエータA19、足首関節ピッチ軸アク
チュエータA20、足首関節ロール軸アクチュエータA
21が配備されている。各関節に用いられるアクチュエ
ータA2,A3・・・は、より好ましくは、ギア直結型で
旦つサーボ制御系をワンチップ化してモータ・ユニット
内に搭載したタイプの小型ACサーボ・アクチュエータ
で構成することができる。Also, the leg unit 5R / L is used for the thigh unit.
Knit 51R / L and knee unit 5 TwoR / L and shin
Knit 5ThreeAlthough it is subdivided into R / L, the hip joint yaw axis 11
5, hip pitch axis 116, hip roll axis 117, knee
Joint pitch axis 118, ankle joint pitch axis 119, ankle function
Hip joint yaw axis actuation expressing each of the knot roll axes 120
Player A16, Hip joint pitch axis actuator
A17, Hip joint roll axis actuator A18,Knee joint
Pitch axis actuator A19, Ankle joint pitch axis
Cheetah A20, Ankle joint roll axis actuator A
21Has been deployed. Actuator used for each joint
Data ATwo, AThreeIs more preferably a direct gear type
Motor unit with integrated servo control system in one chip
Small type AC servo actuator mounted inside
Can be composed of
【0222】体幹部ユニット2、頭部ユニット3、各腕
部ユニット4R/L、各脚部ユニット5R/Lなどの各
機構ユニット毎に、アクチュエータ駆動制御部の副制御
部20,21,22R/L,23R/Lが配備されてい
る。さらに、各脚部ユニット5R/Lの足底が着床した
か否かを検出する接地確認センサ30R/Lを装着する
とともに、体幹部ユニット2内には、姿勢を計測する姿
勢センサ31を装備している。For each mechanical unit such as the trunk unit 2, head unit 3, each arm unit 4R / L, each leg unit 5R / L, etc., the sub-control units 20, 21, 22R / of the actuator drive control unit are provided. L, 23R / L are deployed. Furthermore, a ground contact confirmation sensor 30R / L that detects whether or not the sole of each leg unit 5R / L has landed is attached, and a posture sensor 31 that measures a posture is provided in the trunk unit 2. is doing.
【0223】接地確認センサ30R/Lは、例えば足底
に設置された近接センサ又はマイクロ・スイッチなどで
構成される。また、姿勢センサ31は、例えば、加速度
センサとジャイロ・センサの組み合わせによって構成さ
れる。The ground contact confirmation sensor 30R / L is composed of, for example, a proximity sensor or a micro switch installed on the sole of the foot. Further, the posture sensor 31 is composed of, for example, a combination of an acceleration sensor and a gyro sensor.
【0224】接地確認センサ30R/Lの出力によっ
て、歩行・走行などの動作期間中において、左右の各脚
部が現在立脚又は遊脚何れの状態であるかを判別するこ
とができる。また、姿勢センサ31の出力により、体幹
部分の傾きや姿勢を検出することができる。By the output of the ground contact confirmation sensor 30R / L, it is possible to determine whether each of the left and right legs is currently standing or swinging during an operation such as walking or running. Further, the output of the posture sensor 31 can detect the inclination and posture of the trunk.
【0225】主制御部11は、各センサ30R/L,3
1の出力に応答して制御目標をダイナミックに補正する
ことができる。より具体的には、副制御部20,21,
22R/L,23R/Lの各々に対して適応的な制御を
行い、ロボット装置1の上肢、体幹、及び下肢が協調し
て駆動する全身運動パターンを実現できる。The main control section 11 uses the sensors 30R / L, 3
The control target can be dynamically corrected in response to the output of 1. More specifically, the sub control units 20, 21,
By performing adaptive control on each of 22R / L and 23R / L, it is possible to realize a whole-body movement pattern in which the upper limbs, the trunk, and the lower limbs of the robot apparatus 1 are cooperatively driven.
【0226】ロボット装置1の機体上での全身運動は、
足部運動、ZMP(Zero Moment Point)軌道、体幹運
動、上肢運動、腰部高さなどを設定するとともに、これ
らの設定内容にしたがった動作を指示するコマンドを各
副制御部20,21,22R/L,23R/Lに転送す
る。そして、各々の副制御部20,21,・・・等で
は、主制御部11からの受信コマンドを解釈して、各ア
クチュエータA2,A3・・・等に対して駆動制御信号
を出力する。ここでいう「ZMP」とは、歩行中の床反
力によるモーメントがゼロとなる床面上の点のことであ
り、また、「ZMP軌道」とは、例えばロボット装置1
の歩行動作期間中にZMPが動く軌跡を意味する。な
お、ZMPの概念並びにZMPを歩行ロボットの安定度
判別規範に適用する点については、Miomir Vukobratovi
c著“LEGGED LOCOMOTION ROBOTS”(加藤一郎外著『歩
行ロボットと人工の足』(日刊工業新聞社))に記載さ
れている。The whole body motion of the robot apparatus 1 on the body is
Foot control, ZMP (Zero Moment Point) trajectory, trunk movement, upper limb movement, waist height, etc. are set, and commands for instructing movements according to these setting contents are issued to the sub-control units 20, 21, 22R. / L, 23R / L. The sub-control units 20, 21, ... Interpret the received commands from the main control unit 11 and output drive control signals to the actuators A 2 , A 3 ,. . The “ZMP” mentioned here is a point on the floor surface where the moment due to the floor reaction force during walking becomes zero, and the “ZMP trajectory” is, for example, the robot device 1
Means a locus of movement of the ZMP during the walking motion period. Regarding the concept of ZMP and the application of ZMP to the stability criterion of walking robots, see Miomir Vukobratovi.
c "LEGGED LOCOMOTION ROBOTS" (Ichiro Kato, "Walking Robot and Artificial Feet" (Nikkan Kogyo Shimbun)).
【0227】以上のように、ロボット装置1は、各々の
副制御部20,21,・・・等が、主制御部11からの
受信コマンドを解釈して、各アクチュエータA2,A3
・・・に対して駆動制御信号を出力し、各ユニットの駆
動を制御している。これにより、ロボット装置1は、目
標の姿勢に安定して遷移し、安定した姿勢で歩行でき
る。As described above, in the robot apparatus 1, each of the sub-control units 20, 21, ... Interprets the command received from the main control unit 11 and each actuator A 2 , A 3
A drive control signal is output to ... to control the drive of each unit. As a result, the robot apparatus 1 makes a stable transition to the target posture and can walk in a stable posture.
【0228】また、ロボット装置1における制御ユニッ
ト10では、上述したような姿勢制御のほかに、加速度
センサ、タッチセンサ、接地確認センサ等の各種セン
サ、及びCCDカメラからの画像情報、マイクからの音
声情報等を統括して処理している。制御ユニット10で
は、図示しないが加速度センサ、ジャイロ・センサ、タ
ッチセンサ、距離センサ、マイク、スピーカなどの各種
センサ、各アクチュエータ、CCDカメラ及びバッテリ
が各々対応するハブを介して主制御部11と接続されて
いる。Further, in the control unit 10 of the robot apparatus 1, in addition to the posture control as described above, various sensors such as an acceleration sensor, a touch sensor, a ground contact confirmation sensor, image information from a CCD camera, and sound from a microphone. Information is handled in a centralized manner. In the control unit 10, although not shown, various sensors such as an acceleration sensor, a gyro sensor, a touch sensor, a distance sensor, a microphone, a speaker, actuators, CCD cameras, and batteries are connected to the main control unit 11 via corresponding hubs. Has been done.
【0229】主制御部11は、上述の各センサから供給
されるセンサデータや画像データ及び音声データを順次
取り込み、これらをそれぞれ内部インターフェイスを介
してDRAM内の所定位置に順次格納する。また、主制
御部11は、バッテリから供給されるバッテリ残量を表
すバッテリ残量データを順次取り込み、これをDRAM
内の所定位置に格納する。DRAMに格納された各セン
サデータ、画像データ、音声データ及びバッテリ残量デ
ータは、主制御部11がこのロボット装置1の動作制御
を行う際に利用される。The main controller 11 sequentially takes in sensor data, image data, and audio data supplied from the above-mentioned sensors, and sequentially stores them in a predetermined position in the DRAM through the internal interface. Further, the main control unit 11 sequentially takes in the battery remaining amount data representing the battery remaining amount supplied from the battery, and stores this in the DRAM.
It is stored in a predetermined position inside. Each sensor data, image data, voice data, and battery remaining amount data stored in the DRAM are used when the main control unit 11 controls the operation of the robot apparatus 1.
【0230】主制御部11は、ロボット装置1の電源が
投入された初期時、制御プログラムを読み出し、これを
DRAMに格納する。また、主制御部11は、上述のよ
うに主制御部11よりDRAMに順次格納される各セン
サデータ、画像データ、音声データ及びバッテリ残量デ
ータに基づいて自己及び周囲の状況や、使用者からの指
示及び働きかけの有無などを判断する。The main controller 11 reads out the control program and stores it in the DRAM at the initial stage when the power of the robot apparatus 1 is turned on. In addition, the main control unit 11 uses the sensor data, the image data, the audio data, and the battery remaining amount data that are sequentially stored in the DRAM from the main control unit 11 as described above, based on the self and surrounding conditions and the user. Judging whether or not there are instructions and how to work.
【0231】さらに、主制御部11は、この判断結果及
びDRAMに格納した制御プログラムに基づいて自己の
状況に応じて行動を決定するとともに、当該決定結果に
基づいて必要なアクチュエータを駆動させることにより
ロボット装置1に、いわゆる「身振り」、「手振り」と
いった行動をとらせる。Further, the main control section 11 determines an action according to its own situation based on this determination result and the control program stored in the DRAM, and drives a necessary actuator based on the determination result. The robot apparatus 1 is caused to take actions such as so-called “gesture” and “hand gesture”.
【0232】このようにしてロボット装置1は、制御プ
ログラムに基づいて自己及び周囲の状況を判断し、使用
者からの指示及び働きかけに応じて自律的に行動でき
る。In this way, the robot apparatus 1 can judge its own and surroundings based on the control program and can act autonomously in accordance with instructions and actions from the user.
【0233】ところで、このロボット装置1は、内部状
態に応じて自律的に行動することができる。そこで、ロ
ボット装置1における制御プログラムのソフトウェア構
成例について、図29乃至図34を用いて説明する。By the way, the robot apparatus 1 can act autonomously according to the internal state. Therefore, a software configuration example of the control program in the robot apparatus 1 will be described with reference to FIGS. 29 to 34.
【0234】図29において、デバイス・ドライバ・レ
イヤ40は、制御プログラムの最下位層に位置し、複数
のデバイス・ドライバからなるデバイス・ドライバ・セ
ット41から構成されている。この場合、各デバイス・
ドライバは、CCDカメラやタイマ等の通常のコンピュ
ータで用いられるハードウェアに直接アクセスすること
を許されたオブジェクトであり、対応するハードウェア
からの割り込みを受けて処理を行う。In FIG. 29, the device driver layer 40 is located at the lowest layer of the control program and is composed of a device driver set 41 consisting of a plurality of device drivers. In this case, each device
The driver is an object that is allowed to directly access hardware used in a normal computer such as a CCD camera and a timer, and receives an interrupt from the corresponding hardware to perform processing.
【0235】また、ロボティック・サーバ・オブジェク
ト42は、デバイス・ドライバ・レイヤ40の最下位層
に位置し、例えば上述の各種センサやアクチュエータ2
81〜28n等のハードウェアにアクセスするためのイ
ンターフェイスを提供するソフトウェア群でなるバーチ
ャル・ロボット43と、電源の切換えなどを管理するソ
フトウェア群でなるパワーマネージャ44と、他の種々
のデバイス・ドライバを管理するソフトウェア群でなる
デバイス・ドライバ・マネージャ45と、ロボット装置
1の機構を管理するソフトウェア群でなるデザインド・
ロボット46とから構成されている。The robotic server object 42 is located in the lowest layer of the device driver layer 40, and is, for example, the above-mentioned various sensors and actuators 2.
The virtual robot 43, which is a software group that provides an interface for accessing hardware such as 8 1 to 28 n , the power manager 44 that is a software group that manages power supply switching, and other various devices. A device driver manager 45 that is a software group that manages a driver and a designed driver that is a software group that manages the mechanism of the robot apparatus 1.
It is composed of a robot 46.
【0236】マネージャ・オブジェクト47は、オブジ
ェクト・マネージャ48及びサービス・マネージャ49
から構成されている。オブジェクト・マネージャ48
は、ロボティック・サーバ・オブジェクト42、ミドル
・ウェア・レイヤ50、及びアプリケーション・レイヤ
51に含まれる各ソフトウェア群の起動や終了を管理す
るソフトウェア群であり、サービス・マネージャ49
は、メモリカードに格納されたコネクションファイルに
記述されている各オブジェクト間の接続情報に基づいて
各オブジェクトの接続を管理するソフトウェア群であ
る。The manager object 47 includes an object manager 48 and a service manager 49.
It consists of Object manager 48
Is a software group that manages activation and termination of each software group included in the robotic server object 42, the middleware layer 50, and the application layer 51, and the service manager 49.
Is a software group that manages the connection of each object based on the connection information between each object described in the connection file stored in the memory card.
【0237】ミドル・ウェア・レイヤ50は、ロボティ
ック・サーバ・オブジェクト42の上位層に位置し、画
像処理や音声処理などのこのロボット装置1の基本的な
機能を提供するソフトウェア群から構成されている。ま
た、アプリケーション・レイヤ51は、ミドル・ウェア
・レイヤ50の上位層に位置し、当該ミドル・ウェア・
レイヤ50を構成する各ソフトウェア群によって処理さ
れた処理結果に基づいてロボット装置1の行動を決定す
るためのソフトウェア群から構成されている。The middle wear layer 50 is located in the upper layer of the robotic server object 42 and is composed of a software group that provides basic functions of the robot apparatus 1 such as image processing and voice processing. There is. Further, the application layer 51 is located above the middleware layer 50, and the middleware layer 50
It is composed of a software group for determining the action of the robot apparatus 1 based on the processing result processed by each software group forming the layer 50.
【0238】なお、ミドル・ウェア・レイヤ50及びア
プリケーション・レイヤ51の具体なソフトウェア構成
をそれぞれ図30に示す。FIG. 30 shows the specific software configurations of the middleware layer 50 and the application layer 51, respectively.
【0239】ミドル・ウェア・レイヤ50は、図30に
示すように、騒音検出用、温度検出用、明るさ検出用、
音階認識用、距離検出用、姿勢検出用、タッチセンサ
用、動き検出用及び色認識用の各信号処理モジュール6
0〜68並びに入力セマンティクスコンバータモジュー
ル69などを有する認識系70と、出力セマンティクス
コンバータモジュール78並びに姿勢管理用、トラッキ
ング用、モーション再生用、歩行用、転倒復帰用、LE
D点灯用及び音再生用の各信号処理モジュール71〜7
7などを有する出力系79とから構成されている。The middleware layer 50, as shown in FIG. 30, is for noise detection, temperature detection, brightness detection,
Each signal processing module 6 for scale recognition, distance detection, posture detection, touch sensor, motion detection, and color recognition
A recognition system 70 having 0 to 68 and an input semantics converter module 69, an output semantics converter module 78, and posture management, tracking, motion reproduction, walking, fall recovery, LE
Signal processing modules 71 to 7 for D lighting and sound reproduction
And an output system 79 having 7 or the like.
【0240】認識系70の各信号処理モジュール60〜
68は、ロボティック・サーバ・オブジェクト42のバ
ーチャル・ロボット43によりDRAMから読み出され
る各センサデータや画像データ及び音声データのうちの
対応するデータを取り込み、当該データに基づいて所定
の処理を施して、処理結果を入力セマンティクスコンバ
ータモジュール69に与える。ここで、例えば、バーチ
ャル・ロボット43は、所定の通信規約によって、信号
の授受或いは変換をする部分として構成されている。[0240] Each signal processing module 60 of the recognition system 70-
68 captures corresponding data of each sensor data, image data, and audio data read from the DRAM by the virtual robot 43 of the robotic server object 42, performs a predetermined process based on the data, The processing result is given to the input semantics converter module 69. Here, for example, the virtual robot 43 is configured as a portion that exchanges or converts a signal according to a predetermined communication protocol.
【0241】入力セマンティクスコンバータモジュール
69は、これら各信号処理モジュール60〜68から与
えられる処理結果に基づいて、「うるさい」、「暑
い」、「明るい」、「ボールを検出した」、「転倒を検
出した」、「撫でられた」、「叩かれた」、「ドミソの
音階が聞こえた」、「動く物体を検出した」又は「障害
物を検出した」などの自己及び周囲の状況や、使用者か
らの指令及び働きかけを認識し、認識結果をアプリケー
ション・レイヤ41に出力する。The input semantics converter module 69 detects "noisy", "hot", "bright", "ball detected", "fall" based on the processing results given from the respective signal processing modules 60 to 68. The user and surroundings, such as "Yes", "Stabbed", "Struck", "I heard Domiso scale", "A moving object was detected", or "An obstacle was detected", and the user. It recognizes the command and the action from, and outputs the recognition result to the application layer 41.
【0242】アプリケーション・レイヤ51は、図31
に示すように、行動モデルライブラリ80、行動切換モ
ジュール81、学習モジュール82、感情モデル83及
び本能モデル84の5つのモジュールから構成されてい
る。The application layer 51 is shown in FIG.
As shown in FIG. 5, the action model library 80, the action switching module 81, the learning module 82, the emotion model 83, and the instinct model 84 are composed of five modules.
【0243】行動モデルライブラリ80には、図32に
示すように、「バッテリ残量が少なくなった場合」、
「転倒復帰する」、「障害物を回避する場合」、「感情
を表現する場合」、「ボールを検出した場合」などの予
め選択されたいくつかの条件項目にそれぞれ対応させ
て、それぞれ独立した行動モデルが設けられている。In the behavior model library 80, as shown in FIG. 32, "when the battery level is low",
Independently corresponding to some preselected condition items such as "returning from a fall", "avoiding obstacles", "expressing emotions", "detecting a ball", etc. A behavior model is provided.
【0244】そして、これら行動モデルは、それぞれ入
力セマンティクスコンバータモジュール69から認識結
果が与えられたときや、最後の認識結果が与えられてか
ら一定時間が経過したときなどに、必要に応じて後述の
ように感情モデル83に保持されている対応する情動の
パラメータ値や、本能モデル84に保持されている対応
する欲求のパラメータ値を参照しながら続く行動をそれ
ぞれ決定し、決定結果を行動切換モジュール81に出力
する。Each of these behavior models will be described later as necessary when a recognition result is given from the input semantics converter module 69, or when a fixed time has passed since the last recognition result was given. As described above, each subsequent action is determined with reference to the corresponding emotional parameter value held in the emotion model 83 and the corresponding desire parameter value held in the instinct model 84, and the decision result is determined by the action switching module 81. Output to.
【0245】なお、この実施の形態の場合、各行動モデ
ルは、次の行動を決定する手法として、図33に示すよ
うな1つのノード(状態)NODE0〜NODEnから
他のどのノードNODE0〜NODEnに遷移するかを
各ノードNODE0〜NODEnに間を接続するアーク
ARC1〜ARCn1に対してそれぞれ設定された遷移
確率P1〜Pnに基づいて確率的に決定する有限確率オ
ートマトンと呼ばれるアルゴリズムを用いる。[0245] In the case of this embodiment, each behavior model, as a method to determine the next action, one node (state) as shown in FIG. 33 NODE 0 ~NODE n which the other nodes NODE 0 ˜NODE n , a finite probability that determines probabilistically based on the transition probabilities P 1 to P n respectively set for the arcs ARC 1 to ARC n1 connecting the nodes NODE 0 to NODE n. An algorithm called an automaton is used.
【0246】具体的に、各行動モデルは、それぞれ自己
の行動モデルを形成するノードNODE0〜NODEn
にそれぞれ対応させて、これらノードNODE0〜NO
DE n毎に図34に示すような状態遷移表90を有して
いる。Specifically, each behavior model has its own
NODE that forms the behavior model of the child0~ NODEn
To correspond to each of these nodes NODE0~ NO
DE nEach has a state transition table 90 as shown in FIG.
There is.
【0247】この状態遷移表90では、そのノードNO
DE0〜NODEnにおいて遷移条件とする入力イベン
ト(認識結果)が「入力イベント名」の列に優先順に列
記され、その遷移条件についてのさらなる条件が「デー
タ名」及び「データ範囲」の列における対応する行に記
述されている。In this state transition table 90, the node NO.
Input events (recognition results) that are transition conditions in DE 0 to NODE n are listed in order of priority in the column of “input event name”, and further conditions regarding the transition conditions are listed in the columns of “data name” and “data range”. It is described in the corresponding line.
【0248】従って、図34の状態遷移表90で表され
るノードNODE100では、「ボールを検出(BAL
L)」という認識結果が与えられた場合に、当該認識結
果とともに与えられるそのボールの「大きさ(SIZE)」
が「0から1000」の範囲であることや、「障害物を検出
(OBSTACLE)」という認識結果が与えられた場合に、当
該認識結果とともに与えられるその障害物までの「距離
(DISTANCE)」が「0から100」の範囲であることが他の
ノードに遷移するための条件となっている。Therefore, in the node NODE 100 shown in the state transition table 90 of FIG. 34, "ball is detected (BAL
L) ”given the recognition result, the“ SIZE ”of the ball given with the recognition result.
Is in the range of 0 to 1000, and if the recognition result of "obstacle detection (OBSTACLE)" is given, the "distance (DISTANCE)" to the obstacle given with the recognition result is The condition for transitioning to another node is that it is in the range of "0 to 100".
【0249】また、このノードNODE100では、認
識結果の入力がない場合においても、行動モデルが周期
的に参照する感情モデル83及び本能モデル84にそれ
ぞれ保持された各情動及び各欲求のパラメータ値のう
ち、感情モデル83に保持された「喜び(Joy)」、
「驚き(Surprise)」又は「悲しみ(Sadness)」の何
れかのパラメータ値が「50から100」の範囲であるとき
には他のノードに遷移することができるようになってい
る。Further, in this node NODE 100 , even when there is no recognition result input, the parameter values of the emotions and desires held in the emotion model 83 and the instinct model 84 which the behavior model periodically refers to are stored. Among them, "Joy" held by emotion model 83,
When the parameter value of either "Surprise" or "Sadness" is in the range of "50 to 100", it is possible to transit to another node.
【0250】また、状態遷移表90では、「他のノード
ヘの遷移確率」の欄における「遷移先ノード」の行にそ
のノードNODE0〜NODEnから遷移できるノード
名が列記されているとともに、「入力イベント名」、
「データ名」及び「データの範囲」の列に記述された全
ての条件が揃ったときに遷移できる他の各ノードNOD
E0〜NODEnへの遷移確率が「他のノードヘの遷移
確率」の欄内の対応する箇所にそれぞれ記述され、その
ノードNODE0〜NODEnに遷移する際に出力すべ
き行動が「他のノードヘの遷移確率」の欄における「出
力行動」の行に記述されている。なお、「他のノードヘ
の遷移確率」の欄における各行の確率の和は100
[%]となっている。Further, in the state transition table 90, the node names that can transit from the nodes NODE 0 to NODE n are listed in the row of “transition destination node” in the column of “probability of transition to another node”, and “ Input event name ",
Each other node NOD that can transit when all the conditions described in the columns of "data name" and "data range" are met
The transition probabilities from E 0 to NODE n are respectively described in the corresponding locations in the “transition probabilities to other nodes” section, and the action to be output when transitioning to the nodes NODE 0 to NODE n is “other It is described in the row of “output action” in the column of “transition probability to node”. In addition, the sum of the probabilities of each row in the column of "probability of transition to other node" is 100.
It is [%].
【0251】従って、図34の状態遷移表90で表され
るノードNODE100では、例えば「ボールを検出
(BALL)」し、そのボールの「SIZE(大き
さ)」が「0から1000」の範囲であるという認識結果が
与えられた場合には、「30[%]」の確率で「ノードN
ODE120(node 120)」に遷移でき、そのとき「A
CTION1」の行動が出力されることとなる。Therefore, in the node NODE 100 represented by the state transition table 90 in FIG. 34, for example, "ball is detected (BALL)" and the "SIZE" of the ball is in the range of "0 to 1000". If the recognition result that is, is given, there is a probability of "30 [%]"
ODE 120 (node 120) ", at that time" A
The action of “CATION 1” will be output.
【0252】各行動モデルは、それぞれこのような状態
遷移表90として記述されたノードNODE0〜 NO
DEnが幾つも繋がるようにして構成されており、入力
セマンティクスコンバータモジュール69から認識結果
が与えられたときなどに、対応するノードNODE0〜
NODEnの状態遷移表を利用して確率的に次の行動を
決定し、決定結果を行動切換モジュール81に出力する
ようになされている。Each behavior model has nodes NODE 0 to NO described as such a state transition table 90.
DE n are configured to be connected to each other, and when a recognition result is given from the input semantics converter module 69, the corresponding nodes NODE 0 to
The next action is stochastically determined using the state transition table of NODE n , and the determination result is output to the action switching module 81.
【0253】図31に示す行動切換モジュール81は、
行動モデルライブラリ80の各行動モデルからそれぞれ
出力される行動のうち、予め定められた優先順位の高い
行動モデルから出力された行動を選択し、当該行動を実
行すべき旨のコマンド(以下、行動コマンドという。)
をミドル・ウェア・レイヤ50の出力セマンティクスコ
ンバータモジュール78に送出する。なお、この実施の
形態においては、図32において下側に表記された行動
モデルほど優先順位が高く設定されている。The action switching module 81 shown in FIG.
Among the actions output from the action models of the action model library 80, the action output from the action model having a predetermined high priority is selected, and a command to execute the action (hereinafter, action command That.)
To the output semantics converter module 78 of the middleware layer 50. Note that in this embodiment, the lower the action model shown in FIG. 32, the higher the priority is set.
【0254】また、行動切換モジュール81は、行動完
了後に出力セマンティクスコンバータモジュール78か
ら与えられる行動完了情報に基づいて、その行動が完了
したことを学習モジュール82、感情モデル83及び本
能モデル84に通知する。Further, the action switching module 81 notifies the learning module 82, the emotion model 83, and the instinct model 84 that the action is completed based on the action completion information given from the output semantics converter module 78 after the action is completed. .
【0255】一方、学習モジュール82は、入力セマン
ティクスコンバータモジュール69から与えられる認識
結果のうち、「叩かれた」や「撫でられた」など、使用
者からの働きかけとして受けた教示の認識結果を入力す
る。On the other hand, the learning module 82 inputs the recognition result of the teaching received as an action from the user such as “struck” or “stroked” among the recognition results given from the input semantics converter module 69. To do.
【0256】そして、学習モジュール82は、この認識
結果及び行動切換えモジュール71からの通知に基づい
て、「叩かれた(叱られた)」ときにはその行動の発現
確率を低下させ、「撫でられた(誉められた)」ときに
はその行動の発現確率を上昇させるように、行動モデル
ライブラリ70における対応する行動モデルの対応する
遷移確率を変更する。Then, based on the recognition result and the notification from the action switching module 71, the learning module 82 lowers the probability of the action being expressed when "struck (scored)" and "stroked ( Praised) ”, the corresponding transition probability of the corresponding behavior model in the behavior model library 70 is changed so as to increase the occurrence probability of that behavior.
【0257】他方、感情モデル83は、「喜び(Jo
y)」、「悲しみ(Sadness)」、「怒り(Anger)」、
「驚き(Surprise)」、「嫌悪(Disgust)」及び「恐
れ(Fear)」の合計6つの情動について、各情動毎にそ
の情動の強さを表すパラメータを保持している。そし
て、感情モデル83は、これら各情動のパラメータ値
を、それぞれ入力セマンティクスコンバータモジュール
69から与えられる「叩かれた」及び「撫でられた」な
どの特定の認識結果や、経過時間及び行動切換モジュー
ル81からの通知などに基づいて周期的に更新する。On the other hand, the emotion model 83 is "joy (Jo
y) ”,“ Sadness ”,“ Anger ”,
With respect to a total of 6 emotions of “Surprise”, “Disgust”, and “Fear”, a parameter indicating the strength of the emotion is held for each emotion. Then, the emotion model 83 gives specific recognition results such as “struck” and “stabbed” given from the input semantics converter module 69 to the parameter values of these emotions, the elapsed time and the action switching module 81. It is updated periodically based on notifications from etc.
【0258】具体的には、感情モデル83は、入力セマ
ンティクスコンバータモジュール69から与えられる認
識結果と、そのときのロボット装置1の行動と、前回更
新してからの経過時間となどに基づいて所定の演算式に
より算出されるそのときのその情動の変動量を△E
[t]、現在のその情動のパラメータ値をE[t]、そ
の情動の感度を表す係数をkeとして、下記数式(3
1)によって次の周期におけるその情動のパラメータ値
E[t+1]を算出し、これを現在のその情動のパラメ
ータ値E[t]と置き換えるようにしてその情動のパラ
メータ値を更新する。また、感情モデル83は、これと
同様にして全ての情動のパラメータ値をにより更新す
る。Specifically, the emotion model 83 is determined based on the recognition result given from the input semantics converter module 69, the action of the robot apparatus 1 at that time, the elapsed time from the last update, and the like. The amount of change in emotion at that time calculated by the arithmetic expression is ΔE
[T], E [t] of the current parameter value of the emotion, the coefficient representing the sensitivity of the emotion as k e, the following equation (3
The parameter value E [t + 1] of the emotion in the next cycle is calculated by 1), and the parameter value of the emotion is updated by replacing this with the current parameter value E [t] of the emotion. Further, the emotion model 83 updates the parameter values of all emotions in the same manner as above.
【0259】[0259]
【数36】 [Equation 36]
【0260】なお、各認識結果や出力セマンティクスコ
ンバータモジュール78からの通知が各情動のパラメー
タ値の変動量△E[t]にどの程度の影響を与えるかは
予め決められており、例えば「叩かれた」といった認識
結果は「怒り」の情動のパラメータ値の変動量△E
[t]に大きな影響を与え、「撫でられた」といった認
識結果は「喜び」の情動のパラメータ値の変動量△E
[t]に大きな影響を与えるようになっている。It is to be noted that it is predetermined how much each recognition result or the notification from the output semantics converter module 78 affects the variation amount ΔE [t] of the parameter value of each emotion. The recognition result such as “ta” is the variation amount ΔE of the parameter value of the emotion of “anger”
[T] has a great influence, and the recognition result such as “struck” is the variation amount ΔE of the parameter value of the emotion of “joy”.
It has a great influence on [t].
【0261】ここで、出力セマンティクスコンバータモ
ジュール78からの通知とは、いわゆる行動のフィード
バック情報(行動完了情報)であり、行動の出現結果の
情報であり、感情モデル83は、このような情報によっ
ても感情を変化させる。これは、例えば、「叫ぶ」とい
った行動により怒りの感情レベルが下がるといったよう
なことである。なお、出力セマンティクスコンバータモ
ジュール78からの通知は、上述した学習モジュール8
2にも入力されており、学習モジュール82は、その通
知に基づいて行動モデルの対応する遷移確率を変更す
る。Here, the notification from the output semantics converter module 78 is so-called action feedback information (action completion information) and information on the appearance result of the action, and the emotion model 83 is also based on such information. Change emotions. This is, for example, that the behavior level of anger is lowered by the action of "screaming". The notification from the output semantics converter module 78 is sent to the learning module 8 described above.
2 is also input, and the learning module 82 changes the corresponding transition probability of the behavior model based on the notification.
【0262】なお、行動結果のフィードバックは、行動
切換モジュール81の出力(感情が付加された行動)に
よりなされるものであってもよい。The feedback of the action result may be performed by the output of the action switching module 81 (action added with emotion).
【0263】一方、本能モデル84は、「運動欲(exer
cise)」、「愛情欲(affection)」、「食欲(appetit
e)」及び「好奇心(curiosity)」の互いに独立した4
つの欲求について、これら欲求毎にその欲求の強さを表
すパラメータを保持している。そして、本能モデル84
は、これらの欲求のパラメータ値を、それぞれ入力セマ
ンティクスコンバータモジュール69から与えられる認
識結果や、経過時間及び行動切換モジュール81からの
通知などに基づいて周期的に更新する。On the other hand, the instinct model 84 is "exercise desire (exer
cise), “affection”, “appetite”
e) ”and“ curiosity ”independent of each other 4
For each desire, a parameter indicating the strength of the desire is held for each of these desires. And the instinct model 84
Updates the parameter values of these desires periodically based on the recognition result provided from the input semantics converter module 69, the elapsed time, the notification from the action switching module 81, and the like.
【0264】具体的には、本能モデル84は、「運動
欲」、「愛情欲」及び「好奇心」については、認識結
果、経過時間及び出力セマンティクスコンバータモジュ
ール78からの通知などに基づいて所定の演算式により
算出されるそのときのその欲求の変動量をΔI[k]、
現在のその欲求のパラメータ値をI[k]、その欲求の
感度を表す係数kiとして、所定周期で下記数式(3
2)を用いて次の周期におけるその欲求のパラメータ値
I[k+1]を算出し、この演算結果を現在のその欲求
のパラメータ値I[k]と置き換えるようにしてその欲
求のパラメータ値を更新する。また、本能モデル84
は、これと同様にして「食欲」を除く各欲求のパラメー
タ値を更新する。Specifically, the instinct model 84 determines a predetermined "movement desire", "love desire", and "curiosity" based on the recognition result, the elapsed time, the notification from the output semantics converter module 78, and the like. The fluctuation amount of the desire at that time calculated by the arithmetic expression is ΔI [k],
Let I [k] be the current parameter value of the desire, and let the coefficient k i representing the sensitivity of the desire be the following formula (3) at a predetermined cycle.
2) is used to calculate the parameter value I [k + 1] of the desire in the next cycle, and the calculation result is replaced with the current parameter value I [k] of the desire to update the parameter value of the desire. . Also, the instinct model 84
Updates the parameter values of each desire except "appetite" in the same manner.
【0265】[0265]
【数37】 [Equation 37]
【0266】なお、認識結果及び出力セマンティクスコ
ンバータモジュール78からの通知などが各欲求のパラ
メータ値の変動量△I[k]にどの程度の影響を与える
かは予め決められており、例えば出力セマンティクスコ
ンバータモジュール78からの通知は、「疲れ」のパラ
メータ値の変動量△I[k]に大きな影響を与えるよう
になっている。The degree of influence of the recognition result and the notification from the output semantics converter module 78 on the variation amount ΔI [k] of the parameter value of each desire is predetermined, and for example, the output semantics converter is used. The notification from the module 78 has a great influence on the fluctuation amount ΔI [k] of the “tiredness” parameter value.
【0267】なお、本実施の形態においては、各情動及
び各欲求(本能)のパラメータ値がそれぞれ0から10
0までの範囲で変動するように規制されており、また係
数k e、kiの値も各情動及び各欲求毎に個別に設定さ
れている。In this embodiment, each affect
And each desire (instinct) parameter value is 0 to 10
It is regulated to fluctuate within the range of 0, and
A few k e, KiThe value of is also set individually for each emotion and each desire.
Has been.
【0268】一方、ミドル・ウェア・レイヤ50の出力
セマンティクスコンバータモジュール78は、図30に
示すように、上述のようにしてアプリケーション・レイ
ヤ51の行動切換モジュール81から与えられる「前
進」、「喜ぶ」、「鳴く」又は「トラッキング(ボール
を追いかける)」といった抽象的な行動コマンドを出力
系79の対応する信号処理モジュール71〜77に与え
る。On the other hand, the output semantics converter module 78 of the middleware layer 50, as shown in FIG. 30, is "forward" and "happy" given from the action switching module 81 of the application layer 51 as described above. , An abstract action command such as “squeal” or “tracking (chasing the ball)” is given to the corresponding signal processing modules 71 to 77 of the output system 79.
【0269】そしてこれら信号処理モジュール71〜7
7は、行動コマンドが与えられると当該行動コマンドに
基づいて、その行動をするために対応するアクチュエー
タに与えるべきサーボ指令値や、スピーカから出力する
音の音声データ及び又はLEDに与える駆動データを生
成し、これらのデータをロボティック・サーバ・オブジ
ェクト42のバーチャル・ロボット43及び信号処理回
路を順次介して対応するアクチュエータ又はスピーカ又
はLEDに順次送出する。Then, these signal processing modules 71 to 7
When an action command is given, 7 generates a servo command value to be given to a corresponding actuator to take the action, sound data of sound output from a speaker, and / or drive data given to the LED, based on the action command. Then, these data are sequentially transmitted to the corresponding actuator or speaker or LED via the virtual robot 43 of the robotic server object 42 and the signal processing circuit.
【0270】このようにしてロボット装置1は、上述し
た制御プログラムに基づいて、自己(内部)及び周囲
(外部)の状況や、使用者からの指示及び働きかけに応
じた自律的な行動ができる。In this way, the robot apparatus 1 can perform an autonomous action according to its own (internal) and surrounding (external) conditions, and instructions and actions from the user, based on the above-mentioned control program.
【0271】このような制御プログラムは、ロボット装
置が読取可能な形式で記録された記録媒体を介して提供
される。制御プログラムを記録する記録媒体としては、
磁気読取方式の記録媒体(例えば、磁気テープ、フレキ
シブルディスク、磁気カード)、光学読取方式の記録媒
体(例えば、CD−ROM、MO、CD−R、DVD)
等が考えられる。記録媒体には、半導体メモリ(いわゆ
るメモリカード(矩形型、正方形型など形状は問わな
い。)、ICカード)等の記憶媒体も含まれる。また、
制御プログラムは、いわゆるインターネット等を介して
提供されてもよい。Such a control program is provided via a recording medium recorded in a format readable by the robot apparatus. As a recording medium for recording the control program,
Recording medium of magnetic reading system (for example, magnetic tape, flexible disk, magnetic card), recording medium of optical reading system (for example, CD-ROM, MO, CD-R, DVD)
Etc. are possible. The recording medium also includes a storage medium such as a semiconductor memory (so-called memory card (rectangular type, square type, or any shape), IC card) or the like. Also,
The control program may be provided via the so-called Internet or the like.
【0272】これらの制御プログラムは、専用の読込ド
ライバ装置、又はパーソナルコンピュータ等を介して再
生され、有線又は無線接続によってロボット装置1に伝
送されて読み込まれる。また、ロボット装置1は、半導
体メモリ、又はICカード等の小型化された記憶媒体の
ドライブ装置を備える場合、これら記憶媒体から制御プ
ログラムを直接読み込むこともできる。These control programs are reproduced via a dedicated read driver device, a personal computer or the like, and transmitted to the robot device 1 by a wired or wireless connection to be read. Further, when the robot device 1 includes a drive device for a miniaturized storage medium such as a semiconductor memory or an IC card, the control program can be directly read from the storage medium.
【0273】本実施の形態においては、頭部ユニットの
CCDカメラ200R,200L及び画像処理回路21
0からなるステレオ距離計測装置から信頼度画像を使用
して求められた正確な補正距離データが情報処理手段に
入力されるため、ロボット装置は、ステレオ距離計測デ
ータを用いた位置認識及び物体認識等、ロボットの後段
の認識精度を高めることができる。In this embodiment, the CCD cameras 200R and 200L of the head unit and the image processing circuit 21 are used.
Since the correct correction distance data obtained by using the reliability image from the stereo distance measuring device consisting of 0 is input to the information processing means, the robot device recognizes the position and the object using the stereo distance measuring data. The recognition accuracy of the latter stage of the robot can be improved.
【0274】また、上記パラメータは、CCDカメラの
パラメータと、ロボット装置のパラメータとを含み、信
頼度画像の信頼度に基づいてカメラパラメータ及びロボ
ットパラメータを制御することで、CCD画像の撮像条
件及び撮像位置等のカメラパラメータを制御するだけで
はなく、ロボット装置の頭部ユニット、左右2つの腕部
ユニット4R/L及び左右2つの脚部ユニット5R/L
等を動作させるロボットパラメータを種々変更すること
により、更に信頼度が高い距離画像を得ることができ、
ロボット装置の性能が向上する。Further, the above parameters include the parameters of the CCD camera and the parameters of the robot apparatus, and by controlling the camera parameters and the robot parameters based on the reliability of the reliability image, the imaging condition and the imaging of the CCD image are obtained. In addition to controlling camera parameters such as position, the robot head unit, left and right two arm units 4R / L and left and right two leg units 5R / L
By changing various robot parameters that operate etc., it is possible to obtain a more reliable range image,
The performance of the robot device is improved.
【0275】[0275]
【発明の効果】以上詳細に説明したように本発明に係る
平面抽出方法は、3次元データ群から3点以上の3次元
データをサンプリングし、上記3次元データによって決
まる1つの平面を示す平面パラメータを複数算出する平
面算出工程と、この平面算出工程から得られた複数の平
面パラメータを投票空間に投票してこの投票結果に基づ
き平面を決定する平面決定工程とを有するため、平面パ
ラメータを投票空間に直接投票することができるため、
ノイズに対してロバストで、精度が高く、従って、サン
プリング数を減らして処理を高速化することができる。As described above in detail, in the plane extraction method according to the present invention, three-dimensional data of three or more points are sampled from a three-dimensional data group, and a plane parameter indicating one plane determined by the three-dimensional data is sampled. Since there is a plane calculating step for calculating a plurality of plane parameters and a plane determining step for voting a plurality of plane parameters obtained from the plane calculating step in a voting space and determining a plane based on the voting result, You can vote directly for
It is robust against noise and highly accurate, and therefore the number of samplings can be reduced to speed up the processing.
【0276】本発明に係るロボット装置は、供給された
入力情報に基づいて動作を行う自律型のロボット装置で
あって、3次元データ群から3点以上の3次元データを
サンプリングし、上記3次元データによって決まる1つ
の平面を示す平面パラメータを複数算出する平面算出手
段と、この平面算出工程から得られた複数の平面パラメ
ータを投票空間に投票してこの投票結果に基づき平面を
決定する平面決定手段とを有するため、高い精度で平面
を抽出することができ、この平面検出結果から障害物等
のロボット装置の環境を認識することができる。The robot device according to the present invention is an autonomous robot device which operates based on the supplied input information. The robot device samples three-dimensional data of three or more points from a three-dimensional data group, and Plane calculating means for calculating a plurality of plane parameters indicating one plane determined by data, and plane determining means for voting a plurality of plane parameters obtained from the plane calculating step in a voting space and determining a plane based on the voting result. With the above, it is possible to extract a plane with high accuracy, and it is possible to recognize the environment of the robot device such as an obstacle from the detection result of the plane.
【図1】本発明の実施の形態におけるロボット装置の概
略を示すブロック図である。FIG. 1 is a block diagram showing an outline of a robot apparatus according to an embodiment of the present invention.
【図2】本発明の実施の形態におけるロボット装置のソ
フトウェアの構成を示す模式図である。FIG. 2 is a schematic diagram showing a software configuration of the robot apparatus according to the embodiment of the present invention.
【図3】本発明の実施の形態における平面抽出方法を示
すフローチャートである。FIG. 3 is a flowchart showing a plane extraction method according to the embodiment of the present invention.
【図4】図3に示すステップS1の工程を説明するフロ
ーチャートである。FIG. 4 is a flowchart illustrating a process of step S1 shown in FIG.
【図5】図3に示すステップS2及びS3の工程を説明
するフローチャートである。5 is a flowchart illustrating steps S2 and S3 shown in FIG. 3. FIG.
【図6】本発明の実施の形態における平面パラメータを
示す模式図である。FIG. 6 is a schematic diagram showing plane parameters in the embodiment of the present invention.
【図7】3次元パラメータ投票空間を示す模式図であ
る。FIG. 7 is a schematic diagram showing a three-dimensional parameter voting space.
【図8】本発明の実施の形態における3次元パラメータ
投票空間を示す模式図である。FIG. 8 is a schematic diagram showing a three-dimensional parameter voting space according to the embodiment of the present invention.
【図9】図3に示すステップS4の工程を説明するフロ
ーチャートである。9 is a flowchart illustrating a process of step S4 shown in FIG.
【図10】同じく、図3に示すステップS4の工程を示
すフローチャートである。10 is a flow chart showing a process of step S4 shown in FIG.
【図11】図9に示すステップS42及びS43の工程
を示すフローチャートである。11 is a flowchart showing steps of steps S42 and S43 shown in FIG.
【図12】本発明の実施の形態におけるロボット装置の
ソフトウェアの動作を示すフローチャートである。FIG. 12 is a flowchart showing an operation of software of the robot apparatus according to the embodiment of the present invention.
【図13】同ソフトウェアに入力されるデータの流れを
示す模式図である。FIG. 13 is a schematic diagram showing the flow of data input to the software.
【図14】平面抽出部PLEXに入力される視差画像の
生成を説明するための図である。[Fig. 14] Fig. 14 is a diagram for describing generation of a parallax image input to the plane extraction unit PLEX.
【図15】平面抽出部PLEXが障害物を認識する処理
手順を示すフローチャートである。FIG. 15 is a flowchart showing a processing procedure in which the plane extraction unit PLEX recognizes an obstacle.
【図16】平面検出部PLEXが検出する平面パラメー
タを示す図である。FIG. 16 is a diagram showing plane parameters detected by a plane detector PLEX.
【図17】カメラ座標系から足底接地平面座標系への変
換処理を説明するための図である。FIG. 17 is a diagram for explaining a conversion process from a camera coordinate system to a plantar ground contact plane coordinate system.
【図18】平面抽出部PLEXにて抽出された平面上の
点を示す図である。FIG. 18 is a diagram showing points on a plane extracted by a plane extraction unit PLEX.
【図19】ロボットビューから床面を抽出し、更に座標
変換して2次元(床平面)乗に障害物を表現したことを
示す図である。FIG. 19 is a diagram showing that a floor surface is extracted from the robot view, coordinates are further converted, and an obstacle is expressed in a two-dimensional (floor plane) square.
【図20】ランドマークセンサCLSにおけるカラーラ
ンドマークを示す模式図である。FIG. 20 is a schematic diagram showing color landmarks in a landmark sensor CLS.
【図21】ランドマークセンサCLSの構成を模式的に
示すブロック図である。FIG. 21 is a block diagram schematically showing the configuration of a landmark sensor CLS.
【図22】マルコフ・ローカリゼーション部により求め
られた各グリッド上での自己位置確率密度分布を示す模
式図である。FIG. 22 is a schematic diagram showing a self-position probability density distribution on each grid, which is obtained by the Markov localization unit.
【図23】ランドマークセンサCLS340の動作を示
すフローチャートである。FIG. 23 is a flowchart showing the operation of the landmark sensor CLS340.
【図24】障害物情報により生成された障害物地図上
に、現在位置から目的位置までの経路を示す模式図であ
る。FIG. 24 is a schematic diagram showing a route from a current position to a destination position on an obstacle map generated by obstacle information.
【図25】経路計画アルゴリズムを示すフローチャート
である。FIG. 25 is a flowchart showing a route planning algorithm.
【図26】本発明の実施の形態におけるロボット装置の
外観構成を示す斜視図である。FIG. 26 is a perspective view showing an external configuration of a robot device according to an embodiment of the present invention.
【図27】同ロボット装置の自由度構成モデルを模式的
に示す図である。FIG. 27 is a diagram schematically showing a degree-of-freedom configuration model of the robot apparatus.
【図28】同ロボット装置の回路構成を示すブロック図
である。FIG. 28 is a block diagram showing a circuit configuration of the robot apparatus.
【図29】同ロボット装置のソフトウェア構成を示すブ
ロック図である。FIG. 29 is a block diagram showing a software configuration of the robot apparatus.
【図30】同ロボット装置のソフトウェア構成における
ミドル・ウェア・レイヤの構成を示すブロック図であ
る。FIG. 30 is a block diagram showing a configuration of a middle wear layer in the software configuration of the robot apparatus.
【図31】同ロボット装置のソフトウェア構成における
アプリケーション・レイヤの構成を示すブロック図であ
る。FIG. 31 is a block diagram showing a configuration of an application layer in the software configuration of the robot apparatus.
【図32】アプリケーション・レイヤの行動モデルライ
ブラリの構成を示すブロック図である。FIG. 32 is a block diagram showing the configuration of an application layer behavior model library.
【図33】同ロボット装置の行動決定のための情報とな
る有限確率オートマトンを説明する図である。FIG. 33 is a diagram illustrating a finite probability automaton that is information for determining the action of the robot apparatus.
【図34】有限確率オートマトンの各ノードに用意され
た状態遷移表を示す図である。FIG. 34 is a diagram showing a state transition table prepared for each node of the finite probability automaton.
1 ロボット装置、250 頭部ユニット、200R,
200L CCDカメラ、201R 右目画像、201
L 左目画像、202 カラー画像、203視差画像、
210 ステレオ画像処理装置、220 CPU、23
0 アクチュエータ、231 制御信号、240 セン
サ、241 センサデータ、260体幹部、300 ソ
フトウェア、310 キネマティックオドメトリKIN
E310、320 平面抽出部PLEX、330 障害
物グリッド算出部OG、340 ランドマーク位置検出
部CLS、350 絶対座標算出部LZ、360 行動
決定部SBL、400,500,510,600,61
0,7001 robot device, 250 head unit, 200R,
200L CCD camera, 201R right eye image, 201
L left eye image, 202 color image, 203 parallax image,
210 stereo image processing device, 220 CPU, 23
0 actuator, 231 control signal, 240 sensor, 241 sensor data, 260 trunk, 300 software, 310 kinematic odometry KIN
E310, 320 Plane extraction unit PLEX, 330 Obstacle grid calculation unit OG, 340 Landmark position detection unit CLS, 350 Absolute coordinate calculation unit LZ, 360 Action determination unit SBL, 400, 500, 510, 600, 61
0,700
───────────────────────────────────────────────────── フロントページの続き (72)発明者 大橋 武史 東京都品川区北品川6丁目7番35号 ソニ ー株式会社内 (72)発明者 福地 正樹 東京都品川区北品川6丁目7番35号 ソニ ー株式会社内 (72)発明者 大久保 厚志 東京都品川区北品川6丁目7番35号 ソニ ー株式会社内 Fターム(参考) 3C007 AS36 CS08 KS12 KT03 KT11 KT15 MT04 MT08 WA03 WA13 WB21 5B057 AA05 BA02 CA01 CA13 CA16 DA08 DB03 DC02 DC13 5L096 AA02 AA09 BA05 CA05 FA24 ─────────────────────────────────────────────────── ─── Continued front page (72) Inventor Takeshi Ohashi 6-735 Kita-Shinagawa, Shinagawa-ku, Tokyo Soni -Inside the corporation (72) Inventor Masaki Fukuchi 6-735 Kita-Shinagawa, Shinagawa-ku, Tokyo Soni -Inside the corporation (72) Inventor Atsushi Okubo 6-735 Kita-Shinagawa, Shinagawa-ku, Tokyo Soni -Inside the corporation F-term (reference) 3C007 AS36 CS08 KS12 KT03 KT11 KT15 MT04 MT08 WA03 WA13 WB21 5B057 AA05 BA02 CA01 CA13 CA16 DA08 DB03 DC02 DC13 5L096 AA02 AA09 BA05 CA05 FA24
Claims (28)
ータをサンプリングし、上記3次元データによって決ま
る1つの平面を示す平面パラメータを複数算出する平面
算出工程と、 この平面算出工程から得られた複数の平面パラメータを
投票空間に投票してこの投票結果に基づき平面を決定す
る平面決定工程とを有することを特徴とする平面抽出方
法。1. A plane calculation step of sampling three-dimensional data of three or more points from a three-dimensional data group and calculating a plurality of plane parameters indicating one plane determined by the three-dimensional data; and a plane calculation step obtained from this plane calculation step. And a plane determining step of determining a plane based on the voting result of a plurality of plane parameters in a voting space.
クトルの向きを(θ,φ)、原点からの距離をdとした
とき、上記平面パラメータ(θ,φ,d)を算出する工
程であって、 上記投票空間は、下記数式(1−1)又は数式(1−
2)で表されるものであることを特徴とする請求項1記
載の平面抽出方法。 【数1】 2. The plane calculation step is a step of calculating the plane parameter (θ, φ, d) when the direction of the normal vector of the plane is (θ, φ) and the distance from the origin is d. And the voting space is defined by the following formula (1-1) or formula (1-
2. The plane extraction method according to claim 1, which is represented by 2). [Equation 1]
き3次元データ群に変換されるものであって、各上記3
次元パラメータは上記入力画像に基づき算出される信頼
度パラメータを個別に有し、この信頼度パラメータに基
づいて上記3次元データ群の3次元データを選別するデ
ータ選別工程を有することを特徴とする請求項1記載の
平面抽出方法。3. The three-dimensional data group is converted into a three-dimensional data group based on an input image, and each of the three-dimensional data groups
The dimension parameter individually has a reliability parameter calculated based on the input image, and has a data selection step of selecting three-dimensional data of the three-dimensional data group based on the reliability parameter. Item 2. The plane extraction method according to item 1.
ダムにサンプリングしたものであって、上記ランダムサ
ンプリングを複数回繰り返すことを特徴とする請求項1
記載の平面抽出方法。4. The sampling data is data obtained by randomly sampling three points, and the random sampling is repeated a plurality of times.
The plane extraction method described.
サンプリングされた1つの基準点と、この基準点から所
定の距離内でランダムにサンプリングされた他の2点と
からなることを特徴とする請求項1記載の平面抽出方
法。5. The sampling data comprises one randomly sampled reference point and two other randomly sampled points within a predetermined distance from the reference point. The plane extraction method described.
データ群を有する3次元空間を所定の領域に分割し、こ
の分割された領域に含まれる3次元データとすることを
特徴とする請求項1記載の平面抽出方法。6. The three-dimensional space having the three-dimensional data group is divided into predetermined regions, and the sampling data is three-dimensional data included in the divided regions. Plane extraction method.
データから直接解法によって上記平面パラメータを算出
する工程を有することを特徴とする請求項1記載の平面
抽出方法。7. The plane extracting method according to claim 1, wherein the plane calculating step includes a step of calculating the plane parameters from the three-dimensional data of three points by a direct solution method.
次元データから共分散行列を固有値展開して最小固有値
に対応するベクトルを抽出する主成分分析により上記平
面パラメータを算出する工程を有することを特徴とする
請求項1記載の平面抽出方法。8. The plane calculation step comprises three or more points,
2. The plane extraction method according to claim 1, further comprising a step of calculating the plane parameter by a principal component analysis of expanding a covariance matrix from dimensional data to extract a vector corresponding to a minimum eigenvalue.
次元データから上記平面が原点を通らない任意の平面で
あると仮定し最小二乗法を使用して上記平面パラメータ
を算出する工程を有することを特徴とする請求項1記載
の平面抽出方法。9. The plane calculation step comprises three or more points of three or more.
2. The plane extraction method according to claim 1, further comprising the step of calculating the plane parameter using the least squares method by assuming that the plane is an arbitrary plane that does not pass through the origin from the dimensional data.
返し、上記投票の総数が所定の閾値を超えた場合、又は
上記投票数に基づいて決定される投票値が最も高い位置
における投票値の合計が全ての投票値の合計である総投
票値の所定の割合に達した場合に投票をうち切る工程を
有することを特徴とする請求項1記載の平面抽出方法。10. The plane determining step repeats the voting, and when the total number of votes exceeds a predetermined threshold value, or the sum of voting values at a position where the voting value determined based on the number of votes is the highest. 2. The plane extraction method according to claim 1, further comprising the step of stopping voting when a predetermined percentage of the total voting value, which is the sum of all voting values, is reached.
タの信頼度及び/又は平面算出方法により異なる重みを
定めて投票する重付投票工程を有することを特徴とする
請求項1記載の平面抽出方法。11. The plane extracting step according to claim 1, wherein the plane determining step includes a weighting voting step of voting by setting different weights according to the reliability of the three-dimensional data and / or the plane calculating method. Method.
投票のピーク近傍における投票数による重み付き平均を
行う重付平均工程を有することを特徴とする請求項1記
載の平面抽出方法。12. The plane extracting method according to claim 1, wherein the plane determining step includes a weighted averaging step of performing a weighted average according to the number of votes in the vicinity of a peak of votes in the voting space.
面に含まれる3次元データが2次元となる座標変換行列
を求め、上記3次元データを該座標変換行列により写像
して出力する写像工程を有する請求項1記載の平面抽出
方法。13. A mapping step of obtaining a coordinate transformation matrix in which three-dimensional data included in the plane extracted by the plane decision step becomes two-dimensional, and mapping the three-dimensional data by the coordinate transformation matrix to output. The plane extraction method according to claim 1.
より推定された平面パラメータを初期パラメータとして
イタレーションにより該初期パラメータから最適パラメ
ータを算出する最適パラメータ算出工程を有する請求項
1記載の平面抽出方法。14. The plane extracting method according to claim 1, wherein the plane determining step includes an optimum parameter calculating step of calculating an optimum parameter from the initial parameter by iteration using a plane parameter estimated by the voting result as an initial parameter. .
る投票ピークの鋭さ、上記イタレーションに使用したデ
ータポイント数、及び上記イタレーションにより算出さ
れる誤差残差からなる群から選択された1以上を信頼度
のパラメータとして使用し、決定される平面の信頼度を
算出する信頼度算出工程を有することを特徴とする請求
項14記載の平面抽出方法。15. The plane determining step includes selecting one or more selected from the group consisting of a sharpness of a voting peak in the voting, the number of data points used in the iteration, and an error residual calculated by the iteration. The plane extraction method according to claim 14, further comprising a reliability calculation step of calculating a reliability of a plane which is used as a reliability parameter and is determined.
パラメータを推定する平面算出工程における上記3次元
データより、解像度が高い3次元データを使用してイタ
レーションを行うことを特徴とする請求項15記載の平
面抽出方法。16. The iteration is performed in the parameter calculating step by using three-dimensional data having a higher resolution than the three-dimensional data in the plane calculating step of estimating the initial parameter. Plane extraction method.
データをサンプリングし、上記3次元データによって決
まる1つの平面を示す平面パラメータを複数算出する平
面算出手段と、 この平面算出工程から得られた複数の平面パラメータを
投票空間に投票してこの投票結果に基づき平面を決定す
る平面決定手段とを有することを特徴とする平面抽出装
置。17. A plane calculation means for sampling three-dimensional data of three or more points from a three-dimensional data group and calculating a plurality of plane parameters indicating one plane determined by the three-dimensional data, and a plane calculation step obtained from this plane calculation step. And a plane determining means for determining a plane based on the voting result of a plurality of plane parameters voted in a voting space.
ベクトルの向きを(θ,φ)、原点からの距離をdとし
たとき、上記平面パラメータ(θ,φ,d)を算出する
工程であって、 上記投票空間は、下記数式(1−1)又は数式(1−
2)で表されるものであることを特徴とする請求項17
記載の平面抽出装置。 【数2】 18. The plane calculation means calculates the plane parameter (θ, φ, d) when the direction of the normal vector of the plane is (θ, φ) and the distance from the origin is d. And the voting space is defined by the following formula (1-1) or formula (1-
The method according to claim 17, which is represented by 2).
The plane extraction device described. [Equation 2]
づき3次元データ群に変換されるものであって、各上記
3次元パラメータは上記入力画像に基づき算出される信
頼度パラメータを個別に有し、この信頼度パラメータに
基づいて上記3次元データ群の3次元データを選別する
データ選別手段を有することを特徴とする請求項17記
載の平面抽出装置。19. The three-dimensional data group is converted into a three-dimensional data group based on an input image, and each of the three-dimensional parameters individually has a reliability parameter calculated based on the input image. The plane extraction device according to claim 17, further comprising a data selection unit that selects three-dimensional data of the three-dimensional data group based on the reliability parameter.
タから3点をサンプリングし直接解法によって上記平面
パラメータを算出する第1のパラメータ算出手段、上記
3次元データから3点以上をサンプリングし共分散行列
を固有値展開して最小固有値に対応するベクトルを抽出
する主成分分析により上記平面パラメータを算出する第
2のパラメータ手段、及び上記3次元データから3点以
上をサンプリングし上記平面が原点を通らない任意の平
面であると仮定し最小二乗法を使用して上記平面パラメ
ータを算出する第3のパラメータ算出手段からなる群か
ら選択された1以上の算出手段を有することを特徴とす
る請求項17記載の平面抽出装置。20. The first plane calculation means samples first three points from the three-dimensional data and calculates the second plane parameter by a direct solution method; and the third step calculates three or more points from the three-dimensional data to obtain a covariance. Second parameter means for calculating the plane parameter by principal component analysis for expanding the matrix to extract the vector corresponding to the smallest eigenvalue, and sampling three or more points from the three-dimensional data so that the plane does not pass the origin. 18. The method according to claim 17, further comprising one or more calculation means selected from the group consisting of third parameter calculation means for calculating the plane parameters by using the least squares method assuming that the plane is an arbitrary plane. Plane extraction device.
返し、上記投票の総数が所定の閾値を超えた場合、又は
上記投票数に基づいて決定される投票値が最も高い位置
における投票値の合計が全ての投票値の合計である総投
票値の所定の割合に達した場合に投票をうち切る投票中
止手段を有することを特徴とする請求項17記載の平面
抽出装置。21. The plane determining means repeats the votes, and when the total number of votes exceeds a predetermined threshold value, or the sum of the votes at the position with the highest votes determined based on the votes. 18. The plane extracting apparatus according to claim 17, further comprising a voting stopping unit that stops voting when a predetermined percentage of total voting values, which is the sum of all voting values, is reached.
タの信頼度及び/又は平面算出方法により異なる重みを
定めて投票する重付投票工程を有することを特徴とする
請求項17記載の平面抽出装置。22. The plane extraction according to claim 17, wherein the plane determining means has a weighted voting step of voting by setting different weights according to the reliability of the three-dimensional data and / or the plane calculation method. apparatus.
投票のピーク近傍における投票数による重み付き平均を
行う重付平均手段を有することを特徴とする請求項17
記載の平面抽出装置。23. The plane deciding means comprises a weighted averaging means for performing a weighted averaging according to the number of votes in the vicinity of a voting peak in the voting space.
The plane extraction device described.
より推定された平面パラメータを初期パラメータとして
イタレーションにより該初期パラメータから最適パラメ
ータを算出する最適パラメータ算出手段を有する請求項
17記載の平面抽出装置。24. The plane extracting device according to claim 17, wherein the plane determining means has an optimum parameter calculating means for calculating an optimum parameter from the initial parameter by iteration using the plane parameter estimated by the voting result as an initial parameter. .
る投票ピークの鋭さ、上記イタレーションに使用したデ
ータポイント数、及び上記イタレーションにより算出さ
れる誤差残差からなる群から選択された1以上を信頼度
のパラメータとして使用し、決定される平面の信頼度を
算出する信頼度算出手段を有することを特徴とする請求
項24記載の平面抽出装置。25. The plane determining means selects one or more selected from the group consisting of a sharpness of a voting peak in the voting, the number of data points used in the iteration, and an error residual calculated by the iteration. 25. The plane extraction apparatus according to claim 24, further comprising a reliability calculation means for calculating a reliability of a plane which is used as a reliability parameter and which is determined.
行う自律型のロボット装置であって、 3次元データ群から3点以上の3次元データをサンプリ
ングし、上記3次元データによって決まる1つの平面を
示す平面パラメータを複数算出する平面算出手段と、 この平面算出工程から得られた複数の平面パラメータを
投票空間に投票してこの投票結果に基づき平面を決定す
る平面決定手段とを有することを特徴とするロボット装
置。26. An autonomous robot apparatus that operates based on supplied input information, wherein three-dimensional data of three or more points are sampled from a three-dimensional data group, and one plane determined by the three-dimensional data. And a plane determining means for voting a plurality of plane parameters obtained from the plane calculating step in a voting space and determining a plane based on the voting result. Robot device.
るためのプログラムであって、 3次元データ群から3点以上の3次元データをサンプリ
ングし、上記3次元データによって決まる1つの平面を
示す平面パラメータを複数算出する平面算出工程と、 この平面算出工程から得られた複数の平面パラメータを
投票空間に投票してこの投票結果に基づき平面を決定す
る平面決定工程とを有することを特徴とするプログラ
ム。27. A program for causing a computer to execute a predetermined operation, wherein three-dimensional data of three or more points are sampled from a three-dimensional data group, and a plane parameter indicating one plane determined by the three-dimensional data is set. A program comprising: a plane calculating step of calculating a plurality of planes; and a plane determining step of voting a plurality of plane parameters obtained from the plane calculating step in a voting space and determining a plane based on the voting result.
るためのプログラムを記録したコンピュータ読み取り可
能な記録媒体であって、 3次元データ群から3点以上の3次元データをサンプリ
ングし、上記3次元データによって決まる1つの平面を
示す平面パラメータを複数算出する平面算出工程と、 この平面算出工程から得られた複数の平面パラメータを
投票空間に投票してこの投票結果に基づき平面を決定す
る平面決定工程とを有することを特徴とするプログラム
を記録した記録媒体。28. A computer-readable recording medium recording a program for causing a computer to execute a predetermined operation, wherein three-dimensional data of three or more points is sampled from a three-dimensional data group, and the three-dimensional data is used. A plane calculation step of calculating a plurality of plane parameters indicating one determined plane, and a plane determination step of voting a plurality of plane parameters obtained from the plane calculation step in a voting space and determining a plane based on the voting result. A recording medium having a program recorded therein.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002073387A JP4016180B2 (en) | 2002-03-15 | 2002-03-15 | Planar extraction method, apparatus thereof, program thereof, recording medium thereof, and imaging apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002073387A JP4016180B2 (en) | 2002-03-15 | 2002-03-15 | Planar extraction method, apparatus thereof, program thereof, recording medium thereof, and imaging apparatus |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007196638A Division JP4535096B2 (en) | 2007-07-27 | 2007-07-27 | Planar extraction method, apparatus thereof, program thereof, recording medium thereof, and imaging apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003271975A true JP2003271975A (en) | 2003-09-26 |
JP4016180B2 JP4016180B2 (en) | 2007-12-05 |
Family
ID=29203064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002073387A Expired - Lifetime JP4016180B2 (en) | 2002-03-15 | 2002-03-15 | Planar extraction method, apparatus thereof, program thereof, recording medium thereof, and imaging apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4016180B2 (en) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005326944A (en) * | 2004-05-12 | 2005-11-24 | Hitachi Ltd | Device and method for generating map image by laser measurement |
JP2006031423A (en) * | 2004-07-16 | 2006-02-02 | Sony Corp | Image processing method and image processor |
WO2006090736A1 (en) * | 2005-02-23 | 2006-08-31 | Aisin Seiki Kabushiki Kaisha | Object recognizing device |
JP2006276985A (en) * | 2005-03-28 | 2006-10-12 | Aisin Seiki Co Ltd | Method and device for recognizing object |
JP2007114057A (en) * | 2005-10-20 | 2007-05-10 | Aisin Seiki Co Ltd | Object recognition device |
JP2007114056A (en) * | 2005-10-20 | 2007-05-10 | Aisin Seiki Co Ltd | Object recognition device |
JP2007304801A (en) * | 2006-05-10 | 2007-11-22 | Nec Corp | Solidity authenticating method, solidity authenticating apparatus, and solidity authenticating program |
WO2007138898A1 (en) * | 2006-05-25 | 2007-12-06 | Nec Corporation | Recognizing system, recognizing metho and recognizing program |
JP2008009769A (en) * | 2006-06-29 | 2008-01-17 | Konica Minolta Holdings Inc | Face authentication system and face authentication method |
WO2009028489A1 (en) * | 2007-08-30 | 2009-03-05 | Kabushiki Kaisha Yaskawa Denki | Object detecting method, object detecting device, and robot system |
JP2009186364A (en) * | 2008-02-07 | 2009-08-20 | Nec Corp | Data processing apparatus, pose estimation system, pose estimation method, and program |
JP2012069133A (en) * | 2011-10-24 | 2012-04-05 | Nec Corp | Solidity authenticating method, solidity authenticating apparatus, and solidity authenticating program |
JP2012128744A (en) * | 2010-12-16 | 2012-07-05 | Canon Inc | Object recognition device, object recognition method, learning device, learning method, program and information processing system |
JP2013193545A (en) * | 2012-03-19 | 2013-09-30 | Nippon Soken Inc | Parking support device |
JP2013254474A (en) * | 2012-02-10 | 2013-12-19 | Konan Gakuen | Obstacle detector |
JP2015108621A (en) * | 2013-12-04 | 2015-06-11 | 三菱電機株式会社 | Method for extracting planes from 3d point cloud sensor data |
JP2017090958A (en) * | 2015-11-02 | 2017-05-25 | トヨタ自動車株式会社 | Method for updating environment map |
KR20190002900A (en) * | 2017-06-30 | 2019-01-09 | 현대자동차주식회사 | Walking control system of robot and method controlling the same |
CN112785544A (en) * | 2019-11-04 | 2021-05-11 | 深圳先进技术研究院 | Plane extraction method and system of three-dimensional line segment model and electronic equipment |
JP2021534988A (en) * | 2018-08-28 | 2021-12-16 | ディリジェント ロボティクス,インコーポレイテッド | Systems, equipment, and methods for robot learning and execution of skills |
US11833684B2 (en) | 2017-02-25 | 2023-12-05 | Diligent Robotics, Inc. | Systems, apparatus, and methods for robotic learning and execution of skills |
US11904470B2 (en) | 2021-02-08 | 2024-02-20 | Diligent Robotics, Inc. | Systems, apparatuses, and methods for robotic learning and execution of skills including navigation and manipulation functions |
DE102024111288A1 (en) | 2023-04-24 | 2024-10-24 | Nippon Seiki Co., Ltd. | road surface projection device |
-
2002
- 2002-03-15 JP JP2002073387A patent/JP4016180B2/en not_active Expired - Lifetime
Cited By (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4533659B2 (en) * | 2004-05-12 | 2010-09-01 | 株式会社日立製作所 | Apparatus and method for generating map image by laser measurement |
JP2005326944A (en) * | 2004-05-12 | 2005-11-24 | Hitachi Ltd | Device and method for generating map image by laser measurement |
JP2006031423A (en) * | 2004-07-16 | 2006-02-02 | Sony Corp | Image processing method and image processor |
JP4608978B2 (en) * | 2004-07-16 | 2011-01-12 | ソニー株式会社 | Image processing method and image processing apparatus |
WO2006090736A1 (en) * | 2005-02-23 | 2006-08-31 | Aisin Seiki Kabushiki Kaisha | Object recognizing device |
JP2006276985A (en) * | 2005-03-28 | 2006-10-12 | Aisin Seiki Co Ltd | Method and device for recognizing object |
US8031908B2 (en) | 2005-10-20 | 2011-10-04 | Aisin Seiki Kabushiki Kaisha | Object recognizing apparatus including profile shape determining section |
JP2007114057A (en) * | 2005-10-20 | 2007-05-10 | Aisin Seiki Co Ltd | Object recognition device |
JP4662147B2 (en) * | 2005-10-20 | 2011-03-30 | アイシン精機株式会社 | Object recognition device |
JP2007114056A (en) * | 2005-10-20 | 2007-05-10 | Aisin Seiki Co Ltd | Object recognition device |
JP4618506B2 (en) * | 2005-10-20 | 2011-01-26 | アイシン精機株式会社 | Object recognition device |
JP2007304801A (en) * | 2006-05-10 | 2007-11-22 | Nec Corp | Solidity authenticating method, solidity authenticating apparatus, and solidity authenticating program |
US8208757B2 (en) | 2006-05-25 | 2012-06-26 | Nec Corporation | Recognition system, recognition method, and recognition program |
WO2007138898A1 (en) * | 2006-05-25 | 2007-12-06 | Nec Corporation | Recognizing system, recognizing metho and recognizing program |
JPWO2007138898A1 (en) * | 2006-05-25 | 2009-10-01 | 日本電気株式会社 | Recognition system, recognition method, and recognition program |
JP4577532B2 (en) * | 2006-05-25 | 2010-11-10 | 日本電気株式会社 | Recognition system, recognition method, and recognition program |
JP2008009769A (en) * | 2006-06-29 | 2008-01-17 | Konica Minolta Holdings Inc | Face authentication system and face authentication method |
WO2009028489A1 (en) * | 2007-08-30 | 2009-03-05 | Kabushiki Kaisha Yaskawa Denki | Object detecting method, object detecting device, and robot system |
JP5458885B2 (en) * | 2007-08-30 | 2014-04-02 | 株式会社安川電機 | Object detection method, object detection apparatus, and robot system |
US8401295B2 (en) | 2008-02-07 | 2013-03-19 | Nec Corporation | Pose estimation |
JP2009186364A (en) * | 2008-02-07 | 2009-08-20 | Nec Corp | Data processing apparatus, pose estimation system, pose estimation method, and program |
US8965114B2 (en) | 2010-12-16 | 2015-02-24 | Canon Kabushiki Kaisha | Object recognition apparatus, object recognition method, learning apparatus, learning method, storage medium and information processing system |
JP2012128744A (en) * | 2010-12-16 | 2012-07-05 | Canon Inc | Object recognition device, object recognition method, learning device, learning method, program and information processing system |
JP2012069133A (en) * | 2011-10-24 | 2012-04-05 | Nec Corp | Solidity authenticating method, solidity authenticating apparatus, and solidity authenticating program |
JP2013254474A (en) * | 2012-02-10 | 2013-12-19 | Konan Gakuen | Obstacle detector |
JP2013193545A (en) * | 2012-03-19 | 2013-09-30 | Nippon Soken Inc | Parking support device |
JP2015108621A (en) * | 2013-12-04 | 2015-06-11 | 三菱電機株式会社 | Method for extracting planes from 3d point cloud sensor data |
JP2017090958A (en) * | 2015-11-02 | 2017-05-25 | トヨタ自動車株式会社 | Method for updating environment map |
US11833684B2 (en) | 2017-02-25 | 2023-12-05 | Diligent Robotics, Inc. | Systems, apparatus, and methods for robotic learning and execution of skills |
KR20190002900A (en) * | 2017-06-30 | 2019-01-09 | 현대자동차주식회사 | Walking control system of robot and method controlling the same |
KR102324773B1 (en) * | 2017-06-30 | 2021-11-10 | 현대자동차주식회사 | Walking control system of robot and method controlling the same |
JP2021534988A (en) * | 2018-08-28 | 2021-12-16 | ディリジェント ロボティクス,インコーポレイテッド | Systems, equipment, and methods for robot learning and execution of skills |
CN112785544A (en) * | 2019-11-04 | 2021-05-11 | 深圳先进技术研究院 | Plane extraction method and system of three-dimensional line segment model and electronic equipment |
US11904470B2 (en) | 2021-02-08 | 2024-02-20 | Diligent Robotics, Inc. | Systems, apparatuses, and methods for robotic learning and execution of skills including navigation and manipulation functions |
DE102024111288A1 (en) | 2023-04-24 | 2024-10-24 | Nippon Seiki Co., Ltd. | road surface projection device |
Also Published As
Publication number | Publication date |
---|---|
JP4016180B2 (en) | 2007-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3945279B2 (en) | Obstacle recognition apparatus, obstacle recognition method, obstacle recognition program, and mobile robot apparatus | |
JP4016180B2 (en) | Planar extraction method, apparatus thereof, program thereof, recording medium thereof, and imaging apparatus | |
US11741701B2 (en) | Autonomous task performance based on visual embeddings | |
JP3994950B2 (en) | Environment recognition apparatus and method, path planning apparatus and method, and robot apparatus | |
Lee et al. | Guided uncertainty-aware policy optimization: Combining learning and model-based strategies for sample-efficient policy learning | |
KR100941209B1 (en) | Robot apparatus, face recognition method, and face recognition apparatus | |
JP4535096B2 (en) | Planar extraction method, apparatus thereof, program thereof, recording medium thereof, and imaging apparatus | |
JP2003266345A (en) | Path planning device, path planning method, path planning program, and moving robot device | |
US20040230340A1 (en) | Behavior controlling apparatus, behavior control method, behavior control program and mobile robot apparatus | |
US20060064202A1 (en) | Environment identification device, environment identification method, and robot device | |
JP2003266349A (en) | Position recognition method, device thereof, program thereof, recording medium thereof, and robot device provided with position recognition device | |
JP2004110802A (en) | Device, method for identifying environment, program, recording medium and robot device | |
Hueser et al. | Learning of demonstrated grasping skills by stereoscopic tracking of human head configuration | |
JP4449410B2 (en) | Robot apparatus and object learning method thereof | |
JP2003271958A (en) | Method and processor for processing image, program therefor, recording medium therefor, and robot system of type mounted with image processor | |
Arowolo et al. | Development of a human posture recognition system for surveillance application | |
JP4407244B2 (en) | Robot apparatus and object learning method thereof | |
JP2003346150A (en) | Floor surface recognition device, floor surface recognition method, and robot device | |
Gonzalez | Pose Imitation Constraints for Kinematic Structures | |
Joshi | Antipodal Robotic Grasping using Deep Learning | |
Bahadori et al. | Intelligent systems for search and rescue | |
Petrou et al. | RoboCup Rescue 2015-Robot League Team PANDORA (Greece) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040806 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061128 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070227 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070501 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070529 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070727 |
|
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: 20070821 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070903 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4016180 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100928 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100928 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110928 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110928 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120928 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120928 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130928 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |