Automatic fisheye camera calibration for video analytics
A computer-implemented method executed by at least one processor for reducing radial distortion errors in fish-eye images is presented. The method includes capturing an image from a camera including distortions, detecting arc-shaped edge segments in the image including the distortions, estimating a main distortion parameter by fixing a distortion centerpoint in a middle of the image, estimating the distortion centerpoint with the main distortion parameter, and obtaining an undistorted version of the captured image by inverting the distortion model.
1. A computer-implemented method executed by at least one processor for reducing radial distortion errors in fish-eye images, the method comprising:
capturing an image from a camera including distortions;
detecting arc-shaped edge segments in the image including the distortions;
estimating a main distortion parameter by fixing a distortion centerpoint in a middle of the image;
estimating the distortion centerpoint with the main distortion parameter; and
obtaining an undistorted version of the captured image by inverting the distortion model,
wherein the undistorted version of the captured image is obtained by minimizing a geometric error.
2. The method of claim 1 , wherein an area defined between a detected arc-shaped edge segment and a corresponding straight line segment or chord passing through both ends of the detected arc-shaped edge segment is minimized.
3. The method of claim 2 , wherein the area defined between the detected arc-shaped edge segment and the chord is a cost function.
4. The method of claim 3 , wherein the cost function is given as:
E
=
∑
k
=
1
N
❘
"\[LeftBracketingBar]"
∑
j
=
1
n
k
f
(
x
j
,
y
j
;
λ
,
x
o
,
y
o
)
d
k
❘
"\[RightBracketingBar]"
where N is a number of circular arcs in the image, n k is a number of pixels for k th arc, d k is a distance between the endpoints of k th arc, and f(x j , y j , λ, x o , y o ) is a signed distance between a point (x j , y j ) and the chord under a set of distortion parameters of (λ, x o , y 0 ).
5. The method of claim 3 , wherein, for each detected arc-shaped segment, a distance sum is divided by a length of the chord to obtain a normalized error between each detected arc-shaped segment and its corresponding chord, the distance sum defined as a sum of point-line distances for each detected arc-shaped segment.
6. The method of claim 1 , wherein the main distortion parameter is estimated by running an optimization procedure to obtain an optimum main distortion parameter value.
7. A system for applying rolling shutter (RS)-aware spatially varying differential homography fields for simultaneous RS distortion removal and image stitching, the system comprising:
a memory; and
a processor in communication with the memory, wherein the processor runs program code to:
capture an image from a camera including distortions;
detect arc-shaped edge segments in the image including the distortions;
estimate a main distortion parameter by fixing a distortion centerpoint in a middle of the image;
estimate the distortion centerpoint with the main distortion parameter; and
obtain an undistorted version of the captured image by inverting the distortion model,
wherein the undistorted version of the captured image is obtained by minimizing a geometric error.
8. The system of claim 7 , wherein an area defined between a detected arc-shaped edge segment and a corresponding straight line segment or chord passing through both ends of the detected arc-shaped edge segment is minimized.
9. The system of claim 8 , wherein the area defined between the detected arc-shaped edge segment and the chord is a cost function.
10. The system of claim 9 , wherein the cost function is given as:
E
=
∑
k
=
1
N
❘
"\[LeftBracketingBar]"
∑
j
=
1
n
k
f
(
x
j
,
y
j
;
λ
,
x
o
,
y
o
)
d
k
❘
"\[RightBracketingBar]"
where N is a number of circular arcs in the image, n k is a number of pixels for k th arc, d k is a distance between the endpoints of k th arc, and f(x j , y j , λ, x o , y o ) is a signed distance between a point (x j , y j ) and the chord under a set of distortion parameters of (λ, x o , y o ).
11. The system of claim 9 , wherein, for each detected arc-shaped segment, a distance sum is divided by a length of the chord to obtain a normalized error between each detected arc-shaped segment and its corresponding chord, the distance sum defined as a sum of point-line distances for each detected arc-shaped segment.
12. The system of claim 7 , wherein the main distortion parameter is estimated by running an optimization procedure to obtain an optimum main distortion parameter value.
13. A non-transitory computer-readable storage medium comprising a computer-readable program for applying rolling shutter (RS)-aware spatially varying differential homograph); fields for simultaneous RS distortion removal and image stitching, wherein the computer-readable program when executed on a computer causes the computer to perform the steps of:
capturing an image from a camera including distortions;
detecting arc-shaped edge segments in the image including the distortions;
estimating a main distortion parameter by fixing a distortion centerpoint in a middle of the image;
estimating the distortion centerpoint with the main distortion parameter; and
obtaining an undistorted version of the captured image by inverting the distortion model,
wherein the undistorted version of the captured image is obtained by minimizing a geometric error.
14. The non-transitory computer-readable storage medium of claim 13 , wherein an area defined between a detected arc-shaped edge segment and a corresponding straight line segment or chord passing through both ends of the detected arc-shaped edge segment is minimized.
15. The non-transitory computer-readable storage medium of claim 14 , wherein the area defined between the detected arc-shaped edge segment and the chord is a cost function.
16. The non-transitory computer-readable storage medium of claim 15 , wherein the cost function is given as:
E
=
∑
k
=
1
N
❘
"\[LeftBracketingBar]"
∑
j
=
1
n
k
f
(
x
j
,
y
j
;
λ
,
x
o
,
y
o
)
d
k
❘
"\[RightBracketingBar]"
where N is a number of circular arcs in the image, n k is a number of pixels for k th arc, d k is a distance between the endpoints of k th arc, and f(x j , y j , λ, x o , y o ) is a signed distance between a point (x j , y j ) and the chord under a set of distortion parameters of (λ, x o , y o ).
17. The non-transitory computer-readable storage medium or claim 15 , wherein, for each detected arc-shaped segment, a distance sum is divided by a length of the chord to obtain a normalized error between each detected arc-shaped segment and its corresponding chord, the distance sum defined as a sum of point-line distances for each detected arc-shaped segment.
18. The non-transitory computer-readable storage medium of claim 13 , wherein the main distortion parameter is estimated by running an optimization procedure to obtain an optimum main distortion parameter value.