(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023166039
(43)【公開日】2023-11-20
(54)【発明の名称】情報処理方法、情報処理システム及びプログラム
(51)【国際特許分類】
G06T 13/40 20110101AFI20231113BHJP
H04N 21/2343 20110101ALI20231113BHJP
【FI】
G06T13/40
H04N21/2343
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022076801
(22)【出願日】2022-05-08
(71)【出願人】
【識別番号】522180972
【氏名又は名称】株式会社TEDI
(74)【代理人】
【識別番号】110004093
【氏名又は名称】弁理士法人アクセル特許事務所
(72)【発明者】
【氏名】花本 忠夫
【テーマコード(参考)】
5B050
5C164
【Fターム(参考)】
5B050AA08
5B050BA07
5B050BA08
5B050BA09
5B050BA12
5B050CA08
5B050DA04
5B050EA05
5B050EA13
5B050EA18
5B050EA24
5B050EA26
5C164FA06
5C164MA03S
5C164PA39
5C164SA25S
5C164SB02P
(57)【要約】
【課題】 アクターの動きをキャラクタオブジェクトに精度よく再現させる。
【解決手段】
一実施形態に係る情報処理方法は、情報処理システムが実行する情報処理方法であって、アクターの特徴点生成モデルを利用して、特徴点情報の時系列データから新たな特徴点情報を生成する特徴点生成処理と、生成された特徴点情報をキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクトを含む配信動画を生成する動画生成処理と、生成された配信動画を配信する配信処理と、を含む。
【選択図】
図7
【特許請求の範囲】
【請求項1】
情報処理システムが実行する情報処理方法であって、
特徴点生成モデルを利用して、アクターの特徴点情報の時系列データから新たな特徴点情報を生成する特徴点生成処理と、
生成された特徴点情報をキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクトを含む配信動画を生成する動画生成処理と、
生成された配信動画を配信する配信処理と、
を含む情報処理方法。
【請求項2】
前記アクターが被写体として撮影された元動画を取得する取得処理と、
前記元動画から前記アクターの特徴点情報を推定し、前記特徴点情報の時系列データを生成する推定処理と、
を更に含む請求項1に記載の情報処理方法。
【請求項3】
前記アクターが装着したセンサからセンサデータを取得する取得処理と、
前記センサデータから前記アクターの特徴点情報を推定し、前記特徴点情報の時系列データを生成する推定処理と、
を更に含む請求項1に記載の情報処理方法。
【請求項4】
特徴点情報の時系列データを入力すると、新たな特徴点情報を出力するように、ニューラルネットワークに機械学習させる学習処理を更に含む
請求項1に記載の情報処理方法。
【請求項5】
前記学習処理は、誤った特徴点情報を含む一の期間の特徴点情報の時系列データを入力すると、前記誤った特徴点情報を修正した特徴点情報を出力するように、前記ニューラルネットワークに機械学習させる
請求項4に記載の情報処理方法。
【請求項6】
前記特徴点生成処理は、一の期間の特徴点情報の時系列データから、当該一の期間のいずれかの特徴点情報に対応する新たな特徴点情報を生成する
請求項1に記載の情報処理方法。
【請求項7】
前記特徴点生成処理は、一の期間の特徴点情報の時系列データから、当該一の期間における最新の特徴点情報に対応する新たな特徴点情報を生成する
請求項1に記載の情報処理方法。
【請求項8】
特徴点生成モデルを利用して、アクターの特徴点情報の時系列データから新たな特徴点情報を生成する特徴点生成部と、
生成された特徴点情報をキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクトを含む配信動画を生成する動画生成部と、
生成された配信動画を配信する配信部と、
を備える情報処理システム。
【請求項9】
コンピュータに、
特徴点生成モデルを利用して、アクターの特徴点情報の時系列データから新たな特徴点情報を生成する特徴点生成処理と、
生成された特徴点情報をキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクトを含む配信動画を生成する動画生成処理と、
生成された配信動画を配信する配信処理と、
を含む情報処理方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理方法、情報処理システム及びプログラムに関する。
【背景技術】
【0002】
従来、エンターテイメントの分野では、モーションキャプチャで取得した人物の動きを転写することにより、人物の動きをキャラクタオブジェクト(アバター)に再現させる技術が利用されている。
【0003】
例えば、引用文献1には、配信ユーザの動きに基づいて生成される第1キャラクタを含む動画を配信する動画配信システムであって、一又は複数のコンピュータプロセッサを備え、前記一又は複数のコンピュータプロセッサは、コンピュータ読み取り可能な命令を実行することにより、複数のユーザから前記動画への参加要求を受け付け、前記複数のユーザの中から複数の参加ユーザを選定し、前記複数の参加ユーザの中から一又は複数のゲストユーザを選定し、前記一又は複数のゲストユーザの選定に関する通知を前記一又は複数のゲストユーザの各々に送信し、前記一又は複数のゲストユーザの少なくとも一部に対応するゲストキャラクタ及び前記第1キャラクタを含む共演動画を生成する、動画配信システムが開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、従来技術では、モーションキャプチャに失敗した場合、人物の誤った動きがキャラクタオブジェクトに再現されるという問題があった。
【0006】
本発明は、上記の課題を鑑みてなされたものであり、アクターの動きをキャラクタオブジェクトに精度よく再現させることを目的とする。
【課題を解決するための手段】
【0007】
一実施形態に係る情報処理方法は、情報処理システムが実行する情報処理方法であって、特徴点生成モデルを利用して、特徴点情報の時系列データから新たな特徴点情報を生成する特徴点生成処理と、生成された特徴点情報をキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクトを含む配信動画を生成する動画生成処理と、生成された配信動画を配信する配信処理と、を含む。
【発明の効果】
【0008】
一実施形態によれば、アクターの動きをキャラクタオブジェクトに精度よく再現させることができる。
【図面の簡単な説明】
【0009】
【
図1】第1実施形態に係る情報処理システムの構成の一例を示す図である。
【
図2】情報処理装置のハードウェア構成の一例を示す図である。
【
図3】動画配信装置の機能構成の一例を示す図である。
【
図5】情報処理システムが実行する処理の一例を示すフローチャートである。
【
図6】情報処理システムが実行する処理を説明する模式図である。
【
図7】情報処理システムが実行する処理を説明する模式図である。
【
図8】情報処理システムが実行する処理を説明する模式図である。
【
図10】第2実施形態に係る情報処理システムの構成の一例を示す図である。
【
図11】動画配信装置の機能構成の一例を示す図である。
【
図12】情報処理システムが実行する処理の一例を示すフローチャートである。
【
図13】情報処理システムが実行する処理を説明する模式図である。
【
図14】情報処理システムが実行する処理を説明する模式図である。
【発明を実施するための形態】
【0010】
以下、本発明の各実施形態について、添付の図面を参照しながら説明する。なお、各実施形態に係る明細書及び図面の記載に関して、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
【0011】
[第1実施形態]
<システム構成>
まず、本実施形態に係る情報処理システムの概要について説明する。本実施形態に係る情報処理システムは、アクターの動画に基づいて、アクターの動きを再現したキャラクタオブジェクトを含む配信動画Mをライブ配信するためのシステムである。ここで言うキャラクタオブジェクトは、アクターを模した2次元モデル又は3次元モデルである。アクターは、人であってもよいし、犬や猫などの動物であってもよい。この情報処理システムは、例えば、仮想空間上でのアバターの操作や、VTuberによる動画配信に利用できる。
【0012】
図1は、本実施形態に係る情報処理システムの構成の一例を示す図である。
図1に示すように、本実施形態に係る情報処理システムは、ネットワークNを介して相互に通信可能に接続された、動画配信装置1と、アクター端末2と、視聴者端末3と、を備える。ネットワークNは、例えば、有線LAN(Local Area Network)、無線LAN、インターネット、公衆回線網、モバイルデータ通信網、又はこれらの組み合わせである。
図1の例では、情報処理システムは、動画配信装置1、アクター端末2及び視聴者端末3をそれぞれ1つずつ備えるが、それぞれ複数備えてもよい。
【0013】
動画配信装置1は、アクターの動きを再現したキャラクタオブジェクトを含む配信動画Mを視聴者端末3に配信する情報処理装置である。動画配信装置1は、アクターが被写体として撮影された元動画mをアクター端末2からリアルタイムで受信し、受信した元動画mに基づいてアクターの動きを再現したキャラクタオブジェクトを含む配信動画Mを生成し、生成した配信動画Mを視聴者端末3にライブ配信する。動画配信装置1は、配信動画Mを生成し、ライブ配信可能な任意の情報処理装置であり得る。動画配信装置1は、例えば、PC(Personal Computer)、スマートフォン、タブレット端末、サーバ装置又はマイクロコンピュータであるが、これに限られない。
【0014】
アクター端末2は、配信動画Mのアクターが利用する情報処理装置である。アクターは、配信動画Mにおいてキャラクタオブジェクトに動きを再現される者、言い換えると、キャラクタオブジェクトを操作する者である。アクター端末2は、アクターが被写体となった元動画mを撮影し、得られた元動画mを動画配信装置1にリアルタイムで送信する。アクター端末2は、元動画mを撮影して動画配信装置1にリアルタイムで送信可能な任意の情報処理装置であり得る。また、アクター端末2は、元動画mを撮影するカメラを接続され、カメラから元動画mを取得し、取得した元動画mを動画配信装置1にリアルタイムで送信可能な情報処理装置であってもよい。アクター端末2は、例えば、PC、スマートフォン又はタブレット端末であるが、これに限られない。
【0015】
視聴者端末3は、配信動画Mの視聴者が利用する情報処理装置である。視聴者は、アクターの動きを再現したキャラクタオブジェクトを含む配信動画Mを閲覧する人である。視聴者端末3は、動画配信装置1から配信動画Mをリアルタイムで受信し、ディスプレイに表示する。視聴者端末3は、配信動画Mを受信し、表示可能な任意の情報処理装置であり得る。視聴者端末3は、例えば、PC、スマートフォン又はタブレット端末であるが、これに限られない。
【0016】
<ハードウェア構成>
次に、情報処理装置100のハードウェア構成について説明する。
図2は、情報処理装置100のハードウェア構成の一例を示す図である。
図2に示すように、情報処理装置100は、バスBを介して相互に接続された、プロセッサ101と、メモリ102と、ストレージ103と、通信I/F104と、入出力I/F105と、ドライブ装置106と、を備える。
【0017】
プロセッサ101は、ストレージ103に記憶されたOS(Operating System)を含む各種のプログラムをメモリ102に展開して実行することにより、情報処理装置100の各構成を制御し、情報処理装置100の機能を実現する。プロセッサ101は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、ASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、又はこれらの組み合わせである。
【0018】
メモリ102は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、又はこれらの組み合わせである。ROMは、例えば、PROM(Programmable ROM)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、又はこれらの組み合わせである。RAMは、例えば、DRAM(Dynamic RAM)、SRAM(Static RAM)、又はこれらの組み合わせである。
【0019】
ストレージ103は、OSを含む各種のプログラム及びデータを記憶する。ストレージ103は、例えば、フラッシュメモリ、HDD(Hard Disk Drive)、SSD(Solid State Drive)、SCM(Storage Class Memories)、又はこれらの組み合わせである。
【0020】
通信I/F104は、情報処理装置100を、ネットワークNを介して外部装置に接続し、通信を制御するためのインタフェースである。通信I/F104は、例えば、Bluetooth(登録商標)、Wi-Fi(登録商標)、ZigBee(登録商標)、Ethernet(登録商標)、又は光通信に準拠したアダプタであるが、これに限られない。
【0021】
入出力I/F105は、情報処理装置100に入力装置107及び出力装置108を接続するためのインタフェースである。入力装置107は、例えば、マウス、キーボード、タッチパネル、マイク、スキャナ、カメラ、各種センサ、操作ボタン、又はこれらの組み合わせである。出力装置108は、例えば、ディスプレイ、プロジェクタ、プリンタ、スピーカ、バイブレータ、又はこれらの組み合わせである。
【0022】
ドライブ装置106は、ディスクメディア109のデータを読み書きする。ドライブ装置106は、例えば、磁気ディスクドライブ、光学ディスクドライブ、光磁気ディスクドライブ、又はこれらの組み合わせである。ディスクメディア109は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、FD(Floppy Disk)、MO(Magneto-Optical disk)、BD(Blu-ray(登録商標) Disc)、又はこれらの組み合わせである。
【0023】
なお、本実施形態において、プログラムは、情報処理装置100の製造段階でメモリ102又はストレージ103に書き込まれてもよいし、ネットワークNを介して情報処理装置100に提供されてもよいし、ディスクメディア109などの非一時的でコンピュータ読み取り可能な記録媒体を介して情報処理装置100に提供されてもよい。
【0024】
<機能構成>
次に、動画配信装置1の機能構成について説明する。
図3は、動画配信装置1の機能構成の一例を示す図である。
図3に示すように、動画配信装置1は、通信部11と、記憶部12と、制御部13と、を備える。
【0025】
通信部11は、通信I/F104により実現される。通信部11は、ネットワークNを介して、アクター端末2及び視聴者端末3との間で情報の送受信を行う。通信部11は、アクター端末2から元動画mを受信する。また、通信部11は、視聴者端末3に配信動画Mを送信(配信)する。
【0026】
記憶部12は、メモリ102及びストレージ103により実現される。記憶部12は、元動画mと、特徴点推定モデル121と、特徴点情報122と、特徴点生成モデル123と、動画情報124と、配信動画Mと、を記憶する。
【0027】
元動画mは、アクターが被写体として撮影された動画である。元動画mは、アクターが自分で撮影してもよいし、アクターとは別の撮影者が撮影してもよい。動画配信装置1は、アクター端末2から送信された元動画mをリアルタイムで受信し、記憶部12に順次保存する。
【0028】
特徴点推定モデル121は、アクターが被写体として撮影された画像から、被写体となったアクターの特徴点情報を推定する、学習済みの機械学習モデルである。特徴点推定モデル121は、アクターが被写体として撮影された画像を入力されると、被写体となったアクターの特徴点情報を出力するように学習された任意の機械学習モデルであり得る。特徴点推定モデル121は、例えば、深層学習させたCNN(Convolutional Neural Network)であるが、これに限られない。特徴点推定モデル121は、骨格検出モデルであってもよいし、フェイシャルキーポイント検出モデルであってもよい。
【0029】
特徴点情報122は、アクターの複数の特徴点に関する情報であり、各特徴点の座標と、各特徴点の関係と、を示す情報を含む。アクターの特徴点は、アクターの体の特定の部位であり、アクター及び特徴点推定モデル121に応じて設定される。アクターの特徴点は、例えば、関節、目、耳、鼻又は口であるが、これに限られない。特徴点は、骨格検出により検出される骨格であってもよいし、フェイシャルキーポイント検出により検出されるフェイシャルキーポイントであってもよい。特徴点の座標は、2次元の座標であってもよいし、3次元の座標であってもよい。特徴点情報122は、特徴点推定モデル121を利用して元動画mから推定されたアクターの特徴点情報122Aと、特徴点生成モデル123を利用して特徴点情報122Aから生成された特徴点情報122Bと、を含む。
【0030】
特徴点生成モデル123は、特徴点情報122Aの時系列データから新たな特徴点情報122Bを生成する、学習済みの機械学習モデルである。特徴点生成モデル123は、一の期間の特徴点情報の時系列データが入力されると、当該一の期間におけるいずれかの特徴点情報に対応する新たな特徴点情報を生成するように学習される。また、特徴点生成モデル123は、誤った特徴点情報を含む一の期間の特徴点情報の時系列データを入力されると、誤った特徴点情報を修正した特徴点情報を生成するように学習される。特徴点生成モデル123は、例えば、深層学習させたRNN(Recurrent Neural Network)であるが、これに限られない。特徴点生成モデル123の学習方法について、詳しくは後述する。
【0031】
動画情報124は、配信動画Mの生成に利用される任意の情報である。動画情報124は、アクターの動きを再現するキャラクタオブジェクトに関する情報、配信動画Mの音に関する情報、配信動画Mを構成する仮想空間に関する情報及び配信動画Mの視点に関する情報を含む。キャラクタオブジェクトに関する情報は、キャラクタオブジェクトの形状、構造、大きさ、及び色を示す情報と、キャラクタオブジェクトに設定された特徴点情報と、仮想空間上におけるキャラクタオブジェクトの位置を示す情報と、を含む。音に関する情報は、BGM(Back Ground Music)及び効果音に関する情報と、アクターの音声に関する情報と、を含む。仮想空間に関する情報は、仮想空間を構成する背景のキャラクタオブジェクトを示す情報と、仮想空間の光源の位置、明るさ、方向及び色を示す情報と、を含む。視点に関する情報は、仮想空間における視点の位置、画角、ズーム及び方向を示す情報を含む。なお、動画情報124は、上記の例に限られない。動画情報124は、上記の情報の一部を含まなくてもよいし、上記以外の情報を含んでもよい。
【0032】
配信動画Mは、動画配信装置1により生成された、視聴者に配信される動画である。動画配信装置1は、リアルタイムで生成した配信動画Mを、順次記憶部12に保存する。
【0033】
制御部13は、プロセッサ101がメモリ102からプログラムを読み出して実行し、他のハードウェア構成と協働することにより実現される。制御部13は、動画配信装置1の動作全体を制御する。制御部13は、取得部131と、推定部132と、特徴点生成部133と、動画生成部134と、配信部135と、学習部136と、を備える。
【0034】
取得部131は、動画配信装置1がアクター端末2から受信した元動画mを取得し、記憶部12に保存する。
【0035】
推定部132は、特徴点推定モデル121を利用して、記憶部12に保存された元動画mの各フレームからアクターの特徴点情報122Aを推定し、記憶部12に保存する。これにより、記憶部12には、アクターの特徴点情報122Aの時系列データが保存される。
【0036】
特徴点生成部133は、特徴点生成モデル123を利用して、記憶部12に保存されたアクターの特徴点情報122Aの時系列データから、新たな特徴点情報122Bを生成し、記憶部12に保存する。特徴点情報122Bの生成処理について、詳しくは後述する。
【0037】
動画生成部134は、動画情報124を参照して、特徴点生成部133により生成された新たな特徴点情報122Bをキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクト、背景、音声、BGM及び効果音を合成し、転写されたキャラクタオブジェクトを含む配信動画Mを生成し、生成した配信動画Mを記憶部12に保存する。新たな特徴点情報122Bをキャラクタオブジェクトに転写するとは、キャラクタオブジェクトの特徴点情報が新たな特徴点情報122Bと対応するように、キャラクタオブジェクトの姿勢を変形させることをいう。
【0038】
配信部135は、記憶部12に保存された配信動画Mを視聴者端末3に配信(送信)する。
【0039】
学習部136は、特徴点生成モデル123を学習させる。言い換えると、学習部136は、誤った特徴点情報を含む特徴点情報の時系列データを入力すると、誤った特徴点情報を修正した特徴点情報を出力するように、ニューラルネットワークを機械学習させることにより、特徴点生成モデル123を生成する。
【0040】
ここで、特徴点生成モデル123の学習方法について詳しく説明する。
図4は、特徴点生成モデル123の学習方法を説明する模式図である。
【0041】
まず、特徴点生成モデル123を学習させるために、正しい特徴点情報が付与された動画データD1を用意する。動画データD1として、有償又は無償で配布されている、正しい特徴点情報が付与されたアクター又はキャラクタオブジェクトの一連の動作のデータが利用できる。一連の動作は、例えば、歩行、体操、所定のアクション、スポーツのフォーム又はダンスであるが、これに限られない。
【0042】
図4の動画データD1は、人(アクター)が手を上げ下ろしする動作の動画データである。この動画データD1は、一連の動作を撮影したフレームf1~f9を含み、各フレームにはそれぞれ正しい特徴点情報が付与されている。
【0043】
次に、動画データD1の各フレームからそれぞれ特徴点情報を抽出する。これにより、動画データD1の各フレームに含まれた、正しい特徴点情報の時系列データD2が抽出される。
【0044】
図4の時系列データD2は、
図4の動画データD1から抽出された時系列データである。時系列データD2の各フレームf1~f9の特徴点情報は、動画データD1の各フレームf1~f9の特徴点情報に相当する。
【0045】
続いて、時系列データD2の特徴点情報の一部を変更する。変更された特徴点情報は、正しい特徴点情報とは異なる特徴点情報、すなわち、誤った特徴点情報となる。これにより、誤った特徴点情報を含む特徴点情報の時系列データD3が生成される。
【0046】
図4の時系列データD3は、
図4の時系列データD2のフレームf8の一部を変更したものである。この時系列データD3は、正しい特徴点情報を含むフレームf1~f7,f9と、誤った特徴点情報を含むフレームf8と、により構成される。
【0047】
学習部136は、こうして用意された時系列データD2,D3を教師データとして特徴点生成モデル123に学習させる。具体的には、学習部136は、一の期間の特徴点情報の時系列データを入力すると、当該一の期間の特徴点情報のいずれかに対応する正しい特徴点情報を出力するように、特徴点生成モデル123を学習させる。一の期間の長さは、任意に設定可能である。一の期間は、動画における時間で表されてもよいし、フレーム数で現されてもよい。また、出力される特徴点情報は、一の期間の最新の特徴点情報に対応するものであってもよいし、最新の特徴点情報より以前の特徴点情報に対応するものであってもよい。
【0048】
図4の例では、一の期間は、3フレームである。これは、動画データD1が30fpsである場合、0.1秒に相当する。また、
図4の例では、一の期間における最新の特徴点情報に対応する正しい特徴点情報が出力されるように学習されている。例えば、時系列データD2のフレームf1~f3の特徴点情報が入力されると、最新のフレームであるフレームf3の正しい特徴点情報が出力されるように学習されている。同様に、時系列データD2のフレームf6~f8の特徴点情報が入力されると、最新のフレームであるフレームf8の正しい特徴点情報が出力されるように学習されている。
【0049】
具体的には、学習部136は、時系列データD2を正解データとして利用し、時系列データD3のフレームf(x)~f(x+2)の特徴点情報を入力したときに出力される特徴点情報が、時系列データD2のフレームf(x+2)の特徴点情報に近づくように、特徴点生成モデル123のパラメータを調整する。
【0050】
一般化すると、学習部136は、時系列データD2を正解データとして利用し、時系列データD3のフレームf(x)~f(x+y)の特徴点情報を入力したときに出力される特徴点情報が、時系列データD2のフレームf(x+z)の特徴点情報に近づくように、特徴点生成モデル123のパラメータを調整する。yは期間(1≦y)、zは出力される特徴点情報が対応する特徴点情報の位置(0≦z≦y)を意味する。yが2、zが2の場合が
図4に相当する。
【0051】
特徴点生成モデル123をこのように学習させると、特徴点生成モデル123は、一の期間の特徴点情報122Aの時系列データを入力されると、当該一の期間のいずれかの特徴点情報に対応する新たな特徴点情報122Bを生成する機械学習モデルとなる。そして、生成される新たな特徴点情報122Bは、正しい特徴点情報に近づくように修正された特徴点情報となる。すなわち、特徴点生成モデル123は、入力された特徴点情報の時系列データに誤った特徴点情報が含まれた場合、誤った特徴点情報が正しい特徴点情報に近づくように修正した特徴点情報を出力する機械学習モデルとなる。結果として、特徴点生成モデル123により生成される特徴点情報122Bの時系列データは、誤った特徴点情報が正しい特徴点情報に近づくように修正され、全体として平滑化された、特徴点情報の時系列データとなる。
【0052】
なお、動画配信装置1の機能構成は、上記の例に限られない。例えば、動画配信装置1は、上記の機能構成の一部を備え、残りをアクター端末2又は視聴者端末3が備えてもよい。例えば、アクター端末2が推定部132を備え、アクター端末2が、元動画mの代わりに、特徴点情報122Aを動画配信装置1に送信してもよい。また、動画配信装置1は、上記以外の機能構成を備えてもよい。また、動画配信装置1の各機能構成は、上記の通り、ソフトウェアにより実現されてもよいし、ICチップ、SoC(System on Chip)、LSI(Large Scale Integration)、マイクロコンピュータ等のハードウェアによって実現されてもよい。
【0053】
<情報処理システムが実行する処理>
次に、本実施形態に係る情報処理システムが実行する処理について説明する。
図5は、情報処理システムが実行する処理の一例を示すフローチャートである。
図6~
図8は、情報処理システムが実行する処理を説明する模式図である。
【0054】
(ステップS101)
アクターが配信動画Mの配信を開始すると、アクター端末2は、カメラで元動画mの撮影を開始する(ステップS101)。アクター端末2は、配信動画Mの配信を開始前から、元動画mの撮影を開始していてもよい。
【0055】
(ステップS102)
アクター端末2は、元動画mの撮影を開始すると、カメラから取得した元動画mを動画配信装置1に順次送信する(ステップS102)。アクター端末2は、配信動画Mの配信を終了するまで元動画mの送信を継続する(ステップS103:NO)。アクター端末2は、配信動画Mの配信を終了すると、元動画mの撮影及び送信を終了する(ステップS103:YES)。
【0056】
(ステップS104)
動画配信装置1の取得部131は、アクター端末2が送信する元動画mを順次取得し、記憶部12に保存する(ステップS104)。
【0057】
図6の元動画mは、人(アクター)が手を上げ下ろしする動作の動画データである。この元動画mは、一連の動作を撮影したフレームf1~f9を含む。取得部131は、フレームf1~f9をこの順番で順次取得し、記憶部12に保存する。
【0058】
(ステップS105)
推定部132は、特徴点推定モデル121を利用して、記憶部12に保存された元動画mの各フレームからアクターの特徴点情報122Aを推定し(ステップS105)、記憶部12に保存する。より詳細には、推定部132は、記憶部12に保存された元動画mのフレームを特徴点推定モデル121に入力し、特徴点推定モデル121が出力した特徴点情報を、そのフレームから推定されたアクターの特徴点情報122Aとして、記憶部12に保存する。これを各フレームに実行することにより、記憶部12には、アクターの特徴点情報122Aの時系列データd1が保存される。
【0059】
図6の時系列データd1は、元動画mのフレームf1~f9からそれぞれ推定したアクターの特徴点情報122Aを含む。ところで、
図6の例では、フレームf8の特徴点情報122Aが誤っている(モーションキャプチャに失敗している)。特徴点推定モデル121の精度が十分高くなかったり、元動画mがブレていたり、アクターの体の一部が何かの影になっていたりした場合、このような誤った特徴点情報122Aが生成されることがある。
【0060】
(ステップS106)
特徴点生成部133は、特徴点生成モデル123を利用して、記憶部12に保存された特徴点情報122Aの時系列データd1から新たな特徴点情報122Bを生成し(ステップS106)、記憶部12に保存する。より詳細には、特徴点情報生成部134は、記憶部12に保存された一の期間の時系列データd1を特徴点生成モデル123に入力し、特徴点生成モデル123が出力した特徴点情報を、一の期間のいずれかの特徴点情報122Bに対応する新たな特徴点情報として、記憶部12に保存する。この処理を、期間をずらしながら実行することにより、記憶部12には、生成されたアクターの特徴点情報122Bの時系列データd2が保存される。
【0061】
図7の例では、一の期間は3フレームであり、一の期間における最新の特徴点情報122Aに対応する新たな特徴点情報122Bが生成されている。この結果、時系列データd1のフレームf3~f9の特徴点情報122Aにそれぞれ対応する新たな特徴点情報122Bが生成されている。
図7に示すように、時系列データd1のフレームf8の誤った特徴点情報122Aに対しては、正しい特徴点情報に近づくように修正された新たな特徴点情報122Bが生成される。なお、時系列データd1のフレームf1の特徴点情報122Aと共に、それ以前のダミーの特徴点情報としてブランクの特徴点情報を入力することにより、フレームf1の特徴点情報122Aに対応する新たな特徴点情報122Bを生成してもよい。時系列データd1のフレームf2の特徴点情報122Aについても同様である。
【0062】
(ステップS107)
動画生成部134は、動画情報124を参照して、特徴点生成部133により生成された新たな特徴点情報122Bをキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクト、背景、音声、BGM及び効果音を合成し、転写されたキャラクタオブジェクトを含む配信動画Mを生成し(ステップS107)、生成した配信動画Mを記憶部12に保存する。
【0063】
図8の配信動画Mは、時系列データd2のフレームf3~f9の特徴点情報122Bをそれぞれキャラクタオブジェクトに転写し、背景等を合成したものである。配信動画Mのフレームf3~f9のキャラクタオブジェクトは、元動画mのフレームf3~f9におけるアクターの動きを再現している。
【0064】
(ステップS108)
配信部135は、記憶部12に保存された配信動画Mを視聴者端末3にライブ配信する(ステップS108)。すなわち、配信部135は、配信動画Mが生成されるたびに生成された配信動画Mを順次視聴者端末3に送信する。
【0065】
(ステップS109)
視聴者端末3は、動画配信装置1から配信された配信動画Mを受信すると、受信した配信動画Mをディスプレイ上で再生する(ステップS109)。これにより、視聴者は、視聴者端末3で配信動画Mを視聴することができる。
【0066】
<まとめ>
以上説明した通り、本実施形態によれば、アクターの元動画mに基づいて特徴点情報122Aを推定し、特徴点生成モデル123を利用して、特徴点情報122Aの時系列データd1から新たな特徴点情報122B(の時系列データd2)を生成し、生成された特徴点情報122Bをキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクトを含む配信動画Mを生成し、生成された配信動画Mを配信することができる。これにより、アクターの動きを再現したキャラクタオブジェクトを含む配信動画Mをライブ配信することができる。
【0067】
ここで、
図9は、本実施形態の効果を説明する図である。
図9の従来動画は、従来の方法で生成した場合の配信動画に相当する。
【0068】
従来技術では、元動画mから推定した特徴点情報122Aをキャラクタオブジェクトに直接転写していた。このため、モーションキャプチャに失敗し、誤った特徴点情報122Aが生成された場合、従来動画のフレームf8のように、キャラクタオブジェクトが前後の脈略がない不自然な動きをすることになる。特に、動画をライブ配信する場合、誤った特徴点情報122Aを手作業で修正することもできないため、モーションキャプチャの失敗に起因するキャラクタオブジェクトの不自然な動きを防ぐのは困難である。キャラクタオブジェクトの不自然な動きが増えるほど、視聴者に与える違和感が大きくなり、動画に対する満足度が低下する原因となる。
【0069】
これに対して、本実施形態では、元動画mから推定した特徴点情報122Aを特徴点生成モデル123により修正した新たな特徴点情報122Bをキャラクタオブジェクトに転写する。このため、モーションキャプチャに失敗し、誤った特徴点情報122Aが生成された場合であっても、配信動画Mのフレームf8のように、キャラクタオブジェクトが正しい特徴点情報に近い(すなわち、アクターの動きに近い)動きをすることになる。すなわち、アクターの動きをキャラクタオブジェクトに精度よく再現させることができる。結果として、配信動画Mをライブ配信する場合であっても、キャラクタオブジェクトの不自然な動きが抑制された、キャラクタオブジェクトの動きがスムーズな配信動画Mを配信することができる。これにより、配信動画Mに対する視聴者の満足度を向上させることができる。
【0070】
なお、本実施形態において、配信動画Mはライブ配信でなくてもよい。配信動画Mをオンデマンド配信する場合、手作業で特徴点情報122Aを修正することなく、キャラクタオブジェクトの動きがスムーズな配信動画Mを配信することができる。
【0071】
[第2実施形態]
<システム構成>
本実施形態に係る情報処理システムは、アクターが装着したセンサのセンサデータに基づいて、アクターの動きを再現したキャラクタオブジェクトを含む配信動画Mをライブ配信するためのシステムである。以下、第1実施形態との相違点について説明する。
【0072】
図10は、本実施形態に係る情報処理システムの構成の一例を示す図である。
図10に示すように、本実施形態に係る情報処理システムは、ネットワークNを介して相互に通信可能に接続された、動画配信装置1と、アクター端末2と、視聴者端末3と、センサsと、を備える。ネットワークNは、例えば、有線LAN、無線LAN、インターネット、公衆回線網、モバイルデータ通信網、又はこれらの組み合わせである。
図10の例では、情報処理システムは、動画配信装置1、アクター端末2及び視聴者端末3をそれぞれ1つずつ備えるが、それぞれ複数備えてもよい。なお、視聴者端末3は、第1実施形態と同様であるため、説明を省略する。
【0073】
センサsは、アクターの動きを測定するためのセンサであり、アクターの体の複数の位置に装着される。センサsが装着される位置は、例えば、足首、膝、腰、肩、頭、肘、手首、及び指であるが、これに限られない。
図10の例では、5つのセンサsがアクターに装着されているが、アクターに装着されるセンサsの数は任意である。アクターに装着されたセンサsは、それぞれリアルタイムでセンサデータsdをアクター端末2に無線で送信する。センサsは、例えば、加速度センサであるが、これに限られない。センサsは、アクターの動きを測定可能な任意のセンサであり得る。センサsとして、複数種類のセンサが併用されてもよい。
【0074】
動画配信装置1は、アクターの動きを再現したキャラクタオブジェクトを含む配信動画Mを視聴者端末3に配信する情報処理装置である。動画配信装置1は、アクターが装着したセンサsのセンサデータsdをアクター端末2からリアルタイムで受信し、受信したセンサデータsdに基づいてアクターの動きを再現したキャラクタオブジェクトを含む配信動画Mを生成し、生成した配信動画Mを視聴者端末3にライブ配信する。動画配信装置1は、配信動画Mを生成し、ライブ配信可能な任意の情報処理装置であり得る。動画配信装置1は、例えば、PC、スマートフォン、タブレット端末、サーバ装置又はマイクロコンピュータであるが、これに限られない。
【0075】
アクター端末2は、配信動画Mのアクターが利用する情報処理装置である。アクターは、配信動画Mにおいてキャラクタオブジェクトに動きを再現される者、言い換えると、言い換えると、キャラクタオブジェクトを操作する者である。アクター端末2は、アクターが装着した複数のセンサsのセンサデータsdをリアルタイムに無線で受信し、受信したセンサデータsdを動画配信装置1にリアルタイムで送信する。アクター端末2は、センサデータsdをリアルタイムで動画配信装置1に転送可能な任意の情報処理装置であり得る。アクター端末2は、例えば、PC、スマートフォン又はタブレット端末であるが、これに限られない。
【0076】
<機能構成>
次に、動画配信装置1の機能構成について説明する。
図11は、動画配信装置1の機能構成の一例を示す図である。
図11に示すように、動画配信装置1は、通信部11と、記憶部12と、制御部13と、を備える。
【0077】
通信部11は、通信I/F104により実現される。通信部11は、ネットワークNを介して、アクター端末2及び視聴者端末3との間で情報の送受信を行う。通信部11は、アクター端末2からセンサデータsdを受信する。また、通信部11は、視聴者端末3に配信動画Mを送信(配信)する。
【0078】
記憶部12は、メモリ102及びストレージ103により実現される。記憶部12は、センサデータsdと、特徴点情報122と、特徴点生成モデル123と、動画情報124と、配信動画Mと、を記憶する。センサデータsd以外は、第1実施形態と同様であるため説明を省略する。
【0079】
センサデータsdは、アクターの体に装着されたセンサsが測定したデータである。センサデータsdは、例えば、加速度データであるが、これに限られない。センサデータは、アクターの動きを測定可能な任意のデータであり得る。動画配信装置1は、アクター端末2から送信された複数のセンサsのセンサデータsdをそれぞれリアルタイムで受信し、記憶部12に順次保存する。
【0080】
制御部13は、プロセッサ101がメモリ102からプログラムを読み出して実行し、他のハードウェア構成と協働することにより実現される。制御部13は、動画配信装置1の動作全体を制御する。制御部13は、取得部131と、推定部132と、特徴点生成部133と、動画生成部134と、配信部135と、学習部136と、を備える。取得部131及び推定部132以外は、第1実施形態と同様であるため説明を省略する。
【0081】
取得部131は、動画配信装置1がアクター端末2から受信した複数のセンサsのセンサデータsdを取得し、記憶部12に保存する。
【0082】
推定部132は、記憶部12に保存された複数のセンサsのセンサデータsdからアクターの特徴点情報122Aを推定し、記憶部12に保存する。これにより、記憶部12には、アクターの特徴点情報122Aの時系列データが保存される。推定部132は、例えば、センサデータsdが加速度データである場合、各センサsの加速度の積算値から各センサsの移動距離を算出し、各センサsの移動距離の積算値から各センサsの位置を算出し、各センサsの位置から特徴点情報122Aを推定する。
【0083】
<情報処理システムが実行する処理>
次に、本実施形態に係る情報処理システムが実行する処理について説明する。
図12は、情報処理システムが実行する処理の一例を示すフローチャートである。ステップS207~S209は、第1実施形態のステップS107~S109と同様であるため説明を省略する。
図13及び
図14は、情報処理システムが実行する処理を説明する模式図である。
【0084】
(ステップS201)
アクターが配信動画Mの配信を開始すると、アクター端末2は、複数のセンサsからセンサデータsdの取得を開始する(ステップS201)。アクター端末2は、配信動画Mの配信を開始前から、センサデータsdの取得を開始していてもよい。
【0085】
(ステップS202)
アクター端末2は、センサデータsdの取得を開始すると、センサsから取得したセンサデータsdを動画配信装置1に順次送信する(ステップS202)。アクター端末2は、配信動画Mの配信を終了するまでセンサデータsdの送信を継続する(ステップS203:NO)。アクター端末2は、配信動画Mの配信を終了すると、センサデータsdの取得及び送信を終了する(ステップS203:YES)。
【0086】
(ステップS204)
動画配信装置1の取得部131は、アクター端末2が送信する複数のセンサsのセンサデータsdを順次取得し、記憶部12に保存する(ステップS204)。
【0087】
図13のセンサデータsdは、人(アクター)が手を上げ下ろしする動作のセンサデータである。このセンサデータsdは、一連の動作で各時刻t1~t9に取得されたセンサデータsdを含む。各時刻tのセンサデータsdには、複数のセンサs1,s2,・・・の各センサデータが含まれる。取得部131は、時刻t1~t9のセンサデータsdをこの順番で順次取得し、記憶部12に保存する。なお、センサデータsdを取得する間隔は、任意に設定可能である。例えば、センサデータsdを1秒間に30回取得する場合、取得したセンサデータsdに基づいて1秒間に30個の特徴点情報122Aを生成できるため、30fpsの配信動画Mを生成できる。
【0088】
(ステップS205)
推定部132は、記憶部12に保存された各時刻tのセンサデータsdからアクターの特徴点情報122Aを推定し(ステップS205)、記憶部12に保存する。より詳細には、推定部132は、記憶部12に保存された時刻tの複数のセンサsのセンサデータsdから推定した特徴点情報を、その時刻tのアクターの特徴点情報122Aとして、記憶部12に保存する。これを各時刻のセンサデータsdに実行することにより、記憶部12には、アクターの特徴点情報122Aの時系列データd1が保存される。
【0089】
図13の時系列データd1は、時刻t1~t9のセンサデータsdからそれぞれ推定したアクターの特徴点情報122Aを含む。ところで、
図13の例では、時刻t8の特徴点情報122Aが誤っている(モーションキャプチャに失敗している)。センサsの測定精度が十分高くなかったり、センサデータsdの受信時にエラーが発生した場合、このような誤った特徴点情報122Aが生成されることがある。
【0090】
(ステップS206)
特徴点生成部133は、特徴点生成モデル123を利用して、記憶部12に保存された特徴点情報122Aの時系列データd1から新たな特徴点情報122Bを生成し(ステップS206)、記憶部12に保存する。より詳細には、特徴点情報生成部134は、記憶部12に保存された一の期間の時系列データd1を特徴点生成モデル123に入力し、特徴点生成モデル123が出力した特徴点情報を、一の期間のいずれかの特徴点情報122Bに対応する新たな特徴点情報として、記憶部12に保存する。この処理を、期間をずらしながら実行することにより、記憶部12には、生成されたアクターの特徴点情報122Bの時系列データd2が保存される。
【0091】
図14の例では、センサデータsdの取得間隔が配信動画Mのfpsと一致しており、一の期間は3フレームであり、一の期間における最新の特徴点情報122Aに対応する新たな特徴点情報122Bが生成されている。この結果、時系列データd1の時刻t3~t9の特徴点情報122Aにそれぞれ対応する新たな特徴点情報122Bが生成されている。
図14に示すように、時系列データd1の時刻t8の誤った特徴点情報122Aに対しては、正しい特徴点情報に近づくように修正された新たな特徴点情報122Bが生成される。なお、時系列データd1の時刻t1の特徴点情報122Aと共に、それ以前のダミーの特徴点情報としてブランクの特徴点情報を入力することにより、時刻t1の特徴点情報122Aに対応する新たな特徴点情報122Bを生成してもよい。時系列データd1の時刻t2の特徴点情報122Aについても同様である。
【0092】
以降、ステップS207~S209が実行される。これにより、視聴者は、視聴者端末3で配信動画Mを視聴することができる。
【0093】
<まとめ>
以上説明した通り、本実施形態によれば、アクターが装着した複数のセンサsのセンサデータsdに基づいて特徴点情報122Aを推定し、特徴点生成モデル123を利用して、特徴点情報122Aの時系列データd1から新たな特徴点情報122B(の時系列データd2)を生成し、生成された特徴点情報122Bをキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクトを含む配信動画Mを生成し、生成された配信動画Mを配信することができる。これにより、アクターの動きを再現したキャラクタオブジェクトを含む配信動画Mをライブ配信することができる。
【0094】
また、第1実施形態と同様に、本実施形態では、センサデータsdから推定した特徴点情報122Aを特徴点生成モデル123により修正した新たな特徴点情報122Bをキャラクタオブジェクトに転写する。このため、モーションキャプチャに失敗し、誤った特徴点情報122Aが生成された場合であっても、配信動画Mのフレームf8のように、キャラクタオブジェクトが正しい特徴点情報に近い(すなわち、アクターの動きに近い)動きをすることになる。すなわち、アクターの動きをキャラクタオブジェクトに精度よく再現させることができる。結果として、配信動画Mをライブ配信する場合であっても、キャラクタオブジェクトの不自然な動きが抑制された、キャラクタオブジェクトの動きがスムーズな配信動画Mを配信することができる。これにより、配信動画Mに対する視聴者の満足度を向上させることができる。
【0095】
なお、本実施形態において、配信動画Mはライブ配信でなくてもよい。配信動画Mをオンデマンド配信する場合、手作業で特徴点情報122Aを修正することなく、キャラクタオブジェクトの動きがスムーズな配信動画Mを配信することができる。
【0096】
<付記>
本実施形態は、以下の開示を含む。
【0097】
(付記1)
情報処理システムが実行する情報処理方法であって、
特徴点生成モデルを利用して、アクターの特徴点情報の時系列データから新たな特徴点情報を生成する特徴点生成処理と、
生成された特徴点情報をキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクトを含む配信動画を生成する動画生成処理と、
生成された配信動画を配信する配信処理と、
を含む情報処理方法。
【0098】
(付記2)
前記アクターが被写体として撮影された元動画を取得する取得処理と、
前記元動画から前記アクターの特徴点情報を推定し、前記特徴点情報の時系列データを生成する推定処理と、
を更に含む付記1に記載の情報処理方法。
【0099】
(付記3)
前記アクターが装着したセンサからセンサデータを取得する取得処理と、
前記センサデータから前記アクターの特徴点情報を推定し、前記特徴点情報の時系列データを生成する推定処理と、
を更に含む付記1に記載の情報処理方法。
【0100】
(付記4)
特徴点情報の時系列データを入力すると、新たな特徴点情報を出力するように、ニューラルネットワークに機械学習させる学習処理を更に含む
付記1に記載の情報処理方法。
【0101】
(付記5)
前記学習処理は、誤った特徴点情報を含む一の期間の特徴点情報の時系列データを入力すると、前記誤った特徴点情報を修正した特徴点情報を出力するように、前記ニューラルネットワークに機械学習させる
付記4に記載の情報処理方法。
【0102】
(付記6)
前記特徴点生成処理は、一の期間の特徴点情報の時系列データから、当該一の期間のいずれかの特徴点情報に対応する新たな特徴点情報を生成する
付記1に記載の情報処理方法。
【0103】
(付記7)
前記特徴点生成処理は、一の期間の特徴点情報の時系列データから、当該一の期間における最新の特徴点情報に対応する新たな特徴点情報を生成する
付記1に記載の情報処理方法。
【0104】
(付記8)
特徴点生成モデルを利用して、特徴点情報の時系列データから新たな特徴点情報を生成する特徴点生成部と、
生成された特徴点情報をキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクトを含む配信動画を生成する動画生成部と、
生成された配信動画を配信する配信部と、
を備える情報処理システム。
【0105】
(付記9)
コンピュータに、
特徴点生成モデルを利用して、特徴点情報の時系列データから新たな特徴点情報を生成する特徴点生成処理と、
生成された特徴点情報をキャラクタオブジェクトに転写し、転写されたキャラクタオブジェクトを含む配信動画を生成する動画生成処理と、
生成された配信動画を配信する配信処理と、
を含む情報処理方法を実行させるためのプログラム。
【0106】
今回開示された実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。また、本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【0107】
1:動画配信装置
2:アクター端末
3:視聴者端末
11:通信部
12:記憶部
13:制御部
100:情報処理装置
121:特徴点推定モデル
122:特徴点情報
123:特徴点生成モデル
124:動画情報
131:取得部
132:推定部
133:特徴点生成部
134:動画生成部
135:配信部
136:学習部
m:元動画
M:配信動画
s:センサ
sd:センサデータ