IP Library Granted Patent US 10,366,508
Granted Patent B1
US 10,366,508 · App. 16/010,331 · Granted Jul 30, 2019

Visual-inertial positional awareness for autonomous and non-autonomous device

Inventors: Shaoshan Liu (Fremont, CA); Zhe Zhang (Sunnyvale, CA); Grace Tsai (Campbell, CA)
Assignee: PerceptIn Shenzhen Limited
G06T7/74G01C21/165G06K9/4676G06T5/006G06T7/248H04N13/25
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 10,366,508
App. No.
16/010,331
Granted
Jul 30, 2019
Kind
B1
Abstract

The described positional awareness techniques employing visual-inertial sensory data gathering and analysis hardware with reference to specific example implementations implement improvements in the use of sensors, techniques and hardware design that can enable specific embodiments to provide positional awareness to machines with improved speed and accuracy.

Claims (65)

1. A system including:

a map server including computer instructions that when executed by a processor coupled to a memory store multi-layer maps of an area under exploration using information sourced by one or more autonomous units; and

one or more autonomous units selected from a set comprising autonomous vehicles and robots, including a first autonomous unit, each autonomous unit including at least a quad camera visual sensor and at least one selected from a global positioning system and an inertial measurement unit; and each autonomous unit configured to perform:

receiving a proto-roadmap including only roads;

in the autonomous unit, capturing a set of keyrigs, each keyrig is a set of quad images with a pose generated using combinations of global positioning system, inertial measurement unit, and visual information of a scene by the first autonomous unit during travel along one of the roads in the proto-roadmap;

determining a ground perspective view, including at least road marking information for at least one of the roads in the proto-roadmap from the visual information captured;

determining a spatial perspective view, including objects along at least one of the roads in the proto-roadmap from the visual information captured;

classifying objects from the spatial perspective view into moving objects and non-moving objects;

building at least one multi-layer map including a stationary portion consisting of the proto-roadmap, the non-moving objects from the spatial perspective view and the road marking information from the ground perspective view, wherein at least one multi-layer map is accurate within centimeters; and

providing the multi-layer map via a communications link to the map server that stores and distributes multi-layer maps to guide the autonomous unit at a future time and at least one other autonomous unit.

2. The system of claim 1 , further including at least one multi-layer map with an accuracy within 10 centimeters.

3. The system of claim 1 , further including at least one multi-layer map with an accuracy within 5 centimeters.

4. The system of claim 1 , further including providing moving objects to a further process that avoids potential collisions with moving objects and the autonomous unit.

5. The system of claim 1 , further including substantially contemporaneously tracking a position of the autonomous unit against the multi-layer map.

6. The system of claim 1 , further including providing the proto-roadmap, the ground perspective view and the spatial perspective view as layers in a multi-layer map data structure.

7. The system of claim 1 , further including generating several hundred thousand images during one hour of operation by an autonomous unit.

8. The system of claim 1 , further including storing a time of day with the multi-layer map.

9. The system of claim 1 , further including storing a weather condition with the multi-layer map.

10. The system of claim 1 , further including receiving semantic information from the map server and classifying the objects using the semantic information into moving objects and non-moving objects.

11. The system of claim 1 , further including: building a semantic view from the spatial perspective view and objects classified as non-moving objects.

12. The system of claim 1 , further including:

detecting when visual information is insufficient to determine the ground perspective view; and

fall back to providing the proto-roadmap whenever visual information is insufficient.

13. The system of claim 1 , further including:

detecting when visual information is insufficient to determine a spatial perspective view; and

fall back to providing the ground perspective view whenever visual information is insufficient.

14. The system of claim 1 , further including:

detecting when visual or semantic information is insufficient to classify objects; and

fall back to providing the spatial perspective view whenever visual or semantic information is insufficient.

15. The system of claim 1 , further including identifying an object to be included in the spatial perspective view:

extracting a first set of 2D features of the road marking from a first 360-degrees image in a keyrig selected from a set of keyrigs provided by an autonomous unit;

extracting a second set of 2D features of the road marking from a 360-degrees second image in the keyrig selected;

receiving a position of the autonomous unit when the 360-degrees images were captured including longitude and latitude as input;

triangulating the first set of 2D features from the first 360-degrees image and the second set of 2D features from the second 360-degrees image to derive location for feature points of the road marking relative to the position of an autonomous unit; and

generating for at least one feature point of the object, a global position, including longitude, latitude, and height and adding the global position and feature descriptors of the object to the spatial perspective view.

16. The system of claim 1 , further including identifying a road marking to be included in the ground perspective view:

extracting a first set of 2D features of the road marking from a first 360-degrees image in a keyrig selected from a set of keyrigs provided by an autonomous unit;

extracting a second set of 2D features of the road marking from a 360-degrees second image in the keyrig selected;

receiving a position of the autonomous unit when the 360-degrees images were captured including longitude and latitude as input;

triangulating the first set of 2D features from the first 360-degrees image and the second set of 2D features from the second 360-degrees image to derive location for feature points of the road marking relative to the position of an autonomous unit; and

generating for at least one feature point of the road marking, a global position, including longitude and latitude, and adding the global position and feature descriptors of the road marking to the ground perspective view.

17. A method for automatically building multi-layer maps by a first autonomous unit selected from a set comprising autonomous vehicles and robots that includes at least a quad camera visual sensor and at least one selected from a global positioning system and an inertial measurement unit, the method including:

receiving a proto-roadmap including only roads;

in the autonomous unit, capturing a set of keyrigs, each keyrig is a set of quad images with a pose generated using combinations of global positioning system, inertial measurement unit, and visual information of a scene by the first autonomous unit during travel along one of the roads in the proto-roadmap;

determining a ground perspective view, including at least road marking information for at least one of the roads in the proto-roadmap from the visual information captured;

determining a spatial perspective view including objects along at least one of the roads in the proto-roadmap from the visual information captured;

classifying objects from the spatial perspective view into moving objects and non-moving objects;

building at least one multi-layer map including a stationary portion consisting of the proto-roadmap, the non-moving objects from the spatial perspective view and the road marking information from the ground perspective view, wherein at least one multi-layer map is accurate within centimeters; and

providing the multi-layer map via a communications link to a map server including computer instructions that when executed by a processor coupled to a memory that stores and distributes multi-layer maps to guide the autonomous unit at a future time and at least one other autonomous unit.

18. The method of claim 17 , further including:

detecting features in sets of images using Shi-Tomasi feature detection;

determining feature descriptors for the features detected; and

providing at least one of the features detected and the feature descriptors to a host via a communications interface.

19. The method of claim 18 , further including:

determining feature correspondences between features detected from successive images in the sets of images; and

providing the feature correspondences to the host via the communications interface.

20. The method of claim 19 , wherein feature correspondences are determined using optical flow.

21. A non-transitory computer readable storage medium impressed with computer program instructions automatically building multi-layer maps by a first autonomous unit selected from a set comprising autonomous vehicles and robots that includes at least a quad camera visual sensor and at least one selected from a global positioning system and an inertial measurement unit, which instructions, when executed on a processor, perform:

receiving a proto-roadmap including only roads;

in the autonomous unit, capturing a set of keyrigs, each keyrig is a set of quad images with a pose generated using combinations of global positioning system, inertial measurement unit, and visual information of a scene by the first autonomous unit during travel along one of the roads in the proto-roadmap;

determining a ground perspective view, including at least road marking information for at least one of the roads in the proto-roadmap from the visual information captured;

determining a spatial perspective view including objects along at least one of the roads in the proto-roadmap from the visual information captured;

classifying objects from the spatial perspective view into moving objects and non-moving objects;

building at least one multi-layer map including a stationary portion consisting of the proto-roadmap, the non-moving objects from the spatial perspective view and the road marking information from the ground perspective view, wherein at least one multi-layer map is accurate within centimeters; and

providing the multi-layer map via a communications link to a map server including computer instructions that when executed by a processor coupled to a memory that stores and distributes multi-layer maps to guide the autonomous unit at a future time and at least one other autonomous unit.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY NAME PREVIOUSLY RECORDED ON REEL 048468 FRAME 0896. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT OF ASSIGNORS INTEREST. Recorded Mar 5, 2019
From: PERCEPTIN, INC.
To: PERCEPTIN SHENZHEN LIMITED
Reel/Frame 048513/0494 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 28, 2019
From: PERCEPTLN, INC.
To: PERCEPTLN SHENZHEN LIMITED
Reel/Frame 048468/0896 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2018
From: LIU, SHAOSHAN; ZHANG, ZHE; TSAI, GRACE
To: PERCEPTIN, INC.
Reel/Frame 046165/0941 →
Continuity (1)
Continuation In Part 15250419 · Aug 29, 2016
Cited By (7)
US 12,281,898 US 12,299,770 US 12,307,698 US 12,475,522 US 12,514,419 US 12,553,738 US 12,632,919