IP Library Granted Patent US 9,716,674
Granted Patent B2
US 9,716,674 · App. 14/466,520 · Granted Jul 25, 2017

Systems and methods for virtual interaction

Inventors: Marco Ciofalo (Florence, IT); Fabio Viviani (Moorpark, CA)
Assignee: FVMC Software, LLC
H04L51/02G06F3/01G06F17/30654H04L51/32H04N7/141
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 9,716,674
App. No.
14/466,520
Granted
Jul 25, 2017
Kind
B2
Abstract

In one aspect, at least one processor may receive a first user input and identify one or more first keywords from the first user input to determine one or more previously recorded outputs corresponding to the first keywords. The previously recorded outputs may correspond to a virtual character, such as a celebrity. Further, the at least one processor may select one of the determined previously recorded outputs and output the selected previously recorded output corresponding to the virtual character. The at least one processor may also identify one or more second keywords from at least the first user input, temporarily store the second keywords in memory in association with at least one portion of the user input, receive a second user input, and determine another previously recorded output based at least in part on the temporarily stored keywords associated with the first user input.

Claims (70)

1. A method for conducting an interactive session between a user and a plurality of virtual characters, comprising:

receiving over a network from a user device, using at least one processor, a first user input representing one or more questions or statements directed to one or more of the plurality of virtual characters, wherein each virtual character is a digital representation of a real person, wherein the first user input includes at least one of a natural language speech input and a text input;

identifying, using the at least one processor, one or more keywords from the first user input;

determining, using the at least one processor, to which of the plurality of virtual characters the first user input is directed;

accessing, using the at least one processor, a plurality of previously recorded outputs corresponding to the virtual character to which the first user input is determined to be directed, wherein each previously recorded output corresponds to a respective virtual character, and wherein each virtual character interacts with the user through the plurality of previously recorded outputs corresponding to that virtual character, and wherein each previously recorded output is a recording of the real person represented by the virtual character corresponding to that previously recorded output;

determining, using the at least one processor, which one or more of the accessed plurality of previously recorded outputs corresponding to the virtual character to which the first user input is directed further corresponds to at least one of the identified keywords;

selecting, using the at least one processor, one or more of the accessed previously recorded outputs that further corresponds to at least one of the identified keywords;

outputting, using the at least one processor, the selected one or more previously recorded outputs in response to the first user input;

automatically temporarily storing in a network coupled memory remote from the user device, using the at least one processor, at least one of the identified keywords of the first user input;

automatically storing, using the at least one processor, at least a portion of the first user input, such that the stored portion of the first user input can be flagged with a later recorded output of the virtual character that is added to the plurality of previously recorded outputs;

receiving, using the at least one processor, a second user input representing one or more questions or statements directed to one or more of the plurality of virtual characters, wherein the second user input is received after the one or more selected previously recorded outputs are outputted, and wherein both the first and second user inputs are received during the course of the interactive session;

determining, using the at least one processor, to which of the plurality of virtual characters the second user input is directed;

accessing, using the at least one processor, a plurality of previously recorded outputs corresponding to the virtual character to which the second user input is directed; and

selecting, using the at least one processor, one or more of the accessed plurality of previously recorded outputs corresponding to the virtual character to which the second user input is determined to be directed, based at least in part on the temporarily stored keywords from the first user input.

2. The method of claim 1 , wherein the one or more previously recorded outputs includes at least one of a video response, an audio response, and a text response.

3. The method of claim 1 , further comprising receiving, using the at least one processor, a request to interact with the plurality of virtual characters in the interactive session.

4. The method of claim 3 , wherein the first user input is determined to be directed to a first virtual character, the method further comprising:

identifying, using the at least one processor, the selected previously recorded output corresponding to the first virtual character as a question or statement directed to a second virtual character of the plurality of virtual characters;

determining, using the at least one processor, a previously recorded output corresponding to the second virtual character to which the previously recorded output of the first virtual character is directed; and

outputting, using the at least one processor, the previously recorded output corresponding to the second virtual character in response to the previously recorded output of the first virtual character.

5. The method of claim 4 , wherein the previously recorded output of the first virtual character and the previously recorded output of the second virtual character are outputted consecutively without additional user input.

6. The method of claim 1 , wherein the selecting one of the determined one or more previously recorded outputs is based on a match score, further wherein the match score ranges from 0 to 10 and is based on at least a specificity level of the one or more previously recorded outputs relative to the user input.

7. The method of claim 1 , wherein the identified keywords includes at least one of a noun, a pronoun, an adjective, a verb, an adverb, a preposition, a conjunction, and an interjection.

8. The method of claim 1 , wherein the user input includes one or more pre-formulated inputs, such that the one or more pre-formulated inputs are selectable.

9. A system for conducting an interactive session between a user and a plurality of virtual characters, comprising:

a memory; and

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

receive over a network, from a user device that is remote from the memory, a first user input representing one or more questions or statements directed to one or more of the plurality of virtual characters, wherein each virtual character is a digital representation of a real person, and wherein the first user input includes at least one of a natural language speech input and a text input;

identify one or more keywords from the first user input;

determine to which of the plurality of virtual characters the first user input is directed;

access a plurality of previously recorded outputs corresponding to the virtual character to which the first user input is determined to be directed, wherein each previously recorded output corresponds to a respective virtual character, and wherein each virtual character interacts with the user through the plurality of previously recorded outputs corresponding to that virtual character, and wherein each previously recorded output is a recording of the real person represented by the virtual character corresponding to that previously recorded output;

determine which one or more of the accessed plurality of previously recorded outputs corresponding to the virtual character to which the first user input is directed further corresponds to at least one of the identified keywords;

select one or more of the accessed previously recorded outputs that further corresponds to at least one of the identified keywords;

output the one or more selected previously recorded outputs in response to the first user input;

automatically temporarily store in the memory at least one of the identified keywords in the memory;

automatically store at least a portion of the first user input, such that the stored portion of the first user input can be flagged with a later recorded output of the virtual character that is added to the plurality of previously recorded outputs;

receive a second user input representing one or more questions or statements directed to one or more of the plurality of virtual characters, wherein the second user input is received after the one or more selected previously recorded outputs are outputted, and wherein both the first and second user inputs are received during the course of the interactive session;

determine to which of the plurality of virtual characters the second user input is directed;

access a plurality of previously recorded outputs corresponding to the virtual character to which the second user input is directed; and

select one or more of the accessed plurality of previously recorded outputs corresponding to the virtual characters to which the second user input is determined to be directed, based at least in part on the temporarily stored keywords from the first user input.

10. The system of claim 9 , wherein the one or more previously recorded outputs includes at least one of a video response, an audio response, and text response.

11. The system of claim 9 , wherein the at least one processor is further configured to receive a request to interact with the plurality of virtual characters in the interactive session.

12. The system of claim 11 , wherein the virtual character to which the first user input is determined to be directed is a first virtual character, and wherein the at least one processor is further configured to:

identify the selected previously recorded output corresponding to the first virtual character as a question or statement directed to a second virtual character of the plurality of virtual characters;

determine a previously recorded output corresponding to the second virtual character to which the previously recorded output of the first virtual character is directed; and

output the previously recorded output corresponding to the second virtual character in response to the previously recorded output of the first virtual character.

13. The system of claim 12 , wherein the at least one processor is further configured to output the previously recorded output of the first virtual character and the previously recorded output of the second virtual character consecutively without additional user input.

14. The system of claim 9 , wherein the selection of the one of the determined one or more previously recorded outputs is based on a match score, further wherein the match score ranges from 0 to 10 and is based on at least a specificity level of the one or more previously recorded outputs relative to the user input.

15. The system of claim 9 , wherein the identified keywords includes at least one of a noun, a pronoun, an adjective, a verb, an adverb, a preposition, a conjunction, and an interjection.

16. The system of claim 9 , wherein the user input includes one or more pre-formulated inputs, such that that the one or more pre-formulated inputs are selectable.

17. A non-transitory, tangible computer-readable medium on which instructions are stored, the instructions when executed by at least one processor performs a method for conducting an interactive session between a user and a plurality of virtual characters, comprising:

receiving over a network from a user device, using at least one processor, a first user input representing one or more questions or statements directed to one or more of the plurality of virtual characters, wherein each virtual character is a digital representation of a real person, and wherein the first user input includes at least one of a natural language speech input and a text input;

identifying, using the at least one processor, one or more keywords from the first user input;

determining, using the at least one processor, to which of the plurality of virtual characters the first user input is directed;

accessing, using the at least one processor, a plurality of previously recorded outputs corresponding to the virtual character to which the first user input is determined to be directed, wherein each previously recorded output corresponds to a respective virtual character, and wherein each virtual character interacts with the user through the plurality of previously recorded outputs corresponding to that virtual character, and wherein each previously recorded output is a recording of the real person represented by the virtual character corresponding to that previously recorded output;

determining, using the at least one processor, which one or more of the accessed plurality of previously recorded outputs corresponding to the virtual character to which the first user input is directed further corresponds to at least one of the identified keywords;

selecting, using the at least one processor, one or more of the accessed previously recorded outputs that further corresponds to at least one of the identified keywords;

outputting, using the at least one processor, the selected one or more previously recorded outputs in response to the first user input;

automatically temporarily storing in a network coupled memory remote from the user device, using the at least one processor, at least one of the identified keywords of the first user input;

automatically storing, using the at least one processor, at least a portion of the first user input, such that the stored portion of the first user input can be flagged with a later recorded output of the virtual character that is added to the plurality of previously recorded outputs;

receiving, using the at least one processor, a second user input representing one or more questions or statements directed to one or more of the plurality of virtual characters, wherein the second user input is received after the one or more selected previously recorded outputs are outputted, and wherein both the first and second user inputs are received during the course of the interactive session;

determining, using the at least one processor, to which of the plurality of virtual characters the second user input is directed;

accessing, using the at least one processor, a plurality of previously recorded outputs corresponding to the virtual character to which the second user input is directed; and

selecting, using the at least one processor, one or more of the accessed plurality of previously recorded outputs corresponding to the virtual character to which the second user input is determined to be directed, based at least in part on the temporarily stored keywords from the first user input.

18. The non-transitory, tangible computer-readable medium of claim 17 , wherein the one or more previously recorded outputs includes at least one of a video response, an audio response, and a text response.

19. The non-transitory, tangible computer-readable medium of claim 17 , the method further comprising receiving a request to interact with the plurality of virtual characters in the interactive session.

20. The non-transitory, tangible computer-readable medium tangible of claim 19 , wherein the first user input is determined to be directed to a first virtual character, the method further comprising:

identifying the selected previously recorded output corresponding to the first virtual character as a question or statement directed to a second virtual character of the plurality of virtual characters;

determining a previously recorded output corresponding to the second virtual character to which the previously recorded output of the first virtual character is directed; and

outputting the previously recorded output corresponding to the second virtual character in response to the previously recorded output of the first virtual character.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 6, 2020
From: DOPPLET, INC.
To: GUIDING GROUP INVESTMENT CORP.
Reel/Frame 053124/0525 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2018
From: FV TECH, LLC; CIOFALO, MARCO
To: DOPPLET, INC.
Reel/Frame 045657/0984 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2018
From: FVMC SOFTWARE, LLC
To: FV TECH, LLC; CIOFALO, MARCO
Reel/Frame 045648/0712 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2018
From: VF LEGACY, LLC
To: FVMC SOFTWARE, LLC
Reel/Frame 045611/0537 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2016
From: CIOFALO, MARCO; VIVIANI, FABIO
To: FVMC SOFTWARE, LLC
Reel/Frame 038463/0495 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2014
From: CIOFALO, MARCO; VIVIANI, FABIO
To: FVMC SOFTWARE LLC
Reel/Frame 033601/0791 →
Continuity (1)
Related Publication 20160057083A1 · Feb 25, 2016