SYSTEMS AND METHODS FOR GENERATING A 3D WORLD MODEL USING VELOCITY DATA OF A VEHICLE
First Claim
1. A method for generating a 3D world model, comprising:
- receiving, by a computing device including one or more processors, from an image capture device mounted on a movable entity, a sequence of images including a first image captured at a first time and a plurality of second images captured after the first time, the first image of the sequence of images including a first plurality of pixels having respective parameter values, the plurality of second images each including a respective second plurality of pixels having respective parameter values;
identifying, by the computing device, motion data of the movable entity;
tracking, by the computing device, movement of at least a subset of the first plurality of pixels of the first image across the sequence of images;
estimating, by the computing device responsive to tracking the subset of the first plurality of pixels and using the received motion data, a depth value for each pixel of the subset of the first plurality of pixels; and
generating, by the computing device, using the estimated depth value for each pixel of the subset of the first plurality of pixels, a keyframe to populate a point cloud including a plurality of points, each point corresponding to a respective pixel of the subset of the first plurality of pixels.
2 Assignments
0 Petitions
Accused Products
Abstract
A self-contained, low-cost, low-weight guidance system for vehicles is provided. The guidance system can include an optical camera, a case, a processor, a connection between the processor and an on-board control system, and computer algorithms running on the processor. The guidance system can be integrated with a vehicle control system through “plug and play” functionality or a more open Software Development Kit. The computer algorithms re-create 3D structures as the vehicle travels and continuously updates a 3D model of the environment. The guidance system continuously identifies and tracks terrain, static objects, and dynamic objects through real-time camera images. The guidance system can receive inputs from the camera and the onboard control system. The guidance system can be used to assist vehicle navigation and to avoid possible collisions. The guidance system can communicate with the control system and provide navigational direction to the control system.
125 Citations
20 Claims
-
1. A method for generating a 3D world model, comprising:
-
receiving, by a computing device including one or more processors, from an image capture device mounted on a movable entity, a sequence of images including a first image captured at a first time and a plurality of second images captured after the first time, the first image of the sequence of images including a first plurality of pixels having respective parameter values, the plurality of second images each including a respective second plurality of pixels having respective parameter values; identifying, by the computing device, motion data of the movable entity; tracking, by the computing device, movement of at least a subset of the first plurality of pixels of the first image across the sequence of images; estimating, by the computing device responsive to tracking the subset of the first plurality of pixels and using the received motion data, a depth value for each pixel of the subset of the first plurality of pixels; and generating, by the computing device, using the estimated depth value for each pixel of the subset of the first plurality of pixels, a keyframe to populate a point cloud including a plurality of points, each point corresponding to a respective pixel of the subset of the first plurality of pixels. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for generating a 3D world model, comprising:
-
a hardware processor; a memory coupled to the at least one processor; an image receiver configured to receive, from an image capture device mounted on a movable entity, a sequence of images including a first image captured at a first time and a plurality of second images captured after the first time, the first image of the sequence of images including a first plurality of pixels having respective parameter values, the plurality of second images each including a respective second plurality of pixels having respective parameter values; a motion data receiver configured to receive motion data of the movable entity; a pixel movement tracker configured to track movement of at least a subset of the first plurality of pixels of the first image across the sequence of images; a depth value estimator configured to estimate, responsive to the tracked subset of the first plurality of pixels and using the received motion data, a depth value for each pixel of the subset of the first plurality of pixels; and a keyframe generator configured to generate, using the estimated depth value for each pixel of the subset of the first plurality of pixels, a keyframe to populate a point cloud including a plurality of points, each point corresponding to a respective pixel of the subset of the first plurality of pixels. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer readable storage medium including computer-executable instructions stored thereon, which when executed by a computer, causes the computer to:
-
receive, from an image capture device mounted on a movable entity, a sequence of images including a first image captured at a first time and a plurality of second images captured after the first time, the first image of the sequence of images including a first plurality of pixels having respective parameter values, the plurality of second images each including a respective second plurality of pixels having respective parameter values; receive motion data of the movable entity; track movement of at least a subset of the first plurality of pixels of the first image across the sequence of images; estimate, responsive to tracking the subset of the first plurality of pixels and using the received motion data, a depth value for each pixel of the subset of the first plurality of pixels; and generate, using the estimated depth value for each pixel of the subset of the first plurality of pixels, a keyframe to populate a point cloud including a plurality of points, each point corresponding to a respective pixel of the subset of the first plurality of pixels. - View Dependent Claims (18, 19, 20)
-
Specification