(57)【要約】【課題】ユーザに作業負荷をかけることなく、仮想ライトの位置や向きを、簡便な方法でより柔軟に設定することをできる。【解決手段】入力動画像データに含まれる複数フレームのうち少なくとも１つのフレームに対して、仮想ライトの動きを規定する第１のモードと、第１のモードとは異なる仮想ライトの動きを規定する第２のモードとを少なくとも含む複数の動作モードのうち、１つの動作モードを選択する選択手段と、選択手段により選択された動作モードに基づいて、仮想ライトのパラメータを取得する取得手段と、取得手段により取得された仮想ライトのパラメータに基づいて、複数フレームに設定する仮想ライトのパラメータを導出する導出手段と、導出手段により導出された仮想ライトのパラメータに基づいて、複数フレームそれぞれに対して仮想ライトによる照明効果を加えるライティング処理を実行する実行手段と、を備える。【選択図】図３
2019046055.tif 000002
【特許請求の範囲】
【請求項１】
入力動画像データに含まれる複数フレームのうち少なくとも１つのフレームに対して、仮想ライトの動きを規定する第１のモードと、前記第１のモードとは異なる前記仮想ライトの動きを規定する第２のモードとを少なくとも含む複数の動作モードのうち、１つの動作モードを選択する選択手段と、
前記選択手段により選択された動作モードに基づいて、前記仮想ライトのパラメータを取得する取得手段と、
前記取得手段により取得された前記仮想ライトのパラメータに基づいて、前記複数フレームに設定する前記仮想ライトのパラメータを導出する導出手段と、
前記導出手段により導出された前記仮想ライトのパラメータに基づいて、前記複数フレームそれぞれに対して前記仮想ライトによる照明効果を加えるライティング処理を実行する実行手段と、を備える
ことを特徴とする画像処理装置。
【請求項２】
前記入力動画像データに含まれる前記複数フレームそれぞれを、前記導出手段により前記導出された前記仮想ライトのパラメータに基づき前記ライティング処理が施された前記複数フレームそれぞれに置き換えて得られる、出力動画像データを出力する出力手段をさらに備える
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記導出手段は、
前記仮想ライトの位置または方向が前記動作モードに従って時間軸上で変化するように、前記複数フレームそれぞれに設定する前記仮想ライトのパラメータを導出する
ことを特徴とする請求項１または請求項２に記載の画像処理装置。
【請求項４】
前記動作モードには少なくとも、前記仮想ライトをカメラに追従させるカメラ基準モードと、前記仮想ライトを被写体に追従させる被写体基準モードと、前記仮想ライトの動作がカメラや被写体の動作に依存しないシーン基準モードと、が含まれる
ことを特徴とする請求項１から請求項３のうちのいずれか１項に記載の画像処理装置。
【請求項５】
前記入力動画像データを解析して該入力動画像データについて設定可能な前記動作モードを決定し、前記設定可能な前記動作モードを示す選択肢情報を生成する生成手段をさらに備え、
前記選択手段は、
前記選択肢情報により示される前記動作モードの中から、１つの動作モードを選択する
ことを特徴とする請求項１から請求項４のうちのいずれか１項に記載の画像処理装置。
【請求項６】
前記生成手段は、
前記入力動画像データを撮像により取得したカメラの設置状態に応じて、該入力動画像データについて設定可能な前記動作モードを決定する
ことを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記生成手段は、
前記入力動画像データから被写体の位置姿勢を示す情報が取得できるか否かに応じて、該入力動画像データについて設定可能な前記動作モードを決定する
ことを特徴とする請求項５または請求項６に記載の画像処理装置。
【請求項８】
ユーザの指示に基づき、前記入力動画像データに含まれる前記複数フレームのうち少なくとも１つのフレームに対して、前記仮想ライトのパラメータを設定するパラメータ設定手段をさらに備え、
前記取得手段は、
前記選択手段により選択された動作モードに基づいて、前記パラメータ設定手段によって設定された前記仮想ライトのパラメータを座標変換し、前記座標変換された前記仮想ライトのパラメータを取得する
ことを特徴とする請求項１から請求項７のうちのいずれか１項に記載の画像処理装置。
【請求項９】
時間軸上で連続する複数フレームが、前記ライティング処理の対象とされ、
前記ライティング処理の対象とされる前記複数フレームを、ユーザの指示に基づき指定する指定手段をさらに備える
ことを特徴とする請求項１から請求項８のうちのいずれか１項に記載の画像処理装置。
【請求項１０】
入力動画像データに含まれる複数フレームのうち少なくとも１つのフレームに対して、仮想ライトの動きを規定する第１のモードと、前記第１のモードとは異なる前記仮想ライトの動きを規定する第２のモードとを少なくとも含む複数の動作モードのうち、１つの動作モードを選択する選択ステップと、
前記選択された動作モードに基づいて、前記仮想ライトのパラメータを取得する取得ステップと、
前記取得された前記仮想ライトのパラメータに基づいて、前記複数フレームに設定する前記仮想ライトのパラメータを導出する導出ステップと、
前記導出された前記仮想ライトのパラメータに基づいて、前記複数フレームそれぞれに対して前記仮想ライトによる照明効果を加えるライティング処理を実行する実行ステップと、を含む
ことを特徴とする画像処理方法。
【請求項１１】
コンピュータを、請求項１から請求項９のうちのいずれか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像画像に対して仮想的な照明効果を加えるための仮想ライティング処理に関する。
【背景技術】
【０００２】
従来から、動画像に仮想的な照明効果を加える仮想ライティング処理に関する技術として、画像の３次元空間情報を用いたハイライト生成技術が知られている（特許文献１参照）。特許文献１には、画像（動画）中の２つ以上のキーフレームに対して、ユーザが加えたいハイライトの位置や形状を画像上で指定し、画像の３次元空間情報に基づいて画像中の被写体表面上にハイライトを生成する方法が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−１１１００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載された方法は、被写体を追従して照らす仮想ライトの位置姿勢を補間により求めるものである。しかし、被写体の動きと無関係に移動するような仮想ライトにより生じるハイライトに関しては、その位置や形状を補間により求めることはできない。被写体の動きと無関係に移動するような仮想ライトとは、例えば、画像を撮像したカメラに追従して移動するライトや、画像に写っているシーン中の特定の位置に存在するライトである。したがって、特許文献１に記載された方法では、仮想ライトの動き方によっては、該仮想ライトにより生じるハイライトの位置や形状をユーザが推測してフレーム毎に指定しなければならず、非常に手間がかかるという課題があった。
【０００５】
そこで本発明は、仮想ライトの動き方を複数パターンから選択可能とし、且つ動作モードに応じて移動する仮想ライトの位置姿勢を簡便に設定することを可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明による画像処理装置は、入力動画像データに含まれる複数フレームのうち少なくとも１つのフレームに対して、仮想ライトの動きを規定する第１のモードと、第１のモードとは異なる仮想ライトの動きを規定する第２のモードとを少なくとも含む複数の動作モードのうち、１つの動作モードを選択する選択手段と、選択手段により選択された動作モードに基づいて、仮想ライトのパラメータを取得する取得手段と、取得手段により取得された仮想ライトのパラメータに基づいて、複数フレームに設定する仮想ライトのパラメータを導出する導出手段と、導出手段により導出された仮想ライトのパラメータに基づいて、複数フレームそれぞれに対して仮想ライトによる照明効果を加えるライティング処理を実行する実行手段と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明により、仮想ライトの動き方を複数パターンから選択でき、且つ動作モードに応じて移動する仮想ライトの位置姿勢を簡便に設定することができる。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態に係る画像処理装置のハードウェア構成を示す図。
【図２】第１実施形態に係る画像処理装置の内部構成を示す機能ブロック図。
【図３】第１実施形態に係る出力動画像データ生成処理を示すフローチャート。
【図４】第１実施形態に係る、仮想ライトの設定を行うためのＵＩ画面の例を示す図。
【図５】動作モードに応じた仮想ライトの動作の例を示す図。
【図６】第２実施形態に係る画像処理装置の内部構成を示す機能ブロック図。
【図７】カメラの設置状態及び取得可能な位置姿勢情報と動作モードの選択肢との関係の例を示す図。
【図８】カメラの設置状態や各種センサにより取得した位置姿勢情報を利用する設定を行うためのＵＩ画面の例を示す図。
【図９】選択肢情報の例を示す図。
【図１０】第２実施形態に係る出力動画像データ生成処理を示すフローチャート。
【図１１】第２実施形態に係る、仮想ライトの設定を行うためのＵＩ画面の例を示す図。
【図１２】第３実施形態に係る、仮想ライトの設定を行うためのＵＩ画面の例を示す図。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を必ずしも限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成については、同じ符号を付して説明する。
【００１０】
［実施形態１］
本実施形態では、動画像中の編集対象とするフレームの範囲（編集範囲と呼ぶ）の先頭フレームに対して設定された仮想ライトの位置姿勢を示す情報を、仮想ライトの動きを規定する動作モードに応じた座標空間において編集範囲内の各フレームに伝搬する。それにより、動作モードごとにふるまいの異なる仮想ライトを設定可能とする。本実施形態では、カメラ基準モード、被写体基準モード、及びシーン基準モードの３種から仮想ライトの動作モードを選択することができる。それぞれの動作モードについては、後述する。
【００１１】
図１は、本実施形態における画像処理装置のハードウェア構成例を示す図である。画像処理装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、ＨＤＤ１０４、ＨＤＤ  Ｉ／Ｆ１０５、入力Ｉ／Ｆ１０６、出力Ｉ／Ｆ１０７、及びシステムバス１０８で構成される。
【００１２】
ＣＰＵ１０１は、ＲＡＭ１０２をワークメモリとして、ＲＯＭ１０３及びハードディスクドライブ（ＨＤＤ）１０４に格納されたプログラムを実行し、システムバス１０８を介して後述する各部を制御する。ＨＤＤインタフェイス（Ｉ／Ｆ）１０５は、ＨＤＤ１０４や光ディスクドライブなどの二次記憶装置を接続する、例えばシリアルＡＴＡ（ＳＡＴＡ）等のインタフェイスである。ＣＰＵ１０１は、ＨＤＤＩ／Ｆ１０５を介して、ＨＤＤ１０４からのデータ読み出し、及びＨＤＤ１０４へのデータ書き込みが可能である。さらにＣＰＵ１０１は、ＨＤＤ１０４に格納されたデータをＲＡＭ１０２に展開し、同様に、ＲＡＭ１０２に展開されたデータをＨＤＤ１０４に保存することが可能である。そしてＣＰＵ１０１は、ＲＡＭ１０２に展開したデータ（プログラム等）を実行することができる。入力Ｉ／Ｆ１０６は、入力装置１０９を接続する。入力装置１０９は、マウスやキーボード等の入力デバイスであり、入力Ｉ／Ｆ１０６は、例えばＵＳＢ等のシリアルバスインタフェイスである。ＣＰＵ１０１は、入力Ｉ／Ｆ１０６を介して入力装置１０９から各種信号を受け取ることが可能である。出力Ｉ／Ｆ１０７は、ディスプレイ１１０等の表示デバイスを接続する、例えばＤＶＩ等の映像出力インタフェイスである。ＣＰＵ１０１は、出力Ｉ／Ｆ１０７を介してディスプレイ１１０にデータを送り、表示を実行させることができる。なお、ＵＳＢやＩＥＥＥ１３９４等の双方向通信インタフェイスを利用すれば、入力Ｉ／Ｆ１０６と出力Ｉ／Ｆ１０７とを一つにまとめることができる。
【００１３】
図２は、第１実施形態に係る画像処理装置１００の内部構成を示す機能ブロック図である。画像データ取得部２０１は、ＨＤＤ１０４等の記憶装置から、複数のフレームの各々に対応する画像データ（フレーム画像データ）と各画像データに対応する被写体の３次元情報とを含む動画像データを取得する。被写体の３次元情報とは、３次元空間中における被写体の位置と形状とを表す情報である。本実施形態では、被写体の表面形状を表すポリゴンデータを被写体の３次元情報として用いる。なお、被写体の３次元情報は、フレーム画像（フレーム画像データによって示される画像）における被写体の位置と形状とを特定できるものであればよく、例えば、ＮＵＲＢＳ曲面などで表現されるパラメトリックモデルでもよい。取得された動画像データは、入力動画像データとしてパラメータ設定部２０２に送られる。
【００１４】
パラメータ設定部２０２は、ユーザの指示に基づき入力動画像データに含まれる複数フレームのうち編集の対象とする編集範囲を設定する。さらに、編集範囲内のフレームを代表するキーフレームに対して仮想ライトの動きを規定する動作モードとライティングパラメータを設定する。詳細は後述する。設定された編集範囲及び仮想ライトの動作モードとライティングパラメータは、入力動画像データと対応付けられて画像データ生成部２０３に送られる。
【００１５】
画像データ生成部２０３は、キーフレームに対して設定された仮想ライトの動作モードとライティングパラメータに基づき、入力動画像データ中の編集範囲内の各フレームに対して仮想ライトを設定する。また、画像データ生成部２０３は、各フレームに対して設定した仮想ライトと、各フレームの画像データと、各画像データに対応する被写体の３次元情報とを用いて、仮想ライトによるライティングを加えた出力フレーム画像データを生成する。そして、入力動画像データ中の編集範囲内の画像データ（入力フレーム画像データ）を出力フレーム画像データで置き換え、これを出力動画像データとする。各フレームに対する仮想ライトの設定方法、及び、出力フレーム画像データの生成方法についての詳細は後述する。生成された出力動画像データは、ＨＤＤ１０４等の記憶装置に送られて記憶されるとともに、ディスプレイ１１０に送られて表示される。
【００１６】
図３は、第１実施形態に係る出力動画像データ生成処理を示すフローチャートである。図３に示す手順を記述した、コンピュータで実行可能なプログラムを、ＲＯＭ１０３あるいはＨＤＤ１０４からＲＡＭ１０２上に読み込んだ後に、ＣＰＵ１０１によって該プログラムを実行することによって、出力動画像データ生成処理が実現される。
【００１７】
ステップＳ３０１において、画像データ取得部２０１は、ＨＤＤ１０４等の記憶装置から入力動画像データを取得し、取得した入力動画像データをパラメータ設定部２０２に渡す。
【００１８】
ステップＳ３０２において、パラメータ設定部２０２は、画像データ取得部２０１から受け取った入力動画像データに対して編集範囲を設定する。本実施形態では、編集範囲を先頭フレームの時刻ｔ０と、時刻ｔ０からの経過時間ｄｔとで表す。図４には、入力動画像データに対して仮想ライトの設定を行うためのユーザインタフェイス（ＵＩ）画面４００が示されている。時間軸４１１は、入力動画像データの全フレームに対する時間軸であり、時間軸上の「０」は先頭フレームの時刻を表し、「ｘｘｘｘ」は最終フレームの時刻を表す。マーカ４１２，４１３はそれぞれ、編集範囲の先頭フレームと末尾フレームの位置を表す。先頭フレーム入力欄４２１と範囲入力欄４２２はそれぞれ、先頭フレームと編集範囲とを指定するための入力欄である。パラメータ設定部２０２は、図４（ａ）に示すＵＩ画面４００をディスプレイ１１０に表示し、先頭フレーム入力欄４２１、範囲入力欄４２２に入力された値をそれぞれ、時刻ｔ０、時刻ｄｔとして設定する。なお、時刻ｔ０に替えて個々のフレームを識別するフレームＩＤを用いて編集範囲の先頭フレームを設定してもよいし、経過時間ｄｔに替えて編集範囲内に含めるフレーム数を設定してもよい。また、編集範囲内のいずれかの１フレームと、該フレームを起点として前後に連続するフレームの個数とを編集範囲として設定してもよい。
【００１９】
ステップＳ３０３において、パラメータ設定部２０２は、ステップＳ３０２で設定された編集範囲の先頭フレーム（すなわち、時刻ｔ０のフレーム）をキーフレームとし、該キーフレームの画像データをディスプレイ１１０に出力する。すると、ＵＩ画面４００上の画像表示欄４１４にキーフレームの画像が表示される。ユーザは、入力装置１０９を介してＵＩ画面４００を操作することで、以降で説明する仮想ライトの設定を行うことができる。
【００２０】
ステップＳ３０４において、パラメータ設定部２０２は、ＵＩ画面４００上の仮想ライト選択リスト４３１においてユーザにより選択された仮想ライトを、以降で説明する動作モード及びライティングパラメータの設定対象に決定する。仮想ライト選択リスト４３１では、プルダウンボタン（図４（ａ）に示す黒色の逆三角形のボタン）が押下されると、設定対象として選択可能な仮想ライトの一覧がリスト表示され、ユーザはその中から１つを選択することができる。ここで、設定対象として選択可能な仮想ライトとは、例えば、新規仮想ライトや、画像表示欄４１４に表示中のキーフレームに対して既に設定されている仮想ライトである。なお、上述したリストから仮想ライトを選択する以外に、ラジオボタンやチェックボックスを用いて仮想ライトを選択したり、個々の仮想ライトを識別する仮想ライトＩＤを入力して仮想ライトを選択したりしてもよい。また、設定対象とする仮想ライトを特定できれば他のＵＩ画面を介して仮想ライトを選択するようにしてもよい。また、複数の仮想ライトが同時に選択可能であってもよい。
【００２１】
ステップＳ３０５において、パラメータ設定部２０２は、図４（ａ）に示すＵＩ画面上の動作モード選択リスト４３２においてユーザにより選択された動作モードを、ステップＳ３０４で選択した仮想ライトの動作モードとして設定する。本実施形態では、上述したように、カメラ基準モード、被写体基準モード、及びシーン基準モードの３種から動作モードを選択可能である。図５（ａ）〜（ｃ）に、各モードにおける仮想ライトの動作の例を示す。図５（ａ）に示すカメラ基準モードは、仮想ライト５０１がカメラに追従して動くモードである。つまりカメラの位置に応じて仮想ライト５０１の位置が決定されるモードである。図５（ａ）において、カメラ５０２，５０３，５０４はそれぞれ、時刻ｔ０，ｔ，ｔ０＋ｄｔのフレーム画像を撮像したカメラを示している。また、図５（ａ）における矢印は、カメラに追従して仮想ライト５０１が移動する様子を示している。図５（ｂ）に示す被写体基準モードは、仮想ライト５０１が被写体に追従して動くモードである。つまり被写体の位置に応じて仮想ライト５０１の位置が決定されるモードである。図５（ｂ）において、被写体５０５，５０６，５０７はそれぞれ、時刻ｔ０，ｔ，ｔ０＋ｄｔにおける被写体の様子を示している。図５（ｂ）における矢印は、被写体に追従して仮想ライト５０１が移動する様子を示している。図５（ｃ）に示すシーン基準モードは、仮想ライト５０１がシーン（撮影現場）中に独立して存在し、その動きがカメラや被写体の動きに依存しないモードである。つまりカメラや被写体以外に指定される位置に応じて仮想ライト５０１の位置が決定されるモードである。これらの動作モードは、動作モード選択リスト４３２のプルダウンボタンが押下された際にリスト表示され、ユーザはその中から１つを選択することができる。図４（ｂ）に、動作モード選択リスト４３２のプルダウンボタンが押下された際の表示例を示す。なお、動作モードは１つに特定できれば良く、プルダウンリストから動作モードを選択する以外に、ラジオボタン等を用いて動作モードを選択するようにしてもよい。
【００２２】
選択された仮想ライトの動作モードが被写体基準モードである場合には、基準とする被写体を併せて設定する。例えば、画像表示欄４１４に表示されているキーフレーム画像上において、基準としたい被写体（以下、基準被写体と呼ぶ）に相当する領域をユーザがマウスなどの入力デバイスを用いて選択し、該領域の画像データを基準被写体情報として記憶する。基準被写体情報はフレーム画像上で被写体の位置姿勢を特定できる情報であればよく、上記以外の方法を用いて設定されてもよい。
【００２３】
ステップＳ３０６において、パラメータ設定部２０２は、キーフレームに対して、ステップＳ３０４で選択した仮想ライトに関するライティングパラメータを設定する。ここで、ライティングパラメータとは、位置姿勢（３次元空間中での位置と向き）及び発光特性（色、明るさ、配光特性、照射範囲など）を表すパラメータである。本実施形態では、時刻ｔにおける仮想ライトの位置姿勢を示す情報（以下、位置姿勢情報と呼ぶ）として、時刻ｔにおけるカメラ座標系で表された位置座標ｐ（ｔ）及び方向ベクトルｖ（ｔ）を用いる。ここで、カメラ座標系とは、フレーム画像を撮像したカメラの位置姿勢に基づく座標系である。図５（ａ）を例に用いると、時刻ｔ０，ｔ，ｔ０＋ｄｔにおけるカメラの位置Ｏｃを原点とし、カメラの水平右向き方向、垂直上向き方向、正面方向をそれぞれ、Ｘｃ軸、Ｙｃ軸、Ｚｃ軸とする座標系が、各時刻におけるカメラ座標系を表している。
【００２４】
ＵＩ画面４００の位置姿勢入力欄４３３には、キーフレームに対する仮想ライトの位置姿勢情報ｐ（ｔ０）、ｖ（ｔ０）を設定するための項目が配置されている。図４（ａ）に示す例では、位置姿勢情報として、仮想ライトの時刻ｔ０における位置座標（ｘｙｚ値）と向き（ｘｙｚ値）とが設定可能である。また、ＵＩ画面４００の発光特性設定欄４３４には、仮想ライトの発光特性を設定するための項目が配置されている。図４（ａ）に示す例では、発光特性として、配光の種類（点光源、平行光源）、ビーム角度、明るさ、及び色温度が設定可能である。表示欄４４１には、仮想ライトのｘｚ座標系における設定状態を示すイメージが表示され、表示欄４４２には、仮想ライトのｘｙ座標系における設定状態を示すイメージが表示される。
【００２５】
ステップＳ３０７において、画像データ生成部２０３は、ステップＳ３０２で設定した編集範囲内の各フレームに対して、ステップＳ３０４で選択した仮想ライトに関するライティングパラメータを設定する。このとき、画像データ生成部２０３は、ステップＳ３０５で設定した動作モードとステップＳ３０６でキーフレームに対して設定したライティングパラメータとに基づき、各フレームに対してライティングパラメータを設定する。本実施形態では、仮想ライトの動作モード及び発光特性は編集範囲内で一定であるものとする。よって、編集範囲内の全フレームに対して、ステップＳ３０５で設定した動作モードと同一の動作モードと、ステップＳ３０６で設定した発光特性と同一の発光特性とが設定されるものとする。また、仮想ライトの位置姿勢情報は、ステップＳ３０５で設定した動作モードに応じて、ステップＳ３０６でキーフレームに対して設定した位置姿勢情報に基づき設定する。以下、編集範囲内の各フレームに対する位置姿勢情報の設定について、仮想ライトの動作モードごとに説明する。
【００２６】
［カメラ基準モード］
動作モードがカメラ基準モードである仮想ライトについては、編集範囲内においてフレーム画像を撮像したカメラに対する相対位置関係が保たれるように、各フレームにおける位置姿勢情報が設定される。あるフレーム画像を撮像した際のカメラ座標系で表されたライトの位置座標ｐや方向ベクトルｖは、そのフレーム画像を撮像したカメラに対する相対的な位置座標及び向きを表している。したがって、ステップＳ３０５でカメラ基準モードが選択された場合には、ステップＳ３０６でキーフレームに対して設定された仮想ライトの位置座標ｐ（ｔ０）及び方向ベクトルｖ（ｔ０）と同一の値が、編集範囲内の各フレームに対して設定される。具体的には、位置座標ｐ（ｔ０）及び方向ベクトルｖ（ｔ０）と同一の値が、各フレームにおける仮想ライトの位置座標ｐ（ｔ）及び方向ベクトルｖ（ｔ）として設定される。
【００２７】
［被写体基準モード］
動作モードが被写体基準モードである仮想ライトについては、編集範囲内において基準被写体に対する相対位置関係が保たれるように、各フレームにおける位置姿勢情報が設定される。
【００２８】
まず、ステップＳ３０６においてキーフレームに対して設定された（キーフレームカメラ座標系で表された）仮想ライトの位置座標ｐ（ｔ０）と方向ベクトルｖ（ｔ０）が、被写体座標系での値ｐｏ（ｔ０）、ｖｏ（ｔ０）に変換される。これにより、ステップＳ３０５で設定した動作モードに基づく、位置座標ｐ（ｔ０）と方向ベクトルｖ（ｔ０）とが取得される。被写体座標系とは、基準被写体の位置姿勢に基づく座標系である。図５（ｂ）に示される被写体５０５，５０６，５０７はそれぞれ、時刻ｔ０，ｔ，ｔ０＋ｄｔにおける基準被写体である。そして、各時刻における被写体座標系は、各時刻における基準被写体の位置Ｏｏを原点とし、基準被写体の水平右向き方向、垂直上向き方向、正面方向をそれぞれ、Ｘｏ軸、Ｙｏ軸、Ｚｏ軸とする座標系である。
【００２９】
被写体座標系で表された位置座標や方向ベクトルは、基準被写体に対する相対的な位置座標及び向きを表している。そのため、編集範囲内の各フレームにおいて、それぞれのフレームにおける被写体座標系で仮想ライトの位置座標及び向きを表す際は、それらの値がキーフレームにおける値と同一となるように設定すればよい。それにより、キーフレーム以外のフレームにおいても、基準被写体に対する仮想ライトの相対位置関係が保たれることとなる。従って、キーフレームにおける被写体座標系で表された位置座標ｐｏ（ｔ０）及び方向ベクトルｖｏ（ｔ０）と同一の値が、編集範囲内の各フレームにおける被写体座標系で表された仮想ライトの位置座標ｐｏ（ｔ）及び方向ベクトルｖｏ（ｔ）に設定される。そして、これらの位置姿勢情報ｐｏ（ｔ）（＝ｐｏ（ｔ０））、ｖｏ（ｔ）（＝ｖｏ（ｔ０））を各フレームにおけるカメラ座標系に変換して導出された値が、各フレームにおける仮想ライトの位置座標ｐ（ｔ）及び方向ベクトルｖ（ｔ）として設定される。
【００３０】
一般に、ある座標系（ＸＹＺ座標系）で表された座標（ｘ，ｙ，ｚ)から他の座標系（Ｘ´Ｙ´Ｚ´座標系）で表された座標（ｘ´，ｙ´，ｚ´)への座標変換は、次式で表される。
【００３１】
【数１】
2019046055.tif 000003
【００３２】
ここで、（Ｏ´ｘ，Ｏ´ｙ，Ｏ´ｚ）、（Ｘ´ｘ，Ｘ´ｙ，Ｘ´ｚ）、（Ｙ´ｘ，Ｙ´ｙ，Ｙ´ｚ）、（Ｚ´ｘ，Ｚ´ｙ，Ｚ´ｚ）はそれぞれ、ＸＹＺ座標系で表されたＸ´Ｙ´Ｚ´座標系の原点Ｏ´の座標及びＸ´、Ｙ´、Ｚ´軸方向の単位ベクトルである。式１を用いることで、キーフレームカメラ座標系での位置座標ｐ（ｔ０）及び方向ベクトルｖ（ｔ０）を被写体座標系に変換した、位置座標ｐｏ（ｔ０）及び方向ベクトルｖｏ（ｔ０）が得られる。その際、キーフレーム（すなわち時刻ｔ０）における被写体座標系の原点Ｏｏ及び座標軸Ｘｏ，Ｙｏ，ＺｏをＯ´，Ｘ´，Ｙ´，Ｚ´として式１を用いればよい。また、各フレームにおける被写体座標系からカメラ座標系への変換は、各フレームのカメラ座標系で表された被写体座標系の原点Ｏｏ及び座標軸Ｘｏ，Ｙｏ，Ｚｏ方向の単位ベクトルを用いて、式１の逆変換により求められる。
【００３３】
なお、キーフレームを含む各フレームにおける、カメラ座標系での基準被写体の位置座標と向き（すなわち、カメラ座標系で表された被写体座標系の原点座標及び座標軸方向）は、いずれの方法を用いて取得してもよい。例えば、ステップＳ３０５において記憶した基準被写体情報を用いたテンプレートマッチングや、その他の動体追跡技術を用いて取得してもよい。被写体の位置姿勢取得については本発明の主眼ではないため、詳細な説明を省略する。
【００３４】
［シーン基準モード]
動作モードがシーン基準モードである仮想ライトについては、編集範囲内においてシーン中に設定した基準位置との相対位置関係が保たれるように、各フレームにおける位置姿勢情報が設定される。本実施形態では、キーフレームカメラの位置をシーンの基準位置Ｏｓとし、キーフレームカメラ座標系をシーンの基準座標系（以後、シーン座標系と呼ぶ）として用いる。基準位置に対する仮想ライトの相対位置関係を保つには、先述した被写体基準モード時における被写体座標系をシーン座標系に置き換えて考えればよい。ただし、キーフレームカメラ座標系をシーン座標系として用いる場合、キーフレームカメラ座標系からシーン座標系への位置姿勢情報の変換は不要となる。その理由は、ステップＳ３０６でキーフレームに対して設定された仮想ライトの位置座標ｐ（ｔ０）と方向ベクトルｖ（ｔ０）の値がそのままシーン座標系での仮想ライトの位置座標ｐｓ（ｔ０）及び方向ベクトルｖｓ（ｔ０）となるからである。そして、位置姿勢情報ｐｓ（ｔ０）、ｖｓ（ｔ０）を各フレームにおけるカメラ座標系に変換した値を、各フレームにおける仮想ライトの位置座標ｐ（ｔ）及び方向ベクトルｖ（ｔ）として設定する。シーン座標系（すなわちキーフレームカメラ座標系）から各フレームにおけるカメラ座標系への変換は、キーフレームカメラ座標系で表された各フレームにおけるカメラ座標系の原点Ｏｃ及び座標軸Ｘｃ，Ｙｃ，Ｚｃ方向の単位ベクトルを用いて式１で求められる。各フレームにおけるキーフレームカメラ座標系でのカメラの位置座標と向きは、公知のカメラ位置姿勢推定技術を用いて取得することができる。カメラ位置姿勢推定技術については本発明の主眼ではないため、詳細な説明を省略する。
【００３５】
ステップＳ３０８において、画像データ生成部２０３は、ステップＳ３０２で設定した編集範囲内の各フレームについて、出力フレーム画像データを生成する。このとき、ステップＳ３０１で取得した入力動画像データと、仮想ライトのライティングパラメータとから、仮想的なライティングを加えた出力フレーム画像データが生成される。そして、入力動画像データ中の編集範囲内の画像データを出力フレーム画像データで置き換え、置き換え後の入力動画像データを出力動画像データとする。以下、仮想ライトが設定された入力フレーム画像データから、仮想ライトの照明効果を加えた出力フレーム画像データを生成する方法について説明する。
【００３６】
まず、被写体の３次元情報と仮想ライトのライティングパラメータとに基づき、被写体を構成するポリゴンに関して、ｍ番目の仮想ライトに照らされた際の明るさ（仮想反射強度と呼ぶ）を画素値として記録した画像Ｇｍを生成する。ここで、ｍ＝０，１，・・・，Ｍ−１である。Ｍはフレームに設定されている仮想ライトの個数を表す。以下、上記画像Ｇｍを仮想反射強度画像Ｇｍと呼ぶ。本実施形態では、一般的な投影変換式である式２を用いて３次元空間中におけるポリゴンの頂点座標（ｘ，ｙ，ｚ）を２次元画像上での画素位置（ｉ，ｊ）に変換する。さらに、この頂点に対応する仮想反射強度Ｉを以下の式３〜式７で表わされるフォンの鏡面反射モデルを用いて算出し、仮想反射強度画像Ｇｍの画素位置（ｉ，ｊ）における画素値Ｇｍ（ｉ，ｊ）として格納する。ポリゴン内部に相当する画素については、ポリゴンを構成する各頂点に対応する仮想反射強度Ｉから補間した値を格納する。
【００３７】
【数２】
2019046055.tif 000004
【００３８】
仮想反射強度I = ID + IA + IS    ・・・式３  
拡散反射光成分ID = Id * kd * ( N・L )  ・・・式４  
環境光成分IA = Ia * ka  ・・・式５  
鏡面反射光成分IS = Is * ks * ( L・R )^n  ・・・式６  
反射ベクトルR = −E + 2( N・E )N  ・・・式７  
【００３９】
式２において、ＭｓとＭｐはそれぞれ、入力フレーム画像の解像度や入力フレーム画像を撮像したカメラの画角から定まるスクリーン変換行列と射影変換行列である。また、ｄは画素位置（ｉ，ｊ）における被写体までの奥行き方向の距離に相当する。式３〜式７において、Ｉｄ，Ｉａ，Ｉｓはそれぞれ、拡散反射、環境光、鏡面反射に関する入射光の強さである。Ｎ，Ｌ，Ｅはそれぞれ、法線ベクトル、ライトベクトル（頂点から光源へ向かうベクトル）、視線ベクトル（頂点からカメラへ向かうベクトル）を表す。本実施形態では、ライティングパラメータ中の明るさをＩｄ，Ｉａ，Ｉｓとして用い、ライトの向きｖの逆ベクトルをＬとして用いる。ただし、頂点がライティングパラメータで示される照明範囲外である場合には、Ｉｄ，Ｉａ，Ｉｓの値をゼロとする。また、式３〜式７の拡散反射係数ｋｄ、環境光の反射係数ｋａ、鏡面反射係数ｋｓ及び鏡面反射指数ｎは、被写体に応じて予め対応付けられた値を設定してもよいし、ユーザによって指示された値を設定してもよい。なお、以上で説明した仮想反射強度画像Ｇｍの生成には、コンピュータグラフィクスにおける一般的なレンダリング処理を利用可能である。また、上記の反射モデル以外の反射モデルを用いてもよい。レンダリング処理については本発明の主眼ではないため、詳細な説明を省略する。
【００４０】
次に、入力フレーム画像の画素位置（ｉ，ｊ）における画素値Ｆ（ｉ，ｊ）と、仮想反射強度画像の画素値Ｇｍ（ｉ，ｊ）（ｍ＝０，１，・・・，Ｍ−１）を用い、出力フレーム画像の画素値Ｆ´（ｉ，ｊ）を次式に従い算出する。  
F’(I,j)=F(i,j)+G0(i,j) +G1(i,j) +・・・+GM-1(i,j)    ・・・式８
このようにして出力フレーム画像データが生成される。この時、出力フレーム画像は、仮想ライトの位置姿勢と被写体の形状とに応じて入力フレーム画像の明るさが変更された画像となる。
【００４１】
なお、出力フレーム画像データの生成方法は上記に限らず、他の公知の手法を用いて生成してもよい。例えば、被写体の形状を表すポリゴンデータに入力フレーム画像をテクスチャとしてマッピングし、このテクスチャ付きのポリゴンをライティングパラメータに基づいて照らした状態をレンダリングしてもよい。
【００４２】
ステップＳ３０９において、画像データ生成部２０３は、出力動画像データをディスプレイ１１０へ出力して表示する。ステップＳ３１０において、パラメータ設定部２０２は、入力デバイスを介して編集完了の指示を受け付けると、一連の処理を終了する。編集完了の指示がない場合には、パラメータ設定部２０２は、ステップＳ３０２の処理に戻ってライトの設定を続行する。
【００４３】
以上説明した処理制御を行うことで、仮想ライトの動き方を複数パターン（複数の動作モード）から選択可能となる。また、選択した動作モードに応じて移動する仮想ライトの位置姿勢を簡便に設定することができる。また、キーフレーム以外の各フレームに対する仮想ライトの位置姿勢の設定をユーザが指定する必要がないので、ユーザに作業負荷をかけることがない。
【００４４】
なお、ステップＳ３０３において、キーフレームに対して既に設定されている仮想ライトが存在する場合は、該仮想ライトの各種パラメータとキーフレームの画像データとが画像データ生成部２０３に送られるようにしてもよい。そして、画像データ生成部２０３が、ライティング変更後の画像を生成してディスプレイ１１０に表示してもよい。
【００４５】
また、ステップＳ３０８において、入力動画像データ及び設定された仮想ライトの動作特性やライティングパラメータを、編集履歴データとして出力動画像データに対応付けて記憶してもよい。そのような形態によれば、出力動画像データに対する仮想ライトの再編集が容易となる。
【００４６】
［実施形態２］
第１実施形態では、動作モードをユーザが任意に選択する方法について説明した。しかし、入力動画像データを撮像した際の撮影機材や被写体の条件によっては、被写体やカメラの位置姿勢情報を常に取得できるとは限らない。これらの位置姿勢情報が得られないフレームでは、被写体基準モードやシーン基準モードでの仮想ライトの位置を算出することが困難となる。一方で、ユーザは出力動画像データが表示されるまで仮想ライティング処理が成功するか否かを知ることができず、処理に必要な位置姿勢情報が欠けていた場合には作業の手戻りが発生する。そこで、本実施形態においては、予め動画像データを解析し、各フレームにおいて選択可能な動作モードを限定する例について説明する。なお、本実施形態においても第１実施形態と同様に、カメラ基準モード、被写体基準モード、及びシーン基準モードの３種から動作モードが選択可能であるとする。
【００４７】
図６は、第２実施形態における画像処理装置１００の内部構成を示す機能ブロック図である。画像データ生成部６０４は、第１実施形態における画像データ生成部２０３と同様であるため説明を省略する、以下では、第１実施形態と異なる部分を中心に説明する。
【００４８】
選択肢情報生成部６０１は、ＨＤＤ１０４等の記憶装置から入力動画像データを取得し、当該入力動画像データを解析して選択肢情報を生成する。選択肢情報とは、動画像中の各フレームにおいて選択可能な動作モードを示す情報である。キーフレームに設定された仮想ライトの位置姿勢を編集範囲内の各フレームに伝搬する際、カメラ基準モードにおいては、被写体やカメラの位置姿勢情報を必要としない。一方、被写体基準モードまたはシーン基準モードにおいては、編集範囲内の各フレームにおける被写体またはカメラの位置姿勢情報が必要となる。つまり、カメラ基準モードは、全フレームについて設定可能であるが、被写体基準モード及びシーン基準モードは、必要な位置姿勢情報を取得できるフレームについてのみ設定可能である。したがって、本実施形態では、カメラ基準モードは、常に動作モードの選択肢に追加され、被写体基準モード及びシーン基準モードは、必要な位置姿勢情報を取得できる場合にのみ動作モードの選択肢に追加される。以下、動作モードの選択肢を、単に選択肢と表現する場合がある。なお、必要な位置姿勢情報とは、仮想ライトを点光源とする場合には被写体またはカメラの３次元位置座標と向きである。ただし、仮想ライトを平行光源とする場合には、位置姿勢情報として向きのみが取得できればよい。
【００４９】
被写体の位置姿勢情報が取得できるか否かは、入力動画像データの全フレームに対して予め用意した所望の被写体のテンプレート画像を用いたテンプレートマッチングや、公知の主被写体抽出技術や動体追跡技術を適用することにより判断可能である。例えばテンプレートマッチングを用いる場合には、テンプレート画像とフレーム画像との類似度が予め定めた閾値よりも小さい場合に、当該フレームにおいて被写体の位置姿勢情報を取得できないと判断することができる。
【００５０】
また、カメラの位置姿勢情報が取得できるか否かは、入力動画像データの全フレームに対して公知のカメラ位置姿勢推定技術を適用することにより判断可能である。例えば、推定したカメラ位置姿勢と被写体の３次元情報とを用いてフレーム画像に対する再投影誤差を算出し、この誤差が予め定めた閾値よりも大きい場合に、当該フレーム画像においてカメラの位置姿勢情報を取得できないと判断することができる。
【００５１】
なお、位置姿勢情報の一部または全部として、被写体やカメラに取り付けた加速度センサや位置センサの出力値を用いてもよい。その場合には、常に位置姿勢情報が取得できると判断してもよいし、各種センサが出力する検出成功または検出失敗の信号に基づいて位置姿勢情報の取得の可否を判断してもよい。
【００５２】
また、カメラの設置状態に基づき選択肢を生成してもよい。例えば、カメラが三脚に設置されている場合には、位置及び向き共に時間軸方向に変化せず、シーン座標系（すなわちキーフレームカメラ座標系）から各フレームにおけるカメラ座標系への変換が不要となる。したがって、選択肢情報生成部６０１は、常にシーン基準モードを選択肢に追加する。また例えば、カメラが自由雲台に設置されている場合には、カメラの位置は変化しないので、位置姿勢情報として向きが取得できればシーン座標系からカメラ座標系への変換が可能となる。したがって、その場合には、選択肢情報生成部６０１は、カメラの向きを取得できるか否かに応じてシーン基準モードを選択肢に追加する。また例えば、カメラが直線ドリーレール上に設置されていて向きが変化しない場合は、選択肢情報生成部６０１は、位置が取得できるか否かに応じてシーン基準モードを選択肢に追加する。図７に、カメラの設置状態及び取得可能な位置姿勢情報と動作モードの選択肢との関係の例を示す。
【００５３】
カメラの設置状態や各種センサにより取得した位置姿勢情報を利用する際の設定は、例えば図８に示すＵＩ画面８００を介してユーザが行う。ＵＩ画面８００における入力欄８０１は、選択肢情報を生成したい動画像データのファイルを指定する欄である。入力欄８０２は、被写体の位置姿勢情報の取得方法を設定する欄である。入力欄８０１で指定された動画像データを解析して被写体の位置姿勢情報を取得する場合には、入力欄８０２において「画像から解析（ラジオボタン８０３）」を選択する。また、各種センサの出力値を記録した外部ファイルを参照して被写体の位置姿勢情報を取得する場合には、入力欄８０２において「フィルから読み込み（ラジオボタン８０４）」をチェックする。そして、参照する情報の種別（「位置」、「向き」、または「位置・向き」）と外部ファイルとを指定する。入力欄８０５は、カメラの位置姿勢情報の取得方法を設定する欄である。入力欄８０１で指定された動画像データを解析してカメラの位置姿勢情報を取得する場合には、ユーザは、入力欄８０５において、「画像から解析（ラジオボタン８０６）」を選択する。カメラの設置状態からカメラの位置姿勢情報を取得する場合には、ユーザは、「三脚使用」、「雲台使用」、及び「ドリー」のいずれかをラジオボタン８０７で選択する。また、各種センサの出力値を記録した外部ファイルを参照してカメラの位置姿勢情報を取得する場合には、ユーザは、入力欄８０５において「フィルから読み込み（ラジオボタン８０８）」を選択する。そして、ユーザは、参照する情報の種別（「位置」、「向き」、または「位置・向き」）と外部ファイルとを指定する。ラジオボタン８０９の生成開始ボタンが押下されると、入力欄８０２及び入力欄８０５の設定内容に応じて、画像解析、または外部ファイルからのデータの読み込みが行われ、入力欄８０１で指定された動画像データに対する選択肢情報が生成される。
【００５４】
生成される選択肢情報の例を図９（ａ）〜（ｅ）に示す。図９（ａ）〜（ｅ）に示す例では、各フレームに対する動作モードの選択肢が、１（選択可能）と０（選択不可）からなる３桁の数値で表されている。３桁の数値のうち３桁目、２桁目、１桁目がそれぞれ、カメラ基準モード、被写体基準モード、シーン基準モードの選択可否を示している。また、カメラや被写体の位置姿勢を取得できるか否か、あるいは、位置姿勢が変化しないかを併せて記録している。カメラや被写体の位置姿勢が取得できる場合には１が記録され、取得できない場合には０が記録され、位置姿勢が変化しない場合には２が記録される。図９（ａ）には、図８に示すＵＩ画面８００において、被写体位置姿勢及びカメラ位置姿勢の両方に関して「画像から解析」が選択された場合の例が示されている。また、図９（ｂ）〜（ｅ）には、被写体位置姿勢に関して「画像から解析」が選択され、カメラ位置姿勢に関して「三脚使用」、「雲台使用」、「ドリー」、「ファイルから読み込み（位置・向き）」の各々が選択された場合の例が示されている。生成された選択肢情報は、動画像データと対応付けられてＨＤＤ１０４等の記憶装置に記憶される。
【００５５】
画像データ取得部６０２は、第１実施形態の画像データ取得部２０１と同様に、被写体の３次元情報を含む入力動画像データを取得する。ただし、画像データ取得部６０２は、入力動画像データとともに、入力動画像データに対応付けられた選択肢情報を併せて取得する。取得された各種データは、パラメータ設定部６０３に送られる。
【００５６】
パラメータ設定部６０３は、第１実施形態のパラメータ設定部２０２と同様に、ユーザの指示に基づき入力動画像データに対して編集範囲を設定する。そして、パラメータ設定部６０３は、編集範囲内のフレームを代表するキーフレームに対して仮想ライトの動作モードとライティングパラメータを設定する。ただし、パラメータ設定部６０３は、入力動画像データと対応付けられた選択肢情報により示される選択肢の中から動作モードを選択して設定する。設定された編集範囲、及び仮想ライトの動作モードとライティングパラメータは、入力動画像データと対応付けられて画像データ生成部６０４に送られる。
【００５７】
以下、図１０に示すフローチャートを用いて、本実施形態に係る画像処理装置１００における編集処理の動作手順を説明する。
【００５８】
ステップＳ１００１において、画像データ取得部６０２は、ＨＤＤ１０４等の記憶装置から入力動画像データと選択肢情報とを取得する。なお、選択肢情報は予め選択肢情報生成部６０１により生成されているものとする。ステップＳ１００２〜Ｓ１００４の処理は、ステップＳ３０２〜Ｓ３０４の処理と同様であるため説明を省略する。
【００５９】
ステップＳ１００５において、パラメータ設定部６０３は、ステップＳ１００１で取得した選択肢情報に基づき、キーフレームに対応する選択肢を、図１１（ａ）に示すＵＩ画面１１００上の動作モード選択リスト１１０２を介してユーザに提示する。そして、動作モード選択リスト１１０２を介してユーザにより選択された動作モードを、ステップＳ１００４で選択した仮想ライトの動作モードとして設定する。図１１（ａ）には、キーフレームとして図９（ｄ）におけるＮｏ．０１０４のフレームが設定された場合の表示例が示されている。このとき、ユーザにより選択された動作モードが編集範囲内のいずれかのフレームにおいて選択肢に含まれない場合には、パラメータ設定部６０３は、動作モードの再設定または編集範囲の再設定をユーザに促す。編集範囲の再設定を促す場合には、ユーザにより選択された動作モードが選択不可となるフレームを参考情報としてユーザに報知してもよい。例えば、フレームＩＤや当該フレームに相当する時刻を表示して知らせてもよいし、図１１（ａ）に示すカーソル１１０１を用いて時間軸上での当該フレームの位置を知らせてもよい。その場合、所望の動作モードを設定できるフレームの範囲をユーザが把握しやすくなり、編集範囲の再設定が容易となる。
【００６０】
また、ユーザにより被写体基準モードまたはシーン基準モードが選択された場合において、カメラの位置姿勢情報として向きのみが取得されている場合には、仮想ライトの発光特性として「点光源」を選択不可とする。図１１（ａ）においてシーン基準が選択された場合の例を同図（ｂ）に示す。図１１（ａ）（ｂ）には上述したとおり、キーフレームとして図９（ｄ）におけるＮｏ．０１０４のフレームが設定された場合の表示例が示されていて、当該フレームは図９（ｄ）に示されるように、カメラの位置座標が取得できないフレームである。そのため、図１１（ｂ）に示す発光特性設定欄１１０３では、「点光源」のラジオボタンを非表示（選択不可）としている。
【００６１】
なお、動作モードの選択肢をユーザに提示する際に、キーフレームに対応する選択肢ではなく、ステップＳ１００２で設定した編集範囲内の全フレームにおいて設定可能である動作モードを選択肢として提示してもよい。ステップＳ１００６〜Ｓ１０１０の処理は、ステップＳ３０６〜Ｓ３１０の処理と同様であるため説明を省略する。
【００６２】
以上説明した処理制御を行うことで、第１実施形態と同様の効果を得ることができるとともに、被写体やカメラの位置姿勢情報を常に取得できるとは限らない場合において生じる可能性がある、編集作業の手戻りを抑制することができる。
【００６３】
なお、選択肢情報の生成は、ステップＳ１００２において設定される編集範囲に応じて動的に行ってもよい。その場合、カメラの設置状態や各種センサにより取得した位置姿勢情報を利用する際の設定は、例えば図１１（ｃ）に示すＵＩ上の位置姿勢情報設定欄１１０４を介してユーザが行う。位置姿勢情報設定欄１１０４における設定項目は、入力欄８０２及び入力欄８０５における設定項目と同様である。
【００６４】
［実施形態３］
第１及び第２実施形態では、編集範囲として先頭フレームの時刻と、その時刻からの経過時間とを設定する方法について説明した。本実施形態では、編集範囲の先頭フレームと末尾フレームとをキーフレームとして指定し、両フレーム間で仮想ライトの位置姿勢情報を補間する。それにより、編集範囲内の各フレームに対するライティングパラメータを設定する。
【００６５】
画像処理装置１００の本実施形態における内部構成は、図２に示す第１実施形態における内部構成と同様である。また、画像処理装置１００の本実施形態における動作は、図３に示す第１実施形態における動作と同様である。ただし、ステップＳ３０２，Ｓ３０３，Ｓ３０６，Ｓ３０７の処理が異なる。以下では、それらの処理について中心に説明する。
【００６６】
ステップＳ３０２において、パラメータ設定部２０２は、ステップＳ３０１で取得した入力動画像データに対する編集範囲を設定する。本実施形態では、編集範囲の先頭フレームの時刻ｔ０と、編集範囲の末尾フレームの時刻ｔｅとを指定して、編集範囲を設定する。図１２には、入力動画像データに対してパラメータ設定を行うための、本実施形態におけるＵＩ画面１２００が示されている。ＵＩ画面１２００は、図４に示す範囲入力欄４２２の代わりに、末尾フレーム入力欄１２２２を有する。末尾フレーム入力欄１２２２は、編集範囲における末尾フレームを指定するための入力欄である。なお、図１２に示す時間軸１２１１、マーカ１２１２，１２１３、及び先頭フレーム入力欄１２２１は、図４に示す時間軸４１１、マーカ４１２，４１３、及び先頭フレーム入力欄４２１と同様である。パラメータ設定部２０２は、図１２に示すＵＩ画面１２００をディスプレイ１１０に表示し、先頭フレーム入力欄１２２１、末尾フレーム入力欄１２２２に入力された値をそれぞれ、時刻ｔ０、時刻ｔｅとして設定する。
【００６７】
ステップＳ３０３において、パラメータ設定部２０２は、ステップＳ３０２で設定された編集範囲の先頭フレームと末尾フレームとをキーフレームとし、両フレームの画像データをディスプレイ１１０に出力する。図１２に示すように、ＵＩ画面１２００は、図４に示す画像表示欄４１４の代わりに、画像表示欄１２１４，１２１５を有する。画像表示欄１２１４，１２１５には、先頭フレームの画像と末尾フレームの画像とがそれぞれ表示される。なお、先頭フレームまたは末尾フレームのいずれか片方の画像を１つの表示欄に表示するようにしてもよいし、両フレームの画像を重畳して１つの表示欄に表示するようにしてもよい。
【００６８】
ステップＳ３０６において、パラメータ設定部２０２は、ステップＳ３０４で選択した仮想ライトに関するライティングパラメータを設定する。図１２に示すように、ＵＩ画面１２００は、先頭フレームに対応する位置姿勢入力欄１２３４及び発光特性設定欄１２３５と、末尾フレームに対応する位置姿勢入力欄１２３６及び発光特性設定欄１２３７とを有する。なお、仮想ライト選択リスト１２３１、動作モード選択リスト１２３２及び配光特性選択ラジオボタン１２３３は、先頭フレーム及び末尾フレームについて共通に設けられている。パラメータ設定部２０２は、ライティングパラメータとして、配光特性選択ラジオボタン１２３３、位置姿勢入力欄１２３４，１２３６、及び発光特性設定欄１２３５，１２３７に入力された値を、編集範囲の先頭フレームと末尾フレームとに対して設定する。
【００６９】
ステップＳ３０７において、画像データ生成部２０３は、仮想ライト選択リスト１２３１において選択された仮想ライトについて、ステップＳ３０２で設定した編集範囲内の各フレームに対してライティングパラメータを設定する。このとき、ステップＳ３０５で設定された動作モードと、ステップＳ３０６で２つのキーフレームに対して設定されたライティングパラメータとに基づき、編集範囲内の各フレームに対してライティングパラメータが設定される。具体的には、発光特性及び位置姿勢情報として設定された値を、各々キーフレーム間で線形補間して設定する。ただし、位置姿勢情報に関しては、画像データ生成部２０３は、動作モードごとに異なる基準座標系において位置座標及び方向ベクトルの補間値を求める。各動作モードにおける基準座標系は、カメラ基準モードではカメラ座標系、被写体基準モードでは被写体座標系、シーン基準モードではシーン座標系である。以下、編集範囲内の各フレームに対する位置姿勢情報の設定について、仮想ライトの動作モードごとに説明する。
【００７０】
＜カメラ基準モード＞
画像データ生成部２０３は、ステップＳ３０６で２つのキーフレームに対して設定された仮想ライトの位置座標ｐ（ｔ０），ｐ（ｔｅ）及び方向ベクトルｖ（ｔ０），ｖ（ｔｅ）の値をそれぞれ、以下の式９及び式１０に従い線形補間する。これにより、編集範囲内の各フレームにおける当該仮想ライトの位置座標ｐ（ｔ）及び方向ベクトルｖ（ｔ）が得られる。
p(t) = p(t0)*(te-t)/(te-t0)+p(te)*( t-t0) /(te-t0)  ・・・式９
v(t) = v(t0)*(te-t)/(te-t0)+v(te)*( t-t0) /(te-t0)  ・・・式１０
【００７１】
＜被写体基準モード＞
まず、画像データ生成部２０３は、ステップＳ３０６で２つのキーフレームに対して設定された仮想ライトの位置座標ｐ（ｔ０），ｐ（ｔｅ）と方向ベクトルｖ（ｔ０），ｖ（ｔｅ）とを、各時刻における被写体座標系での値に変換する。仮想ライトの位置座標の変換後の値を、ｐｏ（ｔ０），ｐｏ（ｔｅ）とする。また、仮想ライトの方向ベクトルの変換後の値を、ｖｏ（ｔ０），ｖｏ（ｔｅ）とする。
【００７２】
次いで、画像データ生成部２０３は、これらの変換後の値をそれぞれ線形補間し、編集範囲内の各フレームにおける当該仮想ライトの位置座標ｐｏ（ｔ）及び方向ベクトルｖｏ（ｔ）を得る。最後に、ｐｏ（ｔ），ｖｏ（ｔ）の値を各フレームにおけるカメラ座標系に変換し、各フレームにおける仮想ライトの位置座標ｐ（ｔ）及び方向ベクトルｖ（ｔ）として設定する。
【００７３】
＜シーン基準モード＞
先述した被写体基準モード時の処理における被写体座標系を、シーン座標系に置き換えて考えればよい。なお、本実施形態でも第１実施形態と同じく時刻ｔ０におけるカメラ座標系をシーン座標系として用いる。
【００７４】
以上説明した処理制御を行うことで、仮想ライトの動き方をより柔軟に設定することができる。なお、ステップＳ３０２において、編集範囲を設定する際の参考情報として、動作モードの選択肢が変化するフレームをユーザに提示してもよい。そのような形態によれば、所望の動作モードを設定できるフレームの範囲をユーザが把握しやすくなり、編集範囲や動作モードを再設定する手戻りを抑制することができる。
【００７５】
（その他の実施例）
本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００７６】
画像データ取得部２０１
パラメータ設定部２０２
画像データ生成部２０３
【図１】
2019046055.tif 000005
【図２】
2019046055.tif 000006
【図３】
2019046055.tif 000007
【図４】
2019046055.tif 000008
【図５】
2019046055.tif 000009
【図６】
2019046055.tif 000010
【図７】
2019046055.tif 000011
【図８】
2019046055.tif 000012
【図９】
2019046055.tif 000013
【図１０】
2019046055.tif 000014
【図１１】
2019046055.tif 000015
【図１２】
2019046055.tif 000016