PowerPoint **

advertisement
A Simple Method
of Radial Distortion Correction with
Centre of Distortion Estimation
Outline
•
•
•
•
•
Introduction
Model and Approach
Further Discussion
Experiments and Results
Conclusions
Introduction
• Lens distortion usually can be classified into three
types :
– radial distortion (predominant)
– decentering distortion
– thin prism distortion
Wang, J., Shi, F., Zhang, J., Liu, Y.: A new calibration model and method of
camera lens distortion.
Introduction
• Method of obtaining the parameters of the
radial distortion function and correcting the
images. These previous works can be divided
roughly into two strategic approaches
– multiple views method
– Single view method
Introduction
Correct the radial distortion
• Former approach
– based on the collinearity of undistorted points.
– Need the camera intrinsic parameters and 3D-point
correspondences.
• This paper
– based on single images and the conclusion that distorted
points are concyclic and uses directly the distorted points.
– uses the constraint, that straight lines in the 3D world
project to circular arcs in the image plane, under the single
parameter Division Model
Model and Approach
• Radial Distortion Models
– PM、DM
• Distorted straight line is a circle
• calibration procedure to estimate the center
and the parameter of the radial distortion
– Circle fitting : LS、LM
Radial Distortion Models
π‘₯𝑑 , 𝑦𝑑 ∢ distorted image point
π‘₯𝑒 , 𝑦𝑒 ∢ undistorted image point
• The Polynomial Model (PM) that describe radial
distortion :
π‘Ÿπ‘’ = π‘Ÿπ‘‘ 1 + λ1 π‘Ÿπ‘‘ 2 + λ2 π‘Ÿπ‘‘ 4 + β‹―
(1)
π‘Ÿπ‘’ ∢ distances of π‘₯𝑒 , 𝑦𝑒 to the distorted centre 𝑃
π‘Ÿπ‘‘ ∢ distances of π‘₯𝑑 , 𝑦𝑑 to the distorted centre 𝑃
λ𝑖 ∢ radial distortion parameter
Radial Distortion Models
• The Division Model (DM) that describe radial
distortion :
π‘Ÿπ‘’ =
π‘Ÿπ‘‘
1+λ1 π‘Ÿπ‘‘ 2 +λ2 π‘Ÿπ‘‘ 4 +β‹―
(2)
• we use single parameter Division Model as our
distortion model :
π‘Ÿπ‘’ =
π‘Ÿπ‘‘
1+λ π‘Ÿπ‘‘ 2
(3)
Radial Distortion Models
• To simplify equation, we suppose distorted
center 𝑃 is the origin image coordinates
system, thus :
P (0,0)
π‘₯𝑒 =
π‘₯𝑑
1+λ π‘Ÿπ‘‘ 2
, 𝑦𝑒 =
𝑦𝑑
1+λ π‘Ÿπ‘‘ 2
where π‘Ÿπ‘‘ 2 = π‘₯𝑑 2 + 𝑦𝑑 2
(4)
The Figure of Distorted Straight Line
• We consider collinear points and their distorted
images.
• Let 𝑦𝑒 = π‘˜π‘₯𝑒 + 𝑏 straight line equation
from (4) We have
𝑦𝑑
1+λπ‘Ÿπ‘‘ 2
=π‘˜
π‘₯𝑑
1+λπ‘Ÿπ‘‘
2
+𝑏
(5)
𝑦𝑑 = π‘˜π‘₯𝑑 + 𝑏 + 𝑏λ π‘₯𝑑 2 + 𝑦𝑑 2
(6)
π‘˜
π‘₯𝑑
𝑏λ
(7)
2
2
π‘₯𝑑 + 𝑦𝑑 +
−
1
𝑦𝑑
𝑏λ
1
λ
+ =0
The Figure of Distorted Straight Line
2
π‘₯𝑑 + 𝑦𝑑
2
π‘˜
+ π‘₯𝑑
𝑏λ
−
1
𝑦𝑑
𝑏λ
1
+
λ
=0
(7)
• The graphics of distorted “straight line” is a
circle under the condition of model (3)
we use single parameter Division Model as our
distortion model :
π‘Ÿπ‘‘
π‘Ÿπ‘’ =
(3)
2
1+λ π‘Ÿπ‘‘
Estimate the 𝑃 and λ
• Let π‘₯0 , 𝑦0 be the coordinates of the distorted
center 𝑃. From (7) , we have
2
π‘₯𝑑 − π‘₯0
1
−
𝑏λ
2
π‘₯𝑑 + 𝑦𝑑
+ 𝑦𝑑 − 𝑦0
2
+
1
λ
π‘˜
𝑏λ
π‘₯𝑑 − π‘₯0
𝑦𝑑 − 𝑦0 + = 0
2
2
(8)
π‘˜
1
+
− 2π‘₯0 π‘₯𝑑 + − − 2𝑦0 𝑦𝑑
𝑏λ
𝑏λ
2
+π‘₯0 + 𝑦0 −
π‘˜
π‘₯
𝑏λ 0
+
1
𝑦
𝑏λ 0
1
λ
+ =0
(9)
Estimate the 𝑃 and λ
2
π‘₯𝑑 + 𝑦𝑑
2
π‘˜
1
+
− 2π‘₯0 π‘₯𝑑 + − − 2𝑦0 𝑦𝑑
𝑏λ
𝑏λ
2
2
+π‘₯0 + 𝑦0 −
Let
A=
π‘˜
𝑏λ
π‘˜
π‘₯
𝑏λ 0
+
1
𝑦
𝑏λ 0
− 2π‘₯0 , 𝐡 =
2
2
𝐢 = π‘₯0 + 𝑦0 −
1
λ
+ =0
1
−
𝑏λ
π‘˜
π‘₯0
𝑏λ
+
(9)
− 2𝑦0
1
𝑦0
𝑏λ
1
+
λ
π‘₯𝑑 2 + 𝑦𝑑 2 + 𝐴π‘₯𝑑 + 𝐡𝑦𝑑 + 𝐢 = 0
, we have
(10)
Estimate the 𝑃 and λ
Let
π‘˜
1
A = − 2π‘₯0 , 𝐡 = − − 2𝑦0
𝑏λ
𝑏λ
π‘˜
1
1
2
2
𝐢 = π‘₯0 + 𝑦0 − π‘₯0 + 𝑦0 +
𝑏λ
𝑏λ
λ
, we have
π‘₯𝑑 2 + 𝑦𝑑 2 + 𝐴π‘₯𝑑 + 𝐡𝑦𝑑 + 𝐢 = 0
(10)
Base on the relation of 𝐴, 𝐡, and 𝐢 , we have
(εœ“ζ–Ήη¨‹εΌεƒζ•ΈA、B、C θˆ‡ radial distortion 參數 P、λ ηš„ι—œδΏ‚εΌ)
2
2
1
λ
π‘₯0 + 𝑦0 + 𝐴π‘₯0 + 𝐡𝑦0 + 𝐢 − = 0
(11)
Estimate the 𝑃 and λ
π‘₯𝑑 2 + 𝑦𝑑 2 + 𝐴π‘₯𝑑 + 𝐡𝑦𝑑 + 𝐢 = 0
2
2
π‘₯0 + 𝑦0 + 𝐴π‘₯0 + 𝐡𝑦0 + 𝐢
1
−
λ
=0
(10)
(11)
• Obtain π‘₯0 , 𝑦0 of distorted center 𝑃
– Extract three “straight line” from image , we can get
𝐴𝑖 , 𝐡𝑖 , 𝐢𝑖 𝑖=1,2,3 by circle fitting from (10)
according to (11) , we have
𝐴1 − 𝐴2 π‘₯0 + 𝐡1 − 𝐡2 𝑦0 + 𝐢1 − 𝐢2 = 0
𝐴1 − 𝐴3 π‘₯0 + 𝐡1 − 𝐡3 𝑦0 + 𝐢1 − 𝐢3 = 0
𝐴2 − 𝐴3 π‘₯0 + 𝐡2 − 𝐡3 𝑦0 + 𝐢2 − 𝐢3 = 0
(12)
• Obtain the parameter of radial distorted λ
– substitute π‘₯0 , 𝑦0 obtained from 12 to (11)
1
λ
= π‘₯0 2 + 𝑦0 2 + 𝐴π‘₯0 + 𝐡𝑦0 + 𝐢
(13)
Sum up whole algorithm
• Extract 𝑛(𝑛 ≥ 3) “straight line” 𝑙𝑖 𝑖 = 1,2, β‹― , 𝑛 from the image
• Determine parameter 𝐴𝑖 , 𝐡𝑖 , 𝐢𝑖 𝑖=1,2,β‹―,𝑛 by fitting every
“straight line” 𝑙𝑖 with a circle according to (10)
π‘₯𝑑 2 + 𝑦𝑑 2 + 𝐴π‘₯𝑑 + 𝐡𝑦𝑑 + 𝐢 = 0
• Calculate the center π‘₯0 , 𝑦0 of the radial distortion according
to (12)
𝐴1 − 𝐴2 π‘₯0 + 𝐡1 − 𝐡2 𝑦0 + 𝐢1 − 𝐢2 = 0
𝐴1 − 𝐴3 π‘₯0 + 𝐡1 − 𝐡3 𝑦0 + 𝐢1 − 𝐢3 = 0
𝐴2 − 𝐴3 π‘₯0 + 𝐡2 − 𝐡3 𝑦0 + 𝐢2 − 𝐢3 = 0
• Compute the parameter λ of radial distortion according to (13).
1
λ
= π‘₯0 2 + 𝑦0 2 + 𝐴π‘₯0 + 𝐡𝑦0 + 𝐢
Circle fitting
• It is a very important step to fit circle above
algorithm.
– data extracted from image are only short arcs, it is
hard to reconstruct a circle from the incomplete
data.
Distorted
“straight line”
• Method
Circle to fit
Distorted center
– Direct Least Squares Method of Circle Fitting (LS)
– Levenberg-Marquardt Method of Circle Fitting (LM)
Circle fitting - LS
π‘₯𝑑 2 + 𝑦𝑑 2 + 𝐴π‘₯𝑑 + 𝐡𝑦𝑑 + 𝐢 = 0
(10)
• For each point π‘₯𝑖 , 𝑦𝑖 on the “straight line”, (10) gives
π‘₯𝑖 , 𝑦𝑖 , 1
𝐴
𝐡
𝐢
= − π‘₯𝑖 2 + 𝑦𝑖 2
(14)
• Stacking equations from N points together gives
M
𝐴
𝐡
𝐢
=b
(15)
Where M is N×3, b is N×1 matrix
Circle fitting - LS
• Directly using linear least squares fit method,
we can get
𝐴, 𝐡, 𝐢
T
T
= M M
−1
MT b
(16)
Circle fitting - LM
Main ideas
• Let the equation of a circle be
π‘Ž1 π‘₯ 2 + 𝑦 2 + π‘Ž2 π‘₯ + π‘Ž3 𝑦 + π‘Ž4 = 0
Subject to the constraint :
π‘Ž2 2 + π‘Ž3 2 − 4π‘Ž1 π‘Ž4 = 1
•
(17)
(18)
The distance from a point π‘₯𝑖 , 𝑦𝑖 to the circle
𝑑𝑖 =
2𝑃𝑖
1+ 1+4π‘Ž1 𝑃𝑖
Where 𝑃𝑖 = π‘Ž1 π‘₯𝑖 2 + 𝑦𝑖 2 + π‘Ž2 π‘₯𝑖 + π‘Ž3 𝑦𝑖 + π‘Ž4
(19)
(20)
Circle fitting - LM
• From (18) π‘Ž2 2 + π‘Ž3 2 − 4π‘Ž1 π‘Ž4 = 1 , we can define
an angular coordinate πœƒ by
π‘Ž2 =
1 + 4π‘Ž1 π‘Ž4 cos πœƒ,
π‘Ž3 =
1 + 4π‘Ž1 π‘Ž4 sin πœƒ
(21)
• Apply the standard Levenberg-Marquardt scheme to
minimize the sum of squared distance
β„±=
𝑑𝑖
2
in the three dimensional parameter space π‘Ž1 , π‘Ž4 , πœƒ
Further Discussion
• In Algorithm1, we must have 𝑛(𝑛 ≥ 3) “straight lines”,
we relax this constrain and discuss the conditions of
– Only one straight line (L1)
– Only two straight lines (L2)
– Non-square pixels
Only One Straight Line (L1)
• Suppose the distortion center 𝑃 is the image
center and calculate the distortion parameter
λ by (13)
1
λ
= π‘₯0 2 + 𝑦0 2 + 𝐴π‘₯0 + 𝐡𝑦0 + 𝐢
(13)
Only Two Straight Lines (L2)
• Extract “straight line” 𝑙1 、𝑙2 from the image;
• Determine parameter 𝐴𝑖 , 𝐡𝑖 , 𝐢𝑖 𝑖=1,2 by fitting the
“straight line” 𝑙1 、𝑙2 with a circle according to (10);
π‘₯𝑑 2 + 𝑦𝑑 2 + 𝐴π‘₯𝑑 + 𝐡𝑦𝑑 + 𝐢 = 0
(10)
(12) become
𝐴1 − 𝐴2 π‘₯0 + 𝐡1 − 𝐡2 𝑦0 + 𝐢1 − 𝐢2 = 0
(22)
Only Two Straight Lines (L2)
• Select a suitable interval 𝐼
𝐼 = 𝐢π‘₯ − 30, 𝐢π‘₯ + 30 is suggested, for any π‘₯0 𝑗 ∈ 𝐼,
calculating 𝑦0 𝑗 according to (22);
𝐴1 − 𝐴2 π‘₯0 + 𝐡1 − 𝐡2 𝑦0 + 𝐢1 − 𝐢2 = 0
𝑷𝒋 ∈ 𝑫
(22)
π‘₯0 𝑗 → 𝑦0 𝑗
(𝐢π‘₯ , 𝐢𝑦 )
(𝐢π‘₯ − 30, 𝐢𝑦 )
π‘₯0 𝑗 , 𝑦0 𝑗 = 𝑃𝑗
(𝐢π‘₯ + 30, 𝐢𝑦 )
Only Two Straight Lines (L2)
• Calculate the distortion parameter λ𝑖 =
𝑖
𝑖
(13), for any 𝑃𝑖 = π‘₯0 , 𝑦0 ;
1
λ
= π‘₯0 2 + 𝑦0 2 + 𝐴1 π‘₯0 + 𝐡1 𝑦0 + 𝐢
1
λ
= π‘₯0 2 + 𝑦0 2 + 𝐴2 π‘₯0 + 𝐡2 𝑦0 + 𝐢 (13)
1
2
λ𝑖 1 + λ𝑖 2 according to
π‘₯0 𝑗 → 𝑦0 𝑗
π‘₯0 𝑗 , 𝑦0 𝑗 = 𝑃𝑗
𝑷𝒋 ∈ 𝑫
(𝐢π‘₯ , 𝐢𝑦 )
(𝐢π‘₯ − 30, 𝐢𝑦 )
(𝐢π‘₯ + 30, 𝐢𝑦 )
λ𝑖 1
λ𝑖 2
1 1
λ𝑖 = λ𝑖 + λ𝑖 2
2
Only Two Straight Lines (L2)
• Calculate the corresponding corrected points
π‘₯𝑒1 , 𝑦𝑒 1 ( π‘₯𝑒 2 , 𝑦𝑒 2 ), for any λ𝑖 , 𝑃𝑖 and all distorted points
π‘₯𝑑 1 , 𝑦𝑑 1 πœ–π‘™1 ( π‘₯𝑑 2 , 𝑦𝑑 2 πœ–π‘™2 ) according to (4);
π‘₯𝑒 =
π‘₯𝑑
1+λ π‘Ÿπ‘‘ 2
𝑦𝑑
1+λ π‘Ÿπ‘‘ 2
π‘₯𝑑 2 + 𝑦𝑑 2
, 𝑦𝑒 =
where π‘Ÿπ‘‘ 2 =
(4)
• Let [d, k] = min𝑀𝑖 = min 𝑑𝑖 1 + 𝑑𝑖 2 , then obtain the optimal estimation
π‘ƒπ‘˜ and λπ‘˜ .
𝑑𝑖 1
𝑙2
𝑙1
𝑑𝑖 2
Non-square Pixels
• Let π‘₯0 , 𝑦0 : the coordinates of the distorted centre 𝑃
𝛼 : pixel aspect radio
The distorted radius is given by π‘Ÿπ‘‘ 2 = π‘₯𝑑 − π‘₯0 2 + 𝛼 2 𝑦𝑑 − 𝑦0
• From (8) we have
2
π‘₯𝑑 − π‘₯0
𝛼
−
𝑏λ
π‘₯𝑑
2
+ 𝛼 𝑦𝑑 − 𝑦0
2
2
1
λ
π‘˜
+
𝑏λ
π‘₯𝑑 − π‘₯0
𝑦𝑑 − 𝑦0 + = 0
π‘˜
+ 𝛼 𝑦𝑑 +
− 2π‘₯0
𝑏λ
π‘˜
+π‘₯0 2 + 𝛼 2 𝑦0 2 − π‘₯0
𝑏λ
2
2
2
(23)
𝛼
π‘₯𝑑 + − − 2𝛼 2 𝑦0
𝑏λ
𝛼
1
+ 𝑦0 + = 0
𝑏λ
λ
𝑦𝑑
(24)
Non-square Pixels
π‘₯𝑑 2 + 𝛼 2 𝑦𝑑 2 +
π‘˜
−
𝑏λ
+π‘₯0 2 + 𝛼 2 𝑦0 2 −
𝛼
− 2𝛼 2 𝑦0
𝑏λ
𝛼
1
𝑦0 + = 0
𝑏λ
λ
2π‘₯0 π‘₯𝑑 + −
π‘˜
π‘₯
𝑏λ 0
+
𝑦𝑑
(24)
• Equation (24) shows the graphics of distorted “straight line” is
an ellipse under the condition of model (3).
π‘˜
𝛼
• Similarly let A = 𝑏λ
− 2π‘₯0 , 𝐡 = − − 2𝛼 2 𝑦0
𝑏λ
𝐢 = π‘₯0 2 + 𝛼 2 𝑦0 2 −
π‘˜
π‘₯
𝑏λ 0
+
𝛼
𝑦
𝑏λ 0
π‘₯𝑑 2 + 𝛼 2 𝑦𝑑 2 + 𝐴π‘₯𝑑 + 𝐡𝑦𝑑 + 𝐢 = 0
+
1
λ
, we have
(25)
and
1
λ
π‘₯0 2 + 𝛼 2 𝑦0 2 + 𝐴π‘₯0 + 𝐡𝑦0 + 𝐢 − = 0
(26)
Experiments and Results
Experiments and Results
Experiments and Results
Experiments and Results
Experiments and Results
Experiments and Results
Conclusions
• Advantage
– Neither information about the intrinsic camera
parameters nor 3D-point correspondences are
required.
– based on single image and uses the distorted
positions of collinear points.
– Algorithm is simple, robust and non-iterative.
• Disadvantage
– It needs straight lines are available in the scene.
Download