KR102419073B1 - 강화 학습에 기반한 사전 시각화 시스템 및 사전 영상 제작 방법 - Google Patents

강화 학습에 기반한 사전 시각화 시스템 및 사전 영상 제작 방법 Download PDF

Info

Publication number
KR102419073B1
KR102419073B1 KR1020200121382A KR20200121382A KR102419073B1 KR 102419073 B1 KR102419073 B1 KR 102419073B1 KR 1020200121382 A KR1020200121382 A KR 1020200121382A KR 20200121382 A KR20200121382 A KR 20200121382A KR 102419073 B1 KR102419073 B1 KR 102419073B1
Authority
KR
South Korea
Prior art keywords
virtual character
unit
animation
character
visualization system
Prior art date
Application number
KR1020200121382A
Other languages
English (en)
Other versions
KR20220038945A (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
Application filed by 씨제이올리브네트웍스 주식회사 filed Critical 씨제이올리브네트웍스 주식회사
Priority to KR1020200121382A priority Critical patent/KR102419073B1/ko
Publication of KR20220038945A publication Critical patent/KR20220038945A/ko
Application granted granted Critical
Publication of KR102419073B1 publication Critical patent/KR102419073B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Processing Or Creating Images (AREA)

Abstract

개시되는 발명은 적어도 하나 이상의 프로세서와, 상기 프로세서에 의해 처리되는 명령어들이 저장된 메모리를 포함하는 사전 시각화 시스템으로서, 가상 캐릭터가 수행할 동작의 내용을 텍스트로 입력할 수 있는 인터페이스를 제공하는 텍스트 명령어 입력부;와, 상기 가상 캐릭터가 수행할 동작의 애니메이션 클립을 모아 놓은 애니메이션 라이브러리;와, 상기 가상 캐릭터가 상기 텍스트 명령어 입력부를 통해 입력된 동작을 수행할 환경 모델을 제공하는 환경 모델부;와, 상기 가상 캐릭터를 포함하고, 상기 텍스트 명령어 입력부를 통해 입력된 동작에 대응하는 애니메이션 클립의 동작을 상기 환경 모델부가 제공한 환경 모델에서 수행하는 에이전트; 및 상기 가상 캐릭터가 수행한 동작의 결과에 대응하는 보상을 부여하여 상기 가상 캐릭터를 훈련하고, 누적된 보상이 최대치가 되는 동작의 결과를 완료된 학습 모델로 하여 상기 가상 캐릭터에 이식하는 제1 강화 학습 모델부;포함하는 사전 시각화 시스템을 제공한다.

Description

강화 학습에 기반한 사전 시각화 시스템 및 사전 영상 제작 방법{PREVISUALIZATION SYSTEM AND METHOD BASED ON REINFORCRMENT LEARNING TECHNIQUE}
본 발명은 사전 시각화 시스템 및 사전 영상의 제작 방법에 관한 것으로서, 애니메이션 라이브러리에 등록된 다수의 애니메이션 클립을 이용하여 에이전트가 텍스트 기반의 명령어를 수행하고, 수행 결과에 대한 보상을 통해 상태 정보에 부합하는 가장 적절한 행동을 강화 학습 기술을 활용하여 가장 적절한 행동을 학습함으로써 효율적으로 사전 영상을 제작할 수 있는 시스템 및 그 방법에 관한 것이다.
여러 종류의 콘텐츠 중 영화, 드라마, 애니메이션 등(이하, '영화 등'이라 함)의 영상 콘텐츠는 현대 사회에서 가장 시장 규모가 크고 사회 여러 분야에 걸쳐 영향력을 미치는 핵심적인 지위를 차지하고 있다. 특히, 영화 등의 영상 콘텐츠는 대규모 자본과 대단위 인력의 물적, 인적 자원이 투입되는 대형 작품이 속속 제작되고 있으며, 잘 만들어진 영상 콘텐츠는 전세계적으로 막대한 수익을 올리고 있어 이에 대한 투자 규모는 더욱더 커지고 있다.
그렇지만, 규모가 영화 등의 영상 콘텐츠는 대중의 관심을 받는데 실패하면 투자금을 회수하기 어려울 정도의 고위험 고수익의 투자 성격을 가지고 있으므로, 치밀한 기획과 정교한 계획이 요구된다. 영화 등의 영상 콘텐츠를 제작하는 과정 중에 예정된 비용을 상회하는 경우도 종종 발생하는데, 이러한 예산 낭비는 수익성을 악화시키는 핵심 요소이기에 제작 과정에서의 실수나 시행착오를 줄이기 위한 각종 기법이 개발되고 있다.
제작 비용을 절감하기 위한 하나의 방안으로서, 근래에는 사전 시각화 작업이 도입되고 있다. 사전 시각화 작업은 본격적인 제작 이전의 초기 단계에서 배우(애니메이션 캐릭터 포함)의 동선과 연기, 시각 효과에 대해 정확한 계획을 세우고 점검하기 위해, 컴퓨터 상의 가상 캐릭터가 주어진 환경에서 시나리오에 따라 대략적인 동작을 취하도록 하고 이를 시각적으로 확인함으로써 시행착오를 예방하고 줄일 수 있도록 하는 것이다. 이를 테면, 사전 시각화 작업은 콘티를 동영상으로 제작하는 것이라고 볼 수 있다.
예를 들어, 대규모 폭발 장면이 시나리오 상에 있을 경우, 이를 사전 시각화를 통해 사전에 확인함으로써 배우의 동선에 무리가 있는지, 폭발 효과를 충분히 보여주는 카메라 앵글이 어떤 것인지 등을 미리 점검하고, 문제가 있다면 수정할 수 있다. 이를 통해 제작 비용이 많이 소요되는 중요 장면에 대한 재작업의 위험을 현저히 낮출 수 있다.
사전 시각화 작업의 흐름은 대체로 다음과 같이 진행한다.
먼저, 애니메이션 제작에 필요한 애니메이션 클립 세트를 준비한다. 애니메이션 클립은 가상 캐릭터가 수행할 동작의 클립으로서, 예를 들어 걷기, 달리기, 서기, 점프, 춤추기, 오르기, 낙하 등의 각각의 동작에 대한 가상 캐릭터의 부위별 속성이 정의되어 있으며, 이러한 애니메이션 클립이 하나의 세트를 구성한다.
이러한 애니메이션 클립 세트가 준비되면, 환경에 따른 애니메이션 클립의 전환(선택)을 정의하고, 애니메이션 클립 간 전환 조건을 정의하는 코드를 작성해야 한다. 예를 들어, 목표 지점으로 가상 캐릭터를 이동시키는 시나리오에서, 기본은 걷기 동작의 애니메이션 클립을 반복적으로 실행하고, 도중에 낭떠러지를 만난다면 점프 동작의 애니메이션 클립으로 전환하거나, 또는 암벽을 만난다면 기어오르기 동작의 애니메이션 클립으로 전환하는 등의 상태 전환의 관계와 전환 조건의 코드를 일일이 작성해야 한다.
이와 같은 사전 시각화 작업을 수행한다면, 모든 상황에 대해 적절한 클립이 실행될 수 있도록 코드(알고리즘)로 구현해줘야 한다. 즉, 10개의 상황과 10개의 애니메이션 클립이 있다면 상황 별로 클립을 선택하는 기능을 코드로 구현해 놓아야 한다. 이렇기 때문에 시나리오가 변경되거나 새롭게 작성될 때마다 해당 환경에 맞게 애니메이션 클립의 일부 또는 전부를 재작성해야 하는 문제가 있고, 이는 사전 시각화 영상물의 제작 효율성을 떨어뜨린다.
한국공개특허 제10-2020-0069786호 (2020.06.17. 공개)
본 발명의 종래의 애니메이션 제작, 예를 들어 사전 시각화 작업과 같이 가상 캐릭터가 시나리오에 정의된 동작을 수행하도록 하는 작업을 효율적으로 진행할 수 있는 새로운 애니메이션 제작 시스템 및 그 방법을 제공하는데 그 목적이 있다.
본 발명은 적어도 하나 이상의 프로세서와, 상기 프로세서에 의해 처리되는 명령어들이 저장된 메모리를 포함하는 사전 시각화 시스템에 관한 것으로서, 가상 캐릭터가 수행할 동작의 내용을 텍스트로 입력할 수 있는 인터페이스를 제공하는 텍스트 명령어 입력부;와, 상기 가상 캐릭터가 수행할 동작의 애니메이션 클립을 모아 놓은 애니메이션 라이브러리;와, 상기 가상 캐릭터가 상기 텍스트 명령어 입력부를 통해 입력된 동작을 수행할 환경 모델을 제공하는 환경 모델부;와, 상기 가상 캐릭터를 포함하고, 상기 텍스트 명령어 입력부를 통해 입력된 동작에 대응하는 애니메이션 클립의 동작을 상기 환경 모델부가 제공한 환경 모델에서 수행하는 에이전트; 및 상기 가상 캐릭터가 수행한 동작의 결과에 대응하는 보상을 부여하여 상기 가상 캐릭터를 훈련하고, 누적된 보상이 최대치가 되는 동작의 결과를 완료된 학습 모델로 하여 상기 가상 캐릭터에 이식하는 제1 강화 학습 모델부;를 포함한다.
상기 사전 시각화 시스템은, 텍스트 명령어 분석부를 포함하고, 상기 텍스트 명령어 분석부는 상기 텍스트 명령어 입력부를 통해 입력된 동작에 대한 동사와, 상기 동사에 대한 수식어를 핵심 단어로 추출하며, 상기 제1 강화 학습 모델부는 상기 텍스트 명령어 분석부에서 추출한 동사에 대응하는 동작의 애니메이션 클립을 상기 애니메이션 라이브러리에서 선택한다.
그리고, 상기 사전 시각화 시스템은, 환경 모델 분석부를 포함하고, 상기 환경 모델 분석부는 상기 환경 모델부가 제공한 환경 모델에 대해 상기 선택된 애니메이션 클립의 동작을 수행하는데 영향을 미치는 환경 정보를 추출한다.
그리고, 상기 제1 강화 학습 모델부는, 상기 가상 캐릭터가 수행한 동작의 결과에 대응하여 양의 보상 또는 음의 보상을 부여하는 강화 학습을 수행하고, 상기 보상의 누적 결과에 근거하여 상기 가상 캐릭터에 대한 정책을 수립한다.
본 발명의 일 실시형태에 따라서는, 상기 애니메이션 라이브러리는 상기 가상 캐릭터가 수행할 동작의 애니메이션 클립을 카테고리별로 분류해 놓을 수 있다.
이러한 경우, 상기 제1 강화 학습 모델부는, 상기 가상 캐릭터가 특정 카테고리의 동작을 수행하였을 때 상기 에이전트에게 부여한 보상의 누적치가 감소하는 경우, 상기 가상 캐릭터가 수행할 동작을 다른 카테고리의 애니메이션 클립 중에서 선택할 수 있다.
그리고, 본 발명의 사전 시각화 시스템은, 상기 가상 캐릭터가 수행할 동작별 가상 캐릭터 신체 부위 속성값 정보가 저장된 행동별 신체 속성 정보 라이브러리; 및 상기 행동별 신체 속성 정보 라이브러리에 저장된 신체 부위의 속성값을 상기 가상 캐릭터가 수행하도록 하고, 상기 가상 캐릭터가 수행한 동작의 결과에 대응하는 보상을 부여하여 상기 가상 캐릭터를 훈련하며, 상기 보상의 누적 결과에 근거하여 상기 가상 캐릭터에 대한 정책을 수립하는 제2 강화 학습 모델부;를 더 포함할 수 있다.
상기 제2 강화 학습 모델부의 정책에 따라 행동하는 상기 가상 캐릭터의 행동장면을 녹화부가 녹화하여 상기 애니메이션 라이브러리에 새로운 애니메이션 클립으로 저장할 수 있다.
그리고, 본 발명의 상기 사전 시각화 시스템은 녹화부를 포함하고, 상기 녹화부는 상기 에이전트가 상기 환경 모델에서 수행하는 일련의 애니메이션 클립의 동작을 사전 영상으로 기록한다.
그리고, 상기 텍스트 명령어 입력부에 입력되는 텍스트 기반의 명령어는 복수의 문장으로 이루어진 시나리오로서 입력될 수 있다.
한편, 본 발명은 컴퓨팅 장치의 프로세서에 의해 수행될 수 있는 사전 영상 제작 방법으로서, 텍스트 명령어 입력부를 통해 가상 캐릭터인 에이전트가 수행할 동작의 내용을 텍스트로 입력받는 단계(S100);와, 상기 가상 캐릭터가 상기 텍스트 명령어 입력부를 통해 입력된 동작을 수행할 환경 모델을 제공받는 단계(S200);와, 텍스트 명령어 분석부가 상기 텍스트 명령어 입력부를 통해 입력된 동작에 대한 동사와, 상기 동사에 대한 수식어를 핵심 단어로 추출하여 입력된 명령어를 수행하기 위한 명령 수행 목표를 인지하는 단계(S300);와, 환경 모델 분석부가 상기 캐릭터가 존재하는 환경을 분석하는 단계(S400);와, 영상 처리부가 강화 학습 모델부에 의해 생성된 정책을 토대로 상기 S300 단계 및 S400 단계의 분석 결과를 받아 적합한 애니메이션 클립 또는 신체 속성 정보 값을 선택하는 단계(S500); 및 상기 환경 내에 위치한 상기 캐릭터에 대해 상기 S500 단계에 의해 선택된 애니메이션 클립 또는 신체 속성 정보 값을 이식하는 단계(S600);를 포함하는 사전 영상 제작 방법을 제공한다.
여기서, 상기 캐릭터가 명령 수행을 하기 위해 동작을 함으로써 상기 캐릭터가 위치한 환경이 지속적으로 바뀌었을 때, 상기 영상 처리부는 명령 수행을 마무리 할 때까지 상기 S300 단계 내지 S600 단계를 지속적으로 수행할 수 있다.
그리고, 상기 S600 단계 이후에, 녹화부가 상기 캐릭터가 상기 텍스트 명령어 입력부를 통해 입력된 명령을 주어진 환경 모델에서 수행하는 과정을 영상 기록으로 녹화하는 단계(S700);를 더 포함할 수 있다.
그리고, 상기 텍스트 명령어 입력부에 입력되는 텍스트 기반의 동작 명령은 복수의 문장으로 이루어진 시나리오로서 입력될 수 있다.
상기와 같은 구성의 본 발명은 가상 캐릭터가 수행할 동작의 내용을 텍스트로 입력할 수 있고, 이에 따라 종래에 사전 영상을 제작할 때 애니메이션 클립의 전환을 일일이 코드로 정의하는 번거로움에서 벗어날 수 있고, 코드의 정의를 변경하는 작업도 더욱 간편해지며, 명령의 내용이 직관적이라는 점에서 유리하다.
또한, 본 발명은 가상 캐릭터에 대해 강화 학습을 수행하는 강화 학습 모델부를 구비함으로써 상황에 따른 애니메이션 클립 선택에 대한 코드를 작성하지 않고도, 가상 캐릭터(에이전트)가 훈련을 통해 자동으로 알맞은 애니메이션 클립 또는 행동별 신체 속성 정보를 선택할 수 있고, 결국 훈련된 에이전트에 대해 텍스트로 명령을 내리는 단순화된 작업으로 사전 영상의 연출과 제작이 가능해진다.
특히, 본 발명은 텍스트 기반의 명령어를 순차적으로 연결하여 스토리가 있는 하나의 시나리오로 완성하여 사전 영상으로 제작할 수 있고, 또한 시나리오가 변경, 수정되더라도 예전처럼 해당 환경에 맞게 사전 영상의 일부 또는 전부를 재작성해야 하는 문제가 사리지게 되며, 이를 통해 본 발명은 영상 콘텐츠 제작의 효율성, 시간, 비용 측면에서 현저한 향상을 가져온다.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다
도 1은 본 발명의 사전 시각화 시스템의 전체적인 구성을 도시한 도면.
도 2는 도 1의 사전 시각화 시스템을 모식적으로 도시한 도면.
도 3은 본 발명의 사전 시각화 시스템이 수행하는 강화 학습의 일례를 도시한 도면.
도 4는 본 발명의 사전 시각화 시스템을 이용한 사전 영상 제작 방법의 전체적인 흐름을 도시한 도면.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
본 명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
그리고, 본 명세서에서 "컴퓨팅 장치" 또는 "시스템"이라 함은, 예를 들어, 프로세서, 컴퓨터 또는 다중 프로세서나 컴퓨터를 포함하여 데이터를 처리하기 위한 모든 기구, 장치 및 기계를 포함한다. 처리 시스템은, 하드웨어에 부가하여, 예를 들어, 프로세서 펌웨어를 구성하는 코드, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 또는 이들 중 둘 이상의 조합 등, 컴퓨터 프로그램에 대한 실행 환경을 형성하는 모든 요소를 포함할 수 있다. 프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트 또는 코드 등으로 알려진 컴퓨터 프로그램은 컴파일 되거나 해석된 언어 또는 선험적, 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴의 형태는 물론, 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 더 포함하는 다양한 형태로 구현될 수 있다.
도 1은 본 발명의 사전 시각화 시스템(10)의 전체적인 구성을 도시한 도면으로서, 도시된 발명은 적어도 하나 이상의 프로세서와, 상기 프로세서에 의해 처리되는 명령어들이 저장된 메모리를 포함하는 사전 시각화 시스템(10)으로 구성되어 있다.
도 1을 참조하면, 본 발명의 사전 시각화 시스템(10)은, 크게 나누어 볼 때, 강화 학습 모델부(100), 영상 제작부(200), 애니메이션 라이브러리(300), 행동(action)별 신체 속성 정보 라이브러리(400)를 포함한다.
강화 학습 모델부(100)는 에이전트(500)(agent)로 하여금 두 가지 강화 학습을 수행하도록 함으로써, 에이전트(500)의 가상 캐릭터가 훈련(training)을 통해 스스로 동작하는 과정에 대한 정책(policy)을 수립하는 구성요소이다.
강화 학습 모델부(100)에 의해 생성된 정책은 추후 사전 영상 제작을 위한 텍스트 명령어가 입력되었을 때, 캐릭터가 그 명령어의 목표를 실행하기 위한 최적의 행동(action)을 할 수 있게 하는 추론(inference) 과정에서 사용될 수 있다.
강화 학습(Reinforcement Learning)은 컴퓨터가 주어진 상태(state)에 대해 최적의 행동(action)을 선택하도록 학습하는 기계 학습(Machine Learning) 중의 한 방법이다.
예를 들어, 체스를 두는 컴퓨터 프로그램을 학습시킨다면, 경우의 수가 너무 많고(약 35,100) 정해진 하나의 답이 없어 입력(주어진 상태)과 출력(가장 적절한 행동)에 대한 학습 훈련 데이터를 제공하기가 쉽지 않다. 하지만 체스 게임이 종료되면 그 직전에 둔 일련의 수(手, 행동)들이 좋았는지 나빴는지를 학습 알고리즘에게 알려주는 것은 가능하다. 이렇게 행동의 좋고 나쁜 정도를 학습 알고리즘에게 알려 주는 것을 보상 또는 강화(reinforcement)라고 하며, 이러한 정보를 이용하는 기계 학습을 강화 학습(또는 강화형 기계 학습)이라고 한다.
강화 학습의 대상이 되는 컴퓨터 프로그램을 에이전트(agent)라고도 하며, 에이전트는 주어진 상태에서 자신이 취할 행동을 표현하는 정책(policy)을 수립한다. 에이전트가 최대의 보상을 받을 수 있는 정책을 수립하도록 학습시키는 것이 강화 학습의 목표이다.
이러한 강화 학습을 가상 캐릭터인 에이전트(500)에 대해 수행하기 위해, 강화 학습 모델부(500)는 가상 캐릭터가 수행한 동작의 결과에 대응하는 보상을 부여하며 가상 캐릭터를 훈련하고, 누적된 보상이 최대치가 되는 동작의 결과를 완료된 학습 모델로 하여 가상 캐릭터에 이식하게 된다.
한편, 강화 학습 모델부(100)는 제1 강화 학습 모델부(110) 및 제2 강화 학습 모델부(120)를 포함할 수 있다.
제1 강화 학습 모델부(110)는 캐릭터를 학습시키기 위한 텍스트 명령어가 들어오면, 명령어를 분석하여 그 환경 내에서 명령어에 대응되는 최적의 행동이 무엇인지, 그 최적의 행동에 부합하는 적절한 애니메이션 클립은 무엇인지를 학습한다.
구체적으로 제1 강화 학습 모델부(110)는 특정 환경에 위치한 가상 캐릭터가 학습을 위한 텍스트 명령어를 입력 받으면, 그 특정 환경에서 애니메이션 클립을 캐릭터에 하나씩 적용시켜 다양한 형태로 훈련하면서 보상의 누적 결과를 받고, 그 누적결과에 근거하여 정책을 수립하는 것이다.
예를 들어, 가상 캐릭터 훈련(training) 중 캐릭터가 눈이 쌓인 산 정상에 위치하는 환경에 놓일 수 있고, "산 아래로 내려간다"라는 텍스트 명령어를 입력받을 수 있다. 이 경우 가상 캐릭터는 환경정보(눈이 쌓인 산) 및 학습을 위한 텍스트 명령어("산, 아래, 내려간다")를 분석하고, 다수의 애니메이션 클립을 가상 캐릭터에 하나씩 적용시켜 가며 훈련하고 보상의 누적 결과를 토대로 정책을 수립할 수 있다.
예를 들어, 캐릭터가 특정 동작을 하면서 그 캐릭터를 기준으로 아래로 내려가면 보상을 더 해주고, 반대로 캐릭터를 기준으로 양 옆 또는 위쪽으로 이동하면 보상을 감소시킴으로써 에이전트(500)가 "아래" 키워드가 입력되었을 때는 그 캐릭터를 기준으로 낮은 곳으로 가게 하는 것이라는 것을 학습을 통해 인지되도록 하는 것이다. 이러한 지속적인 학습이 모여 하나의 완성된 정책으로 만들어 지는 것이다.
한편, 캐릭터가 산 아래로 내려감에 따라 산의 환경이 변할 수 있는데, 애니메이션 라이브러리(300)에 저장된 다수의 애니메이션 클립(캐릭터가 특정 행동을 하는 클립: 예컨대, 걷기 애니메이션 클립, 뛰기 애니메이션 클립, 점프 애니메이션 클립 등)을 캐릭터에 순차적으로 적용시켜 행동하면, 각각의 행동마다 보상을 받게 되고 그 보상결과를 토대로 에이전트(500)는 눈이 쌓인 산이라는 환경에서 그 캐릭터가 취할 행동에 대한 정책을 수립하는 것이다. 즉, 캐릭터가 산에서 걸어서 내려오는 경우, 뛰면서 내려오는 경우, 점프를 하면서 내려오는 경우에 대해 훈련을 하면 이에 대해 좋고 나쁜 정도를 보상으로써 알려주고(reinforcement), 이를 토대로 캐릭터는 자신이 취할 행동을 표현하는 정책을 수립하는 것이다.
즉, 제1 강화 학습 모델부(110)는 다수의 가상 환경에서 훈련을 위한 다수의 텍스트 명령에 대한 행동을 저장된 다수의 애니메이션 클립을 이용하여 수행해가면서 강화학습을 하고, 주어진 환경에서 그 텍스트 명령에 캐릭터가 취할 행동을 표현하는 정책을 수립하는 것이다.
정리하면, 제1 강화 학습 모델부(110)에서 환경 정보 및 학습을 위한 텍스트 명령어는 보상에 영향을 주는 인자로서 작용하며 수식어에 부합하는 행동에 대해 더 긍정적인 보상을 주는 방향으로 학습을 할 수 있다. 예를 들어 "앞으로 10초 동안 뛰어갑니다"라는 명령어에서 동사는 "뛰다"로 볼 수 있으며, 애니메이션 클립에서 뛰어 가는 동작을 선택하더라도 그 캐릭터가 위치한 환경에서 "앞으로", "10초", "(뛰어)가다"에 더 부합하는 행동을 했을 때 제1 강화 학습 모델부(110)가 더 긍정적인 보상을 줌으로써 추후 캐릭터는 해당 수식어에 대응하는 바람직한 행동을 할 수 있다.
한편, 제2 강화 학습 모델부(120)는 캐릭터를 학습시키기 위한 텍스트 명령어가 들어오면 캐릭터가 존재하는 그 환경 내에서 다수의 행동을 훈련(training)하면서 명령어 즉, 수행목표를 달성하기 위한 최적의 행동이 무엇인지를 학습하는데, 학습에 사용하는 정보를 행동별 신체 속성 정보 라이브러리(400)에서 제공받는다는데 특징이 있다.
구체적으로 제2 강화 학습 모델부(120)는 "사다리 타기"라는 명령어가 들어오면 캐릭터가 다양한 행동들을 순차적으로 해보면서 각 행동들의 좋고 나쁜 정도를 학습한다. 캐릭터가 특정 행동을 취하기 위해서는 그 캐릭터의 특정 신체 부위가 움직일 것이고, 본 발명은 특정 행동을 할 때 캐릭터 각 신체 부위의 속성 값을 가지고 있다.
즉, 제2 강화 학습 모델부(120)는 특정 환경에서 어떤 명령이 들어오면 그 환경 내에서 다수의 행동들을 순차적으로 행하면서 어떤 행동을 취할 것인지, 그 행동을 하기 위한 신체 부위의 포지션의 속성값이 무엇인지에 대해 학습하는 것이다.
이처럼, 추후 사전제작을 위한 텍스트 명령어가 입력되었는데 그 명령어에 대응되는 애니메이션 클립이 없는 경우에는, 제2 강화 학습 모델부(120)를 통해 학습된 정책에 따라 캐릭터가 최적의 행동을 할 수 있다. 즉, 캐릭터가 명령어의 목적을 달성하기 위한 행동 패턴에 대한 신체 부위 포지션 속성값에 근거하여 행동하는 것이다.
나아가, 제2 강화 학습 모델부(120)의 정책에 따라 캐릭터가 행동할 때 그 행동장면을 녹화하여 새로운 애니메이션 클립을 생성할 수도 있다. 구체적으로 캐릭터가 특정 동작과정을 수행하는 영상만을 잘라내어 애니메이션 클립으로 생성하고, 이를 새로운 애니메이션 클립으로 에니메이션 라이브러리(300)에 저장할 수 있는 것이다. 상술한 바에 따르면 상황별 애니메이션 클립이 보강되면서 더욱 수월한 사전영상 제작이 가능하게 될 수 있다.
영상 제작부(200)는 텍스트 명령어 입력부(210), 텍스트 명령어 분석부(220), 환경 모델부(230), 환경 모델 분석부(240), 영상 처리부(250), 녹화부(260)를 포함한다.
텍스트 명령어 입력부(210)는 가상 캐릭터가 수행할 동작의 내용을 텍스트로 입력할 수 있는 인터페이스를 제공한다. 본 발명의 일 특징 중의 하나로 텍스트 명령어 입력부(210)를 들 수 있으며, 사용자는 간단한 문장으로 가상 캐릭터가 수행해야 할 동작의 내용을 텍스트 명령어 입력부(210)에 입력하면 된다.
이에 따라, 종래에 애니메이션을 제작할 때 애니메이션 클립의 전환(선택)을 일일이 코드로 정의하는 번거로움에서 벗어날 수 있고, 코드의 정의를 변경하는 작업도 더욱 간편해지며, 명령의 내용이 직관적이라는 점에서도 유리하다. 도 2에는 텍스트로서 "앞으로 10초동안 뛰어갑니다"라는 명령을 입력한 예를 보여주고 있다.
또한, 도 2에 예시된 텍스트 기반의 명령어는 단순한 한 문장으로 되어 있지만, 영상 콘텐츠의 어떤 하나의 장면(scene)에 대한 시나리오로서 여러 개의 문장이 하나의 명령 단위로서 입력되는 것도 가능하다.
상기 텍스트 명령어 입력부(210)는, 본 발명의 에이전트(500)와 유무선 통신망을 통해 연결된 사용자 단말기일 수도 있으며, 이 경우 사용자 단말기는 본 발명의 시스템(또는 에이전트)에 연결될 수 있는 프로그램(또는 어플리케이션)이 설치된 단말기일 수 있다.
텍스트 명령어 분석부(220)는 적절한 애니메이션 클립을 선택하거나, 또는 적절한 캐릭터 행동의 신체 속성 정보를 선택하기 위한 전처리 과정으로서, 문장 형식의 명령어를 해석하는 역할을 한다.
예를 들어, 텍스트 명령어 분석부(220)는, 텍스트 명령어 입력부(210)를 통해 입력된 동작에 대한 동사와, 동사에 대한 수식어를 핵심 단어로 추출하여 가상 캐릭터가 그 텍스트 명령어 분석내용에 가장 적합한 애니메이션 클립을 선택하거나 적합한 캐릭터의 행동 신체 속성정보를 선택할 수 있도록 분석을 진행하는 것이다.
환경 모델부(230)는 에이전트(500)가 텍스트 명령어 입력부(210)를 통해 입력된 동작을 수행할 환경 모델(공간 정보)을 제공한다. 예를 들어, 환경 모델에는 도로, 강, 바위나 벼랑, 건물 등의 장애물, 길의 경사도나 미끄러움 등과 같은 에이전트(500)인 가상 캐릭터가 텍스트 명령어 입력부(210)를 통해 주어진 특정 행동을 취해야 하는 환경 정보가 포함되어 있다.
환경 모델 분석부(240)는 환경 모델부(230)가 제공한 환경 모델에 대해 선택된 애니메이션 클립의 동작을 수행하는데 영향을 미치는 환경 정보를 추출한다. 유사한 환경 모델에서 동일한 행동을 수행하더라도, 환경 정보의 차이에 따라 그 결과는 상당히 달라질 수 있다.
예를 들어, 같은 도로라도 건조한 표면 상태와 서리가 내려 미끄러운 표면 상태의 환경 조건이 다르다면, 같은 걷기 동작을 취했을 때 미끄러운 상태에서는 넘어지거나 목표지점에 늦게 도착하면서 부정적인 보상을 받게 될 것이다. 이럴 경우 미끄러지며 걷기의 애니메이션 클립을 선택하여 긍정적인 보상을 받으면, 추출된 환경 정보의 미끄러운 표면 상태라는 조건과 미끄러지며 걷기의 행동을 연결하여 학습하고, 이후에 에이전트(500)는 미끄러운 바닥에서는 미끄러지며 걷기의 애니메이션 클립을 수행하게 되는 것이다.
따라서, 환경 모델부(300)가 제공하는 환경 모델이 정교하고 복잡한 조건을 가지는 경우를 대비하여, 본 발명은 주어진 환경을 세밀히 분석할 수 있는 환경 모델 분석부(240)를 구비하는 것이 바람직할 수 있다.
영상 처리부(250)는 텍스트 명령어 분석부(220)의 분석결과 즉, 캐릭터의 수행목표 및 환경 모델부(230)에 의해 제공받은 환경 정보에 근거하여 캐릭터가 주어진 환경 내에서 수행목표를 달성하기 위한 최적의 행동을 할 수 있도록 추론된 이후에, 그 추론에 대응되는 에니메이션 클립 또는 액션별 신체 속성정보를 캐릭터에 이식하여 해당 환경 내에서 캐릭터가 동작하는 영상을 작성한다.
녹화부(260)는 영상 처리부(250)에 의해 캐릭터가 시나리오로서 주어지는 일련의 텍스트 기반의 명령을 영상으로 수행하면, 가상 캐릭터가 시나리오의 내용에 맞추어 행동을 하고 그 행동을 녹화하는 것이다. 녹화부(260)를 통해 영상 기록으로 남기면 이것이 사전 영상이 되며, 녹화된 사전영상을 검토함으로써 영상 컨텐츠 제작 시의 시행착오를 효과적으로 줄일 수 있다.
애니메이션 라이브러리(300)는 가상 캐릭터로 구성된 에이전트(500)가 수행할 동작의 애니메이션 클립을 한데 모아 놓은 클립 저장소이다. 애니메이션 라이브러리(300)에는 에이전트(500)가 수행할 동작의 애니메이션 클립으로서, 예컨대 걷기, 달리기, 서기, 점프, 오르기, 내려가기 등의 각각의 동작에 대한 클립이 마련되어 있다. 애니메이션 클립은 가상 캐릭터의 부위별 속성의 정의에 따라 실제로 행동하는 동작을 영상으로 담고 있으며, 이러한 속성 정의는 어떤 특정한 행동 패턴을 나타낸다. 즉, 가상 캐릭터에 대해 어떤 애니메이션 클립을 적용하면, 해당 가상 캐릭터의 각 부위는 애니메이션 클립에 정의된 속성을 수행하게 되고, 이에 따라 가상 캐릭터는 적용된 애니메이션 클립의 동작을 따라하는 시각적 결과로 나타나게 된다.
애니메이션 라이브러리(300)는 가상 캐릭터가 수행할 동작의 애니메이션 클립을 카테고리별로 분류해 놓는 것이 바람직할 수 있다. 이는 전술한 바와 같이, 텍스트 명령어 분석부(220)에서 추출한 동사에 대응하는 동작의 애니메이션 클립을 쉽게 선택할 수 있도록 하기 위함이다.
나아가 분류된 카테고리 사이의 거리(상관도)도 사전에 정의해 놓는 것이 바람직할 수 있다. 예를 들어, 걷기와 뛰기는 유사한 동작으로서 상관도가 높고(상대적인 유사도 거리가 가깝고), 걷기에 대해 오르기는 이보다는 상관도가 낮은 카테고리로 정의할 수 있다, 이처럼 분류된 카테고리 사이의 상대적인 거리를 정의해 놓으면, 텍스트 명령어 분석부(220)에서 추출한 동사에 정확히 대응하는 카테고리가 없을 경우 최근접의 카테고리를 선택하도록 함으로써 학습 시간을 단축하는데 도움을 줄 수 있다.
행동별 신체 속성 정보 라이브러리(400)는 가상 캐릭터가 수행할 동작별 가상 캐릭터 신체 부위 속성값 정보가 저장된 저장소이다. 이러한 신체 부위 속성값 정보는 가상 캐릭터 자체가 가지고 있는 속성이고, 강화학습을 통해 직접 해당 속성값을 직접 제어하게 되지만, 학습 완료된 결과가 행동별 신체 속성 정보 라이브러리(400)에 저장되는 것이다. 즉, 행동별 신체 속성 정보 라이브러리(400)에 저장되는 정보는 강화학습을 통해 학습된 신체 속성정보들이 라이브러리화 되는 것이다.
이때, 캐릭터 행동별 신체 속성 정보는 애니메이션 클립에 없는 동작들에 대한 속성값 정보가 저장되는 것이 바람직하다. 캐릭터에 해당 동작에 대한 신체 부위 속성값 정보가 이식되면 캐릭터는 그 동작을 수행하여 시각적 결과로 나타나게 된다.
에이전트(500)는 본래 강화 학습에서 학습의 대상이 되는 컴퓨터 프로그램에 대해 일반적으로 지칭되는 용어로 사용되는 것인데, 본 발명에서는 사전 시각화에 사용되는 가상 캐릭터가 곧 강화 학습의 에이전트(500)가 된다. 따라서, 본 발명의 명세서에서는 에이전트(500)와 가상 캐릭터는 동등한 의미를 가지며, 이런 이유로 에이전트(500)와 가상 캐릭터는 설명하고자 하는 내용에 따라 적절히 혼용될 수 있다.
사전영상 제작을 위한 텍스트 명령어 및 환경 모델부가 제공한 환경을 고려하여 선택된 애니메이션 클립 또는 신체 부위 속성값 정보를 이용하여 가상 캐릭터로서 수행하게 된다.
도 3은 본 발명에서, 에이전트(500)와 강화 학습 모델부(100)가 상호 작용을 하면서 주어진 상태에 대해 학습을 완료하는 과정을 하나의 예로서 보여준다.
예시된 상황은, 텍스트 명령어 입력부(210)로부터 가상 캐릭터의 강화학습 훈련을 위해 "목표지점(G)으로 이동하라"는 내용이 입력되고, 애니메이션 라이브러리(300)에는 걷기와 점프의 두 가지 애니메이션 클립이 준비되어 있는 상황을 예로 들어 설명한다.
①의 상황은, 입력된 명령인 목표지점(G)으로의 이동을 수행하기 위해, 에이전트(500)가 놓여진 환경을 분석하고, 애니메이션 라이브러리(300)에서 걷기의 애니메이션 클립을 선택하고 반복 수행하는 것이다. 만일 가상 캐릭터가 목표물과 가까워지면 가까워진 거리에 따라 보상을 조금씩 받으며 행동이 강화되지만, 반대로 목표물과 멀어지는 방향으로 이동하면 누적보상이 감소하면서 해당 행동은 약화된다. 이를 통해, 에이전트(500)는 "목표지점(G)으로 이동"이라는 명령어가 입력되었을 때 목표물과 가까워지는 것이 바람직하다는 정책을 수립할 수 있게 된다.
②의 상황은 걸어가는 도중에 골짜기를 만난 환경 모델이 주어졌을 경우를 도시한 것이다. 해당 환경(상태)에서 가상 캐릭터는 걷기 선택을 유지할 경우 골짜기에 추락하는 결과로 인해 부정적인 보상을 받게 된다. 걷기 선택을 계속 유지하면 추락에 의해 부정적인 보상만을 받게 되기에, 에이전트(500)는 애니메이션 라이브러리(300)에서 다른 애니메이션 클립인 점프를 수행하게 된다. 이를 통해 에이전트(500)는 "골짜기"라는 환경에서는 걷는 동작을 할 수 없다는 정책을 수립할 수 있게 된다.
그리고, ③의 상황과 같이 점프를 통해 낭떠러지를 넘을 수 있고 목표물과 더 가까워져 긍정적인 보상을 받게 되면, 강화 학습 모델부(100)는 에이전트(500)에 대해 긍정적인 보상을 받을 수 있는 학습 모델을 이식하게 된다. 이를 통해, 에이전트(500)는 보상을 얻기 위해서는 앞으로 비슷한 환경에 놓여질 경우, 지금과 동일한 행동을 취한다는 것을 학습하게 된다.
그리고, ④의 상황과 같이 목표지점(G)에 도달하기 전에 바위와 같은 장애물을 만났을 경우 걷기를 하면 장애물에 부딪혀서 부정적 보상을 받게 되는데, 이럴 경우 학습된 결과에 따라 걷기가 아닌 점프를 선택하여 목표물과 더 가까워져 긍정적인 보상을 받는 행동을 취하게 된다.
그리고, ⑤의 상황처럼, 목표지점(G)에 도착한다는 명령의 목적을 성취했을 때 아주 큰 보상을 줌으로써 에이전트(500)가 이루어야 할 목적을 알 수 있게 함으로써 한 과정의 강화 학습이 완성된다.
만일, ①의 상황에서 걷기가 아닌 점프를 처음 선택해서 목표를 달성하는 경우도 생각할 수 있지만, 강화 학습의 시간이 길어지면 ①의 상황에서 걷기를 선택하는 것이 점프를 선택하는 것보다 시간이 단축되어 더 큰 보상을 받는 것으로 학습될 것이다. 따라서, 충분한 시간의 강화 학습을 거치면 그 결과는 매우 안정적으로 수렴하게 된다.
이상과 같은 구성을 통해, 가상 캐릭터로 구성된 에이전트(500)는 특정 명령과 주어진 상태(환경)에 대해 어떠한 행동을 취하는 것이 가장 큰 보상을 받는지를 훈련 받고 이를 학습함으로써, 이후에 주어진 비슷한 명령과 상태에 대해 신속하게 대응 행동을 결정할 수 있다.
즉, 본 발명의 사전 시각화 시스템(10)은, 강화 학습 모델부(100)가 가상 캐릭터가 수행한 동작의 결과에 대응하여 양의 보상(긍정적 보상) 또는 음의 보상(부정적 보상)을 부여하고, 이에 따라 에이전트(500)는 강화 학습 모델부(100)가 부여한 보상의 누적치가 감소하는 경우 애니메이션 라이브러리(300)에서 다른 동작의 애니메이션 클립을 수행하는 반복 학습을 통해 주어진 환경에 대해 하나의 완성된 학습 모델을 가짐으로써 이후의 유사한 상황에서 최적의 행동을 자동으로 결정할 수 있게 되고 이러한 학습결과들이 모여 정책이 되는 것이다.
따라서, 본 발명에 따른 사전 시각화 시스템(10)은 상황에 따른 애니메이션 클립 선택에 대한 코드를 작성하지 않고도, 가상 캐릭터(에이전트)가 훈련을 통해 자동으로 알맞은 애니메이션 클립을 행동할 수 있고, 결국 훈련된 에이전트(500)에 대해 텍스트로 명령을 내리는 단순화된 작업으로 사전 영상의 연출과 제작이 가능해진다.
특히, 본 발명은 텍스트 기반의 명령어를 순차적으로 연결하여 스토리가 있는 하나의 시나리오로 완성하여 사전 영상으로 제작할 수 있는데, 이러한 시나리오가 변경, 수정되더라도 주어진 환경 모델에 적합한 행동 패턴이 이미 학습되어 있기에, 예전처럼 해당 환경에 맞게 애니메이션의 일부 또는 전부를 재작성해야 하는 문제가 사라지게 된다. 즉, 본 발명은 사전 영상 제작의 효율성, 시간, 비용 측면에서 현저한 향상을 가져온다.
위와 같은 강화 학습을 마친 에이전트(500)는 주어진 환경 모델에서 훈련된 대로 명령된 동작을 유연하게 수행할 수 있는 상태에 있게 된다. 이런 훈련된 에이전트(500)는 시나리오로서 주어지는 일련의 텍스트 기반의 명령을 그대로 수행할 수 있으며, 이는 가상 캐릭터인 에이전트(500)가 시나리오의 내용에 맞춰 연기를 수행하는 것이 된다.
한편, 본 발명은 컴퓨팅 장치에 의해 수행될 수 있는 사전 영상 제작 방법을 제공하며, 이 방법의 전체적인 흐름은 도 4에 도시되어 있다.
상기 컴퓨팅 장치는 하나 이상의 프로세서와, 하나 이상의 메모리를 포함하고, 상기 메모리에는 후술하는 각 단계들을 처리하기 위한 명령어들을 포함하는 프로그램이 저장될 수 있다.
본 발명의 사전 영상 제작 방법은, 첫 단계로서 텍스트 명령어 입력부(210)를 통해 가상 캐릭터인 에이전트(500)가 수행할 동작의 내용을 텍스트로 입력받고(S100), 상기 가상 캐릭터가 텍스트 명령어 입력부(210)를 통해 입력된 동작을 수행할 환경 모델을 제공받는다(S200).
텍스트 명령어 분석부(220)는 상기 텍스트 명령어 입력부(210)를 통해 입력된 동작에 대한 동사와, 상기 동사에 대한 수식어를 핵심 단어로 추출하여 명령어를 수행하기 위한 명령 수행 목표를 인지한다(S300).
그리고, 환경 모델 분석부(240)는 그 캐릭터가 존재하는 환경을 분석한다(S400).
이후, 영상 처리부(250)는 강화 학습 모델부(100)에 의해 생성된 정책(캐릭터가 스스로 동작하는 것에 대한 정책)을 토대로 S300 단계 및 S400 단계의 분석 결과를 받아 적합한 애니메이션 클립 또는 신체 속성 정보 값을 선택하고(S500), 그 환경 내 위치한 캐릭터에 대해 S500 단계에 의해 선택된 애니메이션 클립 또는 신체 속성 정보 값을 이식한다(S600).
캐릭터가 명령 수행을 하기 위해 동작을 하면 그 캐릭터가 위치한 환경이 지속적으로 바뀔 수 있다. 이때, 영상 처리부(250)는 명령 수행을 마무리 할 때까지 S300 단계 내지 S600 단계를 지속적으로 수행한다.
상술한 바와 같이 강화학습 과정을 통해 캐릭터가 스스로 동작하는 것에 대한 정책이 수립된 상태에서 캐릭터가 텍스트 명령어 입력부(210)를 통해 입력된 명령을 주어진 환경 모델에서 수행하는 과정을 영상 기록으로 녹화하게 되며(S700), 이렇게 녹화된 기록물이 사전영상으로 활용되는 것이다.
이때, 텍스트 명령어 입력부(210)에 입력되는 텍스트 기반의 동작 명령은 복수의 문장으로 이루어진 시나리오로서 입력될 수 있으며, 이러한 시나리오 형식의 명령에 따라 수행된 가상 캐릭터의 행동(연기)은 하나의 장면(scene)에 대한 연출 효과를 시각적으로 보여준다.
예를 들어, 영화 '극한직업'에서 형사가 법인을 잡는 장면에 대한 사전 시각화 작업을 수행하는데 본 발명을 활용할 수 있다.
가상 캐릭터인 에이전트(500)는 시나리오상 형사로 설정되며, 환경 모델은 건물이 빼곡한 상가 밀집지역이다.
사전 영상을 제작하기 전 가상 캐릭터가 스스로 동작하는 과정에 대해 강화학습이 진행된 상태인데, 강화학습은 형사가 범인을 추격하는 과정에서 범인과 멀어질 경우 부정적 보상이 발생하는 반면 범인과 가까워질 경우에 긍정적 보상이 발생하고, 범인과 동일위치에 있을 경우 누적보상을 최대화하는 방식으로 진행될 수 있다.
구체적으로, 애니메이션 라이브러리(300)에는 애니메이션 클립으로서 걷기, 뛰기, 뛰어넘기, 기어가기, 점프하기 등이 준비되며, 강화 학습 모델부(100)는 각종 환경에서 에이전트(500)가 범인을 따라가서 동일위치에 있게 되는 목표를 향해 주어진 애니메이션 클립을 적절히 선택하면서 에이전트(500)를 훈련하면서 정책을 수립할 수 있다.
이렇게 훈련이 완료된 에이전트(500)는, 텍스트 명령어 입력부(210)를 통해 입력된 시나리오 형식의 텍스트 명령에 따라 범인을 추격하는 동작을 수행하며, 이러한 특정 시나리오의 수행은 에이전트(500)가 각종 환경에서 이미 훈련을 받았기에 주어진 상가 밀집지역이라는 다소 생소한 환경에서도 목표 수행이 가능하다. 이렇게 범인을 추격한다는 목표를 달성하는 일련의 과정을 녹화함으로써 사전 영상으로 활용할 수 있고, 이런 과정이 본 발명에 따른 사전 시각화 방법이다.
그리고, 다른 한편으로, 본 명세서에서 기술한 기술적 특징과 이를 실행하는 구현물은 디지털 전자 회로로 구현되거나, 본 명세서에서 기술하는 구조 및 그 구조적인 등가물 등을 포함하는 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어로 구현되거나, 이들 중 하나 이상의 조합으로 구현될 수 있다. 또한 본 명세서에서 기술한 기술적 특징을 실행하는 구현물은 컴퓨터 프로그램 제품, 다시 말해 처리 시스템의 동작을 제어하기 위하여 또는 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령어에 관한 모듈로서 구현될 수도 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시 예들을 설명하였지만, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
10: 사전 시각화 시스템
100: 강화 학습 모델부
110: 제1 강화 학습 모델부
120: 제2 강화 학습 모델부
200: 영상 제작부
210: 텍스트 명령어 입력부
220: 텍스트 명령어 분석부
230: 환경 모델부
240: 환경 모델 분석부
250: 영상 처리부
260: 녹화부
300: 애니메이션 라이브러리
400: 행동별 신체 속성 정보 라이브러리
500: 에이전트

Claims (15)

  1. 적어도 하나 이상의 프로세서와, 상기 프로세서에 의해 처리되는 명령어들이 저장된 메모리를 포함하는 사전 시각화 시스템으로서,
    가상 캐릭터가 수행할 동작의 내용을 텍스트로 입력할 수 있는 인터페이스를 제공하는 텍스트 명령어 입력부;
    상기 가상 캐릭터가 수행할 동작의 애니메이션 클립을 모아 놓은 애니메이션 라이브러리;
    상기 가상 캐릭터가 상기 텍스트 명령어 입력부를 통해 입력된 동작을 수행할 환경 모델을 제공하는 환경 모델부;
    상기 가상 캐릭터를 포함하고, 상기 텍스트 명령어 입력부를 통해 입력된 동작에 대응하는 애니메이션 클립의 동작을 상기 환경 모델부가 제공한 환경 모델에서 수행하는 에이전트; 및
    상기 가상 캐릭터가 수행한 동작의 결과에 대응하는 보상을 부여하여 상기 가상 캐릭터를 훈련하고, 누적된 보상이 최대치가 되는 동작의 결과를 완료된 학습 모델로 하여 상기 가상 캐릭터에 이식하는 제1 강화 학습 모델부;
    를 포함하는 사전 시각화 시스템.
  2. 제1항에 있어서,
    상기 사전 시각화 시스템은 텍스트 명령어 분석부를 포함하고,
    상기 텍스트 명령어 분석부는, 상기 텍스트 명령어 입력부를 통해 입력된 동작에 대한 동사와, 상기 동사에 대한 수식어를 핵심 단어로 추출하며,
    상기 제1 강화 학습 모델부는 상기 텍스트 명령어 분석부에서 추출한 동사에 대응하는 동작의 애니메이션 클립을 상기 애니메이션 라이브러리에서 선택하는,
    사전 시각화 시스템.
  3. 제1항에 있어서,
    상기 사전 시각화 시스템은 환경 모델 분석부를 포함하고,
    상기 환경 모델 분석부는 상기 환경 모델부가 제공한 환경 모델에 대해 선택된 애니메이션 클립의 동작을 수행하는데 영향을 미치는 환경 정보를 추출하는,
    사전 시각화 시스템.
  4. 제1항에 있어서,
    상기 제1 강화 학습 모델부는, 상기 가상 캐릭터가 수행한 동작의 결과에 대응하여 양의 보상 또는 음의 보상을 부여하는 강화 학습을 수행하고, 상기 보상의 누적 결과에 근거하여 상기 가상 캐릭터에 대한 정책을 수립하는,
    사전 시각화 시스템.
  5. 제4항에 있어서,
    상기 애니메이션 라이브러리는,
    상기 가상 캐릭터가 수행할 동작의 애니메이션 클립을 카테고리별로 분류해 놓은,
    사전 시각화 시스템.
  6. 제5항에 있어서,
    상기 제1 강화 학습 모델부는, 상기 가상 캐릭터가 특정 카테고리의 동작을 수행하였을 때 상기 에이전트에게 부여한 보상의 누적치가 감소하는 경우, 상기 가상 캐릭터가 수행할 동작을 다른 카테고리의 애니메이션 클립 중에서 선택하는,
    사전 시각화 시스템.
  7. 제1항에 있어서,
    상기 사전 시각화 시스템은,
    상기 가상 캐릭터가 수행할 동작별 가상 캐릭터 신체 부위 속성값 정보가 저장된 행동별 신체 속성 정보 라이브러리; 및
    상기 행동별 신체 속성 정보 라이브러리에 저장된 신체 부위의 속성값을 상기 가상 캐릭터가 수행하도록 하고, 상기 가상 캐릭터가 수행한 동작의 결과에 대응하는 보상을 부여하여 상기 가상 캐릭터를 훈련하며, 상기 보상의 누적 결과에 근거하여 상기 가상 캐릭터에 대한 정책을 수립하는 제2 강화 학습 모델부;
    를 더 포함하는 사전 시각화 시스템.
  8. 제7항에 있어서,
    상기 제2 강화 학습 모델부의 정책에 따라 행동하는 상기 가상 캐릭터의 행동장면을 녹화부가 녹화하여 상기 애니메이션 라이브러리에 새로운 애니메이션 클립으로 저장하는,
    사전 시각화 시스템.
  9. 제1항 또는 제7항에 있어서,
    상기 사전 시각화 시스템은 녹화부를 포함하고,
    상기 녹화부는 상기 에이전트가 상기 환경 모델에서 수행하는 일련의 애니메이션 클립의 동작을 사전 영상으로 기록하는,
    사전 시각화 시스템.
  10. 제9항에 있어서,
    상기 텍스트 명령어 입력부에 입력되는 텍스트 기반의 명령어는 복수의 문장으로 이루어진 시나리오로서 입력되는,
    사전 시각화 시스템.
  11. 컴퓨팅 장치의 프로세서에 의해 수행될 수 있는 사전 영상 제작 방법으로서,
    텍스트 명령어 입력부를 통해 가상 캐릭터인 에이전트가 수행할 동작의 내용을 텍스트로 입력받는 단계(S100);
    상기 가상 캐릭터가 상기 텍스트 명령어 입력부를 통해 입력된 동작을 수행할 환경 모델을 제공받는 단계(S200);
    텍스트 명령어 분석부가 상기 텍스트 명령어 입력부를 통해 입력된 동작에 대한 동사와, 상기 동사에 대한 수식어를 핵심 단어로 추출하여 입력된 명령어를 수행하기 위한 명령 수행 목표를 인지하는 단계(S300);
    환경 모델 분석부가 상기 캐릭터가 존재하는 환경을 분석하는 단계(S400);
    영상 처리부가 강화 학습 모델부에 의해 생성된 정책을 토대로 상기 S300 단계 및 S400 단계의 분석 결과를 받아 적합한 애니메이션 클립 또는 신체 속성 정보 값을 선택하는 단계(S500); 및
    상기 환경 내에 위치한 상기 캐릭터에 대해 상기 S500 단계에 의해 선택된 애니메이션 클립 또는 신체 속성 정보 값을 이식하는 단계(S600);
    를 포함하는 사전 영상 제작 방법.
  12. 제11항에 있어서,
    상기 캐릭터가 명령 수행을 하기 위해 동작을 함으로써 상기 캐릭터가 위치한 환경이 지속적으로 바뀌었을 때, 상기 영상 처리부는 명령 수행을 마무리 할 때까지 상기 S300 단계 내지 S600 단계를 지속적으로 수행하는,
    사전 영상 제작 방법.
  13. 제11항에 있어서,
    상기 S600 단계 이후에,
    녹화부가 상기 캐릭터가 상기 텍스트 명령어 입력부를 통해 입력된 명령을 주어진 환경 모델에서 수행하는 과정을 영상 기록으로 녹화하는 단계(S700);
    를 더 포함하는 사전 영상 제작 방법.
  14. 제11항에 있어서,
    상기 텍스트 명령어 입력부에 입력되는 텍스트 기반의 동작 명령은 복수의 문장으로 이루어진 시나리오로서 입력되는,
    사전 영상 제작 방법.
  15. 하나 이상의 프로세서; 및
    하나 이상의 메모리;를 포함하고,
    상기 메모리는, 제11항 내지 제14항 중 어느 한 항의 각 단계를 처리하기 위한 명령어들을 포함하는 프로그램이 저장되어 있는,
    사전 시각화 시스템.
KR1020200121382A 2020-09-21 2020-09-21 강화 학습에 기반한 사전 시각화 시스템 및 사전 영상 제작 방법 KR102419073B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200121382A KR102419073B1 (ko) 2020-09-21 2020-09-21 강화 학습에 기반한 사전 시각화 시스템 및 사전 영상 제작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200121382A KR102419073B1 (ko) 2020-09-21 2020-09-21 강화 학습에 기반한 사전 시각화 시스템 및 사전 영상 제작 방법

Publications (2)

Publication Number Publication Date
KR20220038945A KR20220038945A (ko) 2022-03-29
KR102419073B1 true KR102419073B1 (ko) 2022-07-08

Family

ID=80995665

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200121382A KR102419073B1 (ko) 2020-09-21 2020-09-21 강화 학습에 기반한 사전 시각화 시스템 및 사전 영상 제작 방법

Country Status (1)

Country Link
KR (1) KR102419073B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2024515949A (ja) 2022-03-29 2024-04-11 エルジー エナジー ソリューション リミテッド 架橋時間が短縮されたゲルポリマー電解質組成物、それを含む二次電池および上記二次電池の製造方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102035596B1 (ko) 2018-05-25 2019-10-23 주식회사 데커드에이아이피 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템 및 방법
KR102068215B1 (ko) 2018-04-30 2020-01-20 주식회사 북트랩스 증강현실/가상현실을 적용한 스토리 기반의 콘텐츠 제공 방법 및 시스템
KR102116309B1 (ko) 2018-12-17 2020-05-28 주식회사 인공지능연구원 가상 캐릭터와 텍스트의 동기화 애니메이션 출력 시스템

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160220903A1 (en) * 2015-02-02 2016-08-04 Kuato Games (UK) Limited Systems and Methods for Dynamically Creating Personalized Storybooks based on User Interactions within a Virtual Environment
KR102137326B1 (ko) 2018-12-07 2020-07-23 (주) 젤리피쉬월드 리깅 캐릭터를 이용한 애니메이션 생성 장치 및 애니메이션 생성 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102068215B1 (ko) 2018-04-30 2020-01-20 주식회사 북트랩스 증강현실/가상현실을 적용한 스토리 기반의 콘텐츠 제공 방법 및 시스템
KR102035596B1 (ko) 2018-05-25 2019-10-23 주식회사 데커드에이아이피 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템 및 방법
KR102116309B1 (ko) 2018-12-17 2020-05-28 주식회사 인공지능연구원 가상 캐릭터와 텍스트의 동기화 애니메이션 출력 시스템

Also Published As

Publication number Publication date
KR20220038945A (ko) 2022-03-29

Similar Documents

Publication Publication Date Title
JP6869562B2 (ja) トラッキングネットワークを含むcnnを使用して物体をトラッキングする方法、及びそれを利用した装置{method for tracking object by using convolutional neural network including tracking network and computing device using the same}
US10210434B1 (en) Artificially intelligent systems, devices, and methods for learning and/or using visual surrounding for autonomous object operation
Ross et al. Efficient reductions for imitation learning
Karamouzas et al. Simulating and evaluating the local behavior of small pedestrian groups
KR102532749B1 (ko) 약한 지도 학습에 기초한 뉴럴 네트워크의 계층적 학습 방법 및 장치
CN111766782B (zh) 基于深度强化学习中Actor-Critic框架的策略选择方法
Xu et al. Bits: Bi-level imitation for traffic simulation
JP2019069758A (ja) キーフレームベースの自律走行車
Gym et al. Deep reinforcement learning with python
Xiao et al. Multigoal visual navigation with collision avoidance via deep reinforcement learning
KR102419073B1 (ko) 강화 학습에 기반한 사전 시각화 시스템 및 사전 영상 제작 방법
Liu et al. Controlllm: Augment language models with tools by searching on graphs
CN114521262A (zh) 使用因果正确环境模型来控制智能体
Wu et al. Vision-language navigation: a survey and taxonomy
CN113888638A (zh) 一种基于注意力机制的图神经网络行人轨迹预测方法
Krishnamoorthy et al. Deep learning techniques and optimization strategies in big data analytics: automated transfer learning of convolutional neural networks using Enas algorithm
Qin et al. Mp5: A multi-modal open-ended embodied system in minecraft via active perception
Poulakos et al. Towards an accessible interface for story world building
CN115797517B (zh) 虚拟模型的数据处理方法、装置、设备和介质
Tigas et al. Robust imitative planning: Planning from demonstrations under uncertainty
Rodriguez Feature driven game state modeling as preprocessing step in robotics control
Penkov et al. Explaining transition systems through program induction
Bisagno et al. Virtual crowds: An LSTM-based framework for crowd simulation
Hewlett A framework for recognizing and executing verb phrases
Sukthankar et al. Modeling physical capabilities of humanoid agents using motion capture data

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant