Residual error mitigation in multiview calibration
11212511 · 2021-12-28
Assignee
Inventors
- Tarek El Dokor (Phoenix, AZ, US)
- Jordan Cluster (Tempe, AZ, US)
- Joshua King (Mesa, AZ, US)
- James Holmes (Mesa, AZ, US)
- Milind Subhash Gide (Phoenix, AZ, US)
Cpc classification
H04N13/239
ELECTRICITY
H04N13/271
ELECTRICITY
International classification
G06T7/80
PHYSICS
Abstract
Multiview calibration is essential for accurate three-dimensional computation. However, multiview calibration can not be accurate enough because of the tolerances required in some of the intrinsic and extrinsic parameters that are associated with the calibration process, along with fundamental imperfections that are associated with the manufacturing and assembly process itself. As a result, residual error in calibration is left over, with no known methods to mitigate such errors. Residual error mitigation is presented in this work to address the shortcomings that are associated with calibration of multiview camera systems. Residual error mitigation may be performed inline with a given calibration approach, or may be presented as a secondary processing step that is more application specific. Residual error mitigation aims at modifying the original parameters that have been estimated during an initial calibration process. These new, modified parameters are then used for triangulation and depth estimation of scene information. This approach also resolves parameter tolerances that are either too cumbersome to measure, or otherwise impossible to measure for practical stereo and multiview camera production and calibration applications.
Claims
1. A method for residual error mitigation, comprising: capturing one or more pairs of stereo images viewing a three dimensional object of known dimensions; computing the three dimensional object dimensions using a current set of calibration parameters; computing an error in the computed dimensions by comparing the computed dimensions to the known dimensions; determining whether the error has been minimized; if it is determined that the error has not been minimized, adjusting the calibration parameters; and returning to the step of computing the dimensions of the there dimensional object using the adjusted current set of calibration parameters.
2. The method of claim 1, wherein the initial current calibration parameters are determined according to the steps of: capturing one or more pairs of stereo images viewing a calibration target at a plurality of distances; detecting one or more features of the calibration target in each of the one or more stereo images captured at the plurality of distances; and obtaining an initial set of calibration parameters by minimizing reprojection error.
3. The method of claim 2, wherein the reprojection error is minimized employing a Levenberg-Marquardt process.
4. The method of claim 1, wherein the calibration parameters are adjusted in accordance with a slope for the dimensioning error and a learning rate.
5. The method of claim 1, wherein the calculated error is related to a yaw error of the cuboid object.
6. The method of claim 1, wherein the calculated error is related an optical axis alignment in X error of the cuboid object.
7. The method of claim 1, wherein the calculated error is related to one or more parameters selected from the group of X translation parameter sensitivity of a calibration system, Y translation parameter sensitivity of a calibration system, Z translation parameter sensitivity of a calibration system, pitch angle rotation parameter sensitivity of a calibration system, yaw angle rotation parameter sensitivity of a calibration system, roll angle rotation parameter sensitivity of a calibration system, X optical center parameter sensitivity of a calibration system, and Y optical center parameter sensitivity of a calibration system.
8. A method for residual error mitigation with a single calibration target, comprising: capturing one or more pairs of stereo images viewing a calibration target at a plurality of distances; detecting one or more features of the calibration target in each of the one or more pairs of stereo images captured at the plurality of distances; obtaining an initial set of calibration parameters by minimizing reprojection error; reconstructing one or more 3D locations of a plurality of calibration features using the current set of calibration parameters; computing the 3D distance between a plurality of combinations of features in the same image spanning a minimum distance; computing one or more errors in the computed 3D distances using measurements from a predetermined position relative to the camera as the ground truth; determining whether one or more convergence criteria have been met; if it is determined that the one or more convergence criteria have not been met, adjusting the calibration parameters; and returning to the step of reconstructing one or more 3D locations of a plurality of calibration features using the current set of calibration parameters.
9. The method of claim 8, wherein the calculated error is related to a yaw error of the cuboid object.
10. The method of claim 8, wherein the calculated error is related an optical axis alignment in X error of the cuboid object.
11. The method of claim 8, wherein the calculated error is related to one or more parameters selected from the group of X translation parameter sensitivity of a calibration system, Y translation parameter sensitivity of a calibration system, Z translation parameter sensitivity of a calibration system, pitch angle rotation parameter sensitivity of a calibration system, yaw angle rotation parameter sensitivity of a calibration system, roll angle rotation parameter sensitivity of a calibration system, X optical center parameter sensitivity of a calibration system, and Y optical center parameter sensitivity of a calibration system.
12. A method for residual error mitigation, comprising: capturing one or more pairs of stereo images viewing a calibration target at a plurality of distances; detecting one or more features of the calibration target in each of the one or more pairs of stereo images captured at the plurality of distances; and obtaining an initial set of calibration parameters by minimizing reprojection error; reconstructing one or more 3D locations of a plurality of calibration features using the current set of calibration parameters; computing the 3D distance between a plurality of combinations of features spanning images from multiple depths comprising a virtual calibration target; computing a standard deviation of each unique measurement of the virtual calibration target; determining whether the standard deviation has been minimized; if it is determined that the standard deviation has been minimized, adjusting the calibration parameters; and returning to the step of reconstructing one or more 3D locations of a plurality of calibration features using the current set of calibration parameters.
13. The method of claim 12, wherein the standard deviation is related to a yaw error of the cuboid object.
14. The method of claim 12, wherein the standard deviation is related an optical axis alignment in X error of the cuboid object.
15. The method of claim 12, wherein the standard deviation is related to one or more parameters selected from the group of X translation parameter sensitivity of a calibration system, Y translation parameter sensitivity of a calibration system, Z translation parameter sensitivity of a calibration system, pitch angle rotation parameter sensitivity of a calibration system, yaw angle rotation parameter sensitivity of a calibration system, roll angle rotation parameter sensitivity of a calibration system, X optical center parameter sensitivity of a calibration system, and Y optical center parameter sensitivity of a calibration system.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
DETAILED DESCRIPTION
(22) Minimizing Residual Error
(23) As previously described, it becomes next to impossible to obtain every parameter as accurately as possible for a given measurement application, given the demand on accuracy that some of these applications require. A numerical approach is one of many that can be used to address the residual error problem. In fact, any approach, be it gradient descent, Levenberg-Marquardt (Levenberg, Kenneth (1944). “A Method for the Solution of Certain Non-Linear Problems in Least Squares”. Quarterly of Applied Mathematics. 2: 164-168, Aarquardt, Donald (1963). “An Algorithm for Least-Squares Estimation of Nonlinear Parameters”. SIAM Journal on Applied Mathematics. 11 (2): 431-441.), or a greedy algorithm (Introduction to Algorithms (Cormen, Leiserson, and Rivest) 1990, Chapter 17 “Greedy Algorithms” p. 329.), among others that may be used.
(24) In accordance with a first embodiment of the invention as depicted in, for example,
d.sub.g∈.sup.n Equation 1
(25) There exists corrupted data post-calibration such that:
d.sub.g+e=d.sub.o Equation 2
(26) where d.sub.o is the observed value.
(27) It is known that the observed value d.sub.o is a function of the estimated ordered set of calibration parameters C, where={c.sub.x,c.sub.y,T.sub.x,T.sub.y,T.sub.z,p,y,r, . . . } Equation 3
(28) where
(29) c.sub.x and c.sub.y represent the optical centers in x- and y-dimensions respectively. There are separate optical centers associated with every camera and these constitute part of the camera's intrinsic parameters. T.sub.x, T.sub.y, T.sub.z represent the translation the translations in x-, y- and z-respectively between two views of a multiview system, and p,y,r, respectively represent the pitch, yaw and roll between two views of a multiview system. A complete list of parameters is significantly longer, and also contains various distortion parameters as well as other three-dimensional reconstruction parameters that are representative of various angles and various degrees of freedom. The ordered set of parameters may further be generalized into:={c.sub.0,c.sub.1, . . . ,c.sub.n−1}, an n-dimensional set. Equation 4
(30) It then follows that calibration tries to minimize a cost function using a reprojection error minimization cost function, an epipolar line constraint cost function, or one or more other known cost functions. (See, for example: Z. Zang, “Flexible camera calibration by viewing a plane from unknown orientations,” in Proceedings of the Seventh IEEE International Conference on Computer Vision, Kerkyra, 1999. Y. Cui, F. Zhou, Y. Wang, L. Liu and H. Gao, “Precise calibration of binocular vision system used for vision measurement,” Optics Express, vol. 22, no. 8, pp. 9134-9149, 2014. D. Bradley and W. Heidrich, “Binocular Camera Calibration Using Rectification Error,” in 2010 Canadian Conference on Computer and Robot Vision, Ottawa, 2010.) the contents of these references incorporated herein by reference). Any and all of these cost functions, however, will leave behind residual error, for the various reasons noted above. It then follows that, to minimize the error, a second processing step or series of processing steps for recalibrating, or modifying the cost function in accordance with an embodiment of the present invention may be performed to address this issue.
(31)
(32)
(33) As an example, in accordance with an embodiment of the invention, assume that C.sub.g represents the estimated ground truth calibration parameter that can be used for a measurement or an object dimensioning application. Now, assume that the only parameter responsible for the error is the yaw parameter, c.sub.y. It then follows that modifying the yaw parameter alone can properly address the error associated with the measurement values, from the observed calibration values, such as:
(34)
(35) Hence, minimizing the error between the observed post calibration data, d.sub.o, and the actual ground truth data, d.sub.g, is achieved through the manipulation of the yaw parameter, C.sub.y, over a series of observations, culminating in a global minimum. It then follows that the overall minimization of the error can be accomplished by minimizing the difference between the observed measurement, d.sub.o, and the ground truth d.sub.g:
(36)
where the most effective means for minimizing the residual error is to run a secondary calibration estimate that takes into account all the existing parameters and then minimizes the measurement-based cost function.
(37) A Practical Example—Minimizing Yaw
(38) Post calibration, a series of measurements of a set of boxes may be taken. These measurements represent the observed values, d.sub.o(). To get to the final values, the observed values errors in length, width and height, are measured against there respective ground truth values.
(39) Referring next to
(40) In
(41) Similarly,
(42) Referring next to
(43) Referring next to
(44) In
(45) Referring next to
(46) In
(47) Reviewing the graphs presented in
(48) To further illustrate the point, the residual error in this given calibration example is one that is associated with just the yaw. Hence, the calibration parameter set, C, produces a set of observed measurements d.sub.o(), following Equation 6. To minimize the error, a set of slight modifications to the yaw measurements, may be computed. These minute yaw shifts would lead to minimization of the difference between the observed measurements and the idealized measurements.
(49) The process associated with an embodiment of the present invention involves a secondary processing step that regulates a given calibration to better address residual error. The final yaw value can then be used for any measurement and not be specific to this particular set of measurements. In
(50) It is worth mentioning that the impact that yaw has on the overall outcome of calibration is significant, as has been stated earlier. In fact, yaw, optical center, and by extension, the effective focal length play an outsize role in residual error. In fact, yaw estimation in a mass production environment would be impossible to measure at as accurate a level. As a result, the next best option would be to use an estimation process, similar to the one suggested in accordance with the present invention.
(51) In
(52) Practical Implementation for Calibration Parameter Modification
(53) One possible implementation for error mitigation is to add a secondary calibration step to identify and compensate for bias in the calibration process. As an example dimensioning a series of highly accurate cuboidal objects may be used for such an approach. This is shown in
(54) The system shown in
(55) Processing then passes to a bias mitigation process, beginning at step 1840 where a set of stereo images viewing a cuboid of known dimensions are captured. Then at step 1850 cuboid dimensions using the current calibration parameters are calculated. Next, at step 1860 errors for the calculated cuboid distances are computed preferably using measurements from the position closest to the camera as a ground truth. Processing then continues at step 1870 where it is queried whether error has been minimized. If this query is answered in the affirmative, and it is therefore determined that the error has been minimized, the process then ends at step 1880. If on the other and the query at step 1870 is answered in the negative, and it is determined that the error has not been minimized, processing continues at step 1875 where it is queried whether a maximum number of iterations has been reached. If this query is answered in the affirmative, and it is therefore determined that the maximum number of iterations has been met, the process then ends at step 1980. If on the other and the query at step 1875 is answered in the negative, and it is determined that the convergence criteria has not been met, processing continues at step 1990 where the parameters are adjusted, preferably in accordance with the slope of the measurement error and a learning rate, and processing then returns to step 1840.
(56) Rather than employing actual cuboidal or other known shapes, it is also possible to implement the system employing virtual 3D shapes 1510 in relation to the calibration targets, such as those depicted in
(57) Therefore, referring again to
(58) A second practical implementation, depicted in
(59) These extracted virtual features can be combined, as depicted in
(60) These extracted shape measurements don't even have to be cuboidal, but should substantially cover the field of view of the stereo rig or multiview camera system and should contain points that vary in depth. If points on the calibration target as represented as a set P with each element P.sub.i=(x, y, z) representing the 3D coordinates of the point, then we can consider measurements over multiple point-pairs such that the points have a minimum depth difference and a minimum measurement value, meaning it is preferred to have measurements that span larger distances. An illustration of this is given in
(61) This process is described in
(62) Processing for bias mitigation then begins at step 1940 where 3D locations of all calibration using the current set of calibration parameters are reconstructed. Then at step 1950 the 3D distance between all combinations of features in the same image spanning a minimum distance. Next, at step 1960 errors for the estimated 3D distances are computed preferably using measurements from the position closest to the camera as a ground truth. Processing then continues at step 1970 where it is queried whether a convergence criteria has been met for the computed errors. If this query is answered in the affirmative, and it is therefore determined that the convergence criteria have been met, the process then ends at step 1980. If on the other and the query at step 1970 is answered in the negative, and it is determined that the convergence criteria has not been met, processing continues at step 1975 where it is queried whether a maximum number of iterations has been reached. If this query is answered in the affirmative, and it is therefore determined that the maximum number of iterations has been met, the process then ends at step 1980. If on the other and the query at step 1975 is answered in the negative, and it is determined that the convergence criteria has not been met, processing continues at step 1990 where the parameters are adjusted, preferably in accordance with the slope of the measurement error and a learning rate, and processing then returns to step 1940.
(63) Referring next to
(64) Processing then passes to a bias mitigation process, beginning at step 2040 where the 3D locations of all calibration features using the current parameter set are reconstructed. Then at step 2050 the 3D distance between combinations of features spanning images from multiple depths (virtual calibration target) are computed. Next, at step 2060 the standard deviation of each unique measurement of the virtual pattern is computed. Processing then continues at step 2070 where it is queried whether the standard deviation has been minimized. If this query is answered in the affirmative, and it is therefore determined that the standard deviation has been minimized, the process then ends at step 2080. If on the other and the query at step 2070 is answered in the negative, and it is determined that the standard deviation has not been minimized, processing continues at step 2075 where it is queried whether a maximum number of iterations has been reached. If this query is answered in the affirmative, and it is therefore determined that the maximum number of iterations has been met, the process then ends at step 2080. If on the other and the query at step 2075 is answered in the negative, and it is determined that the convergence criteria has not been met, processing continues at step 2090 where the parameters are adjusted, preferably in accordance with the slope of the measurement error and a learning rate, and processing then returns to step 2040.
(65) Another variant of the aforementioned approach would be to obtain measurements across successive known target locations which are at different distances from the camera, forming a virtual calibration target as shown in
(66) The standard deviation may also be minimized across all observations of the same measurement in place of an absolute error term. This variant is summarized in
(67) Therefore, in accordance with an embodiment of the invention, a calibration process consisting of an initial calibration employing a more conventional checker or other periodic pattern may be first used to generate more standard initial calibration parameters. This initial calibration is then preferably followed by a second, residual error removal calibration that is preferably performed employing boxes or other measurement units whose ground truth values are known, and which is preferably implemented on a repeatable, known hardware system to ensure that the parameters associated with the calibration system are consistent. No reference calibration and calibration modification for residual error removal-autocalibration and auto-recalibration
(68) In accordance with a further embodiment of the invention, residual error removal may also be performed in-field. This can be accomplished by calculating the given values of cost functions associated with a given dimensioning implementation, without actually knowing that dimension. The knowledge of a non-changing dimension is enough to enable a cost function to minimize around a given set of parameters. One way to do so is to calculate the derivative of the cost function, if the cost function were based on three-dimensional information from the scene. Given a series of 3D measurements of the same length, width or height, a cost function may be based on minimizing the error between the different dimensions. Given a set of calibration parameters, the cost function can be minimized by taking its derivative, given that all the measurements are equal and constant, the derivative should minimize to zero. The parameter estimation then proceeds to estimate the parameters that mostly minimize the error between the different measurements in a given measurement set.
(69) Extension to Active Stereo Cameras and to Other Types of Active Light Source Cameras
(70) Active stereo cameras may be calibrated with the same process of residual error minimization that has been described in this disclosure. The process described in Equation 5 and Equation 6 may be used to remove residual error that is associated with active stereo cameras. The same concept would apply to other depth-sensing active light cameras, since all cameras will have an inherent bias and all of their depth resolutions will exhibit approximately monotonic behaviors over distance.
(71) Real World Lens Resolution Imperfections and Mitigation
(72) In practical examples, residual issues will remain beyond simply modifying and addressing the bias. Many lenses are not isotropic. Therefore, the inventive process that takes into account localized Modulation Transfer Function (MTF) information for a given lens becomes important. As a result, the realistic residual error mitigation goes beyond simply accounting for existing theoretical curve error minimization of a typical monotonic function, and takes into account MTF differences between different portions of the lens and between different lenses of a multiview system.
(73) Multithreading
(74) Collection of images, detection of calibration features, determination of parameters, triangulation, error minimization, and the majority of the algorithms described in
(75) Utilizing calibration parameters to validate the manufacturing process: once the residual error is removed (or even prior to that), calibration itself can help validate other aspects of the manufacturing process, including lens placement, baseline conformance, and any number of other agreed to tolerances by a given manufacturer, based on a spec sheet and an associated predefined tolerance stack.
(76) It will thus be seen that the objects set forth above, among those made apparent from the preceding description, are efficiently attained and, because certain changes may be made in carrying out the above method and in the construction(s) set forth without departing from the spirit and scope of the invention, it is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative and not in a limiting sense.
(77) It is also to be understood that this description is intended to coverall of the generic and specific features of the invention herein described and all statements of the scope of the invention which, as a matter of language, might be said to fall there between.