IP Library › Granted Patent US 11,282,225
Granted Patent B2
US 11,282,225 · App. 16/566,831 · Granted Mar 22, 2022

Calibration for vision in navigation systems

Inventors: Andrei Klimovich (Minsk, BY); Dzianis Karonchyk (Minsk, BY); Dzianis Kanonik (Minsk, BY)
Assignee: Mapbox, Inc.
G06T7/73G01C21/30G06F16/29G06F16/587G06K9/00791G06K9/00798G06T7/12G06T7/269G06T7/74G06T11/00G01S19/13G06T2207/10016G06T2207/20076G06T2207/20081G06T2207/20084G06T2207/30244G06T2207/30252G06T2207/30256
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,282,225
App. No.
16/566,831
Granted
Mar 22, 2022
Kind
B2
Abstract

A computer-implemented method includes receiving a video comprising image frames depicting multiple objects. The video is captured by a video capture device moving relative to the surface of the Earth while the video is captured. A geographic location of the video capture device is received for each of the image frames and an angular orientation of the video capture device is determined based on the image frames. The determining the angular orientation includes determining a line in the image frames of the video for each object of a plurality of the multiple objects. The determined line corresponds to two-dimensional positions of the object in the image frames. The computer-implemented method includes determining a vanishing point of the image frames based on the determined lines and determining the angular orientation of the video capture device based on the determined vanishing point.

Claims (59)

1. A computer-implemented method comprising:

receiving a video comprising image frames depicting one or more objects, the video captured by a video capture device;

receiving a geographic location of the video capture device for one or more of the image frames;

determining an angular orientation of the video capture device based on the image frames, the determining the angular orientation comprising:

determining an orientation of a segmentation object depicted in one or more of the image frames using a segmentation model;

generating a segmentation track using the orientation of the segmentation object;

determining a vanishing point of the image frames based on the determined segmentation track, and

determining the angular orientation of the video capture device based on the determined vanishing point; and

determining a geographic location of an object captured in the one or more of the image frames based at least on the received geographic location of the video capture device, the determined angular orientation of the video capture device, and respective two-dimensional positions of the object captured in the one or more of the image frames.

2. The computer-implemented method of claim 1 , further comprising:

determining an optical flow of the segmentation object through the image frames based on the image frames and a two-dimensional position of the segmentation object in the image frames; and

generating the segmentation track based on the determined optical flow.

3. The computer-implemented method of claim 1 , wherein the segmentation object corresponds to a straight line.

4. The computer-implemented method of claim 1 , wherein the segmentation object is a road marker.

5. The computer-implemented method of claim 1 , wherein identifying the segmentation object comprises:

inputting the one or more of the image frames to the segmentation model to determine one or more output features of the segmentation object and a corresponding output orientation for each of the one or more output features;

identifying the segmentation object based on the one or more output features; and

determining the orientation of the segmentation object based on the corresponding output segmentation orientation for each of the one or more output features.

6. The computer-implemented method of claim 5 , wherein the segmentation model comprises:

a set of model parameters trained using a set of training image frames of a training video and a set of training labels, each training label corresponding to one of the set of training image frames; and

a function relating one of the image frames and the model parameters to an output feature of a training segmentation object and a corresponding output segmentation orientation for the output feature of the training segmentation object.

7. The computer-implemented method of claim 1 , wherein the vanishing point is determined based on an estimated point of intersection of the segmentation track and one or more additional segmentation tracks corresponding to one or more additional segmentation objects depicted in one or more of the image frames.

8. The computer-implemented method of claim 7 , wherein the estimated point of intersection for the segmentation track and the one or more additional segmentation tracks is based on a point with a minimum sum of distances from each of the segmentation track and the one or more additional segmentation tracks.

9. The computer-implemented method of claim 7 , further comprising:

optimizing the estimated point of intersection at least once, the optimizing comprising:

identifying a new set of segmentation tracks, each of the new set having a distance that is less than a threshold distance; and

determining a new estimated point of intersection for the new set of segmentation tracks, wherein

the vanishing point is determined based on the new estimated point of intersection.

10. The computer implemented method of claim 1 , wherein the two-dimensional positions of the object captured in the one or more of the image frames is determined by inputting the one or more image frames to an object detection model.

11. The computer-implemented method of claim 1 , further comprising for each image frame of a plurality of the one or more image frames:

determining sets of camera vector coordinates for the object captured in the one or more image frames based on the two-dimensional positions of the object within the one or more image frames, each set of camera vector coordinates indicating a vector that originates at a focal point of the video capture device and ending at a three-dimensional position of the object relative to the focal point, and

determining sets of relational coordinates for the object captured in the one or more image frames based on the determined sets of camera vector coordinates for the object, each set of relational coordinates indicating a three-dimensional position of the object relative to a central location and a forward direction associated with the video capture device.

12. The computer implemented method of claim 11 , further comprising:

determining sets of local east, north, up (ENU) coordinates for the object captured in the one or more image frame based on the determined sets of relational coordinates and the orientation of the forward direction, relative to a local North direction of a local tangent plane in a vicinity of the video capture device, each set of local ENU coordinates indicating a position in the local tangent plane, wherein

the determining the geographic location of the object captured in the one or more images frames is based on the determined sets of local ENU coordinates.

13. The computer implemented method of claim 1 , wherein the angular orientation of the video capture device is defined by a roll coordinate indicating a roll angle relative to a ground plane in a vicinity of the video capture device and a pitch coordinate indicating a pitch angle relative to a forward direction.

14. The computer implemented method of claim 1 , further comprising:

receiving a geographic location and a forward direction of a vehicle associated with the video capture device, wherein

the received geographic location of the video capture device is relative to the geographic location of the vehicle,

and the angular orientation of the video capture device includes a pitch angle relative to the forward direction of the vehicle.

15. The computer implemented method of claim 1 , wherein the received geographic location of the video capture device includes an elevation of the video capture device relative to a ground plane in a vicinity of the video capture device.

16. The computer implemented method of claim 1 , wherein the video capture device is moving relative to a surface of the Earth.

17. A non-transitory computer readable storage medium storing executable instructions that, when executed by one or more processors, cause the one or more processors to perform steps comprising:

receiving a video comprising image frames depicting one or more objects, the video captured by a video capture device; and

determining an angular orientation of the video capture device based on the image frames, the determining the angular orientation comprising:

identifying a segmentation object depicted in one or more of the image frames using a segmentation model, comprising:

inputting the one or more of the image frames to the segmentation model to determine one or more output features of the segmentation object and a corresponding output orientation for each of the one or more output features; and

identifying the segmentation object based on the one or more output features;

determining an orientation of the segmentation object based on the corresponding output segmentation orientation for each of the one or more output features;

generating a segmentation track using the orientation of the segmentation object;

determining a vanishing point of the image frames based on the determined segmentation track, and

determining the angular orientation of the video capture device based on the determined vanishing point.

18. The non-transitory computer readable storage medium of claim 17 , the instructions further cause the one or more processers to perform steps comprising:

determining an optical flow of the segmentation object through the image frames based on the image frames and a two-dimensional position of the segmentation object in the image frames; and

generating the segmentation track based on the determined optical flow.

19. The non-transitory computer readable storage medium of claim 17 , wherein the segmentation object is a road marker.

20. The non-transitory computer readable storage medium of claim 17 , the steps further comprising:

receiving a geographic location of the video capture device for the one or more of the image frames; and

determining a geographic location of the segmentation object captured in the one or more of the image frames based at least on the received geographic location of the video capture device, the determined angular orientation of the video capture device, and respective two-dimensional positions of the segmentation object captured in the one or more of the image frames.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2020
From: MAPBOX INTERNATIONAL, LLC
To: MAPBOX, INC.
Reel/Frame 052301/0380 →
CORPORATE CONVERSION Recorded Mar 30, 2020
From: MAPBOX INTERNATIONAL, INC.
To: MAPBOX INTERNATIONAL, LLC
Reel/Frame 052268/0688 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2020
From: MAPDATA OOO
To: MAPBOX INTERNATIONAL, INC.
Reel/Frame 052249/0578 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2020
From: KLIMOVICH, ANDREI; KARONCHYK, DZIANIS; KANONIK, DZIANIS
To: MAPDATA OOO
Reel/Frame 052214/0704 →
Continuity (3)
Provisional Application 62384370 · Apr 15, 2019
Provisional Application 62729401 · Sep 10, 2018
Related Publication 20200082565A1 · Mar 12, 2020
Cited By (1)
US 12,664,770