Auto calibration with trackable objects
A method for calibration of a camera of a vehicle is disclosed. The method includes: obtaining a first image frame by the camera including an object; obtaining a second image frame by the camera including the object; determining a first set of key points of the object in the first image frame; determining a second set of key points of the object in the second image frame; obtaining a first spatial information about the first set of key points from a non-volatile memory; obtaining a second spatial information about the second set of key points from the same or a different non-volatile memory; and auto-calibrating the camera based on the first and the second spatial information.
1 . A method for calibration of a camera of a vehicle, comprising:
obtaining a first image frame by the camera including an object;
obtaining a second image frame by the camera including the object;
determining a first set of key points of the object in the first image frame;
determining a second set of key points of the object in the second image frame;
obtaining a first spatial information about the first set of key points from a non-volatile memory;
obtaining a second spatial information about the second set of key points from the same or a different non-volatile memory; and
auto-calibrating the camera based on the first and the second spatial information;
wherein the first spatial information and the second spatial information comprise real-world dimensions of the object stored in the non-volatile memory and wherein the auto-calibrating comprises comparing detected dimensions of the object in the first and second image frames with the stored real-world dimensions.
2 . The method of claim 1 , further comprising:
obtaining a first reference bounding box of the object from the first image frame;
obtaining a second reference bounding box of the object from the second image frame; and
generating a bounding box of the object based on the first reference bounding box and the second reference bounding box.
3 . The method of claim 1 , wherein the auto-calibrating comprises calculating a parameter matrix, radial and tangential distortion coefficients, a rotation matrix and a translation matrix.
4 . The method of claim 1 , wherein the auto-calibrating comprises calculating camera internal and external parameters and lens distortion parameters.
5 . The method of claim 1 , wherein the non-volatile memory includes descriptors associated with the first or second set of key points, wherein a descriptor of a key point is a vector that describes characteristics of a neighborhood of a key point.
6 . The method of claim 5 , wherein the spatial information is obtained from the non-volatile memory based on the descriptors.
7 . The method of claim 1 , further comprises tracking the object based on bounding boxes of the objects generated based on multiple images acquired over a period of time, wherein at least a given bounding box is smoothed to reduce a difference between the given bounding box and a previously generated bounding box of the object.
8 . An apparatus for calibration of a camera of a vehicle, the apparatus comprising:
an interface hardware configured to obtain a plurality of image frames;
a memory unit for storing the plurality of image frames;
a processing unit coupled to the interface hardware and the memory unit, the processing unit being configured to calibrate the camera of the vehicle during driving by:
obtaining a first image frame by the camera including an object;
obtaining a second image frame by the camera including the object;
determining a first set of key points of the object in the first image frame;
determining a second set of key points of the object in the second image frame;
obtaining a first spatial information about the first set of key points from a non-volatile memory;
obtaining a second spatial information about the second set of key points from the same or a different non-volatile memory; and
auto-calibrating the camera based on the first and the second spatial information;
wherein the first spatial information and the second spatial information comprise real-world dimensions of the object stored in the non-volatile memory and wherein the auto-calibrating comprises comparing detected dimensions of the object in the first and second image frames with the stored real-world dimensions.
9 . The apparatus of claim 8 , wherein the first image frame and the second image frame are within a sequence of different image frames.
10 . The apparatus of claim 8 , wherein the first image frame is obtained earlier in time than the second image frame in a sequence.
11 . The apparatus of claim 8 , wherein the camera is associated with a vehicle, a stationary object, or a drone.
12 . The apparatus of claim 8 , wherein the non-volatile memory includes descriptors associated with the first or second set of key points.
13 . The apparatus of claim 12 , wherein the spatial information is obtained from the non-volatile memory based on the descriptors.
14 . The apparatus of claim 8 , wherein the non-volatile memory is a cloud database.
15 . A non-transitory computer readable storage medium storing computer instructions executable by one or more processors to perform a method for calibration of a camera of a vehicle, the method comprising:
obtaining a first image frame by the camera including an object;
obtaining a second image frame by the camera including the object;
determining a first set of key points of the object in the first image frame;
determining a second set of key points of the object in the second image frame;
obtaining a first spatial information about the first set of key points from a non-volatile memory;
obtaining a second spatial information about the second set of key points from the same or a different non-volatile memory; and
auto-calibrating the camera based on the first and the second spatial information;
wherein the first spatial information and the second spatial information comprise real-world dimensions of the object stored in the non-volatile memory and wherein the auto-calibrating comprises comparing detected dimensions of the object in the first and second image frames with the stored real-world dimensions.
16 . The non-transitory computer readable storage medium of claim 15 , wherein the first image frame and the second image frame are within a sequence of different image frames.
17 . The non-transitory computer readable storage medium of claim 15 , wherein the first image frame is obtained earlier in time than the second image frame in a sequence.
18 . The non-transitory computer readable storage medium of claim 15 , wherein the camera is associated with a vehicle, a stationary object, or a drone.
19 . The non-transitory computer readable storage medium of claim 15 , wherein the non-volatile memory includes descriptors associated with the first or second set of key points.
20 . The non-transitory computer readable storage medium of claim 19 , wherein the spatial information is obtained from the non-volatile memory based on the descriptors.