• Keine Ergebnisse gefunden

The Calculation of the Homology

Im Dokument Error Propagation (Seite 197-0)

In the following I will mainly make use of constraint 3, which allows the compu-tation of the plane harmonic homology relating the two sides of a projected SOR.

This, in turn, can be used for further grouping, recognition and reconstruction, as we have seen in the previous section.

Rather than trying to solve for the plane harmonic homology all at once (for which usually no closed form solution exists), it is far easier to compute separate results for the axis and vertex. Doing so basically means to compute a best-fit line through a number of points (the axis), and the most likely intersection of a number of lines (the vertex). This is a standard problem in computer vision (and consequently should have a standard solution), but nonetheless many different algorithms for the solution of this problem are in widespread use, some of which were presented in Section 4.3 and 4.4. I will show that the four most commonly used candidates

198 The Calculation of the Homology

can all be reduced to essentially the same equation, which together with 4 different feature-sets allow us a systematic comparison of 16 different variants. These are described in Sec. 7.4.1. We will see in Sec. 7.4.4 that the most commonly used algorithm, total least squares on the Euclidean plane, which did so well for the calculation of lines through edgels in Section 4.3, tends to be the least reliable for this application. This is another nice example that no silver bullet exists in projective geometry and that it always pays off to incorporate an analysis of the error-behaviour of features. We also need a vertex v for the calculation of the plane harmonic homology, and 3 different variants for the calculation of the vertex will be discussed in Sec. 7.4.2, although I will show in Sec. 7.4.4 that the choice of the vertex is of only secondary importance. Section 7.4.3 finally describes the error measure which I will use to assess the goodness of the calculated transformation.

7.4.1 Axis Calculation

We have seen in Section 7.3.2 that the axis of an SOR can be found as a line through a number of feature-points such as bitangent-intersections and cross-points. The most common approach for the calculation of a line through points minimises the orthogonal Euclidean distance between the points and the line:

mina,b,c

1 N

XN

i=1

(axi+byi+c)2+λ(a2+b2−1). (7.2) This is essentially (4.17); the functional implicitly assumes that the error in the feature-points is Gaussian and independently, identically, and isotropically distrib-uted (iiid). In the context of computer vision often a slightly different formulation is chosen, based on homogeneous coordinates

mina,b,c

1 N

XN

i=1

(axi+byi+czi)2+λ(a2+b2+c2−1) (7.3) with x2i +yi2+z2i = 1. This functional minimises (locally) orthogonal distances between points on a unit sphere and a great circle representing the line. It is again implicitly based on the assumption of iiid Gaussian noise, but this time on the unit sphere — projecting this back into the image plane we will observe that points further away from the image centre have a much larger standard deviation, and that the error-distribution is a skewed Gaussian. This can be helpful to mirror the fact that features further away from the image plane are indeed usually less accurate than the ones closer to the image plane (as we observed in Section 4.4.3, compare Figure 4.10 on Page 101) — but of course this need not be the case.

7.4.1 Axis Calculation 199

Alternatively, both functionals can explicitly consider error-distribution of the fea-ture points which more closely resemble their true distributions. In the following I assume iiid Gaussian noise in the bitangent points and use standard linear er-ror propagation to propagate these erer-ror to the feature-points, multiplying the bitangent-points’ covariance matrix on both sides with the Jacobian of the feature points. We then again get Gaussian noise, but now with a separate distribution Σpifor each pointpi= (xi.yi, zi)T, and therefore where we can calculate the variance in the direction of the line asσd2

i= ℓTΣpi

— the Jacobian of the distance turns out to be the line itself — this is essentially what we started from when fitting a line to edgels in Section 4.3.

Closer inspection shows that the four equations (7.2)–(7.5) can be subsumed by the more general expression coordi-nates) or{1,1,1}(for homogeneous coordinates) as its diagonal elements. The Σpiis either the identity-matrix (implicit error model) or a full covariance matrix (explicit model). The minimum can be calculated explicitly if an implicit error-model is used, or else using Kanatani’s unbiased estimator [77] as described in Section 4.3.2.1.

In addition to differences in the geometric- and error model I can subdivide algo-rithms by features used, compare Figure 7.5. These are in our case intersections only versus intersections and crosspoints, intra-pair features only versus intra- and interpair features.

I am coding the different combinations as follows:

8 4 2 1

Error Model Geom. Model Features Combinations expl. / impl. xyz/xy1 i&c/i inter / intra

1/0 1/0 1/0 1/0

200 The Calculation of the Homology

This results in 16 different methods for the calculation of the axis, numbered 0–15.

Alg. 3 is the one most commonly used, while Alg. 10 was, e. g., used in [3–5].

7.4.2 Vertex Calculation

I have only implemented three different algorithms. We will, however, see in Sec-tion 7.4.4 that for SORs the actual vertex model chosen makes little difference.

The three models are labelled 0 (an affine model without explicit error-model, im-plemented as the average angle towards the vertex at infinity), 2 (a projective model using Euclidean coordinates and no explicit error-model), and 14 (a pro-jective model using homogeneous coordinates and an explicit error-model) — the latter two are calculated by substitutingℓwith v in (7.6) andpi with the line through two corresponding distinguished points. As for the number of features used, each bitangent-pair creates exactly 2 lines through the vertex; pairing non-corresponding distinguished points is not possible.

7.4.3 Error Measure

For contours related by a planar harmonic homology, it is directly possible to quantify the quality of the calculated planar harmonic homology even without ground truth — we can simply useHto map one side of the contour onto the other side, and use some error measure between the two curves to assess the goodness of fit. This is often done using the Hausdorff distance of the two contours, basically the maximum distance between the two sets. This is, however, not a very intuitive or descriptive measure, and I use instead the average difference between edgels on each side of the contour,

ε= 1 y2−y1

Z y2

y1 kpright(y)−Hpleft(y)kdy , (7.7) where (7.7) assumes that the object was rotated into an upright position. Note that even for perfect symmetry this error measure or residual will not be zero, as the position of the edgels along the contour will be noisy. We can therefore only expect a value in the same order as the standard deviation of our edge detection algorithm (or, more accurately,√

2 times the standard deviation, as both sides will be subject to measurement errors). In this thesis I used a very simple implementation of the Canny edge finder [24] to extract the edges. Its standard deviation on grey-level images is in the order of 0.1 pxl≤σ≤0.3 pxl.

Im Dokument Error Propagation (Seite 197-0)