IP Library Granted Patent US 10,706,556
Granted Patent B2
US 10,706,556 · App. 15/975,740 · Granted Jul 7, 2020

Skeleton-based supplementation for foreground image segmentation

Inventors: Se Hoon Lim (Bellevue, WA); Timothy Andrew Large (Bellevue, WA)
Assignee: Microsoft Technology Licensing, LLC
G06T7/194G06T5/002G06T7/13G06T7/215G06T7/50G06T2207/20044
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,706,556
App. No.
15/975,740
Granted
Jul 7, 2020
Kind
B2
Abstract

Systems and methods for foreground image segmentation, which receive image data captured at a first time, generate a skeleton model of a foreground subject captured in the image data, generate an initial foreground mask for a foreground segment including the foreground subject, generate secondary points corresponding to the foreground subject, identify supplemental points for the foreground segment based on at least the secondary points and the skeleton model, combine the supplemental points with the initial foreground mask to obtain a combined mask, obtain a foreground segment mask for the foreground subject based on the combined mask, and apply the foreground segment mask to the image data to obtain a foreground image portion for the foreground subject.

Claims (60)

1. A system for foreground image segmentation, the system comprising:

an imaging camera configured to capture image data at a first time;

a skeleton model generator configured to generate a skeleton model of a foreground subject captured in the image data;

an initial foreground mask generator configured to generate an initial foreground mask for a foreground segment including the foreground subject;

a secondary point generator configured to generate a first plurality of secondary points corresponding to the foreground subject;

a foreground segmenter comprising:

a skeleton-based reconstructor configured to identify supplemental points for the foreground segment based on at least the first plurality of secondary points and the skeleton model, and

a foreground mask combiner configured to combine the supplemental points with the initial foreground mask to obtain a combined mask,

wherein the foreground segmenter is configured to obtain a foreground segment mask for the foreground subject based on the combined mask; and

wherein the skeleton-based reconstructor is configured to reconstruct an estimated edge of the foreground segment mask based on at least the first plurality of secondary points; and

a foreground image generator configured to apply the foreground segment mask to the image data to obtain a foreground image portion for the foreground subject.

2. The system of claim 1 , wherein the secondary point generator is further configured to:

generate a second plurality of secondary points corresponding to the foreground subject; and

select the first plurality of secondary points from the second plurality of secondary points based on proximities of the first plurality of secondary points to features included in the skeleton model.

3. The system of claim 1 , wherein the skeleton-based reconstructor is further configured to:

select the supplemental points based on the supplemental points being positioned between the estimated edge and one or more features of the skeleton model.

4. The system of claim 3 , wherein the skeleton-based reconstructor is further configured to reconstruct the estimated edge by connecting groups of two or more of the first plurality of secondary points, with each group of secondary points being connected by a curve passing through and extending beyond the group of secondary points.

5. The system of claim 3 , wherein the skeleton-based reconstructor is further configured to:

reconstruct the estimated edge by connecting pairs of the first plurality of secondary points with respective line segments; and

identify the supplemental points by, for each of the line segments, identifying a second line segment contacting a feature of the skeleton model and selecting supplemental points based on the selected supplemental points being within an area between the line segment and the second line segment.

6. The system of claim 1 , wherein the secondary point generator is further configured to identify the first plurality of secondary points by motion estimation between the image data and a second image data captured before the first time.

7. The system of claim 1 , wherein the foreground segmenter is further configured to:

identify a plurality of rough edge points around a perimeter of the combined mask;

perform smoothing of the plurality of rough edge points to obtain a plurality of smoothed edge points; and

generate the foreground segment mask from the plurality of smoothed edge points.

8. The system of claim 1 , further including an image compositor configured to composite the foreground image portion with a background image.

9. The system of claim 1 , wherein the secondary point generator is further configured to:

generate a second plurality of secondary points corresponding to the foreground subject; and

select the first plurality of secondary points from the second plurality of secondary points based on proximities of the first plurality of secondary points to the initial foreground mask.

10. A method for foreground image segmentation, the method comprising:

receiving image data captured at a first time;

generating a skeleton model of a foreground subject captured in the image data;

generating an initial foreground mask for a foreground segment including the foreground subject;

generating a first plurality of secondary points corresponding to the foreground subject;

identifying supplemental points for the foreground segment based on at least the first plurality of secondary points and the skeleton model;

combining the supplemental points with the initial foreground mask to obtain a combined mask;

obtaining a foreground segment mask for the foreground subject based on the combined mask;

reconstructing an estimated edge of the foreground segment mask based on at least the first plurality of secondary points; and

applying the foreground segment mask to the image data to obtain a foreground image portion for the foreground subject.

11. The method of claim 10 , further comprising:

generating a second plurality of secondary points corresponding to the foreground subject; and

selecting the first plurality of secondary points from the second plurality of secondary points based on proximities of the first plurality of secondary points to features included in the skeleton model.

12. The method of claim 10 , further comprising:

selecting the supplemental points based on the supplemental points being positioned between the estimated edge and one or more features of the skeleton model.

13. The method of claim 12 , wherein:

the reconstructing the estimated edge includes connecting groups of two or more of the first plurality of secondary points, with each group of secondary points being connected by a curve passing through and extending beyond the group of secondary points.

14. The method of claim 12 , wherein:

the reconstructing the estimated edge includes connecting pairs of the first plurality of secondary points with respective line segments; and

the identifying the supplemental points includes, for each of the line segments, identifying a second line segment contacting a feature of the skeleton model and selecting supplemental points based on the selected supplemental points being within an area between the line segment and the second line segment.

15. The method of claim 10 , wherein the first plurality of secondary points are identified by motion estimation between the image data and a second image data captured before the first time.

16. The method of claim 10 , wherein the obtaining a foreground segment mask includes:

identifying a plurality of rough edge points around a perimeter of the combined mask;

performing smoothing of the plurality of rough edge points to obtain a plurality of smoothed edge points; and

generating the foreground segment mask from the plurality of smoothed edge points.

17. The method of claim 10 , further including compositing the foreground image portion with a background image.

18. The method of claim 10 , further comprising:

generating a second plurality of secondary points corresponding to the foreground subject; and

selecting the first plurality of secondary points from the second plurality of secondary points based on proximities of the first plurality of secondary points to the initial foreground mask.

19. The method of claim 10 , wherein the initial foreground mask is generated based on at least a depth image included in the image data.

20. A nontransitory computer readable medium including instructions recorded thereon which, when executed by one or more processors, cause the processors to perform the method of claim 10 .

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2018
From: LIM, SE HOON; LARGE, TIMOTHY ANDREW
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 045759/0085 →
Continuity (1)
Related Publication 20190347803A1 · Nov 14, 2019