Five different cameras were used to determine their intrinsic parameters ... inal contour (solid line), the resampled points (broken line) and the corresponding ...
ˇ cek, Vojtˇech Franc (eds.) Computer Vision Winter Workshop 2010, Libor Spaˇ Nov´e Hrady, Czech Republic, February 3–5 Czech Pattern Recognition Society
An Evaluation of Camera Calibration Methods Using Digital Low Cost Cameras Michael H¨odlmoser, Helmut Zollner, and Martin Kampel Institute of Computer-Aided Automation, PRIP Group Vienna University of Technology, Austria [hoedl,zollnerh,kampel]@prip.tuwien.ac.at Abstract Camera calibration is an essential task in 3D computer vision and is needed for various kinds of augmented or virtual reality applications, where the distance between a real-world point and the camera needs to be known. A robust calibration technique using contours of Surfaces of Revolution is presented in this paper. Relevant contributions are shown and discussed. Additionally, the algorithm is compared to a selection of three standard camera calibration implementations including the camera calibration toolbox for Matlab, multi-camera self-calibration and geometric and photometric calibration for augmented reality. The evaluation is performed using low cost cameras and is based on the stability of the calculation of intrinsic parameters (focal length and principal point). The results of the evaluation are shown and further improvements are discussed.
1
Introduction
Camera calibration is an important component in the field of 3D computer vision. This step is necessary for the extraction of three-dimensional information from twodimensional image data which can be equated with determining intrinsic and extrinsic camera parameters. There is a variety of existing implementations for determining the camera parameters. The task of camera calibration can mainly be divided in two different approaches: calibration using ground control points given in calibration patterns and self-calibration, whereas there are different methods of self-calibration. This paper presents a contour-based self-calibration technique (iCBSC) using objects of revolution, based on the algorithm presented in [23]. The contours of Surfaces of Revolution (SoR) in the image are determined by relating it to a so-called harmonic homology, which is determined by the image of the rotation axis and the vanishing point being the intersection of all cross-section projections of the SoR. Afterwards, the estimation is optimized and the intrinsic parameters can be computed. Additionally, our work is compared to a selection of three existing methods, which are the camera calibration toolbox for Matlab (CCTfM1 ), multi-camera self-calibration (MCSC2 ) and ge1 Available online at http://www.vision.caltech.edu/ bouguetj/calib_doc/, last visited: 09/12/2009. 2 Available online at http://cmp.felk.cvut.cz/ svoboda/ ˜ SelfCal/, last visited: 09/12/2009.
ometric and photometric calibration for augmented reality (bazAR3 ). The evaluation is based on the accuracy of intrinsic parameters. These parameters are used because we want to answer the open research question, whether low cost cameras suffer from drift of the intrinsic parameters or not. Due to the fact that in the last few years the amount of mounted cameras increased rapidly, there is a high demand for high level image analysis using low cost cameras. Nevertheless, this field of research is widely unexplored to date. Low cost cameras are sensor on-board cameras utilized for applications where small size and low power consumptions are important. In Section 2, the theoretical background for calibrating a camera is explored. By presenting relevant publications, Section 3 gives an overview of the present state of research. Next, Section 4 presents our calibration implementation and points out relevant contributions of the algorithm. Section 5 describes an additional selection of three existing calibration methods, which are used for further evaluation purposes. All methods are evaluated and the results are brought up in Section 6.
2
Camera Calibration
A prerequisite for many applications from the field of 3D computer vision is the calibration of a camera. This step is necessary to determine the distance between the input device and various points of a real-world object. Camera calibration is known as the calculation of intrinsic and extrinsic parameters of a camera. The camera matrix K, which describes the interior orientation of the camera is defined by ⎡ ⎤ 𝛼𝑥 𝑠 𝑝𝑥 0 K = ⎣ 0 𝛼𝑦 𝑝𝑦 0⎦ . (1) 0 0 1 0 K is a 3x4 matrix, composed by the intrinsic camera parameters focal length (f), coordinates of the principal point (𝑝𝑥 ,𝑝𝑦 ) and a skew 𝑠. The variables 𝛼𝑥 = 𝑓 ∗ 𝑚𝑥 and 𝛼𝑦 = 𝑓 ∗ 𝑚𝑦 , represent the focal length considering a scaling factor. Two views of a rigid scene are related by epipolar geometry[7]. Self-calibration denotes an alternative of camera calibration which does not need to have basic calibration blocks but enables direct determination of the camera parameters from uncalibrated images. The simplest way 3 Available online at http://cvlab.epfl.ch/software/ bazar/, last visited: 09/12/2009.
1
An Evaluation of Camera Calibration Methods Using Digital Low Cost Cameras of self-calibration assumes unknown but consistent intrinsic parameters. Thus, the restriction of not using any zoom factor needs to be fulfilled. Another constraint is that either the recorded scene is an environment of rigid objects altering their positions only with respect to relative camera movements. As a result, the camera matrix will change over time but the interrelationship between two temporally subsequent images, taken from the same camera, can be defined using homographies. A homography describes the affinity of two points from different views, where the point of the first view corresponds to the point in the second view (= homology) [4]. Therefore, a homography is an invertible projective transformation, which is linear in the homogeneous coordinate system [7, 17]. A homography for the point correspondence xi ↔ x′i , where hjT is the 𝑗 𝑡ℎ row of the matrix H, is denoted by ⎛ 1T ⎞ h xi Hxi = ⎝h2T xi ⎠ (2) h3T xi The calibration process can be simplified if additional information about the geometric parameters of the scene is given. More precisely, orthogonality, coplanarity and rotational symmetry of points, edges and objects are important features, because with this knowledge vanishing points can be determined. Additionally, if geometric properties can be assigned to features in the image, a camera can be calibrated by only one image. This method is also called single-image calibration. [7, 17]
3
Related Work
One of the most famous algorithms is Tsai’s camera calibration method which is presented in [20] and consists basically of four steps. Ground control points of a basic calibration block are determined and estimated in the image plane. The final computation is performed by iteratively minimizing the error in the image plane. Faugeras et.al. presented one of the first self-calibration algorithms, where the intrinsic parameters are determined before the calibration process, in [3]. This concept is further developed in [14] and [8] using an over-determined polynomial equation considering multiple views. There are several approaches which are only applicable when fulfilling some restrictions. These restrictions can for example be that the camera’s movement is only linear, as described in [15], or the projection center coincides with its rotation center as proposed in [9]. The automatically performed calibration of a stereo rig is presented in [25]. Approaches with less restrictions are based on points of interest. These methods can be divided in contour-based, intensity-based and model-based algorithms. An example for the contour-based method is Lowe’s Key Point Descriptor, which is described in [13] and is the basis for the Harris-Corner-and-Edge-Detector, presented in [6]. Since the interest points are represented as vectors, they are very robust against scaling, rotating, changing the point of view, image noise, or even linear changing of illumination. One example for the implementation of a model-based algorithm
2
[←]
is presented in [12]. A known environment, for example parts of a used road, is monitored over a period of time and the movement of the cars is tracked. This tracking makes it possible to compute a homography matrix between temporal and spatial subsequent images which enables setting up a world coordinate system and determining the relative orientation between multiple cameras. By decomposing the homography matrix which is explained in [2] both intrinsic and extrinsic parameters can be calculated. In [1], another possibility of self-calibrating a camera is introduced. By detecting parallel lines in an image, vanishing points can be determined. The method is mainly divided in two parts. First, parallel lines must be detected and second, a vanishing point for a bundle of lines needs to be defined. For the first step a linear Hough Transformation may be used and for the second step the intersection of all lines in a group may coincide with the vanishing point of the whole group. The method is predestinated for scenarios with many parallel lines and orthogonal planes, for example an image showing the interior or the exterior facade of houses. Vanishing points may also be computed out of rotationally symmetric objects which is presented in [23] and in [22]. The contour of the object is detected by a suitable edge detector. The perspective projection of rotationally symmetric objects is invariant regarding a harmonic homology and can be described by it. The rotational axis coincides with the axis of the harmonic homology, the vanishing point coincides with the center of the homology. A further explanation may be found in [23]. The properties of low cost cameras were evaluated in [11] in 2004. Five different cameras were used to determine their intrinsic parameters and the according stability of the calculated values. The resolutions of the cameras range from 640x480 pixels to 3060x2036 pixels. The results were evaluated concerning accuracy of measurements and temporal variations of intrinsic parameters. To sum up [11], low cost consumer cameras can be used for 3D vision applications with a limited accuracy. As long as no zoom is used, the intrinsic parameters remain stable, also over a time period of four months. In [18], five different calibration methods are tested and compared concerning their accuracy using a standardized notation for all algorithms. The implementations of Hall ([5]), Faugeras ([3]) with and without consideration of lens distortion, Tsai ([20]), Weng ([21]), are compared by presenting them all with the same notation. The algorithms are evaluated using a lens distortion calculation accuracy.
4
Camera Calibration From Contours of Surfaces of Revolution
Our camera self-calibration solution contributes to the calibration method presented in [23]. Since pure selfcalibration methods should not depend on any user input, we present a fully automatic camera self-calibration method using SoRs. As input for the calibration procedure, a contour 𝜌 is used, which is extracted by subtracting the background and applying a Prewitt Edge filter. The contour of a white clay pot of revolution is shown in Figure 1.
Michael H¨odlmoser, Helmut Zollner, and Martin Kampel
[←]
Figure 2: Automatic bitangent point search using the SoR’s original contour (solid line), the resampled points (broken line) and the corresponding convex hull (dashdotted line).
Figure 1: White clay pot and its contour. Basically, the algorithm consists of three steps: ∙ Initial estimation of harmonic homology based on vanishing points. ∙ Optimization of the initial parameters. ∙ Estimation of intrinsic parameters.
algorithm stops due to adjacent ordered stored points. By computing the connecting line of the two points, the corresponding bitangent is determined. Two bitangent points b1 and b′1 , located on bl1 and their counterparts b2 and b′2 , located on the second bitangent bl2 , are shown in Figure 3. The intersection between vl and vl′ is called the vanishing point vx of the contour 𝜌. Note that the vanishing point is not shown in the figure due to less space.
A harmonic homology is given when a point x′ is assigned by a homology to the point x. x and x′ are harmonic conjugates with respect to the homology center ch and the intersection ci between the homology axis and a line which passes through x and x′ . In other words, a harmonic homology is given when the following equation is fulfilled. (ch − x)(ci − x′ ) = −1 (ch − x′ )(ci − x)
bl2
bl1
ρ b1 b2
(3)
A silhouette 𝜌 of an object of revolution, which is viewed under a pinhole camera is invariant to its harmonic homology, which means that the vanishing point of 𝜌 coincides with the center of the harmonic homology. A vanishing point of a single line is the intersection of the image plane with a line, parallel to the world line, passing through the camera center [7]. Hence, vanishing points only depend on the direction of the line. For calculating the initial parameters needed for the first estimation of the SoR’s contour, the vanishing points are determined. This can be done by identifying two bitangents if the gap between contour and bitangent is convex. The accuracy of the implementation is based on the algorithm initialization. Our solution can solve the problem of finding bitangent points automatically without computing an Hough accumulator, as presented in [23]. As a first step an arc length resampling of the contour data is done, delivering a normalized and parametrized functional description of the curve. In the next step in order to reduce noise and to get smoother gradients, we apply a Gaussian filter to the parameterized curve. Additionally, the convex hull of the resampled points on the contour is determined. The solid line in Figure 2 represents the original contour of the object, the broken and the dashdotted line are the contour’s resampled points and the corresponding convex hull, respectively. Next, the first derivate of the convex hull is computed to get the tangent’s directions. Two points with the same direction can be picked from the convex hull by increasing or decreasing the point index depending on a predefined direction deviation threshold. Once a point is found, the
b1'
vl b2' vl' ah
lx
Figure 3: Determination of initial parameters. Two bitangents bll and bl2 are calculated, which pass through b1 , b′1 and b2 , b′2 , respectively. The vanishing point vx is given by the intersection of vl and vl′ .
Since there can be found more than two bitangents, the two correct ones must be picked. This is done by calculating the initial homology for all possible combinations of bitangents. The pair of bitangents where the initial homology delivers the smallest distance d between 𝜌 and 𝜌′ is used for all further steps. Figure 4 shows all bitangent point candidates and the four correct bitangent points, determined by the algorithm. b1 b 1‘ b4 b 4‘ b3 b3‘
b1 b 1‘
b2‘
b2 b2‘
b2
Figure 4: F.l.t.r.:All bitangent points found on the SoR’s contour and the four correct ones picked by the algorithm.
Figure 5 shows the initial guess of 𝜌′ , according to the bitangent combination. 𝑏𝑙1 to 𝑏𝑙4 correspond to the bitan-
3
An Evaluation of Camera Calibration Methods Using Digital Low Cost Cameras
[←]
Figure 5: All initial guesses for 𝜌′ for all combinations of bitangents. Combinations f. l. t. r.: 𝑏𝑙1 and 𝑏𝑙2 , 𝑏𝑙1 and 𝑏𝑙3 , 𝑏𝑙1 and 𝑏𝑙4 , 𝑏𝑙2 and 𝑏𝑙3 , 𝑏𝑙2 and 𝑏𝑙4 , 𝑏𝑙3 and 𝑏𝑙4 . The best fitting contour, meaning the smallest distance between 𝜌 and 𝜌′ , is shown in the leftmost image.
gent points shown in Figure 4. The best fitting contour, meaning the smallest distance between 𝜌 and 𝜌′ , is shown in the leftmost image. The goal of the algorithm is to find the best parameters (vl ,ah ) fitting the contour of the object’s shape. Therefore, a harmonic homology 𝑊 is used to assign a symmetric complementing position 𝜌′ to each position of the silhouette 𝜌. Therefore, after a correct initialization of the algorithm, the cost function of the harmonic homology, which assigns 𝑝 to its complementary 𝑝′ , needs to be minimized. The geometric distance between two silhouettes is computed by using N points xi , ∀𝑖 1 . . . 𝑁 , from the initial contour. Equation 4 shows the minimization of the distance function dist. 𝐶𝑜𝑠𝑡𝑊 (vx , ah ) =
𝑁 ∑
𝑑𝑖𝑠𝑡(𝑊 (vx , ah )xi , 𝜌)2 .
(4)
𝑖=1
In case of poor initial conditioning (e.g. less overlapped and rotated contours) and therefore a high initial cost function, it is necessary to have a robust estimation of the error. There are a couple of methods for computing this cost function (e.g. area overlapping, symmetric Hausdorff distance). We apply a nearest pair search based on a Delaunay triangulation between model and test curve, which yields the correspondences of data points for scoring the similarity between them. This approach works best in all our setups in terms of robustness, even in case of poor initial conditioning. As can be seen in Figure 6, the dotted line represents the initial guess of the object’s contour and the final contour is visualized by the solid line.
Figure 6: Initial and final contour of the SoR represented by the
ah3 lx2
ah2
lx3 lx1 ah1
Figure 7: Determination of intersection of vanishing lines lxi using three objects of revolution in one image.
mined from two objects within one image, or one object in two images where each image represents the object from different points of view. After calculating two vanishing points vxi , the camera can be calibrated by computing the lines lxi , which passes through vxi and are orthogonal to ahi . The principal point is the intersection of three or more lines ahi orthogonal to lxi . This point can be computed by solving the linear equation system ⎡
⎤ lx1 ⎡ ⎤ ⎢lx2 ⎥ 𝛼𝑢0 ⎢ ⎥⎣ ⎢ .. ⎥ 𝛼𝑣0 ⎦ = 0, ⎣ . ⎦ 𝛼 lxn
(5)
where 𝛼 is a scale factor. The focal length can afterwards be computed by the projection of the resulting principal point to the rotational axis ahi . According to [23], the focal length is given by
dotted and the solid line, respectively.
In a next step, the intrinsic parameters can be estimated by having a homology between 𝜌 and 𝜌′ . When aspect ratio equals one, skew equals zero and at least two vanishing points of the object of revolution are known, the intrinsic parameters can be estimated. Figure 7 shows three different objects in one image used for calibrating the cameras. The solid lines lxi represent the lines orthogonal to the SoR’s rotation axis, passing through the corresponding vanishing point vxi . The broken lines represent the axes of revolution ahi . To fulfill the needs for calibration, at least two vanishing points must be calculated. These two points may be deter-
4
𝑓=
𝑀 1 ∑√ ∣x0i − vxi ∣ 𝑑𝑖𝑠𝑡(x0i , ahi ), 𝑀 𝑖=1
(6)
where 𝑑𝑖𝑠𝑡(x0i , ahi ) designates the orthogonal distance between the point x0i and the line ahi . This approach cannot be applied, if the object of revolution is a conic as the number of harmonic homologies will be infinite. In that case, there are multiple results for minimizing the cost function. Additionally, vanishing points can not be computed due to ill-conditioning within the finite space if real-world parallel lines are mapped parallel onto the image plane. A solution for this problem is presented in [10]. [7, 23]
Michael H¨odlmoser, Helmut Zollner, and Martin Kampel
5
Additional Evaluated Camera Calibration Methods
In the following section an additional selection of three existing implementations for calibrating a camera is presented. 5.1 Camera Calibration Toolbox for Matlab The CCTfM is an open source implementation to determine both intrinsic and extrinsic parameters of a camera. The optimized calibration procedure is based on Zhang’s calibration method [24]. For applying the algorithm, the user needs to identify the corners of the calibration pattern, which in this case must be a checkerboard pattern. The grid corners get extracted and the parameters are calculated. There are many references to this technique in literature. Additionally, many add-ons, which for example try to extract corners automatically, are developed. 5.2 Multi-Camera Self-Calibration The second presented implementation is called MCSC. A minimum of three cameras with overlapping views is required for calibration which is done by waving a laser pointer trough the working volume. The calibration is done fully automatic. In a first step, the algorithm is looking for corresponding laser points. For all images, a mean image and a standard deviation image is calculated. Furthermore, a difference image between the mean image and the current image, considering the laser’s color, is computed. Several constraints must be satisfied for a successful laser point classification. The detected points are upsampled and a two-dimensional Gaussian is fitted to gain higher accuracy. Epipolar lines are calculated using the Random Sample Consensus (RANSAC) algorithm. Points located too far away from these lines are classified as outliers and get excluded from the further calibration process. A few more outliers are identified using a pairwise validation technique and comparing reprojected points. In the next step, assuming skew and aspect ratio to be zero, the Euclidean projection matrices are calculated and internal and external parameters are computed by decomposing the matrices. Since external parameters are known, the position of the cameras in a world coordinate can be determined. [19]
[←] Therefore, the results of our implementation iCBSC were compared against the results obtained by MCSC, bazAR and CCTfM. For all evaluation purposes, the CCTfM calculations were used as ground truth. We did only consider the intrinsic parameters focal length and principal point for accuracy evaluations. Three Unibrain Fire-i cameras were used for the investigation procedure. The camera model provides an image resolution of 640x480 pixels and a lens distortion of kc =[0.41 0.18]. One pixel is specified by 5.6 x 5,6 𝜇m by the manufacturer. This camera model was used because of a fixed lens, very little dimensions, low power consumption and a rugged housing, which makes it a typical representative of low cost cameras. Additionally, it is the only low cost camera providing a FireWire interface, which is needed for the bazAR implementation. Every implementation needs different input data. iCBSC, MCSC, bazAR and CCTfM need a rotational symmetric contour, a laser point, an image where key points can be detected, and a checkerboard, respectively. Figure 8 shows the calibration objects used for the various calibration procedures shown by one camera. Note that at least eight corresponding laser points over time are used for calculating a homography matrix using MCSC.
(a) A rotational symmetric ob-
(b) A laser point, represented
ject for iCBSC.
by the region of light pixels surrounded by a dark background used by MCSC. Image 2 − Image points (+) and reprojected grid points (o)
O 50
Y
100 150
X 200 250 300
5.3 bazAR bazAR is a library for augmented reality applications and was developed by the Ecole Polytechnique Federale de Lausanne. Intrinsic and extrinsic parameters can be calculated. The library may be used for calibration using a planar calibration pattern as well as for self-calibration. Multiple cameras get calibrated by calculating the homographies between them. Before generating homograhies, key points need to be extracted from the calibration pattern. Randomized trees are used for key point recognition. The intrinsic parameters can be extracted via the determination of the image of the absolute conic. [16]
6
Experiments
In this section, the calibration procedure for a single camera and for a network of multiple cameras is evaluated.
350 400 450
(c) An image and the automati-
200 300 400 500 600 (d) 100A checkerboard for the
cally extracted key points used by bazAR.
camera calibration CCTfM.
using
Figure 8: Sample input images for all implementations used at the evaluation. Our algorithm (iCBSC) uses (a) rotational symmetric objects, MCSC needs (b) a laser point, bazAR needs (c) an image where key points can be located and CCTfM needs (d) a checkerboard to extract corners and edges.
MCSC was used for calibrating a camera network where the test run was performed three times. CCTfM, bazAR and iCBSC were tested for calibrating a single camera. Each test run was performed three times with every single cam-
5
An Evaluation of Camera Calibration Methods Using Digital Low Cost Cameras 5.5
Focal Length (mm)
5
CCTfM bazAR MCSC iCBSC
4.5
4
3.5
3
1
2 Camera Number
3
Horizontal Deviation of Principal Point from Center (Pixel)
(a) Calculated focal length.
250
200
CCTfM bazAR MCSC iCBSC
150
100
50
0
1
2 Camera Number
3
[←]
rithms. The maximal difference between the maximal and minimal calculated focal length is measured using MCSC and amounts to 1.26 millimeters, whereas the CCTfM algorithm calculates a difference of 0.06 millimeters. Figures 9b and 9c show the horizontal and vertical deviation of the principal point from the center point, respectively. The points are measured in pixels on the image plane. Both the vertical and the horizontal position are stable for the CCTfM implementation. A horizontal and vertical deviation equal to zero means that the image plane is parallel to the camera plane. The MCSC method has a maximal deviation of more than 250 pixels in horizontal direction and more than 220 pixels in vertical direction. Theoretically, this result would mean a massive rotational displacement of the image plane related to the camera plane, which in this case can only be explained by a calculation error. The maximal difference between the maximal and minimal deviation of the principal point from the center point is measured using MCSC and amounts to 203.62 pixels in vertical direction and 222.03 in horizontal direction. However, the CCTfM algorithm calculates a maximal deviation of 23.78 pixels and 7.78 pixels in vertical and horizontal direction, respectively. Table 1 presents the mean absolute error of all methods. The mean is composed using all three test runs. The results obtained from the CCTfM method are taken as ground truth.
Vertical Deviation of Principal Point from Center (Pixel)
(b) Calculated horizontal position of principal point.
f (mm) 200
CCTfM bazAR MCSC iCBSC
cam 1: cam 2: cam 3:
0.554 0.284 0.620
cam 1: cam 2: cam 3:
0.508 0.618 0.540
cam 1: cam 2: cam 3:
0.584 0.154 0.555
150
100
50
0
1
2 Camera Number
3
(c) Calculated vertical position of principal point.
𝑢0 (Pixels) iCBSC 92.590 47.197 65.443 bazAR 47.623 13.377 42.063 MCSC 95.547 125.037 156.687
𝑣0 (Pixels) 54.103 73.300 25.677 33.987 69.190 76.270 95.587 71.017 68.907
Table 1: Absolute mean difference of focal length and principal point between all evaluated algorithms compared to CCTfM.
Figure 9: Calculation of (a) focal length, (b) horizontal and (c) vertical deviation of the principal point from center point. Focal length is given in millimeters, the orientation of the principal point is measured in pixels on the image plane. The horizontal axis shows the camera number where every camera was tested three times.
era. The test results from the CCTfM implementation were taken as ground truth. Figure 9a shows the calculated focal length of all algorithms, measured in pixels on the image plane. As can be seen in Figure 9a parameter variations are negligible between different cameras from the same model and there is no outlier calculated by any of the three algo-
6
Table 2 shows the mean and standard deviation of the calculated intrinsic parameters. The focal length is measured in millimeters, all other metrics are presented in pixels on the image plane. The values show all evaluated methods considering each test run. On the data sheet, provided by the camera’s manufacturer, a focal length of 4.3 millimeters is given. The CCTfM gives the same result compared to the value from the data sheet. From all the self-calibration techniques, our solution provides the minimal standard deviation for focal length and the vertical position of the principal point.
Michael H¨odlmoser, Helmut Zollner, and Martin Kampel
𝜇f 𝜎f 𝜇 u0 𝜎 u0 𝜇 v0 𝜎 v0
CCTfM 4.29 0.02 9.51 9.98 4.71 2.72
bazAR 4.85 0.31 43.86 26.88 64.53 52.92
MCSC 3.86 0.45 135.27 71.24 83.10 67.07
iCBSC 3.81 0.19 77.92 34.71 55.74 48.14
Table 2: Mean (𝜇) and standard deviation (𝜎) of intrinsic parameters of all four evaluated implementations.
7
Conclusion
We presented a contour-based self-calibration technique, which enables fully automatic performed camera calibration. The algorithm was evaluated based on the stability of intrinsic parameters and in combination with three other methods, including the CCTfM, which was taken as ground truth. As expected, the experiments show that selfcalibration techniques offer a lower mean accuracy than manually performed calibration methods. Nevertheless, all tested and working algorithms offer a focal length accuracy of ±0.6 millimeters compared to the data sheet. Only the MCSC method delivered a deviation of the principal point from the center point of more than 200 pixels on the image plane. To sum up, each evaluated calibration method can be used for calibrating low cost cameras. When an accuracy of intrinsic parameters within a range of ±10 pixels on the image plane is needed, manual techniques must be used. In our evaluation process, low cost cameras did not suffer from drift of intrinsic parameters over time, which can be derived from the stable evaluation results, obtained by using the CCTfM.
Acknowledgement This work was partly supported by the Austrian Research Promotion Agency (FFG), KIRAS project iObserveNG.
References [1] Antone M. E. and Teller S. Automatic Recovery of Relative Camera Rotations for Urban Scenes. In Proceedings of CVPR’00, volume 2, pages 282–289, Hiltion Head Island, SC, USA, 2000. [2] Bradshaw K., Reid I., and Murray D. The Active Recovery of 3D Motion Trajectories and Their Use in Prediction. IEEE Transactions on PAMI, 19(3):219–234, 1997. [3] Faugeras O. D., Luong Q., and Maybank S. Camera SelfCalibration: Theory and Experiments. In Proceedings of ECCV’92, pages 321–334. Springer Verlag, 1992. [4] Forsyth D. A. and Ponce J. Computer Vision: A Modern Approach. Prentice Hall, August 2002. [5] Hall E.L., Tio J.B.K., McPherson C.A., and Sadjadi F.A. Measuring Curved Surfaces for Robot Vision. Computer Journal, 15(12):42Ű54, 1982. [6] Harris C. and Stephens M. A Combined Corner and Edge Detector. In Proceeding of the Forth Alvey Vision Conference, pages 147–151, Manchester, UK, 1988. [7] Hartley R. and Zisserman A. Multiple View Geometry in Computer Vision. Cambridge University Press, 2003. [8] Hartley R. I. Euclidean Reconstruction from Uncalibrated Views. In Proceedings of the Second Joint European - US Workshop on Applications of Invariance in Computer Vision, pages 237–256, London, UK, 1994. Springer-Verlag.
[←] [9] Hartley R. I. Self-Calibration from Multiple Views with a Rotating Camera. In Proceedings of ECCV’94, volume 1, pages 471–478, Secaucus, NJ, USA, 1994. Springer-Verlag New York, Inc. [10] He X. C. and Yung N. H. New Method for Overcoming IllConditioning in Vanishing-Point-Based Camera Calibration. Optical Engineering - The Journal of SPIE, 46(3), 2007. [11] Laebe T. and Foerstner W. Geometric Stability of Low-Cost Digital Consumer Cameras. International Archives of Photogrammetry and Remote Sensing, 35(1), 2004. [12] Lee L., Romano R., and Stein G. Monitoring Activities from Multiple Video Streams: Establishing a Common Coordinate Frame. IEEE Transactions on PAMI, 22(8):758–767, 2000. [13] Lowe D. G. Distinctive Image Features from Scale-Invariant Keypoints. International Journal of Computer Vision, 60(2):91–110, 2004. [14] Mohr R., Veillon F., and Quan L. Relative 3D Reconstruction Using Multiple Uncalibrated Images. In International Journal of Robotics Research, volume 14, pages 619–632, Thousand Oaks, CA, USA, 1995. Sage Publications, Inc. [15] Moons T., Van Gool L., Proesmans M., and Pauwels E. Affine Reconstruction from Perspective Image Pairs with a Relative ObjectCamera Translation in Between. In IEEE Transactions on PAMI, volume 18, pages 77–83. IEEE Computer Society, 1996. [16] Pilet J., Geiger A., Lagger P., Lepetit V., and Fua P. An all-in-one Solution to Geometric and Photometric Calibration. In Proceedings of ISMAR ’06, pages 69–78, 2006. [17] Pollefeys M., Koch R., and Van Gool L. Self-Calibration and Metric Reconstruction in Spite of Varying and Unknown Internal Camera Parameters. In Proceedings of ICCV’98, pages 90–96, Bombay, India, 1998. [18] Salvi J., Armangué X., and Batlle J. A Comparative Review of Camera Calibrating Methods with Accuracy Evaluation. Pattern Recognition, 35(7):1617 – 1635, 2002. [19] Svoboda T., Martinec D., and Pajdla T. A Convenient Multi-Camera Self-Calibration for Virtual Environments. Presence: Teleoperators and Virtual Environments, 14(4):407–422, August 2005. [20] Tsai R. Y. A versatile camera calibration technique for highaccuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses. IEEE Journal of Robotics and Automation, 3(4):323–344, 1987. [21] Weng J., Cohen P., and Herniou M. Camera Calibration with Distortion Models and Accuracy Evaluation. IEEE Transactions on PAMI, 14:965–980, 1992. [22] Wong K. K., Mendonca P. R., and Cipolla R. Recovery of Circular Motion from Profiles of Surfaces. In Vision Algorithms: Theory and Practice, volume 1883, pages 151–167, September 1999. [23] Wong K. K., Mendonca P. R., and Cipolla R. Camera Calibration from Surfaces of Revolution. In IEEE Transactions on PAMI, volume 25, pages 147–160, February 2003. [24] Zhang Z. A Flexible New Technique for Camera Calibration. IEEE Transactions on PAMI, 22(11):1330–1334, 2000. [25] Zisserman A., Beardsley P., and Reid I. Metric Calibration of a Stereo Rig. In IEEE Workshop on Representation of Visual Scenes, pages 93–100, Cambridge, MA, USA, 1995. IEEE Computer Society.
7