IP Library Granted Patent US 11,636,657
Granted Patent B2
US 11,636,657 · App. 17/528,697 · Granted Apr 25, 2023

3D captions with semantic graphical elements

Inventors: Kyle Goodrich (Venice, CA); Samuel Edward Hare (Los Angeles, CA); Maxim Maximov Lazarov (Culver City, CA); Tony Mathew (Los Angeles, CA); Andrew James McPhee (Culver City, CA); Daniel Moreno (Los Angeles, CA); Wentao Shang (Los Angeles, CA)
Assignee: SNAP INC.
G06T19/006G06F3/012G06F3/04883G06T15/80G06T19/20G06T2219/2004
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,636,657
App. No.
17/528,697
Granted
Apr 25, 2023
Kind
B2
Abstract

Aspects of the present disclosure involve a system comprising a computer-readable storage medium storing at least one program and method for performing operations comprising: receiving, by a messaging application, a video feed from a camera of a user device that depicts a face; receiving a request to add a 3D caption to the video feed; identifying a graphical element that is associated with context of the 3D caption; and displaying the 3D caption and the identified graphical element in the video feed at a position in 3D space of the video feed proximate to the face depicted in the video feed.

Claims (61)

1. A system comprising:

at least one hardware processor; and

a memory storing instructions which, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising:

receiving, by a messaging application, a video feed from a camera of a device that depicts an object;

receiving a request to add a three-dimensional (3D) caption to the video feed;

identifying a graphical element that is associated with context of the 3D caption;

displaying the 3D caption and the identified graphical element in the video feed proximate to the object depicted in the video feed; and

in response to determining that the object is no longer detected in the video feed, moving the 3D caption to a surface depicted in the video feed without displaying the graphical element.

2. The system of claim 1 , wherein the operations further comprise:

detecting input indicating that a user tapped the 3D caption that is displayed in the video feed; and

in response to detecting the input, presenting text of the 3D caption in two-dimensions (2D) to enable the user to modify text of the 3D caption.

3. The system of claim 1 , wherein the operations further comprise:

determining that the camera from which the video feed is received is a front-facing camera; and

in response to determining that the camera from which the video feed is received is the front-facing camera, automatically populating the 3D caption with the identified graphical element.

4. The system of claim 1 , wherein the operations further comprise:

determining that the camera from which the video feed is received is a rear-facing camera; and

in response to determining that the camera from which the video feed is received is the rear-facing camera, populating the 3D caption with the identified graphical element in response to a user request.

5. The system of claim 1 , wherein the operations further comprise orienting the 3D caption and the graphical element above the object.

6. The system of claim 1 , wherein the operations further comprise curving the 3D caption and graphical element around a top of the object or around a bottom of the object.

7. The system of claim 1 , wherein the operations further comprise:

receiving input that selects the identified graphical element that is displayed; and

in response to receiving the input, presenting text of the 3D caption in two-dimensions (2D) in place of the 3D caption while maintaining display of the identified graphical element in the video feed.

8. The system of claim 7 , wherein the operations further comprise:

presenting a list of alternate graphical elements while maintaining display of the identified graphical element in the video feed;

receiving a selection of a given alternate graphical element from the list of alternate graphical elements; and

replacing the identified graphical element that is displayed in the video feed with the given alternate graphical element.

9. The system of claim 1 , wherein the operations further comprise searching a database of graphical elements based on text of the 3D caption to identify the graphical element that is associated with the text of the 3D caption.

10. The system of claim 1 , wherein the operations further comprise:

determining context associated with the video feed; and

automatically populating text of the 3D caption based on the context associated with the video feed.

11. The system of claim 10 , wherein the context associated with the video feed is determined based on a current date and time or day of the week.

12. The system of claim 1 , wherein the operations further comprise dimming a screen in which text of the 3D caption is presented to bring focus to the text of the 3D caption.

13. The system of claim 12 , wherein the operations further comprise:

determining that a user tapped on the screen at a location between two characters of the text; and

positioning a cursor to modify the text starting at the location between the two characters of the text in response to determining that the user tapped on the screen at the location between the two characters of the text.

14. The system of claim 1 , wherein the 3D caption includes words or phrases, and wherein the operations further comprise selecting a default graphical element to be displayed as the identified graphical element when none of the words or phrases in the 3D caption matches words or phrases stored in a database that associates words or phrases with graphical elements.

15. The system of claim 1 , wherein the operations further comprise:

in response to receiving the request to add the 3D caption, presenting a two-dimensional (2D) text entry interface;

receiving a 2D text string from the text entry interface;

identifying the graphical element based on the 2D text string;

converting the 2D text string to the 3D caption; and

displaying the 3D caption and the identified graphical element in response to receiving indication of completion of entry of the text string.

16. A method comprising:

receiving, by a messaging application, a video feed from a camera of a device that depicts an object;

receiving a request to add a three-dimensional (3D) caption to the video feed;

identifying a graphical element that is associated with context of the 3D caption;

displaying the 3D caption and the identified graphical element in the video feed proximate to the object depicted in the video feed; and

in response to determining that the object is no longer detected in the video feed, moving the 3D caption to a surface depicted in the video feed without displaying the graphical element.

17. The method of claim 16 , further comprising:

detecting input indicating that a user tapped the 3D caption that is displayed in the video feed; and

in response to detecting the input indicating that the user tapped the 3D caption, presenting text of the 3D caption in two-dimensions (2D) to enable the user to modify text of the 3D caption.

18. The method of claim 16 , wherein the graphical element is an emoji or avatar, wherein the graphical element comprises a first emoji or avatar and a second emoji or avatar, wherein the first and second emojis or avatars are identical, wherein the first identical emoji or avatar is placed on a left side of the 3D caption and the second identical emoji or avatar is placed on a right side of the 3D caption.

19. The method of claim 16 , further comprising:

determining that the camera from which the video feed is received is a front-facing camera; and

in response to determining that the camera from which the video feed is received is the front-facing camera, automatically populating the 3D caption with the identified graphical element.

20. A non-transitory machine-readable medium storing instructions which, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

receiving, by a messaging application, a video feed from a camera of a device that depicts an object;

receiving a request to add a three-dimensional (3D) caption to the video feed;

identifying a graphical element that is associated with context of the 3D caption;

displaying the 3D caption and the identified graphical element in the video feed proximate to the object depicted in the video feed; and

in response to determining that the object is no longer detected in the video feed, moving the 3D caption to a surface depicted in the video feed without displaying the graphical element.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2022
From: GOODRICH, KYLE; HARE, SAMUEL EDWARD; LAZAROV, MAXIM MAXIMOV; MATHEW, TONY; MCPHEE, ANDREW JAMES; MORENO, DANIEL; SHANG, WENTAO
To: SNAP INC.
Reel/Frame 058695/0104 →
Continuity (2)
Continuation 16721459 · Dec 19, 2019
Related Publication 20220076497A1 · Mar 10, 2022
Cited By (5)
US 12,211,159 US 12,347,045 US 12,444,138 US 12,488,548 US 12,541,929