(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-24
(45)【発行日】2024-06-03
(54)【発明の名称】生成装置、生成方法、及び、プログラム
(51)【国際特許分類】
G06T 19/00 20110101AFI20240527BHJP
H04N 23/60 20230101ALI20240527BHJP
【FI】
G06T19/00 A
H04N23/60 500
(21)【出願番号】P 2021146788
(22)【出願日】2021-09-09
【審査請求日】2022-09-02
(31)【優先権主張番号】P 2020207877
(32)【優先日】2020-12-15
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】水野 祥吾
【審査官】中田 剛史
(56)【参考文献】
【文献】特開2020-086983(JP,A)
【文献】米国特許第10796489(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
H04N 23/60
(57)【特許請求の範囲】
【請求項1】
複数の撮影装置が撮影領域における被写体を撮影することにより得られる複数の撮影画像に基づく前記被写体の形状を表す形状データを取得する取得手段と、
前記撮影領域における複数の被写体の位置に対応する複数の被写体位置を特定する第1の特定手段と、
前記第1の特定手段により特定される複数の被写体位置に基づいて、基準位置を特定する第2の特定手段と、
前記取得手段により取得される形状データに基づいて、前記第1の特定手段により特定される被写体位置と前記第2の特定手段により特定される基準位置とのずれに応じた仮想視点画像を生成する生成手段と
を有することを特徴とする生成装置。
【請求項2】
前記生成手段は、前記ずれが所定の閾値以上であることに応じて、前記基準位置に基づいて前記形状データを配置することにより仮想視点画像を生成することを特徴とする請求項1に記載の生成装置。
【請求項3】
前記生成手段は、
前記ずれが所定の閾値よりも小さくなるように、前記第1の特定手段により特定される被写体位置を変更し、
変更した被写体位置に基づいて前記形状データを配置することにより仮想視点画像を生成する
ことを特徴とする請求項1に記載の生成装置。
【請求項4】
前記生成手段は、
前記ずれに基づいて、前記第1の特定手段により特定される被写体位置と前記基準位置とが一致するように前記被写体位置を変更し、
変更した被写体位置に基づいて前記形状データを配置することにより仮想視点画像を生成する
ことを特徴とする請求項1に記載の生成装置。
【請求項5】
前記基準位置は、所定の間隔に配置される格子点に基づいて特定されることを特徴とする請求項1乃至4のいずれか1項に記載の生成装置。
【請求項6】
前記基準位置は、前記撮影領域外における位置であることを特徴とする請求項1乃至5のいずれか1項に記載の生成装置。
【請求項7】
前記第2の特定手段は、前記複数の被写体位置が所定の間隔となるように、前記基準位置を特定することを特徴とする請求項1から6のいずれか1項に記載の生成装置。
【請求項8】
前記第2の特定手段は、前記複数の被写体位置が所定の直線上の位置となるように、前記基準位置を特定することを特徴とする請求項1から7のいずれか1項に記載の生成装置。
【請求項9】
前記第1の特定手段は、前記取得手段により取得される形状データにより表される被写体の形状に基づいて、前記被写体位置を特定することを特徴とする請求項1乃至8のいずれか1項に記載の生成装置。
【請求項10】
前記第1の特定手段は、前記被写体位置として、前記形状データにより表される被写体の形状における重心の位置を特定することを特徴とする請求項9に記載の生成装置。
【請求項11】
前記第1の特定手段は、前記被写体位置として、前記形状データにより表される被写体の形状における所定の部位の位置を特定することを特徴とする請求項9に記載の生成装置。
【請求項12】
前記生成手段は、前記ずれを識別可能な情報を含む仮想視点画像を生成することを特徴とする請求項1乃至11のいずれか1項に記載の生成装置。
【請求項13】
前記生成手段は、前記ずれを識別可能な情報として、前記第1の特定手段により特定される被写体位置と、前記第2の特定手段により特定される基準位置とを表す情報を含む仮想視点画像を生成することを特徴とする請求項12に記載の生成装置。
【請求項14】
前記生成手段は、前記ずれを識別可能な情報として、前記基準位置とずれている位置が前記第1の特定手段により前記被写体位置として特定された被写体を識別可能な情報を含む仮想視点画像を生成することを特徴とする請求項12又は13に記載の生成装置。
【請求項15】
複数の撮影装置が撮影領域における被写体を撮影することにより得られる複数の撮影画像に基づく前記被写体の形状を表す形状データを取得する取得工程と、
前記撮影領域における複数の被写体の位置に対応する複数の被写体位置を特定する第1の特定工程と、
前記第1の特定
工程により特定される複数の被写体位置に基づいて、基準位置を特定する第2の特定工程と、
前記取得工程において取得される形状データに基づいて、前記第1の特定工程において特定される位置と前記第2の特定工程において特定される基準位置とのずれに応じた仮想視点画像を生成する生成工程と
を有することを特徴とする生成方法。
【請求項16】
コンピュータを、請求項1乃至14のいずれか1項に記載の生成装置として機能させるためのプログラム。
【請求項17】
複数の撮影装置が撮影領域における被写体を撮影することにより得られる複数の撮影画像に基づく前記被写体の形状を表す形状データを取得する取得手段と、
前記撮影領域における複数の被写体の位置に対応する複数の被写体位置を特定する第1の特定手段と、
前記第1の特定手段により特定される複数の被写体位置に基づいて、基準位置を特定する第2の特定手段と、
前記取得手段により取得される形状データに基づいて、前記第1の特定手段により特定される被写体位置と前記第2の特定手段により特定される基準位置とのずれに応じた仮想視点画像を生成する生成手段と
を有することを特徴とする生成システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、仮想視点画像を生成する技術に関するものである。
【背景技術】
【0002】
近年、撮影領域の周囲に複数の撮影装置を配置して撮影を行い、それぞれの撮影装置から取得された複数の撮影画像を用いて、指定された視点(仮想視点)から見た画像(仮想視点画像)を生成する技術が注目されている。この技術によれば、サッカーやラグビー等のスポーツ競技、コンサート及びダンス等を任意の視点から見るような画像を生成することができるため、ユーザに高臨場感を与えることができる。
【0003】
特許文献1では、複数のカメラが被写体を取り囲むように配置して被写体を撮影した画像を用いて、任意の仮想カメラ画像を生成、表示する技術が開示されている。特許文献1によれば、仮想カメラ画像生成の技術を用いた視聴コンテンツにおいて、撮影された演技者(被写体)のダンス、演技などをいろいろな角度から視聴することが可能となる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、例えばダンスや演技などにおいては、撮影時に、被写体である演者の位置が所望の位置と異なる位置となる場合がありうる。この結果、撮影画像に基づいて生成される仮想視点画像においても、演者の位置が所望の位置と異なる位置となってしまう。また、撮影時に被写体の位置がずれている場合に、指定される仮想視点の位置によっては、ユーザは仮想視点画像上で被写体の位置が所望の位置と異なる位置となっていることに気づかないこともありうる。
【0006】
本開示は上記の課題に鑑みてなされたものである。その目的は、被写体の位置が所望する位置と異なることに対応可能な仮想視点画像を生成することである。
【課題を解決するための手段】
【0007】
本開示に係る生成装置は、複数の撮影装置が撮影領域における被写体を撮影することにより得られる複数の撮影画像に基づく前記被写体の形状を表す形状データを取得する取得手段と、前記撮影領域における複数の被写体の位置に対応する複数の被写体位置を特定する第1の特定手段と、前記第1の特定手段により特定される複数の被写体位置に基づいて、基準位置を特定する第2の特定手段と、前記取得手段により取得される形状データに基づいて、前記第1の特定手段により特定される被写体位置と前記第2の特定手段により特定される基準位置とのずれに応じた仮想視点画像を生成する生成手段とを有することを特徴とする。
【発明の効果】
【0008】
本開示によれば、被写体の位置が所望する位置と異なることに対応可能な仮想視点画像を生成することができる。
【図面の簡単な説明】
【0009】
【
図1】画像処理システムの構成を説明するための図である。
【
図2】複数の撮影装置の設置の一例を示す図である。
【
図3】画像生成装置のハードウェア構成を説明するための図である。
【
図4】第1の実施形態における画像生成装置の機能構成を説明するための図である。
【
図5】第1の実施形態における画像生成装置が行う処理を説明するためのフローチャートである。
【
図6】第1の実施形態における被写体の形状データの配置の一例を示す図である。
【
図7】第1の実施形態において生成される仮想視点画像の一例を示す図である。
【
図8】第2の実施形態における画像生成装置の機能構成を説明するための図である。
【
図9】第2の実施形態における画像生成装置が行う処理を説明するためのフローチャートである。
【
図10】第2の実施形態における被写体の形状データの配置の一例を示す図である。
【
図11】第3の実施形態における画像生成装置の機能構成を説明するための図である。
【
図12】第3の実施形態における画像生成装置が行う処理を説明するためのフローチャートである。
【
図13】第3の実施形態における被写体の形状データの配置の一例を示す図である。
【
図14】第4の実施形態における画像生成装置の機能構成を説明するための図である。
【
図15】第4の実施形態における仮想カメラの設置の一例を示す図である。
【
図16】撮影される被写体と、生成される仮想視点画像の一例を示す図である。
【
図17】第1の実施形態における被写体の形状データの撮影領域外への配置の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本開示の実施形態について、図面を参照しながら説明する。なお、以下の実施形態に記載される構成要素は、実施の形態の一例を示すものであり、本開示をそれらのみに限定するものではない。
【0011】
(第1の実施形態)
図1は、本実施形態に係る画像処理システム100を示す図である。画像処理システム100は、複数の撮影装置110、画像生成装置120、及び端末装置130を有する。各撮影装置110と画像生成装置120は、LAN(Local Area Network)ケーブル等の通信ケーブルを介して接続している。なお、本実施形態においては、通信ケーブルはLANケーブルであるものとするが、通信ケーブルは実施形態に限定されるものではない。
【0012】
撮影装置110は、例えば画像(静止画及び動画)を撮影可能なデジタルカメラである。各撮影装置110は、撮影スタジオなどで撮影領域を囲むように設置され、画像(映像)を撮影する。本実施形態では、ダンスシーンなど複数の演者を被写体として撮影する場合を例にとって説明する。撮影された画像は、撮影装置110から画像生成装置120に送信される。
図2は、撮影装置110の設置例を示す図である。本実施形態においては、複数の撮影装置110は、それぞれ撮影スタジオ内のすべて又は一部を撮影するように設置されているものとする。つまり、本実施形態の画像処理システム100には、被写体を複数の方向から撮影するための複数の撮影装置110が含まれる。
【0013】
画像生成装置120は、撮影装置110により得られた撮影画像を蓄積しておき、端末装置130におけるユーザ操作により、仮想視点情報と再生時刻情報とが入力されると、撮影画像と仮想視点とに基づいて、仮想視点画像を生成する。ここで、仮想視点情報は、撮影画像から構築される仮想空間における仮想的な視点(仮想視点)の位置と、仮想視点からの視線方向とを示す情報を含む。なお、仮想視点情報に含まれる情報はこれに限定されない。例えば、仮想視点の視野の広さ(画角)に関する情報が含まれてもよい。また、仮想視点の位置、仮想視点からの視線方向、及び仮想視点の画角のうち、少なくともいずれかを表す情報が含まれる構成でもよい。再生時刻情報は、撮影画像の録画開始時刻からの時刻情報である。ユーザは、例えば後述する端末装置130を操作して再生時刻を指定することにより、録画された撮影画像において指定された再生時刻に対応するシーンの仮想視点画像を生成することができる。
【0014】
画像生成装置120は、例えば、サーバ装置であり、データベース機能や、画像処理機能を備えている。データベースには、本番の撮影の開始前など、予め被写体が存在しない状態の場面を撮影した画像を背景画像として、撮影装置110を介して保持しておく。また、被写体の存在するシーンでは、画像生成装置120は、撮影画像のうち演者等の人物、及び演者が使用する道具など特定のオブジェクトに対応する領域(以下、前景画像ともいう)を画像処理により分離して、前景画像として保持しておく。なお、特定オブジェクトは、小道具などの画像パターンが予め定められている物体であってもよい。
【0015】
仮想視点情報に対応した仮想視点画像は、データベースで管理された背景画像と特定オブジェクト画像とから生成されるものとする。仮想視点画像の生成方式として、例えばモデルベースレンダリング(Model-Based Rendering:MBR)が用いられる。MBRとは、被写体を複数の方向から撮影した複数の撮影画像に基づいて生成される三次元形状を用いて仮想視点画像を生成する方式である。具体的には、視体積交差法、Multi-View-Stereo(MVS)などの三次元形状復元手法により得られた対象シーンの三次元形状(モデル)を利用し、仮想視点からのシーンの見えを画像として生成する技術である。なお、仮想視点画像の生成方法は、MBR以外のレンダリング手法を用いてもよい。生成された仮想視点画像は、LANケーブルなどを介して、端末装置130に伝送される。
【0016】
端末装置130は、例えば、PC(Personal Computer)やタブレットである。コントローラ131は、例えば、マウス、キーボード、6軸コントローラ、タッチパネルであり、これらを用いてユーザは操作し、画面上に静止画像や動画像を表示する。端末装置130は、例えば、画像生成装置120から受信した仮想視点画像を表示部132に表示する。端末装置130は、さらに、接続されたコントローラ131に対するユーザ操作に応じて、再生時刻と仮想視点の移動の指示(移動量と移動方向に関する指示)を受け付け、受け付けた指示に応じた指示情報を示す伝送信号を画像生成装置120に送信する。
【0017】
図3は、画像生成装置120のハードウェア構成を示す図である。
【0018】
画像生成装置120は、CPU301と、ROM302と、RAM303と、HDD304と、表示部305と、入力部306と、通信部307とを有する。CPU301は、ROM302に記憶された制御プログラムを読み出して各種処理を実行する。RAM303は、CPU301の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD304は、各種データや各種プログラム等を記憶する。表示部305は、各種情報を表示する。入力部306は、キーボードやマウスを有し、ユーザによる各種操作を受け付ける。通信部307は、ネットワークを介して撮影装置110等の外部装置との通信処理を行う。なお、ネットワークとしては、イーサネット(登録商標)が挙げられる。また、他の例としては、通信部307は、無線により外部装置との通信を行ってもよい。
【0019】
なお、
図3に示す例では、HDD304、表示部305及び入力部306が画像生成装置120の内部に含まれるものとしたが、これに限定されない。例えば、HDD304、表示部305及び入力部306の少なくともいずれかが、他の装置として画像生成装置120の外部に接続される構成でもよい。また、後述する画像生成装置120の機能や処理は、CPU301がROM302又はHDD304に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。また、端末装置130のハードウェア構成についても、画像生成装置120のハードウェア構成と同様である。
【0020】
図4は、画像生成装置120の機能構成を示す図である。ここで、本実施形態における画像生成装置120が行う処理について説明する。本実施形態においては、ダンスシーンを撮影し、撮影画像に基づいて仮想視点画像を生成することを想定する。しかしながら、ダンス中における被写体の立ち位置が、所望の立ち位置とは異なる位置となることがありうる。
図16(a)は、線で囲まれた撮影領域が複数のカメラで撮影されることにより生成された仮想空間上の被写体と、仮想視点に対応する仮想的なカメラ(以下、仮想カメラという)との概念図である。仮想カメラ2101のように被写体を正面から撮影し視聴する場合もあれば、仮想カメラ2102のように被写体を横方向から撮影し視聴するなど、自由な角度から被写体を撮影するような仮想カメラを指定可能である。
図16(c)は仮想カメラ2102に対応する仮想視点画像の画面表示である。ここで、演者は、仮想カメラ2102から撮影した場合に、一直線上になるような立ち位置で演技したいと考えているとする。しかしながら、実際に撮影した場合に、立ち位置がずれでしまい、
図16(c)のように被写体の立ち位置が直線上に揃っていない仮想視点画像となってしまうことがありうる。
【0021】
また、演者が仮想視点画像を見て立ち位置を確認するという用途も考えられる。このとき、指定される仮想カメラによっては、立ち位置のずれを容易に認識できない場合がある。
図16(b)は仮想カメラ2101に対応する仮想視点画像の画面表示である。仮想カメラ2101に対応する仮想視点画像においては、被写体の立ち位置は揃っているように見える。しかし実際には、仮想カメラ2102から撮影された仮想視点画像上では、被写体の立ち位置がずれてしまっている。本実施形態における画像生成装置120は、上記の問題を解決することを目的とする。
【0022】
画像生成装置120は、撮影画像入力401、前景背景分離部402、撮影画像データ保存部403、カメラパラメータ保持部404、被写体形状生成部405、被写体形状重心算出部406、被写体形状移動部407、及び被写体位置決定部408を有する。また、画像生成装置120は、ユーザ入力部409、仮想視点情報設定部410、着色情報算出部411、仮想視点画像生成部412、及び画像出力部413を有する。以下、各処理部について説明する。
【0023】
撮影画像入力部401は、撮影装置110からLANケーブルを介して入力された伝送信号を撮影画像データに変換して、前景背景分離部402へ出力する。前景背景分離部402は、撮影画像入力部401から入力された撮影画像のうち、被写体の演技開始前など予め被写体が存在しない状態の場面を撮影した画像を背景画像データとして、撮影画像データ保存部403へ出力する。また、被写体の演技中に撮影された画像から被写体を抽出し、前景画像データとして撮影画像データ保存部403へ出力する。
【0024】
撮影画像データ保存部403は、データベースであり、前景背景分離部402から入力された撮影画像データのうち、被写体が存在しない状態で予め撮影された画像を背景画像データとしてHDD304に保存する。また撮影画像データ保存部403は、背景画像データと被写体の存在する撮影画像データとの差分データを前景画像データとしてHDD304に保存する。また、撮影画像データ保存部403は、被写体形状生成部405に前景画像データを出力する。また、着色情報算出部411により指定された背景画像データと前景画像データを着色情報算出部411へ出力する。
【0025】
カメラパラメータ保持部404は、複数の撮影装置110の撮影位置情報、撮影装置110のレンズの焦点距離、及び撮影装置110のシャッタースピード等のカメラ設定情報を、カメラパラメータ情報として保持する。複数の撮影装置110はあらかじめ決められた位置に設置され、カメラパラメータ情報があらかじめ取得されるものとする。また、カメラパラメータ保持部404は、カメラパラメータ情報を、被写体形状生成部405及び着色情報算出部411に出力する。
【0026】
被写体形状生成部405は、前景画像データと、カメラパラメータ情報とを用いて、被写体の形状を表す形状データを生成する。被写体形状生成部405は、例えば、視体積交差法などの三次元形状復元手法を用いて被写体の形状データを生成するとする。また、形状データを被写体形状重心算出部406と着色情報算出部411へ出力する。
【0027】
被写体形状重心算出部406は、撮影領域における被写体の位置を特定する。具体的には、被写体形状重心算出部406は、被写体形状生成部405から入力された形状データを使用して、被写体の形状の重心を被写体位置として特定する。このとき、被写体形状重心算出部406は、所定視点位置から被写体を見た場合の重心位置を算出する。被写体形状重心算出部406は、例えば、被写体を真上から見下ろす視点での重心位置を被写体の位置として算出する。被写体形状重心算出部406は、被写体重心位置からなる被写体重心情報を、被写体形状移動部407へ出力する。
【0028】
被写体形状移動部407は、被写体形状重心算出部406から入力された被写体重心情報と、後述する被写体位置設定部408から入力された被写体移動先位置情報とに基づき、被写体の形状データを配置する位置を決定する。ここで、被写体移動先位置情報は、被写体が配置されるべき基準の位置(以下、基準位置ともいう)を表す情報である。被写体形状移動部407は、基準位置と被写体の位置とのずれに応じて、形状データの配置を決定する。
【0029】
被写体形状移動部407は、被写体移動先位置情報が床面に設定された所定の間隔(例えば3メートル間隔)の格子点情報である場合、格子点の位置を基準位置として、格子点の位置と、被写体の重心の位置とが一致するように、被写体の形状データを配置する。なお、被写体移動先位置情報に基づいて、被写体の形状データが再生成されてもよい。また、被写体形状移動部407は、基準位置と被写体の位置とのずれが所定の閾値以上である場合に、ずれが所定の閾値よりも小さくなるように形状データの位置を変更し、変更した位置に形状データが配置されるようにしてもよい。なお、被写体形状移動部407は、被写体形状移動部407は、移動した形状データを仮想視点画像生成部412へ出力する。
【0030】
被写体位置設定部408は、ユーザにより予め設定された三次元空間上の被写体移動先位置情報を被写体形状移動部407へ出力する。例えば、複数の被写体を所定の直線上の所定区間に配置されるように床面に対応した3メートル間隔の格子点情報を出力するものとする。なお、被写体移動先位置情報は格子点に限定されず、例えば直線や曲線であってもよい。
【0031】
ユーザ入力部409は、端末装置130からLANケーブルを介して入力された伝送信号をユーザ入力データに変換する。ユーザ入力データが再生時刻情報と仮想視点情報である場合、再生時刻情報と仮想視点情報を仮想視点情報設定部410へ出力する。
【0032】
仮想視点情報設定部410は、ユーザ入力部409から入力された再生時刻情報と仮想視点情報に基づき、仮想空間内の現在位置と方向と再生時刻とを更新する。
【0033】
その後、再生時刻情報と仮想視点情報とを被写体形状生成部405と着色情報算出部411と仮想視点画像生成部412へ出力する。なお、仮想空間の原点は競技場の中心などを予め設定するものとする。
【0034】
着色情報算出部411は、仮想視点情報設定部410から入力された再生時刻情報と仮想視点情報とに基づいた前景画像データと背景画像データとを撮影画像データ保存部403から入力する。またカメラパラメータをカメラパラメータ保持部404から入力し、また形状データを被写体形状生成部405から入力する。次に仮想視点位置から見た被写体形状に対して、該当時刻に実カメラで撮影された画像データの色情報でレンダリング(着色処理)して被写体形状の着色情報を保持する。例えば、仮想視点から形状データに基づく被写体が見えている状況で、仮想視点の位置から所定の範囲内に実カメラ位置情報がある場合、その実カメラの前景画像データを形状の色として使用するものとする。また着色情報算出部411は、仮想視点画像生成部412へ着色情報を出力する。
【0035】
仮想視点画像生成部412は、仮想視点情報設定部408から入力された再生時刻情報と仮想視点情報とに基づいた前景画像データと背景画像データとを撮影画像データ保存部403から入力する。またカメラパラメータをカメラパラメータ保持部404から入力し、また移動形状データを被写体形状移動部407から入力する。その後、背景画像データを仮想視点位置から背景として見えるように投影変換や画像処理を施して仮想視点画像の背景とする。さらに次に仮想視点位置から見た移動被写体形状に対して、該当時刻に撮影装置で撮影された画像データによる着色情報を着色情報算出部411より入力して、色情報でレンダリング(着色処理)して仮想視点画像を生成する。最後に仮想視点画像生成部412にて生成された仮想視点画像を画像出力部413へ出力する。画像出力部413は、仮想視点画像生成部412から入力した画像データを、端末装置130へ伝送可能な伝送信号に変換して、端末装置130へ出力する。
【0036】
次に、画像生成装置120の動作について説明する。
図5は、実施例1に係る画像生成装置120の動作を示すフローチャートである。CPU301がROM302またはHDD304に記憶されたプログラムを読み出して実行することにより、以下の処理が行われる。端末装置130から仮想視点情報及び再生時刻を指定するための入力が行われると、処理が開始される。
【0037】
仮想視点情報設定部410は、ユーザ入力部409を介して、仮想視点情報と再生時刻情報が入力されたか否か判断する(S501)。仮想視点情報と再生時刻情報が入力されない場合(S501のNo)、待機する。一方、仮想視点情報と再生時刻情報が入力された場合(S501のYes)、仮想視点情報と再生時刻情報とを被写体形状生成部405と着色情報算出部411と仮想視点画像生成部412へ出力する。
【0038】
次に、被写体形状生成部405は、仮想視点情報設定部410から入力された再生時刻情報に基づく撮影画像データ保存部403から入力された前景画像データと、カメラパラメータ保持部404から入力されたカメラパラメータ情報を読み込む(S502)。続いて被写体形状生成部405は、被写体の3次元形状を推定する(S503)。例えば、視体積交差法などの三次元形状復元手法を用いて被写体の形状データを生成するとする。ここで、形状データとは、複数の点群からなり各点は位置情報を含むものとする。
【0039】
次に、着色情報算出部411は、仮想視点情報設定部410から入力された再生時刻情報と仮想視点情報に基づいた前景画像データと背景画像データとを撮影画像データ保存部403から入力する。またカメラパラメータをカメラパラメータ保持部404から入力し、また形状データを被写体形状生成部405から入力する。次に仮想視点位置から見た被写体形状に対して、該当時刻に実カメラで撮影された画像データの色情報でレンダリング(着色処理)、被写体形状の着色情報を保持する(S504)。
【0040】
次に、被写体形状重心算出部406は、被写体形状生成部405から入力された被写体形状の所定視点位置から見た場合の重心位置を、被写体位置として特定する(S505)。なお、本実施例では真上から見た場合の重心位置を被写体形状重心情報とする。
図6(a)は、仮想空間上で真上から見た被写体の形状データと、形状データの重心位置の概念図である。本実施形態では、複数の被写体を所定格子点上に配置しなおすため、被写体に対して真上から見下ろす視点で、被写体の前後方向軸の中心位置、また左右方向軸の中心位置などを算出して重心位置を算出する。その重心位置は被写体の黒点で示しており、重心位置を直線上や格子点上に配置することになる。
【0041】
図5の説明に戻り、被写体形状移動部407は、被写体位置設定部408より三次元空間上の被写体移動先位置情報があるか否か判定する(S506)。被写体位置設定部408より三次元空間上の被写体移動先位置情報がある場合(S506のYes)、被写体移動先位置情報を入力する(S507)。一方で、被写体移動先位置情報がない場合(S506のNo)、S509へ進む。
図6(b)は、被写体移動先位置情報に基づく被写体の基準位置を表す、床面の格子点位置の概念図である。例えば、複数の被写体を所定の直線上の所定区間に配置されるように床面に対応した3メートル間隔の格子点情報を出力するものとする。
【0042】
図5の説明に戻り、次に、被写体形状移動部407は、被写体形状重心算出部406から入力された被写体重心情報と被写体位置設定部408から入力された被写体移動先位置情報に基づき、形状データを移動する(S508)。
図6(c)は、移動後の被写体形状の概念図である。被写体形状に対して真上から見下ろす視点で、被写体移動先位置情報に基づく格子点位置と被写体形状の重心位置とが一致するように被写体位置を変更し、変更した被写体位置に形状データを移動したことを示している。これにより、移動被写体形状の位置は一定の距離間となるように移動されたことになる。なお、基準位置と被写体位置とが所定の閾値よりも小さくなるように被写体位置が変更され、形状データが配置されてもよい。
【0043】
図5の説明に戻り、仮想視点画像生成部412は、移動された形状データに基づいて、仮想視点位置から見た形状データに対して、指定時刻に撮影装置110で撮影された画像データを用いてレンダリング(着色処理)して仮想視点画像を生成する(S509)。すなわち、被写体移動前に決定、保持された被写体の色情報を被写体移動後にレンダリングすることで被写体が移動された位置で表示されることになる。仮想視点画像生成部412は、仮想視点画像生成部412にて生成された仮想視点画像を画像出力部413へ出力する(S510)。以上説明した処理は、録画して蓄積した画像データに基づいて行われてもよいし、撮影装置110による撮影が行われるのと並行して、リアルタイムで行うことも可能である。
【0044】
なお、上述した
図5の説明では、被写体移動前に決定、保持された被写体の色情報を被写体移動後にレンダリングする、と説明しているが、これに限定されない。例えば、対象とする被写体を指定の位置に移動させると共に全撮影装置110の撮影位置と対象の被写体以外の位置も対象の被写体との位置関係を保つように相対的に移動させて、対象とする被写体のみをレンダリングする。これを各被写体に対して順次行い合成することで仮想視点画像を生成するとしてもよい。すなわち、被写体の移動前に色情報を決定するのではなく、被写体移動後に色情報の計算とレンダリングとを行う構成であってもよい。
【0045】
図7は、
図16(a)に示す被写体を撮影した場合に、
図5に示す処理を行うことにより生成される仮想視点画像を表す図である。
図7(a)は、撮影領域に対応する三次元空間における被写体の形状データの位置を表す。
図7(a)によれば、複数の被写体がダンスなどの演技をしながらも、演技実施時とは異なる立ち位置である所定の格子点位置に移動され、一定の距離をとった立ち位置で、同じ動作をしている様子が仮想カメラで撮影される。仮想カメラ901の位置から被写体を撮影しても仮想カメラ902の位置から被写体を撮影しても、実際にダンスなどの演技をした立ち位置と比較して、異なる立ち位置になる。
【0046】
図7(b)は、端末装置130に表示される、仮想カメラ901に対応する仮想視点画像の表示例である。被写体の正面から撮影しても一定の位置を常に保って演技させることが可能となる。また、
図7(c)は仮想カメラ902に対応する仮想視点画像の表示例である。被写体の横方向から撮影しても直線状に配置しなおして表示可能であるため、常に同じ位置で演技させることが可能となる。
【0047】
以上、実施例1の形態によれば、複数被写体を複数カメラで撮影し、仮想視点撮影し表示する場合に、所望の位置に被写体を配置しなおした仮想視点画像を生成することが可能となる。演技の撮影時と比較して、仮想カメラの映像においては被写体の揃った演技を視聴することが可能となる。なお、上述した例では、基準位置が格子点で表されるものとしたが、基準位置は所定の直線や曲線で表されてもよい。この場合は、被写体の位置が線上からずれた場合、被写体位置が線上の任意の点(例えば、現在の被写体の位置から最も近い線上の点)の位置と一致するように形状データが配置される。また、基準位置は、任意の位置の点(座標)であってもよい。このとき、被写体が複数存在する場合は、被写体ごとに基準位置の点が設定されてもよい。
【0048】
また、基準位置は、複数の被写体の被写体位置に基づいて特定されてもよい。例えば、3人の被写体が撮影される場合に、3人の被写体が一直線上に位置するように立ち位置を設定したいものとする。このとき、3人のうち2人の被写体位置を結ぶ直線を算出し、算出した直線上の点を基準位置として、残りの1人の被写体位置を変更する。こうすることで、3人の被写体が一直線上に位置するように形状データが配置された仮想視点画像が生成される。なお、被写体の数が3人以外の場合にも適用可能である。
【0049】
また、基準位置は、
図7(a)に示したような撮影領域に対応する三次元空間位置に被写体を配置するに限らず、撮影領域外の任意の三次元空間位置に設定されてもよい。
図17は、撮影領域外の三次元空間位置に被写体の形状データを配置した例を表す。
図17に示す例では、対象とする被写体の形状データを移動するための基準位置が、撮影領域外の位置に設定されている。
図17によれば、複数の被写体は実際にダンスなどの演技を撮影領域内で撮影したとしても、その撮影領域よりも広い領域でダンスなどの演技をしているように仮想カメラ901の位置からは撮影される。
【0050】
(第2の実施形態)
本実施形態では、被写体の所定の特徴に基づき、被写体の位置を変更する例である。
図8は、第2の実施形態に係る画像生成装置1100の機能構成を示す図である。画像生成装置1100は、
図4に示した第1の実施形態に係る画像生成装置120の被写体形状重心算出部406のかわりに、被写体特徴生成部1101を有する。なお、画像生成装置1100のハードウェア構成は、第1の実施形態に係る画像生成装置120と同様であるものとする。また、画像生成装置120と同様の構成については、同じ符号を付し、説明を省略する。
【0051】
被写体特徴生成部1101は、被写体形状生成部405から入力された形状データと形状データに対応した着色情報から、被写体の所定特徴認識とその位置を算出する。例えば、複数の被写体の顔を特徴として直線上や床面の所定格子点上に配置しなおす場合には、形状データと着色情報とを使用して被写体の顔認識を行い、顔の位置を特定する。これにより、その後の処理において、顔の位置が真上から見下ろす視点で、顔の位置が所定の直線上や格子点上にくるように形状データが配置されるようになる。すなわち、被写体特徴生成部1101は、被写体の形状における所定の部位を被写体位置として特定する。被写体特徴生成部1101は、被写体特徴位置情報を、被写体形状移動部407へ出力する。
【0052】
図9は、第2の実施形態に係る画像処理装置1100による画像処理を示すフローチャートである。なお、S501からS504までは
図5の説明と同一であるため説明は省略する。またS506からS510においても
図5の説明と同一であるため説明は省略する。
【0053】
S1201において、被写体形状生成部405は、被写体位置として所定の部位の位置を特定する。このとき、被写体形状生成部405は、被写体の形状データのうち所定の特徴を有する位置を、例えば顔認識などの画像解析を使用して特定する。
【0054】
図10は、被写体の顔認識を形状データと着色情報とから解析し、顔の位置を特定し被写体位置とする場合の例である。被写体特徴生成部1101は、
図10(a)に示すように、被写体の顔の位置を特定する。また、被写体形状移動部407は、被写体特徴生成部1101が特定した被写体位置に基づいて、形状データを配置する。これにより、
図10(b)に示すように、上から見た場合に顔の位置が格子点と一致するように形状データが配置される。
【0055】
なお、被写体の特徴認識(例えば顔認識など)及び位置の特定は、撮影装置110により得られる複数の撮影画像から特徴(顔)が抽出され、さらにカメラパラメータ情報に基づいて特徴の位置(三次元空間上の位置)が算出されるものとする。しかしこれに限定されず、例えば仮想カメラを所定の位置に設定して仮想視点画像を生成し、生成された仮想視点画像を使用して特徴認識及び位置の特定が行われてもよい。
【0056】
以上説明したように、本実施形態の画像生成装置1100は、被写体の所定の部位の位置を特定し、特定した位置と基準位置とのずれに応じて形状データを配置し仮想視点画像を生成する。所定の部位は、顔に限らず、手や足、靴などであってもよい。これにより、例えば靴のCM(コマーシャル)撮影を行う場合は、靴の特徴を識別し、靴の位置と基準位置とが一致する、又は位置のずれが所定の閾値より小さくなるように、形状データを配置することが可能となる。このようにすることで、靴の位置が所望の位置となるような仮想視点画像を生成することができる。
【0057】
(第3の実施形態)
第3の実施形態は、時間軸方向における被写体の重心位置に基づき、被写体の位置を変更する例である。
図11は、実施例3に係る画像生成装置1500の機能構成を示す図である。画像生成装置1500は、
図4に示した第1の実施形態に係る画像生成装置120の被写体形状重心算出部406のかわりに、被写体形状平均重心算出部1601を有する。なお、本実施形態における画像生成装置1500のハードウェア構成は、上述した実施形態と同様であるものとする。また、同様の機能構成については同じ符号を付し、説明を省略する。
【0058】
被写体形状平均重心算出部1501は、撮影装置110により得られる撮影画像の動画フレームのそれぞれにおいて、被写体の重心位置を算出する。例えばダンスシーン10分間が撮影された場合には、各フレームにおいて被写体を真上から見下ろす視点での重心位置を特定し、さらに各動画フレームの重心位置の平均位置を算出する。被写体形状平均重心算出部1501は、算出した重心の平均位置を被写体位置とし、平均位置の情報を被写体形状移動部407へ出力する。
【0059】
図12は、実施例3に係る画像処理装置1500による画像処理を示すフローチャートである。なお、
図16に示す処理のうち、
図5に示す各処理と同じ処理については、説明を省略する。
【0060】
S504の処理の後、被写体形状平均重心算出部1501は、被写体形状生成部405から入力された複数の撮影フレームの被写体形状の所定視点位置から見た場合の重心位置を算出する。また、被写体形状平均重心算出部1501は、各動画フレームにおける被写体の重心に基づいて、重心の平均位置を算出し、平均位置の情報を被写体形状移動部407へ出力する(S1601)。
【0061】
図13は、被写体の重心の平均位置を表す図である。例えばダンスシーンの一連の中で、被写体は
図13(a)に示す矢印の方向に移動したとする。ここでは、被写体の演技中における移動前の時刻のフレームと演技中における移動後のフレームとで、被写体の重心位置が算出される。さらに、各フレームの重心の平均位置が算出される。
図13(a)においては、重心の平均位置として、点1301が特定される。
【0062】
図13(b)は、基準位置に基づいて重心の平均位置を移動させた場合の図である。被写体に対して真上から見下ろす視点で、被写体移動先位置情報に基づく格子点位置に、被写体の平均重心位置が一致するように形状データが配置される。これにより、被写体の位置は、一連の撮影の間は平均して一定の位置に配置され、その周辺で移動していくことになる。
【0063】
以上、本実施形態によれば、撮影時間に対する被写体の重心の平均位置を算出し、所定高視点上に配置しなおすことで、シーンの一連の移動にも違和感なく被写体の再配置が可能となる。なお、本実施例では、平均重心位置を算出するとしたが、これに限らず、撮影の任意のフレームの被写体重心位置を基本位置として使用してもよいものとする。例えば、撮影開始時点のフレームの被写体重心位置を、床面の格子点位置に合わせて再配置することも可能であるし、撮影終了の直前のフレームの被写体重心位置を用いてもよいものとする。また、本実施形態においては、被写体の重心を特定し、重心の平均位置を被写体位置としたが、これに限定されない。例えば、第2の実施形態で説明した所定の部位の位置を特定し、その平均位置を被写体位置としてもよい。
【0064】
(第4の実施形態)
第4の実施形態では、被写体を移動させるのではなく、被写体の移動前後の位置関係に基づいて仮想カメラ相対的に移動して撮影して、移動前仮想カメラ画像と合成する方法について説明する。
図14は、被写体位置差分算出部1901、複数カオス視点情報設定部1902、複数仮想視点画像生成部1903を有する。なお、画像生成装置1100のハードウェア構成は、上述した実施形態と同様であるものとする。また、同様の構成については、同じ符号を付し、説明を省略する。
【0065】
被写体位置差分算出部1901は、被写体形状重心算出部405から被写体重心情報を入力する。また被写体位置設定部408から被写体の基準位置の情報を入力し、基準位置と被写体重心位置との差分を算出する。
【0066】
複数仮想視点設定部1902は、ユーザ入力部409から入力された再生時刻情報と仮想視点情報に基づき、仮想空間内の現在位置と方向と再生時刻とを更新し、再生時刻情報と仮想視点情報とを複数仮想視点画像生成部1903へ出力する。また、複数仮想視点設定部1902は、被写体位置差分算出部1901から被写体の移動前位置と被写体の移動後位置との位置関係を被写体差分情報として入力した場合、その被写体差分情報に基づく差分仮想視点情報を生成する。
【0067】
複数仮想視点画像生成部1903は、複数仮想視点情報設定部1902から入力された再生時刻情報と仮想視点情報とに基づいた前景画像データと背景画像データとを撮影画像データ保存部403から入力する。またカメラパラメータをカメラパラメータ保持部404から入力し、移動後の形状データを被写体形状移動部407から入力する。その後、背景画像データを仮想視点位置から背景として見えるように投影変換や画像処理を施して仮想視点画像の背景とする。次に仮想視点位置から見た移動被写体形状に対して、該当時刻に実カメラで撮影された画像データによる色情報でレンダリング(着色処理)して仮想視点画像を生成する。また、被写体位置差分算出部1901が被写体差分情報を算出したことによる差分仮想視点情報を入力された場合、差分仮想視点情報の指定位置で仮想視点画像を生成し、ユーザ入力に基づく仮想視点画像と合成する。最後に仮想視点画像を画像出力部413へ出力する。
【0068】
図15は、仮想空間上の移動させる被写体位置における仮想カメラ位置の概念図である。床面の中心(0、0)の位置を原点として、移動後の被写体位置情報も同様に床面の中心(0、0)の位置とする。なお単位はメートルとする。移動前の被写体の位置が(0、2)であるとすると、基準位置(0、0)に被写体を配置する場合は、仮想カメラ2001の位置(x、y)を、(0、2)移動した位置(x、y+2)に移動される。そして、移動させた仮想カメラ2001から被写体を撮影して仮想視点画像を生成する。さらに、生成した仮想視点画像と、移動させたい被写体以外を撮影した仮想カメラ2001に対応する仮想視点画像と合成する。
【0069】
以上、本実施形態によれば、移動させたい被写体に対して仮想カメラを移動させて仮想視点画像を生成し、移動させたい被写体以外を撮影する仮想カメラに対応する仮想視点画像と合成する。これにより、仮想視点画像の合成のみで、被写体の位置を移動させることが可能となる。
【0070】
(その他の実施形態)
上述した実施形態においては、被写体位置と基準位置とのずれに応じて、被写体の形状データを配置し直して仮想視点画像を生成する例について説明した。しかしこれに限定されず、被写体位置と基準位置とがずれていることを識別可能な情報を含む仮想視点画像が生成される構成でもよい。例えば、特定された被写体位置に形状データが配置するとともに、基準位置を示す情報(例えば、格子点や直線など)を表示させてもよい。また、被写体位置に形状データが配置するとともに、基準位置からずれている被写体を識別可能にする表示を行ってもよい。これは例えば、基準位置からずれている被写体の形状データを線で囲む、被写体の色又は明度を変更して強調する等である。これらの方法により、仮想視点画像を見るユーザは被写体位置と基準位置とがずれていることを認識することができる。例えば、演者が生成された仮想視点画像を見て立ち位置を確認したい場合に、仮想視点の位置によらずに、演者の位置のずれを容易に識別することができる。
【0071】
本開示は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0072】
120 画像生成装置
405 被写体形状生成部
406 被写体形状重心算出部
408 被写体位置設定部
412 仮想視点画像生成部