KR102616013B1 - 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법 - Google Patents

맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법 Download PDF

Info

Publication number
KR102616013B1
KR102616013B1 KR1020217026003A KR20217026003A KR102616013B1 KR 102616013 B1 KR102616013 B1 KR 102616013B1 KR 1020217026003 A KR1020217026003 A KR 1020217026003A KR 20217026003 A KR20217026003 A KR 20217026003A KR 102616013 B1 KR102616013 B1 KR 102616013B1
Authority
KR
South Korea
Prior art keywords
text
preset text
preset
computing device
video
Prior art date
Application number
KR1020217026003A
Other languages
English (en)
Other versions
KR20210119440A (ko
Inventor
알렉산더 마시로바브
빅터 슈바로브
소피아 사비노바
드미트리 마토브
앤드류 오시보프
아이반 시미노브
로만 골로보카프
알렉세이 브로모트
Original Assignee
스냅 아이엔씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US16/251,472 external-priority patent/US11049310B2/en
Priority claimed from US16/251,436 external-priority patent/US10789453B2/en
Priority claimed from US16/434,185 external-priority patent/US10839586B1/en
Priority claimed from US16/551,756 external-priority patent/US10776981B1/en
Priority claimed from US16/594,690 external-priority patent/US11089238B2/en
Priority claimed from US16/594,771 external-priority patent/US11394888B2/en
Priority claimed from US16/661,122 external-priority patent/US11308677B2/en
Priority claimed from US16/661,086 external-priority patent/US11288880B2/en
Priority to KR1020237042824A priority Critical patent/KR20230173221A/ko
Priority to KR1020237042823A priority patent/KR20230173220A/ko
Application filed by 스냅 아이엔씨 filed Critical 스냅 아이엔씨
Publication of KR20210119440A publication Critical patent/KR20210119440A/ko
Publication of KR102616013B1 publication Critical patent/KR102616013B1/ko
Application granted granted Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/109Font handling; Temporal or kinetic typography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Processing Or Creating Images (AREA)
  • Information Transfer Between Computers (AREA)
  • Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)

Abstract

맞춤형 텍스트 메시지를 갖는 개인화 비디오를 생성 시스템 및 방법이 기술된다. 예시적인 방법은 비디오 템플릿의 수신으로 시작될 수 있다. 비디오 템플릿은 프레임 이미지의 시퀀스 및 텍스트의 애니메이션을 정의하는 사전 설정 텍스트 파라미터를 포함할 수 있다. 이 방법은 텍스트 및 사전 설정 텍스트 파라미터에 기초하여 구성 파일을 계속하여 생성할 수 있다. 구성 파일은 텍스트를 각각의 프레임 이미지에 렌더링하는 것을 정의하는 텍스트 파라미터를 포함할 수 있다. 방법은 입력 텍스트를 수신하는 동작 및 텍스트 파라미터에 따라 렌더링된 입력 텍스트를 특징으로 하는 프레임 이미지의 시퀀스를 포함하는 출력 비디오를 렌더링하는 동작을 더 포함할 수 있다. 렌더링은 구성 파일에 기초하여 수행될 수 있다. 방법은 통신 채팅을 통해 추가 컴퓨팅 장치로 출력 비디오를 계속하여 전송할 수 있다.

Description

맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법
본 개시는 일반적으로 디지털 이미지 처리에 관한 것이다. 보다 구체적으로, 본 개시는 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 방법 및 시스템에 관한 것이다.
스티커 및 이모지(emoji) 같은 미디어 공유는 메시징 어플리케이션(또한 여기서 메신저라고도 함)의 표준 옵션(standard option)이 되었다. 현재, 몇몇의 메신저는 커뮤니케이션 채팅을 통해 이미지 및 짧은 비디오를 생성하고 다른 사용자에게 보내는(send) 옵션을 사용자에게 제공한다. 기존의 특정 메신저는 사용자가 전송(transmit)하기 전에 짧은 비디오를 수정하는 것을 허용한다. 그러나 기존의 메신저에서 제공하는 짧은 비디오의 수정은 시각화 효과, 필터, 및 텍스트로 제한된다. 현재 메신저의 사용자는 한 얼굴을 다른 얼굴로 대체(replace)하는 것과 같은, 복잡한 편집을 수행(perform)할 수 없다. 이러한 비디오 편집은 현재의 메신저에서 제공되지 않고, 복잡한(sophisticated) 제3의(third-party) 비디오 편집 소프트웨어가 요구된다.
이 섹션은 아래의 상세한 설명의 섹션에서 더 상세하게 설명되는 선택된 개념들을 간단한 형태로 소개하기 위해 제공된다. 본 섹션은 청구된 주제의 주요 특징 또는 필수 특징을 식별하기 위한 것으로 의도된 것도 아니며, 또한 청구된 주제의 범위를 결정하는 데 도움이 되도록 사용되는 것을 의도한 것도 아니다.
본 개시의 일 실시예에 따르면, 맞춤형 텍스트 메시지(customized text message)를 갖는 개인화 비디오(personalized video) 생성 시스템이 개시된다. 시스템은 적어도 하나의 프로세서 및 프로세서-실행 가능 코드를 저장하는 메모리를 포함할 수 있다. 적어도 하나의 프로세서는 비디오 템플릿을 수신하도록 구성될 수 있다. 비디오 템플릿은 프레임 이미지의 시퀀스(sequence of frame image); 및 텍스트의 애니메이션을 정의하는 사전 설정 텍스트 파라미터(preset text parameters)를 포함할 수 있다. 사전 설정 텍스트 파라미터는 텍스트에 적용되는 시각 효과를 기술(describe)할 수 있으며, 텍스트의 폰트, 텍스트의 색상, 및 적어도 하나의 프레임 이미지에 있는 텍스트의 위치를 포함할 수 있다. 시각 효과는 문자의 외형 애니메이션(letter animation of an appearance), 경로를 따라 텍스트를 디스플레이, 텍스트의 사본을 디스플레이, 텍스트의 압축(compression of the text), 텍스트의 슬라이싱, 텍스트의 방향성 외형(directional appearance of the text), 임의의 문자 외형, 텍스트의 왜곡 및 스케일링(distortion and scaling of the text), 텍스트의 그라데이션 채우기(gradient fill of the text), 텍스트에 그림자 및 글로우 추가, 텍스트에 방향성 글로우 추가(adding directional glow to the text), 텍스트의 플래시 외형(a flash appearance of the text), 텍스트에 원근감 있는 그림자 추가(adding a perspective shadow to the text), 텍스트에 동적 글로우 적용(applying a dynamic glow to the text), 텍스트의 왜곡된 그림자 또는 텍스트의 아웃라인 디스플레이(displaying a distorted shadow or an outline of the text), 텍스트 아웃라이닝(outlining the text), 색상이 지정된 폰트 에셋을 텍스트에 적용(applying colored font assets to the text), 및 기타 등등을 포함할 수 있다.
프로세서는 또한 텍스트 및 사전 설정 텍스트 파라미터에 기초하여 구성 파일(configuration file)을 생성하도록 구성될 수 있다. 구성 파일은 텍스트를 각각의 프레임 이미지로 렌더링하는 것을 정의하는 텍스트 파라미터를 포함할 수 있다. 텍스트 파라미터는 텍스트의 스케일, 프레임 이미지의 적어도 하나의 프레임 이미지에서 텍스트의 위치, 텍스트의 회전, 텍스트의 색상, 텍스트의 줄 수, 텍스트의 최대 길이, 및 기타 등등을 포함할 수 있다. 스케일은 글로벌 스케일에 기초하여 조정(adjust)될 수 있다. 글로벌 스케일은 시퀀스의 프레임 이미지의 경계에 입력 텍스트를 맞추도록(fit) 결정될 수 있다. 프로세서는 입력 텍스트를 수신하고 텍스트 파라미터에 따라 렌더링 된 입력 텍스트를 특징(feature)으로 하는 프레임 이미지의 시퀀스를 포함하는 출력 비디오를 렌더링하도록 추가로 구성될 수 있다. 렌더링은 구성 파일에 기초하여 수행될 수 있다. 프로세서는 또한 출력 비디오를 통신 채팅을 통해 추가 컴퓨팅 장치로 전송하도록 구성될 수 있다. 렌더링은 구성 파일에 기초하여 입력 텍스트의 글리프(glyphs of the input text)를 생성하고 글리프를 포함하는 레이어를 생성함으로써 수행될 수 있다. 렌더링은 입력 텍스트를 줄 수로 스플릿(split)하는 것을 더 포함할 수 있다. 적어도 하나의 프로세서는 출력 비디오를 전송하기 전에 출력 비디오를 전체 화면 모드(full screen mode)에서 재생하도록 추가로 구성될 수 있다. 출력 비디오를 디스플레이하는 동안, 사용자는 입력 텍스트를 추가 입력 텍스트로 변경하는 옵션을 제공받을 수 있으며 입력 텍스트는 디스플레이된 출력 비디오에서 추가 입력 텍스트로 동적 변경될 수 있다.
하나의 예시적인 실시예에 따르면, 맞춤형 텍스트 메시지를 가진 개인화 비디오 생성 방법이 개시된다. 이 방법은 비디오 템플릿을 수신하는 동작으로 시작할 수 있다. 비디오 템플릿은 프레임 이미지의 시퀀스 및 텍스트의 애니메이션을 정의하는 및 미리 사전 설정 텍스트 파라미터를 포함할 수 있다. 사전 설정 텍스트 파라미터는 텍스트에 적용되는 시각 효과를 기술할 수 있으며, 텍스트의 폰트, 텍스트의 색상, 및 적어도 하나의 프레임 이미지에서 텍스트의 위치를 포함할 수 있다. 시각 효과는 문자의 외형 애니메이션(letter animation of an appearance), 경로를 따라 텍스트를 디스플레이, 텍스트의 사본을 디스플레이, 텍스트의 압축(compression of the text), 텍스트의 슬라이싱, 텍스트의 방향성 외형(directional appearance of the text), 임의의 문자 외형, 텍스트의 왜곡 및 스케일링(distortion and scaling of the text), 텍스트의 그라데이션 채우기(gradient fill of the text), 텍스트에 그림자 및 글로우 추가, 텍스트에 방향성 글로우 추가(adding directional glow to the text), 텍스트의 플래시 외형(a flash appearance of the text), 텍스트에 원근감 있는 그림자 추가(adding a perspective shadow to the text), 텍스트에 동적 글로우 적용(applying a dynamic glow to the text), 텍스트의 왜곡된 그림자 또는 텍스트의 아웃라인 디스플레이(displaying a distorted shadow or an outline of the text), 텍스트 아웃라이닝(outlining the text), 색상이 지정된 폰트 에셋을 텍스트에 적용(applying colored font assets to the text), 및 기타 등등을 포함할 수 있다. 이 방법은 텍스트 및 사전 설정 텍스트 파라미터에 기초하여 구성 파일을 계속하여 생성할 수 있다. 구성 파일은 텍스트를 각각의 프레임 이미지로 렌더링하는 것을 정의하는 텍스트 파라미터를 포함할 수 있다. 텍스트 파라미터는 텍스트의 스케일, 프레임 이미지의 적어도 하나의 프레임 이미지에서 텍스트의 위치, 텍스트의 회전, 텍스트의 색상, 텍스트의 줄 수, 텍스트의 최대 길이, 및 기타 등등을 포함할 수 있다. 스케일은 글로벌 스케일에 기초하여 조정(adjust)될 수 있다. 글로벌 스케일은 시퀀스의 프레임 이미지의 경계에 입력 텍스트를 맞추도록(fit) 결정될 수 있다. 방법은 입력 텍스트를 수신하고 텍스트 파라미터에 따라 렌더링된 입력 텍스트를 특징으로 하는 프레임 이미지의 시퀀스를 포함하는 출력 비디오를 렌더링하는 동작을 더 포함할 수 있다. 렌더링은 구성 파일에 기초하여 수행될 수 있다. 방법은 통신 채팅을 통해 출력 비디오를 추가 컴퓨팅 장치로 계속하여 전송할 수 있다. 렌더링은 구성 파일에 기초하여 입력 텍스트의 글리프(glyphs of the input text)를 생성하고 글리프를 포함하는 레이어를 생성함으로써 수행될 수 있다. 렌더링은 입력 텍스트를 줄 수로 스플릿(split)하는 것을 더 포함할 수 있다. 방법은 출력 비디오를 전송하기 전에 출력 비디오를 전체 화면 모드(full screen mode)에서 재생(play back)하는 동작을 선택적으로 포함할 수 있다. 출력 비디오를 디스플레이하는 동안, 사용자는 입력 텍스트를 추가 입력 텍스트로 변경하는 옵션을 제공받을 수 있으며 입력 텍스트는 디스플레이된 출력 비디오에서 추가 입력 텍스트로 동적 변경될 수 있다.
본 개시의 또 다른 양상에 따르면, 프로세서-판독 가능 명령어를 저장하는 비-일시적 프로세서-판독 가능 매체가 제공된다. 프로세서-판독 가능 명령이 프로세서에 의해 실행될 때, 비-일시적 프로세서-판독 가능 매체는 프로세서가 전술한 맞춤형 텍스트 메시지를 가지는 개인화 비디오 생성 방법을 구현하도록 한다.
예시의 추가적인 목적, 장점, 및 신규한 특징은 다음 설명에서 부분적으로 설명될 것이고, 부분적으로는 다음 설명 및 첨부 도면을 검토할 때 당업자에게 명백해질 것이며, 또는 예시의 생산 또는 동작에 의해 학습될 수 있다. 개념의 목적 및 장점은 첨부된 청구항에서 특히 지적된 방법론, 수단 및 조합에 의해 실현되고 달성될 수 있다.
실시예는 첨부된 그림의 도면에서 제한이 아니라 예로서 설명되며, 유사한 참조는 유사한 요소를 도시한이다.
도 1은 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법이 구현될 수 있는 예시적인 환경을 나타내는 블록도이다.
도 2는 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 방법을 구현하기 위한 컴퓨팅 장치의 예시적인 실시예를 나타내는 블록도이다.
도 3은 본 개시의 일부 예시적인 실시예에 따른, 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 프로세스를 나타내는 흐름도이다.
도 4는 본 개시의 일부 예시적인 실시예에 따른, 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템의 기능을 나타내는 흐름도이다.
도 5는 일부 예시적인 실시예에 따른, 사전 설정 텍스트 파라미터에 기초하여 렌더링된 텍스트를 갖는 예시적인 프레임을 도시한다
도 6-7은 일부 예시적인 실시예에 따른, 맞춤형 텍스트 메시지를 가진 개인화 비디오 생성하기 시스템 및 방법이 구현될 수 있는 통신 채팅의 예시적인 스크린을 도시한다.
도 8은 예시적인 실시예에 따른, 사용자 이미지에 기초하여 생성된 개인화 비디오의 예시적인 프레임을 도시한다.
도 9는 예시적인 실시예에 따른, 맞춤형 텍스트 메시지를 가진 개인화 비디오를 생성 방법을 나타내는 흐름도이다.
도 10은 맞춤형 텍스트 메시지를 가진 개인화 비디오 생성 방법을 구현하는 데 사용될 수 있는 예시적인 컴퓨터 시스템을 도시한다.
이하 실시예의 상세한 설명은 상세한 설명의 일부를 형성하는 첨부 도면에 대한 참조를 포함한다. 이 섹션에 설명된 접근 방식은 청구 범위에 대한 선행 기술이 아니며 이 섹션에 포함됨으로써 선행 기술로 인정되지 않다. 도면은 예시적인 실시예에 따른 설명을 나타낸다. 본 명세서에서 "예시" 라고도 지칭되는 이러한 예시적인 실시예는 당업자가 본 주제를 실시할 수 있도록 충분히 상세하게 설명된다. 실시예들은 결합될 수 있고, 다른 실시예가 이용될 수 있거나, 청구된 범위를 벗어나지 않고 구조적, 논리적 및 작동적 변경이 이루어질 수 있다. 따라서, 이하의 상세한 설명은 제한적인 의미로 받아들여져서는 안 되고, 범위는 첨부된 청구 범위 및 그 균등물에 의해 정의된다.
본 특허 문서의 목적을 위해, 용어 "또는" 및 "및"은 달리 언급되거나 사용의 맥락에 의해 달리 명확하게 의도되지 않는 한 "및/또는"을 의미한다. 용어 "a"는 달리 명시되지 않거나 "하나 이상"의 사용이 명백히 부적절하지 않는 한 "하나 이상"을 의미한다. 용어 "포함하다(comprise)", "포함하는(comprise)", "포함하다(include)" 및 "포함하는(including)"은 상호 교환 가능하며 제한하려는 의도가 아니다. 예를 들어, 용어 "포함하는" 은 "포함하지만 이에 제한되지 않는"을 의미하는 것으로 해석되어야 한다.
본 개시는 맞춤형 텍스트 메시지를 가진 개인화 비디오를 생성 방법 및 시스템에 관한 것이다. 본 개시에 제공된 실시예는 공지된 기술의 적어도 일부 문제를 해결한다. 본 개시 내용은 스마트 폰, 태블릿 컴퓨터, 또는 모바일 폰과 같은 모바일 장치에서 실시간으로 작동하도록 설계될 수 있지만, 실시예는 웹 서비스 또는 클라우드 기반 리소스를 포함하는 접근 방식으로 확장될 수 있다. 여기에 설명된 방법은 컴퓨터 시스템에서 실행되는 소프트웨어 및/또는 마이크로 프로세서의 조합 또는 기타 특별히 설계된 ASIC(application-specific integrated circuit), 프로그램 가능 논리 장치 또는 이들의 임의의 조합을 사용하는 하드웨어에 의해 구현될 수 있다. 특히, 여기에 설명된 방법은 디스크 드라이브 또는 컴퓨터 판독 가능 매체와 같은 비 일시적 저장 매체에 상주하는 일련의 컴퓨터 실행 가능 명령어에 의해 구현될 수 있다.
본 개시의 일부 실시예는 스마트 폰과 같은 사용자 컴퓨팅 장치에서 실시간으로 개인화 비디오를 생성하는 것을 허용할 수 있다. 미리-생성된 비디오 템플릿에 기초하여 개인화 비디오가 생성될 수 있다. 비디오 템플릿은 프레임 이미지의 시퀀스 및 텍스트의 애니메이션을 위한 사전 설정 텍스트 파라미터를 포함할 수 있다. 비디오 템플릿은 또한 프레임 이미지에서 얼굴 영역의 위치를 정의하는 얼굴 영역 파라미터의 시퀀스 및 프레임 이미지에서 얼굴 랜드마크의 위치를 정의하는 얼굴 랜드마크 파라미터의 시퀀스를 포함할 수 있다. 각각의 얼굴 랜드마크 파라미터는 얼굴 표정에 대응할 수 있다. 프레임 이미지는 애니메이션 비디오 또는 라이브 액션 비디오에 기초하여 생성될 수 있다. 얼굴 랜드마크 파라미터는 배우(아래에 자세히 설명된 것처럼 얼굴 동기화(facesync)라고도 불리는)의 얼굴을 특징으로 하는 또다른 라이브 액션 비디오, 애니메이션 비디오, 오디오 파일, 텍스트에 기초하여 또는 수동으로 생성될 수 있다. 비디오 템플릿은 애니메이션 객체 이미지의 시퀀스를 포함할 수 있다. 비디오 템플릿은 또한 사운드 트랙을 포함할 수 있다. 여기서 사용되는, 얼굴 싱크 배우는 얼굴 랜드마크 파라미터가 사용되는 사람이고, 배우는 신체가 비디오 템플릿에서 사용되고 피부가 재채색(recolor)될 수 있는 또다른 사람이며, 그리고 사용자는 개인화 비디오를 생성하기 위해 자신의 얼굴 이미지를 촬영하는 사람이다. 따라서, 일부 실시예에서, 개인화 비디오는 얼굴 싱크 배우의 얼굴 표정을 갖도록 수정된 사용자의 얼굴을 포함하며 그리고 비디오 템플릿으로부터 가져오고 사용자의 얼굴의 색상과 매치되도록 재채색된 배우의 신체를 포함한다.
미리-생성된 비디오 템플릿은 클라우드 기반 컴퓨팅 리소스에 원격으로 저장될 수 있으며 컴퓨팅 장치(예: 스마트 폰)의 사용자에 의해 다운로드될 수 있다. 컴퓨팅 장치의 사용자는 컴퓨팅 장치에 의해 얼굴 이미지를 캡처하거나 카메라 롤에서 얼굴 이미지를 선택할 수 있다. 컴퓨팅 장치는 얼굴의 이미지 및 미리-생성된 비디오 템플릿 중 하나에 기초하여 개인화 비디오를 추가로 생성할 수 있다. 개인화 비디오는 미리-생성된 비디오 템플릿에서 얼굴 싱크 배우와 관련된 얼굴 랜드마크 파라미터에 대응하는 얼굴 표정을 채택하는 얼굴을 특징으로 할 수 있다.
컴퓨팅 장치는 생성된 개인화 비디오에 텍스트를 추가할 수 있다. 컴퓨팅 장치는 사전 설정 텍스트 파라미터에 기초하여 구성 파일을 생성할 수 있다. 구성 파일은 개인화 비디오의 각 프레임에 있는 텍스트의 크기, 위치, 회전, 색상 및 줄 수를 설명하는 텍스트 파라미터가 포함할 수 있다. 컴퓨팅 장치는, 사용자로부터, 개인화 비디오에 추가될 입력 텍스트를 수신할 수 있다. 컴퓨팅 장치는 구성 파일의 텍스트 파라미터에 따라 각 프레임에서 입력 텍스트를 렌더링 할 수 있다. 결과적으로, 입력 텍스트는 개인화 비디오에서 애니메이션으로 나타날 수 있다. 사용자는 전체 화면 모드에서 맞춤형 텍스트를 가진 개인화 비디오를 검토할 수 있다. 개인화 비디오를 검토하는 동안, 사용자는 입력 텍스트를 새로운 입력 텍스트로 변경할 수 있다. 컴퓨팅 장치는 개인화 비디오를 전체 화면 모드로 디스플레이하면서 개인화 비디오의 입력 텍스트를 자동으로 대체할 수 있다. 사용자는 통신 채팅을 통해 개인화 비디오를 또다른 컴퓨팅 장치의 또다른 사용자에게 보낼 수 있다. 일부 실시예에서, 맞춤형 텍스트 메시지를 가진 개인화 비디오를 생성하는 것은 메신저에 통합될 수 있다.
본 개시의 일 실시예에 따르면, 템플릿-기반 개인화 비디오 생성을 위한 예시적인 방법은 비디오 템플릿을 수신하는 것을 포함할 수 있다. 비디오 템플릿은 프레임 이미지의 시퀀스 및 비디오 템플릿은 텍스트의 애니메이션을 정의하는 사전 설정 텍스트 파라미터를 포함할 수 있다. 이 방법은 텍스트 및 사전 설정 텍스트 파라미터에 기초하여 구성 파일을 계속하여 생성할 수 있다. 구성 파일은 텍스트를 각각의 프레임 이미지로 렌더링하는 것을 정의하는 텍스트 파라미터(text parameters)를 포함할 수 있다. 이 방법은 입력 텍스트를 수신하는 동작 및 구성 파일에 기초하여 출력 비디오를 렌더링하는 동작을 더 포함할 수 있다. 출력 비디오는 텍스트 파라미터에 따라 렌더링된 입력 텍스트를 특징으로 하는 프레임 이미지의 시퀀스를 가질 수 있다. 출력 비디오는 통신 채팅을 통해 추가 컴퓨팅 장치로 전송될 수 있다.
이제 도면을 참조하여 예시적인 실시예가 기술된다. 도면은 이상적인 실시예의 개략적인 도면이다. 따라서, 본 명세서에서 논의된 예시적인 실시예는 본 명세서에 제시된 특정 설명으로 제한되는 것으로 이해되어서는 안 된다; 오히려, 이러한 예시적인 실시예는 편차를 포함할 수 있고 당업자에게 명백한 바와 같이 여기에 제시된 설명과 다를 수 있다.
도 1은 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법이 구현될 수 있는 예시적인 환경(100)을 도시한다. 환경(100)은 컴퓨팅 장치(105), 사용자(102), 컴퓨팅 장치(110), 사용자(104), 네트워크(120) 및 메신저 서비스 시스템(130)을 포함할 수 있다. 컴퓨팅 장치(105) 및 컴퓨팅 장치(110)는 휴대폰, 스마트 폰, 또는 태블릿 컴퓨터와 같은 모바일 장치를 지칭(refer)할 수 있다. 추가 실시예에서, 컴퓨팅 장치(110)는 개인용 컴퓨터, 랩톱 컴퓨터, 넷북, 셋톱 박스, 텔레비전 장치, 멀티미디어 장치, 개인용 디지털 어시스턴트, 게임 콘솔, 엔터테인먼트 시스템, 인포테인먼트 시스템, 차량 컴퓨터, 또는 임의의 다른 컴퓨팅 장치를 지칭할 수 있다.
컴퓨팅 장치(105) 및 컴퓨터 장치(110)는 네트워크(120)를 통해 메신저 서비스 시스템(130)에 통신 가능하게 연결될 수 있다. 메신저 서비스 시스템(130)은 클라우드-기반 컴퓨팅 리소스(들)로 구현될 수 있다. 메신저 서비스 시스템(130)은 원격 위치에서 이용 가능(available)하고 네트워크(예: 인터넷)를 통해 액세스 가능한 컴퓨팅 리소스(들)(하드웨어 및 소프트웨어)를 포함할 수 있다. 클라우드 기반 컴퓨팅 리소스는 여러 사용자에 의해 공유될 수 있으며 필요에 따라(on demand) 동적으로 재-할당(re-allocate)될 수 있다. 클라우드-기반 컴퓨팅 리소스는 네트워크 스위치 및/또는 라우터와 함께-위치(co-locate)될 수 있는 컴퓨터 서버 모음을 포함하는 하나 이상의 서버 팜/클러스터를 포함할 수 있다.
네트워크(120)는, 예를 들어, 인터넷, 인트라넷, LAN(Local Area Network), PAN(Personal Area Network), WAN(Wide Area Network), VPN(Virtual Private Network), 휴대폰 네트워크(예: GSM(Global System for Mobile)), 통신 네트워크, 및 기타 등등을 포함하는 임의의 유선, 무선 또는 광 네트워크를 포함할 수 있다.
본 개시의 일부 실시예에서, 컴퓨팅 장치(105)는 컴퓨팅 장치(110)의 사용자(104)와 사용자(102) 사이의 통신 채팅을 가능하게 하도록 구성될 수 있다. 통신 채팅 중에, 사용자(102)와 사용자(104)는 텍스트 메시지 및 비디오를 교환할 수 있다. 비디오는 개인화 비디오를 포함할 수 있다. 개인화 비디오는 컴퓨팅 장치(105) 또는 컴퓨팅 장치(110)에 저장된 미리-생성된 비디오 템플릿에 기초하여 생성될 수 있다. 일부 실시예에서, 미리-생성된 비디오 템플릿은 메신저 서비스 시스템(130)에 저장될 수 있고 필요에 따라 컴퓨팅 장치(105) 또는 컴퓨팅 장치(110)에 다운로드될 수 있다.
메신저 서비스 시스템(130)은 비디오 전-처리 시스템(140)을 포함할 수 있다. 시스템(140)은 애니메이션 비디오 또는 라이브 액션 비디오에 기초하여 비디오 템플릿을 생성할 수 있다. 메신저 서비스 시스템(130)은 비디오 템플릿을 저장하기 위한 비디오 템플릿 데이터베이스(145)를 포함할 수 있다. 비디오 템플릿은 컴퓨팅 장치(105) 또는 컴퓨팅 장치(110)로 다운로드될 수 있다.
메신저 서비스 시스템(130)은 또한 사용자 프로필(135)을 저장하도록 구성될 수 있다. 사용자 프로필(135)은 사용자(102)의 얼굴의 이미지, 사용자(104)의 얼굴의 이미지 및 다른 사람의 얼굴의 이미지를 포함할 수 있다. 얼굴의 이미지는 필요에 따라 그리고 허가(permission)에 기초하여 컴퓨팅 장치(105) 또는 컴퓨팅 장치(110)에 다운로드될 수 있다. 추가적으로, 사용자(102)의 얼굴의 이미지는 컴퓨팅 장치(105)를 사용하여 생성될 수 있고 컴퓨팅 장치(105)의 로컬 메모리에 저장될 수 있다. 얼굴의 이미지는 컴퓨팅 장치(105)에 저장된 다른 이미지에 기초하여 생성될 수 있다. 얼굴의 이미지는 미리-생성된 비디오 템플릿에 기초하여 개인화 비디오를 생성하기 위해 컴퓨팅 장치(105)에 의해 추가로 사용될 수 있다. 유사하게, 컴퓨팅 장치(110)는 사용자(104)의 얼굴의 이미지를 생성하기 위해 사용될 수 있다. 사용자(104)의 얼굴의 이미지는 컴퓨팅 장치(110)에서 개인화 비디오를 생성하는 데 사용될 수 있다. 추가 실시예에서, 사용자(102)의 얼굴의 이미지 및 사용자(104)의 얼굴의 이미지는 컴퓨팅 장치(105) 또는 컴퓨팅 장치(110)에서 개인화 비디오를 생성하기 위해 상호적으로 사용될 수 있다.
일부 실시예에서, 미리-생성된 비디오 템플릿은 사전 설정 기본 텍스트 메시지를 포함할 수 있다. 미리-생성된 비디오 템플릿은 미리-생성된 비디오 템플릿에 기초하여 생성된 개인화 비디오에서 사전 설정 기본 텍스트 메시지의 애니메이션에 대한 사전 설정 텍스트 파라미터를 더 포함할 수 있다. 컴퓨터 장치는 사전 설정 텍스트 파라미터에 기초하여 애니메이션된 사전 설정 텍스트 메시지를 특징으로 하는 개인화 비디오를 재생하도록 구성될 수 있다. 개인화 비디오의 재생 동안, 컴퓨팅 장치(105)는 개인화 비디오에 텍스트 메시지를 디스플레이하기 위한 사전 설정 기본 텍스트 메시지 및 파라미터를 변경하는 옵션을 제공할 수 있다. 컴퓨팅 장치(105)는 개인화 비디오가 재생되는 동안 개인화 비디오에서 사전 설정 기본 텍스트 메시지를 동적으로 변경할 수 있다. 사용자(105)는 또한 통신 채팅을 통해 컴퓨팅 장치(110)의 사용자(104)에게 변경된 텍스트 메시지를 가진 개인화 비디오를 전송할 수 있다.
예시적인 실시예에서, 텍스트 메시지의 텍스트는 사용자(104)가 통신 채팅에서 사용자(102)의 언어와 다른 언어를 사용하는 경우 자동으로 번역될 수 있다. 따라서, 통신 채팅에서, 사용자(104)는 사용자(104)가 사용하는 언어로 디스플레이된 텍스트 메시지를 가진 개인화 비디오를 볼 수 있다.
도 2는 개인화 비디오를 위한 방법을 구현하기 위한 컴퓨팅 장치(105)(또는 컴퓨팅 장치(110))의 예시적인 실시예를 나타내는 블록도이다. 도 2에 도시된 예시처럼, 컴퓨팅 장치(110)는 하드웨어 구성 요소 및 소프트웨어 구성 요소 모두를 포함한다. 특히, 컴퓨팅 장치(110)는 디지털 이미지를 획득(acquire)하기 위해 카메라(205) 또는 임의의 다른 이미지-캡처 장치 또는 스캐너를 포함한다. 컴퓨팅 장치(110)는 소프트웨어 구성 요소 및 프로세서-판독 가능(기계-판독 가능) 명령 또는 코드를 저장하기 위한 저장 모듈(215) 및 프로세서 모듈(210)을 더 포함할 수 있고, 프로세서 모듈(210)에 의해 수행될 때 컴퓨팅 장치(105)가 여기에 설명된 바와 같이 맞춤형 텍스트 메시지를 갖는 개인화 비디오의 생성 방법의 적어도 일부 단계를 수행하도록 한다. 컴퓨팅 장치(105)는 그래픽 디스플레이 시스템(230) 및 통신 모듈(240)을 포함할 수 있다. 다른 실시예에서, 컴퓨팅 장치(105)는 추가적이거나 또는 상이한 구성 요소를 포함할 수 있다. 게다가, 컴퓨팅 장치(105)는 도 1에 도시된 것과 유사하거나 또는 동등한 기능을 수행하는 더 적은 구성 요소를 포함할 수 있다.
컴퓨팅 장치(110)는 다른 컴퓨팅 장치(에: 컴퓨팅 장치(110))와 통신 채팅을 가능하게 하는 메신저(220) 및 개인화 비디오 생성 시스템(250)을 더 포함할 수 있다. 시스템(250)은 도 4를 참조하여 아래에서 더 상세히 설명된다. 메신저(220) 및 시스템(250)은 메모리 스토리지(215)에 저장된 소프트웨어 구성 요소 및 프로세서-판독 가능(기계-판독 가능) 명령 또는 코드로 구현될 수 있고, 프로세서 모듈(210)에 의해 수행될 때 컴퓨팅 장치(105)가 여기에 설명된 바와 같이 통신 채팅 및 개인화 비디오의 생성을 제공하기 위한 방법의 적어도 일부 단계를 수행하도록 한다.
일부 실시예에서, 개인화 비디오 생성 시스템(250)은 메신저(220)에 통합(integrate)될 수 있다. 그래픽 디스플레이 시스템(230)을 통해 메신저(220) 및 개인화 비디오를 위한 시스템(250)의 사용자 인터페이스가 제공될 수 있다. 통신 채팅은 통신 모듈(240) 및 네트워크(120)를 통해 활성화될 수 있다. 통신 모듈(240)은 GSM 모듈, WiFi 모듈, 블루투스 ?? 모듈 등을 포함할 수 있다.
도 3은 본 개시의 일부 예시적인 실시예에 따른, 맞춤형 텍스트 메시지를 가진 개인화 된 비디오 생성 프로세스(300)의 단계를 도시하는 흐름도이다. 프로세스(300)는 비디오 템플릿 생성(305), 기본 사전 설정 텍스트 파라미터 생성(310), 구성 파일 생성(315), 사용자 입력 수신(320), 컴퓨팅 장치에서 텍스트 렌더링(325), 및 통신 채팅에서의 통합(330)을 포함할 수 있다. 비디오 템플릿 생성(302) 및 기본 사전 설정 텍스트 파라미터 생성(310)은 메신저 서비스 시스템(130)(도 1에 도시됨)에서 비디오 전-처리 시스템(140)에 의해 수행될 수 있다. 구성 파일 생성(315), 사용자 입력 수신(320), 컴퓨팅 장치에서 텍스트 렌더링(325)은 컴퓨팅 장치(105)(도 1에 도시됨)에서 수행될 수 있다. 구성 파일 생성(315)은 또한 시스템(140)에 의해 수행될 수 있다.
비디오 템플릿 생성(305)은 "템플릿-기반 개인화 비디오 생성 시스템 및 방법"이라는 제목의 2019년 10월 23일자의 미국 특허 출원 번호 16/661,086에 더 자세히 설명된 맞춤형 개인화 비디오(customized personalized video) 생성을 포함할 수 있다. 맞춤형 개인화 비디오는 개인화 비디오가 사용될 수 있는 모든 상황에 적합한 얼굴 재연(face reenactment)이 가능하다.
구성 파일(315)은 입력 텍스트를 비디오 템플릿에 배치(position)하는 것과 연관된 파라미터를 포함한다. 기본 사전 설정 텍스트 파라미터는 예술적 텍스트 애니메이션을 위해 다양한 도구를 사용(employ)할 수 있으며 폰트(기존 폰트가 사용되거나 새 폰트를 만들어질 수 있음), 색상 또는 애니메이션 질감, 그림자 및 아웃라인, 문자 외형 애니메이션, 경로의 텍스트, 동일한 텍스트 복사본, 텍스트 압축, 텍스트 슬라이싱, 문자 외형, 방향성 외형, 무작위 문자 외형, 텍스트 상자 왜곡/스케일링, 그라데이션 채우기, 그림자 및 글로우, 방향성 글로우, 플래시 외형, 원근 그림자, 동적 글로우, 왜곡된 그림자/아웃라인, 텍스트 아웃라인, 컬러 폰트 어셋, 3D 스트로크 효과, 동적 아웃라인, 마스크 처리된 비디오 또는 텍스처, 임의의 문자 부분에 마스크 처리된 효과, 텍스트 상자/문자에 고정된 시각 효과, 3D 텍스트, 흐림, 결함(glitch), 및 기타 등등을 포함한 기타 효과를 설명할 수 있다. 사전 설정 텍스트 파라미터는 고정된 일부 상수 파라미터 및 개인화 비디오에 각각에 대해 나중에 구성되는 일부 템플릿 파라미터를 가질 수 있다.
구성 파일의 생성(315)은 각각의 맞춤형 개인화 비디오에 대한 구성 파일을 생성하는 것을 포함할 수 있다. 구성 파일은 각 프레임에 있는 텍스트의 스케일, 위치, 회전 및 색상; 줄 수 및 최대 길이; 사전 설정 텍스트 파라미터에 사용되는 모든 기능에 대해 선택된 사전 설정 텍스트 파라미터 및 템플릿 파라미터, 및 기타 등등을 설명할 수 있다. 구성 파일은 컴퓨팅 장치 또는 선택적으로, 클라우드에서 생성될 수 있다. 구성 파일의 생성(315)은 또한 시스템(140)에 의해 수행될 수 있다.
컴퓨팅 장치에서의 텍스트 렌더링(325)은 일부 예시적인 실시예에서 5 개의 단계를 포함할 수 있다. 첫 번째 단계는 필요한 경우 텍스트를 여러 줄로 스플릿하는 것이다. 두 번째 단계는 미리 정의된 크기 및 폰트를 사용하여 글리프를 생성하는 것을 포함한다. 텍스트를 모든 프레임에서 요구되는 경계에 맞추기 위해 세 번째 단계에서 글로벌 텍스트 스케일이 선택될 수 있다. 네 번째 단계는 레이어를 글리프, 아웃라인, 및 그림자로 사전-렌더링하는 것을 포함할 수 있다(컴퓨팅 장치에서 수행될 수 있음). 다섯 번째 단계에서는 사전 설정 파라미터에 기초하여 준비된 레이어가 렌더링된다. 렌더링은 OpenGL, Metal, 또는 Vulkan과 같은 그래픽 라이브러리의 도움으로 그래픽 처리 장치(graphics processing unit, GPU)를 사용하여 컴퓨팅 장치에서 수행될 수 있다. 일부 실시예에서, 텍스트로 맞춤형 개인화 비디오의 렌더링은 원격으로, 즉 서버 또는 클라우드에서 수행될 수 있다.
통신 채팅에서의 통합(330)은 입력된 텍스트를 개인화 비디오에 추가하고 개인화 비디오를 인코딩된 비디오로 전송함으로써 개인화 비디오를 통신 채팅에 통합하는 것을 포함할 수 있다. 사용자가 텍스트를 입력하면 스티커 아이콘이 사용자 얼굴 아이콘으로 변경될 수 있고, 사용자가 키보드로 이동하면 주어진 텍스트로 생성된 개인화 비디오의 작은 프리뷰(preview)를 볼 수 있다. 사용자는 전체 화면 모드에서 개인화 비디오를 통신 채팅으로 보낼 수 있다. 개인화 비디오 제작에 사용된 사용자 얼굴의 이미지는 개인화 비디오를 보낸 사용자의 계정에 바인딩(bound)될 수 있으며 사용자 얼굴 이미지에 대한 사용자의 개인 정보 설정(privacy setting)에 의해 허용되는 경우 다른 사용자에 의해 사용될 수 있다. 커뮤니케이션 채팅을 사용할 때 사용자는 또한 채팅중인 다른 사용자의 얼굴로 개인화 비디오를 만들 수도 있다. 또한 사용자가 사용자의 컴퓨팅 장치에 저장되거나 또는 인터넷에서 업로드된 사진 갤러리의 얼굴이 있는 임의의 이미지를 사용하도록 허용할 수도 있다.
사용자는 전송하기 전에 전체 화면 모드에서 텍스트와 함께 맞춤형 개인화 비디오의 생성된 프리뷰를 볼 수 있다. 게다가, 개인화 비디오를 전체 화면으로 시청하면서 텍스트를 변경할 수 있는 툴이 제공될 수 있다. 사용자는 또한 작업 표시줄(action bar)의 텍스트 버튼을 탭하여 선택된 개인화 비디오 프리뷰의 텍스트를 변경할 수 있다. 사용자는 생성된 개인화 비디오를 인코딩된 비디오 또는 그래픽 교환 형식(Graphics Interchange Format, GIF) 파일의 형태로 내보낼(export) 수 있다.
예시적인 실시예에서, 사용자는 텍스트를 추가하고 텍스트의 파라미터를 변경하는 것뿐만 아니라 텍스트 색상, 위치, 및 기타 등과 같은 다른 파라미터의 선택; 효과 및 전환, 영상(footage), 음악, 및 사운드의 추가; 배경의 변경; 개인화 비디오에서 배우의 성별/의상의 변경; 캐릭터의 선택; 예술적 스타일의 변경; 및 기타 등등에 의해 개인화 비디오를 맞춤화할 수 있는 인터페이스에 접근(access)할 수 있다. 사용자는 이전에 생성된 목록에서 또는 사용자의 검색 쿼리(search query)에 대한 응답으로 필요한 정보를 사용자에게 제공하여 텍스트 파라미터를 선택할 수 있다. 일부 실시예에서, 링크, 해시 태그, 또는 지리적 위치(geolocation)가 개인화 비디오에 추가적으로 추가될 수 있다.
도 4는 일부 예시적인 실시예에 따른, 개인화 비디오 생성 시스템(250)의 기능(400)을 보여주는 개략도이다. 시스템(250)은 사용자 얼굴 이미지(405), 비디오 템플릿(410) 및 입력 텍스트(407)를 수신할 수 있다. 비디오 템플릿(410)은 프레임 이미지의 시퀀스를 포함할 수 있다. 비디오 템플릿(410)은 각각의 프레임 이미지에 대해, 얼굴 영역 파라미터, 얼굴 랜드마크 파라미터, 피부 마스크, 눈 파라미터, 입 영역 이미지, 머리 파라미터, 애니메이션 객체 이미지, 및 사전 설정 텍스트 파라미터를 더 포함할 수 있다. 비디오 템플릿(410)은 사운드 트랙을 더 포함할 수 있다.
프레임 이미지의 시퀀스는 라이브 액션 비디오 또는 애니메이션 비디오에 기초하여 생성될 수 있다. 얼굴 영역 파라미터는 프레임 이미지 내에서 얼굴 영역의 위치 좌표(coordinates of a position)를 포함할 수 있다. 얼굴 랜드마크 파라미터는 얼굴 싱크 배우의 얼굴을 특징으로 하는 라이브 액션 비디오에 기초하여 생성될 수 있다. 얼굴 랜드마크 파라미터는 얼굴의 타원(oval) 주변 포인트, 입술 및 코 주변 포인트, 눈썹(eyebrow) 및 눈꺼풀(eyelid) 주변 포인트와 같은 얼굴 싱크 배우의 얼굴 상의 얼굴 랜드마크의 좌표를 포함할 수 있다. 눈 파라미터는 얼굴 싱크 배우의 공막(sclera)에서의 홍채(iris)의 위치 좌표를 포함할 수 있다. 입 영역 이미지는 얼굴 싱크 배우 얼굴의 입 영역의 이미지를 포함할 수 있다. 피부 마스크는 배우의 신체를 특징으로 하는 라이브 비디오 또는 신체의 2D/3D 애니메이션의 피부 영역에 기초하여 생성될 수 있다. 피부 마스크는 배우 신체의 피부 영역을 정의할 수 있다. 예시적인 실시예에서, 피부 마스크 및 얼굴 랜드마크 파라미터는 2 개의 상이한 라이브 액션 비디오에서 캡쳐한 상이한 배우들(여기서는 각각 배우 및 얼굴 싱크 배우로 지칭됨)에 기초하여 생성될 수 있다). 다수의 배우가 요구되지 않으며, 일부 실시예에서 하나의 배우만 사용될 수 있다는 것을 유의해야 한다.
사전 설정 텍스트 파라미터는 텍스트의 애니메이션을 정의할 수 있다. 사전 설정 텍스트 파라미터는 텍스트에 적용되는 시각 효과를 기술할 수 있다. 시각 효과는 다음 중 하나 이상을 포함할 수 있다: 외형의 문자 애니메이션(letter animation of an appearance), 경로를 따라 텍스트를 디스플레이, 텍스트의 사본을 디스플레이, 텍스트의 압축(compression of the text), 텍스트의 슬라이싱, 텍스트의 방향성 외형(directional appearance of the text), 임의의 문자 외형, 텍스트의 왜곡 및 스케일링(distortion and scaling of the text), 텍스트의 그라데이션 채우기(gradient fill of the text), 텍스트에 그림자 및 글로우 추가, 텍스트에 방향성 글로우 추가(adding directional glow to the text), 텍스트의 플래시 외형(a flash appearance of the text), 텍스트에 원근감 있는 그림자 추가(adding a perspective shadow to the text), 텍스트에 동적 글로우 적용(applying a dynamic glow to the text), 텍스트의 왜곡된 그림자 또는 텍스트의 아웃라인 디스플레이(displaying a distorted shadow or an outline of the text), 텍스트 아웃라이닝(outlining the text), 색상이 지정된 폰트 에셋을 텍스트에 적용(applying colored font assets to the text), 밑 기타 등등. 사전 설정 텍스트 파라미터는 또한 애니메이션될 기본 텍스트를 포함할 수 있다. 일부 실시예에서, 텍스트의 현지화(localization)가 수행될 수 있다. 구체적으로, 텍스트의 현지화는 구성 파일에서 각 개인화 비디오에 대한 기본 텍스트의 번역을 추가함으로써 수행될 수 있다.
시스템(250)은, 사용자 얼굴 이미지(405)에 기초하여, 사용자 데이터(435)를 결정할 수 있다. 사용자 데이터는 사용자 얼굴 랜드마크, 사용자 얼굴 마스크, 및 사용자 색상 데이터를 포함할 수 있다.
시스템(250)은 사용자 데이터(435) 및 데이터 시퀀스(420)에 기초하여 개인화 비디오(440)의 프레임(445)을 생성할 수 있다. 개인화 비디오(440)는 사용자의 얼굴 또는 여러 사용자의 얼굴을 특징으로 하는 시청각(audiovisual) 미디어(예: 비디오, 애니메이션, 또는 임의의 다른 유형의 미디어)의 형태로 생성될 수 있다. 개인화 비디오(440)는 미리-생성된 비디오 템플릿에 기초하여 생성될 수 있다. 비디오 템플릿은 비디오 구성 데이터를 포함할 수 있다. 비디오 구성 데이터는 프레임 이미지의 시퀀스, 프레임 이미지에서 얼굴 영역의 위치를 정의하는 얼굴 영역 파라미터의 시퀀스, 및 프레임 이미지에서 얼굴 랜드마크의 위치를 정의하는 얼굴 랜드마크 파라미터의 시퀀스를 포함할 수 있다. 각각의 얼굴 랜드마크 파라미터는 얼굴 싱크 배우의 얼굴 표정에 대응할 수 있다. 미리-생성된 비디오 템플릿은 클라우드 기반 컴퓨팅 리소스에 원격으로 저장될 수 있으며 컴퓨팅 장치(스마트폰과 같은)의 사용자에 의해 다운로드될 수 있다. 컴퓨팅 장치의 사용자는 컴퓨팅 장치에 의해 얼굴 이미지를 캡처하거나 카메라 롤에서 얼굴 이미지를 선택할 수 있다. 컴퓨팅 장치는 얼굴의 이미지 및 미리-생성된 비디오 템플릿 중 하나에 기초하여 개인화 비디오를 추가로 생성할 수 있다. 개인화 비디오의 생성은 프레임 이미지 시퀀스의 프레임 이미지를 수정하는 것을 포함할 수 있다. 프레임 이미지의 수정은 얼굴 랜드마크 파라미터에 대응하는 얼굴 표정을 채택한 소스 얼굴을 특징으로 하는 추가 이미지를 획득하기 위해 소스 얼굴의 이미지를 수정하는 동작 및 프레임 이미지에 대응하는 얼굴 영역 파라미터에 의해 결정된 위치에서 프레임 이미지에 추가 이미지를 삽입하는 동작을 포함할 수 있다. 소스 얼굴의 이미지는 프레임 이미지에 대응하는 얼굴 랜드마크 파라미터에 기초하여 수정될 수 있다. 시스템(250)은 개인화 비디오(440)에 사운드 트랙을 더 추가할 수 있다.
시스템(250)은, 사전 설정 텍스트 파라미터에 기초하여, 구성 파일(460)을 생성할 수 있다. 구성 파일의 생성(315)은 또한 시스템(140)에 의해 수행될 수 있다. 구성 파일(460)은 각각의 프레임 imagesUt에 텍스트를 렌더링하는 것을 정의하는 텍스트 파라미터를 포함할 수 있다. 텍스트 파라미터는 텍스트의 스케일, 프레임 이미지들의 적어도 하나의 프레임 이미지에서 텍스트의 위치, 텍스트의 회전, 텍스트의 색상, 텍스트의 줄 수, 텍스트의 최대 길이, 및 기타 등등을 포함할 수 있다.
시스템(250)은, 구성 파일에 기초하여, 텍스트 파라미터에 따라 렌더링 된 입력 텍스트(407)를 특징으로 하는 프레임 이미지의 시퀀스(445)를 포함하는 출력 비디오를 렌더링할 수 있다. 입력 텍스트를 렌더링하는 동작은 구성 파일에 기초하여 입력 텍스트의 글리프를 생성하는 동작 및 글리프를 포함하는 레이어를 생성하는 동작을 포함할 수 있다.
도 5는 일부 예시적인 실시예에 따른, 사전 설정 텍스트 파라미터에 기초하여 렌더링된 텍스트를 갖는 예시적인 프레임을 도시한다. 도 5는 텍스트가 3D 텍스트(525)인 사전 설정 텍스트를 갖는 프레임(505)을 도시한다. 도 5는 텍스트가 텍스트 아웃라인 글로우(530)로 둘러싸인 사전 설정 텍스트를 갖는 프레임(510)을 추가로 도시한다. 도 5는 또한 텍스트가 여러 색상의 아웃 라인(535)으로 둘러싸인 사전 설정 텍스트를 갖는 프레임(515)을 도시한다. 도 5는 텍스트가 메탈릭 문자(540)로 표시되는 사전 설정 텍스트를 갖는 프레임(520)을 도시한다.
도 6-7은 맞춤형 텍스트 메시지를 가진 개인화 비디오 생성 시스템 및 방법이 구현될 수 있는 통신 채팅의 예시적인 화면을 도시한다. 도 6은 사용자 입력(640) 및 키보드(645)를 갖는 사용자 인터페이스(605)를 도시한다. 도 6은 개인화 비디오의 목록(650)을 갖는 사용자 인터페이스(610)를 더 도시한다. 사용자 인터페이스(615)는 작업 표시줄(635), 선택된 하나의 개인화 비디오(630), 및 텍스트 변경 버튼(655)을 도시한다. 사용자 인터페이스(620)는 개인화 비디오(630)가 선택될 때 사용자가 텍스트 변경 버튼(655)을 누르면 텍스트(640)를 변경할 수 있음을 도시한다.
도 7은 전체 화면 모드에서 개인화 비디오(630)를 보여주는 사용자 인터페이스(705)를 도시한다. 사용자 인터페이스(705)는 사용자가 개인화 비디오(630)의 텍스트(640)를 변경할 수 있도록 하기 위해 텍스트 변경 버튼(720)을 가질 수 있다. 사용자 인터페이스(710)는 개인화 비디오(630)가 전체 화면 모드에 있을 때 키보드(645)를 통해 텍스트(640)를 변경하는 프로세스를 도시한다. 사용자 인터페이스(715)는 텍스트(640)를 가지며 통신 채팅(725)으로 전송된 개인화 비디오(630)를 도시한다.
도 8은 예시적인 실시예에 따른, 배경을 변경하여 맞춤화된 개인화 비디오의 예시적인 프레임을 도시한다. 사용자는 사용자의 이미지 또는 임의의 기타 사진 또는 비디오 자료를 선택하여 개인화 비디오의 배경을 선택할 수 있다. 더 나은 시각적 표현을 위해, 이러한 맞춤형 개인화 비디오의 배경은 투명(transparent)할 수 있다. 도 8은 사용자 이미지(825)에 기초하여 생성된 배경을 갖는 개인화 비디오(820)의 프레임(805)을 도시한다. 사용자 인터페이스(810)는 맞춤형 개인화 비디오의 갤러리(830)이다. 도 8은 사용자 이미지(840)에 기초하여 생성된 배경을 갖는 개인화 비디오(835)의 프레임(815)을 추가로 도시한다. 사용자는 개인화 비디오(820 및 835)에 텍스트를 추가할 수 있다.
도 9는 본 개시의 일부 예시적인 실시예에 따른, 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 방법(900)을 나타내는 흐름도이다. 방법(900)은 컴퓨팅 장치(105)에 의해 수행될 수 있다. 방법(900)은 단계(905)에서 비디오 템플릿을 수신하며 시작할 수 있다. 비디오 템플릿은 프레임 이미지의 시퀀스 및 텍스트의 애니메이션을 정의하는 사전 설정 텍스트 파라미터를 포함할 수 있다. 사전 설정 텍스트 파라미터는 텍스트에 적용되는 시각 효과를 기술할 수 있으며, 텍스트의 폰트, 텍스트의 색상, 및 적어도 하나의 프레임 이미지에서의 텍스트의 위치를 포함할 수 있다. 시각 효과는 외형의 문자 애니메이션(letter animation of an appearance), 경로를 따라 텍스트를 디스플레이, 텍스트의 사본을 디스플레이, 텍스트의 압축(compression of the text), 텍스트의 슬라이싱, 텍스트의 방향성 외형(directional appearance of the text), 임의의 문자 외형, 텍스트의 왜곡 및 스케일링(distortion and scaling of the text), 텍스트의 그라데이션 채우기(gradient fill of the text), 텍스트에 그림자 및 글로우 추가, 텍스트에 방향성 글로우 추가(adding directional glow to the text), 텍스트의 플래시 외형(a flash appearance of the text), 텍스트에 원근감 있는 그림자 추가(adding a perspective shadow to the text), 텍스트에 동적 글로우 적용(applying a dynamic glow to the text), 텍스트의 왜곡된 그림자 또는 텍스트의 아웃라인 디스플레이(displaying a distorted shadow or an outline of the text), 텍스트 아웃라이닝(outlining the text), 색상이 지정된 폰트 에셋을 텍스트에 적용(applying colored font assets to the text), 및 기타 등등을 포함할 수 있다. 단계(910)에서, 방법(900)은 텍스트 및 사전 설정 텍스트 파라미터에 기초하여 구성 파일을 계속하여 생성할 수 있다. 구성 파일은 텍스트를 각각의 프레임 이미지로 렌더링 하는 것을 정의하는 텍스트 파라미터를 포함할 수 있다. 텍스트 파라미터는 텍스트의 스케일, 프레임 이미지들의 적어도 하나의 프레임 이미지에서 텍스트의 위치, 텍스트의 회전, 텍스트의 색상, 텍스트의 줄 수, 텍스트의 최대 길이, 및 기타 등등을 포함할 수 있다. 스케일은 글로벌 스케일에 기초하여 조정될 수 있다. 글로벌 스케일은 시퀀스의 상기 프레임 이미지의 경계(bound)에 입력 텍스트를 맞추도록 결정될 수 있다. 방법(900)은 단계(915)에서 입력 텍스트를 수신하는 동작 및 단계(920)에서 출력 비디오를 렌더링하는 동작을 더 포함할 수 있다. 출력 비디오는 텍스트 파라미터에 따라 렌더링된 입력 텍스트를 특징으로 하는 프레임 이미지의 시퀀스를 포함할 수 있다. 렌더링은 구성 파일에 기초하여 수행될 수 있다. 방법(900)은 단계(925)에서 통신 채팅을 통해 추가 컴퓨팅 장치로 출력 비디오를 계속하여 전송할 수 있다. 렌더링은 구성 파일에 기초하여 입력 텍스트의 글리프를 생성함으로써 그리고 글리프를 포함하는 레이어를 생성함으로써 수행될 수 있다. 렌더링은 입력 텍스트를 줄 수로 스플릿하는 동작을 더 포함할 수 있다. 방법은 출력 비디오를 전송하기 전에 전체 화면 모드에서 출력 비디오를 재생하는 것을 선택적으로 포함할 수 있다. 출력 비디오를 디스플레이하는 동안, 사용자는 입력 텍스트를 추가 입력 텍스트로 변경하는 옵션을 제공받을 수 있으며 그리고 입력 텍스트는 디스플레이된 출력 비디오에서 추가 입력 텍스트로 동적 변경될 수 있다.
도 10은 여기에 설명된 방법을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 시스템(1000)을 도시한다. 컴퓨팅 시스템(1000)은 컴퓨팅 장치(105, 110), 메신저 서비스 시스템(130), 메신저(220), 및 개인화 비디오 생성 시스템(250)과 같은 맥락에서 구현될 수 있다.
도 10에 나타난 것처럼, 컴퓨팅 시스템(1000)의 하드웨어 구성 요소는 하나 이상의 프로세서(1010) 및 메모리(1020)를 포함할 수 있다. 메모리(1020)는, 부분적으로, 프로세서(1010)에 의한 실행을 위한 명령 및 데이터를 저장한다. 메모리(1020)는 시스템(1000)이 동작할 때 실행 가능한 코드를 저장할 수 있다. 시스템(1000)은 선택적인 대용량(mass) 스토리지 장치(1030), 선택적인 휴대용 스토리지 매체 드라이브(들)(1040), 하나 이상의 선택적인 출력 장치(1050), 하나 이상의 선택적인 입력 장치(1060), 선택적인 네트워크 인터페이스(1070), 및 하나 이상의 선택적인 주변 장치(1080)를 추가로 포함할 수 있다. 컴퓨팅 시스템(1000)은 또한 하나 이상의 소프트웨어 구성 요소(1095)(예: 여기에 설명된 개인화 비디오 생성 방법을 구현할 수 있는 것)를 포함할 수 있다.
도 10에 표시된 구성 요소는 단일 버스(1090)을 통해 연결된 것으로 묘사된다. 구성 요소는 하나 이상의 데이터 전송 수단 또는 데이터 네트워크를 통해 연결될 수 있다. 프로세서(1010) 및 메모리(1020)는 로컬 마이크로 프로세서 버스를 통해 연결될 수 있고, 대용량 스토리지(1030), 주변 장치(들)(1080), 휴대용 스토리지(1040), 및 네트워크 인터페이스(1070)는 하나 이상의 입력/출력(I/O) 버스를 통해 연결될 수 있다.
자기 디스크 드라이브, 솔리드 스테이트 디스크 드라이브, 또는 광 디스크 드라이브로 구현될 수 있는 대용량 스토리지 장치(1030)는 프로세서(1010)에 의해 사용되는 데이터 및 명령을 저장하기 위한 비-휘발성 스토리지 장치이다. 대용량 스토리지 장치(1030)는 여기서 설명된 실시예들을 구현하기 위한 시스템 소프트웨어(예: 소프트웨어 구성 요소(1095))를 저장할 수 있다.
휴대용 스토리지 매체 드라이브(들)(1040)는 컴팩트 디스크(CD) 또는 디지털 비디오 디스크(DVD)와 같은 휴대용 비-휘발성 스토리지 매체와 함께 작동하여 컴퓨팅 시스템(1000)에 데이터 및 코드를 입력 및 출력한다. 여기서 설명된 실시예를 구현하기 위한 시스템 소프트웨어(예: 소프트웨어 구성 요소(1095))는 그러한 휴대용 매체에 저장될 수 있고 휴대용 스토리지 매체 드라이브(들)(1040)를 통해 컴퓨팅 시스템(1000)에 입력될 수 있다.
선택적인 입력 장치(1060)는 사용자 인터페이스의 일부를 제공한다. 입력 장치(1060)는 영숫자(alphanumeric) 및 기타 정보를 입력하기 위한 키보드와 같은 영숫자 키패드(alphanumeric keypad), 또는 마우스, 트랙볼(trackball), 스타일러스(stylus), 또는 커서 방향 키(cursor direction key)와 같은 포인팅 장치를 포함할 수 있다. 입력 장치(1060)는 또한 카메라 또는 스캐너를 포함할 수 있다. 추가적으로, 도 10에 도시된 시스템(1000)은 선택적인 출력 장치(1050)를 포함한다. 적합한 출력 장치는 스피커, 프린터, 네트워크 인터페이스, 및 모니터를 포함한다.
네트워크 인터페이스(1070)는, 예를 들어, 인터넷, 인트라넷, LAN, WAN, 휴대폰 네트워크, 블루투스 라디오, 및 IEEE 802.11-기반 무선 주파수 네트워크 등을 포함하는 하나 이상의 유선, 무선, 또는 광 네트워크와 같은 하나 이상의 통신 네트워크를 통해 외부 장치, 외부 컴퓨팅 장치, 서버, 및 네트워크 시스템과 통신하는 데 사용될 수 있다. 네트워크 인터페이스(1070)는 이더넷 카드, 광 트랜시버, 무선 주파수 트랜시버, 또는 정보를 송수신할 수 있는 임의의 다른 유형의 장치와 같은 네트워크 인터페이스 카드일 수 있다. 선택적인 주변 장치(1080)는 컴퓨터 시스템에 추가 기능을 추가하기 위해 임의의 유형의 컴퓨터 지원 장치를 포함할 수 있다.
컴퓨팅 시스템(1000)에 포함된 구성 요소는 넓은 범주의 컴퓨터 구성 요소를 나타내도록 의도된다. 따라서, 컴퓨팅 시스템(1000)은 서버, 개인용 컴퓨터, 핸드-헬드 컴퓨팅 장치, 전화, 모바일 컴퓨팅 장치, 워크 스테이션, 미니 컴퓨터, 메인 프레임 컴퓨터, 네트워크 노드, 또는 임의의 다른 컴퓨팅 장치일 수 있다. 컴퓨팅 시스템(1000)은 또한 상이한 버스 구성, 네트워크화된 플랫폼, 멀티-프로세서 플랫폼, 및 기타 등등을 포함할 수 있다. UNIX, Linux, Windows, Macintosh OS, Palm OS, 및 기타 적합한 운영 체제를 포함하여 다양한 운영 체제(OS)가 사용될 수 있다.
전술한 기능 중 일부는 스토리지 매체(예: 컴퓨터-판독 가능 매체 또는 프로세서-판독 가능 매체)에 저장된 명령어로 구성될 수 있다. 명령어는 프로세서에 의해 검색되고 실행될 수 있다. 스토리지 매체의 예로는 메모리 장치, 테이프, 디스크, 및 기타 등이 있다. 프로세서가 본 발명에 따라 동작하도록 지시하기 위해 명령은 프로세서에 의해 실행될 때 동작한다. 당업자는 명령어, 프로세서(들), 및 스토리지 매체에 익숙하다.
여기서 설명된 처리를 수행하기에 적합한 임의의 하드웨어 플랫폼이 본 발명에 사용하기에 적합하다는 것은 주목할 점이다. 여기서 사용된 용어 "컴퓨터-판독 가능 스토리지 매체(computer-readable storage medium)" 및 "컴퓨터-판독 가능 저장 매체(computer-readable storage media)"는 실행을 위해 프로세서에 명령을 제공하는 데 참여하는 임의의 매체(medium) 또는 매체(media)를 지칭한다. 이러한 매체는 비-휘발성 매체, 휘발성 매체, 및 전송 매체를 포함하지만 이에 제한되지 않는 다양한 형태를 취할 수 있다. 비 휘발성 매체는, 예를 들어, 고정 디스크와 같은 광학 또는 자기 디스크를 포함한다. 휘발성 매체는 시스템 RAM(Random Access Memory)과 같은 동적 메모리를 포함한다. 전송 매체는 동축 케이블, 구리 와이어, 및 광섬유를 포함하며, 무엇보다도, 버스의 일 실시예를 포함하는 와이어를 포함한다. 전송 매체는 또한 무선 주파수(RF) 및 적외선(IR) 데이터 통신 도중에 생성되는 것과 같은, 음향 또는 광파의 형태를 취할 수 있다. 컴퓨터-판독 가능 매체의 일반적인 형태는, 예를 들어, 플로피 디스크, 플렉서블 디스크, 하드 디스크, 자기 테이프, 기타 자기 매체, CD-읽기-전용 메모리(ROM) 디스크, DVD, 기타 광학 매체, 마크 또는 구멍 패턴이 있는 기타 물리적 매체, RAM, PROM, EPROM, EEPROM, 기타 메모리 칩 또는 카트리지, 반송파, 또는 컴퓨터가 읽을 수 있는 기타 매체를 포함한다.
다양한 형태의 컴퓨터-판독 가능 매체는 실행을 위해 하나 이상의 명령의 하나 이상의 시퀀스를 프로세서에 전달하는 데 관련(involve)될 수 있다. 버스는 프로세서가 명령을 검색하고 실행하는 시스템 RAM으로 데이터를 전달한다. 시스템 프로세서에 의해 수신된 명령은 프로세서에 의해 실행되기 전후에 고정 디스크에 선택적으로 저장될 수 있다.
따라서, 맞춤형 텍스트 메시지를 가지는 개인화 비디오의 생성 방법 및 시스템은 설명되었다. 실시예가 특정 예시적인 실시예를 참조하여 설명되었지만, 본 출원의 더 넓은 사상 및 범위를 벗어나지 않고 이러한 예시적인 실시예에 대해 다양한 수정 및 변경이 이루어질 수 있음은 자명할 것이다. 따라서, 명세서 및 도면은 제한적인 의미가 아닌 예시적인 의미로 간주되어야 한다.

Claims (20)

  1. 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 방법에 있어서,
    컴퓨팅 장치에 의해, 프레임 이미지의 시퀀스; 및 사전 설정(preset) 텍스트의 애니메이션을 정의하는 사전 설정 텍스트 파라미터를 포함하는 비디오 템플릿을 수신하는 동작 - 상기 사전 설정 텍스트 파라미터는 상기 사전 설정 텍스트에 적용되는 시각 효과(visual effect)를 기술함(describe) -;
    상기 컴퓨팅 장치에 의해 그리고 상기 사전 설정 텍스트 및 상기 사전 설정 텍스트 파라미터에 기초하여, 구성 파일을 생성하는 동작 - 상기 구성 파일은 각각의 상기 프레임 이미지에 대해 상기 사전 설정 텍스트를 렌더링하는 것을 정의하는 텍스트 파라미터를 포함하고, 상기 텍스트 파라미터는 상기 프레임 이미지의 적어도 하나의 프레임 이미지 내의 상기 사전 설정 텍스트의 위치(position)를 포함함 -;
    상기 컴퓨팅 장치에 의해, 입력 텍스트를 수신하는 동작;
    상기 컴퓨팅 장치에 의해 그리고 상기 구성 파일에 기초하여, 상기 텍스트 파라미터에 따라 상기 위치에서 렌더링된 상기 입력 텍스트를 특징으로 하는 상기 프레임 이미지의 상기 시퀀스를 포함하는 출력 비디오를 렌더링하는 동작;
    상기 출력 비디오를 재생(playing back)하는 동안:
    사용자에게 상기 입력 텍스트의 상기 위치를 변경하도록 하는 제1 옵션 및 상기 입력 텍스트를 신규 입력 텍스트로 대체하도록 하는 제2 옵션을 제공하는 동작과;
    상기 출력 비디오에서, 동적으로 상기 입력 텍스트의 상기 위치를 변경하고, 상기 출력 비디오에서, 상기 입력 텍스트를 상기 신규 입력 텍스트로 대체하는 동작; 및
    상기 컴퓨팅 장치에 의해, 상기 출력 비디오를 통신 채팅을 통해 추가 컴퓨팅 장치로 전송하는 동작
    을 포함하는, 방법.
  2. 제1항에 있어서,
    상기 사전 설정 텍스트 파라미터는,
    상기 사전 설정 텍스트의 폰트, 및 적어도 하나의 상기 프레임 이미지에서 상기 사전 설정 텍스트의 색상
    을 포함하는, 방법.
  3. 제1항에 있어서,
    상기 출력 비디오를 상기 추가 컴퓨팅 장치로 전송하는 동작 이전에,
    상기 입력 텍스트를, 상기 컴퓨팅 장치에서 사용되는 제1 언어에서 상기 추가 컴퓨팅 장치에서 사용되는 제2 언어로 자동 번역하는 동작
    을 더 포함하는, 방법.
  4. 제1항에 있어서,
    상기 시각 효과는,
    다음 중 하나 이상:
    외형의 문자 애니메이션(letter animation of an appearance), 경로를 따라 상기 사전 설정 텍스트를 디스플레이, 상기 사전 설정 텍스트의 사본(copies)을 디스플레이, 상기 사전 설정 텍스트의 압축, 상기 사전 설정 텍스트의 슬라이싱, 상기 사전 설정 텍스트의 방향성 외형(directional appearance), 임의의(randomized) 문자 외형, 상기 사전 설정 텍스트의 왜곡(distortion) 및 스케일링, 상기 사전 설정 텍스트의 그라데이션 채우기(gradient fill), 상기 사전 설정 텍스트에 그림자 및 글로우 추가, 상기 사전 설정 텍스트에 방향성 글로우 추가, 상기 사전 설정 텍스트의 플래시 외형, 상기 사전 설정 텍스트에 원근감 있는(perspective) 그림자 추가, 상기 사전 설정 텍스트에 동적 글로우 적용, 상기 사전 설정 텍스트의 왜곡된 그림자 또는 상기 사전 설정 텍스트의 아웃라인 디스플레이, 상기 사전 설정 텍스트 아웃라이닝, 색상이 지정된 폰트 에셋(colored font asset)을 상기 사전 설정 텍스트에 적용
    을 포함하는, 방법.
  5. 제1항에 있어서,
    상기 텍스트 파라미터는,
    다음 중 하나 이상:
    상기 사전 설정 텍스트의 스케일, 상기 사전 설정 텍스트의 회전, 상기 사전 설정 텍스트의 색상, 상기 사전 설정 텍스트의 줄 수, 상기 사전 설정 텍스트의 최대 길이
    을 포함하는, 방법.
  6. 제5항에 있어서,
    상기 출력 비디오를 렌더링하는 동작은,
    상기 구성 파일에 기초하여 상기 입력 텍스트의 글리프(glyphs)를 생성하는 동작; 및
    상기 글리프를 포함하는 레이어를 생성하는 동작
    을 포함하는, 방법.
  7. 제5항에 있어서,
    상기 출력 비디오를 렌더링하는 동작은,
    상기 입력 텍스트를 상기 줄 수로 스플릿하는 동작
    을 포함하는, 방법.
  8. 제5항에 있어서,
    상기 스케일은 글로벌 스케일에 기초하여 조정되고,
    상기 글로벌 스케일은 상기 시퀀스의 상기 프레임 이미지의 경계에 상기 입력 텍스트를 맞추도록(fit) 결정되는,
    방법.
  9. 제1항에 있어서,
    상기 컴퓨팅 장치에 의해, 상기 출력 비디오를 전송하기 전에, 상기 출력 비디오를 전체 화면(full screen) 모드로 재생하는 동작
    을 더 포함하는, 방법.
  10. 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템에 있어서,
    상기 시스템은, 적어도 하나의 프로세서; 및
    프로세서-실행 가능 코드를 저장하는 메모리
    를 포함하고,
    상기 적어도 하나의 프로세서는 상기 프로세서-실행 가능 코드를 실행할 때 다음과 같은 동작:
    컴퓨팅 장치에 의해, 프레임 이미지의 시퀀스; 및 사전 설정(preset) 텍스트의 애니메이션을 정의하는 사전 설정 텍스트 파라미터를 포함하는 비디오 템플릿을 수신하는 동작 - 상기 사전 설정 텍스트 파라미터는 상기 사전 설정 텍스트에 적용되는 시각 효과(visual effect)를 기술함(describe) -;
    상기 컴퓨팅 장치에 의해 그리고 상기 사전 설정 텍스트 및 상기 사전 설정 텍스트 파라미터에 기초하여, 구성 파일을 생성하는 동작 - 상기 구성 파일은 각각의 상기 프레임 이미지에 대해 상기 사전 설정 텍스트를 렌더링하는 것을 정의하는 텍스트 파라미터를 포함하고, 상기 텍스트 파라미터는 상기 프레임 이미지의 적어도 하나의 프레임 이미지 내의 상기 사전 설정 텍스트의 위치(position)를 포함함 -;
    상기 컴퓨팅 장치에 의해, 입력 텍스트를 수신하는 동작;
    상기 컴퓨팅 장치에 의해 그리고 상기 구성 파일에 기초하여, 상기 텍스트 파라미터에 따라 상기 위치에서 렌더링된 상기 입력 텍스트를 특징으로 하는 상기 프레임 이미지의 상기 시퀀스를 포함하는 출력 비디오를 렌더링하는 동작;
    상기 출력 비디오를 재생하는 동안:
    사용자에게 상기 입력 텍스트의 상기 위치를 변경하도록 하는 제1 옵션 및 상기 입력 텍스트를 신규 입력 텍스트로 대체하도록 하는 제2 옵션을 제공하는 동작과;
    상기 출력 비디오에서, 동적으로 상기 입력 텍스트의 상기 위치를 변경하고, 상기 출력 비디오에서, 상기 입력 텍스트를 상기 신규 입력 텍스트로 대체하는 동작; 및
    상기 컴퓨팅 장치에 의해, 상기 출력 비디오를 통신 채팅을 통해 추가 컴퓨팅 장치로 전송하는 동작
    을 구현하도록 구성된, 시스템.
  11. 제10항에 있어서,
    상기 사전 설정 텍스트 파라미터는,
    상기 사전 설정 텍스트의 폰트, 및 적어도 하나의 상기 프레임 이미지에서 상기 사전 설정 텍스트의 색상
    을 포함하는, 시스템.
  12. 제10항에 있어서,
    상기 적어도 하나의 프로세서는:
    상기 출력 비디오를 상기 추가 컴퓨팅 장치로 전송하는 동작 이전에,
    상기 입력 텍스트를, 상기 컴퓨팅 장치에서 사용되는 제1 언어에서 상기 추가 컴퓨팅 장치에서 사용되는 제2 언어로 자동 번역하는 동작
    을 수행하도록 구성된, 시스템.
  13. 제10항에 있어서,
    상기 시각 효과는,
    다음 중 하나 이상:
    외형의 문자 애니메이션(letter animation of an appearance), 경로를 따라 상기 사전 설정 텍스트를 디스플레이, 상기 사전 설정 텍스트의 사본(copies)을 디스플레이, 상기 사전 설정 텍스트의 압축, 상기 사전 설정 텍스트의 슬라이싱, 상기 사전 설정 텍스트의 방향성 외형(directional appearance), 임의의(randomized) 문자 외형, 상기 사전 설정 텍스트의 왜곡(distortion) 및 스케일링, 상기 사전 설정 텍스트의 그라데이션 채우기(gradient fill), 상기 사전 설정 텍스트에 그림자 및 글로우 추가, 상기 사전 설정 텍스트에 방향성 글로우 추가, 상기 사전 설정 텍스트의 플래시 외형, 상기 사전 설정 텍스트에 원근감 있는(perspective) 그림자 추가, 상기 사전 설정 텍스트에 동적 글로우 적용, 상기 사전 설정 텍스트의 왜곡된 그림자 또는 상기 사전 설정 텍스트의 아웃라인 디스플레이, 상기 사전 설정 텍스트 아웃라이닝, 색상이 지정된 폰트 에셋(colored font asset)을 상기 사전 설정 텍스트에 적용
    을 포함하는, 시스템.
  14. 제10항에 있어서,
    상기 텍스트 파라미터는,
    다음 중 하나 이상:
    상기 사전 설정 텍스트의 스케일, 상기 사전 설정 텍스트의 회전, 상기 사전 설정 텍스트의 색상, 상기 사전 설정 텍스트의 줄 수, 상기 사전 설정 텍스트의 최대 길이
    을 포함하는, 시스템.
  15. 제14항에 있어서,
    상기 출력 비디오를 렌더링하는 동작은,
    상기 구성 파일에 기초하여 상기 입력 텍스트의 글리프(glyphs)를 생성하는 동작; 및
    상기 글리프를 포함하는 레이어를 생성하는 동작
    을 포함하는, 시스템.
  16. 제14항에 있어서,
    상기 출력 비디오를 렌더링하는 동작은,
    상기 입력 텍스트를 상기 줄 수로 스플릿하는 동작
    을 포함하는, 시스템.
  17. 제14항에 있어서,
    상기 스케일은 글로벌 스케일에 기초하여 조정되고,
    상기 글로벌 스케일은 상기 시퀀스의 상기 프레임 이미지의 경계에 상기 입력 텍스트를 맞추도록(fit) 결정되는, 시스템.
  18. 제10항에 있어서,
    상기 적어도 하나의 프로세서는:
    상기 컴퓨팅 장치에 의해, 상기 출력 비디오를 전송하기 전에, 상기 출력 비디오를 전체 화면(full screen) 모드로 재생하는 동작
    을 더 수행하도록 구성된, 시스템.
  19. 명령어가 저장된 비-일시적 프로세서-판독 가능 매체에 있어서,
    하나 이상의 프로세서에 의해 실행될 때, 하나 이상의 프로세서가 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 방법을 구현하도록 하고, 상기 방법은:
    컴퓨팅 장치에 의해, 프레임 이미지의 시퀀스; 및 사전 설정(preset) 텍스트의 애니메이션을 정의하는 사전 설정 텍스트 파라미터를 포함하는 비디오 템플릿을 수신하는 동작 - 상기 사전 설정 텍스트 파라미터는 상기 사전 설정 텍스트에 적용되는 시각 효과(visual effect)를 기술함(describe) -;
    상기 컴퓨팅 장치에 의해 그리고 상기 사전 설정 텍스트 및 상기 사전 설정 텍스트 파라미터에 기초하여, 구성 파일을 생성하는 동작 - 상기 구성 파일은 각각의 상기 프레임 이미지에 대해 상기 사전 설정 텍스트를 렌더링하는 것을 정의하는 텍스트 파라미터를 포함하고, 상기 텍스트 파라미터는 상기 프레임 이미지의 적어도 하나의 프레임 이미지 내의 상기 사전 설정 텍스트의 위치(position)를 포함함 -;
    상기 컴퓨팅 장치에 의해, 입력 텍스트를 수신하는 동작;
    상기 컴퓨팅 장치에 의해 그리고 상기 구성 파일에 기초하여, 상기 텍스트 파라미터에 따라 상기 위치에서 렌더링된 상기 입력 텍스트를 특징으로 하는 상기 프레임 이미지의 상기 시퀀스를 포함하는 출력 비디오를 렌더링하는 동작;
    상기 출력 비디오를 재생하는 동안:
    사용자에게 상기 입력 텍스트의 상기 위치를 변경하도록 하는 제1 옵션 및 상기 입력 텍스트를 신규 입력 텍스트로 대체하도록 하는 제2 옵션을 제공하는 동작과;
    상기 출력 비디오에서, 동적으로 상기 입력 텍스트의 상기 위치를 변경하고, 상기 출력 비디오에서, 상기 입력 텍스트를 상기 신규 입력 텍스트로 대체하는 동작; 및
    상기 컴퓨팅 장치에 의해, 상기 출력 비디오를 통신 채팅을 통해 추가 컴퓨팅 장치로 전송하는 동작
    을 포함하는, 비-일시적 프로세서 판독 가능 매체.


  20. 삭제
KR1020217026003A 2019-01-18 2020-01-18 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법 KR102616013B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020237042823A KR20230173220A (ko) 2019-01-18 2020-01-18 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법
KR1020237042824A KR20230173221A (ko) 2019-01-18 2020-01-18 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법

Applications Claiming Priority (17)

Application Number Priority Date Filing Date Title
US16/251,472 2019-01-18
US16/251,472 US11049310B2 (en) 2019-01-18 2019-01-18 Photorealistic real-time portrait animation
US16/251,436 2019-01-18
US16/251,436 US10789453B2 (en) 2019-01-18 2019-01-18 Face reenactment
US16/434,185 US10839586B1 (en) 2019-06-07 2019-06-07 Single image-based real-time body animation
US16/434,185 2019-06-07
US16/551,756 2019-08-27
US16/551,756 US10776981B1 (en) 2019-06-07 2019-08-27 Entertaining mobile application for animating a single image of a human body and applying effects
US16/594,690 US11089238B2 (en) 2019-01-18 2019-10-07 Personalized videos featuring multiple persons
US16/594,771 US11394888B2 (en) 2019-01-18 2019-10-07 Personalized videos
US16/594,771 2019-10-07
US16/594,690 2019-10-07
US16/661,122 US11308677B2 (en) 2019-01-18 2019-10-23 Generating personalized videos with customized text messages
US16/661,122 2019-10-23
US16/661,086 US11288880B2 (en) 2019-01-18 2019-10-23 Template-based generation of personalized videos
US16/661,086 2019-10-23
PCT/US2020/014226 WO2020150693A1 (en) 2019-01-18 2020-01-18 Systems and methods for generating personalized videos with customized text messages

Related Child Applications (2)

Application Number Title Priority Date Filing Date
KR1020237042823A Division KR20230173220A (ko) 2019-01-18 2020-01-18 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법
KR1020237042824A Division KR20230173221A (ko) 2019-01-18 2020-01-18 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20210119440A KR20210119440A (ko) 2021-10-05
KR102616013B1 true KR102616013B1 (ko) 2023-12-21

Family

ID=71613940

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020247011320A KR20240050468A (ko) 2019-01-18 2020-01-18 템플릿-기반 개인화 비디오 생성 시스템 및 방법
KR1020217026003A KR102616013B1 (ko) 2019-01-18 2020-01-18 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법
KR1020237042824A KR20230173221A (ko) 2019-01-18 2020-01-18 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법
KR1020217026000A KR102658104B1 (ko) 2019-01-18 2020-01-18 템플릿-기반 개인화 비디오 생성 시스템 및 방법
KR1020237042823A KR20230173220A (ko) 2019-01-18 2020-01-18 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020247011320A KR20240050468A (ko) 2019-01-18 2020-01-18 템플릿-기반 개인화 비디오 생성 시스템 및 방법

Family Applications After (3)

Application Number Title Priority Date Filing Date
KR1020237042824A KR20230173221A (ko) 2019-01-18 2020-01-18 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법
KR1020217026000A KR102658104B1 (ko) 2019-01-18 2020-01-18 템플릿-기반 개인화 비디오 생성 시스템 및 방법
KR1020237042823A KR20230173220A (ko) 2019-01-18 2020-01-18 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법

Country Status (4)

Country Link
EP (2) EP3912160A1 (ko)
KR (5) KR20240050468A (ko)
CN (1) CN113302694A (ko)
WO (2) WO2020150693A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11477366B2 (en) 2020-03-31 2022-10-18 Snap Inc. Selfie setup and stock videos creation
CN112215927B (zh) * 2020-09-18 2023-06-23 腾讯科技(深圳)有限公司 人脸视频的合成方法、装置、设备及介质
CN112153475B (zh) 2020-09-25 2022-08-05 北京字跳网络技术有限公司 用于生成文字模式的视频的方法、装置、设备和介质
CN112866798B (zh) * 2020-12-31 2023-05-05 北京字跳网络技术有限公司 视频生成方法、装置、设备及存储介质
US20220254188A1 (en) * 2021-02-11 2022-08-11 Keepsake Tales Inc. Methods for Creating Personalized Items Using Images Associated with a Subject and Related Systems and Computers
EP4315256A1 (en) * 2021-03-31 2024-02-07 Snap Inc. Facial synthesis in augmented reality content for third party applications
KR102345729B1 (ko) * 2021-04-08 2022-01-03 주식회사 닫닫닫 영상 생성 방법 및 장치
US11803996B2 (en) * 2021-07-30 2023-10-31 Lemon Inc. Neural network architecture for face tracking
US12020386B2 (en) 2022-06-23 2024-06-25 Snap Inc. Applying pregenerated virtual experiences in new location

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090016617A1 (en) * 2007-07-13 2009-01-15 Samsung Electronics Co., Ltd. Sender dependent messaging viewer
US20150332088A1 (en) 2014-05-16 2015-11-19 Verizon Patent And Licensing Inc. Generating emoticons based on an image of a face
US20170004646A1 (en) * 2015-07-02 2017-01-05 Kelly Phillipps System, method and computer program product for video output from dynamic content
WO2018102880A1 (en) 2016-12-09 2018-06-14 Frangos Marcus George Systems and methods for replacing faces in videos
US20180190322A1 (en) 2016-12-29 2018-07-05 Google Inc. Video Manipulation With Face Replacement
WO2018184140A1 (en) 2017-04-04 2018-10-11 Intel Corporation Facial image replacement using 3-dimensional modelling techniques

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6512522B1 (en) * 1999-04-15 2003-01-28 Avid Technology, Inc. Animation of three-dimensional characters along a path for motion video sequences
CN101563698A (zh) * 2005-09-16 2009-10-21 富利克索尔股份有限公司 个性化视频
JP2009515375A (ja) * 2005-09-16 2009-04-09 フリクサー,インコーポレーテッド ビデオを個人化する操作
US8265349B2 (en) * 2006-02-07 2012-09-11 Qualcomm Incorporated Intra-mode region-of-interest video object segmentation
CN100448271C (zh) * 2007-08-10 2008-12-31 浙江大学 基于全景图拼接的视频编辑方法
JP5247356B2 (ja) * 2008-10-29 2013-07-24 キヤノン株式会社 情報処理装置およびその制御方法
CN102054287B (zh) * 2009-11-09 2015-05-06 腾讯科技(深圳)有限公司 面部动画视频生成的方法及装置
US8443285B2 (en) * 2010-08-24 2013-05-14 Apple Inc. Visual presentation composition
US9277198B2 (en) * 2012-01-31 2016-03-01 Newblue, Inc. Systems and methods for media personalization using templates
CA2818052A1 (en) * 2013-03-15 2014-09-15 Keith S. Lerner Dynamic customizable personalized label
WO2016070354A1 (en) * 2014-11-05 2016-05-12 Intel Corporation Avatar video apparatus and method
US11450075B2 (en) * 2016-01-27 2022-09-20 Nitin Vats Virtually trying cloths on realistic body model of user
WO2017223530A1 (en) * 2016-06-23 2017-12-28 LoomAi, Inc. Systems and methods for generating computer ready animation models of a human head from captured data images
US10636175B2 (en) 2016-12-22 2020-04-28 Facebook, Inc. Dynamic mask application
KR20230144661A (ko) 2017-05-16 2023-10-16 애플 인크. 이모지 레코딩 및 전송
CN108305309B (zh) * 2018-04-13 2021-07-20 腾讯科技(成都)有限公司 基于立体动画的人脸表情生成方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090016617A1 (en) * 2007-07-13 2009-01-15 Samsung Electronics Co., Ltd. Sender dependent messaging viewer
US20150332088A1 (en) 2014-05-16 2015-11-19 Verizon Patent And Licensing Inc. Generating emoticons based on an image of a face
US20170004646A1 (en) * 2015-07-02 2017-01-05 Kelly Phillipps System, method and computer program product for video output from dynamic content
WO2018102880A1 (en) 2016-12-09 2018-06-14 Frangos Marcus George Systems and methods for replacing faces in videos
US20180190322A1 (en) 2016-12-29 2018-07-05 Google Inc. Video Manipulation With Face Replacement
WO2018184140A1 (en) 2017-04-04 2018-10-11 Intel Corporation Facial image replacement using 3-dimensional modelling techniques

Also Published As

Publication number Publication date
WO2020150693A1 (en) 2020-07-23
KR20210119440A (ko) 2021-10-05
KR102658104B1 (ko) 2024-04-17
EP3912136A1 (en) 2021-11-24
KR20230173220A (ko) 2023-12-26
KR20230173221A (ko) 2023-12-26
CN113302694A (zh) 2021-08-24
KR20240050468A (ko) 2024-04-18
WO2020150692A1 (en) 2020-07-23
EP3912160A1 (en) 2021-11-24
KR20210119439A (ko) 2021-10-05
CN113302659A (zh) 2021-08-24

Similar Documents

Publication Publication Date Title
KR102616013B1 (ko) 맞춤형 텍스트 메시지를 갖는 개인화 비디오 생성 시스템 및 방법
US11288880B2 (en) Template-based generation of personalized videos
KR102658960B1 (ko) 얼굴 재연을 위한 시스템 및 방법
US11308677B2 (en) Generating personalized videos with customized text messages
KR102658961B1 (ko) 다수의 사람들이 등장하는 개인화된 비디오를 제공하기 위한 시스템들 및 방법들
KR102546016B1 (ko) 개인화된 비디오를 제공하기 위한 시스템들 및 방법들
US11688201B2 (en) Global configuration interface for default self-images
CN113302659B (zh) 用于生成具有定制的文本消息的个性化视频的系统和方法

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent