next up previous contents
Next: Border tracing Up: MODELING OF MULTIPLE REGISTERED Previous: Segmentation

Quadric fitting

Surface fitting to segmented data considers to estimate the parameters of the surface primitives that have been a priori chosen to represent the data on the segments. There exist plenty of different types of surfaces and our focus is on quadric surfaces. Quadric fitting is usually formulated as a nonlinear least squares problem, which is solved either using iterative methods for minimizing a nonlinear function or casting it as an eigenvalue problem which is solved directly and no approximate values for the parameters are needed.

The techniques for quadric fitting to segmented data are reviewed with emphasis on disparity data in [I]. Further references include [11], where plane fitting is addressed as an eigenvalue problem and quadric fitting is solved directly using the method of Lagrange multipliers. In [23,24,27], various iterative methods including the quasi-Newton, conjugate gradient, and simplex are compared for cylinder fitting. A close initial estimate is needed especially if the data cover only a part of the circumference of the cylinder. In [31], the reconstruction of objects having quadric patches is improved by incorporating geometric constraints that fix feature relationships between the patches. In [7], the parameters of a quadric are estimated from two quadratic curves fitted to the measured image coordinates of two stripes projected onto the object surface.

We apply the eigenvector method or equivalently, the total least squares method to plane fitting in [IV, V]. In cone and cylinder fitting in [I] and [19], we use the Levenberg-Marquardt nonlinear least squares method and choose the unknown parameters so that they have a direct geometrical interpretation such as the axis and vertex of a cone and the axis of a cylinder. Our contribution is focused on the initial estimation of the parameters of a cylinder [I]. The direction of the axis is estimated as a mean of a set of cross products of non-parallel surface normals and the location of the axis is fixed as an intersection of a fan of planes determined by the axis direction and surface normal vectors at the data points. We also stress the correct order of performing the rotations and the translation in rigid body transformations. The results of cylinder fitting are illustrated in [I, Figs. 5, 7].

The parameters of a model primitive are estimated from data transformed to the first x1,y1,z1 coordinate system in case the support of the segment contains locations on several domains Sk [IV]. The values of the modeled maps ${\bf\hat u}_k$ within the segment are computed so that the points $(\hat x_{k1}({\bf s}),\hat y_{k1}({\bf s}),\hat z_{k1}({\bf s}))$, ${\bf s}\in S_k$, $k=1,\ldots ,L$, lie on the fitted surface. The modeling can be performed also in a single frame if the segment has support exclusively on a single domain. Moreover, an appropriate function can be fitted to the values $u_k({\bf s})$ since these are corrupted by measurement errors only while the domain coordinates are noise-free. Such an approach is used for plane fitting to disparity data in [I]. In cone and cylinder fitting, the initial estimation of the axis line is performed in the xk,yk,zk system since the estimation is based on the object geometry that is usually not the same in the map coordinates. The results of modeling are illustrated in [I, Figs. 4-7; IV, Figs. 4-5].


next up previous contents
Next: Border tracing Up: MODELING OF MULTIPLE REGISTERED Previous: Segmentation
Olli T Jokinen
2000-03-17