(57)【要約】【課題】  動きのある被写体を撮影した動画について、フレーム画像ごとにリライティング処理のパラメータが設定すると、リライティング処理の効果が変化してしまい、リライティング処理後の動画が視聴者に見づらいという課題がある。【解決手段】  動画を構成する複数のフレーム画像に対して仮想光源によるリライティング効果を付与する画像処理を行う画像処理装置であって、フレーム画像にリライティング効果を付与する画像処理を行う処理手段と、処理手段による画像処理に用いるパラメータを設定する設定手段と、を備え、設定手段は、複数のフレーム画像において連続する所定期間のフレーム画像に対して、パラメータを固定して設定するか、パラメータをフレーム画像ごとに可変して設定するかを切り替える。【選択図】  図１
2018185576.tif 000002
【特許請求の範囲】
【請求項１】
動画を構成する複数のフレーム画像に対して仮想光源によるリライティング効果を付与する画像処理を行う画像処理装置であって、
前記フレーム画像にリライティング効果を付与する画像処理を行う処理手段と、
前記処理手段による画像処理に用いるパラメータを設定する設定手段と、を備え、
前記設定手段は、前記複数のフレーム画像において連続する所定期間のフレーム画像に対して、前記パラメータを固定して設定するか、前記パラメータをフレーム画像ごとに可変して設定するかを切り替えることを特徴とする画像処理装置。
【請求項２】
前記複数のフレーム画像で被写体を追尾する追尾手段を有し、
前記設定手段は、追尾が成功した期間において、前記パラメータを固定して設定するか、前記パラメータをフレーム画像ごとに可変して設定するかを切り替えることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像処理に用いるパラメータは前記仮想光源の位置であり、
前記設定手段は、前記パラメータをフレーム画像ごとに可変する場合は、追尾する被写体に応じて前記仮想光源の位置を変えることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記複数のフレーム画像で被写体の位置を検出する検出手段を有し、
前記設定手段は、前記パラメータを固定して設定する場合、前記複数のフレーム画像から検出された被写体の位置の変化に基づいて前記パラメータを設定することを特徴とする請求項１に記載の撮像装置。
【請求項５】
前記パラメータは、前記仮想光源の位置、角度、強度の少なくとも一つであることを特徴とする請求項４に記載の撮像装置。
【請求項６】
動画を構成する複数のフレーム画像に対して仮想光源によるリライティング効果を付与する画像処理を行う画像処理方法であって、
前記フレーム画像にリライティング効果を付与する画像処理を行う処理ステップ、
前記処理ステップでの画像処理に用いるパラメータを設定する設定ステップと、
を備え、
前記設定ステップでは、前記複数のフレーム画像において連続する所定期間のフレーム画像に対して、前記パラメータを固定して設定するか、前記パラメータをフレーム画像ごとに可変して設定するかを切り替えることを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画を構成する複数のフレーム画像に対して仮想光源によるリライティング効果を付与する画像処理に関する。
【背景技術】
【０００２】
従来から、撮影画像に撮影時に存在しなかった仮想的な光源（以下、仮想光源と称する）を設定し、画像内の被写体に対して仮想光源から光が照射されたような効果を付与する画像処理が知られている。このような画像処理はリライティング処理と称され、撮影時の環境光で生じた影などの暗部領域を明るくするなどすることが可能である。
【０００３】
下記特許文献１は、画像内の顔領域に関する情報に応じて画像の領域単位でリライティング処理を行う方法を開示している。具体的には、画像内の顔の有無および位置といった顔領域に関する情報と画像のシーン判別結果に基づいて、画像の顔領域に対してリライティング処理を行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１４８５３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
画像にリライティング処理を行って陰影を補正する場合、仮想光源の位置、強度、角度といったリライティング処理に用いるパラメータを画像内の被写体の状態に応じて、適切に設定することが必要である。
【０００６】
特許文献１の方法は、静止画を対象としており、動画については考慮していない。従って、特許文献１の方法を、動きのある被写体を撮影した動画に適用すると、フレーム画像ごとにリライティング処理のパラメータが設定されるので、リライティング処理の効果が次々と変化してしまい、リライティング処理後の動画が視聴者によって見づらいという課題がある。
【０００７】
そこで、本発明は、動画に対して仮想光源によるリライティング効果を適切に付与する画像処理を提供する。
【課題を解決するための手段】
【０００８】
本発明の１実施態様は、動画を構成する複数のフレーム画像に対して仮想光源によるリライティング効果を付与する画像処理を行う画像処理装置であって、前記フレーム画像にリライティング効果を付与する画像処理を行う処理手段と、前記処理手段による画像処理に用いるパラメータを設定する設定手段と、を備え、前記設定手段は、前記複数のフレーム画像における一連のフレーム画像に対して、前記パラメータを固定するか、前記パラメータをフレーム画像ごとに可変するかを、切り替え可能であることを特徴とする画像処理装置である。
【発明の効果】
【０００９】
本発明によれば、動画に対して適切なリライティング処理を行うことが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明におけるデジタルカメラの構成を示すブロック図である。
【図２】本発明における画像処理部の構成を示すブロック図である。
【図３】本発明におけるリライティング処理部の構成を示すブロック図である。
【図４】本発明における仮想光源による照射に対する反射を説明する図である
【図５】本発明におけるリライティング処理前後の画像を説明する図である。
【図６】本発明における仮想光源パラメータを決定するフローチャートである。
【図７】本発明における仮想光源パラメータと追尾の対応を示す表である。
【図８】本発明における被写体と仮想光源のイメージ図である。
【図９】本発明における仮想光源パラメータを決定するフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について図面を用いて詳細に説明する。なお、本発明をデジタルカメラに適用した実施形態を用いて説明するが、本発明はデジタルカメラに限らず、他の画像処理装置に適用することができる。
【００１２】
（第１の実施形態）
図１〜７を参照して、本発明の第１の実施形態を説明する。
【００１３】
図１は、第１の実施形態にかかるデジタルカメラの構成例を示すブロック図である。
【００１４】
図１において、１００はデジタルカメラ全体、１０１はズームレンズ、フォーカスレンズを含むレンズ群、１０２は絞り機能を備えるシャッター、１０３は光学像を電気信号に変換するＣＣＤやＣＭＯＳ素子等で構成される撮像部、１０４は、アナログ信号をデジタル信号に変換するＡ／Ｄ変換器、１０５はＡ／Ｄ変換器１０４から出力される画像データに対し、ホワイトバランス処理や、γ処理、輪郭強調、色補正処理などの各種画像処理を行う画像処理部である。
【００１５】
また、１０６は画像メモリ、１０７は画像メモリ１０６を制御するメモリ制御部、１０８は入力デジタル信号をアナログ信号に変換するＤ／Ａ変換器、１０９はＬＣＤ等の表示器、１１０は画像データを圧縮符号化・復号化するコーデック部である。
【００１６】
１１１は記録媒体１１２とのインタフェースＩ／Ｆ、１１２はメモリカードやハードディスク等の記録媒体、１１３は撮影画像中から被写体の位置や顔の向きといった被写体の情報を検出する被写体情報取得部、１１４は撮影画像にリライティング処理を行うリライティング処理部、５０はデジタルカメラ１００のシステム全体を制御するシステム制御部である。
【００１７】
また、１２１はプログラムやパラメータなどを格納するＥＥＰＲＯＭなどの不揮発性メモリであり、１２２はシステム制御部５０の動作用の定数、変数、不揮発性メモリ１２４から読みだしたプログラム等を展開するシステムメモリである。１２３は被写体との距離を測定し、撮影画素の画素単位に対応する距離情報を２次元の距離マップ画像として出力する測距センサである。
【００１８】
次に、上記のように構成されたデジタルカメラ１００における被写体撮影時の基本動作について説明する。撮像部１０３は、レンズ１０１及びシャッター１０２を介して入射した光を光電変換し、入力画像信号としてＡ／Ｄ変換器１０４へ出力する。Ａ／Ｄ変換器１０４は撮像部１０３から出力されるアナログ画像信号をデジタル画像信号に変換し画像処理部１０５に出力する。
【００１９】
画像処理部１０５は、Ａ／Ｄ変換器１０４からの画像データ、又は、メモリ制御部１０７からの画像データに対し、ホワイトバランスなどの色変換処理、γ処理、輪郭強調処理などを行う。また、画像処理部１０５では、被写体情報取得部１１３で取得した被写体情報の結果や、撮像した画像データを用いて所定の評価値算出処理（図示しない）を行い、得られた評価値結果に基づいてシステム制御部５０が露光制御、測距制御を行う。これにより、ＴＴＬ（スルー・ザ・レンズ）方式のＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理、ＡＷＢ（オートホワイトバランス）処理などを行う。
【００２０】
画像処理部１０５から出力された画像データは、メモリ制御部１０７を介して画像メモリ１０６に書き込まれる。画像メモリ１０６は、撮像部１０３から出力された画像データや、表示部１０９に表示するための画像データを格納する。
【００２１】
また、Ｄ／Ａ変換器１０８は、画像メモリ１０６に格納されている画像表示用のデータをアナログ信号に変換して表示部１０９に供給する。表示部１０９は、ＬＣＤ等の表示器上に、Ｄ／Ａ変換器１０８からのアナログ信号に応じた表示を行う。
【００２２】
コーデック部１１０は、画像メモリ１０６に記録された画像データをＭＰＥＧなどの規格に基づきそれぞれ圧縮符号化する。システム制御部５０は符号化した画像データを関連付けて、記録インタフェース１１１を介して記録媒体１１２に格納する。
【００２３】
上記の基本動作以外に、システム制御部５０は、前述した不揮発性メモリ１２４に記録されたプログラムを実行することで、後述の各処理を実現する。ここでいうプログラムとは、後述の各種フローチャートを実行するためのプログラムのことである。この際、システム制御部５０の動作用の定数、変数、不揮発性メモリ１２１から読み出したプログラム等をシステムメモリ１２２に展開する。
【００２４】
次に、画像処理部１０５の詳細について図２を用いて説明する。図２は画像処理部１０５の構成を示すブロック図である。
【００２５】
図２において、２００は同時化処理部、２０１はＷＢ増幅部、２０２は輝度・色信号生成部、２０３は輪郭強調処理部、２０４は輝度ガンマ処理部、２０５は色変換処理部、２０６は色γ処理部、２０７は色差信号生成部、２０８は陰影情報取得部である。
【００２６】
次に、画像処理部１０５における処理について説明する。図１のＡ／Ｄ変換部１０４から入力された画像信号が画像処理部１０５に入力される。
【００２７】
画像処理部１０５に入力された画像信号は同時化処理部２００に入力される。同時化処理部２００は入力されたベイヤーＲＧＢの画像データに対して、同時化処理を行い、色信号Ｒ，Ｇ，Ｂを生成する。ＷＢ増幅部２０１は、システム制御部５０が算出するホワイトバランスゲイン値に基づき、ＲＧＢの色信号にゲインをかけ、ホワイトバランスを調整する。ＷＢ増幅部２０１が出力したＲＧＢ信号は輝度・色信号生成部２０２に入力される。輝度・色信号生成部２０２はＲＧＢ信号から輝度信号Ｙを生成し、生成した輝度信号Ｙを輪郭強調処理部２０３、色信号ＲＧＢを色変換処理部２０５へ出力する。
【００２８】
輪郭強調処理部２０３では、輝度信号に対して輪郭強調処理を行い、輝度ガンマ処理部２０４へ出力する。輝度ガンマ処理部２０４では輝度信号Ｙに対してガンマ補正を行い、輝度信号Ｙを画像メモリ１０６に出力する。
【００２９】
色変換処理部２０５は、ＲＧＢ信号に対するマトリクス演算などにより、所望のカラーバランスへ変換する。色ガンマ処理部２０６では、ＲＧＢの色信号にガンマ補正を行う。色差信号生成部２０７では、ＲＧＢ信号から色差信号Ｒ−Ｙ、Ｂ−Ｙ信号を生成する。
【００３０】
画像メモリ１０６に出力された画像信号（Ｙ，Ｒ−Ｙ，Ｂ−Ｙ）信号は、コーデック部１１０によって圧縮符号化し、記録媒体１１２に記録する。
【００３１】
また、色変換処理部２０５の出力ＲＧＢ信号は陰影情報取得部２０８へも入力する。陰影情報取得部２０８は、環境光源によって被写体に生じた陰影の状態を解析するための情報を取得する。例えば、被写体の平均輝度情報および顔領域の輝度ヒストグラム情報などを陰影情報として取得する。
【００３２】
次にリライティング処理部１１４の構成および動作について図３を用いて説明する。
【００３３】
たとえばユーザ操作によりリライティング処理が選択されている場合は、画像処理部１０５から出力したデータをリライティング処理部１１４に入力し、仮想光源によるリライティング処理を行う。
【００３４】
図３はリライティング処理部１１４の構成を示すブロック図である。
【００３５】
図３において、３０１は入力された輝度・色差信号（Ｙ、Ｂ−Ｙ、Ｒ−Ｙ）をＲＧＢ信号に変換するＲＧＢ信号変換部、３０２はデガンマ処理を行うデガンマ処理部である。また、３０３は測距センサ１２３から出力される撮像装置と被写体との距離情報を取得する距離算出部、３０４は被写体の法線を算出する法線算出部、３０５は、仮想光源が被写体に反射した成分を算出する仮想光源反射成分算出部、３０６は仮想光源によるリライティング効果を付加する仮想光源付加処理部である。
【００３６】
また、３０７はＲＧＢ信号にガンマ特性をかけるガンマ処理部、３０８は、ＲＧＢ信号を輝度・色差信号（Ｙ、Ｂ−Ｙ、Ｒ−Ｙ）に変換する輝度・色差信号変換部である。
【００３７】
上記構成のリライティング処理部１１４の動作について説明する。
【００３８】
リライティング処理部１１４は、画像メモリ１０６に記録された画像データについて輝度・色差信号（Ｙ、Ｂ−Ｙ、Ｒ−Ｙ）を読み出し、入力とする。ＲＧＢ信号変換部３０１は、入力された輝度・色差信号（Ｙ、Ｂ−Ｙ、Ｒ−Ｙ）をＲＧＢ信号に変換し、デガンマ処理部３０２へ出力する。
【００３９】
デガンマ処理部３０２は、画像処理部１０５のガンマ処理部で掛けられたガンマ特性と逆の特性の演算を行いリニアデータに変換する。デガンマ処理部３０２は、リニア変換後のＲＧＢ信号（Ｒｔ、Ｇｔ、Ｂｔ）を、仮想光源反射成分算出部３０５および仮想光源付加処理部３０６に出力する。
【００４０】
一方、距離算出部３０３は測距センサ１２３から取得した被写体距離情報から距離マップを算出する。被写体距離情報とは、撮影画像の画素単位で得られる２次元の距離情報のことである。法線算出部３０４は距離算出部３０３から取得した距離情報から法線マップを算出する。距離マップから法線マップを生成する方法に関しては、公知の技術を用いるものとするが、具体的な処理例について図４を用いて説明する。
【００４１】
図４はカメラ撮影座標と、被写体の関係を示す図である。例えば、図４に示すようにある被写体４０１に対して、撮影画像の水平方向の差分ΔＨに対する距離（奥行き）Ｄの差分ΔＤから勾配情報を算出し、勾配情報から法線Ｎを算出することが可能である。各画素に対して上記の処理を行うことで、撮影画像の各画素に対応する法線情報Ｎを算出可能である。法線算出部３０４は、撮影画像の各画素に対応する法線情報を法線マップとして仮想光源反射成分算出部３０５に出力する。
【００４２】
仮想光源反射成分算出部３０５では、光源と被写体の距離Ｋ、法線情報Ｎ、仮想光源パラメータＬに基づき、仮想光源が被写体に反射する成分を算出する。
【００４３】
具体的には、光源と被写体との距離Ｋの二乗に反比例し、被写体法線ベクトルＮと光源方向ベクトルＬの内積に比例するように、撮影画像に対応する座標位置の反射成分を算出する。
【００４４】
これについて、図４を用いて説明する。図４において、４０１が被写体、４０２は設定した仮想光源の位置を示している。デジタルカメラ１００で撮影された撮影画像の水平画素位置Ｈ１（垂直画素位置は説明の簡略化のため省略）における反射成分は、カメラ座標Ｈ１における法線Ｎ１と仮想光源の方向ベクトルＬ１の内積に比例し、仮想光源と被写体位置の距離Ｋ１に反比例する値となる。
【００４５】
この関係を数式で表現すると仮想光源による被写体反射成分（Ｒａ、Ｇａ、Ｂａ）は下記の通り（式１）となる。
Ｒａ＝α×（−Ｌ・Ｎ）／Ｋ２×Ｒｔ
Ｇａ＝α×（−Ｌ・Ｎ）／Ｋ２×Ｇｔ            （式１）
Ｂａ＝α×（−Ｌ・Ｎ）／Ｋ２×Ｂｔ
【００４６】
ここで、αは仮想光源の強さでありリライティング補正量のゲイン値である。Ｌは仮想光源の３次元方向ベクトル、Ｎは被写体の３次元法線ベクトル、Ｋは仮想光源と被写体の距離である。Ｒｔ、Ｇｔ、Ｂｔはデガンマ処理部３０２から出力された撮影ＲＧＢデータである。
【００４７】
上記のように算出した仮想光源による反射成分（Ｒａ、Ｇａ、Ｂａ）は仮想光源付加処理部３０６へ出力される。仮想光源付加処理部３０６では、仮想光源成分（Ｒａ、Ｇａ、Ｂａ）を付加する下記の（式２）に従う処理を行う。
Ｒｏｕｔ＝Ｒｔ＋Ｒａ
Ｇｏｕｔ＝Ｇｔ＋Ｇａ            （式２）
Ｂｏｕｔ＝Ｂｔ＋Ｂａ
【００４８】
仮想光源付加処理部３０６から出力された画像信号（Ｒｏｕｔ、Ｇｏｕｔ、Ｂｏｕｔ）はガンマ処理部３０７に入力される。ガンマ処理部３０７では、ＲＧＢの入力信号にガンマ補正を行う。色差信号生成部３０８では、ＲＧＢ信号から輝度Ｙ、色差信号Ｒ−Ｙ、Ｂ−Ｙ信号を生成する。
【００４９】
以上が、リライティング処理部１１４の動作である。リライティング処理部１１４によりリライティング処理した例を図５に示す。図５（ａ）がリライティング処理前の撮影画像、図５（ｂ）がリライティング処理後の撮影画像である。図５（ａ）で暗かった被写体が仮想光源をあててリライティング処理をすることで、図５（ｂ）のように明るく補正されている。
【００５０】
システム制御部５０は、リライティング補正部１１４が出力した輝度・色差信号を、メモリ制御部１０７の制御によって、画像メモリ１０６に蓄積したのち、コーデック部１１０で圧縮符号化を行う。また、Ｉ／Ｆ１１１を介して記録媒体１１２に記録する。
【００５１】
次に、システム制御部５０が、被写体情報取得部１１３で取得した被写体情報に基づいてリライティング処理部１１４で仮想光源のパラメータを決定する処理フローについて以下で説明する。
【００５２】
ここでの被写体情報取得部１１３は、主被写体を検出する主被写体検出部と、主被写体検出部により検出した主被写体の顔器官を検出する顔器官検出部、及び主被写体検出部により検出した主被写体を追尾する追尾部で構成されている。主被写体検出方法、顔器官検出方法、追尾方法については、公知の技術を用いるものとする。例えば、主被写体検出方法としては、画面内の特徴点から被写体の位置を推定し、特徴量の最も大きい領域を主被写体と判定するなどの方法がある。例えば、顔器官検出方法としては、エッジから顔の輪郭や目などの複数の部位を検出し、その位置関係に基づいて顔の向きを検出するなどの方法がある。例えば、追尾方法としては、時間方向に異なる画像を比較して移動ベクトルを求める方法や、被写体又はその一部を特徴色パターン化し、異なる時間で撮影された画像を特徴色パターンマッチングによって追尾する方法などがある。
【００５３】
図６は、システム制御部５０の動作を示したフローチャートである。以下、図６のフローチャートに従って、システム制御部５０が被写体情報取得部１１３で取得した被写体情報に基づいて、リライティング処理部１１４の仮想光源のパラメータを決定する動作について説明する。
【００５４】
ステップＳ６０１では、操作部１２０を介してユーザからの操作によってリライティング処理が選択されているか判定する。即ち、リライティング処理部１１４による処理を行うか否かを判定する。リライティングを行う場合はステップ６０２に進む。
【００５５】
ステップＳ６０２では、被写体を撮影する。
【００５６】
ステップＳ６０３では、被写体情報取得部１１３において、各フレームで被写体を追尾出来ているか否かを判定する。追尾が成功している場合はステップＳ６０４に進み、追尾が失敗している場合はステップＳ６０５に進む。
【００５７】
具体的には、図７（ａ）に示すフレーム番号（フレームＮｏ．）と追尾結果の対応表に示した被写体情報を取得する。図７（ａ）において、７０１はフレーム番号を示す。７０２は追尾が出来ているか否かのフラグを示す。
【００５８】
追尾が成功している場合はフラグを１とし、追尾が失敗している場合はフラグを０とする。７０３は追尾結果、すなわち主被写体の顔位置の座標を示す。図７（ａ）の７０２で示す追尾が成功しているか否かのフラグに応じて、フラグが１であった場合はステップＳ６０４に進み、フラグが０であった場合はステップＳ６０５に進む。
【００５９】
ステップＳ６０４では、ステップＳ６０３において追尾が成功していた場合に、リライティング処理部１１４において、追尾ＯＫ時の仮想光源のパラメータ設定表に基づき、仮想光源のパラメータを決定する。具体的には、図７（ｂ）に示す追尾ＯＫ時の仮想光源設定表に基づいて決定する。図７（ｂ）において、７０４はモードを示し、７０５は仮想光源設定を示す。モードが０の時は仮想光源の位置をフレーム毎に変えないよう制御する。
【００６０】
例えば、フレーム番号が３の時は、追尾フラグが１であり、１フレーム前のフレーム番号２の時の仮想光源の位置と同一の位置となるよう仮想光源のパラメータを制御する。
また、モードが１の時は、追尾結果に合わせて仮想光源の位置をフレーム毎に変えるよう制御する。例えば、フレーム番号が２の時は、主被写体の顔位置（ｘ２，ｙ２）に仮想光源があたるように仮想光源の位置、角度、強度といった仮想光源のパラメータを決定し、フレーム番号が３の時は、主被写体の顔位置（ｘ３，ｙ３）に仮想光源があたるように仮想光源の位置・角度・強度といったパラメータを決定する。すなわち、フレーム番号が２の時の仮想光源による被写体反射成分（Ｒａ（ｘ２，ｙ２）、Ｇａ（ｘ２，ｙ２）、Ｂａ（ｘ２，ｙ２））は、次式（式３）で表わされる。なお、モード０とモード１の設定はユーザからの指示操作によって決めてもよいし、画像を解析して被写体の状態に応じて自動的に決定するようにしてもよい。
Ｒａ（ｘ２，ｙ２）＝
α×（−Ｌ（ｘ２，ｙ２）・Ｎ（ｘ２，ｙ２））／Ｋ（ｘ２，ｙ２）２×Ｒｔ
Ｇａ（ｘ２，ｙ２）＝
α×（−Ｌ（ｘ２，ｙ２）・Ｎ（ｘ２，ｙ２））／Ｋ（ｘ２，ｙ２）２×Ｇｔ
Ｂａ（ｘ２，ｙ２）＝
α×（−Ｌ（ｘ２，ｙ２）・Ｎ（ｘ２，ｙ２））／Ｋ（ｘ２，ｙ２）２×Ｂｔ
（式３）
【００６１】
Ｌ（ｘ２，ｙ２）は、仮想光源の３次元方向ベクトル、Ｎ（ｘ２，ｙ２）は、（ｘ２，ｙ２）の位置にいる被写体の３次元法線ベクトル、Ｋ（ｘ２，ｙ２）は仮想光源と（ｘ２，ｙ２）の位置にいる被写体との距離を示す。仮想光源があたるとは、（Ｒａ（ｘ２，ｙ２）、Ｇａ（ｘ２，ｙ２）、Ｂａ（ｘ２，ｙ２））が正の値となる条件を満たしていれば良い。
【００６２】
同様に、フレーム番号が３の時の仮想光源による被写体反射成分（Ｒａ（ｘ３，ｙ３）、Ｇａ（ｘ３，ｙ３）、Ｂａ（ｘ３，ｙ３））は、次式（式４）で表わされる。
Ｒａ（ｘ３，ｙ３）＝
α×（−Ｌ（ｘ３，ｙ３）・Ｎ（ｘ３，ｙ３））／Ｋ（ｘ３，ｙ３）２×Ｒｔ
Ｇａ（ｘ３，ｙ３）＝
α×（−Ｌ（ｘ３，ｙ３）・Ｎ（ｘ３，ｙ３））／Ｋ（ｘ３，ｙ３）２×Ｇｔ
Ｂａ（ｘ３，ｙ３）＝
α×（−Ｌ（ｘ３，ｙ３）・Ｎ（ｘ３，ｙ３））／Ｋ（ｘ３，ｙ３）２×Ｂｔ
（式４）
【００６３】
Ｌ（ｘ３，ｙ３）は、仮想光源の３次元方向ベクトル、Ｎ（ｘ３，ｙ３）は、（ｘ３，ｙ３）の位置にいる被写体の３次元法線ベクトル、Ｋ（ｘ３，ｙ３）は仮想光源と（ｘ３，ｙ３）の位置にいる被写体との距離を示す。仮想光源があたるとは、（Ｒａ（ｘ３，ｙ３）、Ｇａ（ｘ３，ｙ３）、Ｂａ（ｘ３，ｙ３））が正の値となる条件を満たしていれば良い。
【００６４】
ステップＳ６０５では、ステップＳ６０３において追尾が出来なかった場合に、リライティング処理部１１４において、追尾ＮＧ時の仮想光源のパラメータ設定表に基づき、仮想光源のパラメータを決定する。具体的には、図７（ｃ）に示す追尾ＮＧ時の仮想光源設定表に基づいて決定する。
【００６５】
図７（ｃ）において、７０６はモードを示し、７０７は仮想光源設定を示す。モードが０の時は仮想光源をＯＦＦにする。例えば、フレーム番号が１０１の時は、追尾フラグが０となり、追尾が出来ていないので仮想光源をＯＦＦにする。具体的には、仮想光源の強さを示すゲインαを０とする。
【００６６】
また、モードが１の時は、仮想光源の強度を弱めるよう制御する。例えば、フレーム番号が１０１の時は、フレーム番号が１００の時よりも仮想光源の強度を弱めるよう制御する。具体的には、仮想光源の強さを示すゲインαの値をフレーム番号が１００の時よりも小さい値とする。
【００６７】
以上の処理によって制御部５０は、被写体情報取得部１１３で取得した被写体情報に基づいて、リライティング処理部１１４の仮想光源のパラメータを決定する。
【００６８】
また、本実施例では、追尾ＯＫ時、追尾ＮＧ時の仮想光源設定表において、モードが０、１の２つある場合について説明したが、被写体情報取得部１１３で取得した被写体情報を基に仮想光源の位置・角度・強度などのパラメータを制御するものであれば、これに限定するものではない。
【００６９】
例えば、被写体情報取得部１１３の顔器官検出部において、主被写体の顔の向きについての被写体情報を取得し、その顔の向き情報に基づいて、仮想光源の角度を変えるよう制御する構成であっても良い。
【００７０】
また、本実施例では、リライティングにより明るく補正する場合について述べたが、逆に暗くするリライティングを行ってもよい。その場合、仮想光源のゲイン値αをマイナスにする。
【００７１】
また、仮想光源の位置と処理対象画素の距離Ｄの算出方法は、本実施形態の方法に限定するものではなく、どのような算出方法をとってもよい。例えば、カメラの位置および被写体位置を３次元位置として取得し、３次元での距離で計算してもよい。
【００７２】
また、仮想光源によるリライティング効果を付加する場合に、距離の二乗に反比例する式で計算したが、リライティング効果の付加量をこの方式で算出するものに限定するものではない。例えば、距離Ｄに反比例するものや、ガウス分布的に照射範囲が変化する式であってもよい。
【００７３】
以上の形態によれば、複数のフレーム画像において連続する所定期間のフレーム画像に対して、リライティング処理に用いるパラメータを固定して設定するか、フレーム画像ごとに可変して設定するかを切り替えることができるので、動画における被写体の状態に応じて適切なリライティング処理を行うことができる。
【００７４】
（第２の実施形態）
次に第２の実施形態として、主被写体検出部のみから構成される被写体情報取得部１１３による被写体情報に基づいて、リライティング処理部１１４の仮想光源のパラメータを決定する方法について説明する。
【００７５】
なお、第２の実施形態においては、撮像装置の一例として実施例１と同じくデジタルカメラに本発明を適用した例を説明することとし、基本構成は実施例１と共通であり、以下の説明においては実施例１との差異点についてのみ記載することとする。
【００７６】
第１の実施形態において、被写体情報取得部１１３は、主被写体検出部、器官検出部、追尾部により構成されていたが、第２の実施形態では被写体情報取得部１１３は、主被写体検出部のみから構成されている点が第１の実施形態と異なる。
【００７７】
また、第１の実施形態では追尾結果を基にリライティング処理を撮影とほぼ同時にリアルタイムに処理することが可能であったが、第２の実施形態においては、リアルタイムではなく撮影後も後処理としてリライティング処理を実行できる点が第１の実施形態と異なる。
【００７８】
図８は、システム制御部５０の動作を示したフローチャートである。以下、図８のフローチャートに従って、システム制御部５０が被写体情報取得部１１３で取得した被写体情報に基づいて、リライティング処理部１１４の仮想光源のパラメータを決定する動作について説明する。
【００７９】
ステップＳ８０１では、操作部１２０を介してユーザからの操作によってリライティング処理が選択されているか判定する。即ち、リライティング処理部１１４による処理を行うか否かを判定する。リライティングを行う場合はステップ８０２に進む。
【００８０】
ステップＳ８０２では、被写体を撮影する。
【００８１】
ステップＳ８０３では、被写体情報取得部１１３において、時刻ｔ１の主被写体の位置情報を取得する。
【００８２】
ステップＳ８０４では、被写体情報取得部１１３において、時刻ｔｎの主被写体の位置情報を取得する。ここで、時刻ｔ１、時刻ｔｎは、それぞれフレーム番号１、フレーム番号ｎの画像であってもよい。
【００８３】
ステップＳ８０５では、ステップＳ８０２、ステップＳ８０３で取得した主被写体の位置情報からリライティング処理部１１４の仮想光源パラメータを決定する。例えば、図９（ａ）、（ｂ）に示すように被写体が移動している場合、時刻ｔ１における被写体位置（ｘｔ１、ｙｔ１）、時刻ｔｎにおける被写体位置（ｘｔｎ、ｙｔｎ）と被写体の位置情報を取得する。
【００８４】
リライティング処理部１１４では、被写体が（ｘｔ１、ｙｔ１）から（ｘｔｎ、ｙｔｎ）まで移動したという情報を基に、どちらの位置にいても仮想光源からの光が被写体にあたるように仮想光源の位置、強度、角度のパラメータを決定する。
【００８５】
例えば、被写体が（ｘｔ１、ｙｔ１）から動かなかった場合の仮想光源の位置よりも、被写体が（ｘｔ１、ｙｔ１）から（ｘｔｎ、ｙｔｎ）まで移動した場合の仮想光源の位置は被写体から遠くに設定し、角度は（ｘｔ１、ｙｔ１）の位置でも（ｘｔｎ、ｙｔｎ）の位置でもあたる範囲の角度、強度に関しても（ｘｔ１、ｙｔ１）の位置でも（ｘｔ１、ｙｔ１）の位置でもあたる強度に設定する。
【００８６】
具体的には、被写体位置が（ｘｔ１、ｙｔ１）の時の仮想光源による被写体反射成分（Ｒａ（ｘｔ１，ｙｔ１）、Ｇａ（ｘｔ１，ｙｔ１）、Ｂａ（ｘｔ１，ｙｔ１））は、次式（式５）で表わされる。
Ｒａ（ｘｔ１，ｙｔ１）＝
α×（−Ｌ（ｘｔ１，ｙｔ１）・Ｎ（ｘｔ１，ｙｔ１））／Ｋ（ｘｔ１，ｙｔ１）２×Ｒｔ
Ｇａ（ｘｔ１，ｙｔ１）＝
α×（−Ｌ（ｘｔ１，ｙｔ１）・Ｎ（ｘｔ１，ｙｔ１））／Ｋ（ｘｔ１，ｙｔ１）２×Ｇｔ
Ｂａ（ｘｔ１，ｙｔ１）＝
α×（−Ｌ（ｘｔ１，ｙｔ１）・Ｎ（ｘｔ１，ｙｔ１））／Ｋ（ｘｔ１，ｙｔ１）２×Ｂｔ
（式５）
【００８７】
Ｌ（ｘｔ１，ｙｔ１）は、仮想光源の３次元方向ベクトル、Ｎ（ｘｔ１，ｙｔ１）は、（ｘｔ１，ｙｔ１）の位置にいる被写体の３次元法線ベクトル、Ｋ（ｘｔ１，ｙｔ１）は仮想光源と（ｘｔ１，ｙｔ１）の位置にいる被写体との距離を示す。仮想光源があたるとは、（Ｒａ（ｘｔ１，ｙｔ１）、Ｇａ（ｘｔ１，ｙｔ１）、Ｂａ（ｘｔ１，ｙｔ１））が正の値となる条件を満たしていれば良い。
【００８８】
同様に、被写体位置が（ｘｔｎ、ｙｔｎ）の時の仮想光源による被写体反射成分（Ｒａ（ｘｔｎ，ｙｔｎ）、Ｇａ（ｘｔｎ，ｙｔｎ）、Ｂａ（ｘｔｎ，ｙｔｎ））は、次式（式６）で表わされる。
Ｒａ（ｘｔｎ，ｙｔｎ）＝
α×（−Ｌ（ｘｔｎ，ｙｔｎ）・Ｎ（ｘｔｎ，ｙｔｎ））／Ｋ（ｘｔｎ，ｙｔｎ）２×Ｒｔ
Ｇａ（ｘｔｎ，ｙｔｎ）＝
α×（−Ｌ（ｘｔｎ，ｙｔｎ）・Ｎ（ｘｔｎ，ｙｔｎ））／Ｋ（ｘｔｎ，ｙｔｎ）２×Ｇｔ
Ｂａ（ｘｔｎ，ｙｔｎ）＝
α×（−Ｌ（ｘｔｎ，ｙｔｎ）・Ｎ（ｘｔｎ，ｙｔｎ））／Ｋ（ｘｔｎ，ｙｔｎ）２×Ｂｔ
（式６）
【００８９】
Ｌ（ｘｔｎ，ｙｔｎ）は、仮想光源の３次元方向ベクトル、Ｎ（ｘｔｎ，ｙｔｎ）は、（ｘｔｎ，ｙｔｎ）の位置にいる被写体の３次元法線ベクトル、Ｋ（ｘｔｎ，ｙｔｎ）は仮想光源と（ｘｔｎ，ｙｔｎ）の位置にいる被写体との距離を示す。仮想光源があたるとは、（Ｒａ（ｘｔｎ，ｙｔｎ）、Ｇａ（ｘｔｎ，ｙｔｎ）、Ｂａ（ｘｔｎ，ｙｔｎ））が正の値となる条件を満たしていれば良い。
【００９０】
以上の処理によって制御部５０は、被写体情報取得部１１３で取得した異なる時間ｔ１、ｔｎの被写体の位置情報に基づいて、リライティング処理部１１４の仮想光源のパラメータを決定する。
【００９１】
また、本実施形態では、被写体の移動しており、移動元と移動先における被写体の位置から、移動元、移動先のどちらの位置に被写体がいても仮想光源からの光があたるように仮想光源のパラメータを決定する方法について説明した。しかし、これに限るものではない。例えば、被写体が移動によって決まる移動線を基に、仮想光源の位置を並行して移動するようにしても良い。
【００９２】
また、本実施形態では、被写体の位置情報を基に仮想光源のパラメータを決定する方法について説明したが、位置情報に限るものではない。位置情報に限らず、被写体情報取得部１１３において、例えば被写体の表情の変化、被写体が喋っているか否か、被写体の人数が変わったなどといったシーンの切り替わりを判別し、そのシーンの切り替わりの情報を基に仮想光源のパラメータを決定しても良い。
【００９３】
また、本実施形態では、撮像装置としてデジタルカメラが被写体情報を基に仮想光源のパラメータを決定しリライティング処理する例について説明したがこれに限るものではない。例えば、パーソナルコンピューター等において、デジタルカメラで撮影した画像データを取り込み、取り込んだ画像データの被写体情報を解析することで、仮想光源のパラメータを決定してパーソナルコンピューターにおいてリライティング処理を行う構成であっても良い。
【００９４】
また、パーソナルコンピューター等において、リライティング処理機能を有するデジタルカメラで撮影したリライティング処理前の画像データと、デジタルカメラにおいて取得した被写体情報、仮想光源のパラメータ情報とを取り込み、デジタルカメラでのリライティング処理ではユーザの意図通りにリライティング出来ていないシーンに限り、再度仮想光源のパラメータを編集しリライティング処理をし直すといった構成としても良い。
【符号の説明】
【００９５】
５０  システム制御部
１００  デジタルカメラ
１０５  画像処理部
１１４  リライティング処理部
１２０  操作部
１２３  測距センサ
【図１】
2018185576.tif 000003
【図２】
2018185576.tif 000004
【図３】
2018185576.tif 000005
【図４】
2018185576.tif 000006
【図５】
2018185576.tif 000007
【図６】
2018185576.tif 000008
【図７】
2018185576.tif 000009
【図８】
2018185576.tif 000010
【図９】
2018185576.tif 000011