IP Library Granted Patent US 11,663,706
Granted Patent B2
US 11,663,706 · App. 17/319,381 · Granted May 30, 2023

Image segmentation and modification of a video stream

Inventors: Igor Kudriashov (Saratov, RU); Fedir Poliakov (Marina Del Rey, CA); Maksim Gusarov (Marina del Rey, CA)
Assignee: Snap Inc.
G06T7/20G06T3/40G06T5/008G06T7/11G06T7/136G06T7/73G06T7/90G06T11/001G06V10/50G06V10/56G06V40/165G06V40/171G06T2207/10016G06T2207/30201G06V10/467
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,663,706
App. No.
17/319,381
Filed
May 13, 2021
Granted
May 30, 2023
Kind
B2
Art Unit
2662
USPC
382/103
Abstract

Systems, devices, media, and methods are presented for segmenting an image of a video stream with a client device, identifying an area of interest, generating a modified area of interest within one or more image, identifying a first set of pixels and a second set of pixels, and modifying a color value for the first set of pixels.

Claims (72)

1. A computer implemented method for manipulating portions of a video stream, comprising:

determining, using one or more processors of a client device, an approximate location of a mouth within a video stream comprising a first set of images and a second set of images;

identifying, by the client device, an area of interest within the one or more images of the first set of images, the area of interest being a portion of the one or more images encompassing the approximate location of the mouth;

generating, by the client device, a modified area of interest by converting pixels within the area of interest to values along a grayscale to generate a grayscale area of interest, the pixels converted to grayscale by, for each pixel, generating a grayscale value by multiplying a fixed intensity value with a quotient of a triplet of color saturation values of the pixel;

identifying a set of teeth visible within the mouth in the grayscale area of interest

identifying, by the client device, a first set of pixels and a second set of pixels within the modified area of interest;

determining, based on tracking obstructions to the teeth in the first set of pixels that the teeth are visible in the second set of images; and

in response to the determination, modifying, by the client device, a color value for the first set of pixels within the second set of images of the video stream.

2. The method of claim 1 further comprising:

cropping one or more portions of the one or more images of the first set of images outside of the area of interest.

3. The method of claim 1 , wherein the pixels within the grayscale area of interest comprise a histogram of values within the grayscale and generating the modified area of interest further comprises:

equalizing the histogram values within the grayscale area of interest to generate an equalized area of interest.

4. The method of claim 3 , wherein generating the modified area of interest further comprises:

thresholding the equalized area of interest to generate a binarized area of interest, the first set of pixels within the binarized area of interest having a first value and the second set of pixels within the binarized area of interest having a second value distinct from the first value.

5. The method of claim 4 , wherein the second set of pixels comprises a plurality of segments interrupted by one or more pixels having the first value and generating the binarized area of interest further comprising:

identifying one or more pixels having the first value positioned between two or more of the plurality of segments having the second value; and

replacing the first value of the identified one or more pixels with the second value.

6. The method of claim 4 , wherein identifying a first set of pixels and a second set of pixels within the modified area of interest further comprises:

determining the first set of pixels have a value greater than a predetermined threshold; and

marking the first set of pixels within the second set of images of the video stream to generate a set of marked pixels.

7. The method of claim 6 , wherein marking the first set of pixels within the second set of images further comprises:

identifying locations for the first set of pixels with respect to one or more landmarks of a face depicted within the first set of images; and

identifying the color value of the first set of pixels within the first set of images.

8. The method of claim 6 , wherein modifying the color value for the first set of pixels within the second set of images further comprises:

tracking the set of marked pixels across the second set of images of the video stream; and

modifying the color value for the first set of pixels when the color value is presented proximate to the marked pixels.

9. A system for manipulating portions of a video stream, comprising:

one or more processor; and

a non-transitory machine-readable storage medium storing processor executable instructions that, when executed by a processor of a machine, cause the machine to perform operations comprising:

determining, using one or more processors of a client device, an approximate location of a mouth within a video stream comprising a first set of images and a second set of images;

identifying, by the client device, an area of interest within the one or more images of the first set of images, the area of interest being a portion of the one or more images encompassing the approximate location of the mouth;

generating, by the client device, a modified area of interest by converting pixels within the area of interest to values along a grayscale to generate a grayscale area of interest, the pixels converted to grayscale by, for each pixel, generating a grayscale value by multiplying a fixed intensity value with a quotient of a triplet of color saturation values of the pixel;

identifying a set of teeth visible within the mouth in the grayscale area of interest;

identifying, by the client device, a first set of pixels and a second set of pixels within the modified area of interest;

determining, based on tracking obstructions to the teeth in the first set of pixels that the teeth are visible in the second set of images; and

in response to the determination, modifying, by the client device, a color value for the first set of pixels within the second set of images of the video stream.

10. The system of claim 9 , wherein the pixels within the grayscale area of interest comprise a histogram of values within the grayscale and generating the modified area of interest causes the machine to perform operations comprising:

equalizing the histogram values within the grayscale area of interest to generate an equalized area of interest.

11. The system of claim 10 , wherein generating the modified area of interest causes the machine to perform operations comprising:

thresholding the equalized area of interest to generate a binarized area of interest, the first set of pixels within the binarized area of interest having a first value and the second set of pixels within the binarized area of interest having a second value distinct from the first value.

12. The system of claim 11 , wherein the second set of pixels comprises a plurality of segments interrupted by one or more pixels having the first value and generating the binarized area of interest causes the machine to perform operations comprising:

identifying one or more pixels having the first value positioned between two or more of the plurality of segments having the second value; and

replacing the first value of the identified one or more pixels with the second value.

13. The system of claim 11 , wherein identifying a first set of pixels and a second set of pixels within the modified area of interest causes the machine to perform operations comprising:

determining the first set of pixels have a value greater than a predetermined threshold; and

marking the first set of pixels within the second set of images of the video stream to generate a set of marked pixels.

14. The system of claim 13 , wherein marking the first set of pixels within the second set of images causes the machine to perform operations comprising:

identifying locations for the first set of pixels with respect to one or more landmarks of a face depicted within the first set of images; and

identifying the color value of the first set of pixels within the first set of images.

15. The system of claim 13 , wherein modifying the color value for the first set of pixels within the second set of images causes the machine to perform operations comprising:

tracking the set of marked pixels across the second set of images of the video stream; and

modifying the color value for the first set of pixels when the color value is presented proximate to the marked pixels.

16. A non-transitory machine-readable storage medium storing processor executable instructions that, when executed by a processor of a machine, cause the machine to perform operations comprising:

determining, using one or more processors of a client device, an approximate location of a mouth within a video stream comprising a first set of images and a second set of images;

identifying, by the client device, an area of interest within the one or more images of the first set of images, the area of interest being a portion of the one or more images encompassing the approximate location of the mouth;

generating, by the client device, a modified area of interest by converting pixels within the area of interest to values along a grayscale to generate a grayscale area of interest, the pixels converted to grayscale by, for each pixel, generating a grayscale value by multiplying a fixed intensity value with a quotient of a triplet of color saturation values of the pixel;

identifying a set of teeth visible within the mouth in the grayscale area of interest;

identifying, by the client device, a first set of pixels and a second set of pixels within the modified area of interest;

determining, based on tracking obstructions to the teeth in the first set of pixels that the teeth are visible in the second set of images; and

in response to the determination, modifying, by the client device, a color value for the first set of pixels within the second set of images of the video stream.

17. The non-transitory machine-readable storage medium of claim 16 , wherein the pixels within the grayscale area of interest comprise a histogram of values within the grayscale and generating the modified area of interest causes the machine to perform operations comprising:

equalizing the histogram values within the grayscale area of interest to generate an equalized area of interest.

18. The method of claim 1 further comprising:

cropping one or more portions of the one or more images of the first set of images outside of the area of interest.

19. The non-transitory machine-readable storage medium of claim 16 , wherein identifying the first set of pixels and the second set of pixels within the modified area of interest causes the machine to perform operations comprising:

determining the first set of pixels have a value within the modified area of interest greater than a predetermined threshold; and

marking the first set of pixels within the second set of images of the video stream to generate a set of marked pixels.

20. The non-transitory machine-readable storage medium of claim 19 , wherein modifying the color value for the first set of pixels within the second set of images causes the machine to perform operations comprising:

identifying locations for the first set of pixels with respect to one or more landmarks of a face depicted within the first set of images;

identifying the color value of the first set of pixels within the first set of images;

tracking the set of marked pixels across the second set of images of the video stream; and

modifying the color value for the first set of pixels when the color value is presented proximate to the marked pixels.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2023
From: KUDRIASHOV, IGOR; POLIAKOV, FEDIR; GUSAROV, MAKSIM
To: SNAPCHAT, INC.
Reel/Frame 063032/0684 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2023
From: SNAPCHAT, INC.
To: SNAP INC.
Reel/Frame 063032/0776 →
Continuity (4)
Continuation 16698463 · Nov 27, 2019
Continuation 16232737 · Dec 26, 2018
Continuation 14953726 · Nov 30, 2015
Related Publication 20220101536A1 · Mar 31, 2022