JP2010282437A - Object recognition device, object recognition method, and program - Google Patents

Object recognition device, object recognition method, and program Download PDF

Info

Publication number
JP2010282437A
JP2010282437A JP2009135469A JP2009135469A JP2010282437A JP 2010282437 A JP2010282437 A JP 2010282437A JP 2009135469 A JP2009135469 A JP 2009135469A JP 2009135469 A JP2009135469 A JP 2009135469A JP 2010282437 A JP2010282437 A JP 2010282437A
Authority
JP
Japan
Prior art keywords
value
axis
coordinate
point
cos
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.)
Pending
Application number
JP2009135469A
Other languages
Japanese (ja)
Inventor
Mitsuhiro Inazumi
満広 稲積
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2009135469A priority Critical patent/JP2010282437A/en
Publication of JP2010282437A publication Critical patent/JP2010282437A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image recognition device for performing calculation, with data amount that can be stored in a primary cache or a secondary cache of a CPU, necessary for image recognition. <P>SOLUTION: The object recognition device includes: an evaluation value calculating unit for associating respective second feature points of a recognition target object with first feature points of a registered image and acquiring COS and SIN values by angle differences θ of normal vectors of the first and second feature points for each first feature point; a candidate coordinate point computing unit for acquiring candidate coordinate points from rotated displacement vectors and the second feature points; a COS values integrating unit for projecting each of the candidate coordinate points to coordinate axes, corresponding to the projected axis coordinate points, and integrating the COS values as a COS integration value; a SIN value integrating unit for projecting each of the candidate coordinate points to a plurality of coordinate axes, corresponding to the projected axis coordinate points, and integrating the SIN values as a SIN integration value; an integration value adding unit for acquiring a total value of the COS and SIN integration values of respective axis coordinate points in combination of respective axis coordinate points; and a recognition target object determining unit for determining the agreement between the recognition target object and the registered image when the total value exceeds a threshold value. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、入力される画像において、予め登録された参照物体の位置、姿勢(回転角)及びスケーリングファクターを検出する物体認識装置に関するものである。   The present invention relates to an object recognition apparatus that detects a position, posture (rotation angle), and scaling factor of a reference object registered in advance in an input image.

撮像装置などから入力される入力画像から、予め登録された参照物体の位置(2次元座標系における位置座標(x,y))、回転角θ及びスケーリングファクターSなどを検出する検出方法として、相関法、フーリエ記述子法、モーメント法、ハフ変換法などがよく知られている。
上述したいずれの検出方法も、登録されている参照物体の登録画像の特徴点は予め抽出されて登録されている。
そして、入力画像内から抽出された認識対象物体の特徴点と、登録されている登録画像の特徴点とを用いて、入力画像内における登録画像に対応した物体の画像の位置、登録画像に対する姿勢、及びスケーリングファクターを求める。
As a detection method for detecting a position of a reference object registered in advance (position coordinates (x, y) in a two-dimensional coordinate system), a rotation angle θ, a scaling factor S, and the like from an input image input from an imaging device or the like, correlation The method, the Fourier descriptor method, the moment method, the Hough transform method, etc. are well known.
In any of the detection methods described above, the feature points of the registered image of the registered reference object are extracted and registered in advance.
Then, using the feature points of the recognition target object extracted from the input image and the feature points of the registered image registered, the position of the image corresponding to the registered image in the input image, and the attitude to the registered image And a scaling factor.

上述した特徴点を用いた検出方法において、ハフ変換法は投票と呼ばれる単純な多数決の原理に基づくものである。
そのため、入力画像内における認識対象物体同士の1部の接触、あるいは重なりなどによる部分的な遮蔽、また画像ノイズなどに対し、認識対象物体の認識処理において頑健な性能を有している。
このハフ変換法において、任意形状を有する認識対象物体の検出を高速に行う方法として一般化ハフ変換法がある(例えば、非特許文献1参照)。
In the detection method using the feature points described above, the Hough transform method is based on a simple majority rule called voting.
Therefore, it has robust performance in the recognition target object recognition process against partial occlusion due to contact or overlap of parts of the recognition target objects in the input image, image noise, and the like.
In this Hough transform method, there is a generalized Hough transform method as a method for detecting a recognition target object having an arbitrary shape at high speed (for example, see Non-Patent Document 1).

上記一般化ハフ変換法は、参照物体より抽出された特徴点(ピクセル単位)において、その特徴点における接線と、あるいは法線の角度と、またその特徴点及び物体の基準となる基準点の位置関係とを参照テーブルとして準備する。この基準点は、参照物体の2次元座標への配置位置を示す配置基準点である。
すなわち、モデルとなる登録画像の上記参照テーブルを生成する図9のフローチャートに示すように、登録画像の画像を入力し(ステップS1)、図10に示すように、参照物体の特徴点(P)を2次微分(ラプラシアン)法あるいはモラベック(Moravec)の方法等により抽出する(ステップS2)。つまり、周辺画素との値(画素値)の差が大きな点である輪郭線上の点や、表面状態が大きく変わる点などが特徴点となる。
In the above generalized Hough transform method, in the feature point (pixel unit) extracted from the reference object, the tangent at the feature point or the angle of the normal line, and the position of the reference point serving as the basis of the feature point and the object Prepare the relationship as a reference table. This reference point is an arrangement reference point indicating the arrangement position of the reference object on the two-dimensional coordinates.
That is, as shown in the flowchart of FIG. 9 for generating the reference table of the registered image as a model, the image of the registered image is input (step S1), and the feature point (P) of the reference object as shown in FIG. Is extracted by the second derivative (Laplacian) method or the Moravec method (step S2). That is, a feature point is a point on a contour line where a difference in value (pixel value) from surrounding pixels is large or a point where the surface state changes greatly.

そして、登録画像における特徴点の2値化処理を予め設定した閾値を用いて行い、2値化データを出力する(ステップS3)。ここで行う2値化手法としては、あらかじめ設定してある閾値による単純2値化法をはじめとして、ある閾値でヒストグラムを2クラスに分割した場合のクラス間分散が最大になるときの閾値を2値化閾値とする大津法(「判別および最小2乗規準に基づく自動しきい値選定法」(大津)、電子通信学会論文誌、Vol.J63−D,No.4.pp.349−356,1980)、あるいは、階調を持つ画像に対して、局所的濃度に応じて閾値を設定する2値化法等が用いられる。   Then, binarization processing of feature points in the registered image is performed using a preset threshold value, and binarized data is output (step S3). As the binarization method performed here, the threshold when the inter-class variance becomes maximum when the histogram is divided into two classes with a certain threshold, including a simple binarization method with a preset threshold, is set to 2. Otsu method as a threshold value ("Automatic threshold selection method based on discrimination and least-squares criteria" (Otsu), IEICE Transactions, Vol. J63-D, No. 4. pp. 349-356, 1980), or a binarization method for setting a threshold value according to local density for an image having gradation.

次に、登録画像の各特徴点のデータを記憶する参照テーブルの記憶領域の初期化を行い(ステップS4)、参照物体の基準点を任意の位置、例えば参照物体の重心位置として求める(ステップS5)。
特徴点(始点)から上記基準点(終点)への変位ベクトルと、特徴点における単位法線ベクトル(正規化法線ベクトル)とからなる特徴点データを求める処理を、全ての2値化データに対して行ったか否かの判定を行い(ステップS6)、全ての2値化データにおける特徴点データの取得処理が終了すると処理を終了し、特徴点データを取得する処理を行っていない2値化データがある場合に処理をステップS7へ進める。
Next, the storage area of the reference table that stores data of each feature point of the registered image is initialized (step S4), and the reference point of the reference object is obtained as an arbitrary position, for example, the barycentric position of the reference object (step S5). ).
Processing for obtaining feature point data consisting of a displacement vector from a feature point (start point) to the reference point (end point) and a unit normal vector (normalized normal vector) at the feature point is performed on all binarized data. It is determined whether or not it has been performed (step S6). When the feature point data acquisition process for all binarized data is completed, the process ends, and the binarization without the process for acquiring the feature point data is performed. If there is data, the process proceeds to step S7.

未処理の2値化データを読み出し(ステップS7)、この2値化データが特徴点であるか否かの判定を上記閾値により行い(ステップS8)、特徴点でない場合に処理をステップS6へ進め、特徴点である場合に処理をステップS9へ進める。
そして、特徴点(図においては単に点とする)における接線あるいは単位法線ベクトルを求め、処理をステップS6へ進める(ステップS9)。
例えば、ステップS9において、点P1における法線ベクトルN1を求め、点P2における法線ベクトルを求め、他の点においても同様に法線ベクトルを求める。これらの法線ベクトルの長さが同一となるように単位法線ベクトルとして規格化し、図11に示すように、特徴点の番号に対応させて、この特徴点における単位法線ベクトルを構成するx成分NXn(1≦n≦Mの整数、Mは特徴点の数)及びy成分NYnと、この特徴点における変位ベクトルDnを構成するx成分DXn及びy成分DYnとの参照テーブルを生成する。
Unprocessed binarized data is read (step S7), and whether or not the binarized data is a feature point is determined based on the threshold value (step S8). If it is not a feature point, the process proceeds to step S6. If it is a feature point, the process proceeds to step S9.
Then, a tangent or unit normal vector at the feature point (simply referred to as a point in the figure) is obtained, and the process proceeds to step S6 (step S9).
For example, in step S9, the normal vector N1 at the point P1 is obtained, the normal vector at the point P2 is obtained, and the normal vectors are similarly obtained at other points. These normal vectors are standardized as unit normal vectors so that the lengths thereof are the same, and as shown in FIG. 11, x corresponding to the feature point numbers and constituting the unit normal vectors at the feature points A reference table of the component NXn (an integer of 1 ≦ n ≦ M, M is the number of feature points), the y component NYn, and the x component DXn and the y component DYn constituting the displacement vector Dn at the feature point is generated.

上記参照テーブルを用いた非特許文献1による画像認識処理は、図12に示すフローチャートの動作により行われる。
撮像装置等から入力画像を入力し(ステップS11)、図13に示すように、入力画像内の認識対象物体の特徴点(Q)を参照画像と同様の方法にて抽出する(ステップS12)。この図13は、認識対象物体の特徴点に対し、登録画像の特徴点を重ね合わせ、その登録画像の特徴点における法線ベクトルの角度を合わせ、登録画像の変位ベクトルの指し示す基準点の位置の投票を行うことを示す概念図である。
そして、入力画像における特徴点の2値化処理を、参照画像の処理と同様に、予め設定した閾値を用いて行い、2値化データを出力する(ステップS13)。
The image recognition process according to Non-Patent Document 1 using the reference table is performed by the operation of the flowchart shown in FIG.
An input image is input from an imaging device or the like (step S11), and as shown in FIG. 13, a feature point (Q) of the recognition target object in the input image is extracted by the same method as the reference image (step S12). In FIG. 13, the feature point of the registered image is superimposed on the feature point of the recognition target object, the angle of the normal vector at the feature point of the registered image is matched, and the position of the reference point indicated by the displacement vector of the registered image is adjusted. It is a conceptual diagram which shows performing voting.
Then, the binarization processing of the feature points in the input image is performed using a preset threshold value similarly to the processing of the reference image, and binarized data is output (step S13).

次に、基準点の候補に対して投票を行う投票空間(図14の投票空間の概念図にある回転角度毎の基準点の座標を示す2次元平面)の記憶領域の初期化を行う(ステップS14)。
上記基準点から特徴点への変位ベクトルと、特徴点における単位法線ベクトルとからなる特徴点データを求める処理を、全ての2値化データに対して行ったか否かの判定を行い(ステップS15)、全ての2値化データに対する特徴点データの取得処理が終了した場合に処理を終了し、特徴点データを取得する処理を行っていない2値化データがある場合に処理をステップS16へ進める。
Next, the storage area of the voting space (two-dimensional plane showing the coordinates of the reference point for each rotation angle in the conceptual diagram of the voting space in FIG. 14) for voting on the reference point candidates is initialized (step S14).
It is determined whether or not the processing for obtaining the feature point data including the displacement vector from the reference point to the feature point and the unit normal vector at the feature point has been performed for all the binarized data (step S15). ) When the feature point data acquisition process for all binarized data has been completed, the process ends. When there is binarized data for which feature point data acquisition processing has not been performed, the process proceeds to step S16. .

未処理の2値化データを読み出し(ステップS16)、この2値化データが特徴点であるか否かの判定を上記閾値により行い(ステップS17)、特徴点でない場合、つまり閾値よりも小さい場合に処理をステップS15へ進め、特徴点である場合、つまり閾値以上である場合に処理をステップS18へ進める。
そして、特徴点の単位法線ベクトルを求め、処理をステップ19へ進める(ステップS18)。
登録画像の全ての特徴点を用いて、認識対象物体の選択された特徴点に対応した基準点の投票処理を行ったか否かの判定を行い(ステップS19)、認識対象物体の選択された特徴点に対して、登録画像の全ての特徴点を用いた投票処理が終了した場合、処理をステップS15へ進め、一方、投票処理に用いられていない登録画像の特徴点が存在する場合、処理をステップS20へ進める。
Unprocessed binarized data is read (step S16), and whether or not the binarized data is a feature point is determined based on the threshold value (step S17). If it is not a feature point, that is, smaller than the threshold value. The process proceeds to step S15, and if it is a feature point, that is, if it is equal to or greater than the threshold value, the process proceeds to step S18.
And the unit normal vector of a feature point is calculated | required and a process is advanced to step 19 (step S18).
It is determined whether or not the reference point voting process corresponding to the selected feature point of the recognition target object has been performed using all the feature points of the registered image (step S19), and the selected feature of the recognition target object is determined. If the voting process using all the feature points of the registered image is completed for the point, the process proceeds to step S15. On the other hand, if there is a feature point of the registered image that is not used for the voting process, the process is performed. Proceed to step S20.

認識対象物体の特徴点に対し、登録画像の特徴点を重ね合わせ、認識対象物体の特徴点における単位法線ベクトルと、登録画像の特徴点における単位法線ベクトルとの角度差(回転角θ)を求める(ステップS20)。   The feature point of the registered image is superimposed on the feature point of the recognition target object, and the angle difference (rotation angle θ) between the unit normal vector at the feature point of the recognition target object and the unit normal vector at the feature point of the registration image Is obtained (step S20).

次に、登録画像の特徴点の変位ベクトルを、特徴点を中心として回転角θ分、以下の式により回転させる(ステップS21)。
認識対象物体の特徴点における単位法線ベクトルと、登録画像の特徴点における単位法線ベクトルとから、COS値とSIN値とを求める。たとえば、図10における点P1が図13における点Q2であると仮定した場合、以下の(1)式により求めることができる。
COS = Nx1×nx2 + Ny1×ny2
SIN = Nx1×ny2 − Ny1×nx2 …(1)
ここで、登録画像の単位法線ベクトルを(Nx1,Ny1)とし、認識対象物体の単位法線ベクトルを(nx2,ny2)とする。
ここで、変位ベクトルも同様に、特徴点に対して回転角θにより回転するため、回転させた変位ベクトルの成分dx及びdyは、以下の(2)式により求めることができる。
dx = COS×DX − SIN×DY
dy = SIN×DX + COS×DY …(2)
ここで、登録画像の変位ベクトルを(DX,DY)としている。
Next, the displacement vector of the feature point of the registered image is rotated by the following equation about the feature point by the rotation angle θ (step S21).
A COS value and a SIN value are obtained from the unit normal vector at the feature point of the recognition target object and the unit normal vector at the feature point of the registered image. For example, when it is assumed that the point P1 in FIG. 10 is the point Q2 in FIG. 13, it can be obtained by the following equation (1).
COS = Nx1 x nx2 + Ny1 x ny2
SIN = Nx1 × ny2−Ny1 × nx2 (1)
Here, the unit normal vector of the registered image is (Nx1, Ny1), and the unit normal vector of the recognition target object is (nx2, ny2).
Here, since the displacement vector is also rotated with respect to the feature point by the rotation angle θ, the components dx and dy of the rotated displacement vector can be obtained by the following equation (2).
dx = COS × DX−SIN × DY
dy = SIN × DX + COS × DY (2)
Here, the displacement vector of the registered image is (DX, DY).

入力画像の認識対象物体の特徴点の位置対して、上記回転させた変位ベクトルを、以下の式のように加えて、基準点の候補位置を求める(ステップS22)。
上述した式により、点Q2の座標を(Qx,Qy)とすると、認識対象物体の基準点の候補は以下の(3)式により求められる。
Rx = Qx + dx
Ry = Qy + dy …(3)
The candidate position of the reference point is obtained by adding the rotated displacement vector to the position of the feature point of the recognition target object in the input image as shown in the following equation (step S22).
If the coordinates of the point Q2 are (Qx, Qy) according to the above-described equation, the reference point candidate of the recognition target object is obtained by the following equation (3).
Rx = Qx + dx
Ry = Qy + dy (3)

そして、回転角θに対応する2次元平面の座標に対し、上記基準点の候補の位置(Rx,Ry)に「1」を加算、すなわち投票を行う(ステップS23)。
上述したように、非特許文献1の方法においては、各特徴点における登録画像と認識対象物体とのそれぞれの法線の角度を合わせて(この際の回転角が姿勢となる)変位ベクトルの示す基準点の位置の投票を行う。
この結果、重ね合わせた特徴点が登録画像と認識対象物体とで対応している場合、法線ベクトルの角度を合わせると、登録画像の変位ベクトルが同一の点の方向を向き、その指し示す先の基準点が重なり合うため、投票数がピークとなる位置を、認識対象物体の基準点の位置として検出するとともに、その際の回転角を登録画像に対する姿勢として得ることができる。この処理により、登録画像と入力画像における認識対象物体との認識処理を非常に効率良く行う。
Then, “1” is added to the position (Rx, Ry) of the reference point candidate with respect to the coordinates of the two-dimensional plane corresponding to the rotation angle θ, that is, voting is performed (step S23).
As described above, in the method of Non-Patent Document 1, a displacement vector indicating the angle of each normal line of a registered image and a recognition target object at each feature point (the rotation angle at this time becomes a posture) is shown. Vote for the location of the reference point.
As a result, when the superimposed feature points correspond to the registered image and the recognition target object, when the normal vector angle is adjusted, the displacement vector of the registered image points in the direction of the same point, Since the reference points overlap, it is possible to detect the position where the number of votes is the peak as the position of the reference point of the recognition target object, and to obtain the rotation angle at that time as the posture with respect to the registered image. By this process, the recognition process between the registered image and the recognition target object in the input image is performed very efficiently.

しかしながら、この投票空間の次元を考えると、スケーリングファクターSを考慮しない場合であっても、図14に示すように、データ構成が縦位置(縦座標)、横位置(横座標)、回転角の3次元となる。また、スケーリングファクターによるサイズ変化も、物体検出において考慮すると1次元が加わり、4次元となる。
このため、実際の物体認識に対して応用する場合、3次元及び4次元の投票空間を構成するために非常に多くのメモリーを必要とすることになる。以降の説明においては、スケーリングファクターの次元を除いた3次元の投票空間に対して評価を行う。
However, considering the dimensions of this voting space, even if the scaling factor S is not taken into consideration, as shown in FIG. 14, the data structure is vertical position (vertical coordinate), horizontal position (horizontal coordinate), and rotation angle. 3D. In addition, when the size change due to the scaling factor is also taken into consideration in the object detection, one dimension is added and becomes four dimensions.
For this reason, when applied to actual object recognition, a very large amount of memory is required to construct three-dimensional and four-dimensional voting spaces. In the following description, evaluation is performed on a three-dimensional voting space excluding the dimension of the scaling factor.

この3次元の投票空間の場合、上記非特許文献1の方法においては、「NX×NY×NA×NV」のビット数が必要となる。ここで、入力画像における認識対象物体の2次元座標における位置、及び登録画像に対する回転角の検出結果を示す際、2次元座標のx軸(横軸)の検出位置の分割数(分解能に対応)である座標点数NX、y軸(縦軸)の検出位置の分割数である座標点数NY、回転角度の検出角度の分割数である角度分割NA、それぞれの投票数を蓄積するメモリーのビット数NV(通常は2バイトあるいは4バイト)である。
すなわち、非特許文献1においては、認識対象物体の候補の位置及び角度ごとに、ぞれぞれの投票に対応させているため、多くのメモリー容量が必要となる。
この多くのメモリー容量を削減するため、物体検出候補の位置ごとに物体検出候補の回転角度θに対応するCOS値及びSIN値を単に積算する方法がある(たとえば、特許文献1参照)。
In the case of this three-dimensional voting space, the number of bits “NX × NY × NA × NV” is required in the method of Non-Patent Document 1. Here, when the position of the recognition target object in the input image in the two-dimensional coordinates and the detection result of the rotation angle with respect to the registered image are shown, the number of divisions of the detection position of the x-axis (horizontal axis) of the two-dimensional coordinates (corresponding to the resolution) The number of coordinate points NX, the number of coordinate points NY that is the number of divisions of the detection position of the y-axis (vertical axis), the angle division NA that is the number of divisions of the detection angle of the rotation angle, and the number of bits NV of the memory that accumulates the number of votes (Normally 2 bytes or 4 bytes).
That is, in Non-Patent Document 1, a large amount of memory capacity is required because each vote corresponds to each position and angle of a recognition target object candidate.
In order to reduce this large memory capacity, there is a method of simply integrating the COS value and the SIN value corresponding to the rotation angle θ of the object detection candidate for each position of the object detection candidate (see, for example, Patent Document 1).

特許文献1を用いた画像認識処理は、図15に示すフローチャートの動作により行われる。
撮像装置等から入力画像を入力し(ステップS31)、図13に示すように、入力画像内の認識対象物体の特徴点を参照画像と同様の方法にて抽出する(ステップS32)。
そして、入力画像における特徴点の2値化処理を、参照画像の処理と同様に、予め設定した閾値を用いて行い、2値化データを出力する(ステップS33)。
Image recognition processing using Patent Document 1 is performed by the operation of the flowchart shown in FIG.
An input image is input from an imaging device or the like (step S31), and as shown in FIG. 13, feature points of the recognition target object in the input image are extracted by the same method as the reference image (step S32).
Then, the binarization processing of the feature points in the input image is performed using a preset threshold value similarly to the processing of the reference image, and binarized data is output (step S33).

次に、基準点の候補に対して投票を行う投票空間(後述するCOS値及びSIN値を積算するそれぞれの2次元平面)の記憶領域の初期化を行う(ステップS34)。
各特徴点におけるCOS値及びSIN値それぞれを、上記基準点の候補の位置に対して積算する処理を、全ての2値化データに対して行ったか否かの判定を行い(ステップS35)、全ての2値化データに対する上記COS値及びSIN値の積算処理が終了した場合に処理を終了し、上記COS値及びSIN値の積算処理を行っていない2値化データがある場合に処理をステップS36へ進める。
Next, the storage area of the voting space for voting on the reference point candidates (each two-dimensional plane for accumulating COS values and SIN values described later) is initialized (step S34).
It is determined whether or not the process of integrating the COS value and SIN value at each feature point with respect to the position of the reference point candidate is performed for all binarized data (step S35). When the COS value and SIN value integration process for the binarized data is completed, the process ends. When there is binarized data that has not been subjected to the COS value and SIN value integration process, the process proceeds to step S36. Proceed to

未処理の2値化データを読み出し(ステップS36)、この2値化データが特徴点であるか否かの判定を上記閾値により行い(ステップS37)、特徴点でない場合に処理をステップS35へ進め、特徴点である場合に処理をステップS38へ進める。
そして、特徴点の単位法線ベクトルを求め、処理をステップ39へ進める(ステップS18)。
登録画像の全ての特徴点を用いて、認識対象物体の選択された特徴点に対応した基準点にCOS値及びSIN値の積算処理を行ったか否かの判定を行い(ステップS39)、認識対象物体の選択された特徴点に対して、登録画像の全ての特徴点を用いた積算処理が終了した場合、処理をステップS35へ進め、一方、積算処理に用いられていない登録画像の特徴点が存在する場合、処理をステップS40へ進める。
Unprocessed binarized data is read (step S36), and whether or not the binarized data is a feature point is determined based on the threshold value (step S37). If it is not a feature point, the process proceeds to step S35. If it is a feature point, the process proceeds to step S38.
And the unit normal vector of a feature point is calculated | required and a process is advanced to step 39 (step S18).
Using all the feature points of the registered image, it is determined whether or not the COS value and the SIN value have been added to the reference point corresponding to the selected feature point of the recognition target object (step S39). When the integration process using all the feature points of the registered image is completed for the selected feature point of the object, the process proceeds to step S35, while there are feature points of the registered image that are not used for the integration process. If it exists, the process proceeds to step S40.

入力画像における認識対象物体の特徴点の単位法線ベクトル(nx,ny)と、登録画像の特徴点の単位法線ベクトル(Nx,Ny)とから、以下の(4)式により、各特徴点におけるCOS値及びSIN値を求める(ステップS40)。
COS = Nx×nx + Ny×ny
SIN = Nx×ny − Ny×nx …(4)
Based on the unit normal vector (nx, ny) of the feature point of the recognition target object in the input image and the unit normal vector (Nx, Ny) of the feature point of the registered image, A COS value and a SIN value are obtained (step S40).
COS = Nx × nx + Ny × ny
SIN = Nx × ny−Ny × nx (4)

(4)式により求めたCOS値及びSIN値と、重ね合わせた登録画像の特徴点の変位ベクトル(DX,DY)とから、回転角θにより回転させた変位ベクトル(dx,dy)を、下記(5)式により求める。
dx = COS×DX − SIN×DY
dy = SIN×DX + COS×DY …(5)
The displacement vector (dx, dy) rotated by the rotation angle θ from the COS value and SIN value obtained by the equation (4) and the displacement vector (DX, DY) of the feature point of the registered image that has been superimposed is expressed as follows: Obtained by equation (5).
dx = COS × DX−SIN × DY
dy = SIN × DX + COS × DY (5)

そして、入力画像における認識対象物体の特徴点(Qx,Qy)と、回転させた変位ベクトル(dx,dy)とから、以下の(6)式により、基準点位置の候補の位置を求める。
Rx = Qx + dx
Ry = Qy + dy …(6)
この得られた基準点位置の候補の位置(Rx,Ry)に対して、COS(θ)とSIN(θ)とを、図16に示すように、それぞれCOS(θ)の投票空間と、SIN(θ)の投票空間に積算する。
この結果、投票空間としてのメモリー容量は、「NX×NY×2×(積算のためのビット数)」で得られることになる。積算するビット数については双方ともに2から4ビットであるため、角度分割数NAを360とし1度の分解能を有すると考えると、特許文献1の方法は非特許文献1に比較して、1/180のメモリー容量にて実現することができる。ここで、2はCOS値、SIN値それぞれの積算を行う2つの2次元座標を示している。
Then, from the feature point (Qx, Qy) of the recognition target object in the input image and the rotated displacement vector (dx, dy), the position of the reference point position candidate is obtained by the following equation (6).
Rx = Qx + dx
Ry = Qy + dy (6)
With respect to the candidate position (Rx, Ry) of the obtained reference point position, COS (θ) and SIN (θ) are respectively represented as COS (θ) voting space and SIN as shown in FIG. It accumulates in the voting space of (θ).
As a result, the memory capacity as the voting space is obtained by “NX × NY × 2 × (number of bits for integration)”. Since the number of bits to be integrated is 2 to 4 in both cases, when the angle division number NA is 360 and the resolution is 1 degree, the method of Patent Document 1 is 1 / It can be realized with a memory capacity of 180. Here, 2 indicates two two-dimensional coordinates for integrating the COS value and the SIN value, respectively.

この投票処理により、認識対象物体の基準点の候補の点が登録画像に対して回転角θを有する真の基準点である場合、その候補の点に対して登録画像の各特徴点の全てからの回転角θの投票が大部分を占めることが考えらる。このため、真の基準点である点におけるCOS値とSIN値とのそれぞれの積算値は、その認識対象物体の回転角θの投票が大部分を占めることにより、その回転角θに対応するCOS値、SIN値の整数倍、投票数倍に近づくことになる。その結果、COS積算値、SIN積算値のいずれかまたは両方においてピークを得ることができる。
したがって、COS積算値、SIN積算値のピーク位置が入力画像における認識対象物体の基準点であり、その基準点に積算されたCOS値の積算値とSIN値の積算値との比、すなわちtan−1(SIN値の積算値/COS値の積算値)により回転角θを求めることができる。
By this voting process, when the candidate point of the reference point of the recognition target object is a true reference point having a rotation angle θ with respect to the registered image, from all of the feature points of the registered image with respect to the candidate point. It can be considered that the majority of the votes of the rotation angle θ are. For this reason, each of the integrated values of the COS value and the SIN value at the point that is the true reference point is determined by the vote of the rotation angle θ of the recognition target object, and the COS corresponding to the rotation angle θ. Value, an integer multiple of the SIN value, and the number of votes. As a result, a peak can be obtained in one or both of the COS integrated value and the SIN integrated value.
Therefore, the peak position of the COS integrated value and the SIN integrated value is the reference point of the recognition target object in the input image, and the ratio between the integrated value of the COS value integrated to the reference point and the integrated value of the SIN value, that is, tan − The rotation angle θ can be obtained from 1 (integrated value of SIN value / integrated value of COS value).

一方、基準点の候補の点が真の基準点でない場合、認識対象物体の特徴点における投票が誤投票であったり、あるいはノイズに起因するものとなり、投票される回転角θは一様乱数的な分布を有すると仮定される。
この結果、この真の基準点でない点でのCOS値及びSIN値の積算は、それぞれCOS関数、SIN関数を0度から360度までを一様な重みで単純に積分した値の整数倍となることが期待され、積算値は0に近づくことになる。
On the other hand, if the reference point candidate point is not a true reference point, the vote at the feature point of the recognition target object may be a false vote or may be caused by noise, and the voted rotation angle θ is uniformly random. It is assumed to have a distribution.
As a result, the integration of the COS value and the SIN value at a point that is not the true reference point is an integral multiple of the COS function and the SIN function, each of which is simply integrated from 0 degrees to 360 degrees with a uniform weight. It is expected that the integrated value will approach zero.

特開2007−128374号公報JP 2007-128374 A

D.H.Ballard,”Generalizing The Hough Transform To Detect Arbitrary Shapes”,Pattern Recongition,Vol.13,no.2,pp.111-122,1981D.H. Ballard, “Generalizing The Hough Transform To Detect Arbitrary Shapes”, Pattern Recongition, Vol. 13, no. 2, pp. 111-122, 1981

しかしながら、特許文献1に示す物体認識方法にあっては、非特許文献1に対し、計算過程において用いるメモリー容量を2桁以上削減しているが、高速に演算を行う際において、メモリー容量が依然として多い欠点を有している。
CPU(中央演算装置)の演算速度は非常に高速となり、処理能力が向上したことにより、データを記憶する主記憶装置のメモリー素子との速度差が大きくなっている。
この主記憶装置のメモリーに対するアクセス時間を短縮するため、最近のCPUは1次キャッシュ、あるいは2次キャッシュなどの高速メモリーを内蔵している。
CPUの計算が効率に行われるのは、使用するデータ及び命令において、上記キャッシュに記憶されたデータ及び命令が有効である場合(キャッシュヒットした場合)である。
一方、キャッシュヒットしない場合、つまりキャッシュに記憶されたデータ及び命令が有効でない場合、それらはキャッシュに対して相対的に低速である主記憶装置のメモリーから読み込む必要があり、CPUは本来の性能に対して劣った動作速度となってしまう。
However, in the object recognition method shown in Patent Document 1, the memory capacity used in the calculation process is reduced by two or more digits compared to Non-Patent Document 1, but the memory capacity is still large when performing high-speed calculations. It has many drawbacks.
The calculation speed of the CPU (central processing unit) is extremely high, and the processing capability is improved, so that the speed difference from the memory element of the main storage device that stores data is large.
In order to shorten the access time to the memory of the main storage device, recent CPUs incorporate a high-speed memory such as a primary cache or a secondary cache.
CPU calculation is performed efficiently when the data and instructions stored in the cache are valid (when a cache hit occurs).
On the other hand, if the cache does not hit, that is, if the data and instructions stored in the cache are not valid, they need to be read from the memory of the main storage device, which is relatively slow relative to the cache, and the CPU will perform at its original performance. In contrast, the operation speed becomes inferior.

このキャッシュメモリーの容量は、1次キャッシュで数十kバイト、2次キャッシュで数百kバイト、3次キャッシュで数Mバイトである。
非特許文献1において、2次元座標の座標点を1024×1024とし、回転角θの分解能を1度とし、投票に必要なバイト数を4とした場合、「1024×1024×360×4」となり、約1.5Gバイトのメモリー容量が必要となる。
また、特許文献1において、2次元の座標点を1024×1024とし、COS値及びSIN値各々として2、積算するバイト数を4バイトとした場合、「1024×1024×2×4」となり、約8Mバイト程度となる。
この後者のメモリー容量は、1次キャッシュ、2次キャッシュに格納することは不可能であり、3次キャッシュに格納できるか否かの容量である。また、画像サイズを大きくすると座標点を増加させる必要があり、3次キャッシュに格納することも不可能となってしまう。
The capacity of the cache memory is several tens of kilobytes in the primary cache, several hundred kilobytes in the secondary cache, and several megabytes in the tertiary cache.
In Non-Patent Document 1, when the coordinate point of a two-dimensional coordinate is 1024 × 1024, the resolution of the rotation angle θ is 1 degree, and the number of bytes necessary for voting is 4, it is “1024 × 1024 × 360 × 4”. A memory capacity of about 1.5 Gbytes is required.
Further, in Patent Document 1, when the two-dimensional coordinate point is 1024 × 1024, the COS value and the SIN value are 2, and the number of bytes to be integrated is 4 bytes, “1024 × 1024 × 2 × 4” is obtained. It will be about 8M bytes.
This latter memory capacity is a capacity that cannot be stored in the primary cache and the secondary cache and can be stored in the tertiary cache. Further, if the image size is increased, the coordinate points need to be increased, and it becomes impossible to store them in the tertiary cache.

本発明は、このような事情に鑑みてなされたもので、その目的は、画像認識に必要な計算を、CPUの1次キャッシュあるいは2次キャッシュに格納できるデータ量にて行うことが可能な画像認識装置を提供することにある。   The present invention has been made in view of such circumstances, and an object of the present invention is to provide an image that can perform calculations necessary for image recognition with a data amount that can be stored in a primary cache or a secondary cache of a CPU. To provide a recognition device.

この発明は上述した課題を解決するためになされたもので、本発明の物体認識装置は、登録画像より抽出した複数の第1の特徴点と、この第1の特徴点における第1の法線ベクトルと、第1の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データが記憶される特徴点データ記憶部と、入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する特徴点抽出部と、第2の特徴点における第2の法線ベクトルを求める法線ベクトル演算部と、第2の特徴点に対して第1の特徴点を重ね、第1の法線ベクトルと第2の法線ベクトルの角度差θによるCOS(θ)及びSIN(θ)値を求める評価値算出部と、前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第2の特徴点の座標から、基準点の候補である候補座標点を求める候補座標点演算部と、当該候補座標点を複数の第1の座標軸に各々投影し、投影された軸座標点に対応して、前記候補座標点におけるCOS(θ)をCOS積算値として積算するCOS値積算部と、当該候補座標点を複数の第2の座標軸に各々投影し、投影された軸座標点に対応して、前記候補座標点におけるSIN(θ)をSIN積算値として積算するSIN値積算部と、前記第1の座標軸及び前記第2の座標軸における前記候補座標点に対応する軸座標点のCOS積算値及びSIN積算値を加算して総合値を求める積算値加算部と、
前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する認識対象物体判定部とを有することを特徴とする。
本発明の物体認識方法は、登録画像データ生成部が、登録画像より抽出した複数の第1の特徴点と、この第1の特徴点における第1の法線ベクトルと、第1の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データを、特徴点データ記憶部に記憶する過程と、特徴点抽出部が入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する過程と、法線ベクトル演算部が第2の特徴点における第2の法線ベクトルを求める過程と、評価値算出部が、前記第2の特徴点各々に対して登録画像の第1の特徴点の全てを対応させ、第1の法線ベクトルと第2の法線ベクトルの角度差θによるCOS(θ)及びSIN(θ)値を、第1の特徴点毎に求める過程と、候補座標点演算部が、前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第2の特徴点の座標から、基準点の候補である候補座標点を求める過程と、COS値積算部が、当該候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるCOS(θ)をCOS積算値として積算する過程と、SIN値積算部が、当該候補座標点を複数の前記座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるSIN(θ)をSIN積算値として積算する過程と、積算値加算部が、前記座標軸各々における各軸座標点の組合せにおいて、各軸座標点におけるCOS積算値及びSIN積算値を加算して総合値を求める過程と、認識対象物体判定部が、前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する過程とを有することを特徴とする。
本発明のプログラムは、登録画像データ生成部が、登録画像より抽出した複数の第1の特徴点と、この第1の特徴点における第1の法線ベクトルと、第1の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データを、特徴点データ記憶部に記憶する処理と、特徴点抽出部が入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する処理と、法線ベクトル演算部が第2の特徴点における第2の法線ベクトルを求める処理と、評価値算出部が、前記第2の特徴点各々に対して登録画像の第1の特徴点の全てを対応させ、第1の法線ベクトルと第2の法線ベクトルの角度差θによるCOS(θ)及びSIN(θ)値を、第1の特徴点毎に求める処理と、候補座標点演算部が、前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第2の特徴点の座標から、基準点の候補である候補座標点を求める処理と、COS値積算部が、当該候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるCOS(θ)をCOS積算値として積算する処理と、SIN値積算部が、当該候補座標点を複数の前記座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるSIN(θ)をSIN積算値として積算する処理と、積算値加算部が、前記座標軸各々における各軸座標点の組合せにおいて、各軸座標点におけるCOS積算値及びSIN積算値を加算して総合値を求める処理と、認識対象物体判定部が、前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する処理とを有する物体認識装置としてコンピューターを機能させるためのプログラムである。
この発明によれば、認識対象物体の入力画像における配置の基準点の候補である候補座標点毎にCOS(θ)及びSIN(θ)の投票空間に投票するのではなく、候補座標点を座標軸上に投影し、投影された軸座標点毎にCOS(θ)及びSIN(θ)を積算し、積算結果を軸座標点各々に対応する候補座標点において加算するため、積算値を記憶する記憶部を2次元配列から、1次元配列とすることで、従来に比較してメモリー容量を削減することができ、この結果、キャッシュメモリーを有効に用いることが可能となり、認識処理を高速化することができる。
The present invention has been made to solve the above-described problem, and an object recognition apparatus according to the present invention includes a plurality of first feature points extracted from a registered image and a first normal line at the first feature points. A feature point data storage unit for storing feature point data including a vector and a displacement vector from the first feature point to the reference point of the registered image; and a second that constitutes the feature of the recognition target object in the input image A feature point extracting unit for extracting feature points; a normal vector computing unit for obtaining a second normal vector at the second feature point; and a first feature point superimposed on the second feature point, An evaluation value calculation unit for obtaining COS (θ) and SIN (θ) values based on the angle difference θ between the normal vector and the second normal vector, and rotating the displacement vector from the angle difference to rotate the displacement vector And the coordinates of the second feature point, A candidate coordinate point calculation unit for obtaining a candidate coordinate point that is a complement, and projecting the candidate coordinate point onto each of the plurality of first coordinate axes, and corresponding to the projected axis coordinate point, COS (θ ) As a COS integrated value, and the candidate coordinate points are projected onto a plurality of second coordinate axes, respectively, and SIN (θ) at the candidate coordinate points corresponding to the projected axis coordinate points. SIN value integration unit for integrating the SIN integration value, and the COS integration value and SIN integration value of the axis coordinate points corresponding to the candidate coordinate points in the first coordinate axis and the second coordinate axis are added to obtain a total value. An integrated value addition unit to be obtained;
A recognition target object determination unit that determines that a recognition target object that matches the registered image is arranged with the candidate coordinate point as a reference point when the total value exceeds a preset threshold value; And
According to the object recognition method of the present invention, the registered image data generation unit uses a plurality of first feature points extracted from the registered image, a first normal vector at the first feature points, and a first feature point. A process of storing feature point data including a displacement vector to a reference point of the registered image in a feature point data storage unit, and a second feature point in which the feature point extraction unit constitutes a feature of the recognition target object in the input image , A process in which the normal vector calculation unit obtains a second normal vector at the second feature point, and an evaluation value calculation unit calculates the first registered image for each of the second feature points. A process of obtaining COS (θ) and SIN (θ) values for each first feature point by matching all of the feature points of the first and second normal vectors with an angle difference θ between the first normal vector and the second normal vector; The candidate coordinate point calculation unit rotates the displacement vector from the angle difference. A process for obtaining candidate coordinate points that are candidates for the reference point from the rotated displacement vector and the coordinates of the second feature point, and the COS value integrating unit respectively projects the candidate coordinate points onto a plurality of coordinate axes, A process of integrating COS (θ) at the candidate coordinate points as COS integrated values corresponding to the projected axis coordinate points of each coordinate axis, and a SIN value integrating unit respectively adding the candidate coordinate points to the plurality of coordinate axes. A process of projecting and integrating SIN (θ) at the candidate coordinate points as SIN integrated values corresponding to the projected coordinate points of the coordinate axes, and an integrated value adding unit for each coordinate coordinate point on each of the coordinate axes In the combination, the process of obtaining the total value by adding the COS integrated value and the SIN integrated value at each axis coordinate point, and the recognition target object determination unit, when the total value exceeds a preset threshold, the registration One with the image Recognition target object that is characterized by having a process determining as being arranged the candidate coordinate point as the reference point.
The program according to the present invention includes a plurality of first feature points extracted from a registered image by a registered image data generation unit, a first normal vector at the first feature points, and the registration from the first feature points. Processing for storing feature point data consisting of a displacement vector to a reference point of an image in a feature point data storage unit, and a feature point extraction unit extracting a second feature point that constitutes a feature of the recognition target object in the input image A process for calculating a second normal vector at the second feature point, and an evaluation value calculator for the first feature of the registered image for each of the second feature points. Processing for associating all of the points and obtaining COS (θ) and SIN (θ) values for each first feature point by the angle difference θ between the first normal vector and the second normal vector, and candidate coordinates The point calculator rotates the displacement vector from the angle difference. , A process for obtaining candidate coordinate points that are candidates for the reference point from the rotated displacement vector and the coordinates of the second feature point, and a COS value integrating unit that projects the candidate coordinate points onto a plurality of coordinate axes, Corresponding to the coordinate point of each coordinate axis, a process of integrating COS (θ) at the candidate coordinate point as a COS integrated value, and a SIN value integrating unit respectively projecting the candidate coordinate point onto the plurality of coordinate axes Then, corresponding to the projected axis coordinate point of each coordinate axis, a process of integrating SIN (θ) at the candidate coordinate point as a SIN integrated value, and an integrated value adding unit, for each axis coordinate point on each of the coordinate axes, In the combination, a process for obtaining the total value by adding the COS integrated value and the SIN integrated value at each axis coordinate point, and the recognition target object determination unit, when the total value exceeds a preset threshold, the registered image Matches That the recognition target object is a program for causing a computer to function as the object recognition device having and a process for determining is arranged the candidate coordinate point as the reference point.
According to the present invention, instead of voting for the COS (θ) and SIN (θ) voting space for each candidate coordinate point that is a candidate for the reference point of the arrangement in the input image of the recognition target object, the candidate coordinate point is represented as a coordinate axis. A memory for storing the integrated value in order to project COS (θ) and SIN (θ) for each projected axial coordinate point and add the accumulated results at the candidate coordinate points corresponding to each axial coordinate point. By changing the part from a two-dimensional array to a one-dimensional array, the memory capacity can be reduced compared to the conventional one. As a result, the cache memory can be used effectively and the recognition process can be speeded up. Can do.

本発明の物体認識装置は、前記座標軸が2次元平面におけるx軸及びy軸であることを特徴とする。
これにより、軸座標点に対応するCOS(θ)及びSIN(θ)各々の積算値を記憶する記憶部の1次元配列が、x軸方向に2本及びy軸方向に2本の計4本で済むため、2次元座標の各座標点毎に記憶部が必要な従来例に比較すると、メモリー容量を削減することができる。
In the object recognition apparatus of the present invention, the coordinate axes are an x-axis and a y-axis in a two-dimensional plane.
As a result, a total of four one-dimensional arrays of storage units for storing the integrated values of COS (θ) and SIN (θ) corresponding to the axis coordinate points, two in the x-axis direction and two in the y-axis direction. Therefore, the memory capacity can be reduced as compared with the conventional example in which a storage unit is required for each coordinate point of the two-dimensional coordinates.

本発明の物体認識装置は、前記座標軸が2次元平面におけるx軸及びy軸と、x軸の座標点及びy軸の座標点で表される直線からなる直線軸との3軸であることを特徴とする。
これにより、軸座標点に対応するCOS(θ)及びSIN(θ)各々の積算値を記憶する記憶部の1次元配列が、x軸方向に2本、y軸方向に2本、直線軸方向に2本の計6本で済むため、2次元座標の各座標点毎に記憶部が必要な従来例に比較すると、メモリー容量を削減することができる。
また、複数の基準点が存在する場合、アーチファクトが発生する可能性があるが、2次元の座標点を投影する軸を3本とすることにより、2本の場合に比較して位置識別能力を向上させることができ、上記アーチファクトを排除することができ、物体認識の処理効率を向上させることができる。
In the object recognition apparatus of the present invention, the coordinate axes are three axes, that is, an x-axis and a y-axis on a two-dimensional plane, and a linear axis composed of a straight line represented by an x-axis coordinate point and a y-axis coordinate point. Features.
As a result, the one-dimensional array of storage units for storing the integrated values of COS (θ) and SIN (θ) corresponding to the axis coordinate points is two in the x-axis direction, two in the y-axis direction, and the linear axis direction. Therefore, the memory capacity can be reduced as compared with the conventional example in which a storage unit is required for each coordinate point of two-dimensional coordinates.
In addition, when there are a plurality of reference points, an artifact may occur. However, by using three axes for projecting two-dimensional coordinate points, the position identification ability is improved compared to the case of two. It is possible to improve the above-described artifacts, to eliminate the artifacts, and to improve the object recognition processing efficiency.

本発明の物体認識装置は、前記積算値加算部が、各座標軸の軸座標点におけるCOS積算値及びSIN積算値を2乗して加算し、前記総合値を求めることを特徴とする。
複数の軸の軸座標に対応した積算値を加算するため、ピーク値検出の際のS/N比を向上させて、基準点検出の精度を向上させることができる。
The object recognition apparatus according to the present invention is characterized in that the integrated value adding unit squares and adds the COS integrated value and the SIN integrated value at the axial coordinate point of each coordinate axis to obtain the total value.
Since the integrated values corresponding to the axis coordinates of a plurality of axes are added, the S / N ratio at the time of peak value detection can be improved, and the accuracy of reference point detection can be improved.

本発明の物体認識装置は、前記積算値加算部が、各座標軸の軸座標点におけるCOS積算値の加算値を2乗した数値と、SIN積算値の加算値を2乗した数値とを加算し、前記総合値を求めることを特徴とする。
複数の軸の軸座標に対応した積算値を加算するため、ピーク値検出の際のS/N比を向上させて、基準点検出の精度を向上させることができる。
また、ノイズが存在する場合に積算値を平均化するため、上述したCOS積算値及びSIN積算値を2乗して加算する場合に比較して、よりS/N比を向上させることが可能となる。
In the object recognition device of the present invention, the integrated value adding unit adds a numerical value obtained by squaring the added value of the COS integrated value at the axis coordinate point of each coordinate axis and a numerical value obtained by squaring the added value of the SIN integrated value. The total value is obtained.
Since the integrated values corresponding to the axis coordinates of a plurality of axes are added, the S / N ratio at the time of peak value detection can be improved, and the accuracy of reference point detection can be improved.
Further, since the integrated value is averaged when noise is present, it is possible to further improve the S / N ratio compared to the case where the above-described COS integrated value and SIN integrated value are squared and added. Become.

この発明の第1実施形態及び第2の実施形態による物体認識装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the object recognition apparatus by 1st Embodiment and 2nd Embodiment of this invention. 入力画像と、この入力画像のx軸とy軸とに設けられた積算記憶部列との対応を示し、第1の実施形態の動作を説明する概念図である。It is a conceptual diagram which shows a response | compatibility with an input image and the accumulation | storage memory | storage part row | line | column provided in the x-axis and y-axis of this input image, and demonstrates operation | movement of 1st Embodiment. x軸のx軸COS値積算記憶部、x軸SIN値積算記憶部、y軸のy軸COS値積算記憶部、y軸SIN値積算記憶部の配列構成を示す概念図である。FIG. 4 is a conceptual diagram showing an arrangement configuration of an x-axis x-axis COS value accumulation storage unit, an x-axis SIN value accumulation storage unit, a y-axis y-axis COS value accumulation storage unit, and a y-axis SIN value accumulation storage unit. 第1の実施形態による物体認識装置の物体認識の動作例を示すフローチャートである。It is a flowchart which shows the operation example of the object recognition of the object recognition apparatus by 1st Embodiment. 第1の実施形態による物体認識の動作を説明する概念図である。It is a conceptual diagram explaining the operation | movement of the object recognition by 1st Embodiment. 第1の実施形態による物体認識の動作を説明する概念図である。It is a conceptual diagram explaining the operation | movement of the object recognition by 1st Embodiment. 第2の実施形態による物体認識の動作を説明する概念図である。It is a conceptual diagram explaining the operation | movement of the object recognition by 2nd Embodiment. x軸のx軸COS値積算記憶部、x軸SIN値積算記憶部、y軸のy軸COS値積算記憶部、y軸SIN値積算記憶部、A軸のA軸COS値積算記憶部、A軸SIN値積算記憶部の配列構成を示す概念図である。x-axis x-axis COS value integration storage unit, x-axis SIN value integration storage unit, y-axis y-axis COS value integration storage unit, y-axis SIN value integration storage unit, A-axis A-axis COS value integration storage unit, A It is a conceptual diagram which shows the arrangement | sequence structure of an axis | shaft SIN value integrating | accumulating memory | storage part. 登録画像の第1の特徴点の抽出と、この第1の特徴点における特徴点データの抽出の動作を説明するフローチャートである。It is a flowchart explaining operation | movement of extraction of the 1st feature point of a registration image, and extraction of the feature point data in this 1st feature point. 特徴点データの抽出を説明する概念図である。It is a conceptual diagram explaining extraction of feature point data. 特徴点データが記憶されるテーブル構成を示す概念図である。It is a conceptual diagram which shows the table structure in which feature point data are memorize | stored. 非特許文献1の一般化ハフ変換を用いた画像認識処理の動作を示すフローチャートである。10 is a flowchart showing an operation of image recognition processing using generalized Hough transform of Non-Patent Document 1. 図12における基準点の投票処理を説明する概念図である。FIG. 13 is a conceptual diagram illustrating reference point voting processing in FIG. 12. 非特許文献1の一般化ハフ変換における画像認識の際に必要となるメモリー容量を説明する概念図である。It is a conceptual diagram explaining the memory capacity required in the case of the image recognition in the generalized Hough conversion of a nonpatent literature 1. 特許文献1における画像認識処理の動作を説明するフローチャートである。10 is a flowchart for explaining the operation of image recognition processing in Patent Document 1. 特許文献1におけるCOS値及びSIN値の積算処理を説明する概念図である。It is a conceptual diagram explaining the integration | accumulation process of the COS value and SIN value in patent document 1. FIG.

<第1の実施形態>
以下、図面を参照して、本発明の第1の実施形態について説明する。図1は、この発明の第1の実施形態による物体認識装置の構成例を示す概略ブロック図である。
この図において、本実施形態による物体認識装置は、登録画像データ生成部1、特徴点データ記憶部2及び物体認識部3とを有している。
登録画像データ生成部1は、登録画像より抽出した特徴点を第1の特徴点の配列として抽出し、登録画像の基準点を設定し、第1特徴点から基準点への変位ベクトルを求め、第1特徴点における第1の単位法線ベクトルを求めて、第1の特徴点の座標、変位ベクトル及び第1の単位法線ベクトルを第1の特徴点データとして、各登録画像の第1の特徴点の識別情報である特徴点番号に対応させ、第1の特徴点毎に特徴点データ記憶部2へ書き込んで記憶させる。上記基準点は、登録画像及び参照物体の2次元座標への配置位置を示す配置基準点である。また、上記基準点は、登録画像が配置された2次元座標上の任意の点で良く、例えば、登録画像の重心を基準点としても良い。
特徴点データ記憶部2は、図11に示すテーブル構成により、第1の特徴点の特徴点番号に対応して各登録画像の第1の特徴点データが記憶されている。
物体認識部3は、入力画像における認識対象物体より抽出した特徴点を第2の特徴点の配列として求め、第1特徴点における第1の単位法線ベクトルを求め、特徴点データ記憶部2から登録画像の第1の特徴点データを順次読み出し、この第2の特徴点に順次第1の特徴点を対応させて、認識対象物体と登録画像との類似を判定していく。
<First Embodiment>
Hereinafter, a first embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a schematic block diagram showing a configuration example of an object recognition apparatus according to the first embodiment of the present invention.
In this figure, the object recognition apparatus according to the present embodiment has a registered image data generation unit 1, a feature point data storage unit 2, and an object recognition unit 3.
The registered image data generation unit 1 extracts feature points extracted from the registered image as an array of first feature points, sets a reference point of the registered image, obtains a displacement vector from the first feature point to the reference point, The first unit normal vector at the first feature point is obtained, and the coordinates of the first feature point, the displacement vector, and the first unit normal vector are used as the first feature point data. Corresponding to the feature point number which is the identification information of the feature point, each first feature point is written and stored in the feature point data storage unit 2. The reference point is an arrangement reference point indicating the arrangement position of the registered image and the reference object on the two-dimensional coordinates. The reference point may be an arbitrary point on the two-dimensional coordinates where the registered image is arranged. For example, the center of gravity of the registered image may be used as the reference point.
The feature point data storage unit 2 stores the first feature point data of each registered image corresponding to the feature point number of the first feature point according to the table configuration shown in FIG.
The object recognizing unit 3 obtains feature points extracted from the recognition target object in the input image as an array of second feature points, obtains a first unit normal vector at the first feature points, and extracts from the feature point data storage unit 2 The first feature point data of the registered image is sequentially read out, the first feature point is sequentially associated with the second feature point, and the similarity between the recognition target object and the registered image is determined.

上記登録画像データ生成部1は、登録画像取得部11、特徴点抽出部12、特徴点2値化部13及び法線ベクトル抽出部14を有している。この登録画像データ生成部1の動作は、特許文献1にて説明した図9のフローチャートの動作と同様である。
登録画像取得部11は、撮像装置あるいはCADから、後に認識対象物体を認識するために用いる登録画像の画像データを入力する。
特徴点抽出部12は、上記登録画像の第1の特徴点(ピクセル単位)を、非特許文献1における特徴抽出にて説明した2次微分(ラプラシアン)法あるいはモラベックの方法などを用いて抽出する。
The registered image data generation unit 1 includes a registered image acquisition unit 11, a feature point extraction unit 12, a feature point binarization unit 13, and a normal vector extraction unit 14. The operation of the registered image data generation unit 1 is the same as the operation of the flowchart of FIG. 9 described in Patent Document 1.
The registered image acquisition unit 11 inputs image data of a registered image used for recognizing a recognition target object later from the imaging device or CAD.
The feature point extraction unit 12 extracts the first feature point (pixel unit) of the registered image using the second-order differential (Laplacian) method or the Morabek method described in the feature extraction in Non-Patent Document 1. .

特徴点2値化部13は、登録画像の第1の特徴点のピクセルと、第1の特徴点以外のピクセルとの階調度による2値化を行う。例えば、特徴点2値化部13は、予め設定した階調度の閾値により、第1の特徴点のピクセルの階調度を「1」、第1の特徴点以外のピクセルの階調度を「0」とする。ここで、予め設定した閾値は、一般化ハフ変換法にて説明した2値化処理を行う閾値を用いる。   The feature point binarization unit 13 performs binarization based on the gradation of pixels of the first feature point of the registered image and pixels other than the first feature point. For example, the feature point binarization unit 13 sets the gradation level of the pixel of the first feature point to “1” and the gradation level of the pixels other than the first feature point to “0” based on a threshold value of the gradation level set in advance. And Here, as the preset threshold value, a threshold value for performing the binarization processing described in the generalized Hough transform method is used.

法線ベクトル抽出部14は、得られた個々の第1の特徴点に対応する、元の登録画像のピクセルの階調度において、縦方向及び横方向の微分処理を行い、階調度変化に基づく横方向のx軸成分及び縦方向のy軸成分をベクトルとする法線ベクトルを求める。この微分処理は、プレウィット(Prewitt)フィルタあるいはソーベル(Sobel)フィルタなどの1次微分フィルタにより行う。注目した特徴点のピクセルを中心とした上下左右の9つのピクセルの階調度に対して、フィルタ係数を乗算して結果を合計し、x軸成分あるいはy軸成分を求める。
また、法線ベクトル抽出部14は、得られたx軸成分及びy軸成分からなる法線ベクトルの長さが1となるように正規化し、第1の単位法線ベクトルとして出力する。
また、法線ベクトル抽出部14は、各第1の特徴点から基準点への変位ベクトルを抽出し、第1の特徴点の座標、変位ベクトル及び第1の単位法線ベクトルを第1の特徴点データとして、特徴点データ記憶部2へ書き込んで記憶させる。
The normal vector extraction unit 14 performs vertical and horizontal differential processing on the gradation of the pixels of the original registered image corresponding to each obtained first feature point, and performs horizontal processing based on the gradation change. A normal vector having the x-axis component in the direction and the y-axis component in the vertical direction as vectors is obtained. This differentiation process is performed by a first-order differential filter such as a Prewitt filter or a Sobel filter. Multiplying the filter coefficients by the gradation levels of nine pixels (up, down, left, and right) centered on the pixel of the feature point of interest, the results are summed to obtain an x-axis component or a y-axis component.
In addition, the normal vector extraction unit 14 normalizes the obtained normal vector composed of the x-axis component and the y-axis component so that the length becomes 1, and outputs the normal vector as a first unit normal vector.
Further, the normal vector extraction unit 14 extracts a displacement vector from each first feature point to the reference point, and uses the coordinates of the first feature point, the displacement vector, and the first unit normal vector as the first feature. As point data, it is written and stored in the feature point data storage unit 2.

次に、物体認識部3は、入力画像取得部31、特徴点抽出部32、特徴点2値化部33、法線ベクトル抽出部34、評価値算出部35、候補座標点演算部36、COS値積算部37、SIN値積算部38、積算値加算部39、認識対象物体判定部40を有している。
入力画像取得部31は、カメラなどの撮像装置から、認識対象物体を含んだ入力画像の画像データを入力する。
特徴点抽出部32は、上記入力画像における認識対象物体の第2の特徴点(ピクセル単位)の座標点を、上記特徴点抽出部12と同様の手法を用いて抽出する。
Next, the object recognition unit 3 includes an input image acquisition unit 31, a feature point extraction unit 32, a feature point binarization unit 33, a normal vector extraction unit 34, an evaluation value calculation unit 35, a candidate coordinate point calculation unit 36, a COS. A value integration unit 37, a SIN value integration unit 38, an integration value addition unit 39, and a recognition target object determination unit 40 are provided.
The input image acquisition unit 31 inputs image data of an input image including a recognition target object from an imaging device such as a camera.
The feature point extraction unit 32 extracts the coordinate point of the second feature point (pixel unit) of the recognition target object in the input image using the same method as the feature point extraction unit 12.

特徴点2値化部33は、認識対象物体の第2の特徴点のピクセルと、第2の特徴点以外のピクセルとの階調度による2値化を行う。例えば、特徴点2値化部33は、予め設定した階調度の閾値により、第2の特徴点のピクセルの階調度を「1」、第2の特徴点以外のピクセルの階調度を「0」とする。ここで、予め設定した閾値は、特徴点2値化部13と同様の数値を用いる。
法線ベクトル抽出部34は、法線ベクトル抽出部14と同様の手法を用いて、得られた個々の第2の特徴点に対応する、横方向のx軸成分及び縦方向のy軸成分をベクトルとする法線ベクトルを求める。
The feature point binarization unit 33 performs binarization based on the gradation of pixels of the second feature point of the recognition target object and pixels other than the second feature point. For example, the feature point binarization unit 33 sets the gradation levels of the pixels of the second feature point to “1” and the gradation levels of the pixels other than the second feature point to “0” based on a threshold value of the gradation level set in advance. And Here, a numerical value similar to that of the feature point binarization unit 13 is used as the preset threshold value.
The normal vector extraction unit 34 uses the same method as the normal vector extraction unit 14 to calculate the horizontal x-axis component and the vertical y-axis component corresponding to the obtained second feature points. Find the normal vector as a vector.

評価値算出部35は、第1の特徴点に第2の特徴点とを対応させ、第1の特徴点の第1の単位法線ベクトル(nx,ny)と第2の特徴点の第2の単位法線ベクトル(Nx,Ny)との角度差(回転角)θに基づく、COS(θ)とSIN(θ)とを、評価値としてすでに説明した(4)式により求める。
候補座標点演算部36は、第2の法線ベクトルに対して、第1の法線ベクトルの方向が同様となるように、(5)式を用いて第1の法線ベクトルを第1の座標点を中心に回転させる。
そして、候補座標点演算部36は、回転させた変位ベクトルと、第2の特徴点の座標(Px,Py)とから、(6)式を用いて認識対象物体の基準点の候補位置(Rx,Ry)を求める。
The evaluation value calculation unit 35 associates the first feature point with the second feature point, the first unit normal vector (nx, ny) of the first feature point, and the second feature point second. COS (θ) and SIN (θ) based on the angular difference (rotation angle) θ with respect to the unit normal vector (Nx, Ny) are determined as evaluation values by the equation (4) already described.
The candidate coordinate point calculation unit 36 uses the equation (5) to set the first normal vector to the first normal vector so that the direction of the first normal vector is the same as the second normal vector. Rotate around a coordinate point.
Then, the candidate coordinate point calculation unit 36 uses the rotated displacement vector and the coordinates (Px, Py) of the second feature point, using the equation (6), the candidate position (Rx) of the reference point of the recognition target object. , Ry).

COS値積算部37は、図2に示すように、入力画像のx軸方向のピクセル数(画像幅)に対応した数のx軸COS値積算記憶部(ΣCOS(θ))と、入力画像のy軸方向のピクセル数(画像幅)に対応した数のy軸COS値積算記憶部(ΣCOS(θ))を有している。すなわち、各ピクセルに対応した軸座標毎に、x軸COS値積算記憶部、y軸COS値積算記憶部を有している。図2は、候補位置(Rx,Ry)と、この候補位置(Rx,Ry)が投影された軸座標との対応を示す概念図である。
また、COS値積算部37は、図3に示すように、COS(θ)値が演算された基準点の候補位置(Rx,Ry)をx軸に投影し、この投影された軸座標点(Rx)に対応するx軸COS値積算記憶部に、上記COS(θ)を積算する(ΣCOS(θ))。また、COS値積算部37は、COS(θ)値が演算された基準点の候補位置(Rx,Ry)をy軸に投影し、この投影された軸座標点(Ry)に対応するy軸COS値積算記憶部に、上記COS(θ)を積算する(ΣCOS(θ))。すなわち、図3に示すように、x軸に対応して2本、y軸に対して2本の、計4本の1次元の積算値記憶部の配列が設けられている。
As shown in FIG. 2, the COS value integration unit 37 includes a number of x-axis COS value integration storage units (ΣCOS (θ)) corresponding to the number of pixels (image width) in the x-axis direction of the input image, and the input image. The number of y-axis COS value integration storage units (ΣCOS (θ)) corresponding to the number of pixels in the y-axis direction (image width) is provided. That is, for each axis coordinate corresponding to each pixel, an x-axis COS value integration storage unit and a y-axis COS value integration storage unit are provided. FIG. 2 is a conceptual diagram showing the correspondence between the candidate position (Rx, Ry) and the axis coordinates on which the candidate position (Rx, Ry) is projected.
Further, as shown in FIG. 3, the COS value integrating unit 37 projects the reference point candidate position (Rx, Ry) for which the COS (θ) value is calculated on the x-axis, and this projected axis coordinate point ( The COS (θ) is integrated (ΣCOS (θ)) in the x-axis COS value integration storage unit corresponding to Rx). Also, the COS value integrating unit 37 projects the reference point candidate position (Rx, Ry) from which the COS (θ) value is calculated onto the y axis, and the y axis corresponding to the projected axis coordinate point (Ry). The COS value accumulation storage unit accumulates the COS (θ) (ΣCOS (θ)). That is, as shown in FIG. 3, a total of four one-dimensional integrated value storage units are provided, two corresponding to the x-axis and two corresponding to the y-axis.

SIN値積算部38は、図2に示すように、入力画像のx軸方向のピクセル数(画像幅)に対応した数のx軸SIN値積算記憶部(ΣSIN(θ))と、入力画像のy軸方向のピクセル数(画像幅)に対応した数のy軸SIN値積算記憶部(ΣSIN(θ))を有している。すなわち、各ピクセルに対応した軸座標毎に、x軸SIN値積算記憶部、y軸SIN値積算記憶部を有している。図2は、候補位置(Rx,Ry)と、この候補位置(Rx,Ry)が投影された軸座標との対応を示す概念図である。
また、SIN値積算部38は、図3に示すように、SIN(θ)値が演算された基準点の候補位置(Rx,Ry)をx軸に投影し、この投影された軸座標点(Rx)に対応するx軸SIN値積算記憶部に、上記SIN(θ)を積算する(ΣSIN(θ))。また、SIN値積算部38は、SIN(θ)値が演算された基準点の候補位置(Rx,Ry)をy軸に投影し、この投影された軸座標点(Ry)に対応するy軸SIN値積算記憶部に、上記SIN(θ)を積算する(ΣSIN(θ))。
As shown in FIG. 2, the SIN value integration unit 38 includes a number of x-axis SIN value integration storage units (ΣSIN (θ)) corresponding to the number of pixels in the x-axis direction (image width) of the input image, and the input image. The number of y-axis SIN value integration storage units (ΣSIN (θ)) corresponding to the number of pixels in the y-axis direction (image width) is provided. That is, for each axis coordinate corresponding to each pixel, an x-axis SIN value integration storage unit and a y-axis SIN value integration storage unit are provided. FIG. 2 is a conceptual diagram showing the correspondence between the candidate position (Rx, Ry) and the axis coordinates on which the candidate position (Rx, Ry) is projected.
Further, as shown in FIG. 3, the SIN value integrating unit 38 projects the reference point candidate position (Rx, Ry) for which the SIN (θ) value is calculated on the x-axis, and this projected axis coordinate point ( The SIN (θ) is integrated (ΣSIN (θ)) in the x-axis SIN value integration storage unit corresponding to Rx). Also, the SIN value integrating unit 38 projects the reference point candidate position (Rx, Ry) for which the SIN (θ) value is calculated on the y axis, and the y axis corresponding to the projected axis coordinate point (Ry). The SIN (θ) is integrated into the SIN value integration storage unit (ΣSIN (θ)).

積算値加算部39は、x軸における同一の軸座標におけるx軸COS値積算記憶部に記憶されたCOS積算値(ΣCOS(θ))の二乗と、x軸SIN値積算記憶部に記憶されたSIN積算値(ΣSIN(θ))の二乗とを加算し、x軸の各軸座標毎のx軸総合値を算出する。
また、積算値加算部39は、y軸における同一の軸座標におけるy軸COS値積算記憶部に記憶されたCOS積算値(ΣCOS(θ))の二乗と、y軸SIN値積算記憶部に記憶されたSIN積算値(ΣSIN(θ))の二乗とを加算し、y軸の各軸座標毎のy軸総合値を算出する。
また、積算値加算部39は、x軸総合値とy軸総合値とを各軸座標毎にそれぞれ加算し、2次元座標の各座標における総合値を算出する。
すなわち、軸座標Rxのx軸総合値と、軸座標Ryのy軸総合値とを加算し、2次元座標の(Rx,Ry)の総合値の算出処理を、x軸のピクセルに対応した軸座標と、y軸のピクセルに対応した軸座標の組合せ(2次元平面に対する逆投影の処理)の全てに行い、入力画像における全てのピクセルの2次元座標の座標点各々における総合値を算出する。
ここで得られる総合値は、以下の式により求められる。
総合値=(x軸の(ΣCOS(θ)))+(x軸の(ΣSIN(θ))
+(y軸の(ΣCOS(θ)))+(y軸の(ΣSIN(θ))
The integrated value adder 39 stores the square of the COS integrated value (ΣCOS (θ)) stored in the x-axis COS value integrated storage unit at the same axis coordinate on the x-axis and the x-axis SIN value integrated storage unit. The square of the SIN integrated value (ΣSIN (θ)) is added to calculate an x-axis total value for each axis coordinate of the x-axis.
Further, the integrated value adding unit 39 stores the square of the COS integrated value (ΣCOS (θ)) stored in the y-axis COS value integrated storage unit at the same axis coordinate on the y-axis and the y-axis SIN value integrated storage unit. The sum of squared SIN integrated values (ΣSIN (θ)) is added to calculate a y-axis total value for each axis coordinate of the y-axis.
Further, the integrated value adding unit 39 adds the x-axis total value and the y-axis total value for each axis coordinate, and calculates the total value at each coordinate of the two-dimensional coordinates.
That is, by adding the x-axis total value of the axis coordinate Rx and the y-axis total value of the axis coordinate Ry, the calculation process of the total value of (Rx, Ry) of the two-dimensional coordinates is performed on the axis corresponding to the x-axis pixel. The total value at each coordinate point of the two-dimensional coordinates of all the pixels in the input image is calculated by performing all the combinations of the coordinates and the axis coordinates corresponding to the y-axis pixels (processing of back projection on the two-dimensional plane).
The total value obtained here is obtained by the following equation.
Total value = (x-axis (ΣCOS (θ)) 2 ) + (x-axis (ΣSIN (θ)) 2 )
+ ((Y-axis (ΣCOS (θ)) 2 ) + (y-axis (ΣSIN (θ)) 2 )

認識対象物体判定部40は、上記総合値が予め設定したピーク値を超える座標点を、登録画像が配置された基準点として抽出し、登録画像に一致する認識対象物体の配置された基準点として出力する。
また、認識対象物体判定部40は、基準点に積算されたCOS(θ)の積算値とSIN(θ)の積算値との比、すなわちtan−1(ΣSIN(θ)/ΣCOS(θ))により回転角θを求めることができる。ここで用いるΣSIN(θ)及びΣCOS(θ)は、例えば、基準点がx軸に投影された位置の軸座標に対応するx軸COS値積算記憶部及びx軸SIN値積算記憶部各々に記憶されているCOS積算値及びSIN積算値である。
このピーク値は、実際に実験により測定し、認識対象物体が登録画像と一致したとき、基準点の総合値の値を統計的に取る値から設定する。
また、物体認識部3に接続されている認識詳細検出部41は、認識対象物体の位置を詳細に知る必要がある場合、上記認識対象物体判定部40が抽出した基準点及び回転角θを、より認識対象物体の配置された位置を詳細に抽出する処理を行う。そのため、詳細な認識対象物体の配置位置の抽出の必要がなければ、詳細検出部41を設ける必要はない。
The recognition target object determination unit 40 extracts a coordinate point where the total value exceeds a preset peak value as a reference point on which the registered image is arranged, and as a reference point on which the recognition target object that matches the registered image is arranged. Output.
The ratio of the integrated value of the integrated value and SIN (theta) of the recognition target object determination unit 40 has been credited to the reference point COS (theta), i.e. tan -1 (ΣSIN (θ) / ΣCOS (θ)) Thus, the rotation angle θ can be obtained. ΣSIN (θ) and ΣCOS (θ) used here are stored in, for example, the x-axis COS value integration storage unit and the x-axis SIN value integration storage unit corresponding to the axial coordinates of the position where the reference point is projected on the x-axis. COS integrated value and SIN integrated value.
This peak value is actually measured by experiment, and is set from a value that statistically takes the value of the total value of the reference points when the recognition target object matches the registered image.
Further, when it is necessary to know in detail the position of the recognition target object, the recognition detail detection unit 41 connected to the object recognition unit 3 uses the reference point and the rotation angle θ extracted by the recognition target object determination unit 40 as follows. A process of extracting in detail the position where the recognition target object is arranged is performed. Therefore, if it is not necessary to extract the detailed arrangement position of the recognition target object, it is not necessary to provide the detail detection unit 41.

また、上述した積算値加算部39は以下のように構成してもよい。
積算値加算部39は、x軸における各軸座標(Rx)のx軸COS値積算記憶部のCOS積算値と、y軸における各軸座標(Ry)のy軸COS値積算記憶部のCOS積算値とを加算し、2次元座標(Rx,Ry)におけるCOS総合値を、x軸の軸座標とy軸の軸座標との全ての組合せに対して、2次元平面に対する逆投影を行い求める。
同様に、積算値加算部39は、x軸における各軸座標(Rx)のx軸SIN値積算記憶部のSIN積算値と、y軸における各軸座標(Ry)のy軸SIN値積算記憶部のSIN積算値とを加算し、2次元座標(Rx,Ry)におけるSIN総合値を、x軸の軸座標とy軸の軸座標との全ての組合せに対して、2次元平面に対する逆投影を行い求める。
また、積算値加算部39は、COS総合値の2乗した値とSIN総合値の2乗した値とを対応する2次元座標(Rx,Ry)にて加算し、2次元座標の各座標における総合値を算出する。
ここで得られる総合値は、以下の式により求められる。
総合値=((x軸の(ΣCOS(θ)))+(y軸の(ΣCOS(θ))))
+((x軸の(ΣSIN(θ)))+(y軸の(ΣSIN(θ))))
Further, the integrated value adding unit 39 described above may be configured as follows.
The integrated value adding unit 39 is a COS integrated value of the x-axis COS value integrated storage unit of each axis coordinate (Rx) in the x-axis and a COS integrated of the y-axis COS value integrated storage unit of each axis coordinate (Ry) in the y-axis. The COS total value in the two-dimensional coordinates (Rx, Ry) is obtained by performing back projection on the two-dimensional plane for all combinations of the x-axis coordinate and the y-axis coordinate.
Similarly, the integrated value adding unit 39 includes the SIN integrated value of the x-axis SIN value integrated storage unit for each axis coordinate (Rx) on the x-axis and the y-axis SIN value integrated storage unit for each axis coordinate (Ry) on the y-axis. The total SIN value of the two dimensional coordinates (Rx, Ry) is added to the SIN total value, and the back projection onto the two-dimensional plane is performed for all combinations of the x-axis coordinate and the y-axis coordinate. Ask and do.
Further, the integrated value adding unit 39 adds the squared value of the COS total value and the squared value of the SIN total value in the corresponding two-dimensional coordinates (Rx, Ry), and adds the value at each coordinate of the two-dimensional coordinates. Calculate the total value.
The total value obtained here is obtained by the following equation.
Total value = ((x-axis (ΣCOS (θ))) + (y-axis (ΣCOS (θ)))) 2
+ ((X-axis (ΣSIN (θ))) + (y-axis (ΣSIN (θ)))) 2

次に、本実施形態における認識対象物体と登録画像との認識処理を図4を用いて説明する。図4は、上記認識処理の動作例を説明するフローチャートである。
入力画像取得部31は、図示しない撮像装置から入力画像を入力し、例えばピクセルで表現された画像データとして特徴点抽出部32及び法線ベクトル抽出部34へ出力する(ステップS51)。
入力画像が入力されると、特徴点抽出部12は、入力画像における認識対象物体の第2の特徴点を抽出し、抽出した入力画像(第2の特徴点とされた画像)を特徴点2値化部33へ出力する(ステップS52)。
次に、特徴点2値化部33は、入力される入力画像の各ピクセルに対し、第2の特徴点のピクセルと、それ以外のピクセルとに分離する階調度の2値化を行い、内部の記憶部に記憶する(ステップS53)。
Next, the recognition process between the recognition target object and the registered image in this embodiment will be described with reference to FIG. FIG. 4 is a flowchart for explaining an operation example of the recognition processing.
The input image acquisition unit 31 inputs an input image from an imaging device (not shown), and outputs it to the feature point extraction unit 32 and the normal vector extraction unit 34 as image data expressed by pixels, for example (step S51).
When the input image is input, the feature point extraction unit 12 extracts the second feature point of the recognition target object in the input image, and uses the extracted input image (the image made the second feature point) as the feature point 2. It outputs to the value conversion part 33 (step S52).
Next, the feature point binarization unit 33 binarizes each pixel of the input image to be input into a second feature point pixel and a pixel other than the second feature point. (Step S53).

そして、COS値積算部37は、x軸COS値積算記憶部とy軸COS値積算記憶部とを初期化、すなわち積算値を「0」とする。
同様に、SIN値積算部38は、x軸SIN値積算記憶部とy軸SIN値積算記憶部とを初期化、すなわち積算値を「0」とする(ステップS54)。
次に、評価値算出部35は、入力画像の全てのピクセルの2値化データに対して、特徴点における評価値としてのCOS値及びSIN値の算出を行ったか否かの判定を行い(ステップS55)、全てのピクセルの2値化データに対し、特徴点における評価値の算出を行った場合に認識処理を終了し、一方、特徴点における評価値の算出を行なっていないピクセルが存在する場合、処理をステップS56へ出力する。
ここで、特徴点における評価値の算出を行っていないピクセルの検出は、たとえば、y軸の軸座標を固定してx軸の軸座標に対応したピクセルを順番に処理し、固定したy軸の軸座標に対応するx軸の軸座標における処理が終了すると、y軸の軸座標を変化させて、x軸の軸座標に対応したピクセルを順番に処理するようにする。これにより、x軸及びy軸におけるピクセルの数により、上述したx軸の軸座標とy軸の軸座標との組合せのループを組むことにより、終了時点を検出することができる。
The COS value integration unit 37 initializes the x-axis COS value integration storage unit and the y-axis COS value integration storage unit, that is, sets the integration value to “0”.
Similarly, the SIN value integration unit 38 initializes the x-axis SIN value integration storage unit and the y-axis SIN value integration storage unit, that is, sets the integration value to “0” (step S54).
Next, the evaluation value calculation unit 35 determines whether or not the COS value and the SIN value as evaluation values at the feature points have been calculated for the binarized data of all pixels of the input image (step S55) When the evaluation values at the feature points are calculated for the binarized data of all the pixels, the recognition process is terminated, while there are pixels for which the evaluation values at the feature points are not calculated. The process is output to step S56.
Here, the detection of the pixel for which the evaluation value is not calculated at the feature point is performed by, for example, fixing the y-axis axis coordinates and sequentially processing the pixels corresponding to the x-axis axis coordinates. When the processing on the x-axis axis coordinates corresponding to the axis coordinates is completed, the y-axis axis coordinates are changed to sequentially process the pixels corresponding to the x-axis axis coordinates. Thus, the end point can be detected by forming a loop of the combination of the x-axis coordinate and the y-axis coordinate according to the number of pixels on the x-axis and the y-axis.

次に、評価値算出部35は、特徴点2値化部33から未処理のピクセルの2値化データを読みだし(ステップS56)、読みだした2値化データが予め設定した閾値を超え、このピクセルが第2の特徴点であるか否かの判定を行う(ステップS57)。
このとき、評価値算出部35は、読みだしたピクセルが第2の特徴点である場合、処理をステップS58へ進め、このピクセルが第2の特徴点でない場合、処理をステップS55へ進める。
ピクセルが第2の特徴点である場合、法線ベクトル抽出部34は、この第2の特徴点における第2の単位法線ベクトルを求め、処理をステップS59へ進める(ステップS58)。
そして、評価値算出部35は、上記第2の特徴点の第1の単位法線ベクトルと、登録画像の第2の法線ベクトルとからの評価値の算出を、登録画像の全ての第2の特徴点との間で行ったか否かの判定を行う(ステップS59)。このとき、評価値算出部35は、評価値の算出が登録画像の全ての第2の特徴点との間で行われている場合、処理をステップS55へ進め、評価値の算出が登録画像の全ての第2の特徴点との間で行われていない場合、処理をステップS60へ進める。
Next, the evaluation value calculation unit 35 reads the unprocessed pixel binarization data from the feature point binarization unit 33 (step S56), and the read binarization data exceeds a preset threshold value. It is determined whether or not this pixel is the second feature point (step S57).
At this time, if the read pixel is the second feature point, the evaluation value calculation unit 35 advances the process to step S58. If the pixel is not the second feature point, the evaluation value calculation unit 35 advances the process to step S55.
When the pixel is the second feature point, the normal vector extraction unit 34 obtains a second unit normal vector at the second feature point, and advances the process to step S59 (step S58).
Then, the evaluation value calculation unit 35 calculates the evaluation value from the first unit normal vector of the second feature point and the second normal vector of the registered image, and performs the calculation of the evaluation value for all the second images of the registered image. It is determined whether or not it has been performed between the feature points (step S59). At this time, if the evaluation value is calculated between all the second feature points of the registered image, the evaluation value calculating unit 35 advances the process to step S55, and the evaluation value is calculated for the registered image. If not performed with all the second feature points, the process proceeds to step S60.

次に、評価値算出部35は、評価値の算出に用いていない第1の特徴点の第1の単位法線ベクトルを特徴点データから読みだし、第2の特徴点の第2の単位法線ベクトル(nx,ny)と、第1の特徴点の第1の単位法線ベクトルとから、(4)式を用いてCOS(θ)及びSIN(θ)の評価値を算出する(ステップS60)。
そして、候補座標点演算部36は、(5)式を用いて、変位ベクトル(Dx,Dy)を回転角θにて回転させ、回転後の変位ベクトル(dx,dy)を算出する(ステップS61)。
また、候補座標点演算部36は、上記回転後の変位ベクトル(dx,dy)と、第1の特徴点の座標(Px,Py)とから、(6)式により基準点候補の座標(Rx,Ry)を算出する(ステップS62)。
Next, the evaluation value calculation unit 35 reads the first unit normal vector of the first feature point that is not used for calculating the evaluation value from the feature point data, and the second unit method of the second feature point. From the line vector (nx, ny) and the first unit normal vector of the first feature point, the evaluation values of COS (θ) and SIN (θ) are calculated using equation (4) (step S60). ).
Then, the candidate coordinate point calculation unit 36 uses the equation (5) to rotate the displacement vector (Dx, Dy) at the rotation angle θ, and calculates the rotated displacement vector (dx, dy) (step S61). ).
Further, the candidate coordinate point calculation unit 36 calculates the coordinates (Rx) of the reference point candidate from the above-described displacement vector (dx, dy) and the coordinates (Px, Py) of the first feature point by the equation (6). , Ry) is calculated (step S62).

次に、COS値積算部37は、上記座標(Rx,Ry)をx軸に投影し、x軸の軸座標点(Rx)に対応するx軸COS値積算記憶部に上記COS(θ)を積算するとともに、上記座標(Rx,Ry)をy軸に投影し、y軸の軸座標点(Ry)に対応するy軸COS値積算記憶部に上記COS(θ)を積算する。
同様に、SIN値積算部38は、上記座標(Rx,Ry)をx軸に投影し、x軸の軸座標点(Rx)に対応するx軸SIN値積算記憶部に上記SIN(θ)を積算するとともに、上記座標(Rx,Ry)をy軸に投影し、y軸の軸座標点(Ry)に対応するy軸SIN値積算記憶部に上記SIN(θ)を積算する(ステップS63)。
Next, the COS value integration unit 37 projects the coordinates (Rx, Ry) onto the x axis, and stores the COS (θ) in the x axis COS value integration storage unit corresponding to the axis coordinate point (Rx) of the x axis. In addition, the coordinates (Rx, Ry) are projected onto the y-axis, and the COS (θ) is accumulated in the y-axis COS value accumulation storage unit corresponding to the y-axis axis coordinate point (Ry).
Similarly, the SIN value integrating unit 38 projects the coordinates (Rx, Ry) on the x axis, and stores the SIN (θ) in the x axis SIN value integrating storage unit corresponding to the x coordinate point (Rx) of the x axis. At the same time, the coordinates (Rx, Ry) are projected onto the y-axis, and the SIN (θ) is accumulated in the y-axis SIN value accumulation storage unit corresponding to the y-axis axis coordinate point (Ry) (step S63). .

上述した処理により、x軸の軸座標に対応したx軸COS値積算記憶部、y軸の軸座標に対応したy軸COS値積算記憶部、x軸の軸座標に対応したx軸SIN値積算記憶部及びy軸の軸座標に対応したy軸SIN値積算記憶部に対し、認識対象物体の第2の特徴点各々の第2の単位法線ベクトルと、登録画像の全ての第1の単位法線ベクトルとの評価値が積算される。
そして、積算値加算部39は、x軸の各軸座標毎のx軸総合値を算出するとともに、y軸の各軸座標毎のy軸総合値を算出し、x軸総合値とy軸総合値とを各軸座標毎にそれぞれ加算し、2次元座標の各座標における総合値を算出する。
認識対象物体判定部40は、上記総合値が予め設定したピーク値を超える座標点を、登録画像が配置された基準点として抽出し、登録画像に一致する認識対象物体の配置された基準点として、COS積算値及びSIN積算値より得られる回転角θとともに出力する。
Through the processing described above, the x-axis COS value integration storage unit corresponding to the x-axis axis coordinate, the y-axis COS value integration storage unit corresponding to the y-axis axis coordinate, and the x-axis SIN value integration corresponding to the x-axis axis coordinate For the storage unit and the y-axis SIN value integration storage unit corresponding to the axis coordinate of the y-axis, the second unit normal vector of each second feature point of the recognition target object and all the first units of the registered image The evaluation value with the normal vector is integrated.
The integrated value adding unit 39 calculates an x-axis total value for each axis coordinate of the x-axis, calculates a y-axis total value for each axis coordinate of the y-axis, and calculates an x-axis total value and a y-axis total. The value is added for each axis coordinate, and the total value at each coordinate of the two-dimensional coordinate is calculated.
The recognition target object determination unit 40 extracts a coordinate point where the total value exceeds a preset peak value as a reference point on which the registered image is arranged, and as a reference point on which the recognition target object that matches the registered image is arranged. , And the rotation angle θ obtained from the COS integrated value and the SIN integrated value.

上述したように、本実施形態においては、x軸上の1次元の軸座標に対応したx軸COS値積算記憶部及びx軸COS値積算記憶部と、y軸上の1次元の軸座標に対応したy軸COS値積算記憶部及びy軸COS値積算記憶部とに対し、回転角θを含めた評価値を記憶するものである。すでに説明したように、各積算値記憶部には1つの軸座標における評価値が積算される。
ここで、特許文献1と同様の条件にてメモリー容量を見積もると、「1024×4×4」の計算式となり、16kバイトのメモリー容量となる。このメモリー容量は、特許文献1の約8Mバイトに比較すると、2桁分のメモリー容量が削減されたことになる。これにより、CPUの1次キャッシュに収容可能な大きさとなり、キャッシュミスの発生により処理速度の低下を起こすことなく、CPUに演算処理を行わせることが可能となる。
上記計算式において、「1024」は、x軸方向及びy軸方向のピクセル数(軸座標数に対応)であり、次の「4」が各積算値記憶部の容量であり、次の「4」が1次元に配列された積算値記憶部の数である。
As described above, in this embodiment, the x-axis COS value integration storage unit and the x-axis COS value integration storage unit corresponding to the one-dimensional axis coordinate on the x-axis, and the one-dimensional axis coordinate on the y-axis are used. Evaluation values including the rotation angle θ are stored in the corresponding y-axis COS value integration storage unit and y-axis COS value integration storage unit. As already described, evaluation values at one axis coordinate are integrated in each integrated value storage unit.
Here, when the memory capacity is estimated under the same conditions as in Patent Document 1, the calculation formula is “1024 × 4 × 4”, and the memory capacity is 16 kbytes. Compared to about 8 Mbytes in Patent Document 1, this memory capacity is reduced by two digits. As a result, the CPU can be accommodated in the primary cache of the CPU, and the CPU can perform arithmetic processing without causing a reduction in processing speed due to occurrence of a cache miss.
In the above calculation formula, “1024” is the number of pixels in the x-axis direction and the y-axis direction (corresponding to the number of axis coordinates), the next “4” is the capacity of each integrated value storage unit, and the next “4” "Is the number of integrated value storage units arranged one-dimensionally.

<第2の実施形態>
次に、本発明の第2の実施形態による物体認識装置を説明する。第2の実施形態による物体識別装置は、第1の実施形態と同様の構成である。以下、異なる処理の点のみを説明する。
初めに、第1の実施形態において、複数(以下、2点として説明)の基準点が存在する場合における誤検出について説明する。第1の実施形態においては、総合値において1のピークのみ、すなわち基準点が存在する場合、あるいは図5に示すように、2点の基準点がいずれかの軸(x軸あるいはy軸)に平行に存在する場合には、基準点と各軸座標とが一対一対応となるため、特に誤検出は起こらない。
<Second Embodiment>
Next, an object recognition apparatus according to a second embodiment of the present invention will be described. The object identification device according to the second embodiment has the same configuration as that of the first embodiment. Only the different processing points will be described below.
First, in the first embodiment, a description will be given of erroneous detection when there are a plurality of reference points (hereinafter, described as two points). In the first embodiment, only one peak in the total value, that is, when a reference point exists, or as shown in FIG. 5, two reference points are on any axis (x-axis or y-axis). If they exist in parallel, the reference point and each axis coordinate have a one-to-one correspondence, so that no erroneous detection occurs.

しかしながら、図6に示すように、基準点がいずれの軸にも平行に配列していない場合、総合値がピーク値を超える値となる積算値として、x軸に2つの積算値記憶部に記憶された積算値と、y軸に2つの積算値記憶部に記憶された積算値とが存在する。これらx軸の2つの軸座標と、y軸の2つの軸座標との組合せとして、2次元平面に対する逆投影を行い基準点の座標を求めると、実際に基準点が存在する黒丸で示す座標と、アーチファクトと呼ばれる偽基準点の白丸で示す座標とが混在することになる。この場合、詳細検出部41によりアーチファクトを削除することができるが、アーチファクトの検出及び削除処理に演算処理が必要となるため、検出時間が長くなる。   However, as shown in FIG. 6, when the reference points are not arranged parallel to any axis, the integrated value is stored in two integrated value storage units on the x axis as an integrated value that exceeds the peak value. And the integrated values stored in the two integrated value storage units exist on the y-axis. As a combination of the two axis coordinates of the x axis and the two axis coordinates of the y axis, when the back projection onto the two-dimensional plane is performed to obtain the coordinates of the reference point, the coordinates indicated by the black circle where the reference point actually exists are The coordinates indicated by white circles of false reference points called artifacts are mixed. In this case, although the artifact can be deleted by the detail detection unit 41, since the calculation process is required for the artifact detection and deletion process, the detection time becomes long.

そこで、第2の実施形態においては、図7で示すように、x軸方向及びy軸方向に対する1次元の積算記憶部の配列に加え、x軸及びy軸と異なる角度φの方向のA軸方向に対する1次元の積算記憶部(A軸COS値積算記憶部,A軸SIN値積算記憶部)を、角度φの方向に設ける。このA軸は、認識対象物体が配置されている2次元平面の象限において、x軸及びy軸に対向して設けられる。すなわち、このA軸は、x軸及びy軸に加えて、座標(Rx、Ry)を投影するための投影軸として、図5に示すように、2次元平面の任意の位置に設けられる。このA軸における軸座標は、「Z=Rx×COS(φ)+Ry×SIN(φ)」から求める。2次元座標(Rx,Ry)が投影された軸座標Zに対応して、COS(θ)を積算するA軸COS値積算記憶部と、SIN(θ)を積算するA軸SIN値積算記憶部とが設けられることになる。すなわち、図8に示すように、x軸に対応して2本、y軸に対して2本、A軸に対して2本の、計6本の1次元の積算値記憶部の配列が設けられている。
異なる点は、COS値積算部37とSIN値積算部38とが、x軸とy軸とだけでなく、上述したように、A軸にも2次元座標を投影し、その投影した軸座標に対応する積算記憶部に、評価値を積算することである。以下、この動作について説明する。
Therefore, in the second embodiment, as shown in FIG. 7, in addition to the arrangement of the one-dimensional integration storage units in the x-axis direction and the y-axis direction, the A-axis in the direction of the angle φ different from the x-axis and y-axis A one-dimensional integration storage unit (A-axis COS value integration storage unit, A-axis SIN value integration storage unit) for the direction is provided in the direction of the angle φ. The A-axis is provided to face the x-axis and the y-axis in the quadrant of the two-dimensional plane where the recognition target object is arranged. That is, the A axis is provided at an arbitrary position on a two-dimensional plane as a projection axis for projecting coordinates (Rx, Ry) in addition to the x axis and the y axis, as shown in FIG. The axis coordinates on the A axis are obtained from “Z = Rx × COS (φ) + Ry × SIN (φ)”. An A-axis COS value integration storage unit that integrates COS (θ) and an A-axis SIN value integration storage unit that integrates SIN (θ) corresponding to the axis coordinate Z on which the two-dimensional coordinates (Rx, Ry) are projected. Will be provided. That is, as shown in FIG. 8, an array of six one-dimensional integrated value storage units is provided, two for the x axis, two for the y axis, and two for the A axis. It has been.
The difference is that the COS value integrating unit 37 and the SIN value integrating unit 38 project not only the x axis and the y axis but also the A axis as described above, and the projected axis coordinate is projected. The evaluation value is integrated in the corresponding integration storage unit. Hereinafter, this operation will be described.

COS値積算部37は、座標(Rx,Ry)をx軸に投影し、x軸の軸座標点(Rx)に対応するx軸COS値積算記憶部にCOS(θ)を積算するとともに、上記座標(Rx,Ry)をy軸に投影し、y軸の軸座標点(Ry)に対応するy軸COS値積算記憶部に上記COS(θ)を積算するとともに、上記座標(Rx,Ry)をA軸に投影し、A軸の軸座標点(Z)に対応するA軸COS値積算記憶部に上記COS(θ)を積算する。
同様に、SIN値積算部38は、座標(Rx,Ry)をx軸に投影し、x軸の軸座標点(Rx)に対応するx軸SIN値積算記憶部にSIN(θ)を積算するとともに、上記座標(Rx,Ry)をy軸に投影し、y軸の軸座標点(Ry)に対応するy軸SIN値積算記憶部に上記SIN(θ)を積算するとともに、上記座標(Rx,Ry)をA軸に投影し、A軸の軸座標点(Z)に対応するA軸SIN値積算記憶部に上記SIN(θ)を積算する。
The COS value integrating unit 37 projects the coordinates (Rx, Ry) on the x axis, integrates COS (θ) in the x axis COS value integrating storage unit corresponding to the axis coordinate point (Rx) of the x axis, and The coordinates (Rx, Ry) are projected onto the y-axis, the COS (θ) is accumulated in the y-axis COS value accumulation storage unit corresponding to the y-axis axis coordinate point (Ry), and the coordinates (Rx, Ry) Is projected onto the A axis, and the COS (θ) is accumulated in the A axis COS value accumulation storage unit corresponding to the axis coordinate point (Z) of the A axis.
Similarly, the SIN value integrating unit 38 projects coordinates (Rx, Ry) onto the x axis, and integrates SIN (θ) into the x axis SIN value integrating storage unit corresponding to the x coordinate axis (Rx). At the same time, the coordinates (Rx, Ry) are projected onto the y-axis, the SIN (θ) is accumulated in the y-axis SIN value accumulation storage unit corresponding to the y-axis axis coordinate point (Ry), and the coordinates (Rx , Ry) is projected onto the A axis, and the above SIN (θ) is accumulated in the A axis SIN value accumulation storage unit corresponding to the axis coordinate point (Z) of the A axis.

そして、積算値加算部39は、x軸の各軸座標毎のx軸総合値を算出し、y軸の各軸座標毎のy軸総合値を算出し、またA軸の各軸座標のA軸総合値を算出し、x軸総合値とy軸総合値とZ軸総合値を軸座標毎にそれぞれ加算し、2次元座標の各座標における総合値を算出する。すなわち、x軸の軸座標及びy軸の軸座標の組合せの2次元座標毎に、対応するx軸の軸座標のx軸総合値と、y軸の軸座標のy軸総合値と、A軸の軸座標のA軸総合値を加算して、各2次元座標の座標点の総合値を算出する。
認識対象物体判定部40は、上記総合値が予め設定したピーク値を超える座標点を、登録画像が配置された基準点として抽出し、登録画像に一致する認識対象物体の配置された基準点として、COS積算値及びSIN積算値より得られる回転角θとともに出力する。
そして、認識対象物体判定部40は、上記総合値が予め設定したピーク値を超える座標点を、登録画像が配置された基準点として抽出し、登録画像に一致する認識対象物体の配置された基準点として出力する。
上述したように、x軸及びy軸と異なるA軸を設けることにより、総合値が3軸積算値の合計から算出されることにより、アーチファクトの座標を排除することができる。
Then, the integrated value adding unit 39 calculates an x-axis total value for each axis coordinate of the x-axis, calculates a y-axis total value for each axis coordinate of the y-axis, and A of each axis coordinate of the A-axis The total axis value is calculated, the total x-axis value, the total y-axis value, and the total Z-axis value are added for each axis coordinate, and the total value at each coordinate of the two-dimensional coordinates is calculated. That is, for each two-dimensional coordinate of a combination of the x-axis coordinate and the y-axis coordinate, the x-axis total value of the corresponding x-axis axis coordinate, the y-axis total value of the y-axis axis coordinate, and the A-axis Are added together to calculate the total value of the coordinate points of each two-dimensional coordinate.
The recognition target object determination unit 40 extracts a coordinate point where the total value exceeds a preset peak value as a reference point on which the registered image is arranged, and as a reference point on which the recognition target object that matches the registered image is arranged. , And the rotation angle θ obtained from the COS integrated value and the SIN integrated value.
Then, the recognition target object determination unit 40 extracts a coordinate point where the total value exceeds the preset peak value as a reference point on which the registered image is arranged, and a reference on which the recognition target object that matches the registered image is arranged. Output as a point.
As described above, by providing the A-axis different from the x-axis and the y-axis, the total value is calculated from the sum of the three-axis integrated values, so that the coordinates of the artifact can be eliminated.

また、本実施形態においては、x軸上の1次元の軸座標に対応したx軸COS値積算記憶部及びx軸COS値積算記憶部と、y軸上の1次元の軸座標に対応したy軸COS値積算記憶部及びy軸COS値積算記憶部と、A軸上の1次元の軸座標に対応したA軸COS値積算記憶部及びA軸COS値積算記憶部とに対し、回転角θを含めた評価値を記憶するものである。すでに説明したように、各積算値記憶部には1つの軸座標における評価値が積算される。
ここで、特許文献1と同様の条件にてメモリー容量を見積もると、「1024×4×n」の計算式となり、4×nkバイトのメモリー容量となる。このメモリー容量は、特許文献1の約8Mバイトに比較すると、第1の実施形態と同様に、2桁分のメモリー容量が削減されたことになる。これにより、CPUの1次キャッシュに収容可能な大きさとなり、キャッシュミスの発生により処理速度の低下を起こすことなく、CPUに演算処理を行わせることが可能となる。
上記計算式において、「1024」は、x軸方向及びy軸方向のピクセル数(軸座標数に対応)であり、次の「4」が各積算値記憶部の容量であり、次の「n」が1次元に配列された積算値記憶部の数である。
In the present embodiment, the x-axis COS value integration storage unit and the x-axis COS value integration storage unit corresponding to the one-dimensional axis coordinate on the x-axis, and the y corresponding to the one-dimensional axis coordinate on the y-axis. A rotation angle θ with respect to the axis COS value integration storage unit and the y-axis COS value integration storage unit, and the A-axis COS value integration storage unit and the A-axis COS value integration storage unit corresponding to the one-dimensional axis coordinate on the A-axis. The evaluation value including is stored. As already described, evaluation values at one axis coordinate are integrated in each integrated value storage unit.
Here, when the memory capacity is estimated under the same conditions as in Patent Document 1, the calculation formula is “1024 × 4 × n”, and the memory capacity is 4 × nk bytes. Compared to about 8 Mbytes in Patent Document 1, this memory capacity is reduced by two digits as in the first embodiment. As a result, the CPU can be accommodated in the primary cache of the CPU, and the CPU can perform arithmetic processing without causing a reduction in processing speed due to occurrence of a cache miss.
In the above calculation formula, “1024” is the number of pixels in the x-axis direction and the y-axis direction (corresponding to the number of axis coordinates), the next “4” is the capacity of each integrated value storage unit, and the next “n” "Is the number of integrated value storage units arranged one-dimensionally.

また、図1における物体認識装置の機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することにより物体認識の処理を行ってもよい。なお、ここでいう「コンピューターシステム」とは、OSや周辺機器等のハードウェアを含むものとする。   In addition, the program for realizing the function of the object recognition apparatus in FIG. 1 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed to execute object recognition. Processing may be performed. Here, the “computer system” includes an OS and hardware such as peripheral devices.

また、「コンピューターシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリーのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
Further, the “computer system” includes a homepage providing environment (or display environment) if the WWW system is used.
The “computer-readable recording medium” refers to a storage device such as a flexible disk, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, a “computer-readable recording medium” dynamically holds a program for a short time, like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. It also includes those that hold programs for a certain period of time, such as volatile memory inside computer systems that serve as servers and clients in that case. The program may be a program for realizing a part of the above-described functions, or may be a program that can realize the above-described functions in combination with a program already recorded in a computer system.

以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。   The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes design and the like within a scope not departing from the gist of the present invention.

1…登録画像データ生成部
2…特徴点データ記憶部
3…物体認識部
11…登録画像取得部
12,32…特徴点抽出部
13,33…特徴点2値化部
14,34…法線ベクトル抽出部
31…入力画像取得部
35…評価値算出部
36…候補座標点演算部
37…COS値積算部
38…SIN値積算部
39…積算値加算部
40…認識対象物体判定部
41…詳細検出部
DESCRIPTION OF SYMBOLS 1 ... Registered image data generation part 2 ... Feature point data storage part 3 ... Object recognition part 11 ... Registered image acquisition part 12, 32 ... Feature point extraction part 13, 33 ... Feature point binarization part 14, 34 ... Normal vector Extraction unit 31 ... Input image acquisition unit 35 ... Evaluation value calculation unit 36 ... Candidate coordinate point calculation unit 37 ... COS value integration unit 38 ... SIN value integration unit 39 ... Integration value addition unit 40 ... Recognition target object determination unit 41 ... Detailed detection Part

Claims (7)

登録画像より抽出した複数の第1の特徴点と、この第1の特徴点における第1の法線ベクトルと、第1の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データが記憶される特徴点データ記憶部と、
入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する特徴点抽出部と、
第2の特徴点における第2の法線ベクトルを求める法線ベクトル演算部と、
前記第2の特徴点各々に対して登録画像の第1の特徴点の全てを対応させ、第1の法線ベクトルと第2の法線ベクトルの角度差θによるCOS(θ)及びSIN(θ)値を、第1の特徴点毎に求める評価値算出部と、
前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第2の特徴点の座標から、基準点の候補である候補座標点を求める候補座標点演算部と、
当該候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるCOS(θ)をCOS積算値として積算するCOS値積算部と、
当該候補座標点を複数の前記座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるSIN(θ)をSIN積算値として積算するSIN値積算部と、
前記座標軸各々における各軸座標点の組合せにおいて、各軸座標点におけるCOS積算値及びSIN積算値を加算して総合値を求める積算値加算部と、
前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する認識対象物体判定部と
を有することを特徴とする物体認識装置。
Feature point comprising a plurality of first feature points extracted from the registered image, a first normal vector at the first feature point, and a displacement vector from the first feature point to the reference point of the registered image A feature point data storage unit for storing data; and
A feature point extraction unit for extracting a second feature point constituting the feature of the recognition target object in the input image;
A normal vector computing unit for obtaining a second normal vector at the second feature point;
All the first feature points of the registered image are made to correspond to each of the second feature points, and COS (θ) and SIN (θ based on the angle difference θ between the first normal vector and the second normal vector ) An evaluation value calculation unit for obtaining a value for each first feature point;
A candidate coordinate point calculation unit that performs a rotation of a displacement vector from the angle difference and obtains a candidate coordinate point that is a candidate of a reference point from the rotated displacement vector and the coordinates of the second feature point;
A COS value integrating unit that projects the candidate coordinate points onto a plurality of coordinate axes, and integrates COS (θ) at the candidate coordinate points as COS integrated values corresponding to the projected coordinate points of the coordinate axes;
A SIN value integrating unit that projects the candidate coordinate points onto the plurality of coordinate axes, and integrates SIN (θ) at the candidate coordinate points as a SIN integrated value corresponding to the projected coordinate points of the coordinate axes;
An integrated value adding unit for adding a COS integrated value and a SIN integrated value at each axis coordinate point to obtain a total value in a combination of each axis coordinate point in each of the coordinate axes;
A recognition target object determination unit that determines that a recognition target object that matches the registered image is arranged with the candidate coordinate point as a reference point when the total value exceeds a preset threshold value. An object recognition device.
前記座標軸が2次元平面におけるx軸及びy軸であることを特徴とする請求項1に記載の物体認識装置。   The object recognition apparatus according to claim 1, wherein the coordinate axes are an x-axis and a y-axis in a two-dimensional plane. 前記座標軸が2次元平面におけるx軸及びy軸と、x軸の座標点及びy軸の座標点で表される直線からなる直線軸との3軸であることを特徴とする請求項1に記載の物体認識装置。   2. The coordinate system according to claim 1, wherein the coordinate axes are three axes of an x-axis and a y-axis in a two-dimensional plane, and a linear axis composed of a straight line represented by an x-axis coordinate point and a y-axis coordinate point. Object recognition device. 前記積算値加算部が、
各座標軸の軸座標点におけるCOS積算値及びSIN積算値を2乗して加算して、前記総合値を求めることを特徴とする請求項1から請求項3のいずれかに記載の物体認識装置。
The integrated value adding unit is
The object recognition apparatus according to any one of claims 1 to 3, wherein the integrated value is obtained by squaring and adding a COS integrated value and a SIN integrated value at an axial coordinate point of each coordinate axis.
前記積算値加算部が、
各座標軸の軸座標点におけるCOS積算値の加算値を2乗した数値と、SIN積算値の加算値を2乗した数値とを加算し、前記総合値を求めることを特徴とする請求項1から請求項3のいずれかに記載の物体認識装置。
The integrated value adding unit is
The total value is obtained by adding a numerical value obtained by squaring the addition value of the COS integrated value at the axial coordinate point of each coordinate axis and a numerical value obtained by squaring the added value of the SIN integrated value. The object recognition apparatus according to claim 3.
登録画像データ生成部が、登録画像より抽出した複数の第1の特徴点と、この第1の特徴点における第1の法線ベクトルと、第1の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データを、特徴点データ記憶部に記憶する過程と、
特徴点抽出部が入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する過程と、
法線ベクトル演算部が第2の特徴点における第2の法線ベクトルを求める過程と、
評価値算出部が、前記第2の特徴点各々に対して登録画像の第1の特徴点の全てを対応させ、第1の法線ベクトルと第2の法線ベクトルの角度差θによるCOS(θ)及びSIN(θ)値を、第1の特徴点毎に求める過程と、
候補座標点演算部が、前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第2の特徴点の座標から、基準点の候補である候補座標点を求める過程と、
COS値積算部が、当該候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるCOS(θ)をCOS積算値として積算する過程と、
SIN値積算部が、当該候補座標点を複数の前記座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるSIN(θ)をSIN積算値として積算する過程と、
積算値加算部が、前記座標軸各々における各軸座標点の組合せにおいて、各軸座標点におけるCOS積算値及びSIN積算値を加算して総合値を求める過程と、
認識対象物体判定部が、前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する過程と
を有することを特徴とする物体認識方法。
A registered image data generation unit extracts a plurality of first feature points extracted from the registered image, a first normal vector at the first feature points, and a first feature point to a reference point of the registered image. Storing feature point data consisting of displacement vectors in a feature point data storage unit;
A process of extracting a second feature point constituting a feature of the recognition target object in the input image by the feature point extraction unit;
A process in which the normal vector computing unit obtains a second normal vector at the second feature point;
The evaluation value calculation unit associates all of the first feature points of the registered image with each of the second feature points, and determines the COS (COS by the angle difference θ between the first normal vector and the second normal vector). obtaining θ) and SIN (θ) values for each first feature point;
A candidate coordinate point calculation unit rotates a displacement vector from the angle difference, and obtains a candidate coordinate point that is a reference point candidate from the rotated displacement vector and the coordinates of the second feature point;
A process in which the COS value integrating unit projects the candidate coordinate points onto a plurality of coordinate axes, and integrates COS (θ) at the candidate coordinate points as COS integrated values corresponding to the projected axis coordinate points of the coordinate axes. When,
The SIN value integrating unit projects the candidate coordinate points onto the plurality of coordinate axes, and integrates SIN (θ) at the candidate coordinate points as SIN integrated values corresponding to the projected axis coordinate points of the coordinate axes. Process,
An integrated value adding unit adding a COS integrated value and a SIN integrated value at each axis coordinate point to obtain a total value in a combination of each axis coordinate point in each of the coordinate axes;
A process in which a recognition target object determination unit determines that a recognition target object that matches the registered image is arranged with the candidate coordinate point as a reference point when the total value exceeds a preset threshold value. An object recognition method characterized by the above.
登録画像データ生成部が、登録画像より抽出した複数の第1の特徴点と、この第1の特徴点における第1の法線ベクトルと、第1の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データを、特徴点データ記憶部に記憶する処理と、
特徴点抽出部が入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する処理と、
法線ベクトル演算部が第2の特徴点における第2の法線ベクトルを求める処理と、
評価値算出部が、前記第2の特徴点各々に対して登録画像の第1の特徴点の全てを対応させ、第1の法線ベクトルと第2の法線ベクトルの角度差θによるCOS(θ)及びSIN(θ)値を、第1の特徴点毎に求める処理と、
候補座標点演算部が、前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第2の特徴点の座標から、基準点の候補である候補座標点を求める処理と、
COS値積算部が、当該候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるCOS(θ)をCOS積算値として積算する処理と、
SIN値積算部が、当該候補座標点を複数の前記座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるSIN(θ)をSIN積算値として積算する処理と、
積算値加算部が、前記座標軸各々における各軸座標点の組合せにおいて、各軸座標点におけるCOS積算値及びSIN積算値を加算して総合値を求める処理と、
認識対象物体判定部が、前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する処理と
を有する物体認識装置としてコンピューターを機能させるためのプログラム。
A registered image data generation unit extracts a plurality of first feature points extracted from the registered image, a first normal vector at the first feature points, and a first feature point to a reference point of the registered image. Processing for storing feature point data consisting of displacement vectors in a feature point data storage unit;
A process of extracting a second feature point constituting a feature of the recognition target object in the input image by the feature point extraction unit;
A process in which the normal vector computing unit obtains a second normal vector at the second feature point;
The evaluation value calculation unit associates all of the first feature points of the registered image with each of the second feature points, and determines the COS (COS by the angle difference θ between the first normal vector and the second normal vector). θ) and SIN (θ) values for each first feature point;
A candidate coordinate point calculation unit rotates a displacement vector from the angle difference, and obtains a candidate coordinate point that is a reference point candidate from the rotated displacement vector and the coordinates of the second feature point;
A process in which the COS value integrating unit projects the candidate coordinate points onto a plurality of coordinate axes, and integrates COS (θ) at the candidate coordinate points as COS integrated values corresponding to the projected axis coordinate points of the coordinate axes. When,
The SIN value integrating unit projects the candidate coordinate points onto the plurality of coordinate axes, and integrates SIN (θ) at the candidate coordinate points as SIN integrated values corresponding to the projected axis coordinate points of the coordinate axes. Processing,
An integrated value adding unit that calculates a total value by adding the COS integrated value and the SIN integrated value at each axis coordinate point in a combination of each axis coordinate point in each of the coordinate axes;
A recognition target object determination unit that determines that a recognition target object that matches the registered image is arranged with the candidate coordinate point as a reference point when the total value exceeds a preset threshold value. A program for causing a computer to function as an object recognition device.
JP2009135469A 2009-06-04 2009-06-04 Object recognition device, object recognition method, and program Pending JP2010282437A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009135469A JP2010282437A (en) 2009-06-04 2009-06-04 Object recognition device, object recognition method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009135469A JP2010282437A (en) 2009-06-04 2009-06-04 Object recognition device, object recognition method, and program

Publications (1)

Publication Number Publication Date
JP2010282437A true JP2010282437A (en) 2010-12-16

Family

ID=43539104

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009135469A Pending JP2010282437A (en) 2009-06-04 2009-06-04 Object recognition device, object recognition method, and program

Country Status (1)

Country Link
JP (1) JP2010282437A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107918925A (en) * 2016-10-11 2018-04-17 韦伯斯特生物官能(以色列)有限公司 Electromagnetic tracking system is registering with imaging device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107918925A (en) * 2016-10-11 2018-04-17 韦伯斯特生物官能(以色列)有限公司 Electromagnetic tracking system is registering with imaging device

Similar Documents

Publication Publication Date Title
US11210550B2 (en) Image-based feature detection using edge vectors
CN107810522B (en) Real-time, model-based object detection and pose estimation
Fathi et al. Automated sparse 3D point cloud generation of infrastructure using its distinctive visual features
JP6216508B2 (en) Method for recognition and pose determination of 3D objects in 3D scenes
EP2491529B1 (en) Providing a descriptor for at least one feature of an image
CN104756155A (en) Systems and methods of merging multiple maps for computer vision based tracking
JP6174104B2 (en) Method, apparatus and system for generating indoor 2D plan view
JP2012168941A (en) Method for representing 3d objects or objects with descriptors
Lim et al. Estimating relative camera motion from the antipodal-epipolar constraint
Nousias et al. Large-scale, metric structure from motion for unordered light fields
JP2019057227A (en) Template creation device, object recognition processing device, template creation method, and program
CN107133986B (en) A kind of camera calibration method based on two-dimensional calibrations object
Thiruselvam et al. Feature‐assisted stereo correlation
JP6086491B2 (en) Image processing apparatus and database construction apparatus thereof
Cheng et al. Three-dimensional reconstruction of points and lines with unknown correspondence across images
US20150254527A1 (en) Methods for 3d object recognition and registration
Torre-Ferrero et al. 3D point cloud registration based on a purpose-designed similarity measure
Kutulakos Shape from the light field boundary
Toschi et al. Improving automated 3D reconstruction methods via vision metrology
JP2010282437A (en) Object recognition device, object recognition method, and program
JP2014038566A (en) Image processor
NL2016286B1 (en) Displacement sensor.
JP2011221939A (en) Object recognition device, object recognition method and program
Clark et al. Perspective correction for improved visual registration using natural features.
JP2010282438A (en) Object recognition device, object recognition method, and program

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120131