JP2011129082A - Three-dimensional object recognition device and three-dimensional object recognition method - Google Patents

Three-dimensional object recognition device and three-dimensional object recognition method Download PDF

Info

Publication number
JP2011129082A
JP2011129082A JP2010009868A JP2010009868A JP2011129082A JP 2011129082 A JP2011129082 A JP 2011129082A JP 2010009868 A JP2010009868 A JP 2010009868A JP 2010009868 A JP2010009868 A JP 2010009868A JP 2011129082 A JP2011129082 A JP 2011129082A
Authority
JP
Japan
Prior art keywords
dimensional object
model
posture
image
gradient
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010009868A
Other languages
Japanese (ja)
Other versions
JP4677536B1 (en
Inventor
Xu Gang
剛 徐
Tomohiro Nakamichi
朋弘 仲道
Yuto Senba
勇人 千馬
Shinsuke Kashihara
晋輔 樫原
Takahisa Nakayama
貴央 中山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kyoto Robotics Corp
Original Assignee
3D Media Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 3D Media Co Ltd filed Critical 3D Media Co Ltd
Priority to JP2010009868A priority Critical patent/JP4677536B1/en
Application granted granted Critical
Publication of JP4677536B1 publication Critical patent/JP4677536B1/en
Publication of JP2011129082A publication Critical patent/JP2011129082A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a three-dimensional object recognition device and a three-dimensional recognition method for recognizing a three-dimensional object without omission with high accuracy at a high speed. <P>SOLUTION: A contour map 14 which stores a contour model in each posture obtained by projecting a model of a three-dimensional object 3 to be recognized on a camera image while changing the model to all postures, and a texture map 15 which stores a texture model in each posture in a texture image such as characters included in the model of the three-dimensional object 3 are stored. The three-dimensional object 3 to be recognized is imaged from a predetermined direction by an imaging means 4 to acquire an image. A pyramid image is created by reducing the resolution of the original image at different ratio, on the basis of the acquired original image. The position and the posture of the three-dimensional object 3 are evaluated while moving the contour model and the texture model in each posture to all positions with respect to a pyramid image with the lowest resolution. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、形状が既知の3次元物体をカメラ等により撮影した2次元画像における輪郭などの特徴から認識する3次元物体認識装置に関する。   The present invention relates to a three-dimensional object recognition apparatus for recognizing a three-dimensional object having a known shape from features such as contours in a two-dimensional image obtained by photographing with a camera or the like.

生産ラインにおいてロボットアームによる部品等の正確な操作を可能とするため、山積みにされた部品等を個々に認識し、各部品の位置及び姿勢を認識する3次元物体認識装置が近年開発されている。   In order to enable accurate operation of parts and the like by a robot arm in a production line, a three-dimensional object recognition device has been developed in recent years that recognizes a pile of parts individually and recognizes the position and orientation of each part. .

従来、このような3次元物体認識装置としては、例えば、入力画像から得られる対象物体の輪郭等の特徴を直線、円弧等に近似したデータであるとともにステレオ計測等で得た3次元位置データを有する特徴データと、対象物体のモデルの三次元位置データとのマッチングにより対象物体の3次元位置姿勢を得るものがある(例えば、特許文献1参照)。この3次元認識装置では、3次元位置姿勢を計算するために必要な3点を形成できる特徴のグループである特徴グループを用いて対象物体の特徴データとモデルの特徴データとのマッチングを行っている。   Conventionally, as such a three-dimensional object recognition device, for example, three-dimensional position data obtained by stereo measurement or the like is obtained by approximating a feature such as a contour of a target object obtained from an input image to a straight line, an arc, or the like. There is one that obtains the three-dimensional position and orientation of the target object by matching the feature data that it has with the three-dimensional position data of the model of the target object (for example, see Patent Document 1). In this three-dimensional recognition device, feature data of a target object and feature data of a model are matched using a feature group that is a group of features that can form three points necessary for calculating a three-dimensional position and orientation. .

特開平09−212643号公報JP 09-212463 A

しかしながら、特許文献1の3次元物体認識装置では、単純なグループ(2つの線分等)ごとにマッチングするため、誤検出が発生しやすくなり、且つ、複雑な形状を認識できないという問題がある。   However, the three-dimensional object recognition apparatus of Patent Document 1 has a problem that false detection is likely to occur and a complicated shape cannot be recognized because matching is performed for each simple group (such as two line segments).

本発明は、上記のような課題に鑑みてなされたものであって、高精度且つ高速に3次元物体を漏れなく認識することができる3次元物体認識装置及び3次物体認識方法を提供することを目的とする。   The present invention has been made in view of the above problems, and provides a three-dimensional object recognition apparatus and a tertiary object recognition method capable of recognizing a three-dimensional object with high accuracy and high speed without omission. With the goal.

上記目的を達成するために、請求項1記載の3次元物体認識装置は、認識対象である3次元物体を所定方向から撮影して画像を取得する撮像手段と、認識対象である3次元物体のモデルを前記撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら、カメラ画像に射影して得た各姿勢でのエッジ点における勾配角度を有する輪郭モデルを格納した輪郭マップ、又は該輪郭マップ及び前記3次元物体のモデルに含まれる文字又は模様等のテクスチャ画像における各姿勢でのエッジ点における勾配角度を有するテクスチャモデルを格納したテクスチャマップを予め記憶する射影モデル画像記憶手段と、前記撮像手段により取得した原画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での輪郭モデル、又は該輪郭モデル及び前記テクスチャ画像における各姿勢でのテクスチャモデルをあらゆる位置に移動させながら、前記3次元物体の位置及び姿勢を評価する位置・姿勢評価手段と、を備えることを特徴としている。   In order to achieve the above object, a three-dimensional object recognition apparatus according to claim 1, an imaging unit that captures a three-dimensional object that is a recognition target from a predetermined direction and acquires an image, and a three-dimensional object that is a recognition target. A contour map storing a contour model having a gradient angle at an edge point in each posture obtained by projecting onto a camera image while changing the model to any posture within a range visible from the imaging means, or the contour map A projection model image storage means for storing in advance a texture map storing a texture model having a gradient angle at an edge point at each posture in a texture image such as a character or a pattern included in the model of the three-dimensional object; and the imaging means A contour model in each posture stored in the projection model image storage means with respect to the original image acquired by the above, or the contour model While moving the texture model at each position in fine the texture image to any position, it is characterized by and a position and posture evaluation means for evaluating the position and orientation of the three-dimensional object.

請求項2記載の3次元物体認識装置は、前記撮像手段が取得した原画像に基づいて、該原画像の解像度を異なる比率で低下させた複数枚のピラミッド画像を作成するピラミッド画像作成手段を備え、前記位置・姿勢評価手段は、解像度が最も低い前記ピラミッド画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での輪郭モデル、又は該輪郭モデル及び前記テクスチャ画像における各姿勢でのテクスチャモデルをあらゆる位置に移動させながら、前記3次元物体の位置及び姿勢を評価することを特徴としている。   The three-dimensional object recognition apparatus according to claim 2, further comprising pyramid image creation means for creating a plurality of pyramid images in which the resolution of the original image is reduced at different ratios based on the original image acquired by the imaging means. The position / orientation evaluation means includes a contour model in each posture stored in the projection model image storage means for the pyramid image having the lowest resolution, or a texture in each posture in the contour model and the texture image. It is characterized in that the position and orientation of the three-dimensional object are evaluated while moving the model to any position.

請求項3記載の3次元物体認識装置は、前記撮像手段が、複数設けられており、前記射影モデル画像記憶手段に記憶された第1撮像手段のカメラ画像に射影して得た各姿勢での輪郭マップ及びテクスチャマップを他の撮像手段に関しても参照して利用することを特徴としている。   The three-dimensional object recognition apparatus according to claim 3, wherein a plurality of the imaging units are provided, and each of the postures obtained by projecting onto the camera image of the first imaging unit stored in the projection model image storage unit is provided. The contour map and the texture map are also used with reference to other imaging means.

請求項4記載の3次元物体認識装置は、予め勾配ベクトルに対応付けて勾配角度を格納した勾配角度ルックアップテーブルを記憶する勾配角度ルックアップテーブル記憶手段と、予め前記3次元物体のモデル上の各画素における勾配角度と前記撮像手段により取得した原画像の各画素における勾配角度とに対応付けて両勾配角度の差から類似度を評価する関数の計算結果を格納した類似度評価関数ルックアップテーブルを記憶する評価関数ルックアップテーブル記憶手段と、前記撮像手段により取得した原画像の各画素に対して勾配ベクトルを算出する勾配ベクトル算出手段と、を備え、前記位置・姿勢評価手段は、前記勾配ベクトル算出手段により算出された勾配ベクトルを前記勾配角度ルックアップテーブルを参照することにより勾配角度に変換し、該勾配角度を用いて前記評価関数ルックアップテーブルを参照して類似度を算出することにより前記3次元物体の位置及び姿勢を評価することを特徴としている。   The three-dimensional object recognition apparatus according to claim 4, wherein a gradient angle lookup table storage means for storing a gradient angle lookup table in which a gradient angle is stored in advance in association with a gradient vector, and a model of the three-dimensional object in advance. A similarity evaluation function lookup table storing calculation results of a function for evaluating the similarity from the difference between the gradient angles in association with the gradient angle in each pixel and the gradient angle in each pixel of the original image acquired by the imaging means Evaluation function lookup table storage means, and gradient vector calculation means for calculating a gradient vector for each pixel of the original image acquired by the imaging means, and the position / posture evaluation means includes the gradient By referring to the gradient angle look-up table, the gradient angle calculated by the vector calculation means is used as the gradient angle. Converted to, and characterized by evaluating the position and orientation of the three-dimensional object by calculating the similarity with reference to the evaluation function look-up table using the gradient angle.

請求項5記載の3次元物体認識装置は、認識対象である3次元物体を所定方向から撮影して画像を取得する撮像手段と、認識対象である3次元物体のモデルを前記撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら得た各姿勢での各画素に対する奥行きデータを格納したデプスマップを予め記憶する射影モデル画像記憶手段と、前記撮像手段が取得した原画像に基づいて、前記3次元物体の奥行きデータを算出する奥行き算出手段と、前記撮像手段が取得した原画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での奥行きデータをあらゆる位置に移動させながら、各画素に対して、前記奥行きデータと前記奥行き算出手段により算出された奥行きデータとの差の自乗平均に基づいて類似度を算出することにより、前記3次元物体の位置及び姿勢を評価する位置・姿勢評価手段と、を備えることを特徴としている。   The three-dimensional object recognition apparatus according to claim 5, wherein an imaging unit that captures a three-dimensional object that is a recognition target from a predetermined direction and obtains an image, and a model of the three-dimensional object that is a recognition target can be viewed from the imaging unit Based on the projection model image storage means for storing in advance a depth map storing depth data for each pixel in each posture obtained while changing to any posture, and the original image acquired by the imaging means, Depth calculation means for calculating depth data of a three-dimensional object, and moving the depth data in each posture stored in the projection model image storage means with respect to the original image acquired by the imaging means to each position, By calculating a similarity for a pixel based on the mean square of the difference between the depth data and the depth data calculated by the depth calculation means. It is characterized in that it comprises a position and posture evaluation means for evaluating the position and orientation of the three-dimensional object.

請求項6記載の3次元物体認識方法は、認識対象である3次元物体のモデルを撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら、カメラ画像に射影して得た各姿勢でのエッジ点における勾配角度を有する輪郭モデルを格納した輪郭マップ、又は該輪郭マップ及び前記3次元物体のモデルに含まれる文字又は模様等のテクスチャ画像における各姿勢でのエッジ点における勾配角度を有するテクスチャモデルを格納したテクスチャマップを予め射影モデル画像記憶手段に記憶するステップと、認識対象である3次元物体を所定方向から前記撮像手段により撮影して画像を取得するステップと、取得した原画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での輪郭モデル、又は該輪郭モデル及び前記テクスチャ画像における各姿勢でのエッジ点をあらゆる位置に移動させながら、前記3次元物体の位置及び姿勢を評価するステップと、備えることを特徴としている。   The three-dimensional object recognition method according to claim 6, wherein the model of the three-dimensional object to be recognized is projected in each posture obtained by projecting on the camera image while changing to any posture within a range that can be viewed from the imaging means. A contour map storing a contour model having a gradient angle at an edge point, or a texture model having a gradient angle at an edge point in each posture in a texture image such as a character or a pattern included in the contour map and the three-dimensional object model Storing a texture map in which the image is stored in the projection model image storage means in advance, capturing a three-dimensional object to be recognized by the imaging means from a predetermined direction, obtaining an image, and obtaining the original image A contour model in each posture stored in the projection model image storage means, or the contour model and the texture image While moving the edge points in each position to any position in, and the features and evaluating the position and orientation of said three-dimensional body, further comprising.

請求項7記載の3次元物体認識方法は、前記撮像手段が複数設けられており、前記射影モデル画像記憶手段に記憶した第1撮像手段のカメラ画像に射影して得た各姿勢での輪郭マップ及びテクスチャマップを他の撮像手段に関しても参照して利用することを特徴としている。   The three-dimensional object recognition method according to claim 7, wherein a plurality of the imaging means are provided, and a contour map in each posture obtained by projecting on the camera image of the first imaging means stored in the projection model image storage means. The texture map is also used with reference to other imaging means.

請求項8記載の3次元物体認識方法は、予め勾配ベクトルに対応付けて勾配角度を格納した勾配角度ルックアップテーブルを記憶するステップと、予め前記3次元物体のモデル上の各画素における勾配角度と前記撮像手段により取得した原画像の各画素における勾配角度とに対応付けて両勾配角度の差から類似度を評価する関数の計算結果を格納した類似度評価関するルックアップテーブルを記憶するステップと、前記撮像手段により取得した原画像の各画素に対して勾配ベクトルを算出するステップと、を備え、前記3次元物体の位置及び姿勢を評価するステップでは、算出した原画像の各画素に対する勾配ベクトルを前記勾配角度ルックアップテーブルを参照することにより勾配角度に変換し、該勾配角度を用いて前記類似度評価関数ルックアップテーブルを参照して類似度を算出することにより前記3次元物体の位置及び姿勢を評価することを特徴としている。   The method for recognizing a three-dimensional object according to claim 8 includes a step of storing a gradient angle lookup table in which a gradient angle is stored in advance in association with a gradient vector, and a gradient angle at each pixel on a model of the three-dimensional object in advance. Storing a lookup table for similarity evaluation storing a calculation result of a function for evaluating similarity from a difference between both gradient angles in association with a gradient angle at each pixel of the original image acquired by the imaging means; Calculating a gradient vector for each pixel of the original image acquired by the imaging means, and in the step of evaluating the position and orientation of the three-dimensional object, the gradient vector for each pixel of the calculated original image is calculated. By converting the gradient angle look-up table into a gradient angle, the similarity evaluation function rule is converted using the gradient angle. It is characterized by evaluating the position and orientation of the three-dimensional object by calculating the similarity with reference to the click-up table.

請求項9記載の3次元物体認識方法は、認識対象である3次元物体のモデルを撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら得た各姿勢での各画素に対する奥行きデータを格納したデプスマップを予め射影モデル画像記憶手段に記憶するステップと、認識対象である3次元物体を所定方向から撮像手段により撮影して画像を取得するステップと、該撮像手段が取得した原画像に基づいて、前記3次元物体の奥行きデータを取得するステップと、取得した原画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での奥行きデータをあらゆる位置に移動させながら、各画素に対して、前記奥行きデータと前記奥行き算出手段により算出された奥行きデータとの差の自乗平均に基づいて類似度を算出することにより、前記3次元物体の位置及び姿勢を評価するステップと、を備えることを特徴とする3次元物体認識方法。   The three-dimensional object recognition method according to claim 9 stores depth data for each pixel in each posture obtained by changing the model of the three-dimensional object to be recognized to any posture within a range that can be viewed from the imaging unit. Based on the original image acquired by the imaging unit, the step of storing the depth map in the projection model image storage unit in advance, the step of capturing the image of the three-dimensional object to be recognized by the imaging unit from a predetermined direction, and Acquiring the depth data of the three-dimensional object, and moving the depth data in each posture stored in the projection model image storage means with respect to the acquired original image to every position, for each pixel. And calculating the similarity based on the mean square of the difference between the depth data and the depth data calculated by the depth calculation means. 3D object recognition method characterized by comprising the steps of: evaluating the position and orientation of the three-dimensional object.

請求項1及び6記載の発明によれば、予め認識対象である3次元物体のモデルのあらゆる姿勢における輪郭モデルを格納した輪郭マップを記憶しておき、撮像手段により取得した画像に対してこの輪郭モデルをあらゆる位置に移動させながら3次元物体の位置及び姿勢の評価を行う。つまり、輪郭モデルを位置(3自由度)及び姿勢(3自由度)の計6自由度全てにおいて、撮像手段により取得した入力画像と合っているか否かの評価をまんべんなく行うので、高精度に3次元物体の位置及び姿勢を認識することができる。また、輪郭モデルだけでなく、3次元物体に含まれる文字又は模様等のテクスチャ画像における各姿勢でのテクスチャモデルを格納したテクスチャマップを予め記憶しておき、このテクスチャモデルについてもあらゆる位置に移動させながら評価を行うことにより、例えば、直方体等のような輪郭だけでは向きが特定できないような3次元物体についても、その3次元物体に含まれる文字又は模様等のテクスチャが統一されていれば、その向きまで認識することが可能になるので、箱詰め作業等をロボットアーム等を用いて行う際に、部品の向きまで考慮して箱詰め作業等を正確に行うことが可能になる。   According to the first and sixth aspects of the present invention, a contour map storing a contour model in every posture of a model of a three-dimensional object that is a recognition target is stored in advance, and this contour is stored in the image acquired by the imaging unit. The position and orientation of the three-dimensional object are evaluated while moving the model to any position. That is, the contour model is uniformly evaluated whether or not it matches the input image acquired by the imaging means in all 6 degrees of freedom of position (3 degrees of freedom) and posture (3 degrees of freedom). The position and orientation of a dimensional object can be recognized. In addition to a contour model, a texture map storing a texture model at each posture in a texture image such as a character or pattern included in a three-dimensional object is stored in advance, and this texture model is moved to any position. However, by performing evaluation, for example, for a three-dimensional object whose orientation cannot be specified only by a contour such as a rectangular parallelepiped, if the texture such as characters or patterns included in the three-dimensional object is unified, Since it is possible to recognize the orientation, it is possible to accurately perform the packaging operation in consideration of the orientation of the parts when performing the packaging operation using a robot arm or the like.

請求項2記載の発明によれば、撮像手段が取得した原画像に基づいて、該原画像の解像度を異なる比率で低下させた複数枚のピラミッド画像のうち、まずは解像度が最も低いピラミッド画像に対して、位置及び姿勢の評価を行っていくので、処理速度を高速化させることができる。   According to the invention described in claim 2, based on the original image acquired by the imaging means, among the plurality of pyramid images in which the resolution of the original image is reduced at different ratios, first, the pyramid image having the lowest resolution is selected. Thus, since the position and orientation are evaluated, the processing speed can be increased.

請求項3及び7記載の発明によれば、1つの撮像手段に対して輪郭マップ及びテクスチャマップを予め記憶しておけば、他の撮像手段はその輪郭マップ及びテクスチャマップを参照して利用することにより、別途他の撮像手段に対する輪郭マップ及びテクスチャマップを記憶しておく必要がなくなるので、予め記憶しておくデータ量を軽減することができる。   According to the third and seventh aspects of the invention, if an outline map and a texture map are stored in advance for one image pickup means, the other image pickup means refer to the outline map and the texture map for use. This eliminates the need to store a contour map and a texture map for other imaging means separately, thereby reducing the amount of data stored in advance.

請求項4及び8記載の発明によれば、予め勾配ベクトルに対応付けて勾配角度を格納した勾配角度ルックアップテーブルを記憶する勾配角度ルックアップテーブルと、3次元物体のモデル上の各画素における勾配角度と前記撮像手段により取得した原画像の各画素における勾配角度とに対応付けて両勾配角度の差から類似度を評価する関数の計算結果を格納した類似度評価関数ルックアップテーブルを記憶しておくので、撮像手段により取得した原画像の各画素に対して勾配ベクトルを算出して、勾配角度ルックアップテーブル及び類似度評価関数ルックアップテーブルを参照すれば良く、3次元物体の位置及び姿勢を評価するための演算処理に掛かる時間が短縮されるので、処理速度を向上させることができる。   According to the fourth and eighth aspects of the present invention, a gradient angle lookup table that stores a gradient angle lookup table in which gradient angles are stored in advance in association with gradient vectors, and gradients at respective pixels on a three-dimensional object model. A similarity evaluation function lookup table storing a calculation result of a function for evaluating similarity from a difference between both gradient angles in association with the angle and the gradient angle at each pixel of the original image acquired by the imaging means is stored. Therefore, it is only necessary to calculate a gradient vector for each pixel of the original image acquired by the imaging unit and refer to the gradient angle lookup table and the similarity evaluation function lookup table to determine the position and orientation of the three-dimensional object. Since the time required for the arithmetic processing for evaluation is shortened, the processing speed can be improved.

請求項5及び9記載の発明によれば、予め認識対象である3次元物体のモデルのあらゆる姿勢での各画素に対する奥行きデータを格納したデプスマップを記憶しておき、撮像手段により取得した原画像に対して各姿勢における奥行きデータをあらゆる位置に移動させながら、原画像に基づいて算出した奥行きデータとの差の自乗平均に基づいて類似度を算出することにより、3次元物体の位置及び姿勢の評価を行うので、高精度に3次元物体の位置及び姿勢を認識することができる。   According to the fifth and ninth aspects of the present invention, the depth map storing the depth data for each pixel in every posture of the three-dimensional object model to be recognized is stored in advance, and the original image acquired by the imaging unit is stored. By calculating the similarity based on the mean square of the difference from the depth data calculated based on the original image while moving the depth data in each posture to every position, the position and orientation of the three-dimensional object are calculated. Since the evaluation is performed, the position and orientation of the three-dimensional object can be recognized with high accuracy.

本発明の第1の実施形態に係る3次元物体認識装置の構成の一例を示す概略模式図である。It is a schematic diagram showing an example of composition of a three-dimensional object recognition device concerning a 1st embodiment of the present invention. 第1の実施形態に係る3次元物体認識装置による処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process by the three-dimensional object recognition apparatus which concerns on 1st Embodiment. 輪郭マップの作成方法を説明するための説明図である。It is explanatory drawing for demonstrating the preparation method of an outline map. 輪郭モデルについて説明するための説明図である。It is explanatory drawing for demonstrating an outline model. 探索空間を分割して、輪郭モデルを作成する方法を説明するための説明図である。It is explanatory drawing for demonstrating the method of dividing a search space and producing an outline model. 探索空間を分割して、輪郭モデルを作成する方法を説明するための説明図である。It is explanatory drawing for demonstrating the method of dividing a search space and producing an outline model. カメラ座標系とモデル座標系の関係を示す概略模式図である。It is a schematic diagram which shows the relationship between a camera coordinate system and a model coordinate system. 勾配角度ルックアップテーブルの一例を示す概略模式図である。It is a schematic diagram which shows an example of a gradient angle lookup table. 類似度評価関数ルックアップテーブルの一例を示す概略模式図である。It is a schematic diagram which shows an example of a similarity evaluation function look-up table. ピラミッド画像を説明するための説明図である。It is explanatory drawing for demonstrating a pyramid image. 3次元物体の位置及び姿勢の評価について説明するための説明図である。It is explanatory drawing for demonstrating evaluation of the position and attitude | position of a three-dimensional object. 3次元物体の位置及び姿勢の評価について説明するための説明図である。It is explanatory drawing for demonstrating evaluation of the position and attitude | position of a three-dimensional object. 類似度評価関数ルックアップテーブルの他の一例を示す概略模式図である。It is a schematic diagram which shows another example of a similarity evaluation function look-up table. 第2の実施形態に係る3次元物体認識装置による処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process by the three-dimensional object recognition apparatus which concerns on 2nd Embodiment. エッジ抽出を説明するための説明図であって、原画像の一部をピクセルレベルまで拡大した状態を示す図である。It is explanatory drawing for demonstrating edge extraction, Comprising: It is a figure which shows the state which expanded a part of original image to the pixel level. 第3の実施形態に係る3次元物体認識装置による処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process by the three-dimensional object recognition apparatus which concerns on 3rd Embodiment.

以下に本発明に係る3次元物体認識装置1について、図面を参照しつつ説明する。図1に示すように、3次元物体認識装置1は、作業台2の上に載置された認識対象である3次元物体3を認識するためのものであって、この3次元物体3を異なる方向から撮影するための2台のカメラ(撮像手段)4と、3次元物体3を把持するためのロボットアーム5と、各カメラ4から入力された撮影画像に基づいてロボットアーム5の動作を制御するコンピュータ6とを備えるものである。   Hereinafter, a three-dimensional object recognition apparatus 1 according to the present invention will be described with reference to the drawings. As shown in FIG. 1, the three-dimensional object recognition apparatus 1 is for recognizing a three-dimensional object 3 that is a recognition target placed on a work table 2, and is different from the three-dimensional object 3. Two cameras (imaging means) 4 for photographing from the direction, a robot arm 5 for gripping the three-dimensional object 3, and the operation of the robot arm 5 based on the photographed image input from each camera 4 And a computer 6 that performs processing.

コンピュータ6は、図1に示すように、カメラ4が撮影した画像データ等を記憶する画像メモリ7と、3次元物体3の認識を行うための処理プログラム等を格納するハードディスク8と、該ハードディスク8から読み出された処理プログラムを一時記憶するRAM(Random Access Memory)9と、この処理プログラムに従って3次元物体3の位置及び姿勢を算出するCPU(Central Proceessing Unit)10と、画像メモリ7に記憶された画像データやCPU10による算出結果等を表示するための表示部11と、マウスやキーボード等で構成される操作部12と、これら各部を互いに接続するシステムバス13とを有している。尚、本実施形態では、3次元物体3の認識を行う処理プログラムをハードディスク8に格納している例を示しているが、これに代えて、コンピュータ読み取り可能な記憶媒体(不図示)に格納しておき、この記録媒体から処理プログラムを読み出すように構成することも可能である。   As shown in FIG. 1, the computer 6 includes an image memory 7 that stores image data and the like captured by the camera 4, a hard disk 8 that stores a processing program for recognizing the three-dimensional object 3, and the hard disk 8. A RAM (Random Access Memory) 9 that temporarily stores a processing program read from the CPU, a CPU (Central Processing Unit) 10 that calculates the position and orientation of the three-dimensional object 3 according to the processing program, and an image memory 7 A display unit 11 for displaying image data and calculation results by the CPU 10, an operation unit 12 including a mouse and a keyboard, and a system bus 13 for connecting these units to each other. In the present embodiment, an example in which the processing program for recognizing the three-dimensional object 3 is stored in the hard disk 8 is shown. Instead, the processing program is stored in a computer-readable storage medium (not shown). It is also possible to read out the processing program from this recording medium.

以下、3次元物体認識装置1による処理の流れについて図2のフローチャートを用いながら説明する。本実施形態に係る3次元物体認識装置1では、図2に示すように、まずオフラインで輪郭マップ14及びテクスチャマップ15を作成し、このような射影モデル画像の記憶手段として機能するRAM9等に予め記憶しておく(S101)。この輪郭マップの作成方法としては、例えば、図3に示すように、まず3次元物体3の各エッジEの上にサンプリング点Aを設定し、各サンプリング点Aがカメラ4から視認可能であるか否かを判定する。そして、カメラ4から視認可能と判断した各サンプリング点Aをカメラ画像I上に射影し、各エッジ点Pの座標及びエッジ点Pにおける勾配角度を算出する。この作業を図4に示すように、3次元CAD等を利用して、予めオフラインでカメラ4の位置等から考えて可能性のある全範囲に渡って、3次元物体3のモデルをあらゆる姿勢(3自由度)に少しずつ細かく変化させながら、繰り返し行う。このようにして得られた各姿勢でのエッジ点における勾配角度を有する輪郭モデル3aを格納することにより輪郭マップ14を作成する。この際の輪郭モデル3aは、認識精度を向上させるために、できる限り細かい姿勢毎にサンプリングしておくことが好ましいが、そのサンプリング数等は特に限定されるものではない。また、テクスチャマップ15は、図1に示すような3次元物体3に含まれる模様や文字等のテクスチャ31に対しても同様に、カメラ4から視認可能な範囲において、あらゆる姿勢(3自由度)に少しずつ細かく変化させながら、カメラ画像I上に射影して得たテクスチャ画像における各姿勢でのエッジ点における勾配角度を有するテクスチャモデルを格納したものである。   Hereinafter, the flow of processing by the three-dimensional object recognition apparatus 1 will be described with reference to the flowchart of FIG. In the three-dimensional object recognition apparatus 1 according to the present embodiment, as shown in FIG. 2, first, an outline map 14 and a texture map 15 are created offline and stored in advance in a RAM 9 or the like that functions as a storage unit for such projection model images. Store it (S101). As a method for creating this contour map, for example, as shown in FIG. 3, first, sampling points A are set on each edge E of the three-dimensional object 3, and whether each sampling point A is visible from the camera 4. Determine whether or not. Then, each sampling point A determined to be visible from the camera 4 is projected onto the camera image I, and the coordinates of each edge point P and the gradient angle at the edge point P are calculated. As shown in FIG. 4, the model of the three-dimensional object 3 can be placed in any posture (overall possible range) by using a three-dimensional CAD or the like and considering the position of the camera 4 offline in advance. Repeatedly, changing little by little (3 degrees of freedom). The contour map 14 is created by storing the contour model 3a having the gradient angle at the edge point in each posture obtained in this way. The contour model 3a at this time is preferably sampled for every posture as fine as possible in order to improve recognition accuracy, but the number of samplings is not particularly limited. Similarly, the texture map 15 can be applied to any posture (three degrees of freedom) within the range that can be visually recognized from the camera 4 with respect to the texture 31 such as a pattern or characters included in the three-dimensional object 3 as shown in FIG. The texture model having the gradient angle at the edge point in each posture in the texture image obtained by projecting onto the camera image I while being changed little by little is stored.

また、位置の違いによる姿勢変形の影響を軽減するために、このように輪郭モデル3aを生成する際に図5,6に示すように、位置については、カメラ4から視認可能な探索空間Sを分割して、その中心における輪郭モデル3aを生成するようにしても良い。図5,6では、3×3の9つに分割した際の例を示しているが、この探索空間Sの分割はこれに限定されるものではなく、適宜分割数を設定することができる。   Further, in order to reduce the influence of the posture deformation due to the difference in position, as shown in FIGS. 5 and 6 when the contour model 3a is generated in this way, as for the position, the search space S visible from the camera 4 is used. It is also possible to divide and generate the contour model 3a at the center. 5 and 6 show an example in which the 3 × 3 divisions are shown, the division of the search space S is not limited to this, and the number of divisions can be set as appropriate.

また、1台のカメラ4aにおける輪郭マップ14及びテクスチャマップ15をあらゆる姿勢について生成して記憶しておけば、もう一方のカメラ4bに対しては、この輪郭マップ14及びテクスチャマップ15を参照して利用することができる。つまり、カメラ4bから見た場合の3次元物体3の輪郭モデルは、カメラ4aにおける輪郭マップ14に格納されているいずれかの輪郭モデル3aと対応している。従って、カメラ4a、4bのお互いの位置及び姿勢がわかれば、カメラ4aに対する輪郭マップ14からカメラ4bから見た場合の輪郭モデルを参照することができる。例えば、図7に示すような関係にカメラ4a、4b、及び3次元物体3のモデルがあった場合には、モデル座標系における座標X=[X Y Z]を左カメラ4aのカメラ座標系に変換すると、数式(1)のように表される。Xc=[Xc Yc Zc]は左カメラ4aのカメラ座標系における座標を表している。そして、右カメラ4bのカメラ座標系における座標では、数式(2)のように表され、このような変換式により、回転行列R’及び並進移動ベクトルt’が計算される。この回転行列R’がわかれば、輪郭マップ14のどの回転姿勢を参照すれば良いかが決定され、又、並進移動ベクトルt’により探索空間の分割のどの部分を参照すれば良いかが決定されるので、左カメラにおける輪郭マップ14及びテクスチャマップ15を記憶しておけば、別途右カメラ4bにおける輪郭マップやテクスチャマップを作成しないで済む。これにより、RAM9等に記憶するデータ量を軽減することができる。尚、本実施形態では、2台のカメラ4を設けた例を示しているが、単眼でも3台以上のカメラ4を設けるように構成しても良い。3台以上のカメラ4を設ける場合でも、2台のカメラ4の場合と同様に1台のカメラ4に対しての輪郭マップ14及びテクスチャマップ15が記憶されていれば、他のカメラ4については、この輪郭マップ14及びテクスチャマップ15を参照して利用することができる。

Figure 2011129082
Figure 2011129082
Further, if the contour map 14 and the texture map 15 in one camera 4a are generated and stored for every posture, the other camera 4b is referred to the contour map 14 and the texture map 15. Can be used. That is, the contour model of the three-dimensional object 3 when viewed from the camera 4b corresponds to one of the contour models 3a stored in the contour map 14 in the camera 4a. Therefore, if the positions and postures of the cameras 4a and 4b are known, the contour model viewed from the camera 4b can be referred to from the contour map 14 for the camera 4a. For example, when the models of the cameras 4a and 4b and the three-dimensional object 3 are in the relationship shown in FIG. 7, the coordinate X = [XYZ] T in the model coordinate system is set to the camera coordinate system of the left camera 4a. Is converted into Equation (1). Xc = [Xc Yc Zc] T represents coordinates in the camera coordinate system of the left camera 4a. The coordinates of the right camera 4b in the camera coordinate system are expressed as Equation (2), and the rotation matrix R ′ and the translation vector t ′ are calculated by such a conversion equation. If this rotation matrix R ′ is known, it is determined which rotation posture of the contour map 14 should be referred to, and which portion of the search space should be referred to by the translation vector t ′. Therefore, if the contour map 14 and the texture map 15 in the left camera are stored, it is not necessary to create a contour map and a texture map in the right camera 4b separately. Thereby, the data amount memorize | stored in RAM9 etc. can be reduced. In this embodiment, an example in which two cameras 4 are provided is shown, but a single eye may be provided to provide three or more cameras 4. Even when three or more cameras 4 are provided, as long as the contour map 14 and the texture map 15 for one camera 4 are stored as in the case of the two cameras 4, the other cameras 4 The contour map 14 and the texture map 15 can be used as a reference.
Figure 2011129082
Figure 2011129082

また、予め勾配ベクトルに対応つけて勾配角度を格納した勾配角度ルックアップテーブル(以下、勾配角度LUTとする)16と、3次元物体3のモデル上の各画素における勾配角度とカメラ4から取得する原画像の各画素における勾配角度とに対応付けて両勾配角度の差から類似度を評価する関数の計算結果を格納した類似度評価関数ルックアップテーブル(類似度評価関数LUTとする)17とをRAM9等に記憶しておく(S102)。   Further, a gradient angle lookup table (hereinafter referred to as gradient angle LUT) 16 in which gradient angles are stored in advance in association with gradient vectors, and gradient angles at each pixel on the model of the three-dimensional object 3 are acquired from the camera 4. A similarity evaluation function lookup table (similarity evaluation function LUT) 17 storing calculation results of functions for evaluating similarity from the difference between both gradient angles in association with gradient angles in each pixel of the original image. It is stored in the RAM 9 or the like (S102).

勾配角度LUT16は、例えば、図8に示すように、勾配ベクトル(Ix、Iy)16aに対応つけて勾配角度16bを格納したものであり、整数の精度での勾配ベクトル(Ix、Iy)16aに対する勾配角度16bが参照できるようになっている。類似度評価関数LUT17は、例えば、図9に示すように、3次元物体3のモデル上の各画素における勾配角度θ17aと勾配角度LUT16を参照して得られるカメラ4から取得する原画像の各画素における勾配角度θ16bとに対応付けて両勾配角度の差から類似度Eを評価する関数の計算結果を格納したものであり、例えば、類似度Eを評価する関数である数式(3)等を用いた計算結果を予め格納しておくものである。但し、数式(3)におけるθmは3次元物体3のモデル上の画素における勾配角度、θcはカメラ4から取得する原画像の画素における勾配角度、τは閾値を表している。この数式(3)では、両勾配角度の差が小さいときには、関数は1に近い数字を出力し、差が大きくなるにつれて0に近づくような結果を出力する。そして、両勾配角度の差の絶対値が予め設定された閾値τより大きくなる場合には、0を出力結果とするものである。尚、この数式(3)は、勾配角度の差から類似度を評価する関数の一例であり、類似度を評価する関数はこれに限れるものではない。

Figure 2011129082
For example, as shown in FIG. 8, the gradient angle LUT 16 stores the gradient angle 16b in association with the gradient vector (Ix, Iy) 16a. The gradient angle LUT 16 corresponds to the gradient vector (Ix, Iy) 16a with integer precision. The gradient angle 16b can be referred to. For example, as shown in FIG. 9, the similarity evaluation function LUT 17 is an original image acquired from the camera 4 obtained by referring to the gradient angle θ m 17a and the gradient angle LUT 16 in each pixel on the model of the three-dimensional object 3. The calculation result of the function for evaluating the similarity E from the difference between the two gradient angles is stored in association with the gradient angle θ c 16b in each pixel. For example, the mathematical expression (3 ) Etc. are stored in advance. In Equation (3), θ m represents a gradient angle at a pixel on the model of the three-dimensional object 3, θ c represents a gradient angle at a pixel of the original image acquired from the camera 4, and τ represents a threshold value. In Equation (3), when the difference between the two gradient angles is small, the function outputs a number close to 1 and outputs a result that approaches 0 as the difference increases. When the absolute value of the difference between the two gradient angles is larger than a preset threshold value τ, 0 is output. The equation (3) is an example of a function for evaluating the similarity based on the difference in gradient angle, and the function for evaluating the similarity is not limited to this.
Figure 2011129082

次に、カメラ4により認識対象となる3次元物体3を撮影する(S103)。そして、カメラ4から3次元物体3を撮影した原画像が入力されると、CPU10は、この入力された原画像に基づいて、複数枚のピラミッド画像18を作成し(S104)、図1に示す画像メモリ7に記憶する。   Next, the three-dimensional object 3 to be recognized is photographed by the camera 4 (S103). When an original image obtained by photographing the three-dimensional object 3 is input from the camera 4, the CPU 10 creates a plurality of pyramid images 18 based on the input original image (S104), as shown in FIG. Store in the image memory 7.

図10は、ピラミッド画像を説明するための説明図である。このピラミッド画像18は、カメラ4により撮影されて得られた原画像19の解像度を所定の比率で低下させたものである。例えば、CPU10は、縦横両方向にそれぞれn個ずつのピクセルが並んだ原画像19が入力された場合、縦横両方向にそれぞれn/2個のピクセルが並んだ第1ピラミッド画像18A、縦横両方向にそれぞれn/4個のピクセルが並んだ第2ピラミッド画像18B、縦横両方向にそれぞれn/8個のピクセルが並んだ第3ピラミッド画像18Cを作成する。尚、本実施例では、図10に示すように3段階のピラミッド画像18を作成しているが、この段階数は入力画像の大きさに応じて適宜変更することができる。   FIG. 10 is an explanatory diagram for explaining a pyramid image. This pyramid image 18 is obtained by reducing the resolution of the original image 19 obtained by being photographed by the camera 4 at a predetermined ratio. For example, when an original image 19 in which n pixels are arranged in both vertical and horizontal directions is input, the CPU 10 receives the first pyramid image 18A in which n / 2 pixels are arranged in both vertical and horizontal directions, and n in both vertical and horizontal directions. A second pyramid image 18B in which / 4 pixels are arranged and a third pyramid image 18C in which n / 8 pixels are arranged in both vertical and horizontal directions are created. In this embodiment, a three-stage pyramid image 18 is created as shown in FIG. 10, but the number of stages can be changed as appropriate according to the size of the input image.

次に、CPU10は、各ピラミッド画像18の各画素に対して各画素の濃度が変化する方向と大きさを示す勾配ベクトルを整数の精度で算出し(S105)、その算出結果をRAM9等に格納する。   Next, the CPU 10 calculates a gradient vector indicating the direction and magnitude in which the density of each pixel changes for each pixel of each pyramid image 18 with integer precision (S105), and stores the calculation result in the RAM 9 or the like. To do.

次に、CPU10は、解像度が最も低い第3ピラミッド画像18Cに対して、図11に示すように輪郭マップ14に格納された輪郭モデル3a及びテクスチャマップ15に格納されたテクスチャモデル31aを第3ピラミッド画像18Cの解像度に合わせて粗くしたものをあらゆる位置(3自由度)に移動させながら、3次元物体3の位置及び姿勢を評価する(S106)。尚、Z方向に対しては、図12に示すように、輪郭モデル3aのスケールを拡大及び縮小させることによって探索を行う。この3次元物体3の位置及び姿勢の評価では、まずS105の処理で算出された勾配ベクトル(Ix(u,v),Iy(u,v))を式(4)に示す参照式を用いて、図8に示すような予めオフラインで生成した勾配角度LUT16を参照させることにより、勾配角度θ16bに変換させる。尚、IxもIyも予め設定した設定値より小さい画素に対しては、評価を行わないように、例えば、LUT16=Aのように所定の値を返すようにしておく。

Figure 2011129082
Next, for the third pyramid image 18C having the lowest resolution, the CPU 10 converts the contour model 3a stored in the contour map 14 and the texture model 31a stored in the texture map 15 into the third pyramid as shown in FIG. The position and orientation of the three-dimensional object 3 are evaluated while moving the roughened image according to the resolution of the image 18C to every position (3 degrees of freedom) (S106). For the Z direction, as shown in FIG. 12, a search is performed by enlarging and reducing the scale of the contour model 3a. In the evaluation of the position and orientation of the three-dimensional object 3, first, the gradient vector (Ix (u, v), Iy (u, v)) calculated in the process of S105 is used using the reference equation shown in the equation (4). By referring to the gradient angle LUT16 generated offline beforehand as shown in FIG. 8, the gradient angle θ c 16b is converted. It should be noted that a predetermined value such as LUT16 = A is returned so that evaluation is not performed for pixels whose Ix and Iy are smaller than a preset set value.
Figure 2011129082

次に、この各勾配角度θ16bを式(5)に示す参照式を用いて、図9に示すような予めオフラインで生成した類似度評価関数LUT17を参照させることにより、数式(3)を用いた勾配角度θ16bと3次元物体のモデル上の各画素における勾配角度θ17aとの差から類似度Eを求めた計算結果を得る。これを数式(6)に示すように、式(5)を参照することにより得られる各画素における類似度Eの和の平均を計算することにより、類似度を算出し、3次元物体の位置及び姿勢を評価する。但し、a(u,v)は、モデル上の各画素における勾配角度を表すものである。

Figure 2011129082
Figure 2011129082
Next, each gradient angle θ c 16b is referred to a similarity evaluation function LUT17 generated off-line in advance as shown in FIG. 9 by using a reference expression shown in Expression (5), thereby obtaining Expression (3). A calculation result for obtaining the similarity E from the difference between the used gradient angle θ c 16b and the gradient angle θ m 17a at each pixel on the model of the three-dimensional object is obtained. As shown in Equation (6), the similarity is calculated by calculating the average of the sum of the similarities E in each pixel obtained by referring to Equation (5), and the position of the three-dimensional object and Evaluate posture. However, a (u, v) represents the gradient angle at each pixel on the model.
Figure 2011129082
Figure 2011129082

そして、その評価結果に基づき、位置及び姿勢が必要な精度を満たしているか否かを判定し(S107)、必要な精度を満たしていると判断した場合は(S107:YES)、その結果を最終結果として出力し(S108)、処理を終了する。一方、必要な精度を満たしていないと判断した場合は(S107:NO)、まだ位置及び姿勢を評価していない高解像度のピラミッド画像18があるか否かを判定し(S109)、そのような未処理のピラミッド画像18がないと判断した場合は(S109:NO)、第3ピラミッド画像18Cの結果を最終結果として出力し(S108)、処理を終了する。一方、未処理のピラミッド画像18があると判断した場合は(S109:YES)、S106へ戻って残りのピラミッド画像18について同様の処理を行う。この場合、1回目の位置及び姿勢の評価でおおよそ3次元物体3の位置及び姿勢を認識しているので、より高解像度のピラミッド画像18においては、予めその近辺を探索しながら位置及び姿勢の評価を行っていく。そして、未処理のピラミッド画像18が無くなるまでこれを繰り返す。このように、必要な精度に達するまで、より解像度の高いピラミッド画像15について処理を行うことにより、3次元物体3の位置及び姿勢をより高い精度で認識することができる。本実施形態では、このようにピラミッド画像を作成して解像度を低下させておくことにより、探索の高速化を図ることができる。また、予めオフラインで生成した勾配角度LUT16及び類似度評価関数LUT17を参照するので、3次元物体の位置及び姿勢を評価するための演算処理に掛かる時間が短縮され、より処理速度を向上させることができる。尚、本実施形態では、ピラミッド画像に対して位置及び姿勢の評価を行っていく例を用いて説明したが、当然原画像に対して同様の手法により位置及び姿勢の評価を行うことも可能である。   Then, based on the evaluation result, it is determined whether or not the position and orientation satisfy the required accuracy (S107). If it is determined that the required accuracy is satisfied (S107: YES), the result is finalized. The result is output (S108), and the process is terminated. On the other hand, if it is determined that the required accuracy is not satisfied (S107: NO), it is determined whether there is a high-resolution pyramid image 18 that has not yet been evaluated for position and orientation (S109). If it is determined that there is no unprocessed pyramid image 18 (S109: NO), the result of the third pyramid image 18C is output as the final result (S108), and the process is terminated. On the other hand, if it is determined that there is an unprocessed pyramid image 18 (S109: YES), the process returns to S106 and the same processing is performed on the remaining pyramid image 18. In this case, since the position and orientation of the three-dimensional object 3 are roughly recognized in the first evaluation of the position and orientation, in the higher resolution pyramid image 18, the position and orientation are evaluated while searching for the vicinity in advance. I will go. This is repeated until there is no unprocessed pyramid image 18. In this way, by performing processing on the pyramid image 15 having a higher resolution until the required accuracy is reached, the position and orientation of the three-dimensional object 3 can be recognized with higher accuracy. In this embodiment, it is possible to speed up the search by creating a pyramid image and reducing the resolution in this way. Further, since the gradient angle LUT 16 and the similarity evaluation function LUT 17 generated offline in advance are referred to, the time required for the arithmetic processing for evaluating the position and orientation of the three-dimensional object can be shortened, and the processing speed can be further improved. it can. In this embodiment, the example in which the position and orientation are evaluated with respect to the pyramid image has been described, but it is naturally possible to evaluate the position and orientation with respect to the original image by the same method. is there.

尚、本実施形態では、図9に示すようなマトリクス状の類似度評価関数LUT17を参照して類似度Eを求めているが、この類似度評価関数LUT17の代わりに、図13に示すように、勾配角度LUT16を参照して得られるカメラ4から取得する原画像の各画素における勾配角度θと3次元物体3のモデル上の各画素における勾配角度θとに対応付けて両勾配角度の差から類似度Eを評価する関数の計算結果を格納する1次元の類似度評価関数LUT20を参照することにより類似度Eを得るようにしても良い。 In this embodiment, the similarity E is obtained with reference to a matrix-like similarity evaluation function LUT17 as shown in FIG. 9, but instead of this similarity evaluation function LUT17, as shown in FIG. The gradient angle θ c at each pixel of the original image obtained from the camera 4 obtained with reference to the gradient angle LUT 16 and the gradient angle θ m at each pixel on the model of the three-dimensional object 3 are associated with each other. The similarity E may be obtained by referring to the one-dimensional similarity evaluation function LUT20 that stores the calculation result of the function that evaluates the similarity E from the difference.

この場合、S105の処理で算出された勾配ベクトル(Ix(u,v),Iy(u,v))を式(4)に示す参照式を用いて、勾配角度LUT16を参照させることにより、勾配角度θを求めた後、式(7)に示す参照式を用いて、類似度評価関数LUT20を参照させることにより、数式(3)を用いた勾配角度θと3次元物体のモデル上の各画素における勾配角度θとの差から類似度Eを求めた計算結果を得ることができる。類似度評価関数LUT20は、図13に示すように、1次元のルックアップテーブルであるので、この類似度評価関数LUT20を格納するのに使用するメモリの容量を小さくすることができる。また、類似度評価関数LUT17では、原画像から求められる勾配角度θとモデル定義された勾配角度θをそれぞれ参照するようになっているが、この類似度評価関数LUT20では、原画像から求められる勾配角度θとモデル定義された勾配角度θの差を参照すれば良いので、処理速度をより向上させることができる。

Figure 2011129082
In this case, the gradient vector (Ix (u, v), Iy (u, v)) calculated in the process of S105 is referred to the gradient angle LUT16 using the reference equation shown in equation (4), thereby the gradient. After calculating the angle θ c , the similarity evaluation function LUT 20 is referred to by using the reference expression shown in Expression (7), whereby the gradient angle θ c using Expression (3) and the three-dimensional object model A calculation result for obtaining the similarity E from the difference from the gradient angle θ m in each pixel can be obtained. Since the similarity evaluation function LUT20 is a one-dimensional lookup table as shown in FIG. 13, the capacity of the memory used for storing the similarity evaluation function LUT20 can be reduced. Further, the similarity evaluation function LUT 17, the slope angle theta c and model defined slope angle theta m obtained from the original image is adapted to refer respectively, in the similarity evaluation function LUT 20, calculated from the original image Since the difference between the gradient angle θ c to be generated and the gradient angle θ m defined in the model may be referred to, the processing speed can be further improved.
Figure 2011129082

次に、第2の実施形態に係る3次元物体認識装置1aの処理の流れについて図14を用いて説明する。3次元物体認識装置1aは第1実施形態に係る3次元物体認識装置1と略同様の構成を備えるものであり、3次元物体3の位置及び姿勢の評価手段が異なるものである。3次元物体認識装置1aでも同様に、図3に示すように、カメラ4から視認可能と判断したサンプリング点Aをカメラ画像Iに射影し、射影点Pの座標及び射影点Pにおけるエッジの向きを算出する作業を、予めオフラインで、カメラ4の位置等から考えて可能性のある全範囲に渡って、3次元物体3の位置(3自由度)及び姿勢(3自由度)を十分に細かく変化させながら、繰り返し行う。そして、3次元物体3の位置及び姿勢に対応付けて、射影点Pの座標と射影点Pにおけるエッジの向きと格納することにより作成したルックアップテーブルをRAM9等に記憶しておく。   Next, a processing flow of the three-dimensional object recognition device 1a according to the second embodiment will be described with reference to FIG. The three-dimensional object recognition device 1a has substantially the same configuration as the three-dimensional object recognition device 1 according to the first embodiment, and the evaluation means for the position and orientation of the three-dimensional object 3 is different. Similarly, in the three-dimensional object recognition apparatus 1a, as shown in FIG. 3, the sampling point A determined to be visible from the camera 4 is projected onto the camera image I, and the coordinates of the projection point P and the edge direction at the projection point P are projected. The calculation work is offline in advance, and the position (three degrees of freedom) and posture (three degrees of freedom) of the three-dimensional object 3 are changed sufficiently finely over the entire range that can be considered from the position of the camera 4 etc. Repeat as you go. A lookup table created by storing the coordinates of the projection point P and the direction of the edge at the projection point P in association with the position and orientation of the three-dimensional object 3 is stored in the RAM 9 or the like.

次に、カメラ4により認識対象となる3次元物体3を撮影する(S202)。そして、カメラ4から3次元物体3を撮影した原画像が入力されると、CPU10は、この入力された原画像に基づいて、複数枚のピラミッド画像18を作成し(S203)、図1に示す画像メモリ7に記憶する。尚、ピラミッド画像18については、第1の実施形態と同様であるので、その詳細な説明は省略する。   Next, the three-dimensional object 3 to be recognized is photographed by the camera 4 (S202). When an original image obtained by photographing the three-dimensional object 3 is input from the camera 4, the CPU 10 creates a plurality of pyramid images 18 based on the input original image (S203), as shown in FIG. Store in the image memory 7. Since the pyramid image 18 is the same as that of the first embodiment, detailed description thereof is omitted.

次に、CPU10は、図14に示すように、解像度が最も低い第3ピラミッド画像18Cについて3次元物体3のエッジを抽出する(S204)。ここで、このエッジ抽出としては、ピクセル精度でのエッジ抽出を行う。図15は、エッジ抽出を説明するための説明図であって、原画像19の一部をピクセルレベルまで拡大した状態を示している。ピクセル精度でのエッジ抽出によれば、図において黒く塗り潰されたエッジ構成ピクセル20の集合体としてエッジが抽出される(以下、このエッジを「ピクセルエッジ21」と呼ぶ)。尚、本実施形態では処理速度を優先させるためにピクセル精度でのエッジ抽出を行ったが、より高い認識精度が要求される場合には、サブピクセル精度でのエッジ抽出を行っても良い。サブピクセル精度でのエッジ抽出によれば、図15に直線で示すように、隣接ピクセル間隔以下の精度でエッジが抽出される(以下、このエッジを「サブピクセルエッジ22」と呼ぶ)。   Next, as shown in FIG. 14, the CPU 10 extracts the edge of the three-dimensional object 3 from the third pyramid image 18C having the lowest resolution (S204). Here, as the edge extraction, edge extraction with pixel accuracy is performed. FIG. 15 is an explanatory diagram for explaining edge extraction, and shows a state in which a part of the original image 19 is enlarged to the pixel level. According to edge extraction with pixel accuracy, an edge is extracted as an aggregate of edge constituent pixels 20 filled in black in the figure (hereinafter, this edge is referred to as “pixel edge 21”). In this embodiment, edge extraction is performed with pixel accuracy in order to prioritize processing speed. However, when higher recognition accuracy is required, edge extraction with subpixel accuracy may be performed. According to edge extraction with subpixel accuracy, as shown by a straight line in FIG. 15, edges are extracted with an accuracy equal to or smaller than an adjacent pixel interval (hereinafter, this edge is referred to as “subpixel edge 22”).

次にCPU10は、方向付きディスタンスマップを作成し(S205)、図1に示すRAM9に記憶する。方向付きディスタンスマップとは、エッジ抽出を行った第3ピラミッド画像18Cを構成する各ピクセルに、そのピクセルから最も近いピクセルエッジ21までの距離と、最も近いピクセルエッジ21の向きとを画素値として持たせたものである。   Next, the CPU 10 creates a distance map with direction (S205) and stores it in the RAM 9 shown in FIG. The distance map with direction has each pixel constituting the third pyramid image 18C subjected to edge extraction having a distance from the pixel to the nearest pixel edge 21 and a direction of the nearest pixel edge 21 as pixel values. It is

次にCPU10は、方向付きディスタンスマップ上に、予め記憶したルックアップテーブルに格納された射影点をそれぞれマッピングする(S206)。CPU10は、このルックアップテーブルに格納された各射影点Pを、その座標に基づいて方向付きディスタンスマップ上に順次配置する。尚、方向付きディスタンスマップでは、最も近いピクセルエッジ21までの距離は画素毎にしか格納されていないため、射影点Pのマッピングに際し、射影点Pの座標値が小数部分を有する場合には、バイリニア補間を用いることによって射影点Pの配置位置を決定すれば良い。   Next, the CPU 10 maps the projection points stored in the lookup table stored in advance on the distance map with direction (S206). CPU10 arrange | positions sequentially each projection point P stored in this look-up table on a distance map with a direction based on the coordinate. In the distance map with direction, since the distance to the nearest pixel edge 21 is stored only for each pixel, when mapping the projection point P, when the coordinate value of the projection point P has a fractional part, it is bilinear. What is necessary is just to determine the arrangement position of the projection point P by using interpolation.

次に、CPU10は、マッピングされた各射影点Pにおけるエッジの向きと、方向付きディスタンスマップ上でその射影点Pに対応するピクセルが画素値として持つ最も近いピクセルエッジ21の向きとを比較する。そして、両者が一致する射影点群について、CPU10は、その射影点群に対応するピクセル群が持つ最も近いピクセルエッジ21までの距離の自乗和を算出し、その算出結果に基づいて、3次元物体3の位置及び姿勢を評価する(S207)。すなわち、射影点Pからなるエッジと、ピラミッド画像18Cにおけるピクセルエッジ21とを比較した時の誤差の大きさに基づいて、ルックアップテーブルに従って決定した位置及び姿勢が、3次元物体3の実際の位置及び姿勢からどの程度近いかを評価する。   Next, the CPU 10 compares the direction of the edge at each mapped projection point P with the direction of the closest pixel edge 21 that the pixel corresponding to the projection point P has as a pixel value on the directional distance map. And about the projection point group which both correspond, CPU10 calculates the square sum of the distance to the nearest pixel edge 21 which the pixel group corresponding to the projection point group has, and based on the calculation result, three-dimensional object 3 is evaluated (S207). That is, the position and orientation determined according to the look-up table based on the magnitude of the error when comparing the edge consisting of the projection point P and the pixel edge 21 in the pyramid image 18C is the actual position of the three-dimensional object 3. And how close it is to the posture.

ここで、前記自乗和の算出に際しては、最も近いエッジまでの距離として、図15に示す対象ピクセル23からピクセルエッジ21までの距離Laを用いる。このピクセルエッジ21までの距離Laとは、図で黒く塗り潰されたエッジ構成ピクセル20までの最短距離を意味している。尚、前述のようにピラミッド画像18についてのエッジ抽出をサブピクセル精度で行った場合には、最も近いエッジまでの距離として図15に示す対象ピクセル23からサブピクセルエッジ22までの距離Lbを用いても良い。このサブピクセルエッジ22までの距離Lbとは、対象ピクセル23からサブピクセルエッジ22へと降ろした垂線24の長さを意味している。また、要求される処理速度と認識精度の兼ね合いによっては、最も近いエッジまでの距離として距離Laと距離Lbを混在させて用いても良い。   Here, when calculating the sum of squares, the distance La from the target pixel 23 to the pixel edge 21 shown in FIG. 15 is used as the distance to the nearest edge. The distance La to the pixel edge 21 means the shortest distance to the edge constituent pixel 20 painted black in the drawing. As described above, when edge extraction for the pyramid image 18 is performed with subpixel accuracy, the distance Lb from the target pixel 23 to the subpixel edge 22 shown in FIG. 15 is used as the distance to the nearest edge. Also good. The distance Lb to the subpixel edge 22 means the length of the perpendicular line 24 that descends from the target pixel 23 to the subpixel edge 22. Further, depending on the balance between the required processing speed and recognition accuracy, the distance La and the distance Lb may be mixed and used as the distance to the nearest edge.

そして、評価の結果、ルックアップテーブルに従って決定した位置及び姿勢が、3次元物体3の実際の位置及び姿勢に近いと判断した場合、CPU10は、前記自乗和が最小となるように、当該位置及び姿勢を最適化する(S208)。この最適化には、従来公知のレーベンバーグ・マーカート法を用いる。このように、方向付けディスタンスマップとエッジの向きが略一致する射影点Pだけについて前記自乗和を算出するので、カメラ4の方向から見て3次元物体3の一部が他の物体によって隠れた状態であって、最も近いエッジまでの距離が誤って計算されたピクセルに関しては、エッジの向きが一致せず、前記自乗和を算出する対象から除外される。これにより、いわゆる隠れの影響を低減して、ロバスト性を向上させることができる。また、自乗和が最小となるように位置及び姿勢を最適化することにより、位置及び姿勢の認識精度を向上させることができる。尚、位置及び姿勢の最適化の手法としては、レーベンバーグ・マーカート法に限定されず、従来公知の他の非線形最適化法を用いても良い。   If the CPU 10 determines that the position and orientation determined in accordance with the lookup table are close to the actual position and orientation of the three-dimensional object 3 as a result of the evaluation, the CPU 10 determines that the position and orientation so that the square sum is minimized. The posture is optimized (S208). For this optimization, a conventionally known Levenberg-Marcate method is used. In this way, since the square sum is calculated only for the projection point P whose edge direction substantially matches the orientation distance map, a part of the three-dimensional object 3 is hidden by another object when viewed from the direction of the camera 4. A pixel in which the distance to the nearest edge is erroneously calculated is excluded from the object of calculating the sum of squares because the edge directions do not match. Thereby, the so-called hiding effect can be reduced and the robustness can be improved. Further, the position and orientation recognition accuracy can be improved by optimizing the position and orientation so that the sum of squares is minimized. Note that the position and orientation optimization method is not limited to the Levenberg-Markert method, and any other conventionally known nonlinear optimization method may be used.

その後、CPU10は、S208で最適化した位置及び姿勢が必要な精度を満たしているか否かを判定し(S209)、必要な精度を満たしていると判断した場合は(S209:YES)、第3ピラミッド画像18Cについて得られた位置及び姿勢を最終結果として出力し(S210)、処理を終了する。一方、S209での判定の結果、必要な精度を満たしていないと判断した場合は(S209:NO)、未処理のピラミッド画像18があるか否かを判定し(S211)、未処理のピラミッド画像18がないと判断した場合は(S211:NO)、第3ピラミッド画像18Cの結果を最終結果として出力し(S210)、処理を終了する。一方、未処理のピラミッド画像18があると判断した場合は(S211:YES)、S2へ戻って残りのピラミッド画像18について同様の処理を行う。そして、未処理のピラミッド画像18が無くなるまでこれを繰り返す。このように、必要な精度に達するまで、より解像度の高いピラミッド画像18について処理を行うことにより、3次元物体3の位置及び姿勢をより高い精度で認識することができる。   Thereafter, the CPU 10 determines whether or not the position and orientation optimized in S208 satisfy the required accuracy (S209). If it is determined that the required accuracy is satisfied (S209: YES), the CPU 10 The position and orientation obtained for the pyramid image 18C are output as final results (S210), and the process is terminated. On the other hand, if it is determined as a result of the determination in S209 that the required accuracy is not satisfied (S209: NO), it is determined whether there is an unprocessed pyramid image 18 (S211), and an unprocessed pyramid image is determined. If it is determined that there is no 18 (S211: NO), the result of the third pyramid image 18C is output as the final result (S210), and the process is terminated. On the other hand, if it is determined that there is an unprocessed pyramid image 18 (S211: YES), the process returns to S2 and the same processing is performed on the remaining pyramid image 18. This is repeated until there is no unprocessed pyramid image 18. In this way, by performing processing on the pyramid image 18 with higher resolution until the required accuracy is reached, the position and orientation of the three-dimensional object 3 can be recognized with higher accuracy.

次に、第3の実施形態に係る3次元物体認識装置1bの処理の流れについて図16を用いながら説明する。3次元物体認識装置1bでは、図16に示すように、まずオフラインでデプスマップを作成し、RAM9等に予め記憶しておく(S301)。ここで、デプスマップとは、3次元CAD等を利用して認識対象である3次元空間における3次元物体3のモデルをカメラ4から視認可能な範囲内において、あらゆる姿勢(3自由度)に少しずつ細かく変化させながら、カメラ画像上に射影して得た各姿勢での各画素に対する奥行きデータを格納したものである。   Next, a processing flow of the three-dimensional object recognition device 1b according to the third embodiment will be described with reference to FIG. In the three-dimensional object recognition device 1b, as shown in FIG. 16, a depth map is first created offline and stored in advance in the RAM 9 or the like (S301). Here, the depth map is a little in any posture (three degrees of freedom) within a range where the model of the three-dimensional object 3 in the three-dimensional space to be recognized can be viewed from the camera 4 using three-dimensional CAD or the like. Depth data for each pixel in each posture obtained by projecting on a camera image while being finely changed is stored.

次に、カメラ4により認識対象となる3次元物体3を撮影する(S302)。そして、カメラ4から3次元物体3を撮影した原画像が入力されると、CPU10は、この原画像に基づいて、各画素に対する奥行きデータを算出する(S303)。例えば、奥行きデータの算出には、2台のカメラ4を用いてステレオで3次元物体3の奥行きを計算する。具体的には、ステレオ視を用いて、2次元平面から3次元位置情報を取得し、3次元物体3までの距離計測を行う。2台のカメラ4から撮影した2枚の画像に対してマッチング(ステレオマッチング)を行い、画像間の視差を求め、3次元物体3の奥行きデータを取得する。また、その他にも3次元物体3に投光器(不図示)を用いてラインレーザーを照射した画像から奥行きデータを算出する等、従来公知の奥行きデータの取得方法を適宜用いても良い。   Next, the camera 4 captures a 3D object 3 to be recognized (S302). When an original image obtained by photographing the three-dimensional object 3 is input from the camera 4, the CPU 10 calculates depth data for each pixel based on the original image (S303). For example, the depth data is calculated by calculating the depth of the three-dimensional object 3 in stereo using two cameras 4. Specifically, using stereo vision, three-dimensional position information is acquired from a two-dimensional plane, and distance measurement to the three-dimensional object 3 is performed. Matching (stereo matching) is performed on two images taken from two cameras 4 to obtain parallax between the images, and depth data of the three-dimensional object 3 is obtained. In addition, a conventionally known depth data acquisition method such as calculating depth data from an image obtained by irradiating a line laser to the three-dimensional object 3 using a projector (not shown) may be used as appropriate.

次に、CPU10は、取得した原画像に対して、予めRAM9に記憶したデプスマップの各姿勢での奥行きデータをあらゆる位置(3自由度)に移動させながら、各画素に対してデプスマップに格納した奥行きデータとS303の処理により算出された奥行きデータに基づいて類似度を算出することにより、3次元物体3の位置及び姿勢を評価する(S304)。具体的には、数式(8)に示すように、デプスマップに格納した奥行きデータとS303の処理により算出された奥行きデータの差の自乗平均に基づいて類似度を算出する。数式(8)のu、vは画素座標を表している。また、Dm(u、v)は、画素座標がu、vの時の3次元物体3のモデルの奥行き(Z座標)であり、予めデプスマップに格納されている。Di(u、v)は、画素座標がu、vの時の入力画像の奥行きを表すものであり、wは所定の重み、τは閾値を表している。数式(8)では、奥行きの差の絶対値が、閾値τ以下の場合には重みwを1とし、それ以外の場合、つまり、奥行きの差の絶対値が、閾値τを超えた場合には、隠れと見なして、重みwを0とする。このようにして、第3の実施形態に係る3次元物体認識装置1bでは、類似度を算出し、3次元物体3の位置及び姿勢について評価を行う。そして、このようにして得られた評価結果が出力される(S305)。

Figure 2011129082
Next, the CPU 10 stores the depth data in each posture of the depth map stored in the RAM 9 in advance in the depth map for each pixel while moving the depth data to each position (3 degrees of freedom). The position and orientation of the three-dimensional object 3 are evaluated by calculating the similarity based on the depth data calculated and the depth data calculated by the processing of S303 (S304). Specifically, as shown in Equation (8), the similarity is calculated based on the root mean square of the difference between the depth data stored in the depth map and the depth data calculated by the process of S303. U and v in Expression (8) represent pixel coordinates. Dm (u, v) is the depth (Z coordinate) of the model of the three-dimensional object 3 when the pixel coordinates are u and v, and is stored in the depth map in advance. Di (u, v) represents the depth of the input image when the pixel coordinates are u, v, w represents a predetermined weight, and τ represents a threshold value. In Formula (8), when the absolute value of the difference in depth is equal to or smaller than the threshold τ, the weight w is set to 1. In other cases, that is, when the absolute value of the depth difference exceeds the threshold τ. In this case, the weight w is set to 0. In this manner, the three-dimensional object recognition device 1b according to the third embodiment calculates the similarity and evaluates the position and orientation of the three-dimensional object 3. Then, the evaluation result obtained in this way is output (S305).
Figure 2011129082

尚、本実施形態では、ピラミッド画像を作成せずに、3次元物体3の位置及び姿勢の評価を行った例を示しているが、処理速度を向上させるために、ピラミッド画像に対して同様の処理を行うことも当然可能である。   In the present embodiment, an example is shown in which the position and orientation of the three-dimensional object 3 are evaluated without creating a pyramid image. However, in order to improve the processing speed, the same is applied to the pyramid image. Of course, it is also possible to perform processing.

以上の説明では、3次元物体の位置及び姿勢の3種類の評価方法を個別に行った例を用いて説明を行ったが、これらの評価方法を組み合わせて3次元物体認識装置を構成することも当然可能である。これにより、より精度良く3次元物体の位置・姿勢を認識することができる。また、本実施形態では、3次元物体を対象とした例について説明したが、対象物が平面パタンの場合も真上にカメラ4を設けなくても同様に認識することができる。   In the above description, an example in which three types of evaluation methods for the position and orientation of a three-dimensional object are individually performed has been described. However, a three-dimensional object recognition apparatus may be configured by combining these evaluation methods. Of course it is possible. Thereby, the position and orientation of the three-dimensional object can be recognized with higher accuracy. Further, in the present embodiment, an example in which a three-dimensional object is a target has been described. However, even when the target is a flat pattern, the same recognition can be performed without providing the camera 4 directly above.

尚、本発明の実施の形態は上述の形態に限るものではなく、本発明の思想の範囲を逸脱しない範囲で適宜変更することができることは云うまでもない。   Note that the embodiment of the present invention is not limited to the above-described embodiment, and it is needless to say that the embodiment can be appropriately changed without departing from the scope of the idea of the present invention.

本発明に係る3次元物体認識装置及び3次元物体認識方法は、生産ライン等における部品等の正確な位置及び姿勢を認識するための技術として有効に利用することができる。   The three-dimensional object recognition apparatus and the three-dimensional object recognition method according to the present invention can be effectively used as a technique for recognizing an accurate position and posture of a part or the like on a production line or the like.

1、1a、1b 3次元物体認識装置
3 3次元物体
3a 輪郭モデル
4 カメラ(撮像手段)
9 RAM(射影モデル画像記憶手段)
10 CPU
14 輪郭マップ
15 テクスチャマップ
16 勾配角度ルックアップテーブル
17、20 類似度評価関数ルックアップテーブル
18 ピラミッド画像
19 原画像
31 テクスチャ
31a テクスチャモデル
I カメラ画像
1, 1a, 1b 3D object recognition device 3 3D object 3a Contour model 4 Camera (imaging means)
9 RAM (projection model image storage means)
10 CPU
14 Contour Map 15 Texture Map 16 Gradient Angle Lookup Table 17, 20 Similarity Evaluation Function Lookup Table 18 Pyramid Image 19 Original Image 31 Texture 31a Texture Model I Camera Image

上記目的を達成するために、請求項1記載の3次元物体認識装置は、認識対象である3次元物体を所定方向から撮影して画像を取得する撮像手段と、認識対象である3次元物体のモデルを前記撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら、カメラ画像に射影して得た各姿勢でのエッジ点における勾配角度を有する輪郭モデルを格納した輪郭マップ、又は該輪郭マップ及び前記3次元物体のモデルに含まれる文字又は模様等のテクスチャ画像における各姿勢でのエッジ点における勾配角度を有するテクスチャモデルを格納したテクスチャマップを予め記憶する射影モデル画像記憶手段と、前記撮像手段により取得した原画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での輪郭モデル、又は該輪郭モデル及び前記テクスチャ画像における各姿勢でのテクスチャモデルをあらゆる位置に移動させながら、前記3次元物体の位置及び姿勢を評価する位置・姿勢評価手段と、を備える3次元物体認識装置であって、前記撮像手段は、前記3次元物体を異なる方向から撮影するために複数設けられており、前記射影モデル画像記憶手段に記憶された第1撮像手段のカメラ画像に射影して得た各姿勢での前記輪郭マップ及び前記テクスチャマップを他の撮像手段に関しても参照して、前記位置・姿勢評価手段による前記3次元物体の位置及び姿勢の評価に利用することを特徴としている。 In order to achieve the above object, a three-dimensional object recognition apparatus according to claim 1, an imaging unit that captures a three-dimensional object that is a recognition target from a predetermined direction and acquires an image, and a three-dimensional object that is a recognition target. A contour map storing a contour model having a gradient angle at an edge point in each posture obtained by projecting onto a camera image while changing the model to any posture within a range visible from the imaging means, or the contour map A projection model image storage means for storing in advance a texture map storing a texture model having a gradient angle at an edge point at each posture in a texture image such as a character or a pattern included in the model of the three-dimensional object; and the imaging means A contour model in each posture stored in the projection model image storage means with respect to the original image acquired by the above, or the contour model While moving the texture model into any position in the posture in fine the texture image, a three-dimensional object recognition device and a position and posture evaluation means for evaluating the position and orientation of the three-dimensional object, said imaging A plurality of means are provided for photographing the three-dimensional object from different directions, and the contour in each posture obtained by projecting on the camera image of the first imaging means stored in the projection model image storage means The map and the texture map are also referred to with respect to other imaging means, and are used for the evaluation of the position and orientation of the three-dimensional object by the position / posture evaluation means .

請求項記載の3次元物体認識方法は、認識対象である3次元物体のモデルを撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら、カメラ画像に射影して得た各姿勢でのエッジ点における勾配角度を有する輪郭モデルを格納した輪郭マップ、又は該輪郭マップ及び前記3次元物体のモデルに含まれる文字又は模様等のテクスチャ画像における各姿勢でのエッジ点における勾配角度を有するテクスチャモデルを格納したテクスチャマップを予め射影モデル画像記憶手段に記憶するステップと、認識対象である3次元物体を所定方向から前記撮像手段により撮影して画像を取得するステップと、取得した原画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での輪郭モデル、又は該輪郭モデル及び前記テクスチャ画像における各姿勢でのエッジ点をあらゆる位置に移動させながら、前記3次元物体の位置及び姿勢を評価するステップと、備える3次元物体認識方法であって、前記撮像手段は、前記3次元物体を異なる方向から撮影するために複数設けられており、前記射影モデル画像記憶手段に記憶した第1撮像手段のカメラ画像に射影して得た各姿勢での前記輪郭マップ及び前記テクスチャマップを他の撮像手段に関しても参照して、前記3次元物体の位置及び姿勢の評価に利用することを特徴としている。 The three-dimensional object recognition method according to claim 3, wherein the model of the three-dimensional object to be recognized is projected in each posture obtained by projecting onto the camera image while changing to any posture within a range that can be viewed from the imaging means. A contour map storing a contour model having a gradient angle at an edge point, or a texture model having a gradient angle at an edge point in each posture in a texture image such as a character or a pattern included in the contour map and the three-dimensional object model Storing a texture map in which the image is stored in the projection model image storage means in advance, capturing a three-dimensional object to be recognized by the imaging means from a predetermined direction, obtaining an image, and obtaining the original image A contour model in each posture stored in the projection model image storage means, or the contour model and the texture image While moving the edge points in each position to any position in the step of evaluating the position and orientation of said three-dimensional body, a three-dimensional object recognition method comprising the imaging means, different said three-dimensional body A plurality of imaging units are provided for capturing from the direction, and the contour map and the texture map in each posture obtained by projecting on the camera image of the first imaging unit stored in the projection model image storage unit are captured by other imaging units. With reference to the above, it is used for evaluation of the position and orientation of the three-dimensional object .

請求項1及び記載の発明によれば、予め認識対象である3次元物体のモデルのあらゆる姿勢における輪郭モデルを格納した輪郭マップを記憶しておき、撮像手段により取得した画像に対してこの輪郭モデルをあらゆる位置に移動させながら3次元物体の位置及び姿勢の評価を行う。つまり、輪郭モデルを位置(3自由度)及び姿勢(3自由度)の計6自由度全てにおいて、撮像手段により取得した入力画像と合っているか否かの評価をまんべんなく行うので、高精度に3次元物体の位置及び姿勢を認識することができる。また、輪郭モデルだけでなく、3次元物体に含まれる文字又は模様等のテクスチャ画像における各姿勢でのテクスチャモデルを格納したテクスチャマップを予め記憶しておき、このテクスチャモデルについてもあらゆる位置に移動させながら評価を行うことにより、例えば、直方体等のような輪郭だけでは向きが特定できないような3次元物体についても、その3次元物体に含まれる文字又は模様等のテクスチャが統一されていれば、その向きまで認識することが可能になるので、箱詰め作業等をロボットアーム等を用いて行う際に、部品の向きまで考慮して箱詰め作業等を正確に行うことが可能になる。また、1つの撮像手段に対して輪郭マップ及びテクスチャマップを予め記憶しておけば、他の撮像手段はその輪郭マップ及びテクスチャマップを参照して利用することにより、別途他の撮像手段に対する輪郭マップ及びテクスチャマップを記憶しておく必要がなくなるので、予め記憶しておくデータ量を軽減することができる。 According to the first and third aspects of the present invention, a contour map storing a contour model in every posture of a model of a three-dimensional object that is a recognition target is stored in advance, and this contour is stored in an image acquired by an imaging unit. The position and orientation of the three-dimensional object are evaluated while moving the model to any position. That is, the contour model is uniformly evaluated whether or not it matches the input image acquired by the imaging means in all 6 degrees of freedom of position (3 degrees of freedom) and posture (3 degrees of freedom). The position and orientation of a dimensional object can be recognized. In addition to a contour model, a texture map storing a texture model at each posture in a texture image such as a character or pattern included in a three-dimensional object is stored in advance, and this texture model is moved to any position. However, by performing evaluation, for example, for a three-dimensional object whose orientation cannot be specified only by a contour such as a rectangular parallelepiped, if the texture such as characters or patterns included in the three-dimensional object is unified, Since it is possible to recognize the orientation, it is possible to accurately perform the packaging operation in consideration of the orientation of the parts when performing the packaging operation using a robot arm or the like. In addition, if the contour map and the texture map are stored in advance for one image capturing unit, the other image capturing unit refers to the contour map and the texture map and uses the contour map and the texture map separately. In addition, since it is not necessary to store the texture map, the amount of data stored in advance can be reduced.

上記目的を達成するために、請求項1記載の3次元物体認識装置は、認識対象である3次元物体を所定方向から撮像して画像を取得する撮像手段と、認識対象である3次元物体のモデルを前記撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら、カメラ画像に射影して得た各姿勢での射影エッジ点における勾配角度を有する輪郭モデルを格納した輪郭マップ、又は該輪郭マップ及び前記3次元物体のモデルに含まれる文字又は模様等のテクスチャ画像における各姿勢での射影エッジ点における勾配角度を有するテクスチャモデルを格納したテクスチャマップを予め記憶する射影モデル画像記憶手段と、前記撮像手段により取得した画像について前記3次元物体のエッジを抽出するエッジ抽出手段と、前記画像を構成する各ピクセルに、抽出したエッジのうち最も近いエッジまでの距離と、前記最も近いエッジにおける勾配角度とを画素値として持たせてなる方向付きディスタンスマップを作成する方向付きディスタンスマップ作成手段と、前記方向付きディスタンスマップ上に、前記射影モデル画像記憶手段に記憶された前記輪郭モデル、又は前記輪郭モデル及び前記テクスチャモデルが有する各姿勢での射影エッジ点をそれぞれマッピングし、前記輪郭モデル、又は前記輪郭モデル及び前記テクスチャモデルが有する各姿勢での射影エッジ点における勾配角度と、前記方向付きディスタンマップにおいて前記射影エッジ点が対応するピクセルが持つ最も近いエッジにおける勾配角度とをそれぞれ比較し、両者が略一致する射影エッジ点群について対応するピクセル群が持つ最も近いエッジまでの距離の自乗和を算出し、その算出結果に基づいて前記3次元物体の位置及び姿勢を評価する位置・姿勢評価手段と、を備える3次元物体認識装置であって、前記撮像手段は、前記3次元物体を異なる方向から撮影するために複数設けられており、前記射影モデル画像記憶手段に記憶された第1撮像手段のカメラ画像に射影して得た各姿勢での前記輪郭マップ及び前記テクスチャマップを他の撮像手段に関しても参照して、前記位置・姿勢評価手段による前記3次元物体の位置及び姿勢の評価に利用することを特徴としている。 In order to achieve the above object, a three-dimensional object recognition apparatus according to claim 1 includes an imaging unit that captures an image of a three-dimensional object that is a recognition target from a predetermined direction, and an image of the three-dimensional object that is the recognition target. A contour map storing a contour model having a gradient angle at a projected edge point in each posture obtained by projecting onto a camera image while changing the model to any posture within a range visible from the imaging means, or the contour a projection model image storage means for previously storing a texture map that contains the texture model having a slope angle in the projective edge point in each orientation in the texture image of the character or pattern or the like contained in the model map and the three-dimensional object, wherein Edge extraction means for extracting the edge of the three-dimensional object from the image acquired by the imaging means, and each of the images constituting the image A directional distance map creating means for creating a directional distance map in which the distance from the extracted edge to the nearest edge and the gradient angle at the nearest edge are given as pixel values, and the directional On the distance map, the contour model stored in the projection model image storage means, or the projected edge points in each posture of the contour model and the texture model are mapped respectively, and the contour model or the contour model and The gradient angle at the projected edge point in each posture of the texture model is compared with the gradient angle at the nearest edge of the pixel corresponding to the projected edge point in the directional distance map, and the two substantially match. The corresponding pixel for the projected edge point cloud Calculating a sum of squares of the distance to the nearest edge with Le group, a three-dimensional object recognition device and a position and posture evaluation means for evaluating the position and orientation of the three-dimensional object based on the calculation result A plurality of the image pickup means are provided for photographing the three-dimensional object from different directions, and each posture obtained by projecting on the camera image of the first image pickup means stored in the projection model image storage means. The contour map and the texture map are referred to also for other imaging means, and are used for the evaluation of the position and orientation of the three-dimensional object by the position / posture evaluation means.

請求項2記載の3次元物体認識装置は、前記撮像手段が取得した原画像に基づいて、該原画像の解像度を異なる比率で低下させた複数枚のピラミッド画像を作成するピラミッド画像作成手段を備え、前記エッジ抽出手段は、解像度が最も低い前記ピラミッド画像について前記3次元物体のエッジを抽出し、前記方向付きディスタンスマップ作成手段は、解像度が最も低い前記ピラミッド画像を構成する各ピクセルに、抽出したエッジのうち最も近いエッジまでの距離と、前記最も近いエッジにおける勾配角度とを画素値として持たせてなる方向付きディスタンスマップを作成し、前記位置・姿勢評価手段は、前記方向付きディスタンスマップ上に、前記射影モデル画像記憶手段に記憶された前記輪郭モデル、又は前記輪郭モデル及び前記テクスチャモデルが有する各姿勢での射影エッジ点をそれぞれマッピングし、前記輪郭モデル、又は前記輪郭モデル及び前記テクスチャモデルが有する各姿勢での射影エッジ点における勾配角度と、前記方向付きディスタンマップにおいて前記射影エッジ点が対応するピクセルが持つ最も近いエッジにおける勾配角度とをそれぞれ比較し、両者が略一致する射影エッジ点群について対応するピクセル群が持つ最も近いエッジまでの距離の自乗和を算出し、その算出結果に基づいて前記3次元物体の位置及び姿勢を評価することを特徴としている。 The three-dimensional object recognition apparatus according to claim 2, further comprising pyramid image creation means for creating a plurality of pyramid images in which the resolution of the original image is reduced at different ratios based on the original image acquired by the imaging means. The edge extracting unit extracts the edge of the three-dimensional object for the pyramid image having the lowest resolution, and the directional distance map creating unit extracts each pixel constituting the pyramid image having the lowest resolution. A directional distance map is created in which the distance to the nearest edge of the edges and the gradient angle at the nearest edge are given as pixel values, and the position / posture evaluation means is on the directional distance map. , The contour model stored in the projection model image storage means, or the contour model and the technique The projected edge points in each posture of the tea model are mapped, the gradient angle at the projected edge points in each posture of the contour model or the contour model and the texture model, and the projected in the distance map with direction Compare the gradient angle at the nearest edge of the pixel to which the edge point corresponds, and calculate the sum of squares of the distance to the nearest edge of the corresponding pixel group for the projected edge point group where both match approximately, It is characterized in that the position and orientation of the three-dimensional object are evaluated based on the calculation result .

請求項3記載の3次元物体認識方法は、認識対象である3次元物体のモデルを撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら、カメラ画像に射影して得た各姿勢での射影エッジ点における勾配角度を有する輪郭モデルを格納した輪郭マップ、又は該輪郭マップ及び前記3次元物体のモデルに含まれる文字又は模様等のテクスチャ画像における各姿勢での射影エッジ点における勾配角度を有するテクスチャモデルを格納したテクスチャマップを予め射影モデル画像記憶手段に記憶するステップと、認識対象である3次元物体を所定方向から前記撮像手段により撮影して画像を取得するステップと、前記撮像手段により取得した画像について前記3次元物体のエッジを抽出するステップと、前記画像を構成する各ピクセルに、抽出したエッジのうち最も近いエッジまでの距離と、前記最も近いエッジにおける勾配角度とを画素値として持たせてなる方向付きディスタンスマップを作成するステップと、前記方向付きディスタンスマップ上に、前記射影モデル画像記憶手段に記憶された前記輪郭モデル、又は前記輪郭モデル及び前記テクスチャモデルが有する各姿勢での射影エッジ点をそれぞれマッピングし、前記輪郭モデル、又は前記輪郭モデル及び前記テクスチャモデルが有する各姿勢での射影エッジ点における勾配角度と、前記方向付きディスタンマップにおいて前記射影エッジ点が対応するピクセルが持つ最も近いエッジにおける勾配角度とをそれぞれ比較し、両者が略一致する射影エッジ点群について対応するピクセル群が持つ最も近いエッジまでの距離の自乗和を算出し、その算出結果に基づいて前記3次元物体の位置及び姿勢を評価するステップと、を備える3次元物体認識方法であって、前記撮像手段は、前記3次元物体を異なる方向から撮影するために複数設けられており、前記射影モデル画像記憶手段に記憶した第1撮像手段のカメラ画像に射影して得た各姿勢での前記輪郭マップ及び前記テクスチャマップを他の撮像手段に関しても参照して、前記3次元物体の位置及び姿勢の評価に利用することを特徴としている。 The three-dimensional object recognition method according to claim 3, wherein the model of the three-dimensional object to be recognized is projected in each posture obtained by projecting onto the camera image while changing to any posture within a range that can be viewed from the imaging means. A contour map storing a contour model having a gradient angle at a projected edge point, or a gradient angle at a projected edge point in each posture in a texture image such as a character or a pattern included in the contour map and the model of the three-dimensional object A step of storing a texture map storing a texture model in the projection model image storage unit in advance, a step of capturing a three-dimensional object to be recognized by the imaging unit from a predetermined direction, and acquiring an image, and acquiring by the imaging unit Extracting an edge of the three-dimensional object from the obtained image, and each pixel constituting the image Creating a directional distance map having pixel values of the distance to the nearest edge among the extracted edges and the gradient angle at the nearest edge; and the projection on the directional distance map The contour model stored in the model image storage means, or the projected edge points in each posture of the contour model and the texture model are mapped, respectively, and each posture of the contour model or the contour model and the texture model The gradient angle at the projected edge point in FIG. 5 is compared with the gradient angle at the nearest edge of the pixel to which the projected edge point corresponds in the directional distance map, and the corresponding projected edge point group corresponds to both. Distance to the nearest edge of the pixel group The sum of the squares of the calculated and a step of evaluating the position and orientation of the three-dimensional object based on the calculation result, a three-dimensional object recognition method comprising the imaging means, different directions the three-dimensional object The contour map and the texture map in each posture obtained by projecting on the camera image of the first imaging means stored in the projection model image storage means are provided with respect to other imaging means. Also, it is used for evaluation of the position and orientation of the three-dimensional object.

以下、3次元物体認識装置1による処理の流れについて図2のフローチャートを用いながら説明する。本実施形態に係る3次元物体認識装置1では、図2に示すように、まずオフラインで輪郭マップ14及びテクスチャマップ15を作成し、このような射影モデル画像の記憶手段として機能するRAM9等に予め記憶しておく(S101)。この輪郭マップの作成方法としては、例えば、図3に示すように、まず3次元物体3の各エッジEの上にサンプリング点Aを設定し、各サンプリング点Aがカメラ4から視認可能であるか否かを判定する。そして、カメラ4から視認可能と判断した各サンプリング点Aをカメラ画像I上に射影し、各射影エッジ点Pの座標及び射影エッジ点Pにおける勾配角度を算出する。この作業を図4に示すように、3次元CAD等を利用して、予めオフラインでカメラ4の位置等から考えて可能性のある全範囲に渡って、3次元物体3のモデルをあらゆる姿勢(3自由度)に少しずつ細かく変化させながら、繰り返し行う。このようにして得られた各姿勢での射影エッジ点における勾配角度を有する輪郭モデル3aを格納することにより輪郭マップ14を作成する。この際の輪郭モデル3aは、認識精度を向上させるために、できる限り細かい姿勢毎にサンプリングしておくことが好ましいが、そのサンプリング数等は特に限定されるものではない。また、テクスチャマップ15は、図1に示すような3次元物体3に含まれる模様や文字等のテクスチャ31に対しても同様に、カメラ4から視認可能な範囲において、あらゆる姿勢(3自由度)に少しずつ細かく変化させながら、カメラ画像I上に射影して得たテクスチャ画像における各姿勢での射影エッジ点における勾配角度を有するテクスチャモデルを格納したものである。 Hereinafter, the flow of processing by the three-dimensional object recognition apparatus 1 will be described with reference to the flowchart of FIG. In the three-dimensional object recognition apparatus 1 according to the present embodiment, as shown in FIG. 2, first, an outline map 14 and a texture map 15 are created offline and stored in advance in a RAM 9 or the like that functions as a storage unit for such projection model images. Store it (S101). As a method for creating this contour map, for example, as shown in FIG. 3, first, sampling points A are set on each edge E of the three-dimensional object 3, and whether each sampling point A is visible from the camera 4. Determine whether or not. Then, each sampling point A determined to be visible from the camera 4 is projected onto the camera image I, and the coordinates of each projection edge point P and the gradient angle at the projection edge point P are calculated. As shown in FIG. 4, the model of the three-dimensional object 3 can be placed in any posture (overall possible range) by using a three-dimensional CAD or the like and considering the position of the camera 4 offline in advance. Repeatedly, changing little by little (3 degrees of freedom). The contour map 14 is created by storing the contour model 3a having the gradient angle at the projected edge point in each posture thus obtained. The contour model 3a at this time is preferably sampled for every posture as fine as possible in order to improve recognition accuracy, but the number of samplings is not particularly limited. Similarly, the texture map 15 can be applied to any posture (three degrees of freedom) within the range that can be visually recognized from the camera 4 with respect to the texture 31 such as a pattern or characters included in the three-dimensional object 3 as shown in FIG. The texture model having the gradient angle at the projected edge point in each posture in the texture image obtained by projecting on the camera image I while being changed little by little is stored.

次に、第2の実施形態に係る3次元物体認識装置1aの処理の流れについて図14を用いて説明する。3次元物体認識装置1aは第1実施形態に係る3次元物体認識装置1と略同様の構成を備えるものであり、3次元物体3の位置及び姿勢の評価手段が異なるものである。3次元物体認識装置1aでも同様に、図3に示すように、カメラ4から視認可能と判断したサンプリング点Aをカメラ画像Iに射影し、射影エッジ点Pの座標及び射影エッジ点Pにおけるエッジの向き(勾配角度)を算出する作業を、予めオフラインで、カメラ4の位置等から考えて可能性のある全範囲に渡って、3次元物体3の位置(3自由度)及び姿勢(3自由度)を十分に細かく変化させながら、繰り返し行う。そして、3次元物体3の位置及び姿勢に対応付けて、射影エッジ点Pの座標と射影エッジ点Pにおけるエッジの向き(勾配角度)と格納することにより作成したルックアップテーブルをRAM9等に記憶しておく。 Next, a processing flow of the three-dimensional object recognition device 1a according to the second embodiment will be described with reference to FIG. The three-dimensional object recognition device 1a has substantially the same configuration as the three-dimensional object recognition device 1 according to the first embodiment, and the evaluation means for the position and orientation of the three-dimensional object 3 is different. Similarly, in the three-dimensional object recognition apparatus 1a, as shown in FIG. 3, the sampling point A is determined that visible from the camera 4 is projected to the camera image I, the edges at the coordinates and the projection edge point P of the projection edge point P The work of calculating the direction (gradient angle) is offline in advance, over the entire range that can be considered from the position of the camera 4, etc., the position (three degrees of freedom) and posture (three degrees of freedom) of the three-dimensional object 3 ) Is repeated repeatedly with sufficiently fine changes. Then, in association with the position and orientation of a three-dimensional object 3, the look-up table created by storing the direction of the edge at the coordinate between the projection edge point P of the projection edge point P (gradient angle) stored in RAM9 like Keep it.

次にCPU10は、方向付きディスタンスマップ上に、予め記憶したルックアップテーブルに格納された射影エッジ点をそれぞれマッピングする(S206)。CPU10は、このルックアップテーブルに格納された各射影エッジ点Pを、その座標に基づいて方向付きディスタンスマップ上に順次配置する。尚、方向付きディスタンスマップでは、最も近いピクセルエッジ21までの距離は画素毎にしか格納されていないため、射影エッジ点Pのマッピングに際し、射影エッジ点Pの座標値が小数部分を有する場合には、バイリニア補間を用いることによって射影エッジ点Pの配置位置を決定すれば良い。 Next, the CPU 10 maps the projected edge points stored in the lookup table stored in advance on the distance map with direction (S206). The CPU 10 sequentially arranges each projected edge point P stored in the look-up table on the directional distance map based on the coordinates. In the distance map with direction, since the distance to the nearest pixel edge 21 is stored only for each pixel, when the projected edge point P is mapped, the coordinate value of the projected edge point P has a fractional part. The arrangement position of the projected edge point P may be determined by using bilinear interpolation.

次に、CPU10は、マッピングされた各射影エッジ点Pにおけるエッジの向き(勾配角度)と、方向付きディスタンスマップ上でその射影エッジ点Pに対応するピクセルが画素値として持つ最も近いピクセルエッジ21の向きとを比較する。そして、両者が一致する射影エッジ点群について、CPU10は、その射影エッジ点群に対応するピクセル群が持つ最も近いピクセルエッジ21までの距離の自乗和を算出し、その算出結果に基づいて、3次元物体3の位置及び姿勢を評価する(S207)。すなわち、射影エッジ点Pからなるエッジと、ピラミッド画像18Cにおけるピクセルエッジ21とを比較した時の誤差の大きさに基づいて、ルックアップテーブルに従って決定した位置及び姿勢が、3次元物体3の実際の位置及び姿勢からどの程度近いかを評価する。 Then, CPU 10 has the edge in the projected edge point P mapped orientation as (slope angle), the pixel corresponding to the projection edge point P on a directed distance map of the nearest pixel edge 21 having a pixel value Compare orientation. Then, the projected edge point group they match, CPU 10 calculates the square sum of the distance to the nearest pixel edge 21 with the pixel group corresponding to the projection edge point groups, based on the calculation result, 3 The position and orientation of the three-dimensional object 3 are evaluated (S207). That is, the position and orientation determined according to the look-up table based on the magnitude of the error when comparing the edge consisting of the projected edge point P and the pixel edge 21 in the pyramid image 18C are the actual ones of the three-dimensional object 3. Evaluate how close it is from position and orientation.

そして、評価の結果、ルックアップテーブルに従って決定した位置及び姿勢が、3次元物体3の実際の位置及び姿勢に近いと判断した場合、CPU10は、前記自乗和が最小となるように、当該位置及び姿勢を最適化する(S208)。この最適化には、従来公知のレーベンバーグ・マーカート法を用いる。このように、方向付けディスタンスマップとエッジの向き(勾配角度)が略一致する射影エッジ点Pだけについて前記自乗和を算出するので、カメラ4の方向から見て3次元物体3の一部が他の物体によって隠れた状態であって、最も近いエッジまでの距離が誤って計算されたピクセルに関しては、エッジの向き(勾配角度)が一致せず、前記自乗和を算出する対象から除外される。これにより、いわゆる隠れの影響を低減して、ロバスト性を向上させることができる。また、自乗和が最小となるように位置及び姿勢を最適化することにより、位置及び姿勢の認識精度を向上させることができる。尚、位置及び姿勢の最適化の手法としては、レーベンバーグ・マーカート法に限定されず、従来公知の他の非線形最適化法を用いても良い。 If the CPU 10 determines that the position and orientation determined in accordance with the lookup table are close to the actual position and orientation of the three-dimensional object 3 as a result of the evaluation, the CPU 10 determines that the position and orientation so that the square sum is minimized. The posture is optimized (S208). For this optimization, a conventionally known Levenberg-Marcate method is used. In this way, since the square sum is calculated only for the projected edge point P whose edge direction (gradient angle) substantially matches the orientation distance map, a part of the three-dimensional object 3 is another part when viewed from the direction of the camera 4. Pixels that are hidden by the object and whose distance to the nearest edge is erroneously calculated do not match the edge direction (gradient angle) and are excluded from the object of calculating the sum of squares. Thereby, the so-called hiding effect can be reduced and the robustness can be improved. Further, the position and orientation recognition accuracy can be improved by optimizing the position and orientation so that the sum of squares is minimized. Note that the position and orientation optimization method is not limited to the Levenberg-Markert method, and any other conventionally known nonlinear optimization method may be used.

Claims (9)

認識対象である3次元物体を所定方向から撮影して画像を取得する撮像手段と、
認識対象である3次元物体のモデルを前記撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら、カメラ画像に射影して得た各姿勢でのエッジ点における勾配角度を有する輪郭モデルを格納した輪郭マップ、又は該輪郭マップ及び前記3次元物体のモデルに含まれる文字又は模様等のテクスチャ画像における各姿勢でのエッジ点における勾配角度を有するテクスチャモデルを格納したテクスチャマップを予め記憶する射影モデル画像記憶手段と、
前記撮像手段により取得した原画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での輪郭モデル、又は該輪郭モデル及び前記テクスチャ画像における各姿勢でのテクスチャモデルをあらゆる位置に移動させながら、前記3次元物体の位置及び姿勢を評価する位置・姿勢評価手段と、を備えることを特徴とする3次元物体認識装置。
Imaging means for capturing an image by capturing a three-dimensional object to be recognized from a predetermined direction;
Stores a contour model having a gradient angle at an edge point in each posture obtained by projecting onto a camera image while changing the model of a three-dimensional object as a recognition target to any posture within a range visible from the imaging unit. Projection model that stores in advance a texture map storing a contour map or a texture map having a gradient angle at an edge point at each posture in a texture image such as a character or a pattern included in the contour map and the model of the three-dimensional object Image storage means;
While moving the contour model in each posture stored in the projection model image storage unit or the texture model in each posture in the contour model and the texture image with respect to the original image acquired by the imaging unit to any position And a position / posture evaluation means for evaluating the position and posture of the three-dimensional object.
前記撮像手段が取得した原画像に基づいて、該原画像の解像度を異なる比率で低下させた複数枚のピラミッド画像を作成するピラミッド画像作成手段を備え、
前記位置・姿勢評価手段は、解像度が最も低い前記ピラミッド画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での輪郭モデル、又は該輪郭モデル及び前記テクスチャ画像における各姿勢でのテクスチャモデルをあらゆる位置に移動させながら、前記3次元物体の位置及び姿勢を評価することを特徴とする請求項1記載の3次元物体認識装置。
Based on the original image acquired by the imaging means, comprising a pyramid image creating means for creating a plurality of pyramid images in which the resolution of the original image is reduced at different ratios,
The position / orientation evaluation means includes a contour model in each posture stored in the projection model image storage means for the pyramid image having the lowest resolution, or a texture model in each posture in the contour model and the texture image. The three-dimensional object recognition apparatus according to claim 1, wherein the position and orientation of the three-dimensional object are evaluated while moving to any position.
前記撮像手段は、複数設けられており、前記射影モデル画像記憶手段に記憶された第1撮像手段のカメラ画像に射影して得た各姿勢での輪郭マップ及びテクスチャマップを他の撮像手段に関しても参照して利用することを特徴とする請求項1又は2記載の3次元物体認識装置。   A plurality of the imaging means are provided, and the contour map and texture map in each posture obtained by projecting on the camera image of the first imaging means stored in the projection model image storage means are also related to other imaging means. 3. The three-dimensional object recognition apparatus according to claim 1, wherein the three-dimensional object recognition apparatus is used by referring to the information. 予め勾配ベクトルに対応付けて勾配角度を格納した勾配角度ルックアップテーブルを記憶する勾配角度ルックアップテーブル記憶手段と、
予め前記3次元物体のモデル上の各画素における勾配角度と前記撮像手段により取得した原画像の各画素における勾配角度とに対応付けて両勾配角度の差から類似度を評価する関数の計算結果を格納した類似度評価関数ルックアップテーブルを記憶する評価関数ルックアップテーブル記憶手段と、
前記撮像手段により取得した原画像の各画素に対して勾配ベクトルを算出する勾配ベクトル算出手段と、を備え、
前記位置・姿勢評価手段は、前記勾配ベクトル算出手段により算出された勾配ベクトルを前記勾配角度ルックアップテーブルを参照することにより勾配角度に変換し、該勾配角度を用いて前記類似度評価関数ルックアップテーブルを参照して類似度を算出することにより前記3次元物体の位置及び姿勢を評価することを特徴とする請求項1乃至3のいずれかに記載の3次元物体認識装置。
A gradient angle lookup table storage means for storing a gradient angle lookup table in which gradient angles are stored in advance in association with gradient vectors;
The calculation result of the function for evaluating the similarity from the difference between the two gradient angles in association with the gradient angle at each pixel on the model of the three-dimensional object and the gradient angle at each pixel of the original image acquired by the imaging means in advance. An evaluation function lookup table storage means for storing the stored similarity evaluation function lookup table;
Gradient vector calculation means for calculating a gradient vector for each pixel of the original image acquired by the imaging means,
The position / posture evaluation unit converts the gradient vector calculated by the gradient vector calculation unit into a gradient angle by referring to the gradient angle lookup table, and uses the gradient angle to perform the similarity evaluation function lookup. The three-dimensional object recognition apparatus according to any one of claims 1 to 3, wherein the position and orientation of the three-dimensional object are evaluated by calculating a similarity with reference to a table.
認識対象である3次元物体を所定方向から撮影して画像を取得する撮像手段と、
認識対象である3次元物体のモデルを前記撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら得た各姿勢での各画素に対する奥行きデータを格納したデプスマップを予め記憶する射影モデル画像記憶手段と、
前記撮像手段が取得した原画像に基づいて、前記3次元物体の奥行きデータを算出する奥行き算出手段と、
前記撮像手段が取得した原画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での奥行きデータをあらゆる位置に移動させながら、各画素に対して、前記奥行きデータと前記奥行き算出手段により算出された奥行きデータとの差の自乗平均に基づいて類似度を算出することにより、前記3次元物体の位置及び姿勢を評価する位置・姿勢評価手段と、を備えることを特徴とする3次元物体認識装置。
Imaging means for capturing an image by capturing a three-dimensional object to be recognized from a predetermined direction;
Projection model image storage that stores in advance a depth map that stores depth data for each pixel in each posture obtained by changing the model of the three-dimensional object to be recognized to any posture within a range that can be viewed from the imaging unit. Means,
Depth calculation means for calculating depth data of the three-dimensional object based on the original image acquired by the imaging means;
While moving the depth data in each posture stored in the projection model image storage unit to every position with respect to the original image acquired by the imaging unit, the depth data and the depth calculation unit for each pixel. A three-dimensional object comprising: position / posture evaluation means for evaluating the position and posture of the three-dimensional object by calculating a similarity based on a root mean square of the difference from the calculated depth data Recognition device.
認識対象である3次元物体のモデルを撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら、カメラ画像に射影して得た各姿勢でのエッジ点における勾配角度を有する輪郭モデルを格納した輪郭マップ、又は該輪郭マップ及び前記3次元物体のモデルに含まれる文字又は模様等のテクスチャ画像における各姿勢でのエッジ点における勾配角度を有するテクスチャモデルを格納したテクスチャマップを予め射影モデル画像記憶手段に記憶するステップと、
認識対象である3次元物体を所定方向から前記撮像手段により撮影して画像を取得するステップと、
取得した原画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での輪郭モデル、又は該輪郭モデル及び前記テクスチャ画像における各姿勢でのエッジ点をあらゆる位置に移動させながら、前記3次元物体の位置及び姿勢を評価するステップと、備えることを特徴とする3次元物体認識方法。
A contour model having a gradient angle at each edge point obtained by projecting onto a camera image while changing the model of a three-dimensional object as a recognition target to any posture within a range that can be visually recognized from the imaging unit is stored. Projection model image storage means storing a contour map or a texture map storing a texture model having a gradient angle at an edge point in each posture in a texture image such as a character or a pattern included in the contour map and the model of the three-dimensional object in advance The step of storing in
Capturing a three-dimensional object as a recognition target by capturing the image from a predetermined direction with the imaging unit;
While moving the contour model in each posture stored in the projection model image storage means or the edge point in each posture in the contour model and the texture image to any position with respect to the acquired original image, the three-dimensional A step of evaluating the position and orientation of an object, and a three-dimensional object recognition method comprising:
前記撮像手段は、複数設けられており、前記射影モデル画像記憶手段に記憶した第1撮像手段のカメラ画像に射影して得た各姿勢での輪郭マップ及びテクスチャマップを他の撮像手段に関しても参照して利用することを特徴とする請求項6記載の3次元物体認識方法。   A plurality of the imaging means are provided, and the contour map and texture map in each posture obtained by projecting on the camera image of the first imaging means stored in the projection model image storage means are also referred to for other imaging means. The three-dimensional object recognition method according to claim 6, wherein the three-dimensional object recognition method is used. 予め勾配ベクトルに対応付けて勾配角度を格納した勾配角度ルックアップテーブルを記憶するステップと、
予め前記3次元物体のモデル上の各画素における勾配角度と前記撮像手段により取得した原画像の各画素における勾配角度とに対応付けて両勾配角度の差から類似度を評価する関数の計算結果を格納した類似度評価関数ルックアップテーブルを記憶するステップと、
前記撮像手段により取得した原画像の各画素に対して勾配ベクトルを算出するステップと、を備え、
前記3次元物体の位置及び姿勢を評価するステップでは、算出した原画像の各画素に対する勾配ベクトルを前記勾配角度ルックアップテーブルを参照することにより勾配角度に変換し、該勾配角度を用いて前記類似度評価関数ルックアップテーブルを参照して類似度を算出することにより前記3次元物体の位置及び姿勢を評価することを特徴とする請求項6又は7記載の3次元物体認識方法。
Storing a gradient angle lookup table in which gradient angles are stored in advance in association with gradient vectors;
The calculation result of the function for evaluating the similarity from the difference between the two gradient angles in association with the gradient angle at each pixel on the model of the three-dimensional object and the gradient angle at each pixel of the original image acquired by the imaging means in advance. Storing a stored similarity evaluation function lookup table;
Calculating a gradient vector for each pixel of the original image acquired by the imaging means,
In the step of evaluating the position and orientation of the three-dimensional object, the gradient vector for each pixel of the calculated original image is converted into a gradient angle by referring to the gradient angle lookup table, and the similarity is calculated using the gradient angle. 8. The three-dimensional object recognition method according to claim 6, wherein the position and orientation of the three-dimensional object are evaluated by calculating a similarity with reference to a degree evaluation function lookup table.
認識対象である3次元物体のモデルを撮像手段から視認可能な範囲において、あらゆる姿勢に変化させながら得た各姿勢での各画素に対する奥行きデータを格納したデプスマップを予め射影モデル画像記憶手段に記憶するステップと、
認識対象である3次元物体を所定方向から撮像手段により撮影して画像を取得するステップと、
該撮像手段が取得した原画像に基づいて、前記3次元物体の奥行きデータを算出するステップと、
取得した原画像に対して前記射影モデル画像記憶手段に記憶された各姿勢での奥行きデータをあらゆる位置に移動させながら、各画素に対して、前記奥行きデータと前記奥行き算出手段により算出された奥行きデータとの差の自乗平均に基づいて類似度を算出することにより、前記3次元物体の位置及び姿勢を評価するステップと、を備えることを特徴とする3次元物体認識方法。
A depth map storing depth data for each pixel in each posture obtained by changing the model of the three-dimensional object to be recognized to any posture within a range that can be visually recognized from the imaging unit is stored in the projection model image storage unit in advance. And steps to
Capturing a three-dimensional object to be recognized by an imaging unit from a predetermined direction and obtaining an image;
Calculating depth data of the three-dimensional object based on an original image acquired by the imaging means;
The depth data calculated by the depth data and the depth calculation unit for each pixel while moving the depth data in each posture stored in the projection model image storage unit to every position with respect to the acquired original image And a step of evaluating the position and orientation of the three-dimensional object by calculating the similarity based on the mean square of the difference from the data.
JP2010009868A 2009-11-20 2010-01-20 3D object recognition apparatus and 3D object recognition method Active JP4677536B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010009868A JP4677536B1 (en) 2009-11-20 2010-01-20 3D object recognition apparatus and 3D object recognition method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009264822 2009-11-20
JP2009264822 2009-11-20
JP2010009868A JP4677536B1 (en) 2009-11-20 2010-01-20 3D object recognition apparatus and 3D object recognition method

Publications (2)

Publication Number Publication Date
JP4677536B1 JP4677536B1 (en) 2011-04-27
JP2011129082A true JP2011129082A (en) 2011-06-30

Family

ID=44080084

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010009868A Active JP4677536B1 (en) 2009-11-20 2010-01-20 3D object recognition apparatus and 3D object recognition method

Country Status (1)

Country Link
JP (1) JP4677536B1 (en)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013146813A (en) * 2012-01-18 2013-08-01 Seiko Epson Corp Robot apparatus, and position and orientation detecting method
JP2013156146A (en) * 2012-01-30 2013-08-15 Canon Inc Measuring device, measuring method and program
JP2013257289A (en) * 2012-06-14 2013-12-26 Canon Inc Image processing device and image processing method
KR101350512B1 (en) * 2011-12-28 2014-01-10 삼성중공업 주식회사 Laser vision system and method for measurement of beveling member
JP2014029664A (en) * 2012-06-28 2014-02-13 Seiko Epson Corp Image comparison range generation method, positional orientation detection method, image comparison range generation device, positional orientation detection device, robot, robot system, image comparison range generation program and positional orientation detection program
JP2016213535A (en) * 2015-04-30 2016-12-15 株式会社東芝 Camera calibration device, method and program
US20170287165A1 (en) * 2016-04-04 2017-10-05 Seiko Epson Corporation Computer program used for image processing
JP6363294B1 (en) * 2017-04-04 2018-07-25 株式会社Mujin Information processing apparatus, picking system, distribution system, program, and information processing method
US10410089B2 (en) 2018-01-19 2019-09-10 Seiko Epson Corporation Training assistance using synthetic images
US10438036B1 (en) 2015-11-09 2019-10-08 Cognex Corporation System and method for reading and decoding ID codes on a curved, sloped and/or annular object
WO2020008576A1 (en) * 2018-07-04 2020-01-09 富士通株式会社 Determination method, determination program, and information processing device
US10552665B2 (en) 2017-12-12 2020-02-04 Seiko Epson Corporation Methods and systems for training an object detection algorithm using synthetic images
US10634918B2 (en) 2018-09-06 2020-04-28 Seiko Epson Corporation Internal edge verification
US10769437B2 (en) 2018-04-10 2020-09-08 Seiko Epson Corporation Adaptive sampling of training views
US10878285B2 (en) 2018-04-12 2020-12-29 Seiko Epson Corporation Methods and systems for shape based training for an object detection algorithm
JP2021028107A (en) * 2019-08-09 2021-02-25 倉敷紡績株式会社 Connector direction searching method, connector connecting method, robot hand, control device, imaging device and connector connecting system
US11007643B2 (en) 2017-04-04 2021-05-18 Mujin, Inc. Control device, picking system, distribution system, program, control method and production method
US11027427B2 (en) 2017-04-04 2021-06-08 Mujin, Inc. Control device, picking system, distribution system, program, and control method
US11090808B2 (en) 2017-04-04 2021-08-17 Mujin, Inc. Control device, picking system, distribution system, program, control method and production method
US11097421B2 (en) 2017-04-04 2021-08-24 Mujin, Inc. Control device, picking system, distribution system, program, control method and production method
JP2022140857A (en) * 2018-09-12 2022-09-28 コグネックス・コーポレイション Methods and apparatus for processing image data for machine vision
CN115253266A (en) * 2015-11-19 2022-11-01 天使集团股份有限公司 Coin counting system
JP7438734B2 (en) 2019-12-05 2024-02-27 倉敷紡績株式会社 Tip member orientation recognition method, tip member orientation method, tip member insertion method, tip member orientation recognition device, and tip member orientation system

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111666792B (en) * 2019-03-07 2023-04-28 阿里巴巴集团控股有限公司 Image recognition method, image acquisition and recognition method, and commodity recognition method
CN112101379B (en) * 2020-08-24 2024-06-11 北京配天技术有限公司 Shape matching method, computer equipment and storage device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006003994A (en) * 2004-06-15 2006-01-05 Calsonic Kansei Corp Road sign recognition device
JP2007219765A (en) * 2006-02-15 2007-08-30 Toyota Motor Corp Image processor, method therefor, and imaging processing program
JP2009093611A (en) * 2007-10-11 2009-04-30 Mwtec Software Gmbh System and method for recognizing three-dimensional object
JP2010205095A (en) * 2009-03-05 2010-09-16 3D Media Co Ltd Three-dimensional object recognition device, three-dimensional object recognition program, and computer readable recording medium having program recorded therein

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006003994A (en) * 2004-06-15 2006-01-05 Calsonic Kansei Corp Road sign recognition device
JP2007219765A (en) * 2006-02-15 2007-08-30 Toyota Motor Corp Image processor, method therefor, and imaging processing program
JP2009093611A (en) * 2007-10-11 2009-04-30 Mwtec Software Gmbh System and method for recognizing three-dimensional object
JP2010205095A (en) * 2009-03-05 2010-09-16 3D Media Co Ltd Three-dimensional object recognition device, three-dimensional object recognition program, and computer readable recording medium having program recorded therein

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101350512B1 (en) * 2011-12-28 2014-01-10 삼성중공업 주식회사 Laser vision system and method for measurement of beveling member
JP2013146813A (en) * 2012-01-18 2013-08-01 Seiko Epson Corp Robot apparatus, and position and orientation detecting method
JP2013156146A (en) * 2012-01-30 2013-08-15 Canon Inc Measuring device, measuring method and program
JP2013257289A (en) * 2012-06-14 2013-12-26 Canon Inc Image processing device and image processing method
JP2014029664A (en) * 2012-06-28 2014-02-13 Seiko Epson Corp Image comparison range generation method, positional orientation detection method, image comparison range generation device, positional orientation detection device, robot, robot system, image comparison range generation program and positional orientation detection program
JP2016213535A (en) * 2015-04-30 2016-12-15 株式会社東芝 Camera calibration device, method and program
US10438036B1 (en) 2015-11-09 2019-10-08 Cognex Corporation System and method for reading and decoding ID codes on a curved, sloped and/or annular object
CN115253266A (en) * 2015-11-19 2022-11-01 天使集团股份有限公司 Coin counting system
US20170287165A1 (en) * 2016-04-04 2017-10-05 Seiko Epson Corporation Computer program used for image processing
US10672143B2 (en) * 2016-04-04 2020-06-02 Seiko Epson Corporation Image processing method for generating training data
DE112017007394B4 (en) * 2017-04-04 2020-12-03 Mujin, Inc. Information processing device, gripping system, distribution system, program and information processing method
US11007643B2 (en) 2017-04-04 2021-05-18 Mujin, Inc. Control device, picking system, distribution system, program, control method and production method
US11679503B2 (en) 2017-04-04 2023-06-20 Mujin, Inc. Control device, picking system, distribution system, program, control method and production method
JP6363294B1 (en) * 2017-04-04 2018-07-25 株式会社Mujin Information processing apparatus, picking system, distribution system, program, and information processing method
US11097421B2 (en) 2017-04-04 2021-08-24 Mujin, Inc. Control device, picking system, distribution system, program, control method and production method
US11090808B2 (en) 2017-04-04 2021-08-17 Mujin, Inc. Control device, picking system, distribution system, program, control method and production method
WO2018185857A1 (en) * 2017-04-04 2018-10-11 株式会社Mujin Information processing device, picking system, logistics system, program, and information processing method
US11027427B2 (en) 2017-04-04 2021-06-08 Mujin, Inc. Control device, picking system, distribution system, program, and control method
US11007649B2 (en) 2017-04-04 2021-05-18 Mujin, Inc. Information processing apparatus, picking system, distribution system, program and information processing method
US10902239B2 (en) 2017-12-12 2021-01-26 Seiko Epson Corporation Methods and systems for training an object detection algorithm using synthetic images
US10552665B2 (en) 2017-12-12 2020-02-04 Seiko Epson Corporation Methods and systems for training an object detection algorithm using synthetic images
US11557134B2 (en) 2017-12-12 2023-01-17 Seiko Epson Corporation Methods and systems for training an object detection algorithm using synthetic images
US10410089B2 (en) 2018-01-19 2019-09-10 Seiko Epson Corporation Training assistance using synthetic images
US10769437B2 (en) 2018-04-10 2020-09-08 Seiko Epson Corporation Adaptive sampling of training views
US10878285B2 (en) 2018-04-12 2020-12-29 Seiko Epson Corporation Methods and systems for shape based training for an object detection algorithm
JPWO2020008576A1 (en) * 2018-07-04 2021-06-24 富士通株式会社 Judgment method, judgment program and information processing device
JP7099526B2 (en) 2018-07-04 2022-07-12 富士通株式会社 Judgment method, judgment program and information processing device
US11663731B2 (en) 2018-07-04 2023-05-30 Fujitsu Limited Determining method, information processing apparatus, and recording medium
WO2020008576A1 (en) * 2018-07-04 2020-01-09 富士通株式会社 Determination method, determination program, and information processing device
US10634918B2 (en) 2018-09-06 2020-04-28 Seiko Epson Corporation Internal edge verification
JP2022140857A (en) * 2018-09-12 2022-09-28 コグネックス・コーポレイション Methods and apparatus for processing image data for machine vision
JP7469391B2 (en) 2018-09-12 2024-04-16 コグネックス・コーポレイション Method and apparatus for processing image data for machine vision - Patents.com
JP2021028107A (en) * 2019-08-09 2021-02-25 倉敷紡績株式会社 Connector direction searching method, connector connecting method, robot hand, control device, imaging device and connector connecting system
JP7438734B2 (en) 2019-12-05 2024-02-27 倉敷紡績株式会社 Tip member orientation recognition method, tip member orientation method, tip member insertion method, tip member orientation recognition device, and tip member orientation system

Also Published As

Publication number Publication date
JP4677536B1 (en) 2011-04-27

Similar Documents

Publication Publication Date Title
JP4677536B1 (en) 3D object recognition apparatus and 3D object recognition method
CN110568447B (en) Visual positioning method, device and computer readable medium
JP4785880B2 (en) System and method for 3D object recognition
US8792726B2 (en) Geometric feature extracting device, geometric feature extracting method, storage medium, three-dimensional measurement apparatus, and object recognition apparatus
JP4940461B2 (en) 3D object recognition apparatus and 3D object recognition method
JP6632208B2 (en) Information processing apparatus, information processing method, and program
CN111274943A (en) Detection method, detection device, electronic equipment and storage medium
JP6541920B1 (en) INFORMATION PROCESSING APPARATUS, PROGRAM, AND INFORMATION PROCESSING METHOD
KR101602472B1 (en) Apparatus and method for generating 3D printing file using 2D image converting
JP6091658B2 (en) Information processing apparatus, information processing method, and program
JP6902881B2 (en) Information processing device and 3D model generation method
CN114766042A (en) Target detection method, device, terminal equipment and medium
JP4649559B2 (en) 3D object recognition apparatus, 3D object recognition program, and computer-readable recording medium on which the same is recorded
JP2003323640A (en) Method, system and program for preparing highly precise city model using laser scanner data and aerial photographic image
CN110567441A (en) Particle filter-based positioning method, positioning device, mapping and positioning method
JP2018195070A (en) Information processing apparatus, information processing method, and program
JP7298687B2 (en) Object recognition device and object recognition method
JP6198104B2 (en) 3D object recognition apparatus and 3D object recognition method
GB2569609A (en) Method and device for digital 3D reconstruction
KR101673144B1 (en) Stereoscopic image registration method based on a partial linear method
JPH11248431A (en) Three-dimensional model forming apparatus and computer readable medium recorded with three-dimensional model generating program
JP2011022066A (en) Method of measuring position and attitude of three-dimensional object
JP7251631B2 (en) Template creation device, object recognition processing device, template creation method, object recognition processing method, and program
JP6641313B2 (en) Region extraction device and program
JP2003123057A (en) Method and device for generating three-dimensional shape model

Legal Events

Date Code Title Description
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: 20101202

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

R150 Certificate of patent or registration of utility model

Ref document number: 4677536

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140210

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140210

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20140210

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250