IP Library › Granted Patent US 11,430,238
Granted Patent B1
US 11,430,238 · App. 16/838,934 · Granted Aug 30, 2022

Generating a contextual information vector for improved scene understanding

Inventors: Angela Blechschmidt (San Jose, CA); Mohammad Haris Baig (San Jose, CA); Daniel Ulbricht (Sunnyvale, CA)
Assignee: Apple Inc.
G06V30/274G06K9/6217G06N3/04G06N3/08G06T7/60G06V10/40
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,430,238
App. No.
16/838,934
Granted
Aug 30, 2022
Kind
B1
Abstract

In one implementation, a method of generating a confidence value for a result from a primary task is performed at an image processing system. The method includes obtaining, by a feature extractor portion of the neural network, a set of feature maps for an image data frame; generating a contextual information vector associated with the image data frame based on results from one or more auxiliary tasks performed on the set of feature maps by an auxiliary task sub-network portion of the neural network; performing, by a primary task sub-network portion of the neural network, a primary task on the set of feature maps for the image data frame in order to generate a primary task result; and generating a confidence value based on the contextual information vector, wherein the confidence value corresponds to a reliability metric for the primary task result.

Claims (55)

1. A method comprising:

at an image processing system including: a confidence value generation engine, and a neural network having at least a feature extractor, an auxiliary task sub-network, a primary task sub-network, and a contextual information vector generation engine:

obtaining, by the feature extractor of the neural network, a set of feature maps for an image data frame by processing the image data frame with the feature extractor of the neural network;

performing, by the primary task sub-network of the neural network, a primary task on the set of feature maps for the image data frame in order to generate a primary task result;

performing, by the auxiliary task sub-network of the neural network, one or more auxiliary tasks on the set of feature maps in order to generate one or more auxiliary task results, wherein the one or more auxiliary tasks are different from the primary task;

generating, by the contextual information vector generation engine, a contextual information vector associated with the image data frame based on the one or more auxiliary task results from one or more auxiliary tasks performed on the set of feature maps by the auxiliary task sub-network of the neural network; and

generating, by the confidence value generation engine, a confidence value based at least in part on the contextual information vector, wherein the confidence value corresponds to a reliability metric for the primary task result.

2. The method of claim 1 further comprising, providing the primary task result to one or more subsequent operations in response to determining that the confidence value breaches a reliability threshold.

3. The method of claim 1 further comprising, generating an error alert associated with the primary task result in response to determining that the confidence value does not breach a reliability threshold.

4. The method of claim 1 further comprising, discarding the primary task result in response to determining that the confidence value does not breach a reliability threshold.

5. The method of claim 1 , further comprising:

determining whether or not the confidence value breaches a reliability threshold;

in response to determining that the confidence value breaches the reliability threshold, performing plane expansion on the image data frame based on the primary task result; and

in response to determining that the confidence value does not breach the reliability threshold:

discarding the primary task result and

performing a geometric plane estimation operation on the image data frame.

6. The method of claim 1 , further comprising:

providing the contextual information vector to the primary task sub-network of the neural network, and

wherein performing, by the primary task sub-network of the neural network, the primary task includes performing the primary task on the set of feature maps for image data frame and the contextual information vector in order to generate a result.

7. The method of claim 1 , wherein the feature extractor of the neural network corresponds to hidden layers of the neural network, wherein the auxiliary task sub-network of the neural network corresponds to one or more parallel output layers of the neural network that perform auxiliary tasks, and wherein the primary task sub-network of the neural network corresponds to an output layer of the neural network that performs the primary task.

8. The method of claim 1 further comprising, obtaining the image data frame.

9. The method of claim 8 , wherein obtaining the image data frame includes capturing the image data frame using an image sensor of the device.

10. The method of claim 1 , wherein the image data frame corresponds to a single image data frame.

11. The method of claim 1 , wherein the image data frame corresponds to a set of one or more image data frames.

12. The method of claim 1 , wherein the confidence value corresponds to a probability or a score.

13. The method of claim 1 , wherein the primary task corresponds to at least one of an instance segmentation task or a semantic segmentation task.

14. The method of claim 1 , wherein a respective auxiliary task among the one or more auxiliary tasks corresponds to at least one of a scene classification task, a scene understanding task, a segmentation task, or an object recognition task.

15. The method of claim 1 , wherein the neural network corresponds to a convolutional neural network (CNN).

16. An image processing system comprising a confidence value generation engine, and a neural network having at least a feature extractor, an auxiliary task sub-network, a primary task sub-network, and a contextual information vector generation engine, the image processing system further comprising:

one or more processors;

a non-transitory memory; and

one or more programs stored in the non-transitory memory, which, when executed by the one or more processors, cause the device to:

obtain, by the feature extractor of the neural network, a set of feature maps for an image data frame by processing the image data frame with the feature extractor of the neural network;

perform, by the primary task sub-network of the neural network, a primary task on the set of feature maps for the image data frame in order to generate a primary task result;

perform, by the auxiliary task sub-network of the neural network, one or more auxiliary tasks on the set of feature maps in order to generate one or more auxiliary task results, wherein the one or more auxiliary tasks are different from the primary task;

generate, by the contextual information vector generation engine, a contextual information vector associated with the image data frame based on the one or more auxiliary task results from one or more auxiliary tasks performed on the set of feature maps by the auxiliary task sub-network of the neural network; and

generate, by the confidence value generation engine, a confidence value based at least in part on the contextual information vector, wherein the confidence value corresponds to a reliability metric for the primary task result.

17. The image processing system of claim 16 , wherein the one or more programs further cause the image processing system to:

provide the primary task result to one or more subsequent operations in response to determining that the confidence value breaches a reliability threshold.

18. The image processing system of claim 16 , wherein the one or more programs further cause the image processing system to:

generate an error alert associated with the primary task result in response to determining that the confidence value does not breach a reliability threshold.

19. The image processing system of claim 16 , wherein the one or more programs further cause the image processing system to:

discard the primary task result in response to determining that the confidence value does not breach a reliability threshold.

20. A non-transitory memory storing one or more programs, which, when executed by one or more processors of an image processing system comprising a confidence value generation engine, and a neural network having at least a feature extractor, an auxiliary task sub-network, a primary task sub-network, and a contextual information vector generation engine, cause the image processing system to:

obtain, by the feature extractor of the neural network, a set of feature maps for an image data frame by processing the image data frame with the feature extractor of the neural network;

perform, by the primary task sub-network of the neural network, a primary task on the set of feature maps for the image data frame in order to generate a primary task result;

perform, by the auxiliary task sub-network of the neural network, one or more auxiliary tasks on the set of feature maps in order to generate one or more auxiliary task results, wherein the one or more auxiliary tasks are different from the primary task;

generate, by the contextual information vector generation engine, a contextual information vector associated with the image data frame based on the one or more auxiliary task results from one or more auxiliary tasks performed on the set of feature maps by the auxiliary task sub-network of the neural network; and

generate, by the confidence value generation engine, a confidence value based at least in part on the contextual information vector, wherein the confidence value corresponds to a reliability metric for the primary task result.

21. The non-transitory memory of claim 20 , wherein the one or more programs further cause the image processing system to:

provide the primary task result to one or more subsequent operations in response to determining that the confidence value breaches a reliability threshold.

22. The non-transitory memory of claim 20 , wherein the one or more programs further cause the image processing system to:

generate an error alert associated with the primary task result in response to determining that the confidence value does not breach a reliability threshold.

23. The non-transitory memory of claim 20 , wherein the one or more programs further cause the image processing system to:

discard the primary task result in response to determining that the confidence value does not breach a reliability threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2020
From: BLECHSCHMIDT, ANGELA; BAIG, MOHAMMAD HARIS; ULBRICHT, DANIEL
To: APPLE INC.
Reel/Frame 052301/0788 →
Continuity (1)
Provisional Application 62866795 · Jun 26, 2019
Cited By (1)
US 12,651,331