IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソフトバンクモバイル株式会社の特許一覧 ▶ 国立大学法人神戸大学の特許一覧

特許7474447情報処理装置、情報処理方法及び情報処理プログラム
<>
  • 特許-情報処理装置、情報処理方法及び情報処理プログラム 図1
  • 特許-情報処理装置、情報処理方法及び情報処理プログラム 図2
  • 特許-情報処理装置、情報処理方法及び情報処理プログラム 図3
  • 特許-情報処理装置、情報処理方法及び情報処理プログラム 図4
  • 特許-情報処理装置、情報処理方法及び情報処理プログラム 図5
  • 特許-情報処理装置、情報処理方法及び情報処理プログラム 図6
  • 特許-情報処理装置、情報処理方法及び情報処理プログラム 図7
  • 特許-情報処理装置、情報処理方法及び情報処理プログラム 図8
  • 特許-情報処理装置、情報処理方法及び情報処理プログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-17
(45)【発行日】2024-04-25
(54)【発明の名称】情報処理装置、情報処理方法及び情報処理プログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240418BHJP
【FI】
G06T7/00 350B
【請求項の数】 15
(21)【出願番号】P 2022097228
(22)【出願日】2022-06-16
(65)【公開番号】P2023183624
(43)【公開日】2023-12-28
【審査請求日】2023-01-18
(73)【特許権者】
【識別番号】501440684
【氏名又は名称】ソフトバンク株式会社
(73)【特許権者】
【識別番号】504150450
【氏名又は名称】国立大学法人神戸大学
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】岡本 秀明
(72)【発明者】
【氏名】鈴木 裕真
(72)【発明者】
【氏名】堀 隆之
(72)【発明者】
【氏名】金田 麟太郎
(72)【発明者】
【氏名】寺田 努
(72)【発明者】
【氏名】土田 修平
(72)【発明者】
【氏名】モウ コウミン
【審査官】佐藤 実
(56)【参考文献】
【文献】特開2018-152004(JP,A)
【文献】土田修平 他7名,ダンスをマスターした自身の映像を先に見ることによるダンス学習支援,情報処理学会研究報告,情報処理学会,2022年03月07日,Vol.2022-HCI-197 No.6,pp.1-8
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
関節角度の変化に関する時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルであって、属性情報の種類を示すラベルデータを含むデータセットを学習データとして、前記エンコーダを用いて前記データセットを前記特徴情報に変換して、前記特徴情報を潜在空間にマッピングするように学習させた前記機械学習モデルであって、クラスタリング技術を用いて、前記潜在空間にマッピングされた前記特徴情報を前記属性情報の種類に応じたクラスタに分類するように学習させた前記機械学習モデルを取得する取得部と、
前記機械学習モデルに含まれる前記エンコーダを用いて、利用者の関節角度の変化に関する第1の時系列データを前記第1の時系列データに対応する第1の特徴情報であって、第1の属性情報に対応する第1のクラスタに分類される前記第1の特徴情報に変換して、前記第1の特徴情報を前記潜在空間にマッピングし、前記潜在空間における潜在変数を前記第1の特徴情報を持つ値から、前記第1の特徴情報とは異なる第2の特徴情報であって、第2の属性情報に対応する第2のクラスタに分類される前記第2の特徴情報を持つ値に変化させ、前記機械学習モデルに含まれる前記デコーダを用いて、前記第2の特徴情報に基づいて、前記利用者の関節角度の変化に関する第2の時系列データを生成する生成部と、
を備える情報処理装置。
【請求項2】
前記取得部は、
前記特徴情報の確率分布が正規分布に従うように学習された前記機械学習モデルを取得する、
請求項1に記載の情報処理装置。
【請求項3】
記取得部は、
前記属性情報を含む前記時系列データの特徴を示す前記特徴情報の確率分布が正規分布に従うように学習された前記機械学習モデルを取得する、
請求項2に記載の情報処理装置。
【請求項4】
前記機械学習モデルは、対象物を含む画像から前記対象物の姿勢を推定するよう学習された姿勢推定モデルをさらに含み、
前記生成部は、
前記姿勢推定モデルを用いて、前記利用者の身体の動きを含む第1の運動映像から前記利用者の関節点の座標を推定し、推定した関節点の座標に基づいて、前記第1の時系列データを生成する、
請求項1に記載の情報処理装置。
【請求項5】
前記生成部は、
生成した前記第2の時系列データに基づいて、前記第2の時系列データに対応する前記利用者の身体の動きを含む第2の運動映像を生成する、
請求項1に記載の情報処理装置。
【請求項6】
前記機械学習モデルは、対象者の関節点を含む関節画像から前記関節点に対応する前記対象者の人物画像を生成するよう学習された画像変換モデルをさらに含み、
前記生成部は、
前記画像変換モデルを用いて、前記第2の時系列データから前記第2の運動映像を生成する、
請求項5に記載の情報処理装置。
【請求項7】
関節角度の変化に関する時系列データを取得する取得部と、
前記時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルであって、属性情報の種類を示すラベルデータを含むデータセットを学習データとして、前記エンコーダを用いて前記データセットを前記特徴情報に変換して、前記特徴情報を潜在空間にマッピングするように学習させた前記機械学習モデルであって、クラスタリング技術を用いて、前記潜在空間にマッピングされた前記特徴情報を前記属性情報の種類に応じたクラスタに分類するように学習させた前記機械学習モデルを生成するモデル生成部と、
を備える情報処理装置。
【請求項8】
前記モデル生成部は、
前記エンコーダに入力される前記時系列データと、前記デコーダから出力される前記時系列データとの類似度が所定の閾値を超えるように前記機械学習モデルを学習させる、
請求項7に記載の情報処理装置。
【請求項9】
前記モデル生成部は、
前記特徴情報の確率分布が正規分布に従うように前記機械学習モデルを学習させる、
請求項7に記載の情報処理装置。
【請求項10】
記モデル生成部は、
前記属性情報を含む前記時系列データの特徴を示す前記特徴情報の確率分布が正規分布に従うように前記機械学習モデルを学習させる、
請求項9に記載の情報処理装置。
【請求項11】
前記属性情報は、前記時系列データに対応する運動映像に含まれる対象者の身体の動きの種類、前記対象者の身体の動きの習熟度、前記対象者の身体の動きの特徴、または、前記対象者の生体情報を示す情報である、
請求項またはに記載の情報処理装置。
【請求項12】
情報処理装置が実行するプログラムにより実現される情報処理方法であって、
関節角度の変化に関する時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルであって、属性情報の種類を示すラベルデータを含むデータセットを学習データとして、前記エンコーダを用いて前記データセットを前記特徴情報に変換して、前記特徴情報を潜在空間にマッピングするように学習させた前記機械学習モデルであって、クラスタリング技術を用いて、前記潜在空間にマッピングされた前記特徴情報を前記属性情報の種類に応じたクラスタに分類するように学習させた前記機械学習モデルを取得する取得工程と、
前記機械学習モデルに含まれる前記エンコーダを用いて、利用者の関節角度の変化に関する第1の時系列データを前記第1の時系列データに対応する第1の特徴情報であって、第1の属性情報に対応する第1のクラスタに分類される前記第1の特徴情報に変換して、前記第1の特徴情報を前記潜在空間にマッピングし、前記潜在空間における潜在変数を前記第1の特徴情報を持つ値から、前記第1の特徴情報とは異なる第2の特徴情報であって、第2の属性情報に対応する第2のクラスタに分類される前記第2の特徴情報を持つ値に変化させ、前記機械学習モデルに含まれる前記デコーダを用いて、前記第2の特徴情報に基づいて、前記利用者の関節角度の変化に関する第2の時系列データを生成する生成工程と、
を含む情報処理方法。
【請求項13】
情報処理装置が実行するプログラムにより実現される情報処理方法であって、
関節角度の変化に関する時系列データを取得する取得工程と、
前記時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルであって、属性情報の種類を示すラベルデータを含むデータセットを学習データとして、前記エンコーダを用いて前記データセットを前記特徴情報に変換して、前記特徴情報を潜在空間にマッピングするように学習させた前記機械学習モデルであって、クラスタリング技術を用いて、前記潜在空間にマッピングされた前記特徴情報を前記属性情報の種類に応じたクラスタに分類するように学習させた前記機械学習モデルを生成するモデル生成工程と、
を含む情報処理方法。
【請求項14】
関節角度の変化に関する時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルであって、属性情報の種類を示すラベルデータを含むデータセットを学習データとして、前記エンコーダを用いて前記データセットを前記特徴情報に変換して、前記特徴情報を潜在空間にマッピングするように学習させた前記機械学習モデルであって、クラスタリング技術を用いて、前記潜在空間にマッピングされた前記特徴情報を前記属性情報の種類に応じたクラスタに分類するように学習させた前記機械学習モデルを取得する取得手順と、
前記機械学習モデルに含まれる前記エンコーダを用いて、利用者の関節角度の変化に関する第1の時系列データを前記第1の時系列データに対応する第1の特徴情報であって、第1の属性情報に対応する第1のクラスタに分類される前記第1の特徴情報に変換して、前記第1の特徴情報を前記潜在空間にマッピングし、前記潜在空間における潜在変数を前記第1の特徴情報を持つ値から、前記第1の特徴情報とは異なる第2の特徴情報であって、第2の属性情報に対応する第2のクラスタに分類される前記第2の特徴情報を持つ値に変化させ、前記機械学習モデルに含まれる前記デコーダを用いて、前記第2の特徴情報に基づいて、前記利用者の関節角度の変化に関する第2の時系列データを生成する生成手順と、
をコンピュータに実行させる情報処理プログラム。
【請求項15】
関節角度の変化に関する時系列データを取得する取得手順と、
前記時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルであって、属性情報の種類を示すラベルデータを含むデータセットを学習データとして、前記エンコーダを用いて前記データセットを前記特徴情報に変換して、前記特徴情報を潜在空間にマッピングするように学習させた前記機械学習モデルであって、クラスタリング技術を用いて、前記潜在空間にマッピングされた前記特徴情報を前記属性情報の種類に応じたクラスタに分類するように学習させた前記機械学習モデルを生成するモデル生成手順と、
をコンピュータに実行させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【0002】
従来、機械学習の分野では、オートエンコーダ(AutoEncoder)に関する技術が知られている。オートエンコーダは、対象となる情報を潜在表現(特徴表現ともいう)に変換するニューラルネットワークであるエンコーダと、潜在表現から再び対象となる情報を復元するニューラルネットワークであるデコーダによって構成される。また、オートエンコーダから派生したVAE(Variational Autoencoder)に関する技術が知られている。VAEは、潜在表現の確率分布が正規分布に従うようにニューラルネットワークを学習させる。例えば、VAEを用いて、手書きで書かれた「0」~「9」の数字に対応する画像データ(以下、手書き数字画像ともいう)と、画像に書かれた数字の正解となるラベルデータとの組のデータセットを潜在表現に変換して、潜在表現を潜在空間にマッピングする。そして、VAEの潜在空間上で潜在変数を連続的に変化させながら画像を生成する。これにより、画像に描かれた数字を連続的に変化させた手書き数字画像を生成する技術が知られている。
【先行技術文献】
【非特許文献】
【0003】
【文献】Diederik P. Kingma、他3名、“Semi-Supervised Learning with Deep Generative Models”、[online]、June 2014、[令和4年5月31日検索]、インターネット<URL:https://arxiv.org/abs/1406.5298v1>
【発明の概要】
【発明が解決しようとする課題】
【0004】
また、近年、ストレスの発散や心の癒し等の精神的な豊かさを実現するための情報通信技術であるエンタテインメント・コンピューティング(entertainment computing)に関する研究が盛んに行われている。例えば、利用者の身体の動きを含む運動映像から任意の運動映像を生成可能とする技術が求められている。
【0005】
本願は、利用者の身体の動きを含む運動映像から任意の運動映像を生成可能とすることができる情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本願に係る情報処理装置は、関節角度の変化に関する時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルを取得する取得部と、前記機械学習モデルの潜在空間を用いて、利用者の関節角度の変化に関する第1の時系列データから、前記利用者の関節角度の変化に関する第2の時系列データを生成する生成部と、を備える。
【0007】
前記取得部は、前記特徴情報の確率分布が正規分布に従うように学習された前記機械学習モデルを取得し、前記生成部は、前記第1の時系列データを前記潜在空間に写像し、前記潜在空間における潜在変数を前記潜在空間に写像された前記第1の時系列データに対応する第1の特徴情報を持つ値から第2の特徴情報を持つ値に変化させ、変化させた後の前記潜在変数の値に対応する前記第2の特徴情報に基づいて、前記第2の時系列データを生成する。
【0008】
前記時系列データは、前記時系列データに対応する属性情報を含み、前記取得部は、前記属性情報を含む前記時系列データの特徴を示す前記特徴情報の確率分布が正規分布に従うように学習された前記機械学習モデルを取得し、前記生成部は、前記潜在空間における潜在変数を第1の属性情報に対応する前記第1の特徴情報を持つ値から第2の属性情報に対応する前記第2の特徴情報を持つ値に変化させ、変化させた後の前記潜在変数の値に対応する前記第2の特徴情報に基づいて、前記第2の時系列データを生成する。
【0009】
前記機械学習モデルは、対象物を含む画像から前記対象物の姿勢を推定するよう学習された姿勢推定モデルをさらに含み、前記生成部は、前記姿勢推定モデルを用いて、前記利用者の身体の動きを含む第1の運動映像から前記利用者の関節点の座標を推定し、推定した関節点の座標に基づいて、前記第1の時系列データを生成する。
【0010】
前記生成部は、生成した前記第2の時系列データに基づいて、前記第2の時系列データに対応する前記利用者の身体の動きを含む第2の運動映像を生成する。
【0011】
前記機械学習モデルは、対象者の関節点を含む関節画像から前記関節点に対応する前記対象者の人物画像を生成するよう学習された画像変換モデルをさらに含み、前記生成部は、前記画像変換モデルを用いて、前記第2の時系列データから前記第2の運動映像を生成する。
【0012】
本願に係る情報処理装置は、関節角度の変化に関する時系列データを取得する取得部と、前記時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルを生成するモデル生成部と、を備える。
【0013】
前記モデル生成部は、前記エンコーダに入力される前記時系列データと、前記デコーダから出力される前記時系列データとの類似度が所定の閾値を超えるように前記機械学習モデルを学習させる。
【0014】
前記モデル生成部は、前記特徴情報の確率分布が正規分布に従うように前記機械学習モデルを学習させる。
【0015】
前記取得部は、前記時系列データに対応する属性情報を含む前記時系列データを取得し、前記モデル生成部は、前記属性情報を含む前記時系列データの特徴を示す前記特徴情報の確率分布が正規分布に従うように前記機械学習モデルを学習させる。
【0016】
前記モデル生成部は、前記特徴情報を前記属性情報に応じたクラスタに分類する。
【0017】
前記属性情報は、前記時系列データに対応する運動映像に含まれる対象者の身体の動きの種類、前記対象者の身体の動きの習熟度、前記対象者の身体の動きの特徴、または、前記対象者の生体情報を示す情報である。
【0018】
本願に係る情報処理方法は、情報処理装置が実行するプログラムにより実現される情報処理方法であって、関節角度の変化に関する時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルを取得する取得工程と、前記機械学習モデルの潜在空間を用いて、利用者の関節角度の変化に関する第1の時系列データから、前記利用者の関節角度の変化に関する第2の時系列データを生成する生成工程と、を含む。
【0019】
本願に係る情報処理方法は、情報処理装置が実行するプログラムにより実現される情報処理方法であって、関節角度の変化に関する時系列データを取得する取得工程と、前記時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルを生成するモデル生成工程と、を含む。
【0020】
本願に係る情報処理プログラムは、関節角度の変化に関する時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルを取得する取得手順と、前記機械学習モデルの潜在空間を用いて、利用者の関節角度の変化に関する第1の時系列データから、前記利用者の関節角度の変化に関する第2の時系列データを生成する生成手順と、をコンピュータに実行させる。
【0021】
本願に係る情報処理プログラムは、関節角度の変化に関する時系列データを取得する取得手順と、前記時系列データに基づいて前記時系列データの特徴を示す特徴情報を生成するエンコーダと、前記特徴情報に基づいて前記時系列データを生成するデコーダと、を含む機械学習モデルを生成するモデル生成手順と、をコンピュータに実行させる。
【発明の効果】
【0022】
実施形態の一態様によれば、利用者の身体の動きを含む運動映像から任意の運動映像を生成可能とすることができる。
【図面の簡単な説明】
【0023】
図1図1は、実施形態に係る情報処理の概要について説明するための図である。
図2図2は、実施形態に係る情報処理システムの構成例を示す図である。
図3図3は、実施形態に係る生成装置の構成例を示す図である。
図4図4は、実施形態に係る生成装置による情報処理手順を示すフローチャートである。
図5図5は、実施形態に係る情報処理装置の構成例を示す図である。
図6図6は、実施形態に係る潜在空間の一例について説明するための図である。
図7図7は、実施形態に係る情報処理装置による情報処理手順を示すフローチャートである。
図8図8は、変形例に係る潜在空間の一例について説明するための図である。
図9図9は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0024】
以下に、本願に係る情報処理装置、情報処理方法及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0025】
(実施形態)
〔1.情報処理の概要〕
図1は、実施形態に係る情報処理の概要について説明するための図である。図1では、実施形態に係る情報処理装置100によって、実施形態に係る情報処理などが実現されるものとする。図1では、情報処理装置100が、学習済みの機械学習モデルM1の潜在空間を用いて、ジャズダンスを踊っている利用者を撮像したダンス映像G1に基づいて、利用者が踊っているダンスのジャンルをジャズダンスからヒップホップダンスに変化させたダンス映像G2を生成する場合について説明する。
【0026】
具体的には、情報処理装置100は、姿勢推定モデルを用いて、ダンス映像G1に撮像された利用者の関節点の座標をフレームごとに推定する。続いて、情報処理装置100は、推定された各関節点の座標から各関節の関節角度のフレームごとの変化量(以下、関節角度の変化量の第1の時系列データともいう)を算出する。ここで、姿勢推定モデルとは、対象物を含む画像から対象物の姿勢を推定するよう学習された機械学習モデルである。続いて、情報処理装置100は、各関節の関節角度の初期角度と各関節の関節角度の変化量の第1の時系列データを入力情報として機械学習モデルM1に入力し、第1の特徴情報を生成する。情報処理装置100は、生成した第1の特徴情報を機械学習モデルM1の潜在空間にマッピングする。
【0027】
本実施形態における機械学習モデルM1は、時系列データに対応する特徴情報を潜在空間にマッピングするように事前に学習された機械学習モデルである。具体的には、機械学習モデルM1は、時系列データに対応する特徴情報の確率分布が正規分布に従うように事前に学習されたニューラルネットワークであってよい。例えば、機械学習モデルM1は、VAE(Variational Autoencoder)にRNN(Recurrent Neural Network)を適用した機械学習モデルであるVRAE(Variational Recurrent Autoencoders)であってよい(参考文献;Otto Fabius、他1名、“VARIATIONAL RECURRENT AUTO-ENCODERS”、[online]、December 2014、[令和4年5月31日検索]、インターネット<URL:https://arxiv.org/abs/1412.6581v1>)。図1では、機械学習モデルM1がVRAEである場合について説明する。
【0028】
ここで、VRAEの基礎となっているVAE(Variational Autoencoder)について詳しく説明する。VAEは、画像を生成する生成モデルの一種として知られる。例えば、手書きで書かれた「0」~「9」の数字に対応する画像データ(以下、手書き数字画像ともいう)と、画像に書かれた数字の正解となるラベルデータとの組のデータセットを学習データ(訓練データともいう)としてVAEを学習させる。具体的には、データセットを潜在表現に変換して、潜在表現を潜在空間にマッピングするようVAEを学習させる。ここで、VAEは、潜在表現の確率分布が正規分布に従うようにニューラルネットワークを学習する点に特徴がある。そのため、VAEの潜在空間では、類似する画像、つまり、手書き数字画像の場合、同じ数字が描かれた手書き数字画像に対応する潜在表現同士が潜在空間上の近い位置にマッピングされる傾向がある。また、同じ数字が描かれた手書き数字画像の潜在表現同士が潜在空間上の近い位置にマッピングされることは、各数字が描かれた手書き数字画像に対応する潜在表現のクラスタが生成されることに対応する。例えば、「1」という数字が描かれた手書き数字画像に対応する潜在表現のクラスタ(以下、「1」のクラスタ)、「2」という数字が描かれた手書き数字画像に対応する潜在表現のクラスタ(以下、「2」のクラスタ)、および、「3」という数字が描かれた手書き数字画像に対応する潜在表現のクラスタ(以下、「3」のクラスタ)、…のように各数字に対応する潜在表現のクラスタがそれぞれ生成される。例えば、潜在空間上の「1」のクラスタから最も近い距離に「2」のクラスタがマッピングされたとする。また、「2」のクラスタの次に「1」のクラスタから近い距離に「3」のクラスタがマッピングされたとする。このとき、VAEの潜在空間における潜在変数を、例えば、「1」のクラスタの平均値から「3」のクラスタの平均値まで「1」→「2」→「3」のように連続的に変化させながら画像を生成する。これにより、画像に描かれた数字を「1」→「2」→「3」のように「1」から「3」まで連続的に変化させた手書き数字画像を生成することができる。
【0029】
図1の説明に戻る。図1に示す例では、あらかじめ、ダンス映像とダンス映像に含まれるダンスの種類(例えば、ジャズダンス、バレエダンス、ヒップホップダンス等のジャンル)を示すラベルデータとの組のデータセットを学習データとして機械学習モデルM1を学習させる。具体的には、データセットを特徴情報(上記の潜在表現に対応)に変換して、特徴情報を潜在空間にマッピングするように機械学習モデルM1を学習させる。ここで、VRAEである機械学習モデルM1は、VAEと同様に、特徴情報の確率分布が正規分布に従うようにニューラルネットワークを学習する。そのため、機械学習モデルM1の潜在空間では、類似するダンス映像、つまり、同じ種類のダンスを含むダンス映像に対応する特徴情報同士が潜在空間上の近い位置にマッピングされる傾向がある。また、同じ種類のダンスを含むダンス映像の特徴情報同士が潜在空間上の近い位置にマッピングされることは、各種類のダンス映像に対応する潜在表現のクラスタが生成されることに対応する。図1では、ジャズダンスのダンス映像に対応する特徴情報のクラスタ(以下、ジャズダンスのクラスタ)、バレエダンスのダンス映像に対応する特徴情報のクラスタ(以下、バレエダンスのクラスタ)、および、ヒップホップダンスのダンス映像に対応する特徴情報のクラスタ(以下、ヒップホップダンスのクラスタ)、…のように各種類のダンス映像に対応する特徴情報のクラスタがそれぞれ生成される。そして、各種類のダンス映像に対応する特徴情報のクラスタが潜在空間上にマッピングされる様子を示す。また、情報処理装置100は、公知のクラスタリング技術を用いて、図1に示す潜在空間にマッピングされた特徴情報を、ダンス映像に含まれるダンスの種類(例えば、ジャズダンス、バレエダンス、ヒップホップダンス等)に応じたクラスタに分類してよい。その上で、例えば、情報処理装置100は、ダンス映像G1がジャズダンスの映像である場合、潜在空間におけるジャズダンスのクラスタの位置に第1の特徴情報をマッピングする。図1に示す点P1は、潜在空間にマッピングされた第1の特徴情報の位置を示す。
【0030】
続いて、情報処理装置100は、潜在空間における潜在変数を第1の特徴情報を持つ値から第2の特徴情報を持つ値に変化させる。例えば、情報処理装置100は、潜在変数をジャズダンスのクラスタに属する第1の特徴情報を持つ値からヒップホップのクラスタに属する第2の特徴情報を持つ値まで変化させる。図1に示す点P2は、潜在空間にマッピングされた第2の特徴情報の位置を示す。例えば、潜在空間上のジャズダンスのクラスタから最も近い距離にバレエダンスのクラスタがマッピングされる。また、バレエダンスのクラスタの次にジャズダンスのクラスタから近い距離にヒップホップダンスのクラスタがマッピングされる。このとき、情報処理装置100は、潜在変数を、ジャズダンスのクラスタに属する第1の特徴情報を持つ値からヒップホップダンスのクラスタの平均値から所定範囲内に位置する第2の特徴情報を持つ値に連続的に変化させてよい。例えば、情報処理装置100は、ジャズダンスのクラスタに属する第1の特徴情報を持つ値→バレエダンスのクラスタの平均値を持つ値→ヒップホップダンスのクラスタの平均値から所定範囲内に位置する第2の特徴情報を持つ値のように潜在変数を連続的に変化させてよい。これにより、情報処理装置100は、利用者が踊っているダンスのジャンルを、例えば、ジャズダンス→バレエダンス→ヒップホップダンスのようにジャズダンスからヒップホップダンスまで連続的に変化させたダンス映像を生成することができる。
【0031】
続いて、情報処理装置100は、変化させた後の潜在変数の値に対応する第2の特徴情報に基づいて、各関節の関節角度のフレームごとの変化量(以下、関節角度の変化量の第2の時系列データともいう)を生成する。例えば、情報処理装置100は、機械学習モデルM1の出力情報として、各関節の関節角度の変化量の第2の時系列データを出力し、各関節の関節角度の変化量の第2の時系列データを生成する。続いて、情報処理装置100は、機械学習モデルM1から出力された各関節の関節角度の変化量の第2の時系列データと各関節の関節角度の初期角度に基づいて、フレームごとの各関節の関節角度を算出する。続いて、情報処理装置100は、フレームごとの各関節の関節角度から、フレームごとの各関節点の座標を算出する。
【0032】
続いて、情報処理装置100は、画像変換モデルを用いて、算出された各関節点の座標に対応する関節点を含む各フレームをダンス中の利用者を含むダンス映像G2に変換する。ここで、画像変換モデルとは、対象者の関節点を含む関節画像から関節点に対応する対象者の人物画像を生成するよう学習された機械学習モデルである。ここで、第2の特徴情報は、潜在空間におけるヒップホップダンスのクラスタの位置にマッピングされているので、第2の特徴情報に対応するダンス映像G2は、利用者がヒップホップダンスを踊っている映像に対応する。
【0033】
上述したように、情報処理装置100は、学習済みの機械学習モデルM1を用いて、ダンス映像G1から第1の特徴情報を生成し、第1の特徴情報を潜在空間にマッピングする。続いて、情報処理装置100は、潜在空間における潜在変数を第1の特徴情報を持つ値から第2の特徴情報を持つ値に変化させる。続いて、情報処理装置100は、変化させた後の潜在変数の値に対応する第2の特徴情報に基づいて、ダンス映像G2を生成する。このように、情報処理装置100は、機械学習モデルM1の潜在空間を用いることにより、利用者のダンス映像G1を潜在空間上の任意の値に対応したダンス映像G2へと変化させることができる。すなわち、情報処理装置100は、機械学習モデルM1の潜在空間を用いることにより、利用者のダンス映像G1からダンス映像G1を加工したダンス映像G2へのモーフィングを実現可能にする。例えば、情報処理装置100は、ダンス映像の種類に応じて分類された潜在空間を用いることにより、ジャズダンスのダンス映像G1からヒップホップダンスのダンス映像G2へのモーフィングを実現可能にする。すなわち、情報処理装置100は、利用者のダンス映像に基づいて、利用者が所望するダンス映像の属性(例えば、ダンスの種類)に応じた新たなダンス映像を生成することができる。したがって、情報処理装置100は、利用者のダンス映像から任意のダンス映像を生成可能とすることができる。また、情報処理装置100は、利用者が所望するダンス映像の属性(例えば、ダンスの種類)に応じた新たなダンス映像を利用者に対して提供可能とすることができる。すなわち、情報処理装置100は、利用者に対して新しいエンタテインメントを提供可能とすることができる。したがって、情報処理装置100は、利用者に対して精神的な豊かさを提供可能とすることができる。
【0034】
〔2.情報処理システムの構成〕
図2は、実施形態に係る情報処理システム1の構成例を示す図である。図2に示すように、実施形態に係る情報処理システム1には、生成装置20と情報処理装置100とが含まれる。生成装置20と情報処理装置100とは、各種の通信ネットワークを介して、有線または無線で互いに通信可能に接続される。なお、図2に示した情報処理システム1には、任意の数の生成装置20と、任意の数の情報処理装置100とが含まれていてもよい。
【0035】
生成装置20は、図1で説明した機械学習モデルM1を生成するサーバ装置である。生成装置20は、機械学習モデルM1を生成した場合、生成した機械学習モデルM1に関する情報を各利用者の情報処理装置100に配信する。
【0036】
情報処理装置100は、図1で説明した情報処理を実現する情報処理装置である。具体的には、情報処理装置100は、利用者によって使用されるスマートフォン等の端末装置であってよい。情報処理装置100は、生成装置20から機械学習モデルM1を取得し、図1で説明した情報処理を実現する。
【0037】
〔3.生成装置の構成〕
図3は、実施形態に係る生成装置20の構成例を示す図である。生成装置20は、通信部21と、記憶部22と、制御部23とを有する。
【0038】
(通信部21)
通信部21は、NIC(Network Interface Card)やアンテナ等によって実現される。通信部21は、各種ネットワークと有線または無線で接続され、例えば、情報処理装置100との間で情報の送受信を行う。
【0039】
(記憶部22)
記憶部22は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。具体的には、記憶部22は、各種プログラム(情報処理プログラムの一例)を記憶する。また、記憶部22は、モデル生成部232によって生成された機械学習モデルM1に関する情報を記憶する。
【0040】
(制御部23)
制御部23は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、生成装置20内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部23は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0041】
制御部23は、取得部231と、モデル生成部232と、配信部233を機能部として有し、以下に説明する情報処理の作用を実現または実行してよい。なお、制御部23の内部構成は、図3に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、各機能部は、制御部23の機能を示したものであり、必ずしも物理的に区別されるものでなくともよい。
【0042】
(取得部231)
取得部231は、モデル生成部232による機械学習モデルM1の学習に用いられる学習データを取得する。具体的には、取得部231は、学習データとして、あらかじめ人手によってダンス映像の属性を示す属性情報とダンス映像とが紐づけられた情報を取得してよい。属性情報は、例えば、ダンス映像に含まれる人物(以下、対象者ともいう)が踊るダンスの種類であってよい。より具体的には、取得部231は、学習データとして、ダンス映像に含まれるダンスの種類を示すラベル(例えば、ジャズダンス、バレエダンス、ヒップホップダンス等のダンスのジャンルを示すラベル)とダンス映像との組み合わせからなるデータセットを取得してよい。例えば、取得部231は、学習データを作成した作成者によって使用される端末装置から学習データを取得してよい。
【0043】
また、取得部231は、関節角度の変化量の時系列データを取得する。具体的には、取得部231は、姿勢推定モデルを用いて、学習データのダンス映像に含まれる対象者の関節点の座標をフレームごとに推定してよい。続いて、取得部231は、推定された各関節点の座標から各関節の関節角度のフレームごとの変化量を算出してよい。例えば、取得部231は、推定された各関節点の座標から9つの関節点(首、両肩、両肘、両腰および両膝)の関節角度のフレームごとの変化量を算出してよい。
【0044】
例えば、取得部231は、第2余弦定理および逆三角定理を用いて、3つの関節点の座標から、フレームごとの各関節の関節角度を算出してよい。例として、取得部231が、右膝の関節角度を算出する場合について説明する。取得部231は、対象者の骨格モデルにおける右腰の関節点(以下、点Bと記載する)の座標(r_hip(x)、r_hip(y))、右膝の関節点(以下、点Cと記載する)の座標(r_knee(x)、r_knee(y))、および、右足首の関節点(以下、点Aと記載する)の座標(r_ankle(x)、r_ankle(y))から、フレームごとの右膝の関節角度を算出してよい。例えば、取得部231は、三角形ABCの各辺の長さの二乗を、それぞれ、(BC)=(r_knee(x)-r_hip(x))+(r_knee(y)-r_hip(y))、(CA)=(r_knee(x)-r_ankle(x))+(r_knee(y)-r_ankle(y))、(AB)=(r_ankle(x)-r_hip(x))+(r_ankle(y)-r_hip(y))によって算出する。続いて、取得部231は、三角形ABCの頂点Cの角度(すなわち、右膝の関節角度)をθで表すと、第2余弦定理より、(AB)=(BC)+(CA)-2(BC)*(CA)cosθが成り立つので、逆三角定理を用いて、θ=cos^(-1)((BC)+(CA)-(AB))/2(BC)*(CA)により算出する。取得部231は、右膝の関節角度を算出する場合と同様にして、3つの関節点の座標から、フレームごとの各関節の関節角度を算出してよい。続いて、取得部231は、所定のフレームにおける各関節の関節角度と、所定のフレームの次のフレームにおける各関節の関節角度との差分を算出することにより、各関節の関節角度のフレームごとの変化量(以下、関節角度の変化量の時系列データともいう)を算出してよい。なお、上記の例では、取得部231が、3つの関節点として、右腰、右膝、右足首のように骨格モデルにおいて連続する3部位の関節点を選択し、これらからなる角度を関節角度として算出する場合について説明したが、本実施形態はこれに限定されない。すなわち、一実施形態において取得部231は、骨格モデルにおける任意の3部位からなる角度を関節角度として算出してもよい。
【0045】
(モデル生成部232)
モデル生成部232は、取得部231によって取得された各関節の関節角度の変化量の時系列データ(以下、時系列データともいう)に基づいて時系列データの特徴を示す特徴情報を生成するエンコーダと、特徴情報に基づいて時系列データを生成するデコーダと、を含む機械学習モデルM1を生成する。具体的には、機械学習モデルM1は、VAEにRNNを適用した機械学習モデルであるVRAEであってよい。
【0046】
より具体的には、モデル生成部232は、機械学習モデルM1のエンコーダを用いて、時系列データから特徴情報を生成してよい。ここで、特徴情報は、時系列データよりも低次元のベクトルであってよい。モデル生成部232は、機械学習モデルM1のエンコーダを用いて、時系列データを特徴情報に次元圧縮する。続いて、モデル生成部232は、機械学習モデルM1のデコーダを用いて、特徴情報から時系列データを生成してよい。続いて、モデル生成部232は、エンコーダに入力される時系列データと、デコーダから出力される時系列データとの類似度が所定の閾値を超えるように機械学習モデルM1を学習させてよい。例えば、モデル生成部232は、バックプロパゲーション等を用いて、エンコーダに入力される時系列データと、デコーダから出力される時系列データとの類似度が所定の閾値を超えるまで、機械学習モデルM1のエンコーダとデコーダをそれぞれ学習させてよい。また、モデル生成部232は、特徴情報の確率分布が正規分布に従うように機械学習モデルM1を学習させてよい。例えば、モデル生成部232は、特徴情報の確率分布が正規分布に従うと仮定して、正規分布の平均μおよび分散σを出力するようエンコーダを学習させてよい。また、モデル生成部232は、エンコーダから出力された平均μおよび分散σに基づいて、正規分布N(μ、σ)に従う特徴情報をサンプリングし、サンプリングされた特徴情報から時系列データを復元するようデコーダを学習させてよい。このようにして、モデル生成部232は、学習済みの機械学習モデルM1を生成してよい。
【0047】
また、取得部231は、時系列データに対応する属性情報を含む時系列データを取得してよい。例えば、取得部231は、時系列データに対応する属性情報を含む時系列データとして、ダンス映像に対応するダンスの種類を示すラベルとダンス映像との組のデータセットを取得してよい。また、モデル生成部232は、属性情報を含む時系列データの特徴を示す特徴情報を潜在空間にマッピングするよう機械学習モデルM1を学習させてよい。例えば、モデル生成部232は、取得部231によって取得されたデータセットの特徴を示す特徴情報を潜在空間にマッピングするよう機械学習モデルM1を学習させてよい。また、モデル生成部232は、属性情報を含む時系列データの特徴を示す特徴情報の確率分布が正規分布に従うように機械学習モデルM1を学習させてよい。例えば、モデル生成部232は、取得部231によって取得されたデータセットの特徴を示す特徴情報の確率分布が正規分布に従うように機械学習モデルM1を学習させてよい。続いて、モデル生成部232は、学習済みの機械学習モデルM1の潜在空間にマッピングされた特徴情報を属性情報に応じたクラスタに分類してよい。例えば、モデル生成部232は、k-means法を用いて潜在空間にマッピングされた特徴情報同士の距離を算出することで、クラスタリングを行ってよい。なお、モデル生成部232は、k-means法の他にも、公知のクラスタリング技術を用いて、潜在空間にマッピングされた特徴情報を属性に応じたクラスタに分類してよい。例えば、モデル生成部232は、潜在空間にマッピングされた特徴情報を、属性情報が示すダンスの種類(例えば、ジャズダンス、バレエダンス、ヒップホップダンス等の種類)に応じたクラスタに分類してよい。
【0048】
また、機械学習モデルM1は、対象物を含む画像から対象物の姿勢を推定するよう学習された姿勢推定モデルを含んでよい。例えば、モデル生成部232は、公知の姿勢推定技術を用いて、ダンス映像からダンス映像に含まれる対象者の姿勢を推定するよう学習された姿勢推定モデルを生成してよい。
【0049】
また、機械学習モデルM1は、対象者の関節点を含む関節画像から関節点に対応する対象者の人物画像を生成するよう学習された画像変換モデルを含んでよい。例えば、モデル生成部232は、Pix2Pix、CYcleGAN、DiscoGAN、UNIT等の公知の画像変換モデルを用いて、対象者の関節点を含む関節画像から関節点に対応する対象者の人物画像を生成するよう画像変換モデルを学習させてよい。
【0050】
(配信部233)
配信部233は、モデル生成部232によって生成された機械学習モデルM1に関する情報を各利用者の情報処理装置100に配信する。
【0051】
〔4.生成装置による情報処理の手順〕
図4は、実施形態に係る生成装置20による情報処理手順を示すフローチャートである。図4に示すように、取得部231は、姿勢推定モデルを用いて、ダンス映像に含まれる対象者の関節点の座標を推定する(ステップS11)。続いて、取得部231は、各関節点の座標に基づいて、関節角度の変化量の時系列データを生成する(ステップS12)。続いて、モデル生成部232は、機械学習モデルM1のエンコーダを用いて、時系列データから特徴情報を生成する(ステップS13)。続いて、モデル生成部232は、機械学習モデルM1のデコーダを用いて、特徴情報から時系列データを生成する(ステップS14)。続いて、モデル生成部232は、エンコーダに入力される時系列データと、デコーダから出力される時系列データとの類似度が所定の閾値を超えるように機械学習モデルM1を学習させる(ステップS15)。
【0052】
〔5.情報処理装置の構成〕
図5は、実施形態に係る情報処理装置100の構成例を示す図である。情報処理装置100は、通信部110と、記憶部120と、入力部130と、出力部140と、制御部150とを有する。
【0053】
(通信部110)
通信部110は、NICやアンテナ等によって実現される。通信部110は、各種ネットワークと有線または無線で接続され、例えば、生成装置20との間で情報の送受信を行う。
【0054】
(記憶部120)
記憶部120は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。具体的には、記憶部120は、各種プログラム(情報処理プログラムの一例)を記憶する。また、記憶部120は、機械学習モデルM1に関する情報を記憶する。
【0055】
(入力部130)
入力部130は、利用者から各種操作が入力される。例えば、入力部130は、タッチパネル機能により表示面(例えば出力部140)を介して利用者からの各種操作を受け付けてもよい。また、入力部130は、情報処理装置100に設けられたボタンや、情報処理装置100に接続されたキーボードやマウスからの各種操作を受け付けてもよい。例えば、入力部130は、利用者から画面に表示された利用者の特徴情報を加工する操作を受け付けてよい。
【0056】
(出力部140)
出力部140は、例えば、液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ等によって実現される表示画面であり、各種情報を表示するための表示装置である。出力部140は、制御部150の制御に従って、各種情報を表示する。例えば、出力部140は、提供部153の制御に従って、潜在空間にマッピングされた特徴情報の画像を表示してよい。なお、情報処理装置100にタッチパネルが採用される場合には、入力部130と出力部140とは一体化される。また、以下の説明では、出力部140を画面と記載する場合がある。
【0057】
(制御部150)
制御部150は、コントローラであり、例えば、CPUやMPU等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部150は、コントローラであり、例えば、ASICやFPGA等の集積回路により実現される。
【0058】
制御部150は、取得部151と、生成部152と、提供部153と、受付部154を機能部として有し、以下に説明する情報処理の作用を実現または実行してよい。なお、制御部150の内部構成は、図5に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、各機能部は、制御部150の機能を示したものであり、必ずしも物理的に区別されるものでなくともよい。
【0059】
(取得部151)
取得部151は、関節角度の変化量の時系列データに基づいて時系列データの特徴を示す特徴情報を生成するエンコーダと、特徴情報に基づいて時系列データを生成するデコーダと、を含む機械学習モデルM1を取得する。また、取得部151は、特徴情報の確率分布が正規分布に従うように学習された機械学習モデルM1を取得する。例えば、取得部151は、属性情報を含む時系列データの特徴を示す特徴情報の確率分布が正規分布に従うように学習された機械学習モデルM1を取得してよい。具体的には、取得部151は、生成装置20から学習済みの機械学習モデルM1に関する情報を取得してよい。
【0060】
(生成部152)
生成部152は、利用者からダンス映像を受け付ける。具体的には、生成部152は、利用者自身のダンス映像(以下、利用者のダンス映像ともいう)を受け付けてよい。例えば、生成部152は、入力部130を介して、利用者から利用者のダンス映像(以下、第1のダンス映像ともいう)を受け付けてよい。例えば、生成部152は、第1のダンス映像として、利用者がジャズダンスを踊っている様子を撮影した映像を受け付けてよい。
【0061】
続いて、生成部152は、第1のダンス映像を受け付けた場合、姿勢推定モデルを用いて、第1のダンス映像に撮像された利用者の各関節点の座標をフレームごとに推定してよい。続いて、生成部152は、推定された各関節点の座標から各関節の関節角度のフレームごとの変化量(以下、第1の時系列データともいう)を算出してよい。このようにして、生成部152は、姿勢推定モデルを用いて、第1のダンス映像から利用者の各関節点の座標を推定し、推定した関節点の座標に基づいて、第1の時系列データを生成してよい。
【0062】
続いて、生成部152は、第1の時系列データを生成した場合、機械学習モデルM1のエンコーダを用いて、第1の時系列データを機械学習モデルの潜在空間に写像してよい。例えば、生成部152は、各関節の関節角度の初期角度と各関節の関節角度の変化量の第1の時系列データを入力情報として機械学習モデルM1のエンコーダに入力し、第1の特徴情報を生成してよい。続いて、生成部152は、生成した第1の特徴情報を機械学習モデルM1の潜在空間にマッピングしてよい。図6は、実施形態に係る潜在空間の一例について説明するための図である。図6の左側の図における点P1は、生成部152によって潜在空間にマッピングされた第1の特徴情報の位置を示す。図6の左側の図では、利用者から受け付けた第1のダンス映像がジャズダンスの映像なので、生成部152によって第1の特徴情報がジャズダンスのクラスタの位置にマッピングされる様子を示す。
【0063】
(提供部153)
提供部153は、機械学習モデルM1の潜在空間に関する情報を利用者に対して提供する。例えば、提供部153は、学習済みの特徴情報がマッピングされた潜在空間に関する情報を表示するよう出力部140を制御してよい。図6の左側の図に示す例では、提供部153は、学習済みの特徴情報とともに、生成部152によって生成された第1の特徴情報が点P1の位置にマッピングされた様子を示す潜在空間の画像G3を表示するよう出力部140を制御してよい。
【0064】
(受付部154)
受付部154は、利用者から潜在空間に対する操作を受け付ける。具体的には、受付部154は、利用者から潜在空間における潜在変数を変化させる操作を受け付けてよい。図6の右側の図に示す例では、受付部154は、潜在空間における潜在変数を第1の特徴情報を持つ値を示す点P1の位置から第2の特徴情報を持つ値を示す点P2の位置に変化させる操作を利用者から受け付けてよい。例えば、受付部154は、入力部130を介して、提供部153によって表示された潜在空間の画像G3に対する操作を受け付けてよい。受付部154は、潜在変数をジャズダンスのクラスタに属する第1の特徴情報を持つ値を示す点P1の位置からヒップホップダンスのクラスタに属する第2の特徴情報を持つ値を示す点P2の位置に変化させる操作を利用者から受け付けてよい。また、受付部154は、利用者によって変化させられた後の潜在変数の値に対応する第2の特徴情報を受け付けてよい。
【0065】
また、生成部152は、受付部154によって受け付けられた第2の特徴情報に基づいて、各関節の関節角度の変化量の第2の時系列データを生成してよい。例えば、生成部152は、受付部154によって受け付けられた第2の特徴情報に基づいて、潜在空間における潜在変数を第1の特徴情報を持つ値から第2の特徴情報を持つ値に変化させる。例えば、生成部152は、潜在空間における潜在変数を第1の属性情報に対応する第1の特徴情報を持つ値から第2の属性情報に対応する第2の特徴情報を持つ値に変化させてよい。具体的には、例えば、生成部152は、潜在変数をダンスの種類がジャズダンスであることを示すラベルに対応する特徴情報を持つ値から、ダンスの種類がヒップホップダンスであることを示すラベルに対応する特徴情報を持つ値まで変化させてよい。続いて、生成部152は、変化させた後の潜在変数の値に対応する第2の特徴情報に基づいて、機械学習モデルM1デコーダを用いて、第2の時系列データを生成してよい。
【0066】
続いて、生成部152は、機械学習モデルM1から出力された第2の時系列データと各関節の関節角度の初期角度に基づいて、フレームごとの各関節の関節角度を算出してよい。続いて、生成部152は、フレームごとの各関節の関節角度から、フレームごとの各関節点の座標を算出してよい。このようにして、生成部152は、利用者の各関節の関節角度の変化量の第2の時系列データに対応する関節の動きを含む映像(以下、関節映像)を生成してよい。
【0067】
続いて、生成部152は、生成した第2の時系列データに基づいて、第2の時系列データに対応する第2のダンス映像を生成してよい。具体的には、生成部152は、画像変換モデルを用いて、第2の時系列データから第2のダンス映像を生成してよい。例えば、生成部152は、画像変換モデルを用いて、第2の時系列データに対応する関節映像の各フレームをダンス中の人物を含む第2のダンス映像に変換してよい。図6に示すように、第2の特徴情報を示す点P2は、潜在空間におけるヒップホップダンスのクラスタの位置にマッピングされているので、第2の特徴情報に対応する第2のダンス映像は、ヒップホップダンスの映像である。このようにして、生成部152は、利用者によるジャズダンスのダンス映像(第1のダンス映像)から、利用者によるヒップホップダンスのダンス映像(第2のダンス映像)を生成してよい。
【0068】
〔6.情報処理装置による情報処理の手順〕
図7は、実施形態に係る情報処理装置100による情報処理手順を示すフローチャートである。図7に示すように、取得部151は、事前学習済みの機械学習モデルM1を取得する(ステップS101)。生成部152は、取得部151によって取得された機械学習モデルM1を用いて、利用者のダンス映像に対応する第1の特徴情報を潜在空間にマッピングする(ステップS102)。提供部153は、第1の特徴情報をマッピングした潜在空間の情報を利用者に対して提供する(ステップS103)。受付部154は、潜在空間における潜在変数を変化させる操作を利用者から受け付ける(ステップS104)。生成部152は、受付部154によって受け付けられた変化後の潜在変数の値に対応する第2の特徴情報に基づいて、新たなダンス映像を生成する(ステップS105)。提供部153は、生成部152によって生成された新たなダンス映像を利用者に対して提供する(ステップS106)。
【0069】
〔7.変形例〕
上述した実施形態に係る処理は、上記実施形態以外にも種々の異なる形態にて実施されてよい。
【0070】
〔7-1.潜在空間について〕
上述した実施形態では、属性情報が、ダンス映像に含まれる人物が踊るダンスの種類である場合について説明したが、属性情報は、ダンスの種類に限られない。例えば、属性情報は、時系列データに対応するダンス映像に含まれる人物のダンスの習熟度、ダンスの特徴、または、ダンスを踊っている人物の生体情報を示す情報であってよい。例えば、属性情報は、ダンスの習熟度を示すスコアであってよい。例えば、ダンスの習熟度を示すスコアは、プロのダンサーがダンス映像に含まれるダンスの上手さを「1」~「5」までの5段階で評価し、ダンス映像に対して「1」~「5」までの数値を付与(例えば、ダンスが上手いほど大きい数値を付与)したものであってよい。また、属性情報は、ダンスの特徴を示すスコアであってよい。例えば、ダンスの特徴を示すスコアは、ダンスの習熟度を示すスコアと同様に、プロのダンサーがダンス映像に含まれるダンスの特徴(例えば、ダンスにおけるキレの有無)を数値によって評価し、ダンス映像に対して評価に相当する数値を付与したものであってよい。また、属性情報は、ダンスを踊っている人物の生体情報を示す数値であってよい。例えば、ダンス映像の撮影前(または、撮影中であってもよい)に生体センサを用いてダンスを踊る人物の生体情報(例えば、筋肉量)を取得する。そして、生体センサから取得した生体情報の数値をダンス映像に付与したものであってよい。
【0071】
図8は、変形例に係る潜在空間の一例について説明するための図である。図8の左側の図は、特徴情報と紐づいた属性情報が、ダンスの習熟度である場合を示す。例えば、生成部152は、潜在空間における潜在変数を第1の属性情報(例えば、ダンスが下手なことを示すラベル)に対応する第1の特徴情報を持つ値から第2の属性情報(例えば、ダンスが上手いことを示すラベル)に対応する第2の特徴情報を持つ値に変化させてよい。これにより、情報処理装置100は、元のダンス映像に含まれる利用者のダンスよりも、利用者のダンスがより上手くなったダンス映像を生成することができる。また、情報処理装置100は、利用者のダンスがより上手くなったダンス映像を利用者に対して提供することができる。
【0072】
また、図8の中央の図は、特徴情報と紐づいた属性情報が、ダンスのキレの有無である場合を示す。例えば、生成部152は、潜在空間における潜在変数を第1の属性情報(例えば、ダンスのキレがないことを示すラベル)に対応する第1の特徴情報を持つ値から第2の属性情報(例えば、ダンスのキレがあることを示すラベル)に対応する第2の特徴情報を持つ値に変化させてよい。これにより、情報処理装置100は、元のダンス映像に含まれる利用者のダンスよりも、利用者のダンスがよりキレのあるダンスになったダンス映像を生成することができる。また、情報処理装置100は、利用者のダンスがよりキレのあるダンスになったダンス映像を利用者に対して提供することができる。
【0073】
また、図8の右側の図は、特徴情報と紐づいた属性情報が、ダンスを踊っている人物の筋肉量である場合を示す。例えば、生成部152は、潜在空間における潜在変数を第1の属性情報(例えば、筋肉量が少ないことを示すラベル)に対応する第1の特徴情報を持つ値から第2の属性情報(例えば、筋肉量が多いことを示すラベル)に対応する第2の特徴情報を持つ値に変化させてよい。これにより、情報処理装置100は、元のダンス映像に含まれる利用者の筋肉量よりも、利用者の筋肉量がより多くなったダンス映像を生成することができる。また、情報処理装置100は、利用者の筋肉量がより多くなったダンス映像を利用者に対して提供することができる。
【0074】
〔7-2.利用者の身体の動きについて〕
上述した実施形態では、利用者の身体の動きを含む運動映像がダンス映像である場合について説明したが、運動映像はダンス映像に限られない。例えば、運動映像に含まれる利用者の身体の動きは、ダンス以外にも、リハビリテーション、スポーツ(例えば、フィギュアスケートなど)、または演技における動作であってよい。
【0075】
〔8.効果〕
上述したように、実施形態に係る情報処理装置(実施形態では情報処理装置100)は、取得部(実施形態では取得部151)と生成部(実施形態では生成部152)を備える。取得部は、関節角度の変化に関する時系列データに基づいて時系列データの特徴を示す特徴情報を生成するエンコーダと、特徴情報に基づいて時系列データを生成するデコーダと、を含む機械学習モデルを取得する。生成部は、機械学習モデルの潜在空間を用いて、利用者の関節角度の変化に関する第1の時系列データから、利用者の関節角度の変化に関する第2の時系列データを生成する。
【0076】
これにより、情報処理装置は、機械学習モデルの潜在空間を用いることにより、利用者の第1の身体の動き(第1の運動ともいう)に対応する第1の時系列データから、潜在空間上の任意の値に対応した第2の時系列データへと変化させることができる。ここで、第2の時系列データは、第1の身体の動きとは異なる利用者の第2の身体の動き(以下、第2の運動)に対応する。すなわち、情報処理装置は、機械学習モデルの潜在空間を用いることにより、利用者の第1の運動に対応する第1の時系列データから、利用者の第1の運動を加工した利用者の第2の運動に対応する第2の時系列データへのモーフィングを実現可能にする。例えば、情報処理装置は、運動の種類に応じて分類された潜在空間を用いることにより、第1の運動に対応する第1の時系列データから第2の運動に対応する第2の時系列データへのモーフィングを実現可能にする。また、情報処理装置は、利用者の第1の運動を含む第1の運動映像から、第1の時系列データを生成することができる。また、情報処理装置は、第2の時系列データから、利用者の第2の運動を含む第2の運動映像を生成することができる。すなわち、情報処理装置は、利用者の第1の運動映像に基づいて、利用者が所望する運動映像の属性(例えば、運動の種類)に応じた新たな運動映像(例えば、第2の運動映像)を生成することができる。したがって、情報処理装置は、利用者の身体の動きを含む運動映像から任意の運動映像を生成可能とすることができる。また、情報処理装置は、利用者の身体の動きを含む運動映像から任意の運動映像を生成可能とすることができるため、持続可能な開発目標(SDGs)の目標9「産業と技術革新の基盤をつくろう」の達成に貢献できる。また、情報処理装置は、利用者が所望する運動映像の属性に応じた新たな運動映像を利用者に対して提供可能とすることができる。すなわち、情報処理装置は、利用者に対して新しいエンタテインメントを提供可能とすることができる。したがって、情報処理装置は、利用者に対して精神的な豊かさを提供可能とすることができる。
【0077】
また、取得部は、特徴情報の確率分布が正規分布に従うように学習された機械学習モデルを取得する。生成部は、第1の時系列データを潜在空間に写像し、潜在空間における潜在変数を潜在空間に写像された第1の時系列データに対応する第1の特徴情報を持つ値から第2の特徴情報を持つ値に変化させ、変化させた後の潜在変数の値に対応する第2の特徴情報に基づいて、第2の時系列データを生成する。
【0078】
これにより、情報処理装置は、潜在空間上に、運動映像の属性に応じた特徴情報のクラスタを生成することができる。また、情報処理装置は、利用者の第1の運動映像を第1の運動映像の第1の属性に応じた特徴情報のクラスタ(以下、第1の属性のクラスタともいう)の位置にマッピングすることができる。また、情報処理装置は、潜在変数を、第1の属性のクラスタに属する第1の特徴情報を持つ値から第2の属性のクラスタに属する第2の特徴情報を持つ値に変化させることができる。また、情報処理装置は、第2の属性のクラスタに属する第2の特徴情報に基づいて、第2の運動映像を生成することができる。
【0079】
また、時系列データは、時系列データに対応する属性情報を含む。取得部は、属性情報を含む時系列データの特徴を示す特徴情報の確率分布が正規分布に従うように学習された機械学習モデルを取得する。生成部は、潜在空間における潜在変数を第1の属性情報に対応する第1の特徴情報を持つ値から第2の属性情報に対応する第2の特徴情報を持つ値に変化させ、変化させた後の潜在変数の値に対応する第2の特徴情報に基づいて、第2の時系列データを生成する。
【0080】
これにより、情報処理装置は、潜在変数を、第1の属性のクラスタに属する第1の特徴情報を持つ値から第2の属性のクラスタに属する第2の特徴情報を持つ値に変化させることができる。また、情報処理装置は、第2の属性のクラスタに属する第2の特徴情報に基づいて、第2の運動映像を生成することができる。
【0081】
また、機械学習モデルは、対象物を含む画像から対象物の姿勢を推定するよう学習された姿勢推定モデルをさらに含む。生成部は、姿勢推定モデルを用いて、利用者の身体の動きを含む第1の運動映像から利用者の関節点の座標を推定し、推定した関節点の座標に基づいて、第1の時系列データを生成する。
【0082】
これにより、情報処理装置は、第1の運動映像に含まれる利用者の姿勢を適切に推定することができるので、利用者の身体の動きを示す情報を適切に生成することができる。
【0083】
また、生成部は、生成した第2の時系列データに基づいて、第2の時系列データに対応する利用者の身体の動きを含む第2の運動映像を生成する。
【0084】
これにより、情報処理装置は、利用者の身体の動きを含む第1の運動映像を加工した任意の身体の動きを含む第2の運動映像を生成可能とすることができる。
【0085】
また、機械学習モデルは、対象者の関節点を含む関節画像から関節点に対応する対象者の人物画像を生成するよう学習された画像変換モデルをさらに含む。生成部は、画像変換モデルを用いて、第2の時系列データから第2の運動映像を生成する。
【0086】
これにより、情報処理装置は、利用者の骨格モデルを肉付けした利用者の身体の動きを含む第2の運動映像を生成可能とすることができる。
【0087】
上述したように、実施形態に係る情報処理装置(実施形態では生成装置20)は、取得部(実施形態では取得部231)とモデル生成部(実施形態ではモデル生成部232)を備える。取得部は、関節角度の変化に関する時系列データを取得する。モデル生成部は、時系列データに基づいて時系列データの特徴を示す特徴情報を生成するエンコーダと、特徴情報に基づいて時系列データを生成するデコーダと、を含む機械学習モデルを生成する。
【0088】
これにより、情報処理装置は、機械学習モデルの潜在空間を用いることにより、利用者の第1の身体の動き(第1の運動ともいう)に対応する第1の時系列データから、潜在空間上の任意の値に対応した第2の時系列データへと変化させることを可能とすることができる。すなわち、情報処理装置は、機械学習モデルの潜在空間を用いることにより、利用者の第1の運動に対応する第1の時系列データから、利用者の第1の運動を加工した利用者の第2の身体の動き(第2の運動ともいう)を示す第2の時系列データへのモーフィングを実現可能にする。例えば、情報処理装置は、運動の種類に応じて分類された潜在空間を用いることにより、第1の運動に対応する第1の時系列データから第2の運動に対応する第2の時系列データへのモーフィングを実現可能にする。また、情報処理装置は、利用者の第1の運動を含む第1の運動映像から、第1の時系列データを生成可能とすることができる。また、情報処理装置は、第2の時系列データから、利用者の第2の運動を含む第2の運動映像を生成可能とすることができる。すなわち、情報処理装置は、利用者の第1の運動映像に基づいて、利用者が所望する運動映像の属性(例えば、運動の種類)に応じた新たな運動映像(例えば、第2の運動映像)を生成可能とすることができる。したがって、情報処理装置は、利用者の身体の動きを含む運動映像から任意の運動映像を生成可能とすることができる。また、情報処理装置は、利用者の身体の動きを含む運動映像から任意の運動映像を生成可能とすることができるため、持続可能な開発目標(SDGs)の目標9「産業と技術革新の基盤をつくろう」の達成に貢献できる。また、情報処理装置は、利用者が所望する運動映像の属性に応じた新たな運動映像を利用者に対して提供可能とすることができる。すなわち、情報処理装置は、利用者に対して新しいエンタテインメントを提供可能とすることができる。したがって、情報処理装置は、利用者に対して精神的な豊かさを提供可能とすることができる。
【0089】
また、モデル生成部は、エンコーダに入力される時系列データと、デコーダから出力される時系列データとの類似度が所定の閾値を超えるように機械学習モデルを学習させる。
【0090】
これにより、情報処理装置は、機械学習モデルの精度を向上させることができる。
【0091】
また、モデル生成部は、特徴情報の確率分布が正規分布に従うように機械学習モデルを学習させる。
【0092】
これにより、情報処理装置は、潜在空間上に、運動映像の属性に応じた特徴情報のクラスタを生成可能とすることができる。
【0093】
また、取得部は、時系列データに対応する属性情報を含む時系列データを取得する。モデル生成部は、属性情報を含む時系列データの特徴を示す特徴情報の確率分布が正規分布に従うように機械学習モデルを学習させる。
【0094】
これにより、情報処理装置は、潜在空間上に、運動映像の属性に応じた特徴情報のクラスタを生成可能とすることができる。
【0095】
また、モデル生成部は、特徴情報を属性情報に応じたクラスタに分類する。
【0096】
これにより、情報処理装置は、利用者が所望する運動映像の属性(例えば、運動の種類)に関する情報を利用者に対して提供する際のユーザビリティを向上させることができる。
【0097】
また、属性情報は、時系列データに対応する運動映像に含まれる対象者の身体の動きの種類、対象者の身体の動きの習熟度、対象者の身体の動きの特徴、または、対象者の生体情報を示す情報である。
【0098】
これにより、情報処理装置は、利用者が所望する身体の動きの種類、身体の動きの習熟度、身体の動きの特徴、または、生体情報に応じた新たな運動映像を生成可能とすることができる。
【0099】
〔9.ハードウェア構成〕
また、上述してきた実施形態に係る生成装置20や情報処理装置100等の情報機器は、例えば図9に示すような構成のコンピュータ1000によって実現される。以下、情報処理装置100を例に挙げて説明する。図9は、情報処理装置100の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を備える。
【0100】
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0101】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、所定の通信網を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを所定の通信網を介して他の機器へ送信する。
【0102】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
【0103】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0104】
例えば、コンピュータ1000が実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部150の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から所定の通信網を介してこれらのプログラムを取得してもよい。
【0105】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0106】
〔10.その他〕
また、上記実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0107】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、上述した実施形態では、生成装置20と情報処理装置100とが別々の装置である場合について説明したが、生成装置20と情報処理装置100とは、一体の装置であってもよい。生成装置20と情報処理装置100が一体の装置である場合、情報処理装置100は、生成装置20の機能を備えてよい。
【0108】
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【符号の説明】
【0109】
1 情報処理システム
20 生成装置
21 通信部
22 記憶部
23 制御部
231 取得部
232 モデル生成部
233 配信部
100 情報処理装置
110 通信部
120 記憶部
130 入力部
140 出力部
150 制御部
151 取得部
152 生成部
153 提供部
154 受付部
図1
図2
図3
図4
図5
図6
図7
図8
図9