JP2022060815A - 情報処理装置、情報処理方法及びプログラム - Google Patents
情報処理装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP2022060815A JP2022060815A JP2020168519A JP2020168519A JP2022060815A JP 2022060815 A JP2022060815 A JP 2022060815A JP 2020168519 A JP2020168519 A JP 2020168519A JP 2020168519 A JP2020168519 A JP 2020168519A JP 2022060815 A JP2022060815 A JP 2022060815A
- Authority
- JP
- Japan
- Prior art keywords
- virtual viewpoint
- generation means
- generated
- information
- key frames
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
【課題】キーフレーム法によって仮想視点情報を作成する際のオペレータの手間を軽減し、容易に所望の仮想視点情報を作成できる情報処理装置、情報処理方法及びプログラムを提供する。【解決手段】情報処理装置である画像処理装置における主制御部304は、複数の撮像装置が行う撮像により得られる複数の撮像画像に基づいて生成される仮想視点映像に係る仮想視点を指定するためのユーザ操作に基づいて決定される仮想視点の位置及び仮想視点からの視線方向を表すパラメータと、複数の撮像装置により撮像が行われる期間における時刻とが対応付けられたキーフレームを生成するキーフレーム設定部401と、生成される複数のキーフレームが所定の条件を満たす場合、新たなキーフレームを生成し、複数のキーフレームに基づいて、仮想視点の変遷を表す仮想視点情報を生成するカメラパス作成部403とを有する。【選択図】図4
Description
本発明は、仮想視点映像やCGアニメーションに係る仮想視点情報を作成・編集する技術に関する。
昨今、複数の撮像装置を異なる位置に設置して多視点で同期撮影し、当該撮影により得られた複数視点画像を用いて仮想視点画像を生成する技術が注目されている。複数視点画像から仮想視点画像を生成する技術によれば、通常の画像と比較してユーザに高臨場感を与えることが出来る。例えば、ラグビーの試合であれば、ゴールに向かって選手達がボールを運ぶ場面を俯瞰視点で捉えたカットと、トライの場面を特定選手の主観視点(例えばフルバック目線で相手選手の脇を抜ける)で捉えたカットとを繋げた映像を得ることもできる。
仮想視点映像を生成する際には、3次元空間内に仮想的に配置した実在しないカメラの視点(仮想視点)の移動経路を表した仮想視点情報の設定が必要となる。そして、上記のようなカットの切り替えを含む仮想視点映像を得る場合の仮想視点情報の作成方法にキーフレーム法がある。キーフレーム法は、任意の仮想視点を対応付けた基準となるフレーム(「キーフレーム」と呼ばれる)を複数設定し、設定した複数のキーフレーム間を補間することによって仮想視点情報を得る手法である。その際の補間方法にはスプライン補間やベジェ補間などがあるところ、時には予想とは違う補間曲線になることがある。この点、特許文献1には、予想とは違うスプライン曲線になった場合に、パラメータを変化させて予想通りのスプライン曲線を生成する技術が開示されている。
上記キーフレームは3次元の位置座標で特定されるところ、上記特許文献1の技術ではパラメータを変化させる作業が複雑で、所望のスプライン曲線を得るには多くの手間を要した。
そこで本開示の技術は、キーフレーム法によって仮想視点情報を作成する際のオペレータの手間を軽減し、容易に所望の仮想視点情報を作成できるようにすることを目的とする。
本開示に係る情報処理装置は、複数の撮像装置が行う撮像により得られる複数の撮像画像に基づいて生成される仮想視点映像に係る仮想視点を指定するためのユーザ操作に基づいて決定される前記仮想視点の位置及び前記仮想視点からの視線方向を表すパラメータと、前記複数の撮像装置により撮像が行われる期間における時刻とが対応付けられたキーフレームを生成する第1の生成手段と、前記第1の生成手段により生成される複数のキーフレームが所定の条件を満たす場合、新たなキーフレームを生成する第2の生成手段と、前記第1の生成手段及び前記第2の生成手段により生成される複数のキーフレームに基づいて、前記仮想視点の変遷を表す仮想視点情報を生成する第3の生成手段と、を有することを特徴とする。
本開示の技術によれば、キーフレーム法によって仮想視点情報を作成する際のオペレータの手間を軽減し、容易に所望の仮想視点情報を作成することが可能になる。
以下、本実施形態を実施するための形態について図面などを参照して説明する。なお、以下の実施形態は、本開示の技術を限定するものではなく、また、以下の実施形態で説明されている全ての構成が課題を解決するための手段に必須であるとは限らない。
[実施形態1]
はじめに、仮想視点画像の概要を簡単に説明する。仮想視点画像は、実際のカメラ視点とは異なる、仮想的なカメラ視点(仮想視点)からの見えを表す画像であり、自由視点画像とも呼ばれる。仮想視点は、ユーザがコントローラを操作して直接指定したり、例えば予め設定された複数の仮想視点候補の中から選択したりするといった方法により設定される。なお、仮想視点画像には、動画と静止画の両方が含まれるが、以下の実施形態では、動画を前提として説明を行い、動画による仮想視点画像を「仮想視点映像」と表現するものとする。
はじめに、仮想視点画像の概要を簡単に説明する。仮想視点画像は、実際のカメラ視点とは異なる、仮想的なカメラ視点(仮想視点)からの見えを表す画像であり、自由視点画像とも呼ばれる。仮想視点は、ユーザがコントローラを操作して直接指定したり、例えば予め設定された複数の仮想視点候補の中から選択したりするといった方法により設定される。なお、仮想視点画像には、動画と静止画の両方が含まれるが、以下の実施形態では、動画を前提として説明を行い、動画による仮想視点画像を「仮想視点映像」と表現するものとする。
<システム構成について>
図1は、本実施形態に係る、仮想視点映像を生成するための画像処理システムの構成の一例を示す図である。画像処理システム100は、複数の撮像装置(カメラ)101、画像処理装置102、視点入力装置103及び表示装置104を有する。画像処理システム100は、複数の撮像装置101の同期撮影により得られる複数の撮像画像(複数視点映像)と視点入力装置103によって設定された仮想視点とに基づいて画像処理装置102が仮想視点映像を生成し、表示装置104に表示する。複数の撮像装置101による同期撮影の対象となる領域は、例えばラグビーやサッカーなどの競技が行われるスタジアムのフィールドや、演劇等が行われるコンサートホールの舞台などである。例えばスタジアムで行われるラグビーの試合を対象に仮想視点映像を生成する場合には、スタジアム内のフィールドを取り囲むようにそれぞれ異なる位置に撮像装置101が設置され、各撮像装置101が時刻同期してフィールド上を撮影する。但し、複数の撮像装置101は必ずしも撮影対象領域の全周に亘って設置されていなくてもよく、設置場所に制限がある場合には撮影対象領域の一部の方向にのみ撮像装置101が設置されていてもよい。各撮像装置101は、例えば、シリアルデジタルインターフェイス(SDI)に代表される映像信号インターフェイスを備えたデジタル方式のビデオ撮像装置により実現される。各撮像装置101は、出力する映像信号に対しタイムコードに代表される時刻情報を付加して、画像処理装置102に送信する。
図1は、本実施形態に係る、仮想視点映像を生成するための画像処理システムの構成の一例を示す図である。画像処理システム100は、複数の撮像装置(カメラ)101、画像処理装置102、視点入力装置103及び表示装置104を有する。画像処理システム100は、複数の撮像装置101の同期撮影により得られる複数の撮像画像(複数視点映像)と視点入力装置103によって設定された仮想視点とに基づいて画像処理装置102が仮想視点映像を生成し、表示装置104に表示する。複数の撮像装置101による同期撮影の対象となる領域は、例えばラグビーやサッカーなどの競技が行われるスタジアムのフィールドや、演劇等が行われるコンサートホールの舞台などである。例えばスタジアムで行われるラグビーの試合を対象に仮想視点映像を生成する場合には、スタジアム内のフィールドを取り囲むようにそれぞれ異なる位置に撮像装置101が設置され、各撮像装置101が時刻同期してフィールド上を撮影する。但し、複数の撮像装置101は必ずしも撮影対象領域の全周に亘って設置されていなくてもよく、設置場所に制限がある場合には撮影対象領域の一部の方向にのみ撮像装置101が設置されていてもよい。各撮像装置101は、例えば、シリアルデジタルインターフェイス(SDI)に代表される映像信号インターフェイスを備えたデジタル方式のビデオ撮像装置により実現される。各撮像装置101は、出力する映像信号に対しタイムコードに代表される時刻情報を付加して、画像処理装置102に送信する。
画像処理装置102は、複数の撮像装置101が同期撮影して得られた映像に基づき、仮想視点映像を生成する。画像処理装置102は、ネットワークケーブル等を介して取得した各撮像装置101が撮影した映像を用いてオブジェクトの三次元形状データの生成やレンダリングなどの処理を行って仮想視点映像を生成する。また、視点入力装置103から入力されるユーザ操作信号に基づき、仮想視点の設定(カメラパス情報の作成)も行う。画像処理装置102の機能の詳細は後述する。
視点入力装置103は、ジョイスティック等のコントローラを有する入力装置である。オペレータは視点入力装置103を介して、仮想視点に関する各種の設定操作を行う。
表示装置104は、画像処理装置102から送られてくる画像データ(グラフィカルユーザインタフェースのためのUI画面のデータや仮想視点映像のデータ)を取得して表示する。表示装置104は、例えば、液晶ディスプレイやLED等で実現される。
<ハードウェア構成について>
図2は、画像処理装置102のハードウェア構成を示す図である。情報処理装置である画像処理装置102は、CPU211、ROM212、RAM213、補助記憶装置214、操作部215、通信I/F216、及びバス217を有する。
図2は、画像処理装置102のハードウェア構成を示す図である。情報処理装置である画像処理装置102は、CPU211、ROM212、RAM213、補助記憶装置214、操作部215、通信I/F216、及びバス217を有する。
CPU211は、ROM212またはRAM213に格納されているコンピュータプログラムおよびデータを用いて画像処理装置102の全体を制御することで、画像処理装置102の各機能を実現する。なお、画像処理装置102は、CPU211とは異なる専用の1又は複数のハードウェアあるいはGPU(Graphics Processing Unit)を有していてもよい。そして、CPU211による処理の少なくとも一部をGPUあるいは専用のハードウェアが行うようにしても良い。専用のハードウェアの例としては、ASIC(特定用途向け集積回路)、FPGA(フィールドプログラマブルゲートアレイ)、およびDSP(デジタルシグナルプロセッサ)などがある。
ROM212は、変更を必要としないプログラムなどを格納する。RAM213は、補助記憶装置214から供給されるプログラムやデータ、及び通信I/F217を介して外部から供給されるデータなどを一時記憶する。補助記憶装置214は、例えばハードディスクドライブ等で構成され、画像データや音量データなどの種々のデータを記憶する。
表示部215は、例えば液晶ディスプレイやLED等で構成され、ユーザが画像処理装置102を操作するためのグラフィカルユーザインタフェース(GUI)などを表示する。
操作部215は、例えばキーボードやマウス等で構成され、様々なユーザ指示をCPU211に入力する。通信I/F216は、画像処理装置102の外部の装置との通信に用いられる。例えば、画像処理装置102が外部の装置と有線で接続される場合には、通信用のケーブルが通信I/F216に接続される。画像処理装置102が外部の装置と無線通信する機能を有する場合には、通信I/F216はアンテナを備える。
バス217は、画像処理装置102の各部をつないで情報を伝達する。なお、本実施形態では、視点入力装置103と表示装置104が外部装置として設けられているが、いずれも画像処理装置102の機能部の1つとして内在する形で設けてもよい。
<機能構成について>
図3は、画像処理装置102の機能構成を示すブロック図である。画像処理装置102は、画像取得部300、前景背景分離部301、記憶部302、仮想視点映像生成部303及び主制御部304を有する。
図3は、画像処理装置102の機能構成を示すブロック図である。画像処理装置102は、画像取得部300、前景背景分離部301、記憶部302、仮想視点映像生成部303及び主制御部304を有する。
画像取得部300は、複数の撮像装置101が同期撮影することで得られた映像(複数視点映像)のデータを取得する。
前景背景分離部301は、撮像装置101それぞれの映像から、選手や審判などの前景となる特定のオブジェクト(以降、「前景オブジェクト」と呼ぶ)をフレーム単位で抽出する。前景背景分離部301は、抽出した前景オブジェクトを示す画像を前景画像として記憶部302に記憶させる。前景オブジェクトを抽出する方法は限定しない。例えば、前景オブジェクトの抽出方法として背景差分法がある。背景差分法は、映像内のフレーム(静止画)とその背景部分を示す背景画像との画素値を比較して、フレーム内の前景オブジェクトを抽出する方法である。背景画像は、前景オブジェクトが存在しない状態の画像であり、例えばラグビーの試合を対象に撮影を行う場合、フィールドに選手等が存在しない競技開始前に撮影するなどして得られた画像が使用される。前景背景分離部301は、背景画像と前景画像とを、撮像装置101の三次元位置を示す撮影位置情報と共に記憶させる。三次元位置は、撮影対象の3次元空間における高さ、幅、奥行きに対応する各方向における位置によって規定される。世界座標系に従った撮影位置情報は、例えば、事前に設置したマーカ等を撮影し、マーカの三次元画像計測等を行うことにより得られる。背景画像及び前景画像は記憶部302によってRAM213又は補助記憶装置214に記憶される。
主制御部304は、視点入力装置103を介したユーザ操作に基づきカメラパス情報を作成し、仮想視点映像生成部303に提供する。ここで、カメラパス情報とは、フレーム単位の仮想視点画像が時系列に並んだ仮想視点映像に対応する、実在しない仮想的なカメラの視点(仮想視点)の変遷を示す情報である。カメラパス情報におけるカメラの位置及び姿勢は、それぞれ仮想視点の位置及び仮想視点からの視線方向に対応する。また、カメラパス情報は、カメラの位置及び姿勢を表すパラメータであって、時間的に連続するカメラパラメータによって構成される。すなわち、カメラパス情報は、仮想視点の位置及び仮想視点からの視線方向の時間的な変遷を表す仮想視点情報である。作成したカメラパス情報は、仮想視点映像生成部303に出力される。
仮想視点映像生成部303は、前景画像に基づいて前景オブジェクトの三次元形状データを生成し、当該3次元形状データに対しカメラパス情報に従って色付け処理(テクスチャ貼り付け処理)を行って、仮想視点からの見えを表す画像を生成する。三次元形状データの生成方法としては例えば視体積交差法などがあり、特に限定しない。三次元形状データの生成の際には、撮影対象空間における前景オブジェクトの位置及び大きさも併せて特定される。生成した仮想視点映像は表示装置104に出力される。
なお、画像処理装置102は複数存在してもよい。例えば、上述した画像取得部300、前景背景分離部301、記憶部302、仮想視点映像生成部303の各機能を持つ他の画像処理装置において仮想視点映像の生成までを行うようにしてもよい。その場合、画像処理装置102は、当該他の画像処理装置に対し、仮想視点映像を生成するためのカメラパス情報を提供する。また、画像処理装置102をCG映像のカメラパスの編集に適用することも可能である。その際は、仮想視点映像生成部303の代わりにCGレンダラーを設ければよい。この場合、後述の手法によって作成されるカメラパスはCG画像における視点の軌跡を表することになる。
<主制御部の詳細について>
図4は、カメラパスの作成・編集に関わる主制御部304内の機能構成の一例を示すブロック図である。主制御部304は、カメラパラメータ生成部400、キーフレーム設定部401、キーフレーム保存部402、カメラパス作成部403、GUI制御部404で構成される。以下、各部について説明する。
図4は、カメラパスの作成・編集に関わる主制御部304内の機能構成の一例を示すブロック図である。主制御部304は、カメラパラメータ生成部400、キーフレーム設定部401、キーフレーム保存部402、カメラパス作成部403、GUI制御部404で構成される。以下、各部について説明する。
カメラパラメータ生成部400は、ユーザがジョイスティック等を操作して入力した仮想カメラの位置及び姿勢を指定する操作信号(以下、「カメラ操作信号」と呼ぶ。)を視点入力装置103から取得する。そして、取得したカメラ操作信号に基づいて、仮想視点に対応する実在しないカメラのカメラパラメータを設定する。本実施形態のカメラパラメータには、仮想視点の位置及び姿勢、ズーム、時刻といったパラメータを含む。この場合において、仮想視点の位置は、例えばX軸、Y軸、Z軸の3軸の直交座標系に従った3次元座標情報により示される。その際の原点は、撮影対象の3次元空間内の任意の位置(本実施形態ではスタジアムのフィールド中央)である。また、仮想視点に対応するカメラの姿勢は、パン、チルト、ロールの3軸との成す角度により示される。また、ズームは、例えば焦点距離により示される。また、時刻は撮影対象の試合が開始された時刻を00時00分00秒00フレームとしたタイムコードによって示される。ズームと時刻はそれぞれ1軸のパラメータである。よって、本実施形態におけるカメラパラメータは、X座標、Y座標、Z座標、パン、チルト、ロール、ズーム、タイムコードの8軸のパラメータを有することになる。なお、これら8軸以外の他の要素を規定するパラメータを含んでもよいし、これら8軸のパラメータの全てを含まなくてもよい。ユーザ操作に基づき設定されたカメラパラメータは、キーフレーム設定部401に送られる。
キーフレーム設定部401は、カメラパラメータ生成部400から入力されるカメラパラメータと、複数の撮像装置101により撮影が行われる期間における時刻とが対応付けられたキーフレームを生成し、フレーム指定信号とを関連付けて設定する。ここで、フレーム指定信号は、複数視点映像を構成するフレーム群の中のオペレータの選択に係る特定のフレームを、キーフレームとして設定することを指示する信号であり、視点入力装置103から入力される。キーフレームは少なくとも2つ設定される必要がある。設定されたキーフレームの情報(キーフレーム設定情報)は、キーフレーム保存部402に出力される。
キーフレーム保存部402は、キーフレーム設定部401から受け取ったキーフレーム設定情報で特定されるフレームを、所定の順番でリスト化して保存する。この際、キーフレーム設定情報を受け付けた順(オペレータがキーフレームに指定した順)や、フレームに付されたタイムコード順といった所定の順番に従ってリスト化される。こうして保存されたキーフレームリストはカメラパス作成部403によって読み出され、カメラパス情報の作成に使用される。
カメラパス作成部403は、カメラパラメータ生成部400から入力されるカメラパラメータと、キーフレーム保存部402によって保存されたキーフレームリストとに基づいてカメラパス情報を作成する。カメラパス情報は、複数のフレームで構成されるタイムラインによって管理され、フレームそれぞれには、仮想視点映像を構成する各画像の生成に必要な情報、具体的にはシーンの時刻と仮想視点の位置及び姿勢の情報が付される。シーンの時刻は、例えば、撮影対象の試合が開始された時刻を00時00分00秒00としたタイムコードで表される。仮想視点の位置は上述したX軸、Y軸、Z軸の3軸による3次元座標で表される。仮想視点の姿勢は上述したパン、チルト、ロールの3つの角度で表される。タイムラインに含まれるフレームの数は、1秒当たりに含まれる画像の枚数(フレームレート)によって決まる。例えば、フレームレートが60フレーム/秒の場合、1秒当たり60個のフレームが、タイムラインに含まれる。カメラパスの設定・編集において、フレームはキーフレームと中間フレームの2種類に分かれる。キーフレームは、オペレータが明示的に仮想視点の位置や姿勢等を指定するフレームである。一方、中間フレームは、キーフレーム間を埋めるフレームである。カメラパス作成部403は、オペレータが指定したキーフレームに基づき補間処理を行って、中間フレームに対応するカメラパラメータを決定する。こうして、時間的に連続するカメラパラメータの集合によって表されるカメラパス情報が得られる。図5は、ラグビーにおけるゴールキックのシーンを対象としたカメラパス情報の一例を示す図である。図5において、選手501がフィールドに置かれたボール502をキックしており、キックされたボール502を追従するように仮想視点が指定されている。図6の(a)~(d)は、図5に示す4つの仮想視点に対応するカメラの位置503a~503dそれぞれからの見えを表す静止画による仮想視点画像を示している。図6(a)はカメラ位置503aに対応し、同(b)はカメラ位置503bに対応し、同(d)はカメラ位置503cに対応し、同(d)はカメラ位置503dに対応している。これらカメラ位置503a~503dを結ぶ、仮想視点の移動の軌跡を表す曲線504がカメラパスとなる。
GUI制御部404は、グラフィカルユーザインタフェースを制御し、作成されたカメラパス情報を編集するためのユーザ指示などを受け付ける。例えば、スプライン関数を用いた補間処理によってカメラパス情報を作成する場合には、キーフレーム間を結ぶスプライン曲線が補間曲線として得られる。そして、この補間曲線において想定外の挙動(オーバーシュート)が見られた場合に、当該オーバーシュートが抑制された補間曲線を得るための補間条件の変更指示を、オペレータはGUIを介して行う。なお、「補間曲線のオーバーシュート」については後述する。本実施形態では、オペレータがGUIを介して補間条件の変更指示を行い、当該変更指示に基づき補間処理を再度実行して、オーバーシュートが抑制されたカメラパス情報を得る。
<解決課題の説明>
ここで、本開示に係る技術が解決すべき課題について、図7及び図8を参照して詳しく説明する。図7の(a)及び(b)は、カメラパスを作成・編集するためのGUI(グラフィカルユーザインタフェース)の一例を示している。表示装置104はこれらGUIを例えば2画面構成で同時に表示する。図7(a)はキーフレーム間の補間処理に関する設定等を行うためのUI画面を示している。また、図7(b)のUI画面には、オペレータが設定した仮想視点からの見えを表す画像が表示されている。これによりオペレータは、自身が設定した仮想視点に対応する画像を確認しながらカメラパスを編集することが可能である。
ここで、本開示に係る技術が解決すべき課題について、図7及び図8を参照して詳しく説明する。図7の(a)及び(b)は、カメラパスを作成・編集するためのGUI(グラフィカルユーザインタフェース)の一例を示している。表示装置104はこれらGUIを例えば2画面構成で同時に表示する。図7(a)はキーフレーム間の補間処理に関する設定等を行うためのUI画面を示している。また、図7(b)のUI画面には、オペレータが設定した仮想視点からの見えを表す画像が表示されている。これによりオペレータは、自身が設定した仮想視点に対応する画像を確認しながらカメラパスを編集することが可能である。
いま、前述の図5におけるカメラ位置503a~503dそれぞれに対応する4つのキーフレームKF1~KF4が視点入力装置103を介して設定されたとする。そして、これら4つのキーフレームKF1~KF4を設定したオペレータは、選手がボールを蹴る瞬間からボールがゴールポストを通過するまでを、ボールに沿って追跡するようなカメラパスを作成するというシナリオを描いているとする。以下の表1は、キーフレームKF1~KF4に対応する8軸のカメラパラメータ(タイムコード、仮想カメラの3次元位置(XYZ)と姿勢(パン、チルト、ロール)を示す情報、ズーム)を表している。
オペレータは、同期撮影された映像のタイムコードにおいて、仮想視点の位置及び姿勢を決定してキーフレームKF1~KF4を設定することになる。こうして設定されたキーフレームのそれぞれは、図8に示すように、“KF1”、“KF2”、“KF3”、“KF4”としてUI画面上に表示される。そして、キーフレームを設定するたびにタイムコード順にリストに追加され、RAM213にて保持される。
ここで、上記4つのキーフレームKF1~KF4を、スプライン関数を用いて補間処理するケースを考える。オペレータは、図8における破線で示すようなスプライン曲線801を期待しているものとする。しかしながら、KF1やKF2のような選手目線に近いカメラ位置とKF3やKF4のような俯瞰的なカメラ位置との間の高度差によって、スプライン曲線が想定外の挙動を示す場合がある。図8において、実線で示すスプライン曲線802は想定外の挙動を示していて、KF1とKF2との間の区間で下に凸の大きなカーブを描いている。KF1はボールを蹴り出すための助走段階を映す起点フレームなので仮想視点は選手と同じくらいの高さ(地上から約1メートル程度)に設定されており、KF2はキックの瞬間を映すフレームなのでKF1とほぼ同じ高さに設定されている。したがって、KF1とKF2とを繋ぐ中間フレームに対応する仮想視点の高さも同程度であることが望ましい。しかしながら、スプライン曲線802の場合、KF1とKF2の間で仮想視点が大きく沈み込み、あたかも地面に潜るようなカメラパスになってしまっている。そして、その後のKFKF3へのZ座標の推移をみると地上から30mの高さまで急激に上昇している。
以上のように、設定されたキーフレーム間を補間処理によって埋める場合に、オペレータが意図しないような補間曲線になってしまうことがある。このように、仮想視点が想定外の補間曲線の挙動を示すなど、仮想視点の位置が特定の変化を表すことを、本明細書では「補間曲線のオーバーシュート」と呼び、その抑制こそが本開示の技術における課題となる。なお、上記ではスプライン補間により仮想視点の位置が想定外の挙動を示す例について説明したが、仮想視点からの視線方向についても同様の問題が発生し得る。本実施形態では、仮想視点の位置及び仮想視点からの視線方向の少なくともいずれかの変遷が特定の変化を表す(オーバーシュートする)問題を解決するための方法について説明する。
<オーバーシュートの抑制原理>
続いて、主制御部304におけるカメラパス情報の作成処理について詳しく説明する。ここで、上述した課題を解決する本実施形態に係る手法について図9の(a)及び(b)を用いて説明する。図9(a)は、前述の図8における4つのキーフレームKF1~KF4をタイムコード順に並べた図であり、各フレームの上には対応するタイムコードを示している。図9(b)は、図9(a)に対して、KF2を1フレーム分ずらした(ここでは次のフレーム)位置に、KF2と同内容(すなわち、同一のカメラパラメータが対応付けられている)のキーフレームKF2’を加えたものである。カメラパス作成部403は、以下のようにして補間処理を行なうことにより、与えられた任意の点の各点を滑らかに結ぶ補間曲線(ここではスプライン曲線)におけるオーバーシュートを抑制する。
続いて、主制御部304におけるカメラパス情報の作成処理について詳しく説明する。ここで、上述した課題を解決する本実施形態に係る手法について図9の(a)及び(b)を用いて説明する。図9(a)は、前述の図8における4つのキーフレームKF1~KF4をタイムコード順に並べた図であり、各フレームの上には対応するタイムコードを示している。図9(b)は、図9(a)に対して、KF2を1フレーム分ずらした(ここでは次のフレーム)位置に、KF2と同内容(すなわち、同一のカメラパラメータが対応付けられている)のキーフレームKF2’を加えたものである。カメラパス作成部403は、以下のようにして補間処理を行なうことにより、与えられた任意の点の各点を滑らかに結ぶ補間曲線(ここではスプライン曲線)におけるオーバーシュートを抑制する。
各キーフレームの間(セグメント)を補間する3次スプライン曲線は、以下の式(1)で表される3次関数を用いて算出できる。
以上のとおり本実施形態では、オーバーシュートが発生している箇所の遷移する先のキーフレームの位置に略同一のカメラパラメータを持つキーフレームを疑似的に追加設定(二重登録)することで、補間曲線におけるオーバーシュートを抑制する。図10の(a)及び(b)は、オーバーシュートの発生を確認したオペレータが、オーバーシュートのない補間曲線を得るための操作を行った際のGUIを示している。図10(a)に示すUI画面において、領域1001にはオペレータが当初に設定した4つのキーフレームKF1~KF4がタイムコードと共に示されている。そして、その右側には、4つのキーフレームKF1~KF4それぞれに対応する補正ボタン1002、1003、1004、1005が設けられている。これら補正ボタンは、オーバーシュートが発生した箇所のキーフレームについて上述の二重登録を行うためのボタンであり、押下する度に、「補正ON」と「補正OFF」とが切り替わる。いま、KF2に対応する補正ボタン1003が押下されて「補正ON」になっており、「連続フレーム」が選択されている。この場合、前述のとおり、KF2の1フレームずらした位置にKF2’が追加されることになる。なお、このとき追加されるKF2’は、図10の(a)及び(b)のUI画面内にキーフレームとして表示せず、上述の3次スプライン補間のための内部的なデータとして扱えば足りる。ただし、二重登録に係るKF2’を、例えば図10(b)のUI画面上でKF2と重ねて表示するなどしてオペレータが追加設定されたキーフレームのフレーム位置を確認できるようにしてもよい。なお、キーフレームKF1~KF4の補正ボタン1002~1005をすべて押下し、KF1’、KF2’、KF3’、KF4’を追加設定して略同一の座標を2点ずつ繰り返すことで、全体のスプライン曲線を緩やかにすることもできる。
図10(a)のUI画面内の下部にある領域1006には、補間方法を選択するためのチェックボックスと、二重登録時のフレームを追加設定する位置を選択するためのチェックボックスが設けられている。補間方法に関しては、この例では、スプライン補間、ベジェ補間、リニア補間の3種類が選択肢として示されている。ベジェ補間は、スプライン補間よりも、より滑らかな曲線で補間したい場合に使用する。したがって、補間方法としてベジェ補間を選択するだけで(上述の補正ボタンを使用しなくても)オーバーシュートを修正できるケースもある。リニア補間は、キーフレーム同士を直線で繋ぎたい場合に使用する。また、二重登録時のフレームを追加設定する位置に関しては、上述の補正ボタン1002~1005がONのときに、前述のように1フレームだけずらした位置に追加する「連続フレーム」と、まったく同じ位置にフレームを追加する「同一フレーム」が選択肢として示されている。スプライン曲線の特徴上、軽微ではあるが「同一フレーム」よりも「連続フレーム」の方がより滑らかな曲線になる。なお、補間条件の変更に関する選択肢は、図10(a)のUI画面に示されたものに限定されない。
<カメラパス情報の作成・編集>
続いて、主制御部304における、カメラパス情報の作成・編集時の処理の流れについて説明する。図11は、カメラパス情報の作成・編集時における制御の流れを示すフローチャートである。図11のフローチャートで示される一連の処理は、画像処理装置102のCPU211がROM212に記憶されているプログラムコードをRAM213に展開し実行することにより行われる。また、本実施形態におけるステップの一部または全部の機能をASICまたは電子回路等のハードウェアで実現してもよい。なお、各処理の説明における記号「S」は、当該フローチャートにおけるステップであることを意味する。また、本フローチャートの処理が始まる前に、または本フローチャートの処理と並行して、画像取得部300による複数視点映像の取得や、前景背景分離部301による前景オブジェクトの抽出といった、仮想視点映像の生成のための前処理が実行されているものとする。
続いて、主制御部304における、カメラパス情報の作成・編集時の処理の流れについて説明する。図11は、カメラパス情報の作成・編集時における制御の流れを示すフローチャートである。図11のフローチャートで示される一連の処理は、画像処理装置102のCPU211がROM212に記憶されているプログラムコードをRAM213に展開し実行することにより行われる。また、本実施形態におけるステップの一部または全部の機能をASICまたは電子回路等のハードウェアで実現してもよい。なお、各処理の説明における記号「S」は、当該フローチャートにおけるステップであることを意味する。また、本フローチャートの処理が始まる前に、または本フローチャートの処理と並行して、画像取得部300による複数視点映像の取得や、前景背景分離部301による前景オブジェクトの抽出といった、仮想視点映像の生成のための前処理が実行されているものとする。
S1101では、カメラパラメータ生成部400が、視点入力装置103から送られてくるカメラ操作信号に基づき、前述のカメラパラメータを生成する。
S1102では、キーフレーム設定部401が、視点入力装置103から送られてくるフレーム指定情報に基づき、S1101にて生成されたカメラパラメータに対応するキーフレームを設定する。
S1103では、キーフレーム保存部402が、S1102にて設定されたキーフレームを、所定の順に並べてリスト化し、キーフレームリストとしてRAM213等に保存する。
S1104は、現時点のキーフレームリストに基づいてカメラパス情報の作成を開始するかどうかの判定処理である。オペレータが、視点入力装置103においてカメラパス情報の作成開始を指示する操作を行ったことに応答して、S1105に進む。
S1105では、カメラパス作成部403は、キーフレームリストをRAM213等から読み出し、キーフレームリストに含まれる複数のキーフレームの間を埋める補間処理を実行して、カメラパス情報を作成する。S1106では、S1105での補間処理の結果を表す補間曲線が表示装置104に出力される(前述の図10(b)を参照)。
S1107では、補間処理の条件(以下、単に「補間条件」と呼ぶ。)を変更する指示の有無が判定される。ここで、補間条件の変更指示には、例えば前述の図10(a)のUI画面上での、特定のキーフレームに対応する補正ボタンの押下、補正方法や追加設定を変更する操作が該当する。いずれかのユーザ操作を示す制御信号がGUI制御部404を介して入力されると、S1108に進む。補間条件を変更する操作がされずに不図示のOKボタンが操作される等すれば本処理を終了する。
S1108では、補間条件の変更指示の内容が、補正ボタンの押下であるかどうかが判定される。入力された制御信号が、特定のキーフレームについて「補正ON」のユーザ操作がなされたことを示す場合にはS1109に進む。一方、それ以外のユーザ操作を示す場合には、当該ユーザ操作に係る変更内容を反映した上で補間処理を再実行するべく、S1105に戻る。
S1109では、カメラパス作成部404は、「補正ON」が指示されたキーフレームについてのフレームの二重登録を行う。例えば、前述の図10(a)のUI画面のようにKF2について「補正ON」となった場合は、前述のとおりKF2’を二重登録する。キーフレームの二重登録が完了すると、S1105に戻り、補間処理が再実行される。そして、当該再実行によって得られた新たな補間曲線が表示装置104に出力され、図10(b)のUI画面上に表示されることになる。
以上が、本実施形態に係る、カメラパス情報の作成・編集時の処理の流れである。
<変形例>
先の実施形態では、表示された補間処理結果に基づき、オーバーシュートの発生の有無をオペレータが判断していた。しかしながら、オペレータの目視判断に代えて、オーバーシュートの発生の有無を、S1105で得られた補間処理の結果を解析することで自動で検知するようにしてもよい。例えば、前述の図8に示したような地面へ大きく潜り込むようなオーバーシュートであれば、補間曲線における中間フレームにおける仮想視点の位置を表すZ座標の、その隣接するキーフレームにおける仮想視点の位置を表すZ座標に対する変化量や変化速度が閾値を超えていないかを判定することで検知可能である。この場合の閾値としては、変化量であれば5.0m、変化速度であれば3.0m/秒といった値を経験則などから予め決めておけばよい。さらには、中間フレームにおける仮想視点のZ座標が3次元空間の範囲から外れた場合、具体的にはZ座標がマイナス値になった場合にオーバーシュートが発生したと判定してもよい。このような補間曲線における位置座標の変化に基づいて、オーバーシュートの発生を検知した場合に、その事実を示すメッセージをGUIに表示するなどして、オペレータに対し補正処理の実行指示を促すようにしてもよい。
先の実施形態では、表示された補間処理結果に基づき、オーバーシュートの発生の有無をオペレータが判断していた。しかしながら、オペレータの目視判断に代えて、オーバーシュートの発生の有無を、S1105で得られた補間処理の結果を解析することで自動で検知するようにしてもよい。例えば、前述の図8に示したような地面へ大きく潜り込むようなオーバーシュートであれば、補間曲線における中間フレームにおける仮想視点の位置を表すZ座標の、その隣接するキーフレームにおける仮想視点の位置を表すZ座標に対する変化量や変化速度が閾値を超えていないかを判定することで検知可能である。この場合の閾値としては、変化量であれば5.0m、変化速度であれば3.0m/秒といった値を経験則などから予め決めておけばよい。さらには、中間フレームにおける仮想視点のZ座標が3次元空間の範囲から外れた場合、具体的にはZ座標がマイナス値になった場合にオーバーシュートが発生したと判定してもよい。このような補間曲線における位置座標の変化に基づいて、オーバーシュートの発生を検知した場合に、その事実を示すメッセージをGUIに表示するなどして、オペレータに対し補正処理の実行指示を促すようにしてもよい。
さらには、オーバーシュートが検知された場合に、当該オーバーシュートが抑制されるように補間条件を変更して、補間処理を自動で再実行するようにしてもよい。これにより、オペレータの負担をより軽減することができる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100 画像処理システム
101 撮像装置
102 画像処理装置
103 視点入力装置
104 表示装置
101 撮像装置
102 画像処理装置
103 視点入力装置
104 表示装置
Claims (16)
- 複数の撮像装置が行う撮像により得られる複数の撮像画像に基づいて生成される仮想視点映像に係る仮想視点を指定するためのユーザ操作に基づいて決定される前記仮想視点の位置及び前記仮想視点からの視線方向を表すパラメータと、前記複数の撮像装置により撮像が行われる期間における時刻とが対応付けられたキーフレームを生成する第1の生成手段と、
前記第1の生成手段により生成される複数のキーフレームが所定の条件を満たす場合、新たなキーフレームを生成する第2の生成手段と、
前記第1の生成手段及び前記第2の生成手段により生成される複数のキーフレームに基づいて、前記仮想視点の変遷を表す仮想視点情報を生成する第3の生成手段と、
を有することを特徴とする情報処理装置。 - 前記所定の条件は、前記第1の生成手段により生成される複数のキーフレームに基づいて生成される仮想視点情報により表される仮想視点の位置及び仮想視点からの視線方向の少なくともいずれかの変遷が、特定の変化を表すことであることを特徴とする請求項1に記載の情報処理装置。
- 前記第2の生成手段は、前記第1の生成手段により生成される複数のキーフレームが前記所定の条件を満たす場合、前記第1の生成手段により生成される複数のキーフレームに対応付けられた時刻とは異なる時刻が対応付けられたキーフレームを新たに生成することを特徴とする請求項1又は2に記載の情報処理装置。
- 前記第2の生成手段は、前記第1の生成手段により生成される複数のキーフレームが前記所定の条件を満たす場合、前記第1の生成手段により生成される複数のキーフレームのうち少なくとも一つのキーフレームに対応付けられた時刻と同一の時刻が対応付けられたキーフレームを新たに生成することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
- 前記第3の生成手段は、スプライン補間又はベジェ補間を用いて前記仮想視点情報を生成することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
- グラフィカルユーザインタフェースを制御する制御手段をさらに備え、
前記制御手段は、前記第1の生成手段及び前記第2の生成手段により生成される複数のキーフレームに基づいて生成される仮想視点情報により表される前記仮想視点の位置及び前記仮想視点からの視線方向の変遷を識別可能な情報を、前記グラフィカルユーザインタフェースに表示する、
ことを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。 - 前記第2の生成手段は、前記第1の生成手段により生成される複数のキーフレームが所定の条件を満たし、且つ新たなキーフレームを生成するための指示が前記グラフィカルユーザインタフェースを介して入力された場合に、新たなキーフレームを生成することを特徴とする請求項6に記載の情報処理装置。
- 前記制御手段は、前記第1の生成手段により生成される複数のキーフレームが所定の条件を満たすことを示す情報を前記グラフィカルユーザインタフェースに表示することを特徴とする請求項6又は7に記載の情報処理装置。
- 前記第1の生成手段により生成される複数のキーフレームが所定の条件を満たすかを判定する判定手段をさらに有し、
前記第2の生成手段は、前記判定手段による判定の結果に基づいて、新たなキーフレームを生成する
ことを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。 - 前記判定手段は、前記第1の生成手段により生成される複数のキーフレームに基づいて生成される仮想視点情報において、前記複数のキーフレームに対応付けられた時刻とは異なる所定の時刻に対応する仮想視点の位置に基づいて、前記第1の生成手段により生成される複数のキーフレームが所定の条件を満たすかを判定することを特徴とする請求項9に記載の情報処理装置。
- 前記判定手段は、前記第1の生成手段により生成される複数のキーフレームに基づいて生成される仮想視点情報において、前記複数のキーフレームに対応付けられた時刻とは異なる時刻を含む所定の期間に対応する仮想視点の位置の変化量に基づいて、前記第1の生成手段により生成される複数のキーフレームが所定の条件を満たすかを判定することを特徴とする請求項10に記載の情報処理装置。
- 前記判定手段は、前記第1の生成手段により生成される複数のキーフレームに基づいて生成される仮想視点情報において、前記複数のキーフレームに対応付けられた時刻とは異なる時刻を含む所定の期間に対応する仮想視点の位置の変化速度に基づいて、前記第1の生成手段により生成される複数のキーフレームが所定の条件を満たすかを判定することを特徴とする請求項10又は11に記載の情報処理装置。
- 前記判定手段は、前記所定の時刻に対応する仮想視点の位置が、前記第1の生成手段により生成される複数のキーフレームが所定の条件を満たすと判定することを特徴とする請求項10乃至12のいずれか1項に記載の情報処理装置。
- 前記第3の生成手段により生成される仮想視点情報に基づいて、仮想視点映像を生成する第4の生成手段をさらに有することを特徴とする請求項1乃至13のいずれか1項に記載の情報処理装置。
- 複数の撮像装置が行う撮像により得られる複数の撮像画像に基づいて生成される仮想視点映像に係る仮想視点を指定するためのユーザ操作に基づいて決定される前記仮想視点の位置及び前記仮想視点からの視線方向を表すパラメータと、前記複数の撮像装置により撮像が行われる期間における時刻とが対応付けられたキーフレームを生成する第1の生成工程と、
前記第1の生成工程において生成される複数のキーフレームが所定の条件を満たす場合、新たなキーフレームを生成する第2の生成工程と、
前記第1の生成工程及び前記第2の生成工程において生成される複数のキーフレームに基づいて、前記仮想視点の変遷を表す仮想視点情報を生成する第3の生成工程と、
を有することを特徴とする情報処理方法。 - コンピュータを、請求項1乃至14のいずれか1項に記載の情報処理装置として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020168519A JP2022060815A (ja) | 2020-10-05 | 2020-10-05 | 情報処理装置、情報処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020168519A JP2022060815A (ja) | 2020-10-05 | 2020-10-05 | 情報処理装置、情報処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022060815A true JP2022060815A (ja) | 2022-04-15 |
Family
ID=81125315
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020168519A Pending JP2022060815A (ja) | 2020-10-05 | 2020-10-05 | 情報処理装置、情報処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022060815A (ja) |
-
2020
- 2020-10-05 JP JP2020168519A patent/JP2022060815A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111050210B (zh) | 执行操作的方法、视频处理***及非瞬态计算机可读介质 | |
JP7051457B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
KR20070086037A (ko) | 장면 간 전환 방법 | |
US11694313B2 (en) | Computer-generated image processing including volumetric scene reconstruction | |
US11995784B2 (en) | Image processing device and image processing method | |
US11689815B2 (en) | Image modification of motion captured scene for reconstruction of obscured views using uncoordinated cameras | |
JP7224350B2 (ja) | 画像キャプチャ装置及び画像キャプチャ方法 | |
JP2021197082A (ja) | 情報処理装置、情報処理装置の制御方法及びプログラム | |
JP2022014358A (ja) | 情報処理装置、情報処理装置の制御方法およびプログラム | |
US11758112B2 (en) | Information processing apparatus, control method, and storage medium | |
JP2022060815A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2022043539A (ja) | 画像処理装置、画像処理システム、画像処理方法、及びプログラム | |
JP2022029239A (ja) | 画像処理装置、画像処理方法、およびプログラム | |
JP3575469B2 (ja) | 合成動画像生成装置および合成動画像生成方法 | |
US11393155B2 (en) | Method for editing computer-generated images to maintain alignment between objects specified in frame space and objects specified in scene space | |
WO2023100703A1 (ja) | 画像制作システム、画像制作方法、プログラム | |
US11682175B2 (en) | Previsualization devices and systems for the film industry | |
WO2020121844A1 (en) | Image processing device, image processing method, and program | |
JP2022103836A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2022094788A (ja) | 生成装置、生成方法、及び、プログラム | |
JP2023026244A (ja) | 画像生成装置および画像生成方法、プログラム |