説明

画像処理装置及びその方法、プログラム、並びに撮像装置

【課題】 入力画像の構造を失うことなく位置ベースの画像補正を行うための技術を提供する。
【解決手段】 画像処理装置は、特定のカテゴリに属する被写体を入力画像から検出するための、被写体のモデルを示すモデル情報を記憶するモデル記憶手段と、モデル情報を参照して入力画像から被写体を検出する検出手段と、検出した被写体が入力画像において占める領域に対して画像補正を行うか否かを決定する決定手段と、画像の局所領域について、補正前の特徴を示す特徴ベクトルと、補正後の特徴を示す特徴ベクトルとの対応関係を示す複数の補正用データセットを記憶する補正用データセット記憶手段と、画像補正を行うと決定した領域を構成する局所領域を補正するための1以上の補正用データセットを前記補正用データセット記憶手段から選択する選択手段と、選択した補正用データセットを用いて、画像補正を行うと決定した領域を補正する補正手段とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理技術に関するものであり、特に、画像補正により入力画像の画質を向上させる技術に関する。
【背景技術】
【0002】
近年、カメラ付き携帯電話に代表される低価格のデジタル映像機器が普及し、大量の画像が手軽に撮影し利用されるようになってきている。それに伴い主に観賞上の目的で、低画質の画像を高解像化したり、ブレなどの失敗画像を補正して画質を向上させるようなソフトウェア手法が求められている。
【0003】
このような画像補正を行う方法としては、例えば低画質画像の特徴量と高画質画像の特徴量の変換辞書を予め学習して記憶しておき、低画質の画像を対応する高画質の画像へ変換するものが知られている(非特許文献1参照)。
【0004】
また、近年大量の画像の保存された画像データベースが利用できるようになり、大量の画像群の中から類似画像を用いて画像を補完するような手法が提案されている。例えば、非特許文献2は入力画像中の領域を別の類似画像の領域に置き換えるパッチワークのような画像補正を記載している。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】S. Baker and T. Kanade. Hallucinating faces. In IEEE International Conference on Automatic Face and Gesture Recognition, March 2000.
【非特許文献2】James Hays, Alexei A. Efros. Scene Completion Using Millions of Photographs. ACM Transactions on Graphics (SIGGRAPH 2007). August 2007, vol. 26, No. 3.
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記手法では以下に示すような課題がある。非特許文献1に記された手法は、サイズと向きが正規化された正面方向の顔画像を対象としている。この手法は顔の各部分領域について変換辞書を記憶しておき、位置ベースに画像変換を行う。このため目や口といった細部の形状のつぶれた低画質の画像からでも精度良く顔画像を復元することが可能である。しかし非特許文献1の手法を自然画像中の一般の物体に適用する場合、乱雑な背景から目的の物体を正確に切り出し、サイズと方向を完全に揃えて位置を合わせる必要がある。このような処理は一般に困難であり、人体や動物のようにポーズの自由度の大きい関節物体では正規化はさらに難しくなる。したがって、非特許文献1の手法のような位置ベースの画像補正を、自由姿勢の一般の物体に適用することは困難であった。
【0007】
また、非特許文献2の手法では基本的に領域中の元の構造は保存されない。すなわち、非特許文献2の手法においては、入力画像中の領域を別の類似画像の領域に置き換えることで入力画像の構造が失われて、領域間に関連性のない画像になってしまう可能性があった。
【0008】
本発明は上記課題に鑑みなされたものであり、入力画像の構造を失うことなく位置ベースの画像補正を行うための技術を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するため、本発明による画像処理装置は以下の構成を備える。即ち、
入力画像に対して画像補正を行う画像処理装置であって、
特定のカテゴリに属する被写体を前記入力画像から検出するための、被写体のモデルを示すモデル情報を記憶するモデル記憶手段と、
前記モデル情報を参照して前記入力画像から前記被写体を検出する検出手段と、
検出した前記被写体が前記入力画像において占める領域に対して画像補正を行うか否かを決定する決定手段と、
画像の局所領域について、補正前の特徴を示す特徴ベクトルと、補正後の特徴を示す特徴ベクトルとの対応関係を示す複数の補正用データセットを記憶する補正用データセット記憶手段と、
画像補正を行うと決定した前記領域を構成する局所領域を補正するための1以上の前記補正用データセットを選択する選択手段と、
選択した前記補正用データセットを用いて、画像補正を行うと決定した前記領域を補正する補正手段と
を備える。
【発明の効果】
【0010】
本発明によれば、入力画像の構造を失うことなく位置ベースの画像補正を行うための技術を提供することができる。
【図面の簡単な説明】
【0011】
【図1】画像処理装置の一実施形態のブロック図。
【図2】画像処理装置の手順の概要を示すフロー図。
【図3】画像処理の各段階の結果を示す図。
【図4】被写体の領域の同定の手順を示す図。
【図5】物体モデルと姿勢のサブカテゴリを示す図。
【図6】被写体モデルによる被写体の同定の手順を示す図。
【図7】背景の領域の補正用データセットの作成の手順を示す図。
【図8】ウェーブレット多重解像度画像の構成を示す図。
【図9】背景の領域の補正用データセットの作成方法を示す図。
【図10】物体のパーツの領域の補正用データセットの作成の手順を示す図。
【図11】物体のパーツの領域の補正用データセットの作成方法を示す図。
【図12】物体のパーツ間の領域の補正用データセットの作成の手順を示す図。
【図13】物体のパーツ間の領域の補正用データセットの作成方法を示す図。
【図14】画像補正のためのマルコフネットワークの構成を示す図。
【図15】画像処理装置の別の一実施形態のブロック図。
【図16】画像処理装置の別の一実施形態の手順の概要を示すフロー図。
【図17】画像処理装置のさらに別の一実施形態のブロック図。
【図18】画像補正の結果の候補から選択を行う実施の例を示す図。
【図19】動画の画像補正を行う方法について示した図。
【図20】動画の画像補正のためのマルコフネットワークの構成を示す図。
【図21】画像処理装置のハードウェア構成例を模式的に示すブロック図。
【発明を実施するための形態】
【0012】
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。
【0013】
<<実施形態1>>
(画像処理装置)
図1は、本実施形態に係る画像処理装置の機能構成を示すブロック図である。図1に示すように、この画像処理装置は以下の構成を備える。
・画像入力部101:画像を入力する。
・被写体モデル記憶部102:被写体を検出するために複数のカテゴリの被写体のモデルデータ(モデル情報)を記憶する。
・被写体検出部103:画像中の被写体を同定する。
・補正領域決定部104:被写体や画像の状態から補正を行うか否かを決定する。
・補正用データセット記憶部105:画像の局所領域について、補正前の特徴を示す特徴ベクトルと、補正後の特徴を示す特徴ベクトルとの対応関係を示す複数の補正用データセットを記憶する。
・補正用データセット選択部106:被写体やその領域に応じて適切な補正用データセットを選択する。
・画像補正部107:選択された補正用データセットを用いて、補正領域を補正する。
各構成の詳細については、後述する。
【0014】
図21は、本実施形態に係る画像処理装置のハードウェア構成例を模式的に示すブロック図である。本実施形態に係る画像処理装置は、例えば、パーソナルコンピュータ(PC)やワークステーション(WS)、モバイル端末、スマートフォン等で実現される。
【0015】
図21において、CPU990は中央演算処理装置であり、オペレーティングシステム(OS)やアプリケーションプログラム等に基づいて他の構成要素と協働し、画像処理装置全体の動作を制御する。ROM991は読み出し専用メモリであり、基本I/Oプログラム等のプログラム、基本処理に使用するデータ等を記憶する。RAM992は書き込み可能メモリであり、CPU990のワークエリア等として機能する。
【0016】
外部記憶ドライブ993は記録媒体へのアクセスを実現し、メディア(記録媒体)994に記憶されたプログラム等を本システムにロードすることができる。メディア994には、例えば、フレキシブルディスク(FD)、CD−ROM、DVD、USBメモリ、フラッシュメモリ等が含まれる。外部記憶装置995は大容量メモリとして機能する装置であり、本実施形態ではハードディスク装置(以下、HDと呼ぶ)を用いている。HD995には、OS、アプリケーションプログラム等が格納される。
【0017】
指示入力装置996はユーザからの指示やコマンドの入力を受け付ける装置であり、タッチパネル、キーボード、或いはポインティングデバイス等がこれに相当する。ディスプレイ997は、指示入力装置996から入力されたコマンドや、それに対する画像処理装置の応答出力等を表示したりする表示装置である。インターフェイス(I/F)998は外部装置とのデータのやり取りを中継する装置である。システムバス999は、画像処理装置内のデータの流れを司るデータバスである。
【0018】
尚、以上の各装置と同等の機能を実現するソフトウェアにより、ハードウェア装置の代替として構成することもできる。
【0019】
(全体処理)
自然画像は、人体や車といった全体の形状や被写体を構成する部分にある程度共通性を持つ物体と、空や山といった形状の不定な背景等の領域という主に二種類の被写体によって構成されている。観賞目的で画像の高解像化などを行うとき、前者の被写体については顔における目鼻のような構造に整合性がないと観賞者に違和感を生じさせやすい。これに対して後者の被写体については、領域の形状やテクスチャの細部の構造が多少変化していたとしても観賞者が心理的な違和感を覚えることは少ない。本実施形態では自然画像のこのような性質に配慮して背景と物体とを区別して画像の高解像化を行う。図2に本実施形態の手順の概要を、図3に本実施形態の各部の機能と結果の例を示しながら高解像化の手順を説明する。
【0020】
図2おいて、本実施形態に係る画像処理装置は、まず背景の領域に関するモデルを被写体モデル記憶部102から読み出し(S101)、被写体検出部103により画像を構成する領域のカテゴリを同定する(S102)。領域の同定結果は、例えば図3の61のように示される。そして、背景の領域についてはS103〜S105の処理を行い、物体の候補領域についてはS106〜S112の処理を行う。
【0021】
背景の領域についてはどの領域を補正するか決定し(S103)、あらかじめ領域ごとに学習し、補正用データセット記憶部105に記憶しておいた補正用データセット群から対応する1以上のデータセットを選択する(S104)。そして、画像補正部107で領域ごとに画像補正を行う(S105)。補正後の背景領域は、例えば図3の63のように示される。
【0022】
一方、物体が存在する候補領域があれば(S106)、対応する物体モデルを被写体モデル記憶部102から読み出す(S107)。読み出した物体モデルを用いて被写体検出部103で対象物体を検出して物体の位置を同定する(S108)。物体の同定結果は、例えば図3の62のように示される。次に物体を構成する各パーツの位置と姿勢を同定する(S109)。さらに、位置姿勢が同定されたパーツの領域から補正をする領域を決定する(S110)。そして。あらかじめ物体のパーツごとに学習し、補正用データセット記憶部105に記憶しておいた補正用データセット群から、対応する1以上のデータセットを選択し(S111)、画像補正部107で各物体のパーツの領域ごとに画像補正を行う(S112)。補正後の物体の結果は、例えば図3の64のように示される。
【0023】
最後に画像補正部107の画像統合部65で、背景領域と物体領域とのそれぞれの補正結果を合成することで高解像度に補正された画像を得る(S113)。
【0024】
上記の処理は、上述のCPU990の制御に基づいて実行される。以下では、上記機能を実現するための各部の機能の概要および処理の流れの詳細を説明する。
【0025】
(画像の入力)
画像入力部101は、画像入力を行うモジュールであり、入力される画像は静止画の場合と動画の場合がある。画像入力部は、例えば、撮像を行うイメージセンサや画像データベースから画像の読み込みを行う装置とすることができる。このとき、画像情報のほかに、撮像された場所のGPS情報や撮影時のタイムスタンプなどの画像の属性も同時に入力して後ほど説明する後段の画像処理で利用してもよい。また画像入力部101が画像データベースからの読み込み装置である場合は、画像データベース上で手動あるいは自動的に被写体のラベル情報を関連づけておき、これを付帯情報として入力してもよい。
【0026】
(被写体のモデル)
被写体モデル記憶部102には画像中から特定のカテゴリの被写体を検出するための被写体のモデルが記憶され、この被写体のモデルを用いて後段の被写体検出部103で画像中の対象カテゴリの被写体を検出してその位置を同定する。被写体のモデルには、主に領域内の特徴量の分布を検出の手がかりとする領域のモデルと主に物体の形状や構造を検出の手がかりとする物体のモデルとの二種類がある。本実施形態では前者を領域モデルと呼び、後者を物体モデルと呼ぶ。以下、入力画像から領域モデルを同定する処理と、物体モデルの詳細について説明する。
【0027】
●領域モデルの同定
まず、領域モデルを同定する処理について説明する。この処理は、図2のS102において実行される。領域モデルは山や空といった主に背景に係る領域のカテゴリを認識するために、被写体の領域特徴を表すものである。領域モデルの同定は本実施形態では従来のシーン分析の領域分割に用いられる以下のような方法で実現する。図4を用いて領域のカテゴリの同定するための手順を説明する。
(1) 領域の初期分割(S21):入力画像について、局所的な空間周波数を表現する特徴量である、GIST(非特許文献3を参照)およびフィルタバンクの一種であるTextons(非特許文献4を参照)特徴量を求める。この特徴量をあらかじめ主成分分析等で求めた変換行列で次元圧縮してn次元の特徴ベクトルとする。この空間周波数のn次元特徴と、各画素をCIE L*a*b*色空間に変換した3次元の色情報、および、2次元の位置情報(x,y)をあわせて(n+5)次元の特徴ベクトルを得る。各画素の特徴ベクトルをk−平均法によってk個のクラスタに分類し、各クラスタを初期の領域のグループとする。kは所定の数を定めておく。なおここで、上記空間周波数特徴は、ガボールジェットなど他の公知の特徴量を用いてもよい。
(2) 事後確率の計算(S22):k個の各領域(クラスタ)について色の特徴量と空間周波数の特徴量の分布Xk(ωCol,ωApp)が領域のカテゴリCiに属する事後確率P(Ci|Xk)を求める。ここでωColは前記の色情報の特徴ベクトル、ωAppは前記の空間周波数の特徴ベクトルである。分布Xk(ωCol,ωApp)は適当な有限区間を設定して等分割して離散化し、分布の総和が1となるように正規化しておく(ΣΣXk(ωCol,ωApp)=1)。ここで、ベイズ則より、
【数1】

である。事前確率P(Ci)はあらかじめ領域のカテゴリのラベル付けがされた学習用画像データを用いて、各カテゴリの領域の面積の総和が画像全体に占める割合によって与える。尤度P(Xk|Ci)は、例えば以下のようにカテゴリiの特徴量の分布Xi(ωCol,ωApp)と領域kの特徴量の分布Xk(ωCol,ωApp)の間のカイ二乗距離を用いて定義する。
【数2】

ただしZとβは調整パラメータである。またカテゴリiの特徴量の分布Xi(ω)はあらかじめ前記学習用画像データから算出しておく。
(3) 領域の併合(S23〜S24):各領域kが各領域カテゴリiに属する事後確率の最大の値をMax P(Ci|Xk)とする。ここで領域kを領域kの最近傍の領域と併合したときの新しい領域k’について最大値を同様に求めてMax P(Ci|Xk')とする。Max P(Ci|Xk')がMax P(Ci|Xk)よりも所定の閾値以上に大きいのであれば、領域kを領域kの最近傍の領域と併合する。併合する領域がなくなるまでこれを繰り返す。
【0028】
【非特許文献3】A. Oliva and A. Torralba. Modeling the shape of the scene: a holistic representation of the spatial envelope. Int. Journal of Computer Vision, 42(3):145.175, 2001
【非特許文献4】B. Julesz, Textons, the elements of texture perception, and their interactions. Nature, 290(5802):91.97., 1981
【0029】
以上のようにして、入力画像の領域のカテゴリを同定することができる。なお、このとき事後確率の最大値でなく情報量
【数3】

を用い、領域の併合によって所定の閾値以上に情報量が増加するか否かで判断してもよい。
【0030】
また、ここで、領域のカテゴリの同定は結果を一つに限定せずに、複数の候補を出力するような形態でもよい。事後確率の上位のカテゴリを複数候補として記憶しておき、後に説明するように、複数の組み合わせで画像補正を行い、最も好適な結果を出力するような形態も考えられる。また後に説明するように、複数の結果を提示してユーザーに選択させるというような利用の仕方もあり得る。
【0031】
上記の領域分割の方法は、局所的な画像の特徴量に基づいたボトムアップ的な領域のカテゴリ推定の手法である。しかし、例えば低解像度の画像においては局所的な範囲のみからでは領域のカテゴリが一意に同定できないことがある。そのため、領域カテゴリの画像上の位置、領域の相対的な配置関係や共起確率、即ち画像のコンテクストを用いて、カテゴリを同定する方法を併せて利用することも考えられる。
【0032】
画像のコンテクストを利用する手法の例としては、例えば条件付確率場によって画像の領域を推定する公知の方法がある。非特許文献5には領域の画像上の位置の事前分布や、領域間の隣接関係を利用して領域を推定する方法が示されている。また別の公知の方法としては、例えば入力画像と構図の類似した複数の画像を画像データベースから選択し、関連付けされた情報を元に領域のカテゴリを同定する方法もある(例えば非特許文献6を参照)。
【0033】
【非特許文献5】J. Shotton, J. Winn, C. Rother, A. Criminisi, TextonBoost for Image Understanding: Multi-Class Object Recognition and Segmentation by Jointly Modeling Texture, Layout, and Context, International Journal of Computer Vision, Vol. 81, No. 1. (1 January 2009), pp. 2-23.
【非特許文献6】C. Liu, J. Yuen, A. Torralba, Dense Scene Alignment using SIFT Flow for Object Recognition, Proc. of the IEEE Conference on Computer Vision and Pattern Recognition, 2009.
【0034】
●物体モデル
次に、物体モデルに関して説明する。物体モデルは人体や犬などの動物や、車や自転車といった人工物などを対象とするモデルである。一般に同じカテゴリの物体は、類似した下位の構成部位の形状および類似した下位の構成部位の配置関係を備えている。物体モデルは、このような物体の構造を表現するモデルが好適である。また、本実施形態に係る構成の主な効果の一つは低画質の画像を高画質に補正することであるため、ボケや雑音で汚れた対象でもロバストに検出可能なモデルの表現であることが望ましい。
【0035】
本実施形態では後に説明するように、後段の画像補正部107において、物体モデルと検出した物体との間で部位の対応関係を利用して構造の整合性を保った画像補正を行う。そのため、本実施形態で用いる物体モデルは物体の構成部位の概略位置と概略姿勢の表現を含むようなモデルが望ましい。そこで本実施形態では物体モデルとしてパーツをベースとしたモデルの手法を用いる。
【0036】
ここでのパーツとは物体を構成する下位の構造を指すものである。特に、物体の個体、姿勢、ポーズなどが変化したときに、相関して見えの変化を生じるひとまとまりの構造の単位を指すものである。ここでのパーツは「手」「足」のように人間から見て意味を持って分節化された構成単位でもよいし、例えば非特許文献7や非特許文献8のように、統計的な基準を用いて分割されるような構成単位であってもよい。ここで例えばパーツベースの公知の手法としては星座モデル(例えば非特許文献8参照)やHOG(Histgrams of Oriented Gradients)特徴量を用いた変形パーツモデル(非特許文献9を参照)などを挙げることができる。
【0037】
【非特許文献7】B. Epshtein and S. Ullman, Feature hierarchies for object classification. Proc. IEEE Int. Conf. Comput. Vis. 1, 220.227, 2005
【非特許文献8】R. Fergus, P. Perona, and A. Zisserman. Object Class Recognition by Unsupervised Scale-Invariant Learning. Proceedings of the IEEE CVPR 2003
【非特許文献9】P. Felzenszwalb, D. McAllester, D. Ramanan, A Discriminatively Trained, Multiscale, Deformable Part Model, Proceedings of the IEEE CVPR 2008
【0038】
ただし本実施形態における物体モデルを具現化するものは、必ずしもパーツをベースとするモデルに限るものではない点に留意が必要である。例えば変形テンプレートマッチングをベースとする手法(例えば非特許文献10を参照)でも、モデルと物体との間の局所的な部位の対応を得ることが可能である。また、例えば多層型のパターン認識手法であるいわゆるコンボリューショナル・ニューラルネットワーク(例えば非特許文献11を参照)のような手法でも同様に可能である。コンボリューショナル・ニューラルネットワーク手法では、物体を構成する中間的なパターンが中間層のニューロンに形成される。出力層のニューロンの活動を逆投影して中間的パターンの概略位置を求めることで、モデルと物体の部位の対応を得ることができる。このように物体モデルとして明示的にパーツをベースとしない手法であっても本実施形態に適用が可能なものがある。
【0039】
【非特許文献10】A. C. Berg, T. L. Berg, J. Malik, Shape Matching and Object Recognition using Low Distortion Correspondences, Proceedings of the 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2005
【非特許文献11】M. Matsugu, K. Mori, M. Ishii and Y. Mitarai, Convolutional spiking neural network model for robust face detection. Proceedings of the Ninth International Conference on Neural Information Processing, 2002
【0040】
上記に挙げた物体モデルの各種手法はそれぞれ文献にて十分に開示されており、当業者であれば実施可能であるので個々についてはここでは詳細に立ち入らない。本実施形態ではパーツベースのモデルである星座モデルを物体モデルとして利用する。
【0041】
星座モデルは物体の基準位置に対して物体を構成する各パーツがどのような外見・相対位置・回転角度・サイズなどのパラメータでもって二次元画像上に存在するかという確率分布を表現するモデルである。星座モデルおよびその他のパーツベースモデルに共通する課題点として、三次元物体の全ての自由な姿勢をカバーすることが困難な点が上げられる。物体は、観察者が物体を見る方向によって見えの形状が変わり、関節物体であれば姿勢によっても変化するが、パーツモデルの場合、対象を狭い範囲の視点や姿勢に限定し、その範囲内のみで分布をパラメトリックに近似して学習することが多い。
【0042】
本実施形態では、姿勢の多様性のある物体に対しても物体を同定して画像補正を施すのが目的である。そのため、本実施形態では一つの物体カテゴリに対して、見る方向や姿勢に応じて複数の物体モデル群を作成して記憶しておくことで姿勢の多様性に対応することとする。具現化の方法例を一つあげる。例えば図5のように学習用の画像データを物体の視点や姿勢の類似した画像であらかじめグループ分けしておき、姿勢別にモデルを生成して記憶する。このようにして生成したモデルのサブカテゴリを姿勢のサブカテゴリと呼ぶ。図5では生成されたパーツモデルのパラメータのうち、各パーツの平均の位置とサイズおよび位置の分散を楕円で図示している。
【0043】
なおここで星座モデルではなく、非特許文献9のような変形パーツモデルを物体モデルとして用いる場合も、同様にして見る方向や姿勢別に複数のモデルを生成して記憶すればよい。
【0044】
また、物体カテゴリの中には多様な形状のバリエーションを持つカテゴリが存在する。例えば「車」のカテゴリにはトラックやスポーツカーなど、形状の異なるバリエーションが多数存在する。このような場合、一つの物体モデルでは検出性能が不十分なことがある。そこで見えの類似した物体でグループ分けしてサブカテゴリを作成し、サブカテゴリごとにモデルを作成して記憶することが望ましい。このようにして生成されるサブカテゴリを形状のサブカテゴリと呼ぶ。
【0045】
なお、被写体モデル記憶部102では検出にかかる計算時間や記憶容量を考慮して、画像補正の対象とするカテゴリとサブカテゴリの物体モデル群を選択して記憶しておく。すなわち、カテゴリのさらに詳細な分類を示すサブカテゴリ毎にモデル情報を記憶する。
【0046】
(被写体の検出)
被写体検出部103では先に説明した被写体モデル(領域モデル及び物体モデル)を用いて被写体の検出・同定を行う。本実施形態では領域のカテゴリを同定するモデルとして、先に説明した領域分割の方法を用いる。また物体のモデルとして、先に説明した星座モデルを用いる。領域分割の方法は領域のカテゴリの同定と各領域の境界が決定されるため、本実施形態の領域モデルとして好適である。星座モデルは関節物体の表現が可能なこと、認識と同時に物体の各パーツの位置が決定されるため、本実施形態の物体モデルとして好適である。
【0047】
被写体の検出手順を図6を参照して説明する。この処理は図2のS101、S102、S106〜S108において実行されることになる。
(1) 全ての領域モデルを被写体モデル記憶部102(HD995等の記憶装置)から読みだす(S1)。なお、ここで領域モデルのカテゴリには人体や犬などの物体の候補領域も含んでいるものとする。
(2) 先に説明した方法で領域分割と統合を行って領域ごとに被写体のカテゴリの同定を行う(S2)。
(3) 同定された領域中に物体の領域が存在すればこれを記憶する(S3)。なおここで、いずれかのカテゴリに属する確率の最大値が所定の閾値よりも低い領域を未知の領域としてこれも物体の候補領域としてもよい。
(4) 物体の候補領域があれば対応する物体モデルを被写体モデル記憶部102から読みだす(S4)。物体モデルは、一つ以上の姿勢のサブカテゴリと一つ以上の形状のサブカテゴリの物体モデル群からなる。
(5) S4で読みだした複数の物体モデルをすべて用いていずれかが物体の候補領域に当てはまるかどうか計算を行う。所定の値以上に当てはまる物体モデルが存在する場合は物体が検出されたとし、その物体モデルのカテゴリと位置姿勢等のパラメータを後段の補正領域決定部104に出力する(S5)。
(6) (2)〜(5)をすべての領域について行う。
【0048】
なお、ここで先に領域モデルを用いて物体の候補領域を限定し、次に対応する物体のモデルを用いて物体を検出しているのは計算量の低減のためである。したがって、物体の検出の手順はこのような方法に必ずしも限られるわけではない。
【0049】
なお、ここでS5のモデルと物体との当てはまりの計算は、例えば星座モデルでは以下のように行う。
(1) 物体の候補領域からSIFT特徴量(非特許文献12を参照)やHarris Affine(非特許文献13を参照)検出器等で特徴点を検出し、全特徴点を当該物体のパーツの候補とする。
(2) パーツの候補をn個選び、全組み合わせについてそれが物体モデルと一致するか否かの尤度を計算して合計する。尤度の計算は各パーツの外見・相対位置・回転角度・サイズの確率分布からベイズ推定をベースに行う。
(3) また同時に上記のパーツの候補の組み合わせが背景である尤度を計算して合計し、両者の尤度の比が閾値以上か否かで当該の物体であるか否かを判断する。
ただしnは当該の物体モデルを構成するパーツの数である。詳細は非特許文献8を参照されたい。
【0050】
【非特許文献12】D. G. Lowe, Object recognition from local scale-invariant features. Proceedings of the International Conference on Computer Vision 2: 1150-1157, 1999
【非特許文献13】K. Mikolajczyk, T. Tuytelaars, C. Schmid, A. Zisserman, J. Matas, F. Schaffalitzky, T. Kadir and L. Van Gool, A comparison of affine region detectors. In IJCV 65(1/2):43-72, 2005
【0051】
なお、S5の物体モデルとしてHOGベースの変形パーツモデル(非特許文献9)を用いる場合は以下のように物体の検出・同定を行えばよい。
(1) 物体の候補領域の中でスライディングウィンドウを行い、物体の全体的な形状を表現する第一のモデルとの当てはめのスコアを計算する。
(2) 閾値以上に高かったウィンドウの中でパーツのモデルを用いてパーツの検出を行う。パーツとして当てはまるスコアが所定の閾値以上に高い領域のすべてをパーツの候補とする。
(3) パーツ候補のスコアとその空間的な組み合わせが、所定の閾値以上に変形パーツモデルに当てはまれば、これを物体として検出する。
ただし上記HOGベースのモデルは星座モデルと異なってモデルがサイズ不変ではないので、複数の解像度画像を用いて検出を行う必要がある。
【0052】
なお、S2の領域の同定の際に、領域を過剰に分割してしまうと、物体が複数の候補領域にまたがっていることがありえる。また物体の一部が未知領域とされている可能性もある。そのため他の実施形態例として、当該物体である確率が所定の値以上に高い候補領域のすべてから上記手順(1)の特徴点の抽出を行ってもよい。また物体の未検出を防ぐために、他の例として、計算量は増えるが候補となる領域を決めずに画像全体を対象として物体モデルの当てはめを行ってもよい。また更に計算量は増えるが、被写体モデル記憶部102に記憶されている全ての物体モデルを使って物体の検出を行ってもよい。
【0053】
なお、先に領域モデルについて説明した際に領域の隣接関係等をコンテクストとして利用する実施形態について述べたが、物体の検出の際にも同様の方法で検出精度を高めることが可能である。例えば、食器棚の近くに存在する画面の比較的上部に位置する箱状の電化製品類の物体は電子レンジである可能性が高いが、ソファと共に画像の中ほどに位置する箱状の電化製品はテレビである可能性が高い。このような物体間の共起関係や配置関係のコンテクストを利用する方法としては、例えば非特許文献14のような手法を用いればよい。
【0054】
【非特許文献14】S. K. Divvala, D. Hoiem, J. H. Hays, A. A. Efros, M. Hebert, An Empirical Study of Context in Object Detection, Proc. of the IEEE Conference on Computer Vision and Pattern Recognition, 2009
【0055】
(補正領域の決定)
補正領域決定部104では同定された被写体の領域のうち、画像補正を行う対象を決定する。この処理は図2のS110において実行される。補正領域の決定は後に説明するような方法で自動的に行ってもよいし、補正領域決定部にユーザーが領域を決定するための指示装置(指示入力装置996)を備えることでユーザーによって決定させてもよい。指示装置は、例えば、画像表示装置(表示装置997)を兼ねたタッチパネルで実現すると操作が容易である。この場合、ユーザーが撮像した画像を確認し、画像補正を行いたい領域をタッチして指示を行えばよい。
【0056】
また例えば領域を決定する指示装置はあらかじめ特定の物体のカテゴリやサブカテゴリを指示する装置であってもよい。例えば被写体モデル記憶部102に物体モデルのサブカテゴリとしてユーザーが自分の家族やペットを登録しておき、撮像した画像の中から登録したサブカテゴリの被写体を優先して高画質化するような形態が可能である。
【0057】
また別の方法としては、例えば被写体の領域の画質を評価して、画質が悪ければ補正領域とするような方法が考えられる。入力画像中のある特定の領域の画質の良否を判定する方法としては、例えば一つの例として以下のような方法を用いる。
(1) 良好な画質の画像を集めた学習用の画像について二次元フーリエ変換を施し、各被写体の領域の空間周波数のパワーを求める。これを特徴ベクトルとする。全学習画像から各領域について特徴ベクトルを抽出し、各領域の標準的な特徴ベクトルの分布を記憶しておく。
(2) 入力画像に二次元フーリエ変換を施し、各領域内の空間周波数のパワーを求めて特徴ベクトルとする。この特徴ベクトルが上記の標準的な分布から外れていれば低画質の画像と判定する。
なおここで、パワー分布を求める際に、エッジおよびエッジ周辺の領域に限定してフーリエ変換を行うことで、被写体のブレの有無を高精度に判定することも可能である。
【0058】
以上のような処理を行って補正領域決定部104で画像補正を行う対象の領域を決定する。
【0059】
(補正用データセット)
補正用データセット記憶部105には、領域の各カテゴリおよびサブカテゴリに応じたデータセットが用意されている。補正用データセット選択部106では、補正領域決定部104で決定した対象領域に応じた補正用データを、補正用データセット記憶部105より読みだす。
【0060】
補正用データセットの中身や構成方法は、画像補正部107で行う画像補正の内容によって異なる。本実施形態では画像補正部107で行う画像補正の例として低解像度画像を高解像化する実施形態について説明を行う。
【0061】
低解像度画像を高解像化するためのデータセットの構成の仕方は複数提案されている。例えば非特許文献1では低解像度画像と高解像度画像のペアについてウェーブレット展開を行って特徴ベクトルのペアを作成し、これを変換辞書として低解像度画像を高解像度画像に変換している。
【0062】
また例えば非特許文献15では低解像度画像を固有空間に射影して中間解像度画像を生成し、次に変換辞書を学習したマルコフ確率場を用いて中間解像度画像を高解像度画像に変換する。
【0063】
【非特許文献15】C.Liu, H. Shum, and C. Zhang, A two-step approach to hallucinating faces: Global parametric model and local nonparametric model, in Proceedings of the IEEE Computer Society Conference on Comp ter Vision and Pattern Recognition, 2001.
【0064】
本実施形態に係る構成の特徴は、物体モデルを用いて物体の構成部位を同定し、構造を保存した画像補正を行う点にある。従って局所領域をベースに補正を行う方法であれば全て利用することができる。上記の二手法はいずれも本実施形態の画像補正の方法として利用が可能である。また、非特許文献16のように低画質画像特徴と高画質画像特徴との変換をビリーフ・プロパゲーションによって実現する手法も利用が可能である。
【0065】
【非特許文献16】W. T. Freeman, E. C. Pasztor, O. T. Carmichael, Learning Low-Level Vision. International Journal of Computer Vision 40(1), 25-47, 2000
【0066】
本実施形態では、画像特徴量として多重解像度画像を用いる。本実施形態では高画質の画像と低画質の画像からそれぞれ多重解像度画像の特徴ベクトルを抽出し、特徴ベクトルの対応関係を記憶して補正用データセットとする。多重解像度画像を用いることで、多少のノイズや変形に対してもロバストに対応関係を求められる効果がある。
【0067】
本実施形態の補正用データセットは以下の三つの異なる種類を含む。
(A)背景の領域の補正用データセット
(B)物体のパーツ領域の補正用データセット
(C)物体の非パーツ領域の補正用データセット
上記三つのデータセットの種類によって後段の画像補正部107では画像補正の方法を変えるものとする。ここで補正用のデータセットを(A)〜(C)のように分けたのは、それぞれの領域の性質が異なり、画像補正の際に参考にできる情報が異なるためである。
【0068】
星座モデルのようなパーツモデルでは物体の各パーツについて位置と姿勢を同定することができる。従って各パーツの局所領域の位置ごとに特化した補正用データセットを作成することが可能である。例えば眼をパーツとすると瞳孔や涙腺といった局所領域の位置ごとに補正用データを作成して画像補正を行うので、細部の構造まで再現するような高画質な画像補正が可能である。また、姿勢が同定されているので、各パーツの形状を正規化して揃えることが可能である。そのためある程度の見えの角度や姿勢に影響されずに画像補正を行うことが可能である。
【0069】
これに対して、パーツ以外の物体の領域は構造の不明な領域である。ただし同定されている周辺のパーツとの相対位置により、ある程度の精度でモデル上の対応する領域を推定することができる。この相対位置情報を用いて補正用データセットを作成すれば、ゆるやかに位置に依存した画像補正を行うことが可能である。
【0070】
最後に背景の領域については形状が不定なため、モデルと被写体の間に対応する位置は求められない。そのため位置に依存しない補正用データセットを作成して画像補正を行う。
【0071】
このような領域の性質の違いに応じて(A)〜(C)のように分けてそれぞれ異なる方法で補正を行い、後に結果を合成することで全体として最適な画像補正を行うことができる。以下では(A)〜(C)の補正用データセットの構成方法について詳細を説明する。
【0072】
(A)背景の領域の補正用データセットの作成
ここでは背景領域の補正用データセットの作成方法について述べる。背景領域のデータセットは主に以下の二つの要素からなる。一つは高解像の画像パッチIHと低解像の画像パッチILの変換辞書である。上記変換辞書は画像パッチの出現位置vとは無関係に学習される。もう一つは、任意の二つの高解像の画像パッチIHiとIHjが隣接しているかどうかの事前確率である。以下で図7を用いて手順を説明する。
(1) あらかじめ背景の領域が同定された、カテゴリcの領域を含む高解像の学習用画像のセットを用意する(S201)。
(2) 高解像の学習用画像に対してn回のダウンサンプリングとn回のサブサンプリングを行い、学習用画像と同じサイズの低解像度画像を作成する(S202)。
(3) 高解像度画像と低解像度画像のそれぞれについて、2進の離散ウェーブレット変換をj回行って図8のように3j+1枚のウェーブレット多重解像度画像{HH1,HL1,LH1,HH2,HL2,...,LLj}を得る(S203)。
(4) 図9のように画像をwq×hqのサイズの画像パッチに分割する。そして、各位置v上の階層の異なる画像パッチq0(v),q1(v),…qn(v)の画素値を高解像度画像と低解像度画像で別々にまとめて並べて特徴ベクトルfH(v)とfL(v)を作成する(S204)。
(5) 画像特徴ベクトルのペアを記憶する。パッチの位置vに無関係に
・画像特徴ベクトルのペア{(fHi,fLi)|i=1,…,n}。
・対応する高解像度画像と低解像度画像のパッチQH={qH1,qH2,…,qHn},QL={qL1,qL2,…,qLn}。
をすべてまとめて記憶して補正用の変換辞書とする(S205)。
(6) 高解像度画像の画像パッチQH={qH1,qH2,…,qHn}が互いに隣接して出現する事前確率を算出して記憶する(S206)。
(7) すべての学習用画像について上記(1)〜(6)を行い、結果をまとめて領域カテゴリcの補正用データとする。
【0073】
ここで上記S202におけるダウンサンプリングとサブサンプリングは例えばそれぞれ以下のように行えばよい。
【数4】

ここでは所定のn回のダウンサンプリングとサブサンプリングを行うとしたが、サンプリングの回数を変えた低解像画像を複数用意してそれぞれについて変換辞書を作成してもよい。
【0074】
またここで、S204における画像特徴ベクトルf(v)は以下のように算出する。ウェーブレット多重解像度画像の画像iの位置vの画像パッチqi(v)のwq×hq個の画素値を1列に並べ、これを1〜3j+1までの全階層の画像について連結して並べて画像特徴ベクトルとする。これにより画像特徴ベクトルとして長さd=(3j+1)×wq×hqの次元のベクトル
【数5】

とする。以上は白黒画像の場合であり、カラー画像であれば例えばL*,a*,b*の三次元の値それぞれをベクトルの値とし、画像特徴ベクトルf(v)を長さd=3×(3j+1)×wq×hqの特徴ベクトルとする。画像パッチのサイズを大きくとるとこのベクトルの次元は非常に高次元となって扱いづらくなるため、計算量削減等のためにあらかじめ主成分分析を行って次元削減を行っておいてもよい。
【0075】
またここでS205において記憶する画像パッチのセットQHに関して、領域の境界を含む画像パッチに関しては図と地の領域を示す2値の画像パッチのマスク画像のセットQmHも併せて記憶しておく。このQmHは、後に説明するように画像補正の結果を統合するときに使用する。なお図と地の判定は、学習用画像から物体を同定した際に、グラフカット等の公知の方法で物体領域と背景領域とを画素単位で判定してラベル付けしておけばよい(例えば非特許文献17の方法を参照)。
【0076】
【非特許文献17】C. Rother, V. Kolmogorov, and A. Blake, GrabCut -Interactive Foreground Extraction using Iterated Graph Cuts, in ACM Transactions on Graphics (SIGGRAPH), August 2004
【0077】
またここでS206においてある画像パッチqHiとある別の画像パッチqHjが4近傍のいずれかに隣接して存在するかどうかの事前確率
【数6】

は、以下のようにノンパラメトリックに学習する。なおここでNは4近傍の関係を表す集合で、uはNの元である。まず学習画像中の全ての領域カテゴリcから、隣接する画像パッチqH(v’)およびqH(v’+u)の組をランダムにn個抽出する。画像パッチに対応するd次元特徴ベクトルfH(v’)とfH(v’+u)を連結して、D次元ベクトル
【数7】

を得る(D=2d)。このようにしてn個のベクトルのセットFu={fu1,…,fun}を作成して記憶する。上記セットは4近傍それぞれについて個別に作成する。ここで、任意の2つの画像パッチqHiとqHjが隣接関係uの位置関係で観測される事前確率は、カーネル密度推定によって以下のように推定できる。
【数8】

ただし、fijはqHiとqHjの特徴ベクトルであるfHiとfHjを連結したベクトル
【数9】

である。また、k(x1,x2)はガウシアンカーネルであり、2乗ノルムを用いて以下のように定義する。
【数10】

ここで、wは特徴ベクトルの各次元の距離を調整する重みベクトルである。hはカーネルのスケールパラメータでデータの分布に基づいて適当な値を与える。
【0078】
上記方法では特徴ベクトルfHが高次元のときに、確率密度の推定が困難になる。その場合は、例えばクラスタリングを行って画像パッチのセットQH={qH1,…,qHn}をk個のクラスタΞ={ξ1,…,ξk}に分類することで離散化し、クラスタごとに画像パッチの隣接関係の事前確率を学習してもよい。なお、クラスタ分類の方法は公知の方法であるk−平均法などを用いればよい。ξ=Φ(q)をパッチqをクラスタξ∈Ξに対応づける関数とすると、2つの画像パッチqHiとqHjが隣接関係uの位置で観測される事前確率は、
【数11】

として近似的に定義すればよい。
【0079】
(B)物体のパーツ領域の補正用データセットの作成
ここでは物体モデルのパーツ領域の補正用データセットの作成方法を説明する。特に、ある特定の物体モデルoのあるパーツpの領域についての補正用のデータセットの作成の仕方について述べる。データセットは背景領域のデータセットと同様、二つの要素からなる。一つは位置vについての高解像の画像パッチIH(v)と低解像の画像パッチIL(v)の変換辞書である。もう一つは、任意の二つの高解像の画像パッチIHiとIHjが隣接しているかどうかの事前確率である。パーツ領域の補正用データセットが背景領域の補正用データセットと異なる点は、パーツp上の座標位置vによって異なる変換辞書を学習することである。以下図10を用いて手順を説明する
(1) あらかじめ物体と物体を構成するパーツの領域が同定されている高解像の学習用画像のセットを用意する。学習用画像は物体oおよび物体oのパーツpの領域を含むものとする(S401)。
(2) 学習用画像からパーツpを抽出し、領域の傾き方位と縦横比とサイズを正規化してパーツ画像pH0とする。(ステップ402)。
(3) パーツ画像pH0に対して図11のように所定の範囲のランダムな拡大縮小・回転等のアフィン変形を行い、m枚の変形画像のセットPH={pH1,pH2,…,pHm}を作成する(S403)。
(4) PH={pH1,pH2,…,pHm}に対してn回のダウンサンプリングとn回のサブサンプリングを行い、PHと同じサイズの低解像度画像のセットPL={pL1,pL2,…,pLm}を作成する(S404)。
(5) 高解像の変形画像のセットと低解像の変形画像のセットのそれぞれについて、2進の離散ウェーブレット変換をj回行って各画像ごとに3j+1枚のウェーブレット多重解像度画像{HH1,HL1,LH1,HH2,HL2,...,LLj}を得る(S405)。
(6) 図11のように正規化されたパーツの領域をwq×hqのサイズの画像パッチに分割する。そして、各ウェーブレット画像の位置v上の階層の異なる画像パッチq0(v),q1(v),…,qn(v)の画素値を高解像度画像と低解像度画像で別々にまとめて特徴ベクトルfH(v)とfL(v)を作成する(S406)。
(7) 画像パッチの位置vごとに、画像特徴ベクトルのペアのセットを記憶する。
・高解像画像の特徴ベクトルのセット{(fHi(v),fLi(v))|i=1,…,n}。
・対応する高解像度画像と低解像度画像のパッチQH(v)={qH1(v),qH2(v),…,qHn(v)},QL(v)={qL1(v),qL2(v),…,qLn(v)}。
をまとめて記憶してパーツpの位置vにおける画像パッチの補正用の変換辞書とする(S407)。
(8) 高解像度画像の画像パッチQH={qH1,qH2,…,qHn}が互いに隣接して出現する事前確率を算出して記憶する(S408)。
(9) パーツpの領域をΩpとして、すべての位置v∈Ωp、およびすべての学習用画像について上記(1)〜(8)を行い、パーツpの位置vごとの補正用データを作成する(S409)。
【0080】
ここでS403のアフィン変形は、物体の見えの変化に対しても自然な補正が行えるように複数のデータを用意する目的がある。また、学習用画像が少ない対象について学習データを増やす効果もある。ただしアフィン変形のパラーメーターの範囲が、過剰に広いと無駄なデータが増えて補正の精度を悪化させるので、適切な値に設定する必要がある。また上記目的に適うのであれば変形に射影変換等を用いてもよい。なお、このような変形変換によりデータセットを増やす方法は、物体のパーツ領域の補正用のデータセット作成に限るものではなく、背景の領域の補正用のデータセットの作成に利用してもよい。
【0081】
またS407の画像パッチのセットQH(v)において、領域の境界を含む画像パッチに関しては画素の図と地を示す画像パッチのマスク画像のセットQmH(v)も併せて記憶しておき、後に説明するように画像補正結果の画像を統合するときに使用する。
【0082】
その他の詳細の手順は、先述の背景の領域の補正用データセットの作成方法に順ずる。
【0083】
(C)物体の非パーツ領域の補正用データセットの作成
ここでは物体の、パーツ領域以外の領域の補正用データセットの作成方法を説明する。パーツの領域は目鼻や手など、共通の形状を持ち、被写体間で位置の対応が比較的明確である。これに対してパーツ間の領域は頬や胴体のように構造が乏しいか、形状が不定な領域であり、被写体間で位置の対応をつけにくい。本実施形態はパーツ間の相対位置関係を元に非パーツ領域についても位置の対応を求め、位置ベースで補正用データセットを学習する。
【0084】
補正用データセットは、パーツ領域のデータセットと同様に、高解像の画像パッチIH(v)と低解像の画像パッチIL(v)の変換辞書と、画像パッチIHiとIHjの隣接関係の事前確率からなる。補正用データは物体o上の座標の位置vによって異なる変換辞書を記憶する。以下図12を用いて手順を説明する
(1) あらかじめ物体oのモデル、および、物体oとパーツの位置が同定されている高解像の学習用画像のセットを用意する。学習用画像は物体oを含む画像とする。(S501)。
(2) 物体oのモデルの非パーツ領域の全ての位置vについて、対応する各学習用画像上の位置v’とv’を中心とする領域のrH(v’)を求める。ここで学習用画像上の位置v’は、後述する方法で近傍のパーツとの相対位置を利用して求める(S502)。
(3) rH(v’)の領域に対して先述のS403の方法と同様に所定の範囲のランダムな拡大縮小・回転等のアフィン変形を行って、m枚の変形画像のセットRH={rH1,rH2,…,rHm}を作成する(S503)。
(4) 先述のS404と同様の手順でRH={rH1,rH2,…,rHm}に対する低解像度画像のセットRL={rL1,rL2,…,rLm}を作成する(S504)。
(5) S405の方法と同様の手順でウェーブレット多重解像度画像を得る(S505)。
(6) S406の方法と同様の手順で高解像度画像と低解像度画像で別々にまとめて特徴ベクトルfH(v)とfL(v)を作成する。ただし領域r(v’)全体ではなく、v’を中心とする大きさwq×hqのパッチq(v’)のみを用いて特徴ベクトルのペアのfH(v)とfL(v)を作成する(S506)。
(7) 物体oのモデル上の位置vごとに、画像特徴ベクトルのペアのセットを記憶する。
・高解像画像の特徴ベクトルのセット{(fHi(v),fLi(v))|i=1,…,n}。
・対応する高解像度画像と低解像度画像のパッチQH(v’)={qH1(v’),qH2(v’),…,qHn(v’)},QL(v’)={qL1(v’),qL2(v’),…,qLn(v’)}。
をまとめて記憶して物体oのモデル上の位置vにおける画像パッチの補正用の変換辞書とする(S507)。
(8) S408の方法と同様の手順で高解像度画像の画像パッチQH={qH1,qH2,…,qHn}が互いに隣接して出現する事前確率を算出して記憶する(S508)。
(9) 非パーツ領域をΩnとして、すべての位置v∈Ωn、およびすべての学習用画像について上記(1)〜(8)を行い、非パーツ領域の位置vごとの補正用データを作成する(S509)。
【0085】
ここで具体的に非パーツ領域Ωnとしては、物体oの全領域をΩoとし、各パーツpの領域をΩpとしたとき、Ωoより全パーツの領域∪Ωpを除いた領域Ωn=Ωo−∪Ωpを非パーツ領域とする。また別の実装例としては、物体の全領域を非パーツ領域Ωnとしてもよい(Ωn=Ωo)。後者の場合はパーツ領域と非パーツ領域が重複する領域Ωn∩Ωpが生じるが、後段の画像補正の際には別々に補正を行い、補正結果統合の際にΩnの補正結果の上にΩpの補正結果を上書きするようにして統合すればよい。
【0086】
またここで、非パーツ領域上の位置v∈Ωnとしては、非パーツ領域Ωn上にグリッド状の稠密な点群を設定して用いればよい。グリッド状の位置vの例を図13に図示する。
【0087】
またここで、S502において、モデル上の位置vから学習用画像上で対応する位置v’を求める方法としては、例えば局所線形埋め込み法(非特許文献18参照)を用いればよい。局所線形埋め込み法によれば任意のベクトルvをその周囲の近傍の複数の点ηjの線形結合であらわすとき、二乗誤差
【数12】

を最少にする総和が1の重みベクトルwは以下のようにして求めることができる。
【数13】

モデル上の位置をv、モデル上のk近傍のパーツの位置をηk、k近傍のパーツの位置をηk’とすれば、このwを用いて、
【数14】

として図13のように学習用画像上の対応する位置v’を求めることができる。またモデル上のvの適当な近傍点v+Δxを学習用画像上に写してv’+Δx’を得ることにより、適当な係数をかけてv’周辺の領域r(v’)の大きさを決定することができる。図13中では領域r(v’)は真円で表現されているが、複数の点、v+Δxi,v+Δyiを用いて分散および共分散を求めて領域r(v’)を傾き方位を持った楕円領域として定義してもよい。
【0088】
【非特許文献18】S. Roweis & L. Saul, Nonlinear dimensionality reduction by locally linear embedding. Science, v.290 no.5500 , Dec.22, 2000. pp.2323-2326.
【0089】
また実際に物体の非パーツ領域について画像補正を行う際には、S502と同様の方法で入力画像と物体モデルの間の位置の対応を一つ一つ求めて補正を行う必要がある点に注意が必要である。具体的にはまず入力画像のパーツ領域と非パーツ領域を同定し、S502で用いた方法と同じ方法で入力画像の非パーツ領域の位置v’とそれに対応する物体モデル上の最も近い位置vを決定する。そして位置vに関連づけられた画像パッチのペアのデータセットを用いて位置v’について画像補正を行う。これを全ての位置v’について行う。
【0090】
以上のように(A)背景の領域、(B)物体のパーツ領域、(C)物体の非パーツ領域について、補正用データセットの作成を行う方法を説明した。特に本実施形態ではパーツベースの物体モデルを用いて物体の補正用データセットを作成する方法について述べた。
【0091】
なお、本実施形態では上記のように補正用データセットを三種類に分ける場合を説明したが、これに限られるものではない。他に考えられる形態として、例えば二種類に分けてもよい。具体的には例えば(B)のパーツ領域と(C)の非パーツ領域についてこれを区別せずに、物体の領域Ωoについてはすべて(C)の方法で補正用データセットを作成する形態などが考えられる。またさらに他の形態として、(C)の非パーツ領域については(A)の背景の領域と同様の方法で位置に依存しない補正用データセットを構成する形態なども考えられる。
【0092】
(画像の補正)
画像補正部107は、画像の補正を行う機能要素である。画像補正部107が行う画像補正には、例えば、以下のものが含まれる。
・低解像度画像からの高解像度画像の合成。
・ブレの除去、ボケの鮮鋭化、色彩の補正。
・低ダイナミックレンジの画像から高ダイナミックレンジの画像の合成。
・白黒画像からのカラー画像の合成。
・フラッシュを使用して撮影した画像から環境光下で撮像した画像の合成。
・美顔処理。
・人物の身体形状の変形。
・人物の顔から別の人物の顔への変換。
【0093】
本実施形態では、画像補正部107ではマルコフネットワークの一種である条件付確率場を用いる。本実施形態の条件付確率場の構造を図14に示す。被写体の領域の各位置vの画像パッチを確率場のノードとして以下の手順で画像補正を行う。なお、この処理は図2のS105、S112で実行される。
(1) 入力画像の被写体の領域、背景の領域、物体のパーツの領域、物体の非パーツの領域について、それぞれ高解像化を行う倍率に拡大する。パーツの領域であれば同時に縦横比率や傾き等の正規化処理を行う。以下は領域の種類ごとに行う。
(2) 画像をウェーブレット変換して多重解像度画像を作成し、一つの大きさがwq×hqの画像パッチに分割してパッチごとに入力画像の特徴ベクトル:fIN(v)を作成する。
(3) 各領域の位置vに関連づけられた全ての高解像画像の画像パッチ{qHj(v)|j=1,…,n}に対して、外部エネルギーを求める。
(4) 各領域の位置vに関連づけられた全ての高解像画像の画像パッチ{qHj(v)|j=1,…,n}に対して、内部エネルギーを求める。
(5) 上記二つのエネルギーの和と温度係数Tを用いて位置vのノードの状態が{qHj(v)|j=1,…,n}のいずれをとるかの生起確率を求める。この生起確率に従ってノードの状態を決定する。これを各領域の全ての位置v∈Ωについて行う。
(6) 温度係数Tを減少させてTが所定の値になるまで(3)〜(5)を繰り返す。
【0094】
ここで外部エネルギーと内部エネルギーの算出の詳細について詳細を述べる。
外部エネルギーはノードの状態と入力画像によって決まる。ノードvに対して記憶されている画像パッチのペアの候補を{(qHi(v),qLi(v))|i=1,…,n}、対応する特徴ベクトルのペアを{(fHi(v),fLi(v))|i=1,…,n}とする。ノードvの状態が画像パッチqHj(v)であるときのノードvの外部エネルギーは以下のように定義する。
【数15】

ただし、λ1はエネルギーの調整パラメータ、wは重み付ベクトル、fIN(v)は入力画像の位置v上の画像特徴量、fLi(v)はノードvの状態qHj(v)に対応する低画質画像パッチqLi(v)の特徴ベクトルである。
【0095】
なおここで画像補正用のデータセットとして、位置vのノードに記憶されたデータセットのみならず、近傍のノードに記憶されている補正用データセットを用いることもできる。これにより多少の位置ずれにもロバストに画像補正が可能となる。例えば上式を以下のように拡張する。
【数16】

ここで、vadjは(qHj(v),qLj(v))を補正用データセットのペアとして記憶する最近傍のノードである。d2(v,vadj)はノードvとノードvadjの間の距離であり、βは距離の調整パラメータである。
【0096】
内部エネルギーはノードvの状態とノードvに隣接するノードの状態によって決まる。これは先述の方法で事前に学習しておいた画像パッチの隣接関係の事前確率を用いて以下のように定義する。
【数17】

ただしλ2はエネルギーの調整パラメータ、Nはノードの4近傍の集合、qH(v+u)は4近傍の各隣接ノードv+uの状態である。
【0097】
ネットワークの総エネルギーは、Ωを画像の全領域として
【数18】

であり、これを最小化する画像が求めたい補正結果である。下式の確率に基づいて各ノードvの状態の更新を行うことで、総エネルギーを減少させる。
【数19】

ここでZは規格化定数、Tは温度であり、温度を徐々に下げていくことで最小化を行う。
●前処理としてのブレ・ボケの除去
本実施形態の画像補正部に関する他の実施形態としては、画像補正を行う前に前処理によってブレやボケを検出して除去するブレ・ボケ除去部(不図示)を備えるような形態も有効である。ここで対象となるブレやボケは被写体の動きや撮像装置自体の動きによるブレ、およびピント合わせの失敗による焦点ボケである。
【0098】
多少のブレやボケは画像補正部107で行われる画像補正によって補正されるが、例えば被写体の物体の大きさに匹敵する程の大きな動きのブレについては補正しきれない可能性が高い。しかし動きのブレは点広がり関数さえ推定できれば、大きなブレであってもウィナーフィルタ等のデコンボリューションをベースとする信号処理手法である程度の除去が可能である。従って画像補正部107の画像補正の前に前処理としてブレ・ボケの補正を行うことは有効である。ブレ・ボケ除去は被写体検出の前に行ってもよいし、被写体検出によって領域を同定した後に領域ベースで行ってもよい。
【0099】
ボケ・ブレの点広がり関数は一般に不明のため、例えば非特許文献19のような公知の方法で点広がり関数を同定して除去を行えばよい。なお、ブレの除去の結果によってはアーチファクトとして波紋状のノイズ(リンギング)が出ることが知られている。そのため後段の画像補正部107で画像の補正を行う前に、適当なガウス関数を畳込むブラー処理を行ってもよい。
【0100】
【非特許文献19】R Fergus, B. Singh, A. Hertzmann, S. T. Roweis and W. T. Freeman, Removing Camera Shake from a Single Photograph. ACM SIGGRAPH 2006, Vol.25, No.3, pp.787-794, August 2006
【0101】
●画像補正の他のバリエーション
本実施形態では画像補正部107の動作として低解像画像から高解像画像への変換を例に説明した。しかし本実施形態に係る構成の効果は画像の高解像化に留まらず、補正用データセットの構成を変えれば他の様々な画像補正を実現することが可能である。そのため以下にいくつかの実現形態について例を挙げて説明を行う。
【0102】
例えばある実現形態として、色彩が鮮やかで階調の豊かな高ダイナミックレンジの風景画像のデータセットを高画質画像とする。このような画像はあらかじめ専門のカメラマンが専用の機材を用いて撮影を行っておくこととする。この高画質画像について、階調のビット量を低減させるなどして劣化させた画像を低画質画像とする。次に山や森などといった領域のカテゴリを同定し、領域ごとに高画質画像と低画質画像の特徴ベクトルの対応関係を記憶して補正用のデータセットとする。この補正用データセットを用いれば、被写体の領域ごとに精度の高い色彩の補正および高ダイナミックレンジ化を実現することができる。
【0103】
この実現形態によれば、廉価な低ダイナミックレンジのカメラで写した風景画像を入力すると、プロカメラマンが高価な機材で撮影したような鮮やかな色彩の高ダイナミックレンジの画像に変換される。なお、劣化画像のパターンは、例えばJPEG形式の画像圧縮など、想定される様々なパターンを作成して用いてもよい。
【0104】
また例えば別の実現形態として、環境光下で撮像した人物の画像のデータセットを高画質画像とし、フラッシュを使用して撮影した同一被写体の画像を低画質画像とする。このような写真は撮影時にフラッシュを使いわけて二枚の画像を撮像することで容易に得ることができる。これを補正用データとして用いれば、フラッシュ撮影による硬調な肌の質感やいわゆる赤目の領域を、環境光下で撮影したようなより好ましい画像に変換する画像補正の機能を実現することができる。
【0105】
従来手法としてフラッシュによる白トビを低減させるため、顔のハイライト領域を周囲の画素で充填するような方法などがある。この方法では広い領域で強い白トビが起こると元のテクスチャの復元が不可能である。これに対して本実施形態は位置をベースにして補正を行うため、このような場合にも画像補正が可能である。また補正はパーツごと、且つパーツを構成する局所領域ごとに行うため、補正対象を正面顔に限らない。
【0106】
また例えば別の実現形態として、複数のパターンのブレ・ボケ画像を用いて作成した低画質画像と高画質画像のペアより補正用データセットを作る。カメラのミラーショックによる手ブレなど、起こりやすいブレ・ボケの補正用データセットを構成しておけば、これらを効果的に除去する画像補正の機能が実現される。
【0107】
また例えば別の実現形態として、カラー画像を高画質画像、カラー画像を白黒に変換した画像を低画質画像として記憶することにより、白黒画像からカラー画像を合成する画像補正が実現可能である。一般に白黒の画像からカラーを推定することは不良設定の問題である。しかし、背景や物体の領域を同定することで、対応関係の解空間をある程度制限することもできる。そのため、例えば人間の肌と同定された領域は肌色の画像パッチに正しく変換することが可能である。
【0108】
ただし、上記のカラー画像化の画像補正の形態には以下のような多少の追加的な工夫が必要である。本実施形態で用いたマルコフネットワークでは近傍の連続性を内部ポテンシャルとして考慮しているので、隣接画像パッチに関しては色味の連続性が保たれる。ただし離れた領域では色合いが徐々に変化して斑状になることがあり得る。このような好ましくない現象を防ぐためには、一つの解決方法としては例えばビリーフ・プロパゲーションの手法を併せて用いることが考えられる。例えば、領域の色合いをCIE L*a*b*色空間のa*およびb*の平均および分散で表す。これをビリーフ・プロパゲーションのメッセージとして隣接のノードに受け渡す。同時にラプラシアンフィルタ等でエッジ強度を計算しておき、所定の値よりも強いエッジ強度を持つ画素にはメッセージを伝えないようにする。これによって領域ごとの色合いを統一させることが可能である。ビリーフ・プロパゲーション手法に関する詳細は非特許文献20等を参照されたい。
【0109】
【非特許文献20】Erik B. Sudderth and William T. Freeman, Signal and Image Processing with Belief Propagation, Signal Processing Magazine, IEEE, Volume 25, Issue 2, March 2008, pp.114-141
【0110】
(画像の統合)
本実施形態では領域ごとに画像補正を施した。この補正結果を、画像補正部107が備える画像統合部65で統合して最終的な出力画像とする。この処理は、図2のS113で実行される。まず、各パーツ領域はサイズおよび比率が正規化されているため、これを逆変換して入力画像の元の比率とサイズに合わせる。次に逆変換したパーツ領域の画像を、非パーツ領域の画像の上に重ねて合成して物体の領域とする。
【0111】
物体の領域と背景の領域の境界、あるいは物体の領域と物体の領域の境界の合成にはマスク画像を用いる。先に説明したように、あらかじめ物体の領域の高解像の画像パッチqH(v)には、領域の境界を表すマスク画像qmH(v)が記憶されている。マスクqmH(v)を所定のガウシアン関数でブラーさせてアルファチャンネルとし、複数の領域を重ねてブレンディングして自然な合成を行う。補正の結果次第では、被写体の領域間に僅かな空隙の画素が生じることがある。物体と背景の領域間であれば背景の領域を、物体と物体間であれば互いの領域を用いて充填して空隙ができないようにする。欠損領域の充填の方法は広く研究され、公知の手法が多種提案されているのでこれを用いればよい(例えば非特許文献21を参照)。以上を画像補正の最終結果画像として出力する。
【0112】
【非特許文献21】M. Bertalmio, G. Sapiro, V. Caselles and C. Ballester. Image Inpainting, Proceedings of SIGGRAPH 2000, New Orleans, USA, July 2000.
【0113】
上記のように、本実施形態の構成よれば、さまざまなカテゴリの被写体について被写体モデルによってこれを検出し、被写体を構成する領域を同定し、領域ごとに適切な補正用データセットを選んで位置ベースの画像補正を施す。これにより、自然画像中のさまざまな物体について元の構造を失うことなく高画質化やブレ・ボケの復元等の画像補正を施すことが可能となる。
【0114】
<<実施形態2>>
本実施形態では補正用データセットを全てあらかじめ用意するのではなく、入力画像に類似する画像を用いて、画像補正用のデータセットを作成する形態について述べる。本実施形態には実施形態1にないいくつかの利点がある。
【0115】
例えば実施形態1では、コンテクストによる被写体同定の方法について電子レンジとテレビを例として述べた。実施形態1では、「電子レンジ」と「テレビ」という2つのカテゴリをあらかじめ用意しておかないとコンテクストの学習利用はできない。画像補正をデジタルカメラのような製品に応用することを考えると、被写体となるカテゴリをあらかじめ全て網羅して学習することは非常に困難である。特に人工物や製品を被写体とする場合、将来的に新規な外観を持った被写体が登場することも考えられる。
【0116】
本実施形態によれば、このような場合にも以下に述べる方法で効果的にコンテクストを利用することができる。例えば台所の電子レンジを高画質に画像補正することを考える。まず、「電子レンジ」や「テレビ」というカテゴリではなく、「家庭用電化製品」などのレベルであらかじめ物体のモデルを学習しておく。次に入力画像に類似する画像(台所のシーンの画像)をインターネット上の画像やデータベースから多数集める。集められた画像から、入力画像の「家庭用電化製品」と似た被写体を検出し、実施形態1で述べたのと同様の方法で補正用データセットの画像パッチを構成する。この結果、補正用データセットには電子レンジの画像パッチが多く含まれることになり、適切な画像補正が可能となる。
【0117】
このように類似画像を用いれば、似て非なる被写体について個々にあらかじめ細かくカテゴリを学習しておかなくても、カテゴリレベル以上に被写体に特化した補正用データセットをオンラインで構成して、画像補正を行うことが可能となる。また、新規の物体についても同様にカテゴリを新たに学習することなく画像補正を行うことが可能となる。
【0118】
本実施形態のブロック図を図15に示す。各機能モジュールは部分的に実施形態1と同様のモジュールを含むため、ここでは実施形態1との差異について特に説明する。
【0119】
本実施形態に係る画像処理装置の処理手順においては、まず実施形態1と同様に、入力画像において画像補正を施す被写体および領域を決定する。次に補正用画像選択部208により補正用データセットを作成するための参照画像を選択する。ここで選択される画像群はカメラ内の撮影画像と、ネットワーク上に存在する画像群の二種があり得る。補正用データセット作成部209は選択された画像からオンラインで補正用データセットを作成する。画像補正部207では補正用データセットを用いて実施形態1と同様に画像補正部を行う。
【0120】
ネットワーク上の画像データを用いて補正用データセットを作成する手順について図16を用いて述べる。(1)入力画像から被写体を検出する(S601)。(2)構図の類似性などを利用してネットワーク上の画像データベースから入力画像の類似画像を複数取得する(S602)。(3)類似画像について被写体検出部203で被写体の検出を行う(S603)。(4)入力画像の被写体と同一カテゴリの被写体のうち、見えの同一性の高い被写体の画像のみを選択して補正用画像とする(S604)。(5)第一実施形態で説明した方法と同様の方法を用いて補正用画像から補正用データセットを作成する(S605)。
【0121】
なおここでS602において画像の構図などを利用して類似画像を取得する手法としては、例えば被写体の特徴ベクトルの分布、被写体の配置関係等を用いる公知の方法を用いればよい(例えば非特許文献6や非特許文献14を参照)。これによって例えば台所のシーンであれば画像データベースから似たような台所のシーンの画像を複数集めてくることが可能となる。
【0122】
またここでS604における同一性の判断は、被写体の色ヒストグラムやテクスチャの分布などの特徴量の比較を行えばよい。
【0123】
次にカメラ内の撮像された画像データを用いて補正用データセットを作成する他の実施形態例について述べる。例えば、構図やタイミングなどがユーザーにとって好ましいが、被写体の動きによるブレ、手ブレやピントのボケなどの失敗をしてしまった写真というものが存在する。一方で、その前後に、画質に関する失敗はないが、構図やタイミングなどの好ましくない写真が撮影されているとする。ここでは後者の画像を使って失敗した画像の画質を向上させる方法について述べる。
【0124】
一般に、時間的に前後して撮影された画像には同一の被写体が映っている可能性がある。例えば被写体が人物であればタイムスタンプの近い画像には同じ人物が同じ服装をして映っている可能性がある。また被写体が背景領域であればGPS情報が近接した画像には同じ背景が映っている可能性がある。またPCやネットワーク上の画像共有データベースでユーザーが付した画像の分類やキャプションの近い画像は、類似の被写体が映っている可能性がある。従ってこれら属性の近接した画像から類似の被写体を検出して補正用データセットを作成することは有効である。
【0125】
その手順を説明する。まず画像補正を行う画質の低い領域を判定する。これは例えば実施形態1の補正領域の決定の項において説明したような方法で判定すればよい。次に再び図16を用いると、(1)補正領域から被写体を検出する(S601)。(2)入力画像とGPS情報やタイムスタンプなどの画像撮影時の属性が近接した類似画像を複数取得する(S602)。(3)類似画像について被写体検出部203で被写体の検出を行う(S603)。(4)入力画像の被写体と同一カテゴリの被写体のうち、見えの同一性の高い被写体の画像のみを選択して補正用画像とする(S604)。(5)第一実施形態で説明した方法と同様の方法を用いて補正用画像から補正用データセットを作成する(S605)。
【0126】
ここでは単独のカメラ内の画像を想定して実施形態を述べた。しかし別の様態として例えば、カメラに無線装置を備えることにより、同じ場所に居合わせたユーザーの複数のカメラ間で画像を共有し、上記のような方法で類似画像の選択を行うことも可能である。また例えば、ネットワーク上の画像共有データベースにおいて、ユーザー間で画像データを共有するような形態でもよい。また、画像撮影時に前後の数フレームをユーザーに意識させないように自動的に撮影しておき、補正用データとしてまとめて保存しておくような形態であってもよい。
【0127】
ここまで自動的に補正用画像を選択する方法について述べたが、ユーザーによってこれを決定する方法も考えられる。例えばユーザーは補正用画像選択部208に備えられた指示装置(指示入力装置996)によって、カメラ内の類似画像を補正用画像として指示してもよい。また、ユーザーは別の指示装置によって撮影の開始タイミングと終了タイミングを提示し、その間に画像補正を行いたい被写体を動画や静止画で撮影し、これを類似画像として指示するような方法も考えられる。
【0128】
以上のように本実施形態に係る構成は、入力画像中の被写体に類似する被写体を含む類似画像群を選択し、この画像群から画像補正用のデータセットを動的に構成する。これにより、あらかじめ用意された補正用データセットのみを用いて画像補正を行うのに比べて、個別の被写体に特化した正確な画像補正を行うことができる。また、類似画像を用いることで様々な被写体について特化した補正用データセットによる画像補正を行うことが可能となる。さらに、本実施形態によれば、撮影が失敗したときにも同一被写体の写った前後の画像を用いて画像補正を行うことが可能となる。
【0129】
<<実施形態3>>
本実施形態で述べる方法は実施形態1の方法を拡張したものであり、画像補正をより精度良く行うために、被写体のカテゴリを見えの違いによってサブカテゴリに細分化して補正を行うものである。
【0130】
パターン認識においては対象を分割することで問題を小規模化して個別に解く、分割統治のアプローチが有効であることが多い。しかし、被写体を識別するために最適化された被写体のカテゴリの分割と、被写体の外観を高画質に再現するためのカテゴリの分割とは必ずしも同じではない。
【0131】
例えば、犬の毛並みのツヤや、コップの表面の光沢といった細部の情報は、画像の復元の良否を評価する上で重要ではあるが、物体を識別するために必ずしも有効な手がかりではない。従って、まず物体を各々のカテゴリに分類した後に、物体がより好適に画像補正されるように、表面的な外観の似た物体を集めて各々について異なった補正用のデータセットを作成することが有効である。ここではこれを見えのサブカテゴリと呼ぶ。見えのサブカテゴリは実施形態1で説明した形状のサブカテゴリや姿勢のサブカテゴリとは異なるサブカテゴリである。
【0132】
図17に本実施形態のブロック図を示す。本実施形態のブロック図や動作手順は基本的に実施形態1と同様である。異なる点は、被写体検出部303にメインカテゴリ被写体検出部303mとサブカテゴリ同定部303sを備え、被写体モデル記憶部302にメインカテゴリモデル記憶部302mとサブカテゴリモデル記憶部303sを備えている点である。なお、実施形態1で述べたところのカテゴリのことを本実施形態ではメインカテゴリと呼称している。
【0133】
本実施形態の動作の詳細について述べる。画像入力部301から画像または動画が入力される。メインカテゴリ被写体検出部303mはメインカテゴリモデル記憶部302mより被写体のメインカテゴリのモデルを読みだす。メインカテゴリモデルを用いて被写体の領域のカテゴリを同定する。次に物体の候補となるメインカテゴリの領域に関しては物体モデルを読みだして物体の同定を行う。以上のメインカテゴリ被写体検出部303mとメインカテゴリモデル記憶部302mの動作は、実施形態1の被写体モデル記憶部102と被写体検出部103の動作と同様である。
【0134】
次に、メインカテゴリが同定された領域に対して、サブカテゴリ同定部303sがサブカテゴリモデルを読みだして被写体の属する更に細かなカテゴリを同定する。すなわち、サブカテゴリ毎のモデル情報を参照して、被写体のサブカテゴリを識別する。サブカテゴリはあらかじめ被写体の見えの類似度を元にメインカテゴリを複数に分割したものである。
【0135】
メインカテゴリからサブカテゴリへの分割の方法としては、例えば以下のようにパターン認識においてBag of Words法と呼ばれる方法に似た手順で行う。
【0136】
(1)メインカテゴリ内の被写体を構成する全ての高画質画像パッチをk−means法でk個にクラスタリングして画像パッチのコードブックを作成する。(2)コードブックを用いて一つの被写体をk次元のヒストグラムによって表わす。(3)k次元ヒストグラムを特徴ベクトルとして再びk−means法でクラスタリングを行って被写体をk’個に分割する。(4)データ数が所定の値よりも少ないクラスタは最近傍のクラスタと併合する。
【0137】
補正領域決定部304は実施形態1の補正領域決定部104と同様の動作で補正対象となる領域を決定する。補正用データセット選択部306は、あらかじめ被写体のサブカテゴリごとに記憶した補正用データセットを、補正用データセット記憶部305から読み出して画像補正部307に送る。すなわち、サブカテゴリの識別結果に基づいて補正用データセットを選択する。画像補正部307はサブカテゴリごとに補正用データセットを用いて入力画像に目的の画像補正を施す。
【0138】
本実施形態のように被写体をサブカテゴリに分割する場合、補正用データセットを構成するのに必要な学習用画像データの数が十分に多くない場合も考えられる。そこで、画像補正部307はメインカテゴリの補正用データセットを用いて一回目の画像補正を行い、次にサブカテゴリのデータセットを用いて二回目の画像補正を行うというような実施形態も考えられる。
【0139】
具体的には例えば、学習用画像にバンドパスフィルタをかけ、中域以下の空間周波数の成分の画像と高空間周波数の成分の画像に分ける。次に低画質画像から中域空間周波数画像を復元するための画像補正用データを、メインカテゴリの学習用画像データを用いて作成する。次に中域空間周波数画像から高画質画像を復元する画像補正用データを、該当サブカテゴリの学習用画像を用いて作成する。このように二種類の補正用データセットを作成すればサブカテゴリの学習用画像の数が少ない場合にも対応が可能である。
【0140】
また別の方法として、非特許文献2のように固有空間を用いて上記と同じ目的を実現することも可能である。すなわち、メインカテゴリの補正用データセットをすべて用いて固有空間を形成し、入力画像を前記固有空間へ射影することによって中程度の画質の画像を生成する。次にサブカテゴリの補正用データセットのみを用いてマルコフネットワークを作成し、中程度の画質の画像から高画質の画像へ変換する。詳細は非特許文献2を参照されたい。
【0141】
また、ここで別の様態として、サブカテゴリを被写体検出時に同定せず、複数の補正結果を作成して最も好ましい結果を選ぶような方法も有効である。この実施の様態では、サブカテゴリ同定部303sはサブカテゴリを同定せずに、一つ以上のサブカテゴリの候補を決定する。画像補正部307はメインカテゴリの補正用データセットで上で述べたような方法でまず粗い画像補正を行う。次に各候補サブカテゴリのデータセットを用いて画像補正を行って複数の結果画像を得る。これらの結果画像から、最も画像補正の結果が良かったものを選ぶ。これによって被写体の同定において正確にサブカテゴリを同定しなくても、サブカテゴリに分けたデータセットを用いて精度の良い画像補正を行うことができる。
【0142】
なお、画像補正の結果の良否を判定する方法としては例えば以下のような方法が考えられる。画像補正部307において行われる画像補正は、実施形態1で説明したのと同様に、マルコフネットワークを用いている。このネットワークの総エネルギー値が低い対象、すなわち最も無理の少ない画像補正の結果を好適な結果とすればよい。
【0143】
<<実施形態4>>
本実施形態では実施形態3の別の形態として、被写体のメインカテゴリを人物とし、サブカテゴリを特定の個人として、本実施形態に係る画像処理装置を備えたカメラについて説明する。本実施形態によれば、個人を区別して画像補正を行うことでより自然な画像補正が可能となる。手順を以下に説明する。
【0144】
まず、画像入力部301として画像を撮像して入力画像とする。次にメインカテゴリのモデルとして人物のモデルを用いてメインカテゴリ被写体検出部303mで人物の検出を行う。人物が検出されればサブカテゴリ同定部303sに送る。サブカテゴリ同定部303sではサブカテゴリモデル記憶部302sに登録されている個人のモデルのデータを用いて検出された人物を照合して個人を特定する。照合の方法としては公知の方法を用いる。例えば目や鼻などの顔の器官の主要な位置におけるGabor waveletフィルタリングを行って特徴ベクトルを算出し、登録されているサブカテゴリの特徴ベクトルとの二乗ノルム等の距離で比較を行う。
【0145】
個人が特定されたならば、カメラ内から同一人物が写っている画像を同定して補正用データセットを作成し、画像補正部307で画像補正を行う。個人が特定できなかったか、同一人物の写った画像がない場合は、人物のカテゴリの補正用データセットをすべて用いて補正を行う。このように、特定できた人物については同一人物の画像から作成した補正用データセットで画像補正を行うことにより補正の精度を向上させることができる。
【0146】
特定個人の登録の方法としては、カメラに個人登録モードを用意しておき、あらかじめユーザーがこのモードを選択して該当人物を撮影する。この撮影画像から個人のモデルを作成して記憶しておけばよい。
【0147】
また教師データを与えずに、自動的且つ逐次的に特定個人の登録を行う方法も考えられる。例えば以下のような手順で行えばよい。(1)検出された画像中の人物から、前述の特徴ベクトルを算出する。(2)カメラのメモリーに記憶されている個人のモデルの特徴ベクトルとの距離が所定の閾値以内であればその個人のデータとして追加して補正用データセットを更新する。(3)どの個人のモデルの特徴ベクトルからも所定の閾値以上であるならば新規の個人として登録する。
【0148】
上記の処理を、カメラの撮像画像から人物が検出される度に逐次的に行う。そして補正用画像データセットが更新されたときは、カメラ内の画像のうち、更新のあった該当の個人の映っている画像については画像補正をやり直す。
【0149】
上記の方法により、例えば旅行中に家族の写真を撮影しているときに、何枚かに動きブレなどの失敗写真があったとしても、その後も続けて撮影を行っていけば逐次的に個人別に補正用データセットが蓄積される。このため、徐々に高画質に補正されていくようなカメラの機能が実現される。本実施形態は人物を想定しているが、対象が犬や猫のようなペットであっても同様の手法が適用可能である。すなわち、被写体のカテゴリは人物又は動物の種類を示す分類であって、被写体のサブカテゴリとして、予め登録されている個体のいずれかもしくは未知の個体であるかを識別するようにしてもよい。
【0150】
なお、低画質の画像の場合、前述のような顔の器官上の特徴ベクトルのみからは個人の特定が難しい場合がある。そのような事例を想定しての別の様態としては例えば、人物の服装を特徴ベクトル化したデータと、そのときのタイムスタンプとを記憶したデータセットを個人のサブカテゴリのモデルのデータとして備えてもよい。顔の特徴ベクトルで個人の判定ができなくても、前後のタイムスタンプを見て類似の服装の人物と照合することで、個人を特定することが可能となる。服装の特徴ベクトルとしては例えば体領域の所定の複数点上のテクスチャおよびカラーヒストグラムを用いればよい。
【0151】
またここで人物の外観は加齢により変化するので、同一人物であっても数年〜10年程度の範囲で学習用画像データを変えて複数の時期について補正用データセットを作成するのが望ましい。撮影の時期を知るにはExif情報等の撮像時のタイムスタンプを参照すればよい。補正用データセットに使われる画像は、(1)現在〜10年前の画像、(2)5年前〜15年前の画像、(3)10年前〜20年前の画像、のようにオーバーラップしてよい。
【0152】
また本実施形態を応用して、プライバシーフィルタとして用いることも可能であるので、ここで特に説明を設ける。本実施形態ではモザイク処理やブラー処理などと異なり、観賞時に不自然な印象を与えることなく、画像内の人物のプライバシーを守ることが可能となる。例えば以下のような実施形態が考えられる。カメラにあらかじめ家族などの個人を登録しておき、登録してない人物が検出されたら、ランダムに別の個人の補正用画像データセットを用いて画像補正を行う。これにより、例えば無関係の人物の顔を他人の顔に置換することが可能となる。顔全体を別の顔にすげ替えると不自然な継ぎ目が発生するが、本実施形態では顔の構造を同定してから各局所領域のレベルで置換するので自然な結果が得られる。
【0153】
なお、より自然な置換のためには完全にランダムに他人の顔を選ぶよりも、あらかじめ性別や年齢層等を判定する処理を行い、これが一致する対象からランダムに選ぶことが望ましい。
【0154】
また、家族以外の人物を置換するのではなく、あらかじめ置換したい人物を登録するような形態でもよい。
【0155】
なお、本実施形態ではカメラの内部メモリーに記憶された画像データを画像補正の対象としているが、本実施形態に係る構成の適用範囲は必ずしもこれのみに限らない。無線によってインターネット上の画像共有データベースにアクセスしたり、PCに画像をアップロードしたときにPC内の画像データを用いて同様の処理を行ってもよい。
【0156】
<<実施形態5>>
本実施形態では、複数の被写体の同定の結果を候補として生成し、その中から好適な結果を選択する方法について述べる。複数の候補から最適な結果を選ぶことにより、画像補正の精度をより高めることが可能である。
【0157】
本実施形態の動作は実施形態1を基本とする。実施形態1で用いた図1のブロック図を用いて説明する。画像入力部101で入力された画像に対して、被写体検出部103は被写体のカテゴリの同定を行う。このとき被写体のカテゴリの推定は実施形態1と同様の方法で行う。ただし推定結果は一つのみに限定せずに、複数のカテゴリの候補とその順位や推定の確からしさを記憶しておく。この複数の候補について画像補正を行い、結果をユーザーに提示して選択を受け付ける。
【0158】
図18はこの動作の説明のための図である。まず、画像処理装置は被写体の推定結果に基づいて画像補正の処理を施す。被写体推定の確からしさの順に、補正後の画像を表示する。ここでは二枚の結果画像が提示される。被写体を検出するための被写体のモデルとして、被写体の隣接関係といったコンテクスト情報を用いて検出する場合を含む。そのため、図示するように全く違う二つの解釈が候補としてあげられることも考えられる。これを画像補正部に備えた指示装置(指示入力装置996)によって、ユーザーがより好ましい方の補正結果を選択することを受け付ける受付処理を行う。
【0159】
またここで補正結果の選択装置の別の例として、補正結果画像を表示する表示部(ディスプレイ997)と、表示部に備えたタッチパネル(指示入力装置996)を用いて、画像単位ではなく、被写体の単位で補正結果を決定してもよい。被写体は周囲の被写体との配置関係等によって出現確率が異なる。従ってユーザーの指示により被写体が同定された後に、その他の領域に関しても再度カテゴリ推定の確信度の計算をし直して、新しい補正結果を表示してもよい。
【0160】
またここで補正結果の選択装置の別の例として、画像補正の複数の候補から自動的に最も好適な結果を選択する方法が考えられる。その方法としては例えば、先に説明したマルコフネットワークの総エネルギーの低い画像補正結果を選べばよい。
【0161】
またここで画像補正の度合いを変えて複数の結果候補を生成し、ユーザーが指示装置(指示入力装置996)を用いて結果の候補を切り替えて比較し、そのうちもっとも望ましいと思われる候補をユーザーに選択させるような形態も考えられる。ここで画像補正の度合いとしては、例えば高解像度化であれば解像度の異なる高解像化などが挙げられる。
【0162】
また、本実施形態の別の応用的な形態を用いれば、新しいデジタル画像の画像処理効果を奏することが可能である。本実施形態では例えば、補正用データセット選択部106の備える補正用データセット指示装置において、ユーザーの指示によって補正用データセットを自由に選択することができる。補正用データセットの選択肢は、被写体のサブカテゴリ候補の名称リスト、もしくはカテゴリを示す代表画像、もしくは画像補正を行った結果画像、などでユーザーに提示することができる。ユーザーは指示装置に備えた送りボタンと決定ボタン、あるいはPC上で動作するプログラムの操作により、これらの結果を自由に選択して表示させながら最も望ましいと思える結果を選択すればよい。
【0163】
この実施形態によると、例えば、夏の山に対して意図的に秋の山の補正用データセットを用いて画像補正し、秋の山を再現するような画像処理効果を実現することができる。また例えば、昼の街のシーンを意図的に夕方の街の補正画像用データセットで補正して夕方のシーンの雰囲気を再現するなど、新たな画像処理効果を実現することができる。
【0164】
また、本実施形態のさらに別の応用的な形態を用いれば、さらに別の新しい画像処理効果を奏することが可能である。本実施形態では、例えば被写体検出部103に備えた物体指示装置(指示入力装置996)を用いて、画像中に検出された物体領域について、この領域を指示した物体として強制的に検出することを指示する。これによれば、例えば、犬を羊として検出してその後に羊カテゴリの補正用データセットを用いて補正を行う。このようにある物体を別のカテゴリの物体に置換する新たな画像処理効果を提供することができる。
【0165】
<<実施形態6>>
この例では動画の補正を行う。公知の方法として、動画の複数のフレーム間で被写体を位置合わせして合成し、高画質画像を生成する方法がある。しかし被写体が大きく動いたり変形している場合は従来の方法ではうまくいかない。ここでは人物の歩行など、動画のフレームレートに対して被写体が比較的大きく動いている場合を想定して、被写体に高画質化の画像補正を行う方法を述べる。
【0166】
本実施形態は実施形態1の静止画から動画への拡張である。単純に動画を複数の静止画とみて一枚一枚画像補正を行うと、画像パッチのレベルで時間的な連続性の無い結果となってしまう。本実施形態では以下のように、マルコフネットワークに時間的連続性を表現する内部エネルギー項を設ける工夫を加える。
【0167】
実施形態1と同様に被写体検出部103にて被写体の同定を行う。図19に示すように、今注目しているフレームをItとすると、Itで検出した物体と同じ物体モデルを用いてIt-1およびIt+1から物体を検出する。次に物体の各パーツp1〜pkの領域を正規化する。前後のフレーム間で各パーツの位置を合わせ、パーツ内の位置vの画像パッチ、{qt-1(v),qt(v),qt+1(v)}の対応をつける。また実施形態1と同様にして非パーツの領域についてもフレーム間で位置合わせを行う(不図示)。
【0168】
実施形態1で説明したマルコフネットワークを時間方向に拡張して図20のような形態とする。内部エネルギーに画像パッチ間の時間的連続性を表す項を加え、
【数20】

と定義する。外部エネルギー項は実施形態1と同様でよい。このようなマルコフネットワークを動作させて画像補正を行うことにより、動きや変形のある被写体についても動画フレーム間で連続性のある画像補正を行うことが可能となる。
【0169】
ここではフレーム間で画像パッチの位置の対応付けを行うために、パーツモデルを用いて局所領域の移動先を推定した。しかし例えば他に考えられる様態として、公知の方法であるオプティカルフローの推定を行って前後のフレームで局所領域がどこに動いたかを同定してもよい。また、MPEGデータであればデータ圧縮の形式として動き補償ベクトルデータを保持しているので、これをそのまま用いてもよい。これらのパーツを用いない方法であれば、背景の領域についても動画フレーム間で位置の対応付けをして画像補正を行うことが可能であるので、これらの方法を互いに組み合わせて用いてもよい。
【0170】
上記の各構成は従来よりも広く様々な被写体を含む自然画像について、高解像化等の画像補正を施すことが可能であるため、画像情報を用いる全ての産業において利用可能性がある。例えば映像制作分野において鑑賞者に高画質な画像や動画像を提示することができる。また新たな映像表現の手段や、古い映像アーカイブのカラー化と高画質化の手段を与える。また放送分野において伝送する映像信号の圧縮・復元のための新たな技術を提供する。
【0171】
<<その他の実施形態>>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

【特許請求の範囲】
【請求項1】
特定のカテゴリに属する被写体を入力画像から検出するための、被写体のモデルを示すモデル情報を記憶するモデル記憶手段と、
前記モデル情報を参照して前記入力画像から前記被写体を検出する検出手段と、
検出した前記被写体が前記入力画像において占める領域に対して画像補正を行うか否かを決定する決定手段と、
画像の局所領域について、補正前の特徴を示す特徴ベクトルと、補正後の特徴を示す特徴ベクトルとの対応関係を示す複数の補正用データセットを記憶する補正用データセット記憶手段と、
画像補正を行うと決定した前記領域を構成する局所領域を補正するための1以上の前記補正用データセットを前記補正用データセット記憶手段から選択する選択手段と、
選択した前記補正用データセットを用いて、画像補正を行うと決定した前記領域を補正する補正手段と
を備えることを特徴とする画像処理装置。
【請求項2】
前記被写体のモデルには、物体である被写体の形状を表す物体モデルが含まれ、
前記検出手段は、前記物体モデルを示すモデル情報を参照して前記入力画像から前記被写体の位置を同定し、
前記選択手段は、同定した前記位置に応じて前記補正用データセットを選択する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記物体モデルには、物体を構成するパーツの配置関係を表すモデルが含まれ、
前記選択手段は、前記検出手段が検出した物体である被写体を構成するパーツを前記物体モデルを示すモデル情報を参照して正規化し、当該正規化したパーツを構成する局所領域の位置に応じて前記補正用データセットを選択する
ことを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記補正手段は、前記入力画像の、背景の領域と、物体の前記パーツの領域と、前記パーツ以外の物体の領域とについて、それぞれ異なる補正用データセットを用いて補正を行うことを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記モデル記憶手段は、前記カテゴリのさらに詳細な分類を示すサブカテゴリごとに、前記モデル情報を記憶し、
前記サブカテゴリごとのモデル情報を参照して、前記検出手段が検出した被写体のサブカテゴリを識別する識別手段を更に備え、
前記選択手段は、前記サブカテゴリの識別結果に基づいて補正用データセットを選択する
ことを特徴とする請求項1から4のいずれか1項に記載の画像処理装置。
【請求項6】
前記補正用データセット記憶手段が記憶する前記補正用データセットには、同一カテゴリに属する全ての被写体に共通する補正用データセットと、前記サブカテゴリごとに異なる補正用データセットとが含まれることを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記カテゴリは人物又は動物の種類を示す分類であり、
前記識別手段は、前記被写体のサブカテゴリとして、予め登録されている個体のいずれかもしくは未知の個体であるかを識別する
ことを特徴とする請求項5又は6に記載の画像処理装置。
【請求項8】
前記検出手段が検出した前記被写体に類似する複数の画像を、画像の記憶手段から取得する取得手段と、
前記取得した複数の画像を用いて、該被写体に係る画像補正を行うための前記補正用データセットを作成する作成手段と
を更に備えることを特徴とする請求項1から7のいずれか1項に記載の画像処理装置。
【請求項9】
前記入力画像に対して、複数の条件で画像補正を行った複数の結果を表示する表示手段と、
前記複数の結果のいずれかの選択をユーザから受け付ける受付手段と
を更に備えることを特徴とする請求項1から8のいずれか1項に記載の画像処理装置。
【請求項10】
特定のカテゴリに属する被写体を入力画像から検出するための、被写体のモデルを示すモデル情報を記憶するモデル記憶手段と、画像の局所領域について、補正前の特徴を示す特徴ベクトルと補正後の特徴を示す特徴ベクトルとの対応関係を示す複数の補正用データセットを記憶する補正用データセット記憶手段と、を備えた画像処理装置による画像処理方法であって、
検出手段が、前記モデル情報を参照して前記入力画像から前記被写体を検出する検出工程と、
決定手段が、検出した前記被写体が前記入力画像において占める領域に対して画像補正を行うか否かを決定する決定工程と、
選択手段が、画像補正を行うと決定した前記領域を構成する局所領域を補正するための1以上の前記補正用データセットを前記補正用データセット記憶手段から選択する選択工程と、
補正手段が、選択した前記補正用データセットを用いて、画像補正を行うと決定した前記領域を補正する補正工程と
を有することを特徴とする画像処理方法。
【請求項11】
コンピュータを請求項1から9のいずれか1項に記載の画像処理装置が備える各手段として機能させるためのプログラム。
【請求項12】
画像を撮像する撮像手段と、
前記撮像手段が撮像した画像を前記入力画像として補正する請求項1から9のいずれか1項に記載の画像処理装置と
を備えることを特徴とする撮像装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2012−43151(P2012−43151A)
【公開日】平成24年3月1日(2012.3.1)
【国際特許分類】
【出願番号】特願2010−183382(P2010−183382)
【出願日】平成22年8月18日(2010.8.18)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】