JP4844459B2 - Plane detection method and mobile robot - Google Patents

Plane detection method and mobile robot Download PDF

Info

Publication number
JP4844459B2
JP4844459B2 JP2007112284A JP2007112284A JP4844459B2 JP 4844459 B2 JP4844459 B2 JP 4844459B2 JP 2007112284 A JP2007112284 A JP 2007112284A JP 2007112284 A JP2007112284 A JP 2007112284A JP 4844459 B2 JP4844459 B2 JP 4844459B2
Authority
JP
Japan
Prior art keywords
template
mobile robot
plane
dimensional
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007112284A
Other languages
Japanese (ja)
Other versions
JP2008264947A (en
Inventor
豊 高岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2007112284A priority Critical patent/JP4844459B2/en
Publication of JP2008264947A publication Critical patent/JP2008264947A/en
Application granted granted Critical
Publication of JP4844459B2 publication Critical patent/JP4844459B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は平面検出方法、及び移動ロボットに関する。   The present invention relates to a plane detection method and a mobile robot.

自律移動ロボットは、自ら移動経路の環境を認識して、目的地へと移動する。このため、移動ロボットは、環境中に存在する平面を正確かつ高速に検出する必要がある。特に、移動ロボットが歩行ロボットである場合には、平面検出に要する処理時間が高速移動の制約となるため、より短時間で正確に平面を検出することが重要となる。
従来より、環境から平面を検出する数多くの手法が提案されている。多数の計測点(3次元位置データ群)から平面の方程式を表す3つのパラメータ(平面パラメータ)を検出する手法として、ハフ変換法やランダムサンプリング法が良く知られている。ハフ変換を利用する手法として、例えば特許文献1には、3次元位置データ群から3点以上のデータをサンプリングして平面パラメータを算出し、この平面パラメータを投票空間に直接投票することによって平面を検出する技術が開示されている。
また、2点ランダムサンプリング法は、3次元位置データ群から2点のデータの組をランダムにサンプリングして、2点のデータの組からなるベクトルより平面の法線ベクトルを算出し、この法線ベクトルに沿って平面までの距離を探索することによって平面を検出するものである。
特開2003−271975号公報
The autonomous mobile robot recognizes the environment of the movement route and moves to the destination. For this reason, it is necessary for the mobile robot to accurately and quickly detect a plane existing in the environment. In particular, when the mobile robot is a walking robot, the processing time required for plane detection is a restriction on high-speed movement, so it is important to detect the plane accurately in a shorter time.
Conventionally, many methods for detecting a plane from the environment have been proposed. As a method for detecting three parameters (plane parameters) representing a plane equation from a large number of measurement points (three-dimensional position data group), the Hough transform method and the random sampling method are well known. As a technique using the Hough transform, for example, in Patent Document 1, a plane parameter is calculated by sampling three or more points of data from a three-dimensional position data group, and directly voting the plane parameter to a voting space. Techniques for detection are disclosed.
In the two-point random sampling method, a two-point data set is randomly sampled from the three-dimensional position data group, and a plane normal vector is calculated from a vector consisting of the two-point data set. The plane is detected by searching the distance to the plane along the vector.
JP 2003-271975 A

しかしながら、特許文献1記載の技術では、ノイズの多い3次元位置データ群からであっても平面を安定して抽出することができるものの、3次元位置データ群から3次元位置データをランダムにサンプリングするため、平面検出のために多大な処理時間を必要とするという問題点がある。
一方、2点ランダムサンプリング法は、ハフ変換を利用する手法と比較して、正確かつ安定して平面を抽出できるという利点を有する。例えば、環境に階段などの複数の平面が存在する場合には、ハフ変換による手法に比べて、より多くの平面を安定して正確に検出することができる。
しかし、2点ランダムサンプリング法においても特許文献1記載の技術と同様に3次元位置データ群から3次元位置データをランダムにサンプリングするため、平面検出のために多大な処理時間を必要とするという問題点がある。
本発明は、かかる課題を解決するためになされたものであり、平面検出に要する処理時間を短縮することができる平面検出方法、及び移動ロボットを提供することを目的とする。
However, although the technique described in Patent Document 1 can stably extract a plane even from a noisy 3D position data group, the 3D position data is randomly sampled from the 3D position data group. Therefore, there is a problem that a great amount of processing time is required for plane detection.
On the other hand, the two-point random sampling method has an advantage that a plane can be extracted accurately and stably as compared with the method using the Hough transform. For example, when there are a plurality of planes such as stairs in the environment, more planes can be detected stably and accurately than the method using the Hough transform.
However, in the two-point random sampling method, as in the technique described in Patent Document 1, three-dimensional position data is randomly sampled from the three-dimensional position data group, so that a large amount of processing time is required for plane detection. There is a point.
The present invention has been made to solve such a problem, and an object of the present invention is to provide a plane detection method and a mobile robot that can reduce the processing time required for plane detection.

本発明にかかる平面検出方法は、平面を検出する平面検出方法であって、移動ロボットの移動状態に応じて、サンプリング対象領域が異なる複数のテンプレートより任意のテンプレートを選択するステップと、選択されたテンプレートにより定められたサンプリング対象領域において、3次元データ群から2点の3次元データの組をサンプリングし、該2点の3次元データの組に基づいて平面を検出するステップとを有するものである。   The plane detection method according to the present invention is a plane detection method for detecting a plane, wherein an arbitrary template is selected from a plurality of templates having different sampling target areas according to the movement state of the mobile robot, Sampling a set of two-dimensional three-dimensional data from a three-dimensional data group in a sampling target region defined by the template, and detecting a plane based on the two-point three-dimensional data set. .

これにより、移動ロボットの移動状態に応じて、平面検出のために不要となる領域をサンプリングせずに済む。このため、平面検出に要する処理時間を短縮することができる。   Thereby, it is not necessary to sample a region that is not necessary for plane detection according to the moving state of the mobile robot. For this reason, the processing time required for plane detection can be shortened.

また、前記移動ロボットの過去の移動状態における平面情報に基づいて前記テンプレートを選択するようにしてもよい。   Further, the template may be selected based on plane information in the past movement state of the mobile robot.

これにより、過去の平面情報より、移動ロボットが移動し次のタイミングにおいて集中的に平面検出処理を実行したいサンプリング領域を特定することができる。このため、特定されたサンプリング対象領域を含むテンプレートを自律的かつ容易に選択することができる。   Thereby, it is possible to specify a sampling area where the mobile robot moves and the plane detection process is to be executed intensively at the next timing from the past plane information. For this reason, the template containing the specified sampling object area | region can be selected autonomously and easily.

さらにまた、前記サンプリングされた2点の3次元データの組の個数に基づいて前記テンプレートを選択するようにしてもよい。   Furthermore, the template may be selected based on the number of sets of the sampled two-dimensional three-dimensional data.

これにより、テンプレート上においてサンプリングされた2点の3次元データの組の個数に基づいて、測定環境に対するその選択されたテンプレートの適合度合を判断することができる。即ち、環境に応じたより適切なテンプレートを選択させることができる。   Thereby, the degree of suitability of the selected template with respect to the measurement environment can be determined based on the number of sets of three-dimensional data of two points sampled on the template. That is, a more appropriate template can be selected according to the environment.

また、前記テンプレートは、予めサンプリング対象領域が定められ前記移動ロボットに搭載されたものであるようにしてもよい。   In addition, the template may be one in which a sampling target area is determined in advance and mounted on the mobile robot.

これにより、環境に応じて予めサンプリング領域を定めたテンプレートを移動ロボットが保持することにより、速やかにテンプレートを選択することができる。   As a result, the template can be quickly selected by the mobile robot holding the template in which the sampling area is determined in advance according to the environment.

さらにまた、前記2点の3次元データの組は、前記テンプレートにより定められたサンプリング対象領域において、予めランダムにサンプリングされたものであるようにしてもよい。   Furthermore, the set of three-dimensional data of the two points may be randomly sampled in advance in the sampling target region defined by the template.

これにより、2点の3次元データの組をランダムにサンプリングする処理を繰り返さずに済み、より高速に2点の3次元データの組を抽出することができる。   Thereby, it is not necessary to repeat the process of randomly sampling a two-point three-dimensional data set, and a two-point three-dimensional data set can be extracted at a higher speed.

本発明にかかる移動ロボットは、所定の環境内を移動する移動ロボットであって、前記移動ロボットの移動状態に応じて、サンプリング対象領域が異なる複数のテンプレートより任意のテンプレートを選択するテンプレート選択部と、選択されたテンプレートにより定められたサンプリング対象領域において、3次元データ群から2点の3次元データの組をサンプリングし、該2点の3次元データの組に基づいて平面を検出する平面検出部とを備えるものである。   A mobile robot according to the present invention is a mobile robot that moves within a predetermined environment, and a template selection unit that selects an arbitrary template from a plurality of templates having different sampling target areas according to the movement state of the mobile robot; A plane detection unit that samples two sets of three-dimensional data from a three-dimensional data group in a sampling target region defined by the selected template and detects a plane based on the two-point three-dimensional data sets Are provided.

これにより、移動ロボットの移動状態に応じて、平面検出のために不要となる領域をサンプリングせずに済む。このため、平面検出に要する処理時間を短縮することができる。   Thereby, it is not necessary to sample a region that is not necessary for plane detection according to the moving state of the mobile robot. For this reason, the processing time required for plane detection can be shortened.

また、前記テンプレート選択部は、前記移動ロボットの過去の移動状態における平面情報に基づいて前記テンプレートを選択するようにしてもよい。   The template selection unit may select the template based on plane information in the past movement state of the mobile robot.

これにより、過去の平面情報より、移動ロボットが移動し次のタイミングにおいて集中的に平面検出処理を実行したいサンプリング領域を特定することができる。このため、特定されたサンプリング対象領域を含むテンプレートを自律的かつ容易に選択することができる。   Thereby, it is possible to specify a sampling area where the mobile robot moves and the plane detection process is to be executed intensively at the next timing from the past plane information. For this reason, the template containing the specified sampling object area | region can be selected autonomously and easily.

さらにまた、前記テンプレート選択部は、前記サンプリングされた2点の3次元データの組の個数に基づいて前記テンプレートを選択するようにしてもよい。   Furthermore, the template selection unit may select the template based on the number of sets of the sampled two-point three-dimensional data.

これにより、テンプレート上においてサンプリングされた2点の3次元データの組の個数に基づいて、測定環境に対するその選択されたテンプレートの適合度合を判断することができる。即ち、環境に応じたより適切なテンプレートを選択させることができる。   Thereby, the degree of suitability of the selected template with respect to the measurement environment can be determined based on the number of sets of three-dimensional data of two points sampled on the template. That is, a more appropriate template can be selected according to the environment.

また、前記テンプレートは、予めサンプリング対象領域が定められ前記移動ロボットに搭載されたものであるようにしてもよい。   In addition, the template may be one in which a sampling target area is determined in advance and mounted on the mobile robot.

これにより、環境に応じて予めサンプリング領域を定めたテンプレートを移動ロボットが保持することにより、速やかにテンプレートを選択することができる。   As a result, the template can be quickly selected by the mobile robot holding the template in which the sampling area is determined in advance according to the environment.

さらにまた、前記2点の3次元データの組は、前記テンプレートにより定められたサンプリング対象領域において、予めランダムにサンプリングされたものであるようにしてもよい。   Furthermore, the set of three-dimensional data of the two points may be randomly sampled in advance in the sampling target region defined by the template.

これにより、2点の3次元データの組をランダムにサンプリングする処理を繰り返さずに済み、より高速に2点の3次元データの組を抽出することができる。   Thereby, it is not necessary to repeat the process of randomly sampling a two-point three-dimensional data set, and a two-point three-dimensional data set can be extracted at a higher speed.

本発明によれば、平面検出に要する処理時間を短縮することができる平面検出方法、及び移動ロボットを提供することを目的とする。   According to the present invention, it is an object to provide a plane detection method and a mobile robot that can shorten the processing time required for plane detection.

以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。尚、各図面において、同一要素には同一の符号を付しており、説明の明確化のため、必要に応じて重複説明を省略する。   Hereinafter, specific embodiments to which the present invention is applied will be described in detail with reference to the drawings. In addition, in each drawing, the same code | symbol is attached | subjected to the same element, and duplication description is abbreviate | omitted as needed for clarification of description.

発明の実施の形態1.
本実施の形態にかかる移動ロボットは、2つの脚リンクを有する脚式移動ロボットである。さらに、移動ロボットは平面検出装置1を有する。平面検出装置1は、移動ロボットの移動状態に応じて、サンプリング対象領域が異なる複数のテンプレートより任意のテンプレートを選択し、選択されたテンプレートにより定められたサンプリング対象領域において、3次元データ群から2点の3次元データの組をサンプリングし、2点の3次元データの組に基づいて平面を検出する装置である。
移動ロボットは、平面検出装置1によって検出された平面に基づいて移動ロボットが歩行する歩行面の3次元情報を含む環境地図データを決定し、移動ロボットの2つの脚リンクそれぞれの先端に設けられた足平の着地位置を決定する。
さらに、移動ロボットは、決定された足平着地位置を実現するための動作データを生成し、生成された動作データをもとに移動ロボットの関節群をアクチュエータによって駆動することで歩行する。
Embodiment 1 of the Invention
The mobile robot according to the present embodiment is a legged mobile robot having two leg links. Further, the mobile robot has a flat surface detection device 1. The flat surface detection apparatus 1 selects an arbitrary template from a plurality of templates having different sampling target areas according to the moving state of the mobile robot, and in the sampling target area defined by the selected template, 2 from the three-dimensional data group. This is a device for sampling a set of three-dimensional data of points and detecting a plane based on the set of three-dimensional data of two points.
The mobile robot determines environmental map data including three-dimensional information of the walking surface on which the mobile robot walks based on the plane detected by the plane detection device 1, and is provided at the tip of each of the two leg links of the mobile robot. Determine the landing position of the foot.
Further, the mobile robot generates motion data for realizing the determined foot landing position, and walks by driving a joint group of the mobile robot by an actuator based on the generated motion data.

図1を用いて、本発明にかかる移動ロボット100の構成について説明する。図1は、移動ロボット100を側方(移動ロボット100の移動する方向を向いて左方向)から見た様子を概略的に表す概略図であり、移動ロボット100に搭乗者Pが搭乗している様子を表している。図1に示すように、視覚センサとしてのレーザレンジファインダ10が移動ロボット100に取り付けられる。
尚、図1においては、説明の便宜上、移動体1が進行する向き(前後方向)をx軸、移動体1が進行する方向について水平方向に直交する向き(左右方向)をy軸、移動体の移動する平面から鉛直方向に延びる向き(上下方向)をz軸とし、これらの3軸からなる座標系を用いて説明する。すなわち、図1中において、前記x軸は紙面に向かって左右方向、y軸は紙面の奥行方法、z軸は紙面中の上下方向を示す。
The configuration of the mobile robot 100 according to the present invention will be described with reference to FIG. FIG. 1 is a schematic view schematically showing a state in which the mobile robot 100 is viewed from the side (leftward when facing the direction in which the mobile robot 100 moves). A passenger P is on the mobile robot 100. It represents the situation. As shown in FIG. 1, a laser range finder 10 as a visual sensor is attached to a mobile robot 100.
In FIG. 1, for convenience of explanation, the direction in which the moving body 1 travels (front-rear direction) is the x-axis, and the direction in which the moving body 1 travels is orthogonal to the horizontal direction (left-right direction), the y-axis. The direction (vertical direction) extending in the vertical direction from the plane on which the lens moves is defined as the z-axis, and will be described using a coordinate system composed of these three axes. That is, in FIG. 1, the x-axis indicates the left-right direction toward the paper surface, the y-axis indicates the depth method of the paper surface, and the z-axis indicates the vertical direction in the paper surface.

図1に示すように、移動ロボット100は、搭乗者Pが搭乗する載置台(図示せず)を含む上体部101と、上体部101を支持する腰部(図示せず)を介して回動自在に固定される脚部104と、腰部に取り付けられたレーザレンジファインダ10とにより構成される。
脚部104は、右脚102及び左脚103により構成され、右脚102は、右膝関節102c、右足首関節102e、右足平102fを備え、同様に、左脚103は、左膝関節103c、左足首関節103e、左足平103fを備える。
図示しないモータからの駆動力が、同じく図示しないプーリ及びベルトを介して伝達されることで、各関節が所望の角度に駆動され、その結果、右脚102及び左脚103に所望の動きをさせることができる。
As shown in FIG. 1, the mobile robot 100 rotates via a body part 101 including a mounting table (not shown) on which the passenger P is boarded, and a waist part (not shown) that supports the body part 101. It is comprised by the leg part 104 fixed movably, and the laser range finder 10 attached to the waist | hip | lumbar part.
The leg 104 includes a right leg 102 and a left leg 103. The right leg 102 includes a right knee joint 102c, a right ankle joint 102e, and a right foot 102f. Similarly, the left leg 103 includes a left knee joint 103c, A left ankle joint 103e and a left foot 103f are provided.
A driving force from a motor (not shown) is transmitted through a pulley and a belt (not shown), so that each joint is driven to a desired angle. As a result, the right leg 102 and the left leg 103 are caused to perform a desired movement. be able to.

移動ロボット100の上体部101には、腰部(図示せず)を介して移動ロボット100が歩行する環境の距離画像データを検出するレーザレンジファインダ10が設けられている。より具体的には、例えば図1においては、レーザレンジファインダ10を、水平方向から移動ロボット100の足元に向けて傾斜させて設置し、移動ロボット100の足元近傍を含む前方に向けて赤外線などのレーザ光を照射し、その反射光を受光させる。
このようにすると、移動ロボット100の足元近傍の距離画像データについて高い分解能を確保することができ、密度の高い足元近傍の距離画像データを取得することができる。
The upper body 101 of the mobile robot 100 is provided with a laser range finder 10 that detects distance image data of an environment in which the mobile robot 100 walks through a waist (not shown). More specifically, for example, in FIG. 1, the laser range finder 10 is tilted from the horizontal direction toward the feet of the mobile robot 100 and infrared rays or the like are directed toward the front including the vicinity of the feet of the mobile robot 100. Laser light is irradiated and the reflected light is received.
In this way, high resolution can be secured for the distance image data near the feet of the mobile robot 100, and the distance image data near the feet with high density can be acquired.

レーザレンジファインダ10は、床面上の障害物を含む外部環境の距離画像データを取得する。尚、距離画像データとは、環境に存在する計測対象までの距離値を各画素の画素値として有する2次元データである。後述するように、距離画像データの座標変換を行うことにより、外界の3次元の点群データを生成することができる。   The laser range finder 10 acquires distance image data of the external environment including an obstacle on the floor surface. The distance image data is two-dimensional data having a distance value to a measurement target existing in the environment as a pixel value of each pixel. As described later, by performing coordinate conversion of the distance image data, it is possible to generate external three-dimensional point cloud data.

さらに、レーザレンジファインダ10は、移動ロボット100の腰部に備えられており、鉛直軸を中心に揺動可能な構成となっている。これにより、移動ロボット100の移動方向前方をスキャンすることができる。
このようにすると、上面視では、レーザ光によるスキャン範囲を移動ロボット100の移動方向前方に向かって、左右に広がった扇形形状となるように構成することができ、移動に必要な領域のみを効率的にスキャンすることができる。
Further, the laser range finder 10 is provided on the waist of the mobile robot 100 and is configured to be swingable about the vertical axis. As a result, the front of the mobile robot 100 in the moving direction can be scanned.
In this way, in the top view, the scanning range by the laser beam can be configured to have a fan-shaped shape that spreads to the left and right toward the front in the moving direction of the mobile robot 100, and only the area necessary for movement is efficiently used. Can be scanned automatically.

ここで、レーザレンジファインダ10が、2次元の距離画像データから3次元の点群データを生成する方法について説明する。
まず、レーザレンジファインダ10を左右に揺動せずに固定した場合に、レーザ光を床面に垂直に移動方向前方に向かって上下に照射することで、床面に垂直な平面上における障害物の距離画像データを取得する。そして、レーザレンジファインダ10を移動ロボット100の鉛直軸を中心に、移動方向前方に向かって左右に揺動しながらスキャンすることで、複数の異なる平面上における距離画像データを取得する。次いで、レーザレンジファインダ10を揺動可能に支持する関節の角度に基づいて複数の距離画像データを座標変換して位置合わせする。これにより、複数平面上で得られた距離画像データの統合を行うことができる。または、複数の距離画像データから対応点を求めることによって、距離画像データ相互の位置合わせを行ってもよい。
このようにして、前方の領域に含まれる3次元の距離画像データを簡便な構成によって容易に取得することができる。
Here, a method in which the laser range finder 10 generates three-dimensional point cloud data from two-dimensional distance image data will be described.
First, when the laser range finder 10 is fixed without swinging left and right, an obstacle on a plane perpendicular to the floor surface is irradiated by irradiating laser light vertically to the front in the movement direction perpendicular to the floor surface. Get the distance image data. Then, the range image data on a plurality of different planes is acquired by scanning the laser range finder 10 while swinging left and right about the vertical axis of the mobile robot 100 toward the front in the moving direction. Next, the plurality of distance image data are coordinate-converted and aligned based on the angle of the joint that supports the laser range finder 10 so as to be swingable. Thereby, the range image data obtained on a plurality of planes can be integrated. Alternatively, the distance image data may be aligned with each other by obtaining corresponding points from a plurality of distance image data.
In this way, the three-dimensional distance image data included in the front area can be easily acquired with a simple configuration.

続いて以下では、本実施の形態にかかる移動ロボット100の制御系について説明する。移動ロボット100の制御系の構成を図2に示す。図2に示すように、平面検出装置1は、テンプレート選択部12及び平面検出部13を有する。   Subsequently, a control system of the mobile robot 100 according to the present embodiment will be described below. The configuration of the control system of the mobile robot 100 is shown in FIG. As illustrated in FIG. 2, the flat surface detection apparatus 1 includes a template selection unit 12 and a flat surface detection unit 13.

図2において、レーザレンジファインダ10は、上述したように、移動ロボット100の外部環境の距離画像データを取得する。より具体的には、例えば図3に示すように、移動ロボット100が移動方向(ここではx軸方向)へ移動する際に、レーザレンジファインダ10より移動方向前方に向けてレーザ光を照射することにより、移動方向前方の距離画像データを検出する。
尚、視覚センサとして、レーザレンジファインダに代えてステレオカメラを用いてもよい。つまり、CCD(Charge Coupled Device)イメージセンサ又はCMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等の撮像素子を備えた複数のカメラを備え、これら複数のカメラによって撮影された画像の視差を利用して距離画像データを生成してもよい。より具体的には、複数のカメラによって撮影した画像データから対応点を検出し、ステレオ視によって対応点の3次元位置を復元する。ここで、複数の撮影画像における対応点の探索は、複数の撮影画像に対する時空間微分の拘束式を用いた勾配法や相関法等の公知の手法を適用して行えばよい。
In FIG. 2, the laser range finder 10 acquires distance image data of the external environment of the mobile robot 100 as described above. More specifically, for example, as shown in FIG. 3, when the mobile robot 100 moves in the moving direction (here, the x-axis direction), the laser range finder 10 emits laser light forward in the moving direction. Thus, distance image data ahead in the movement direction is detected.
As a visual sensor, a stereo camera may be used instead of the laser range finder. That is, a distance image is obtained by using a plurality of cameras including an image sensor such as a CCD (Charge Coupled Device) image sensor or a CMOS (Complementary Metal Oxide Semiconductor) image sensor, and using parallax of images captured by the plurality of cameras. Data may be generated. More specifically, corresponding points are detected from image data captured by a plurality of cameras, and the three-dimensional positions of the corresponding points are restored by stereo vision. Here, the search for corresponding points in a plurality of captured images may be performed by applying a known method such as a gradient method or a correlation method using a time-space differential constraint formula for the plurality of captured images.

3次元位置データ生成部11は、距離画像データの座標変換を行って3次元データ群としての3次元位置データ群を生成する。尚、3次元位置データ群とは、距離画像データに含まれる多数の計測点の位置ベクトルを3次元直交座標系で表したデータの集合である。
例えば図4の画像は、移動ロボット100により生成される3次元位置データ群の一例を示している。尚、図4は、床面に平行なxy平面に3次元位置データ群がプロットされたものであり、プロットされた各点について高さ情報(z軸方向の位置情報)が存在する。
ここで、図4の画像をフレームと呼ぶ。移動ロボット100により処理対象となる現在のフレームを現フレームと呼び、現フレームの以前に生成されたフレームを前フレームと呼ぶ。移動ロボット100が移動することで、前フレームと現フレームとでは3次元位置データ群が変化する。
The three-dimensional position data generation unit 11 performs coordinate conversion of the distance image data to generate a three-dimensional position data group as a three-dimensional data group. The three-dimensional position data group is a set of data in which position vectors of a large number of measurement points included in the distance image data are represented in a three-dimensional orthogonal coordinate system.
For example, the image in FIG. 4 shows an example of a three-dimensional position data group generated by the mobile robot 100. FIG. 4 is a plot of a three-dimensional position data group on an xy plane parallel to the floor surface, and height information (position information in the z-axis direction) exists for each plotted point.
Here, the image of FIG. 4 is called a frame. A current frame to be processed by the mobile robot 100 is called a current frame, and a frame generated before the current frame is called a previous frame. As the mobile robot 100 moves, the three-dimensional position data group changes between the previous frame and the current frame.

また、3次元位置データ生成部11は、オドメトリを用いて、生成した3次元位置データの歪みを補正する。より具体的には、レーザレンジセンサ10によるスキャン中に、移動ロボット100が移動することによって発生する検出誤差を補正する。即ち、レーザレンジセンサ10によるスキャン中に移動ロボット100が移動するため、検出される床面形状データは、移動ロボット100の移動量に応じた検出誤差を含む。オドメトリにより、各関節軸に設けられたエンコーダなどの出力に基づいて移動ロボット100の移動量を算出して、移動ロボット100が移動することによる検出誤差を補正する。
さらにまた、3次元位置データ生成部11は、移動ロボット100の上体部101に設けられたジャイロ(図示せず)からの出力に基づいて、3次元位置データ群のピッチ方向の歪みを補正する。即ち、移動ロボット100の腰部に設けられたジャイロ(図示せず)の出力からピッチ方向の回転成分を検出し、3次元位置データのピッチ方向の検出誤差を補正する。
これにより、歩行ロボットにおいて3次元位置データに与える影響が大きいピッチ方向の検出誤差を補正することができる。
Further, the three-dimensional position data generation unit 11 corrects distortion of the generated three-dimensional position data using odometry. More specifically, the detection error generated by the movement of the mobile robot 100 during the scan by the laser range sensor 10 is corrected. That is, since the mobile robot 100 moves during the scan by the laser range sensor 10, the detected floor surface shape data includes a detection error corresponding to the movement amount of the mobile robot 100. The amount of movement of the mobile robot 100 is calculated by odometry based on the output of an encoder or the like provided on each joint axis, and the detection error due to the movement of the mobile robot 100 is corrected.
Furthermore, the three-dimensional position data generation unit 11 corrects the distortion in the pitch direction of the three-dimensional position data group based on an output from a gyro (not shown) provided in the upper body 101 of the mobile robot 100. . That is, the rotation component in the pitch direction is detected from the output of a gyro (not shown) provided on the waist of the mobile robot 100, and the detection error in the pitch direction of the three-dimensional position data is corrected.
Thereby, it is possible to correct a detection error in the pitch direction that has a large influence on the three-dimensional position data in the walking robot.

テンプレート選択部12は、移動ロボット100の移動状態に応じて、サンプリング対象領域が異なる複数のテンプレートより任意のテンプレートを選択する。尚、テンプレート選択部12によるテンプレート選択方法の詳細は後述する。   The template selection unit 12 selects an arbitrary template from a plurality of templates having different sampling target areas according to the moving state of the mobile robot 100. Details of the template selection method by the template selection unit 12 will be described later.

平面検出部13は、テンプレート選択部12により選択されたテンプレートにより定められたサンプリング対象領域において、3次元位置データ群から2点の3次元位置データの組をサンプリングし、2点の3次元位置データの組に基づいて平面を検出する。尚、平面検出部13による平面の検出方法の詳細は後述する。   The plane detection unit 13 samples a set of two three-dimensional position data from the three-dimensional position data group in the sampling target region defined by the template selected by the template selection unit 12, and obtains two points of three-dimensional position data. A plane is detected based on the set of The details of the plane detection method by the plane detection unit 13 will be described later.

環境地図生成部14は、平面検出部13により検出された平面に基づいて、複数の平面の集合としての環境地図を生成する。さらに具体的に述べると、本実施の形態の環境地図は、2次元平面(xy平面とする)を格子状に分割したグリッドデータとして生成される。環境地図の各グリッドに対応するデータとして、各グリッドのxy平面に垂直なz軸方向の高さ、各グリッドが属する平面を一意に識別可能な平面ID、及び、各グリッドが属する平面の法線ベクトルが保持される。環境地図生成部14は、ほぼ同じ高さの隣接するグリッドの集合を1つの平面と認識し、認識した1つの平面に対して一意な平面IDを付与する。   The environment map generation unit 14 generates an environment map as a set of a plurality of planes based on the plane detected by the plane detection unit 13. More specifically, the environment map of the present embodiment is generated as grid data obtained by dividing a two-dimensional plane (referred to as an xy plane) into a grid. As data corresponding to each grid of the environmental map, the height in the z-axis direction perpendicular to the xy plane of each grid, the plane ID that can uniquely identify the plane to which each grid belongs, and the normal of the plane to which each grid belongs Vector is retained. The environment map generation unit 14 recognizes a set of adjacent grids having substantially the same height as one plane, and assigns a unique plane ID to the recognized plane.

例えば、図5(a)に示す環境160を移動ロボット100が歩行する場合、床面に相当する平面P11及び障害物161の上面に相当する平面P12が平面検出装置1により検出される。そして、環境地図生成部14によって、平面P11が移動可能領域として認識され、平面P12が障害物領域として認識される。このとき、環境地図生成部14によって生成される環境地図200は、図5(b)に示すようになる。
図5(b)の環境地図200は、各グリッドのデータとして、各平面のそれぞれを一意に識別可能な平面ID、各グリッドのz軸方向の高さ、及び法線ベクトル(na,nb,nc)が保持される。
尚、隣接するグリッド間の平面IDの違い及びz軸方向の高さの違いによって右足平102f及び左足平103fの着地位置における路面の凹凸を検出するため、環境地図200を構成する各グリッドの面積は、右足平102f及び左足平103fの底面の面積より十分に小さくなるよう選択するとよい。
For example, when the mobile robot 100 walks in the environment 160 illustrated in FIG. 5A, the plane detection device 1 detects the plane P11 corresponding to the floor surface and the plane P12 corresponding to the upper surface of the obstacle 161. Then, the environment map generator 14 recognizes the plane P11 as a movable area and recognizes the plane P12 as an obstacle area. At this time, the environment map 200 generated by the environment map generation unit 14 is as shown in FIG.
The environment map 200 in FIG. 5B includes, as data of each grid, a plane ID that can uniquely identify each plane, the height of each grid in the z-axis direction, and a normal vector (na, nb, nc). ) Is held.
In order to detect road surface irregularities at the landing positions of the right foot 102f and the left foot 103f based on the difference in the plane ID between adjacent grids and the difference in the height in the z-axis direction, the area of each grid constituting the environment map 200 is detected. May be selected to be sufficiently smaller than the area of the bottom surface of the right foot 103f and the left foot 103f.

さらに、図5(b)の環境地図200は、各グリッドのデータとして領域種別を示す情報、つまり移動可能領域であるか障害物領域であるかを示す識別情報が保持される。図5(b)の例では、床面P11に対応する領域R11が移動可能領域であり、障害物161に対応する領域R12(図5(b)の斜線領域)が障害物領域である。   Furthermore, the environment map 200 in FIG. 5B holds information indicating the area type as data of each grid, that is, identification information indicating whether the area is a movable area or an obstacle area. In the example of FIG. 5B, a region R11 corresponding to the floor surface P11 is a movable region, and a region R12 corresponding to the obstacle 161 (shaded area in FIG. 5B) is an obstacle region.

歩行計画部15は、環境地図生成部14によって生成された環境地図を参照して目標位置を決定し、決定した目標位置に到達するための右足平102f及び左足平103fの着地位置を算出する。   The walking plan unit 15 determines the target position with reference to the environment map generated by the environment map generation unit 14, and calculates the landing positions of the right foot 102f and the left foot 103f for reaching the determined target position.

動作生成部16は、歩行計画部16によって生成された右足平102f及び左足平103fの着地位置を実現するための動作データを生成する。ここで、動作データとは、移動ロボット100のZMP位置、重心位置、右足平102f及び左足平103fの位置及び姿勢、並びに、移動ロボット100の上体部101の位置及び姿勢を含む。   The motion generation unit 16 generates motion data for realizing the landing positions of the right foot 102f and the left foot 103f generated by the walking plan unit 16. Here, the motion data includes the ZMP position, the gravity center position, the position and posture of the right foot 102f and the left foot 103f, and the position and posture of the upper body 101 of the mobile robot 100.

制御部17は、動作生成部16によって生成された動作データを入力し、逆運動学演算によって各関節の目標関節角度を算出する。さらに、制御部17は、算出した目標関節角度とエンコーダ19によって計測した現在の関節角度をもとに各関節を駆動するためのトルク制御値を算出する。制御部17によって算出されたトルク制御値に従って各関節を駆動するためのアクチュエータ18を動作させることにより、移動ロボット100の歩行が行われる。   The control unit 17 receives the motion data generated by the motion generation unit 16 and calculates a target joint angle of each joint by inverse kinematic calculation. Further, the control unit 17 calculates a torque control value for driving each joint based on the calculated target joint angle and the current joint angle measured by the encoder 19. The mobile robot 100 is walked by operating the actuator 18 for driving each joint according to the torque control value calculated by the control unit 17.

続いて以下では、平面検出装置1による平面検出方法の詳細を図6乃至9を用いて説明する。図6は、平面検出装置1による平面検出手順を示すフローチャートである。図7及び8は、テンプレートの作成、及びテンプレートの例を説明するための図である。図9は、テンプレート選択部12が、移動ロボット100の移動状態に応じてテンプレートを選択する様子を説明するための図である。   Next, details of the plane detection method by the plane detection apparatus 1 will be described below with reference to FIGS. FIG. 6 is a flowchart showing a plane detection procedure by the plane detection apparatus 1. 7 and 8 are diagrams for explaining template creation and an example of a template. FIG. 9 is a diagram for explaining how the template selection unit 12 selects a template according to the movement state of the mobile robot 100.

まず、ステップS101では、テンプレート選択部12が、移動ロボット100の過去の移動状態における平面情報としての前フレームの平面検出情報を取得する。より具体的には、例えば、前フレームの平面検出結果に含まれる床面、段差、斜面、階段などの平面情報を取得する。   First, in step S <b> 101, the template selection unit 12 acquires plane detection information of the previous frame as plane information in the past movement state of the mobile robot 100. More specifically, for example, plane information such as a floor surface, a step, a slope, and a staircase included in the plane detection result of the previous frame is acquired.

ステップS102では、テンプレート選択部12が、前フレームの平面情報に基づいてテンプレートを選択する。前フレームの平面情報より、移動ロボット100が移動する方向において、平面検出処理を実行する次のタイミングにおいて集中的に平面を検出したい領域を特定することができる。このため、前フレームの平面情報に基づいて、適切なテンプレートを自律的かつ容易に選択することができる。   In step S102, the template selection unit 12 selects a template based on the plane information of the previous frame. From the plane information of the previous frame, in the direction in which the mobile robot 100 moves, it is possible to specify a region where a plane is desired to be detected intensively at the next timing when the plane detection process is executed. For this reason, an appropriate template can be selected autonomously and easily based on the plane information of the previous frame.

ここで、図7及び8を用いてテンプレートについて説明する。
図7は、テンプレートに定められるサンプリング対象領域を説明するための図である。図8は、サンプリング対象領域が異なる複数のテンプレートを説明するための図である。本実施の形態においては、サンプリング対象領域が異なる複数のテンプレートが予め生成され、移動ロボット100に搭載される。これにより、環境に応じて速やかにテンプレートを選択することができる。
Here, the template will be described with reference to FIGS.
FIG. 7 is a diagram for explaining a sampling target area defined in the template. FIG. 8 is a diagram for explaining a plurality of templates having different sampling target areas. In the present embodiment, a plurality of templates having different sampling target areas are generated in advance and mounted on the mobile robot 100. Thereby, a template can be selected promptly according to the environment.

平面検出装置1は、テンプレートにより定められたサンプリング対象領域において、後述するように、3次元位置データ群から2点の3次元位置データの組をサンプリングする。例えば図7(a)に示すテンプレートT1を用いる場合には、サンプリング対象領域S1(図7(a)の斜線領域)においてサンプリングを行う。   The plane detection apparatus 1 samples a set of two-dimensional three-dimensional position data from a three-dimensional position data group in a sampling target region defined by a template, as will be described later. For example, when the template T1 shown in FIG. 7A is used, sampling is performed in the sampling target region S1 (the hatched region in FIG. 7A).

テンプレートT1上の各領域に対して、3次元位置データ群の各3次元位置データが対応付けされる。テンプレートT1上の領域を示すData(i,j)について、i及びjを指定することにより、Data(i,j)に対応する3次元位置データ(x,y,z)を得ることができる。
さらに、サンプリング対象領域S1において、2点の3次元位置データの組が、予めランダムにサンプリングされ設定されている。より具体的には、2点の3次元位置データの組にそれぞれ対応するData(i,j)及びData(i,j)について、(i,j)及び(i,j)がランダムにサンプリング対象領域S1内に設定される。
Each region on the template T1 is associated with each three-dimensional position data of the three-dimensional position data group. By designating i and j for Data (i, j) indicating an area on the template T1, three-dimensional position data (x, y, z) corresponding to Data (i, j) can be obtained.
Further, in the sampling target region S1, a set of two-dimensional three-dimensional position data is sampled and set in advance at random. More specifically, with respect to Data (i 1 , j 1 ) and Data (i 2 , j 2 ) respectively corresponding to a set of two-dimensional three-dimensional position data, (i 1 , j 1 ) and (i 2 , j 2 ) is randomly set in the sampling target area S1.

このように、テンプレートについて、まず、i及びjの範囲を定めることによりサンプリング対象領域S1の範囲を定める。さらに、サンプリング対象領域S1内において、複数の(i,j)及び(i,j)の組を予めランダムにサンプリングして設定する。従って、テンプレート上に予め設定されたData(i,j)及びData(i,j)に対応する3次元位置データの組からなるベクトルがサンプリングされる(例えば図7(b)参照)。
これにより、2点の3次元位置データの組をランダムにサンプリングする処理を繰り返さずに済み、予め設定されたData(i,j)及びData(i,j)に対応した3次元位置データの組を用いることで、より高速に2点の3次元位置データの組を抽出することができる。
Thus, for the template, first, the range of the sampling target region S1 is determined by determining the ranges of i and j. Furthermore, a plurality of (i 1 , j 1 ) and (i 2 , j 2 ) sets are randomly sampled and set in advance in the sampling target region S1. Therefore, a vector composed of a set of three-dimensional position data corresponding to Data (i 1 , j 1 ) and Data (i 2 , j 2 ) set in advance on the template is sampled (see, for example, FIG. 7B). ).
Thereby, it is not necessary to repeat the process of randomly sampling the set of two-dimensional three-dimensional position data, and the three-dimensional corresponding to the preset Data (i 1 , j 1 ) and Data (i 2 , j 2 ). By using a set of position data, a set of two-dimensional three-dimensional position data can be extracted at higher speed.

移動ロボット100が移動する環境に応じて、平面検出感度を高めたい領域をサンプリング対象領域とするテンプレートが予め複数作成される。即ち、ベクトルサンプリングを集中して実施する領域が異なるテンプレートが、予め複数作成される。
例えば、図8(a)に示すテンプレートT0は、移動ロボット100の足元近傍領域をサンプリング対象領域S0(図8(a)の斜線領域)とするテンプレートの一例である。
図8(b)に示すテンプレートT1は、移動ロボット100の進行方向前方において、フレームの中央近傍に段差や斜面などの検出すべき平面がある場合に、その中央近傍の領域をサンプリング対象領域S1(図8(b)の斜線領域)とするテンプレートの一例である。
図8(c)に示すテンプレートT2は、移動ロボット100の進行方向前方において、フレーム内に段差や斜面などの検出すべき平面がない場合に、進行方向遠方の領域をサンプリング対象領域S2(図8(c)の斜線領域)とするテンプレートの一例である。
図8(d)に示すテンプレートT3は、移動ロボット100が回転動作を行う場合に、移動ロボット100の足元近傍領域をサンプリング対象領域S3(図8(d)の斜線領域)とするテンプレートの一例である。
尚、図8(e)に示すテンプレートT4は、サンプリング対象領域を定めていないテンプレートを示している。
In accordance with the environment in which the mobile robot 100 moves, a plurality of templates are created in advance with sampling target areas as areas where the plane detection sensitivity is to be increased. In other words, a plurality of templates having different areas for performing vector sampling in a concentrated manner are created in advance.
For example, the template T0 shown in FIG. 8A is an example of a template in which the area near the foot of the mobile robot 100 is the sampling target area S0 (the hatched area in FIG. 8A).
The template T1 shown in FIG. 8B is a sampling target region S1 (in the vicinity of the center when there is a plane to be detected such as a step or a slope in the vicinity of the center of the frame in front of the moving direction of the mobile robot 100. It is an example of the template made into the hatched area | region of FIG.8 (b).
The template T2 shown in FIG. 8C is a sampling target region S2 (FIG. 8) in which the region far in the traveling direction is located in front of the mobile robot 100 in the traveling direction when there is no plane to be detected such as a step or a slope in the frame. It is an example of the template made into (hatched area | region of (c)).
A template T3 illustrated in FIG. 8D is an example of a template in which the area near the feet of the mobile robot 100 is the sampling target area S3 (the hatched area in FIG. 8D) when the mobile robot 100 performs a rotation operation. is there.
A template T4 shown in FIG. 8E shows a template that does not define the sampling target area.

例えば、移動ロボット100が歩行を開始する時点においては、移動ロボット100の足元近傍領域において平面検出を正確に実施する必要がある。この場合には、移動ロボット100の足元近傍領域をサンプリング対象領域とするテンプレート(例えば図8(a)参照)を用いてサンプリングを実施することにより、不要な領域において平面検出処理を行わずに済む。このため、足元近傍領域における平面をより効率的に検出することができる。   For example, when the mobile robot 100 starts walking, it is necessary to accurately perform plane detection in a region near the feet of the mobile robot 100. In this case, by performing sampling using a template (see, for example, FIG. 8A) in which the region near the foot of the mobile robot 100 is a sampling target region, it is not necessary to perform plane detection processing in an unnecessary region. . For this reason, it is possible to more efficiently detect the plane in the foot vicinity region.

次いで、図9は、テンプレート選択部12が、移動ロボット100の移動状態に応じてテンプレートを選択する一例を説明するための図である。図9は、床面に平行なxy平面に3次元位置データ群がプロットされたものであり、プロットされた各点について高さ情報(z軸方向の位置情報)が存在する。ここでは、移動ロボット100は白抜矢印Dの方向に移動するものとする。
図9(a)に示すように、前フレームの平面情報より、移動ロボット100の進行方向前方に段差や斜面などの検出すべき平面(図9(a)において破線で囲まれた領域V)が存在するものと判定された場合には、テンプレート選択部12は、フレームの中央近傍の領域U2をサンプリング対象とするテンプレート(例えば図8(b)に示したテンプレート)を選択する。
さらにまた、例えば図9(b)に示すように、前フレームの平面情報より、移動ロボット100の進行方向前方に段差や斜面などの検出すべき平面が存在しないものと判定された場合には、テンプレート選択部12は、進行方向遠方の領域U3やセンサのセンシング領域の側面領域U4などをサンプリング対象とするテンプレート(例えば図8(c)に示したテンプレート)を選択する。
Next, FIG. 9 is a diagram for explaining an example in which the template selection unit 12 selects a template according to the movement state of the mobile robot 100. In FIG. 9, a three-dimensional position data group is plotted on an xy plane parallel to the floor surface, and height information (position information in the z-axis direction) exists for each plotted point. Here, it is assumed that the mobile robot 100 moves in the direction of the white arrow D.
As shown in FIG. 9A, from the plane information of the previous frame, a plane to be detected such as a step or a slope in front of the moving direction of the mobile robot 100 (region V surrounded by a broken line in FIG. 9A). If it is determined that it exists, the template selection unit 12 selects a template (for example, the template shown in FIG. 8B) whose sampling target is the region U2 near the center of the frame.
Furthermore, for example, as shown in FIG. 9B, when it is determined from the plane information of the previous frame that there is no plane to be detected such as a step or a slope in front of the moving direction of the mobile robot 100, The template selection unit 12 selects a template (for example, the template shown in FIG. 8C) whose sampling target is the region U3 far from the traveling direction, the side region U4 of the sensing region of the sensor, or the like.

図6に戻り説明を続けると、ステップS103では、平面検出部13が、ステップS103において選択されたテンプレートについて、テンプレート上に予め設定されたData(i,j)及びData(i,j)に対応する2点の3次元位置データの組みを抽出することにより、ベクトルをサンプリングする。より具体的には、以下の不等式を満足するData(i,j)及びData(i,j)に対応する2点の3次元位置データの組みからなるベクトルをサンプリングする。尚、Distance(Data(i,j),Data(i,j))は、Data(i,j)及びData(i,j)に対応する、それぞれ3次元位置データ(x,y,z)及び(x,y,z)間のユークリッド距離を意味する。また、Dmin及びDmaxは検出したい平面の範囲に応じて定められるベクトルの大きさに関する条件値であり、予め定められ図示しないメモリに格納されている。
min<Distance(Data(i,j),Data(i,j))<Dmax
ここで、上記の不等式を満足しないData(i,j)及びData(i,j)に対応する2点の3次元位置データの組みは採用されないものとする。
Returning to FIG. 6 and continuing the description, in step S103, the plane detection unit 13 sets Data (i 1 , j 1 ) and Data (i 2 , j) preset on the template for the template selected in step S103. A vector is sampled by extracting a set of two-dimensional three-dimensional position data corresponding to 2 ). More specifically, a vector composed of a set of three-dimensional position data of two points corresponding to Data (i 1 , j 1 ) and Data (i 2 , j 2 ) satisfying the following inequality is sampled. Note that Distance (Data (i 1 , j 1 ), Data (i 2 , j 2 )) is the three-dimensional position data corresponding to Data (i 1 , j 1 ) and Data (i 2 , j 2 ), respectively. It means the Euclidean distance between (x 1 , y 1 , z 1 ) and (x 2 , y 2 , z 2 ). D min and D max are condition values related to the magnitude of the vector determined according to the range of the plane to be detected, and are determined in advance and stored in a memory (not shown).
D min <Distance (Data (i 1 , j 1 ), Data (i 2 , j 2 )) <D max
Here, it is assumed that a set of three-dimensional position data of two points corresponding to Data (i 1 , j 1 ) and Data (i 2 , j 2 ) that does not satisfy the above inequality is not adopted.

ステップS104では、テンプレート選択部12が、ステップS103においてサンプリングされたベクトルの個数が予め定められた個数以上となっているか否かを判定する。
判定の結果、サンプリングされたベクトルの個数が予め定められた個数以上となっている場合には、ステップS105へと進む。
In step S104, the template selection unit 12 determines whether or not the number of vectors sampled in step S103 is equal to or greater than a predetermined number.
As a result of the determination, if the number of sampled vectors is greater than or equal to a predetermined number, the process proceeds to step S105.

一方、ステップS104における判定の結果、サンプリングされたベクトルの個数が予め定められた個数以上となっていない場合には、ステップS102へと戻りテンプレートを選択しなおす。ここで、テンプレートを再度選択する場合には、テンプレート選択部11は、サンプリングされるベクトル数がより多くなるようなテンプレートを選択するように構成されていることが好ましい。   On the other hand, if the result of determination in step S104 is that the number of sampled vectors is not greater than or equal to the predetermined number, processing returns to step S102 and a template is selected again. Here, when selecting a template again, it is preferable that the template selection unit 11 is configured to select a template that increases the number of vectors to be sampled.

移動ロボット100の移動に伴って測定環境が変化するため、使用するテンプレートによっては、ベクトルの大きさに関する条件であるDmin及びDmaxを満足して得られるベクトルの個数が変化する。即ち、ベクトルの個数が不十分であったということは、選択されたテンプレートは移動ロボット100の移動する環境に十分適応したものではなく、ステップS102において選択されたテンプレートでは平面検出のために必要なベクトルの個数を確保できなかったものと推測される。
このため、条件を満足して得られたベクトルの個数に応じてテンプレートを切替えることにより、環境により適応したテンプレートを選択するように構成する。
Since the measurement environment changes as the mobile robot 100 moves, the number of vectors obtained satisfying D min and D max , which are conditions related to the magnitude of the vector, changes depending on the template used. That is, the fact that the number of vectors is insufficient means that the selected template is not sufficiently adapted to the environment in which the mobile robot 100 moves, and the template selected in step S102 is necessary for plane detection. It is estimated that the number of vectors could not be secured.
Therefore, a template adapted to the environment is selected by switching templates according to the number of vectors obtained by satisfying the conditions.

ステップS105では、平面検出部12が、ステップS103においてサンプリングされたベクトルに基づいて、3次元位置データ群に含まれる平面の法線を探索する。
具体的には、まず、サンプリングされたベクトルを正規化し原点へと移動する。すると、同一平面上に存在するベクトル群は原点を中心とする円盤状に分布するため、その円盤に直交するベクトルの角度を平面の法線として算出する。
In step S105, the plane detection unit 12 searches for a normal line of the plane included in the three-dimensional position data group based on the vector sampled in step S103.
Specifically, first, the sampled vector is normalized and moved to the origin. Then, since the vector groups existing on the same plane are distributed in a disk shape centered on the origin, the angle of the vector orthogonal to the disk is calculated as the normal line of the plane.

ステップS106では、平面検出部12が、ステップS105において探索された平面について、その平面の距離を探索する。
具体的には、まず、原点からステップS105において探索された平面の法線ベクトルの方向に、平面上に存在するベクトルの密度が予め定めた閾値以上となる平面を探索する。そして、原点から探索された平面までの距離を検出候補平面までの距離とする。
In step S106, the plane detection unit 12 searches for the distance between the planes searched in step S105.
Specifically, first, a plane in which the density of vectors existing on the plane is equal to or more than a predetermined threshold is searched in the direction of the normal vector of the plane searched in step S105 from the origin. The distance from the origin to the searched plane is set as the distance to the detection candidate plane.

ステップS107では、平面検出部12が、3次元位置データ群に含まれる全ての3次元位置データに対して、3次元位置データが属する平面の平面IDをラベリングする。
尚、平面IDは、ステップS105からS106までの処理にかけて探索された複数の平面に対応して設定される。
In step S107, the plane detection unit 12 labels the plane ID of the plane to which the three-dimensional position data belongs with respect to all the three-dimensional position data included in the three-dimensional position data group.
The plane ID is set corresponding to a plurality of planes searched through the processing from step S105 to S106.

ステップS108では、平面検出部12が、各平面とその平面に対応付けられた3次元位置データとの間の誤差が最小となるように、最小二乗法を利用して最小二乗フィッティング処理を実施する。   In step S108, the plane detection unit 12 performs a least square fitting process using the least square method so that the error between each plane and the three-dimensional position data associated with the plane is minimized. .

尚、上述した3次元位置データ生成部11、テンプレート選択部12、平面検出部13及び環境地図生成部14により実行される処理は、典型的なコンピュータシステムを用いて実現可能である。具体的には、一定の時間間隔で発生するタイマ割り込みに応じて、図6のフローチャートに示した処理をコンピュータシステムに行わせるためのプログラムをコンピュータシステムに実行させればよい。なお、図6のフローチャートに示した処理をコンピュータシステムに実行させるためのプログラムは、1のプログラムである必要はなく、処理内容により分割された複数のプログラムモジュールによって構成されてもよい。   The processing executed by the above-described three-dimensional position data generation unit 11, template selection unit 12, plane detection unit 13, and environment map generation unit 14 can be realized using a typical computer system. Specifically, a program for causing the computer system to perform the processing shown in the flowchart of FIG. 6 may be executed in response to a timer interrupt that occurs at regular time intervals. Note that the program for causing the computer system to execute the processing shown in the flowchart of FIG. 6 does not have to be a single program, and may be configured by a plurality of program modules divided according to the processing content.

以上のようにして、移動ロボット100の移動状態に応じて、平面検出のために不要となる領域をサンプリングせずに済む。このため、平面検出に要する処理時間を短縮することができる。
特に、2点ランダムサンプリング法においては、これまで全領域においてベクトルをランダムにサンプリングしていたため、大きさに関する条件を満足するベクトルがサンプリングされる確率が低くなり、効率的に所望の個数のベクトルを抽出することができなかった。さらに、条件を満足するベクトルを所望の個数抽出するまでサンプリング処理を繰り返す必要があったため、平面検出に要する処理時間が非常に大きなものとなっていた。
本実施の形態によれば、予め、サンプリング対象領域における2点の3次元位置データの組を設定し、当該領域において設定された2点の3次元位置データの組みに基づいてサンプリングを実施する。これにより条件を満足したベクトルを効率よくサンプリングすることができるため、2点ランダムサンプリング法をより高速に実施することができる。
このように、平面検出に要する処理時間を短縮することにより、ひいては、平面検出処理が移動ロボットの高速移動の制約となることを緩和させることができる。
As described above, it is not necessary to sample a region that is unnecessary for plane detection according to the movement state of the mobile robot 100. For this reason, the processing time required for plane detection can be shortened.
In particular, in the two-point random sampling method, since vectors have been randomly sampled in the entire region, the probability that a vector satisfying the size condition is sampled is reduced, and a desired number of vectors can be efficiently obtained. Could not be extracted. Furthermore, since it is necessary to repeat the sampling process until a desired number of vectors satisfying the conditions are extracted, the processing time required for plane detection is very long.
According to the present embodiment, a set of two-dimensional three-dimensional position data in the sampling target area is set in advance, and sampling is performed based on the two-point three-dimensional position data set in the area. As a result, a vector that satisfies the conditions can be sampled efficiently, so that the two-point random sampling method can be performed at a higher speed.
In this way, by shortening the processing time required for plane detection, it is possible to alleviate the fact that the plane detection process becomes a restriction on high-speed movement of the mobile robot.

また、本実施の形態によれば、移動ロボット100の移動状態に応じて、平面検出を実施したい領域において効率的にサンプリングを実施させることができるため、より精度の高い平面検出を行うことができる。
移動ロボット100の移動に伴って測定環境は変化するため、条件を満足して抽出されるベクトルの個数が得られる確率も変化する。このため、全ての領域をサンプリング対象領域とした場合や、同一のテンプレートを用いてサンプリングを実施し続けた場合には、検出すべき領域から所望の個数のベクトルを抽出することができない場合がある。
本実施の形態によれば、測定環境に応じてテンプレートを切替えることで、条件を満足してサンプリングされるベクトルの個数が得られる確率を環境に応じて向上させることができる。即ち、測定環境に応じてテンプレートを切替えることによりサンプリング対象領域を調整し、平面検出のための検出感度を向上させることができる。従って、より精度の高い平面検出を行うことができる。
Further, according to the present embodiment, sampling can be efficiently performed in an area where plane detection is desired according to the moving state of the mobile robot 100, so that more accurate plane detection can be performed. .
Since the measurement environment changes as the mobile robot 100 moves, the probability of obtaining the number of vectors extracted satisfying the conditions also changes. For this reason, when all regions are set as sampling target regions or when sampling is continuously performed using the same template, a desired number of vectors may not be extracted from the region to be detected. .
According to the present embodiment, by switching templates according to the measurement environment, it is possible to improve the probability of obtaining the number of vectors sampled satisfying the conditions according to the environment. In other words, the sampling target area can be adjusted by switching the template according to the measurement environment, and the detection sensitivity for plane detection can be improved. Therefore, more accurate plane detection can be performed.

尚、本実施の形態においては、予め定められたサンプリング対象領域においてサンプリングを実施するため、全領域をサンプリング対象領域とする従来のランダムサンプリング手法を採用した場合と比較して、ランダム性は若干低下する。しかしながら、サンプリング対象領域が異なる複数のテンプレートを用意して、測定環境に応じてテンプレートを切替えて使用することで、ランダム性の低下を緩和させることができる。   In this embodiment, since sampling is performed in a predetermined sampling target region, the randomness is slightly reduced as compared with the case where the conventional random sampling method in which the entire region is the sampling target region is adopted. To do. However, by preparing a plurality of templates having different sampling target areas and switching the templates according to the measurement environment, it is possible to mitigate the decrease in randomness.

尚、上記の例ではサンプリング対象領域の異なる複数のテンプレートが予め生成され移動ロボット100に搭載されるものとしたが、これに限定されない。例えば、移動ロボット100の開始時点においてはフレームの全領域をサンプリング対象領域とするテンプレート(例えば図8(e)のテンプレートT4)を使用し、移動ロボットが移動を開始した後は、前フレームの平面情報及び移動ロボット100の移動量に応じて、テンプレートのサンプリング対象領域を更新するようにしてもよい。   In the above example, a plurality of templates having different sampling target areas are generated in advance and mounted on the mobile robot 100. However, the present invention is not limited to this. For example, at the start of the mobile robot 100, a template (for example, the template T4 in FIG. 8E) that uses the entire region of the frame as a sampling target region is used. The sampling target area of the template may be updated according to the information and the movement amount of the mobile robot 100.

その他の実施の形態.
発明の実施の形態1は、2点ランダムサンプリング法によって平面を検出する一例を示したが、本発明はこれに限定されない。例えば、移動ロボット100の移動状態に応じて、サンプリング対象領域が異なる複数のテンプレートより任意のテンプレートを選択し、選択されたテンプレートにより定められたサンプリング対象領域において、3次元位置データ群から複数の3次元位置データをサンプリングし、サンプリングされた3次元位置データからハフ変換を利用して平面を検出するように構成してもよい。
Other embodiments.
Embodiment 1 of the invention shows an example in which a plane is detected by a two-point random sampling method, but the present invention is not limited to this. For example, an arbitrary template is selected from a plurality of templates having different sampling target areas in accordance with the moving state of the mobile robot 100, and a plurality of 3's from the three-dimensional position data group are selected in the sampling target area defined by the selected template. The configuration may be such that the dimensional position data is sampled, and the plane is detected from the sampled three-dimensional position data using the Hough transform.

尚、上記の例では、脚式移動ロボットに本発明を適用した一例を示したが、車輪等のその他の移動手段を有する移動ロボットに対しても本発明を適用可能である。   In the above example, an example in which the present invention is applied to a legged mobile robot is shown, but the present invention can also be applied to a mobile robot having other moving means such as wheels.

さらに、本発明は上述した実施の形態のみに限定されるものではなく、既に述べた本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。   Furthermore, the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the gist of the present invention described above.

本発明の実施の形態にかかる移動ロボットの構成を示す側面図である。It is a side view which shows the structure of the mobile robot concerning embodiment of this invention. 本発明の実施の形態にかかる移動ロボットが有する制御系のブロック構成図である。It is a block block diagram of the control system which the mobile robot concerning embodiment of this invention has. 本発明の実施の形態にかかる移動ロボットが移動する際にレーザレンジファインダによるスキャンの様子を説明するための図である。It is a figure for demonstrating the mode of the scanning by a laser range finder, when the mobile robot concerning embodiment of this invention moves. 本発明の実施の形態にかかる3次元位置データ群の一例を示す図である。It is a figure which shows an example of the three-dimensional position data group concerning embodiment of this invention. 本発明の実施の形態にかかる移動ロボットが移動する環境の一例及び環境地図の一例を示す図である。It is a figure which shows an example of the environment where the mobile robot concerning embodiment of this invention moves, and an example of an environment map. 本発明の実施の形態にかかる平面検出装置の処理内容を示すフローチャートである。It is a flowchart which shows the processing content of the plane detection apparatus concerning embodiment of this invention. 本発明の実施の形態にかかるテンプレートの一例を示す図である。It is a figure which shows an example of the template concerning embodiment of this invention. 本発明の実施の形態にかかるサンプリング対象領域の異なるテンプレートを示す図である。It is a figure which shows the template from which the sampling object area | region concerning embodiment of this invention differs. 本発明の実施の形態にかかるテンプレートの適用例を示す図である。It is a figure which shows the example of application of the template concerning embodiment of this invention.

符号の説明Explanation of symbols

1 平面検出装置、
10 レーザレンジファインダ、11 3次元位置データ生成部、
12 テンプレート選択部、13 平面検出部、14 環境地図生成部、
15 歩行計画部、16 動作生成部、
17 制御部、18 アクチュエータ、19 エンコーダ

100 移動ロボット、104 脚部、
102 右脚、102c 右膝関節、102e 右足首関節、102f 右足平、
103 左脚、103c 左膝関節、103e 左足首関節、103f 左足平、

160 環境、161 障害物、P11、12 床面、200 環境地図、
P 搭乗者、R11、12 領域、V 領域、
T0〜T4 テンプレート、S0〜S3 サンプリング対象領域
1 plane detection device,
10 laser range finder, 11 3D position data generator,
12 template selection unit, 13 plane detection unit, 14 environment map generation unit,
15 walking planning unit, 16 motion generating unit,
17 Control unit, 18 Actuator, 19 Encoder

100 mobile robots, 104 legs,
102 right leg, 102c right knee joint, 102e right ankle joint, 102f right foot,
103 left leg, 103c left knee joint, 103e left ankle joint, 103f left foot,

160 environment, 161 obstacle, P11, 12 floor, 200 environment map,
P Passenger, R11, 12 area, V area,
T0 to T4 template, S0 to S3 sampling target area

Claims (8)

平面を検出する平面検出方法であって、
移動ロボットの移動状態に応じて、サンプリング対象領域が異なる複数のテンプレートよりテンプレートを選択するステップと、
選択されたテンプレートにより定められたサンプリング対象領域において、3次元データ群から予めランダムに設定された2点の組に対応する2点の3次元データの組をサンプリングし、該2点の3次元データの組に基づいて平面を検出するステップと、
を有する平面検出方法。
A plane detection method for detecting a plane,
According to the moving state of the mobile robot, the method comprising: sampling target area to select a template from a plurality of different templates,
In the sampling target region defined by the selected template, a two-point three-dimensional data set corresponding to a two-point set randomly set in advance from the three-dimensional data group is sampled, and the two-point three-dimensional data Detecting a plane based on a set of:
A plane detection method comprising:
前記移動ロボットの過去の移動状態における平面情報に基づいて前記テンプレートを選択する
ことを特徴とする請求項1記載の平面検出方法。
The plane detection method according to claim 1, wherein the template is selected based on plane information in a past movement state of the mobile robot.
前記サンプリングされた2点の3次元データの組の個数に基づいて前記テンプレートを選択する
ことを特徴とする請求項1又は2記載の平面検出方法。
3. The plane detection method according to claim 1, wherein the template is selected based on the number of sets of the sampled two-dimensional three-dimensional data.
前記テンプレートは、予めサンプリング対象領域が定められ前記移動ロボットに搭載されたものである
ことを特徴とする請求項1乃至3いずれか1項記載の平面検出方法。
4. The plane detection method according to claim 1, wherein a sampling target area is determined in advance and the template is mounted on the mobile robot. 5.
所定の環境内を移動する移動ロボットであって、
前記移動ロボットの移動状態に応じて、サンプリング対象領域が異なる複数のテンプレートよりテンプレートを選択するテンプレート選択部と、
選択されたテンプレートにより定められたサンプリング対象領域において、3次元データ群から予めランダムに設定された2点の組に対応する2点の3次元データの組をサンプリングし、該2点の3次元データの組に基づいて平面を検出する平面検出部と、
を備える移動ロボット。
A mobile robot that moves within a predetermined environment,
According to the moving state of the mobile robot, the template selecting unit sampled area to select a template from a plurality of different templates,
In the sampling target region defined by the selected template, a two-point three-dimensional data set corresponding to a two-point set randomly set in advance from the three-dimensional data group is sampled, and the two-point three-dimensional data A plane detection unit for detecting a plane based on the set of
A mobile robot comprising:
前記テンプレート選択部は、
前記移動ロボットの過去の移動状態における平面情報に基づいて前記テンプレートを選択する
ことを特徴とする請求項記載の移動ロボット。
The template selection unit
The mobile robot according to claim 5, wherein the template is selected based on plane information in a past movement state of the mobile robot.
前記テンプレート選択部は、
前記サンプリングされた2点の3次元データの組の個数に基づいて前記テンプレートを選択する
ことを特徴とする請求項5又は6記載の移動ロボット。
The template selection unit
7. The mobile robot according to claim 5, wherein the template is selected based on the number of sets of the sampled two-dimensional three-dimensional data.
前記テンプレートは、予めサンプリング対象領域が定められ前記移動ロボットに搭載されたものである
ことを特徴とする請求項5乃至7いずれか1項記載の移動ロボット。
8. The mobile robot according to claim 5, wherein a sampling target area is determined in advance and the template is mounted on the mobile robot. 9.
JP2007112284A 2007-04-20 2007-04-20 Plane detection method and mobile robot Expired - Fee Related JP4844459B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007112284A JP4844459B2 (en) 2007-04-20 2007-04-20 Plane detection method and mobile robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007112284A JP4844459B2 (en) 2007-04-20 2007-04-20 Plane detection method and mobile robot

Publications (2)

Publication Number Publication Date
JP2008264947A JP2008264947A (en) 2008-11-06
JP4844459B2 true JP4844459B2 (en) 2011-12-28

Family

ID=40045176

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007112284A Expired - Fee Related JP4844459B2 (en) 2007-04-20 2007-04-20 Plane detection method and mobile robot

Country Status (1)

Country Link
JP (1) JP4844459B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5071945B2 (en) * 2010-01-15 2012-11-14 Necアクセステクニカ株式会社 Mobile device and method
KR101164336B1 (en) 2010-04-21 2012-07-09 고려대학교 산학협력단 Base plane height compensation method of mobile robot and generating method for elevation map using the same
MX2014000752A (en) 2011-07-20 2014-11-13 Smith & Nephew Inc Systems and methods for optimizing fit of an implant to anatomy.
JP2015024453A (en) * 2013-07-25 2015-02-05 トヨタ自動車株式会社 Loading determination method, loading method, loading determination device and robot
KR101979246B1 (en) * 2017-01-26 2019-05-16 (주)로보케어 Method and apparatus for for calibrating sensor coordinate system with game zone
US20230043994A1 (en) 2020-02-17 2023-02-09 Fanuc Corporation Three-dimensional measurement device for generating three-dimensional point position information

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4476468B2 (en) * 2000-11-13 2010-06-09 本田技研工業株式会社 Legged mobile robot
JP2005144606A (en) * 2003-11-17 2005-06-09 Yaskawa Electric Corp Moving robot
JP4564447B2 (en) * 2004-12-14 2010-10-20 本田技研工業株式会社 Autonomous mobile robot

Also Published As

Publication number Publication date
JP2008264947A (en) 2008-11-06

Similar Documents

Publication Publication Date Title
JP5067215B2 (en) Mobile robot and environmental map generation method
JP4788722B2 (en) Autonomous mobile robot, self-position estimation method, environmental map generation method, environmental map generation device, and environmental map data structure
JP2009136987A (en) Mobile robot and method of correcting floor surface shape data
Luck et al. Registration of range data using a hybrid simulated annealing and iterative closest point algorithm
JP4241651B2 (en) Mobile device
JP4844459B2 (en) Plane detection method and mobile robot
JP5602392B2 (en) Information processing apparatus, information processing method, and program
CN108603936B (en) Laser scanning system, laser scanning method, non-transitory computer-readable storage medium
JP5567908B2 (en) Three-dimensional measuring apparatus, measuring method and program
WO2020051923A1 (en) Systems And Methods For VSLAM Scale Estimation Using Optical Flow Sensor On A Robotic Device
KR101705601B1 (en) Apparatus and method for estimating the location of autonomous robot based on three-dimensional depth information
JP2008197884A (en) Generation method for environmental map and mobile robot
JP2009258779A (en) Mobile robot and footprint planning method
JP2009096335A (en) Legged robot
Kim et al. UAV-UGV cooperative 3D environmental mapping
JP2013025401A (en) Self-position estimation device, self-position estimation method and program
JP4678007B2 (en) Environmental map generation method and mobile robot
CN112068152A (en) Method and system for simultaneous 2D localization and 2D map creation using a 3D scanner
CN107136649A (en) A kind of three-dimensional foot type measuring device and implementation method based on automatic seeking board pattern
CN108544494A (en) A kind of positioning device, method and robot based on inertia and visual signature
US20220214696A1 (en) Simultaneous Localization and Mapping
JP6410231B2 (en) Alignment apparatus, alignment method, and computer program for alignment
JP2015007639A (en) Information processing apparatus, information processing method and program
JP2017167974A (en) Estimation apparatus, method and program
JP2008264946A (en) Mobile robot and correcting method for data of floor surface shape

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090902

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110620

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: 20110913

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110926

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141021

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4844459

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: 20141021

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees