IP Library Granted Patent US 11,170,268
Granted Patent B2
US 11,170,268 · App. 16/679,092 · Granted Nov 9, 2021

Tracked entity detection validation and track generation with geo-rectification

Inventors: Leah Anderson (Richmond, CA); Mark Montoya (Arlington, VA); Andrew Elder (New York, NY); Alisa Le (Brooklyn, NY); Ezra Zigmond (Palo Alto, CA); Jocelyn Rivero (Los Angeles, CA)
Assignee: Palantir Technologies Inc.
G06K9/6263G06K9/00778G06K9/6232G06K9/6257
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,170,268
App. No.
16/679,092
Granted
Nov 9, 2021
Kind
B2
Abstract

Described herein are systems, methods, and non-transitory computer readable media for validating or rejecting automated detections of an entity being tracked within an environment in order to generate a track representative of a travel path of the entity within the environment. The automated detections of the entity may be generated by an artificial intelligence (AI) algorithm. The track may represent a travel path of the tracked entity across a set of image frames. The track may contain one or more tracklets, where each tracklet includes a set of validated detections of the entity across a subset of the set of image frames and excludes any rejected detections of the entity. Each tracklet may also contain one or more user-provided detections in scenarios in which the tracked entity is observed or otherwise known to be present in an image frame but automated detection of the entity did not occur.

Claims (46)

1. A system, comprising:

at least one processor; and

at least one memory storing computer-executable instructions, wherein the at least one processor is configured to access the at least one memory and execute the computer-executable instructions to:

present, via a first user interface, indicia representative of a plurality of detections of an entity within an environment across a set of image frames;

receive, via the first user interface, a selection of a particular detection of the entity for a particular image frame;

present, via the first user interface or a second user interface, a set of detections of the entity across a subset of the set of image frames, the subset of image frames including the particular image frame;

receive, via the first user interface or the second user interface, input validating or rejecting one or more detections in the set of detections of the entity;

receive, via the first user interface or the second user interface, input corresponding to a user-provided detection of the entity;

incorporate the input to a corresponding image frame in the subset of image frames; and

construct a tracklet representing at least a portion of a travel path of the entity, wherein the tracklet includes each validated detection and excludes each rejected detection.

2. The system of claim 1 , wherein the at least one processor is configured to receive the input validating or rejecting one or more detections in the set of detections by executing the computer-executable instructions to determine, for each detection in the set of detections, that a first user interface control element corresponding to validation of the detection has been selected or a second user interface control element corresponding to rejection of the detection has been selected.

3. The system of claim 1 , wherein the tracklet comprises the user-provided detection of the entity.

4. The system of claim 1 , wherein the plurality of detections of the entity is a plurality of automated detections identified by an artificial intelligence algorithm, wherein the entity is at least partially obstructed in the corresponding image frame, and wherein an automated detection of the entity is not associated with the corresponding image frame based at least in part on the partial obstruction of the entity.

5. The system of claim 1 , wherein the tracklet is a first tracklet, and wherein the at least one processor is further configured to execute the computer-executable instructions to append a second tracklet to the first tracklet to form at least a portion of a track representing the travel path of the entity.

6. The system of claim 5 , wherein the subset of the set of image frames is a first subset of image frames, wherein the first tracklet comprises a first set of validated detections of the entity across the first subset of image frames, wherein the second tracklet comprises a second set of validated detections of the entity across a second subset of the set of image frames, and wherein one or more image frames that do not include any detection of the entity occur between the first subset of image frames and the second subset of image frames.

7. The system of claim 5 , wherein the at least one processor is further configured to execute the computer-executable instructions to perform a geo-rectification of the track to adjust the track to conform to underlying static map data.

8. The system of claim 7 , wherein the at least one processor is configured to perform the geo-rectification by executing the computer-executable instructions to:

receive input corresponding to user manipulations of the track in relation to the static map data; and

generate a geo-rectified track by adjusting the track based at least in part on the input corresponding to the user manipulations.

9. The system of claim 1 , wherein the plurality of detections of the entity is a plurality of automated detections identified by an artificial intelligence algorithm, and wherein the at least one processor is further configured to execute the computer-executable instructions to provide an indication of the tracklet as training feedback to the artificial intelligence algorithm.

10. A method, comprising:

presenting, via a first user interface, indicia representative of a plurality of detections of an entity within an environment across a set of image frames;

receiving, via the first user interface, a selection of a particular detection of the entity for a particular image frame;

presenting, via the first user interface or a second user interface for viewing a set of detections of the entity across a subset of the set of image frames, the subset of image frames including the particular image frame;

receiving, via the first user interface or the second user interface, input validating or rejecting one or more detections in the set of detections of the entity;

receiving, via the first user interface or the second user interface, input corresponding to a user-provided detection of the entity;

incorporating the input to a corresponding image frame in the subset of image frames; and

constructing a tracklet representing at least a portion of a travel path of the entity, wherein the tracklet includes each validated detection and excludes each rejected detection.

11. The method of claim 10 , wherein receiving the input validating or rejecting one or more detections in the set of detections comprises determining, for each detection in the set of detections, that a first user interface control element corresponding to validation of the detection has been selected or a second user interface control element corresponding to rejection of the detection has been selected.

12. The method of claim 10 , wherein the tracklet comprises the user-provided detection of the entity.

13. The method of claim 10 , wherein the plurality of detections of the entity is a plurality of automated detections identified by an artificial intelligence algorithm, wherein the entity is at least partially obstructed in the corresponding image frame, and wherein an automated detection of the entity is not associated with the corresponding image frame based at least in part on the partial obstruction of the entity.

14. The method of claim 10 , wherein the tracklet is a first tracklet, the method further comprising appending a second tracklet to the first tracklet to form at least a portion of a track representing the travel path of the entity.

15. The method of claim 14 , wherein the subset of the set of image frames is a first subset of image frames, wherein the first tracklet comprises a first set of validated detections of the entity across the first subset of image frames, wherein the second tracklet comprises a second set of validated detections of the entity across a second subset of the set of image frames, and wherein one or more image frames that do not include any detection of the entity occur between the first subset of image frames and the second subset of image frames.

16. The method of claim 14 , further comprising performing a geo-rectification of the track to adjust the track to conform to underlying static map data.

17. The method of claim 16 , wherein performing the geo-rectification comprises:

receiving input corresponding to user manipulations of the track in relation to the static map data; and

generating a geo-rectified track by adjusting the track based at least in part on the input corresponding to the user manipulations.

18. The method of claim 10 , wherein the plurality of detections of the entity is a plurality of automated detections identified by an artificial intelligence algorithm, the method further comprising providing an indication of the tracklet as training feedback to the artificial intelligence algorithm.

19. A non-transitory computer readable medium comprising instructions that, when executed, cause one or more processors to perform:

presenting, via a first user interface, indicia representative of a plurality of detections of an entity within an environment across a set of image frames;

receiving, via the first user interface, a selection of a particular detection of the entity for a particular image frame;

presenting, via the first user interface or a second user interface for viewing a set of detections of the entity across a subset of the set of image frames, the subset of image frames including the particular image frame;

receiving, via the first user interface or the second user interface, input validating or rejecting one or more detections in the set of detections of the entity;

receiving, via the first user interface or the second user interface, input corresponding to a user-provided detection of the entity;

incorporating the input to a corresponding image frame in the subset of image frames; and

constructing a tracklet representing at least a portion of a travel path of the entity, wherein the tracklet includes each validated detection and excludes each rejected detection.

Assignments (2)
SECURITY INTEREST Recorded Jul 3, 2022
From: PALANTIR TECHNOLOGIES INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0506 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2020
From: ANDERSON, LEAH; MONTOYA, MARK; ELDER, ANDREW; ZIGMOND, EZRA; RIVERO, JOCELYN
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 053497/0483 →
Cited By (1)
US 12,205,364