JP2011179909A - Device and method for measuring position and attitude, and program - Google Patents

Device and method for measuring position and attitude, and program Download PDF

Info

Publication number
JP2011179909A
JP2011179909A JP2010043061A JP2010043061A JP2011179909A JP 2011179909 A JP2011179909 A JP 2011179909A JP 2010043061 A JP2010043061 A JP 2010043061A JP 2010043061 A JP2010043061 A JP 2010043061A JP 2011179909 A JP2011179909 A JP 2011179909A
Authority
JP
Japan
Prior art keywords
region
area
distance
partial
orientation
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
Application number
JP2010043061A
Other languages
Japanese (ja)
Other versions
JP5480667B2 (en
JP2011179909A5 (en
Inventor
Masakazu Fujiki
真和 藤木
Yusuke Nakazato
祐介 中里
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2010043061A priority Critical patent/JP5480667B2/en
Publication of JP2011179909A publication Critical patent/JP2011179909A/en
Publication of JP2011179909A5 publication Critical patent/JP2011179909A5/en
Application granted granted Critical
Publication of JP5480667B2 publication Critical patent/JP5480667B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Numerical Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technology for measuring a position and an attitude which improves a processing speed and suppresses memory consumption, in processing for estimating the position and the attitude by using a distance image of an object. <P>SOLUTION: This device for measuring the position and the attitude which measures the position and the attitude of the object based on the picked-up distance image of the object includes an update part which compares information showing a distance between an object model and an object area with information showing a distance between a partial area out of a partial area group which is not set as the object area, and the object model, and adds a new partial area to the object area according to the result of comparison, and an estimation part which applies the object model to a three-dimensional point group of the object area after the update, and estimates the position and the attitude of the object. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、3次元形状が既知である対象物体の位置及び姿勢を計測する技術に関する。特に対象物体を撮影した距離画像に基づいて対象物体の位置及び姿勢を算出する位置姿勢計測装置、位置姿勢計測方法、プログラムに関する。   The present invention relates to a technique for measuring the position and orientation of a target object whose three-dimensional shape is known. In particular, the present invention relates to a position / orientation measurement apparatus, a position / orientation measurement method, and a program for calculating the position and orientation of a target object based on a distance image obtained by photographing the target object.

近年、ロボット技術の発展とともに、これまで人間が行っていた複雑なタスクをロボットが代わりに行うようになりつつある。複雑なタスクの代表的な例として、工業製品の組み立てが挙げられる。ロボットが組み立て作業を行うためには、ロボットハンドなどのエンドエフェクタによって部品を把持したり、他の部品と嵌合させたりすることが必要となる。そのためには、把持の対象となる部品あるいは嵌合の対象となる部品とロボットとの相対的な位置及び姿勢を計測し、計測結果に基づいてロボットハンドの移動計画を策定して、実際にロボットハンドを駆動するためのアクチュエータを制御する必要がある。   In recent years, with the development of robot technology, robots are starting to perform complex tasks that have been performed by humans instead. A typical example of a complex task is assembly of an industrial product. In order for the robot to perform the assembling work, it is necessary to grip the part with an end effector such as a robot hand or to be fitted with another part. For that purpose, the relative position and orientation of the part to be gripped or the part to be fitted and the robot are measured, and the robot hand movement plan is formulated based on the measurement result, and the robot is actually It is necessary to control an actuator for driving the hand.

ロボットの位置姿勢計測は、これまでロボットに搭載されたカメラや距離センサを用いて行われており、2次元画像や距離画像を用いる方法が代表的である。特に、オフィスや工場などのシーンや工業製品の部品など、対象が直線や曲線、濃淡変化の少ない面など単調な特徴しか持たない場合には距離画像を用いることが多い。   The position and orientation of the robot has been measured using a camera and a distance sensor mounted on the robot, and a method using a two-dimensional image or a distance image is typical. In particular, distance images are often used when the object has only monotonous features, such as a scene in an office or factory, or a part of an industrial product, such as a straight line, a curved line, or a surface with little shading.

非特許文献1では、距離画像へのモデルフィッティングによる物体の位置及び姿勢の計測を行う方法が開示されている。この方法では、距離画像を3次元点群データに変換し、点群データに対象物体の3次元形状モデルを当て嵌めることにより物体の位置及び姿勢を計測する。すなわち、位置及び姿勢の概略値をもとに、点群データの各点について3次元形状モデルの近傍の面を探索し、点と面との距離の和を最小化するように位置及び姿勢の最適化を繰り返すことにより位置及び姿勢を算出するものである。   Non-Patent Document 1 discloses a method for measuring the position and orientation of an object by model fitting to a distance image. In this method, the distance image is converted into three-dimensional point cloud data, and the position and orientation of the object are measured by fitting the three-dimensional shape model of the target object to the point cloud data. That is, based on the approximate values of the position and orientation, the surface of the three-dimensional shape model is searched for each point of the point cloud data, and the position and orientation of the position and orientation are minimized so as to minimize the sum of the distances between the points. The position and orientation are calculated by repeating optimization.

非特許文献2では、時系列で得られる距離画像をもとに、非特許文献1の方法を用いて、フレーム間での物体の位置及び姿勢の変化を推定する手法が開示されている。非特許文献3では、距離画像へのモデルフィッティングによる物体の位置及び姿勢を推定する手法が開示されている。この方法では、距離画像を3次元点群データに変換し、点群データに陰多項式で表現された対象物体の3次元形状モデルを当て嵌めることにより物体の位置及び姿勢を高速に推定する。すなわち、位置及び姿勢の概略値をもとに、点群データの各点について、陰多項式が定義する距離場で近似される点と3次元モデル表面との距離の和を最小化するように位置及び姿勢の最適化を繰り返すことにより位置及び姿勢を算出するものである。   Non-Patent Document 2 discloses a method for estimating changes in the position and orientation of an object between frames using the method of Non-Patent Document 1 based on a distance image obtained in time series. Non-Patent Document 3 discloses a method for estimating the position and orientation of an object by model fitting to a distance image. In this method, the distance image is converted into three-dimensional point cloud data, and the position and orientation of the object are estimated at high speed by fitting the point cloud data with the three-dimensional shape model of the target object expressed by an implicit polynomial. That is, for each point in the point cloud data, based on the approximate position and orientation values, the position is calculated so as to minimize the sum of the distance between the point approximated by the distance field defined by the implicit polynomial and the surface of the three-dimensional model. And the position and orientation are calculated by repeating the optimization of the orientation.

P. J. Besl and N. D. McKay, "A method for registration of 3-D shapes," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.14, no.2, pp.239-256, 1992.P. J. Besl and N. D. McKay, "A method for registration of 3-D shapes," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.14, no.2, pp.239-256, 1992. D. A. Simon, M. Hebert, and T. Kanade, "Real-time 3-D pose estimation using a high-speed range sensor," Proc. 1994 IEEE International Conference on Robotics and Automation (ICRA '94), pp.2235-2241, 1994.DA Simon, M. Hebert, and T. Kanade, "Real-time 3-D pose estimation using a high-speed range sensor," Proc. 1994 IEEE International Conference on Robotics and Automation (ICRA '94), pp.2235- 2241, 1994. B. Zheng, R. Ishikawa, T. Oishi, J. Takamatsu, K. Ikeuchi, "6-DOF Pose Estimation from Single Ultrasound Image Using 3D IP Models, " Proc. IEEE International Workshop on Object Tracking and Classification Beyond the Visible Spectrum (OTCBVS08), pp.1-8, 2008.B. Zheng, R. Ishikawa, T. Oishi, J. Takamatsu, K. Ikeuchi, "6-DOF Pose Estimation from Single Ultrasound Image Using 3D IP Models," Proc. IEEE International Workshop on Object Tracking and Classification Beyond the Visible Spectrum (OTCBVS08), pp.1-8, 2008. M. M. Blane, Z. Lie, H. Civi, D. B. Cooper, "The 3L algorithm for fitting implicit polynomial curves and surfaces to data, " IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.22, no.3, pp.298-313, 2000.MM Blane, Z. Lie, H. Civi, DB Cooper, "The 3L algorithm for fitting implicit polynomial curves and surfaces to data," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.22, no.3, pp.298- 313, 2000. T. Sahin, M. Unel, "Fitting Globally Stabilized Algebraic Surfaces to Range Data, " Proc. IEEE International Conference on Computer Vision, vol.2, pp.1083-1088, 2005.T. Sahin, M. Unel, "Fitting Globally Stabilized Algebraic Surfaces to Range Data," Proc. IEEE International Conference on Computer Vision, vol.2, pp.1083-1088, 2005. Z. Zhang, "A flexible new technique for camera calibration," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.22, no.11, pp.1330-1334, 2000.Z. Zhang, "A flexible new technique for camera calibration," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.22, no.11, pp.1330-1334, 2000. X. Jiang and H. Bunke, "Range image segmentation: Adaptive grouping of edges into regions," Proceedings of Asian Conference on Computer Vision 1998 (ACCV '98), pp.299-306, 1998.X. Jiang and H. Bunke, "Range image segmentation: Adaptive grouping of edges into regions," Proceedings of Asian Conference on Computer Vision 1998 (ACCV '98), pp.299-306, 1998. A. Bab-Hadiashar, N. Gheissari, "Range image segmentation using surface selection criterion," IEEE Transactions on Image Processing, Vol.15, No.7, pp.2006-2018, 2006.A. Bab-Hadiashar, N. Gheissari, "Range image segmentation using surface selection criterion," IEEE Transactions on Image Processing, Vol.15, No.7, pp.2006-2018, 2006.

一般に、位置姿勢を推定しようとする対象物体を撮影した距離画像には、対象物体のデータだけではなく、対象物体の周囲や背後に存在する対象物体以外の物体(非対象物体)のデータが混在する。このような距離画像に基づいて対象物体の位置及び姿勢を推定する場合、形状モデル当て嵌めの算出結果は非対象物体の3次元点群データの影響を受ける。このため、距離画像に対象物体のデータのみを含む場合に比べて位置姿勢計測(算出)精度が低下するという問題がある。この問題に対処する方法として、前述のロバスト推定を用いることができる。対象物体に比べ、対象物体以外の物体(非対象物体)はモデルとの対応間距離が大きくなる傾向があるので、ロバスト推定を適用すると、最適化計算に対する非対象物体のデータによる影響が低下するためである。   In general, a distance image obtained by capturing a target object whose position and orientation are to be estimated includes not only target object data but also data of objects other than the target object (non-target objects) around or behind the target object. To do. When estimating the position and orientation of the target object based on such a distance image, the calculation result of the shape model fitting is affected by the three-dimensional point cloud data of the non-target object. For this reason, there is a problem in that the position / orientation measurement (calculation) accuracy is lowered as compared with the case where only the target object data is included in the distance image. As a method of dealing with this problem, the above-described robust estimation can be used. Compared to the target object, objects other than the target object (non-target objects) tend to have a larger distance between the correspondences with the model, so applying robust estimation reduces the impact of non-target object data on optimization calculations Because.

ところが、前述したような位置姿勢計測(算出)方法では、処理対象とする3次元点群の数が多くなるほど、処理負荷が増大し、かつメモリ消費量が増大する。従って、物体の位置姿勢を推定する際は、処理対象の3次元点群を対象物体のみに限定するのが理想的である。しかしながら、従来のロバスト推定を用いた方法では、本来は不必要な非対象物体のデータをモデル当て嵌めの処理から除外していない。すなわち、従来の方法では、処理速度の低下・メモリ消費量の増大という課題があった。   However, in the position and orientation measurement (calculation) method as described above, the processing load increases and the memory consumption increases as the number of three-dimensional point groups to be processed increases. Therefore, when estimating the position and orientation of an object, it is ideal to limit the three-dimensional point group to be processed to only the target object. However, the conventional method using robust estimation does not exclude non-target object data that is originally unnecessary from the model fitting process. In other words, the conventional method has a problem of a decrease in processing speed and an increase in memory consumption.

本発明は、対象物体と非対象物体の像を含む距離画像データを入力データとして対象物体の位置及び姿勢を推定する処理の高速化、及びメモリ消費量を軽減した位置姿勢計測技術の提供を目的とする。   An object of the present invention is to provide a high-speed processing for estimating the position and orientation of a target object using distance image data including images of a target object and a non-target object as input data, and to provide a position and orientation measurement technique that reduces memory consumption. And

本発明に係る位置姿勢計測装置は、撮像手段により撮像された対象物体の距離画像を取得する取得手段と、
取得された前記距離画像からエッジを抽出し、前記距離画像を前記エッジによって囲まれた部分領域群に分割する分割手段と、
分割された前記部分領域群から、前記距離画像の距離値に基づいて、前記撮像手段に最も近いと見なされる部分領域を探索し、当該部分領域を物体領域として設定する設定手段と、
設定された前記物体領域の3次元点群に、前記対象物体をモデル化した物体モデルの表面を当て嵌めることによって、前記対象物体の位置及び姿勢を推定する推定手段と、
前記物体モデルと前記物体領域との距離を示す情報と、前記部分領域群のうち前記物体領域として設定されていない部分領域と前記物体モデルとの距離を示す情報と、を比較して、当該比較の結果により、前記物体領域に新たな部分領域を加えるか否かを判定する判定手段と、
前記判定手段により前記物体領域に、新たな部分領域を加えると判定された場合、前記物体領域に、新たな部分領域を追加する更新手段と、
前記更新手段により更新がなされた場合に、前記推定手段に、当該更新後の物体領域の3次元点群を用いて、前記対象物体の位置及び姿勢を推定させる制御手段と
を備えることを特徴とする。
A position and orientation measurement apparatus according to the present invention includes an acquisition unit that acquires a distance image of a target object imaged by an imaging unit;
A dividing unit that extracts an edge from the acquired distance image and divides the distance image into partial region groups surrounded by the edge;
From the divided partial area group, based on the distance value of the distance image, search for a partial area that is considered to be closest to the imaging means, and setting means for setting the partial area as an object area;
Estimating means for estimating the position and orientation of the target object by fitting the surface of the object model obtained by modeling the target object to the set three-dimensional point group of the object region;
Compare the information indicating the distance between the object model and the object region, and the information indicating the distance between the partial region group not set as the object region and the object model in the partial region group. According to the result, a determination means for determining whether to add a new partial area to the object area,
An update unit for adding a new partial region to the object region when the determination unit determines to add a new partial region to the object region;
When the update is performed by the update unit, the estimation unit includes a control unit that estimates the position and orientation of the target object using a three-dimensional point group of the updated object region. To do.

本発明によれば、位置姿勢推定処理の対象とする距離画像データを対象物体の領域に限定することにより、処理速度を向上させ、メモリ消費量を抑制した位置姿勢計測技術の提供が可能になる。   According to the present invention, it is possible to provide a position / orientation measurement technique that improves processing speed and suppresses memory consumption by limiting the distance image data to be subjected to position / orientation estimation processing to the target object region. .

本発明の実施形態にかかる位置姿勢計測装置のハードウェア構成を説明する図。The figure explaining the hardware constitutions of the position and orientation measurement apparatus concerning embodiment of this invention. 第1実施形態にかかる位置姿勢計測方法の処理を説明する図。The figure explaining the process of the position and orientation measurement method concerning 1st Embodiment. 第1実施形態における距離画像の領域分割工程の処理を説明する図。The figure explaining the process of the area | region division | segmentation process of the distance image in 1st Embodiment. 第1実施形態におけるモデル当て嵌め工程の処理を説明する図。The figure explaining the process of the model fitting process in 1st Embodiment. 第1実施形態における物体領域更新工程の処理を説明する図。The figure explaining the process of the object area | region update process in 1st Embodiment. 複数の物体が撮影された距離画像から1つの物体の位置姿勢の推定を例示的に説明する図。The figure explaining the estimation of the position and orientation of one object from the distance image in which the several object was image | photographed illustratively. 第2実施形態にかかる位置姿勢計測方法の処理の流れを説明する図。The figure explaining the flow of a process of the position and orientation measurement method concerning 2nd Embodiment. 第2実施形態にかかる物体領域更新処理の流れを説明する図。The figure explaining the flow of the object area update process concerning 2nd Embodiment.

(第1実施形態)
本実施形態では、山積み状態になっている同一形状の物体群から、ロボットハンドで1個ずつ物体を把持して取り上げるロボットの動作における物体の位置姿勢計測を想定する。そのために、物体群の上方から距離画像を撮影する。撮影した距離画像には複数の物体までの距離値が記録されているが、その中から一番上方にある物体が占める領域を検出しつつ、その物体の位置姿勢を計測する。
(First embodiment)
In the present embodiment, it is assumed that the position and orientation of an object is measured in the operation of a robot that picks up and picks up objects one by one with a robot hand from a group of objects having the same shape in a piled state. For this purpose, a distance image is taken from above the object group. Although the distance values to a plurality of objects are recorded in the captured distance image, the position and orientation of the object are measured while detecting the area occupied by the object at the top of the distance image.

本実施形態における処理の概略は以下のようになる。まず、距離画像を同一の面に属すると推定される部分的な領域に分割する。分割された領域のうち、距離値が最小の点を含む領域、すなわち最上部にある領域から開始して、把持対象とする物体に属すると推定される領域を追加しながら物体の形状モデルを当て嵌め、対象物体の位置姿勢を推定する。このとき、追加する領域はモデルに当て嵌めたときの誤差が小さくなるように選択する。この選択方法により、選択された領域群の中に複数の物体のデータ(非対象物体のデータ)が含まれる危険性を軽減することができる。   The outline of the processing in this embodiment is as follows. First, the distance image is divided into partial regions estimated to belong to the same plane. From the divided areas, start with the area that has the smallest distance value, that is, the area at the top, and apply the shape model of the object while adding the area that is estimated to belong to the object to be grasped. Therefore, the position and orientation of the target object are estimated. At this time, the region to be added is selected so as to reduce the error when fitted to the model. With this selection method, it is possible to reduce the risk that data of a plurality of objects (non-target object data) is included in the selected region group.

以下の説明において、「部分領域」とは、距離画像を同一の面に属すると推定される領域に分割した各々の領域をいう。また、「物体領域」とは、距離画像上で対象物体に属すると推定された領域で、少なくとも1つ以上の部分領域から成る領域をいう。   In the following description, “partial region” refers to each region obtained by dividing a distance image into regions estimated to belong to the same plane. The “object region” is a region estimated to belong to the target object on the distance image, and is a region composed of at least one partial region.

図1の参照により、本発明の実施形態にかかる位置姿勢計測装置のハードウェア構成を説明する。CPU101は、装置全体の動作を制御する。メモリ102は、CPU101の動作に用いるプログラムやデータを格納する。バス103は、各構成モジュール間のデータ転送を司る。バス103と各種装置とはインタフェース104に接続されている。外部記憶装置105はCPU101に読み込むプログラムやデータを格納する。キーボード106およびマウス107はプログラムを起動したり、プログラムの動作を指定したりするための入力装置として機能する。表示部108はプロセスの動作結果を表示するための表示部である。データ入出力部109は外部装置との間でデータの送受信を行なうことが可能である。距離画像計測装置はデータ入出力部109を介して位置姿勢計測装置に接続されている。   A hardware configuration of a position and orientation measurement apparatus according to an embodiment of the present invention will be described with reference to FIG. The CPU 101 controls the operation of the entire apparatus. The memory 102 stores programs and data used for the operation of the CPU 101. The bus 103 manages data transfer between the component modules. The bus 103 and various devices are connected to the interface 104. The external storage device 105 stores programs and data to be read into the CPU 101. The keyboard 106 and the mouse 107 function as input devices for starting a program and designating the operation of the program. The display unit 108 is a display unit for displaying the operation result of the process. The data input / output unit 109 can transmit / receive data to / from an external device. The distance image measurement device is connected to the position / orientation measurement device via the data input / output unit 109.

図2の参照により第1実施形態にかかる位置姿勢計測方法の処理の流れを説明する。本処理は、CPU101の全体的な制御の下に実行される。ステップS201において、処理に用いるデータの初期設定を行う。具体的には、外部記憶装置105から形状モデルデータをメモリ102にロードする。また、距離画像計測装置の撮像部のカメラパラメータ(主点位置、焦点距離、画像歪み係数)、及び距離画像の画素値と距離値の変換比率を、データ入出力部109に接続された不図示の距離画像計測装置から入力する。   A processing flow of the position and orientation measurement method according to the first embodiment will be described with reference to FIG. This process is executed under the overall control of the CPU 101. In step S201, initialization of data used for processing is performed. Specifically, the shape model data is loaded from the external storage device 105 into the memory 102. In addition, the camera parameters (principal point position, focal length, image distortion coefficient) of the imaging unit of the range image measuring device, and the pixel value and range value conversion ratio of the range image are not shown connected to the data input / output unit 109. It inputs from the distance image measuring device.

物体の形状モデルは陰多項式モデルであり、(数1)に示す式で定義される。ここで、x=(x、y、z)が3次元空間中の点の座標、n が陰多項式の次数である。(数1)の式が「0」になる座標(x、y、z)が、陰多項式モデルが表す物体の表面を表す。(数1)の式が「0」より大きい値になる座標が対象物体の外部を表す。(数1)の式が「0」より小さい値になる座標が対象物体の内部を表す。   The shape model of the object is an implicit polynomial model, and is defined by the equation shown in (Expression 1). Here, x = (x, y, z) is the coordinates of a point in the three-dimensional space, and n is the order of the implicit polynomial. The coordinates (x, y, z) at which the expression of (Equation 1) becomes “0” represents the surface of the object represented by the implicit polynomial model. The coordinates at which the expression of (Equation 1) is greater than “0” represent the outside of the target object. The coordinates at which the formula (Equation 1) is smaller than “0” represent the inside of the target object.

Figure 2011179909
Figure 2011179909

この陰多項式モデルは対象物体のCADモデルやレンジファインダ等で計測した3次元点群から、非特許文献4や非特許文献5で開示されている方法を用いてあらかじめ生成しておく。非特許文献4では、陰多項式で表現された3次元モデルを構築する手法が開示されている。陰多項式モデルは対象となる3次元形状のみを適切に表現するように構築することが難しい。この方法では、対象形状の表面上の点、対象形状の表面からある距離cだけ外側の点、対象形状の表面から距離cだけ内側の点の3組の点群と、対応する陰多項式の値の2乗が最小となるよう陰多項式の係数を決定する。非特許文献5では、非特許文献4で開示されている方法にリッジ回帰を用いることで、複雑な形状の陰多項式をより安定して求める方法が開示されている。   This implicit polynomial model is generated in advance using a method disclosed in Non-Patent Document 4 or Non-Patent Document 5 from a three-dimensional point group measured by a CAD model of a target object, a range finder, or the like. Non-Patent Document 4 discloses a method of constructing a three-dimensional model expressed by an implicit polynomial. It is difficult to construct an implicit polynomial model so as to appropriately represent only the target three-dimensional shape. In this method, there are three sets of points: a point on the surface of the target shape, a point that is a certain distance c from the surface of the target shape, a point that is a distance c from the surface of the target shape, and the value of the corresponding implicit polynomial The coefficient of the implicit polynomial is determined so that the square of is minimized. Non-Patent Document 5 discloses a method for more stably obtaining an implicit polynomial having a complicated shape by using ridge regression in the method disclosed in Non-Patent Document 4.

カメラパラメータは、例えば、非特許文献6で開示される方法により事前に校正しておく。ステップS201で入力するカメラパラメータを用いることによって,距離画像の各画素の2次元座標および画素値から、その画素に対応する3次元空間中の点の撮像部座標系における3次元座標を算出することができる。   The camera parameters are calibrated in advance by the method disclosed in Non-Patent Document 6, for example. By using the camera parameters input in step S201, the three-dimensional coordinates in the imaging unit coordinate system of the points in the three-dimensional space corresponding to the pixels are calculated from the two-dimensional coordinates and pixel values of each pixel of the distance image. Can do.

ステップS202では、データ入出力部109に接続された不図示の距離画像計測装置によって計測された距離画像データ(以下、単に「距離画像」ともいう)を取得し、メモリ102に格納する。なお、距離画像を撮影する手段は任意のものを用いることができるが、例えば、光切断法やステレオ法により撮影することが可能である。   In step S <b> 202, distance image data (hereinafter also simply referred to as “distance image”) measured by a distance image measurement device (not shown) connected to the data input / output unit 109 is acquired and stored in the memory 102. Note that any means for photographing a distance image can be used. For example, it is possible to photograph by a light cutting method or a stereo method.

次のステップS203では,距離画像を部分領域に分割する。本ステップの処理内容の詳細は後述する。分割結果は正の整数値が記録された2次元のマップ(以下「部分領域マップ」と呼ぶ)の形式でメモリ102に格納される。部分領域マップの大きさは距離画像の縦・横の画素数に等しい。部分領域マップに記録された正の整数値は同一の部分領域に対しては同一の値であり、異なる部分領域は異なる値を持つ。すなわち、部分領域マップに記録されているのは、距離画像の各画素が属する部分領域の識別番号ということになる。したがって、部分領域マップの値を参照することにより、参照したマップ上の位置に相当する距離画像上の画素がいずれの部分領域に属するかを一意に決定することができる。   In the next step S203, the distance image is divided into partial areas. Details of the processing contents of this step will be described later. The division result is stored in the memory 102 in the form of a two-dimensional map (hereinafter referred to as “partial region map”) in which positive integer values are recorded. The size of the partial area map is equal to the number of vertical and horizontal pixels of the distance image. The positive integer value recorded in the partial area map is the same value for the same partial area, and different partial areas have different values. That is, what is recorded in the partial area map is the identification number of the partial area to which each pixel of the distance image belongs. Therefore, by referring to the value of the partial area map, it is possible to uniquely determine which partial area the pixel on the distance image corresponding to the position on the referenced map belongs.

ステップS204では、先のステップS203で抽出された部分領域群のうち、距離値が最小の画素を共通に含む部分領域を探索し、物体領域(初期物体領域)として設定する。このことにより,最も上方(距離画像撮影装置に近い側)に存在する部分領域が物体領域となる。以降、本ステップで物体領域に設定した部分領域を含む物体を位置姿勢の計測対象とする。物体領域のデータは,その物体領域に属する部分領域の識別番号のリストとしてメモリ102に記録される。本ステップの処理完了後、物体領域データは少なくとも1つの部分領域の識別番号を含むことになる。   In step S204, the partial area group extracted in the previous step S203 is searched for a partial area that commonly includes the pixel having the smallest distance value, and is set as an object area (initial object area). As a result, the partial area existing at the uppermost position (side closer to the distance image capturing apparatus) becomes the object area. Thereafter, an object including the partial area set as the object area in this step is set as a position / orientation measurement target. The data of the object area is recorded in the memory 102 as a list of identification numbers of partial areas belonging to the object area. After the process of this step is completed, the object area data includes the identification number of at least one partial area.

ステップS205では,物体の形状を表す陰多項式モデルを物体領域内の距離計測点群に当て嵌めることによって、計測対象物体の位置姿勢を推定する。本ステップについては、詳細を後述する。   In step S205, the position and orientation of the measurement target object is estimated by fitting an implicit polynomial model representing the shape of the object to the distance measurement point group in the object region. Details of this step will be described later.

ステップS206では、設定済みの物体領域に新たに部分領域を加えるか否かを判定して、判定結果が真なら物体領域を更新する。本ステップの処理の詳細についても後述する。   In step S206, it is determined whether or not a new partial area is added to the set object area. If the determination result is true, the object area is updated. Details of the processing in this step will also be described later.

ステップS207では、先のステップS206において物体領域データが更新されたか否かを判定し、更新があれば(S207−Yes)、ステップS205に処理を戻して、対象物体の位置姿勢を再度推定する。物体領域データの更新が無ければ(S207−No)、物体領域が確定し、かつ対象物体の位置姿勢推定も完了したとして処理全体を終了する。   In step S207, it is determined whether or not the object region data has been updated in the previous step S206. If there is an update (S207-Yes), the process returns to step S205 to estimate the position and orientation of the target object again. If there is no update of the object area data (S207-No), it is determined that the object area is confirmed and the position / orientation estimation of the target object is completed, and the entire process is terminated.

(距離画像の領域分割工程の処理)
距離画像の領域分割工程(ステップS203)の詳細を図3の参照により説明する。本工程は、非特許文献7で開示された方法に基づいて、距離画像を後述するエッジによって囲まれた閉領域ごとに分割する。ここで検出された領域を部分領域とする。
(Distance image region segmentation process)
Details of the distance image region dividing step (step S203) will be described with reference to FIG. In this step, based on the method disclosed in Non-Patent Document 7, the distance image is divided for each closed region surrounded by an edge described later. The detected area is defined as a partial area.

処理を開始すると、ステップS301でエッジを抽出する。ここで、「エッジ」とは距離値が不連続に変化する「ジャンプエッジ」、または物体表面の法線方向が不連続に変化する「クリーズエッジ」である。具体的には、まず距離画像上の直線(「スキャンライン」と呼ぶ)に相当する被写体上の曲線を複数の2次曲線セグメントに分割する。そして、曲線セグメントの各境界点に関して「エッジの強さ」(ジャンプエッジらしさを表す奥行き値の不連続度,クリーズエッジらしさを表すセグメントの法線方向の不連続度)を算出し、エッジの強さが閾値以上の点をエッジとして抽出する。なお、エッジの方向は様々であるので、スキャンラインは距離画像の縦方向・横方向・斜め方向(45°、135°)の4方向をとり、4方向でのエッジの強さが最も高い接続点をエッジとする。以上のようにして、距離画像上のエッジ画素の位置を表したエッジマップを作成し、メモリ102に記録する。   When the process is started, an edge is extracted in step S301. Here, the “edge” is a “jump edge” in which the distance value changes discontinuously or a “crease edge” in which the normal direction of the object surface changes discontinuously. Specifically, first, a curve on the subject corresponding to a straight line (referred to as a “scan line”) on the distance image is divided into a plurality of quadratic curve segments. Then, for each boundary point of the curved segment, calculate the “edge strength” (the discontinuity of the depth value that represents the jump edge, the discontinuity in the normal direction of the segment that represents the crisp edge), and the edge strength. A point whose length is greater than or equal to the threshold is extracted as an edge. Since the direction of the edge varies, the scan line has four directions of vertical, horizontal, and diagonal directions (45 °, 135 °) of the distance image, and the connection having the highest edge strength in the four directions. A point is an edge. As described above, an edge map representing the position of the edge pixel on the distance image is created and recorded in the memory 102.

次に、ステップS302では、先のステップS301で作成したエッジマップをラベリングする。その結果、距離画像は連結したエッジ画素によって区切られる閉領域群に分割される。分割結果は、距離画像と同じサイズのラベル画像としてメモリ102に記録する。なお、ラベルの値は閉領域ごとに一意に設定される。続くステップS303では、先のステップS302で検出された閉領域の中から面積T(「T」は部分領域の面積閾値)以上の領域を選択し、選択された閉領域のラベル値のリスト(以下、このリストを「領域リスト」と呼ぶ)としてメモリ102に記録する。   Next, in step S302, the edge map created in the previous step S301 is labeled. As a result, the distance image is divided into a closed region group delimited by the connected edge pixels. The division result is recorded in the memory 102 as a label image having the same size as the distance image. The label value is uniquely set for each closed region. In the subsequent step S303, a region of area T (“T” is an area threshold of the partial region) or more is selected from the closed regions detected in the previous step S302, and a list of label values of the selected closed region (hereinafter referred to as “closed region”). This list is called “area list”) and recorded in the memory 102.

ステップS304では、領域リストに登録された閉領域の数が「0」であるか否かを判定する。閉領域の数が「0」ならば(S304−Yes)、処理はステップS312に進められる。一方,閉領域の数が「0」でなければ(S304−No)、処理はステップS305に進められる。ステップS305では、領域リストに登録された閉領域群から未処理の閉領域Rを削除し、続いて閉領域Rに3次元平面または3次元曲面を当て嵌める(ステップS306)。   In step S304, it is determined whether or not the number of closed areas registered in the area list is “0”. If the number of closed regions is “0” (S304—Yes), the process proceeds to step S312. On the other hand, if the number of closed regions is not “0” (S304—No), the process proceeds to step S305. In step S305, the unprocessed closed region R is deleted from the closed region group registered in the region list, and then a three-dimensional plane or a three-dimensional curved surface is fitted to the closed region R (step S306).

ステップS307では、ステップS306にて平面または曲面を当て嵌めた際の当て嵌め誤差が所定の閾値未満であるか否かを判定する。閾値未満であれば(S307−Yes)、閉領域Rには複数の面が含まれないと推定されるので、部分領域として登録し(S308)、ステップS312に処理を進める。一方、閾値以上と判定されれば(S307−No)、処理はステップS309に進められる。なお、「当て嵌め誤差」とは、閉領域Rの各画素に相当する3次元点と、当て嵌めた平面または曲面上の距離が最小となる最近傍点との間の距離の2乗和を領域Rの全画素について平均をとったものである。ステップS307において、当て嵌め誤差が閾値以上と判定された場合、閉領域Rに複数の面が含まれる可能性がある。これは、距離画像に含まれるノイズなどの影響により、閉領域内の複数の面の境界に存在するエッジが途切れているためと推定される。このように途切れたエッジを接続して、複数の面を区分するため、ステップS309では、エッジマップに膨張処理を施す。続いて、ステップS310でエッジマップをラベリングし、ステップS311にて閉領域の候補を抽出する。ステップS310およびS311の処理内容は,それぞれステップS302およびS303と同様である。   In step S307, it is determined whether or not the fitting error when fitting a flat surface or curved surface in step S306 is less than a predetermined threshold value. If it is less than the threshold value (S307-Yes), it is estimated that the closed region R does not include a plurality of surfaces, so it is registered as a partial region (S308), and the process proceeds to step S312. On the other hand, if it determines with more than a threshold value (S307-No), a process will be advanced to step S309. The “fitting error” refers to the sum of squares of the distances between the three-dimensional points corresponding to the respective pixels in the closed region R and the nearest point at which the distance on the fitted plane or curved surface is the smallest. This is an average of all R pixels. If it is determined in step S307 that the fitting error is greater than or equal to the threshold value, the closed region R may include a plurality of surfaces. This is presumed to be because the edges existing at the boundaries of a plurality of surfaces in the closed region are interrupted due to the influence of noise or the like included in the distance image. In order to connect a plurality of surfaces by connecting the broken edges in this way, in step S309, the edge map is subjected to expansion processing. In step S310, the edge map is labeled, and in step S311, closed region candidates are extracted. The processing contents of steps S310 and S311 are the same as those of steps S302 and S303, respectively.

一方、ステップS307で当て嵌め誤差が閾値未満と判定された場合、閉領域Rには単一の面のみ含まれると推定される。そこで、ステップS308では、閉領域Rを部分領域として登録する。最後に、ステップS312にて、エッジ部の画素など閉領域として未登録の画素を周囲の閉領域に統合する。このステップでも平面あるいは曲面を当て嵌めて、当て嵌め誤差が閾値未満なら統合する。   On the other hand, when it is determined in step S307 that the fitting error is less than the threshold value, it is estimated that the closed region R includes only a single surface. Therefore, in step S308, the closed region R is registered as a partial region. Finally, in step S312, unregistered pixels such as edge pixels are integrated into the surrounding closed areas. Even in this step, a flat surface or a curved surface is fitted, and if the fitting error is less than the threshold value, they are integrated.

(モデル当て嵌め工程の処理)
次に、モデル当て嵌め工程(ステップS205)の詳細を図4の参照により説明する。本工程では、計測対象物体の位置及び姿勢の概略値を反復演算により繰り返し補正することにより位置及び姿勢を算出する。ステップS401では、データ入出力部109に接続された不図示の距離画像計測装置に対する対象物体の位置及び姿勢の概略値を推定する。この処理は物体領域の距離画像データを入力として、特開平01−009307号公報に開示される物体認識的方法により実現することが可能である。ただし、対象物体の位置姿勢の概略値を求める方法は、これに限るものではない。例えば、モデル当て嵌め工程を一度以上経過していれば、その工程で算出した対象物体の位置姿勢を表す値をメモリ102に記憶しておき、その値を次回のモデル当て嵌め工程において対象物体の概略位置姿勢の値として使うことが可能である。あるいは、過去の計測値から対象物体の運動の速度や角速度を線形フィルタやカルマンフィルタなど時系列フィルタリング処理により推定し、推定された速度や角速度によって現在の時刻における対象物体の位置及び姿勢を予測したものを用いてもよい。また、他のセンサによる物体の位置及び姿勢の計測が可能である場合には、センサによる出力値を位置及び姿勢の概略値として用いてもよい。センサとしては、例えば、トランスミッタが発する磁界を物体に装着するレシーバで検出することにより位置及び姿勢を計測する磁気式センサであってもよい。また、対象物体上に配置されたマーカをシーンに固定されたカメラによって撮影することにより位置及び姿勢を計測する光学式センサであってもよい。その他、6自由度の位置及び姿勢を計測するセンサであればいかなるセンサであって使用することが可能である。また、対象物体の置かれている、おおよその位置や姿勢が予めわかっている場合には、その値を概略値として用いてもよい。
(Process of model fitting process)
Next, details of the model fitting step (step S205) will be described with reference to FIG. In this step, the position and orientation are calculated by repeatedly correcting the approximate values of the position and orientation of the measurement object by iterative calculation. In step S401, approximate values of the position and orientation of the target object with respect to a distance image measurement device (not shown) connected to the data input / output unit 109 are estimated. This processing can be realized by an object recognition method disclosed in Japanese Patent Application Laid-Open No. 01-009307 using distance image data of the object region as an input. However, the method for obtaining the approximate value of the position and orientation of the target object is not limited to this. For example, if the model fitting process has passed once or more, a value representing the position and orientation of the target object calculated in the process is stored in the memory 102, and the value is stored in the next model fitting process. It can be used as a value of the approximate position and orientation. Alternatively, the speed and angular velocity of the target object are estimated from past measurement values by time-series filtering such as a linear filter or Kalman filter, and the position and orientation of the target object at the current time are predicted based on the estimated speed and angular velocity. May be used. In addition, when the position and orientation of an object can be measured by other sensors, output values from the sensors may be used as approximate values of the position and orientation. The sensor may be, for example, a magnetic sensor that measures the position and orientation by detecting a magnetic field generated by the transmitter with a receiver attached to the object. Moreover, the optical sensor which measures a position and attitude | position by image | photographing the marker arrange | positioned on a target object with the camera fixed to the scene may be sufficient. In addition, any sensor can be used as long as it measures the position and orientation with six degrees of freedom. In addition, when the approximate position or posture where the target object is placed is known in advance, the value may be used as an approximate value.

ステップS402では、対象物体の位置及び姿勢の概略値を用いて、物体領域内の各画素に対応する3次元空間中の座標を距離画像計測装置の撮像部座標系から物体モデルの座標系に変換する。なお、以下の説明では、本ステップで座標変換の結果、座標を算出した点を「物体領域の3次元点」と呼ぶことにする。   In step S402, using the approximate values of the position and orientation of the target object, the coordinates in the three-dimensional space corresponding to each pixel in the object region are converted from the imaging unit coordinate system of the distance image measurement device to the coordinate system of the object model. To do. In the following description, the point whose coordinates are calculated as a result of the coordinate conversion in this step will be referred to as a “three-dimensional point of the object region”.

ステップS403では、陰多項式モデルから構築される距離場と物体領域の3次元点群の各座標に基づいて、3次元点群と対象物体をモデル化した物体モデルの表面との距離の総和を最小にする位置および姿勢を求める。具体的には、(数2)に示すエネルギー関数が最小化されるように位置及び姿勢を最適化する。   In step S403, based on the distance field constructed from the implicit polynomial model and the coordinates of the three-dimensional point group of the object region, the sum of the distances between the three-dimensional point group and the surface of the object model modeling the target object is minimized. Find the position and posture to be. Specifically, the position and orientation are optimized so that the energy function shown in (Expression 2) is minimized.

Figure 2011179909
Figure 2011179909

ここでΩは物体領域の3次元点群であり、x∈Ωである。また,distは陰多項式モデルから計算される距離であり、モデル表面上では「0」、内部では負の値、外部では正の値をとり、(数3)のように定義される。   Here, Ω is a three-dimensional point group of the object region, and x∈Ω. Further, dist is a distance calculated from an implicit polynomial model, and is defined as (Equation 3) having “0” on the model surface, a negative value inside, and a positive value outside.

Figure 2011179909
Figure 2011179909

位置及び姿勢の最適化は具体的には、最急降下法に基づき(数4)の式による勾配から3次元点群座標Xk+1を求める(数6)。ここで、Xは、X∈RN×3であり、N個の物体領域の3次元点の座標を表す。 Specifically, the optimization of the position and orientation is based on the steepest descent method to obtain the three-dimensional point group coordinate X k + 1 from the gradient according to the equation (Equation 4) (Equation 6). Here, X is X∈R N × 3 and represents the coordinates of the three-dimensional points of the N object regions.

Figure 2011179909
Figure 2011179909

元の3次元点群座標Xkと、求められたXk+1とから(数7)に示す行列を作成し、A=USVTのように特異値分解を行い、位置及び姿勢の概略値を更新する。ここでXはXの平均を示し、tは対象物体の位置、Rは姿勢を表す行列である。 A matrix shown in (Expression 7) is created from the original three-dimensional point group coordinates X k and the obtained X k + 1, and singular value decomposition is performed as A = USV T , and approximate values of position and orientation are obtained. Update. Here, X represents the average of X, t is the position of the target object, and R is a matrix representing the posture.

Figure 2011179909
Figure 2011179909

最後にステップS404では、収束判定を行い、収束していれば(S404−Yes)、モデル当て嵌め処理全体を終了し、収束していなければステップS402に処理を戻し、同様の処理を繰り返す。収束判定では、(数4)の式の値がほぼ0である場合や、位置及び姿勢に関する更新前後での誤差ベクトルの二乗和の差がほぼ0である場合に収束したと判定する。   Finally, in step S404, a convergence determination is made. If the convergence has been achieved (S404-Yes), the entire model fitting process is terminated. If not converged, the process returns to step S402, and the same process is repeated. In the convergence determination, it is determined that the convergence has occurred when the value of the equation (Equation 4) is approximately 0, or when the difference between the square sums of the error vectors before and after the update regarding the position and orientation is approximately 0.

なお、上記の説明ではエネルギー最適化処理に最急降下法を用いているが、これに限るものではない。より収束の速いGauss-Newton法やLevenberg-Marquardt法によって収束判定を行ってもよい。また、共役勾配法など、他の非線型最適化計算手法を収束判定に用いてもよい。   In the above description, the steepest descent method is used for the energy optimization process, but the present invention is not limited to this. Convergence determination may be performed by the Gauss-Newton method or the Levenberg-Marquardt method, which have faster convergence. In addition, other nonlinear optimization calculation methods such as a conjugate gradient method may be used for convergence determination.

(物体領域更新工程の処理)
物体領域更新工程(ステップS206)の詳細を図5の参照により説明する。まず、ステップS501では、物体領域の3次元点群について(数10)で定義される物体の陰多項式モデルとの平均距離を算出する。ただし、ここではNは物体領域の3次元点の数であり、Φは物体領域の3次元点群である。
(Process of object area update process)
Details of the object region updating step (step S206) will be described with reference to FIG. First, in step S501, an average distance from the implicit polynomial model of the object defined by (Equation 10) is calculated for the three-dimensional point group of the object region. Here, N is the number of three-dimensional points in the object region, and Φ is a three-dimensional point group in the object region.

Figure 2011179909
Figure 2011179909

ただし、Nは算出の対象とする距離画像上の領域内の3次元点数で、eiiは以下の(数11)により求められる。 However, N is the number of three-dimensional points in the area on the distance image to be calculated, and e ii is obtained by the following (Equation 11).

Figure 2011179909
Figure 2011179909

ここでΦは算出の対象とする距離画像上の領域内の3次元点群である。   Here, Φ is a three-dimensional point group in the region on the distance image to be calculated.

次に、ステップS502では、物体領域に含まれない部分領域の中から、物体領域に追加する部分領域の候補Cを選ぶ。具体的には、物体領域及び物体領域に含まれない各部分領域のそれぞれに属する画素群に対応する3次元点群の重心位置を算出する。そして、物体領域に関する重心位置と各部分領域に関する重心位置との距離値を算出し、距離値の小さい順にn個の部分領域を物体領域に追加する部分領域の候補Cとして選択する。なお、nは1以上の正の整数である。   Next, in step S502, a partial area candidate C to be added to the object area is selected from the partial areas not included in the object area. Specifically, the barycentric position of the three-dimensional point group corresponding to the pixel group belonging to each of the object region and each partial region not included in the object region is calculated. Then, the distance value between the gravity center position relating to the object area and the gravity center position relating to each partial area is calculated, and n partial areas are selected as partial area candidates C to be added to the object area in order of increasing distance value. Note that n is a positive integer of 1 or more.

ステップS503では、候補Cの中から未処理の部分領域を1つ選択する。ここで選択した部分領域をaとする。続くステップS504では、部分領域aを物体領域に追加するか否か判定するための評価値を算出する。具体的には、部分領域aに関して、(数10)で表される物体を表す陰多項式モデルと部分領域との平均距離を算出する。ただし、ここで、Nは部分領域a内の3次元点の数、Φは部分領域a内の3次元点群である。   In step S503, one unprocessed partial area is selected from the candidates C. The partial area selected here is represented by a. In the subsequent step S504, an evaluation value for determining whether or not to add the partial area a to the object area is calculated. Specifically, for the partial area a, an average distance between the implicit polynomial model representing the object represented by (Equation 10) and the partial area is calculated. Here, N is the number of three-dimensional points in the partial region a, and Φ is a three-dimensional point group in the partial region a.

ステップS505では、ステップS501で求めた平均距離に所定比率(>1.0)をかけたものと、ステップS504で求めた平均距離とを比較する。後者が前者未満であれば(S505−Yes)、ステップS506に処理は進められる。一方、後者が前者以上と判定されれば(S505−No)、処理はステップS507に進められる。   In step S505, the average distance obtained in step S501 multiplied by a predetermined ratio (> 1.0) is compared with the average distance obtained in step S504. If the latter is less than the former (S505-Yes), the process proceeds to step S506. On the other hand, if it is determined that the latter is greater than or equal to the former (S505-No), the process proceeds to step S507.

ステップS506では、部分領域aを物体領域に追加する。すなわち、物体領域に含まれる部分領域群を表す識別番号のリストに、部分領域aの識別番号を加える。ステップS507では、追加する部分領域候補Cに含まれる部分領域すべてを処理したか否か判定し、処理済であれば(S507−Yes)、物体領域更新処理を終了する。一方、未処理の部分領域があれば(S507−No)、ステップS503に処理は戻され、同様の処理が繰り返される。このようにして、すべての追加候補の部分領域に関して物体領域に追加するか否かを判定する処理を繰り返して、物体領域を更新する。   In step S506, the partial area a is added to the object area. That is, the identification number of the partial area a is added to the list of identification numbers representing the partial area group included in the object area. In step S507, it is determined whether or not all the partial areas included in the partial area candidate C to be added have been processed. If the processing has been completed (Yes in S507), the object area update process ends. On the other hand, if there is an unprocessed partial area (S507-No), the process returns to step S503, and the same process is repeated. In this manner, the object region is updated by repeating the process of determining whether or not to add all the additional candidate partial regions to the object region.

図6の参照により、複数の物体が撮影された距離画像から1つの物体の位置姿勢の推定を例示的に説明する。ただし、物体領域に追加する物体領域の候補の数nは1とする。図6(a)は距離画像を撮影する対象物体の像であり、同一形状の物体が2つ含まれている。これらの物体を撮影した距離画像を部分領域に分割した様子が図6(b)である。異なる領域を区別して表示するため、領域ごとに塗りのパターンが異なるように表してある。図6(b)に表示した番号は各部分領域に設定された識別番号である。このうち、(6)番は背景領域に相当する。図6(c)から(e)は物体領域を更新する各ステップを表しており、ハッチングを付した部分が物体領域に相当する。図6(c)は、初期の物体領域(ステップS204の終了後の状態)が示されており、距離画像撮影装置から見て最も手前側の測定点を含む部分領域(1)が物体領域として抽出されている。次に物体領域の更新工程(ステップS206)を経ると、物体領域は図6(d)に示すようになり、初期の物体領域に部分領域(2)が加えられる。同様に、2度目の物体領域の更新工程(ステップS206)を経ると、図6(e)のように部分領域(3)がさらに加えられ、物体領域が3つの部分領域(部分領域(1)〜(3))によって構成される。図6(e)の状態から、さらに物体領域の更新工程(ステップS206)に進むと、部分領域(4)および(5)を物体領域に加えるか否かを判定する。しかし、部分領域(4)および(5)は部分領域(1)から部分領域(3)が属する物体とは異なる物体上の領域なので、ステップS504で算出するモデルとの平均距離が比較的大きな値をとる。そのため、部分領域(4)および(5)は物体領域に加えないように判定される。以上の様な処理経過を経て、最終的には部分領域(1)から部分領域(3)を含む物体が距離画像から抽出され、その位置姿勢を求めることができる。   With reference to FIG. 6, estimation of the position and orientation of one object from a distance image obtained by shooting a plurality of objects will be described as an example. However, the number n of object region candidates to be added to the object region is 1. FIG. 6A shows an image of a target object for photographing a distance image, and includes two objects having the same shape. FIG. 6B shows a state in which the distance image obtained by photographing these objects is divided into partial areas. In order to distinguish and display different areas, the paint pattern is shown to be different for each area. The numbers displayed in FIG. 6B are identification numbers set for each partial area. Of these, number (6) corresponds to the background area. FIGS. 6C to 6E show each step of updating the object region, and the hatched portion corresponds to the object region. FIG. 6C shows the initial object region (the state after the end of step S204), and the partial region (1) including the measurement point closest to the distance image capturing device is the object region. Has been extracted. Next, when the object region update process (step S206) is performed, the object region becomes as shown in FIG. 6D, and the partial region (2) is added to the initial object region. Similarly, after the second object region updating step (step S206), a partial region (3) is further added as shown in FIG. 6E, and the object region is divided into three partial regions (partial region (1)). To (3)). When the process further proceeds from the state of FIG. 6E to the object region update step (step S206), it is determined whether or not the partial regions (4) and (5) are added to the object region. However, since the partial areas (4) and (5) are areas on an object different from the object to which the partial areas (1) to (3) belong, the average distance from the model calculated in step S504 is a relatively large value. Take. Therefore, it is determined that the partial areas (4) and (5) are not added to the object area. Through the above process, an object including the partial area (1) to the partial area (3) is finally extracted from the distance image, and its position and orientation can be obtained.

本実施形態によれば、位置姿勢推定処理の対象とする距離画像データを対象物体の領域に限定することにより、処理速度を向上させ、メモリ消費量を抑制することができる。   According to the present embodiment, by limiting the distance image data to be subjected to the position / orientation estimation process to the area of the target object, the processing speed can be improved and the memory consumption can be suppressed.

(変形例1−1−1)
本発明の実施形態は上記に限らず様々な変形例が存在する。第1実施形態ではステップS206において、物体領域内の3次元点群の重心近傍に重心を持つ部分領域を、物体領域に追加する領域の候補として選択している。しかし、追加する部分領域候補の選択方法はこれに限るものではない。例えば、ステップS204で設定する初期物体領域内の3次元点群の重心近傍に重心を持つ部分領域を選択してもよい。あるいは、3次元座標の重心ではなく、距離画像上における2次元座標の重心が近い部分領域を選択してもよい。
(Modification 1-1-1)
The embodiment of the present invention is not limited to the above, and various modifications exist. In the first embodiment, in step S206, a partial area having a centroid near the centroid of the three-dimensional point group in the object area is selected as a candidate for an area to be added to the object area. However, the method of selecting the partial region candidate to be added is not limited to this. For example, a partial region having a centroid in the vicinity of the centroid of the three-dimensional point group in the initial object region set in step S204 may be selected. Or you may select the partial area | region where the gravity center of the two-dimensional coordinate on a distance image is close instead of the gravity center of a three-dimensional coordinate.

(変形例1−1−2)
第1実施形態では、物体領域に近接する度合いが高い部分領域を物体領域に追加する候補として選定している。しかし、追加候補の部分領域の選定方法はこれに限らない。例えば、面積、すなわち領域に属する画素数が大きい部分領域を候補として選択してもよい。これは、面積の大きい領域ほど距離画像の計測ノイズなどのランダムな誤差の影響を受けにくいため、形状モデルとの距離の算出や物体領域更新後のモデル当て嵌めを高精度に行うことができるからである。
(Modification 1-1-2)
In the first embodiment, a partial region having a high degree of proximity to the object region is selected as a candidate to be added to the object region. However, the method for selecting a partial region as an additional candidate is not limited to this. For example, a partial region having a large area, that is, a large number of pixels belonging to the region may be selected as a candidate. This is because areas with a larger area are less susceptible to random errors such as distance image measurement noise, so it is possible to calculate the distance from the shape model and fit the model after updating the object area with high accuracy. It is.

(変形例1−1−3)
他の部分領域の候補選定方法としては、例えば、距離画像上で対象物体が占める領域の情報を利用するものが挙げられる。具体的には、モデル当て嵌め工程にて算出された対象物体の位置及び姿勢に基づいて、形状モデルを距離画像上に投影して、投影像が存在する領域を対象物体が占める領域とする。そして、各部分領域と対象物体が占める領域との重複率(すなわち両領域が重複する画素の数を各部分領域に属する画素の数で割った値)が高い順に,物体領域に追加する部分領域の候補として選定することも可能である。
(Modification 1-1-3)
As another partial region candidate selection method, for example, a method using information on a region occupied by a target object on a distance image can be cited. Specifically, based on the position and orientation of the target object calculated in the model fitting process, the shape model is projected on the distance image, and the area where the projection image exists is set as the area occupied by the target object. The partial areas to be added to the object area in descending order of the overlapping ratio between the partial areas and the area occupied by the target object (that is, the value obtained by dividing the number of pixels in which both areas overlap by the number of pixels belonging to each partial area). It is also possible to select as a candidate.

(変形例1−1−4)
さらには、追加候補の部分領域を選定する基準は1つである必然性はなく、複数の基準を組み合わせてもよい。例えば、変形例1−1から変形例1−3で説明した物体領域への近接度、面積、距離画像上の対象物体領域との重複率の3種類の評価値に重みをかけて加算した値に基づいて候補部分領域を選定することも可能である。
(Modification 1-1-4)
Furthermore, the criterion for selecting a partial region as an additional candidate is not necessarily one, and a plurality of criteria may be combined. For example, a value obtained by weighting and adding three types of evaluation values of the proximity to the object region, the area, and the overlapping rate with the target object region on the distance image described in Modification 1-1 to Modification 1-3 It is also possible to select candidate partial regions based on

(変形例1−2−1)
物体領域の更新工程(図5)では、物体領域と部分領域に関する形状モデルとの平均距離の大小を比較することによって部分領域を物体領域に追加する可否を判定している。しかし、追加の可否の判定方法はこれに限らず、例えば、平均距離が小さい部分領域が優先的に追加されれば、他の方法を適用することができる。例えば、追加候補の部分領域群のうち、平均距離が最小の部分領域を物体領域に追加してもよい。
(Modification 1-2-1)
In the update process of the object region (FIG. 5), it is determined whether or not the partial region can be added to the object region by comparing the average distance between the object region and the shape model related to the partial region. However, the method for determining whether or not to add is not limited to this. For example, if a partial region with a small average distance is preferentially added, another method can be applied. For example, a partial area having a minimum average distance may be added to the object area in the partial area group of addition candidates.

(変形例1−2−2)
部分領域の追加可否を判定する基準は1つである必然性はなく、複数の基準を組み合わせてもよい。例えば、変形例1−1から変形例1−3で説明した物体領域への近接度、面積、距離画像上の対象物体領域との重複率、及び形状モデルとの平均距離の4種類の評価値に重みをかけて加算した値に基づいて追加可否を判定することも可能である。
(Modification 1-2-2)
There is not necessarily one criterion for determining whether or not a partial area can be added, and a plurality of criteria may be combined. For example, four types of evaluation values of the proximity to the object region, the area, the overlapping rate with the target object region on the distance image, and the average distance to the shape model described in Modification 1-1 to Modification 1-3 It is also possible to determine whether or not addition is possible based on a value obtained by adding a weight to.

(変形例1−2−3)
また、部分領域は1つずつ追加する必然性はなく、複数の部分領域を同時に物体領域に追加してもよい。その場合、追加する部分領域の候補群から、評価値(例えば部分領域の3次元点群とモデルとの平均距離)が上位複数個の部分領域を物体領域に追加すべく選択することも可能である。
(Modification 1-2-3)
Further, there is no necessity to add partial areas one by one, and a plurality of partial areas may be added to the object area at the same time. In that case, it is also possible to select from a candidate group of partial areas to be added in order to add a plurality of partial areas whose evaluation values (for example, the average distance between the three-dimensional point cloud of the partial area and the model) to the object area. is there.

(変形例1−3−1)
第1実施形態では、距離画像を部分領域に分割するため、非特許文献7の方法を用いた。しかし、部分領域の生成方法はこれに限るものでなく,例えば,非特許文献8に基づく方法でもよい。この方法は、所定の評価基準に基づいて距離画像の部分領域を近似するパラメトリックな面の種類(種類ごとに面の数式表現が異なる)を選択し、選択された種類の面で距離画像の表す3次元形状を近似するものである。本手法によれば、近似誤差の少ない領域を一続きの面として抽出することができる。
(Modification 1-3-1)
In the first embodiment, the method of Non-Patent Document 7 is used to divide the distance image into partial regions. However, the method for generating the partial region is not limited to this, and may be a method based on Non-Patent Document 8, for example. This method selects a parametric surface type that approximates a partial area of a distance image based on a predetermined evaluation criterion (a mathematical expression of the surface is different for each type), and represents the distance image on the selected type of surface. It approximates a three-dimensional shape. According to this method, a region with a small approximation error can be extracted as a continuous surface.

(変形例1−3−2)
距離データに応じて距離画像を分割するのではなく、所定の分割方法で分割してもよい。例えば、1画素ごとに分割してもよいし、あるいは距離画像の縦横をそれぞれ10画素ごとに格子状に区切るなどしてもよい。このように所定の分割方法を用いる場合、距離画像の領域分割工程(ステップS203)を省略することが可能になる。
(Modification 1-3-2)
Instead of dividing the distance image according to the distance data, it may be divided by a predetermined dividing method. For example, it may be divided for each pixel, or the distance image may be divided into a grid pattern for every 10 pixels. When the predetermined dividing method is used as described above, it is possible to omit the area dividing step (step S203) of the distance image.

(変形例1−4−1)
第1実施形態では、初期の物体領域に含まれる部分領域として、最も距離値が小さい画素を含む部分領域を選択している。しかし、初期物体領域を設定する方法はこれに限るものではなく、撮像装置に最も近いと見なされる、最も上方に配置されている物体上の領域である可能性のある部分領域を選択すればよい。例えば、距離値の平均が最小の部分領域を選択してもよいし、距離値が小さい順に上位m個(mは2以上の正の整数)の画素の平均距離値が最小の部分領域を選択することも可能である。
(Modification 1-4-1)
In the first embodiment, the partial area including the pixel having the smallest distance value is selected as the partial area included in the initial object area. However, the method of setting the initial object area is not limited to this, and it is only necessary to select a partial area that is considered to be closest to the imaging device and may be an area on the object that is arranged at the uppermost position. . For example, the partial area with the smallest average distance value may be selected, or the partial area with the smallest average distance value of the top m pixels (m is a positive integer of 2 or more) in ascending order of the distance value. It is also possible to do.

(変形例1−4−2)
初期の物体領域として距離値が小さい部分領域を優先するのは、物体を上方から撮像し、上方からロボットハンドで把持することを想定しているためである。撮像条件が異なれば、その撮像条件に適合した初期物体領域の設定方法を採用することが可能である。例えば、特定色の物体の位置姿勢を推定するのであれば、距離画像のほかに、異なる第2の撮像装置を用いてカラー画像を撮像する。そして、当該の特定色に最も色が合致するカラー画像上の領域に対応する距離画像上の領域を探索し、その距離画像上の領域を含む部分領域を初期物体領域とすればよい。
(Modification 1-4-2)
The reason why the partial area with a small distance value is given priority as the initial object area is because it is assumed that the object is imaged from above and is gripped by the robot hand from above. If the imaging conditions are different, it is possible to adopt an initial object region setting method suitable for the imaging conditions. For example, if the position and orientation of an object of a specific color is estimated, a color image is captured using a different second imaging device in addition to the distance image. Then, an area on the distance image corresponding to the area on the color image that most closely matches the specific color is searched, and a partial area including the area on the distance image may be set as the initial object area.

(変形例1−4−3)
対象物体の概略の位置及び姿勢が予め分かっていれば、各部分領域について3次元点群の座標と(数10)で表される平均距離を算出し、平均距離が最小の部分領域を初期物体領域としてもよい。
(Modification 1-4-3)
If the approximate position and orientation of the target object are known in advance, the coordinates of the three-dimensional point cloud and the average distance represented by (Equation 10) are calculated for each partial area, and the partial area with the minimum average distance is determined as the initial object. It may be an area.

(変形例1−4−4)
変形1−4―3と同様に対象物体の概略の位置及び姿勢が予め分かっていれば、距離画像上で対象物体が占める領域の情報を利用して初期物体領域を決定することができる。具体的には、対象物体の位置及び姿勢の概略値に基づいて、形状モデルを距離画像上に投影して、投影像が存在する領域を対象物体が占める領域とする。そして,各部分領域と対象物体が占める領域との重複率(両領域が重複する画素の数を各部分領域に属する画素の数で割った値)が最も高い部分領域を初期の物体領域として選択することも可能である。
(Modification 1-4-4)
If the approximate position and orientation of the target object are known in advance as in Modification 1-4-3, the initial object region can be determined using information on the region occupied by the target object on the distance image. Specifically, based on the approximate values of the position and orientation of the target object, the shape model is projected on the distance image, and the area where the projection image exists is set as the area occupied by the target object. Then, select the partial area with the highest overlap ratio between each partial area and the area occupied by the target object (the number of pixels that overlap both areas divided by the number of pixels belonging to each partial area) as the initial object area. It is also possible to do.

(変形例1−4−5)
また、初期の物体領域に含まれる部分領域の数は1つに限るものではなく、複数でもよい。
(Modification 1-4-5)
Further, the number of partial areas included in the initial object area is not limited to one, and may be plural.

例えば、距離値の平均が小さい順(変形例1−4−1)、特定色との合致度が高い順(変形例1−4−2)に所定の数の部分領域を物体領域として選択することも可能である。また、平均距離が小さい順(変形例1−4―3)、重複率の高い順(変形例1−4−4)に所定の数の部分領域を物体領域として選択することも可能である。   For example, a predetermined number of partial areas are selected as object areas in order of increasing average distance value (Modification 1-4-1) and in descending order of matching with a specific color (Modification 1-4-2). It is also possible. It is also possible to select a predetermined number of partial areas as the object area in the order of decreasing average distance (Modification 1-4-3) and in order of increasing overlap ratio (Modification 1-4-4-).

(変形例1−5)
第1実施形態では(数10)で定義される陰多項式モデルと3次元点群との平均距離を、部分領域を追加するか否か判定するなどの用途で評価値として用いている。しかしながら、判定基準とする評価値はこれに限るものではなく、物体のモデルと計測点群との乖離の度合いを示す値であればよい。例えば、平均距離に替えて、(数12),(数13)で表される評価値を用いてもよい.
(Modification 1-5)
In the first embodiment, the average distance between the implicit polynomial model defined by (Equation 10) and the three-dimensional point group is used as an evaluation value for purposes such as determining whether to add a partial region. However, the evaluation value used as the determination criterion is not limited to this, and may be a value indicating the degree of deviation between the object model and the measurement point group. For example, instead of the average distance, evaluation values represented by (Equation 12) and (Equation 13) may be used.

Figure 2011179909
Figure 2011179909

ただし、Nは評価値の算出対象とする距離画像上の領域内の3次元点の数であり、Φは当該領域内の3次元点群である。   Here, N is the number of three-dimensional points in the area on the distance image to be evaluated, and Φ is a three-dimensional point group in the area.

Figure 2011179909
Figure 2011179909

ただし、Nは評価値の算出対象とする距離画像上の領域内の3次元点の数であり、Φは当該領域内の3次元点群である。これらの評価値DRMS(数12)、Daverage(数13)は形状モデルと3次元点群との面の位置の一致度合いを表すものである。 Here, N is the number of three-dimensional points in the area on the distance image to be evaluated, and Φ is a three-dimensional point group in the area. These evaluation values D RMS ( Equation 12) and D average ( Equation 13) represent the degree of coincidence of the surface positions of the shape model and the three-dimensional point group.

以上の変形例によっても、位置姿勢推定処理の対象とする距離画像データを対象物体の領域に限定することにより、処理速度を向上させ、メモリ消費量を抑制することができる。   Also according to the above modification, by limiting the distance image data to be subjected to the position / orientation estimation process to the area of the target object, the processing speed can be improved and the memory consumption can be suppressed.

(第2実施形態)
第1実施形態では、ある部分領域を物体領域に追加する前に、その部分領域が対象物体に相当する領域か否かを判定し、判定結果が真ならばその部分領域を以後一貫して物体領域の一部として処理する構成を説明した。本実施形態では、物体領域に追加済みのある部分領域が非対象物体に相当する部分領域であるか否か判定し、判定結果が真ならば、その部分領域を物体領域から削除する構成を説明する。
(Second Embodiment)
In the first embodiment, before adding a partial area to the object area, it is determined whether or not the partial area is an area corresponding to the target object. The configuration for processing as part of the area has been described. In this embodiment, a configuration is described in which it is determined whether or not a partial area that has been added to the object area is a partial area corresponding to a non-target object, and if the determination result is true, the partial area is deleted from the object area. To do.

図7の参照により、第2実施形態にかかる位置姿勢計測方法の処理の流れを説明する。本処理は、CPU101の全体的な制御の下に実行される。ステップS701からS704の処理は,それぞれステップS201からステップS204と同じ内容である。   With reference to FIG. 7, the process flow of the position and orientation measurement method according to the second embodiment will be described. This process is executed under the overall control of the CPU 101. The processing from step S701 to S704 is the same as that from step S201 to step S204, respectively.

ステップS705はステップS205と同様であるが、物体の位置姿勢を算出した段階で、(数10)で表される計測点と物体モデルとの平均距離を物体領域に関して算出し、メモリ102に格納する。この際、前回の物体モデル当て嵌め処理において算出され、メモリ102に格納されていた平均距離データを上書きせずに、メモリ102内の別の記憶領域にコピーしておく。   Step S705 is the same as step S205, but at the stage of calculating the position and orientation of the object, the average distance between the measurement point represented by (Equation 10) and the object model is calculated with respect to the object region and stored in the memory 102. . At this time, the average distance data calculated in the previous object model fitting process and stored in the memory 102 is copied to another storage area in the memory 102 without being overwritten.

ステップS706では、物体領域に含まれる部分領域を更新する。本ステップの処理においては、物体領域に部分領域が追加されるか、あるいは追加済みの部分領域が物体領域から除外される。本ステップについては後に詳述する。   In step S706, the partial area included in the object area is updated. In the process of this step, a partial area is added to the object area, or the added partial area is excluded from the object area. This step will be described in detail later.

ステップS707では、ステップS706において物体領域から部分領域が除外されたか否か判定する。除外されたと判定した場合(S707−Yes)、物体の位置姿勢推定処理全体を終了する。ここで、処理を終了するのは、対象物体に相当する部分領域はすべて物体領域として選択済みであり、直近に追加された部分領域が非対象物体に相当すると想定されるからである。   In step S707, it is determined whether or not the partial area is excluded from the object area in step S706. If it is determined that the object has been excluded (S707-Yes), the entire object position / orientation estimation process is terminated. Here, the processing is terminated because it is assumed that all partial areas corresponding to the target object have been selected as object areas, and the most recently added partial area corresponds to a non-target object.

一方、ステップS707において、部分領域が除外されていないと判定した場合(S707−No)、処理はステップS705に戻され、物体領域の3次元点群に物体の形状モデルを当て嵌めることによって対象物体の位置姿勢を更新する。   On the other hand, if it is determined in step S707 that the partial area is not excluded (S707-No), the process returns to step S705, and the target object is obtained by fitting the object shape model to the three-dimensional point cloud of the object area. Update the position and orientation.

図8の参照により、第2実施形態にかかる物体領域更新処理の流れを説明する。処理を開始すると、物体領域の3次元点群と物体モデルとの平均距離について、直近および前回の物体モデル当て嵌め工程(ステップS705)で算出された値を比較し、前回よりも平均距離が増加しているか否かの増加判定を行う。距離が増加していれば(S801−Yes)、ステップS802に処理は進められる。一方、距離が増加していないと判定された場合(S801−No)、処理はステップS803に進められる。   The flow of the object area update process according to the second embodiment will be described with reference to FIG. When the process is started, the average distance between the three-dimensional point cloud of the object region and the object model is compared with the values calculated in the latest and previous object model fitting steps (step S705), and the average distance increases from the previous time. Whether to increase or not is determined. If the distance has increased (S801-Yes), the process proceeds to step S802. On the other hand, if it is determined that the distance has not increased (S801-No), the process proceeds to step S803.

ステップS802では、直近に物体領域に追加した部分領域を物体領域から取り除く。すなわち、物体領域に含まれる部分領域群を表す識別番号のリストから、取り除く部分領域の識別番号を削除する。   In step S802, the partial area added to the object area most recently is removed from the object area. That is, the identification number of the partial area to be removed is deleted from the list of identification numbers representing the partial area group included in the object area.

ステップS803では、物体領域に含まれない部分領域の中から選んだ部分領域を物体領域に追加する。この処理は図5のフローチャートに示す流れと同じである。   In step S803, a partial area selected from the partial areas not included in the object area is added to the object area. This process is the same as the flow shown in the flowchart of FIG.

以上に説明した処理を行うことにより、物体領域に追加すべく選択した部分領域の妥当性、すなわち部分領域が対象物体に相当する度合いを、物体モデルを当て嵌めたときの当て嵌め誤差で確かめることができる。その結果、第1実施形態のように部分領域ごとの評価値で追加する部分領域を選択する構成に比べ、誤って非対象物体に相当する部分領域を物体領域として選択する危険性が軽減され、より正確に物体領域を決定することが可能である。   By performing the processing described above, the validity of the partial area selected to be added to the object area, that is, the degree to which the partial area corresponds to the target object, can be confirmed by the fitting error when the object model is fitted. Can do. As a result, compared to the configuration of selecting a partial region to be added with an evaluation value for each partial region as in the first embodiment, the risk of erroneously selecting a partial region corresponding to a non-target object as an object region is reduced. It is possible to determine the object region more accurately.

なお、上記の説明では、追加済みの部分領域を削除するか否かの判定基準として(数10)で表される平均距離を用いる例を説明しているがこの例に限定されるものではない。例えば、物体モデルの当て嵌め誤差に比例して増加する値であり、かつ物体領域のサイズに依存しないように規格化された値ならば任意の値を用いることができる。例えば、ステップS403(図4)の処理における位置姿勢更新後の誤差ベクトルの大きさを、物体領域に含まれる画素で平均化した値を基準値としてもよい。   In the above description, an example is described in which the average distance represented by (Equation 10) is used as a criterion for determining whether or not to delete the added partial region. However, the present invention is not limited to this example. . For example, any value can be used as long as it is a value that increases in proportion to the fitting error of the object model and is normalized so as not to depend on the size of the object region. For example, a value obtained by averaging the size of the error vector after the position and orientation update in the process of step S403 (FIG. 4) with pixels included in the object region may be used as the reference value.

また、上記の説明では部分領域を物体領域から削除した場合に処理全体を終了しているが、さらに物体領域の更新を継続してもよい。この場合、除外した部分領域が次回の物体領域更新工程で再び物体領域に加えられて無限ループに陥らないように、除外された部分領域は物体領域として追加する候補から除外してもよい。あるいは物体領域に追加する部分領域の候補の中で選択順位を下げる(例えば最下位に設定する)という処理を追加してもよい。   Further, in the above description, when the partial area is deleted from the object area, the entire process is completed. However, the update of the object area may be further continued. In this case, the excluded partial region may be excluded from candidates to be added as the object region so that the excluded partial region is added to the object region again in the next object region updating step and does not fall into an infinite loop. Alternatively, a process of lowering the selection order (for example, setting the lowest position) among the partial area candidates to be added to the object area may be added.

本実施形態によれば、位置姿勢推定処理の対象とする距離画像データを対象物体の領域に限定することにより、処理速度を向上させ、メモリ消費量を抑制することができる。   According to the present embodiment, by limiting the distance image data to be subjected to the position / orientation estimation process to the area of the target object, the processing speed can be improved and the memory consumption can be suppressed.

(変形例2−1)
本発明の実施形態は上記に限らず様々な変形例が存在する。第2実施形態では、部分領域を物体領域から除外するか否か判定する基準を平均距離の増減としている。しかし、判定基準はこれに限らず、部分領域を追加する前後でのモデル当て嵌めの精度の変化が評価できればよい。例えば、直近に物体領域に追加した部分領域に関する平均距離(A)と、物体領域に関する平均距離(B)とを比較し、前者(A)が後者(B)以上であれば直近に追加した部分領域を削除すると判定することも可能である。逆に、前者(A)が後者(B)未満であれば部分領域を削除しないようにする。
(Modification 2-1)
The embodiment of the present invention is not limited to the above, and various modifications exist. In the second embodiment, the criterion for determining whether or not to exclude a partial region from the object region is an increase or decrease in the average distance. However, the determination criterion is not limited to this, and it is only necessary to be able to evaluate a change in the accuracy of model fitting before and after adding a partial region. For example, the average distance (A) related to the partial area most recently added to the object area is compared with the average distance (B) related to the object area. If the former (A) is greater than or equal to the latter (B), the most recently added part It is also possible to determine to delete the area. Conversely, if the former (A) is less than the latter (B), the partial area is not deleted.

(変形例2−2)
あるいは、物体領域に関する平均距離に替えて、物体領域から直近に追加した部分領域を除外した領域に関する平均距離を用いてもよい。
(Modification 2-2)
Alternatively, instead of the average distance related to the object area, the average distance related to the area excluding the partial area added most recently from the object area may be used.

(変形例2−3)
さらに、平均距離に替えて、第1実施形態の変形例1−4−1〜1−4−5で説明した評価値を用いて部分領域を除外するか否か判定してもよい。
(Modification 2-3)
Further, instead of the average distance, it may be determined whether or not to exclude the partial region using the evaluation values described in the modified examples 1-4-1 to 1-4-5 of the first embodiment.

(第3実施形態)
前述の第1及び第2実施形態では、陰多項式で表現した物体の形状モデルを物体領域の3次元点群に当て嵌めることによって、物体の位置姿勢を推定している。しかしながら、位置姿勢の推定方法はこれに限るものではなく、物体の形状モデルおよび物体領域の3次元点群の情報に基づくものであれば、任意の方法を用いることが出来る.
本実施形態では、形状モデルを、三角形の平面パッチ群から構成されるパッチモデルとし、このモデルと物体領域の3次元点群との間で対応点の対を求め、対応点対間の距離の和が最小になるように物体の位置姿勢を最適化する。
(Third embodiment)
In the first and second embodiments described above, the position and orientation of an object are estimated by fitting a shape model of the object expressed by an implicit polynomial to a three-dimensional point group of the object region. However, the position and orientation estimation method is not limited to this, and any method can be used as long as it is based on the shape model of the object and the information of the three-dimensional point group of the object region.
In the present embodiment, the shape model is a patch model composed of triangular plane patch groups, a pair of corresponding points is obtained between this model and the three-dimensional point group of the object region, and the distance between the pair of corresponding points is determined. The position and orientation of the object are optimized so that the sum is minimized.

本実施形態の処理全体の流れは図2のフローチャートと同様である。ただし、ステップS201で外部記憶装置105から入力する形状モデルデータは、三角形パッチの各頂点の識別番号と座標、各三角形パッチの識別番号とそのパッチを構成する頂点の識別番号から構成されるものとする。   The overall processing flow of this embodiment is the same as the flowchart of FIG. However, the shape model data input from the external storage device 105 in step S201 includes the identification number and coordinates of each vertex of the triangular patch, the identification number of each triangular patch, and the identification number of the vertex constituting the patch. To do.

また、位置姿勢の算出工程(ステップS403)では、物体領域の3次元点群および形状モデル上の点のうち、距離が最小となる点の組からなる最近傍点対を求める。求められた最近傍点対はメモリ102に最近傍点対のリストとして記憶される。   In the position / orientation calculation step (step S403), a nearest point pair consisting of a set of points having the smallest distance is obtained from the three-dimensional point group of the object region and the points on the shape model. The obtained nearest neighbor point pairs are stored in the memory 102 as a list of nearest neighbor point pairs.

具体的には、まず物体領域の3次元点群から最近傍点対の候補となるサンプル点を選択する。サンプル点は、距離画像上の物体領域内の1画素ごとに選択しても良いし、所定数の画素(例えば、5画素など、複数が素)ごとに画像領域を間引きして選択しても良い。次に、サンプル点pに対応する形状モデル上の最近傍点を求める。サンプル点pと、3頂点r1 , r2 , r3 からなる三角形パッチtとの間の最小距離dは(数14)のように表される。 Specifically, sample points that are candidates for the nearest point pair are selected from a three-dimensional point group in the object region. The sample points may be selected for each pixel in the object region on the distance image, or may be selected by thinning out the image region for each predetermined number of pixels (for example, a plurality of pixels such as 5 pixels). good. Next, the nearest point on the shape model corresponding to the sample point p 1 is obtained. The minimum distance d between the sample point p and the triangular patch t composed of the three vertices r 1 , r 2 , r 3 is expressed as (Equation 14).

Figure 2011179909
Figure 2011179909

ただし、u∈[0,1], v∈ [0,1], w∈[0,1]である。形状モデルTがN個の三角形パッチt1,・・・tNから構成されるとすると、サンプル点pと形状モデルT上の最近傍点との間の距離は(数15)のように表される。 However, u∈ [0,1], v∈ [0,1], w∈ [0,1]. If the shape model T is composed of N triangular patches t 1 ,... T N , the distance between the sample point p and the nearest point on the shape model T is expressed as (Equation 15). Is done.

Figure 2011179909
Figure 2011179909

すなわちサンプル点の最近傍点を求めるには、サンプル点と各三角形パッチとの最小距離および最近傍点の座標を表す係数の組(u,v,w)を算出する。そして、すべての三角形パッチの中でサンプル点との最小距離が最小となる三角形パッチと係数の組(u,v,w)を探索する。以上説明した最近傍点対の探索処理の結果は、サンプル点の3次元座標,形状モデル上の最近傍点が存在する三角形パッチの識別番号、最近傍点の座標を表す係数(u,v,w)の組を全てのサンプル点に対して羅列したリストとしてメモリ102に記録される。   That is, in order to obtain the nearest point of the sample point, a set of coefficients (u, v, w) representing the minimum distance between the sample point and each triangular patch and the coordinates of the nearest point are calculated. Then, a search is made for a pair (u, v, w) of a triangular patch and a coefficient that minimizes the minimum distance from the sample point among all the triangular patches. As a result of the search processing for the nearest point pair described above, the three-dimensional coordinates of the sample point, the identification number of the triangular patch where the nearest point on the shape model exists, and the coefficients (u, v, w) representing the coordinates of the nearest point The set is recorded in the memory 102 as a list of all sample points.

次に、最近傍点対リストに登録された最近傍点対間の距離の総和が最小になるようにするモデルの位置姿勢を算出し、算出結果を対象物体の位置姿勢とする。距離画像計測装置の撮像部の座標系における3次元座標は、対象物体の位置姿勢sによって、対象物体の座標系における3次元座標(x、y、z)に変換することができる。ここで、計測対象物体の位置及び姿勢の自由度は6自由度である。すなわちsは6次元ベクトルであり、計測対象物体の位置を表す3つの要素と、姿勢を表す3つの要素からなる。ステップS403で算出された対象物体の概略の位置姿勢により、撮像部座標系のある点が対象物体座標系の点(x0、y0、z0)に変換されるとする。(x、y、z)は対象物体の位置および姿勢により変化するものであり、(x0、y0、z0)の近傍で1次のテイラー展開によって(数16)のように近似できる。 Next, the position and orientation of the model is calculated so that the sum of the distances between the nearest point pairs registered in the nearest point pair list is minimized, and the calculation result is set as the position and orientation of the target object. The three-dimensional coordinates in the coordinate system of the imaging unit of the distance image measuring device can be converted into the three-dimensional coordinates (x, y, z) in the coordinate system of the target object by the position and orientation s of the target object. Here, the degree of freedom of the position and orientation of the measurement target object is 6 degrees of freedom. That is, s is a six-dimensional vector, and includes three elements that represent the position of the measurement target object and three elements that represent the posture. It is assumed that a point in the imaging unit coordinate system is converted to a point (x 0 , y 0 , z 0 ) in the target object coordinate system based on the approximate position and orientation of the target object calculated in step S403. (X, y, z) changes depending on the position and orientation of the target object, and can be approximated as (Equation 16) by the first-order Taylor expansion in the vicinity of (x 0 , y 0 , z 0 ).

Figure 2011179909
Figure 2011179909

メモリ102に格納されたある最近傍点対の形状モデル側最近傍点が存在する三角形パッチ面の対象物体座標系における方程式をax+by+cz=e(a2+ b2+ c2=1, a,b,c,eは定数)とする。正しいsによって変換される(x、y、z)は、平面の方程式ax+by+cz=e(a2+ b2+ c2=1)を満たすと仮定する。(数16)を平面の方程式に代入すると(数17)が得られる。 The equation in the target object coordinate system of the triangular patch surface where the geometric model side nearest point of the nearest neighbor point pair stored in the memory 102 exists is expressed as ax + by + cz = e (a 2 + b 2 + c 2 = 1, a , b, c, e are constants). Assume that (x, y, z) transformed by the correct s satisfies the plane equation ax + by + cz = e (a 2 + b 2 + c 2 = 1). Substituting (Equation 16) into the plane equation yields (Equation 17).

Figure 2011179909
Figure 2011179909

ただし、q=ax0+by0+cz0(定数)である。 However, q = ax 0 + by 0 + cz 0 (constant).

(数17)は最近傍点対すべてについて成り立つため、(数18)のようなΔsiに関する線形連立方程式が成り立つ。 Since (Equation 17) holds for all nearest point pairs, a linear simultaneous equation regarding Δs i as shown in (Equation 18) holds.

Figure 2011179909
Figure 2011179909

ここで、(数18)を(数19)のように表す。   Here, (Equation 18) is expressed as (Equation 19).

Figure 2011179909
Figure 2011179909

(数19)をもとに,行列Jの一般化行列(JT・J) -1・JTを用いてΔsを求める。しかし、距離画像の計測点群に含まれるノイズなどによる外れ値が多いため、次に説明するようなロバスト推定手法を用いる。一般に、外れ値である計測点群データでは誤差e−qが大きくなる。そのため、(数6)、(数7)の連立方程式に対する寄与度が大きくなり、その結果得られるΔsの精度が低下してしまう。そこで、誤差e−qが大きいデータには小さな重みを与え、誤差e−qが小さいデータには大きな重みを与える。重みは、例えば(数20)に示すようなTukeyの関数により与えることが可能である。 Based on (Equation 19), Δs is obtained using the generalized matrix (J T · J) −1 · J T of the matrix J. However, since there are many outliers due to noise included in the measurement point group of the distance image, a robust estimation method as described below is used. In general, the error e−q is large in the measurement point cloud data that is an outlier. Therefore, the degree of contribution to the simultaneous equations of (Equation 6) and (Equation 7) increases, and the accuracy of Δs obtained as a result decreases. Therefore, a small weight is given to data having a large error e−q, and a large weight is given to data having a small error e−q. The weight can be given by a Tukey function as shown in (Equation 20), for example.

Figure 2011179909
Figure 2011179909

cは定数である。なお、重みを与える関数はTukeyの関数である必要はなく、例えば、Huberの関数など、誤差の大きいデータには小さな重みを与え、誤差の小さいデータには大きい重みを与える関数であればよい。各データに対応する重みをwiとする。ここで(数21)のように重み行列Wを定義する。 c is a constant. Note that the function that gives the weight need not be a Tukey function. For example, any function that gives a small weight to data with a large error and gives a large weight to data with a small error may be used. Let w i be the weight corresponding to each data. Here, a weight matrix W is defined as in (Equation 21).

Figure 2011179909
Figure 2011179909

重み行列Wは、対角成分以外はすべて「0」の正方行列であり、対角成分には重みwiが入る。Ncは最近傍点対の数(欠損モデル領域上の対応点対を含まない)である。この重み行列Wを用いて、(数19)を(数22)のように変形する。 The weight matrix W is a square matrix of “0” except for the diagonal component, and the weight w i is placed in the diagonal component. N c is the number of nearest point pairs (not including corresponding point pairs on the missing model region). Using this weight matrix W, (Equation 19) is transformed into (Equation 22).

Figure 2011179909
Figure 2011179909

(数23)のように(数22)を解くことにより補正値Δsを求める。   The correction value Δs is obtained by solving (Equation 22) as shown in (Equation 23).

Figure 2011179909
Figure 2011179909

このようにして算出された補正値Δsによりモデルの位置・姿勢の概略値を補正し、結果をメモリ102に格納するか、あるいはデータ入出力部109を介して外部の装置に出力する。なお、上述した位置及び姿勢の最適化計算手法はGauss-Newton法に基づくものであるが、これに限らずLevenberg-Marquardt法や最急降下法などを用いてもよい。   The approximate value of the model position / orientation is corrected with the correction value Δs calculated in this way, and the result is stored in the memory 102 or output to an external device via the data input / output unit 109. The above-described position and orientation optimization calculation method is based on the Gauss-Newton method, but is not limited thereto, and the Levenberg-Marquardt method, the steepest descent method, or the like may be used.

ステップS404では、収束判定を行い、収束していれば(S404−Yes)、位置姿勢の推定処理を終了する。収束していなければ(S404−No)、ステップS402に処理は戻され、同様の処理が繰り返される。収束判定では、補正値Δsがほぼ0である場合や、誤差ベクトルEの二乗和の補正前と補正後の差がほぼ0である場合に収束したと判定する。   In step S404, a convergence determination is performed. If the convergence has been achieved (S404-Yes), the position / orientation estimation process is terminated. If not converged (S404-No), the process returns to step S402, and the same process is repeated. In the convergence determination, it is determined that the convergence has occurred when the correction value Δs is approximately 0, or when the difference before and after correction of the square sum of the error vector E is approximately 0.

物体領域の更新処理は第1実施形態と同様であるが、部分領域を追加するか否かを判定するための評価値は(数10)に表される平均距離に限定されるものではない。例えば、RMS誤差(誤差ベクトルの要素の二乗和をサンプル点数で除算した値の平方根)を用いることが可能である。物体領域に関する誤差ベクトルはステップS403で算出済みである。また、物体領域に追加する候補の部分領域に関する誤差ベクトルは、上述の物体領域の場合と同様に算出することが可能である。   The object region update processing is the same as that in the first embodiment, but the evaluation value for determining whether or not to add a partial region is not limited to the average distance represented by (Equation 10). For example, RMS error (the square root of a value obtained by dividing the sum of squares of the elements of the error vector by the number of sample points) can be used. The error vector related to the object area has been calculated in step S403. Further, the error vector related to the candidate partial region to be added to the object region can be calculated in the same manner as in the case of the object region described above.

本実施形態によれば、位置姿勢推定処理の対象とする距離画像データを対象物体の領域に限定することにより、処理速度を向上させ、メモリ消費量を抑制することができる。   According to the present embodiment, by limiting the distance image data to be subjected to the position / orientation estimation process to the area of the target object, the processing speed can be improved and the memory consumption can be suppressed.

(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
(Other examples)
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.

Claims (8)

撮像手段により撮像された対象物体の距離画像を取得する取得手段と、
取得された前記距離画像からエッジを抽出し、前記距離画像を前記エッジによって囲まれた部分領域群に分割する分割手段と、
分割された前記部分領域群から、前記距離画像の距離値に基づいて、前記撮像手段に最も近いと見なされる部分領域を探索し、当該部分領域を物体領域として設定する設定手段と、
設定された前記物体領域の3次元点群に、前記対象物体をモデル化した物体モデルの表面を当て嵌めることによって、前記対象物体の位置及び姿勢を推定する推定手段と、
前記物体モデルと前記物体領域との距離を示す情報と、前記部分領域群のうち前記物体領域として設定されていない部分領域と前記物体モデルとの距離を示す情報と、を比較して、当該比較の結果により、前記物体領域に新たな部分領域を加えるか否かを判定する判定手段と、
前記判定手段により前記物体領域に、新たな部分領域を加えると判定された場合、前記物体領域に、新たな部分領域を追加する更新手段と、
前記更新手段により更新がなされた場合に、前記推定手段に、当該更新後の物体領域の3次元点群を用いて、前記対象物体の位置及び姿勢を推定させる制御手段と
を備えることを特徴とする位置姿勢計測装置。
Obtaining means for obtaining a distance image of the target object imaged by the imaging means;
A dividing unit that extracts an edge from the acquired distance image and divides the distance image into partial region groups surrounded by the edge;
From the divided partial area group, based on the distance value of the distance image, search for a partial area that is considered to be closest to the imaging means, and setting means for setting the partial area as an object area;
Estimating means for estimating the position and orientation of the target object by fitting the surface of the object model obtained by modeling the target object to the set three-dimensional point group of the object region;
Compare the information indicating the distance between the object model and the object region, and the information indicating the distance between the partial region group not set as the object region and the object model in the partial region group. According to the result, a determination means for determining whether to add a new partial area to the object area,
An update unit for adding a new partial region to the object region when the determination unit determines to add a new partial region to the object region;
When the update is performed by the update unit, the estimation unit includes a control unit that estimates the position and orientation of the target object using a three-dimensional point group of the updated object region. Position and orientation measurement device.
前記判定手段は、前記部分領域群のうち前記物体領域として設定されていない部分領域を、距離値の小さい順に選択して比較することを特徴とする請求項1に記載の位置姿勢計測装置。   The position / orientation measurement apparatus according to claim 1, wherein the determination unit selects and compares partial areas that are not set as the object area in the partial area group in ascending order of distance values. 前記部分領域群のうち前記設定手段により前記物体領域として設定されていない部分領域と前記物体モデルとの距離を示す情報が、前記物体モデルと前記物体領域との距離を示す情報より小さいと、前記判定手段により判定される場合、前記更新手段は、前記物体領域に、前記距離値の小さい順に新たな部分領域を追加することを特徴とする請求項2に記載の位置姿勢計測装置。   When the information indicating the distance between the object model and the partial area that is not set as the object area by the setting unit in the partial area group is smaller than the information indicating the distance between the object model and the object area, The position / orientation measurement apparatus according to claim 2, wherein when the determination unit determines, the update unit adds a new partial region to the object region in ascending order of the distance value. 前記更新手段は、
前記部分領域を追加する前の物体領域と前記物体モデルとの距離を示す情報に対して、前記部分領域を追加した後の物体領域と前記物体モデルとの距離を示す情報が増加するか否かを判定する増加判定手段と、
前記増加判定手段により増加すると判定される場合に、前記物体領域に対して前記距離値の小さい順に新たな部分領域を追加する追加手段と、
を有することを特徴とすることを特徴とする請求項2に記載の位置姿勢計測装置。
The updating means includes
Whether the information indicating the distance between the object region after adding the partial region and the object model increases with respect to the information indicating the distance between the object region before adding the partial region and the object model An increase determination means for determining
An adding means for adding a new partial area in ascending order of the distance value with respect to the object area when it is determined by the increase determining means to increase;
The position / orientation measurement apparatus according to claim 2, further comprising:
前記更新手段は、
前記部分領域を追加する前の物体領域と前記物体モデルとの距離を示す情報に対して、前記部分領域を追加した後の物体領域と前記物体モデルとの距離を示す情報が増加すると前記増加判定手段により判定される場合、前記追加された前記部分領域を前記物体領域から削除する削除手段を有することを特徴とする請求項4に記載の位置姿勢計測装置。
The updating means includes
When the information indicating the distance between the object region after adding the partial region and the information indicating the distance between the object model and the object model before the partial region is added increases, the increase determination is performed. The position / orientation measurement apparatus according to claim 4, further comprising a deletion unit that deletes the added partial region from the object region when determined by the unit.
前記推定手段は、前記物体領域の3次元点群と前記物体モデルの表面との距離の総和を最小にするように、前記物体モデルを前記物体領域の前記3次元点群に当て嵌めることによって、前記対象物体の位置及び姿勢を推定することを特徴とする請求項1乃至5のいずれか1項に記載の位置姿勢計測装置。   The estimation means applies the object model to the three-dimensional point group of the object region so as to minimize the sum of the distances between the three-dimensional point group of the object region and the surface of the object model, The position and orientation measurement apparatus according to claim 1, wherein the position and orientation of the target object is estimated. 取得手段が、撮像手段により撮像された対象物体の距離画像を取得する取得工程と、
分割手段が、取得された前記距離画像からエッジを抽出し、前記距離画像を前記エッジによって囲まれた部分領域群に分割する分割工程と、
設定手段が、分割された前記部分領域群から、前記距離画像の距離値に基づいて、前記撮像手段に最も近いと見なされる部分領域を探索し、当該部分領域を物体領域として設定する設定工程と、
推定手段が、設定された前記物体領域の3次元点群に、前記対象物体をモデル化した物体モデルの表面を当て嵌めることによって、前記対象物体の位置及び姿勢を推定する推定工程と、
判定手段が、前記物体モデルと前記物体領域との距離を示す情報と、前記部分領域群のうち前記物体領域として設定されていない部分領域と前記物体モデルとの距離を示す情報と、を比較して、当該比較の結果により、前記物体領域に新たな部分領域を加えるか否かを判定する判定工程と、
更新手段が、前記判定工程で前記物体領域に、新たな部分領域を加えると判定された場合、前記物体領域に、新たな部分領域を追加する更新工程と、を有し
前記更新工程において更新がなされた場合に、前記推定工程では、当該更新後の物体領域の3次元点群を用いて、前記対象物体の位置及び姿勢を推定することを特徴とする位置姿勢計測方法。
An acquisition step in which the acquisition unit acquires a distance image of the target object imaged by the imaging unit;
A dividing step of extracting an edge from the acquired distance image and dividing the distance image into a partial region group surrounded by the edge;
A setting step in which a setting unit searches a partial region considered to be closest to the imaging unit based on a distance value of the distance image from the divided partial region group, and sets the partial region as an object region; ,
An estimation step in which the estimation means estimates the position and orientation of the target object by fitting the surface of the object model obtained by modeling the target object to the set three-dimensional point group of the object region;
The determination unit compares information indicating a distance between the object model and the object region with information indicating a distance between the partial region group that is not set as the object region and the object model. A determination step of determining whether or not to add a new partial region to the object region based on the result of the comparison;
When it is determined in the determination step that a new partial region is added to the object region, the update unit includes an update step of adding a new partial region to the object region. In this case, in the estimation step, the position and orientation measurement method estimates the position and orientation of the target object using a three-dimensional point group of the updated object region.
コンピュータを請求項1乃至6のいずれか1項に記載の位置姿勢計測装置の各手段として機能させるためのプログラム。   A program for causing a computer to function as each unit of the position and orientation measurement apparatus according to any one of claims 1 to 6.
JP2010043061A 2010-02-26 2010-02-26 Position / orientation measuring apparatus, position / orientation measuring method, program Active JP5480667B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010043061A JP5480667B2 (en) 2010-02-26 2010-02-26 Position / orientation measuring apparatus, position / orientation measuring method, program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010043061A JP5480667B2 (en) 2010-02-26 2010-02-26 Position / orientation measuring apparatus, position / orientation measuring method, program

Publications (3)

Publication Number Publication Date
JP2011179909A true JP2011179909A (en) 2011-09-15
JP2011179909A5 JP2011179909A5 (en) 2013-04-11
JP5480667B2 JP5480667B2 (en) 2014-04-23

Family

ID=44691574

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010043061A Active JP5480667B2 (en) 2010-02-26 2010-02-26 Position / orientation measuring apparatus, position / orientation measuring method, program

Country Status (1)

Country Link
JP (1) JP5480667B2 (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013109220A1 (en) 2012-08-29 2014-03-06 Fanuc Corporation Robotic device and method for removing bulk goods from a warehouse
DE102014016069A1 (en) 2013-11-05 2015-05-07 Fanuc Corporation Apparatus and method for picking up an object in 3-dimensional space with a robot
DE102014016033A1 (en) 2013-11-05 2015-05-07 Fanuc Corporation Apparatus and method for picking up randomly distributed objects with a robot
DE102014016032A1 (en) 2013-11-05 2015-05-07 Fanuc Corporation Apparatus and method for picking up randomly heaped items with a robot
DE102014016072A1 (en) 2013-11-05 2015-07-02 Fanuc Corporation Apparatus and method for picking up an arbitrarily stacked object by means of a robot
CN105359163A (en) * 2013-07-01 2016-02-24 三菱电机株式会社 Method for fitting primitive shapes to a set of 3D points
DE102015115115A1 (en) 2014-09-16 2016-03-17 Fanuc Corporation An article receiving device for picking up randomly heaped objects
JP2016179534A (en) * 2015-03-24 2016-10-13 キヤノン株式会社 Information processor, information processing method, program
JP2017075891A (en) * 2015-10-16 2017-04-20 キヤノン株式会社 Measuring device, measuring method, and method for manufacturing article
JP2018518729A (en) * 2015-03-24 2018-07-12 ケーエルエー−テンカー コーポレイション Object shape classification method
JP2021137953A (en) * 2020-05-28 2021-09-16 リンクウィズ株式会社 Information processing method, information processing system, and program
CN117316262A (en) * 2023-11-30 2023-12-29 深圳市领德创科技有限公司 Automatic FLASH chip detection machine
JP7424535B1 (en) 2023-05-31 2024-01-30 トヨタ自動車株式会社 remote control device
US12066812B2 (en) 2020-03-09 2024-08-20 Linkwiz Incorporated Information processing method, information processing system, and program
JP7570944B2 (en) 2021-02-22 2024-10-22 株式会社東芝 Measurement system and program

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9346166B2 (en) 2012-08-29 2016-05-24 Fanuc Corporation Apparatus and method of taking out bulk stored articles by robot
DE102013109220A1 (en) 2012-08-29 2014-03-06 Fanuc Corporation Robotic device and method for removing bulk goods from a warehouse
DE102013109220B4 (en) 2012-08-29 2019-02-14 Fanuc Corporation Robotic device and method for removing bulk goods from a warehouse
CN105359163B (en) * 2013-07-01 2019-08-30 三菱电机株式会社 Method for cell shapes to be fitted to the set of 3D point
JP2016523394A (en) * 2013-07-01 2016-08-08 三菱電機株式会社 Fitting a primitive shape to a set of 3D points
CN105359163A (en) * 2013-07-01 2016-02-24 三菱电机株式会社 Method for fitting primitive shapes to a set of 3D points
DE102014016072A1 (en) 2013-11-05 2015-07-02 Fanuc Corporation Apparatus and method for picking up an arbitrarily stacked object by means of a robot
DE102014016069B4 (en) 2013-11-05 2022-09-15 Fanuc Corporation Device and method for picking up an object in 3-dimensional space with a robot
DE102014016072B4 (en) 2013-11-05 2019-02-14 Fanuc Corporation Apparatus and method for picking up an arbitrarily stacked object by means of a robot
US9415511B2 (en) 2013-11-05 2016-08-16 Fanuc Corporation Apparatus and method for picking up article randomly piled using robot
US9434070B2 (en) 2013-11-05 2016-09-06 Fanuc Corporation Apparatus and method for picking up article randomly piled using robot
DE102014016032A1 (en) 2013-11-05 2015-05-07 Fanuc Corporation Apparatus and method for picking up randomly heaped items with a robot
US9503704B2 (en) 2013-11-05 2016-11-22 Fanuc Corporation Apparatus and method for picking up article disposed in three-dimensional space using robot
DE102014016033A1 (en) 2013-11-05 2015-05-07 Fanuc Corporation Apparatus and method for picking up randomly distributed objects with a robot
DE102014016069A1 (en) 2013-11-05 2015-05-07 Fanuc Corporation Apparatus and method for picking up an object in 3-dimensional space with a robot
US9721184B2 (en) 2013-11-05 2017-08-01 Fanuc Corporation Apparatus and method for picking up article randomly piled using robot
DE102014016032B4 (en) 2013-11-05 2018-05-30 Fanuc Corporation Apparatus and method for picking up randomly heaped items with a robot
DE102014016033B4 (en) 2013-11-05 2018-07-12 Fanuc Corporation Apparatus and method for picking up randomly distributed objects with a robot
US9694499B2 (en) 2014-09-16 2017-07-04 Fanuc Corporation Article pickup apparatus for picking up randomly piled articles
DE102015115115B4 (en) 2014-09-16 2019-03-21 Fanuc Corporation An article receiving device for picking up randomly heaped objects
DE102015115115A1 (en) 2014-09-16 2016-03-17 Fanuc Corporation An article receiving device for picking up randomly heaped objects
JP2018518729A (en) * 2015-03-24 2018-07-12 ケーエルエー−テンカー コーポレイション Object shape classification method
JP2016179534A (en) * 2015-03-24 2016-10-13 キヤノン株式会社 Information processor, information processing method, program
JP2017075891A (en) * 2015-10-16 2017-04-20 キヤノン株式会社 Measuring device, measuring method, and method for manufacturing article
US12066812B2 (en) 2020-03-09 2024-08-20 Linkwiz Incorporated Information processing method, information processing system, and program
JP2021137953A (en) * 2020-05-28 2021-09-16 リンクウィズ株式会社 Information processing method, information processing system, and program
JP7570944B2 (en) 2021-02-22 2024-10-22 株式会社東芝 Measurement system and program
JP7424535B1 (en) 2023-05-31 2024-01-30 トヨタ自動車株式会社 remote control device
CN117316262A (en) * 2023-11-30 2023-12-29 深圳市领德创科技有限公司 Automatic FLASH chip detection machine
CN117316262B (en) * 2023-11-30 2024-04-09 深圳市领德创科技有限公司 Automatic FLASH chip detection machine

Also Published As

Publication number Publication date
JP5480667B2 (en) 2014-04-23

Similar Documents

Publication Publication Date Title
JP5480667B2 (en) Position / orientation measuring apparatus, position / orientation measuring method, program
US20200096317A1 (en) Three-dimensional measurement apparatus, processing method, and non-transitory computer-readable storage medium
JP5671281B2 (en) Position / orientation measuring apparatus, control method and program for position / orientation measuring apparatus
JP5297403B2 (en) Position / orientation measuring apparatus, position / orientation measuring method, program, and storage medium
JP5567908B2 (en) Three-dimensional measuring apparatus, measuring method and program
JP5839971B2 (en) Information processing apparatus, information processing method, and program
JP6271953B2 (en) Image processing apparatus and image processing method
JP5746477B2 (en) Model generation device, three-dimensional measurement device, control method thereof, and program
US8792726B2 (en) Geometric feature extracting device, geometric feature extracting method, storage medium, three-dimensional measurement apparatus, and object recognition apparatus
JP5627325B2 (en) Position / orientation measuring apparatus, position / orientation measuring method, and program
JP6736257B2 (en) Information processing device, information processing method, and program
JP2015219868A (en) Information processor, information processing method and program
JP5976089B2 (en) Position / orientation measuring apparatus, position / orientation measuring method, and program
JP5698815B2 (en) Information processing apparatus, information processing apparatus control method, and program
JP2022138037A (en) Information processor, information processing method, and program
JP6922348B2 (en) Information processing equipment, methods, and programs
JP6040264B2 (en) Information processing apparatus, information processing apparatus control method, and program
JP5462662B2 (en) Position / orientation measurement apparatus, object identification apparatus, position / orientation measurement method, and program
Arbeiter et al. Efficient segmentation and surface classification of range images
Siddiqui et al. Visual tracking using particle swarm optimization
JP2011174878A (en) Position attitude measuring device
JP6719925B2 (en) Information processing device, information processing method, and program
JP5991730B2 (en) Measuring device, measuring method and program
JP5938201B2 (en) Position / orientation measuring apparatus, processing method thereof, and program
JP6766229B2 (en) Position and posture measuring device and method

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131018

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131216

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140214

R151 Written notification of patent or utility model registration

Ref document number: 5480667

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151