JP2013127774A - 画像処理装置、画像処理方法及びプログラム - Google Patents

画像処理装置、画像処理方法及びプログラム Download PDF

Info

Publication number
JP2013127774A
JP2013127774A JP2012217162A JP2012217162A JP2013127774A JP 2013127774 A JP2013127774 A JP 2013127774A JP 2012217162 A JP2012217162 A JP 2012217162A JP 2012217162 A JP2012217162 A JP 2012217162A JP 2013127774 A JP2013127774 A JP 2013127774A
Authority
JP
Japan
Prior art keywords
correction coefficient
virtual subject
background image
environment map
image
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.)
Withdrawn
Application number
JP2012217162A
Other languages
English (en)
Inventor
Yoshitaka Sasaki
良隆 佐々木
Ai Miyoshi
愛 三好
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2012217162A priority Critical patent/JP2013127774A/ja
Priority to US13/676,353 priority patent/US20130120451A1/en
Publication of JP2013127774A publication Critical patent/JP2013127774A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)

Abstract

【課題】仮想被写体を背景画像に合成する際、両者の色味が異なり違和感が生じる場合がある。また、従来はレンダリング結果から手動でレンダリングパラメータ等を調整する必要があり手間が掛かる。
【解決手段】背景画像に仮想被写体を合成して合成画像を生成する画像処理装置において、前記仮想被写体の周囲の光源の情報を示す環境マップを用いて、前記仮想被写体が置かれる位置に配置された無彩色オブジェクトをレンダリングすることで補正係数を導出する補正係数導出手段と、導出された前記補正係数に基づいて前記背景画像を補正する背景画像補正手段と、前記環境マップを用いて、補正された背景画像と前記仮想被写体とを合成する合成手段と、を備えることを特徴とする。
【選択図】図5

Description

本発明は、実写の背景画像と三次元CG(Computer Graphics)オブジェクトとして作成した仮想被写体との合成画像を生成する画像処理装置、画像処理方法及びプログラムに関する。
映像制作の場において、CGを用いることで実写画像に実在しない仮想被写体を合成することが容易になってきている。その際、自然な合成画像を生成するためにはライティングが重要となる。ライティングが適切に設定されていない場合、仮想被写体の色味やハイライト、陰影などが不自然な再現になってしまう。
CGによるライティング手法の一つに、光源にイメージ(画像)を使用してGI(グローバルイルミネーション=環境光)を表現するイメージベースドライティングが知られている。イメージベースドライティングでは、仮想被写体を配置する場所の全方位の画像を撮影し、撮影した画像から得られた全周囲画像(環境マップ)を用いて仮想被写体をライティングする。この手法の場合、仮想被写体と合成される背景画像と、仮想被写体をライティングする環境マップとを別々に用意する必要があるため、視点の変更に応じて何れかを変更する必要が生じる。視点に応じて背景画像を変更する手法としては、複数の背景画像をあらかじめ用意しておき、視点の移動に応じて背景画像を選択する手法(特許文献1)が提案されている。また、環境マップを変更する手法としては、カメラで撮影した画像中のオブジェクトを、辞書データを参照しながら抽出し、その結果に基づいて環境マップを更新する手法(特許文献2)が提案されている。
また、仮想被写体を自然に再現する手法として、所望の色に塗装した仮想球面を予定位置に設置し、そのレンダリング結果から得られる色彩分布やハイライト分布を、仮想被写体上にマッピングする手法(特許文献3)が提案されている。
特開2007−241868号公報 特開2008−304268号公報 特開2005−149027号公報
しかしながら、特許文献1及び特許文献2の方法では、背景画像及び環境マップの変更に伴うライティングの相違が考慮されていないため、自然な合成画像を得られないことがある。また、特許文献3の方法では、仮想被写体のライティングの変化は考慮されているものの背景画像については考慮がされていないため、やはり不自然な合成画像となってしまう場合がある。
また、背景画像と環境マップを撮影するカメラの相違や撮影位置の相違によってもライティングに差異が生じるところ、従来はレンダリング結果から手動でレンダリングパラメータを調整するなどして合成画像を補正していたため、手間が掛かっていた。
本発明に係る画像処理装置は、背景画像に仮想被写体を合成して合成画像を生成する画像処理装置において、前記仮想被写体の周囲の光源の情報を示す環境マップを用いて、前記仮想被写体が置かれる位置に配置された無彩色オブジェクトをレンダリングすることで補正係数を導出する補正係数導出手段と、導出された前記補正係数に基づいて前記背景画像を補正する背景画像補正手段と、前記環境マップを用いて、補正された背景画像と前記仮想被写体とを合成する合成手段と、を備えることを特徴とする。
本発明によれば、背景画像と仮想被写体との間で色味や明るさが一致した自然な合成画像を自動で生成することができる。
実施例1に係る画像処理装置のハードウェア構成の一例を示す図である。 イメージベースドライティングにおいて使用される画像等を説明する図である。 (a)は実写の撮影環境、(b)は仮想の撮影環境を示す図である。 実施例1に係る画像処理装置の機能構成図である。 実施例1に係る画像処理装置において実行される画像処理の全体の流れを示すフローチャートである。 実施例1に係る補正係数導出処理の詳細を示すフローチャートである。 無彩色オブジェクトが配置された様子を示す図である。 仮想カメラから光線が発射される様子を示す図である。 光線追跡処理の詳細を示すフローチャートである。 発射された光線と無彩色オブジェクトとの関係を示す図である。 白球のレンダリング結果を示す図である。 背景画像補正処理の詳細を示すフローチャートである。 仮想被写体合成処理の詳細を示すフローチャートである。 発射された光線が仮想被写体と交差する場合及び交差しない場合をそれぞれ視覚的に示した図である。 実施例2に係る画像処理装置の機能構成図である。 実施例2に係る画像処理装置において実行される画像処理の全体の流れを示すフローチャートである。 環境マップ補正処理の詳細を示すフローチャートである。 露出が不適切な状態を説明する図である。 実施例3に係る画像処理装置の機能構成図である。 実施例3に係る画像処理装置において実行される画像処理の全体の流れを示すフローチャートである。 実施例3に係る補正係数導出処理の詳細を示すフローチャートである。 実施例3における仮想標準反射特性の仮想被写体のレンダリング結果を示す図である。 実施例3に係る仮想被写体合成処理の詳細を示すフローチャートである。 実施例3における補正後の仮想被写体および合成後のレンダリング結果を示す図である。 実施例4に係る画像処理装置の機能構成図である。 実施例4に係る画像処理装置において実行される画像処理の全体の流れを示すフローチャートである。 環境マップ部分値テーブルの一例を表す図である。 環境マップ部分値テーブルにおける各ベクトルの画素値平均に対応する領域を示している。 実施例4に係る補正係数導出処理の詳細を示すフローチャートである。 実施例4における仮想被写体に影響を与える光としての画素値平均を取得する様子を説明する図である。 実施例5に係る補正係数導出処理の詳細を示すフローチャートである。 法線ベクトルを取得する様子を示す図である。 法線ベクトルに最も近いベクトルを選択する様子を説明する図である。
[実施例1]
図1は、本実施例に係る画像処理装置のハードウェア構成の一例を示す図である。
画像処理装置100は、CPU101、RAM102、HDD103、汎用インターフェース(I/F)104、メインバス105を備える。汎用I/F104は、カメラなどの撮像装置106、マウス、キーボードなどの入力装置107、メモリーカードなどの外部メモリ108、液晶パネルなどのモニタ109をメインバス105に接続する。
画像処理装置100における処理の概略は以下のとおりである。
まず、CPU101は、HDD103に格納されている画像処理アプリケーションを起動してRAM102に展開するとともに、モニタ109にユーザインターフェース(UI)を表示する。続いて、HDD103や外部メモリ108に格納されている各種データ、撮像装置106で撮影された画像のデータ、入力装置107からの指示などがRAM102に転送される。さらに、画像処理アプリケーション内の処理に従って、RAM102に転送されたデータ等について、CPU101からの指令に基づき各種演算がなされる。演算結果は、モニタ109に表示されたり、HDD103や外部メモリ108に格納される。
図2は、本発明の前提となるイメージベースドライティングにおいて使用される画像等を説明する図である。図2の(a)は、実写の背景画像を示している。図2の(b)は、背景画像に仮想被写体200を合成して得られた合成画像を示している。図2の(c)及び(d)は、環境マップの基となる撮影方向の異なる周囲画像をそれぞれ示している。図2の(e)は、図2の(c)及び(d)の周囲画像を幾何変換し合成することによって得られた全周囲画像(環境マップ)を示している。
図3は、図2で示した各画像の撮影環境を模式的に示す図であり、図3の(a)は実写撮影環境を示し、図3の(b)は仮想撮影環境を示している。301は背景画像307を撮影するカメラ、302は周囲画像を撮影するカメラ、303は背景画像307と仮想被写体200とを合成する際に参照する仮想カメラである。ここで、周囲画像を撮影するカメラ302は、180°以上の画角を備える超広角カメラであって、仮想被写体200と同じ位置に設置されている。このカメラ302によって、破線304で示されるカメラ301方向の周囲画像(図2の(c)に対応)、及びそれとは180°反対方向の実線305で示される周囲画像(図2の(d)に対応)とを撮影する。このようにして撮影された2つの周囲画像304及び305を合成することで、仮想被写体200の周囲360°の全周囲画像である環境マップ306が生成される。
なお、環境マップを取得する方法はこれに限られるものではなく、例えば、全方位カメラを用いて一度に撮影する方法や、多眼カメラなど複数視点撮影可能なカメラで撮影した多視点画像をつなぎ合わせて生成する方法でも構わない。また、仮想被写体200と同じ位置にクロムボールを設置し、カメラ301で撮影することで環境マップを得てもよい。
また、仮想被写体200をレンダリングするための光源画像として環境マップを利用する場合、ハイダイナミックレンジ画像として生成されることが一般的である。
本実施例では、仮想カメラ303は背景画像307を撮影するカメラ301と同じ撮影条件に設定されるものとして以下説明する。勿論、仮想カメラ303の設定は任意に変更できるため、必ずしもカメラ301と仮想カメラ303の設定が同一である必要はない。例えば、合成画像の背景として背景画像307の一部だけを利用する場合などは、カメラ301と仮想カメラ303の設定は異なる。
さらに、本実施例において扱う画像は一般的なRGB画像であって、画像処理に関しても色信号値が3バンドとして説明する。但し、必ずしもこれに限定されるわけではなく、マルチバンド画像であっても良い。また、画像処理だけをマルチバンド処理することも可能である。
図4は、本実施例に係る画像処理装置の機能構成図である。この図4に示される構成は、画像処理アプリケーションソフトウェアとして実現される。すなわち、CPU101がHDD103に格納された各種ソフトウェア(コンピュータプログラム)を動作させることで実現される。
画像処理装置100は、背景画像、環境マップ、仮想カメラ情報、仮想被写体情報のデータを入力データとして受け取り、補正係数導出処理及び背景画像の補正処理を経て、背景画像に仮想被写体を合成した合成画像データを出力データとして出力する。ここで、仮想カメラ情報とは、仮想空間中に置く仮想カメラの情報であって、背景画像の撮影条件と同等の情報であり、撮影位置を示す三次元座標、カメラの画角、カメラの向きを示す方向ベクトルなどの情報を指す。さらに、撮影時のレンズ特性、露出、シャッタースピードなどの情報を含んでも構わない。また、仮想被写体情報とは、背景画像に合成する仮想被写体の詳細に関する情報であり、仮想被写体の位置を示す三次元座標、仮想被写体の色や形状を示すマテリアルデータ、仮想被写体の反射/透過特性などの情報を指す。背景画像、環境マップ、仮想カメラ情報、仮想被写体情報といった各種のデータは、入力装置107からのユーザ指示に基づき、撮像装置106、HDD103、外部メモリ108等から入力される。
補正係数導出部401は、入力された仮想カメラ情報、仮想被写体情報、環境マップを用いて補正係数を導出する。導出した補正係数はRAM102に記憶される。
背景画像補正部402は、入力された背景画像のデータと導出された補正係数を用いて補正背景画像を生成する。生成した補正背景画像のデータはRAM102に記憶される。
仮想被写体合成部403は、入力された環境マップ、仮想カメラ情報、仮想被写体情報及び生成された補正背景画像を用いて合成画像を生成する。生成した合成画像のデータはRAM102に記憶され、その後、ユーザ指示に応じて、HDD103、外部メモリ108、モニタ109などに出力される。
図5は、本実施例に係る画像処理装置100において実行される画像処理の全体の流れを示すフローチャートである。実際には、以下に示す手順を記述したコンピュータ実行可能なプログラムをHDD103等からRAM102上に読み込んだ後に、CPU101によって該プログラムを実行することによって当該処理が実行される。
ステップ501において、画像処理装置100は、上記入力データ、すなわち、背景画像、環境マップ、仮想カメラ情報、仮想被写体情報を取得する。取得した入力データのうち仮想カメラ情報、仮想被写体情報及び環境マップは、補正係数導出部401と仮想被写体合成部403に送られる。背景画像は、背景画像補正部402に送られる。
ステップ502において、補正係数導出部401は、環境マップ、仮想カメラ情報、仮想被写体情報に基づいて、背景画像補正処理で用いる補正係数を導出する。補正係数導出処理の詳細については後述する。
ステップ503において、背景画像補正部402は、背景画像及びステップ502で導出された補正係数を用いて背景画像を補正し、補正背景画像を生成する。背景画像補正処理の詳細についても後述する。
ステップ504において、仮想被写体合成部403は、生成された補正背景画像、及び取得した環境マップ、仮想カメラ情報、仮想被写体情報に基づいて、仮想被写体と背景画像とを合成する処理(仮想被写体合成処理)を行い、合成画像を生成する。仮想被写体合成処理の詳細についても後述する。
ステップ505において、画像処理装置100は、ステップ504で生成された合成画像のデータを出力する。
以上が、本実施例に係る画像処理装置100における画像処理の概要である。
(補正係数導出処理)
図6は、図5のステップ502における補正係数導出処理の詳細を示すフローチャートである。
ステップ601において、補正係数導出部401は、ステップ501で取得した仮想カメラ情報から視点を決定し、仮想カメラの撮影位置を設定する。上述のとおり仮想カメラ情報には、背景画像の撮影位置を示す三次元座標及びカメラの向きを示す方向ベクトルの情報が含まれている。そこで、これら情報によって特定される位置が視点として決定され、該決定された視点の位置が仮想カメラの撮影位置として設定される。
ステップ602において、補正係数導出部401は、取得した仮想被写体情報から仮想被写体の設定位置を特定して、当該特定された位置に無彩色オブジェクトを配置する。図7は、無彩色オブジェクトが配置された様子を示す図である。図7において700は、無彩色の三次元CGオブジェクトとして仮想被写体と同じ位置に配置された仮想の白球である。ここでは無彩色オブジェクトとして白球を用いているが、必ずしも白球である必要はない。さらには、環境マップによって仮想被写体を照射する光のホワイトバランスを取得できればよいので無彩色が好適であるが、色信号値が既知の有彩色であってもよい。また、形状に関しても、球にすることでより広範囲の光を考慮した情報を取得可能であるが、必ずしも球に限定されるものではない。さらに、大きさに関しても、仮想被写体と同程度であることが好ましいが特に制限されるものではない。
ステップ603において、補正係数導出部401は、仮想カメラから見た白球のレンダリングを行う処理対象の画素を選択する。なお、レンダリングの対象となる画像に関して特に制限はないが、画素数が多い方がより精度よく光情報を取得可能である。また、画素の選択方法に関しても特に制限はなく、例えば画像の左上から右下へ向かって順次選択すればよい。
ステップ604において、補正係数導出部401は、ステップ601で決定した視点(仮想カメラの設定位置)から、選択された画素の方向に光線を発射する。図8は、選択された画素の方向に仮想カメラ303から光線が発射される様子を示す図である。図8において、800は選択された画素を示している。このように、設定された仮想カメラの位置から選択された画素800に向かって光線を発射することで光線の向きが決定する。
ステップ605において、補正係数導出部401は、選択された画素の色信号値、すなわち、発射された光線と無彩色オブジェクトとの交点の色信号値を、以下に述べる光線追跡処理によって取得する。この光線追跡処理は、補正係数導出部401内の光線追跡処理部(不図示)によって実行される。
図9は、光線追跡処理の詳細を示すフローチャートである。
ステップ901において、光線追跡処理部は、仮想カメラ303から発射された光線が無彩色オブジェクト(白球)と交差するかどうかを判定する。交差すると判定された場合はステップ902に進む。一方、交差しないと判定された場合は光線追跡処理を抜ける。
ステップ902において、光線追跡処理部は、発射された光線と無彩色オブジェクトとの交点における法線ベクトルを求める。図10は発射された光線と無彩色オブジェクトとの関係を示す図である。図10において、1001は仮想カメラ303の位置(光線を発射する視点)、1002は発射された光線が交差する無彩色オブジェクトの表面、1003は無彩色オブジェクトを照明する光源である。そして、Pは光線と無彩色オブジェクトとの交点、Vは交点Pから視点1001への方向ベクトル、Lは交点Pから光源1003への方向ベクトルを示している。そして、Nが、求められる法線ベクトルであり、交点Pにおける無彩色オブジェクトの表面1002に垂直なベクトルである。
ステップ903において、光線追跡処理部は、求められた法線ベクトルNに基づいて、交点Pから光源1003に向かって光線を発射する。一般に、交点Pから発射する光線数が多いほど精度よく画素の色信号値を取得することが可能である。また、発射する光線の方向は、法線ベクトルNと方向ベクトルLとのなす角φが90°より小さい範囲で決定される。従って、法線ベクトルNと方向ベクトルLは次の式を満たす。
Figure 2013127774
なお、本実施例における図10の光源1003は、図7の306で示されるような環境マップであり、無彩色オブジェクトの周囲360°に渡って設定されているため、式(1)の条件を満たす範囲で所望の方向に光線を発射して構わない。例えば、式(1)を満たす範囲を等分して発射しても良いし、ランダムに発射しても良い。以下、本実施例ではランダムにn本の光線を発射するものとして説明する。
ステップ904において、光線追跡処理部は、発射された光線と光源(環境マップ)との交点の色信号値を取得する。
ステップ905において、光線追跡処理部は、未処理の光線があるかどうかを判定する。n本全ての光線の処理が完了していればステップ906に進む。一方、未処理の光線があればステップ903に戻り、次の光線を発射する。
ステップ906において、光線追跡処理部は、n本の光線によって取得された色信号値の総和を算出する。n本の光線によって取得された色信号値(ri,gi,bi)の成分毎の総和(ER,EG,EB)はそれぞれ式(2)〜(4)のようになる。
Figure 2013127774
Figure 2013127774
Figure 2013127774
ステップ907において、光線追跡処理部は、算出された色信号値の成分毎の総和(ER,EG,EB)を正規化する。これは、各画素で計算した光線数の相違や、出力範囲(例えば8ビットの場合はRGB各成分で256階調)の制約により生じる不具合を防止するためである。本実施例では次の式(5)〜(7)により正規化後の色信号値(E’R,E’G,E’B)を得る。
Figure 2013127774
Figure 2013127774
Figure 2013127774
なお、色信号値の正規化は所望の方法で構わない。また、正規化をしなくとも不具合が生じない場合は、本ステップを省略しても構わない。
ステップ908において、光線追跡処理部は、正規化された色信号値と無彩色オブジェクトの特性とに基づいて画素値を取得する。ここで、正規化によって得られた色信号値は、図10における無彩色オブジェクト上の交点Pを照射する光エネルギーであって、無彩色オブジェクトの反射特性であると考えられる。従って、ステップ907の正規化で得られた色信号値と無彩色オブジェクトの色信号値とを乗算することにより視点1001の方向に反射する光エネルギー、即ち画素値が得られる。そこで、図10の交点Pにおける色信号値が(rR,rG,rB)、各色信号の最大値が255(8ビット)であるとすると、次の式(8)〜(10)により画素の色信号値〔R,G,B〕が得られることになる。
Figure 2013127774
Figure 2013127774
Figure 2013127774
上記の式(8)〜(10)において、“x,y”は、画素の座標を示す。尚、有彩色オブジェクトの場合、交点Pにおける色信号値(rR,rG,rB)の比が1:1:1になるように色信号値を補正してから式(8)〜(10)を適用する。
また、画素値の取得に用いる無彩色オブジェクトの特性は色信号値に限られるものではなく、例えば変角分光反射率などであってもよい。変角分光反射率は、オブジェクトへの光の入射角と反射角に応じて決定されるものであり、入射角や反射角に依存しない場合は分光反射率になる。ある断面におけるオブジェクト上の点Pへの光の入射角をφ、反射角をθとすると(図10を参照)、変角分光反射率はrR(φ、θ)、rG(φ、θ)、rB(φ、θ)で表される。従って、求める色信号値〔R,G,B〕は次の式(11)〜(13)によって得られる。
Figure 2013127774
Figure 2013127774
Figure 2013127774
尚、ここではある断面における変角分光反射率の例を説明したが、面を限定せず4次元の変角をパラメータとして変角分光反射率を与えても良い。
図6のフローチャートの説明に戻る。
ステップ606において、補正係数導出部401は、全画素の光線追跡処理が完了したかどうかを判定する。完了していなければステップ603に戻り、次の処理対象の画素を選択する。一方、完了していればステップ607に進む。
ステップ607において、光線追跡処理によって取得された画素値(無彩色オブジェクトの色信号値)から補正係数を導出する。図11は、ステップ603〜ステップ605の各処理を経て生成された白球のレンダリング結果(レンダリング画像)を示す図である。レンダリング画像1100において、白球以外の領域は画素値が取得されないため、白球の領域のみを容易に抽出可能である。補正係数は白球の色信号値のホワイトバランスを補正可能な値であればよい。例えば、レンダリング画像1100における白球の各画素の色信号値を(rx,y,gx,y,bx,y)とし、Gを基準とした場合の各色成分の補正係数(tR,tG,tB)は、次の式(14)〜(16)のようになる。
Figure 2013127774
Figure 2013127774
Figure 2013127774
このようにして、背景画像の補正係数が導出される。
(背景画像補正処理)
図12は、図5のステップ503における背景画像補正処理の詳細を示すフローチャートである。
ステップ1201において、背景画像補正部402は、ステップ501で取得した背景画像のホワイトバランスを取得する。ホワイトバランスの取得方法は任意の方法でよい。例えば、背景画像のタグに記載されている情報から取得する方法、背景画像内の白となる点をUIで指定する方法、背景画像中の最も明るい色を白とするなどの公知の推定手法がある。
ステップ1202において、背景画像補正部402は、背景画像の中から補正処理の対象となる画素を選択する。補正処理の対象となる画素の選択方法に関しては特に制限はなく、例えば画像の左上から右下へ向かって順次選択すればよい。
ステップ1203において、背景画像補正部402は、選択された画素の色信号値を、補正係数導出処理で得られた補正係数を用いて補正する。ここで、選択された画素の色信号値を(Rb,Gb,Bb)、導出された補正係数を(tR,tG,tB)、ホワイトバランスから得られる色信号値の割合を(uR,uG,uB)とする。すると、補正後の色信号値(R’b,G’b,B’b)は、次の式(17)〜(19)で表される。
Figure 2013127774
Figure 2013127774
Figure 2013127774
ここで、例えば、選択された画素の色信号値を(128, 128, 128)、導出された補正係数が(1.067, 1.0, 1.069)、ホワイトバランスから得られる色信号値の割合を(1.053, 1.0, 0.96)とする。この場合に本ステップで得られる補正後の色信号値は、式(17)〜(19)から、(130, 128, 143)となる。
ステップ1204において、背景画像補正部402は、背景画像の全画素について補正処理が完了したかどうかを判定する。完了していれば、本処理を終了する。一方、未処理の画素があれば、ステップ1202に戻り、次の画素を選択する。
以上の処理により、環境マップが仮想被写体を照射する光のホワイトバランスに基づいて背景画像が補正される。
(仮想被写体合成処理)
図13は、図5のステップ504における仮想被写体合成処理の詳細を示すフローチャートである。
ステップ1301において、仮想被写体合成部403は、ステップ501で取得した環境マップ、仮想カメラ情報、仮想被写体情報及びステップ503で生成された補正背景画像を取得する。
ステップ1302において、仮想被写体合成部403は、補正背景画像の中から、色信号値を取得する処理の対象となる画素を選択する。画素の選択方法は特に制限はなく、例えば補正背景画像の左上から右下へ向かって順次選択すればよい。
ステップ1303において、仮想被写体合成部403は、ステップ1301で取得した仮想カメラ情報において特定される視点位置から、選択された画素に向けて光線を発射する。
ステップ1304において、仮想被写体合成部403は、発射された光線が仮想被写体と交差するか否かを判定する。交差すると判定された場合はステップ1305に進み、交差しないと判定された場合はステップ1306に進む。図14は、発射された光線が仮想被写体と交差する場合及び交差しない場合をそれぞれ視覚的に示した図である。図14において、200は仮想被写体情報に基づいて設定される仮想被写体、303は仮想カメラ情報に基づいて設定される仮想カメラである。1403は、仮想カメラ情報に含まれる画角の情報に基づいて設定された補正背景画像であり、306は環境マップである。そして、1401及び1402は発射された光線を示しており、光線1401は仮想被写体200と交差し、光線1402は仮想被写体200とは交差せずに補正背景画像1403と交差している。この場合、光線1401については環境マップ306を光源としてレンダリングされる。なお、補正背景画像1403は仮想カメラ303の画角に合わせて設定されるため、発射される光線は、必ず仮想被写体200或いは補正背景画像1403と交差することになる。
ステップ1305において、仮想被写体合成部403は、選択された画素の色信号値、この場合には、仮想被写体と光線との交点における色信号値を取得する。なお、本ステップにおける光線追跡処理では、前述の補正係数導出処理内の光線追跡処理において“無彩色オブジェクト”であった部分が“仮想被写体”に置き換わるのみで、その内容は同じであるので、詳細については省略する。
ステップ1306において、仮想被写体合成部403は、ステップ1301で取得した補正背景画像とステップ1303で発射した光線との交点における色信号値を取得する。
ステップ1307において、仮想被写体合成部403は、補正背景画像の全画素について処理が完了したかどうかを判定する。完了していれば本処理を終了する。一方、未処理の画素があれば、ステップ1302に戻り、次の画素を選択する。
このようにして、補正された背景画像と仮想被写体とが合成されて、合成画像が生成される。
以上のとおり本実施例によれば、実写した背景画像と仮想被写体との合成画像を生成する処理において、環境マップが仮想被写体を照射する光のホワイトバランスに基づいて背景画像を補正することで、自然な合成画像を自動で生成することが可能となる。これにより、試行錯誤によるパラメータの調整などが不要となる。
[実施例2]
実施例1では、環境マップが仮想被写体を照射する光のホワイトバランスに基づいて背景画像を補正する態様について説明した。次に、背景画像ではなく、環境マップの方を背景画像のホワイトバランスに基づいて補正する態様について実施例2として説明する。なお、実施例1と共通する部分については説明を簡略化ないしは省略し、差異点を中心に説明することとする。
図15は、本実施例に係る画像処理装置の機能構成図である。この図15に示される構成は、画像処理アプリケーションソフトウェアとして実現される。
第一補正係数導出部1501は、入力された仮想カメラ情報、仮想被写体情報、環境マップを用いて第一補正係数を導出する。導出した第一補正係数はRAM102に記憶される。
第二補正係数導出部1502は、入力された背景画像のデータから第二補正係数を導出する。導出した第二補正係数はRAM102に記憶される。
環境マップ補正部1503は、入力された環境マップのデータと導出された第一補正係数、第二補正係数を用いて環境マップを補正し、補正環境マップを生成する。生成した補正環境マップのデータはRAM102に記憶される。
仮想被写体合成部1504は、入力された背景画像、仮想カメラ情報、被写体情報及び生成された補正環境マップを用いて合成画像を生成する。生成した合成画像のデータはRAM102に記憶される。
図16は、本実施例に係る画像処理装置100において実行される画像処理の全体の流れを示すフローチャートである。
ステップ1601において、画像処理装置100は、背景画像、環境マップ、仮想カメラ情報、仮想被写体情報を取得する。取得した入力データのうち仮想カメラ情報、仮想被写体情報は、第一補正係数導出部1501と仮想被写体合成部1504に送られる。背景画像は、第二補正係数導出部1502と仮想被写体合成部1504に送られる。環境マップは、第一補正係数導出部1501と環境マップ補正部1503に送られる。
ステップ1602において、第一補正係数導出部1501は、環境マップ、仮想カメラ情報、仮想被写体情報に基づいて、環境マップ補正処理で用いる第一補正係数を導出する。なお、第一補正係数は、実施例1の補正係数導出処理で導出される補正係数と同一であり、その導出処理の内容も実施例1に係る図6のフローチャートと同様のため、ここでの説明は省略する。
ステップ1603において、第二補正係数導出部1502は、背景画像に基づいて第二補正係数を導出する。なお、第二補正係数は、背景画像のホワイトバランスに基づく係数である。よって、まず、背景画像のホワイトバランスを取得する。ホワイトバランスの取得方法は、実施例1に係る図12のフローチャートのステップ1201と同様である。取得したホワイトバランスに基づく白の色信号値を(wR,wG,wB)とし、Gを基準とした場合の第二補正係数(uR,uG,uB)は、次の式(20)〜(22)のようになる。
Figure 2013127774
Figure 2013127774
Figure 2013127774
なお、第二補正係数は、背景画像のホワイトバランスに基づくR,G,Bの各色信号値の割合が得られれば良く、本実施例で説明した導出方法に限られるものではない。
ステップ1604において、環境マップ補正部1503は、ステップ1602で導出された第一補正係数及びステップ1603で導出された第二補正係数に基づいて、環境マップを補正する。環境マップ補正処理の詳細は後述する。
ステップ1605において、仮想被写体合成部1504は、ステップ1604で生成された補正環境マップ、ステップ1601で取得した背景画像、仮想カメラ情報、仮想被写体情報に基づいて、仮想被写体合成処理を行い、合成画像を生成する。なお、仮想被写体合成処理の内容については、実施例1に係る図13のフローチャートと同様のため、ここでの説明は省略する。
ステップ1606において、画像処理装置100は、ステップ1605で生成された合成画像のデータを出力する。
以上が、本実施例に係る画像処理装置100における画像処理の概要である。
(環境マップ補正処理)
図17は、図16のステップ1604における環境マップ補正処理の詳細を示すフローチャートである。
ステップ1701において、環境マップ補正部1503は、図16のステップ1602で導出された第一補正係数を取得する。
ステップ1702において、環境マップ補正部1503は、図16のステップ1603で導出された第二補正係数を取得する。
ステップ1703において、環境マップ補正部1503は、環境マップの中から補正処理をする画素を選択する。補正処理の対象となる画素の選択方法に関しては特に制限はなく、例えば画像の左上から右下へ向かって順次選択すればよい。
ステップ1704において、環境マップ補正部1503は、選択された画素の色信号値を、上記第一の補正係数及び第二の補正係数を用いて補正する。この場合において、選択された画素の色信号値を(RC,GC,BC)、第一補正係数を(tR,tG,tB)、第二補正係数を(uR,uG,uB)とすると、補正後の色信号値(R’C,G’C,B’C)は、次の式(23)〜(25)で表される。
Figure 2013127774
Figure 2013127774
Figure 2013127774
ステップ1705において、環境マップ補正部1503は、環境マップの全画素について補正処理が完了したかどうかを判定する。完了していれば本処理を終了する。一方、未処理の画素があれば、ステップ1703に戻り、次の画素を選択する。
以上の処理により、背景画像のホワイトバランスに基づいて環境マップが補正され、補正環境マップが生成される。
以上のとおり本実施例によっても、実写した背景画像と仮想被写体との合成画像を生成する処理において、背景画像のホワイトバランスに基づいて環境マップを補正することで、自然な合成画像を自動で生成することが可能になる。
[実施例3]
実施例1及び2では、仮想被写体を照射する光と背景画像との色味の違いを補正する態様について説明した。次に、色味の違いではなく明るさの違いを補正する態様について実施例3として説明する。
背景に用いる実写画像の撮影では、一般的に所定の反射率を持つグレーの板(標準反射板)を被写体として置くことにより適正露出で撮影する。よって、CGでも同じ様に標準反射板を用いて露出を決定する必要があるが、標準反射板と仮想被写体とでは形状が異なり陰影のつき方が変わってしまう。つまり、標準反射板で設定した露出が仮想被写体で適正になるとは限らない。そこで、本実施例では、仮想被写体の形状に標準反射板の反射特性を適用することにより、仮想被写体の明るさが背景画像の明るさと同じになる様にする。
本実施例の詳細を説明する前に、まずその効果について説明する。例えば、前述の図14に示される仮想被写体200が黒い物体であったと仮定する。この場合において、仮想ライトが強過ぎたり、仮想カメラ303の露出に関係するパラメータが適切でないと、あたかも白い物体であるかのような画像が生成される(図18の(a)参照)。そして、そのような画像を、適正露出の背景画像と合成すると、実写背景と仮想被写体200とで明るさが異なる不自然な合成画像となってしまう(図18の(b)参照)。そこで、本実施例では、仮想被写体を適正露出に補正する。
なお、実施例1及び2と共通する部分については説明を簡略化ないしは省略し、差異点を中心に説明することとする。
図19は、本実施例に係る画像処理装置の機能構成図である。この図19に示される構成は、画像処理アプリケーションソフトウェアとして実現される。
補正係数導出部1901は、入力された仮想カメラ情報、仮想被写体情報、環境マップを用いて補正係数αを導出する。導出した補正係数αはRAM102に記憶される。
仮想被写体合成部1902は、入力された背景画像、仮想カメラ情報、仮想被写体情報、環境マップ、及び導出された補正係数αを用いて合成画像を生成する。生成した合成画像のデータはRAM102に記憶され、その後、ユーザ指示に応じて、HDD103、外部メモリ108、モニタ109などに出力される。
図20は、本実施例に係る画像処理装置100において実行される画像処理の全体の流れを示すフローチャートである。
ステップ2001において、画像処理装置100は、上記入力データ、すなわち、背景画像、環境マップ、仮想カメラ情報、仮想被写体情報を取得する。取得した入力データのうち背景画像は仮想被写体合成部1902のみに送られ、仮想カメラ情報、仮想被写体情報及び環境マップは、補正係数導出部1901及び仮想被写体合成部1902に送られる。
ステップ2002において、補正係数導出部1901は、環境マップ、仮想カメラ情報、仮想被写体情報に基づいて、後述の色信号値補正処理で用いる補正係数αを導出する。ここで、補正係数αは、仮想被写体を仮想標準反射素材と仮定した場合の色信号値に基づく係数である。
図21は、本ステップにおける補正係数導出処理の流れを示すフローチャートである。
ステップ2101において、補正係数導出部1901は、ステップ2001で取得した仮想カメラ情報から視点を決定し、仮想カメラの撮影位置を設定する。
ステップ2102において、補正係数導出部1901は、ステップ2001で取得した仮想被写体情報に含まれる反射/透過特性を、仮想標準反射特性に設定(置換)し、当該仮想標準反射率に設定された仮想被写体を所定の位置に配置する。ここで、仮想標準反射特性(仮想標準反射率)は、ある面に入射する光が散乱することにより観察者から見た当該面の明るさが観察者の視点の角度にかかわらず同じになる完全拡散反射特性とする。仮想標準反射率には、カメラの適正露出を定義するためのもので、予め定めた任意の値が設定される。この点、一般的な実写画像の撮像に用いられるカメラでの適正露出は、グレースケールで反射率18%の被写体の画素値がD/2(D:記録される最大画素値)となるように設計されている。そこで、本実施例では、仮想カメラの露出条件を上記設計に合わせるべく、仮想被写体情報に含まれる反射/透過特性を18%に置き換えるものとする。具体的には、後述の光線追跡処理で使用される式(8)〜式(10)における係数(rR、rG、rB)を、rR=rG=rB=0.18×255と設定する。この場合において、255を乗算しているのは、(rR、rG、rB)はそれぞれ0〜255の範囲で、光線と仮想被写体との交点における色信号値を表すためである。
ステップ2103〜ステップ2105は、実施例1に係る図6のフローチャートのステップ603〜ステップ605と同様である。すなわち、補正係数導出部1901は、レンダリング処理対象の画素を選択し(S2103)、選択された画素の方向に光線を発射し(S2104)、発射された光線と仮想被写体との交点の色信号値を光線追跡処理により取得する(S2105)。
ステップ2106において、補正係数導出部1901は、全画素の光線追跡処理が完了したかどうかを判定する。完了していなければステップ2103に戻り、次の処理対象の画素を選択する。一方、完了していればステップ2107に進む。
ステップ2107において、補正係数導出部1901は、仮想被写体の色信号値から補正係数αを導出する。図22は、仮想被写体の反射特性を仮想標準反射率18%とした場合の画像を示している。補正係数αは、図22で示す仮想被写体の色信号値を、D/2に補正する係数である。ステップ2105で取得された色信号値を〔R’,G’,B’〕とすると、仮想被写体の色信号値G’の平均値A’が式(26)から求められ、得られた平均値A’と式(27)から、補正係数αを求めることができる。なお、ここでは仮想被写体を構成する全画素から補正係数を導出しているが、仮想被写体のうち注目されやすい個所(仮想被写体が人物の場合における顔領域など)の画素のみから導出してもよい。
Figure 2013127774
Figure 2013127774
このようにして、補正係数cが求められる。
図20のフローチャートの説明に戻る。
ステップ2003において、仮想被写体合成部1902は、取得した背景画像、環境マップ、仮想被写体情報、及び導出された補正係数αに基づいて、背景画像に仮想被写体を合成した画像を生成する。
図23は、本ステップにおける仮想被写体合成処理の流れを示すフローチャートである。本実施例に係る仮想被写体合成処理では、仮想被写体の色信号値を取得した後、上述の補正係数導出処理で得られた補正係数αに基づいて仮想被写体の色信号値を補正し、背景画像に合成する点で、実施例1に係る仮想被写体合成処理と異なっている。
ステップ2301において、仮想被写体合成部1902は、環境マップ、仮想カメラ情報、仮想被写体情報及び背景画像を取得する。
ステップ2302において、仮想被写体合成部1902は、背景画像の中から、色信号値を取得する処理の対象となる画素を選択する。
ステップ2303において、仮想被写体合成部1902は、ステップ2301で取得した仮想カメラ情報において特定される視点位置から、選択された画素に向けて光線を発射する。
ステップ2304において、仮想被写体合成部1902は、発射された光線が仮想被写体と交差するか否かを判定する。交差すると判定された場合はステップ2305に進み、交差しないと判定された場合はステップ2307に進む。
ステップ2305において、仮想被写体合成部1902は、選択された画素の色信号値、この場合には、仮想被写体と光線との交点における色信号値を取得する。
ステップ2306において、仮想被写体合成部1902は、前述のステップ2002で導出された補正係数αに従って、ステップ2305で取得された仮想被写体の色信号値を補正する。具体的には、ステップ2305で取得された仮想被写体の色信号値〔R,G,B〕の補正後の色信号値〔R,G,B〕を、補正係数αとの積算、すなわち、下記の式(28)〜式(30)によってそれぞれ求める。
=α×R ・・・式(28)
=α×G ・・・式(29)
=α×B ・・・式(30)
これにより、例えば前述の図18の(a)に示した仮想被写体画像が、図24の(a)に示すような適正露出の仮想被写体画像に補正される。
ステップ2307において、仮想被写体合成部1903は、ステップ2301で取得した背景画像とステップ2303で発射した光線との交点における色信号値を取得する。
以上のような処理によって、背景画像と適正露出に補正された仮想被写体とが合成された合成画像が得られる。図24の(b)は、図24の(a)に示す補正後の仮想被写体画像を、適正露出の背景画像と合成して得られた合成画像を示している。図18の(b)と比較すると、仮想被写体と背景画像の明るさが一致し、より自然な合成画像となっているのが分かる。
図20のフローチャートの説明に戻る。
ステップ2004において、仮想被写体合成部1902は、上述の仮想被写体合成処理で生成された合成画像のデータを出力する。
以上のとおり本実施例によれば、実写した背景画像と仮想被写体との合成画像を生成する処理において、適正露出となるような仮想被写体画像を生成することで、自然な合成画像を自動で生成することが可能になる。
[実施例4]
実施例1〜3では、仮想被写体を照射する光と背景画像との間のホワイトバランスや明るさの違いを補正する際の補正係数を、無彩色オブジェクト等をレンダリングして得られた色信号値を元に導出していた。すなわち、本来のレンダリングとは別に、仮のレンダリングを行う必要があった。次に、そのような仮のレンダリングを行うことなく補正係数を導出する態様について、実施例4として説明する。なお、実施例1〜3と共通する部分については説明を簡略化ないしは省略し、差異点を中心に説明することとする。
図25は、本実施例に係る画像処理装置の機能構成図である。この図25に示される構成は、画像処理アプリケーションソフトウェアとして実現される。図25は、実施例1に係る画像処理装置の機能構成図(図4参照)とほぼ同様であるが、環境マップが補正係数導出部2501には入力されず、仮想被写体合成部403のみに入力されている。そして、環境マップに代えて環境マップ部分値テーブルが、補正係数導出部2501に入力されている。環境マップ部分値テーブルについては、後述する。
本実施例における補正係数導出部2501は、入力された仮想カメラ情報、仮想被写体情報及び環境マップ部分値テーブルを用いて補正係数を導出する。導出された補正係数は、RAM102に記憶される。背景画像補正部402や仮想被写体合成部403については実施例1と異なるところがないため説明を省略する。
図26は、本実施例に係る画像処理装置100において実行される画像処理の全体の流れを示すフローチャートである。
ステップ2601において、画像処理装置100は、背景画像、環境マップ、環境マップ部分値テーブル、仮想カメラ情報及び仮想被写体情報を取得する。取得したデータのうち環境マップ部分値テーブル、仮想カメラ情報及び仮想被写体情報は補正係数導出部2501に送られ、背景画像、環境マップ、仮想カメラ情報及び仮想被写体情報は仮想被写体合成部403に送られる。また、背景画像は背景画像補正部402に送られる。
ステップ2602において、補正係数導出部2501は、入力された仮想カメラ情報、仮想被写体情報、環境マップ部分値テーブルを用いて、補正係数を導出する。ここで、環境マップ部分値テーブルは、環境マップ内の特定の領域毎の画素値平均をリストとして保持するもので、原点から各領域の中心に向けたベクトルと各領域での画素値平均とが対応付けられて保持されている。図27は、環境マップ部分値テーブルの一例であり、x、y、z軸の正負方向の全6個のベクトルについて、各ベクトルがその中心に向いたそれぞれの領域(ここでは、半球)における画素値平均(DR,DG,DB)が保持されている。この画素値平均(DR,DG,DB)が、環境マップの各領域から原点に照射する光線を相対的に表している。図28の(a)〜(f)は、図27の環境マップ部分値テーブルにおける各ベクトル(x、y、z軸の正負方向)の画素値平均(DR,DG,DB)に対応する特定の領域(半球)を示している。本実施例では、環境マップを特定の領域に分ける際の形状を、仮想空間のx、y、zの各軸の正負方向の全6ベクトルを中心とした半球としたが、ベクトルの数や領域の形状(広狭)はこれに限るものではない。例えば、ベクトルの数を増やすことでより高精度の結果を得られるが逆に処理負担は増すことになるので、これらのバランスを考慮して適宜設定されることになる。導出した補正係数はRAM102に記憶される。
図29は、本ステップにおける補正係数導出処理の詳細を示すフローチャートである。
ステップ2901において、補正係数導出部2501は、前述のステップ2601で取得した仮想カメラ情報に基づいて視点を決定し、仮想カメラの撮影位置を設定する。本ステップは、実施例1に係る図6のフローチャートのステップ601と同様である。
ステップ2902において、補正係数導出部2501は、まず、仮想被写体情報から仮想被写体の位置を設定する。そして、ステップ2901で設定した仮想カメラの撮影位置(視点)と、上記設定した仮想被写体の位置とに基づき、前述の環境マップ部分値テーブルを参照して、仮想被写体に影響を与える光としての画素値平均(DR,DG,DB)を取得する。例えば、仮想被写体から仮想カメラへ向かうベクトルをVとし、当該ベクトルVに最も近いベクトルを環境マップ部分値テーブル内のベクトルから選択することで、最適な画素値平均を得る。図30は、仮想被写体に影響を与える光としての画素値平均を取得する様子を説明する図である。図30において、仮想被写体700から仮想カメラ303に向かう矢印3001がベクトルVを示している。このベクトルV3001に最も近い矢印3002で示すベクトル(X軸に沿ったベクトル)が環境マップ部分値テーブルから選択され、当該ベクトルに対応付けられた画素値平均が得られる。なお、破線3003は、ベクトル3002に対応する領域(半球)を示す。ここでは、仮想被写体700から仮想カメ303に向かうベクトルVに最も近い位置のベクトルを1つだけ選択する場合を説明したが、近い位置のベクトルを複数選択し、当該選択した複数のベクトルに対応する画素値平均の加重平均を取ることで、最適な画素値平均としてもよい。このようにして、本実施例では、仮のレンダリングを行うことなく、環境マップの中で仮想被写体に影響を与える領域を特定することにより、仮想被写体にどのような光が照射されているのかが特定される。
ステップ2903において、補正係数導出部2501は、取得された画素値平均(DR,DG,DB)から、補正係数を導出する。補正係数は、ステップ2902で取得した画素値平均(DR,DG,DB)のホワイトバランスを補正可能な値であればよい。具体的には、実施例1で示した式(14)及び式(16)における色信号値(rx,y,gx,y,bx,y)に代えて、取得された最適な画素値平均(DR,DG,DB)を用いることで、補正係数(tR,tG,tB)を導出する。
図26のフローチャートの説明に戻る。
以降のステップ2603(背景画像補正処理)、ステップ2604(仮想被写体合成処理)及びステップ2605(合成画像出力処理)は、実施例1に係る図5のフローチャートのステップ503〜ステップ505と同様であるため、説明を省略する。
以上のとおり本実施例によれば、無彩色オブジェクト等を用いた仮のレンダリングをすることなく補正係数を導出することができ、処理を高速に行うことが可能となる。
[実施例5]
実施例4では、仮想被写体の位置と仮想カメラの位置を基に、仮想被写体に影響を与える光としての画素値平均を環境マップ部分値テーブルから取得していた。すなわち、実施例4においては被写体とカメラの位置関係のみに基づいて最適な画素値平均を取得しているところ、これは被写体の法線ベクトルが仮想カメラに向かっていることを前提とするものであった。そのため、仮想被写体の法線ベクトルの向きが仮想カメラの位置から大きく外れていると、仮想被写体に実際に照射する光と環境マップ部分値テーブルから取得される結果とが大きくかい離することになる。そこで、仮想被写体の位置関係に加えてその形状も考慮する態様について、実施例5として説明する。なお、実施例1〜4と共通する部分については説明を簡略化ないしは省略し、差異点を中心に説明することとする。
図31は、本実施例に係る補正係数導出処理の流れを示すフローチャートである。なお、本実施例における画像処理装置の構成は実施例4で示した図25と同様であるため、図25を基に説明する。
ステップ3101において、補正係数導出部2501は、仮想カメラ情報から視点を決定し、仮想カメラの撮影位置を設定する。
ステップ3102において、補正係数導出部2501は、仮想被写体情報から仮想被写体の設定位置を特定して、当該特定された位置に無彩色オブジェクトとしての仮想被写体を配置する。
ステップ3103において、補正係数導出部2501は、仮想カメラから見た上記仮想被写体について処理対象の画素を選択する。
ステップ3104において、補正係数導出部2501は、ステップ3101で決定した視点(仮想カメラの設定位置)から、選択された画素の方向に光線を発射する。
ステップ3105において、補正係数導出部2501は、発射された光線と仮想被写体との交点における法線ベクトルを取得する。図32は、法線ベクトルを取得する様子を示す図である。図32において、矢印3201は、ステップ3104で仮想被写体700に向けて発射された光線を表し、この光線3201と仮想被写体700との交点から環境マップ306に向かう垂直な矢印3202が、求める法線ベクトルを表している。
ステップ3106において、補正係数導出部2501は、全画素の処理が完了したかどうかを判定する。すなわち、仮想カメラの視点から見た仮想被写体の各画素に対応する仮想被写体上の法線ベクトルがすべて取得されたかどうかが判定される。未処理の画素があればステップ3103に戻り、次の処理対象の画素を選択する。一方、完了していればステップ3107に進む。
ステップ3107において、補正係数導出部2501は、取得した全ての法線ベクトルから補正係数を導出する。具体的には、まず、全ての法線ベクトルについて、環境マップ部分値テーブルを参照して、最適な画素値平均(DR,DG,DB)を導出する。例えば、全ての法線ベクトルについて、最も近いベクトルを環境マップ部分値テーブル内のベクトルから選択し、当該選択されたベクトルに対応する画素値平均(DR,DG,DB)を得る。或いは、全ての法線ベクトルの平均ベクトルを求め、得られた平均ベクトルに最も近いベクトルを環境マップ部分値テーブル内のベクトルから選択し、当該選択されたベクトルに対応する画素値平均(DR,DG,DB)を得るようにしてもよい。図33は、法線ベクトルに最も近いベクトルを選択する様子を説明する図である。法線ベクトル3202に最も近い矢印3301で示すベクトル(Y軸に沿ったベクトル)が環境マップ部分値テーブルから選択され、当該ベクトルに対応付けられた画素値平均が取得される。なお、破線3302は、ベクトル3301に対応する領域(半球)を示す。そして、実施例4と同様、導出された最適な画素値平均(DR,DG,DB)から、式(14)及び式(16)における色信号値(rx,y,gx,y,bx,y)に代えて、導出された最適な画素値平均(DR,DG,DB)を用いることで、補正係数(tR,tG,tB)を導出する。
このように本実施例では、法線ベクトルと環境マップ部分値テーブルとから仮想被写体に影響を与える光としての画素値平均を得るので、実施例1のように複数の光線を発射する必要がない。そのため、仮のレンダリングを行う実施例1の場合と比べ処理負担を軽くすることができ、より高速に処理することが可能となる。
[実施例6]
実施例4及び5は、共に実施例1をベースとしていた。つまり、導出された補正係数を用いて背景画像が補正されることになる。しかし、実施例4及び5に開示された内容は、背景画像を補正する場合に限られるものではなく、実施例2のように環境マップを補正する場合にも適用可能である。その場合は、図15〜図17を用いて説明した実施例2における処理をベースに各種処理が実行される。例えば、実施例4の場合、第一補正係数導出部1501に環境マップ部分値テーブルを入力し、図26のフローチャートのステップ2602に係る補正係数導出処理で補正係数を導出し、当該導出した補正係数に従って環境マップを補正する、といった具合である。
(その他の実施形態)
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。

Claims (19)

  1. 背景画像に仮想被写体を合成して合成画像を生成する画像処理装置において、
    前記仮想被写体の周囲の光源の情報を示す環境マップを用いて、前記仮想被写体が置かれる位置に配置された無彩色オブジェクトをレンダリングすることで補正係数を導出する補正係数導出手段と、
    導出された前記補正係数に基づいて前記背景画像を補正する背景画像補正手段と、
    前記環境マップを用いて、補正された背景画像と前記仮想被写体とを合成する合成手段と、
    を備えることを特徴とする画像処理装置。
  2. 背景画像に仮想被写体を合成して合成画像を生成する画像処理装置において、
    前記仮想被写体の周囲の光源の情報を示す環境マップを用いて、前記仮想被写体が置かれる位置に配置された無彩色オブジェクトをレンダリングすることで第一補正係数を導出する第一補正係数導出手段と、
    前記背景画像から第二補正係数を導出する第二補正係数導出手段と、
    導出された前記第一補正係数及び前記第二補正係数に基づいて、前記環境マップを補正する環境マップ補正手段と、
    補正された環境マップを用いて、前記背景画像と前記仮想被写体とを合成する合成手段と、
    を備えることを特徴とする画像処理装置。
  3. 前記補正係数導出手段で導出される補正係数は、前記無彩色オブジェクトのレンダリング結果から得られる無彩色の色成分の比であることを特徴とする請求項1に記載の画像処理装置。
  4. 前記第一補正係数導出手段で導出される第一補正係数は、前記無彩色オブジェクトのレンダリング結果から得られる色成分の比であり、
    前記第二補正係数導出手段で導出される第二補正係数は、前記背景画像のホワイトバランスから得られる色成分の比である
    ことを特徴とする請求項2に記載の画像処理装置。
  5. 前記無彩色オブジェクトは、白球であることを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。
  6. 背景画像に仮想被写体を合成して合成画像を生成する画像処理装置において、
    任意の反射特性が設定された前記仮想被写体に対してレンダリングをすることで補正係数を導出する補正係数導出手段と、
    導出された前記補正係数に基づいて前記仮想被写体の色信号値を補正し、前記環境マップを用いて、前記背景画像と色信号値が補正された仮想被写体とを合成する合成手段と
    を備えることを特徴とする画像処理装置。
  7. 前記任意の反射特性は、完全拡散反射特性であって、かつグレースケールであることを特徴とする請求項6に記載の画像処理装置。
  8. 背景画像に仮想被写体を合成して合成画像を生成する画像処理装置において、
    仮想被写体を観察する視点を設定する設定手段と、
    設定された前記視点に基づいて、前記仮想被写体の周囲の光源の情報を示す環境マップにおいて前記仮想被写体に影響を与える光源の領域を特定し、当該特定された領域に基づいて、補正係数を導出する補正係数導出手段と、
    導出された前記補正係数に基づいて、前記背景画像を補正する背景画像補正手段と、
    前記環境マップを用いて、補正された背景画像と前記仮想被写体とを合成する合成手段と、
    を備えることを特徴とする画像処理装置。
  9. 背景画像に仮想被写体を合成して合成画像を生成する画像処理装置において、
    仮想被写体を観察する視点を設定する設定手段と、
    設定された前記視点に基づいて、前記仮想被写体の周囲の光源の情報を示す環境マップにおいて、前記仮想被写体に影響を与える光源の領域を特定し、当該特定された領域に基づいて補正係数を導出する補正係数導出手段と、
    導出された前記補正係数に基づいて、前記環境マップを補正する環境マップ補正手段と、
    補正された環境マップを用いて、前記背景画像と前記仮想被写体とを合成する合成手段と、
    を備えることを特徴とする画像処理装置。
  10. 前記補正係数導出手段は、前記仮想被写体が置かれる位置から前記視点へ向かうベクトルに基づいて、前記仮想被写体に影響を与える光源の領域を特定することを特徴とする請求項8又は9に記載の画像処理装置。
  11. 前記補正係数導出手段は、前記視点から前記仮想被写体が置かれる位置に向かって光線を発射して、当該光線と前記仮想被写体との交点における法線ベクトルを取得し、取得した法線ベクトルに基づいて、前記仮想被写体に影響を与える光源の領域を特定することを特徴とする請求項8又は9に記載の画像処理装置。
  12. 前記補正係数導出手段は、環境マップ部分値テーブルを用いて、前記特定された領域に対応する画素値の平均値を取得することにより、補正係数を導出することを特徴とする請求項8又は9に記載の画像処理装置。
  13. 前記環境マップ部分値テーブルは、前記環境マップの領域毎の画素値の平均値と原点から各領域に向かうベクトルとが対応付けられて保持されているテーブルであることを特徴とする請求項12に記載の画像処理装置。
  14. 前記補正係数導出手段は、特定された領域が複数の場合、各領域の画素値の平均値を加重平均することにより、補正係数を導出することを特徴とする請求項8又は9に記載の画像処理装置。
  15. 背景画像に仮想被写体を合成して合成画像を生成する画像処理方法において、
    前記仮想被写体の周囲の光源の情報を示す環境マップを用いて、前記仮想被写体が置かれる位置に配置された無彩色オブジェクトをレンダリングすることで補正係数を導出する補正係数導出ステップと、
    導出された前記補正係数に基づいて前記背景画像を補正する背景画像補正ステップと、
    前記環境マップを用いて、補正された背景画像と前記仮想被写体とを合成する合成ステップと、
    を含むことを特徴とする画像処理方法。
  16. 背景画像に仮想被写体を合成して合成画像を生成する画像処理方法において、
    前記仮想被写体の周囲の光源の情報を示す環境マップを用いて、前記仮想被写体が置かれる位置に配置された無彩色オブジェクトをレンダリングすることで第一補正係数を導出する第一補正係数導出ステップと、
    前記背景画像から第二補正係数を導出する第二補正係数導出ステップと、
    導出された前記第一補正係数及び前記第二補正係数に基づいて、前記環境マップを補正する環境マップ補正ステップと、
    補正された環境マップを用いて、前記背景画像と前記仮想被写体とを合成する合成ステップと、
    を含むことを特徴とする画像処理方法。
  17. 背景画像に仮想被写体を合成して合成画像を生成する画像処理方法において、
    仮想被写体を観察する視点を設定する設定ステップと、
    前記設定された視点に基づいて、前記仮想被写体の周囲の光源の情報を示す環境マップにおいて、前記仮想被写体に影響を与える光源に対応する領域を特定し、当該特定された領域に基づいて、補正係数を導出する補正係数導出ステップと、
    導出された前記補正係数に基づいて、前記背景画像を補正する背景画像補正ステップと、
    前記環境マップを用いて、補正された背景画像と前記仮想被写体とを合成する合成ステップと、
    を含むことを特徴とする画像処理方法。
  18. 背景画像に仮想被写体を合成して合成画像を生成する画像処理方法において、
    仮想被写体を観察する視点を設定する設定ステップと、
    前記設定された視点に基づいて、前記仮想被写体の周囲の光源の情報を示す環境マップにおいて、前記仮想被写体に影響を与える光源に対応する領域を特定し、当該特定された領域に基づいて、補正係数を導出する補正係数導出ステップと、
    導出された前記補正係数に基づいて、前記環境マップを補正する環境マップ補正ステップと、
    補正された環境マップを用いて、背景画像と前記仮想被写体とを合成する合成ステップと、
    を含むことを特徴とする画像処理方法。
  19. コンピュータを請求項1乃至14のいずれか1項に記載の画像処理装置として機能させるためのプログラム。
JP2012217162A 2011-11-16 2012-09-28 画像処理装置、画像処理方法及びプログラム Withdrawn JP2013127774A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012217162A JP2013127774A (ja) 2011-11-16 2012-09-28 画像処理装置、画像処理方法及びプログラム
US13/676,353 US20130120451A1 (en) 2011-11-16 2012-11-14 Image processing device, image processing method, and program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011250649 2011-11-16
JP2011250649 2011-11-16
JP2012217162A JP2013127774A (ja) 2011-11-16 2012-09-28 画像処理装置、画像処理方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2013127774A true JP2013127774A (ja) 2013-06-27

Family

ID=48280206

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012217162A Withdrawn JP2013127774A (ja) 2011-11-16 2012-09-28 画像処理装置、画像処理方法及びプログラム

Country Status (2)

Country Link
US (1) US20130120451A1 (ja)
JP (1) JP2013127774A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016119975A (ja) * 2014-12-24 2016-07-07 株式会社東芝 医用画像処理装置、医用画像処理装置における画像データ表示方法およびx線ct装置
WO2017217296A1 (ja) * 2016-06-16 2017-12-21 株式会社ソニー・インタラクティブエンタテインメント 画像処理装置
JP2018141653A (ja) * 2017-02-27 2018-09-13 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
KR20210049648A (ko) * 2019-10-25 2021-05-06 주식회사 아이오로라 객체와 배경 이미지를 합성하여 실감형 포토 영상을 제공하는 영상 처리 시스템 및 방법
KR20230063164A (ko) * 2021-11-01 2023-05-09 서울과학기술대학교 산학협력단 환경 벡터 기반 영상 생성 방법 및 장치
WO2023181904A1 (ja) * 2022-03-24 2023-09-28 ソニーグループ株式会社 情報処理装置、情報処理方法および記録媒体

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2869261B1 (en) * 2013-11-04 2018-10-31 Cyrill Gyger Method for processing image data representing a three-dimensional volume
US10672187B2 (en) * 2015-02-27 2020-06-02 Sony Corporation Information processing apparatus and information processing method for displaying virtual objects in a virtual space corresponding to real objects
KR102636465B1 (ko) * 2016-10-24 2024-02-14 삼성전자주식회사 영상 처리 장치, 영상 처리 방법 및 전자장치
WO2019047985A1 (zh) * 2017-09-11 2019-03-14 Oppo广东移动通信有限公司 图像处理方法和装置、电子装置和计算机可读存储介质
CN108876891B (zh) * 2017-11-27 2021-12-28 北京旷视科技有限公司 人脸图像数据采集方法及人脸图像数据采集装置
US10715714B2 (en) 2018-10-17 2020-07-14 Verizon Patent And Licensing, Inc. Machine learning-based device placement and configuration service
CN110033510B (zh) * 2019-03-25 2023-01-31 创新先进技术有限公司 建立颜色映射关系用于校正渲染图像颜色的方法及装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2329292A (en) * 1997-09-12 1999-03-17 Orad Hi Tec Systems Ltd Camera position sensing system
US6166744A (en) * 1997-11-26 2000-12-26 Pathfinder Systems, Inc. System for combining virtual images with real-world scenes
US6628298B1 (en) * 1998-07-17 2003-09-30 The Regents Of The University Of California Apparatus and method for rendering synthetic objects into real scenes using measurements of scene illumination
EP1074943A3 (en) * 1999-08-06 2004-03-24 Canon Kabushiki Kaisha Image processing method and apparatus
JP3939066B2 (ja) * 2000-03-08 2007-06-27 富士通日立プラズマディスプレイ株式会社 カラープラズマディスプレイ装置
US7262770B2 (en) * 2002-03-21 2007-08-28 Microsoft Corporation Graphics image rendering with radiance self-transfer for low-frequency lighting environments
US6903738B2 (en) * 2002-06-17 2005-06-07 Mitsubishi Electric Research Laboratories, Inc. Image-based 3D modeling rendering system
WO2004047008A1 (en) * 2002-11-15 2004-06-03 Esc Entertainment, A California Corporation Reverse-rendering method for digital modeling
US7091973B1 (en) * 2003-06-20 2006-08-15 Jonathan Michael Cohen Apparatus and method for estimating reflected radiance under complex distant illumination
US7391424B2 (en) * 2003-08-15 2008-06-24 Werner Gerhard Lonsing Method and apparatus for producing composite images which contain virtual objects
JP4804256B2 (ja) * 2006-07-27 2011-11-02 キヤノン株式会社 情報処理方法
KR100879536B1 (ko) * 2006-10-30 2009-01-22 삼성전자주식회사 영상의 화질 개선을 위한 방법 및 시스템
US20090046099A1 (en) * 2006-11-13 2009-02-19 Bunkspeed Real-time display system
JP5026526B2 (ja) * 2006-11-20 2012-09-12 トムソン ライセンシング ライトのモデリングのための方法およびシステム
JP2008153768A (ja) * 2006-12-14 2008-07-03 Eastman Kodak Co 撮像装置、およびホワイトバランス処理装置
JP5315158B2 (ja) * 2008-09-12 2013-10-16 キヤノン株式会社 画像処理装置及び画像処理方法
US8437537B2 (en) * 2009-03-27 2013-05-07 Mitsubishi Electric Research Laboratories, Inc. Method and system for estimating 3D pose of specular objects
US8797321B1 (en) * 2009-04-01 2014-08-05 Microsoft Corporation Augmented lighting environments
US8803880B2 (en) * 2009-08-21 2014-08-12 Peking University Image-based lighting simulation for objects
WO2011080142A1 (en) * 2009-12-21 2011-07-07 Thomson Licensing Method for generating an environment map
US9432617B2 (en) * 2011-04-26 2016-08-30 Dell Products L.P. White balance adjustment of an image at an information handling system
US8676045B1 (en) * 2011-11-09 2014-03-18 Amazon Technologies, Inc. Studio arrangement
US8948545B2 (en) * 2012-02-28 2015-02-03 Lytro, Inc. Compensating for sensor saturation and microlens modulation during light-field image processing

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016119975A (ja) * 2014-12-24 2016-07-07 株式会社東芝 医用画像処理装置、医用画像処理装置における画像データ表示方法およびx線ct装置
WO2017217296A1 (ja) * 2016-06-16 2017-12-21 株式会社ソニー・インタラクティブエンタテインメント 画像処理装置
JPWO2017217296A1 (ja) * 2016-06-16 2018-11-08 株式会社ソニー・インタラクティブエンタテインメント 画像処理装置
US10950039B2 (en) 2016-06-16 2021-03-16 Sony Interactive Entertainment Inc. Image processing apparatus
JP2018141653A (ja) * 2017-02-27 2018-09-13 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
KR20210049648A (ko) * 2019-10-25 2021-05-06 주식회사 아이오로라 객체와 배경 이미지를 합성하여 실감형 포토 영상을 제공하는 영상 처리 시스템 및 방법
KR102334350B1 (ko) * 2019-10-25 2021-12-03 주식회사 아이오로라 객체와 배경 이미지를 합성하여 실감형 포토 영상을 제공하는 영상 처리 시스템 및 방법
KR20230063164A (ko) * 2021-11-01 2023-05-09 서울과학기술대학교 산학협력단 환경 벡터 기반 영상 생성 방법 및 장치
KR102637112B1 (ko) * 2021-11-01 2024-02-15 서울과학기술대학교 산학협력단 환경 벡터 기반 영상 생성 방법 및 장치
WO2023181904A1 (ja) * 2022-03-24 2023-09-28 ソニーグループ株式会社 情報処理装置、情報処理方法および記録媒体

Also Published As

Publication number Publication date
US20130120451A1 (en) 2013-05-16

Similar Documents

Publication Publication Date Title
JP2013127774A (ja) 画像処理装置、画像処理方法及びプログラム
US11210838B2 (en) Fusing, texturing, and rendering views of dynamic three-dimensional models
US11877086B2 (en) Method and system for generating at least one image of a real environment
CN106548455B (zh) 用于调整图像的亮度的设备和方法
US9406147B2 (en) Color balance in digital photography
JP7007348B2 (ja) 画像処理装置
JP5011168B2 (ja) 仮想視点画像生成方法、仮想視点画像生成装置、仮想視点画像生成プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体
WO2015166684A1 (ja) 画像処理装置と画像処理方法
JP6812271B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP6576083B2 (ja) 画像処理装置、画像処理方法、およびプログラム
US10169891B2 (en) Producing three-dimensional representation based on images of a person
JP2016020891A (ja) 形状計測システムおよび撮像装置
JP6869652B2 (ja) 画像処理装置、撮像装置、画像処理方法、画像処理プログラム、および、記憶媒体
JP6552266B2 (ja) 画像処理装置、画像処理方法およびプログラム
CN109427089B (zh) 基于环境光照条件的混合现实对象呈现
JP2007272847A (ja) 照明シミュレーション方法及び画像合成方法
EP4150560B1 (en) Single image 3d photography with soft-layering and depth-aware inpainting
JP5865092B2 (ja) 画像処理装置、画像処理方法及びプログラム
Hanusch A new texture mapping algorithm for photorealistic reconstruction of 3D objects
JP6896811B2 (ja) 画像処理装置、画像処理方法、およびプログラム
KR20110074442A (ko) 화상 처리 장치, 화상 처리 방법 및 기록매체
CN108377383B (zh) 一种多投影3d系统光场对比度调整方法及其系统
Lee et al. Interactive retexturing from unordered images
US20230316640A1 (en) Image processing apparatus, image processing method, and storage medium
TW201818353A (zh) 虛擬物件之影像合成方法與裝置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150903

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20160229