System and method for providing multi-person personalized video
The method and system address the limitation of complex video editing in instant messaging by enabling real-time face replacement and synthesis in personalized videos on mobile devices, enhancing user interaction and realism.
Patent Information
- Application Number
- CN202411373094.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2019-10-07
- Filing Date
- 2020-01-18
- Publication Date
- 2025-01-03
AI Technical Summary
Current instant messaging software lacks the capability for complex video editing, such as replacing faces in videos with other faces, requiring the use of third-party software and limiting user interaction.
A method and system for generating multi-person personalized videos by enabling communication chats, receiving user-selected videos and facial images, modifying faces to match target expressions, and replacing them in real-time, using parameterized facial models and neural networks for realistic face synthesis.
Enables real-time generation of personalized videos on mobile devices, allowing users to replace faces with their own and send them to others, with enhanced facial expression and texture realism, indexed and searchable by facial images.
Smart Images

Figure CN119251338A_ABST
Abstract
Description
[0001] This application is a divisional application of the Chinese national phase application with an international application date of January 18, 2020, an international application number of PCT / US2020 / 014224, and an invention name of “System and method for providing personalized videos for multiple people”. The national phase entry date of the Chinese national phase application is July 16, 2021, the application number is 202080009723.1, and the invention name is “System and method for providing personalized videos for multiple people”. Technical Field
[0002] The present invention generally relates to digital image processing and more particularly to a method and system for providing multi-person personalized video. Background Art
[0003] Shared media such as stickers and emoticons have become standard options in messaging applications (also referred to herein as messengers). Currently, some instant messaging software provides users with the option of generating and sending images and short videos to other users through communication chats. Some existing instant messaging software allows users to modify short videos before transmission. However, the modifications to short videos provided by existing instant messaging software are limited to visualization effects, filters and text. Users of current instant messaging software cannot perform complex editing, such as replacing one face in a video with another face. Current instant messaging software does not provide such complex video editing, which requires the use and understanding of complex third-party video editing software. Summary of the invention
[0004] This section is provided to introduce a simplified form of the technical solution, which will be further described in the detailed description section below. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to help determine the scope of the claimed subject matter.
[0005] According to one embodiment of the present invention, a method for providing multi-person personalized video is disclosed. The method may start by enabling a communication chat between a user of a computing device and at least one other user of at least one other computing device through a computing device. The method may also include receiving, through the computing device, a user selecting a video from one or more personalized videos stored in the computing device. The video may include at least one frame having at least one target face and at least one other target face. The method may continue to receive, through the computing device, an image of a source face and another image of another source face. In an exemplary embodiment, an image of a source face may be received as a pre-generated image selected by a user from a set of images stored in a memory of the computing device. The pre-generated image may be segmented into a portion including the source face and a background. In another exemplary embodiment, an image of a source face may be received by capturing a new image through a camera of the computing device and segmenting the new image into a portion including the source face and a background. In addition, a user permission to use the image of the source face to generate another personalized video on at least one other computing device may be received. Upon receiving the user permission, the image of the source face and an indication of the user permission may be sent to at least one other computing device.
[0006] In an exemplary embodiment, an additional image of an additional source face may be received as a pre-generated image selected by a user from a set of images stored in a memory of a computing device. The pre-generated image may be segmented into a portion including the additional source face and a background. The additional image of the additional source face may be received from at least one additional computing device.
[0007] The method may also include modifying the image of the source face to generate a modified image of the source face, and modifying another image of the other source face to generate a modified image of the other source face. The modified source face may adopt the facial expression of the target face. Similarly, the modified other source face may adopt the facial expression of at least one other target face. The method may then continue to replace the target face with the image of the modified source face in at least one frame of the video, and replace at least another face with the modified other source face to generate a personalized video. The personalized video may be sent to at least one other user via a communication chat. Before modifying the other image of the other source face, it may be determined that at least one other user has provided permission to use the other image of the other source face to generate the personalized video.
[0008] The method may also include, before modifying the image of the source face, determining target facial expression parameters associated with the parameterized facial model based on the target face in at least one frame. The at least one frame may include metadata, such as the target facial expression parameters. In this case, modifying the image of the source face may also include determining source parameters associated with the parameterized facial model based on the image of the source face, the parameters including source facial expression parameters, source facial identity parameters, and source facial texture parameters. Based on the parameterized facial model and the target facial expression parameters, the source facial identity parameters, and the source facial texture parameters, the modified source facial image may be synthesized.
[0009] The method may also include determining target facial expression parameters associated with the parameterized facial model based on the additional target face in at least one frame before modifying the additional image of the additional source face. In this case, modifying the additional image of the additional source face may include determining source parameters associated with the parameterized facial model based on the additional image of the additional source face, the source parameters including source facial expression parameters, source facial identity parameters, and source facial texture parameters. Based on the parameterized facial model and the target facial expression parameters, the source facial identity parameters, and the source facial texture parameters, the modified additional image of the additional source face may be synthesized.
[0010] According to an exemplary embodiment, a system for providing multi-person personalized video is disclosed. The system may include at least one processor and a memory, the memory storing processor executable code. When executing the processor executable code, the at least one processor may be configured to enable a communication chat between a user of the computing device and at least one other user of at least one other computing device through the computing device. The at least one processor may also be configured to receive a video for selection from one or more personalized videos stored in the computing device through the computing device. The video may include at least one frame, the at least one frame having at least one target face and at least one other target face. The at least one processor may also be configured to receive an image of a source face and another image of another source face through the computing device. Specifically, the image of the source face may be received as a pre-generated image selected by the user from a set of images stored in the memory of the computing device. The pre-generated image may be segmented into a portion including the source face and a background. In another exemplary embodiment, the image of the source face may be received by capturing a new image through the camera of the computing device and segmenting the new image into a portion including the source face and a background. In addition, a user permission to generate another personalized video on at least one other computing device using the image of the source face may be received. Upon receiving the user permission, the image of the source face and an indication of the user permission may be sent to at least one other computing device. The additional image of the additional source face may be received as a pre-generated image selected by a user from a set of images stored in a memory of the computing device. The pre-generated image may be segmented into a portion including the additional source face and a background. The additional image of the additional source face may be received from at least one additional computing device.
[0011] Upon receiving the image of the source face and the additional images of the additional source faces, at least one processor may modify the image of the source face to generate an image of a modified source face, and modify the additional images of the additional source faces to generate an image of a modified additional source face. The modified source face may adopt a facial expression of the target face. The modified additional source faces may adopt a facial expression of at least one additional target face. The at least one processor may also be configured to replace the target face with the image of the modified source face and replace at least one additional face with the modified additional source face in at least one frame of the video to generate a personalized video. The personalized video may be sent to at least one additional user via a communication chat.
[0012] In some exemplary embodiments, prior to modifying the additional image of the additional source face, the at least one processor may determine that at least one additional user has provided permission to use the additional image of the additional source face to generate the personalized video.
[0013] In an exemplary embodiment, before modifying the image of the source face, at least one processor may determine target facial expression parameters associated with the parameterized facial model based on the target face in at least one frame. The at least one frame may include metadata, such as the target facial expression parameters. The image of the source face may be modified as follows. First, source parameters associated with the parameterized facial model may be determined based on the image of the source face. The source parameters may include source facial expression parameters, source facial identity parameters, and source facial texture parameters. Then, the modified image of the source face may be synthesized based on the parameterized facial model and the target facial expression parameters, the source facial identity parameters, and the source facial texture parameters.
[0014] According to another aspect of the present invention, a method for providing multi-person personalized video is provided, the method comprising: enabling, by a computing device, a communication chat between a user of the computing device and at least one other user of at least one other computing device; receiving, by the computing device, a video selected by the user from one or more personalized videos stored in the computing device, wherein the video comprises at least one frame, at least one frame comprises metadata, the metadata comprises a first position, a first facial expression parameter, a second position, and a second facial expression parameter; receiving, by the computing device, an image of a source face and another image of another source face; modifying, by the computing device, the image of the source face to generate a modified image of the source face, wherein the modified source face adopts a first facial expression according to the first facial expression parameter; modifying, by the computing device, another image of the other source face to generate a modified image of the other source face, wherein the modified other source face adopts a second facial expression according to the second facial expression parameter; inserting, by the computing device, in at least one frame of the video, the image of the modified source face at the first position and the image of the modified other source face at the second position to generate a personalized video; and sending, by the computing device, the personalized video to at least one other user via the communication chat.
[0015] According to another aspect of the present invention, a system for providing multi-person personalized videos is provided, the system comprising at least one processor and a memory, the memory storing processor executable code, wherein the at least one processor is configured to implement the following operations when executing the processor executable code: enabling, through the computing device, a communication chat between a user of the computing device and at least one other user of at least one other computing device; receiving, through the computing device, a video selected by the user from one or more personalized videos stored in the computing device, wherein the video comprises at least one frame, the at least one frame comprises metadata, the metadata comprising a first position, a first facial expression parameter, a second position, and a second facial expression parameter; and Receive an image of a source face and another image of another source face; modify the image of the source face by a computing device to generate a modified image of the source face, wherein the modified source face adopts a first facial expression based on first facial expression parameters; modify the other image of the other source face by a computing device to generate a modified image of the other source face, wherein the modified other source face adopts a second facial expression based on second facial expression parameters; insert the modified image of the source face into a first position and the modified image of the other source face into a second position in at least one frame of a video by the computing device to generate a personalized video; and send the personalized video to at least one other user via a communication chat by the computing device.
[0016] According to another aspect of the present invention, a non-transitory processor-readable medium is provided, which stores processor-readable instructions. When a processor executes the processor-readable instructions, the processor-readable instructions enable the processor to implement the above method for providing multi-person personalized videos.
[0017] Other purposes, advantages and novel features of the examples will be described in part in the following description, and in part will become apparent to those skilled in the art after knowing the following description and the accompanying drawings, or can be learned through the making or operation of the examples. The purposes and advantages of these technical solutions can be achieved and obtained through the methods, means and combinations specifically pointed out in the attached claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] The embodiments are illustrated by way of example and not limitation in the figures of the accompanying drawings in which like reference numerals refer to similar elements.
[0019] Figure 1 is a block diagram illustrating an exemplary environment in which a method for providing multi-person personalized video may be implemented.
[0020] Figure 2 is a block diagram illustrating an exemplary embodiment of a computing device for implementing a method for providing multi-person personalized videos.
[0021] Figure 3 is a block diagram illustrating a system for providing multi-person personalized video according to some exemplary embodiments of the present invention.
[0022] Figure 4 is a schematic diagram illustrating a process of generating a multi-person personalized video according to an exemplary embodiment.
[0023] Figure 5 is a block diagram of a personalized video generation module according to some exemplary embodiments of the present invention.
[0024] Figures 6 to 9 Screens showing a user interface of a system for providing multi-person personalized video in instant messaging software according to some exemplary embodiments.
[0025] Fig.10 is a flow chart illustrating a method for providing multi-person personalized videos according to an exemplary embodiment.
[0026] Fig.11 An exemplary computer system is shown that can be used to implement a method for providing multi-person personalized video. DETAILED DESCRIPTION
[0027] The following detailed description of the embodiments includes reference to the accompanying drawings, which form a part of the detailed description. The methods described in this section are not prior art to the claims and are not considered prior art by being included in this section. The accompanying drawings show diagrams according to exemplary embodiments. These exemplary embodiments, also referred to as "examples" herein, are described as detailed as possible to enable those skilled in the art to implement the present technical solution. Without departing from the scope of the claimed protection, the embodiments may be combined, other embodiments may be utilized, or structural, logical and operational changes may be made thereto. Therefore, the following detailed description should not be considered restrictive, and the scope is limited by the attached claims and their equivalents.
[0028] For the purposes of this patent document, the terms "or" and "and" shall mean "and / or" unless otherwise specified or clearly intended in the context of their use. The term "a" shall mean "one or more" unless otherwise specified or the use of "one or more" is clearly inappropriate. The terms "include" and "including" are interchangeable and are not intended to be limiting. For example, the term "include" shall be interpreted as "including but not limited to."
[0029] The present invention relates to methods and systems for providing multi-person personalized videos. The embodiments provided by the present invention solve at least some of the problems of the prior art. The present invention can be designed to work in real time on mobile devices such as smart phones, tablet computers or mobile phones, although the embodiments can be extended to methods involving network services or cloud-based resources. The methods described herein can be implemented by software running on a computer system and / or by hardware utilizing a combination of microprocessors or other specially designed application-specific integrated circuits (ASICs), programmable logic devices or any combination thereof. In particular, the methods described herein can be implemented by a series of computer executable instructions residing on a non-temporary storage medium such as a disk drive or a computer-readable medium.
[0030] Some embodiments of the present invention may allow for the generation of multi-person personalized videos in real time on a computing device such as a smart phone. The personalized video may be generated in a communication chat between a user of the computing device and one or more other users of one or more other computing devices. The personalized video may be generated based on a pre-generated video, which is, for example, a video of one or more actors. Certain embodiments of the present invention may allow for the replacement of the faces of actors in a pre-generated video with the faces of users communicating through the communication chat. The user may select a face from facial images of friends in the communication chat. When replacing the face of an actor with the user's face, the user's face may be modified to adopt the facial expressions of the actor. The user may also send the personalized video to other users through the communication chat. The personalized video may be indexed and searched based on the user's facial image or the facial image of the other user used to generate the personalized video. The personalized video may be ranked and classified based on the emotions and actions in the video.
[0031] According to one embodiment of the present invention, an exemplary method for providing multi-person personalized video may include enabling a communication chat between a user of a computing device and at least one other user of at least one other computing device through a computing device. The implementation method may continue to receive a user's selection of a video from one or more personalized videos stored in the computing device through the computing device. The video may include at least one frame, the at least one frame having at least one target face and at least one other target face. The method may continue to receive an image of a source face and another image of another source face through the computing device. When receiving the image of the source face and the other image of the other source face, the image of the source face may be modified to generate an image of a modified source face, and the other image of the other source face may be modified to generate an image of a modified other source face. The modified source face may adopt the facial expression of the target face, and the modified other source face may adopt the facial expression of at least one other target face. In at least one frame of the video, the target face may be replaced with the image of the modified source face, and at least one other face may be replaced with the modified other source face to generate a personalized video. The personalized video may be sent to at least one other user through the communication chat.
[0032] With reference now to the accompanying drawings, exemplary embodiments are described. The accompanying drawings are schematic diagrams of idealized exemplary embodiments. Therefore, the exemplary embodiments discussed herein should not be construed as being limited to the specific illustrations presented herein, but rather, these exemplary embodiments may include deviations and different illustrations than those presented herein, which will be apparent to those skilled in the art.
[0033] Figure 1 An exemplary environment 100 is shown in which a method for providing multi-person personalized video can be practiced. Environment 100 may include computing device 105, user 102, computing device 110, user 104, network 120, and instant messaging software service system 130. Computing device 105 and computing device 110 may refer to mobile devices such as mobile phones, smart phones, or tablet computers. However, in other embodiments, computing device 105 or computing device 110 may refer to a personal computer, a laptop computer, a netbook, a set-top box, a television device, a multimedia device, a personal digital assistant, a game console, an entertainment system, an infotainment system, a vehicle computer, or any other computing device.
[0034] Computing device 105 and computing device 110 can be communicatively connected to instant messaging software service system 130 via network 120. Instant messaging software service system 130 can be implemented as a cloud-based computing resource. The instant messaging software service system may include computing resources (hardware and software) that are available at a remote location and accessible via a network (e.g., the Internet). Cloud-based computing resources can be shared by multiple users and can be dynamically reallocated as needed. Cloud-based computing resources may include one or more server farms / clusters, which include a group of computer servers that may be co-located with network switches and / or routers.
[0035] Network 120 may include any wired, wireless, or optical network, including, for example, the Internet, an intranet, a local area network (LAN), a personal area network (PAN), a wide area network (WAN), a virtual private network (VPN), a cellular telephone network (e.g., a Global System for Mobile (GSM) communication network, etc.).
[0036] In some embodiments of the present invention, computing device 105 may be configured to enable a communication chat between user 102 and user 104 of computing device 110. During the communication chat, user 102 and user 104 may exchange text messages, images, and videos. The video may include a personalized video. The personalized video may be generated based on a pre-generated video stored in computing device 105 or computing device 110. In some embodiments, the pre-generated video may be stored in instant messaging software service system 130 and downloaded to computing device 105 or computing device 110 as needed.
[0037] The instant messaging software service system 130 may also be configured to store user profiles. The user profile may include a facial image of user 102, a facial image of user 104, and facial images of other people. The user profile may include user permissions specified by user 102, user 104, or other users. The user permissions specified by user 102 may allow or prohibit users of other computing devices (e.g., user 104) from using the facial image of user 102 to generate personalized videos. Accordingly, the user permissions specified by user 104 may allow or prohibit users of other computing devices (e.g., user 102) from using the facial image of user 104 to generate personalized videos. Facial images may be downloaded to computing device 105 or computing device 110 on demand and based on user permissions.
[0038] A facial image of user 102 may be generated using computing device 105 and stored in a local memory of computing device 105. The facial image may be generated based on other images stored in computing device 105. Computing device 105 may further use the facial image to generate a personalized video based on a pre-generated video. After generating the facial image using computing device 105, user 102 may indicate user permissions to allow or prohibit other users of other computing devices from using the facial image to generate a personalized video. The facial image and user permissions may be further provided to instant messaging software service system 130 for storage in a user profile.
[0039] Similarly, computing device 110 may be used to generate a facial image of user 104. The facial image of user 104 may be used to generate a personalized video on computing device 110. In further embodiments, the facial image of user 102 and the facial image of user 104 may be used to generate a personalized video on computing device 105 or computing device 110. After generating the facial image using computing device 110, user 104 may indicate user permissions to allow or prohibit other users of other computing devices from using the facial image to generate a personalized video. The facial image and user permissions may be further provided to instant messaging software service system 130 for storage in a user profile.
[0040] Figure 2 is a block diagram illustrating an exemplary embodiment of a computing device 105 (or computing device 110) for implementing a method for personalizing a video. Figure 2 In the example shown, computing device 110 includes hardware components and software components. In particular, computing device 110 includes camera 205 or any other image acquisition device or scanner to acquire digital images. Computing device 110 may also include processor module 210 and storage module 215 for storing software components and processor-readable (machine-readable) instructions or codes that, when executed by processor module 210, cause computing device 105 to perform at least some steps of the method for providing multi-person personalized video as described herein. Computing device 105 may include graphics display system 230 and communication module 240. In other embodiments, computing device 105 may include additional or different components. In addition, computing device 105 may include executing similar or equivalent Figure 2 Fewer components than those depicted in the .
[0041] The computing device 110 may also include: instant messaging software 220 for implementing communication and chatting with another computing device (such as the computing device 110); and system 300 for providing multi-person personalized video. Figure 3The system 300 is described in more detail. The instant messaging software 220 and the system 300 may be implemented as software components and processor-readable (machine-readable) instructions or codes stored in the memory 215, which, when executed by the processor module 210, cause the computing device 105 to perform at least some steps of the method for providing communication chat and personalized video as described herein.
[0042] In some embodiments, the system 300 for providing multi-person personalized video can be integrated into the instant messaging software 220. The user interface of the instant messaging software 220 and the system 300 for providing personalized video can be provided by the graphic display system 230. The communication chat can be realized through the communication module 240 and the network 120. The communication module 240 can include a GSM module, a WiFi module, a Bluetooth module, and a TM Modules, etc.
[0043] Figure 3 3 is a block diagram of a system 300 for providing multi-person personalized videos according to some exemplary embodiments of the present invention. The system 300 may include a user interface 305, a facial image acquisition module 310, a video database 320, and a personalized video generation module 330.
[0044] The video database 320 may store one or more videos. The video may include previously recorded videos of an actor or actors. The video may include a 2D video or a 3D scene. The video may be pre-processed to segment the actor's face (also referred to as the target face) and the background in each frame, and identify a set of parameters that may be used to further insert a source face instead of the actor's face (target face). The set of parameters may include facial texture, facial expression parameters, facial color parameters, facial identity parameters, coordinates, positions, angles, etc. of the target face. The set of parameters may also include a list of manipulations and operations that may be performed on the actor's face, such as replacement of the actor's face performed in a photo-realistic manner.
[0045] The facial image acquisition module 320 may receive an image of a person and generate an image of the person's face. The image of the person's face may be used as a source face to replace a target face in a video stored in the video database 320. The image of the person may be acquired by the camera 205 of the computing device 105. The image of the person may include an image stored in the memory 215 of the computing device 105. Figure 7 Details of the facial image acquisition module 320 are provided in.
[0046] Based on the images of one or more source faces, the personalized video generation module 330 can generate a personalized video from one or more pre-generated videos stored in the database 320. The module 330 can replace the faces of one or more actors in the pre-generated video with the source faces while maintaining the facial expressions of the actors' faces. The module 330 can replace the facial texture, facial color, and facial identity of one of the actors with the facial texture, facial color, and facial identity of one of the source faces. The module 330 can also add an image of glasses on the eye area of the source face in the personalized video. Similarly, the module 330 can add an image of headwear (e.g., a beanie, a brimmed hat, a helmet, etc.) on the head of the source face in the personalized video. The images of glasses and headwear can be pre-stored in the user's computing device 105, or images of glasses and headwear can be generated. The images of glasses and headwear can be generated using a DNN. The module 330 can also apply shadows or colors to the source face in the personalized video. For example, the module 330 can add a tan to the face of the source face.
[0047] Figure 4 4 is a schematic diagram illustrating the functionality 400 of the personalized video generation module 330 according to some exemplary embodiments. The personalized video generation module 330 may receive a source face 405, an image of the source face 405, and a pre-generated video 410. The pre-generated video 410 may include one or more frames 420. The frames 420 may include a target face 415 and a target face 417. The facial expression of the source face 405 may be different from the facial expression of the target face 415 or the facial expression of the target face 417. The facial expression of the source face 407 may be different from the facial expression of the target face 415 or the facial expression of the target face 417.
[0048] In some embodiments of the present invention, the personalized video generation module 330 may be configured to analyze the image of the source face 405 to extract the source face parameters 430. The personalized video generation module 330 may also analyze the image of the source face 407 to extract the source face parameters 432. The source face parameters 430 may be extracted by fitting a parameterized face model to the image of the source face 405. Correspondingly, the source face parameters 432 may be extracted by fitting a parameterized face model to the image of the source face 407. The parameterized face model may include a template mesh. The coordinates of the vertices in the template mesh may depend on two parameters: facial identity and facial expression. Therefore, the source parameters 430 may include the facial identity and facial expression corresponding to the source face 405. The source parameters 432 may include the facial identity and facial expression corresponding to the source face 407. The source parameters 430 may also include the texture of the source face 405. The source parameters 432 may also include the texture of the source face 407. The texture may include the color at the vertex in the template mesh. In some embodiments, the texture model associated with the template mesh may be used to determine the texture of the source face 405 and the texture of the source face 407.
[0049] In some embodiments of the present invention, the personalized video generation module 330 may be configured to analyze the frames 420 of the target video 410 to extract the target facial parameters 435 and the target facial parameters 437 of each frame 420. The target facial parameters 435 may be extracted by fitting a parameterized facial model to the target face 415. The target parameters 435 may include a facial identity and a facial expression corresponding to the target face 415. The target facial parameters 430 may also include a texture of the target face 420. The texture of the target face 415 may be obtained using a texture model. Similarly, the target facial parameters 437 may be extracted by fitting a parameterized facial model to the target face 417. The target parameters 437 may include a facial identity and a facial expression corresponding to the target face 417. The target facial parameters 437 may also include a texture of the target face 417. The texture of the target face 417 may be obtained using a texture model.
[0050] In some embodiments of the present invention, each frame 420 may include metadata. The metadata may include target facial parameters 435 and target facial parameters 437 determined for the frame. For example, target facial parameters 435 and target facial parameters 437 may be generated by the instant messaging software service system 130 (e.g., Figure 1 The target facial parameters 435 and the target facial parameters 437 may be stored in the metadata of the frame 420 of the pre-generated video 410. The pre-generated video 410 may be further downloaded to the computing device 105 and stored in the video database 320. Alternatively, the personalized video generation module 330 may pre-process the pre-generated video 410 to determine the target facial parameters 435 and the target facial parameters 437 and the position parameters of the target face 415 and the target face 417 in the frame 420. The personalized video generation module 330 may also store the target facial parameters 435 and the target facial parameters 437 and the position parameters of the target face in the metadata of the corresponding frame 420. In this way, the target facial parameters 435 and the target facial parameters 437 are not recalculated each time the pre-generated video 410 is selected to be personalized using a different source face.
[0051] In some embodiments of the present invention, the personalized video generation module 330 may also be configured to replace the facial expressions in the source facial parameters 430 with the facial expressions from the target parameters 435. The personalized video generation module 330 may also replace the facial expressions in the source facial parameters 432 with the facial expressions from the target parameters 437. The personalized video generation module 330 may further use the parameterized facial model, the texture model, the target parameters 430, and the replaced facial expressions to synthesize the output face 445. The personalized video generation module 330 may also use the parameterized facial model, the texture model, the target parameters 432, and the replaced facial expressions to synthesize the output face 447. The output face 445 may be used to replace the target face 415 in the frame of the target video 410. The output face 447 may be used to replace the target face 417 in the frame of the target video 410. Frame 445 of personalized video 440 can be generated by repeating the following steps for each frame 420 of video 410: replacing facial expression parameters in target facial parameters 435 and target facial parameters 437, synthesizing output face 445 and output face 447, replacing target face 415 with output face 445, and replacing target face 417 with output face 447. Output face 445 is source face 405 adopting the facial expression of target face 415. Output face 447 is source face 407 adopting the facial expression of target face 417. The output video is a personalized video 440 generated based on the predetermined video 410 and the image of source face 405 and the image of source face 407.
[0052] Figure 5 is a block diagram of a personalized video generation module 330 according to an exemplary embodiment. The personalized video generation module 330 may include a parameterized face model 505, a texture model 510, a DNN 515, a preprocessing module 520, a parameter extraction module 525, a face synthesis module 525, and a mouth and eye generation module 530. Modules 505 to 530 may be implemented as software components for use by hardware devices, such as computing device 105, computing device 110, instant messaging software service system 130, etc.
[0053] In some embodiments of the present invention, parameterized facial models 505 may be pre-generated based on images of a predetermined number of individuals of different ages, genders, and ethnic backgrounds. For each individual, the images may include an image of the individual with a neutral facial expression and one or more images of the individual with different facial expressions. Facial expressions may include open mouth, smiling, angry, surprised, etc.
[0054] The parameterized face model 505 may include a template mesh having a predetermined number of vertices. The template mesh may be represented as a 3D triangulation that defines the shape of the head. Each individual may be associated with an individual-specific blend shape. The individual-specific blend shapes may be adjusted based on the template mesh. The individual-specific blend shapes may correspond to specific coordinates of vertices in the template mesh. Thus, different individual images may correspond to a template mesh of the same structure; however, the coordinates of the vertices in the template mesh may be different for different images.
[0055] In some embodiments of the present invention, the parameterized facial model may include a bilinear facial model that depends on two parameters: facial identity and facial expression. The bilinear facial model may be constructed based on blend shapes corresponding to individual images. Thus, the parameterized facial model includes a template mesh of a predetermined structure, in which the coordinates of the vertices depend on the facial identity and the facial expression.
[0056] In some embodiments of the invention, texture model 510 may include a linear space of texture vectors corresponding to individual images. The texture vectors may be determined as the colors at the vertices of the template mesh.
[0057] Parameterized face model 505 and texture model 510 can be used to synthesize faces based on known parameters of face identity, facial expression, and texture. Parameterized face model 505 and texture model 510 can also be used to determine unknown parameters of face identity, facial expression, and texture based on new images of new faces.
[0058] Synthesizing a face using the parameterized facial model 505 and the texture model 510 is not time-consuming; however, the synthesized face may not be realistic, especially in the mouth and eye areas. In some embodiments of the present invention, the DNN 515 can be trained to generate realistic images of the mouth and eye areas of a face. The DNN 515 can be trained using a set of videos of talking individuals. The mouth and eye areas of the talking individuals can be collected from the frames of the video. The DNN 515 can be trained using a generative adversarial network (GAN) to predict the mouth and eye areas of a face based on a predetermined number of previous frames of the mouth and eye areas and the desired facial expression of the current frame. The previous frames of the mouth and eye areas can be extracted in the specific moment parameters of the facial expression. The DNN 515 can allow the synthesis of mouth and eye areas with the parameters required for facial expressions. The DNN 515 can also allow the use of previous frames to obtain spatial coherence.
[0059] The GAN performs adjustments on the mouth and eye regions rendered from the facial model, current expression parameters, and embedded features from previously generated images, and produces the same but more realistic regions. The mouth and eye regions generated using the DNN 515 can be used to replace the mouth and eye regions synthesized by the parameterized facial model 505. It should be noted that synthesizing the mouth and eye regions by the DNN may be less time-consuming than synthesizing the entire face by the DNN. Therefore, the DNN can be used to generate the mouth and eye regions in real time by one or more processors of a mobile device such as a smartphone or tablet.
[0060] In some embodiments, the pre-processing module 520 may be configured to receive the pre-generated video 410 and the image of the source face 405. The target video 410 may include the target face. The pre-processing module 520 may also be configured to segment at least one frame of the target video to obtain an image of the target face 415 and the target background. The segmentation may be performed using a neural network, matting, and smoothing.
[0061] In some embodiments, the pre-processing module 520 may also be configured to use the parameterized facial model 505 and the texture model 510 to determine a set of target facial parameters based on at least one frame of the target video 410. In some embodiments, the target parameters may include a target facial identity, a target facial expression, and a target texture. In some embodiments, the pre-processing module 520 may also be configured to use the parameterized facial model 505 and the texture model 510 to determine a set of source facial parameters based on an image of the source face 405. The set of source facial parameters may include a source facial identity, a source facial expression, and a source texture.
[0062] In some embodiments, the face synthesis module 525 can be configured to replace the source facial expression in a set of source facial parameters with the target facial expression to obtain a set of output parameters. The face synthesis module 525 can also be configured to use the set of output parameters and the parameterized face model 505 and the texture model 510 to synthesize the output face.
[0063] In some embodiments, a two-dimensional (2D) deformation may be applied to a target face to obtain a realistic image of an output facial region hidden in the target face. Parameters of the 2D deformation may be determined based on a set of source parameters of a parameterized facial model.
[0064] In some embodiments, the mouth and eye generation module 530 can be configured to generate mouth and eye regions using the DNN 515 based on the source facial expression and at least one previous frame of the target video 410. The mouth and eye generation module 530 can also be configured to replace the mouth and eye regions in the output face synthesized using the parameterized facial model 505 and the texture model 510 with the mouth and eye regions synthesized using the DNN 515.
[0065] Figure 6 An exemplary screen of a user interface of a system for providing multi-person personalized video in a messaging application (messenger) according to some exemplary embodiments is shown. The user interface 600 may include a chat window 610 and a portion containing a video 640. The video 640 may include a pre-rendered video with a facial portion 650 instead of a face. The pre-rendered video may include a preview video that is intended to show the user an exemplary representation of how the personalized video may look. The facial portion 650 may be shown in the form of a white oval. In some embodiments, the video 640 may include multiple facial portions 650 to be able to create a multi-person video, i.e., a video with multiple faces. The user may click on any of the videos 640 to select one of the videos 640 to be modified and sent to the chat window 610. The modification may include receiving a selfie from the user (i.e., an image of the user's face taken by the front camera of the computing device), obtaining a source face from the selfie, and modifying the selected video 640 using the source face to create a personalized video, also referred to herein as a "Reel". Therefore, as used herein, a Reel is a personalized video generated by modifying a video template (a video without a user's face) into a video with a user's face inserted. Therefore, a personalized video can be generated in the form of an audiovisual media (e.g., a video, an animation, or any other type of media) that features a user's face or multiple users' faces. The modified video can be sent to the chat window 610. The user interface 600 can also have a button 630, and when the button 630 is clicked, the user can switch from the messaging application to the system for providing multi-person personalized video according to the present invention and use the functions of the system.
[0066] Figure 7 An exemplary screen of a user interface 700 of a system for providing multi-person personalized video in instant messaging software according to some exemplary embodiments is shown. The user interface 700 shows a selfie acquisition mode, in which a user can take an image of the user's face and then use it as a source face. When the user intends to capture a selfie image, the user interface 700 displays a real-time view of the camera of the computing device. The real-time view can display the user's face 705. The user interface 700 can display a selfie oval 730 and a camera button 740. In an exemplary embodiment, the camera button 740 can slide up from the bottom of the screen in the selfie acquisition mode. The user may need to change the position of the camera so that the user's face 705 is positioned within the boundaries of the selfie oval 730.
[0067] The selfie oval 730 may be shown by a thick solid line, and the camera button 740 may be shown as opaque and operable to indicate that the camera button 740 is now active. To inform the user, text 760 may be displayed below the selfie oval 730. The text 760 may instruct the user to take a selfie, such as "Take a selfie," "Try not to smile," etc. The user may take a selfie by pressing the camera button 740. In some embodiments, the user may select an existing selfie from a photo library by pressing the camera album button 750.
[0068] Figure 8 Exemplary screens of user interfaces 820 and 830 of a system for providing multi-person personalized video in instant messaging software according to some exemplary embodiments are shown. After a user takes a selfie, user interfaces 820 and 830 are displayed on the screen. User interface 820 may display a created scroll 825 and text portions 830 and 835. Scroll 825 may be displayed in full screen mode. Text 830 may include, for example, "Your scroll is ready." A dark gradient may be provided behind scroll 825 and text 830 may be visible. Text portion 835 may display, for example, "Use this selfie to send a scroll in a chat or retake to try again" to inform the user that the selfie photo that the user has already taken may be used or another selfie photo may be taken. In addition, two buttons may be displayed on user interface 820. Button 840 may be displayed with a blue and filled background and may instruct the user to "use this selfie." Button 845 may be displayed with a white, outlined and transparent background and may instruct the user to "retake a selfie." When the user clicks button 845, the user interface 820 may be activated. Figure 7 The user interface 700 shown in FIG. 1 can start the steps of creating a scroll, as shown in FIG. Figure 7 The user interface 820 may also display a lower text 850 below the buttons 840 and 845. The lower text 850 may inform the user how to delete the scroll, for example, “You can delete your scroll selfie in settings.” After clicking the “Use this selfie” button 840, the user may be transferred to the user interface 830.
[0069] The user interface 830 can enable the creation of a multi-person scroll, such as a two-person scroll. The user interface 830 can include animations. For example, when new text appears from a predetermined distance to the right and becomes less faded out within a predetermined time, the text moves off the screen a predetermined distance to the left and fades out within a predetermined time. The two-person scroll selected by the user can be displayed in full screen mode. A dark gradient can be provided above the scroll behind the text and the text can be visible.
[0070] The other person displayed in the two-person scroll may be a recent contact that the user has talked to and has given permission for the two-person scroll. If there is no contact that has given permission, the user may select a library person (one of the pre-selected people in the photo library) and create a scroll with the selected person. User interface 830 may include text 865 that reads, for example, “Scrolls can feature close-ups of friends!” and text 875 that reads, for example, “Enabling two-person scrolls will allow people to connect with you to share and export scrolls using your selfies.”
[0071] The user may decide whether to enable Two-Person Scroll. The user's selection may affect a setting in a menu in the "Who can..." section of settings that indicates who can use the user's selfie. A "Use my Scroll to take selfies" setting may appear below the "See my location" setting in settings. User interface 830 may display buttons 860 and 870. When the user clicks button 860 titled "Enable Two-Person Scroll," a chat window with a video portion opens, such as Figure 6 If the user selects "Enable Two-Person Scroll", a setting titled "Take a Selfie with My Scroll" can be set to "My Friends" to allow the user to create a scroll with the user's friends in the instant messaging software. In the chat window, the user's personalized scroll list can be opened.
[0072] When the user clicks the button 870 titled "Skip this step", the step of enabling the two-person scroll screen can be skipped and the user can open the Figure 6 A chat window with an open video section is shown. If the user selects "Skip this step," the setting titled "Take a selfie with my roll" can be set to "Only me" to allow only the user to create a roll. In the chat window, the user's personalized roll list can be opened.
[0073] The menu may have the following options: A screen title may be provided titled "Use my Roll for Selfies" and the text "Who can use your Roll selfies for Two-Person Rolls?". If the user chooses to enable Two-Person Rolls, the "Everyone" setting may be set. This setting enables anyone who can contact the user (as determined by the "Who can contact me" setting) to use the user's selfies. Any blocked users cannot use the user's selfies. The "Who can use your Roll selfies for Two-Person Rolls?" setting may also include the options "My Friends" and "Only Me." If the user chooses not to allow other users to use the user's facial image in Two-Person Rolls, the "Only Me" option is set. Regardless of what the user initially selects, the user can change this setting at any time.
[0074] By enabling Two-Person Canvas, the user provides permission for the user's selfie to be used on other computing devices of friends participating in the current communication chat, and enables the user to view the selfie in a select area (such as Figure 6 The area 640 for selecting a video is shown showing a scroll of two people.
[0075] Fig. 9 An exemplary screen of a user interface 900 of a system for providing multi-person personalized video in instant messaging software according to some exemplary embodiments is shown. A user may select a scroll 910, which is a two-person scroll. A two-person scroll may feature a user and one of the most recent members of a conversation chat as a two-way friend other than the user sending the message. If any other user in the conversation chat has a selfie and the user is allowed to use their selfie, a friend selection menu 920 may be opened when scroll 910 is selected. If more than two other members of the conversation chat have selfies, the user may press and hold any selfie 930 to select another user among the users who are allowed to use their selfies. Selfies 930 may be sorted from left to right according to the most recent conversation activity of the members of the conversation chat.
[0076] Fig.10 1 is a flow chart showing a method 1000 for providing multi-person personalized video according to an exemplary embodiment. The method 1000 may be performed by a computing device 105. The method 1000 may start in block 1005. The method may start in block 1005 by enabling a communication chat between a user of the computing device and at least one other user of at least one other computing device by the computing device. The method may further include receiving, by the computing device, a video selected by the user from one or more personalized videos stored in the computing device, as shown in block 1010. The video may include at least one frame having at least one target face and at least one other target face. The method may continue in block 1015 by receiving, by the computing device, an image of a source face and another image of another source face. In an exemplary embodiment, the image of the source face may be received as a pre-generated image selected by the user from a set of images stored in a memory of the computing device. The pre-generated image may be segmented into a portion including the source face and a background. In another exemplary embodiment, the image of the source face may be received by capturing a new image by a camera of the computing device and segmenting the new image into a portion including the source face and a background. In addition, user permission to use the image of the source face to generate another personalized video on at least one other computing device may be received. Upon receiving user permission, the image of the source face and an indication of the user permission may be sent to at least one additional computing device.
[0077] In an exemplary embodiment, an additional image of an additional source face may be received as a pre-generated image selected by a user from a set of images stored in a memory of a computing device. The pre-generated image may be segmented into a portion including the additional source face and a background. The additional image of the additional source face may be received from at least one additional computing device.
[0078] The method may also include: modifying the image of the source face to generate a modified image of the source face, as shown in box 1020, and modifying the additional image of the additional source face to generate a modified image of the additional source face, as shown in box 1025. The modified source face can adopt the facial expression of the target face. The modified additional source face can adopt the facial expression of at least one additional target face. The method can continue at box 1030, replacing the target face with the image of the modified source face and replacing at least one additional face with the modified additional source face in at least one frame of the video to generate a personalized video. The personalized video can be sent to at least one additional user via a communication chat, as shown in box 1035. Before modifying the additional image of the additional source face, it can be determined that at least one additional user has provided permission to use the additional image of the additional source face to generate the personalized video.
[0079] The method may optionally include: determining target facial expression parameters associated with the parameterized facial model based on the target face in at least one frame before modifying the image of the source face. The at least one frame may include metadata, such as the target facial expression parameters. In this case, modifying the image of the source face may also include: determining source parameters associated with the parameterized facial model based on the image of the source face, the parameters including source facial expression parameters, source facial identity parameters, and source facial texture parameters. Based on the parameterized facial model and the target facial expression parameters, the source facial identity parameters, and the source facial texture parameters, the modified image of the source face may be synthesized.
[0080] The method may optionally include, before modifying the further image of the further source face, determining target facial expression parameters associated with the parameterized facial model based on the further target face in at least one frame. In this case, modifying the further image of the further source face may include: determining source parameters associated with the parameterized facial model based on the further image of the further source face, the source parameters including source facial expression parameters, source facial identity parameters, and source facial texture parameters. Based on the parameterized facial model and the target facial expression parameters, the source facial identity parameters, and the source facial texture parameters, the modified further image of the further source face may be synthesized.
[0081] Fig.11An exemplary computing system 1100 that can be used to implement the methods described herein is illustrated. The computing system 1100 can be implemented in contexts such as computing devices 105 and 110, instant messaging software service system 130, instant messaging software 220, and system 300 for providing multi-person personalized video.
[0082] like Fig.11 As shown, the hardware components of the computing system 1100 may include one or more processors 1110 and a memory 1120. The memory 1120 stores instructions and data for execution by the processor 1110 in part. When the system 1100 is running, the memory 1120 may store the code of the executable file. The system 1100 may also include an optional mass storage device 1130, an optional portable storage medium drive 1140, one or more optional output devices 1150, one or more optional input devices 1160, an optional network interface 1170, and one or more optional peripheral devices 1180. The computing system 1100 may also include one or more software components 1195 (e.g., those software components that may implement the method for providing multi-person personalized video as described herein).
[0083] Fig.11 The components shown in are depicted as being connected via a single bus 1190. These components may be connected via one or more data transmission devices or data networks. The processor 1110 and memory 1120 may be connected via a local microprocessor bus, and the mass storage device 1130, peripheral device 1180, portable storage device 1140, and network interface 1170 may be connected via one or more input / output (I / O) buses.
[0084] Mass storage device 1130, which may be implemented with a magnetic disk drive, solid state disk drive, or optical disk drive, is a non-volatile storage device for storing data and instructions for use by processor 1110. Mass storage device 1130 may store system software (e.g., software component 1195) for implementing the embodiments described herein.
[0085] The portable storage media drive 1140 operates with portable nonvolatile storage media, such as compact disks (CDs) or digital video disks (DVDs), to input and output data and code to and from the computing system 1100. System software (e.g., software component 1195) for implementing the embodiments described herein may be stored on such portable media and input to the computing system 1100 via the portable storage media drive 1140.
[0086] Optional input device 1160 provides part of the user interface. Input device 1160 may include an alphanumeric keypad (such as a keyboard) for entering alphanumeric and other information, or a pointing device such as a mouse, trackball, stylus, or cursor direction keys. Input device 1160 may also include a camera or scanner. In addition, as Fig.11 The illustrated system 1100 includes an optional output device 1150. Suitable output devices include speakers, printers, network interfaces, and monitors.
[0087] The network interface 1170 can be used to communicate with external devices, external computing devices, servers, and networked systems via one or more communication networks (such as one or more wired, wireless, or optical networks, including, for example, the Internet, an intranet, a local area network, a wide area network, a cellular telephone network, a Bluetooth radio, and a radio frequency network based on IEEE802.11, etc.). The network interface 1170 can be a network interface card, such as an Ethernet card, an optical transceiver, a radio frequency transceiver, or any other type of device that can send and receive information. The optional peripherals 1180 can include any type of computer support device to add additional functionality to the computer system.
[0088] The components contained in computing system 1100 are intended to represent a broad class of computer components. Thus, computing system 1100 may be a server, a personal computer, a handheld computing device, a phone, a mobile computing device, a workstation, a minicomputer, a mainframe computer, a network node, or any other computing device. Computing system 1100 may also include different bus configurations, networking platforms, multi-processor platforms, etc. Various operating systems (OS) may be used, including UNIX, Linux, Windows, Macintosh OS, Palm OS, and other suitable operating systems.
[0089] Some of the above functions may consist of instructions stored on a storage medium (e.g., a computer-readable medium or a processor-readable medium). The instructions may be retrieved and executed by a processor. Some examples of storage media are storage devices, tapes, disks, etc. The instructions are operable when executed by a processor to direct the processor to operate in accordance with the present invention. Those skilled in the art are familiar with instructions, processors, and storage media.
[0090] It is worth noting that any hardware platform suitable for performing the processing described herein is suitable for the present invention. The term "computer-readable storage medium" used herein refers to any medium that participates in providing instructions to a processor for execution. Such media can take a variety of forms, including but not limited to non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical disks or disks, such as fixed disks. Volatile media include dynamic memory, such as system random access memory (RAM). Transmission media include coaxial cables, copper wires, and optical fibers, etc., including wires, which include an embodiment of a bus. Transmission media can also take the form of sound waves or light waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media include, for example, floppy disks, floppy disks, hard disks, tapes, any other magnetic media, CD read-only memory (ROM) disks, DVDs, any other optical media, any other physical media with markings or hole patterns, RAM, PROM, EPROM, EEPROM, any other storage chip or cassette, carrier waves, or any other computer-readable medium.
[0091] Various forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to the processor for execution. The bus transfers the data to the system RAM, from which the processor retrieves and executes the instructions. The instructions received by the system processor may be selectively stored on a fixed disk before or after execution by the processor.
[0092] Thus, methods and systems for providing multi-person personalized videos have been described. Although the embodiments have been described with reference to specific exemplary embodiments, it is apparent that various modifications and changes may be made to these exemplary embodiments without departing from the broader spirit and scope of the present application. Therefore, the description and drawings are to be regarded as illustrative rather than restrictive.
Claims
1. A method for providing multi-person personalized video, the method comprising: enabling, via a computing device, a communication chat between a user of the computing device and at least one additional user of at least one additional computing device; Receiving, by the computing device, a video selected by a user from one or more personalized videos stored in the computing device, wherein the video includes at least one frame, the at least one frame includes metadata, and the metadata includes a first position, a first facial expression parameter, a second position, and a second facial expression parameter; receiving, by the computing device, an image of a source face and further images of further source faces; modifying, by the computing device, the image of the source face to generate an image of a modified source face, wherein the modified source face adopts a first facial expression according to the first facial expression parameter; modifying, by the computing device, the further image of the further source face to generate a modified image of the further source face, wherein the modified further source face adopts a second facial expression according to the second facial expression parameter; Inserting, by the computing device, the modified image of the source face at a first position and the modified image of the other source face at a second position in the at least one frame of the video to generate a personalized video; and The personalized video is sent to the at least one additional user via the communication chat by the computing device.
2. The method according to claim 1, wherein: Receiving the source facial image includes: receiving a pre-generated image selected by a user from a set of images stored in a memory of the computing device; and The pre-generated image is segmented into a portion including the source face and a background.
3. The method according to claim 1, wherein: Receiving the source facial image includes: Acquiring a new image via a camera of the computing device; and The new image is segmented into a portion including the source face and a background.
4. The method according to claim 3, further comprising: receiving, by the computing device, user permission to use the image of the source face to generate an additional personalized video on the at least one additional computing device; as well as Upon receiving the user permission, the image of the source face and an indication of the user permission are sent, by the computing device, to the at least one further computing device.
5. The method according to claim 1, wherein: Receiving the further image of the further source face comprises: receiving a pre-generated image selected by a user from a set of images stored in a memory of the computing device; and The pre-generated image is segmented into a portion including the further source face and a background.
6. The method according to claim 1, wherein: The further image of the further source face is received from the at least one further computing device.
7. The method according to claim 1, further comprising: Prior to modifying the further image of the further source face: determining, by the computing device, that the at least one additional user has not permitted use of the additional image of the additional source face to generate the one or more personalized videos on a computing device other than the at least one additional computing device; as well as Based on the determination, replacing, by the computing device, the additional image of the additional source face with a preselected image of the face selected from a library of stock images.
8. The method of claim 7, further comprising determining, prior to modifying the further image of the further source face, that the at least one further user has provided permission to use the further image of the further source face to generate the personalized video.
9. The method according to claim 1, wherein: The first facial expression parameter is determined using a parameterized facial model; and Modifying the source facial image includes: Determining source parameters associated with the parameterized facial model based on the image of the source face, the source parameters comprising source facial expression parameters, source facial identity parameters, and source facial texture parameters; and An image of the modified source face is synthesized based on the parameterized face model and the first facial expression parameters, the source face identity parameters, and the source face texture parameters.
10. The method according to claim 1, wherein: The first facial expression parameter is determined using a parameterized facial model; and Modifying the further image of the further source face comprises: determining source parameters associated with the parameterized facial model based on the further image of the further source face, the source parameters comprising source facial expression parameters, source facial identity parameters, and source facial texture parameters; and A further image of the modified further source face is synthesized based on the parameterized face model and the first facial expression parameters, the source face identity parameters and the source face texture parameters.
11. A system for providing multi-person personalized video, the system comprising at least one processor and a memory, the memory storing processor executable code, wherein: The at least one processor is configured to implement the following operations when executing the processor executable code: enabling, via a computing device, a communication chat between a user of the computing device and at least one additional user of at least one additional computing device; Receiving, by the computing device, a video selected by a user from one or more personalized videos stored in the computing device, wherein the video includes at least one frame, the at least one frame includes metadata, and the metadata includes a first position, a first facial expression parameter, a second position, and a second facial expression parameter; receiving, by the computing device, an image of a source face and further images of further source faces; modifying, by the computing device, the image of the source face to generate an image of a modified source face, wherein the modified source face adopts a first facial expression according to the first facial expression parameter; modifying, by the computing device, the further image of the further source face to generate a modified image of the further source face, wherein the modified further source face adopts a second facial expression according to the second facial expression parameter; Inserting, by the computing device, the modified image of the source face at a first position and the modified image of the other source face at a second position in the at least one frame of the video to generate a personalized video; and The personalized video is sent to the at least one additional user via the communication chat by the computing device.
12. The system according to claim 11, wherein: Receiving the source facial image includes: receiving a user selection of a pre-generated image from a set of images stored in a memory of the computing device; and The pre-generated image is segmented into a portion including the source face and a background.
13. The system according to claim 11, wherein: Receiving the source facial image includes: A new image is acquired by a camera of the computing device; and the new image is segmented into a portion including the source face and a background.
14. The system according to claim 13, wherein: The at least one processor is further configured to: receiving, by the computing device, user permission to use the image of the source face to generate an additional personalized video on the at least one additional computing device; as well as Upon receiving the user permission, the image of the source face and an indication of the user permission are sent, by the computing device, to the at least one further computing device.
15. The system according to claim 11, wherein: Receiving the further image of the further source face comprises: receiving a pre-generated image selected by a user from a set of images stored in a memory of the computing device; and The pre-generated image is segmented into a portion including the further source face and a background.
16. The system of claim 11, wherein: The further image of the further source face is received from the at least one further computing device.
17. The system of claim 11, wherein: The at least one processor is further configured to, prior to modifying the further image of the further source face: determining, by the computing device, that the at least one additional user has not permitted use of the additional image of the additional source face to generate the one or more personalized videos on a computing device other than the at least one additional computing device; as well as Based on the determination, replacing, by the computing device, the additional image of the additional source face with a preselected image of the face selected from a library of stock images.
18. The system of claim 17, wherein: The at least one processor is further configured to, prior to modifying the further image of the further source face, determine that the at least one further user has provided permission to use the further image of the further source face to generate the personalized video.
19. The system of claim 11, wherein: The first facial expression parameter is determined using a parameterized facial model; and Modifying the source facial image includes: Determining source parameters associated with the parameterized facial model based on the image of the source face, the source parameters comprising source facial expression parameters, source facial identity parameters, and source facial texture parameters; and An image of the modified source face is synthesized based on the parameterized face model and the first facial expression parameters, the source face identity parameters, and the source face texture parameters.
20. A non-transitory processor-readable medium having instructions stored thereon, which, when one or more processors execute the instructions, cause the one or more processors to implement a method for providing multi-person personalized video, the method comprising: enabling, via a computing device, a communication chat between a user of the computing device and at least one additional user of at least one additional computing device; Receiving, by the computing device, a video selected by a user from one or more personalized videos stored in the computing device, wherein the video includes at least one frame, the at least one frame includes metadata, and the metadata includes a first position, a first facial expression parameter, a second position, and a second facial expression parameter; receiving, by the computing device, an image of a source face and further images of further source faces; modifying, by the computing device, the image of the source face to generate an image of a modified source face, wherein the modified source face adopts a first facial expression according to the first facial expression parameter; modifying, by the computing device, the further image of the further source face to generate a modified image of the further source face, wherein the modified further source face adopts a second facial expression according to the second facial expression parameter; Inserting, by the computing device, the modified image of the source face at a first position and the modified image of the other source face at a second position in the at least one frame of the video to generate a personalized video; and The personalized video is sent to the at least one additional user via the communication chat by the computing device.
