(57)【要約】【課題】顔に存在する器官の画像における画質の劣化を招くことなくホクロやシミ等の画像部分を自動的に除去可能とする。【解決手段】顔・器官位置検出部２０１は処理対象の画像から顔および器官の領域を抽出する。除去対象物検出部２０２は、抽出した顔の領域から器官の領域を除いた除去処理対象領域を決定し、この除去処理対象領域内において除去対象画像を検出する。除去処理部２０３は、検出された除去対象画像の各画素の値を該除去対象画像の周辺の画素の値に基づいて更新することによって該除去対象画像を除去する。【選択図】図２
2006018467.tif 000002
【特許請求の範囲】
【請求項１】
処理対象の画像から顔および器官の領域を抽出し、抽出した顔の領域から器官の領域を除いた除去処理対象領域を決定する決定手段と、
前記除去処理対象領域内において除去対象画像を検出する検出手段と、
前記除去対象画像の各画素の値を該除去対象画像の周辺の画素の値に基づいて更新することにより、該除去対象画像を除去する除去手段とを備えることを特徴とする画像処理装置。
【請求項２】
前記処理対象の画像において、ユーザの操作入力によって除去対象画像を指定する指定手段と、
前記指定手段で指定された除去対象画像を前記除去手段を用いて除去する手動除去手段と、
前記指定手段で指定された除去対象画像の少なくとも一部が前記除去処理対象領域の外部にある場合に、その旨の警告を提示する警告提示手段とを更に備えることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記処理対象の画像において、ユーザの操作入力によって除去対象画像を指定する指定手段と、
前記指定手段で指定された除去対象画像を前記除去手段を用いて除去する手動除去手段とを更に備え、
前記手動除去手段では、前記指定手段で指定された除去対象画像の少なくとも一部が前記除去処理対象領域の外部にある場合には前記除去手段の除去強度を下げて前記除去対象画像の除去を行うことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記指定手段は、
前記処理対象の画像を表示する表示手段と、
ユーザからの操作入力に応じて、前記処理対象の画像の表示上の任意の位置に任意の大きさの閉図形を描画する描画手段とを備え、
前記描画手段で描画された閉図形の部分を前記除去対象画像とすることを特徴とする請求項２または３に記載の画像処理装置。
【請求項５】
前記処理対象の画像において、ユーザの操作入力によって非処理領域を指定する指定手段を更に備え、
前記決定手段は、更に前記指定手段で指定された非処理領域を除外して前記除去処理対象領域を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記指定手段は、
前記処理対象の画像を表示する表示手段と、
ユーザからの操作入力に応じて、前記表示手段で表示された前記処理対象の画像上の任意の位置に任意の大きさの閉図形を描画する描画手段とを備え、
前記描画手段で描画された閉図形を前記非処理領域とすることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記処理対象の画像の被写体に関する情報を入力する入力手段と、
前記被写体に関する情報に基づいて、前記決定手段による除去処理対象範囲の決定、前記検出手段による除去対象画像の検出、前記除去手段による除去対象画像の除去の少なくとも何れかにおける処理内容を変更する変更手段とを更に備えることを特徴とする請求項１に記載の画像処理装置。
【請求項８】
前記除去手段は、
前記除去対象画像内の注目画素に対して、該除去対象画像の中心位置から該注目画素までの距離に基づいて大きさが決定される参照領域を設定する第１手段と、
前記参照領域の内部であって、かつ前記除去対象画像の外部にある画素値の平均値を算出する第２手段と、
前記平均値と前記注目画素の画素値に基づいて当該注目画素の画素値を決定する第３手段とを含むことを特徴とする請求項１に記載の画像処理装置。
【請求項９】
前記第３手段は、前記平均値と前記注目画素の画素値とを所定の合成比率で合成するものであり、
前記距離が大きくなるほど前記平均値の割合が小さくなるように前記合成比率が設定されることを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
除去強度を設定する設定手段を更に備え、
前記除去強度が大きいほど前記平均値の割合が大きくなるように前記合成比率が設定されることを特徴とする請求項８に記載の画像処理装置。
【請求項１１】
処理対象の画像から顔にある器官の位置と領域を決定し、各器官の位置と領域から顔の領域を決定する決定手段と、
前記顔の領域内において除去対象画像を検出する検出手段と、
前記除去対象画像の各画素の値を該除去対象画像の周辺の画素の値に基づいて更新することにより、該除去対象画像を除去する除去手段と、
前記除去手段による前記除去対象画素の除去強度を前記決定手段で決定された前記各器官の位置から前記除去対象画像までの距離に基づいて変更する変更手段とを備えることを特徴とする画像処理装置。
【請求項１２】
処理対象の画像から顔および器官の領域を抽出し、抽出した顔の領域から器官の領域を除いた除去処理対象領域を決定する決定工程と、
前記除去処理対象領域内において除去対象画像を検出する検出工程と、
前記除去対象画像の各画素の値を該除去対象画像の周辺の画素の値に基づいて更新することにより、該除去対象画像を除去する除去工程とを備えることを特徴とする画像処理方法。
【請求項１３】
処理対象の画像から顔にある器官の位置と領域を決定し、各器官の位置と領域から顔の領域を決定する決定工程と、
前記顔の領域内において除去対象画像を検出する検出工程と、
前記除去対象画像の各画素の値を該除去対象画像の周辺の画素の値に基づいて更新することにより、該除去対象画像を除去する除去工程と、
前記除去工程による前記除去対象画素の除去強度を前記決定工程で決定された前記各器官の位置から前記除去対象画像までの距離に基づいて変更する変更工程とを備えることを特徴とする画像処理方法。
【請求項１４】
請求項１１または１２に記載の画像処理方法をコンピュータに実行させるための制御プログラム。
【請求項１５】
請求項１１または１２に記載の画像処理方法をコンピュータに実行させるための制御プログラムを格納した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された画像から特定画像を除去する画像処理装置および方法に関する。より詳しくは、入力画像に含まれる人物の顔からホクロやシミなどの特定画像を除去する画像処理装置および方法に関する。
【背景技術】
【０００２】
従来より、デジタルスチルカメラなどで撮影したデジタル画像に対し、ユーザがマウス等のユーザインターフェースを用いて領域指定することで、ホクロ、シミ、あるいはニキビ等に対応する画像部分を除去する方法が提案されている（特許文献１参照）。しかし、これまで提案されている方法では、ユーザが除去したい対象物の画像部分を一つずつ手動で指定する必要があり、必ずしも使い勝手が良いとは言えなかった。
【０００３】
一方、上記問題を鑑みて、ユーザによる指定を不要とし、ホクロやシミの画像部分を自動的に除去する方法もいくつか提案されている。一般にこの種の除去処理では、入力画像全領域に対してローパスフィルタ等の平滑化処理を行ってホクロなどの孤立点除去を行うようにしている。
【特許文献１】特開２００３−３３１３３０６号公報
【特許文献２】特開２００２−１８３７３１号公報
【特許文献３】特開２００３−３０６６７号公報
【特許文献４】特開平８−６３５９７号公報
【特許文献５】特開２０００−１０５８２９号公報
【特許文献６】特開平８−７７３３４号公報
【特許文献７】特開２００１−２１６５１５号公報
【特許文献８】特開平５−１９７７９３号公報
【特許文献９】特開平１１−５３５２５号公報
【特許文献１０】特開２０００−１３２６８８号公報
【特許文献１１】特開２０００−２３５６４８号公報
【特許文献１２】特開平１１−２５０２６７号公報
【特許文献１３】特許第２５４１６８８号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、入力画像全域に平滑化処理を施す場合、除去する必要のない個所にも平滑化処理が施されてしまうという弊害がある。特に、目や口といった器官に平滑化処理が施されると、観察者に対して画像のボケが強調され、画質が大きく劣化したように感じられる。また、このような弊害を避けるために、平滑化処理による除去強度を弱く設定すれば、ホクロ等の除去したい画像部分が残留し、ユーザが所望する結果を得ることができなくなってしまうという課題が生じる。
【０００５】
画像から人間の顔位置、および目や口などの器官位置を検出する方法は特許文献２〜１３に示されるように、従来から多くの提案がなされている。しかしながら、上述したような人物画像からホクロやシミなどを除去する処理を行うに際して、画像中の顔や器官の位置の情報を利用した試みはなされていない。
【０００６】
本発明は上記の課題に鑑みてなされたものであり、顔に存在する器官の画像における画質の劣化を招くことなくホクロやシミ等の画像部分を自動的に除去可能とすることを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するための本発明の画像処理装置は以下の構成を備えている。すなわち、
処理対象の画像から顔および器官の領域を抽出し、抽出した顔の領域から器官の領域を除いた除去処理対象領域を決定する決定手段と、
前記除去処理対象領域内において除去対象画像を検出する検出手段と、
前記除去対象画像の各画素の値を該除去対象画像の周辺の画素の値に基づいて更新することにより、該除去対象画像を除去する除去手段とを備える。
【０００８】
また、蒸気の目的を達成するための本発明による画像処理方法は、
処理対象の画像から顔および器官の領域を抽出し、抽出した顔の領域から器官の領域を除いた除去処理対象領域を決定する決定工程と、
前記除去処理対象領域内において除去対象画像を検出する検出工程と、
前記除去対象画像の各画素の値を該除去対象画像の周辺の画素の値に基づいて更新することにより、該除去対象画像を除去する除去工程とを備える。
【発明の効果】
【０００９】
以上のように、本発明によれば、顔に存在する器官の画像における画質の劣化を招くことなくホクロやシミ等の画像部分を自動的に除去することができる。
【発明を実施するための最良の形態】
【００１０】
以下、添付の図面を参照して本発明の好適な実施形態について説明する。
【００１１】
＜第１実施形態＞
（ハードウエア構成）
図１は第１実施形態による画像処理を実現するためのコンピュータにおけるハードウエア構成例を示すブロック図である。図１に示されるように、コンピュータ１００は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ディスプレイなどの表示装置１０４、キーボード１０７、マウス１０６などのユーザインターフェース、ハードディスクなどの２次記憶装置１０５、他のコンピュータやプリンタ１０９などと接続するためのインターフェース１０８とで構成されている。以上の構成において、ＣＰＵ１０１が２次記憶装置１０５に記憶された制御プログラムをＲＡＭ１０３へロードし、これを実行することにより以下に説明する各機能が実現される。
【００１２】
（処理の概要）
図２は、本実施形態における画像処理の機能構成を示すブロック図である。以下、図２を参照しながら本実施形態の画像処理の概要を説明する。図２に示すように、本実施形態の画像処理は、顔・器官位置検出部２０１、除去対象物検出部２０２、除去処理部２０３、除去強度入力部２０４を含む。
【００１３】
まず、入力画像が顔・器官位置検出部２０１に入力される。本実施形態において、入力画像としては、デジタルカメラで撮影して得られた画像や、スキャナなどの光学読取装置で原稿を読み込んで得られた画像や、デジタルビデオカメラで撮影された動画中の１フレームを抽出して得られた画像などを想定している。なお、本明細書において、これらの「画像」は電子データ化された画像データを指すものとする。本実施形態では、これらの画像は２次記憶装置１０５に格納され、顔・器官位置検出部２０１によって適宜読み出されてＲＡＭ１０３に記憶され、処理に供されるものとする。また、本実施形態では入力画像はＲＧＢ各色８ビットで構成された画像データを想定して説明を行うが、本発明はこれに限定されるものではなく、例えばモノクロ画像に対しても容易に適用できることは言うまでもない。
【００１４】
顔・器官位置検出部２０１は、入力画像から人物の顔および目や鼻、口などの器官位置を検出する。検出された顔および器官位置の情報は、後段の除去対象物検出部２０２や除去処理部２０３に入力され利用される。
【００１５】
次に入力画像は除去対象物検出部２０２に入力される。除去対象物検出部２０２は、顔・器官位置検出部２０１から取得される顔および器官位置情報を基に、入力画像から、除去すべき対象物、例えばホクロやシミ等の画像の検出を行う。後述するように、除去対象物は検出した顔領域内部であって、かつ器官領域に含まれない領域で検出したものに限定する。
【００１６】
次に入力画像は除去処理部２０３に入力され、同部において、前記顔および器官位置情報、および除去対象物の位置情報に基づいて、除去対象物の除去処理を行う。この際に、除去強度入力部２０４において、ユーザが指定した除去強度により除去処理を行うようにすることも可能である。
【００１７】
上記処理が施され、除去処理部２０３から出力される画像データは、ディスプレイ１０４に表示されたり、圧縮処理が施されて２次記憶装置１０５に保存されたり、インターフェース１０８を介して接続されたプリンタ１０９から出力されたりすることになる。以上が、本実施形態における処理の概要である。以下、上述した各処理部の機能について、個別に、より詳細に説明する。
【００１８】
（顔および器官位置検出）
上述したように、本実施形態においては、顔・器官位置検出部２０１が、入力画像中から人物の顔および目や口などの器官位置情報を検出する。顔および器官位置の検出に関しては、従来より様々な方法が提案されている。
【００１９】
例えば本出願人による特開２００２-１８３７３１号公報（特許文献２）によれば、まず、入力画像から目領域を検出し、目領域周辺を顔候補領域とする。そして、この顔候補領域に対して、画素毎の輝度勾配および輝度勾配の重みを算出し、これらを、あらかじめ設定されている理想的な顔基準画像の勾配および勾配の重みと比較する。このとき、各勾配間の平均角度が所定の閾値以下であった場合、入力画像は顔領域を有すると判定する方法が記載されている。
【００２０】
また、特開２００３-３０６６７号公報（特許文献３）によれば、まず画像中から肌色領域を検出し、検出された領域内において人間の虹彩色画素を検出することにより、目の位置を検出することが可能であるとしている。
【００２１】
さらに、特開平８-６３５９７号公報（特許文献４）によれば、複数の顔の形状をしたテンプレートと画像とのマッチング度を計算し、マッチング度が最も高いテンプレートを選択する。そして、最も高かったマッチング度があらかじめ定められた閾値以上であれば、選択されたテンプレート内の領域を顔候補領域とする。また、このテンプレートを用いるこことで、目の位置を検出することが可能であるとしている。
【００２２】
さらに、特開２０００−１０５８２９号公報（特許文献５）によれば、まず、鼻画像パターンをテンプレートとし、画像全体、あるいは画像中の指定された領域を走査し最もマッチする位置を鼻の位置として出力する。次に、画像の鼻の位置よりも上の領域を目が存在する領域として、目画像パターンをテンプレートとして目存在領域を走査してマッチングをとる。このマッチングにおいてある閾値よりもマッチ度が大きい画素の集合である目存在候補位置集合を求める。さらに、目存在候補位置集合に含まれる連続した領域をクラスタとして分割し、各クラスタと鼻位置との距離を算出する。そして、その距離が最も短くなるクラスタを目が存在するクラスタに決定することで、器官位置の検出が可能であるとしている。
【００２３】
その他、顔および器官位置を検出する方法としては、特許文献６〜１３など、数多くの手法が提案されており、本実施形態においてはそれらのうちどのような手法を用いても良い。また、顔および器官位置の検出法については、上記記載に限定されることはなく、その他のどのような手法を用いても構わない。なお、顔および器官位置の検出に関しては、様々な文献および特許で開示されているため、ここでの詳細な説明は省略する。
【００２４】
本実施形態においては、顔および器官位置を検出した結果、図３に示すような情報が得られるものとする。すなわち、顔の数（FaceNum）、左黒目の中心位置（EyeL(x,y)）、右黒目の中心位置（EyeR(x,y)）、口の左端部位置（MouL(x,y)）、口の右端部位置（MouR(x,y)）である。
【００２５】
なお、本実施形態においては、上記の情報に限定したが、本発明はこれに限定されるものではない。例えば、器官位置情報として目頭、目尻の位置や、鼻の形状や、頭髪の形状などが含まれていても良い。また、図３中３０１は、本実施形態で除去対象とする不要物（除去対象物）である。
【００２６】
（除去対象物検出）
図４は、除去対象物検出部２０２の処理を示すフローチャートである。除去対象物検出部２０２では、器官位置情報を基に、まずステップＳ４０１において、入力画像に対し、除去対象物を検出する対象領域を表すマスク情報を生成する。
【００２７】
図５は、ステップＳ４０１で生成されるマスク情報の例を示している。図５において、顔楕円領域５０１は、検出した器官位置情報を基に算出した顔領域である。また、器官楕円領域５０２は、器官位置情報に基づいて設定した器官領域である。本実施形態では、顔楕円領域５０２が両目付近を囲む領域と口を囲む領域に設定されていることがわかる。本実施形態においては、顔楕円領域５０１の内側であって、かつ器官楕円領域５０２の外側の領域に対して、ホクロなどの除去対象物の検出を行う。このような処理により、背景部分に対して余計な除去処理を作用させることなく、かつ、人物の顔にとって重要な器官領域に対して除去処理を作用させないようにしている。なお、以降では、顔楕円領域５０１の内側で、かつ器官楕円領域５０２の外側の領域を除去対象領域と呼ぶことにする。従って、マスク情報は、除去対象領域外の領域をマスクするための情報となる。
【００２８】
楕円領域５０１，５０２のの設定方法の一例を説明する。なお、以下の説明において、楕円の長軸、短軸とは、それぞれ楕円の中心から境界（楕円外周）までの距離とする。まず、上記４つの位置情報（左黒目（EyeL(x,y)）、右黒目（EyeR(x,y)）、口の左端部（MouL(x,y)）、口の右端部（MouR(x,y)））の重心位置を求め、これを顔楕円領域５０１の中心とする。また、顔楕円領域５０１の短軸は、左右黒目の中心位置間の距離とし、長軸は、当該短軸を所定倍（例えば、短軸の３／２倍など）することで算出する。
【００２９】
また、器官楕円領域５０２のうち、目の周辺を囲む楕円領域は、その中心を黒目の中心とし、長軸は左右黒目間距離の長さの所定倍（例えば、０．３倍など）、短軸は長軸の１／２とするなどして算出する。また、口の周辺に設定する器官楕円領域は、その中心を口の左右端部の中点、長軸を左右端部間距離の半分、短軸は長軸の所定倍（例えば１／２）として算出する。
【００３０】
図４に戻り、ステップＳ４０２では、上記マスク情報に基づき、２値化処理が行われる。２値化処理は、マスク情報によってマスクされていない領域、すなわち除去対象領域のみに対して行われる。２値化処理としては、入力されたＲＧＢ各色成分毎にある閾値（例えば各色８ビットの場合１２８）を用いて２値化処理を行い、各画素毎に色成分毎の２値化結果の論理積を算出する方法が挙げられる。もちろん本実施形態に適用可能な２値化処理はこのような方法に限られるものではなく、例えば、各ＲＧＢ値を輝度−色差成分に変換し、輝度成分のみに対して上記閾値を用いて２値化処理を行っても良い。
【００３１】
ステップＳ４０３では、ステップＳ４０２における２値化処理によって得られた画像情報から、黒い孤立点を抽出し、これを除去対象物とする。孤立点の抽出に関しては様々な方法が考えられる。例えば、パターンマッチングにより、黒く丸い孤立点を抽出することが可能である。あるいは、２値化画像の境界線探索を行うことにより孤立点を抽出することも考えられる。
【００３２】
境界線探索とは、図６に示すように、２値化画像を走査方向にスキャンしてゆき、最初に黒ドットにぶつかった場所を基準位置として、反時計回り（時計回りでも良い）に境界を探索してゆき、基準位置に戻るまで続ける。その過程で、図示するように黒点の横幅と縦幅を検出することが可能であるため、これらの情報から黒点の中心位置とおおよその半径を算出することが可能となる。尚、例えば中心位置は((ｘmin＋ｘmax)／２, (ｙmin＋ｙmax)／２)により求めることができる。また、半径ＲはＭａｘ((ｘmax−ｘmin)／２, (ｙmax−ｙmin)／２)で求めることができる。なおＭａｘ(a, b)はａ，ｂのうち大きい方を意味している。このような方法で抽出した黒点の中心位置と半径は、後段の除去処理部２０３に除去対象物位置情報として入力される。
【００３３】
なお、ここまで説明したステップＳ４０１〜ステップＳ４０３の処理は、顔・器官位置検出部２０１で検出した全ての顔位置（FaceNumで示される個数の顔位置全て）に対して実行される。ただし、除去処理を実行したい所望の顔をユーザに選択させるように構成してもよい、そのような構成は当業者には明らかであろう。
【００３４】
（除去処理）
以下では、除去処理部２０３の処理の説明を行う。図７は除去処理部の処理のフローチャートを示したものである。除去処理部２０３では、除去対象物検出部２０２で検出した除去対象物の中心位置と半径を用いて除去対象物を削除、あるいは目立たなくする処理を行う。本実施形態で説明する除去処理では、基本的に、除去対象物に隣接する領域を参照し、その平均画素値を用いて除去対象物内の画素の置換を行う。以下、図７のフローチャートに従って説明する。
【００３５】
１つ目の除去対象物に対して、ステップＳ７０１において、注目画素位置が除去対象物内であるか否かの判定を行い、除去対象物内であればステップＳ７０２に進む。或いは、除去対象物内の画素を注目画素として順次取得するようにしてもよい。中心位置と注目画素との距離ｄを算出する。なお、この様子を図８に示す。次にステップＳ７０３において、除去処理を行う際に参照する注目画素を中心とした参照領域９０１の大きさを算出する。なお、参照領域９０１は１辺が２×Ｍの正方形とし、Ｍは以下の式、
Ｍ＝Ｒ−ｄ＋Ｑ
により算出する。
【００３６】
本実施形態では、上式に示すように、参照領域９０１のサイズは、除去対象物の中心付近ほど大きくなり、除去画素位置が除去対象物の境界に近づくほど小さくなる。この様子を図示したものが図９である。なお、上式におけるＱは、Ｒ＝ｄとなった際の参照領域の最小サイズを決定するためのパラメータである。Ｑの値が大きいと参照領域が拡大し、除去処理に用いるべきではない領域までも参照領域に含んでしまう可能性がある。そのためＱはできるだけ小さい値、たとえばＱ＝２（画素）程度が望ましい。
【００３７】
また、このように、参照領域９０１の大きさを、除去対象物の中心と境界付近で変化させることにより、画素置換を行う際に用いる参照画素が中心と境界付近とで異なるため、ランダム性を向上させることができる。ランダム性が向上することにより、除去後の除去対象物内が平坦、あるいは周囲の画素の影響で放射状の模様が発生するなどの不自然な状態になることを防止することができる。
【００３８】
図７のフローチャートに戻り、ステップＳ７０４において、算出した参照領域９０１内であって、且つ除去対象物外の画素の平均値をＲＧＢ成分毎に算出する。次にステップＳ７０５において、注目画素を置換するための新しい画素値（置換画素値）を算出する。ここで、例えばＲ成分について、入力画像上の注目画素値をRorg(x,y)、ステップＳ７０４で算出したＲ成分の平均値をＲref(x,y)とすると、置換画素値Ｒnew(x,y)は以下の式、
Ｒnew(x,y)＝Ｌ(d)×ｗ×Ｒref(x,y)＋(1.0−Ｌ(d)×ｗ)×Ｒorg(x,y)
で求めることができる。
【００３９】
上式において、Ｌ(d)は除去対象物の中心位置と注目画素との距離ｄの関数であり、０.０〜１.０の間の値を取る。例えば、図１０に示すように中心付近は１.０で、境界に近づくに従って（ｄが大きくなるにしたがって）０.０に近づいてゆき、ｄ＝ＲとなったとこでＬ＝０となる。このようなＬ(d)の設定は、境界に近づくほど、原画素値を重視することを意味しており、この処理により、除去対象物の境界付近で不自然な境界線が目立つなどの不具合を防止することができる。
【００４０】
また、ｗはユーザが入力する除去強度によって設定される値で、同様に０.０〜１.０の値を取る。例えば、図１１に示すように、ユーザが入力した「強」、「中」、「弱」という強度指定に基づいて、ｗの値を１.０、０.７、０.４と変化させることで除去強度を調節することが可能となる。もちろん、ｗの値はもっと細かく設定できるようにしてもよいし、スライダ等のユーザインターフェースにより任意の値に設定できるようにしてもよい。なお、置換画素値の算出は、当然のことながら残りのＢＧ成分に対しても施される。
【００４１】
以上の処理（ステップＳ７０１〜ステップＳ７０５）を、除去対象物内の画素全てに対して施すことにより、ホクロ、シミなどを除去することが可能となる。また、ここまでの処理は除去対象物検出部２０２で検出された全ての位置に対して施されることになる。
【００４２】
以上説明したように、第１実施形態によれば、入力画像から顔および器官位置を自動で検出し、顔領域内であってかつ器官領域以外の領域に存在するホクロ、シミなどを検出し、自動で除去することができる。本方式によれば、人間の顔の中でも重要である目や口の領域や、顔以外の背景領域などに余計な除去処理を施すことがなくなる。すなわち、見た目に劣化が目立ちやすい器官の画像に対する除去処理の影響を防止できるため、見た目の画質劣化を効果的に抑えることができる。
【００４３】
＜第２実施形態＞
第１実施形態では、自動で黒いホクロやシミなどを、検出した顔および器官位置に基づいて適切に除去する方法について説明した。しかし、ニキビなど、除去対象物の色が肌の色とそれほど差異がない場合、除去対象物検出部２０２で検出できない可能性がある。第２実施形態ではそのような場合に対応するべく、更に、ユーザが手動で除去対象物を指定し、指定された除去対象物を除去することを可能とした構成について説明する。
【００４４】
図１２は、手動で除去対象物を指定する際のユーザインターフェース（以下、ＵＩ）１２０１の例を示している。このＵＩ１２０１は、図１の表示装置１０４に表示され、ユーザがマウス１０６などを用いて除去対象物を円で囲む様子が示されている。ユーザが指定した領域１２０２の中心と半径を算出し、これを除去対象物の中心位置と半径として除去処理部２０３へ供給する。除去処理部２０３は、供給された中心位置と半径で示される除去対象物に対して第１実施形態で説明した除去処理を適用して、これを除去する。
【００４５】
図１３は、第２実施形態による除去処理を説明するフローチャートである。まず、顔・器官位置検出部２０１によって検出された顔、器官位置情報に基づいてマスク情報を生成する（ステップＳ１３０１、Ｓ１３０２）。なお、第２実施形態の処理を第１実施形態の処理に対して付加的に用いる場合は、すでにステップＳ４０１でマスク情報が生成されているので、ステップＳ１３０１、Ｓ１３０２は省略できる。
【００４６】
次に、ステップＳ１３０３において図１２に示すＵＩを表示装置１０４に表示し、除去対象物をユーザに指定させる。図１２に示されるように、除去対象の画像を表示し（１２０４）、マウス１０６等の入力装置を用いて所望の位置に閉図形を描画することができる。図１２では、閉図形として円１２０２を用いた例を示している。なお、除去対象の画像を拡大して表示することを可能にすれば、除去対象物の指定操作（円等の閉図形の描画操作）を容易にすることができる。そして、実行ボタン１２０３のクリックにより、除去対象物が指定されたとして処理をステップＳ１３０４へ進める。
【００４７】
ＵＩにおいて除去対象物を指定した際に、ユーザが誤って人物の顔の中でも重要な器官領域付近を除去対象物として指定してしまう場合が考えられる。このような場合、すなわち、マウス１０６などを用いて除去対象物（円）を入力（描画）した際に、その領域の少なくとも一部がマスク情報によって表される除去対象領域からはみ出す場合は、ステップＳ１３０５へ進み、その旨を示す警告を表示する。より具体的には、指定された除去対象物の少なくとも一部が器官位置を示す器官楕円領域５０２に重なっていたり、顔楕円領域５０１の外だった場合に、ステップＳ１３０５において何らかの警告を表示する。この様子を図示したものが図１４である。同図では目の周辺を除去対象物としてユーザが指定したため、図示するような警告１４０１が表示されている。
【００４８】
なお、除去対象物がどの程度除去対象領域からはみ出したら警告表示を行うかは、固定値として設定してもよいし、ユーザが設定できるようにしてもよい。例えば、除去対象物の面積の３０％が除去対象領域からはみ出した場合に警告表示を行うといったように設定しておく。
【００４９】
さて、図１４の状態において、警告１４０１のＯＫボタンがクリックされると、ステップＳ１３０６からステップＳ１３０７へ進み、指定された除去対象物について除去処理部２０３による除去処理を実行する。キャンセルボタンがクリックされた場合は除去処理を行わずにステップＳ１３０８へ進む。
【００５０】
ステップＳ１３０４で除去対象物が除去対象領域からはみ出していないと判定された場合はステップＳ１３０４からステップＳ１３０７へ進み、指定された除去対象物について除去処理部２０３による除去処理を実行する。ステップＳ１３０８では除去処理の終了指示がなされたか否かを判定し、終了指示がなされていれば本処理を終了し、そうでなければ処理をステップＳ１３０３へ戻す。
【００５１】
また、上記実施形態では、ユーザが誤った領域を除去対象物に指定した場合（除去対象物が除去処理対象範囲をはみ出す場合）に警告を表示するようにしたが、これに限られない。例えば、除去処理対象範囲をはみ出す除去対象物については、除去強度を弱めて実行するようにしてもよい。図１５はそのような処理を説明するフローチャートである。
【００５２】
図１５において、ステップＳ１５０１〜Ｓ１５０４、Ｓ１５０７、Ｓ１５０８の各処理はそれぞれ上述したステップＳ１３０１〜Ｓ１３０４、Ｓ１３０７、Ｓ１３０８と同様である。
【００５３】
ステップＳ１５０４において、指定された除去対象物が除去処理対象範囲をはみ出すと判定された場合、第１実施形態で説明した強度パラメータｗを例えば０.５に設定し（ステップＳ１５０６）、除去強度を弱めて除去処理する（ステップＳ１５０７）。また、除去対象物が除去処理対象範囲をはみ出していなければ、除去強度ｗを例えば１.０に設定し（ステップＳ１５０５）、除去処理する（ステップＳ１５０７）。
【００５４】
なお、上記図１３と図１４の処理を組み合わせてもよい。すなわち、図１４の警告表示１４０１のＯＫボタンのクリックによって除去処理が実行された場合には除去強度を低くするように構成してもよい。
【００５５】
以上のように、第２実施形態によれば、あらかじめ検出した顔および器官位置の情報を用いることで、ユーザが手動で指定した除去対象物の領域が、例えば顔の器官位置付近にあった場合や顔の領域外であった場合など、警告を表示することが可能となる。また、警告を表示するのではなく、顔の外部や器官領域付近では、除去強度を弱めて処理することにより、ユーザの操作ミスによる画質劣化を防止することが可能となる。
【００５６】
なお、第２実施形態では、第１実施形態による除去対象物の自動除去に加えてマニュアルによる除去対象物の除去を行うものとして説明した。しかしながら、図１３あるいは図１５のフローチャートにより説明した第２実施形態の処理を単独で用いるようにしてもよいことは明らかであろう。
【００５７】
＜第３実施形態＞
第１実施形態では、自動で顔のホクロやシミを除去する方法を説明した。しかし、人間の顔の中には、その人を特徴付ける上で重要なホクロも存在し、そのようなホクロは除去しないようにしたい場合もある。
【００５８】
そこで第３実施形態では、顔・器官位置検出部２０１において、図１６に示すようなＵＩ１６００を提供し、除去してはならないホクロ等を指定し、その領域情報を登録ボタン１６０１を押すことにより登録することができるようにする。複数の領域を登録できるようにしてよいことは言うまでもない。このＵＩ１６００によって登録された領域情報は、器官領域と同様に扱われる。すなわち、図４のステップＳ４０１でマスク情報を生成する際に、ＵＩ１６００によって登録した領域を器官楕円領域５０２と同様に扱ってマスク情報を生成する。第１実施形態で説明したように、除去処理部２０３では、器官楕円領域５０２以外を対象として除去処理を行うため、登録された領域には除去処理が施されないことになる。
【００５９】
以上のように、第３実施形態によれば、ユーザが除去したくない領域を登録することができ、自動除去処理において、登録された領域は除去処理を行わないようにすることが可能となる。
【００６０】
＜第４実施形態＞
第４実施形態では、ホクロやシミを除去する際に、ユーザが入力した被写体情報、例えば、被写体の性別や年齢に応じて、除去処理を適応的に変化させる方法について説明する。
【００６１】
図１７は、ユーザが被写体の条件を入力する際のユーザインターフェースの例を示している。図１７では、ユーザは被写体の性別１７０１と年齢１７０２を指定することができるようになっている。これらの情報に基づいて、例えば以下のように除去処理の動作を変化させる。
【００６２】
まず、性別が男性である場合、あご付近にはヒゲが存在する可能性があることから、例えば、図５の顔領域を示す顔楕円領域５０１内で、口の左右端部を結ぶ直線以下は、除去処理を行わない、あるいは、除去強度を弱めるように、ｗ＝０.５程度に設定する。逆に、男性の場合、髭剃り後が残っている場合も考えられるため、顔の下部領域を上部領域に比べ除去強度を強くするようにしてもよい。尚、一般的な顔検出アルゴリズムでは、目や口の位置を特定し、顔であるかどうかを判断するので、これらの情報から、顔の下部領域と上部領域を判断することができる。
【００６３】
また、入力された年齢が高い場合、顔の上部ではシワが多く存在する可能性が高いため、顔の上部においては、除去対象物を検出する際に、黒い孤立点ではなく黒い線を抽出するようにし、抽出した黒い線を除去するために除去領域の形状を楕円にし、横方向の黒い線を重点的に除去する処理も考えられる（顔の上部で処理半径を楕円に設定して処理することにより、黒い線が「重点的」に処理されることになる）。尚、楕円領域を処理する場合にも図９で説明したような方法を用いることができる。但し、楕円の場合、円の場合では一定であった半径Ｒが除去対象画素の位置によって変化する点が異なる。従って、楕円領域の処理の場合、中心と、中心から除去対象画素に向かう直線が楕円と交わる点との距離をＲとして、図９で説明した処理を実行する。
【００６４】
以上のように第４実施形態によれば、ユーザが被写体の情報を入力することにより、該情報に応じて除去処理を適応的に変化させることが可能となる。
【００６５】
＜その他実施形態＞
これまで説明した実施形態では、検出した器官位置情報を基にマスク情報を生成し、器官領域付近では除去対象物の検出を行わないようにすることで、器官領域付近では除去処理を行わないようにしたが、本発明はこれに限定されるものではない。例えば、除去処理部２０３内において除去処理を実行する際に、目の中心位置から除去対象物までの距離を算出し、距離が近いほど除去強度を徐々に弱めるように構成することも容易に可能である。この場合、マスク情報は不要となる。なお、この場合、複数検出されている器官位置との距離のうち、最小の距離を用いて除去強度を決定するようにしてもよい。
【００６６】
また、除去対象物検出部２０２で検出された除去対象物を図１２のようなＵＩの画像表示（１２０４）に重畳表示させ、マウス１０６により所望の除去対象物を選択して除去対象からはずすような構成を設けることも可能である。
また、上記実施形態では検出する器官として目と口を用いた例を説明したが、その他にも、耳や鼻等を検出して、これをマスク情報に反映させるようにしてもよいことは言うまでもない。
また、器官や顔の領域を楕円により近似したが、他の閉図形領域を用いてもよいことはいうまでも無い。例えば、顔の輪郭を忠実に抽出して得られた閉図形を用いることもできる。しかしながら、輪郭検出法では、顔の近くに肌色の壁などがあると、壁の部分も肌色とするなど、必ず誤検出が生じてしまう。また、顔輪郭は一般には複雑な形状を有するため、輪郭抽出等、処理量が増加することも考えられる。以上のことを鑑みると、単純に楕円で顔輪郭を近似することのメリットは大である。
【００６７】
また本発明は、プリンタエンジンへ出力すべき画像情報を作成するコンピュータ内のプリンタドライバソフト、もしくは、スキャナ等の光学読取り装置を動作させるためのドライバソフト、もしくはアプリケーションソフトとして内蔵することが効率的であるが、複写機、ファクシミリ、プリンタ本体等にハードウェア、及びソフトウェアとして内臓することにも効果がある。
【００６８】
また、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタ等）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置等）に適用しても良い。
【００６９】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７０】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００７１】
【図１】第１実施形態による画像処理装置のハードウエア構成を示したブロック図である。
【図２】第１実施形態における画像処理の機能構成例を示すブロック図である。
【図３】第１実施形態で想定する入力画像情報と器官位置を示した図である。
【図４】第１実施形態による除去対象物検出部の処理を示すフローチャートである。
【図５】マスク情報を説明するための図である。
【図６】境界線探索法を説明するための図である。
【図７】第１実施形態による除去処理部の処理を示すフローチャートである。
【図８】除去処理を説明するための図である。
【図９】除去処理を説明するための図である。
【図１０】除去処理を説明するための図である。
【図１１】ユーザが入力した処理強度とパラメータの関係を示すための図である。
【図１２】第２実施形態におけるユーザインターフェースの例を示す図である。
【図１３】第２実施形態における除去処理のフローチャートである。
【図１４】第２実施形態における警告表示の例を示す図である。
【図１５】第２実施形態における除去処理の変形例を示すフローチャートである。
【図１６】第３実施形態におけるユーザインターフェースの例を示す図である。
【図１７】第４実施形態におけるユーザインターフェースの例を示す図である。
【図１】
2006018467.tif 000003
【図２】
2006018467.tif 000004
【図３】
2006018467.tif 000005
【図４】
2006018467.tif 000006
【図５】
2006018467.tif 000007
【図６】
2006018467.tif 000008
【図７】
2006018467.tif 000009
【図８】
2006018467.tif 000010
【図９】
2006018467.tif 000011
【図１０】
2006018467.tif 000012
【図１１】
2006018467.tif 000013
【図１２】
2006018467.tif 000014
【図１３】
2006018467.tif 000015
【図１４】
2006018467.tif 000016
【図１５】
2006018467.tif 000017
【図１６】
2006018467.tif 000018
【図１７】
2006018467.tif 000019