(57)【要約】【課題】高品位なレンダリング画像を生成可能な処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体を提供すること。【解決手段】処理装置は、形状情報と所定の光源条件とに基づいて生成されたレンダリング画像の一部を形状情報に基づかないベース画像に置換することで置換画像を生成する処理装置であって、レンダリング画像と、ベース画像と、形状情報の誤差が大きい対象領域と、に基づいて、置換画像を生成する際に使用される調整係数を算出する調整係数算出部と、レンダリング画像における対象領域をベース画像および調整係数を用いて置換する置換部と、を有する。【選択図】図３
2020129313.tif 000002
【特許請求の範囲】
【請求項１】
形状情報と所定の光源条件とに基づいて生成されたレンダリング画像の一部を前記形状情報に基づかないベース画像に置換することで置換画像を生成する処理装置であって、
前記レンダリング画像と、前記ベース画像と、前記形状情報の誤差が大きい対象領域と、に基づいて、前記置換画像を生成する際に使用される調整係数を算出する調整係数算出部と、
前記レンダリング画像における前記対象領域を前記ベース画像および前記調整係数を用いて置換する置換部と、を有することを特徴とする処理装置。
【請求項２】
前記形状情報は、面法線情報であることを特徴とする請求項１に記載の処理装置。
【請求項３】
互いに異なる複数の位置からの光を被写体に順次照射して撮影された被写体の複数の画像に基づいて、前記面法線情報を取得する面法線情報取得部を更に有することを特徴とする請求項２に記載の処理装置。
【請求項４】
互いに異なる複数の位置からの光を被写体に順次照射して撮影された被写体の複数の画像と、前記複数の画像と同じ光源条件に基づいて生成された前記レンダリング画像とに基づいて前記対象領域を決定する領域検出部を更に有することを特徴とする請求項１から３のいずれか１項に記載の処理装置。
【請求項５】
前記調整係数算出部は、前記レンダリング画像および前記ベース画像のそれぞれにおける前記対象領域に含まれる対象画素の周辺の参照画素における輝度値を用いて前記調整係数を算出することを特徴とする請求項１から４のいずれか１項に記載の処理装置。
【請求項６】
前記調整係数算出部は、前記レンダリング画像における前記対象領域に含まれる対象画素の周辺の複数の参照画素における平均輝度値と、前記ベース画像における前記対象領域に含まれる対象画素の周辺の複数の参照画素における平均輝度値との比、または前記レンダリング画像における前記対象領域に含まれる対象画素の周辺の複数の参照画素における輝度値と、前記ベース画像における前記対象領域に含まれる対象画素の周辺の複数の参照画素における輝度値との比の平均値のいずれかを、前記調整係数とすることを特徴とする請求項１から５のいずれか１項に記載の処理装置。
【請求項７】
前記調整係数算出部は、前記対象領域に基づいて前記調整係数を算出する際の参照画素を選択し、前記参照画素を用いて前記調整係数を算出することを特徴とする請求項１から６のいずれか１項に記載の処理装置。
【請求項８】
前記調整係数算出部は、前記ベース画像の輝度値に基づいて前記調整係数を算出する際の参照画素を選択し、前記参照画素を用いて前記調整係数を算出することを特徴とする請求項１から７のいずれか１項に記載の処理装置。
【請求項９】
前記調整係数算出部は、前記レンダリング画像、前記ベース画像、前記対象領域、およびガイド画像に基づいて前記調整係数を算出することを特徴とする請求項１から８のいずれか１項に記載の処理装置。
【請求項１０】
前記ガイド画像とは、前記ベース画像、前記形状情報、および意味的領域分割マップのうちの少なくとも１つであることを特徴とする請求項９に記載の処理装置。
【請求項１１】
前記調整係数算出部は、前記ガイド画像に基づいて前記調整係数を算出する際の参照画素を選択し、前記参照画素を用いて前記調整係数を算出することを特徴とする請求項９または１０に記載の処理装置。
【請求項１２】
前記調整係数算出部は、前記ガイド画像における前記対象領域に含まれる対象画素と前記対象画素の周辺の画素との差分に基づいて前記参照画素を選択することを特徴とする請求項１１に記載の処理装置。
【請求項１３】
前記調整係数算出部は、前記ガイド画像における前記対象領域に含まれる対象画素と前記対象画素の周辺の画素との色差に基づいて前記参照画素を選択することを特徴とする請求項１２に記載の処理装置。
【請求項１４】
前記ベース画像は、互いに異なる複数の位置からの光を被写体に順次照射して撮影された被写体の複数の画像に基づいた画像であることを特徴とする請求項１から１３のいずれか１項に記載の処理装置。
【請求項１５】
前記ベース画像は、互いに異なる複数の位置からの光を被写体に順次照射して撮影された被写体の複数の画像から各画素について輝度値の大きさが最大となるように生成された最大値画像であることを特徴とする請求項１から１３のいずれか１項に記載の処理装置。
【請求項１６】
光源部と、
請求項１から１５のいずれか１項に記載の処理装置と、を有することを特徴とする処理システム。
【請求項１７】
前記光源部は、移動可能であることを特徴とする請求項１６に記載の処理システム。
【請求項１８】
前記光源部は、それぞれ位置が異なる３つ以上の光源を備えることを特徴とする請求項１６または１７に記載の処理システム。
【請求項１９】
被写体を撮像する撮像部を更に有することを特徴とする請求項１６から１８のいずれか１項に記載の処理システム。
【請求項２０】
撮像光学系を介して形成された光学像を光電変換する撮像素子と、
請求項１から１５のいずれか１項に記載の処理装置と、を有することを特徴とする撮像装置。
【請求項２１】
形状情報と所定の光源条件と基づいて生成されたレンダリング画像の一部を前記形状情報に基づかないベース画像に置換することで置換画像を生成する処理を行う処理方法であって、
前記レンダリング画像と、前記ベース画像と、前記形状情報の誤差が大きい対象領域と、に基づいて、前記置換画像を生成する際に使用される調整係数を算出するステップと、
前記対象領域を前記ベース画像および前記調整係数を用いて置換するステップと、を有することを特徴とする処理方法。
【請求項２２】
請求項２１に記載の処理方法をコンピュータに実行させるための処理プログラム。
【請求項２３】
請求項２２に記載のプログラムを記録したコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体に関する。
【背景技術】
【０００２】
被写体に関するより多くの物理情報を取得しておくことで、撮像後の画像処理において、物理モデルに基づく画像生成を行うことができる。例えば、被写体の見えを変更した画像をレンダリング処理により生成することが可能となる。被写体の見えは、被写体の形状情報、被写体の反射率情報、光源情報等で決定される。被写体の形状情報の１つである被写体の面法線情報を取得する方法として、例えば、レーザ光を用いた三角測量や２眼ステレオなどの方法で取得された距離情報から求められた三次元形状を面法線情報に変換する方法が知られている。しかしながら、このような方法では装置は複雑になり、取得された面法線情報の精度は不十分である。
【０００３】
そこで、特許文献１では、被写体の面法線を直接取得する方法として照度差ステレオ法を開示している。照度差ステレオ法は、被写体の面法線と被写体から光源への方向とに基づく被写体の反射特性を仮定し、複数の光源位置での被写体の輝度情報と仮定した反射特性とから面法線を算出する方法である。被写体の反射特性は、例えば、ランバートの余弦則に従うランバート拡散反射モデルを用いて近似することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１２２１５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、照度差ステレオ法で面法線を算出した場合、仮定した反射特性とは異なる反射特性の被写体については法線誤差が生じる。そのため、誤差が生じた面法線を用いてレンダリング画像を生成すると、レンダリング画像にも誤差が生じる。例えば、ランバート拡散反射モデルを仮定した照度差ステレオ法で金属や透明体等の拡散反射が少ない被写体の面法線を算出すると、特に大きな誤差が生じる。そのため、取得した面法線を用いてレンダリング画像を生成すると、レンダリング画像に破綻が生じて高品位なレンダリング画像を生成することができない。
【０００６】
本発明は、高品位なレンダリング画像を生成可能な処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一側面としての処理装置は、形状情報と所定の光源条件とに基づいて生成されたレンダリング画像の一部を形状情報に基づかないベース画像に置換することで置換画像を生成する処理装置であって、レンダリング画像と、ベース画像と、形状情報の誤差が大きい対象領域と、に基づいて、置換画像を生成する際に使用される調整係数を算出する調整係数算出部と、レンダリング画像における対象領域をベース画像および調整係数を用いて置換する置換部と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、高品位なレンダリング画像を生成可能な処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】実施例１の撮像装置の外観図である。
【図２Ａ】実施例１の撮像装置のブロック図である。
【図２Ｂ】実施例１の処理システムを示す図である。
【図３】実施例１のレンダリング処理を示すフローチャートである。
【図４】図３のステップＳ１０１〜Ｓ１０４の処理を示す模式図である。
【図５】図３のステップＳ１０５以降の処理を示す模式図である。
【図６】図３のステップＳ１０６の処理を示す模式図である。
【図７】図３のステップＳ１０６の処理を示す模式図である。
【図８】図３のステップＳ１０７の処理を示す模式図である。
【図９】図３のステップＳ１０８およびステップＳ１０９の処理を示す模式図である。
【図１０】実施例２の処理システムの外観図である。
【図１１】Ｔｏｒｒａｎｃｅ−Ｓｐａｒｒｏｗモデルの説明図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施例について、図面を参照しながら詳細に説明する。各図において、同一の部材については同一の参照番号を付し、重複する説明は省略する。
【００１１】
照度差ステレオ法は、被写体の面法線と被写体から光源への方向に基づく被写体の反射特性を仮定し、複数の光源位置での被写体の輝度情報と仮定した反射特性から面法線を算出する方法である。反射特性は、所定の面法線と光源の位置が与えられたときに反射率が一意に定まらない場合、ランバートの余弦則に従うランバート反射モデルで近似すればよい。また、鏡面反射成分は、図１１に示されるように、光源ベクトルｓと視線方向ベクトルｖの２等分線と、面法線ｎのなす角αに依存する。したがって、反射特性は、視線方向に基づく特性としてもよい。また、輝度情報は、光源が点灯している場合と消灯している場合のそれぞれの被写体を撮像し、これらの差分をとることで環境光等の光源以外の光源による影響を除いてもよい。
【００１２】
以下、ランバート反射モデルで反射特性を仮定した場合について説明する。反射光の輝度値をｉ、物体のランバート拡散反射率をρｄ、入射光の強さをＥ、物体から光源への方向（光源方向）を示す単位ベクトル(光源ベクトル)をｓ、物体の単位面法線ベクトルをｎとすると、輝度ｉはランバートの余弦則から以下の式（１）で示される。
【００１３】
【数１】
2020129313.tif 000003
【００１４】
異なるＭ個（Ｍ≧３）の光源ベクトルの各成分をｓ１、ｓ２、・・・、ｓＭ、光源ベクトルの各成分ごとの輝度値をｉ１、ｉ２、・・・ｉＭとすると、式（１）は以下の式（２）で示される。
【００１５】
【数２】
2020129313.tif 000004
【００１６】
式（２）の左辺はＭ行１列の輝度ベクトル、右辺の［ｓ１Ｔ、・・・ｓＭＴ］はＭ行３列の光源方向を示す入射光行列Ｓ、ｎは３行１列の単位面法線ベクトルである。Ｍ＝３の場合は、入射光行列Ｓの逆行列Ｓ−１を用いて、Ｅρｄｎは以下の式（３）で示される。
【００１７】
【数３】
2020129313.tif 000005
【００１８】
式（３）の左辺のベクトルのノルムが入射光の強さＥとランバート拡散反射率ρｄの積であり、正規化したベクトルが物体の面法線ベクトルとして算出される。すなわち、入射光の強さＥとランバート拡散反射率ρｄは積の形でのみ条件式に現れるので、Ｅρｄを１つの変数とみなすと、式（３）は単位面法線ベクトルｎの２自由度と合わせて未知の３変数を決定する連立方程式とみなせる。したがって、少なくとも３つの光源を用いて輝度情報を取得することで、各変数を決定することができる。なお、入射光行列Ｓが正則行列でない場合は逆行列が存在しないため、入射光行列Ｓが正則行列となるように入射光行列Ｓの各成分ｓ１〜ｓ３を選択する必要がある。すなわち、成分ｓ３を成分ｓ１，ｓ２に対して線形独立に選択することが望ましい。
【００１９】
また、Ｍ＞３の場合は求める未知変数より多い条件式が得られるので、任意に選択した３つの条件式からＭ＝３の場合と同様の方法で単位面法線ベクトルｎを算出すればよい。４つ以上の条件式を用いる場合は、入射光行列Ｓが正則行列ではなくなるため、例えば、Ｍｏｏｒｅ−Ｐｅｎｒｏｓｅ疑似逆行列を使って近似解を算出すればよい。また、フィッティング手法や最適化手法によって単位面法線ベクトルｎを算出してもよい。
【００２０】
光源ベクトルの各成分ごとの輝度値のうち、陰影や輝度飽和により正確な値が取得できなかった輝度値を使用して単位面法線ベクトルｎを算出した場合、正確な法線ベクトルを算出することが困難となる。したがって、陰影や輝度飽和により正確な値が取得できなかった輝度値は使用せずに単位面法線ベクトルｎを算出してもよい。つまり、Ｍ＝ｍの光源ベクトルｓｍで得られた輝度値ｉｍが陰影や輝度飽和である場合には、光源ベクトルｓｍおよび輝度値ｉｍを式（３）から除外して単位面法線ベクトルｎを算出する。除外する輝度値はしきい値判定により決定すればよい。ただし、上記したように少なくとも３つの輝度情報が必要である。
【００２１】
被写体の反射特性をランバート反射モデルとは異なるモデルで仮定した場合は、条件式が単位面法線ベクトルｎの各成分に対する線形方程式と異なる場合がある。その場合、未知変数以上の条件式が得られれば、フィッティング手法や最適化手法を用いることができる。
【００２２】
また、Ｍ＞３の場合には３以上Ｍ−１以下の複数の条件式が得られるため、単位面法線ベクトルｎの複数の解の候補を求めることができる。この場合、さらに別の条件を用いて複数の解の候補から解を選択すればよい。例えば、単位面法線ベクトルｎの連続性を条件として用いることができる。単位面法線ｎを撮像装置の１画素ごとに算出する場合、画素（ｘ、ｙ）での面法線をｎ（ｘ、ｙ）として、ｎ（ｘ−１、ｙ）が既知であれば以下の式（４）で示される評価関数が最小となる解を選択すればよい。
【００２３】
【数４】
2020129313.tif 000006
【００２４】
また、ｎ（ｘ＋１、ｙ）やｎ（ｘ、ｙ±１）も既知であれば、以下の式（５）が最小となる解を選択すればよい。
【００２５】
【数５】
2020129313.tif 000007
【００２６】
既知の面法線がなく、全画素位置で面法線の不定性があるとすれば、以下の式（６）で示される式（５）の全画素での総和が最小となるように解を選択してもよい。
【００２７】
【数６】
2020129313.tif 000008
【００２８】
なお、最近傍以外の画素での面法線を用いたり、注目する画素位置からの距離に応じて重みづけした評価関数を用いてもよい。
【００２９】
また、別の条件として、任意の光源位置での輝度情報を用いてもよい。ランバート反射モデルに代表される拡散反射モデルでは、単位面法線ベクトルと光源方向ベクトルが近いほど反射光の輝度が大きくなる。よって、複数の光源方向での輝度値のうち最も輝度値が大きくなる光源方向ベクトルに近い解を選択することで、単位面法線ベクトルを決定することができる。
【００３０】
また、鏡面反射モデルでは、光源ベクトルをｓ、物体からカメラへの方向の単位ベクトル(カメラの視線ベクトル)をｖとすると、以下の式（７）が成り立つ。
【００３１】
【数７】
2020129313.tif 000009
【００３２】
式（７）に示されるように、光源方向ベクトルｓとカメラの視線ベクトルｖが既知であれば単位面法線ベクトルｎを算出することができる。表面に粗さがある場合、鏡面反射も出射角の広がりを持つが、平滑面として求めた解の付近に広がるため、複数の解の候補うち最も平滑面に対する解に近い候補を選択すればよい。また、複数の解の候補の平均によって真の解を決定してもよい。
【００３３】
照度差ステレオ法によって面法線ｎと反射率ρ（＝Ｅρｄ）が取得できると、式（１）に対して所定の光源ベクトルｓを与えることで、所定の光源下での輝度値ｉを算出できる。すなわち、所定の光源下での見えを再現したレンダリング画像が生成可能である。式（１）ではランバート拡散反射でのレンダリング画像を生成するが、その他の拡散反射特性やそれに加えて鏡面反射特性でのレンダリング画像を生成することも可能である。
【実施例１】
【００３４】
図１は、本実施例の撮像装置１の外観図であり、図２Ａは撮像装置１のブロック図である。撮像装置１は、撮像部１００および光源部２００を備える。撮像部１００は、撮像光学系１０１を備える。光源部２００は、撮像光学系１０１の光軸を中心とした同心円状に等間隔で配置された８個の光源から構成される。なお、照度差ステレオ法を実施する際に必要な光源は少なくとも３個であるため、光源部２００は３個以上の光源を備えていればよい。また、本実施例では、光源部２００において複数の光源が撮像光学系１０１の光軸を中心とした同心円状に等間隔で配置されているが、本発明はこれに限定されない。また、本実施例では、光源部２００は、撮像装置１に内蔵されているが、着脱可能に取り付けられる構成としてもよい。
【００３５】
撮像光学系１０１は、絞り１０１ａを備え、被写体からの光を撮像素子１０２上に結像させる。撮像光学系１０１は、撮像装置１に内蔵される構成であってもよいし、一眼レフカメラのように撮像装置１に着脱可能に取り付けられる構成であってもよい。撮像素子１０２は、ＣＣＤセンサやＣＭＯＳセンサ等の光電変換素子により構成され、撮像光学系１０１を介して形成された光学像を光電変換する。撮像素子１０２の光電変換によって生成されたアナログ電気信号は、Ａ／Ｄコンバータ１０３でデジタル信号に変換されて画像処理部１０４に入力される。
【００３６】
画像処理部１０４は、デジタル信号に対して一般的に行われる画像処理と併せて、被写体の面法線情報を取得し、所定の光源下でのレンダリング画像を生成する。画像処理部１０４は、入力画像取得部１０４ａ、面法線情報取得部１０４ｂ、第１レンダリング部１０４ｃ、領域検出部１０４ｄ、第２レンダリング部１０４ｅ、調整係数算出部１０４ｆ、および置換部１０４ｇを備える。画像処理部１０４で処理された出力画像は、半導体メモリや光ディスク等の画像記録部１０９に保存される。また、出力画像を、表示部１０５に表示してもよい。
【００３７】
なお、本実施例では、画像処理部１０４は、撮像装置１に内蔵されているが、撮像装置１とは異なる装置（ＰＣやサーバ）に内蔵されていてもよいし、独立した画像処理装置として構成されていてもよい。
【００３８】
また、本実施例では、後述するように、面法線情報と所定の光源条件とに基づいてレンダリング画像を生成するが、本発明はこれに限定されない。形状情報と所定の光源条件とに基づいてレンダリング画像を生成してもよい。形状情報とは、面法線情報、距離情報、および高さ情報などのデータとして取得された情報である。
【００３９】
情報入力部１０８は、ユーザーによって選択された撮影条件（絞り値、露出時間、および焦点距離など）をシステムコントローラ１１０に供給する。撮像制御部１０７は、システムコントローラ１１０からの情報に基づいて、ユーザーが選択した撮影条件で画像を取得する。照射光源制御部１０６は、システムコントローラ１１０からの指示に応じて光源部２００の発光状態を制御する。
【００４０】
また、情報入力部１０８は、ユーザーによって選択された光源条件（光源位置、光源強度、および光源色など）をシステムコントローラ１１０に供給する。画像処理部１０４は、システムコントローラ１１０からの情報に基づいて、ユーザーが選択した光源条件でレンダリング画像を生成する。
【００４１】
図３は、本実施例のレンダリング処理を示すフローチャートである。本実施例のレンダリング処理は、画像処理部１０４により、コンピュータプログラムとしての処理プログラムに従って実行される。処理プログラムは、コンピュータに読み取り可能な記録媒体に記録してもよい。
【００４２】
図４は図３のステップＳ１０１〜Ｓ１０４の処理を示す模式図であり、図５はステップＳ１０５以降の処理を示す模式図である。ステップＳ１０１〜Ｓ１０４では面法線情報の誤差が大きいエラー領域（対象領域）の検出を行い、ステップＳ１０５以降ではレンダリング画像におけるエラー領域を入力画像で置き換えることで高品位なレンダリング画像を生成する。
【００４３】
ステップＳ１０１では、入力画像取得部１０４ａは、互いに位置の異なる複数の光源位置で被写体の撮像を行うことで取得された複数の入力画像１２０を取得する。複数の入力画像１２０は、単一の光源の位置を変更して光を順次照射することで取得してもよいし、それぞれ位置の異なる複数の光源からの光を順次照射して取得してもよい。ここで、入力画像１２０には、被写体として拡散特性である拡散球１２０ａと金属球１２０ｂが含まれる。
【００４４】
後述するステップＳ１０２において、ランバート反射等の拡散反射モデルを仮定した照度差ステレオ法で面法線情報を取得する場合、入力画像として撮影画像から鏡面反射成分を除去した複数の拡散反射画像を用いてもよい。画像から鏡面反射成分を除去した拡散反射画像を取得する方法の一例として、２色性反射モデルを用いた方法を用いるとよい（例えば、「肥後  智昭，宮崎  大輔，池内  克史、“二色性反射モデルに基づくリアルタイム鏡面反射成分除去”、研究報告コンピュータビジョンとイメージメディア、ｐｐ．２１１−２１８、２００６」）。
【００４５】
ステップＳ１０２では、面法線取得部１０４ｂは、複数の入力画像１２０を用いて、被写体の面法線情報ｎおよび反射率ρを取得する。面法線情報ｎおよび反射率ρは、照度差ステレオ法を用いて、光源位置による輝度情報の変化に基づいて算出される。面法線取得部１０４ｂは、面法線情報ｎおよび反射率ρを算出してもよいし、他のユニットが算出した面法線情報ｎおよび反射率ρを取得してもよい。また、面法線取得部１０４ｂは、ステップＳ１０１で取得された複数の入力画像１２０とは異なる光源条件で撮影された画像を用いて面法線情報ｎを算出してもよい。ここで、入力画像１２０における拡散球１２０ａについては、被写体の反射特性を拡散反射と仮定した照度差ステレオ法で面法線情報を適切に取得できるが、金属球１２０ｂについては面法線情報に大きな誤差が生じる。
【００４６】
ステップＳ１０３では、第１レンダリング部１０４ｃは、面法線情報ｎおよび反射率ρ１と、入力画像１２０が撮影された際の光源条件とに基づいて、入力画像１２０と同じ光源条件下での見えを再現した第１レンダリング画像１２２を生成する。第１レンダリング画像１２２は、ステップＳ１０２で面法線情報を取得する際に仮定された反射特性を用いてレンダリング処理により生成される。ランバート拡散を仮定して面法線情報を取得した場合、式（１）に従って、複数のレンダリング画像が生成される。また、第１レンダリング画像１２２は、複数の入力画像１２０のうち一部の入力画像１２０に対応したレンダリング画像としてもよいし、複数の入力画像１２０すべてに対応した複数のレンダリング画像としてもよい。
【００４７】
ステップＳ１０４では、領域検出部１０４ｄは、入力画像１２０と第１レンダリング画像１２２とに基づいて面法線情報の誤差が大きいエラー領域１２４を検出する。上述したように、照度差ステレオ法で面法線情報を取得する場合、仮定した反射特性とは異なる反射特性の被写体については面法線情報に誤差が生じる。そのため、誤差が生じた面法線情報を用いてレンダリング画像を生成すると、レンダリング画像にも誤差が生じる。本実施例において、拡散反射モデルを仮定した照度差ステレオ法で金属球１２０ｂの面法線情報を取得すると、面法線情報に大きな誤差が生じる。そのような面法線情報を用いてレンダリング画像を生成すると、第１レンダリング画像１２２における金属球１２０ｂの領域（斜線で示される領域）に破綻が生じる。
【００４８】
そこで、本実施例では、領域検出部１０４ｄは、入力画像１２０と第１レンダリング画像１２２との差分１２３に基づいてエラー領域１２４を検出する。入力画像１２０と入力画像１２０を再現した第１レンダリング画像１２２との差分１２３が大きい領域は、照度差ステレオ法で仮定した反射特性とは異なる反射特性の被写体である可能性が高い。
【００４９】
具体的には、領域検出部１０４ｄは、入力画像１２０と第１レンダリング画像１２２との差分がしきい値以上である領域をエラー領域１２４として検出する。更に言うと、領域検出部１０４ｄは、差分１２３を反射率ρで除した正規化差分に基づいてエラー領域を検出する。また、差分１２３を入力画像１２０や、複数の入力画像１２０の平均値または中央値等の入力画像１２０に基づいた画像で除した正規化差分を用いてもよい。差分１２３を反射率ρや入力画像１２０で除することで、差分１２３から明るさの影響を除外することができる。
【００５０】
また、領域検出部１０４ｄは、複数の入力画像１２０と複数の第１レンダリング画像１２２との複数の差分における最大値である最大差分または平均値である平均差分に基づいてエラー領域１２４を検出してもよい。更に言うと、領域検出部１０４ｄは、最大差分や平均差分を反射率ρで除した正規化最大差分または正規化平均差分に基づいてエラー領域を検出する。また、最大差分や平均差分を入力画像１２０や複数の入力画像１２０の平均値または中央値等の入力画像１２０に基づいた画像で除した正規化最大差分や正規化平均差分を用いてもよい。
【００５１】
面法線情報を用いたレンダリング処理では、光が遮られて発生する影を再現することができない。したがって、差分１２３ａに示されるように、入力画像１２０における影領域では差分が大きくなり、面法線情報が正確であっても影領域はエラー領域１２４と検出されてしまう。そこで、面法線情報に加えて形状情報を用いて影まで再現したレンダリング画像を生成することが好ましい。形状情報がない場合には、入力画像１２０における影領域を検出し、差分１２３ｂに示されるように、影領域においては差分をとらないようにするとよい。入力画像１２０における影領域は、輝度値がしきい値以下である領域とすればよい。また、入力画像１２０と第１レンダリング画像１２２との差分１２３と符号に基づいてエラー領域１２４を検出してもよい。例えば、入力画像１２０における影領域では、入力画像１２０から第１レンダリング画像１２２を引いた値が負となるため、負の差分領域をエラー領域１２４として検出しないようにする。
【００５２】
本実施例では、入力画像１２０と第１レンダリング画像１２２との差分に基づいてエラー領域を検出したが、本発明はこれに限定されない。複数の入力画像１２０における輝度値をフィッティングすることで面法線情報を取得し、得られたフィッティング誤差をエラー領域を検出する際の差分として用いてもよい。
【００５３】
ステップＳ１０５では、第２レンダリング部１０４ｅは、所定の光源条件下での見えを再現した第２レンダリング画像１２５を生成する。例えば、第２レンダリング部１０４ｅは、ユーザーによって選択された光源条件で第２レンダリング画像１２５を生成する。第２レンダリング部１０４ｅは、ステップＳ１０２の面法線情報取得において仮定した反射特性を用いずに、その他の拡散反射特性やそれに加えて鏡面反射特性を用いて第２レンダリング画像１２５を生成してもよい。また、第２レンダリング部１０４ｅは、入力画像１２０を反射率とみなして第２レンダリング画像１２５を生成してもよい。金属球１２０ｂの面法線情報には大きな誤差が生じるため、図５に示されるように、第２レンダリング画像１２５における金属球１２０ｂの領域（斜線で示される領域）に破綻が生じる。
【００５４】
ステップＳ１０６〜ステップＳ１０８では、置換部１０４ｇは、図５に示されるように、第２レンダリング画像１２５におけるエラー領域１２４に対して、ベース画像１２６を用いて置き換え処理を行う。その際、第２レンダリング画像１２５において、ベース画像１２６と第２レンダリング画像１２５の明るさ等の光源条件が異なり、置き換えた領域とそれ以外の領域で明るさが乖離する場合がある。本実施例では、調整係数算出部１０４ｆが第２レンダリング画像１２５、ベース画像１２６、およびエラー領域１２４に基づいてベース画像を置き換える際の調整係数を算出し、置換部１０４ｇは算出された調整係数を用いて置き換え処理を行う。
【００５５】
ベース画像１２６は、複数の入力画像１２０のうちの１つの入力画像１２０でもよいし、複数の入力画像１２０の平均値等であってもよい。更に言うと、ステップＳ１０５で選択された光源条件に最も近い光源条件で撮影された入力画像１２０を用いるとよい。ここで言う光源条件とは光源位置であり、選択された光源位置に最も近い光源位置で撮影された入力画像１２０を用いてエラー領域１２４に対して置き換え処理を行えばよい。これにより、置き換えた領域とそれ以外の領域における光源位置に対する見えの乖離を低減することができる。また、ステップＳ１０５で選択された光源条件となる画像を複数の入力画像１２０を補間することで生成し、置き換え処理に用いてもよい。また、複数の入力画像から各画素について輝度値の大きさが最大となるように生成された画像（最大値画像）を用いてもよい。最大値画像には、影が含まれないため、調整係数を算出する際に好ましい。
【００５６】
ステップＳ１０６では、調整係数算出部１０４ｆは、エラー領域１２４に基づいて、ステップＳ１０７でエラー領域１２４中のエラー画素である対象画素において置き換え処理を行う際の調整係数を算出するために用いる参照画素を選択する。図６および図７は、ステップＳ１０６における参照画素の選択を示す模式図である。図６に示されるように、調整係数算出部１０４ｆは、エラー領域１２４中の黒で示される対象画素を中心とする７×７の範囲を見たときに、斜線で示されるエラー領域１２４ではない画素を参照画素１２８として選択する。自然な置き換え処理を行うためには、エラー領域１２４ではない参照画素１２８を用いて調整係数を算出する必要がある。
【００５７】
更に言うと、図７に示されるように、調整係数算出部１０４ｆは、エラー領域１２４とガイド画像１３０に基づいて参照画素を選択してもよい。エラー領域１２４に基づいて選択された参照画素１２８ａと、ガイド画像１３０に基づいて選択された参照画素１２８ｂとの共通画素を参照画素１２８とする。例えば、ガイド画像１３０としてベース画像１２６を用いた場合、調整係数算出部１０４ｆは、ベース画像１２６における対象画素と、対象画素を中心とする７×７の範囲内の画素との色差に基づいて参照画素１２８ｂを選択する。具体的には、調整係数算出部１０４ｆは、ベース画像１２６における対象画素とその周辺の画素との色差がしきい値以下である画素を参照画素１２８ｂとして選択する。色差のしきい値としては、ＬＡＢ色空間におけるユークリッド距離を色差としたときの丁度可知差異（２．３など）を用いればよい。ただし、色差のしきい値は、これに限定されるものではない。また、調整係数算出部１０４ｆは、ベース画像１２６における対象画素とその周辺の画素との輝度差に基づいて参照画素１２８ｂを選択してもよい。具体的には、調整係数算出部１０４ｆは、ベース画像１２６における対象画素とその周辺の画素との輝度差がしきい値以下である画素を参照画素１２８ｂとして選択する。
【００５８】
また、調整係数算出部１０４ｆは、ベース画像１２６に影や輝度飽和があるなどして調整係数の算出が困難になる場合があるため、ベース画像１２６の輝度値に基づいて参照画素１２８ｂを選択してもよい。具体的には、調整係数算出部１０４ｆは、ベース画像１２６において輝度値としきい値に基づいて参照画素１２８ｂとして選択する。ベース画像１２６において輝度値が第１しきい値以上である画素を参照画素１２８ｂとして選択することで、影の影響を除外することができる。また、ベース画像１２６において輝度値が第２しきい値より小さい画素を参照画素１２８ｂとして選択することで、輝度飽和の影響を除外することができる。
【００５９】
また、ガイド画像１３０として、面法線情報、距離情報、および高さ情報などの形状報を用いてもよい。この場合、調整係数算出部１０４ｆは、ガイド画像１３０における対象画素とその周辺の画素との面法線ベクトルの差、距離差、および高さの差のうちの少なくとも１つに基づいて参照画素１２８ｂを選択する。具体的には、調整係数算出部１０４ｆは、ガイド画像１３０における対象画素とその周辺の画素との面法線ベクトルの差、距離差、および高さの差のうちの少なくとも１つがしきい値以下である画素を参照画素１２８ｂとして選択する。距離情報や高さ情報は、レーザ光を用いた三角測量や２眼ステレオ等の種々の距離計測方法を用いて取得すればよい。
【００６０】
また、ガイド画像１３０として、意味的領域分割マップを用いてもよい。この場合、調整係数算出部１０４ｆは、ガイド画像１３０における対象画素とその周辺の画素が同じ意味を持つ領域である画素を参照画素１２８ｂとして選択する。画素ごとに意味的領域分割したラベルが記された意味的領域分割マップを用いる場合、調整係数算出部１０４ｆは、ガイド画像１３０における対象画素とその周辺の画素とのラベルに基づいて参照画素１２８ｂを選択する。具体的には、調整係数算出部１０４ｆは、ガイド画像１３０における対象画素とその周辺の画素のラベルを比較して、同じラベルの画素を参照画素１２８ｂとして選択する。意味的領域分割の方法は、種々の方法を用いてよい。ただし、被写体ごとまたは素材ごとに領域分割されていることが好ましい。
【００６１】
自然な置き換え処理を行うためには、面法線や反射特性（素材）が近い参照画素を用いて調整係数を算出することが好ましいため、ガイド画像を用いることが好ましい。複数の種類のガイド画像を用いてもよい。
【００６２】
なお、本実施例では、対象画素を中心とした７×７の範囲において参照画素を選択したが、本発明はこれに限定されない。
【００６３】
ステップＳ１０７では、調整係数算出部１０４ｆは、図８に示されるように、第２レンダリング画像１２５およびベース画像１２６における参照画素１２８に基づいて調整係数を算出する。図８は、ステップＳ１０７の処理を示す模式図である。調整係数算出部１０４ｆは、第２レンダリング画像１２５における参照画素１２５ｅｘの輝度値と、ベース画像１２６における参照画素１２６ｅｘの輝度値との比を調整係数として算出する。例えば、調整係数算出部１０４ｆは、（第２レンダリング画像１２５における参照画素１２５ｅｘの輝度値）／（ベース画像１２６における参照画素１２６ｅｘの輝度値）を調整係数として算出する。参照画素が複数ある場合、調整係数算出部１０４ｆは、第２レンダリング画像１２５における参照画素１２５ｅｘの輝度値の平均値（平均輝度値）とベース画像１２６における参照画素１２６ｅｘの輝度値の平均値との比を調整係数として算出してもよい。また、調整係数算出部１０４ｆは、第２レンダリング画像１２５における参照画素１２５ｅｘの輝度値とベース画像１２６における参照画素１２６ｅｘの輝度値との比の平均値を調整係数として算出してもよい。ここで、ベース画像１２６において影などで輝度値が著しく低い場合、調整係数が無限大方向へ大きくなる場合がある。そのため、ベース画像１２６において影などで輝度値が著しく低い画素を参照画素として用いないことが好ましい。また、ベース画像１２６において輝度飽和している画素がある場合、飽和値となっている輝度値が用いられるため、調整係数を正確に算出できない。そのため、ベース画像１２６において輝度飽和している画素を参照画素として用いないことが好ましい。
【００６４】
ステップＳ１０８では、置換部１０４ｇは、図９に示されるように、第２レンダリング画像１２５における対象画素１２８に対して、ベース画像１２６および調整係数を用いて置き換え処理を行う。図９は、ステップＳ１０８およびステップＳ１０９の処理を示す模式図である。置換部１０４ｇは、第２レンダリング画像１２５における対象画素を、ベース画像１２６における対象画素に調整係数を適用して置き換えることで、第２レンダリング画像１２５を置換画像１２９に変更する。例えば、置き換えられる画素は、（ベース画像１２６における対象画素）×（調整係数）で算出される。
【００６５】
ステップＳ１０９では、画像処理部１０４は、エラー領域がすべて処理されているかどうかを判定する。すべて処理されている場合、本フローを終了し、すべて処理されていない場合、ステップＳ１０６に戻る。ステップＳ１０６〜Ｓ１０８をエラー領域のすべてに適用することで、面法線情報の誤差が低減された高品位なレンダリング画像１２７を生成することができる。
【００６６】
なお、本実施例では、撮像装置１内で被写体の面法線を取得し、第２レンダリング画像を生成しているが、図２Ｂに示されるように、撮像装置１とは異なる処理システム２を用いて第２レンダリング画像を生成してもよい。図２Ｂは、処理システム２を示す図である。処理システム２は、処理装置５００、撮像部５０１、および光源部５０２を備える。処理装置５００は、入力画像取得部５００ａ、面法線情報取得部５００ｂ、第１レンダリング部５００ｃ、領域検出部５００ｄ、第２レンダリング部５００ｅ、調整係数算出部５００ｆ、および置換部５００ｇを備える。
【００６７】
処理システム２を用いて第２レンダリング画像を生成する場合、まず、入力画像取得部５００ａは、互いに位置の異なる複数の光源位置で被写体の撮像を行うことで取得された複数の入力画像を取得する。次に、面法線情報取得部５００ｂは、複数の入力画像に基づいて被写体の面法線情報および反射率を算出する。次に、第１レンダリング部５００ｃは、面法線情報および反射率と、入力画像が撮影された際の光源条件とに基づいて第１レンダリング画像を生成する。次に、領域検出部５００ｄは、入力画像と第１レンダリング画像とに基づいてエラー領域を検出する。次に、第２レンダリング部５００ｅは、所定の光源条件における第２レンダリング画像を生成する。次に、調整係数算出部５００ｆは、置き換え時の調整係数を算出する。最後に、置換部５００ｇは、第２レンダリング画像におけるエラー領域に対して、ベース画像を用いて置き換え処理を行う。なお、撮像部５０１および光源部５０２はそれぞれ、個別の装置であってもよいし、光源部５０２が撮像部５０１に内蔵されていてもよい。
【００６８】
以上説明したように、本実施例の構成によれば、高品位なレンダリング画像を生成することができる。
【実施例２】
【００６９】
実施例１では、光源を内蔵した撮像装置について説明したが、本実施例では撮像装置と光源ユニットから構成される処理システムについて説明する。
【００７０】
図１０は、本実施例の処理システムの外観図である。処理システムは、被写体３０３を撮像する撮像装置３０１、および複数の光源ユニット３０２を備える。本実施例の撮像装置３０１は、実施例１と同様の撮像装置であるが、複数の光源を内蔵する必要はない。
【００７１】
光源ユニット３０２は、撮像装置３０１と有線または無線で接続され、撮像装置３０１からの情報に基づいて制御できることが好ましい。また、照度差ステレオ法では少なくとも３光源を順次照射して撮像された画像が必要であるが、光源が移動可能に構成された光源ユニットを使用する場合、少なくとも１つの光源ユニットを備えていればよい。ただし、光源を移動させて、最低３つの光源位置で撮影を行う必要がある。なお、光源ユニット３０２が自動で光源位置を変更できない場合や光源ユニット３０２が撮像装置３０１により制御できない場合には、撮像装置３０１の表示部に表示される光源位置に位置するようにユーザーに光源ユニット３０２を調整させてもよい。
【００７２】
本実施例のレンダリング処理は、実施例１の処理と同様であるため詳細な説明は省略する。
［その他の実施例］
本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００７３】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【００７４】
５００    処理装置
５００ｆ  調整係数算出部
５００ｇ  置換部
【図１】
2020129313.tif 000010
【図２Ａ】
2020129313.tif 000011
【図２Ｂ】
2020129313.tif 000012
【図３】
2020129313.tif 000013
【図４】
2020129313.tif 000014
【図５】
2020129313.tif 000015
【図６】
2020129313.tif 000016
【図７】
2020129313.tif 000017
【図８】
2020129313.tif 000018
【図９】
2020129313.tif 000019
【図１０】
2020129313.tif 000020
【図１１】
2020129313.tif 000021