IP Library › Granted Patent US 10,635,927
Granted Patent B2
US 10,635,927 · App. 15/912,242 · Granted Apr 28, 2020

Systems for performing semantic segmentation and methods thereof

Inventors: Yi-Ting Chen (Raymond, OH); Athmanarayanan Lakshmi Narayanan (Sunnyvale, CA)
Assignee: HONDA MOTOR CO., LTD.
G06K9/4671G06K9/3241G06K9/34G06K9/4609G06K9/4628G06K9/627G06N3/0454G06N3/08G06N7/005G06T7/11G06K9/00791G06T2207/10024G06T2207/20081G06T2207/20084G06T2207/30196G06T2207/30261
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,635,927
App. No.
15/912,242
Granted
Apr 28, 2020
Kind
B2
Abstract

Performing semantic segmentation of an image can include processing the image using a plurality of convolutional layers to generate one or more feature maps, providing at least one of the one or more feature maps to multiple segmentation branches, and generating segmentations of the image based on the multiple segmentation branches, including providing feedback to, or generating feedback from, at least one of the multiple segmentation branches in performing segmentation in another of the segmentation branches.

Claims (73)

1. A method for performing segmentation of an image, comprising:

processing the image using a plurality of convolutional layers to generate one or more feature maps;

providing at least one of the one or more feature maps to multiple segmentation branches, wherein each of the multiple segmentation branches correspond to a different type of segmentation; and

generating segmentations of the image based on the multiple segmentation branches, including providing feedback to, or generating feedback from, at least one of the multiple segmentation branches in performing segmentation in another of the multiple segmentation branches,

wherein generating the segmentations of the image comprises generating a category-level segmentation of the image and generating an instance-level segmentation of the image,

wherein generating the category-level segmentation of the image is based at least in part on features received from generating the instance-level segmentation of the image,

wherein the features are received from an output of a pooling operation performed as part of the instance-level segmentation, and

wherein generating the category-level segmentation of the image is based on performing a conditional random field operation on the image using at least the features from the output of the pooling operation.

2. The method of claim 1 , wherein generating the segmentations of the image comprises:

generating, based on the at least one feature map, the category-level segmentation of the image at least in part by assigning a category to multiple pixels in the image; and

generating, based on the at least one feature map, the instance-level segmentation of the image at least in part by generating masks corresponding to instances detected in the image, wherein one or more pixels in the image are associated with the category and at least one of the masks.

3. The method of claim 1 , wherein providing feedback to, or generating feedback from, at least one of the multiple segmentation branches comprises generating or updating a fully convolutional network that is utilized in performing segmentation using each of the multiple segmentation branches.

4. A method for performing segmentation of an image, comprising:

processing the image using a plurality of convolutional layers to generate one or more feature maps;

providing at least one of the one or more feature maps to multiple segmentation branches, wherein each of the multiple segmentation branches correspond to a different type of segmentation; and

generating segmentations of the image based on the multiple segmentation branches, including providing feedback to, or generating feedback from, at least one of the multiple segmentation branches in performing segmentation in another of the multiple segmentation branches,

wherein generating the segmentations of the image comprises generating an instance-level segmentation of the image based at least in part on features received from generating a category instance-level segmentation of the image,

wherein the features are received from an output of a pooling operation performed as part of the category-level segmentation, and

wherein generating the instance-level segmentation of the image is based on performing one or more different pooling operations on the image using at least the features from the output of the pooling operation.

5. The method of claim 4 , wherein generating the segmentations of the image comprises:

generating, based on the at least one feature map, the category-level segmentation of the image at least in part by assigning a category to multiple pixels in the image; and

generating, based on the at least one feature map, the instance-level segmentation of the image at least in part by generating masks corresponding to instances detected in the image, wherein one or more pixels in the image are associated with the category and at least one of the masks.

6. The method of claim 4 , wherein providing feedback to, or generating feedback from, at least one of the multiple segmentation branches comprises generating or updating a fully convolutional network that is utilized in performing segmentation using each of the multiple segmentation branches.

7. A computing device for generating a segmentation of an image comprising:

a memory; and

at least one processor coupled to the memory, wherein the at least one processor is configured to:

process the image using a plurality of convolutional layers to generate one or more feature maps;

provide at least one of the one or more feature maps to multiple segmentation branches, wherein each of the multiple segmentation branches correspond to a different type of segmentation; and

generate segmentations of the image based on the multiple segmentation branches, including providing feedback to, or generating feedback from, at least one of the multiple segmentation branches in performing segmentation in another of the multiple segmentation branches,

wherein the at least one processor is configured to generate the segmentations of the image at least in part by generating a category-level segmentation of the image and generating an instance-level segmentation of the image,

wherein the at least one processor is configured to generate the category-level segmentation of the image based at least in part on features received from generating the instance-level segmentation of the image,

wherein the features are received from an output of a pooling operation performed as part of the instance-level segmentation, and

wherein the at least one processor is configured to generate the category-level segmentation of the image based on performing a conditional random field operation on the image using at least the features from the output of the pooling operation.

8. The computing device of claim 7 , wherein the at least one processor is configured to generate the segmentations of the image at least in part by:

generating, based on the at least one feature map, the category-level segmentation of the image at least in part by assigning a category to multiple pixels in the image; and

generating, based on the at least one feature map, the instance-level segmentation of the image at least in part by generating masks corresponding to instances detected in the image, wherein one or more pixels in the image are associated with the category and at least one of the masks.

9. The computing device of claim 7 , wherein the at least one processor is configured to provide feedback to, or generate feedback from, at least one of the multiple segmentation branches at least in part by generating or updating a fully convolutional network that is utilized in performing segmentation using each of the multiple segmentation branches.

10. A computing device for generating a segmentation of an image comprising:

a memory; and

at least one processor coupled to the memory, wherein the at least one processor is configured to:

process the image using a plurality of convolutional layers to generate one or more feature maps;

provide at least one of the one or more feature maps to multiple segmentation branches, wherein each of the multiple segmentation branches correspond to a different type of segmentation; and

generate segmentations of the image based on the multiple segmentation branches, including providing feedback to, or generating feedback from, at least one of the multiple segmentation branches in performing segmentation in another of the multiple segmentation branches,

wherein the at least one processor is configured to generate the segmentations of the image at least in part by generating an instance-level segmentation of the image based at least in part on features received from generating a category instance-level segmentation of the image,

wherein the features are received from an output of a pooling operation performed as part of the category-level segmentation, and

wherein the at least one processor is configured to generate the instance-level segmentation of the image based on performing one or more different pooling operations on the image using at least the features from the output of the pooling operation.

11. The computing device of claim 10 , wherein the at least one processor is configured to generate the segmentations of the image at least in part by:

generating, based on the at least one feature map, the category-level segmentation of the image at least in part by assigning a category to multiple pixels in the image; and

generating, based on the at least one feature map, the instance-level segmentation of the image at least in part by generating masks corresponding to instances detected in the image, wherein one or more pixels in the image are associated with the category and at least one of the masks.

12. The computing device of claim 10 , wherein the at least one processor is configured to provide feedback to, or generate feedback from, at least one of the multiple segmentation branches at least in part by generating or updating a fully convolutional network that is utilized in performing segmentation using each of the multiple segmentation branches.

13. A non-transitory computer-readable medium storing computer executable code for generating a segmentation of an image, the code comprising code for:

processing the image using a plurality of convolutional layers to generate one or more feature maps;

providing at least one of the one or more feature maps to multiple segmentation branches, wherein each of the multiple segmentation branches correspond to a different type of segmentation; and

generating segmentations of the image based on the multiple segmentation branches, including providing feedback to, or generating feedback from, at least one of the multiple segmentation branches in performing segmentation in another of the multiple segmentation branches,

wherein the code for generating the segmentations of the image comprises code for generating a category-level segmentation of the image and code for generating an instance-level segmentation of the image,

wherein the code for generating the category-level segmentation of the image is based at least in part on features received from generating the instance-level segmentation of the image,

wherein the features are received from an output of a pooling operation performed as part of the instance-level segmentation, and

wherein the code for generating the category-level segmentation of the image is based on performing a conditional random field operation on the image using at least the features from the output of the pooling operation.

14. The non-transitory computer-readable medium of claim 13 , wherein the code for generating the segmentations of the image comprises:

code for generating, based on the at least one feature map, the category-level segmentation of the image at least in part by assigning a category to multiple pixels in the image; and

code for generating, based on the at least one feature map, the instance-level segmentation of the image at least in part by generating masks corresponding to instances detected in the image, wherein one or more pixels in the image are associated with the category and at least one of the masks.

15. The non-transitory computer-readable medium of claim 13 , wherein the code for generating is configured to provide feedback to, or generate feedback from, at least one of the multiple segmentation branches at least in part by generating or updating a fully convolutional network that is utilized in performing segmentation using each of the multiple segmentation branches.

16. A non-transitory computer-readable medium storing computer executable code for performing segmentation of an image, the code comprising code for:

processing the image using a plurality of convolutional layers to generate one or more feature maps;

providing at least one of the one or more feature maps to multiple segmentation branches, wherein each of the multiple segmentation branches correspond to a different type of segmentation; and

generating segmentations of the image based on the multiple segmentation branches, including providing feedback to, or generating feedback from, at least one of the multiple segmentation branches in performing segmentation in another of the multiple segmentation branches,

wherein the code for generating the segmentations of the image comprises code for generating an instance-level segmentation of the image based at least in part on features received from generating a category instance-level segmentation of the image,

wherein the features are received from an output of a pooling operation performed as part of the category-level segmentation, and

wherein the code for generating the segmentations of the image comprises code for generating the instance-level segmentation of the image based on performing one or more different pooling operations on the image using at least the features from the output of the pooling operation.

17. The non-transitory computer-readable medium of claim 16 , wherein the code for generating the segmentations of the image comprises:

code for generating, based on the at least one feature map, the category-level segmentation of the image at least in part by assigning a category to multiple pixels in the image; and

code for generating, based on the at least one feature map, the instance-level segmentation of the image at least in part by generating masks corresponding to instances detected in the image, wherein one or more pixels in the image are associated with the category and at least one of the masks.

18. The non-transitory computer-readable medium of claim 16 , wherein the code for generating is configured to provide feedback to, or generate feedback from, at least one of the multiple segmentation branches at least in part by generating or updating a fully convolutional network that is utilized in performing segmentation using each of the multiple segmentation branches.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF THE SECOND ASSIGNOR PREVIOUSLY RECORDED AT REEL: 047641 FRAME: 0845. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 14, 2020
From: CHEN, YI-TING; LAKSHMI NARAYANAN, ATHMANARAYANAN
To: HONDA MOTOR CO., LTD.
Reel/Frame 051592/0014 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SECOND INVENTOR'S NAME PREVIOUSLY RECORDED AT REEL: 045830 FRAME: 0605. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Oct 4, 2018
From: CHEN, YI-TING; LAKSHI NARAYANAN, ATHMANARAYANAN
To: HONDA MOTOR CO., LTD
Reel/Frame 047641/0845 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2018
From: CHEN, YI-TING; NARAYANAN, ATHMA
To: HONDA MOTOR CO., LTD.
Reel/Frame 045830/0605 →
Continuity (2)
Provisional Application 62467642 · Mar 6, 2017
Related Publication 20180253622A1 · Sep 6, 2018
Cited By (2)
US 12,205,338 US 12,456,172