(58)【調査した分野】(Int.Cl.,DB名)
前記置換手段は、前記二次元画像データから選択される修正領域と、前記参照画像の前記修正領域に対応する領域とを所定の割合で混合した混合画像を生成し、前記修正領域を前記混合画像に置換する
ことを特徴とする請求項1から5の何れか一項に記載の処理装置。
【発明を実施するための形態】
【0013】
以下、図面を参照して発明を実施するための形態について説明する。各図面において、同一構成部分には同一符号を付し、重複した説明を省略する場合がある。
【0014】
〔第1の実施形態〕
<処理システムのハードウェア構成>
図1に、第1の実施形態の処理システム500のハードウェア構成を例示する。
【0015】
図1に示す様に、処理システム500は、撮像装置100、処理装置101を有する。
【0016】
撮像装置100は、被写体を撮像し、被写体の二次元画像データ及び三次元画像データを取得して内部メモリ又は記憶媒体に一時保存する。三次元画像データは、被写体を取り囲む空間における被写体表面の離散的な三次元座標情報であり、例えばステレオ法やレーザーレンジファインダによって取得できる。例えば、ステレオ法では、異なる2つの位置から撮影された被写体画像上の位置差異に基づく三角測量により奥行き推定を行うことで、三次元画像データを取得できる。
【0017】
処理装置101は、撮像装置I/F部102、制御部103、主記憶部104、補助記憶部105、外部記憶装置I/F部106、ネットワークI/F部107、操作部108、表示部109を有し、それぞれバスBを介して相互に接続されている。
【0018】
撮像装置I/F部102は、例えばUSB(Universal Serial Bus)等のデータ伝送路を介して接続される撮像装置100と処理装置101とのインターフェイスである。処理装置101は、撮像装置I/F部102を介して撮像装置100から、被写体の二次元画像データ及び三次元画像データを取得できる。
【0019】
制御部103は、コンピュータの中で、各部の制御やデータの演算、加工を行うCPU(Central Processing Unit)である。また、制御部103は、主記憶部104に記憶されたプログラムを実行する演算装置であり、入力装置や記憶装置からデータを受け取り、演算、加工した上で、出力装置や記憶装置等に出力する。
【0020】
主記憶部104は、ROM(Read Only Memory)やRAM(Random Access Memory)等であり、制御部103が実行する基本ソフトウェアであるOSやアプリケーションソフトウェア等のプログラムやデータを記憶又は一時保存する記憶装置である。
【0021】
補助記憶部105は、HDD(Hard Disk Drive)等であり、アプリケーションソフトウェア等に関連するデータを記憶する記憶装置である。
【0022】
外部記憶装置I/F部106は、例えばUSB等のデータ伝送路を介して接続される例えばフラッシュメモリ等の記憶媒体110と処理装置101とのインターフェイスである。処理装置101は、記憶媒体110に一時保存された撮像装置100の画像データを、外部記憶装置I/F部106を介して取得することも可能である。
【0023】
また、記憶媒体110に格納されたプログラムが外部記憶装置I/F部106を介して処理装置101にインストールされると、インストールされたプログラムは処理装置101により実行可能となる。
【0024】
ネットワークI/F部107は、有線及び/又は無線回路等のデータ伝送路により構築されたLAN(Local Area Network)、WAN(Wide Area Network)等のネットワークを介して接続された通信機能を有する周辺機器と処理装置101とのインターフェイスである。処理装置101は、撮像装置100によって取得された被写体の画像データを、ネットワークを介して取得することも可能である。
【0025】
操作部108は、例えばハードキーで構成されるキースイッチやマウス、タッチパネル機能を備えるLCD(Liquid Crystal Display)等で構成される。
【0026】
表示部109は、例えば液晶や有機EL等のディスプレイであり、画像や操作用アイコン等を表示し、処理装置101が有する機能をユーザが利用する際に各種設定を行うユーザインタフェースとして機能する。なお、タッチパネル機能を備えるLCDを設けることで、操作部108と表示部109とを一体に構成しても良い。
【0027】
<処理装置の機能構成>
図2は、第1の実施形態の処理装置101の機能構成を例示するブロック図である。また、
図3から
図6に第1の実施形態の処理装置101における画像処理過程で使用する画像データ等の例を示し、
図2に示す処理装置101の各機能と併せて説明する。
【0028】
図2に示す様に、処理装置101は、取得手段としての被写体情報取得部121、参照領域取得部122、生成手段としての参照画像生成部123、陰影付加手段としての陰影情報付加部124、置換手段としての画像置換処理部125を有する。
【0029】
≪被写体の画像情報取得≫
処理装置101では、まず被写体情報取得部121が、撮像装置100で撮像された被写体の二次元画像データ及び三次元画像データを取得する。
【0030】
図3(a)に被写体情報取得部121が取得した被写体の二次元画像データ200、
図3(b)に被写体の三次元画像データ210の例を示す。
図3(b)に示す点211は撮像装置100の位置、四角形212は撮像装置100によって撮像される被写体の二次元画像データ200の画角を示している。
【0031】
≪参照情報の取得≫
次に、参照領域取得部122が、二次元画像データ200において例えばニキビや無精髭等の除去対象要素が無い部分から参照領域を取得する。例えば被写体の二次元画像データ200のニキビ等を除去対象要素とする場合には、二次元画像データ200においてニキビ等の除去対象要素が無く、理想的だと考えられる肌領域から参照領域を取得する。参照領域は、例えば被写体の二次元画像データ200の肌領域内において、濃度特性や周波数特性の変動が安定した部分から自動的に抽出して取得できる。または、ユーザにより選択された領域を参照領域として取得しても良い。
【0032】
≪参照領域展開画像の生成≫
参照画像生成部123は、三次元画像データ210を被写体の二次元画像データ200と同一構図になるように視点変換し、視点変換された三次元画像データ210に対して参照領域を展開して参照画像を生成する。
【0033】
図3(c)に、参照画像生成部123により二次元画像データ200に合わせて視点変換された三次元画像データ210を例示する。視点変換された三次元画像データ210は、
図3(a)に示す被写体の二次元画像データ200と構図が一致しているのが分かる。
【0034】
次に、参照画像生成部123が、視点変換された三次元画像データ210に対して、参照領域取得部122により取得された二次元画像データ200の参照領域を展開して参照領域展開画像を生成する。
【0035】
図4は、参照画像生成部123による三次元画像データ210への参照領域の展開方法を説明する図である。
【0036】
三次元画像データ210は、被写体表面の三次元座標で構成され、
図4(a)に示す様に各座標点を格子点とする格子面213等で構成される形状データであるとも言える。格子面としては、例えば三角形、四角形等の多角形の形状等がある。
【0037】
図4(b)に示す様に、参照画像生成部123は、二次元画像データ200から取得される参照領域230の法線方向231が、参照領域230を展開する格子面213の法線方向214と一致する様に参照領域230の方向変換を行う。次に、参照画像生成部123は、方向変換した参照領域230を格子面213の形状と一致する様に切り取り、切り取った画像データ232を三次元画像データ210の格子面213に貼り付ける。
【0038】
参照画像生成部123は、この様に、三次元画像データ210を構成する全ての格子面に対して、参照領域230を方向転換して切り取った画像データを貼り付けて三次元の参照領域展開画像を生成する。
【0039】
次に、参照画像生成部123は、生成した三次元の参照領域展開画像に対して投影変換処理を行うことで、二次元の参照画像を生成する。
図4(c)は、参照画像生成部123によって生成された参照画像240の例である。
図4(c)に示す様に、全ての格子面に対して参照領域230が展開された三次元画像データ210を投影変換することで、三次元画像データ210及び二次元画像データ200と同一構図の二次元の参照画像が生成される。
【0040】
参照画像240は、離散的な三次元座標を格子点とする格子面によって構成される三次元画像データ210に基づいて生成されており、三次元画像データ210の格子面よりも小さい凹凸(例えば、小さい傷や皺等)は全て除去されている。また、参照画像240は、除去対象要素の無い理想的な画像として取得された参照領域を用いて生成されるため、ニキビやシミ等による局所的な濃度及び色変化を伴う被写体上の欠点や不要物も存在しない。
【0041】
≪陰影情報の付加≫
次に、陰影情報付加部124が陰影情報を取得して参照画像240に陰影を付加する。
【0042】
図5に示す様に、陰影情報250は、二次元画像データ200から被写体の目や鼻等の構造物を除いた大局的な濃度変化を表すものであり、例えば二次元画像データ200にぼかしフィルタを適用することで取得できる。陰影情報付加部124は、この様に取得した陰影情報250を参照画像240に乗算することで、被写体の二次元画像データ200の目や鼻等に対応する陰影情報を付加した参照画像240を生成する。
【0043】
≪除去対象要素の除去≫
画像置換処理部125は、二次元画像データ200から選択されるニキビ等の除去対象要素を含む修正領域を、参照画像240の修正領域に対応する領域を用いて置換することで、二次元画像データ200から除去対象要素を修正する。
【0044】
参照画像240は、上記した様に、三次元画像データ210における格子面より小さい凹凸や、被写体表面のニキビや皺等の欠点や不要物等が無い状態で生成されている。したがって、二次元画像データ200における欠点や不要物を除去する修正領域を、参照画像240の修正領域に対応する領域を用いて置換することで、二次元画像データ200から除去対象要素を除去することができる。
【0045】
以下、
図6に基づいて、被写体の二次元画像データ200の除去対象要素(例えばニキビ等)が存在する領域を修正する場合について説明する。
【0046】
二次元画像データ200を修正する場合には、画像置換処理部125が、除去対象要素を含む二次元画像データ200の修正領域270を取得する。
【0047】
画像置換処理部125は、表示部109に表示される二次元画像データ200からユーザにより選択された領域を修正領域270として取得できる。また、画像置換処理部125は、被写体の二次元画像データ200をフーリエ変換して周波数領域のデータを算出し、除去対象要素の周波数に相当する領域のデータを抽出して逆フーリエ変換して除去対象要素の領域を特定することで、修正領域270を自動抽出することによって取得しても良い。なお、修正領域270は複数箇所であっても良い。
【0048】
また、画像置換処理部125は、修正領域270を取得すると、次に参照画像240の修正領域270に対応する領域を置換領域241として取得する。
【0049】
次に画像置換処理部125は、取得した二次元画像データ200の修正領域270と、参照画像240の置換領域241とを、任意の割合で混合した混合画像271を生成する。
【0050】
混合する割合は、参照画像240の置換領域241に対する混合係数M(0≦M≦1)と、二次元画像データ200の修正領域270に対する混合係数N(=1−M)とによって決定される。画像置換処理部125は、混合係数M,Nを変化させることで、二次元画像データ200から除去対象要素を除去する程度を変えることができる。
【0051】
画像置換処理部125は、混合係数Mを1とすることで、二次元画像データ200から除去対象要素を完全に除去することができる。また、混合係数Mを1より小さい数値にすることで、修正後の二次元画像データ200に違和感が生じない様に処理を施すこともできる。
図6は、混合係数Mを1とした場合であり、二次元画像データ200から例えばニキビ等の除去対象要素が完全に除去されている。
【0052】
この様に、画像置換処理部125は、二次元画像データ200の修正領域270を参照画像240の置換領域241を用いた混合画像271に置換することで、除去対象要素が修正された二次元画像データ200を得ることができる。
【0053】
<画像修正処理の流れ>
図7に、第1の実施形態の処理装置101における画像修正処理のフローチャートを例示し、
図8から
図11に例示する表示部109に表示される画面と共に全体の処理内容について説明する。
【0054】
二次元画像データ200の修正を行う場合には、まずステップS1にて、被写体情報取得部121が、撮像装置100から被写体の二次元画像データ200及び三次元画像データ210を取得する。
【0055】
図8は、被写体情報取得部121により取得された被写体の二次元画像データ200の表示部109への表示例を示す図である。
図8に示す様に、表示部109の画面左側には被写体の二次元画像データ200、画面右側上段には画像処理メニューを表すボタン、画面右側下段には選択したメニューに対応するダイアログ画面が表示される。
【0056】
画像処理メニューは、例えば「A.参照情報の取得」、「B.三次元形状の視点変換」、「C.修正領域の指定」、「D.除去対象要素の除去」等の中から選択することができる。
【0057】
図7のフローに戻り、次にステップS2にて、参照領域取得部122が、被写体の二次元画像データ200から除去対象要素を含まない参照領域を取得する。
図8に示す様に、画面右側上段で「A.参照情報の取得」のメニューが選択されると、画面右側下段に「A.参照情報の取得」に対応するダイアログ画面が表示される。
【0058】
参照領域の指定は、ユーザにより表示部109の二次元画像データ200上に表示されている矩形オブジェクト280がマウス等の操作部108で移動及び変形されることで行われる。矩形オブジェクト280の大きさは、画面右側下段ダイアログ画面に表示される「矩形オブジェクトのサイズ」をキーボード等の操作部108で数値入力することで調整できる。また、領域指定を行う形状は矩形に限るものではない。
【0059】
矩形オブジェクト280によって囲まれた領域は、画面右側下段の「OK」ボタンがクリックされることで、参照領域取得部122により参照領域230として取得される。「キャンセル」ボタンがクリックされると、矩形オブジェクト280を用いて参照領域230の選択が再度実行される。
図8に示す例では、300×300画素の大きさの矩形オブジェクト280がニキビ等の除去対象要素が無い肌領域に表示されており、この領域が参照領域230として選択されている。参照領域230が選択されると、参照領域取得部122が、二次元画像データ200から参照領域230を取得する。
【0060】
なお、
図8では参照領域230をユーザに選択させる方法について例示しているが、参照領域取得部122は、例えば二次元画像データ200の肌領域の周波数解析等に基づいて参照領域230を自動抽出しても良い。
【0061】
図7のフローに戻り、ステップS2にて、参照領域230が取得されると、ステップS3にて、被写体の二次元画像データ200と同一構図になるように三次元画像データ210の視点変換が行われる。
【0062】
図9は、表示部109に表示される被写体の三次元画像データ210の視点変換操作を例示する図である。
図9に示す様に、画像処理メニューから「B.三次元形状の視点変換」が選択されると、画面右側下段に「B.三次元形状の視点変換」に対応するダイアログ画面が表示される。また、画面左側には視点変換された被写体の三次元画像データ210が表示される。
【0063】
画面右側下段のダイアログ画面には、被写体情報取得部121により取得された三次元画像データ210と視点情報が表示される。視点情報は、視点の向きを表す2点のアンカーポイント291,292であり、マウス等の操作部108で移動させることができる。
【0064】
画面左側には、アンカーポイント291,292の位置によって決定される視点から見た三次元画像データ210が、被写体の二次元画像データ200の上に重畳された合成画像290として表示される。
【0065】
三次元画像データ210は、ユーザによるアンカーポイント291,292の操作に合わせて随時変化して合成画像290として表示される。このため、ユーザは、二次元画像データ200と視点変換された三次元画像データ210との重なり具合を確認しながら、アンカーポイント291,292の位置の微調整を行うことができる。したがって、ユーザは、視点変換された三次元画像データ210が二次元画像データ200に精度良く重なる様に、三次元画像データ210の視点変換を行うことができる。
【0066】
被写体の二次元画像データ200と視点変換された三次元画像データ210とが同一構図になった所で、画面右側下段の「OK」ボタンがクリックされると、三次元画像データ210の視点変換が確定される。視点変換をやり直す場合は、「キャンセル」ボタンをクリックすることで、再度視点変換を実行できる。
【0067】
図7のフローに戻り、ステップS3にて三次元画像データ210の視点変換が終了すると、ステップS4にて、参照画像生成部123が、視点変換された三次元画像データ210に二次元画像データ200の参照領域230を展開して参照領域展開画像を生成する。
【0068】
次にステップS5にて、参照画像生成部123が、参照領域展開画像を投影変換することで二次元の参照画像240を生成する。続いてステップS6にて、陰影情報付加部124が、参照画像240に陰影情報を付加する。
【0069】
ステップS7では、ユーザにより被写体の二次元画像データ200からニキビ等の除去対象要素が存在する修正領域270が指定される。なお、修正領域270は、上記した様に自動抽出されても良い。
【0070】
図10は、表示部109に表示される被写体の二次元画像データ200から修正領域270の指定操作を例示する図である。
【0071】
図10に示す様に、画面右側上段で「C.修正領域の指定」のメニューが選択されると、画面右側下段に「C.修正領域の指定」に対応するダイアログ画面、画面左側には被写体の二次元画像データ200が表示される。修正領域270の指定は、ユーザにより二次元画像データ200上に表示される矩形オブジェクト280がマウス等の操作部108を用いて移動及び変形されることで行われる。
【0072】
矩形オブジェクト280の大きさは、画面右側下段ダイアログ画面に表示される「矩形オブジェクトのサイズ」をキーボード等の操作部108で数値入力することで調整できる。また、領域指定を行う形状は矩形に限るものではない。
【0073】
矩形オブジェクト280によって囲まれた領域は、画面右側下段の「OK」ボタンをクリックすることで、二次元画像データ200において修正を所望する修正領域270として決定される。修正領域270が決定されると、画像置換処理部125は、二次元画像データ200の修正領域270と、参照画像240から修正領域270に対応する置換領域241を取得する。
【0074】
修正領域270の指定をやり直す場合には、「キャンセル」ボタンをクリックすることで、ユーザは修正領域270の選択を再度実行できる。
【0075】
図7のフローに戻り、次のステップS8では、画像置換処理部125が、二次元画像データ200の修正領域270と、参照画像240の置換領域241とを所定の割合で混合して混合画像271を生成し、修正領域270を混合画像271に置換する。画像置換処理部125により、二次元画像データ200の修正領域270が混合画像271に置換されることで、二次元画像データ200の修正領域270に存在していた除去対象要素が除去されることとなる。
【0076】
図11は、表示部109に表示される二次元画像データ200の修正操作を例示する図である。
【0077】
図11に示す様に、画面右側上段で「D.除去対象要素の除去」のメニューが選択されると、画面右側下段に、「D.除去対象要素の除去」に対応するダイアログ画面、画面左側には被写体の二次元画像データ200が表示される。
【0078】
画面右側下段のダイアログ画面には、二次元画像データ200の修正領域270と、参照画像240の修正領域270に対応する置換領域241とが表示され、その間に混合割合を設定するスライドバー272が表示される。スライドバー272をマウス等の操作部108で左右に動かすと、二次元画像データ200にはスライドバー272の位置に応じた混合割合で生成された混合画像271が表示される。
【0079】
ユーザは、設定した混合割合で生成された混合画像271で修正領域270が置換された二次元画像データ200を確認しながら、違和感の無い最適な混合割合を設定することができる。
【0080】
画面右側下段の「OK」ボタンがクリックされると、画像置換処理部125により混合画像271が被写体の二次元画像データ200の修正領域270に置換され、二次元画像データ200から除去対象要素が除去された画像が生成される。
【0081】
二次元画像データ200において、複数の領域を修正する場合には、
図7のフローにおけるステップS7及びステップS8を繰り返し行うことで、複数の領域の修正を実行できる。
【0082】
以上で説明した様に、第1の実施形態の処理システム500及び処理装置101によれば、画像処理実行者が画像処理に不慣れであっても、例えば被写体の顔画像の肌部からニキビ、シミ、傷等の欠点や不要物を簡易な操作で違和感無く除去することが可能になる。
【0083】
〔第2の実施形態〕
次に、第2の実施形態について図面に基づいて説明する。なお、第1の実施形態と同一の構成又は処理については、説明を省略する場合がある。
【0084】
<処理システムの構成>
第2の実施形態の処理システム500のハードウェア構成は、
図1に示す第1の実施形態の処理システム500のハードウェア構成と同一である。
【0085】
図12は、第2の実施形態における処理装置101の機能構成を例示するブロック図である。
【0086】
図12に示す様に、第2の実施形態の処理装置101は、取得手段としての被写体・光源・視点情報取得部126、参照領域取得部122、参照画像生成部123、陰影情報付加部124、画像置換処理部125を有する。
【0087】
被写体・光源・視点情報取得部126は、撮像装置100から被写体の二次元画像データ及び三次元画像データを取得すると共に、撮像装置100の撮影時における光源情報、視点情報を取得する。
【0088】
また、陰影情報付加部124は、被写体・光源・視点情報取得部126により取得された光源情報と視点情報に基づいて参照画像に陰影情報を付加する。
【0089】
≪被写体の画像情報取得≫
被写体・光源・視点情報取得部126は、被写体の二次元画像データ及び三次元画像データ、撮影時の光源情報、撮影時の視点情報を取得する。
【0090】
光源情報は、被写体に対する光源の位置、輝度及び色情報であり、例えば被写体の二次元画像データから推定演算により取得可能である。また、視点情報は、被写体を撮像する撮像装置100の被写体に対する位置情報である。
【0091】
≪陰影情報の付加≫
陰影情報付加部124が、光源情報及び視点情報に基づいて、参照領域展開画像に陰影情報を付加する方法について説明する。
【0092】
一般的に肌の反射光は、二色性反射モデルに基づき、拡散反射光と鏡面反射光の線形和で表される。拡散反射光は肌構造に起因する肌陰影、鏡面反射光は肌表面の光沢を表す。
【0093】
拡散反射光は、肌への入射光が肌表面層内部で乱反射することにより生じる成分であり、観測方向に依存せず、あらゆる方向に均一の強度で観測される。拡散反射光を表す拡散反射モデルとしては、例えばLambertモデルがある。以下に示す式(1)は、Lambertモデルによる拡散反射成分dを表す式である。
【0094】
【数1】
ここで、k
dは肌表面の任意点における肌本来の固有色パラメータ、I
0は光源の輝度を表すパラメータ、Nは肌表面の任意点における法線ベクトル、Lは任意点からの光源方向を示す単位光源ベクトルである。拡散反射成分dの強さは、単位光源ベクトルと法線ベクトルとのなす角の余弦に比例する。
【0095】
鏡面反射光は、肌への入射光が肌表面で反射することで生じる成分であり、入射光の入射方向に対する正反射方向で最も強く観測され、肌物体色に依存することなく光源色をそのまま反射する性質を持っている。鏡面反射光を表す鏡面反射モデルとしては、例えばPhongモデルがある。以下に示す式(2)は、Phongモデルによる前記鏡面反射成分sを表す式である。
【0096】
【数2】
ここで、k
sは光源の色情報に基づくパラメータ、I
0は光源の輝度を表すパラメータ、Lは単位光源ベクトル、Rは視点方向から入射された場合の物体表面の正反射方向によって決まる正反射ベクトル、nは肌表面での光沢の散乱度合いを表すパラメータである。鏡面反射成分sの強さは、単位光源ベクトルと正反射ベクトルとのなす角の余弦に比例する。
【0097】
陰影情報付加部124は、二次元画像データの参照領域が展開された参照領域展開画像に拡散反射成分と鏡面反射成分の両反射モデルを適用することで、被写体の肌領域の陰影情報を参照領域展開画像に付加する。両反射モデルが適用された参照領域展開画像は、参照画像生成部123によって二次元に投影変換されることで、陰影情報が付加された参照画像が生成される。
【0098】
例えば
図4(a)に示す様に、三次元画像データ210を構成する任意の格子面213に着目すると、格子面213に対応する固有色パラメータk
dは、格子面213に展開される参照領域230の色情報に該当する。また、法線ベクトルは、格子面213の法線方向214となる。
【0099】
図13は、任意の格子面221の法線方向に直交する水平方向から見た光源情報及び視点等の位置関係を示す模式図である。
【0100】
図13には、格子面221の任意点301から光源310の方向を示す単位光源ベクトルL302、任意点301から撮像装置100の方向を示す単位視点ベクトルV303、格子面221の法線ベクトルN222、撮像装置100の位置から任意点301に入射される光の格子面221に対する正反射ベクトルR304が示されている。
【0101】
以下に示す式(3)は、正反射ベクトルR304の計算式である。
【0102】
【数3】
正反射ベクトルR304は、単位視点ベクトルV303、法線ベクトルN222に基づいて求めることができる。参照領域展開画像への陰影情報の付加は、式(1)に基づいて求められる拡散反射成分、式(2)に基づいて求められる鏡面反射成分を、参照領域展開画像を構成する各頂点又は各格子面について計算することにより行われる。
【0103】
なお、頂点毎に反射モデルの計算を行う場合には、例えば三角格子面を構成する格子点間の画素値を線形補間することで、三角格子面内の陰影情報が再現される。
【0104】
≪白飛び画像部位の復元≫
ここで、撮影時に光が強く当たり過ぎることで、撮像装置100により取得される画像において、例えば被写体の顔の肌部が部分的に白く飛んでしまう(調子が欠損してしまう)場合がある。この様な白飛び画像部位を含む画像であっても、三次元画像データ210に二次元画像データ200の参照領域230を展開すると共に、上記した反射モデルを適用することで、白飛び画像部位を復元することができる。
【0105】
式(1)の拡散反射モデルに三次元画像データ210を構成する格子面の法線情報を適用することで、白飛び画像部位についても拡散反射成分を計算できる。また、式(2)の鏡面反射モデルに、三次元画像データ210を構成する格子面の法線情報と視点情報とから式(3)により求められる正反射ベクトルを適用することで、白飛び画像部位の鏡面反射成分を算出できる。したがって、陰影情報付加部124は、白飛び画像部位を含む全領域に対して拡散反射成分と鏡面反射成分との線形和を適用することで、参照領域展開画像全体に陰影情報を付加できる。
【0106】
参照画像生成部123は、上記した様に陰影情報が付加された参照領域展開画像を投影変換することで、白飛び画像部位が復元された参照画像240を生成することができる。
【0107】
<画像処理の流れ>
図14に、第2の実施形態の処理装置101における画像修正処理のフローチャートを例示し、全体の処理の概要について説明する。
【0108】
処理装置101において画像修正処理を実行する場合には、まずステップS11にて、被写体・光源・視点情報取得部126が、被写体の二次元画像データ200、三次元画像データ210、撮影時の光源情報及び視点情報を取得する。
【0109】
次にステップS12にて、被写体の二次元画像データ200と同一構図になる様に、視点情報に基づいて三次元画像データ210の視点変換が自動で行われる。
【0110】
ステップS13では、参照領域取得部122が、二次元画像データ200からユーザにより選択される参照領域230を取得する。
【0111】
ステップS14では、参照画像生成部123が、視点変換された三次元画像データ210に参照領域230を展開して参照領域展開画像を生成する。
【0112】
次に陰影情報付加部124が、ステップS15にて三次元画像データ210の表面を構成する全格子面における拡散反射成分を算出し、ステップS16にて鏡面反射成分を算出し、参照領域展開画像に適用する。
【0113】
ステップS17では、参照画像生成部123が、拡散反射成分と鏡面反射成分とが付加された参照領域展開画像を投影変換することで、陰影情報が付加された参照画像を生成する。参照画像生成部123により参照画像が生成されると、二次元画像データ200の修正処理を行うことが可能になる。
【0114】
次にステップS18にて、ユーザにより二次元画像データ200から修正領域270が指定されると、ステップS19にて、画像置換処理部125が、修正領域270と参照画像240の置換領域241とを混合した混合画像271で修正領域270を置換する。
【0115】
以上の処理により、被写体の二次元画像データ200から、修正領域270に含まれる除去対象要素を除去することができる。また、ユーザにより二次元画像データ200における白飛び画像部位が修正領域270として指定された場合には、白飛び画像部位が復元された参照画像240に修正領域270が置換されることで、二次元画像データ200の白飛び画像部位が復元される。
【0116】
二次元画像データ200において、複数の領域を修正する場合には、ステップS18及びステップS19の処理を繰り返し行うことで、複数の領域の修正を実行できる。
【0117】
以上で説明した様に、第2の実施形態の処理システム500又は処理装置101によれば、画像処理実行者が画像処理に不慣れであっても、例えば人物の顔画像の肌部から欠点や不要物を除去する画像修正を簡易な操作で違和感無く行うことができる。また、二次元画像データ200における白飛び画像部位を、同様に簡易な操作で違和感無く復元することが可能になる。
【0118】
〔第3の実施形態〕
次に、第3の実施形態について図面に基づいて説明する。なお、第1又は第2の実施形態と同一の構成又は処理については、説明を省略する場合がある。
【0119】
<処理装置の構成>
図15は、第3の実施形態の処理装置101のハードウェア構成例を示す図である。
【0120】
図15に示す様に、処理装置101は、撮像部111、制御部103、主記憶部104、補助記憶部105、外部記憶装置I/F部106、ネットワークI/F部107、操作部108、表示部109を有する。
【0121】
撮像部111は、被写体を撮像し、被写体の二次元画像データ及び三次元画像データを取得し、主記憶部104又は補助記憶部105に保存する。
【0122】
処理装置101は、撮像部111により取得された被写体の二次元画像データに対して、三次元画像データを用いて生成される参照画像を用いて画像修正処理を行うことができる。
【0123】
なお、第3の実施形態に係る処理装置101は、例えばデジタルスチールカメラ、デジタルビデオカメラ、携帯電話、携帯ゲーム機、タブレット型PCであり、本発明は撮像機能を有する各種機器に適用可能である。
【0124】
第3の実施形態の処理装置101によれば、撮像部111で撮像した二次元画像データに対して、欠点や不要物を除去する画像修正を簡易な操作で違和感無く行うことが可能である。
【0125】
ここまで、上記各実施形態に基づき本発明の説明を行ってきたが、上記実施形態に係る処理装置101が有する機能は、上記に説明を行った各処理手順を、上記各実施形態に係る処理装置101にあったプログラミング言語でコード化したプログラムとしてコンピュータで実行することで実現することができる。よって、上記各実施形態に係る処理装置101を実現するためのプログラムは、コンピュータが読み取り可能な記憶媒体110に格納することができる。
【0126】
よって、上記各実施形態に係るプログラムは、フロッピー(登録商標)ディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)などの記憶媒体110に記憶させることによって、これらの記憶媒体110から、処理装置101にインストールすることができる。また、処理装置101は、ネットワークI/F部107を有していることから、上記各実施形態に係るプログラムは、インターネット等の電気通信回線を介してダウンロードし、インストールすることもできる。
【0127】
以上、実施形態に係る処理装置、処理システム、処理方法及びプログラムについて説明したが、本発明は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。