AU753454B2 - Method of accurately locating the fractional position of a template match point - Google Patents

Method of accurately locating the fractional position of a template match point Download PDF

Info

Publication number
AU753454B2
AU753454B2 AU44092/99A AU4409299A AU753454B2 AU 753454 B2 AU753454 B2 AU 753454B2 AU 44092/99 A AU44092/99 A AU 44092/99A AU 4409299 A AU4409299 A AU 4409299A AU 753454 B2 AU753454 B2 AU 753454B2
Authority
AU
Australia
Prior art keywords
maximum
dimensional
grid
fractional
grid point
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.)
Ceased
Application number
AU44092/99A
Other versions
AU4409299A (en
Inventor
Kirill K. Pankratov
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.)
Acuity Imaging LLC
Original Assignee
Acuity Imaging LLC
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 Acuity Imaging LLC filed Critical Acuity Imaging LLC
Priority claimed from PCT/US1999/011954 external-priority patent/WO1999062024A1/en
Publication of AU4409299A publication Critical patent/AU4409299A/en
Assigned to ACUITY IMAGING LLC reassignment ACUITY IMAGING LLC Alteration of Name(s) of Applicant(s) under S113 Assignors: ACUITY IMAGING LLC, PANKRATOV, KIRILL K.
Application granted granted Critical
Publication of AU753454B2 publication Critical patent/AU753454B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • G06V10/7515Shifting the patterns to accommodate for positional errors

Description

WO 99/62024 PCT/US99/I 1954 METHOD OF ACCURATELY LOCATING THE FRACTIONAL POSITION OF A TEMPLATE MATCH POINT FIELD OF THE INVENTION This invention relates to signal processing and analysis and is particularly useful in the fields of image analysis and machine vision.
BACKGROUND OF THE INVENTION In computer or machine vision applications, an image is represented by a two-dimensional array of pixels. Each pixel typically has one gray value or 3 values representing each of the basic colors. Each value is an integer between 0 and a saturation (maximum) value, such as 255 in a typical 8-bit system.
One of the most important applications of industrial machine vision systems is accurate positioning: determining the coordinates of a given object within the field of view.
Many high-precision manufacturing systems require very accurate object positioning. One way to improve accuracy is to increase the resolution of the vision system, which requires more expensive cameras and slows down the processing, since the image analysis time is usually proportional to the number of pixels in the image. The alternative approach is to use more accurate methods to calculate the fractional (sub-pixel) position of a pattern.
WO 99/62024 PCT/US99/11954 The cost and timing constraints mentioned above require many manufacturing systems to have accuracy much higher than the image resolution (pixel size), with a maximum allowed error only a few hundredths of a pixel.
The most widely used method of pattern matching is a normalized correlation algorithm. The normalized correlation coefficient between image pixels Ii,j and pattern (template) pixels Ti,j is defined as: n*1e,* *ET n I, J i i
I
iJ2 -j )1[n YTj2 (Zij i j i j i j (1) When the pixel values of the image are proportional to the corresponding pixel values of the template, i.e.
I =a+b*Tj with constant coefficients a and b, the normalized correlation coefficient reaches a maximum value of one If image pixel values are statistically independent of the template values, the correlation coefficient is close to zero Thus defined, the normalized correlation score is insensitive to contrast and uniform lighting variation.
This property makes it a very robust measure of similarity between two images.
Using normalized correlation for accurate match position determination typically involves two steps: WO 99/62024 PCT/US99/ 1954 1. Search for a given pattern in the whole or part of the image. Find approximate positions of normalized correlation score maxima; and 2. Compute normalized correlation scores in a neighborhood around the approximate position of each local maximum. Fit a curve through this surface of score values, and compute the location of the maximum value on this curve.
The problem of interpolation of a smooth function from values sampled at regular grid intervals has received considerable attention in applied mathematics. Most interpolation algorithms are concerned with minimizing the error (absolute or mean square) between the interpolated and actual value at a given point One fairly simple and common way to find the maximum position is to approximate the function S(x,y) by a quadratic surface (paraboloid). This operation generally involves inverting a 6x6 matrix. The grid coordinates x and y are known beforehand, so the matrix can be inverted only once and the coefficients can be obtained by vector multiplication. After obtaining the coefficients, a simple linear transformation is required to reduce the quadratic form to a canonical one and find the position and value of the maximum.
4 This algorithm has previously been implemented in commercial products developed by the assignee of this invention. It has an accuracy (maximum error in x or y direction) of about .05 1 pixel (1/20 1/10 of pixels size).
SUMMARY OF INVENTION According to a first aspect of the present invention there is provided an improved method of accurately determining a position of a given object on a twodimensional grid having an x axis and a y axis within a field of view in a machine vision system, without the use of enhanced resolution apparatus, utilizing an improved method of calculating a sub-pixel maximum value, said sub-pixel maximum value calculation comprising the steps of: searching all grid points values on said two-dimensional grid and identifying a S grid point having a maximum grid point value; considering all grid point values of all grid points neighboring said grid point 15 having said maximum grid point value and selecting neighboring grid points on said x and Y axes having next highest grid point values; defining a quadrangle having four sides, a first side of said quandrangle having endpoints defined by said grid point having said maximum grid point value and said grid point on 20 said x axis having said next highest grid point value, a second side of said quandrangle having endpoints defined by said grid point having said maximum grid point value and said grid point on said y axis having said next highest grid point value, a third side of said quandrangle having endpoints defined by said grid point having said next highest grid point value on said x axis and a grid point having an x value equal to an x value of said grid point having said next highest grid point value on said x axis and a y value equal to a y value of said grid point having a next highest grid point value on said y axis, and a fourth side of said quandrangle having endpoints defined by said grid point having said next highest grid point value on said y axis and a grid point having an y value equal to a y value of said grid point Il having said next highest grid point value on said y axis and an x 4a value equal to an x value of said grid point having a next highest grid point value on said x axis; computing a one-dimensional, fractional maximum along each side of said quandrangle; computing a first line connecting said one-dimensional maxima computed on a first pair of opposite sides of said quandrangel and a second line connecting said one-dimensional maxima computed on a second pair of opposite sides of said quandrangle; and calculating a sub-pixel coordinate location for said sub-pixel maximum having an x coordinate and a y coordinate corresponding to an intersecting point of said first and said second lines.
S: In the specification the term "comprising" shall be understood to have a broad meaning similar to the term "including" and will be understood to imply the inclusion 15 of a stated integer or step or group of integers or steps but not the exclusion of any other integer or step or group of integers or steps. This definition also applies to variations on the term "comprising" such as "comprise" and "comprises".
The step of computing each one-dimensional fractional maximum along each 20 side of the quandrangle may comprise: identifying a grid point on a grid axis corresponding to each side of said quandrangle having a one-dimensional maximum value as a grid point maximum; identifying a grid interval on each said grid axis within which said onedimensional, fractional maximum is located by comparing grid point values of grid points on each said grid axis located adjacent to and on opposite sides of said grid point maximum; selecting a set of four sample grid points on each said grid axis, wherein a first and second sample grid point of each set of sample grid points are located on a first side of each said one-dimensional, fractional maximum and wherein a third and fourth sample grid point of each set of sample grid points are located on a second side of each said one-dimensional, fractional maximum; 4b computing a first and a second estimate of the position of each said onedimensional, fractional maximum using three-point parabolic approximations centered at grid points flanking each said grid point maximum; and combining said first and second estimates of the position of each said onedimensional, fractional maximum with their corresponding grid point maximum to compute a more accurate position of each said one-dimensional, fractional maximum.
The step of combining the first and second estimates of the position of each said one-dimensional, fractional maximum with their corresponding grid point maximum to compute a more accurate position of each said one-dimensional, fractional maximum may comprise: :calculating a corrected estimate of said one-dimensional, fractional maximum S according to the equation: 15 a(Xriaht-Xleft) R Xo=Xm+ 1-R where Xm= the grid point maximum, 20 Xright=said first estimate, Xleft= said second estimate, o 0 R= Xc-Xmr 2 Xc= one of said first and second estimates that is closer to said one-dimensional, fractional maximum, and a= 0.75.
The method may include the further step of performing a final correction to said sub-pixel coordinate location for said sub-pixel maximum comprising the steps of adding an x axis correction factor to the x coordinate of said maximum sub-pixel C IuS rdinate location; and adding a y axis correction factor to the y coordinate of said m imum sub-pixel coordinate location.
4c Advantageously the x axis correction factor may be calculated according to the equation: b(Xf+ 0.5)Xs(Xf-0.5); where b is a fitting constant -0.22, Xf=sub-pixel fractional maximum along x axis, and Xs=sign (Xf)sqrt Xf i The step of computing each said one-dimensional fractional maximum may comprise: identifying a grid point maximum as a grid point having a maximum grid point value; identifying a grid interval within which said one-dimensional, fractional maximum is located by comparing said grid point values of grid points located adjacent to and on opposite sides of the grid point maximum; and computing an S: estimate of the position of each said one-dimensional, fractional maximum using a gaussian approximation method.
The gaussian approximation method may comprise: computing a ratio of a second derivative of a gaussian curve containing said sub-pixel maximum to a first derivative of said gaussian curve; deriving a third-order equation including the ratio of derivatives of said 20 gaussian curve and a fractional distance of said sub-pixel maximum from said grid point maximum; and S(c) iteratively solving said third-order equation to determine said fractional distance Thus, the present invention features a method of accurately locating a subpixel maximum on a two-dimensional grid having a x and a y axis that is especially suitable for locating a sub-pixel maximum which falls intermediate grid point locations.
In carrying out the method, a grid point location having a maximum grid point value is determined first. Then, a quadrangle containing a sub-pixel maximum is determined by locating neighboring grid points along the x and y axes, which have eSnext greatest grid point values. Next, four one-dimensional, fractional maximum 4d being located along each side of the four sides of the quandrangle. Once the four, one-dimensional, fractional maxima are computed, straight lines are computed which connect the one-dimensional, fractional maxima located on opposite sides of the quadrange. Finally, a location for o eo e 0* oo So o* WO 99/62024 PCT/US99/ 1954 the sub-pixel maximum is calculated as the location of the two computed lines.
Each one-dimensional, fractional maximum is calculated as follows: First, a grid point location having a maximum grid point value (the "grid point maximum") is located is identified by comparing grid point values of grid points located adjacent to and on opposite sides of the grid point maximum. Then a grid interval within which the one-dimensional, fractional maximum is located. Next, four sample grid points are selected. A first and second of the four sample grid points are located on a first side of the one-dimensional, fractional maximum. Third and fourth sample grid points are located on a second side of the one-dimensional, fractional maximum. Finally, a left and a right estimate of the position of the one-dimensional, fractional maximum are calculated using three-point parabolic approximations centered at grid points flanking the grid point maximum.
WO 99/62024 PCT/US99/11954 BRIEF DESCRIPTION OF THE DRAWINGS These and other features and advantages of the present invention will be better understood by reading the following detailed description taken together with the drawings, wherein: Figure 1A is an example of a data set for an image utilizing gray-scale pixel values; Figure 1B shows an example of the gray-scale image for the data set of Figure 1A; Figure 2A is an example of a three-dimensional data set showing normalized correlation scores for small displacements of a template about the perfect match position; Figure 2B shows a three dimensional surface of the data set of Figure 2A; Figure 2C is a top view of the three dimensional surface shown in Figure 2B.
Figure 3 shows the two lines of one-dimensional maxima along directions where x is a constant and where y is a constant on a parabaloid surface and the intersection of these two lines, which represents a point of two-dimensional maximum of the surface; Figure 4 is a graphical representation of four analytical functions, which are useful for peak approximation; WO 99/62024 PCT/US99/11954 Figure 5 shows one-dimensional peak estimates calculated using three points around the maximum and more accurate estimates using four data points in accordance with the teachings of the present invention; Figure 6 shows a graphical representation of the calculation of a two-dimensional sub-pixel maximum according to the teachings of the present invention; Figures 7A and 7B show two examples of error curves for different peak functions and different widths of a peak using the disclosed method; Figure 8 is a flow chart showing the steps of the disclosed method of accurately locating a sub-pixel maximum on a two-dimensional grid; and Figure 9 is a flow chart showing the steps of computing each one-dimensional, fractional maximum according to step 300 of Figure 8.
DETAILED DESCRIPTION OF THE INVENTION The method employed by the present invention to enhance the accuracy of determining the peak position begins with the observation that a one-dimensional function can be approximated and interpolated between grid point values much more accurately than a two-dimensional surface of a similar smoothness. Instead of approximating the correlation score S(x,y) with a quadratic (or a higher-order) two-dimensional WO 99/62024 PCT/US99/ 1954 surface, we seek the position of a two-dimensional maximum as an intersection of two one-dimensional curves containing one-dimensional maxima along perpendicular x and y axes (geometric place of all points where derivatives Sx=0 and Sy=0). These curves are shown as lines F and K of Figure 3, respectively.
At first, the positions of one-dimensional maxima along the rows and columns of a grid (that is along the x and y axes) are determined. Then, the intersection point of these two lines which will coincide with the two-dimensional maximum point, are calculated. If the surface S(x,y) is an exact paraboloid, these two curves will become straight lines. Figure 3 shows a top view of these one-dimensional maxima on a paraboloid surface F and K.
If the main axes of this paraboloid are aligned with the x and y axes, the lines formed by the one-dimensional maxima will be also aligned with x and y axes and will be perpendicular to each other. When a paraboloid is skewed, such as is the case shown in Figure 3, the lines intersect at some angle but will never be parallel to each other.
Nonetheless, their intersection point will always coincide with the maximum of a two-dimensional paraboloid.
Therefore, a principal object of the disclosed method is to WO 99/62024 PCT/US99/11954 accurately find a maximum of a one-dimensional function sampled at a regular interval.
FINDING THE MAXIMUM OF A ONE-DIMENSIONAL
GRID
Typically, the normalized correlation function has a peak width of between several pixels and several tens of pixels (for large chunky patterns) Away from a peak it falls off to the background values close to zero Although in the close vicinity of a peak, any smooth onedimensional function can be approximated by a parabola, the behavior of the one-dimensional correlation score away from the peak can be better approximated by a function leveling off to some background value (such as gaussian). Figure 4 shows some examples of one-dimensional functions having smooth peaks, which can be used to model the section of a correlation surface. Line L represents the function y=j-x 2 Line N represents the function y=exp(-x 2 Line 0 represents the function y=cos(sqrt(2)*x). Line P represents the function y=l/ (I+x 2 It should be noted that correlation function in the vicinity of the maximum, has approximate rotational symmetry. In the case when an image is the same as a template (auto-correlation), the shift of the image by is equivalent to the shift of the template relative to WO 99/62024 PCT/US99/I 1954 the image by so in this case the correlation surface has a symmetry property S(x,y) The asymmetric part of the correlation function near the match point will be only due to the difference in adjacent pixels around the templates. Therefore, in the vicinity of the maximum, the asymmetric part will be very small. This rotational two-dimensional symmetry implies the one-dimensional symmetries along any straight lines passes through the two-dimensional maximum. If a line is close enough to the maximum, then the asymmetric part will also be small. We implicitly use this property to construct our method of finding the maximum of the correlation surface, described below.
To find the fractional maximum of a two-dimensional sampled function S(x,y) we first consider a method of finding the maximum of the one-dimensional function (Fig. 9).
The simplest way to approximate the maximum position is to use a parabola passing through three points surrounding a maximum grid point value. This gives the following expression: X0 S2(, 2Y) (2) WO 99/62024 PCT/US99/11954 If Y is the maximum grid point value, this expression guarantees that the fractional position X 0 will belong to the interval This simple formula has a typical accuracy (maximum error) of about .05 .1 5% to 10% of the distance between grid points).
To determine the maximum position more accurately, it is necessary to use more than three points. For now we assume that our one-dimensional table has at least four points y2, y3and y4), corresponding to four grid points (xj, x2, x 3 and X4) and that the maximum sample value T Fig. is not at the edge. More specifically, for the four points (yj, y2, y3and Y4) around the maximum grid point value shown in Figure 5, the true maximum position T is between grid point values y2 and y3, which correspond to the second and the third grid points x2 and x3, respectively. This is determined since the value at the second grid point y2 is larger than the value at the fourth grid point y and the third grid point value y3 is larger than the first grid point value yl.
We can make two three-point estimates. The first estimate U, Fig. 5, uses, as its central point, the closest grid point value on a first side of the true maximum position Y2. The second estimate V uses, as its central point, the closest grid point value on a second side of the WO 99/62024 PCT/US99/11954 true maximum position y3. The second side is opposite the first side. These estimates are illustrated in Figure To derive a more accurate estimate of the fractional maximum we can combine the two estimates U and V. To describe the method by which these estimates are combined we begin by defining some terms and making a few assumptions.
Let the continuous function Y(X) be sampled at points at regular intervals. We assume that the function is sufficiently smooth, i.e. the characteristic scale of change is larger than the distance between grid points.
Another assumption is that the function Y(X) is approximately symmetric around the maximum. Thus, the function in the vicinity of the maximum X 0 can be represented as a sum of symmetric and asymmetric parts as follows: Y(x-xo)= KY(x-x)+Y (x-xo) (3) where and The function Y(X) is considered nearly symmetric around
X
o if for 0<h<2.
The method of finding the position of a onedimensional, fractional maximum step 300, Fig. 9, according WO 99/62024 PCTIUS99/11954 to the teachings of the present invention includes the following steps: First, the sample grid point with a one-dimensional maximum value Y, (the grid point maximum) is identified, step 310. (In the example of Figure 5, corresponds to x2 and Y, corresponds to y2.) Next, the grid interval within which the one-dimensional, fractional maximum is located is identified, step 320. This is accomplished by comparing grid point values of grid points located on opposite sides to the left and to the right) of the grid point maximum. If Y(X,, 1 then the fractional maximumX 0 is likely to be in the interval X,,-05 X If then X 0 is likely to belong to the interval X X o 5 X +0 5. In the example of Figure 5, the interval containing the one-dimensional, fractional maximum is the interval between X2 and X3 since y3>yl.) Next, four sample grid points are selected so that there are two grid points on each side of the onedimensional, fractional maximum, step 330. For example, if the one-dimensional, fractional maximum X 0 is to the left of the grid point maximum the following four points are selected: WO 99/62024 PCT/US99/11954 X-2) Y2 Y(X,1- 1
Y
4 On the other hand, if the fractional maximum is to the right of the grid point maximum the set of points shifted by one point to the right is selected as follows: 2= X,, (In the example of Figure 5, the selected set of points include y;,y2, y 3 andy4, which correspond to grid points x,,X2, x3and
X
4 respectively.) Two estimates of the position of the one-dimensional, fractional maximum are then computed, step 340a. In one embodiment of the invention, the two estimates are calculated using three-point parabolic approximations centered at the grid points flanking the grid point maximum.
The equations for the two estimates are: 2 Y3 2Y2) (4) and WO 99/62024 PCT/US99/11954 X 2(5) X1,11 2( Y4 23)(5) The two estimates X 11 and Xrgh, are used to compute a more acc Let X c be the one of the two estimates andX,gh, that is closer to the grid point maximum (For example, estimate V of Figure Then, a corrected estimate of the onedimensional, fractional maximum X 0 is calculated by adding a correction factor to the location of the grid point maximum step 350, as follows: 0= e)(6)
I-R
Equation 6 includes an interval factor R, where R= and where R is always in the interval Equation 6 also includes an empirical constant a, which is substantially equal to 0.75. (In the example of Figure the corrected estimate X 0 should correspond to the actual maximum T.) It should be noted that this combination of the two estimates and Xigh, is somewhat counter-intuitive, because typically the errors of left and right estimates are of the same sign (see points T, U, and V in Figure Therefore, equation 6 involves extrapolation beyond the WO 99/62024 PCT/US99/ 1954 interval Xj, X,rgh, rather than interpolation between these two points. Nevertheless, equation 6 provides very good accuracy for a broad range of functions Y(X).
Tested using analytical functions having shapes resembling normalized correlation functions of real-world templates, this procedure gives maximum errors typically well below .01 grid step pixel size). Some examples of error curves for different widths of the peak function are shown in figures 7A and 7B. The various curves in figures 7A and 7B show the differences between estimates calculated with equation and the actual positions of maximum values depending on the fractional position of the actual maximum between two grid points. (Note that errors are greater where the actual maximum is located in a boundary grid of the image.) Each curve corresponds to different characteristic widths w of the peak. As can be seen, errors are larger when the peak is narrower smaller w).
In the case when the fractional maximum is closer to the edge (so that, for example the second grid point value is the grid point maximum and the first grid point value is greater than the third in the case, for example, where one sample point is located on one side of the fractional maximum and at least three sample points on another other WO 99/62024 PCT/US99/11954 side of said fractional maximum) this formula will not be accurate enough and another estimate is needed.
In this case instead of using parabolic approximations, the method utilizes a gaussian approximation method, which utilizes a more realistic curve with a peak and fall-off, namely a gaussian curve, step 340b: x-xO) 2 Y(X)=A+Be- w (7) This function has 4 arbitrary parameters B, Xo and W) and can well approximate a broad range of curves with a peak. The first and second derivatives of the gaussian curve are computed as follows:
Y
-2B 2 e e w and (8) -2B 2(X x-x w2 e The ratio of the second to the first derivatives, denoted as P are then computed. The derivative ratio is then used in the following equation: 1- Estimates of the derivatives Yx, Yxx at the two grid points on each side of the maximum can be computed. The derivatives are approximated as follows: WO 99/62024 PCT/US99/11954 Y I (11) 2 Y y 2 (12) 2
Y
3 ++-2Y 2 and (13) Y.2= Y4+Y2-2Y,. (14) Note that if the fractional maximum is between the first and the second grid points or between the third and the fourth grid points of the four points then the first derivative approximation is not equal to zero The ratio of the second to the first derivative at two internal points of the four-point set are computed. Denote by H the distance between the fractional maximum X 0 and the sample grid point which is closer to it.
-PH=1-2(
-P
2 1- 2 ((H1) 2 (16) Excluding W from these two equations, we obtain a 3rd order equation for the fractional distance H: (P2 )H +(1-2P)H (17) Since we know the coefficients P and P 2 this equation can be solved iteratively (for example by the Newton method). As a starting point, one can choose an estimate WO 99/62024 PCTUS99/11954 based on the three-point parabolic approximation centered at the maximum sample point or the point closest to it (if the grid point maximum is at the edge).
CALCULATION OF TWO-DIMENSIONAL
MAXIMUM
The method of determining the fractional maximum in a two-dimensional grid is illustrated in Figures 6 and 8.
This method 10, Fig. 8, begins with a search of all grid point values to identify the point M which has the maximum grid point value among all grid points, step 100. It is preferable that this point M is not at the edge of the grid, i.e. surrounded by neighboring grid points.
Next, the grid point values of all of the grid points neighboring point M are considered B, C and D of Fig.
Among the neighbors of the point M, the grid points in the x and y directions having the next greatest grid point values are selected. Let for example, value at point A be greater than at B and value at D greater than at B (Fig. 6): s(A) S(B) (18) This will indicate that the sub-pixel maximum is inside a quadrangle defined by grid points M,A,D, and E and closer to M than to the points A, D or E, step 200.
Next, four one-dimensional maxima along the lines MA, DE, MD and AE (that is all sides of the quadrangle MADE) are computed according to the one-dimensional procedure WO 99/62024 PCT/US99/11954 described in the previous section, step 300. Let the points G, H, I, J be the positions of maxima along the lines CA, DE, BD and AE correspondingly (see Figure 7).
Then the line GH will approximate a set of points of maxima along all lines parallel to the x-axis between MA and DE.
The line IJ will approximate a set of points of maxima along all lines parallel to the y-axis between MD and AE, step 400.
Next, the intersection point 0 of the lines GH and IJ is calculated, step 500. Finally, a final correction to the coordinates of the maximum point is computed and applied to the calculated sub-pixel maximum coordinate location, step 600.
Let Xf, Y 1 be the fractional position of the maximum point 0 (relative to the maximum grid point These values X 1
Y
will belong to the interval For the best estimate for the position of the maximum we use the following correction terms: Xf X, b(Xf 0.5)X,(Xf 05) and (19) Y) =Y +b(Y +0.5)Y(Y where X sign(X,)sqrt(X, (21) sign( Y)sqrt( Y (22) PCT/US 99/11954 and where b is a fitting constant, which is substantially equal to -0.22 and is found empirically is a function which is equal to -1 for negative values of x, 1 for positive values of x, and 0 when x=0.
Experiments with images numerically shifted by a fractional values in x and y directions show maximum errors below .01 pixel size for templates with good degree of symmetry and below .02-0.03 pixel size even for highly amorphous, skewed patterns.
Accordingly, the present invention provides a novel method for accurately locating a sub-pixel maximum on a twodimensional grid which is accurate and cost effective, and particularly well suited to industrial machine vision applications.
Modifications and substitutions by one of ordinary skill in the art are considered to be within the scope of the present invention, which is not to be limited except by the claims that follow: What is claimed is: 21 A ME N DED S P71E T

Claims (6)

  1. 2. The method of claim 1, wherein said step of computing each said one- dimensional fractional maximum along each side of said quandrangle comprises: identifying a grid point on a grid axis corresponding to each side of said quandrangle having a one-dimensional maximum value as a grid point maximum; o identifying a grid interval on each said grid axis within which said one- S dimensional, fractional maximum is located by comparing grid point values of grid points on each said grid axis located adjacent to and on opposite sides of said grid point maximum; S* selecting a set of four sample grid points on each said grid axis, wherein a first and second sample grid point of each set of sample grid points are located on a first side of each said one-dimensional, fractional maximum and wherein a third and 20 fourth sample grid point of each set of sample grid points are located on a second side of each said one-dimensional, fractional maximum; computing a first and a second estimate of the position of each said one- dimensional, fractional maximum using three-point parabolic approximations centered at grid points flanking each said grid point maximum; and combining said first and second estimates of the position of each said one- dimensional, fractional maximum with their corresponding grid point maximum to compute a more accurate position of each said one-dimensional, fractional maximum.
  2. 3. The method of claim 2, wherein said step of combining said first and second estimates of the position of each said one-dimensional, fractional maximum with their corresponding grid point maximum to compute a more accurate position of ach said one-dimensional, fractional maximum comprises: 24 calculating a corrected estimate of said one-dimensional, fractional maximum according to the equation: a(Xriqht-Xeft) R Xo=Xm+ 1-R where Xm= the grid point maximum, Xright=Said first estimate, Xieft=, said second estimate SR: KXc-Xm 2 R R Xc= one of said first and second estimates that is closer to said one-dimensional, fractional maximum, and a= 0.75.
  3. 4. The method of any one of claims 1 to 3, further comprising the step of performing a final correction to said sub-pixel coordinate location for said sub-pixel maximum comprising the steps of: S" adding an x axis correction factor to the x coordinate of said maximum sub- pixel coordinate location; and adding a y axis correction factor to the y coordinate of said maximum sub- pixel coordinate location. The method of claim 4, wherein said x axis correction factor is calculated according to the equation: b(Xf+ 0.5)Xs(Xf-0.5); where b is a fitting constant -0.22, Xf=sub-pixel fractional maximum along x axis, and Xs=sign (Xf)sqrt( IXf b.
  4. 6. The method of any one of claims 1 to 5, wherein said step of computing each said one-dimensional fractional maximum comprises: identifying a grid point maximum as a grid point having a maximum grid point value; identifying a grid interval within which said one-dimensional, fractional maximum is located by comparing said grid point values of grid points located adjacent to and one opposite sides of the grid point maximum; and computing an estimate of the position of each said one-dimensional, fractional maximum using a gaussian approximation method.
  5. 7. The method of claim 6, wherein said gaussian approximation method comprises: computing a ratio of a second derivative of a gaussian curve containing said sub-pixel maximum to a first derivative of said gaussian curve; 15 deriving a third-order equation including the ratio of derivatives of said gaussian curve and a fractional distance of said sub-pixel maximum from said grid point maximum; and iteratively solving said third-order equation to determine said fractional **distance.
  6. 8. An improved method of accurately determining a position of a given object substantially as described herein with reference to the drawings. DATED THIS TWENTY-SIXTH DAY OF SEPTEMBER 2001 ACUITY IMAGING, LLC BY PIZZEYS PATENT AND TRADE MARK ATTORNEYS
AU44092/99A 1999-05-28 1999-05-28 Method of accurately locating the fractional position of a template match point Ceased AU753454B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US1999/011954 WO1999062024A1 (en) 1998-05-28 1999-05-28 Method of accurately locating the fractional position of a template match point

Publications (2)

Publication Number Publication Date
AU4409299A AU4409299A (en) 1999-12-13
AU753454B2 true AU753454B2 (en) 2002-10-17

Family

ID=22272861

Family Applications (1)

Application Number Title Priority Date Filing Date
AU44092/99A Ceased AU753454B2 (en) 1999-05-28 1999-05-28 Method of accurately locating the fractional position of a template match point

Country Status (1)

Country Link
AU (1) AU753454B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113408238A (en) * 2021-05-25 2021-09-17 奥士康科技股份有限公司 Method for determining optimal alignment value of anti-welding 8-point CCD

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5495537A (en) * 1994-06-01 1996-02-27 Cognex Corporation Methods and apparatus for machine vision template matching of images predominantly having generally diagonal and elongate features

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5495537A (en) * 1994-06-01 1996-02-27 Cognex Corporation Methods and apparatus for machine vision template matching of images predominantly having generally diagonal and elongate features

Also Published As

Publication number Publication date
AU4409299A (en) 1999-12-13

Similar Documents

Publication Publication Date Title
CA2334938C (en) Method of accurately locating the fractional position of a template match point
KR100305419B1 (en) Image registration method, image registration apparatus and recording medium
US7599512B2 (en) Multi-parameter highly-accurate simultaneous estimation method in image sub-pixel matching and multi-parameter highly-accurate simultaneous estimation program
US6801653B1 (en) Information processing apparatus and method as well as medium
US6751338B1 (en) System and method of using range image data with machine vision tools
US7463773B2 (en) Fast high precision matching method
KR19990067567A (en) Vector Correlation System for Automatic Positioning of Patterns in Images
CN110084743B (en) Image splicing and positioning method based on multi-flight-zone initial flight path constraint
CN110415304B (en) Vision calibration method and system
CN111123242A (en) Combined calibration method based on laser radar and camera and computer readable storage medium
CN116129037B (en) Visual touch sensor, three-dimensional reconstruction method, system, equipment and storage medium thereof
CN115201883A (en) Moving target video positioning and speed measuring system and method
EP0460960A2 (en) Data processing
Tanaka et al. A parametric template method and its application to robust matching
CN110223356A (en) A kind of monocular camera full automatic calibration method based on energy growth
CN113642397A (en) Object length measuring method based on mobile phone video
Paffenholz et al. Geo-referencing point clouds with transformational and positional uncertainties
AU753454B2 (en) Method of accurately locating the fractional position of a template match point
US6961459B2 (en) Three-dimensional data processing device, three-dimensional data processing method, and program providing medium
CN117058008A (en) Remote sensing image geometry and radiation integrated correction method, device, equipment and medium
CN115112098A (en) Monocular vision one-dimensional two-dimensional measurement method
Wang et al. Facilitating PTZ camera auto-calibration to be noise resilient with two images
US20110063435A1 (en) Position measuring target, position measurement system, calculation device for position measurement and computer-readable medium
US20060241898A1 (en) Automated alignment of spatial data sets using geometric invariant information and parameter space clustering
CN104637055B (en) A kind of high precision image matching process based on small scale features point

Legal Events

Date Code Title Description
DA3 Amendments made section 104

Free format text: THE NATURE OF THE AMENDMENT IS: THE PRIORITY DETAILS IN REGARD TO PATENT APPLICATION NUMBER 44092/99 SHOULD DELETE: 09/085866

PC1 Assignment before grant (sect. 113)

Owner name: ACUITY IMAGING, LLC

Free format text: THE FORMER OWNER WAS: ACUITY IMAGING, LLC, KIRILL K. PANKRATOV

FGA Letters patent sealed or granted (standard patent)