説明

画像変形装置、電子機器、画像変形方法、および画像変形プログラム

【課題】画像変形における処理負担を軽減する。
【解決手段】デジタルカメラ10の制御部11は、顔の撮影画像の少なくとも一部を、所定の変形の種類に基づいて変形するものである。制御部11は、顔の撮影画像を取得する画像取得部20と、取得された顔の撮影画像から、顔を特徴付ける特徴点を検出する特徴点検出部22と、検出された特徴点と、変形の種類に対応する配置パターンおよび移動パターンとに基づいて、撮影画像に制御点およびその移動量ベクトルを設定する制御点設定部23と、撮影画像に格子点を設定し、設定した格子点の移動量ベクトルを、設定された制御点およびその移動量ベクトルに基づいて設定する格子点設定部24と、設定された格子点の移動量に基づいて格子点を移動させて、格子点を頂点とする四角形の画像領域を変形する画像変形部25とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、対象となる物体である対象物の撮影画像の少なくとも一部を、所定の変形の種類に基づいて変形する画像変形装置、電子機器、画像変形方法、および画像変形プログラムに関するものである。
【背景技術】
【0002】
近年、デジタルカメラ、カメラ付き携帯電話機などのデジタル撮影装置において、ハードウェアの多機能化および高機能化が進んだことにより、ソフトウェアの多機能化および高機能化により商品の差別化を図る傾向にある。このソフトウェアの多機能化および高機能化の一例としては、また、撮影した顔画像における顔の一部の形状を拡大または縮小することにより、小顔にしたり、滑稽な顔にしたりする顔変形機能が挙げられる。
【0003】
この顔変形機能の従来技術としては、特許文献1〜3が挙げられる。特許文献1に記載の画像処理装置では、対象画像から顔画像を検出し、検出した顔画像に対し、変形の種類に対応付けられた所定の配置パターンに従って、複数の分割点を配置し、分割点を移動することにより、分割点で囲まれた領域を変形することによって上記顔画像を変形している。
【0004】
また、特許文献2に記載の画像処理装置では、人物の画像から顔領域を抽出し、抽出された顔領域から上記人物の輪郭を検出し、検出された上記人物の顔の輪郭に基づいて上記人物の顔の形を分類し、分類された上記人物の顔の形の種類に基づき、上記人物の顔の輪郭を補正している。また、特許文献3に記載の顔画像変形装置では、人の顔および首の画像上に点を配置し、上記点からメッシュを生成して重畳し、上記点のそれぞれに対し、歪みベクトルを適用して再配置することにより、上記メッシュが変形されて顔画像が変形される。
【0005】
以上のように、従来の顔変形機能では、対象画像から顔画像を検出し、検出した顔画像に応じて、分割点または顔の輪郭を配置し、これを変形の種類に応じて移動させることにより、上記分割点または顔の輪郭で囲まれた領域を変形している。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2008−242807号公報(2008年10月09日公開)
【特許文献2】特開2004−264893号公報(2004年09月24日公開)
【特許文献3】米国特許出願公開第2008/0174795号明細書(2008年07月24日公開)
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上記従来技術においては、検出された顔画像に応じて分割点または顔の輪郭を配置するため、顔画像における顔が傾いている場合、該顔の傾きに応じて、上記分割点または顔の輪郭を回転させる必要がある。このため、上記分割点または顔の輪郭で囲まれた領域の境界を算出し、画像のピクセルが何れの領域に含まれるかをピクセルごとに判定する必要がある。その結果、処理すべき量が多くなってしまい、特に、デジタルカメラやカメラ付き携帯電話機などの小型機器で上記顔変形機能を実行させようとした場合には、処理時間が問題となってしまう。
【0008】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、処理負担を軽減できる画像変形装置などを提供することにある。
【課題を解決するための手段】
【0009】
本発明に係る画像変形装置は、対象となる物体である対象物の撮影画像の少なくとも一部を、所定の変形の種類に基づいて変形する画像変形装置であって、上記課題を解決するために、上記対象物の撮影画像を取得する取得手段と、該取得手段が取得した対象物の撮影画像から、上記対象物を特徴付ける特徴情報を検出する検出手段と、該検出手段が検出した特徴情報と、上記変形の種類に対応する配置パターンおよび移動パターンとに基づいて、上記撮影画像に制御点およびその移動情報を設定する制御点設定手段と、上記撮影画像に格子点を設定し、設定した格子点の移動情報を、上記制御点設定手段が設定した制御点およびその移動情報に基づいて設定する格子点設定手段と、該格子点設定手段が設定した格子点の移動情報に基づいて格子点を移動させて、格子点を頂点とする四角形の画像領域を変形する画像変形手段とを備えることを特徴としている。
【0010】
また、本発明に係る画像変形方法は、対象となる物体である対象物の撮影画像の少なくとも一部を、所定の変形の種類に基づいて変形する画像変形方法であって、上記課題を解決するために、上記対象物の撮影画像を取得する取得ステップと、該取得ステップにて取得された対象物の撮影画像から、上記対象物を特徴付ける特徴情報を検出する検出ステップと、該検出ステップにて検出された特徴情報と、上記変形の種類に対応する配置パターンおよび移動パターンとに基づいて、上記撮影画像に制御点およびその移動情報を設定する制御点設定ステップと、上記撮影画像に格子点を設定し、設定した格子点の移動情報を、上記制御点設定ステップにて設定された制御点およびその移動情報に基づいて設定する格子点設定ステップと、該格子点設定ステップにて設定された格子点の移動情報に基づいて格子点を移動させて、格子点を頂点とする四角形の画像領域を変形する画像変形ステップとを含むことを特徴としている。
【0011】
ここで、変形の種類の例としては、小顔変形などが挙げられる。また、特徴情報の例としては、特徴情報の例としては、顔画像であれば、目尻、目頭、口端点、顔中心点、あご端点、こめかみなどが挙げられる。
【0012】
上記構成および方法によると、対象物の撮影画像を取得すると、取得された対象物の撮影画像から、該対象物を特徴付ける特徴情報を検出し、検出された特徴情報と、変形の種類に対応する配置パターンおよび移動パターンとに基づいて、上記撮影画像に制御点およびその移動情報を設定する。一方、制御点に関係なく、撮影画像に格子点を設定する。次に、設定され格子点の移動情報を、上記制御点およびその移動情報に基づいて設定する。そして、設定された格子点の移動情報に基づいて、格子点を頂点とする四角形の画像領域を変形する。これにより、対象物の画像が変形される。
【0013】
このように、本発明では、画像変形にて利用される格子点は、画像の特徴情報に応じて配置される制御点に関係なく設定されている。これにより、撮影画像における対象物の傾きに応じて制御点を傾けて配置しても、格子点は傾けて配置する必要が無く、上記格子点を頂点とする四角形の画像領域も傾けて配置する必要が無い。従って、画像のピクセルが上記画像領域の何れに含まれるかを容易に判定することができ、処理負担を軽減することができる。
【0014】
なお、上記変形のための制御点の移動量は、例えば、各制御点についてどの程度移動させることが好ましいかを予め学習することにより、対象物の移動量ベクトル分布モデルを生成し、生成したモデルを、上記対象物の特徴点にフィッティングさせて決定すればよい。また、ユーザが各制御点の移動量を手動で設定して記憶してもよい。
【0015】
また、上記変形のための格子点の移動量は、上記制御点の移動量の情報を用いて、例えば、3次のBスプライン関数を用いる等、一般的に用いられる補間処理により求めればよい。通常は、高次補間を用いるのが望ましいが、上述の制御点と同様に、移動量ベクトル分布モデルを生成しておけば、制御点の移動量とモデルの移動量との関係から線形的に算出することができる。
【0016】
ところで、一般に、画像中の対象物を変形する処理は、変形の対象領域すべてのピクセルが移動対象となるため、変形の対象領域のピクセル数に比例して処理時間も増えることになる。例えば、30万画素(640ピクセル×480ライン)の画像での処理時間が1秒とすると、200万画素(1600ピクセル×1200ライン)の画像では処理時間が6.25秒となり、500万画素(2560ピクセル×1920ライン)の画像では処理時間が16秒となり、1200万画素(4000ピクセル×3000ライン)の画像では処理時間が39秒となり、実用的な処理時間ではなくなってしまうと考えられる。従って、ピクセル数が増えても実用的な処理時間を維持できることが望まれる。
【0017】
そこで、本発明に係る画像変形装置では、上記画像変形手段は、対象となる画像領域に含まれる格子点の移動すべき量の統計値が第1の所定値よりも少ない場合、当該画像領域の変形を省略することが好ましい。
【0018】
この場合、処理の高速化および処理時間の短縮を図ることができる。なお、第1の所定値としては、当該画像領域を変形したとしても、変形前の画像と変形後の画像との差をほとんど視認できないような場合の上記統計値の上限に設定することが望ましい。この場合、当該画像領域の変形を省略しても、処理後の画像の画質にほとんど影響を与えることがない。なお、統計値としては、最大値、最小値、平均値などが挙げられる。
【0019】
さらに、本発明に係る画像変形装置では、上記画像変形手段は、対象となる画像領域に含まれる格子点の移動すべき量の統計値が第1の所定値以上であり、かつ第2の所定値よりも少ない場合、当該画像領域の変形を線形補間により行う一方、上記格子点の移動すべき量が第2の所定値以上である場合、当該画像領域の変形を高次補間により行うことが好ましい。
【0020】
この場合、高次補間の代わりに線形補間を利用することにより、処理の高速化および処理時間の短縮をさらに図ることができる。なお、第2の所定値としては、変形前の画像と変形後の画像との差を視認できるが、画質への影響が小さいような場合の上記統計値の上限に設定することが望ましい。この場合、当該画像領域の変形を線形補間により行っても、処理後の画像の画質にほとんど影響を与えることがない。
【0021】
なお、上記構成の画像変形装置を備えた電子機器でも、上述の作用効果を奏することができる。また、上記画像変形方法における各ステップを、画像変形プログラムによりコンピュータに実行させることができる。さらに、上記画像変形プログラムをコンピュータ読取り可能な記録媒体に記憶させることにより、任意のコンピュータ上で上記画像変形プログラムを実行させることができる。
【発明の効果】
【0022】
以上のように、本発明に係る画像変形装置は、画像変形にて利用される格子点が、画像の特徴情報に応じて配置される制御点に関係なく設定されるので、撮影画像における対象物の傾きに応じて制御点を傾けて配置しても、格子点を傾けて配置する必要が無く、上記格子点を頂点とする四角形の画像領域も傾けて配置する必要が無く、その結果、画像のピクセルが上記画像領域の何れに含まれるかを容易に判定することができ、処理負担を軽減することができるという効果を奏する。
【図面の簡単な説明】
【0023】
【図1】本発明の一実施形態であるデジタルカメラの概略構成を示すブロック図である。
【図2】上記実施形態における小顔変形の概要を示す図である。
【図3】上記小顔変形の概要を示す図である。
【図4】上記小顔変形の概要を示す図である。
【図5】上記小顔変形の概要を示す図である。
【図6】上記小顔変形の概要を示す図である。
【図7】上記小顔変形の概要を示す図である。
【図8】上記デジタルカメラの記憶部に記憶される移動量ベクトル分布テーブルの顔画像に対する有無を示す図である。
【図9】上記移動量ベクトル分布テーブルのx軸方向の移動量を示すテーブルの一例を示す図である。
【図10】上記x軸方向の移動量を示すテーブルの一例を示す図である。
【図11】上記x軸方向の移動量を示すテーブルの一例を示す図である。
【図12】上記デジタルカメラにおける画像変形の処理動作を示すフローチャートである。
【発明を実施するための形態】
【0024】
本発明の一実施形態について図1〜図12を参照して説明する。図1は、本実施形態であるデジタルカメラの概略構成を示している。図示のように、デジタルカメラ(電子機器)10は、制御部(画像変形装置)11、記憶部12、撮影部13、操作部14、および表示部15を備える構成である。
【0025】
制御部11は、デジタルカメラ10内における各種構成の動作を統括的に制御する。制御部11は、例えばCPU(Central Processing Unit)およびメモリを含むコンピュータによって構成される。そして、各種構成の動作制御は、制御プログラムをコンピュータに実行させることによって行われる。このプログラムは、例えばフラッシュメモリなどのリムーバブルメディアに記録されているものを読み込んで使用する形態であってもよいし、ハードディスクなどにインストールされたものを読み込んで使用する形態であってもよい。また、上記プログラムをダウンロードしてハードディスクなどにインストールして実行する形態なども考えられる。なお、制御部11の詳細については後述する。
【0026】
記憶部12は、フラッシュメモリ、ROM(Read Only Memory)などの不揮発性の記憶装置と、RAM(Random Access Memory)などの揮発性の記憶装置とによって構成されるものである。不揮発性の記憶装置に記憶される内容としては、上記した制御プログラム、OS(operating system)プログラム、その他の各種プログラム、後述する撮影画像のデータ、などが挙げられる。一方、揮発性の記憶装置に記憶される内容としては、作業用ファイル、テンポラリファイルなどが挙げられる。なお、記憶部12の詳細については後述する。
【0027】
撮影部13は、被写体の撮影を行うものであり、例えばレンズ群、絞り、撮像素子などの光学系と、アンプ、A/Dコンバータなどの回路系とを備えている。撮像素子の例としては、CCD、CMOS(Complementary Metal-oxide Semiconductor)イメージセンサなどが挙げられる。撮影部13は、上記撮影により撮影画像を生成し、撮影画像のデータに変換して制御部11に送信する。
【0028】
操作部14は、ユーザの操作によりユーザから各種の入力を受け付けるものであり、入力用ボタン、タッチパネル、その他の入力デバイスによって構成されている。操作部14は、ユーザが操作した情報を操作データに変換して制御部11に送信する。なお、入力デバイスの他の例としては、キーボードと、テンキーと、マウスなどのポインティングデバイスとが挙げられる。
【0029】
表示部15は、制御部11からの画像データに基づいて、文字や画像などの各種の情報を表示出力するものである。表示部15は、LCD(液晶表示素子)、CRT(陰極線管)、プラズマディスプレイなどの表示デバイスによって構成されている。
【0030】
本実施形態では、正面を向いた顔画像の顔がすっきりと小さく見えるように、顔の輪郭、特に顎付近を変形させる、いわゆる小顔変形を実行している。図2〜図7は、本実施形態における小顔変形の概要を示している。
【0031】
まず、撮影部13または記憶部12から撮影画像CIのデータを取得すると、図2の(a)に示すように、撮影画像CIにおける顔の領域FAを検出する。図示の例では、顔の領域FAは、黒枠で囲まれた領域である。
【0032】
次に、検出された顔の領域FAから、図2の(b)に示すように、顔の特徴点(特徴情報)FPを検出する。なお、顔の特徴点FPには、目、口、鼻など、顔の器官を特徴付ける顔器官点も含まれる。目の顔器官点としては、目頭、目尻、目の中心点などが挙げられ、口の顔器官点としては、口の端点、口の中心点などが挙げられ、鼻の顔器官点としては、鼻の中心点などが挙げられる。なお、全ての特徴点を検出する必要は無く、小顔変形に関係のある顔の特徴点FPを検出すればよい。図2の(b)に示す例では、特徴点FPとして、目尻、目頭、口の端点、顔の中心点、顎の端点、こめかみを検出している。
【0033】
次に、検出された顔の特徴点FPに基づいて、図2の(c)に示すように、制御点CPが撮影画像CIに配置される。具体的には、制御点CPは、撮影画像CIにおいて変形対象となる領域(例えば、顔、鼻、目など)の輪郭上に配置される。小顔変形の例では、顎の下端、こめかみ、および顎のえらなどを制御点CPとすればよい。なお、特徴点FPの幾つかを制御点CPとしてもよい。図示の例では、制御点CPは、小顔変形の対象となる、顎からこめかみにかけての顔の輪郭上に配置される。また、顎の端点の特徴点FPを制御点CPとしている。
【0034】
なお、制御点CPの配置のパターンは、変形の種類によって予め定められている。また、制御点CPの配置方法は、対象となる輪郭線を検出することにより行う方法、輪郭線モデルを生成する方法などの中から選択される。
【0035】
次に、図3に示すように、配置された制御点CPごとに、小顔変形で移動すべき移動量および移動方向を決定する。例えば、配置された制御点CPに対し移動量テーブルをフィッティングすることにより、上記移動量および移動方向を決定することができる。
【0036】
図3に示す例では、決定された移動量および移動方向を移動量ベクトル(制御点の移動情報)MVで示している。各制御点CPにおける移動量ベクトルMVは、当該制御点CPから顔の中心点(鼻の頂点)の特徴点FPまでのベクトルに比例しており、比例定数は、小顔変形に適合するように、制御点CPごとに設定されている。図示の例では、両側の制御点CPにおいて比例定数が大きく、すなわち移動量が多く設定され、下側の制御点CPにおいて比例定数が小さく、すなわち移動量が少なく設定されている。
【0037】
次に、制御点CPとは別に、図4に示すように、変形対象となる領域を少なくとも含む領域に格子点GDを設定する。なお、格子点GDは、ピクセルの座標軸と平行であることが望ましい。この場合、4つの格子点GDを頂点とする何れの画像領域にピクセルが含まれるかを容易に判定することができる。
【0038】
次に、制御点CPの移動量ベクトルMVに基づいて、図5に示すように、格子点GDにおける移動量および移動方向を算出する。図示の例では、算出された移動量および移動方向を移動量ベクトル(格子点の移動情報)MVgで示している。
【0039】
各格子点GDにおける移動方向は、各制御点CPにおける移動方向と同様に、当該格子点GDから顔の中心点の特徴点FPに向かう方向となる。また、各格子点GDにおける移動量は、当該格子点GD付近の制御点CPの移動量ベクトルMVの分布から、3次B−スプライン関数などの高次補間を利用して算出される。例えば、隣接する格子点GD間の距離を1として、当該格子点GDから制御点CPまでの距離に基づき移動量を算出する。
【0040】
次に、図6の(a)に示すように、4つの格子点GDを頂点とする画像領域を、同図の(b)に示すように、当該4つの格子点GDにおける移動量および移動方向に基づいて変形する。その結果、図7に示すように、小顔変形の行われた撮影画像CI´が作成され、表示部15を介して表示出力される。なお、上記画像領域内の各ピクセルの移動量および移動方向は、上記4つの格子点GDにおける移動量および移動方向に基づき補間を利用して算出することができる。
【0041】
なお、上記4つの格子点GDにおける移動量が所定値以下である場合、上記4つの格子点GDを頂点とする画像領域の変形を省略することが望ましい。この場合、変形処理が行われる画像領域を減らすことができるので、処理を高速化することができる。
【0042】
また、上記4つの格子点GDの何れかの移動量または輝度差が所定値以上である場合、高次の補間を利用して、上記画像領域内の各ピクセルの移動量および移動方向を算出することが望ましい。この場合、上記画像領域の画像を精度よく変形することにより、画像の変形による画質の低下を抑制することができる。
【0043】
これにより、本実施形態のデジタルカメラ10は、画像変形にて利用される格子点GDは、画像の特徴情報に応じて配置される制御点CPに関係なく設定されている。これにより、撮影画像CIにおける顔の傾きに応じて制御点CPを傾けて配置しても、格子点GDは傾けて配置する必要が無く、上記格子点GDを頂点とする四角形の画像領域も傾けて配置する必要が無い。従って、画像のピクセルが上記画像領域の何れに含まれるかを容易に判定することができ、処理負担を軽減することができる。
【0044】
次に、制御部11および記憶部12の詳細について説明する。図1に示すように、制御部11は、画像取得部(取得手段)20、顔検出部21、特徴点検出部(検出手段)22、制御点設定部(制御点設定手段)23、格子点設定部(格子点設定手段)24、および画像変形部(画像変形手段)25を備える構成である。また、記憶部12は、撮影画像のデータを記憶する画像記憶部30、および、移動量ベクトル分布テーブル(配置パターン、移動パターン)を記憶するテーブル記憶部31を備える構成である。
【0045】
画像取得部20は、撮影部13からの撮影画像CIのデータを取得するものである。画像取得部20は、取得した撮影画像CIのデータを画像記憶部30に記憶する。本実施形態では、画像取得部20は、撮影部13または画像記憶部30から取得した撮影画像CIのデータを顔検出部21および特徴点検出部22に送信する。
【0046】
顔検出部21は、画像取得部20からの撮影画像CIのデータを用いて、撮影画像CIから顔の領域FAを検出するものである(図2の(a))。顔検出部21は、検出した顔の領域FAの位置情報を特徴点検出部22に送信する。なお、顔の領域FAの検出手法としては、テンプレートマッチングを利用したり、肌色領域を検出したり、顔の輪郭を検出したりするなど、公知の技術を利用することができる。
【0047】
特徴点検出部22は、画像取得部20からの撮影画像CIのデータと、顔検出部21からの顔の領域FAの位置情報とを利用して、顔の特徴点FPを検出するものである(図2の(b))。特徴点検出部22は、検出した顔の特徴点FPの位置情報を制御点設定部23に送信する。なお、顔の特徴点FPの検出手法としては、エッジを抽出するなど、公知の技術を利用することができる。
【0048】
制御点設定部23は、特徴点検出部22からの顔の特徴点FPの位置情報に基づいて、制御点CPを設定するものである(図2の(c))。さらに、制御点設定部23は、設定された制御点CPごとに、小顔変形で移動すべき移動量および移動方向を設定するものである(図3)。制御点設定部23は、設定された制御点CPの位置情報と、設定された移動量および移動方向とを格子点設定部24に送信する。
【0049】
ここで、上記移動量および移動方向の設定の詳細について、図8〜図11を参照して説明する。本実施形態では、制御点設定部23は、テーブル記憶部31に記憶された移動量ベクトル分布テーブルを利用して、上記上記移動量および移動方向を設定している。
【0050】
移動量ベクトル分布テーブルは、各制御点CPをどの程度移動させることが好ましいかを予め定義した対象物の移動量ベクトル分布モデルより生成される。移動量ベクトル分布テーブルは、顔輪郭が顔の中心に向かって移動するように移動方向が予め設定されている。
【0051】
図8は、顔画像に対する移動量ベクトル分布テーブルの有無を示すものである。図示において、黒色の領域は、移動量がゼロであり、移動量ベクトルが存在しない領域を示しており、白色の領域は、移動量が非ゼロであり、移動量ベクトルが存在する領域を示している。図示のように、移動量ベクトルは顔画像の顎付近に存在している。従って、移動量ベクトル分布テーブルは、顔画像の顎付近の変形度合いを定義するものとなっている。
【0052】
移動量ベクトル分布テーブルは、顔画像の特徴点(例えば、こめかみおよび顎の下端点など)との位置関係が決められており、検出された顔の領域FAに適合するように、リサイズ(resize)および回転を行う。このリサイズは以下のように行われる。なお、移動量ベクトル分布テーブルは、x軸方向の移動量を示すテーブルと、y軸方向の移動量を示すテーブルとを有している。以下では、x軸方向の移動量を示すテーブルについて説明するが、y軸方向の移動量を示すテーブルも同様である。
【0053】
図9〜図11は、移動量ベクトル分布テーブルのx軸方向の移動量を示すテーブルの一例を示している。図9〜図11において、左上側にはリサイズ前のテーブルMTxを記載しており、下側にはリサイズ後のテーブルMTx´を記載している。また、x座標は左右対称軸を0とする相対座標を利用している。
【0054】
ところで、顔はほぼ左右対称である。従って、図示のように、実際のテーブルMTxは、図8に示す白い領域のうち、左右何れかの領域にのみデータを有しており、実際に利用される時に、残りの領域のデータが算出される。
【0055】
まず、テーブルMTxの1行目から1つずつ順にデータ値を読み込み、リサイズ後のテーブルMTx´にデータ値を書き込む。このとき、リサイズ後の座標は、元のMTxの座標のn倍(n≠0)の値を整数化した値とする。また、左右に対称な座標にも同じ値をコピーする。但し、図9に示すようなx軸方向の移動量であれば符号を逆転させる。x軸方向にn倍のリサイズであればデータ値もn倍する。
【0056】
テーブルMTxを拡大する場合、1行目のデータ値の書込みが終わった後、データ値の書き込まれていない座標が存在する。この場合、書き込まれている座標のデータ値を用いて線形補間によりデータ値を埋めればよい。図10は、テーブルMTx´において1行目のデータ値の書込みが完了した状態を示している。
【0057】
テーブルMTxの2行目以降についても同様の処理を繰り返せばよい。なお、テーブルMTxを拡大する場合、データ値が書き込まれていないラインが発生する。この場合、データ値が書き込まれていないラインについては、上下のデータ値が書き込まれているラインのデータ値を用いて線形補間によりデータ値を埋めればよい。図11は、テーブルMTxの1・2行目のデータ値を利用して、テーブルMTx´の1〜3行目のデータ値の書込みが完了した状態を示している。このようにして、各制御点CPにおける移動量ベクトルを算出すればよい。
【0058】
図1に戻って、格子点設定部24は、制御点CPに関係なく、顔画像の領域を格子状に分割して、格子点GDを設定する。例えば、顔の中心を原点とし、(2N+1)本のy軸に平行な直線x=l×M(lは−N〜Nの整数)と、(2N+1)本のx軸に平行な直線y=m×M(mは−N〜Nの整数)により顔画像の領域を分割すればよい。なお、Mは隣り合う直線同士の画素数となる。
【0059】
さらに、格子点設定部24は、制御点設定部23からの各制御点CPの位置情報、並びに、移動量および移動方向(実際にはx軸方向の移動量とy軸方向の移動量)に基づいて、各格子点GDの移動量および移動方向を算出するものである。格子点設定部24は、各格子点GDの位置情報、並びに移動量および移動方向を画像変形部25に送信する。
【0060】
画像変形部25は、格子点設定部24からの各格子点GDの位置情報、並びに移動量および移動方向に基づいて、格子状に分割された画像領域、すなわち4つの格子点GDを頂点とする画像領域を変形することにより、撮影画像を変形するものである。画像変形部25は、変形された撮影画像を表示するように表示部15を制御する。
【0061】
なお、画像変形部25は、下記の3つの条件を設定し、何れの条件を満たすかにより処理を切り替えることが望ましい。すなわち、
第1の条件:画像領域における4つの格子点GDの移動量ベクトルの大きさの最大値が、第1の所定値未満である場合、
第2の条件:上記4つの格子点GDの移動量ベクトルの大きさの最大値が、第1の所定値以上であり、かつ第2の所定値未満である場合、
第3の条件:上記4つの格子点GDの移動量ベクトルの大きさの最大値が、第2の所定値以上である場合。
【0062】
第1の条件を満たす画像領域は、各格子点GDの移動量が小さく、顔の輪郭から離れていると考えられ、ピクセルの移動量も全て小さいので、変形前の画像と変形後の画像との差はほとんど無いと考えられる。このため、第1の条件を満たす画像領域では画像変形の処理をスキップする。これにより、処理の高速化を図ることができる。
【0063】
次に、第2の条件を満たす画像領域は、顔の輪郭から少し離れているが、変形後の画像に対する違和感を無くすために、画像変形を行うことが望ましいと考えられる。但し、変形後の画像の画質への影響は小さいと考えられるため、線形補間により画像変形を行う。
【0064】
そして、第3の条件を満たす画像領域は、顔の輪郭付近であり、変形の度合いが最も大きいと考えられる。従って、線形補間により画像変形を行った場合、変形後の画像が不自然なものになる虞があるので、高次補間により画像変形を行う。これらの処理を行うことにより、画像変形による画質の低下を抑制しつつ、画像変形の処理の高速化を図ることができる。
【0065】
なお、本実施形態では、上記3つの条件において、4つの格子点GDの移動量ベクトルの大きさの最大値が利用されているが、最小値、平均値など、任意の統計値を利用することができる。
【0066】
図12は、上記構成のデジタルカメラ10における画像変形の処理動作を示している。図示のように、まず、画像取得部20が取得した撮影画像CIを利用して、顔検出部21が顔(対象物)の領域FAを検出し(S10)、検出された顔の領域FAに基づいて、特徴点検出部22が顔の特徴点FPを検出する(S11)。
【0067】
次に、検出された顔の特徴点FPに基づいて、制御点設定部23が、制御点CPを設定し(S12)、各制御点CPの移動量(ベクトル)を設定する(S13)。次に、格子点設定部24が、顔画像の領域を格子状の小領域に分割し(S14)、設定された制御点CPとその移動量とに基づいて、各格子点GDの移動量(ベクトル)を算出する(S15)。
【0068】
次に、画像変形部25は、整数iを0に初期化し(S16)、整数iが小領域の数Nsを超えるまで以下の処理を繰り返す(S17)。すなわち、画像変形部25は、i番目の小領域における4つの格子点GDの移動量(ベクトル)を取得し(S18)、取得された移動量(ベクトル)の絶対値の最大値が第1の所定値未満である場合(S19にてYES)、画像変形部25は、画像変形の処理を省略して、S23に進む。
【0069】
一方、取得された移動量(ベクトル)の絶対値の最大値が第1の所定値以上であり、かつ、第2の所定値未満である場合(S19にてNO、S20にてYES)、画像変形部25は、線形補間による画像変形を行い(S21)、その後、S23に進む。一方、取得された移動量(ベクトル)の絶対値の最大値が第2の所定値以上である場合(S19にてNO、S20にてNO)、画像変形部25は、高次補間による画像変形を行い(S22)、その後、S23に進む。S23では、整数iを1つ増分して、S17に戻る。
【0070】
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【0071】
例えば、上記実施形態では、本発明を人の顔画像の変形に適用しているが、人の目・鼻・口などの器官、人の全身、動物、壺など、特有の形状を有し、該形状を特徴付ける特徴点を抽出可能な物体であれば、任意の物体の画像の変形に適用することができる。
【0072】
また、上記実施形態では、本発明をデジタルカメラに適用しているが、カメラ付携帯電話機、カメラを取り付けたPCなど、撮影機能を有する任意の電子機器に適用することができる。さらに、撮影機能を有していなくても、撮影画像のデータを、有線通信、無線通信、通信ネットワーク、着脱可能な記録媒体などを介して取得する機能を有する任意の電子機器に適用することができる。特に、本発明は、従来技術に比べて、処理負担が軽減されるので、小型の電子機器に好適である。
【0073】
最後に、デジタルカメラ10の各ブロック、特に制御部11は、ハードウェアロジックによって構成してもよいし、次のようにCPUを用いてソフトウェアによって実現してもよい。
【0074】
すなわち、デジタルカメラ10は、各機能を実現する制御プログラムの命令を実行するCPU、上記プログラムを格納したROM、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアであるデジタルカメラ10の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、デジタルカメラ10に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【0075】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
【0076】
また、デジタルカメラ10を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。
【産業上の利用可能性】
【0077】
以上のように、本発明に係る画像変形装置は、画像変形にて利用される格子点が、画像の特徴情報に応じて配置される制御点に関係なく設定されるので、撮影画像における対象物の傾きに応じて制御点を傾けて配置しても、格子点を傾けて配置する必要が無く、上記格子点を頂点とする四角形の画像領域も傾けて配置する必要が無くなるので、撮影画像を取得可能な任意の電子機器に適用することができる。
【符号の説明】
【0078】
10 デジタルカメラ(電子機器)
11 制御部(画像変形装置)
12 記憶部
13 撮影部
14 操作部
15 表示部
20 画像取得部(取得手段)
21 顔検出部
22 特徴点検出部(検出手段)
23 制御点設定部(制御点設定手段)
24 格子点設定部(格子点設定手段)
25 画像変形部(画像変形手段)
30 画像記憶部
31 テーブル記憶部
CI 撮影画像
FP 特徴点(特徴情報)
CP 制御点
MV 移動量ベクトル(制御点の移動情報)
GD 格子点
MVg 移動量ベクトル(格子点の移動情報)
MTx テーブル

【特許請求の範囲】
【請求項1】
対象となる物体である対象物の撮影画像の少なくとも一部を、所定の変形の種類に基づいて変形する画像変形装置であって、
上記対象物の撮影画像を取得する取得手段と、
該取得手段が取得した対象物の撮影画像から、上記対象物を特徴付ける特徴情報を検出する検出手段と、
該検出手段が検出した特徴情報と、上記変形の種類に対応する配置パターンおよび移動パターンとに基づいて、上記撮影画像に制御点およびその移動情報を設定する制御点設定手段と、
上記撮影画像に格子点を設定し、設定した格子点の移動情報を、上記制御点設定手段が設定した制御点およびその移動情報に基づいて設定する格子点設定手段と、
該格子点設定手段が設定した格子点の移動情報に基づいて格子点を移動させて、格子点を頂点とする四角形の画像領域を変形する画像変形手段とを備えることを特徴とする画像変形装置。
【請求項2】
上記画像変形手段は、対象となる画像領域に含まれる格子点の移動すべき量の統計値が第1の所定値よりも少ない場合、当該画像領域の変形を省略することを特徴とする請求項1に記載の画像変形装置。
【請求項3】
上記画像変形手段は、対象となる画像領域に含まれる格子点の移動すべき量の統計値が第1の所定値以上であり、かつ第2の所定値よりも少ない場合、当該画像領域の変形を線形補間により行う一方、上記格子点の移動すべき量が第2の所定値以上である場合、当該画像領域の変形を高次補間により行うことを特徴とする請求項2に記載の画像変形装置。
【請求項4】
請求項1から3までの何れか1項に記載の画像変形装置を備えた電子機器。
【請求項5】
対象となる物体である対象物の撮影画像の少なくとも一部を、所定の変形の種類に基づいて変形する画像変形方法であって、
上記対象物の撮影画像を取得する取得ステップと、
該取得ステップにて取得された対象物の撮影画像から、上記対象物を特徴付ける特徴情報を検出する検出ステップと、
該検出ステップにて検出された特徴情報と、上記変形の種類に対応する配置パターンおよび移動パターンとに基づいて、上記撮影画像に制御点およびその移動情報を設定する制御点設定ステップと、
上記撮影画像に格子点を設定し、設定した格子点の移動情報を、上記制御点設定ステップにて設定された制御点およびその移動情報に基づいて設定する格子点設定ステップと、
該格子点設定ステップにて設定された格子点の移動情報に基づいて格子点を移動させて、格子点を頂点とする四角形の画像領域を変形する画像変形ステップとを含むことを特徴とする画像変形方法。
【請求項6】
対象となる物体である対象物の撮影画像の少なくとも一部を、所定の変形の種類に基づいて変形する画像変形装置を動作させるための画像変形プログラムであって、
上記対象物の撮影画像を取得する取得ステップと、
該取得ステップにて取得された対象物の撮影画像から、上記対象物を特徴付ける特徴情報を検出する検出ステップと、
該検出ステップにて検出された特徴情報と、上記変形の種類に対応する配置パターンおよび移動パターンとに基づいて、上記撮影画像に制御点およびその移動情報を設定する制御点設定ステップと、
上記撮影画像に格子点を設定し、設定した格子点の移動情報を、上記制御点設定ステップにて設定された制御点およびその移動情報に基づいて設定する格子点設定ステップと、
該格子点設定ステップにて設定された格子点の移動情報に基づいて格子点を移動させて、格子点を頂点とする四角形の画像領域を変形する画像変形ステップとをコンピュータに実行させるための画像変形プログラム。

【図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


【公開番号】特開2011−233073(P2011−233073A)
【公開日】平成23年11月17日(2011.11.17)
【国際特許分類】
【出願番号】特願2010−105150(P2010−105150)
【出願日】平成22年4月30日(2010.4.30)
【出願人】(000002945)オムロン株式会社 (3,542)
【出願人】(593006630)学校法人立命館 (359)
【Fターム(参考)】