IP Library Granted Patent US 11,635,767
Granted Patent B2
US 11,635,767 · App. 16/788,324 · Granted Apr 25, 2023

System and method of using multi-resolution camera clusters input data for controlling autonomous vehicles

Inventor: Semyon Nisenzon (Palo Alto, CA)
Assignee: Semyon Nisenzon
G05D1/0251G05D1/0223G05D1/0274G05D2201/0213
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,635,767
App. No.
16/788,324
Granted
Apr 25, 2023
Kind
B2
Abstract

In one example, a method may include capturing two-dimensional (2D) images of scenes using a set of multi-resolution cameras disposed on at least one side of an autonomous vehicle. Further, a low-resolution depth map with relatively small depths may be generated for each scene using the captured 2D images. Furthermore, a high-resolution depth map may be generated for each scene for a wide depth range by iteratively refining the low-resolution depth map for each scene. Also, a 3D video may be generated based on the high-resolution depth maps and the captured 2D images of the central camera. Further, a distance, a velocity, and/or an acceleration of one or more objects relative to the autonomous vehicle is computed by analyzing one or more frames of the 3D video. Then, the autonomous vehicle may be controlled based on the computed distance, velocity, and/or acceleration of the one or more objects.

Claims (109)

1. A method comprising:

disposing a set of multi-resolution cameras on at least one side of an autonomous vehicle, wherein the set of multi-resolution cameras comprises a first central camera having a first resolution, and multiple first cameras having one or more resolutions that are lower than the first resolution and disposed around the first central camera, and wherein the set of multi-resolution cameras comprise multi-spectral cameras with multiple field of views, and wherein the multiple first cameras are disposed around the first central camera in multiple camera clusters, each camera cluster having:

a second central camera; and

multiple second cameras, having one or more resolutions that are different from a resolution of the second central camera and disposed around the second central camera, wherein the second central camera has a higher resolution than the one or more resolutions of the multiple second cameras;

capturing two-dimensional (2D) images of scenes using the first central camera and the multiple first cameras of the set of multi-resolution cameras;

generating a low-resolution depth map for each scene of the scenes using the captured 2D images using given depths;

generating a high-resolution depth map for each scene of the scenes for a wide depth range by iteratively refining the low-resolution depth map for each scene;

generating a three-dimensional (3D) video based on the high-resolution depth map corresponding to each scene of the scenes and the captured 2D images of the first central camera; and

sending the 3D video to a central processing and control unit in the autonomous vehicle, wherein the central processing and control unit includes an artificial intelligence unit that utilizes an artificial intelligence to:

compute a distance, a velocity, and an acceleration of one or more objects relative to the autonomous vehicle by analyzing multiple frames of the 3D video, wherein analyzing the multiple frames of the 3D video comprises analyzing each flame of the multiple frames that includes a 2D image of the captured 2D images of the first central camera and a corresponding high-resolution depth map associated with the 2D image; and

control the autonomous vehicle based on the computed distance, velocity, and acceleration of the one or more objects.

2. The method of claim 1 , Wherein computing the distance, velocity, and acceleration of the one or more objects comprises:

converting, by the central processing and control unit, 3D image data associated with each frame of the multiple frames of the 3D video into a point cloud to identify dimensions of the one or more objects; and

computing, by the central processing and control unit, the distance, velocity, and acceleration of the one or more objects relative to the autonomous vehicle based on the identified dimensions and the multiple frames of the 3D video.

3. The method of claim 1 , wherein controlling the autonomous vehicle based on the computed distance, velocity, and acceleration of the one or more objects comprises:

computing, by the central processing and control unit, segmentation, path prediction, and localization of the one or more objects based on the distance, velocity, and acceleration of the one or more objects; and

controlling, by the central processing and control unit, the autonomous vehicle based on the computed segmentation, path prediction, and localization of the one or more objects.

4. The method of claim 1 , wherein each camera of the set of multi-resolution cameras having a different field of view.

5. The method of claim 1 , wherein generating the low-resolution depth map for each scene comprises:

downscaling a resolution of the captured 2D images of the first central camera to be equal to one of the one or more resolutions associated with the multiple first cameras; and

generating the low-resolution depth map for each scene using the downscaled 2D images of the first central camera and the captured 2D images associated with the multiple first cameras using the given depths by applying a first parallax shifting operation.

6. The method of claim 5 , wherein generating the high-resolution depth map for each scene comprises:

refining the generated low-resolution depth map by increasing a number of depths by locally performing depth map refinements and iteratively performing the depth map refinements;

upscaling a resolution of the captured 2D images of the multiple first cameras to be equal. to a resolution of the captured 2D images of the first central camera; and

upon upscaling the resolution of the captured 2D images, generating the high-resolution depth map corresponding to each scene using the captured 2D images of the first central camera, the upscaled 2D images of the multiple first cameras, and the refined low-resolution depth map by applying a second parallax shifting operation; and

upon generating the high-resolution depth map corresponding to each scene, refining the high-resolution depth map corresponding to each scene by increasing a number of depths by locally performing the depth map refinements and iteratively performing the depth map refinements.

7. The method of claim 1 , wherein the multiple second cameras are radially positioned around the first central camera in one or more directions.

8. The method of claim 1 , wherein the 2D images comprise red green blue (RGB) images, monochrome images, infrared (IR) images, or any combination thereof.

9. The method of claim 1 . wherein the set of multi-resolution cameras comprises monochrome cameras, colored cameras, IR cameras, monochrome with IR filter removed cameras, Bayer pattern cameras, monochrome with special filters blocking selected frequencies or combinations thereof.

10. The method of claim 1 , wherein disposing the set of multi-resolution cameras comprises placing the set of multi-resolution cameras on a low thermal expansion base.

11. The method of claim 1 , wherein the set of multi-resolution cameras comprises narrower field of view cameras and wider field of view cameras, wherein the narrower field of view cameras are to capture 2D images at longer distances, and wherein the wider field of view cameras are to capture 2D images at medium of short distances.

12. The method of claim 1 , further comprising: calibrating the set of multi-resolution cameras prior to disposing the set of multi-resolution cameras on the autonomous vehicle.

13. The method of claim 12 , further comprising:

computing an other high-resolution depth map for each scene using different subsets of multi-resolution cameras in the set of multi-resolution cameras, wherein the different subsets of multi-resolution cameras are part of the multiple camera clusters;

detecting a deviation in the other high-resolution depth map for each scene associated with one or more cameras of the set of multi-resolution cameras by comparing depth maps associated with the different subsets of multi-resolution cameras; and

dynamically recalibrating the one or more cameras by adjusting a calibration parameter based on the detected deviation.

14. The method of claim 1 , further comprising:

dynamically measuring a temperature surrounding the autonomous vehicle using a temperature sensor;

selecting one of multiple predetermined calibration tables corresponding to the measured temperature; and

dynamically calibrating the set of multi-resolution cameras using the selected predetermined calibration table.

15. An autonomous vehicle comprising:

a set of multi-resolution cameras disposed on at least one side of the autonomous vehicle, Wherein the set of multi-resolution cameras comprises a first central camera having a first resolution, and multiple first cameras having one or more resolutions that are lower than the first resolution and disposed around the first central camera, and wherein the set of multi-resolution cameras comprise multi-spectral cameras with multiple field of views, and wherein the multiple first cameras are disposed around the first central camera in multiple camera clusters, each camera cluster having:

a second central camera; and

multiple second cameras, having one or more resolutions that are different from a. resolution of the second central camera and disposed around the second central camera, wherein the second central camera has a higher resolution than the one or more resolutions of the multiple second cameras;

at least one processor communicatively coupled to the set of multi-resolution cameras; and

memory coupled to the processor, wherein the memory comprises an image processing unit and a central processing and control unit, wherein the image processing unit, when executed by the at least one processor, is to:

receive two-dimensional (2D) images of scenes using the first central camera and the multiple first cameras of the set of Multi-resolution :cameras;

generate a low-resolution depth map for each scene of the scenes using the received 2D images using given depths;

generate a high-resolution depth map for each scene of the scenes for a wide depth range by iteratively refining the low-resolution depth map for each scene;

generate a three-dimensional (3D) video based on the high-resolution depth map corresponding to each scene of the scenes and the received 2D images of the first central camera; and

send the 3D video to the central processing and control unit in the autonomous vehicle, wherein the central processing and control unit is to utilize includes an artificial intelligence unit that utilizes an artificial intelligence to:

compute a distance, a velocity, and an acceleration of one or more objects. relative to the autonomous vehicle by analyzing multiple frames of the 3D video, wherein analyzing the multiple frames of the 3D video comprises analyzing each frame of the multiple frames that includes a 2D image of the received 2D images of the first central camera and a corresponding 1 Ugh-resolution depth map associated with the 2D image; and

control the autonomous vehicle based on the computed distance, velocity and acceleration of the one or more objects.

16. The autonomous vehicle of claim 15 , wherein the central processing and control unit, when executed by the at least one processor, is to:

convert 3D image data associated with each frame of the multiple frames of the 3D video into a point cloud to identify dimensions of the one or more objects; and

compute the distance, velocity, and acceleration of the one or more objects relative to the autonomous vehicle based on the identified dimensions and the multiple frames of the 3D video.

17. The autonomous vehicle of claim 15 , wherein the central processing and control unit, when executed by the at least one processor, is to:

Compute segmentation, path prediction, and localization of the one or more objects based on the distance, velocity, and acceleration of the one or more objects; and

control the autonomous vehicle based on the computed segmentation, path prediction, and localization of the one or more objects.

18. The autonomous vehicle of claim 15 , wherein each camera of the set of resolution cameras having a different field of view.

19. The autonomous vehicle of claim 15 , wherein the image processing unit, when executed by the at least one processor, is configured to:

downscale a resolution of the received 2D images of the first central camera to be equal to one of the one or more resolutions associated with the muiltiple first cameras; and

generate the low-resolution depth map for each scene using the downscaled 2D images of the first central camera and the received 2D images associated with the multiple first cameras using the given depths by applying a first parallax shifting operation.

20. The autonomous vehicle of claim 19 , wherein the image processing unit, when executed by the at least one processor. is further configured to:

refine the generated low-resolution depth map by increasing a number of depths by locally performing depth map refinements and iteratively performing the depth map refinements;

upscale a resolution of the received 2D images of the multiple first cameras to be equal to a resolution of the received 2D images of the first central camera.; and

upon upscaling the resolution of the received 2D images, generate the high-resolution depth map corresponding to each scene using the images received 2D of the first central camera, the upscaled 2D images of the multiple first cameras, and the refined low-resolution depth map by applying a second parallax shifting operation; and

upon generating the high-resolution depth map corresponding to each scene, refining the high-resolution depth map corresponding to each scene by increasing a number of depths by locally performing the depth map refinements and iteratively performing the depth map refinements.

21. The autonomous vehicle of claim 15 , wherein the multiple first cameras are radially positioned around the first central camera in one or more directions.

22. The autonomous vehicle of claim 15 , wherein the 2D images comprise red green blue (RGB) images, monochrome images, infrared (IR) images, or any combination thereof.

23. The autonomous vehicle of claim 15 , wherein the set of multi-resolution cameras comprises monochrome cameras, colored cameras, IR cameras, monochrome with IR filter removed cameras, Bayer patteni cameras, monochrome with special filters blocking selected frequencies, or combinations thereof.

24. The autonomous vehicle of claim 15 , wherein the set of multi-resolution cameras. is disposed on a. low thermal expansion base.

25. The autonomous vehicle of claim 15 , wherein the set of multi-resolution cameras comprises narrower field of view cameras and wider field of view cameras, wherein the narrower field of view cameras are to capture 2D images at longer distances, and wherein the wider field of view cameras are to capture 2D images at medium or short distances.

26. The autonomous vehicle of claim 15 , wherein the image processing unit, when executed by the at least one processor, is configured to:

calibrate the set of multi-resolution cameras prior to disposing the set of multi-resolution cameras on the autonomous vehicle.

27. The autonomous vehicle of claim 26 , wherein the image processing unit, when executed by the at least one processor, is configured to:

compute an other high-resolution depth map for each scene of the scenes using different subsets of multi-resolution cameras in the set of multi-resolution cameras, wherein the different subsets of multi-resolution cameras are part of the multiple camera clusters;

detect a deviation in the other high-resolution depth map for each scene associated with one or more cameras of the set of multi-resolution cameras by comparing computed high-resolution depth maps of the scenes associated with the different subsets of multi-resolution cameras; and

dynamically recalibrate the one of more cameras by adjusting a calibration parameter based oil the detected deviation.

28. The autonomous vehicle of claim 15 , wherein the image processing unit, when executed by the at least one processor, is configured to:

dynamically measure a temperature surrounding the autonomous vehicle using a temperature sensor; and

select one of multiple predetermined calibration tables corresponding to the measured temperature, which can be utilized by the image processing unit to generate the high-resolution depth maps.

29. A non-transitory machine-readable storage medium encoded with instructions that, when executed by a processor of a container host, cause the processor to:

receive two-dimensional (2D) images of scenes using a first central camera and multiple first cameras of a set of multi-resolution cameras, wherein the set of multi-resolution cameras comprises the first central camera having a first resolution, and the multiple first cameras having one or more resolutions that are lower than the first resolution and disposed around the first central camera, and wherein the set of multi-resolution cameras comprise multi-spectral cameras with multiple field of views, and wherein the multiple first cameras are disposed around the first central camera in multiple camera cluster, each camera cluster having:

a second central camera; and

multiple second cameras, having one or More resolutions that are different from a resolution of the second central camera and disposed around the second central camera, wherein the second central camera has a higher resolution than the one or more resolutions of the multiple second cameras;

generate a. low-resolution depth map for each scene of the scenes using the received 2D images using given depths;

generate a high-resolution depth map for each scene of the scenes for a wide depth range by iteratively refining the low-resolution depth map for each scene;

generate a three-dimensional (3D) video based on the high-resolution depth map corresponding to each scene of the scenes and the received 2D images of the first central camera; and

send the 3D video to a central processing and control unit of the autonomous vehicle, wherein the central processing and control unit includes an artificial intelligence unit that utilizes an artificial intelligence to:

compute a distance a velocity, and an acceleration of one or more objects relative to the autonomous vehicle by analyzing multiple frames of the 3D video, wherein analyzing the multiple frames of the 3D video comprises analyzing each frame of the multiple frames that includes a 2D image of the received 2D images of the first central camera and a corresponding high-resolution depth map associated with the 2D image; and

control the autonomous vehicle based on the computed distance, velocity, and acceleration of the one or more objects.

30. The non-transitory machine-readable storage medium of claim 29 , wherein the instructions to compute the distance, velocity, and acceleration of the one or more objects comprise instructions to:

convert, by the central processing and control unit, 3D image data associated with each frame of the multiple frames of the 3D video into a point cloud to identify dimensions of the one or more objects; and

compute, by the central processing and control unit, the distance, velocity, and acceleration of the one or more objects relative to the autonomous vehicle based on the identified dimensions and the multiple frames of the 3D video.

31. The non-transitory machine-readable storage medium of claim 29 , wherein the instructions to control the autonomous vehicle comprise instructions to:

compute, by the central processing and control unit, segmentation, path prediction, and localization of the one or more objects based on the distance, velocity, and acceleration of the one or more objects; and

control, by the central processing and control unit, the autonomous vehicle based on the computed segmentation path prediction, and localization of the one or more objects.

32. The non-transitory machine-readable storage medium of claim 31 , wherein the instructions to generate a low-resolution depth map comprise instructions to:

downscale the resolution of the received 2D image of the central camera to be substantially equal to the one of one or more resolutions associated with the cameras of the multiple camera groups; and

generate the low-resolution depth map for each scene using all pixels in the downscaled received 2D image of the central camera, the received 2D images associated with the multiple camera groups using relatively small depths by performing a parallax warping and computing corresponding variances on neighboring pixels of each pixel and obtaining a global minimum depth value for every pixel as pixel depths.

33. The non-transitory machine-readable storage medium of claim 32 , wherein the instructions to generate the high-resolution depth map comprise instructions to:

refine the generated low-resolution depth map for each scene by using, for every pixel, obtained global minimum depth values as pixel depths, and further computing updated global minimum depth values using current depth values and additional new depth values around current depth values, and replacing old global minimum depth values with the updated global minimum depth values, which creates a number of new depths in the updated refined depth map, wherein the generated low-resolution depth maps is iteratively refined using the replaced updated global minimum depth values;

upscale the resolution of the received 2D images of the multiple camera groups to be substantially equal to the resolution of the received 2D image at the central camera;

generate the high-resolution depth map fer each scene by performing the parallax warping and computing corresponding variances on neighboring pixels of each pixel in the received 2D image of the central camera, the upscaled received 2D images of the multiple camera groups, and the iteratively refined generated low-resolution depth map; and

refine the generated high-resolution depth map for each scene by using, for every pixel, obtained global minimum depth values as pixel depths, and further computing updated global minimum depth values using current depth values and additional new depth values around current depth values, and replacing old global minimum depth values with the updated global minimum depth values, which creates a number at new depths in the updated refined depth map, wherein the generated high-resolution depth map fer each scene is iteratively refined using the replaced updated global minimum depth values.

34. The non-transitory machine-readable storage medium of claim 29 , further comprising instructions that, when executed by the processor, cause the processor to:

dynamically measure a temperature surrounding the autonomous vehicle using a temperature sensor; and

select true at multiple predetermined calibration tables corresponding to the measured temperature, wherein the selected predetermined calibration table is utilized to generate the high-resolution depth maps.

Continuity (2)
Provisional Application 62804771 · Feb 13, 2019
Related Publication 20200257306A1 · Aug 13, 2020
Cited By (4)
US 12,341,957 US 12,366,857 US 12,483,682 US 12,503,101