(57)【要約】【課題】背景を均一色に限定する等の厳しい制約条件を課すことなく得られた映像を用いることによって、任意の視野及び時刻における画像をより高い品質で生成すること。【解決手段】複数の動画像と、前記動画像に撮影されている被写体の三次元形状に関するパラメータと、の入力を受け付ける入力部と、各時刻におけるフレームについて、予め得られた機械学習の結果に基づいて、前記被写体の三次元関節情報を推定する推定部と、各時刻のフレームにおける前記三次元関節情報の推定結果と、前記被写体の三次元形状に関するパラメータと、に基づいて各時刻における前記被写体の三次元形状を示す情報を取得し、前記被写体の三次元形状を示す情報に基づいて、指定された時刻における指定された視野の前記被写体の画像を含む画像を生成する画像合成部と、を備える画像合成装置である。【選択図】図１
2018129009.tif 000002
【特許請求の範囲】
【請求項１】
複数の動画像と、前記動画像に撮影されている被写体の三次元形状に関するパラメータと、の入力を受け付ける入力部と、
各時刻におけるフレームについて、予め得られた機械学習の結果に基づいて、前記被写体の三次元関節情報を推定する推定部と、
各時刻のフレームにおける前記三次元関節情報の推定結果と、前記被写体の三次元形状に関するパラメータと、に基づいて各時刻における前記被写体の三次元形状を示す情報を取得し、前記被写体の三次元形状を示す情報に基づいて、指定された時刻における指定された視野の前記被写体の画像を含む画像を生成する画像合成部と、
を備える画像合成装置。
【請求項２】
前記被写体の三次元形状に関するパラメータは、前記被写体の三次元形状を示す基準形状情報と、前記基準形状情報によって示される前記三次元形状における各関節の情報を示す基準関節情報と、を含む、請求項１に記載の画像合成装置。
【請求項３】
前記動画像を構成する各時刻におけるフレームについて、前記フレームの画像に基づいて前記被写体の関節情報を補間処理によって取得する対象とならないフレームであるキーフレームであるか否か判定するフレーム分類部と、
前記キーフレーム以外のフレームについては、前記キーフレームにおける前記三次元関節情報の推定結果を用いた補間処理によって前記三次元関節情報を取得するフレーム補間部と、をさらに備える請求項１又は２に記載の画像合成装置。
【請求項４】
関節を有する生物又は物体の三次元形状を表す三次元モデルについて、複数の視野によりレンダリングされた画像と、レンダリングされた際の前記三次元モデルの関節の位置及び角度を示す関節情報と、を含む学習データを生成するデータ生成部と、
前記データ生成部によって生成された前記画像及び前記関節情報を用いて機械学習を行うことにより、処理の対象となる画像である対象画像に基づいて前記対象画像に撮像されている生物又は物体の関節情報を推定するための学習結果を取得する学習部と、をさらに備え、
前記推定部は、前記学習部による機械学習の結果に基づいて三次元関節情報を推定する、請求項１から３のいずれか一項に記載の画像合成装置。
【請求項５】
前記データ生成部は、同一の三次元モデルに基づいて前記関節情報が異なる複数のシーンを生成し、前記シーン毎に１又は複数の視野の画像をレンダリングする、請求項４に記載の画像合成装置。
【請求項６】
複数の動画像と、前記動画像に撮影されている被写体の三次元形状に関するパラメータと、の入力を受け付ける入力ステップと、
各時刻におけるフレームについて、予め得られた機械学習の結果に基づいて、前記被写体の三次元関節情報を推定する推定ステップと、
各時刻のフレームにおける前記三次元関節情報の推定結果と、前記被写体の三次元形状に関するパラメータと、に基づいて各時刻における前記被写体の三次元形状を示す情報を取得し、前記被写体の三次元形状を示す情報に基づいて、指定された時刻における指定された視野の前記被写体の画像を含む画像を生成する画像合成ステップと、
を有する画像合成方法。
【請求項７】
コンピュータを、請求項１から５のいずれか一項に記載の画像合成装置として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自由視点映像を生成するための技術に関する。
【背景技術】
【０００２】
自由視点映像では、複数の位置に配置されたカメラで撮った映像を用いて任意の視点の映像が合成される。このような合成処理によって、あらゆる視点からの映像を見ることが可能である。このような自由視点映像の技術は、次世代の映像メディアとして古くから研究が進められてきた。自由視点映像では、シーン中の被写体の三次元形状の復元を行うことで、実際にはカメラが配置されていない位置を視点とした映像を生成することを可能とする。
【０００３】
高品質な自由視点映像を実現することができる代表的な研究の一つとして、Colletらの研究が挙げられる（非特許文献１参照）。この研究は、自由視点映像の撮影、合成及び配信の一連のパイプラインを提案した研究である。この研究の技術により、高品質な自由視点映像を合成することが可能である。しかし、大量のカメラ及び赤外カメラが必要とされる。また、被写体領域を抽出するために背景を均一色に限定する必要がある。さらに、これらの特殊な環境に特化したキャリブレーションを行う必要がある。このように、撮影環境に対して非常に厳しい制約条件がある。そのため、実際のシーンでの利用は難しい。
【０００４】
他の研究として、距離センサを用いることで比較的現実的な制約下での自由視点映像合成方法が提案されている（非特許文献２参照）。しかしながら、この提案による技術では、合成品質が十分には高くない。合成品質を低下させる大きな要因の一つとして、オクル―ジョン及び時間方向のちらつきが挙げられる。オクル―ジョンに関しては、取得できていない情報を再現する必要があるため、事前情報等を用いずに解決することは原理的に不可能である。時間方向のちらつきに関しては、距離センサが赤外光の干渉などを受けることにより、フレームによって取得する情報にばらつきが生じることが原因である。こちらについては、距離情報のフィルタリングなどによって解決が試みられている。しかしながら、改善はされているものの、未だに十分には解消されていない。オクルージョン及び時間方向のちらつきは、わずかに生じるだけでも視聴者が大きな違和感を覚えてしまうため、解決すべき問題である。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】A. Collet, M. Chuang, P. Sweeney, D. Gillett, D. Evseev, D. Calabrese, H. Hoppe, A. Kirk, S. Sullivan, “High-quality streamable free-viewpoint video,” ACM Transactions on Graphics, 34(4), 2015.
【非特許文献２】D. Alexiadis, D. Zarpalas, P. Daras, “Fast and smooth 3D reconstruction using multiple RGB-Depth sensors,” in Visual Communications and Image Processing Conference 2014, pp.173-176.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
このように、従来の自由視点映像の技術には、解決すべき問題が残されており、実際のシーンで使用可能といえる制約条件で十分な品質の画像を生成することは実現されていない。
上記事情に鑑み、本発明は、背景を均一色に限定する等の厳しい制約条件を課すことなく得られた映像を用いることによって、任意の視野及び時刻における画像をより高い品質で生成する技術の提供を目的としている。
【課題を解決するための手段】
【０００７】
本発明の一態様は、複数の動画像と、前記動画像に撮影されている被写体の三次元形状に関するパラメータと、の入力を受け付ける入力部と、各時刻におけるフレームについて、予め得られた機械学習の結果に基づいて、前記被写体の三次元関節情報を推定する推定部と、各時刻のフレームにおける前記三次元関節情報の推定結果と、前記被写体の三次元形状に関するパラメータと、に基づいて各時刻における前記被写体の三次元形状を示す情報を取得し、前記被写体の三次元形状を示す情報に基づいて、指定された時刻における指定された視野の前記被写体の画像を含む画像を生成する画像合成部と、を備える画像合成装置である。
【０００８】
本発明の一態様は、上記の画像合成装置であって、前記被写体の三次元形状に関するパラメータは、前記被写体の三次元形状を示す基準形状情報と、前記基準形状情報によって示される前記三次元形状における各関節の情報を示す基準関節情報と、を含む。
【０００９】
本発明の一態様は、上記の画像合成装置であって、前記動画像を構成する各時刻におけるフレームについて、前記フレームの画像に基づいて前記被写体の関節情報を補間処理によって取得する対象とならないフレームであるキーフレームであるか否か判定するフレーム分類部と、前記キーフレーム以外のフレームについては、前記キーフレームにおける前記三次元関節情報の推定結果を用いた補間処理によって前記三次元関節情報を取得するフレーム補間部と、をさらに備える。
【００１０】
本発明の一態様は、上記の画像合成装置であって、関節を有する生物又は物体の三次元形状を表す三次元モデルについて、複数の視野によりレンダリングされた画像と、レンダリングされた際の前記三次元モデルの関節の位置及び角度を示す関節情報と、を含む学習データを生成するデータ生成部と、前記データ生成部によって生成された前記画像及び前記関節情報を用いて機械学習を行うことにより、処理の対象となる画像である対象画像に基づいて前記対象画像に撮像されている生物又は物体の関節情報を推定するための学習結果を取得する学習部と、をさらに備え、前記推定部は、前記学習部による機械学習の結果に基づいて三次元関節情報を推定する。
【００１１】
本発明の一態様は、上記の画像合成装置であって、前記データ生成部は、同一の三次元モデルに基づいて前記関節情報が異なる複数のシーンを生成し、前記シーン毎に１又は複数の視野の画像をレンダリングする。
【００１２】
本発明の一態様は、複数の動画像と、前記動画像に撮影されている被写体の三次元形状に関するパラメータと、の入力を受け付ける入力ステップと、各時刻におけるフレームについて、予め得られた機械学習の結果に基づいて、前記被写体の三次元関節情報を推定する推定ステップと、各時刻のフレームにおける前記三次元関節情報の推定結果と、前記被写体の三次元形状に関するパラメータと、に基づいて各時刻における前記被写体の三次元形状を示す情報を取得し、前記被写体の三次元形状を示す情報に基づいて、指定された時刻における指定された視野の前記被写体の画像を含む画像を生成する画像合成ステップと、を有する画像合成方法である。
【００１３】
本発明の一態様は、コンピュータを、上記の画像合成装置として機能させるためのコンピュータプログラムである。
【発明の効果】
【００１４】
本発明により、背景を均一色に限定する等の厳しい制約条件を課すことなく得られた映像を用いることによって、任意の視野及び時刻における画像をより高い品質で生成することが可能となる。
【図面の簡単な説明】
【００１５】
【図１】実施形態における画像合成装置１０の構成例を示す概略ブロック図である。
【図２】データ生成部１１１の構成例を示す図である。
【図３】学習部１１２の構成例を示す図である。
【図４】ネットワーク構築部２１１によって構築されるネットワークの具体例を示す図である。
【図５】入力部１２の構成例を示す図である。
【図６】推定部１３の構成例を示す図である。
【図７】フレーム分類部１４の構成例を示す図である。
【図８】フレーム補間部１５の構成例を示す図である。
【図９】画像合成部１６の構成例を示す図である。
【図１０】画像合成装置１０の前処理の流れの具体例を示す図である。
【図１１】画像合成に関する処理の具体例を示す図である。
【発明を実施するための形態】
【００１６】
図１は実施形態における画像合成装置１０の構成例を示す概略ブロック図である。画像合成装置１０は、バスで接続されたＣＰＵ（Central Processing Unit）やメモリや補助記憶装置などを備え、画像合成プログラムを実行する。画像合成プログラムの実行によって、画像合成装置１０は、学習装置１１、入力部１２、推定部１３、フレーム分類部１４、フレーム補間部１５及び画像合成部１６を備える装置として機能する。なお、画像合成装置１０の各機能の全て又は一部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されてもよい。画像合成プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。画像合成プログラムは、電気通信回線を介して送信されてもよい。
【００１７】
学習装置１１は、データ生成部１１１及び学習部１１２を備える。
まず、データ生成部１１１について説明する。データ生成部１１１は、学習部１１２によって使用される学習データを生成する。データ生成部１１１によって生成される学習データは、画像データと、関節情報と、を有する。画像データは、予め生成された三次元人物モデルが所定の姿勢で視野に含まれるコンピュータグラフィックスとして生成される。データ生成部１１１は、１又は複数の三次元人物モデルを用いて、三次元人物モデル毎に１又は複数のシーンを形成し、シーン毎に１又は複数の視野でコンピュータグラフィックスを生成することによって、複数の画像データを生成する。
【００１８】
三次元人物モデルは、例えば人物の各関節の位置と、人物の表面形状と、人物の表面の画像（テクスチャ画像）と、を有するデータである。三次元人物モデルを用いることによって、所望の視野で所望の姿勢の人物の画像を生成することが可能となる。このような三次元人物モデルは、予め人間の手によって作成されたデータであってもよいし、人工知能（Artificial Intelligence：ＡＩ）によって作成されたデータであってもよいし、モーションキャプチャ等の三次元形状を記録する技術を用いて作成されたデータであってもよい。三次元人物モデルが有する関節の数は、推定部１３において求められる推定処理の精度などに応じて適宜決定されてよい。例えば、関節の数は１５であってもよいし、より少ない数であってもよいし、より多い数であってもよい。例えば、指先の動きなどをより精度よく推定する必要がある場合には、該当部分の関節をより多い数とすることが望ましい。この場合、関節の数が増加する。
【００１９】
所定の姿勢とは、人物の関節の位置や角度によって定義される人の姿勢を示す。三次元人物モデルが有する関節の位置や角度を変更することによって、同一の三次元人物モデルから複数の姿勢を得ることができる。
【００２０】
シーンとは、生成されるコンピュータグラフィックスの空間（以下「対象空間」という。）のモデリングデータを示す。シーンは、三次元人物モデルと環境情報とによって定義される。環境情報とは、対象空間内に位置する物に関する情報である。例えば、環境情報は、対象空間内に位置する光源の位置、光源の種類、光源が光を発する方向、光源が発する光の強さ、対象空間内に位置する物体（壁、家具、植物、動物など）の材質や位置などを示す。三次元人物モデルの姿勢や位置、環境情報のいずれか一つでも異なれば、異なるシーンである。複数のシーンは、予め人間の手によって作成されてもよいし、人工知能によって作成されてもよい。
【００２１】
データ生成部１１１は、上述したように、一つのシーンに対して複数の視野でコンピュータグラフィックスをレンダリングしてもよい。視野は例えば視点の位置と視線の方向とによって定義される。視点の位置は、シーンの全周囲と定められてもよい。また、視野は、シーンの特性や用途等の情報に合わせて変更されてもよい。例えば、後述する入力部１２に入力される実処理の対象の画像において視野が予め定められている場合には、その視野と同じ視野でコンピュータグラフィックスが生成されてもよい。
【００２２】
関節情報は、三次元人物モデルの各関節の位置を示す情報（関節位置情報）と、各関節が成す角度を示す情報（関節角度情報）と、を有する。関節位置情報は、例えば三次元人物モデルの所定の位置を原点としたときの各関節の三次元座標値として表されてもよい。関節位置情報は、例えばシーンにおけるカメラ座標を基準として表されてもよい。関節角度情報は、例えばオイラー角を用いて表されてもよいし、クオータニオンを用いて表されてもよいし、他の表現で表されてもよい。関節情報は、三次元人物モデルのシーン毎に生成される。視野が変わったとしても、三次元人物モデル及びシーンが変わらなければ、関節情報は変わらない。
【００２３】
データ生成部１１１は、同一シーン（三次元人物モデル及びシーンが同じことを示す）において１又は複数の視野でコンピュータグラフィックスを生成する。同一シーンで生成された１又は複数の視野のコンピュータグラフィックスを、シーンＣＧセットという。データ生成部１１１は、シーンＣＧセットと、そのシーンにおける関節情報と、が対応付けられたデータを単位学習データとして出力する。データ生成部１１１は、このような単位学習データを複数生成する。データ生成部１１１は、複数の単位学習データを含む学習データを出力する。
【００２４】
図２は、データ生成部１１１の構成例を示す図である。図面のスペースの都合により、三次元人物モデルを図２では“３Ｄモデル”と表す。データ生成部１１１には、複数（例えばＮ種類）の三次元人物モデルが入力される。データ生成部１１１は、シーン生成部２０１及び画像生成部２０２を有する。シーン生成部２０１は、入力された三次元人物モデル毎に１又は複数（例えばＭ種類）のシーンを生成する。なお、三次元人物モデル毎に異なる数のシーンが生成されてもよい。画像生成部２０２は、シーン毎に、１又は複数（例えばＬ種類）の視野のコンピュータグラフィックスを生成する。画像生成部２０２は、生成されたコンピュータグラフィックスに基づいて、複数の単位学習データを生成する。
【００２５】
次に学習部１１２について説明する。学習部１１２は、データ生成部１１１によって生成された複数の単位学習データに基づいて学習処理を行う。学習部１１２は、機械学習を実行することによって、推定部１３によって実行される推定処理に用いられるパラメータを取得する。推定処理とは、処理の対象となる画像（以下「対象画像」という。）から、対象画像に撮影されている人物の関節情報を推定する処理である。学習部１１２に実装される機械学習は、どのような技術であってもよい。例えば、ディープニューラルネットワーク（ＤＮＮ）やサポートベクタマシン（ＳＶＭ）等の技術が適用されてもよい。
【００２６】
図３は、学習部１１２の構成例を示す図である。学習部１１２には、複数の単位学習データを含む学習データが入力される。学習部１１２は、ネットワーク構築部２１１及びパラメータ学習部２１２を有する。なお、図３に示される学習部１１２は、ＤＮＮが適用された場合の具体例にすぎない。学習部１１２に他の機械学習の技術が適用される場合には、適用される機械学習に応じて学習部１１２の構成が変更されてもよい。
【００２７】
ネットワーク構築部２１１は、学習に用いられるネットワークを構築する。例えば、学習部１１２にＤＮＮが適用されている場合、学習部１１２は、対象画像を入力とし、被写体の三次元の関節情報を出力とするディープニューラルネットワークを構築する。ネットワーク構築部２１１によって構築されるネットワークは、出力される三次元の関節情報の数に応じて構築される。例えば、ネットワークの出力層では、求められる関節の数に応じて次元数が決定される。
【００２８】
図４は、ネットワーク構築部２１１によって構築されるネットワークの具体例を示す図である。ネットワークは、単位学習データに含まれるＬ個の画像が入力であり、それらの画像に対応する関節情報が出力である。例えば、単位学習データに含まれる各画像（コンピュータグラフィックスとして生成された画像）は、縦のサイズが２５６、横のサイズが２５６、ＲＧＢの３チャネルで構成される３×２５６×２５６のカラー画像である。このカラー画像が視点数分入力される。各画像に対して、チャネル数は３６で、５×５のカーネルを用いて３６×５×５の畳み込みが行われる。さらに、２×２のプーリングが実行される。この時、畳み込み層で生成されるチャネル数は３６、ストライド幅は２である。次に、これらの出力がＣＯＮＣＡＴ処理によって縦に連結される。このようなＣＯＮＣＡＴ処理によって多視点の画像が畳み込まれたデータが、以降の処理で同一のフィルタで畳み込まれる。このような構造のネットワークが用いられることによって、関節情報を求めるための空間的な特徴量を抽出することが可能となる。以降のネットワークの構造及び処理は、一般的なネットワークに準ずるものとなる。チャネル数は７２であり、３×３のカーネルを用いて７２×３×３の畳み込みが行われる。２×２でストライド幅２のプーリングといった処理が２回繰り返される。それらの結果は、並べてＦＣ層へと流し込まれる。ＦＣ層は、例えば３つの層で構成されている。それぞれの活性化関数として、ＲｅＬＵが用いられる。ノード数は上流から順に５１２、１０２４、２０４８である。出力層では、１５個の関節位置それぞれについて、ｘｙｚの座標位置と、ｘｙｚオイラー角が出力される。そのため、出力層は９０次元となる。
【００２９】
上述した図４のネットワークは、あくまで一つの例にすぎない。各カーネルのサイズやストライド幅については、他の値が用いられてもよい。また、活性化関数の種類については、どのような関数が用いられてもよい。ただし、出力される関節情報は、関節数が変化した場合においても、関節ごとにｘｙｚの座標位置と、ｘｙｚオイラー角とが出力されることが望ましい。
【００３０】
このようなネットワークを構築することによって、画像から被写体の三次元の関節情報を推定するためのネットワークが構築される。また、複数の視野の画像を重ね合わせることによって、画像上での関節情報として扱うのではなく、空間上での関節情報として扱える。そのため、三次元の関節情報を推定することが可能となる。
【００３１】
パラメータ学習部２１２は、ネットワーク構築部２１１によって構築されたネットワークに関して、データ生成部１１１によって生成された学習データを用いた機械学習を行うことによって、ネットワークのパラメータを取得する。この時、反復回数や初期パラメータについては、最適と考えられる値が手動で与えられてもよい。図３及び図４の例では、このような学習処理によって得られたパラメータが学習部１１２から出力される。
【００３２】
以下、入力部１２及び推定部１３について説明する。
図５は、入力部１２の構成例を示す図である。入力部１２は、複数の動画像、所定の被写体の三次元形状を示す基準形状情報、所定の被写体の三次元関節情報を示す基準関節情報、所定の被写体の変形パラメータ、の入力を受け付ける。複数の動画像は、複数の位置に配置された各カメラによって同時刻に同一のシーンを撮影することによって得られた動画像である。例えば、サッカー場などのフィールドを取り囲むように配置された複数のカメラによって上記フィールドを同時刻（例えば同日の１３時から１４時までの１時間）に撮影することによって得られる動画像が入力される。動画像は、カラーの動画像であってもよいし、グレースケールの動画像であってもよいし、二値の動画像であってもよい。動画像のデータは、各カメラからリアルタイムに入力されてもよいし、ハードディスクドライブ（ＨＤＤ）等の記録媒体に記録された動画像が入力されてもよい。各動画像は完全に同一の時刻に撮影されてものである必要は無く前後に多少の時間のずれが生じていてもよい。
【００３３】
フレーム分離部１２１は、入力された動画像を、複数のフレームの画像に分離する。本実施形態では、入力された動画像の各フレームの画像が対象画像として処理される。すなわち、この各フレームの画像に対して、学習装置１１による学習結果を用いた推定処理が実行される。動画像の各フレームには、各フレームが撮影された時刻（以下「フレーム時刻」という。）が付与されていることが好ましい。フレーム時刻が付与されていない場合には、入力部１２は撮影開始時刻と動画像の再生時間とに基づいて各フレームに対してフレーム時刻を付与してもよい。以降の説明では、簡単のため動画像内に存在する人物は一人であり、その人物が基準形状情報等を用いてレンダリングが行われる対象の被写体（以下「注目被写体」という。）であるものとする。複数の注目被写体が存在する場合は、入力部１２は、動画像内で人物領域を切り出す処理を行うことによって、動画像を注目被写体ごとに分割してもよい。それぞれの注目被写体に関する動画像に対して、注目被写体が一人である場合と同様の処理を行うことによって、複数の注目被写体が存在する場合であっても同様の処理が可能となる。
【００３４】
フレーム分離部１２１は、異なる動画像から得られたフレーム同士で、フレーム時刻に基づいて同時刻に撮影されたフレームの画像であることを示す所定の条件を満たすフレーム同士を関連づけする。所定の条件は、ある基準となる動画像のフレームに対して、他の動画像から得られるフレームのうち最もフレーム時刻が近いフレームであることを示す条件であってもよい。同時刻に撮影されたと推定された各フレームが関連づけられた一組のフレームセットを、同時刻フレームセットとよぶ。以下の処理では、同時刻フレームセットに含まれる各フレームは、実際のフレーム時刻にかかわらず、同一の時刻に撮影されたものとして扱われてもよい。
【００３５】
基準形状情報は、入力される動画像に撮影された被写体のうち、所定の基準に基づいて予め定められた被写体（注目被写体）の三次元形状を示す。例えば、特に注目される可能性の高い被写体について、基準形状情報が入力される。例えばサッカーの試合の動画像が入力される場合には、サッカーの試合に出場する選手（スタメンの選手及びベンチ入りした選手）全員の基準形状情報が入力されてもよい。基準形状情報は、注目被写体に対して予め三次元形状復元の処理を行うことによって得られてもよい。例えば、注目被写体に対して距離センサ等の測定機器を用いた測定を行うことによって得られたデータに基づいて基準形状情報が生成されてもよい。例えば、複数の位置のカメラによって撮影された静止画像を用いることによって基準形状情報が生成されてもよい。基準形状情報は、例えば人物の各関節の位置と、人物の表面形状と、人物の表面の画像（テクスチャ画像）と、を有するデータ（三次元人物モデルデータ）であってもよい。三次元人物モデルデータを用いることによって、所望の視野で所望の姿勢の人物の画像を生成することが可能となる。なお、基準形状情報における注目被写体の姿勢は、ＴポーズやＡスタンスのような姿勢であってもよいし、他の姿勢であってもよい。また、入力部１２は、入力された基準形状情報において欠損やノイズが生じていた場合には、Poisson Surface Reconstruction（参考文献１）や一般的な空間フィルタリングなどの手法を用いて表面形状の高品質化を行ってもよい。このような処理が行われることによって、その後に復元された形状は連続した表面を保持する。その結果、視点位置の変化による欠損が生じにくくなる。
参考文献１：M. Kazhdan, M. Bolitho, H. Hoppe, “Poisson Surface Reconstruction,” Symposium on Geometry Processing 2006, 61-70.
【００３６】
基準関節情報は、入力された基準形状情報の姿勢における各関節の三次元関節情報である。三次元関節情報は、関節の位置と、関節の角度とを表す。関節の位置は、例えばｘｙｚ座標で表される。関節の角度は、例えばｘｙｚ軸を中心としたオイラー角によって表される。基準関節情報は、基準形状情報を生成する際にモーションキャプチャ等の測定技術を用いて測定されてもよいし、注目被写体が撮影された画像に対して推定処理を行うことによって取得されてもよい。
【００３７】
変形パラメータは、基準形状情報に対応する注目被写体の関節が変化した際に、動画像内の注目被写体の形状がどのように変形するかを定めるパラメータである。変形パラメータは、例えば関節の回転に応じた形状の変化を定義するパラメータである。変形パラメータは、予め測定などによって取得されてもよい。例えば、一般的なスキニング手法を用いることによって関節と形状の頂点との距離に反比例するように変形パラメータが定められてもよい。変形パラメータは、ソフトウェアを用いて手動で定められてもよい。
【００３８】
図６は、推定部１３の構成例を示す図である。推定部１３には対象画像及び学習結果が入力される。推定部１３に入力される対象画像は、入力部１２において入力された各動画像の各フレームの画像である。推定部１３は、学習装置１１による機械学習の結果を用いて、対象画像に写っている注目被写体の三次元の関節情報を推定する。推定部１３が使用する機械学習の結果とは、例えば学習部１１２によって得られたパラメータが与えられたネットワークである。推定部１３が使用する機械学習の結果とは、例えば機械学習によって得られた識別器である。
【００３９】
フレーム分類部１４は、推定部１３によって推定された各フレームの注目被写体の関節情報を用いて、各同時刻フレームセットをキーフレームと非キーフレームとに分類する。フレーム分類部１４は、分類された各フレームに対し、キーフレームか否かの分類結果を示すフラグ（キーフレームフラグ又は非キーフレームフラグ）を付与する。キーフレームは、後述するフレーム補間部１５において関節情報の補間処理の対象とならない同時刻フレームセットである。非キーフレームは、後述するフレーム補間部１５において関節情報の補間処理の対象となる同時刻フレームセットである。
【００４０】
図７は、フレーム分類部１４の構成例を示す図である。フレーム分類部１４は、例えば所定の周期で同時刻フレームセットにキーフレームフラグを付与し、他の同時刻フレームセットに非キーフレームフラグを付与してもよい。フレーム分類部１４は、画像内で所定の条件が満たされた同時刻フレームセットに対しキーフレームフラグを付与してもよい。所定の条件とは、例えば画像内で注目被写体の移動速度が極値を示したことであってもよい。移動速度は、注目被写体全体の移動速度であってもよいし、一部の関節や身体部分（例えば腕や顔）の移動速度であってもよい。この場合、フレーム分類部１４は、画像内で注目被写体の移動速度を判定し、その移動速度が極値を示した場合にキーフレームフラグを付与してもよい。また、移動速度にかえて、注目被写体の一部の関節の角度の変化率（変化の速度）が用いられてもよい。関節情報推定フラグ付与部１２２は、同時刻フレームセットにおいていずれか一つのフレームが所定の条件を満たした場合には、その同時刻フレームセットに対してキーフレームフラグを付与してもよいし、同時刻フレームセットにおいて所定数以上のフレームにおいて所定の条件が満たされた場合にその同時刻フレームセットに対してキーフレームフラグを付与してもよい。なお、キーフレームフラグが付与されなかった全ての同時刻フレームセットに対して非キーフレームフラグが付与される。
【００４１】
図８は、フレーム補間部１５の構成例を示す図である。フレーム補間部１５は、非キーフレームフラグが付与された同時刻フレームセット（以下「非キーフレーム」という。）の関節情報を、フレーム時刻が近い同時刻フレームセットであってキーフレームフラグが付与された同時刻フレームセット（以下「キーフレーム」という。）の関節情報を用いた補間処理によって取得する。フレーム補間部１５は、全ての非キーフレームについて、補間処理によって関節情報を取得する。フレーム補間部１５による補間処理は、キーフレーム間のフレーム数に応じた線形補間であってもよいし、補間係数に何らかの重み付けがなされてもよい。また、フレーム間の注目被写体の移動速度や各関節の移動速度を算出し、算出された移動速度に基づいて補間係数が得られてもよい。例えば、処理対象の非キーフレームよりも早いフレーム時刻の直近のキーフレームをＰ、処理対象の非キーフレームよりも遅いフレーム時刻の直近のキーフレームをＦ、処理の対象となっている関節の角度及び角速度をキーフレームＰではそれぞれｒＰ、ｖＰ、キーフレームＦではｒＦ、ｖＦとする。なお、簡単のため単一の関節角度について記載する。この場合、速度の変化を考慮すると、処理の対象となっている関節の角度ｒは、速度を用いた内分を行うことで以下のように表されてもよい。
【数１】
2018129009.tif 000003
【００４２】
次に画像合成部１６について説明する。画像合成部１６には、基準形状情報、基準関節情報、三次元関節情報、変形パラメータが入力される。入力される三次元関節情報は、推定部１３によって推定された関節情報又はフレーム補間部１５の補間処理によって得られた関節情報である。キーフレームについては、推定部１３によって推定された関節情報が入力される。非キーフレームについては、フレーム補間部１５の補間処理によって得られた関節情報が入力される。画像合成部１６は、三次元関節情報と基準関節情報とを比較する。画像合成部１６は、比較結果と変形パラメータとに基づいて、基準形状を変形させることによって変形形状を取得する。画像合成部１６は、全ての同時刻フレームセットにおいて得られた三次元関節情報に対して上記の処理を実行する。画像合成部１６は、取得された変形形状を用いることによって、自由視点映像を合成する。
【００４３】
図９は、画像合成部１６の構成例を示す図である。以下、図９を例に画像合成部１６について詳細に説明する。画像合成部１６は、関節変位計算部１６１、変形部１６２及び画像生成部１６３を有する。
【００４４】
関節変位計算部１６１は、三次元関節情報と基準関節情報との差分を算出する。例えば、関節変位計算部１６１は、三次元関節情報における三次元座標と、基準関節情報における三次元座標との差分を算出し、ｘ軸、ｙ軸及びｚ軸における位置のずれを取得する。また、関節変位計算部１６１は、推定された三次元関節情報における三次元の角度と、基準関節情報における三次元の角度との差分を算出し、ｘ軸、ｙ軸及びｚ軸を中心とした回転角のずれを取得する。
【００４５】
変形部１６２は、三次元関節情報と基準関節情報との差分と、変形パラメータと、に基づいて、基準形状を変形する。このような処理によって、変形部１６２は、処理の対象となっている同時刻フレームセットのフレーム時刻において注目被写体がとっていた姿勢と同じ姿勢となるように、基準形状を変形させる。変形部１６２は、このように変形された後の形状の情報を、変形形状情報として出力する。このような処理が全ての同時刻フレームセットにおいて実行されることによって、各同時刻フレームセットに対応する変形形状情報が取得される。変形部１６２は、各フレーム時刻に対応付けて変形形状情報を記憶装置に記録してもよい。
【００４６】
画像生成部１６３は指定された視野及び時刻における自由視点映像を生成する。視野及び時刻は、例えば自由視点映像を再生する装置によって指定されてもよいし、自由視点映像を視聴する者によって指定されてもよい。画像生成部１６３は、指定された時刻に相当するフレーム時刻の変形形状情報を取得する。取得される変形形状情報は、その時刻における注目被写体の位置や姿勢を示している。画像生成部１６３は、取得された変形形状情報を用いて、指定された視野における画像をレンダリングする。このとき、注目被写体の画像は変形形状情報を用いたレンダリングによって得られる。画像生成部１６３は、注目被写体の背景の画像については、予め得られている背景を示すモデルデータに基づいてレンダリングしてもよいし、対応する同時刻フレームセットにおいて近い視野の１又は複数のフレーム画像を用いてアフィン変換等の画像処理を行うことによってレンダリングしてもよい。画像生成部１６３は、背景の画像と注目被写体の画像とを合成することによって、指定された視野及び時刻における自由視点映像を生成する。画像生成部１６３は、動画像が要求されている場合には、以上の処理を時間軸にそって繰り返し実行することによって自由視点における映像を生成してもよい。
【００４７】
図１０は、画像合成装置１０の前処理の流れの具体例を示す図である。画像合成装置１０の前処理は、学習装置１１によって実行される。まず、データ生成部１１１は、関節情報を含む三次元人物モデルを取得する（ステップＳ１０１）。次に、データ生成部１１１は、三次元人物モデルの関節情報を変更することによって、複数の姿勢のシーンを生成する（ステップＳ１０２）。次に、データ生成部１１１は、シーン毎に複数の視野でコンピュータグラフィックス（画像）をレンダリングする（ステップＳ１０３）。データ生成部１１１は、シーン毎に生成された複数の画像と関節情報とを対応付けて単位学習データを生成する（ステップＳ１０４）。次に、学習部１１２が、データ生成部１１１によって生成された複数の単位学習データ（画像及び関節情報）に基づいて学習処理を実行する（ステップＳ１０５）。学習部１１２は、学習処理の結果に基づいて得られたパラメータをネットワークに設定する（ステップＳ１０６）。
【００４８】
図１１は、画像合成に関する処理の具体例を示す図である。まず、入力部１２が、注目被写体が映る複数の動画像、注目被写体の三次元形状を示す基準形状情報、注目被写体の三次元関節情報を示す基準関節情報、注目被写体の変形パラメータ、の入力を受け付ける（ステップＳ１０７）。次に、入力部１２は、入力された動画像をフレームに分離し、必要に応じてサイズ変更等の加工を行う（ステップＳ１０８）。次に、推定部１３は各同時刻フレームセットについて被写体の関節情報を推定する（ステップＳ１０９）。次にフレーム分類部１４は、各同時刻フレームセットについてキーフレーム又は非キーフレームのいずれかに分類し、分類結果に応じたフラグを付与する（ステップＳ１１０）。次にフレーム補間部１５が、非キーフレームフラグが付与された同時刻フレームセットにおいて、関節情報を補間処理によって取得する（ステップＳ１１１）。次に、画像合成部１６が、各同時刻フレームセットにおいて変形形状を生成する（ステップＳ１１２）。
【００４９】
その後、自由視点映像を生成するタイミングにおいて、画像合成部１６は、予め取得されている変形形状を用いて、指定された時刻及び視野における注目被写体の画像をレンダリングする（ステップＳ１１３）。そして、画像合成部１６は、得られた画像に背景の画像を合成することによって、合成画像を生成し出力する（ステップＳ１１４）。
【００５０】
このように構成された学習装置１１では、データ生成部１１１によってレンダリングされたコンピュータグラフィックスを用いて学習データが生成される。そのため、三次元の関節情報と画像とを含む複数の学習データをより容易に生成することができる。特にディープラーニング等の機械学習では、一般的に多量の学習データが必要となるため、上述した学習装置１１は有効である。
【００５１】
また、一つの三次元人物モデルの関節情報を変更することによって、一つの三次元人物モデルから多様な関節情報に基づく画像と関節情報とを生成することができる。例えば、従来のモーションキャプチャでは、たとえ同一の人物（三次元人物モデル）であっても、異なる姿勢毎に関節情報の測定を行う必要があり手間を要していた。一方、学習装置１１では、たとえモーションキャプチャを用いたとしても、一度三次元人物モデルを取得してしまえば、その後は関節情報を変更することによって容易に複数の姿勢の学習データを取得することが可能となる。
【００５２】
また、三次元人物モデルには関節情報が定義されているため、学習データとしてより正確な関節情報を取得する事が可能となる。
【００５３】
このように構成された画像合成装置１０では、自由視点映像を生成するために以下のような処理が行われる。実際に撮影された複数の動画像に基づいて、各フレーム時刻における注目被写体の各関節の三次元関節情報が推定される。三次元関節情報の推定結果に基づいて、予め得られていた注目被写体の基準形状が変形され、各フレーム時刻における注目被写体の変形形状情報が得られる。そして、実際に自由視点映像を生成する際には、指定された時刻における注目被写体の変形形状情報を用いて指定された視野におけるレンダリングを行うことによって、注目被写体の映像が生成される。そのため、例えば実際に撮影された複数の動画像では陰となって得られていなかった部分の映像（例えば、注目被写体の脇の部分や顎下の部分など）についても、オクルージョンの問題が生じることを抑止することが可能となる。
【００５４】
また、各フレーム時刻における変形形状情報を取得する際に、全てのフレーム時刻において注目被写体の三次元関節情報を独立に動画像から推定するのではなく、一部のフレーム時刻（キーフレームフラグが付与されたフレーム時刻）の同時刻フレームセットのみにおいて、推定部１３による推定結果が採用される。そして、残りのフレーム時刻（非キーフレームフラグが付与されたフレーム時刻）の同時刻フレームセットにおいては、動画像からではなく、キーフレームフラグが付与された同時刻フレームセットにおける推定結果に基づいた補間処理によって三次元関節情報が得られる。そのため、少なくともキーフレームフラグが付与された同時刻フレームセットから次のキーフレームフラグが付与された同時刻フレームセットまでの間で時間方向のちらつきが生じにくい。このような処理によって、時間方向のちらつきを抑止することが可能となる。
【００５５】
（変形例）
データ生成部１１１によって生成されるコンピュータグラフィックスは、カラー画像であってもよいし、グレースケール画像であってもよいし、２値画像であってもよい。
【００５６】
上述した画像合成装置１０による処理の対象は人物であったが、必ずしも処理の対象は人物に限定される必要は無い。処理の対象は、関節を有する生物又は物体であればどのようなものであってもよい。例えば、動物が処理の対象となってもよい。この場合、三次元人物モデルに代えて三次元動物モデルが用いられて関節情報の学習結果が得られる。画像合成装置１０の入力部１２には処理の対象となっている動物が撮影された画像が入力され、その動物の関節情報が推定される。例えば、ロボットが処理の対象となっても良い。この場合、三次元人物モデルに代えて三次元ロボットモデルが用いられて関節情報の学習結果が得られる。画像合成装置１０の入力部１２には処理の対象となっているロボットが撮影された画像が入力され、そのロボットの関節情報が推定される。
【００５７】
データ生成部１１１は、生成されたコンピュータグラフィックスに対して所定の処理（以下「画像前処理」という。）を実行してもよい。画像前処理とは、学習部１１２における学習処理や、推定部１３による推定処理の精度をより高める事を目的として実行される処理である。画像前処理は、例えば、サイズの変更であってもよいし、処理の対象（例えば人物）の領域の切り出しであってもよい。ただし、生成されたコンピュータグラフィックスに対して実行される画像前処理は共通しており、変更後のサイズは全て同一になるように画像前処理が実行される。また、データ生成部１１１において実行される画像前処理は、入力部１２において入力される処理対象の画像に対しても同様に実行される。この場合、入力部１２において画像前処理が実行された後の画像のサイズは、データ生成部１１１によって画像前処理が実行された後のコンピュータグラフィックスのサイズと同じであることが望ましい。言い換えれば、学習部１１２において用いられるコンピュータグラフィックスのサイズと、推定部１３において用いられる画像のサイズは同一であることが望ましい。
【００５８】
学習部１１２によって使用されるネットワークは、ネットワーク構築部２１１によって構築されるのではなく、予め構築されたものが不図示の記憶部に記憶されていてもよい。この場合、パラメータ学習部２１２は、記憶部に記憶されているネットワークを読み出すことによって機械学習を実行する。
【００５９】
学習装置１１は、画像合成装置１０とは別の装置として構成されてもよい。この場合、画像合成システムが構築されてもよい。画像合成システムは、画像合成装置１０と学習装置１１とを備える。この場合、画像合成装置１０は、入力部１２及び推定部１３を備える。画像合成装置１０は、ネットワーク等を介して学習装置１１から学習結果を示すデータを取得し、推定処理を実行する。
【００６０】
データ生成部１１１は、学習装置１１とは異なる学習データ生成装置に備えられてもよい。この場合、学習データ生成装置によって生成された学習データは、ネットワークや記憶媒体などを介して学習装置１１に与えられてもよい。
【００６１】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００６２】
１０…画像合成装置，  １１…学習装置，  １１１…データ生成部，  １１２…学習部，  １２…入力部，  １３…推定部，  １４…フレーム分類部，  １５…フレーム補間部，  １６…画像合成部，  ２０１…シーン生成部，  ２０２…画像生成部，  ２１１…ネットワーク構築部，  ２１２…パラメータ学習部，  １２１…フレーム分離部，  １６１…関節変位計算部，  １６２…変形部，  １６３…画像生成部
【図１】
2018129009.tif 000004
【図２】
2018129009.tif 000005
【図３】
2018129009.tif 000006
【図４】
2018129009.tif 000007
【図５】
2018129009.tif 000008
【図６】
2018129009.tif 000009
【図７】
2018129009.tif 000010
【図８】
2018129009.tif 000011
【図９】
2018129009.tif 000012
【図１０】
2018129009.tif 000013
【図１１】
2018129009.tif 000014