JP6766229B2 - Position and posture measuring device and method - Google Patents
Position and posture measuring device and method Download PDFInfo
- Publication number
- JP6766229B2 JP6766229B2 JP2019120578A JP2019120578A JP6766229B2 JP 6766229 B2 JP6766229 B2 JP 6766229B2 JP 2019120578 A JP2019120578 A JP 2019120578A JP 2019120578 A JP2019120578 A JP 2019120578A JP 6766229 B2 JP6766229 B2 JP 6766229B2
- Authority
- JP
- Japan
- Prior art keywords
- orientation
- posture
- target object
- image
- distribution
- 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.)
- Active
Links
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Image Analysis (AREA)
Description
本発明は、形状が既知である物体の位置姿勢を計測する技術に関する。 The present invention relates to a technique for measuring the position and orientation of an object whose shape is known.
近年コンピュータビジョンの発展とともに、ロボットによる、より複雑なタスクを実行するための技術の研究が盛んに行われるようになってきた。複雑なタスクの代表的な例として、工業製品の組立が挙げられる。ロボットが自律的に組立作業を行うためには、ハンドなどのエンドエフェクタによって部品を把持することが必要となる。ロボットハンドによって部品を把持するためには、まず、カメラで撮像された実環境を撮影する。そして、撮影された画像に、対象物体のモデル情報をフィッティングすることで実環境における対象物体の位置姿勢を計測し、計測結果に基づいて移動計画を策定して実際にアクチュエータを制御する必要がある。 In recent years, with the development of computer vision, research on technologies for performing more complex tasks by robots has been actively conducted. Assembling industrial products is a typical example of a complicated task. In order for the robot to perform assembly work autonomously, it is necessary to grip the parts with an end effector such as a hand. In order to grip a part with a robot hand, first, the actual environment captured by the camera is photographed. Then, it is necessary to measure the position and orientation of the target object in the actual environment by fitting the model information of the target object to the captured image, formulate a movement plan based on the measurement result, and actually control the actuator. ..
このようなロボットによる部品把持のための実環境におけるモデル情報のフィッティングでは、実環境のノイズや部品の形状及びテクスチャの複雑さに対してロバスト性が求められ、これまでも様々な研究がなされてきた。 In the fitting of model information in the real environment for gripping parts by such a robot, robustness is required for noise in the real environment and the complexity of the shape and texture of the parts, and various studies have been conducted so far. It was.
特許文献1に記載の方法では、カメラの位置姿勢をロバストに推定する方法として、まず、カメラの位置姿勢が取り得る範囲に所定のサンプリング間隔で複数の初期位置姿勢を生成する。そして、それぞれの初期位置姿勢においてフィッティングの繰り返し計算を行い、最も成績の良いフィッティング結果をフィッティングの最終結果とする方法が提案されている。 In the method described in Patent Document 1, as a method of robustly estimating the position and orientation of the camera, first, a plurality of initial positions and orientations are generated at predetermined sampling intervals within a range in which the position and orientation of the camera can be taken. Then, a method has been proposed in which the fitting is repeatedly calculated in each initial position and posture, and the fitting result with the best result is used as the final result of the fitting.
しかしながら、特許文献1に開示されている方法は、カメラの位置姿勢が取り得る範囲として妥当な範囲を設定できることを前提としており、この前提が満たされない場合はロバスト化の効果が十分に得られないという問題がある。 However, the method disclosed in Patent Document 1 is based on the premise that a reasonable range can be set as the range in which the position and orientation of the camera can be taken, and if this premise is not satisfied, the effect of robustness cannot be sufficiently obtained. There is a problem.
本発明は、以上の課題に鑑みてなされたものであり、ロバストな位置姿勢計測を行うことを目的とする。 The present invention has been made in view of the above problems, and an object of the present invention is to perform robust position / posture measurement.
上記目的を達成するために、本発明によれば、位置姿勢計測装置に、対象物体が含まれる画像から、前記対象物体の少なくとも1つの概略位置姿勢を取得する取得手段と、前記取得した概略位置姿勢の分解能を決定する決定手段と、前記取得した概略位置姿勢と前記決定した当該概略位置姿勢の分解能とに基づいて、前記対象物体の位置姿勢の導出のための初期値として、少なくとも1つの位置姿勢候補を新たに生成する生成手段と、前記対象物体のモデル情報と、前記初期値として生成された位置姿勢候補とに基づいて、前記対象物体の位置姿勢を導出する導出手段とを備える。 In order to achieve the above object, according to the present invention, the position / orientation measuring device includes an acquisition means for acquiring at least one approximate position / orientation of the target object from an image including the target object, and the acquired approximate position. determining means for determining the resolution of the position, based on the resolution of the coarse position and orientation of the determined and the obtained rough position and orientation, as an initial value for the derivation of the position and orientation of the target object, at least one position It includes a generation means for newly generating a posture candidate, and a derivation means for deriving the position / orientation of the target object based on the model information of the target object and the position / orientation candidate generated as the initial value.
本発明によれば、ロバストな位置姿勢計測を行うことができる。 According to the present invention, robust position / posture measurement can be performed.
以下、添付図面を参照して本発明の好適な実施形態について詳細に説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の1つである。 Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In addition, the embodiment described below shows an example when the present invention is concretely implemented, and is one of the specific examples of the configuration described in the claims.
[第1の実施形態]
本実施形態では、撮像装置と投影装置によって対象物体の輝度画像と距離画像を同時に取得し、3次元モデル情報を輝度画像に対して2次元の尺度で位置合わせし、距離画像に対して3次元の尺度で位置合わせを行い、2次元と3次元の尺度で同時に評価する際に、本発明を適用する方法を説明する。なお、ここでは2次元と3次元の尺度で同時に位置合わせをする例で説明するが、本発明は2次元の尺度のみであったり、3次元の尺度のみであっても全く同様に適用可能である。
[First Embodiment]
In the present embodiment, a brightness image and a distance image of the target object are simultaneously acquired by the imaging device and the projection device, the three-dimensional model information is aligned with the brightness image on a two-dimensional scale, and the distance image is three-dimensional. The method of applying the present invention when aligning with the scale of the above and evaluating at the same time with the two-dimensional and three-dimensional scales will be described. In addition, although the example of simultaneously aligning with a two-dimensional scale and a three-dimensional scale will be described here, the present invention can be applied in exactly the same manner even if it is only a two-dimensional scale or only a three-dimensional scale. is there.
3次元モデル情報の初期位置の設定においては、撮像部で撮影された輝度画像を全探索することで、位置姿勢の取り得る分布(概略位置姿勢)を取得する。取得された概略位置姿勢の分布に基づいて、複数の初期位置姿勢を生成し、それぞれの位置姿勢候補で位置合わせを行い、最も合致した位置姿勢を最終的な位置合わせ結果として出力する。 In the setting of the initial position of the three-dimensional model information, the distribution (rough position / orientation) that the position / orientation can take is acquired by fully searching the luminance image taken by the imaging unit. Based on the acquired approximate position / posture distribution, a plurality of initial position / postures are generated, alignment is performed with each position / posture candidate, and the most matched position / posture is output as the final alignment result.
こうすることで、局所解となり得る位置姿勢を網羅的に検証することとなり、位置合わせのロバスト性を向上できる。以降処理手順の詳細について説明する。なお、本発明における全ての実施形態において、特に明記しない限り、位置合わせとは、計測対象物体の2次元または3次元形状モデルを、画像中の計測対象物体の位置、または、位置および姿勢に合わせる(フィッティングを行う)ことを示す。 By doing so, the position and orientation that can be a local solution can be comprehensively verified, and the robustness of alignment can be improved. The details of the processing procedure will be described below. In all embodiments of the present invention, unless otherwise specified, alignment means aligning a two-dimensional or three-dimensional shape model of a measurement target object with the position, position and orientation of the measurement target object in an image. Indicates that (fitting is performed).
図1は、第1の実施形態における位置姿勢計測装置のシステム構成を示す図である。 FIG. 1 is a diagram showing a system configuration of the position / posture measuring device according to the first embodiment.
計測対象物体101は、位置及び姿勢(位置姿勢)を計測する対象としての計測対象物体である。本実施形態では、説明を簡単にするために、計測対象物体101は図1に示すように、一つ置かれているものとする。しかし、以下に説明する位置姿勢計測処理は、計測対象物体の形状、個数、載置形態に大きく依存するものではない。例えば複数の異形状の計測対象物体が混合されて山積みされているような状態において、ある計測対象物体の位置姿勢を計測する場合にも、本発明は適用可能である。 The measurement target object 101 is a measurement target object as a target for measuring a position and a posture (positional posture). In the present embodiment, for the sake of simplicity, it is assumed that one measurement target object 101 is placed as shown in FIG. However, the position / orientation measurement process described below does not largely depend on the shape, number, and mounting form of the objects to be measured. For example, the present invention is also applicable to measure the position and orientation of a certain measurement target object in a state where a plurality of irregularly shaped measurement target objects are mixed and piled up.
投影装置102は、計測対象物体101にパターン光を投影する。投影装置102につついては詳しくは後述する。 The projection device 102 projects the pattern light onto the measurement target object 101. The details of the projection device 102 will be described later.
撮像装置103は、静止画もしくは動画像を撮像する装置であり、本実施形態では、計測対象物体101および、投影装置102によってパターン光が投影された計測対象物体101を撮像するために使用する。そして、撮像装置103は、撮像した画像(撮像画像)を位置姿勢計測装置104に対して送出する。撮像装置103については詳しく後述する。 The image pickup device 103 is a device for capturing a still image or a moving image, and in the present embodiment, it is used to image the measurement target object 101 and the measurement target object 101 on which the pattern light is projected by the projection device 102. Then, the image pickup device 103 sends the captured image (captured image) to the position / orientation measuring device 104. The image pickup apparatus 103 will be described in detail later.
位置姿勢計測装置104は、投影装置102と撮像装置103に接続されており、本発明の具体的な処理が記述されたプログラムを内部に保持し、内蔵するCPUがそのプログラムを実行することで、投影装置102及び撮像装置103を制御し、所望の位置姿勢計測結果を算出する装置である。 The position / orientation measuring device 104 is connected to the projection device 102 and the image pickup device 103, holds a program in which the specific processing of the present invention is described, and the built-in CPU executes the program. It is a device that controls the projection device 102 and the image pickup device 103 and calculates a desired position / orientation measurement result.
次に、位置姿勢計測装置104の機能構成例について、図2のブロック図を用いて説明する。 Next, an example of the functional configuration of the position / posture measuring device 104 will be described with reference to the block diagram of FIG.
3次元モデル情報202は、3次元CADソフトで取り扱うことができるCADモデルそのもの、もしくは3次元CADモデルをComputer Graphics分野で使われる複数のポリゴン要素に変換した、計測対象物体の形状情報である。本実施形態では、計測対象物体101の形状を模した3次元幾何モデルであって、ポリゴン要素で構成される3次元幾何モデルを用いる。3次元モデル情報の構成については図3を用いて説明する。 The 3D model information 202 is the shape information of the object to be measured, which is the CAD model itself that can be handled by the 3D CAD software, or the 3D CAD model converted into a plurality of polygon elements used in the Computer Graphics field. In this embodiment, a three-dimensional geometric model that imitates the shape of the measurement target object 101 and is composed of polygon elements is used. The structure of the three-dimensional model information will be described with reference to FIG.
ポリゴン要素で構成される3次元幾何モデルは、図3に示すような点、線、面といった構成要素からなる。図3(a)〜(c)はいずれも同じ3次元幾何モデルを示している。 A three-dimensional geometric model composed of polygon elements is composed of components such as points, lines, and surfaces as shown in FIG. FIGS. 3A to 3C show the same three-dimensional geometric model.
ポリゴン要素で構成される3次元幾何モデルのモデル情報では、図3(a)に例示している3次元幾何モデルの各頂点について、図3(d)に示すごとく、該頂点のインデックスと、該頂点の3次元座標値とを管理している。 In the model information of the three-dimensional geometric model composed of polygon elements, for each vertex of the three-dimensional geometric model illustrated in FIG. 3 (a), as shown in FIG. 3 (d), the index of the vertex and the said It manages the three-dimensional coordinate values of the vertices.
また、このモデル情報では、図3(b)に例示している3次元幾何モデルの各辺について、図3(e)に示すごとく、該辺のインデックスと、該辺の両端における頂点のインデックスとを管理している。 Further, in this model information, for each side of the three-dimensional geometric model illustrated in FIG. 3B, as shown in FIG. 3E, the index of the side and the index of the vertices at both ends of the side are used. Is in control.
また、このモデル情報では、図3(c)に例示している3次元幾何モデルの各面(ポリゴン)について、図3(f)に示すごとく、該ポリゴンのインデックスと、該ポリゴンのインデックスと、該ポリゴンの法線ベクトルとを管理している。 Further, in this model information, as shown in FIG. 3 (f), the index of the polygon, the index of the polygon, and the index of the polygon are used for each surface (polygon) of the three-dimensional geometric model illustrated in FIG. 3 (c). It manages the normal vector of the polygon.
このような3次元モデル情報202は、位置姿勢計測装置104内の適当なメモリ、もしくは、位置姿勢計測装置104がアクセス可能な外部メモリに格納されている。 Such three-dimensional model information 202 is stored in an appropriate memory in the position / attitude measuring device 104 or an external memory accessible to the position / attitude measuring device 104.
概略位置姿勢取得部203は、計測対象物体101のとりうる位置姿勢(概略位置姿勢)を取得する。具体的な方法については、後述する。 The approximate position / posture acquisition unit 203 acquires the possible position / orientation (approximately position / posture) of the measurement target object 101. The specific method will be described later.
位置姿勢候補生成部204は、位置姿勢分布決定部203によって得られた概略位置姿勢の分布に基づいて複数の位置姿勢候補の生成を行う。具体的な方法については、後述する。 The position / posture candidate generation unit 204 generates a plurality of position / posture candidates based on the distribution of the approximate position / posture obtained by the position / posture distribution determination unit 203. The specific method will be described later.
位置姿勢候補選択部205は、複数の位置姿勢候補の中から一つ以上、位置姿勢を算出するべき位置姿勢候補を選択する。複数の位置姿勢候補をふるい分けすることで計算時間を短縮する。具体的な方法については、後述する。 The position / posture candidate selection unit 205 selects one or more position / posture candidates for which the position / posture should be calculated from the plurality of position / posture candidates. The calculation time is shortened by screening out multiple position / orientation candidates. The specific method will be described later.
位置姿勢算出部206は、位置姿勢選択部205で選択された位置姿勢候補の示す位置姿勢で、3次元モデルを撮像装置103によって得られた輝度画像及び距離画像に位置合わせをし、最終的な位置姿勢を算出する。 The position / posture calculation unit 206 aligns the three-dimensional model with the brightness image and the distance image obtained by the image pickup device 103 with the position / posture indicated by the position / posture candidate selected by the position / posture selection unit 205, and finally. Calculate the position and posture.
撮像装置103は、カメラであり、計測対象物体101が配置されている作業スペースを撮影する。本発明の説明において単に「座標系」や「位置姿勢」といった場合は、それぞれこのカメラの「座標系」、このカメラ座標系における「位置姿勢」をあらわす。一方で「モデルの座標系」は部品の3次元モデルの点や面の位置を表すのに使用するモデル毎に定義される座標系を表す。カメラの内部パラメータ(焦点距離、主点位置、レンズ歪みパラメータ)は例えば、以下の文献に記載されている方法により、事前に校正しておく。
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
The image pickup device 103 is a camera and photographs a work space in which the measurement target object 101 is arranged. In the description of the present invention, the terms "coordinate system" and "positional posture" mean the "coordinate system" of this camera and the "positional posture" in this camera coordinate system, respectively. On the other hand, the "model coordinate system" represents a coordinate system defined for each model used to represent the positions of points and surfaces of a three-dimensional model of a part. The internal parameters of the camera (focal length, principal point position, lens distortion parameters) are calibrated in advance by, for example, the methods described in the following documents.
Z. Zhang, “A flexible new technology for camera calibration,” IEEE Transitions on Pattern Analysis and Machine Intelligence, vol. 22, no. 11, pp. 1330-1334, 2000
投影装置102は、液晶プロジェクタでパターン光を投影する。プロジェクタの内部パラメータ(焦点距離、主点位置、レンズ歪みパラメータ)についてもカメラの校正と同様の原理で事前に校正しておく。投影装置102は、もちろん、液晶プロジェクタに限るものではなく、パターン光の投影ができれば他の方式のものでもよい。例えば、DMD(デジタルミラーデバイス)やLCOSを用いたプロジェクタであってもよい。 The projection device 102 projects pattern light with a liquid crystal projector. The internal parameters of the projector (focal length, principal point position, lens distortion parameters) are also calibrated in advance using the same principle as camera calibration. Of course, the projection device 102 is not limited to the liquid crystal projector, and may be another type as long as it can project the pattern light. For example, it may be a projector using DMD (Digital Mirror Device) or LCOS.
位置姿勢計測装置104は、投影装置102、撮像装置103を制御し、計測対象物体の輝度画像及び距離画像を取得する。距離画像は、画像内に写りこんだパターン光の形状に基づいて三角測量の原理で生成される。この方法は一般的にアクティブステレオと呼ばれるが、本発明は、アクティブステレオに限定されるものではなく、パッシブステレオなど他の方法で距離画像を生成しても同様に本発明の実施は可能である。 The position / orientation measuring device 104 controls the projection device 102 and the imaging device 103 to acquire a luminance image and a distance image of the object to be measured. The distance image is generated by the principle of triangulation based on the shape of the pattern light reflected in the image. Although this method is generally called active stereo, the present invention is not limited to active stereo, and the present invention can be similarly implemented even if a distance image is generated by another method such as passive stereo. ..
図4は、以上の要素で構成される情報処理装置のフィッティング処理の手順を示したフローチャートである。本フローチャートで処理手順の概要を説明し、後に本発明の実施において特に重要な点を詳細に説明する。 FIG. 4 is a flowchart showing a procedure of fitting processing of the information processing apparatus composed of the above elements. The outline of the processing procedure will be described in this flowchart, and later, particularly important points in the practice of the present invention will be described in detail.
(ステップS401)
ステップS401では、撮像部103が作業スペースの計測対象物体101を撮影し、計測対象物体101の輝度画像及び距離画像を取得する。
(Step S401)
In step S401, the imaging unit 103 photographs the measurement target object 101 in the work space and acquires the luminance image and the distance image of the measurement target object 101.
(ステップS402)
ステップS402では、輝度画像を全探索して、計測対象物体101の位置姿勢の取り得る分布(複数の概略位置姿勢)を決定する。画像を全探索して、画像中の計測対象物体101の概略位置姿勢を算出することは広く行われており、例えば、以下の非特許文献では、パターンマッチングを用いて部品の3次元モデルの画像内における位置姿勢を算出する方法が開示されている。
吉井裕人、 “アンサンブル分類木を用いたバラ積み部品の概略位置姿勢検出”、 画像の認識・理解シンポジウム(MIRU2010)、 2010
(Step S402)
In step S402, the luminance image is fully searched to determine the possible distribution (plural approximate position / orientation) of the position / orientation of the measurement target object 101. It is widely practiced to search the entire image and calculate the approximate position and orientation of the object 101 to be measured in the image. For example, in the following non-patent documents, an image of a three-dimensional model of a part is used by using pattern matching. A method of calculating the position and posture in the inside is disclosed.
Hiroto Yoshii, "Approximate position and orientation detection of loosely stacked parts using ensemble classification wood", Image Recognition and Understanding Symposium (MIRU2010), 2010
このような方法では、画像内で複数回パターンマッチングを行い、1回のマッチングで得られた結果を1回の投票として記録し、最後に投票結果を集計して全探索の結果として提示する。この1回の投票は、情報として計測対象物体の位置姿勢の6パラメータを持つ(ただし、実際には計算を効率化するため、一部の次元はクラス化されて代表値で表されることもある)。本発明では、この位置姿勢の6パラメータを伴う複数の投票を対象部品の取り得る位置姿勢分布として利用する。 In such a method, pattern matching is performed a plurality of times in the image, the result obtained by one matching is recorded as one vote, and finally the vote result is aggregated and presented as the result of the total search. This one vote has 6 parameters of the position and orientation of the object to be measured as information (however, in order to improve the efficiency of calculation, some dimensions may be classified and represented by representative values. is there). In the present invention, a plurality of votes with the six parameters of the position and orientation are used as the possible position and orientation distribution of the target component.
図5(a)は、このようにして得られた概略位置姿勢の分布の一例である。本実施形態では、簡単のため、位置姿勢をx、yの2パラメータで表すが、実際のフィッティングにおける6パラメータの位置姿勢においても同様に実行することが可能である。 FIG. 5A is an example of the distribution of the approximate position and posture obtained in this way. In the present embodiment, for the sake of simplicity, the position and orientation are represented by two parameters of x and y, but the same can be performed in the position and orientation of six parameters in the actual fitting.
なお、本実施形態における画像内での特定の部品の位置姿勢を探索する手法は、輝度画像のみに限定されるものではなく、距離画像などの3次元情報を探索する手法であってもよい。 The method of searching for the position and orientation of a specific component in the image in the present embodiment is not limited to the luminance image, and may be a method of searching for three-dimensional information such as a distance image.
さらに本実施形態では、画像を全探索する場合を説明したが、本発明の実施においては必ずしも得られた画像を全探索する必要はない。例えば、部品が常に作業スペース内のほぼ同じ場所にあることが分かっている場合には、その領域に限定して部分的に探索するようにしても問題はない。 Further, in the present embodiment, the case where the image is completely searched has been described, but in the practice of the present invention, it is not always necessary to completely search the obtained image. For example, if it is known that the parts are always in the same place in the workspace, there is no problem even if the part is partially searched only in that area.
(ステップS403)
ステップS403では、ステップS402で得られた概略位置姿勢の分布に基づいて所定の個数の位置姿勢候補を生成する。
(Step S403)
In step S403, a predetermined number of position / posture candidates are generated based on the distribution of the approximate position / posture obtained in step S402.
まず、概略位置姿勢の分布より平均ベクトルμと共分散行列Σを算出してガウス分布を適用する。図5(b)はこうして得られた2次元ガウス分布の確率密度が一定となる等高線を図5(a)に重ねたものである。 First, the mean vector μ and the covariance matrix Σ are calculated from the distribution of the approximate position and orientation, and the Gaussian distribution is applied. FIG. 5B is a contour line in which the probability density of the two-dimensional Gaussian distribution thus obtained is constant is superimposed on FIG. 5A.
次に求められたガウス分布に従って、所定の個数の位置姿勢候補を生成する。所定の個数とはシステムに要求される許容時間から逆算して適切な個数を設定すればよい。図5(c)はこのようにして生成した位置姿勢候補である。 Next, a predetermined number of position / orientation candidates are generated according to the obtained Gaussian distribution. The predetermined number may be calculated back from the permissible time required for the system and an appropriate number may be set. FIG. 5C is a position / posture candidate generated in this way.
この例では、ステップS402で得られた概略位置姿勢の分布(図5(c)で黒丸でプロットされている点)と、新たに生成した位置姿勢候補(図5(c)で黒三角でプロットされている点)の合計が20個になるように生成し、これら20個の点を初期位置姿勢とする(初期位置姿勢生成)。 In this example, the distribution of the approximate position and orientation obtained in step S402 (points plotted by black circles in FIG. 5C) and the newly generated position and orientation candidates (plots by black triangles in FIG. 5C). It is generated so that the total number of the points) is 20 and these 20 points are set as the initial position / posture (initial position / posture generation).
なお、本実施形態では、概略位置姿勢として挙げられている位置姿勢には一定の合理性があると考え、位置姿勢候補として採用した。しかし本発明の実施においては、概略位置姿勢として挙げられたものは採用せずに、新たに生成した位置姿勢だけを採用してもよい。 In addition, in this embodiment, it is considered that the position / posture listed as the approximate position / posture has a certain rationality, and it is adopted as a position / posture candidate. However, in the practice of the present invention, it is possible to adopt only the newly generated position / orientation without adopting the one listed as the approximate position / orientation.
また、確率密度モデルとして、ガウス分布を適用したが、実際には得られた概略位置姿勢の分布を要約できる分布であれば他の分布(所定の分布関数)であってもよいし、もっと簡単に方形状の分布を適用してもよい。 In addition, although the Gaussian distribution was applied as the probability density model, another distribution (predetermined distribution function) may be used as long as the distribution of the obtained approximate position and orientation can be summarized, and it is simpler. A square distribution may be applied to.
(ステップS404)
ステップS404では、ステップS403で得られた複数の位置姿勢候補の中からスコア(3次元モデルと輝度画像及び距離画像の合致度を表す)の高い位置姿勢候補を一以上の所定の個数、選択する(初期位置姿勢選択)。具体的には後述する位置姿勢算出における位置姿勢更新処理、ステップS601〜S606を1回行い、その結果得られるスコアを比較して高いものから順に所定の個数、抽出する。
(Step S404)
In step S404, one or more predetermined number of position / orientation candidates having a high score (representing the degree of matching between the three-dimensional model and the luminance image and the distance image) are selected from the plurality of position / orientation candidates obtained in step S403. (Initial position / posture selection). Specifically, the position / posture update process and steps S601 to S606 in the position / posture calculation described later are performed once, and the scores obtained as a result are compared and a predetermined number is extracted in order from the highest one.
このようにして選択された位置姿勢候補に対してのみ、反復を伴う位置姿勢算出処理を行うことでフィッティングにかかる総時間を短縮する。ここでも所定の個数はシステムに要求される許容時間から逆算して適切な個数を設定すればよい。またここにおけるスコアは、3次元モデルと、輝度画像及び距離画像との合致している度合いを表す値なら何でもよい。 The total time required for fitting is shortened by performing the position / orientation calculation process accompanied by repetition only for the position / orientation candidates selected in this way. Here, too, the predetermined number may be set by calculating back from the permissible time required for the system. Further, the score here may be any value as long as it represents the degree of matching between the three-dimensional model and the luminance image and the distance image.
例えば3次元モデルと輝度画像及び距離画像で誤差ベクトル(後述)を求めそのノルムの逆数を用いる方法が考えられるがその他の指標でもよい。ここで説明した選択処理ではスコアで評価する前に位置姿勢更新処理、ステップS601〜ステップS606を1回行っているが(1回対応づけている)、この回数は必ずしも1回である必要はなく、高速且つ妥当な初期位置姿勢の見込みを確かめられる方法ならばなんでもよい。 For example, a method of obtaining an error vector (described later) from a three-dimensional model, a luminance image, and a distance image and using the reciprocal of the norm can be considered, but other indexes may be used. In the selection process described here, the position / posture update process and steps S601 to S606 are performed once (corresponding once) before the evaluation by the score, but the number of times does not necessarily have to be one. Any method can be used to confirm the probability of a high-speed and reasonable initial position and orientation.
例えば位置姿勢更新を1回も行わずにスコアを算出してもよいし、または位置姿勢更新を2回以上行ってからスコアを算出してもよい。このように選択処理の具体的な手順については無数の方法が考えられるが本発明の実施においては特にどれでなくてはならないということはない。 For example, the score may be calculated without updating the position / posture even once, or the score may be calculated after updating the position / posture twice or more. As described above, innumerable methods can be considered for the specific procedure of the selection process, but it is not necessary to use any of them in the practice of the present invention.
(ステップS405)
ステップS405では、ステップS404で選択された一以上の所定の個数の位置姿勢候補のそれぞれで、最終的な位置姿勢を決定する。ここでの位置姿勢算出処理の詳細については図6を用いて説明する。図6はステップS405で示した1つの初期位置姿勢に関する位置姿勢算出処理の詳細な手順を示したフローチャートである。
(Step S405)
In step S405, the final position / posture is determined for each of one or more predetermined number of position / posture candidates selected in step S404. The details of the position / orientation calculation process here will be described with reference to FIG. FIG. 6 is a flowchart showing a detailed procedure of the position / posture calculation process regarding one initial position / posture shown in step S405.
本実施形態では、Gauss−Newton法により、計測対象物体の位置姿勢候補(以下、sで表す)を反復演算により繰り返し補正することにより、位置姿勢を算出する。ここでは、画像上で検出されたエッジと推定される位置姿勢とに基づいて、画像上に投影される3次元モデル上のエッジとの距離、距離画像の点群データを構成する各点と位置姿勢に基づいて、3次元計測装置の座標系に変換される面との距離の総和が最小化されるように位置姿勢を最適化する。 In the present embodiment, the position and orientation are calculated by repeatedly correcting the position and orientation candidates (hereinafter, represented by s) of the object to be measured by the Gauss-Newton method by iterative calculation. Here, based on the edge detected on the image and the estimated position and orientation, the distance to the edge on the three-dimensional model projected on the image, and each point and position constituting the point cloud data of the distance image. Based on the orientation, the position orientation is optimized so that the total distance to the surface converted into the coordinate system of the 3D measuring device is minimized.
より具体的には、2次元画像上での点と直線の符号付距離、3次元空間中での点と平面との符号付距離を、1次のテイラー展開によってそれぞれ部品の位置姿勢の微小変化の1次関数として表現する。そして、符号付距離が0になるような位置姿勢の微小変化に関する線形の連立方程式を立式して解くことにより、部品の位置姿勢の微小変化を求めて位置姿勢を補正することを繰り返す。 More specifically, the signed distance between a point and a straight line on a two-dimensional image, and the signed distance between a point and a plane in a three-dimensional space are slightly changed by the first-order Taylor expansion. Expressed as a linear function of. Then, by formulating and solving a linear simultaneous equation for a minute change in the position and orientation such that the signed distance becomes 0, the position and orientation are repeatedly corrected by obtaining the minute change in the position and orientation of the component.
(ステップS601)
ステップS601では、初期化を行う。ここでは、ステップS404で選択された位置姿勢候補を、これ以降「現在の位置姿勢」として記載する位置姿勢の初期値として設定する。
(Step S601)
In step S601, initialization is performed. Here, the position / posture candidate selected in step S404 is set as the initial value of the position / posture described as the “current position / posture” thereafter.
(ステップS602)
ステップS602では、対応付けを行う。まず、現在の位置姿勢に基づいて、3次元モデルの各エッジの画像への投影及び各面の3次元計測装置の座標系への座標変換を行う。その後エッジ及び点群データの対応付けを行う。
(Step S602)
In step S602, the association is performed. First, based on the current position and orientation, the projection of each edge of the three-dimensional model onto the image and the coordinate conversion of each surface to the coordinate system of the three-dimensional measuring device are performed. After that, the edge and point cloud data are associated.
図7はエッジの対応付け方法を示す図である。 FIG. 7 is a diagram showing a method of associating edges.
図7(a)は輝度画像上に3次元モデルのエッジを投影した図である。まず画像上で等間隔になるように、投影されたエッジ701上に制御点702を設定し、各制御点ごとに、投影されたエッジ701の法線方向に探索ライン703をとる。制御点を原点とした探索ラインの所定の範囲内で1次元のエッジの検出を行い、検出されたエッジの中で制御点に最も近い点を対応点1005として保持する。 FIG. 7A is a diagram in which the edges of the three-dimensional model are projected onto the luminance image. First, control points 702 are set on the projected edges 701 so as to be evenly spaced on the image, and a search line 703 is set in the normal direction of the projected edges 701 for each control point. A one-dimensional edge is detected within a predetermined range of the search line with the control point as the origin, and the point closest to the control point among the detected edges is held as the corresponding point 1005.
図7(b)は原点が制御点で、横軸に探索ライン、縦軸に輝度勾配の絶対値をとるグラフである。先の画像上にエッジは画素値の輝度勾配の絶対値の極値として検出される。ここでは輝度勾配の絶対値の極値が所定の閾値705よりも大きく、且つ最も制御点に近い点704を対応点とする。 FIG. 7B is a graph in which the origin is the control point, the horizontal axis is the search line, and the vertical axis is the absolute value of the luminance gradient. The edge on the previous image is detected as the extreme value of the absolute value of the brightness gradient of the pixel value. Here, the point 704 in which the extreme value of the absolute value of the luminance gradient is larger than the predetermined threshold value 705 and is closest to the control point is set as the corresponding point.
次に点群データの対応付けを行う。点群データ中の各点につき、三次元空間において最も近傍する面を探索し対応付ける。 Next, the point cloud data is associated. For each point in the point cloud data, the closest surface in the three-dimensional space is searched and associated.
(ステップS603)
ステップS603では、線形連立方程式を解くための係数行列と誤差ベクトルの算出を行う。ここで係数行列の各要素は、位置姿勢の微小変化に対する一次の偏微分係数である。エッジについては、画像座標の偏微分係数を算出し、点群については3次元座標の偏微分係数を算出する。誤差ベクトルは、エッジについては投影されたエッジと検出されたエッジの画像上での距離、点群データについてはモデルの面と点の3次元空間中での距離である。
(Step S603)
In step S603, the coefficient matrix and the error vector for solving the linear simultaneous equations are calculated. Here, each element of the coefficient matrix is a first-order partial differential coefficient with respect to a minute change in position and orientation. For the edge, the partial differential coefficient of the image coordinates is calculated, and for the point cloud, the partial differential coefficient of the three-dimensional coordinates is calculated. The error vector is the distance between the projected edge and the detected edge on the image for the edge, and the distance between the face and the point of the model in the three-dimensional space for the point cloud data.
図8は、エッジの投影像と検出されたエッジとの関係を説明する図である。図8では、画像の水平方向、垂直方向をそれぞれu軸、v軸としている。ある制御点(投影された各エッジを画像上で等間隔に分割する点)の画像上での位置を(u0、v0)、該制御点が所属するエッジの画像上での傾きをu軸に対する傾きθと表す。傾きθは、エッジの両端の3次元座標をsに基づいて画像上に投影し、画像上での両端の座標を結んだ直線の傾きとして算出する。該エッジの画像上での法線ベクトルは(sinθ、−cosθ)となる。また、該制御点の対応点の画像座標を(u’、v’)とする。ここで、点(u’、v’)を通り、傾きがθである直線上の点(u、v)は、 FIG. 8 is a diagram illustrating the relationship between the projected image of the edge and the detected edge. In FIG. 8, the horizontal direction and the vertical direction of the image are u-axis and v-axis, respectively. The position of a certain control point (the point that divides each projected edge at equal intervals on the image) on the image (u 0 , v 0 ), and the inclination of the edge to which the control point belongs on the image are u Expressed as the inclination θ with respect to the axis. The slope θ is calculated as the slope of a straight line connecting the coordinates of both ends on the image by projecting the three-dimensional coordinates of both ends of the edge onto the image based on s. The normal vector of the edge on the image is (sinθ, −cosθ). Further, the image coordinates of the corresponding points of the control points are (u', v'). Here, the point (u, v) on the straight line passing through the point (u', v') and having a slope of θ is
制御点の画像上での位置は、計測対象物体の位置姿勢により変化する。また、計測対象物体の位置姿勢の自由度は6自由度である。すなわちsは6次元ベクトルであり、計測対象物体の位置を表す3つの要素と、姿勢を表す3つの要素からなる。姿勢を表す3つの要素は、例えばオイラー角による表現や、方向が回転軸を表して大きさが回転角を表す3次元ベクトルなどによって表現される。位置姿勢により変化する制御点の画像座標(u、v)は(u0、v0)の近傍で1次のテイラー展開によって数2のように近似できる。但しΔsi(i=1、2、・・・、6)はsの各成分の微小変化を表す。 The position of the control point on the image changes depending on the position and orientation of the object to be measured. Further, the degree of freedom of the position and orientation of the object to be measured is 6 degrees of freedom. That is, s is a six-dimensional vector, and is composed of three elements representing the position of the object to be measured and three elements representing the posture. The three elements representing postures are represented by, for example, Euler angles and three-dimensional vectors whose direction represents the axis of rotation and whose size represents the angle of rotation. The image coordinates (u, v) of the control points that change depending on the position and orientation can be approximated as in Equation 2 by the first-order Taylor expansion in the vicinity of (u 0 , v 0 ). However, Δs i (i = 1, 2, ..., 6) represents a minute change in each component of s.
正しいsによって得られる制御点の画像上での位置は、数1が表す直線上にあると仮定できる。数2によって近似されるu、vを数1に代入することにより、数3が得られる。 It can be assumed that the position of the control point obtained by the correct s on the image is on the straight line represented by Equation 1. By substituting u and v approximated by the number 2 into the number 1, the number 3 is obtained.
3次元計測装置の座標系における3次元座標は、計測対象部品の位置姿勢sによってモデル座標系における3次元座標(x、y、z)に変換することができる。概略の位置姿勢により、ある点がモデル座標系の点(x0、y0、z0)に変換されるとする。(x、y、z)は、計測対象物体の位置姿勢により変化するものであり、(x0、y0、z0)の近傍で1次のテイラー展開によって数4のように近似できる。 The three-dimensional coordinates in the coordinate system of the three-dimensional measuring device can be converted into three-dimensional coordinates (x, y, z) in the model coordinate system according to the position and orientation s of the component to be measured. It is assumed that a certain point is converted into a point (x 0 , y 0 , z 0 ) in the model coordinate system according to the approximate position and orientation. (X, y, z) changes depending on the position and orientation of the object to be measured, and can be approximated as in Equation 4 by the first-order Taylor expansion in the vicinity of (x 0 , y 0 , z 0 ).
ステップS602において、点群データ中のある点に対応付けられた3次元モデルの面の、モデル座標系における方程式をax+by+cz=e(a2+b2+c2=1、a、b、c、eは定数)とする。正しいsによって変換される(x、y、z)は、平面の方程式ax+by+cz=e(a2+b2+c2=1)を満たすと仮定する。数4を平面の方程式に代入すると数5が得られる。 In step S602, the equation in the model coordinate system of the surface of the three-dimensional model associated with a certain point in the point cloud data is ax + by + cz = e (a 2 + b 2 + c 2 = 1, a, b, c, e. (Constant). It is assumed 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 4 into the plane equation gives equation 5.
数3は、ステップS602において対応付けが行われたすべてのエッジについて成り立つ。また、数5はS602において対応付けが行われたすべての点群データについて成り立つため、数6のようなΔsiに関する線形連立方程式が成り立つ。 Equation 3 holds for all the edges associated in step S602. The number 5 is for holds for all the point group data association is performed in S602, the linear simultaneous equation is satisfied about Delta] s i such as the number 6.
ここで数6を数7のように表す。 Here, the number 6 is expressed as the number 7.
数6の線形連立方程式の係数行列Jを算出するための偏微分係数の算出は、例えば以下の文献に開示されている方法によって行う。
V. Lepetit and P. Fua, ‘Keypoint recognition using randomized trees,’ IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.28, no.9, 2006.
The partial differential coefficient for calculating the coefficient matrix J of the linear simultaneous equations of Equation 6 is calculated by, for example, the method disclosed in the following documents.
V. Lepetit and P.M. Fua,'Keypoint recognition randomized trees,' IEEE Transitions on Pattern Analysis and Machine Intelligence, vol. 28, no. 9, 2006.
(ステップS604)
ステップS604では、数7をもとに、行列Jの一般化逆行列(JT・J)−1・JTを用いてΔsを求める。しかしながら、エッジや点群データには誤検出などによる外れ値が多いため、次に述べるようなロバスト推定手法を用いる。一般に、外れ値であるエッジ(点群データ)では、誤差d−r(e−q)が大きくなる。そのため、数6、数7の連立方程式に対する寄与度が大きくなり、その結果得られるΔsの精度が低下してしまう。
(Step S604)
At step S604, the based on the number 7, it obtains the Δs using generalized inverse matrix of the matrix J (J T · J) -1 · J T. However, since there are many outliers due to false positives in edge and point cloud data, the robust estimation method described below is used. In general, the error dr (eq) becomes large at the edge (point cloud data) which is an outlier. Therefore, the degree of contribution to the simultaneous equations of Equations 6 and 7 increases, and the accuracy of Δs obtained as a result decreases.
そこで、誤差d−r(e−q)が大きいデータには小さな重みを与え、誤差d−r(e−q)が小さいデータには、大きな重みを与える。重みは、例えば数8に示すようなTukeyの関数により与える。 Therefore, a small weight is given to the data having a large error dr (eq), and a large weight is given to the data having a small error dr (eq). The weight is given by Tukey's function as shown in Equation 8, for example.
c1、c2は定数である。なお、重みを与える関数はTukeyの関数である必要はなく、例えばHuberの関数など、誤差 大きいデータには小さな重みを与え、誤差小さいデータには大きな重みを与える関数であればなんでもよい。 c 1 and c 2 are constants. The weighting function does not have to be Tukey's function, and any function such as Huber's function that gives a small weight to data with a large error and a large weight to data with a small error may be used.
各データ(エッジまたは点群データ)に対応する重みをwiとする。ここで数9のように重み行列Wを定義する。 The weights corresponding to the respective data (edge or point group data) and w i. Here, the weight matrix W is defined as in Equation 9.
重み行列Wは、対角成分以外はすべて0の正方行列であり、対角成分には重みwiが入る。この重み行列Wを用いて、数7を数10のように変形する。 Weight matrix W is, all but the diagonal component is a square matrix of 0, the weights w i enters the diagonal component. Using this weight matrix W, the equation 7 is transformed into the equation 10.
数11のように数10を解くことにより補正値Δsを求める。 The correction value Δs is obtained by solving the equation 10 as in the equation 11.
(ステップS605)
ステップS605では、ステップS604において算出された位置姿勢の補正値Δsにより、位置姿勢を更新する。
(Step S605)
In step S605, the position / posture is updated by the correction value Δs of the position / posture calculated in step S604.
(ステップS606)
ステップS606では、位置姿勢が収束したか否かの判定を行い、収束したと判定された場合はその時の位置姿勢をフィッティング結果として処理を終了する。収束していないと判定された場合は、収束するまでステップS602〜S605を繰り返し行う。収束判定は、ステップS605の補正量が所定の値以下でほぼ変化がないと判定された場合に収束したと判定する。なお、収束判定の方法はこの方法に限定されるものではなく、例えば、所定の回数、反復したら収束したものとして次のステップに進むことにしてもよい。
(Step S606)
In step S606, it is determined whether or not the position and posture have converged, and if it is determined that the position and posture have converged, the processing is terminated with the position and posture at that time as the fitting result. If it is determined that they have not converged, steps S602 to S605 are repeated until they converge. The convergence test is determined to have converged when it is determined that the correction amount in step S605 is equal to or less than a predetermined value and there is almost no change. The method of determining convergence is not limited to this method, and for example, the method may proceed to the next step assuming that the method has converged after being repeated a predetermined number of times.
(ステップS406)
ステップS406では、ステップS405で求められた一以上の所定の個数の位置姿勢算出結果のスコアを比較して、高いスコアを示す一以上の位置姿勢を最終的なフィッティング結果として出力する。ここにおけるスコアも、ステップS404で説明したものと同様の指標である。
(Step S406)
In step S406, the scores of one or more predetermined number of position / posture calculation results obtained in step S405 are compared, and one or more position / posture showing a high score is output as the final fitting result. The score here is also an index similar to that described in step S404.
このように、本実施形態によれば、計測対象物体を画像内で全探索した結果から、計測対象物体の概略位置姿勢の分布を決定し、この分布に基づいて局所解となり得る複数の位置姿勢候補を網羅的に検証することで、ノイズの多い環境や複雑な形状の対象物体に対してもロバストな位置姿勢計測を行うことができる。 As described above, according to the present embodiment, the distribution of the approximate position / orientation of the measurement target object is determined from the result of the full search of the measurement target object in the image, and a plurality of position / orientations that can be local solutions based on this distribution are determined. By comprehensively verifying the candidates, it is possible to perform robust position and orientation measurement even in a noisy environment or an object with a complicated shape.
なお、本発明における計測対象物体の位置姿勢の算出方法は、Gauss−Newton法に限るものではない。例えば、より計算がロバストであるLevenberg−Marquardt法によって行ってもよいし、よりシンプルな方法である最急降下法によって行ってもよい。また、共役勾配法やICCG法など、他の非線形最適化計算手法を用いてもよい。 The method for calculating the position and orientation of the object to be measured in the present invention is not limited to the Gauss-Newton method. For example, the calculation may be performed by the Levenberg-Marquardt method, which is more robust, or by the steepest descent method, which is a simpler method. Further, other nonlinear optimization calculation methods such as the conjugate gradient method and the ICCG method may be used.
なお、本実施形態では、位置姿勢計測装置104は、撮像画像を撮像装置103から直接取得しているが、これに限るものではなく、例えば、撮像装置103によって撮像された撮像画像を蓄積しているメモリから取得するようにしても良い。この場合、撮像装置103は必ずしも、位置姿勢計測装置104に接続されている必要はない。 In the present embodiment, the position / orientation measuring device 104 acquires the captured image directly from the imaging device 103, but the present invention is not limited to this, and for example, the captured image captured by the imaging device 103 is accumulated. It may be acquired from the existing memory. In this case, the image pickup device 103 does not necessarily have to be connected to the position / attitude measuring device 104.
本実施形態においては、フィッティングする形状情報の組み合わせとして計測対象物体の3次元モデル情報と撮像装置で撮影された部品を含む画像の組み合わせを例に説明したが、形状情報の組み合わせは必ずしもこの組み合わせでなくてもよく、形状情報間で対応を取って位置合わせが可能な情報であればなんでもよい。物体の形状情報の例としては3次元モデル情報、画像のほかに、レーザーレンジセンサーなどで計測して得られた3次元点群情報なども考えられる。 In the present embodiment, the combination of the three-dimensional model information of the object to be measured and the image including the parts captured by the imaging device has been described as an example of the combination of the shape information to be fitted, but the combination of the shape information is not necessarily this combination. It does not have to be, and any information that can be aligned by taking correspondence between the shape information may be used. As an example of the shape information of the object, in addition to the three-dimensional model information and the image, the three-dimensional point cloud information obtained by measuring with a laser range sensor or the like can be considered.
[第2の実施形態]
第1の実施形態では、計測対象物体の概略位置姿勢の分布から、多次元ガウス分布を適用し、その分布に従って位置姿勢候補を生成した。しかし、ガウス分布のような確率密度モデルを適用しないで位置姿勢候補を生成する方法も考えられる。
[Second Embodiment]
In the first embodiment, a multidimensional Gaussian distribution is applied from the approximate position / orientation distribution of the object to be measured, and position / orientation candidates are generated according to the distribution. However, a method of generating position / orientation candidates without applying a probability density model such as a Gaussian distribution is also conceivable.
その方法の一例として、第2の実施形態では、概略位置姿勢の分布を所定のサンプリング間隔で集計して、その集計結果に基づいて位置姿勢候補を生成する方法を説明する。以下はこれまでに説明した位置姿勢分布を決定する第1の実施形態の説明におけるステップS403に置き換わる処理である。 As an example of the method, in the second embodiment, a method of totaling the distribution of the approximate position / posture at a predetermined sampling interval and generating the position / posture candidate based on the totaling result will be described. The following is a process that replaces step S403 in the description of the first embodiment for determining the position-posture distribution described so far.
まず、位置姿勢分布を集計する範囲を決定する。図9(a)は、図5(a)に示した位置姿勢分布が与えられたときに撮影画像の範囲をx1〜x2、y1〜y2としてサンプリングするbinを区切った様子を示す図である。binの幅dはあらかじめ設定しておく定数で、例えば計測対象物体の長辺サイズを所定の値で割った値などが考えられる。ここでは長辺サイズは50mmの計測対象物体を所定の値10で割って5mmをdとして設定する。または、例えば計測対象物体の長辺サイズではなく撮影範囲を所定の数で割った値をdとして設定してもよい。 First, the range for totaling the position-posture distribution is determined. FIG. 9A is a diagram showing a state in which bins for sampling are divided by setting the range of the captured image as x1 to x2 and y1 to y2 when the position / orientation distribution shown in FIG. 5A is given. The width d of the bin is a constant set in advance, and for example, a value obtained by dividing the long side size of the object to be measured by a predetermined value can be considered. Here, the long side size is set by dividing a measurement target object having a length of 50 mm by a predetermined value of 10 and setting 5 mm as d. Alternatively, for example, instead of the long side size of the object to be measured, a value obtained by dividing the photographing range by a predetermined number may be set as d.
次に、上記binを設定した範囲で集計をする。図9(b)は各グリッド内に存在する位置姿勢の数を得票数としてカウントし、グリッドの中央に記載した図である。こうしてカウントされたグリッドの中から最大となる4票を得た左から4番目、上から3番目のbinを選定する。 Next, the above bins are totaled within the set range. FIG. 9B is a diagram in which the number of positions and postures existing in each grid is counted as the number of votes and is shown in the center of the grid. From the grid counted in this way, the fourth bin from the left and the third bin from the top that obtained the maximum of 4 votes are selected.
最後に、選定されたbinに所定の間隔で位置姿勢候補を生成する。所定の間隔は、システムに要求される許容時間から逆算して得られる位置姿勢候補の個数に基づき、適切な値を設定すればよい。また、間隔を必ずしも均等にする必要はなく、位置姿勢候補の個数だけbinの内部にランダムに生成してもよい。図9(c)はこのようにして位置姿勢候補を9個生成した時の様子を示す図である。 Finally, position / orientation candidates are generated at predetermined intervals in the selected bin. An appropriate value may be set for the predetermined interval based on the number of position / posture candidates obtained by back calculation from the permissible time required for the system. Further, the intervals do not necessarily have to be equal, and the number of position / orientation candidates may be randomly generated inside the bin. FIG. 9C is a diagram showing a state when nine position / posture candidates are generated in this way.
こうして生成した位置姿勢候補に対して、ステップS404以降の処理を第1の実施形態同様に実行する。 For the position / orientation candidate generated in this way, the processes after step S404 are executed in the same manner as in the first embodiment.
このように、本実施形態によれば、概略位置姿勢の分布を所定のサンプリング間隔で集計して利用することで、第1の実施形態をより簡便で高速に実施することができる。 As described above, according to the present embodiment, the first embodiment can be carried out more easily and at high speed by collecting and using the distribution of the approximate position and posture at predetermined sampling intervals.
[第3の実施形態]
第1および第2の実施形態では、計測対象物体が取り得る複数の概略位置姿勢の分布が得られるものとして、概略位置姿勢の分布に基づいて、位置姿勢候補の生成を行う方法について述べた。しかし、位置姿勢候補の生成は,概略位置姿勢の分布に基づく方式に限るものではない。例えば、テンプレートマッチングなどにより概略位置姿勢を推定する場合には、マッチングするテンプレートの数や探索するステップ幅に応じて、推定される位置姿勢の分解能が決定される。このような場合、実際の位置姿勢に対して、概略位置姿勢の分解能の範囲内で、推定される位置姿勢に曖昧性が発生することになる。第3の実施形態では、この点を鑑み、概略位置姿勢推定における分解能に基づいて位置姿勢候補の生成を行う方法について説明する。以下は、これまでに説明した第1の実施形態の説明における位置姿勢候補の生成工程であるステップS403に置き換わる処理である。
[Third Embodiment]
In the first and second embodiments, a method of generating position / posture candidates based on the distribution of the approximate position / posture has been described, assuming that a plurality of approximate position / posture distributions that can be taken by the measurement target object can be obtained. However, the generation of position and orientation candidates is not limited to the method based on the distribution of approximate position and orientation. For example, when estimating the approximate position / orientation by template matching or the like, the resolution of the estimated position / orientation is determined according to the number of matching templates and the step width to be searched. In such a case, ambiguity occurs in the estimated position / orientation within the range of the resolution of the approximate position / orientation with respect to the actual position / orientation. In the third embodiment, in view of this point, a method of generating the position / posture candidate based on the resolution in the approximate position / posture estimation will be described. The following is a process that replaces step S403, which is a step of generating a position / posture candidate in the description of the first embodiment described so far.
まず、概略位置姿勢の分解能を決定する。ここで、概略位置姿勢の分解能とは,位置と姿勢を表現する最小ステップ幅のことを表す。例えば、位置の分解能が1[mm]である場合は、1[mm]よりも細かい値で概略位置姿勢が推定されることはない。概略位置姿勢の分解能は、概略位置姿勢の標本化幅や精度,計測対象物体のサイズ等により決定される。例えば、概略位置姿勢の推定方法として、第一の実施形態のステップS402で例に挙げたようなパターンマッチングベースの方法を利用する場合、姿勢の分解能はマッチングに利用するパターンとして登録する姿勢のサンプリング幅から決定される。例えば測地ドーム状に8度刻みで姿勢パラメータをサンプリングしてパターンマッチングする場合、サンプリング幅となる8度が姿勢の分解能となる。また、位置の分解能は、姿勢の分解能によって位置の推定を間違いうる範囲を計算することで求める。具体的には、以下の式に基づいて,姿勢パラメータの分解能ω[rad]と計測対象物体の長辺サイズw [mm]に基づいて、姿勢に基づく位置の最大ズレ幅d [mm]を求め,算出したdを位置の分解能として設定する。 First, the resolution of the approximate position and orientation is determined. Here, the resolution of the approximate position / posture represents the minimum step width for expressing the position and the posture. For example, when the position resolution is 1 [mm], the approximate position and orientation cannot be estimated with a value smaller than 1 [mm]. The resolution of the approximate position and orientation is determined by the sampling width and accuracy of the approximate position and orientation, the size of the object to be measured, and the like. For example, when a pattern matching-based method as described in step S402 of the first embodiment is used as a method for estimating the approximate position and posture, the posture resolution is the sampling of the posture registered as the pattern used for matching. Determined from the width. For example, when posture parameters are sampled in a geodetic dome shape in increments of 8 degrees and pattern matching is performed, the posture resolution is 8 degrees, which is the sampling width. The position resolution is obtained by calculating the range in which the position estimation can be mistaken based on the posture resolution. Specifically, the maximum deviation width d [mm] of the position based on the posture is obtained based on the resolution ω [rad] of the posture parameter and the long side size w [mm] of the object to be measured based on the following equation. , Set the calculated d as the position resolution.
本実施形態では、以上に示す方法により、姿勢のサンプリング幅と計測対象物体のサイズに基づいて、概略位置姿勢の分解能を決定する。ただし,概略位置姿勢の決定方法は以上に示す方法には限るものではない。例えば、位置の分解能を,概略位置姿勢の推定に利用する画像の解像度に基づいて設定しても良いし、以下の非特許文献に示す方式によって撮像素子ノイズ量や計測対象物体の形状に基づいて推定した位置姿勢推定の曖昧性に基づいて設定しても良い。
W. Hoff and T. Vincent, “Analysis of head pose accuracy in augmented reality, ”IEEE Transactions on Visualization and Computer Graphics, vol.6, no.4, pp.319−334, 2000.
In the present embodiment, the resolution of the approximate position posture is determined based on the posture sampling width and the size of the object to be measured by the method shown above. However, the method for determining the approximate position and posture is not limited to the method shown above. For example, the position resolution may be set based on the resolution of the image used for estimating the approximate position and orientation, or based on the amount of noise of the image sensor and the shape of the object to be measured by the method shown in the following non-patent documents. It may be set based on the ambiguity of the estimated position / orientation estimation.
W. Hoff and T. Vincent, "Analysis of head pose accuracy in augmented reality," IEEE Transitions on Visualization and Computer Graphics, vol. 6, no. 4, pp. 319-334, 2000.
また、設定パラメータとしてあらかじめ人が設定してもよい。概略位置姿勢の取りうる最小ステップ幅としての分解能を決定できる限り、いかなる決定方法を用いても良く、その決定方法によって本発明の本質が損なわれることはない。 Further, a person may set it in advance as a setting parameter. Any determination method may be used as long as the resolution as the minimum possible step width of the approximate position and orientation can be determined, and the determination method does not impair the essence of the present invention.
次に、概略位置姿勢の分解能に基づいて、位置姿勢候補を生成する。具体的には、概略位置姿勢を中心とした概略位置姿勢の分解能幅の範囲内で、所定の間隔で位置姿勢をサンプリングすることで、位置姿勢候補を生成する。サンプリングする間隔は、システムに要求される許容時間から逆算して得られる位置姿勢候補の個数に基づき、適切な値を設定すればよい。また、間隔を必ずしも均等にする必要はなく、位置姿勢候補の個数だけランダムに生成してもよい。概略位置姿勢としては、第一の実施形態のステップS402において得られた概略位置姿勢の分布の平均値を用いればよい。また、概略位置姿勢の分布ではなく、単一の概略位置姿勢が取得される場合には、それを用いればよい。なお、位置姿勢候補の生成方法は以上の方法に限るものではなく、例えば,第一の実施形態と同様に,概略位置姿勢の分解能から、位置姿勢が取りうる範囲をガウス分布に近似し、ガウス分布に基づいて位置姿勢を生成しても良い。この場合,位置姿勢6パラメータに関する多次元ガウス分布の平均ベクトルμは、第一の実施形態のステップS402において取得した概略位置姿勢の分布の平均から求める。そして、ガウス分布の分散共分散行列Σを概略位置姿勢の分解能幅から設定することで、概略位置姿勢の分解能に基づいて多次元ガウス分布を算出する。そして、求めたガウス分布に基づいて、第1の実施形態のステップS403と同様に所定の個数の位置姿勢をサンプリングすることで位置姿勢候補を生成する。なお,ガウス分布に基づく位置姿勢の生成は,分解能に基づくガウス分布に加え、第1の実施形態で示すような概略位置姿勢の分布を近似した分布を併用して生成しても良い。この場合、具体的には、第1の実施形態のステップS403の方法で求めたガウス分布に、上述の分解能に基づくガウス分布を足し合わせた分布を算出する。そして、求めた分布に基づいて、第一の実施形態のステップS403と同様の方法で位置姿勢候補を生成すれば良い。 Next, a position / orientation candidate is generated based on the resolution of the approximate position / orientation. Specifically, position / posture candidates are generated by sampling the position / posture at predetermined intervals within the range of the resolution width of the approximate position / posture centered on the approximate position / posture. The sampling interval may be set to an appropriate value based on the number of position / orientation candidates obtained by back calculation from the permissible time required for the system. Further, the intervals do not necessarily have to be equal, and the number of position / orientation candidates may be randomly generated. As the approximate position / posture, the average value of the distribution of the approximate positions / postures obtained in step S402 of the first embodiment may be used. Further, when a single approximate position / posture is acquired instead of the distribution of the approximate position / posture, it may be used. The method of generating the position / posture candidate is not limited to the above method. For example, as in the first embodiment, the range that the position / posture can take is approximated to the Gaussian distribution from the resolution of the approximate position / posture, and the Gauss The position and orientation may be generated based on the distribution. In this case, the average vector μ of the multidimensional Gaussian distribution with respect to the 6 parameters of the position / orientation is obtained from the average of the distribution of the approximate position / orientation acquired in step S402 of the first embodiment. Then, by setting the variance-covariance matrix Σ of the Gaussian distribution from the resolution width of the approximate position / orientation, the multidimensional Gaussian distribution is calculated based on the resolution of the approximate position / orientation. Then, based on the obtained Gaussian distribution, a predetermined number of position / posture candidates are sampled in the same manner as in step S403 of the first embodiment to generate position / posture candidates. The position / orientation based on the Gaussian distribution may be generated by using a Gaussian distribution based on the resolution and a distribution that approximates the approximate position / orientation distribution as shown in the first embodiment. In this case, specifically, a distribution obtained by adding the Gaussian distribution based on the above-mentioned resolution to the Gaussian distribution obtained by the method of step S403 of the first embodiment is calculated. Then, based on the obtained distribution, the position / posture candidate may be generated by the same method as in step S403 of the first embodiment.
以上に示すように、位置姿勢候補の生成にあたっては、概略位置姿勢の分解能に基づいて位置姿勢候補を生成できる限り、生成方法に特に制限はなく、いかなる方法を用いても特に問題はない。 As described above, in the generation of the position / posture candidate, as long as the position / posture candidate can be generated based on the resolution of the approximate position / posture, there is no particular limitation on the generation method, and there is no particular problem regardless of which method is used.
こうして生成した位置姿勢候補に対して、ステップS404以降の処理を第1の実施形態同様に実行する。 For the position / orientation candidate generated in this way, the processes after step S404 are executed in the same manner as in the first embodiment.
このように、本実施形態によれば、概略位置姿勢およびその分解能が既知であるシーンにおいて、分解能に基づいて決定した位置姿勢の誤りうる分布に基づいて候補となる位置姿勢を生成することで、粗い分解能で概略位置姿勢が取得されるような場合においても、ロバストな位置姿勢計測を行うことが可能になる。 As described above, according to the present embodiment, in a scene in which the approximate position / orientation and its resolution are known, a candidate position / orientation is generated based on an erroneous distribution of the position / orientation determined based on the resolution. Robust position and orientation measurement can be performed even when the approximate position and orientation are acquired with coarse resolution.
[第4の実施形態]
第1の実施形態では、計測対象物体が取り得る概略位置姿勢分布を全探索によって取得した。しかし、実際にロボットが計測対象物体を把持して組み付ける現場では、部品はあらかじめ整列されており、全探索するまでもなく、配置された部品の位置姿勢がほぼ一定であるとみなせる場合がある。
[Fourth Embodiment]
In the first embodiment, the approximate position / orientation distribution that the measurement target object can take is acquired by a full search. However, at the site where the robot actually grips and assembles the object to be measured, the parts are arranged in advance, and it may be considered that the position and orientation of the arranged parts are almost constant without a full search.
第4の実施形態では、概略位置姿勢における対象部品の3次元モデル情報に含まれるエッジ分布に基づいてモデル情報の存在し得る位置姿勢分布を決定する方法を説明する。以下はこれまでに説明した位置姿勢候補分布を決定する第1の実施形態の説明における、ステップS402に置き換わる処理である。 In the fourth embodiment, a method of determining the position / orientation distribution in which the model information can exist is described based on the edge distribution included in the three-dimensional model information of the target component in the approximate position / orientation. The following is a process that replaces step S402 in the description of the first embodiment for determining the position / posture candidate distribution described so far.
図10は既知である概略位置姿勢における計測対象物体を表す図である。 FIG. 10 is a diagram showing a measurement target object in a known approximate position and posture.
3次元モデル1001は、概略位置姿勢で配置された3次元モデルである。 The three-dimensional model 1001 is a three-dimensional model arranged in a substantially positional position.
重心1002は、3次元モデルの重心であり、システムの座標系において3次元モデルの位置を指し示す時はこの重心の座標で示される。 The center of gravity 1002 is the center of gravity of the three-dimensional model, and when pointing to the position of the three-dimensional model in the coordinate system of the system, it is indicated by the coordinates of this center of gravity.
テクスチャ1003は、計測対象物体が持つ縦縞のテクスチャ(テクスチャ情報)である。このようなテクスチャ1003をもつ計測対象物体を、エッジを用いて位置合わせする際は、対応点を探索する際に誤って隣の縦縞に対応してしまい、その結果、縦縞に対して垂直な方向にずれたフィッティングをされてしまうリスクがある。 The texture 1003 is a vertical stripe texture (texture information) of the object to be measured. When an object to be measured having such a texture 1003 is aligned using an edge, it mistakenly corresponds to an adjacent vertical stripe when searching for a corresponding point, and as a result, a direction perpendicular to the vertical stripe. There is a risk that the fitting will be misaligned.
本実施形態では、計測対象物体の取り得る位置姿勢(概略位置姿勢)は、上記の説明のように縦縞に対して垂直な方向に分布していると考え、この方向に網羅的に初期値を設定し、それぞれ位置姿勢を算出した結果を比較する。そして、よく合致しているものを最終的に正しい位置姿勢として出力する。 In the present embodiment, it is considered that the possible position / orientation (rough position / orientation) of the object to be measured is distributed in the direction perpendicular to the vertical stripes as described above, and the initial value is comprehensively set in this direction. Set and compare the results of calculating the position and orientation of each. Then, the one that matches well is finally output as the correct position and posture.
以降、その詳細を説明する。 The details will be described below.
図11(a)は、3次元モデル上の制御点を起点としてエッジを探索する様子を示す図である。制御点1101、1102、1103は、制御点の例である。これは第1の実施形態で説明した制御点702と同様のものである。それぞれの制御点について、制御点が乗っているエッジと垂直方向に探索ラインをとり、エッジの分布を探索する。エッジの探索については、第1の実施形態のステップS602で説明した方法と同じ方法で行う。 FIG. 11A is a diagram showing a state in which an edge is searched from a control point on the three-dimensional model as a starting point. Control points 1101, 1102, 1103 are examples of control points. This is the same as the control point 702 described in the first embodiment. For each control point, a search line is taken in the direction perpendicular to the edge on which the control point is placed, and the edge distribution is searched. The edge search is performed by the same method as described in step S602 of the first embodiment.
検出点1104は、制御点1101を起点に探索した時のエッジの検出点である。このときの検出点1104と制御点1101との相対位置を、重心1002を起点に置き換えた位置として記録する。 The detection point 1104 is an edge detection point when searching from the control point 1101 as a starting point. The relative position between the detection point 1104 and the control point 1101 at this time is recorded as a position where the center of gravity 1002 is replaced with the starting point.
次に制御点1102を起点にエッジを探索する。この場合は図に示されるように探索ライン上にエッジがないため何も検出されない。同様にしてすべての制御点でエッジの探索を行い、検出された点と制御点との相対位置を重心を起点にして置き換えた位置として記録する。 Next, the edge is searched starting from the control point 1102. In this case, nothing is detected because there is no edge on the search line as shown in the figure. In the same way, the edge is searched for all the control points, and the relative position between the detected point and the control point is recorded as the position replaced with the center of gravity as the starting point.
図11(b)は、このようにして記録されたエッジ検出点の分布(各制御点から検出されたエッジ検出点の位置の分布を重心を起点に置き換えた位置の分布)を図示したものである。図中にXでプロットされた2つの点は制御点1101から検出された2つの点を示す。図11(a)の1104と図11(b)の1104とが対応している。図中の黒三角でプロットされた点は他の制御点から検出された点を示す。なお、図11(b)では説明のためにプロットの記号を使い分けたが、以降の処理ではこれらはすべて同等の分布を示す点として扱う。こうして得られたエッジ検出点の分布は、3次元モデルの制御点から対応点を探索する際に、どちらの方向にどれだけの3次元モデル内在点が誤対応され得るかを表している。 FIG. 11B illustrates the distribution of the edge detection points recorded in this way (the distribution of the positions of the edge detection points detected from each control point replaced with the center of gravity as the starting point). is there. The two points plotted by X in the figure indicate the two points detected from the control point 1101. The 1104 in FIG. 11 (a) and the 1104 in FIG. 11 (b) correspond to each other. The points plotted by the black triangles in the figure indicate the points detected from other control points. In FIG. 11B, the plot symbols are used properly for the sake of explanation, but in the subsequent processing, these are all treated as points showing the same distribution. The distribution of the edge detection points obtained in this way indicates how many internal points of the 3D model can be erroneously matched in which direction when searching for the corresponding points from the control points of the 3D model.
従って、この分布の位置に局所解が多いこととなり、位置姿勢候補をこの分布に従って生成することでフィッティングのロバスト性を向上させることができる。この分布を第1の実施形態における位置姿勢候補として用いて、ステップS403以降の処理を行う。 Therefore, there are many local solutions at the positions of this distribution, and the robustness of fitting can be improved by generating position / orientation candidates according to this distribution. Using this distribution as a position / orientation candidate in the first embodiment, the processes after step S403 are performed.
本実施形態では誤対応する可能性があるエッジとしてテクスチャのエッジを例に説明したが、本発明の効果はテクスチャに由来するエッジに限るものではない。計測対象物体の形状に由来するエッジなどテクスチャ以外の特徴に起因するものであっても何ら変わりはない。 In the present embodiment, the edge of the texture has been described as an example of the edge that may be miscorresponded, but the effect of the present invention is not limited to the edge derived from the texture. There is no difference even if it is caused by features other than texture such as edges derived from the shape of the object to be measured.
形状由来の誤対応しやすいエッジとして簡単な例では、のこぎりのギザギザ歯のような繰り返しパターンを持つ形状が考えられる。このような形状においては、本実施形態の手法によると、ギザギザの歯が並んでいる方向に取り得る位置姿勢が分布していると考えて網羅的に位置姿勢候補を生成することで、最適な位置姿勢を決定することができる。 A simple example of an edge that is easily mishandled due to its shape is a shape that has a repeating pattern such as the jagged teeth of a saw. In such a shape, according to the method of the present embodiment, it is considered that the possible position / postures are distributed in the direction in which the jagged teeth are lined up, and the position / posture candidates are comprehensively generated to be optimal. Position and posture can be determined.
本実施形態では、本発明で扱うフィッティングの支配的な誤差要因がエッジの誤対応であると考え、位置姿勢候補の分布を撮像画像の2次元平面内において、位置姿勢のうちxy方向の並進成分についてのみ求めた。 In the present embodiment, it is considered that the dominant error factor of the fitting handled in the present invention is the erroneous correspondence of the edge, and the distribution of the position / orientation candidates is arranged in the two-dimensional plane of the captured image as the translational component of the position / orientation in the xy direction. Asked only about.
しかし、この位置姿勢候補の分布の決定は、2次元に限るものではなく、3次元においても同様に行うことができる。図11を用いて説明した3次元モデル上の制御点を起点としたエッジの探索と同等の処理を3次元で行えばよい。具体的には3次元モデル上の制御点が乗る面の法線方向に面を探索して分布を生成することが考えられる。 However, the determination of the distribution of the position / orientation candidates is not limited to two dimensions, and can be similarly performed in three dimensions. The same process as the edge search starting from the control point on the three-dimensional model described with reference to FIG. 11 may be performed in three dimensions. Specifically, it is conceivable to search for a surface in the normal direction of the surface on which the control points on the three-dimensional model ride and generate a distribution.
また、2次元及び3次元の回転についても同様に探索を行って位置姿勢候補の分布を生成することは可能である。具体的にはサンプリングされた複数の回転軸において3次元モデル上の各制御点を所定の回転量の範囲で円弧方向にエッジを探索し、特徴が検出されたらその時の回転軸と回転量を投票する方法が考えられる。つまり、概略位置姿勢と3次元モデルの情報から、位置姿勢候補を求め、複数の位置姿勢候補を生成することでロバスト性の向上を図ることが本発明の第4の実施形態の主旨である。 Further, it is possible to generate a distribution of position / orientation candidates by similarly searching for two-dimensional and three-dimensional rotations. Specifically, each control point on the 3D model is searched for an edge in the arc direction within a predetermined rotation amount range on a plurality of sampled rotation axes, and when a feature is detected, the rotation axis and the rotation amount at that time are voted. There is a way to do it. That is, the gist of the fourth embodiment of the present invention is to improve the robustness by obtaining position / posture candidates from the approximate position / posture and the information of the three-dimensional model and generating a plurality of position / posture candidates.
このように、本実施形態によれば、概略位置姿勢が既知であるシーンにおいて、既知の概略位置姿勢と3次元モデル情報とから位置姿勢候補の分布を決定し、この分布に基づいて局所解となり得る複数の位置姿勢を網羅的に検証することで複雑な形状の対象物体に対してもロバストな位置姿勢計測を行うことを可能にした。 As described above, according to the present embodiment, in the scene where the approximate position / orientation is known, the distribution of the position / orientation candidates is determined from the known approximate position / orientation and the three-dimensional model information, and a local solution is obtained based on this distribution. By comprehensively verifying the obtained multiple position and orientation, it is possible to perform robust position and orientation measurement even for an object with a complicated shape.
[第5の実施形態]
第4の実施形態では、計測対象物体の概略位置姿勢と3次元モデルとから仮想環境上で、計測対象物体が取り得る位置姿勢分布を求めた。そして、計測対象物体の概略位置姿勢の3次元モデルと撮像画像の対応点を生成する際に、部品に内在する別のエッジに誤対応してしまう問題に対応した。
[Fifth Embodiment]
In the fourth embodiment, the position / posture distribution that the measurement target object can take in the virtual environment is obtained from the approximate position / posture of the measurement target object and the three-dimensional model. Then, when generating a corresponding point between the three-dimensional model of the approximate position and orientation of the object to be measured and the captured image, the problem of erroneously corresponding to another edge inherent in the component has been addressed.
この他の問題として、撮像装置によって得られた画像の概略位置姿勢における部品周辺に分布するエッジに誤対応してしまう問題が考えられる。第5の実施形態では配置された計測対象物体の概略位置姿勢が既知である状況下で、位置姿勢候補を、撮像画像に含まれる特徴の、概略位置姿勢における3次元モデル情報の原点を基準とする相対位置分布に基づいて決定することで上記の問題に対応する方法を説明する。 Another problem is that the edges distributed around the component in the approximate position and orientation of the image obtained by the imaging device are erroneously dealt with. In the fifth embodiment, in a situation where the approximate position / orientation of the arranged measurement target object is known, the position / orientation candidate is based on the origin of the three-dimensional model information in the approximate position / orientation of the feature included in the captured image. A method for dealing with the above problem will be described by making a determination based on the relative position distribution.
以下はこれまでに説明した位置姿勢分布を決定する第1の実施形態の説明におけるステップS402に置き換わる処理である。 The following is a process that replaces step S402 in the description of the first embodiment for determining the position-posture distribution described so far.
図12は、撮像して得られた輝度画像である。枠1201は撮像部より得られる輝度画像の外枠である。計測対象物体1202は、輝度画像に写りこんだ計測対象物体である。横縞1203は、輝度画像に写りこんだ横縞(ノイズ)である。ここでいうノイズとは、計測対象物体1202自身ではないということを示している。すなわち、計測対象物体の背景に存在する他の物体であったり、背景そのものに起因するものであってもよい。 FIG. 12 is a luminance image obtained by imaging. The frame 1201 is an outer frame of a luminance image obtained from the imaging unit. The measurement target object 1202 is a measurement target object reflected in the luminance image. The horizontal stripe 1203 is a horizontal stripe (noise) reflected in the luminance image. The noise referred to here indicates that it is not the measurement target object 1202 itself. That is, it may be another object existing in the background of the object to be measured, or it may be caused by the background itself.
本実施形態においては、ノイズが、他の物体に起因するものであることを想定している。このような場合において、計測対象物体1202を、エッジを用いてフィッティングする際は、対応点を探索する際に誤って、計測対象物体の上下にある、その他の物体に起因した横縞の背景に対応してしまい、図中の縦方向にずれたフィッティングをされてしまうリスクがある。 In this embodiment, it is assumed that the noise is caused by another object. In such a case, when fitting the measurement target object 1202 using the edge, the background of the horizontal stripes caused by other objects above and below the measurement target object is erroneously dealt with when searching for the corresponding point. There is a risk that the fitting will be shifted in the vertical direction in the figure.
本実施形態では、部品の取り得る位置姿勢は上記の説明のように図中の縦方向に分布していると考え、この方向に網羅的に位置姿勢候補を設定し、それぞれ位置姿勢を算出した結果を比較し、よく合致しているものを最終的に正しい位置姿勢として出力する。 In the present embodiment, it is considered that the possible position / orientation of the parts is distributed in the vertical direction in the drawing as described above, and the position / orientation candidates are comprehensively set in this direction, and the position / orientation is calculated for each. The results are compared, and the one that matches well is finally output as the correct position and orientation.
以降、その詳細を説明する。(なお、ここでは手法の効果を分かりやすくするために横縞の背景を例に説明するがいかなるテクスチャでも同様の方法で本発明の実施は可能である。)
図13(a)は、輝度画像上で3次元モデル上の制御点を起点としてエッジを探索する方法を示す図である。
The details will be described below. (Here, in order to make the effect of the method easy to understand, the background of horizontal stripes will be described as an example, but the present invention can be carried out by the same method for any texture.)
FIG. 13A is a diagram showing a method of searching for an edge starting from a control point on a three-dimensional model on a luminance image.
座標軸1301は、システムの座標系を示す。投影像1302は、概略位置姿勢における3次元モデルエッジの輝度画像への投影を示す。投影点1303は、概略位置姿勢における3次元モデルの重心を輝度画像に投影した点である。 Coordinate axis 1301 indicates the coordinate system of the system. The projected image 1302 shows the projection of the 3D model edge onto the luminance image in the approximate position and orientation. The projection point 1303 is a point where the center of gravity of the three-dimensional model in the approximate position and orientation is projected onto the luminance image.
制御点1304、1305、1306は、制御点の例である。これらは、第1の実施形態で説明した制御点702と同様のものである。これらそれぞれの制御点について制御点が乗っているエッジに垂直な方向に探索ラインをとり、エッジを探索する。エッジの探索については第1の実施形態のS602で説明した方法と同じ方法で行う。検出点1307は、制御点1301を起点に探索した時のエッジの検出点である。このときの制御点1301との相対位置を重心1303を起点とした置き換えた位置として記録する。次に制御点1302を起点にエッジを探索する。この場合は右方向に一つ検出点が記録される。同様にしてすべての制御点でエッジの探索を行い、検出された点と制御点との相対位置を重心を起点にして置き換えた位置として記録する。 Control points 1304, 1305, and 1306 are examples of control points. These are the same as the control points 702 described in the first embodiment. For each of these control points, a search line is taken in the direction perpendicular to the edge on which the control point is placed, and the edge is searched. The edge search is performed by the same method as described in S602 of the first embodiment. The detection point 1307 is an edge detection point when searching from the control point 1301 as a starting point. The position relative to the control point 1301 at this time is recorded as a replaced position starting from the center of gravity 1303. Next, the edge is searched starting from the control point 1302. In this case, one detection point is recorded in the right direction. In the same way, the edge is searched for all the control points, and the relative position between the detected point and the control point is recorded as the position replaced with the center of gravity as the starting point.
図13(b)は、このようにして記録されたエッジ検出点の分布(各制御点から検出されたエッジ検出点の位置の分布を重心を起点に置き換えた位置の分布)を図示したものである。図中にXでプロットされた3つの点は制御点1305から検出された3つの点を示す。図13(a)の1307と図13(b)の1307は対応している。図中の黒三角でプロットされた点は他の制御点から検出された点を示す。 FIG. 13B illustrates the distribution of the edge detection points recorded in this way (the distribution of the positions of the edge detection points detected from each control point replaced with the center of gravity as the starting point). is there. The three points plotted with X in the figure indicate the three points detected from the control point 1305. 1307 in FIG. 13 (a) and 1307 in FIG. 13 (b) correspond to each other. The points plotted by the black triangles in the figure indicate the points detected from other control points.
なお、図13(b)では説明のためにプロットの記号を使い分けたが、以降の処理ではこれらはすべて同等の分布を示す点として扱う。こうして得られたエッジ検出点の分布は、3次元モデルの制御点から対応点を探索する際に、どちらの方向にどれだけ誤対応点が検出され得るかを表している。従ってこの分布の位置に局所解が多いこととなり、初期位置姿勢をこの分布に従って生成することでフィッティングのロバスト性を向上させることができる。この分布を第1の実施形態における位置姿勢分布として用いてS403以降の処理を行う。 In FIG. 13B, the plot symbols are used properly for the sake of explanation, but in the subsequent processing, these are all treated as points showing the same distribution. The distribution of the edge detection points obtained in this way represents how many erroneous correspondence points can be detected in which direction when the correspondence points are searched from the control points of the three-dimensional model. Therefore, there are many local solutions at the positions of this distribution, and the robustness of the fitting can be improved by generating the initial position / orientation according to this distribution. This distribution is used as the position / orientation distribution in the first embodiment to perform the processing after S403.
本実施形態では誤対応する可能性があるエッジとしてテクスチャのエッジを例に説明したが、本発明の効果はテクスチャに由来するエッジに限るものではなく3次元モデルの形状に由来するエッジや背景に由来するエッジなどテクスチャ以外の特徴に起因するものであっても何ら変わりはない。 In the present embodiment, the edge of the texture has been described as an example of an edge that may be miscorresponded, but the effect of the present invention is not limited to the edge derived from the texture, but is applied to the edge or the background derived from the shape of the three-dimensional model. There is no difference even if it is caused by features other than texture such as the derived edge.
本実施形態では第4の実施形態同様、位置姿勢分布を撮像画像の2次元平面内において位置姿勢のうちxy方向の並進成分についてのみ求めた。しかし、この位置姿勢分布の決定は2次元に限るものではなく3次元においても同様に行うことができる。 In the present embodiment, as in the fourth embodiment, the position-posture distribution is obtained only for the translational component in the xy direction of the position-posture in the two-dimensional plane of the captured image. However, the determination of the position-posture distribution is not limited to two dimensions, and can be similarly performed in three dimensions.
図13を用いて説明した3次元モデル上の制御点を起点としたエッジの探索と同等の処理を3次元で行えばよい。具体的には3次元モデル上の制御点を起点として制御点が乗る面の法線方向に一点の間隔で距離画像上の対応点を探索して対応点の分布をとることが考えられる。 The same process as the edge search starting from the control point on the three-dimensional model described with reference to FIG. 13 may be performed in three dimensions. Specifically, it is conceivable to search for corresponding points on the distance image at intervals of one point in the normal direction of the surface on which the control points are placed, starting from the control points on the three-dimensional model, and obtain a distribution of the corresponding points.
また、2次元及び3次元の回転についても同様に探索を行って位置姿勢分布を生成することは可能である。具体的にはサンプリングされた複数の回転軸において3次元モデル上の各制御点を所定の回転量の範囲で円弧方向にエッジを探索し、特徴が検出されたらその時の回転軸と回転量を投票する方法が考えられる。要は扱う次元に依らず、撮像された画像を全探索して位置姿勢分布を求めるのではなく、撮像された画像のうち、概略位置姿勢で配置された3次元モデルの周辺のみを探索することで複数の初期位置姿勢を生成し、ロバスト性の向上を図ることが本発明における第5の実施形態の主旨である。 Further, it is possible to generate a position / orientation distribution by similarly searching for two-dimensional and three-dimensional rotations. Specifically, each control point on the 3D model is searched for an edge in the arc direction within a predetermined rotation amount range on a plurality of sampled rotation axes, and when a feature is detected, the rotation axis and rotation amount at that time are voted. There is a way to do it. In short, regardless of the dimension to be handled, instead of searching the entire captured image to obtain the position / orientation distribution, only the periphery of the 3D model arranged in the approximate position / orientation of the captured image should be searched. It is the gist of the fifth embodiment of the present invention to generate a plurality of initial position postures and improve the robustness.
このように、本実施形態によれば、概略位置姿勢が既知であるシーンにおいて、画像内の概略位置姿勢における3次元モデルの周辺で探索することで位置姿勢分布を決定し、この分布に基づいて局所解となり得る複数の位置姿勢を網羅的に検証することでノイズの多い環境や複雑な形状の対象物体に対してもロバストな位置姿勢計測を行うことができる。 As described above, according to the present embodiment, in the scene where the approximate position / orientation is known, the position / orientation distribution is determined by searching around the three-dimensional model in the approximate position / orientation in the image, and based on this distribution. By comprehensively verifying a plurality of positions and orientations that can be local solutions, it is possible to perform robust position and orientation measurement even in a noisy environment or an object with a complicated shape.
[第6の実施形態]
第4〜第5の実施形態では、位置姿勢分布をフィッティングする先の形状情報として画像を対象に、該画像の上に投影された3次元モデルの位置姿勢を求めた。しかし、各実施形態において補足したように、本発明は形状情報の一方が画像でなくてはならないという制約はなく、二つの形状情報の間に対応が取れる領域があれば、任意の形態の形状情報のフィッティングにおいて本発明は適用可能である。
[Sixth Embodiment]
In the fourth to fifth embodiments, the position and orientation of the three-dimensional model projected on the image are obtained for the image as the shape information to which the position and orientation distribution is fitted. However, as supplemented in each embodiment, the present invention does not have a restriction that one of the shape information must be an image, and if there is a corresponding region between the two shape information, the shape of any form The present invention is applicable in fitting information.
例えば互いに三次元形状情報同士をフィッティングする際に本発明を適用することも可能である。その例としてここでは、ある対象物体を二つの視点から撮影して生成した二つのメッシュモデルを、互いにオーバーラップ(重複)している領域の形状に基づいてフィッティングする例を説明する。つまり、それぞれのメッシュモデルは、少なくとも1部の領域で重複している。このように3次元形状情報同士をフィッティングする場合においても本発明は適用可能であることを説明する。 For example, it is also possible to apply the present invention when fitting three-dimensional shape information to each other. As an example, here, an example of fitting two mesh models generated by photographing a certain target object from two viewpoints based on the shape of a region overlapping with each other will be described. That is, each mesh model overlaps in at least one area. It will be described that the present invention can be applied even when the three-dimensional shape information is fitted to each other in this way.
図14は、点線で描かれているメッシュモデル1401(第1の形状情報)を、実践で描かれているメッシュモデル1402(第2の形状情報)にフィッティングする例を2次元に投影して説明する図である。1403は形状情報1401上に定められた制御点である。各制御点においてその点が乗っている面の法線方向に一定区間対応点候補を探索する。探索して見つかった対応点候補は図11(b)または図13(b)と同様に制御点から対応点候補へのベクトルを形状情報1401の重心を中心にしてプロットして三次元空間上での概略位置姿勢候補の分布を生成する。この分布を第1の実施形態における位置姿勢分布として用いてS403以降の処理を行う。 FIG. 14 illustrates an example of fitting the mesh model 1401 (first shape information) drawn by the dotted line to the mesh model 1402 (second shape information) drawn in practice in two dimensions. It is a figure to do. Reference numeral 1403 is a control point defined on the shape information 1401. At each control point, a candidate for a fixed section corresponding point is searched for in the normal direction of the surface on which the point rests. The corresponding point candidates found by searching are plotted in the three-dimensional space by plotting the vector from the control point to the corresponding point candidate centering on the center of gravity of the shape information 1401 as in FIG. 11 (b) or FIG. 13 (b). Generates a distribution of approximate position and orientation candidates. This distribution is used as the position / orientation distribution in the first embodiment to perform the processing after S403.
[第7の実施形態]
第1〜第6の実施形態ではそれぞれ異なる方法で位置姿勢分布を生成した。実際にはこれらを独立に実施するのではなく、これらの一部または全部の和の分布を位置姿勢分布として用いてS403にて複数の初期位置姿勢を生成(初期位置姿勢生成)することでよりロバストな位置姿勢計測を実現できる。
[7th Embodiment]
In the first to sixth embodiments, the position-posture distribution was generated by different methods. Actually, instead of implementing these independently, by using the distribution of the sum of some or all of them as the position-posture distribution and generating a plurality of initial position-postures in S403 (initial position-posture generation), Robust position and posture measurement can be realized.
[第8の実施形態]
本発明に係る情報処理装置の好適な適用事例としては、産業用ロボットアームで部品の把持、移動、解放といった動作を行うシステムにおいて対象部品の位置姿勢計測に利用することが挙げられる。以下、図15を用いて、本発明に係る情報処理装置の適用例を説明する。
[8th Embodiment]
A preferred application example of the information processing apparatus according to the present invention is to use it for measuring the position and orientation of a target component in a system in which an industrial robot arm performs operations such as gripping, moving, and releasing a component. Hereinafter, an application example of the information processing apparatus according to the present invention will be described with reference to FIG.
図15は、本発明の第7の実施形態に係る情報処理装置を含む情報処理システムの概略構成の一例を示す模式図である。1501はPC、1502はカメラ及びプロジェクタである。PC1501とカメラ及びプロジェクタ1502は第1〜第6の実施形態で説明したシステムと同様のものであり、先に説明した処理手順が記述されたプログラムを格納し、対象部品1505の位置姿勢の計測が可能である。1503はロボットコントローラでロボットアームを制御する。1504はロボットアームであり、回転軸及び/または並進移動軸からなる可動軸を有する。ロボットコントローラはPCに接続されており、ロボットアームへの命令はPCから受け取ったものを具体的な制御命令に変換してロボットアームを動かす。 FIG. 15 is a schematic diagram showing an example of a schematic configuration of an information processing system including an information processing device according to a seventh embodiment of the present invention. 1501 is a PC, and 1502 is a camera and a projector. The PC 1501 and the camera and the projector 1502 are the same as the systems described in the first to sixth embodiments, store a program in which the processing procedure described above is described, and measure the position and orientation of the target component 1505. It is possible. The 1503 controls a robot arm with a robot controller. Reference numeral 1504 is a robot arm, which has a movable shaft including a rotation shaft and / or a translational movement shaft. The robot controller is connected to a PC, and commands to the robot arm convert what is received from the PC into specific control commands to move the robot arm.
本実施形態におけるPCは上記に加えてさらに次の処理手順を包含する。まず第1の実施形態1〜5で説明したシステム座標系すなわちカメラ座標系とロボットアームで定義されるロボット座標系の相対関係を保持する。PCは対象部品の位置姿勢を計測し、その結果をカメラの座標系からロボット座標系に変換する。次に変換された部品のロボット座標系における位置姿勢を元にロボットコントローラを介してロボットアームが部品を把持できる位置姿勢に移動させる。 In addition to the above, the PC in the present embodiment further includes the following processing procedure. First, the relative relationship between the system coordinate system described in the first embodiments 1 to 5, that is, the camera coordinate system and the robot coordinate system defined by the robot arm is maintained. The PC measures the position and orientation of the target component and converts the result from the coordinate system of the camera to the coordinate system of the robot. Next, the robot arm is moved to a position / orientation in which the part can be gripped via the robot controller based on the position / orientation of the converted part in the robot coordinate system.
このように、本実施形態によれば、カメラとプロジェクトをアーム上に設置したロボットシステムにおいて、本発明による部品の位置姿勢の計測結果に基づいてロボットアームを処理することで未知である部品の把持をすることができる。 As described above, according to the present embodiment, in the robot system in which the camera and the project are installed on the arm, the robot arm is processed based on the measurement result of the position and orientation of the component according to the present invention to grip the unknown component. Can be done.
[その他の実施形態]
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
[Other Embodiments]
The present invention is also realized by executing the following processing. That is, software (computer program) that realizes the functions of the above-described embodiment is supplied to the system or device via a network or various storage media, and the computer (or CPU, MPU, etc.) of the system or device reads the program. It is a process to be executed.
<実施形態の効果>
以上説明したように、対象物体の概略位置姿勢を取得し、取得した概略位置姿勢に基づいて、新たに初期位置姿勢の候補を生成し、それらに基づいて位置姿勢を導出することで、ロバストな位置姿勢計測を可能にしている。
<Effect of embodiment>
As described above, it is robust by acquiring the approximate position and orientation of the target object, generating new initial position and orientation candidates based on the acquired approximate position and orientation, and deriving the position and orientation based on them. It enables position and orientation measurement.
第1の実施形態では、計測対象物体を画像内で全探索した結果から、概略位置姿勢の分布を決定し、この分布に基づいて局所解となり得る複数の位置姿勢を網羅的に検証することでノイズの多い環境や複雑な形状の計測対象物体に対してもロバストな位置姿勢計測を行うことを可能にした。 In the first embodiment, the distribution of the approximate position / orientation is determined from the result of a complete search of the measurement target object in the image, and a plurality of positions / orientations that can be local solutions are comprehensively verified based on this distribution. It has made it possible to perform robust position and orientation measurement even in a noisy environment or an object to be measured with a complicated shape.
第2の実施形態では、概略位置姿勢の分布を所定のサンプリング間隔で集計して利用することで、第1の実施形態をより簡便で高速に実施する方法を示した。 In the second embodiment, a method of carrying out the first embodiment more simply and at high speed is shown by collecting and using the distribution of the approximate position and posture at predetermined sampling intervals.
第3の実施形態では、概略位置姿勢およびその分解能が既知であるシーンにおいて、分解能に基づいて決定した位置姿勢が誤りうる分布に基づいて候補となる位置姿勢を生成することで、粗い分解能で概略位置姿勢が取得されるような場合においても、ロバストな位置姿勢計測を行うことが可能になる
第4の実施形態では、概略位置姿勢が既知であるシーンにおいて、既知の概略位置姿勢と3次元モデル情報から位置姿勢候補を生成し、生成された位置姿勢候補に基づいて局所解となり得る複数の位置姿勢を網羅的に検証することで複雑な形状の対象物体に対してもロバストな位置姿勢計測を行うことを可能にした。
In the third embodiment, in a scene in which the approximate position / orientation and its resolution are known, a candidate position / orientation is generated based on a distribution in which the position / orientation determined based on the resolution can be erroneous. In the fourth embodiment, which enables robust position / orientation measurement even when the position / orientation is acquired, the known approximate position / orientation and the three-dimensional model are used in the scene where the approximate position / orientation is known. By generating position / orientation candidates from information and comprehensively verifying multiple position / orientations that can be local solutions based on the generated position / orientation candidates, robust position / orientation measurement can be performed even for objects with complicated shapes. Made it possible to do.
第5の実施形態では、概略位置姿勢が既知であるシーンにおいて、画像内の概略位置姿勢における3次元モデルの周辺で探索することで位置姿勢候補を生成し、生成された位置姿勢候補に基づいて局所解となり得る複数の位置姿勢を網羅的に検証することでノイズの多い環境や複雑な形状の対象物体に対してもロバストな位置姿勢計測を行うことを可能にした。 In the fifth embodiment, in a scene where the approximate position / orientation is known, a position / orientation candidate is generated by searching around the three-dimensional model in the approximate position / orientation in the image, and the position / orientation candidate is generated based on the generated position / orientation candidate. By comprehensively verifying multiple position and orientation that can be local solutions, it is possible to perform robust position and orientation measurement even in a noisy environment or an object with a complicated shape.
第6の実施形態では、二つの形状情報の間に対応が取れる領域があれば、任意の形態の形状情報のフィッティングにおいて本発明は適用可能であるという例を示した。これにより、CADモデルなどの形状データが未知の物体に対して、複数の方向から撮像したデータをフィッティングしてデータを結合することが可能になる。 In the sixth embodiment, an example is shown in which the present invention is applicable to the fitting of shape information of any form as long as there is a corresponding region between the two shape information. This makes it possible to fit data captured from a plurality of directions to an object whose shape data is unknown, such as a CAD model, and combine the data.
第7の実施形態では、第1〜第5の実施形態で示された位置姿勢候補の生成方法のうちの全部または一部の方法で生成された位置姿勢候補の和集合を複数の位置姿勢候補として利用することでより、ロバストな位置姿勢計測を行うことを可能にした。 In the seventh embodiment, the union of the position / posture candidates generated by all or a part of the methods for generating the position / posture candidates shown in the first to fifth embodiments is a plurality of position / posture candidates. It is possible to perform more robust position and posture measurement by using it as.
第8の実施形態ではカメラとプロジェクトをアーム上に設置したロボットシステムにおいて、本発明よる部品の位置姿勢の計測結果に基づいてロボットアームを処理することで未知である部品の把持を可能にした。 In the eighth embodiment, in a robot system in which a camera and a project are installed on an arm, an unknown part can be grasped by processing the robot arm based on the measurement result of the position and orientation of the part according to the present invention.
<定義>
本発明の説明では、フィッティングする形状情報の組み合わせとして第1〜第5の実施形態においては3次元モデル情報とカメラで撮影された計測対象物体を含む画像の組み合わせを、第6の実施形態においてはおよび三次元メッシュモデル同士の組み合わせを例に説明した。しかし、必ずしもこの組み合わせでなくてもよく、形状情報間で対応を取って位置合わせ(フィッティング)可能な情報であればなんでもよい。物体の形状情報の例としては3次元モデル情報、画像のほかに、レーザーレンジセンサーなどで計測して得られた3次元点群情報なども考えられる。
<Definition>
In the description of the present invention, as the combination of the shape information to be fitted, the combination of the three-dimensional model information and the image including the measurement target object taken by the camera is used in the first to fifth embodiments, and in the sixth embodiment And the combination of three-dimensional mesh models was explained as an example. However, this combination does not have to be the case, and any information that can be aligned (fitted) by correspondingly among the shape information may be used. As an example of the shape information of the object, in addition to the three-dimensional model information and the image, the three-dimensional point cloud information obtained by measuring with a laser range sensor or the like can be considered.
プロジェクタは液晶プロジェクタに限るものではなく、パターン光の投影ができれば他の方式のものでもよい。例えば、DMD(デジタルミラーデバイス)やLCOSを用いたプロジェクタであってもよい。 The projector is not limited to the liquid crystal projector, and may be another type as long as it can project the pattern light. For example, it may be a projector using DMD (Digital Mirror Device) or LCOS.
位置姿勢算出においては、2次元と3次元の尺度で同時に位置合わせをする例を説明したが、本発明は2次元の尺度のみであったり、3次元の尺度のみであっても全く同様に適用可能である。 In the position / orientation calculation, an example of simultaneously aligning on a two-dimensional and three-dimensional scale has been described, but the present invention is applied in exactly the same manner even if it is only a two-dimensional scale or only a three-dimensional scale. It is possible.
位置姿勢算出において、計測対象部品の位置姿勢の算出方法はGauss−Newton法に限るものではない。例えば、より計算がロバストであるLevenberg−Marquardt法によって行ってもよいし、よりシンプルな方法である最急降下法によって行ってもよい。また、共役勾配法やICCG法など、他の非線形最適化計算手法を用いてもよい。 In the position / orientation calculation, the method of calculating the position / orientation of the component to be measured is not limited to the Gauss-Newton method. For example, the calculation may be performed by the Levenberg-Marquardt method, which is more robust, or by the steepest descent method, which is a simpler method. Further, other nonlinear optimization calculation methods such as the conjugate gradient method and the ICCG method may be used.
概略位置姿勢の分布決定において、画像内での特定の部品の位置姿勢を探索する際の画像は輝度画像のみに限定されるものではなく距離画像などの3次元情報を探索する手法であってもよい。 In determining the distribution of the approximate position / orientation, the image when searching for the position / orientation of a specific part in the image is not limited to the luminance image, but may be a method of searching for three-dimensional information such as a distance image. Good.
概略位置姿勢の分布決定において、画像を全探索する場合を説明したが、本発明の実施においては必ずしも得られた画像を全探索する必要はない。例えば部品が常に作業スペース内のほぼ同じ場所にあることが分かっている場合はその領域に限定して部分的に探索するなどしても何ら問題はない。 In the determination of the distribution of the approximate position and orientation, the case where the image is completely searched has been described, but in the practice of the present invention, it is not always necessary to completely search the obtained image. For example, if it is known that the parts are always in the same place in the work space, there is no problem even if the part is partially searched only in that area.
本発明の第4の実施形態で説明した位置姿勢分布決定において、位置姿勢分布の探索範囲は2次元平面内におけるxy方向の並進成分のみに限定されない。位置姿勢分布の決定は2次元に限るものではなく3次元においても同様に行うことができる。図11を用いて説明した3次元モデル上の制御点を起点としたエッジの探索と同等の処理を3次元で行えばよい。 In the position-posture distribution determination described in the fourth embodiment of the present invention, the search range of the position-posture distribution is not limited to only the translational component in the xy direction in the two-dimensional plane. The determination of the position-posture distribution is not limited to two dimensions, and can be similarly performed in three dimensions. The same process as the edge search starting from the control point on the three-dimensional model described with reference to FIG. 11 may be performed in three dimensions.
具体的には3次元モデル上の制御点が乗る面の法線方向に面を探索して分布を生成することが考えられる。また、2次元及び3次元の回転についても同様に探索を行って位置姿勢分布を生成することは可能である。具体的にはサンプリングされた複数の回転軸において3次元モデル上の各制御点を所定の回転量の範囲で円弧方向にエッジを探索し、特徴が検出されたらその時の回転軸と回転量を投票する方法が考えられる。 Specifically, it is conceivable to search for a surface in the normal direction of the surface on which the control points on the three-dimensional model ride and generate a distribution. Further, it is possible to generate a position / orientation distribution by similarly searching for two-dimensional and three-dimensional rotations. Specifically, each control point on the 3D model is searched for an edge in the arc direction within a predetermined rotation amount range on a plurality of sampled rotation axes, and when a feature is detected, the rotation axis and the rotation amount at that time are voted. There is a way to do it.
本発明の第5の実施形態で説明した概略位置姿勢分布決定において、位置姿勢分布の探索範囲は2次元平面内におけるxy方向の並進成分のみに限定されない。位置姿勢分布の決定は2次元に限るものではなく3次元においても同様に行うことができる。図13を用いて説明した3次元モデル上の制御点を起点としたエッジの探索と同等の処理を3次元で行えばよい。具体的には3次元モデル上の制御点を起点として制御点が乗る面の法線方向に一点の間隔で距離画像上の対応点を探索して対応点の分布をとることが考えられる。また、2次元及び3次元の回転についても同様に探索を行って位置姿勢分布を生成することは可能である。 In the approximate position-posture distribution determination described in the fifth embodiment of the present invention, the search range of the position-posture distribution is not limited to only the translational component in the xy direction in the two-dimensional plane. The determination of the position-posture distribution is not limited to two dimensions, and can be similarly performed in three dimensions. The same process as the edge search starting from the control point on the three-dimensional model described with reference to FIG. 13 may be performed in three dimensions. Specifically, it is conceivable to search for corresponding points on the distance image at intervals of one point in the normal direction of the surface on which the control points are placed, starting from the control points on the three-dimensional model, and obtain a distribution of the corresponding points. Further, it is possible to generate a position / orientation distribution by similarly searching for two-dimensional and three-dimensional rotations.
本発明の第4の実施形態、および第5の実施形態で説明した位置姿勢候補の分布の決定において、形状情報の特徴とはテクスチャに由来するエッジに限るものではなくS602の対応付けの根拠になり得る特徴であれば何でもよい。例えば3次元モデルの形状に由来するエッジなどテクスチャ以外の特徴でもよい。 In the determination of the distribution of the position / orientation candidates described in the fourth embodiment and the fifth embodiment of the present invention, the feature of the shape information is not limited to the edge derived from the texture, but is based on the association of S602. Any feature can be used. Features other than texture, such as edges derived from the shape of the 3D model, may be used.
位置姿勢候補生成において、概略位置姿勢分布として挙げられている位置姿勢には一定の合理性があると考え、位置姿勢候補として採用した。しかし、本発明の実施においては概略位置姿勢の分布として挙げられたものは採用せずに、新たに生成した位置姿勢候補だけを採用してもよい。 In the generation of position / posture candidates, we considered that the position / posture listed as the approximate position / posture distribution has a certain rationality, and adopted it as a position / posture candidate. However, in the practice of the present invention, it is possible to adopt only the newly generated position / orientation candidate without adopting the one listed as the approximate position / orientation distribution.
位置姿勢候補生成において、確率密度モデルとしてガウス分布を適用したが、実際には得られた分布を要約できる分布であれば他の分布であってもよいし、もっと簡単に方形状の分布を適用してもよい。 In the position and orientation candidate generation, the Gaussian distribution was applied as the probability density model, but in reality, any distribution may be used as long as the obtained distribution can be summarized, or a square distribution can be applied more easily. You may.
本発明の第2の実施形態で説明した位置姿勢候補の生成において、選定されたbinに所定の間隔で初期値を生成する際は間隔を必ずしも均等にする必要はなく、位置姿勢候補の個数だけbinの内部にランダムに生成してもよい。 In the generation of the position / orientation candidates described in the second embodiment of the present invention, when the initial values are generated at predetermined intervals in the selected bins, the intervals do not necessarily have to be equalized, and only the number of position / orientation candidates It may be randomly generated inside the bin.
位置姿勢候補選択において、スコアは3次元モデルと輝度画像及び距離画像の合致している度合いを表す値なら何でもよい。例えば3次元モデルと輝度画像及び距離画像で誤差ベクトルを求めそのノルムの逆数を用いる方法が考えられるがその他の指標でもよい。 In the position / orientation candidate selection, the score may be any value indicating the degree of matching between the three-dimensional model and the luminance image and the distance image. For example, a method of obtaining an error vector from a three-dimensional model, a luminance image, and a distance image and using the reciprocal of the norm can be considered, but other indexes may be used.
位置姿勢候補選択において、位置姿勢候補をスコアで評価する前に位置姿勢更新処理ステップS601〜ステップS606を1回行っているが、この回数は必ずしも1回である必要はなく、位置姿勢候補が最適解に収束する見込みを高速に確かめられる方法ならばなんでもよい。例えば位置姿勢更新を1回も行わずにスコアを算出してもよいし、または位置姿勢更新を2回以上行ってからスコアを算出してもよい。このように選択処理の具体的な手順については無数の方法が考えられるが本発明の実施においては特にどれでなくてはならないということはない。 In the position / posture candidate selection, the position / posture update processing steps S601 to S606 are performed once before the position / posture candidate is evaluated by the score, but the number of times does not necessarily have to be once, and the position / posture candidate is optimal. Any method can be used to quickly confirm the probability of convergence to the solution. For example, the score may be calculated without updating the position / posture even once, or the score may be calculated after updating the position / posture twice or more. As described above, innumerable methods can be considered for the specific procedure of the selection process, but it is not necessary to use any of them in the practice of the present invention.
Claims (10)
前記取得した概略位置姿勢の分解能を決定する決定手段と、
前記取得した概略位置姿勢と前記決定した当該概略位置姿勢の分解能とに基づいて、前記対象物体の位置姿勢の導出のための初期値として、少なくとも1つの位置姿勢候補を新たに生成する生成手段と、
前記対象物体のモデル情報と、前記初期値として生成された位置姿勢候補とに基づいて、前記対象物体の位置姿勢を導出する導出手段とを備える位置姿勢計測装置。 An acquisition means for acquiring at least one approximate position / orientation of the target object from an image including the target object, and
A determination means for determining the resolution of the acquired approximate position / orientation, and
Based on the resolution of the coarse position and orientation of the determined and the obtained rough position and orientation, as an initial value for the derivation of the position and orientation of the target object, and generating means for newly generating at least one pose candidate ,
A position / posture measuring device including a derivation means for deriving the position / posture of the target object based on the model information of the target object and the position / posture candidate generated as the initial value.
前記対象物体を把持するための把持手段と、
前記位置姿勢計測装置によって計測される前記対象物体の位置姿勢に基づいて、前記把持手段を制御する制御手段とを備えることを特徴とする情報処理装置。 The position / posture measuring device according to any one of claims 1 to 7.
A gripping means for gripping the target object and
An information processing device including a control means for controlling the gripping means based on the position / posture of the target object measured by the position / posture measuring device.
前記取得した概略位置姿勢の分解能を決定する決定工程と、
前記取得した概略位置姿勢と前記決定した当該概略位置姿勢の分解能とに基づいて、前記対象物体の位置姿勢の導出のための初期値として、少なくとも1つの位置姿勢候補を新たに生成する生成工程と、
前記対象物体のモデル情報と、前記初期値として生成された位置姿勢候補とに基づいて、前記対象物体の位置姿勢を導出する導出工程とを備える位置姿勢計測方法。 An acquisition step of acquiring at least one approximate position / orientation of the target object from an image including the target object, and
The determination process for determining the resolution of the acquired approximate position and orientation, and
Based on the resolution of the coarse position and orientation of the determined and the obtained rough position and orientation, as an initial value for the derivation of the position and orientation of the target object, a generation step of newly generating at least one pose candidate ,
A position / posture measurement method including a derivation step of deriving the position / posture of the target object based on the model information of the target object and the position / posture candidate generated as the initial value.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013022372 | 2013-02-07 | ||
JP2013022372 | 2013-02-07 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018132597A Division JP6548789B2 (en) | 2013-02-07 | 2018-07-12 | Position and orientation measurement apparatus and method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019168473A JP2019168473A (en) | 2019-10-03 |
JP6766229B2 true JP6766229B2 (en) | 2020-10-07 |
Family
ID=63795508
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018132597A Active JP6548789B2 (en) | 2013-02-07 | 2018-07-12 | Position and orientation measurement apparatus and method |
JP2019120578A Active JP6766229B2 (en) | 2013-02-07 | 2019-06-27 | Position and posture measuring device and method |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018132597A Active JP6548789B2 (en) | 2013-02-07 | 2018-07-12 | Position and orientation measurement apparatus and method |
Country Status (1)
Country | Link |
---|---|
JP (2) | JP6548789B2 (en) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3426002B2 (en) * | 1993-09-20 | 2003-07-14 | 三菱電機株式会社 | Object recognition device |
JP5093591B2 (en) * | 2008-03-10 | 2012-12-12 | 株式会社Ihi | 3D position and orientation measurement method and apparatus |
JP2011133273A (en) * | 2009-12-22 | 2011-07-07 | Canon Inc | Estimation apparatus and control method thereof, and program |
JP5548482B2 (en) * | 2010-02-26 | 2014-07-16 | キヤノン株式会社 | Position / orientation measuring apparatus, position / orientation measuring method, program, and storage medium |
JP5624394B2 (en) * | 2010-07-16 | 2014-11-12 | キヤノン株式会社 | Position / orientation measurement apparatus, measurement processing method thereof, and program |
JP5716433B2 (en) * | 2011-02-07 | 2015-05-13 | 株式会社Ihi | Shape recognition device, shape recognition method, and program thereof |
JP2012251893A (en) * | 2011-06-03 | 2012-12-20 | Seiko Epson Corp | Shape measuring device, control method of shape measuring device, and program |
JP5132832B1 (en) * | 2011-07-11 | 2013-01-30 | キヤノン株式会社 | Measuring apparatus and information processing apparatus |
-
2018
- 2018-07-12 JP JP2018132597A patent/JP6548789B2/en active Active
-
2019
- 2019-06-27 JP JP2019120578A patent/JP6766229B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019168473A (en) | 2019-10-03 |
JP6548789B2 (en) | 2019-07-24 |
JP2018159719A (en) | 2018-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6370038B2 (en) | Position and orientation measurement apparatus and method | |
JP5839971B2 (en) | Information processing apparatus, information processing method, and program | |
JP5567908B2 (en) | Three-dimensional measuring apparatus, measuring method and program | |
JP5393318B2 (en) | Position and orientation measurement method and apparatus | |
JP6271953B2 (en) | Image processing apparatus and image processing method | |
JP6004809B2 (en) | Position / orientation estimation apparatus, information processing apparatus, and information processing method | |
JP6180087B2 (en) | Information processing apparatus and information processing method | |
JP5839929B2 (en) | Information processing apparatus, information processing system, information processing method, and program | |
JP6324025B2 (en) | Information processing apparatus and information processing method | |
JP5612916B2 (en) | Position / orientation measuring apparatus, processing method thereof, program, robot system | |
JP5624394B2 (en) | Position / orientation measurement apparatus, measurement processing method thereof, and program | |
JP5924862B2 (en) | Information processing apparatus, information processing method, and program | |
JP5627325B2 (en) | Position / orientation measuring apparatus, position / orientation measuring method, and program | |
JP6092530B2 (en) | Image processing apparatus and image processing method | |
JP2016103230A (en) | Image processor, image processing method and program | |
US20120268567A1 (en) | Three-dimensional measurement apparatus, processing method, and non-transitory computer-readable storage medium | |
JP6677522B2 (en) | Information processing apparatus, control method for information processing apparatus, and program | |
JP2016170050A (en) | Position attitude measurement device, position attitude measurement method and computer program | |
JP2014053018A (en) | Information processing device, control method for information processing device, and program | |
JP5462662B2 (en) | Position / orientation measurement apparatus, object identification apparatus, position / orientation measurement method, and program | |
JP2015132523A (en) | Position/attitude measurement apparatus, position/attitude measurement method, and program | |
JP6890422B2 (en) | Information processing equipment, control methods and programs for information processing equipment | |
JP6766229B2 (en) | Position and posture measuring device and method | |
JP6285765B2 (en) | Information processing apparatus and information processing method | |
JP2021077290A (en) | Information processor, information processing method, program, system, and manufacturing method of article |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190726 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190726 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200709 |
|
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: 20200818 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200916 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6766229 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |