JPWO2020129959A1 - コンピュータプログラム、サーバ装置、端末装置及び表示方法 - Google Patents

コンピュータプログラム、サーバ装置、端末装置及び表示方法 Download PDF

Info

Publication number
JPWO2020129959A1
JPWO2020129959A1 JP2020561452A JP2020561452A JPWO2020129959A1 JP WO2020129959 A1 JPWO2020129959 A1 JP WO2020129959A1 JP 2020561452 A JP2020561452 A JP 2020561452A JP 2020561452 A JP2020561452 A JP 2020561452A JP WO2020129959 A1 JPWO2020129959 A1 JP WO2020129959A1
Authority
JP
Japan
Prior art keywords
data
facial expression
specific facial
classifier
performer
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2020561452A
Other languages
English (en)
Other versions
JP7278307B2 (ja
Inventor
暁彦 白井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GREE Inc
Original Assignee
GREE Inc
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 GREE Inc filed Critical GREE Inc
Publication of JPWO2020129959A1 publication Critical patent/JPWO2020129959A1/ja
Priority to JP2023077309A priority Critical patent/JP2023103335A/ja
Application granted granted Critical
Publication of JP7278307B2 publication Critical patent/JP7278307B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • A63F13/655Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition by importing photos, e.g. of the player
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • A63F13/2145Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/215Input arrangements for video game devices characterised by their sensors, purposes or types comprising means for detecting acoustic signals, e.g. using a microphone
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/424Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving acoustic input signals, e.g. by using the results of pitch or rhythm extraction or voice recognition
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/426Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving on-screen location information, e.g. screen coordinates of an area at which the player is aiming with a light gun
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • 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/172Classification, e.g. identification
    • 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
    • G06V40/176Dynamic expression
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/63Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for estimating an emotional state

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Acoustics & Sound (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Child & Adolescent Psychology (AREA)
  • Hospice & Palliative Care (AREA)
  • Psychiatry (AREA)
  • Signal Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】 演者の顔が表現することが困難である表情を仮想的なキャラクターに簡易な手法により表現させる、コンピュータプログラム、サーバ装置、端末装置及び表示方法を提供する。【解決手段】 一実施形態に係るコンピュータプログラムは、プロセッサ(21)により実行されることにより、第1のセンサ(102)から演者の顔に関するデータを取得し、前記データに基づいて生成された第1のデータを分類器(121)に入力して、前記第1のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、ように前記プロセッサを機能させる、ものである。【選択図】 図3

Description

本件出願に開示された技術は、動画及びゲーム等において表示される仮想的なキャラクターの表情を演者(ユーザ)の表情に基づいて制御する、コンピュータプログラム、サーバ装置、端末装置及び表示方法に関する。
アプリケーションにおいて表示される仮想的なキャラクターの表情を演者の表情に基づいて制御する技術を利用したサービスとしては、まず「アニ文字」と称されるサービスが知られている(非特許文献1)。このサービスでは、ユーザは、顔の形状の変形を検知するカメラを搭載したスマートフォンを見ながら表情を変化させることにより、メッセンジャーアプリケーションにおいて表示されるアバターの表情を変化させることができる。
さらに、別のサービスとしては、「カスタムキャスト」と称されるサービスが知られている(非特許文献2)。このサービスでは、ユーザは、スマートフォンの画面に対する複数のフリック方向の各々に対して、用意された多数の表情のうちのいずれかの表情を割り当てる。さらに、ユーザは、動画の配信の際には、所望する表情に対応する方向に沿って画面をフリックすることにより、その動画に表示されるアバターにその表情を表現させることができる。
なお、上記非特許文献1及び2は、引用によりその全体が本明細書に組み入れられる。
"iPhone X 以降でアニ文字を使う"、[online]、2018年10月24日、アップルジャパン株式会社、[2018年11月12日検索]、インターネット(URL: https://support.apple.com/ja-jp/HT208190) "カスタムキャスト"、[online]、2018年10月3日、株式会社ドワンゴ、[2018年11月12日検索]、インターネット(URL: https://customcast.jp/)
仮想的なキャラクター(アバター等)を表示させるアプリケーションにおいて、そのキャラクターに、印象的な表情を表現させることが望まれている。印象的な表情は、以下の3つの例を含む。第1の例は、顔の形状が漫画のように非現実的に変形した表情である。この表情は、例えば、両目が顔面から飛び出した表情等を含む。第2の例は、記号、図形及び/又は色が顔に付加された表情である。この表情は、例えば、涙がこぼれた表情、顔が真っ赤になった表情、目を三角形状にして怒った表情、等を含む。第3の例は、喜怒哀楽を含む感情を表現する表情である。印象的な表情は、これらの例に限定されない。
しかしながら、まず、特許文献1に記載された技術は、ユーザ(演者)の顔の形状の変化に追従するように仮想的なキャラクターの表情を変化させるものであるため、ユーザの顔が実際に表現困難な表情を、仮想的なキャラクターの表情に反映させることはできない可能性がある。したがって、特許文献1に記載された技術は、ユーザの顔が実際に表現することが困難な、上記のような印象的な表情を、仮想的なキャラクターの表情において表現することは困難である。
次に、特許文献2に記載された技術にあっては、複数のフリック方向の各々に対して、仮想的なキャラクターに表現させるべき表情を予め割り当てておく必要がある。このため、ユーザ(演者)は用意されている表情をすべて認識している必要がある。さらには、複数のフリック方向に対して割り当てて一度に使用することが可能な表情の総数は、10に満たない程度に限定され充分なものではない。
したがって、本件出願において開示された幾つかの実施形態は、演者の顔が表現することが困難である表情を仮想的なキャラクターに簡易な手法により表現させる、コンピュータプログラム、サーバ装置、端末装置及び表示方法を提供する。
一態様に係るコンピュータプログラムは、「プロセッサにより実行されることにより、第1のセンサから演者の顔に関するデータを取得し、前記データに基づいて生成された第1のデータを分類器に入力して、前記第1のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、ように前記プロセッサを機能させる」ものである。
一態様に係る表示方法は、「コンピュータにより読み取り可能な命令を実行するプロセッサにより実行される表示方法であって、該プロセッサが、前記命令を実行することにより、第1のセンサから演者の顔に関するデータを取得し、前記データに基づいて生成された第1のデータを分類器に入力して、前記第1のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する」ものである。
一態様に係る端末装置は、「プロセッサを具備し、該プロセッサが、コンピュータにより読み取り可能な命令を実行することにより、第1のセンサから演者の顔に関するデータを取得し、前記データに基づいて生成された第1のデータを分類器に入力して、前記第1のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する」ものである。
一態様に係るサーバ装置は、「プロセッサを具備し、該プロセッサが、コンピュータにより読み取り可能な命令を実行することにより、第1のセンサから演者の顔に関するデータを受信し、前記データに基づいて生成された第1のデータを分類器に入力して、前記第1のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する」ものである。
別の態様に係るコンピュータプログラムは、「プロセッサにより実行されることにより、第2のセンサから演者により発せられた発話及び/又は歌唱に関する音声データを取得し、前記音声データに基づいて生成された第2のデータを分類器に入力して、前記第2のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、ように前記プロセッサを機能させる」ものである。
別の態様に係る表示方法は、「コンピュータにより読み取り可能な命令を実行するプロセッサにより実行される表示方法であって、該プロセッサが、前記命令を実行することにより、第2のセンサから演者により発せられた発話及び/又は歌唱に関する音声データを取得し、前記音声データに基づいて生成された第2のデータを分類器に入力して、前記第2のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する」ものである。
別の態様に係る端末装置は、「プロセッサを具備し、該プロセッサが、コンピュータにより読み取り可能な命令を実行することにより、第2のセンサから演者により発せられた発話及び/又は歌唱に関する音声データを取得し、前記音声データに基づいて生成された第2のデータを分類器に入力して、前記第2のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する」ものである。
別の態様に係るサーバ装置は、「プロセッサを具備し、該プロセッサが、コンピュータにより読み取り可能な命令を実行することにより、第2のセンサから演者により発せられた発話及び/又は歌唱に関する音声データを取得し、前記音声データに基づいて生成された第2のデータを分類器に入力して、前記第2のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する」ものである。
図1は、一実施形態に係る通信システムの構成の一例を示すブロック図である。 図2は、図1に示した端末装置20(サーバ装置30)のハードウェア構成の一例を模式的に示すブロック図である。 図3は、図1に示した端末装置20(サーバ装置30)の機能の一例を模式的に示すブロック図である。 図4は、図1に示した端末装置20(サーバ装置30)により用いられる「プルチックの感情の輪」の具体例を示す模式図である。 図5は、図1に示した通信システム1において行われる動作の一例を示すフロー図である。 図6Aは、図1に示した端末装置20の表示部150に表示されるチュートリアルの一例を模式的に示す図である。 図6Bは、図1に示した端末装置20の表示部150に表示されるチュートリアルの別の例を模式的に示す図である。 図6Cは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Dは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Eは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Fは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Gは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Hは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Iは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Jは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Kは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Lは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Mは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図6Nは、図1に示した端末装置20の表示部150に表示されるチュートリアルのさらに別の例を模式的に示す図である。 図7は、図1に示した端末装置20に対して演者により演技の間に行われるマニュアル入力の一例を模式的に示す図である。
以下、添付図面を参照して本発明の様々な実施形態を説明する。なお、図面において共通した構成要素には同一の参照符号が付されている。また、或る図面に表現された構成要素が、説明の便宜上、別の図面においては省略されていることがある点に留意されたい。さらにまた、添付した図面が必ずしも正確な縮尺で記載されている訳ではないということに注意されたい。
1.通信システムの例
図1は、一実施形態に係る通信システムの構成の一例を示すブロック図である。図1に示すように、通信システム1は、通信網10に接続される1又はそれ以上の端末装置20と、通信網10に接続される1又はそれ以上のサーバ装置30と、を含むことができる。なお、図1には、端末装置20の例として、3つの端末装置20A〜20Cが例示され、サーバ装置30の例として、3つのサーバ装置30A〜30Cが例示されているが、端末装置20として、これら以外の1又はそれ以上の端末装置20が通信網10に接続され得るし、サーバ装置30として、これら以外の1又はそれ以上のサーバ装置30が通信網10に接続され得る。
また、通信システム1は、通信網10に接続される1又はそれ以上のスタジオユニット40を含むことができる。なお、図1には、スタジオユニット40の例として、2つのスタジオユニット40A及び40Bが例示されているが、スタジオユニット40として、これら以外の1又はそれ以上のスタジオユニット40が通信網10に接続され得る。
「第1の態様」では、図1に示す通信システム1では、演者により操作され所定のアプリケーション(動画配信用のアプリケーション等)を実行する端末装置20(例えば端末装置20A)が、端末装置20Aに対向する演者の顔に関するデータ及び/又は演者により発せられた発話及び/又は歌唱に関する音声データを取得することができる。さらに、この端末装置20は、この取得したデータに従って表情を変化させた仮想的なキャラクターの動画を、通信網10を介してサーバ装置30(例えばサーバ装置30A)に送信することができる。さらに、サーバ装置30Aは、端末装置20Aから受信した仮想的なキャラクターの動画を、通信網10を介して他の1又はそれ以上の端末装置20であって所定のアプリケーション(動画視聴用のアプリケーション等)を実行して動画の配信を要求する旨を送信した端末装置20に配信することができる。
「第2の態様」では、図1に示す通信システム1では、例えばスタジオ等又は他の場所に設置されたサーバ装置30(例えばサーバ装置30B)が、上記スタジオ等又は他の場所に居る演者の顔に関するデータ及び/又は演者により発せられた発話及び/又は歌唱に関する音声データを取得することができる。さらに、このサーバ装置30は、この取得したデータに従って表情を変化させた仮想的なキャラクターの動画を、通信網10を介して1又はそれ以上の端末装置20であって所定のアプリケーション(動画視聴用のアプリケーション等)を実行して動画の配信を要求する旨を送信した端末装置20に配信することができる。
「第3の態様」では、図1に示す通信システム1では、例えばスタジオ等又は他の場所に設置されたスタジオユニット40が、上記スタジオ等又は他の場所に居る演者の顔に関するデータ及び/又は演者により発せられた発話及び/又は歌唱に関する音声データを取得することができる。さらに、このスタジオユニット40は、このデータに従って表情を変化させた仮想的なキャラクターの動画を生成してサーバ装置30に送信することができる。さらに、サーバ装置30は、スタジオユニット40から取得(受信)した動画を、通信網10を介して1又はそれ以上の端末装置20であって所定のアプリケーション(動画視聴用のアプリケーション等)を実行して動画の配信を要求する旨を送信した端末装置20に配信することができる。
通信網10は、携帯電話網、無線LAN、固定電話網、インターネット、イントラネット及び/又はイーサネット(登録商標)等をこれらに限定することなく含むことができるものである。
端末装置20は、インストールされた特定のアプリケーションを実行することにより、その演者の顔に関するデータ及び/又はその演者により発せられた発話及び/又は歌唱に関する音声データを取得する、という動作等を実行することができる。さらに、この端末装置20は、この取得したデータに従って表情を変化させた仮想的なキャラクターの動画を、通信網10を介してサーバ装置30に送信する、という動作等を実行することができる。或いはまた、端末装置20は、インストールされたウェブブラウザを実行することにより、サーバ装置30からウェブページを受信及び表示して、同様の動作を実行することができる。
端末装置20は、このような動作を実行することができる任意の端末装置であって、スマートフォン、タブレット、携帯電話(フィーチャーフォン)及び/又はパーソナルコンピュータ等を、これらに限定することなく含むことができるものである。
サーバ装置30は、「第1の態様」では、インストールされた特定のアプリケーションを実行してアプリケーションサーバとして機能することができる。これにより、サーバ装置30は、各端末装置20から仮想的なキャラクターの動画を、通信網10を介して受信し、受信した動画を(他の動画とともに)通信網10を介して各端末装置20に配信する、という動作等を実行することができる。或いはまた、サーバ装置30は、インストールされた特定のアプリケーションを実行してウェブサーバとして機能することにより、各端末装置20に送信するウェブページを介して、同様の動作を実行することができる。
サーバ装置30は、「第2の態様」では、インストールされた特定のアプリケーションを実行してアプリケーションサーバとして機能することができる。これにより、サーバ装置30は、このサーバ装置30が設置されたスタジオ等又は他の場所に居る演者の顔に関するデータ及び/又は演者により発せられた発話及び/又は歌唱に関する音声データを取得する、という動作等を実行することができる。さらに、サーバ装置30は、この取得したデータに従って表情を変化させた仮想的なキャラクターの動画を(他の動画とともに)通信網10を介して各端末装置20に配信する、という動作等を実行することができる。或いはまた、サーバ装置30は、インストールされた特定のアプリケーションを実行してウェブサーバとして機能することにより、各端末装置20に送信するウェブページを介して、同様の動作を実行することができる。さらにまた、サーバ装置30は、インストールされた特定のアプリケーションを実行してアプリケーションサーバとして機能することができる。これにより、サーバ装置30は、スタジオ等又は他の場所に設置されたスタジオユニット40からこのスタジオ等に居る演者の顔に関するデータ及び/又は演者により発せられた発話及び/又は歌唱に関する音声データに従って表情を変化させた仮想的なキャラクターの動画を取得(受信)する、という動作等を実行することができる。さらに、サーバ装置30は、この動画を通信網10を介して各端末装置20に配信する、という動作等を実行することができる。
スタジオユニット40は、インストールされた特定のアプリケーションを実行する情報処理装置として機能することができる。これにより、スタジオユニット40は、このスタジオユニット40が設置されたスタジオ等又は他の場所に居る演者の顔に関するデータ及び/又は演者により発せられた発話及び/又は歌唱に関する音声データを取得することができる。さらに、スタジオユニット40は、この取得したデータに従って表情を変化させた仮想的なキャラクターの動画を(他の動画とともに)通信網10を介してサーバ装置30に送信することができる。
2.各装置のハードウェア構成
次に、端末装置20及びサーバ装置30の各々が有するハードウェア構成の一例について説明する。
2−1.端末装置20のハードウェア構成
各端末装置20のハードウェア構成例について図2を参照して説明する。図2は、図1に示した端末装置20(サーバ装置30)のハードウェア構成の一例を模式的に示すブロック図である(なお、図2において、括弧内の参照符号は、後述するように各サーバ装置30に関連して記載されたものである。)
図2に示すように、各端末装置20は、主に、中央処理装置21と、主記憶装置22と、入出力インタフェイス装置23と、入力装置24と、補助記憶装置25と、出力装置26と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続されている。
中央処理装置21は、「CPU」と称されるものであり、主記憶装置22に記憶されている命令及びデータに対して演算を行い、その演算の結果を主記憶装置22に記憶させるものである。さらに、中央処理装置21は、入出力インタフェイス装置23を介して、入力装置24、補助記憶装置25及び出力装置26等を制御することができる。端末装置20は、1又はそれ以上のこのような中央処理装置21を含むことが可能である。
主記憶装置22は、「メモリ」と称されるものであり、入力装置24、補助記憶装置25及び通信網10等(サーバ装置30等)から、入出力インタフェイス装置23を介して受信した命令及びデータ、並びに、中央処理装置21の演算結果を記憶するものである。主記憶装置22は、RAM(ランダムアクセスメモリ)、ROM(リードオンリーメモリ)及び/又はフラッシュメモリ等をこれらに限定することなく含むことができる。
補助記憶装置25は、主記憶装置22よりも大きな容量を有する記憶装置である。上記特定のアプリケーションやウェブブラウザ等を構成する命令及びデータ(コンピュータプログラム)を記憶しておき、中央処理装置21により制御されることにより、これらの命令及びデータ(コンピュータプログラム)を入出力インタフェイス装置23を介して主記憶装置22に送信することができる。補助記憶装置25は、磁気ディスク装置及び/又は光ディスク装置等をこれらに限定することなく含むことができる。
入力装置24は、外部からデータを取り込む装置であり、タッチパネル、ボタン、キーボード、マウス及び/又はセンサ等をこれらに限定することなく含むものである。センサは、後述するように、1又はそれ以上のカメラ等を含む第1のセンサ、及び/又は、1又はそれ以上のマイク等を含む第2のセンサをこれらに限定することなく含むことができる。
出力装置26は、ディスプレイ装置、タッチパネル及び/又はプリンタ装置等をこれらに限定することなく含むことができる。
このようなハードウェア構成にあっては、中央処理装置21が、補助記憶装置25に記憶された特定のアプリケーションを構成する命令及びデータ(コンピュータプログラム)を順次主記憶装置22にロードし、ロードした命令及びデータを演算することにより、入出力インタフェイス装置23を介して出力装置26を制御し、或いはまた、入出力インタフェイス装置23及び通信網10を介して、他の装置(例えばサーバ装置30及び他の端末装置20等)との間で様々な情報の送受信を行うことができる。
これにより、端末装置20は、インストールされた特定のアプリケーションを実行することにより、その演者の顔に関するデータ及び/又はその演者により発せられた発話及び/又は歌唱に関する音声データを取得し、取得したデータに従って表情を変化させた仮想的なキャラクターの動画を、通信網10を介してサーバ装置30に送信する、という動作等(後に詳述する様々な動作を含む)を実行することができる。或いはまた、端末装置20は、インストールされたウェブブラウザを実行することにより、サーバ装置30からウェブページを受信及び表示して、同様の動作を実行することができる。
なお、端末装置20は、中央処理装置21に代えて又は中央処理装置21とともに、1又はそれ以上のマイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含むものであってもよい。
2−2.サーバ装置30のハードウェア構成
各サーバ装置30のハードウェア構成例について同じく図2を参照して説明する。各サーバ装置30のハードウェア構成としては、例えば、上述した各端末装置20のハードウェア構成と同一のものを用いることが可能である。したがって、各サーバ装置30が有する構成要素に対する参照符号は、図2において括弧内に示されている。
図2に示すように、各サーバ装置30は、主に、中央処理装置31と、主記憶装置32と、入出力インタフェイス装置33と、入力装置34と、補助記憶装置35と、出力装置36と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続されている。
中央処理装置31、主記憶装置32、入出力インタフェイス装置33、入力装置34、補助記憶装置35及び出力装置36は、それぞれ、上述した各端末装置20に含まれる、中央処理装置21、主記憶装置22、入出力インタフェイス装置23、入力装置24、補助記憶装置25及び出力装置26と略同一なものとすることができる。
このようなハードウェア構成にあっては、中央処理装置31が、補助記憶装置35に記憶された特定のアプリケーションを構成する命令及びデータ(コンピュータプログラム)を順次主記憶装置32にロードし、ロードした命令及びデータを演算することにより、入出力インタフェイス装置33を介して出力装置36を制御し、或いはまた、入出力インタフェイス装置33及び通信網10を介して、他の装置(例えば各端末装置20等)との間で様々な情報の送受信を行うことができる。
これにより、サーバ装置30は、「第1の態様」では、インストールされた特定のアプリケーションを実行してアプリケーションサーバとして機能することができる。これにより、サーバ装置30は、各端末装置20から仮想的なキャラクターの動画を、通信網10を介して受信し、受信した動画を(他の動画とともに)通信網10を介して各端末装置20に配信する、という動作等(後に詳述する様々な動作を含む)を実行することができる。或いはまた、サーバ装置30は、インストールされた特定のアプリケーションを実行してウェブサーバとして機能することにより、各端末装置20に送信するウェブページを介して、同様の動作を実行することができる。
また、サーバ装置30は、「第2の態様」では、インストールされた特定のアプリケーションを実行してアプリケーションサーバとして機能することができる。これにより、サーバ装置30は、このサーバ装置30が設置されたスタジオ等又は他の場所に居る演者の顔に関するデータ及び/又は演者により発せられた発話及び/又は歌唱に関する音声データを取得するという動作等を実行することができる。さらに、サーバ装置30は、この取得したデータに従って表情を変化させた仮想的なキャラクターの動画を(他の動画とともに)通信網10を介して各端末装置20に配信する、という動作等(後に詳述する様々な動作を含む)を実行することができる。或いはまた、サーバ装置30は、インストールされた特定のアプリケーションを実行してウェブサーバとして機能することにより、各端末装置20に送信するウェブページを介して、同様の動作を実行することができる。
さらにまた、サーバ装置30は、「第3の態様」では、インストールされた特定のアプリケーションを実行してアプリケーションサーバとして機能することができる。これにより、サーバ装置30は、スタジオユニット40が設置されたスタジオ等又は他の場所に居る演者の顔に関するデータ及び/又は演者により発せられた発話及び/又は歌唱に関する音声データに従って表情を変化させた仮想的なキャラクターの動画を(他の動画とともに)通信網10を介してスタジオユニット40から取得(受信)するという動作等を実行することができる。さらに、サーバ装置30は、この画像を通信網10を介して各端末装置20に配信する、という動作等(後に詳述する様々な動作を含む)を実行することもできる。
なお、サーバ装置30は、中央処理装置31に代えて又は中央処理装置31とともに、1又はそれ以上のマイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含むものであってもよい。
2−3.スタジオユニット40のハードウェア構成
スタジオユニット40は、パーソナルコンピュータ等の情報処理装置により実装可能なものであって、図示はされていないが、上述した端末装置20及びサーバ装置30と同様に、主に、中央処理装置と、主記憶装置と、入出力インタフェイス装置と、入力装置と、補助記憶装置と、出力装置と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続されている。
スタジオユニット40は、インストールされた特定のアプリケーションを実行して情報処理装置として機能することができる。これにより、スタジオユニット40は、このスタジオユニット40が設置されたスタジオ等又は他の場所に居る演者の顔に関するデータ及び/又は演者により発せられた発話及び/又は歌唱に関する音声データを取得することができる。さらに、スタジオユニット40は、この取得したデータに従って表情を変化させた仮想的なキャラクターの動画を(他の動画とともに)通信網10を介してサーバ装置30に送信することができる。
3.各装置の機能
次に、端末装置20及びサーバ装置30の各々が有する機能の一例について説明する。
3−1.端末装置20の機能
端末装置20の機能の一例について図3を参照して説明する。図3は、図1に示した端末装置20(サーバ装置30)の機能の一例を模式的に示すブロック図である(なお、図3において、括弧内の参照符号は、後述するようにサーバ装置30に関連して記載されたものである。)。
図3に示すように、端末装置20は、演者の顔に関するデータ及び/又は演者により発せられた発話及び/又は歌唱に関する音声データをセンサから取得する取得部100と、取得部100により取得されたデータに対して各種の演算処理を実行して第1のデータ及び/又は第2のデータを生成する処理部110と、処理部110により生成された第1のデータ及び/又は第2のデータに基づいて、予め定められた複数の特定の表情のうちのいずれかの特定の表情を、表示すべき特定の表情として選択する表情制御部120と、を含むことができる。
さらに、端末装置20は、表情制御部120により選択された特定の表情に基づいて、仮想的なキャラクターの動画(アニメーション)を生成する動画生成部130と、動画生成部130により生成された動画を記憶する記憶部140と、記憶部140により記憶された動画等を表示する表示部150と、記憶部140により記憶された動画等を、通信網10を介してサーバ装置30に送信する通信部160と、を含むことができる。
(1)取得部100
取得部100は、演者の顔に関するデータを取得する1又はそれ以上の第1のセンサ102と、演者により発せられた発話及び/又は歌唱に関する音声データを取得する1又はそれ以上の第2のセンサ104と、を含むことができる。
第1のセンサ102は、好ましい実施形態では、可視光線を撮像するRGBカメラと、近赤外線を撮像する近赤外線カメラと、を含むことができる。このようなカメラとしては、例えばiphone X(登録商標)のトゥルーデプス(True Depth)カメラに含まれたものを用いることが可能である。第2のセンサ104は、音声を記録するマイクロフォンを含むことができる。
まず、第1のセンサ102に関して、取得部100は、演者の顔に近接して配置された第1のセンサ102を用いて演者の顔を撮像する。これにより、取得部100は、RGBカメラにより取得された画像をタイムコードに対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。タイムコードは、取得した時間を示すコードである。さらに、取得部100は、近赤外線カメラにより取得された所定数の深度を示す数値を上記タイムコードに対応付けて単位時間にわたって記録したデータを生成することができる。所定数は、例えば51個である。深度を示す数値は、例えば浮動小数点の数値である。取得部100によって生成される上記のデータは、例えばTSVファイルであり、TSVファイルは、データ間をタブで区切って複数のデータを記録する形式のファイルである。
近赤外線カメラに関して、具体的には、ドットプロジェクタがドット(点)パターンを含む赤外線レーザーを演者の顔に放射し、近赤外線カメラが、演者の顔に投影され反射した赤外線ドットを捉え、このように捉えた赤外線ドットの画像を生成する。取得部100は、予め登録されているドットプロジェクタにより放射されたドットパターンの画像と、近赤外線カメラにより捉えられた画像とを比較する。これにより、取得部100は、両画像における各ポイントにおける位置のずれを用いて、各ポイントの深度を算出することができる。上述したポイントは、特徴点と称されることがある。両画像におけるポイントは、例えば51個である。ポイントの深度は、ポイントと近赤外線カメラとの距離である。取得部100は、このように算出された深度を示す数値を、上記のようにタイムコードに対応付けて単位時間にわたって記録したデータを生成することができる。
次に、第2のセンサ104に関して、取得部100は、演者に近接して配置された第2のセンサ104を用いて演者により発せられた発話及び/又は歌唱に関する音声を取得する。これにより、取得部100は、タイムコードに対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。一実施形態では、取得部100は、第1のセンサ102を用いて演者の顔に関するデータを取得することと同時に、第2のセンサ104を用いて演者により発せられた発話及び/又は歌唱に関する音声データを取得することができる。この場合には、取得部100は、RGBカメラにより取得された画像と、第2のセンサ104を用いて演者により発せられた発話及び/又は歌唱に関する音声データとに基づいて、同一のタイムコードに対応付けて単位時間にわたって記録したデータを生成することができる。生成されるデータは、例えばMPEGファイルである。
取得部100は、このように生成した、演者の顔に関するデータ(MPEGファイル及びTSVファイル等)、及び/又は、演者により発せられた発話及び/又は歌唱に関する音声データ(MPEGファイル等)を、処理部110、分類器121、及び/又は、動画生成部130に出力することができる。
なお、ここでは、第1のセンサ102がRGBカメラ及び赤外線カメラを含む場合について説明したが、第1のセンサ102は、例えば、以下の(A)、(B)及び(C)のうちのいずれかを含むものであってもよい。
(A)赤外線レーザーにより放射され演者の顔に反射した赤外線を検出するカメラ
(B)可視光線を撮像する複数のRGBカメラ
(C)可視光線を撮像する単一のカメラ。
上記(A)の場合には、取得部100は、上述したものと同様の手法により、演者の顔における各特徴点について深度を算出することができる。上記(B)の場合には、取得部100は、複数のRGBカメラにより撮像された複数の画像を用いて、演者の顔における各特徴点について奥行(深度)を計算することができる。上記(C)の場合には、取得部100は、単一のカメラにより撮像された画像から、演者の顔における各特徴点の奥行(深度)を、ディープラーニング等を利用して算出することができる。また、上記(C)の場合には、取得部100は、単一のカメラにより撮像された画像に対する分析処理(画像処理等)により、演者の顔における各特徴点の奥行(深度)を算出してもよい。
(2)処理部110
処理部110は、取得部100により取得された演者の顔に関するデータに基づいて第1のデータを生成することができる。また、処理部110は、取得部100により取得された演者により発せられた発話及び/又は歌唱に関する音声データに基づいて第2のデータを生成することができる。
具体的には、まず第1のデータに関して、処理部110は、取得部100から受信したデータを用いて、演者の顔の各特徴点について、その特徴点の時間方向の移動量を算出することができる。なお、取得部100から受信したデータには、例えば、TSVファイル及びこれに対応付けられたタイムコードが含まれ得る。また、上記特徴点の時間方向の移動量は、上記特徴点の所定の時間区間の間における移動量であり得る。このように算出した各特徴点の時間方向の移動量を示すデータを第1のデータとして生成することができる。
さらに、第2のデータに関して、処理部110は、取得部100から受信した音声データ、例えばMPEGファイルとこれに対応付けられたタイムコードとを用いて、各時間におけるラウドネス、音圧、話速、及び/又は、フォルマント等に関するデータを算出することができる。これに代えて又はこれに加えて、処理部100は、取得部100から受信した音声データを用いて、自然言語処理を実行することにより、音声データから、各時間における単語、語尾及び/又は感嘆語等を抽出することができる。なお、取得部100から受信した音声データには、例えばMPEGファイル及びこれに対応付けられたタイムコードが含まれ得る。処理部100は、このように抽出した単語、語尾及び/又は感嘆語等を示すデータを第2のデータとして生成することができる。
処理部110は、このように生成した第1のデータ及び/又は第2のデータを表情制御部120(の分類器121)に出力することができる。
(3)表情制御部120
表情制御部120は、図3に示すように、主に、分類器121と、表情選択部122と、マニュアル入力部123と、教師データ記憶部124と、ユーザ設定調整部125と、ユーザプロファイル記憶部126と、を含むことができる。
分類器121は、入力データに対応する出力データを生成するものである。分類器121は、入力データに対応する教師データ(ターゲット)を予め与えられており、入力データに対応する出力データと教師データとを比較し、両者が同一の値となるようにルールを作成又は変更することができるものである。分類器121は、例えばPython等のプログラミング言語により作成され得るものである。分類器121によって生成されるものは、学習モデル(学習済みモデル)であってもよい。分類器121により生成された学習モデル(学習済みモデル)は、入力データを分類することが可能なアルゴリズム(プログラム)と、各種のパラメータ(データセット)と、を含む。分類器121は人工知能であってもよい。
一実施形態では、分類器121は、(処理部110から受信した)第1のデータ、第2のデータ、(取得部100から受信した)演者の顔に関するデータ、演者により発せられた発話及び/又は歌唱に関する音声データ、のうちの少なくとも1つのデータを入力する。これにより、分類器121は、予め定められた複数の特定の表情のうちのいずれかの特定の表情を示すデータ(「特定表情データ」)を、表情選択部122に出力することができる。分類器121の詳細については後述する。
マニュアル入力部123は、表示部150に表示される動画を見ながら演じている演者から、「特定表情指定データ」を、タッチパネル、ボタン及びキーボード等のユーザインタフェイスを介して入力する。「特定表情指定データ」とは、現在表示部150に表示されている仮想的なキャラクターの表情に対して、予め定められた複数の特定の表情のうちのいずれかの表情を表示部150に表示すべき表情として指定するデータである。マニュアル入力部123は、特定表示指定データを表情選択部122に出力する。
また、マニュアル入力部123は、この特定表示指定データを、演者から特定表情指定データが入力された時点に対応する第1のデータ及び/又は第2のデータに対する教師データ(ターゲット)として、教師データ記憶部124に記憶させることができる。
表情選択部122は、マニュアル入力部123からの特定表示指定データ及び分類器121からの特定表情データ等を含むデータに基づいて、予め定められた複数の特定の表情のうちいずれかの特定の表情を、動画において表示すべき表情として選択することができる。例えば、表情選択部122は、分類器121からの特定表情データに対応する特定の表情を、動画において表示すべき表情として選択することができる。一方、分類器121からの特定表情データにおいて特定の表情が何ら指定されていない場合がある。例えば、予め定められた複数の特定の表情の中には該当するものがないために「その他の表情」等が指定されている場合がある。この場合には、表情選択部122は、その他の表情を動画において表示すべき表情として選択することができる。
但し、表情選択部122は、第1のデータ及び/又は第2のデータに対応して分類器121から特定表情データが出力された場合であっても、第1のデータ及び/又は第2のデータに対応して演者からマニュアル入力部123を介して特定表情指定データを受信することがある。この場合には、表情選択部122は、特定表情指定データに対応する特定の表情を、動画において表示すべき表情として選択することができる。表情選択部122は、最終的に選択された特定の表情(又はその他の表情)を示すデータを動画生成部130に出力する。以下、このデータを「最終指定データ」ということがある。なお、表情選択部122により用いられるアルゴリズムの詳細については後述する。
ユーザ設定調整部125は、教師データ記憶部124に記憶された、第1のデータ及び/又は第2のデータに対応する教師データを、分類器121に適用することができる。また、ユーザ設定調整部125は、分類器121により生成された学習モデル(学習済みのモデル)を、演者のための学習モデルとしてユーザプロファイル記憶部126に記憶させることができる。さらにまた、ユーザ設定調整部125は、通信網10を介してサーバ装置30から受信した予め用意された学習モデル(学習済みモデル)を、ユーザプロファイル記憶部126に記憶させた後、ユーザプロファイル記憶部126から読み出して分類器121に適用することも可能である。
(4)動画生成部130、記憶部140、表示部150及び通信部160
動画生成部130は、表情選択部122からの最終的に選択された特定の表情を示すデータ(「最終指定データ」)、及び、取得部100からの、演者の顔に関するデータ、及び/又は、演者により発せられた発話及び/又は歌唱に関する音声データ等、に基づいて、仮想的なキャラクターの動画を生成することができる。仮想的なキャラクターの動画自体については、動画生成部130は、図示しないキャラクターデータ記憶部に記憶された様々な情報(例えば、ジオメトリ情報、ボーン情報、テクスチャ情報、シェーダ情報及びブレンドシェイプ情報等)を用いて、図示しないレンダリング部にレンダリングを実行させることにより、仮想的なキャラクターの動画を生成することができる。なお、キャラクターデータ記憶部及びレンダリング部は、動画生成部130に含まれていてもよいし、動画生成部130の外部にあってもよい。
例えば、動画生成部130は、表情選択部122からの「最終指定データ」が特定の表情を指定している場合には、このように指定された表情を用いて仮想的なキャラクターの表情を変化させた動画を生成することができる。
一方、表情選択部122からの「最終指定データ」がその他の表情を指定している場合には、動画生成部130は、取得部100からの演者の顔に関するデータ(演者の顔における各特徴点の深度に関するデータ)を用いて仮想的なキャラクターの表情を変化させた動画(例えば、仮想的なキャラクターの表情が演者の口及び両目の動きに同期して変化した動画、すなわち、仮想的なキャラクターの表情が演者の顔に対してリップシンク及び視線追従して変化した動画)を生成することができる。
動画生成部130は、生成した動画を格納したファイル(例えばMPEG等のファイル)を記憶部140に記憶させることができる。
表示部150は、例えば、タッチパネル、ディスプレイ等を含むものであり、記憶部140に記憶された動画を格納したファイルを表示することができる。
通信部160は、記憶部140に記憶された動画を格納したファイルを、通信網10を介してサーバ装置30に送信することができる。また、通信部160は、通信網10を介してサーバ装置30から受信した予め生成された学習モデル(学習済みモデル)等を受信して、記憶部140及び/又はユーザプロファイル記憶部126に記憶させることができる。
上述した各部の動作は、演者の端末装置20にインストールされた所定のアプリケーション(例えば動画配信用のアプリケーション)がこの端末装置20により実行されることにより、この端末装置20により実行され得るものである。
3−2.サーバ装置30の機能
サーバ装置30の機能の具体例について同じく図3を参照して説明する。サーバ装置30の機能としては、例えば、上述した端末装置20の機能の一部を用いることが可能である。したがって、サーバ装置30が有する構成要素に対する参照符号は、図3において括弧内に示されている。
まず、上述した「第2の態様」では、サーバ装置30は、以下に述べる相違点を除き、取得部200〜通信部260として、それぞれ、端末装置20に関連して説明した取得部100〜通信部160と同一のものを有するものとすることができる。
但し、この「第2の態様」では、サーバ装置30は、スタジオ等又は他の場所に配置され、複数の演者(ユーザ)により用いられることが想定され得る。したがって、教師データ記憶部224は、複数の演者の各々に対応付けて、第1のデータ及び/又は第2のデータに対応する教師データを記憶することができる。このように記憶された各演者に対応する教師データは、ユーザ設定調整部225により、その演者に対応付けて分類器221に適用され得る。
さらに、取得部200を構成する第1のセンサ202及び第2のセンサ204は、サーバ装置30が設置されるスタジオ等又は他の場所において、演者が演技を行う空間において演者に対向して配置され得るものである。同様に、表示部250を構成するディスプレイやタッチパネル等もまた、演者が演技を行う空間において演者に対向して又は演者の近くに配置され得るものである。
また、同様に、ユーザプロファイル記憶部226は、複数の演者の各々に対応付けて学習モデル(学習済みモデル)を記憶することができる。このように記憶された各演者に対応する学習モデルは、ユーザ設定調整部225により、その演者に対応付けて分類器221に適用され得る。
或いはまた、ユーザ設定調整部225は、或る演者に対応付けて教師データ記憶部224に記憶された教師データを、別の演者に対応付けて分類器221に適用してもよい。同様に、ユーザ設定調整部225は、或る演者に対応付けてユーザプロファイル記憶部226に記憶された学習モデル(学習済みモデル)を、別の演者に対応付けて分類器221に適用してもよい。
通信部260は、各演者に対応付けて記憶部240に記憶された動画を格納したファイルを、通信網10を介して複数の端末装置20に配信することができる。これら複数の端末装置20の各々は、インストールされた所定のアプリケーション(例えば動画視聴用のアプリケーション)を実行して、サーバ装置30に対して所望の動画の配信を要求する信号(リクエスト信号)を送信することにより、この信号に応答したサーバ装置30から所望の動画を当該所定のアプリケーションを介して受信することができる。
なお、記憶部240に記憶される情報(動画を格納したファイル等)は、当該サーバ装置30に通信網10を介して通信可能な1又はそれ以上の他のサーバ装置(ストレージ)30に記憶されるようにしてもよい。
また、通信部260は、複数の端末装置20から通信網10を介して学習モデル(学習済みモデル)等を受信して、記憶部240及び/又はユーザプロファイル記憶部226に記憶させることができる。このように記憶された学習モデル(学習済みモデル)等は、このサーバ装置30において、ユーザ設定調整部225により、複数の演者の間で共有されるようにしてもよいし、通信部260により、通信網10を介して、任意の端末装置20に送信され共有されてもよい。
一方、上述した「第1の態様」では、上記「第2の態様」において用いられた取得部200〜動画生成部230をオプションとして用いることができる。通信部260は、上記のように動作することに加えて、各端末装置20により送信され通信網10から受信した、動画を格納したファイルを、記憶部240に記憶させた上で、複数の端末装置20に対して配信することができる。
他方、「第3の態様」では、上記「第2の態様」において用いられた取得部200〜動画生成部230をオプションとして用いることができる。通信部260は、上記のように動作することに加えて、スタジオユニット40により送信され通信網10から受信した、動画を格納したファイルを、記憶部240に記憶させた上で、複数の端末装置20に対して配信することができる。
3−3.スタジオユニット40の機能
スタジオユニットは、図3に示した端末装置20又はサーバ装置30と同様の構成を有することにより、端末装置20又はサーバ装置30と同様の動作を行うことが可能である。但し、通信部160(260)は、動画生成部130(230)により生成され記憶部140(240)に記憶された動画を、通信網10を介してサーバ装置30に送信することができる。
特に、取得部100(200)を構成する第1のセンサ102(202)及び第2のセンサ104(204)は、スタジオユニット40が設置されるスタジオ等又は他の場所において、演者が演技を行う空間において演者に対向して配置され得るものである。同様に、表示部150(250)を構成するディスプレイやタッチパネル等もまた、演者が演技を行う空間において演者に対向して又は演者の近くに配置され得るものである。
4.分類される複数の表情の例
次に、端末装置20に設けられた分類器121(又はサーバ装置30に設けられた分類器221)により分類され得る予め定められた複数の特定の表情の具体例について説明する。
予め定められた複数の特定の表情は、一実施形態では、主に、喜怒哀楽を含む感情を表現する表情と、顔の形状が非現実的に変形した表情と、顔に記号、図形及び/又は色が付加された表情と、をこれらに限定することなく含むことができる。また、一実施形態では、予め定められた複数の特定の表情は、このように列挙した複数の表情の組み合わせとすることが可能なものである。
4−1.喜怒哀楽を含む感情を表現する表情
喜怒哀楽を含む感情を表現する表情は、感情の内容及び感情の強弱に応じて変化し得るものである。喜怒哀楽を含む感情を表現する表情の具体例が、後述する図6F、図6G、図6I、図6J、図6M及び図6N等に示されている。
喜怒哀楽を含む感情を表現する表情は、言語及び文化に依存しない心理空間にマッピングされたユーザインタフェイスに基づいて表現され得るものであり、例えば、「プルチックの感情の輪」により代表されるユーザインタフェイスに基づいて表現され得るものである。「プルチックの感情の輪」の具体例が図4に示される。
一実施形態では、図4に例示される「プルチックの感情の輪」に含まれる複数の要素の各々に対して、動画に表示されるべき仮想的なキャラクターの表情(動画)が用意され得る。なお、図4には、複数の要素として、例えば、24個(=4軸×6個)の要素が示されている。さらに、この「プルチックの感情の輪」を模したユーザインタフェイスが(例えば演者による要求に応じて)表示部150(250)に表示され得る。
演者は、演技中に、表示部150(250)に「プルチックの感情の輪」を模したユーザインタフェイスが表示されている状態(又は表示されていない状態)において、表示させたい要素(表情)に対応する領域をタップ又はクリック等することにより、表示させたい特定の表情を指定することができる。なお、表示部150(250)は、タッチパネル等であり得る。一実施形態では、24個の要素は、各軸(軸301〜軸304の全4軸の各々)に対して例えば、「−3」,「−2」,「−1」,「0」,「1」,「2」,「3」を割り当てておく。「0」は原点である。これにより、演者は、24個の要素のうちの所望の要素を指定することができる。例えば、軸303については、「苛立ち」、「怒り」、「激怒」、「恐怖」、「恐れ」及び「不安」に対して、それぞれ、「−3」、「−2」、「−1」、「1」、「2」及び「3」を割り当てることができる。
或いはまた、演者は、演技中に、表示部150(250)に「プルチックの感情の輪」を模したユーザインタフェイスが表示されている状態(又は表示されていない状態)において、スワイプ操作をすることにより、スワイプ操作の方向及び移動量に従って、表示させたい特定の表情を指定することができる。例えば、演者が、図4に示された軸302に沿って、原点からどちらの方向にどれだけの量だけスワイプ操作を行ったかに従って、「敬愛」(移動量1)、「信頼」(移動量2)、「容認」(移動量3)、「強い嫌悪」(移動量−1)、「嫌悪」(移動量−2)及び「うんざり」(移動量−3)を指定することができる。
このように喜怒哀楽を含む感情を表現する複数の表情のうち、演者に指定された表情を示すデータが、上述したマニュアル入力部123(223)から表情選択部122(222)に対して「特定表情指定データ」として出力され得る。
4−2.顔の形状が非現実的に変形した表情
顔の形状が非現実的に変形した表情は、顔の一部が現実的にはあり得ない態様で(例えば漫画のように)変形した表情を含むものであり、その一例が図7(の「変形顔」)に示されている。
一実施形態では、顔の形状が非現実的に変形した表情は、複数用意されるものとすることができる。演者は、表示部150(250)(タッチパネル等)に、これら複数の表情を特定する情報(ユーザインタフェイス)が表示されている状態(又は表示されていない状態)において、スワイプ操作をすることにより、スワイプ操作の方向(又は、スワイプ操作の方向及び移動量)に従って、表示させたい特定の表情を指定することができる。
このように顔の形状が非現実的に変形した複数の表情のうち、演者に指定された表情を示すデータが、上述したマニュアル入力部123(223)から表情選択部122(222)に対して「特定表情指定データ」として出力され得る。
4−3.顔に記号、図形及び/又は色が付加された表情
顔に記号、図形及び/又は色が付加された表情は、例えば(1)「#」及び「><」等の記号、(2)汗、星及び青筋等を模した図形、(3)赤らみを示す赤色等が、顔に付加された表情を含むものであり、その具体例が、図6C、図6D、図6E、図6G、図6H及び図6J等に示されている。
一実施形態では、顔に記号、図形及び/又は色が付加された表情についても、顔の形状が非現実的に変形した複数の表情と同様に、演者は、表示部150(250)に、これら複数の表情を特定する情報(ユーザインタフェイス)が表示されている状態(又は表示されていない状態)において、スワイプ操作をすることにより、スワイプ操作の方向(又は、スワイプ操作の方向及び移動量)に従って、表示させたい特定の表情を指定することができる。
このように顔に記号、図形及び/又は色が付加された表情のうち、演者に指定された表情を示すデータが、上述したマニュアル入力部123(223)から表情選択部122(222)に対して「特定表情指定データ」として出力され得る。
5.表情選択部122(222)により用いられるアルゴリズムの例
次に、端末装置20における表情選択部122(サーバ装置30における表情選択部222)により用いられるアルゴリズムの一例について説明する。
表情選択部122は、例えば、以下に例示する第1の処理〜第5の処理を実行することができる。表情選択部122は、第1の処理〜第5の処理の各々に対応する以下に説明する所定の条件が満たされた場合に、それぞれ、第1の処理〜第5の処理を実行することができる。表情選択部122は、第1の処理〜第5の処理のうちの複数の処理を実行することができる場合には、第1の処理〜第5の処理という優先順位(第1の処理に対する優先順位が最も高く、第5の処理に対する優先順位が最も低い)に従って、上記複数の処理のいずれかを実行することができる。なお、表情選択部122は、以下に例示する第1の処理〜第5の処理のうちの必ずしもすべての処理を実行する必要はなく、第1の処理〜第5の処理のうちの少なくとも1つの処理を実行するものであってもよい。
(1)第1の処理(「顔の赤らみ」のような顔のベースカラー)
第1の処理は、例えば、仮想的なキャラクターの表情に顔の赤らみといったような生理現象を模倣させるために、仮想的なキャラクターの顔のベースカラーを設定する処理である。
表情選択部122は、非言語フィードバック情報に基づいて演者の生理現象が直接的に又は間接的に検知された場合に、第1の処理を実行する。なお、非言語フィードバック情報に基づいて演者の生理現象を検知する方法としては、例えば、日本国特許出願第2018−164520(本文献は引用によりその全体が本明細書に組み入れられる)に開示された各種の方法を用いることが可能である。非言語フィードバック情報には、例えば、生体情報センサにより検出される演者の生体情報、カメラにより撮像される演者の画像・映像、及び、加速度センサにより検出される加速度等が含まれ得る。
具体的には、演者の生体情報に基づいて演者の情動を示す情動情報を生成する技術としては、「人間の感情を考慮したバイオメトリクス 情報学ワークショップ2004、平成26年9月」(本文献は引用によりその全体が本明細書に組み入れられる)に記載された技術を利用することが可能である。ここで、生体情報センサにより検出される演者の生体情報には、体温、呼吸数、脈拍、眼球運動、血中の酸素濃度、筋電(筋肉で発生する電位)及びこれら以外の生体に関して検出可能な情報が含まれ得る。
また、例えば特開平3−252775号公報(本文献は引用によりその全体が本明細書に組み入れられる)に開示された技術を用いることにより、カメラによって撮像された顔画像から演者の情動を推定することもできる。具体的には、情動(喜び、怒り、哀しみ、楽しさ)に対応付けて記憶されている表情パターンの中から、カメラで撮影した演者の顔画像に類似する画像を有する表情パターンを検索し、この表情パターンに対応付けられた情動を取得することにより、演者の情動を推定することができる。
さらにまた、例えば「WebSocketを用いたスマートフォン上でのエンタテイメントコンテンツ閲覧時のリアルタイム行動分析」(エンターテインメントコンピューティングシンポジウム(EC2013),2013年10月)(本文献は引用によりその全体が本明細書に組み入れられる)に開示されているように、演者が保持しているスマートフォンに内蔵されている加速度センサにより検出された3軸の加速度の二乗和平方根を算出し、この算出された二乗和平方根が所定値(例えば、0.2[G]や0.1[G])以上であるときに演者が笑っていることを検出することができる。
第1の処理において、表情選択部122は、仮想的なキャラクターの顔に対応する色を付した表情を示す「最終指定データ」を、予め設定された時間(例えば数十秒間)だけ、動画生成部130に出力する。これにより、このような「最終指定データ」を受信した動画生成部130は、仮想的なキャラクターが、そのような表情を上記のように設定された時間だけ持続した後、平常状態に戻るような動画を生成することができる。
(2)第2の処理(マニュアル表示)
第2の処理は、予め定められた複数の特定の表情のうち、分類器121により分類された特定の表情ではなく、演者により直接指定された特定の表情を、動画に表示すべき表情として選択する処理である。
マニュアル入力部123が、ユーザインタフェイスを介して演者から、表示すべき表情を指定するデータ(「特定表情指定データ」)を入力し、表情選択部122がマニュアル入力部123から「特定表情指定データ」を受信したという条件が満たされる場合に、表情選択部122は、第2の処理を実行する。
第2の処理において、表情選択部122は、予め定められた複数の特定の表情のうち、「特定表情指定データ」により特定される特定の表情を、動画において表示すべき表情として選択する。表情選択部122は、このように選択された特定の表情を示すデータ(「最終指定データ」)を、動画生成部130に出力する。これにより、このような「最終指定データ」を受信した動画生成部130は、その特定の表情に対応付けて予め定められた動画を生成する。
(3)第3の処理(イベント駆動)
第3の処理は、所定のイベントが発生した場合に、そのイベントに対して定められた表情を、動画に表示すべき表情として選択する処理である。
表情選択部122は、表情選択部122の内部又は外部に設けられた物理エンジンが所定のイベントが発生したことを検出したという条件が満たされる場合に、第3の処理を実行する。表情選択部122は、所定の複数のイベントの各々に対応付けて、動画に表示すべき特定の表情を予め定めることができる。例えば、表情選択部122は、「(仮想的なキャラクターが生きている世界において、例えばゲームにおいて)物が降ってきて仮想的なキャラクターの頭に当たった」というイベントに対しては、「仮想的なキャラクターの顔に「×」という記号が表示される」という表情を定めることができる。或いはまた、表情選択部122は、「(仮想的なキャラクターが生きている世界において、例えばゲームにおいて)仮想的なキャラクターのヒットポイント(体力)が所定値を下回った」というイベントに対しては、「仮想的なキャラクターの顔に青ざめた色が表示される」という表情を定めることができる。
第3の処理においても、表情選択部122は、予め定められた複数の特定の表情のうち、「特定表情指定データ」により特定される特定の表情を、動画において表示すべき表情として選択する。表情選択部122は、このように選択された特定の表情を示すデータ(「最終指定データ」)を、動画生成部130に出力する。これにより、このような「最終指定データ」を受信した動画生成部130は、仮想的なキャラクターがその特定の表情を一定時間持続する動画を生成することができる。
(4)第4の処理(予め定められた特定の表情)及び第5の処理(自然な表情)
第4の処理及び第5の処理は、ともに分類器121から受信する特定表情データにより特定される表情を選択する処理である。
表情選択部122は、分類器121から特定の表情を指定した「特定表情データ」を受信したという条件が満たされる場合に、第4の処理を実行する。また、表情選択部122は、分類器121から「その他の表情」を指定した「特定表情データ」を受信したという条件が満たされる場合に、第5の処理を実行する。
表情選択部122は、「特定表情データ」により特定される表情を、動画において表示すべき表情として示した「最終指定データ」を、動画生成部130に出力する。これにより、表情選択部122が第4の処理を実行した場合においては、動画生成部130は、仮想的なキャラクターがその特定の表情を表現した動画を生成する。一方、表情選択部122が第5の処理を実行した場合においては、動画生成部130は、仮想的なキャラクターの表情が演者の顔に対してリップシンク及び視線追従して変化した動画を生成する。
6.通信システム1の動作
次に、上述した構成を有する通信システム1の動作の具体例について、図5を参照して説明する。図5は、図1に示した通信システム1において行われる動作の一例を示すフロー図である。
ステップ(以下「ST」という。)402において、端末装置20(サーバ装置30であってもよい)は、学習データを取得する。具体的には、まず、端末装置20は、所定数の特定の表情(例えば演者により指定された数の特定の表情)の各々について例えば10秒程度用意されたチュートリアルとしての動画を表示部150に再生し、表示する。
図6A〜図6Nは、図1に示した端末装置20(サーバ装置30)が表示する特定の表情に関するチュートリアルの具体例を示す図である。図6A〜図6Nに例示されるように、各特定の表情に関するチュートリアルは、演者に演技させるべき表情に関する指示と、演者が読み上げるべき文章(スクリプト)と、を含むことができる。ここで、演者に演技させるべき表情に関する指示は、例えば図6Bにおける「顎を引いて上目遣い」及び図6Cにおける「目を大きく開く」といったような指示(スクリプト)を含むことができる。
このようなチュートリアルを再生・表示する端末装置20に対向した演者は、かかるチュートリアルのタイミングに合わせて、指示された表情を演技しながら、表示されたセリフを読み上げる。
このようなチュートリアルの再生に並行して、端末装置20は、上述したように、第1のセンサ102に含まれるRGBカメラを用いて、撮像された画像をタイムコードに対応付けて記録したデータ(例えばMPEGファイル)を生成する。なお、このようなMPEGファイル等においては、タイムコードに対応付けて、複数の特定の表情(例えば、図6A〜図6Nに示された複数の特定の表情)のうちのいずれかを特定する情報が記憶され得る。
また、端末装置20は、上述したように、第1のセンサ102に含まれる近赤外線カメラを用いて、各特徴点の深度を示す数値をタイムコードに対応付けて記録したデータ(例えばTSVファイル)を生成する。なお、このようなTSVファイル等においては、タイムコードに対応付けて、複数の特定の表情(例えば、図6A〜図6Nに示された複数の特定の表情)のうちのいずれかを特定する情報が記憶され得る。
さらに、端末装置20は、上述したように、第2のセンサ104に含まれるマイクを用いて、タイムコードに対応付けて音声を記録したデータ(例えばMPEGファイル)を生成する。なお、このようなMPEGファイル等においては、タイムコードに対応付けて、複数の特定の表情(例えば、図6A〜図6Nに示された複数の特定の表情)のうちのいずれかを特定する情報が記憶され得る。
次に、端末装置20は、上述したように、処理部110を用いて、第1のデータ(各特徴点の時間方向の移動量を示す第1のデータ)及び/又は第2のデータ(各時間におけるラウドネス、音圧、話速及び/又はフォルマント等に関するデータ、及び/又は、各時間における単語、語尾及び/又は感嘆語等を示すデータを含む)を生成する。
次に、端末装置20は、(処理部110からの)第1のデータ、第2のデータ、(取得部100からの)演者の顔に関するデータ(MPEGファイル及びTSVファイル等)、演者により発せられた発話及び/又は歌唱に関する音声データ(MPEGファイル等)のうちの少なくとも1つのデータを用いて、分類器121に、複数の特定の表情を学習させる。
具体的には、分類器121は、演者の顔に関するデータ(MPEGファイル等)を用いて、各特定の表情に関するチュートリアルに対応付けて撮像された演者の画像に対して、その特定の表情を特定する情報を教師データとして割り当てる(アノテーションを行う)。例えば、図6Bに示す「おねだり」に関するチュートリアルに対応付けて撮像された演者の画像に対して、「おねだり」という情報(教師データ)を割り当てる。なお、このようにして得られた教師データは、教師データ記憶部124及び/又はユーザプロファイル記憶部126に記憶され得る。
さらに、分類器121は、(処理部110からの)第1のデータ、第2のデータ、(取得部100からの)演者の顔に関するデータ(MPEGファイル及びTSVファイル等)、演者により発せられた発話及び/又は歌唱に関する音声データ(MPEGファイル等)のうちの複数のデータを用いて、主成分分析を実行することができる。この主成分分析では、分類器121は、例えば、要素として、各特徴点の時間方向の移動量、及び、ラウドネス等を用いることができる。このような主成分分析により、分類器121は、複数の特定の表情を分類するための意味ベクトルを取得する。これにより、分類器121は、学習モデル(複数の特定の表情を分類するアルゴリズムと、このアルゴリズムにおいて用いられるパラメータとを含む)を生成することができる。なお、分類器121による主成分分析については後述する。
ST402に関連して上述した複数の特定の表情に対する学習は、複数の特定の表情の各々につき1テイク又は複数テイク実行されてもよいし、複数の特定の表情のうち演者に選択された特定の表情のみについて1テイク又は複数テイク実行されてもよい。
また、ST402に関連して上述した複数の特定の表情に対する学習は、後述するST404における再帰的な学習が行われた後に1回又は複数回実行されてもよい。
このように、演者が複数の特定の表情の各々に関連するチュートリアルに従って演技を行うことにより、端末装置20の分類器121は、複数の特定の表情に対する学習を行う。これにより、端末装置20の分類器121は、複数の特定の表情を分類することができるようになる。したがって、演者は、どのような表情やポーズが利用可能であるのかを知らなくとも、仮想的なキャラクターに複数の特定の表情を表現させた動画を生成することができる。この結果、特に初めて当該サービスを利用するユーザに対する利便性を向上させることができる。
次に、ST404において、端末装置20は、この端末装置20の表示部150(タッチパネル等)を見ながら演者により行われる演技に基づいて、仮想的なキャラクターの表情を変化させる動画を生成する。具体的には、端末装置20は、上記「3−1」及び「5」において説明したように、処理部110〜動画生成部130を動作させることにより、動画を生成する。
一実施形態では、端末装置20は、演者が表情を変化させることに追従して、動画をリアルタイムに表示部150に表示することができる。この動画は、複数の予め定められた特定の表情の中からそのように変化した表情に基づいて選択した特定の表情を仮想的なキャラクターに表現させた動画である。また、この動画は、複数の予め定められた特定の表情の中に、該当する特定の表情が存在しない場合には、自然な表情を仮想的なキャラクターに表現させた動画である。例えば、演者が自然な表情をしているときには、端末装置20は、演者の顔に対してリップシンク及び視線追従して仮想的なキャラクターの表情を変化させた動画を表示部150に表示することができる。一方、演者の顔が特定の表情を示したときには、端末装置20は、その特定の表情に対応して仮想的なキャラクターの表情を変化させた動画を表示部150に表示することができる。
この点につき、上述した特許文献2に開示された技術では、演者が発話や歌唱をしている際に画面に対するフリック操作を行う間において、仮想的なキャラクターの表情が、一瞬真顔になる等、不自然な動きを示すことがある。これに対して、本願に開示された一実施形態では、演者が自然な表情をしている状態と演者が特定の表情をしている状態との間において、仮想的なキャラクターの表情も各状態に従って滑らかに変化することができる。仮に、仮想的なキャラクターが不自然な動きを示した場合であっても、上記「5.(2)」で説明したように、演者がユーザインタフェイスを介して表示すべき表情を指定するデータ(「特定表示指定データ」)を入力することにより、仮想的なキャラクターは演者に指定された特定の表情を示すことができる。また、この特定表示指示データが、上記「3−1.(3)」において説明したように、教師データとして用いられることにより、同様の条件において仮想的なキャラクターが不自然な表情を示す事態が抑えられる。
図7には、演者の演技に追従して端末装置20の表示部150にリアルタイムに表示される動画のうちの1シーンが例示されている。端末装置20がST402において行った学習だけでは、端末装置20は、演者の意図する複数の特定の表情を必ずしも正確には分類できない可能性がある。例えば、演者が実際には照れ顔を示しているにもかかわらず、端末装置20は仮想的なキャラクターが笑っている動画を生成する可能性がある。そのような場合には、演者は、演者の意図に反して仮想的なキャラクターが笑っているその瞬間に、例えばタッチパネルとしての表示部150に対して右方向にスワイプ操作502を行うことができる。なお、演者は、自己が実際に表現した表情が、例えば、「びっくり目」、「変形顔」及び「企み目」であった場合には、上方向のスワイプ操作504、左方向のスワイプ操作506及び下方向のスワイプ操作508をそれぞれ実行することができる。
これにより、端末装置20のマニュアル入力部123(図3参照)は、上記「3−1」において述べたとおり、「照れ顔」を表示すべき表情として指定する「特定表情指定データ」を表情選択部122に出力する。これにより、動画生成部130は、仮想的なキャラクターが「照れ顔」という特定の表情を示した動画を生成することができる。これに並行して、マニュアル入力部123は、表示部150に演者の意図に反した動画を表示していた時点に対応する対象データに対する教師データとして、「照れ顔」を指定する「特定表情指定データ」を教師データ記憶部124に記憶させることができる。なお、対象データとは、第1のデータ、第2のデータ、演者の顔に関するデータ(MPEGファイル及びTSVファイル等)、演者により発せられた発話及び/又は歌唱に関する音声データ(MPEGファイル等)のうちの少なくとも1つのデータである。この教師データは、ユーザ設定調整部125により分類器121に提供(適用)され得る。このように演技中に演者によりマニュアル入力が行われることにより、端末装置20の分類器121は、複数の特定の表情を再帰的に学習することができる。
なお、図7を参照して、演技中の演者が、スワイプ操作の方向(一例として4方向)のみにより、自己が意図した特定の表情を指定する実施形態が説明されたが、この実施形態は単なる一例に過ぎない。別の実施形態では、演技中の演者が、スワイプ操作の方向(1又はそれ以上の方向)及び移動量の両方により、自己が意図した特定の表情を指定することも可能である。例えば、演者が右方向に短い距離だけスワイプ操作を行った場合には「照れ顔」を指定し、演者が右方向に長い距離だけスワイプ操作を行った場合には「嬉しい顔」を指定することも可能である。
さらに、図7を参照して、演者がスワイプ操作により自己が意図した表情を指定する動作を演技中に実行する実施形態が説明されたが、この実施形態は単なる一例に過ぎない。別の実施形態では、演者はかかる指定を、演技の終了後に動画が再生される段階において実行することも可能である。
また、ST404においても、ST402と同様に、分類器121が主成分分析を実行して学習を行ってもよい。この場合、分類器121は、要素として、各特徴点の時間方向の移動量及びラウドネス等に加えて、演者によりマニュアル入力された「特定表情指定データ」を用いることが可能である。
このように、ST404(必要に応じてST402)に示した動作が繰り返し行われることにより、ST406において、端末装置20は、演技中に演者によるマニュアル入力をほとんど必要とせずに、複数の特定の表情を分類することができるようになる。
次に、ST408において、端末装置20は、分類器121により生成された学習モデル(学習モデル全体であってもよいし、学習モデルを構成するアルゴリズム又はパラメータであってもよい)をサーバ装置30に送信することができる。或いはまた、サーバ装置30は、複数のユーザ(演者)から取得した学習モデル(学習モデル全体であってもよいし、学習モデルを構成するアルゴリズム又はパラメータであってもよい)を、特定のユーザからの要求に応じて、そのユーザの端末装置20に送信することができる。
なお、端末装置20が演者からのマニュアル入力を必要としなくなった段階において学習モデルをサーバ装置30に送信してもよいし、端末装置20が演者からのマニュアル入力を依然として必要とする段階においても学習モデルをサーバ装置30に送信してもよい。
このように、或るユーザの端末装置20により生成された学習モデルは、他のユーザの端末装置20により共有可能となる。これにより、特に初めてのユーザは、必ずしも端末装置20の分類器121にゼロから学習を行わせる必要がないため、より速く分類器121を所望のレベル(例えば、マニュアル入力の頻度を低下させたレベル)にまで学習させることができる。
7.学習モデルの共有について
次に、各ユーザの端末装置20(又はサーバ装置30)が生成した学習モデルを他のユーザの端末装置20と共有する特徴に対する拡張について説明する。
まず、ステップ1として、各ユーザの端末装置20(の分類器121)が学習モデルを生成する。各ユーザの端末装置20は、そのように自己が生成した学習モデルを単独で使用する。
ステップ2として、サーバ装置30が、ステップ1において複数のユーザの端末装置20により生成された学習モデル(又は学習モデルに含まれる学習済みパラメータ)を、これらの複数のユーザの端末装置20から受信する。サーバ装置30は、複数のユーザの学習済みパラメータの平均値を使用して、使用頻度が高い特定の表情を分類することにより、全体の判定閾値の変更を実行する。これにより、当該サービスの汎用性及び品質を向上させることができる。
ステップ3として、ステップ1において或るユーザの端末装置20により生成された学習モデルを、例えばサーバ装置30を介して、別のユーザの端末装置20、例えば特にトゥルーデプスカメラを搭載していない(通常のRGBカメラしか搭載していない)端末装置20に送信する。当該別のユーザの端末装置20は、受信した学習モデルを使用する。
ステップ4として、ステップ1において或るユーザの端末装置20により生成された学習モデルを、例えばサーバ装置30を介して、別のユーザの端末装置20に送信する。当該別のユーザの端末装置20は、受信した学習モデルを使用することによって、演技時における演者の音声のみ(音声及び画像であってもよい)を第2のセンサから入力することのみにより、複数の特定の表情から選択したいずれかの特定の表情を仮想的なキャラクターに表現させることができる。
ステップ5として、ステップ2の結果を(例えばサーバ装置30を経由して)利用して、各ユーザの端末装置20は、表出する頻度の低い特定の表情を、分類器121におけるトレーニングの候補から除外することができる。すなわち、各ユーザの端末装置20は、表出する頻度の低い特定の表情については、自動的には用いず、マニュアル入力により演者により指定された場合にのみ用いることができる。
ステップ6として、サーバ装置30は、既存のアニメキャラクター及び声優等の学習モデルを、プリセットとして、各ユーザの端末装置20に有料又は無料で提供(送信)する。
ステップ7として、サーバ装置30は、ステップ6において提供の対象とされた学習モデルと、ステップ1において各ユーザの端末装置20により生成された学習モデルとを比較して、両者の類似度を算出し、提供の対象とされた複数の学習モデルのうち類似度の高い1又は複数の学習モデルに関する情報を、そのユーザの端末装置20に対して「おすすめ」として送信する。これにより、そのユーザの端末装置20は、そのような類似度の高い1又は複数の学習モデルを、サーバ装置30から有料又は無料で受信することができる。
ステップ8として、サーバ装置30が、ステップ7において得られた類似度を用いて、複数のユーザ間において最も似ているユーザのランキングに関する情報を、複数のユーザの端末装置20に送信する。これにより、複数のユーザは、練度及び表現力を向上させることができる。
ステップ9として、ステップ8の結果とステップ6の結果との差分から、サーバ装置30は、同一のゴールに対するユーザのトレーニング差分を算出することができる。このトレーニング差分とステップ1において生成された学習モデルとの間の類似度を算出することによって、サーバ装置30は、「こういう表情をしたいときにはこのモデルが好ましい」というマッチングを示した情報を、各ユーザの端末装置20に簡単に送信することができる。
8.変形例について
一実施形態では、表示部150(250)が、特定の表情を表示したものの、演者の意図とは異なる表情を表示した場合には、すぐに元の表情(演者の実際の表情をキャプチャーして反映された自然な表情等)に戻すことを演者が指示することができるように、ユーザインタフェイスが設定されていてもよい。この場合、例えば、演者は、その端末装置20等(サーバ装置30又はスタジオユニット40であってもよい)の表示部に表示されている特定のアイコン・オブジェクト等をタップすること、その端末装置20等の表示部を所定の方向にフリックすること、及び/又は、その端末装置20等の所定のボタン及びキーボード等を押圧すること等により、表情選択部122(222)により分類器121(221)からの特定表示データに従って選択された特定の表情を「使用したくない」旨を指定することができる。これに従い、表示部150(250)は、仮想的なキャラクターの表情が演者の顔に対してリップシンク及び視線追従して変化した動画を表示することができる。これを実現するためには、図3を参照すると、表情選択部122(222)が、自然な表情を指定するデータ(「特定表情指定データ」)をマニュアル入力部123(223)から入力して、上記「5.(4)」において説明した第5の処理を優先的に実行することができる。なお、このようなユーザインタフェイスは、動画視聴用のアプリケーション等を介して動画の配信を受ける端末装置20(演者の端末装置20以外の端末装置20)の表示部150には表示されない。
これにより、例えば、表示部150(250)が、仮想的なキャラクターが図6Kに例示したような「キス顔」を表現した動画を表示したにも関わらず、演者は、この顔を使用したくない場合には、その旨を指定すべく上述した操作を行うことができる。これにより、表示部150(250)は、仮想的なキャラクターが単に口を尖らせた表情を表現した動画を表示することができる。この場合には、分類器121(221)は、「キス顔」に対してマイナスの報酬を設定すること等により、学習モデルを生成(更新)することができる。なお、「キス顔」に対してマイナスの報酬を設定することは、「キス顔」を特定の表情として決定する要因となった、第1のデータ、第2のデータ、演者の顔に関するデータ(MPEGファイル及びTSVファイル等)、演者により発せられた発話及び/又は歌唱に関する音声データ(MPEGファイル等)、及び/又は、特定表情指定データと、演者による選択された特定の表情を「使用したくない」旨を示す情報等とを用いて、行われる。
なお、上述した様々な実施形態では、端末装置20、サーバ装置30及びスタジオユニット40が、第1のデータ、第2のデータ、演者の顔に関するデータ(MPEGファイル及びTSVファイル等)、演者により発せられた発話及び/又は歌唱に関する音声データ(MPEGファイル等)、特定表情指定データ、及び/又は、選択された特定の表情を「使用したくない」旨を示す情報等を用いて、学習を行って学習モデルを生成(更新)することが可能であることを説明した。ここで、端末装置20が、このような学習を行うことは、端末装置20の演算リソースが限られたものであること等により、適切ではない場合があり得る。よって、端末装置20は、このような学習の一部又は全部を行わないようにし、代わりに、サーバ装置30が、このような学習を任意のタイミングで(例えば負荷が少ない時間に)実行することも可能である。
例えば、第1の例では、サーバ装置30は、このサーバ装置30の通信量を監視して処理負荷が低いタイミングを検出し、このように検出したタイミングで上記学習を実行することができる。第2の例では、サーバ装置30は、予め定められた時間帯において上記学習を実行することができる。上記予め定められた時間帯は、その通信量が他の時間帯の通信量に比べて低いとサーバ装置30又は他の装置により判断された時間帯であってもよい。また、上記予め定められた時間帯は、人間により設定された時間帯であってもよい。
これを実現するためには、サーバ装置30は、端末装置20から、第1のデータ、第2のデータ、演者の顔に関するデータ(MPEGファイル及びTSVファイル等)、演者により発せられた発話及び/又は歌唱に関する音声データ(MPEGファイル等)、特定表情指定データ、及び/又は、選択された特定の表情を「使用したくない」旨を示す情報等を受信することが必要である。
上述したように、ある演者(例えば演者B)の端末装置20等(サーバ装置30又はスタジオユニット40であってもよい)は、別の演者(例えば演者A)の端末装置20等により生成された学習モデル(教師データを含む)を受信して利用することができる。この場合、まず、演者Bは、端末装置20等に表示された動画に合わせて表情を示すことができる。ここで、上記動画は、上述したチュートリアル、又は、動画生成部130(230)により生成され表示部150(250)に表示された動画であってもよい。さらに、その表情に基づいて端末装置20等が、その表情に対しては、演者Aの教師データによれば、ある特定の表情が割り当てられている、ということを、その特定の表情のモデル図や文字等を含むユーザインタフェイスを介して提示することができる。さらには、端末装置20等は、この教師データを適用してよいか否かについて、ボタンやフリック等を用いてフィードバックすることが可能なユーザインタフェイスを介して演者Bに問い合わせることができる。端末装置20等は、ユーザインタフェイスを介して入力した演者Bの応答に従って、この教師データを適用するか否かを決定することができる。これにより、演者Bは、演者Aに生成された学習モデル(教師データを含む)をそのまま適用するのではなく、演者Aに生成された学習モデルを演者Bの応答に基づいて微調整して適用することもできる。但し、別の実施形態では、演者Bは、演者Aに生成された学習モデルをそのまま適用してもよい。
9.分類器121の具体例について
次に、分類器121の具体的な構成の一例について説明する。
TrueDepthから獲得できる例えば52点のfloat値の最新の値が、 f[0][0]〜f[0][51]として取得され、一つ前のフレームの最新の値(通常は60FPS程度で高速)が f[1][0]〜f[1][51]として保持されたと仮定する。この場合、フレーム間の距離は、 d[n] = sqrt (( f[0][n] ‐ f[1][n] )^2 ) (n = 0〜51) として取得されることができる。ある表情を演者が表した時のサンプルにおいてフレーム間の距離を時間方向に総和したものを Σd[n] とする。Σd[n] の大きさに応じてΣd[n]がソートされる。これにより、特殊表情を分類する上で最も大きく変動した上位から下位寄与を持つ特徴点のインデックス nが獲得されることができる。この順序は具体的には眉毛近傍、広角、上唇、下唇など表出する表情によって異なる(演者によっても異なるがこの傾向は大きく相違しない)。
分類器121の生成は、ディープラーニングによる学習など様々な方法を用いて実現することが考えられるが、基本的にはこのインデックスの獲得に帰結する。例えば使用時にリアルタイムで取得するTrueDepthの値、f[0][n]の n=0〜51に対して、すべてのデータが表情の判定に必要になるわけではない。これは全く動かない部位が存在するためである。注目すべき特徴量を多く有するインデックスに対して寄与率として1.0を設定し、全く寄与しないインデックスに0.0を設定することで、より計算量及びデータ量を減らして分類を実行することが可能になる。特徴量にマイナスを設定することで、他の表情との分離をしやすくすることも考えられる。
評価関数はその寄与率により以下のような式で表現できる。例えばAという表情については、次の式により表現可能である。
EA(t) = a[0] * f[0][0] + a[1] * f[0][1] + …a[n] * f[0][n] + a[51] * f[0][51]
ここで t は現在のフレームを意味する(時間)。
この評価関数が、あるフレーム tにおいてEA(t), EB(t), EC(t) といった表情A、B、Cのそれぞれに存在する。これらの評価関数はコントローラブルに扱うことができる。例えば、ある表情に対する評価関数が、所定条件を満たすと仮定する。所定条件は、すべての表情に対する評価関数の中において最も高い値を出力し、かつ、閾値以上(例えば0.9以上)であるという条件である。この所定条件を満たした評価関数に対応する表情が演者により表現されたと判定する処理が実行されれば、評価関数はコントローラブルに扱われているといえる。評価関数をコントローラブルに扱う手法は上記方法に限定されない。
「喜怒哀楽」の分類については、事前にチュートリアル(シナリオ)を使って設定した特徴に近い評価関数を選択すればよい。具体的には、例えば、「喜」、「怒」、「哀」、「楽」のそれぞれにおいて獲得した寄与率a[0]〜a[51]の高いインデックスを、分類が必要な要素(この場合は4種)において完全に分離できる組み合わせになるように独立させる。例えば、「喜」EA(t)がインデックスn=1,2,3,4,5の5点の主要な変化特徴とし、「怒」EB(t)も1,2,3,4が主要な変化特徴インデックスである場合、「怒」が必要とする5番目のインデックスが5であれば、分離不可能であるため、より多くの次元を必要とする(例えば「喜」n=1,2,3,4,5,6、「怒」n=1,2,3,4,5,7というように)。この次元をできるだけ少なく分離できる場合には、高速かつデータ量少なく分類を処理できるため、それぞれのターゲットとする表情に対する分離を行う。前述の例であれば、インデックスn=1,2,3,4,5は「喜」及び「怒」において共通の特徴を有しており、インデックス6と7の差分の平方二乗sqrt(f[0][6] ‐ f[0][7] )^2 )が、2つの表情を分離できる最小次元である。実際には5〜10程度の特殊表情を分類させるため、一般的には5〜10次元の特徴が必要となるが、寄与率を適用させ、マイナスの特徴を設定することで、より少ない次元で表情を分離可能になる。この例ではTrueDepthの値を使い説明したが、音声等の特徴量についても同様に扱うことが可能である。
「変形・記号付加」についても同様のアルゴリズムで表情を分類可能であるが、よりタイミングが重要なアニメーションを生成する必要があるため、前述の通り近傍フレームからの差分ではなく、アニメーション発動のキーとなる特徴を抽出することが重要である。サンプリング時に総和としてΣd[n]を取得するだけでなく、サンプリングを「開始期」、「中間期」及び「終了期」の3フェーズに分け、それぞれ評価関数をEM1(t), EM2(t), EM3(t)とする。開始期と中間期、中間期と終了期のステップ関数の様に変化するタイミングに注目する。上記の3フェーズの評価関数として、まず、開始期EA1(t) が閾値以上(例えば0.9)に判定されない限り、中間期の評価関数EA2(t)は判定開始する必要がない。もしEA1(t)>0.9となり、その後EA2 (t)>0.9となれば、「変形・記号付加」のエフェクトを開始し、その後、EA3(t)>0.9となれば、エフェクトを終了することができる。
「イベント駆動」は表情制御部120(220)の外部システムから前述の評価関数を利用する様態である。例えば「物が当たったときに痛そうな顔をする」という場合、物理エンジンによる衝突判定を人体オブジェクトに設定し、その値 s は通常は0であり、その値が1の場合には、対象となる物体が衝突しているとする。この場合の評価関数は EVf(t) = s * a[0] * f[0][0] + a[1] * f[0][1] + …a[n] * f[0][n] + a[51] * f[0][51] と表現でき、 s = 1 の場合にしか値を変動させない。実際にはアニメーションには一定の再生時間(duration)が必要であるので、s は、1又は0といったバイナリではなく、衝突時が 1 であり、そこからΔd = 0.1 といった減衰パラメータを有し、数秒間で影響がゼロになるような実装形態をとることができる。
物理エンジン以外の外部システムとしては、キーボード、ジョイパッド、タッチパネル入力といったユーザインタフェイス、キャラクターの体温や情動による顔の赤らみの表現、汚れやライティングといった通常のグラフィックシステムによるエフェクトパラメータとの連携を考慮することが考えられる。例えば、キャラクターの顔のレンダリングシステムにおいて、リアルタイムで肌の表面下散乱を模する項の影響度を0〜1に変化させられるシェーダパラメータを有していた場合、上記のEVf(t)の値を0〜1に正規化して渡すことで、特定の顔をした時に、顔色が変化するといった表現が可能になる。これは、例えばリアルな顔の赤らみや、青ざめが表現できるだけでなく、目の輝きや瞳孔の大きさなどのコントローラにも使用できる。事前に顔の表現を用意するのではなく、パラメータによって顔の状態を制御する方法は(リアルタイムではなく)映画等のアニメーションでよく利用されるアニメーションコントローラの手法であるが、そのスライダ値をUIによって制御するのではなく、人間の自然な顔の特徴から多段階でコントロールできるという利点がある。また「リアリスティックかどうか」という画風にも影響しない応用範囲がある。
10.本件出願に開示された技術が適用される分野
本件出願に開示された技術は、例えば、次のような分野において適用することが可能なものである。
(1)仮想的なキャラクターが登場するライブ動画を配信するアプリケーション・サービス
(2)文字及びアバター(仮想的なキャラクター)を用いてコミュニケーションすることができるアプリケーション・サービス(チャットアプリケーション、メッセンジャー、メールアプリケーション等)
(3)表情を変化させることが可能な仮想的なキャラクターを操作するゲーム・サービス(シューティングゲーム、恋愛ゲーム及びロールプレイングゲーム等)
本出願は、「コンピュータプログラム、サーバ装置、端末装置及び表示方法」と題して2018年12月18日に提出された日本国特許出願第2018−236543に基づくものであって、この日本国特許出願による優先権の利益を享受するものである。この日本国特許出願の全体の内容が引用により本明細書に組み入れられる。
1 通信システム
10 通信網
20(20A〜20C) 端末装置
30(30A〜30C) サーバ装置
40(40A、40B) スタジオユニット
100(200) 取得部
102(202) 第1のセンサ
104(204) 第2のセンサ
110(210) 処理部
120(220) 表情制御部
121(221) 分類器
122(222) 表情選択部
123(223) マニュアル入力部
124(224) 教師データ記憶部
125(225) ユーザ設定調整部
126(226) ユーザプロファイル記憶部
130(230) 動画生成部
140(240) 記憶部
150(250) 表示部
160(260) 通信部

Claims (29)

  1. コンピュータプログラムであって、
    プロセッサにより実行されることにより、
    第1のセンサから演者の顔に関するデータを取得し、
    前記データに基づいて生成された第1のデータを分類器に入力して、前記第1のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、
    前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、
    ように前記プロセッサを機能させる、ことを特徴とするコンピュータプログラム。
  2. 前記第1のデータが、前記演者の顔における特定の点の移動量に関するデータを含む、請求項1に記載のコンピュータプログラム。
  3. 前記プロセッサが、
    第2のセンサから演者により発せられた発話及び/又は歌唱に関する音声データを取得し、
    前記音声データに基づいて生成された第2のデータを前記第1のデータとともに前記分類器に入力して、前記第1のデータ及び前記第2のデータに基づいて前記特定表情データを前記分類器から出力させる、請求項2に記載のコンピュータプログラム。
  4. 前記第2のデータが、前記演者により発せられた音声のラウドネス、音圧、話速、及び/又は、フォルマントに関するデータを含む、請求項3に記載のコンピュータプログラム。
  5. 前記第2のデータが、前記音声データに対して自然言語処理を実行することにより得られた、単語、語尾及び/又は感嘆語に関するデータを含む、請求項3に記載のコンピュータプログラム。
  6. 前記プロセッサは、
    前記第1のデータ及び/又は前記第2のデータに対応して前記分類器から前記特定表情データが出力された場合であっても、前記第1のデータ及び/又は前記第2のデータに対応して前記演者からユーザインタフェイスを介して前記複数の特定の表情のうちの1つの特定の表情を指定する特定表情指定データを入力した場合には、該特定表情指定データに対応する特定の表情を、表示すべき特定の表情として選択する、というアルゴリズムに従って動作する、請求項3に記載のコンピュータプログラム。
  7. 前記プロセッサが、該特定表情指定データを前記第1のデータ及び/又は前記第2のデータに対する教師データとして前記分類器に提供する、請求項6に記載のコンピュータプログラム。
  8. 前記分類器が、前記第1のデータ及び/又は前記第2のデータに対して主成分分析を実行して学習モデルを生成する、請求項3に記載のコンピュータプログラム。
  9. 前記プロセッサが、前記第1のデータ及び/又は前記第2のデータに対応して前記演者からユーザインタフェイスを介して前記複数の特定の表情のうちの1つの特定の表情を指定する特定表情指定データを入力した場合には、
    前記分類器は、前記第1のデータ及び/又は前記第2のデータに加えて前記特定表情指定データに対して主成分分析を実行して学習モデルを生成する、請求項8に記載のコンピュータプログラム。
  10. 前記特定表情指定データは、タッチパネルに対する前記演者によるスワイプ操作の方向及び移動量に従って生成される、請求項6に記載のコンピュータプログラム。
  11. 前記プロセッサが、
    前記複数の特定の表情のうちのいずれか1つの特定の表情に関連する表情を表現する旨を前記演者に指示するスクリプトを表示部に表示させ、
    前記スクリプトに対応付けて前記第1のデータ及び/又は前記第2のデータに対する教師データとして、前記1つの特定の表情を示すデータを前記分類器に提供する、請求項2に記載のコンピュータプログラム。
  12. 前記プロセッサが、
    通信回線を介してサーバ装置から学習モデルを受信し、
    受信した前記学習モデルを前記分類器に提供する、請求項1に記載のコンピュータプログラム。
  13. 前記プロセッサが、
    前記分類器により生成された学習モデルを前記演者に対応付けて記憶部に記憶する、請求項1に記載のコンピュータプログラム。
  14. 前記プロセッサが、
    前記データを、通信回線を介してサーバ装置に送信する、請求項1に記載のコンピュータプログラム。
  15. 前記複数の特定の表情が、喜怒哀楽を含む感情を表現する表情、顔の形状が非現実的に変形した表情、及び/又は、顔に記号、図形及び/又は色が付加された表情を含む、請求項1に記載のコンピュータプログラム。
  16. 前記喜怒哀楽を含む感情を表現する表情は、プルチックの感情の輪を含む、言語及び文化に依存しない心理空間にマッピングされたユーザインタフェイスに基づいて表現されるものである、請求項15に記載のコンピュータプログラム。
  17. 前記プロセッサが、中央処理装置(CPU)、マイクロプロセッサ又はグラフィックスプロセッシングユニット(GPU)である、請求項1に記載のコンピュータプログラム。
  18. 前記プロセッサが、スマートフォン、タブレット、携帯電話又はパーソナルコンピュータに搭載される、請求項1に記載のコンピュータプログラム。
  19. コンピュータにより読み取り可能な命令を実行するプロセッサにより実行される表示方法であって、
    該プロセッサが、前記命令を実行することにより、
    第1のセンサから演者の顔に関するデータを取得し、
    前記データに基づいて生成された第1のデータを分類器に入力して、前記第1のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、
    前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、ことを特徴とする表示方法。
  20. 前記プロセッサが、中央処理装置(CPU)、マイクロプロセッサ又はグラフィックスプロセッシングユニット(GPU)である、請求項19に記載の表示方法。
  21. 前記プロセッサが、スマートフォン、タブレット、携帯電話又はパーソナルコンピュータに搭載される、請求項19に記載の表示方法。
  22. プロセッサを具備し、
    該プロセッサが、コンピュータにより読み取り可能な命令を実行することにより、
    第1のセンサから演者の顔に関するデータを取得し、
    前記データに基づいて生成された第1のデータを分類器に入力して、前記第1のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、
    前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、ことを特徴とする端末装置。
  23. 前記プロセッサが、中央処理装置(CPU)、マイクロプロセッサ又はグラフィックスプロセッシングユニット(GPU)である、請求項22に記載の端末装置。
  24. スマートフォン、タブレット、携帯電話又はパーソナルコンピュータである、請求項22に記載の端末装置。
  25. プロセッサを具備し、
    該プロセッサが、コンピュータにより読み取り可能な命令を実行することにより、
    第1のセンサから演者の顔に関するデータを受信し、
    前記データに基づいて生成された第1のデータを分類器に入力して、前記第1のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、
    前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、ことを特徴とするサーバ装置。
  26. コンピュータプログラムであって、
    プロセッサにより実行されることにより、
    第2のセンサから演者により発せられた発話及び/又は歌唱に関する音声データを取得し、
    前記音声データに基づいて生成された第2のデータを分類器に入力して、前記第2のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、
    前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、
    ように前記プロセッサを機能させる、ことを特徴とするコンピュータプログラム。
  27. プロセッサを具備し、
    該プロセッサが、コンピュータにより読み取り可能な命令を実行することにより、
    第2のセンサから演者により発せられた発話及び/又は歌唱に関する音声データを取得し、
    前記音声データに基づいて生成された第2のデータを分類器に入力して、前記第2のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、
    前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、ことを特徴とするサーバ装置。
  28. プロセッサを具備し、
    該プロセッサが、コンピュータにより読み取り可能な命令を実行することにより、
    第2のセンサから演者により発せられた発話及び/又は歌唱に関する音声データを取得し、
    前記音声データに基づいて生成された第2のデータを分類器に入力して、前記第2のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、
    前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、ことを特徴とする端末装置。
  29. コンピュータにより読み取り可能な命令を実行するプロセッサにより実行される表示方法であって、
    該プロセッサが、前記命令を実行することにより、
    第2のセンサから演者により発せられた発話及び/又は歌唱に関する音声データを取得し、
    前記音声データに基づいて生成された第2のデータを分類器に入力して、前記第2のデータに基づいて予め定められた複数の特定の表情のうちの1つの特定の表情を示す特定表情データを前記分類器から出力させ、
    前記分類器から出力された前記特定表情データに対応する特定の表情を、表示すべき特定の表情として選択する、ことを特徴とする表示方法。
JP2020561452A 2018-12-18 2019-12-17 コンピュータプログラム、サーバ装置、端末装置及び表示方法 Active JP7278307B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023077309A JP2023103335A (ja) 2018-12-18 2023-05-09 コンピュータプログラム、サーバ装置、端末装置及び表示方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018236543 2018-12-18
JP2018236543 2018-12-18
PCT/JP2019/049342 WO2020129959A1 (ja) 2018-12-18 2019-12-17 コンピュータプログラム、サーバ装置、端末装置及び表示方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023077309A Division JP2023103335A (ja) 2018-12-18 2023-05-09 コンピュータプログラム、サーバ装置、端末装置及び表示方法

Publications (2)

Publication Number Publication Date
JPWO2020129959A1 true JPWO2020129959A1 (ja) 2021-11-04
JP7278307B2 JP7278307B2 (ja) 2023-05-19

Family

ID=71100379

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020561452A Active JP7278307B2 (ja) 2018-12-18 2019-12-17 コンピュータプログラム、サーバ装置、端末装置及び表示方法
JP2023077309A Pending JP2023103335A (ja) 2018-12-18 2023-05-09 コンピュータプログラム、サーバ装置、端末装置及び表示方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023077309A Pending JP2023103335A (ja) 2018-12-18 2023-05-09 コンピュータプログラム、サーバ装置、端末装置及び表示方法

Country Status (3)

Country Link
US (1) US20210312167A1 (ja)
JP (2) JP7278307B2 (ja)
WO (1) WO2020129959A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7234187B2 (ja) * 2020-06-29 2023-03-07 グリー株式会社 情報処理プログラム、情報処理方法、情報処理装置
WO2023199582A1 (ja) * 2022-04-12 2023-10-19 株式会社Nttドコモ 情報提供装置
CN114879877B (zh) * 2022-05-23 2023-03-28 北京新唐思创教育科技有限公司 状态数据同步方法、装置、设备及存储介质
CN116597063B (zh) * 2023-07-19 2023-12-05 腾讯科技(深圳)有限公司 图片渲染方法、装置、设备和介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004145625A (ja) * 2002-10-24 2004-05-20 Mitsubishi Electric Corp 似顔絵の作成装置
JP2005044330A (ja) * 2003-07-24 2005-02-17 Univ Of California San Diego 弱仮説生成装置及び方法、学習装置及び方法、検出装置及び方法、表情学習装置及び方法、表情認識装置及び方法、並びにロボット装置
JP2006185393A (ja) * 2004-12-28 2006-07-13 Oki Electric Ind Co Ltd 情報端末装置
JP2009153692A (ja) * 2007-12-26 2009-07-16 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像表示制御装置
JP2010176224A (ja) * 2009-01-27 2010-08-12 Nikon Corp 画像処理装置およびデジタルカメラ
US20130242031A1 (en) * 2012-03-14 2013-09-19 Frank Petterson Modifying an appearance of a participant during a video conference
JP2014211719A (ja) * 2013-04-17 2014-11-13 キヤノン株式会社 情報処理装置およびその方法
US20160247309A1 (en) * 2014-09-24 2016-08-25 Intel Corporation User gesture driven avatar apparatus and method
US20170069124A1 (en) * 2015-04-07 2017-03-09 Intel Corporation Avatar generation and animations
JP2018045350A (ja) * 2016-09-13 2018-03-22 Kddi株式会社 所定対象のうちの特定対象における状態を識別する装置、プログラム及び方法
JP2018092635A (ja) * 2017-12-15 2018-06-14 株式会社コロプラ 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3485508B2 (ja) * 1999-10-26 2004-01-13 株式会社国際電気通信基礎技術研究所 顔画像伝送方法およびシステムならびに当該システムで用いられる顔画像送信装置および顔画像再生装置
WO2005031654A1 (en) * 2003-09-30 2005-04-07 Koninklijke Philips Electronics, N.V. System and method for audio-visual content synthesis
US20080301557A1 (en) * 2007-06-04 2008-12-04 Igor Kotlyar Systems, methods and software products for online dating
WO2010074786A2 (en) * 2008-12-04 2010-07-01 Total Immersion Software, Inc. System and methods for dynamically injecting expression information into an animated facial mesh
TWI430185B (zh) * 2010-06-17 2014-03-11 Inst Information Industry 臉部表情辨識系統及其辨識方法及其電腦程式產品
US9350951B1 (en) * 2011-11-22 2016-05-24 Scott Dallas Rowe Method for interactive training and analysis
US9747495B2 (en) * 2012-03-06 2017-08-29 Adobe Systems Incorporated Systems and methods for creating and distributing modifiable animated video messages
GB2516965B (en) * 2013-08-08 2018-01-31 Toshiba Res Europe Limited Synthetic audiovisual storyteller
US10042548B2 (en) * 2015-06-02 2018-08-07 Facebook, Inc. Methods and systems for providing user feedback using an emotion scale
JP6617053B2 (ja) * 2016-02-29 2019-12-04 Kddi株式会社 感情分類によって文脈意味の理解精度を高める発話意味分析プログラム、装置及び方法
US9812151B1 (en) * 2016-11-18 2017-11-07 IPsoft Incorporated Generating communicative behaviors for anthropomorphic virtual agents based on user's affect
JP2018116589A (ja) * 2017-01-20 2018-07-26 Kddi株式会社 対象画像の変更画像群を用いる状態識別装置、プログラム及び方法
KR101966384B1 (ko) * 2017-06-29 2019-08-13 라인 가부시키가이샤 영상 처리 방법 및 시스템
US10586368B2 (en) * 2017-10-26 2020-03-10 Snap Inc. Joint audio-video facial animation system
US10375354B2 (en) * 2018-01-05 2019-08-06 Facebook, Inc. Video communication using subtractive filtering
US10719968B2 (en) * 2018-04-18 2020-07-21 Snap Inc. Augmented expression system
US10789753B2 (en) * 2018-04-23 2020-09-29 Magic Leap, Inc. Avatar facial expression representation in multidimensional space
US11722764B2 (en) * 2018-05-07 2023-08-08 Apple Inc. Creative camera
US11379261B2 (en) * 2019-11-12 2022-07-05 Tata Consultancy Services Limited Systems and methods for automatically creating an image processing pipeline

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004145625A (ja) * 2002-10-24 2004-05-20 Mitsubishi Electric Corp 似顔絵の作成装置
JP2005044330A (ja) * 2003-07-24 2005-02-17 Univ Of California San Diego 弱仮説生成装置及び方法、学習装置及び方法、検出装置及び方法、表情学習装置及び方法、表情認識装置及び方法、並びにロボット装置
JP2006185393A (ja) * 2004-12-28 2006-07-13 Oki Electric Ind Co Ltd 情報端末装置
JP2009153692A (ja) * 2007-12-26 2009-07-16 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像表示制御装置
JP2010176224A (ja) * 2009-01-27 2010-08-12 Nikon Corp 画像処理装置およびデジタルカメラ
US20130242031A1 (en) * 2012-03-14 2013-09-19 Frank Petterson Modifying an appearance of a participant during a video conference
JP2014211719A (ja) * 2013-04-17 2014-11-13 キヤノン株式会社 情報処理装置およびその方法
US20160247309A1 (en) * 2014-09-24 2016-08-25 Intel Corporation User gesture driven avatar apparatus and method
US20170069124A1 (en) * 2015-04-07 2017-03-09 Intel Corporation Avatar generation and animations
JP2018045350A (ja) * 2016-09-13 2018-03-22 Kddi株式会社 所定対象のうちの特定対象における状態を識別する装置、プログラム及び方法
JP2018092635A (ja) * 2017-12-15 2018-06-14 株式会社コロプラ 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
中村 勝則 KATSUNORI NAKAMURA, 第81回(2019年)全国大会講演論文集(4) インタフェース コンピュータと人間社会, JPN6022028266, ISSN: 0004904714 *

Also Published As

Publication number Publication date
JP2023103335A (ja) 2023-07-26
US20210312167A1 (en) 2021-10-07
JP7278307B2 (ja) 2023-05-19
WO2020129959A1 (ja) 2020-06-25

Similar Documents

Publication Publication Date Title
EP3381175B1 (en) Apparatus and method for operating personal agent
JP7278307B2 (ja) コンピュータプログラム、サーバ装置、端末装置及び表示方法
JP6945375B2 (ja) 画像生成装置及びプログラム
JP5859456B2 (ja) プレゼンテーション用カメラ・ナビゲーション
JP4395687B2 (ja) 情報処理装置
CN112199002B (zh) 基于虚拟角色的交互方法及装置、存储介质、计算机设备
KR101306221B1 (ko) 3차원 사용자 아바타를 이용한 동영상 제작장치 및 방법
US11017551B2 (en) System and method for identifying a point of interest based on intersecting visual trajectories
US20090128567A1 (en) Multi-instance, multi-user animation with coordinated chat
CN109086860B (zh) 一种基于虚拟人的交互方法及系统
WO2007098560A1 (en) An emotion recognition system and method
US20220215678A1 (en) System and method for reconstructing unoccupied 3d space
US10785489B2 (en) System and method for visual rendering based on sparse samples with predicted motion
CN107480766B (zh) 多模态虚拟机器人的内容生成的方法和系统
US20190251350A1 (en) System and method for inferring scenes based on visual context-free grammar model
US20230173683A1 (en) Behavior control device, behavior control method, and program
JP7479618B2 (ja) 情報処理プログラム、情報処理方法、情報処理装置
CN110176044B (zh) 信息处理方法、装置、存储介质和计算机设备
CN114025854A (zh) 程序、方法以及终端装置
EP4382182A1 (en) Device and method for controlling a virtual avatar on an electronic device
US20240193838A1 (en) Computer-implemented method for controlling a virtual avatar
WO2024080135A1 (ja) 表示制御装置、表示制御方法および表示制御プログラム
KR102590988B1 (ko) 아바타와 함께 운동하는 메타버스 서비스 제공 장치, 방법 및 프로그램
CN116760942B (zh) 一种全息互动远程会议方法及系统
KR102396004B1 (ko) 인공지능 예술 튜터링 시스템 및 그 제어 방법

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210622

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210622

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220712

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220906

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221025

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221221

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230411

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230509

R150 Certificate of patent or registration of utility model

Ref document number: 7278307

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150