JP2009258770A - 画像処理方法、画像処理装置、画像処理プログラム、撮像装置 - Google Patents
画像処理方法、画像処理装置、画像処理プログラム、撮像装置 Download PDFInfo
- Publication number
- JP2009258770A JP2009258770A JP2006215943A JP2006215943A JP2009258770A JP 2009258770 A JP2009258770 A JP 2009258770A JP 2006215943 A JP2006215943 A JP 2006215943A JP 2006215943 A JP2006215943 A JP 2006215943A JP 2009258770 A JP2009258770 A JP 2009258770A
- Authority
- JP
- Japan
- Prior art keywords
- image
- pixel
- face
- processing method
- degree
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/165—Detection; Localisation; Normalisation using facial parts and geometric relationships
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/61—Control of cameras or camera modules based on recognised objects
- H04N23/611—Control of cameras or camera modules based on recognised objects where the recognised objects include parts of the human body
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Geometry (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
- Studio Devices (AREA)
Abstract
【課題】特定種類の画像を、照明条件の様々なバリエーションに影響を受けずに高速に判定することができる画像処理方法を提供すること。
【解決手段】画像処理方法において、複数の画素からなる画像を取得し、顔の画像らしさの度合いを画素値および画素位置ごとに示すルックアップテーブルを格納し、取得した画像に基づいてエッジ画像を生成し、エッジ画像の画素の画素値および画素位置に基づきルックアップテーブルを用いてその画素における顔の画像らしさの度合いを求め、求めたエッジ画像の画素の画像らしさの度合いを積算し、積算した結果に基づき、入力画像が顔の画像であるかどうかを判定する。
【選択図】図2
【解決手段】画像処理方法において、複数の画素からなる画像を取得し、顔の画像らしさの度合いを画素値および画素位置ごとに示すルックアップテーブルを格納し、取得した画像に基づいてエッジ画像を生成し、エッジ画像の画素の画素値および画素位置に基づきルックアップテーブルを用いてその画素における顔の画像らしさの度合いを求め、求めたエッジ画像の画素の画像らしさの度合いを積算し、積算した結果に基づき、入力画像が顔の画像であるかどうかを判定する。
【選択図】図2
Description
本発明は、取得した画像において特定の画像があるかどうか判定する画像処理方法、画像処理装置、画像処理プログラム、撮像装置に関する。
デジタル画像処理において、撮影された画像の中から顔画像を検出する処理の需要は高い。例えば、デジタルカメラにおいて、検出された顔領域を好ましい色や階調に変換する処理や、ビデオ画像において、特定の人物の登場場面を抽出する処理や、監視カメラにおいて、不審者の画像を抽出する処理などがある。
顔を検出するための画像処理としては、入力画像を様々な倍率で縮小し、縮小した画像の様々な位置に顔判定領域を設定し、その顔判定領域が顔であるか所定の顔判定方法により判定する方法が一般的である。従来の顔判定方法としては、テンプレートマッチング、SVM(サポートベクターマシン)、ニューラルネットワーク、AdaBoostなどが提案されている。
テンプレートマッチングによる顔判定では、テンプレート顔画像と判定対象画像との一致度を算出することにより、顔判定を行う。SVMによる顔判定では、多くのサポートベクター(学習サンプルから選ばれたテンプレート顔画像と非顔画像)と判定対象画像との一致度を算出することにより、判定対象顔画像の様々なバリエーションに柔軟に対応することができる。
ニューラルネットワーク(3層パーセプトロン)による顔判定の動作はSVMに少し似ているが、サポートベクターの代わりに、学習によって求められた加重係数マップを複数用いる。AdaBoostによる顔判定の動作は、ニューラルネットワークに少し似ているが、学習によって求めた加重係数マップの代わりに、学習によって選ばれた矩形フィルターを複数用いる。
しかしながら、テンプレートマッチングによる顔判定では、判定対象顔画像の様々なバリエーションに柔軟に対応することができない。特に、テンプレート顔画像と判別対象顔画像との照明条件が異なる場合などには、正しく判定できない場合が多い。また、SVMによる顔判定では、多くのサポートベクターと判定対象画像との一致度を算出するために、膨大な処理時間が必要であるという問題がある。
また、ニューラルネットワークによる顔検出はSVMに比べれば高速であるものの、AdaBoostなどに比べると判定に必要な処理時間がやや長いという問題がある。また、矩形フィルターを用いたAdaBoostによる顔判定は、SVMやニューラルネットワークよりも高速であるが、判定対象領域を変更するたびに矩形フィルターを演算する必要があるため、処理時間が必要である。
請求項1の発明は、特定種類の画像であるかどうかを判定する画像処理方法に適用され、複数の画素からなる画像を取得し、特定種類の画像らしさの度合いを画素値および画素位置ごとに示すルックアップテーブルを格納し、取得した画像に基づいて判定用画像を生成し、判定用画像の画素の画素値および画素位置に基づき、ルックアップテーブルを用いて、その画素における特定種類の画像らしさの度合いを求め、求めた判定用画像の画素の画像らしさの度合いを積算し、積算した結果に基づき、入力画像が特定種類の画像であるかどうかを判定することを特徴とするものである。
請求項2の発明は、請求項1に記載の画像処理方法において、特定種類の画像は、顔の画像であることを特徴とするものである。
請求項3の発明は、請求項1または2に記載の画像処理方法において、判定用画像は、取得した画像のエッジ成分を抽出して生成されることを特徴とするものである。
請求項4の発明は、請求項1または2に記載の画像処理方法において、判定用画像は、取得した画像の局所的に周辺より画素値がへこんでいる凹構造のエッジ成分を抽出して生成されることを特徴とするものである。
請求項5の発明は、請求項1に記載の画像処理方法において、ルックアップテーブルは、特定種類の画像の特徴的な要素に対応する画素位置では、その画素のエッジ成分が大きい場合の特定種類の画像らしさの度合いを、エッジ成分が小さい場合の特定種類の画像らしさの度合いに比べて大きな値とし、特定種類の画像の特徴的な要素以外に対応する画素位置では、その画素のエッジ成分が大きい場合の特定種類の画像らしさの度合いを、エッジ成分が小さい場合の特定種類の画像らしさの度合いに比べて小さな値とすることを特徴とするものである。
請求項6の発明は、請求項2に記載の画像処理方法において、判定用画像は、取得した画像のエッジ成分を抽出して生成され、目鼻口のいずれかの領域に対応する画素位置では、その画素のエッジ成分が大きい場合の顔の画像らしさの度合いを、エッジ成分が小さい場合の顔の画像らしさの度合いに比べて大きな値とし、目鼻口以外の領域に対応する画素位置では、その画素のエッジ成分が大きい場合の顔の画像らしさの度合いを、エッジ成分が小さい場合の顔の画像らしさの度合いに比べて小さな値とすることを特徴とするものである。
請求項7の発明は、請求項1から6のいずれかに記載の画像処理方法において、ルックアップテーブルは、特定種類の画像に属する判定対象画像サンプル群と特定種類の画像に属さない非判定対象画像サンプル群とに基づく統計処理により生成されることを特徴とするものである。
請求項8の発明は、請求項7に記載の画像処理方法において、統計処理において、判定用画像を生成するときと等価な処理により、判定対象画像サンプル群に基づいて第1の画像サンプル群を生成し、非判定対象画像サンプル群に基づいて第2の画像サンプル群を生成し、第1の画像サンプル群の画素位置(x,y)における画素値がEとなる頻度P1(x,y)(E)と、第2の画像サンプル群の画素位置(x,y)における画素値がEとなる頻度P2(x,y)(E)とを求め、判定用画像の画素位置(x,y)における画素値Eに対してその画素における特定種類の画像らしさの度合いV(x,y)を、V(x,y) = L(x,y)(E)で与える画素位置(x,y)におけるルックアップテーブルL(x,y)(E)を、L(x,y)(E) = f( P1(x,y)(E) , P2(x,y)(E) ) により生成し、関数f( P1(x,y)(E) , P2(x,y)(E) )は、P1(x,y)(E)について実質的に広義の単調増加関数であり、P2(x,y)(E)について実質的に広義の単調減少関数であることを特徴とするものである。
請求項9の発明は、請求項8に記載の画像処理方法において、関数f( P1(x,y)(E) , P2(x,y)(E) )は、f( P1(x,y)(E) , P2(x,y)(E) ) = log{ (P1(x,y)(E)+ε1) / (P2(x,y)(E)+ε2) }であり、ε1とε2は所定の定数であることを特徴とするものである。
請求項10の発明は、請求項1に記載の画像処理方法において、コントラストの程度に応じた複数のルックアップテーブルを格納し、取得した画像のコントラストを算出し、複数のルックアップテーブルからコントラストに応じたルックアップテーブルを選択することを特徴とするものである。
請求項11の発明は、特定種類の画像であるかどうかを判定する画像処理方法に適用され、複数の画素からなる画像を取得し、特定種類の画像らしさの度合いを画素値および画素位置ごとに示すルックアップテーブルを格納し、複数の異なる縮小倍率により取得した画像の複数の縮小画像を生成し、複数の縮小画像に基づいて判定用画像を生成し、複数の縮小画像の1つである第1の縮小画像に対して判定対象領域を設定し、判定対象領域の画素の画素値および判定対象領域内の画素位置に基づき、ルックアップテーブルを用いて、その画素における特定種類の画像らしさの度合いを求め、求めた判定対象領域の画素の特定種類の画像らしさの度合いを積算し、積算した結果に基づき、取得した画像内の判定対象領域に対応する画像が特定種類の画像であるかどうかを判定することを特徴とするものである。
請求項12の発明は、請求項11に記載の画像処理方法において、第1の縮小画像よりもさらに縮小された第2の縮小画像に対して、判定対象領域に対応する第2の判定対象領域をさらに設定し、特定種類の画像らしさの度合いを画素値および第2の判定対象領域に対応した画素位置ごとに示す第2のルックアップテーブルをさらに格納し、第2の判定対象領域の画素の画素値および第2の判定対象領域内の画素位置に基づき、第2のルックアップテーブルを用いて、その画素における特定種類の画像らしさの度合いを求め、求めた第2の判定対象領域の画素の特定種類の画像らしさの度合いを積算し、判定対象領域の画素の特定種類の画像らしさの度合いの積算結果および第2の判定対象領域の画素の特定種類の画像らしさの度合いの積算結果に基づき、取得した画像内の判定対象領域に対応する画像が特定種類の画像であるかどうかを判定することを特徴とするものである。
請求項13の発明は、画像処理プログラムに適用され、請求項1から12のいずれかに記載の画像処理方法をコンピュータに実行させる画像処理プログラムとするものである。
請求項14の発明は、画像処理装置に適用され、請求項13に記載の画像処理プログラムを搭載する画像処理装置とするものである。
請求項15の発明は、撮像装置に適用され、請求項13に記載の画像処理プログラムを搭載する撮像装置とするものである。
請求項2の発明は、請求項1に記載の画像処理方法において、特定種類の画像は、顔の画像であることを特徴とするものである。
請求項3の発明は、請求項1または2に記載の画像処理方法において、判定用画像は、取得した画像のエッジ成分を抽出して生成されることを特徴とするものである。
請求項4の発明は、請求項1または2に記載の画像処理方法において、判定用画像は、取得した画像の局所的に周辺より画素値がへこんでいる凹構造のエッジ成分を抽出して生成されることを特徴とするものである。
請求項5の発明は、請求項1に記載の画像処理方法において、ルックアップテーブルは、特定種類の画像の特徴的な要素に対応する画素位置では、その画素のエッジ成分が大きい場合の特定種類の画像らしさの度合いを、エッジ成分が小さい場合の特定種類の画像らしさの度合いに比べて大きな値とし、特定種類の画像の特徴的な要素以外に対応する画素位置では、その画素のエッジ成分が大きい場合の特定種類の画像らしさの度合いを、エッジ成分が小さい場合の特定種類の画像らしさの度合いに比べて小さな値とすることを特徴とするものである。
請求項6の発明は、請求項2に記載の画像処理方法において、判定用画像は、取得した画像のエッジ成分を抽出して生成され、目鼻口のいずれかの領域に対応する画素位置では、その画素のエッジ成分が大きい場合の顔の画像らしさの度合いを、エッジ成分が小さい場合の顔の画像らしさの度合いに比べて大きな値とし、目鼻口以外の領域に対応する画素位置では、その画素のエッジ成分が大きい場合の顔の画像らしさの度合いを、エッジ成分が小さい場合の顔の画像らしさの度合いに比べて小さな値とすることを特徴とするものである。
請求項7の発明は、請求項1から6のいずれかに記載の画像処理方法において、ルックアップテーブルは、特定種類の画像に属する判定対象画像サンプル群と特定種類の画像に属さない非判定対象画像サンプル群とに基づく統計処理により生成されることを特徴とするものである。
請求項8の発明は、請求項7に記載の画像処理方法において、統計処理において、判定用画像を生成するときと等価な処理により、判定対象画像サンプル群に基づいて第1の画像サンプル群を生成し、非判定対象画像サンプル群に基づいて第2の画像サンプル群を生成し、第1の画像サンプル群の画素位置(x,y)における画素値がEとなる頻度P1(x,y)(E)と、第2の画像サンプル群の画素位置(x,y)における画素値がEとなる頻度P2(x,y)(E)とを求め、判定用画像の画素位置(x,y)における画素値Eに対してその画素における特定種類の画像らしさの度合いV(x,y)を、V(x,y) = L(x,y)(E)で与える画素位置(x,y)におけるルックアップテーブルL(x,y)(E)を、L(x,y)(E) = f( P1(x,y)(E) , P2(x,y)(E) ) により生成し、関数f( P1(x,y)(E) , P2(x,y)(E) )は、P1(x,y)(E)について実質的に広義の単調増加関数であり、P2(x,y)(E)について実質的に広義の単調減少関数であることを特徴とするものである。
請求項9の発明は、請求項8に記載の画像処理方法において、関数f( P1(x,y)(E) , P2(x,y)(E) )は、f( P1(x,y)(E) , P2(x,y)(E) ) = log{ (P1(x,y)(E)+ε1) / (P2(x,y)(E)+ε2) }であり、ε1とε2は所定の定数であることを特徴とするものである。
請求項10の発明は、請求項1に記載の画像処理方法において、コントラストの程度に応じた複数のルックアップテーブルを格納し、取得した画像のコントラストを算出し、複数のルックアップテーブルからコントラストに応じたルックアップテーブルを選択することを特徴とするものである。
請求項11の発明は、特定種類の画像であるかどうかを判定する画像処理方法に適用され、複数の画素からなる画像を取得し、特定種類の画像らしさの度合いを画素値および画素位置ごとに示すルックアップテーブルを格納し、複数の異なる縮小倍率により取得した画像の複数の縮小画像を生成し、複数の縮小画像に基づいて判定用画像を生成し、複数の縮小画像の1つである第1の縮小画像に対して判定対象領域を設定し、判定対象領域の画素の画素値および判定対象領域内の画素位置に基づき、ルックアップテーブルを用いて、その画素における特定種類の画像らしさの度合いを求め、求めた判定対象領域の画素の特定種類の画像らしさの度合いを積算し、積算した結果に基づき、取得した画像内の判定対象領域に対応する画像が特定種類の画像であるかどうかを判定することを特徴とするものである。
請求項12の発明は、請求項11に記載の画像処理方法において、第1の縮小画像よりもさらに縮小された第2の縮小画像に対して、判定対象領域に対応する第2の判定対象領域をさらに設定し、特定種類の画像らしさの度合いを画素値および第2の判定対象領域に対応した画素位置ごとに示す第2のルックアップテーブルをさらに格納し、第2の判定対象領域の画素の画素値および第2の判定対象領域内の画素位置に基づき、第2のルックアップテーブルを用いて、その画素における特定種類の画像らしさの度合いを求め、求めた第2の判定対象領域の画素の特定種類の画像らしさの度合いを積算し、判定対象領域の画素の特定種類の画像らしさの度合いの積算結果および第2の判定対象領域の画素の特定種類の画像らしさの度合いの積算結果に基づき、取得した画像内の判定対象領域に対応する画像が特定種類の画像であるかどうかを判定することを特徴とするものである。
請求項13の発明は、画像処理プログラムに適用され、請求項1から12のいずれかに記載の画像処理方法をコンピュータに実行させる画像処理プログラムとするものである。
請求項14の発明は、画像処理装置に適用され、請求項13に記載の画像処理プログラムを搭載する画像処理装置とするものである。
請求項15の発明は、撮像装置に適用され、請求項13に記載の画像処理プログラムを搭載する撮像装置とするものである。
本発明は以上のように構成しているので、特定種類の画像を、照明条件の様々なバリエーションに影響を受けずに高速に判定することができる。
−第1の実施の形態−
図1は、本発明の一実施の形態である画像処理装置を示す図である。画像処理装置は、パーソナルコンピュータ1で実現される。パーソナルコンピュータ1は、デジタルカメラ2、CD−ROMなどの記録媒体3、他のコンピュータ4などと接続され、各種の画像(画像データ)の提供を受ける。パーソナルコンピュータ1は、提供された画像に対して、以下に説明する画像処理を行う。コンピュータ4は、インターネットやその他の電気通信回線5を経由して接続される。
図1は、本発明の一実施の形態である画像処理装置を示す図である。画像処理装置は、パーソナルコンピュータ1で実現される。パーソナルコンピュータ1は、デジタルカメラ2、CD−ROMなどの記録媒体3、他のコンピュータ4などと接続され、各種の画像(画像データ)の提供を受ける。パーソナルコンピュータ1は、提供された画像に対して、以下に説明する画像処理を行う。コンピュータ4は、インターネットやその他の電気通信回線5を経由して接続される。
パーソナルコンピュータ1が画像処理のために実行するプログラムは、図1の構成と同様に、CD−ROMなどの記録媒体や、インターネットやその他の電気通信回線を経由した他のコンピュータから提供され、パーソナルコンピュータ1内にインストールされる。パーソナルコンピュータ1は、CPU(不図示)およびその周辺回路(不図示)から構成され、CPUがインストールされたプログラムを実行する。
本実施の形態のパーソナルコンピュータ1は、撮影された画像の中から顔画像を検出する画像処理を行う。具体的には、入力した画像に基づきエッジ成分を抽出してエッジ画像を生成し、生成したエッジ画像に基づき顔の画像があるかどうかを判定する。本実施の形態における処理では、このエッジ成分の抽出方法およびエッジ画像に基づく顔の判定方法に特徴を有する。
なお、以下では、画像に対して画像処理を行うという表現をするが、実際には入力した画像データに対して画像処理を行うことを意味する。また、本実施の形態で言うエッジとは、輝度値や画素値が周囲より小さくへこんでいる箇所(領域、画素)、周囲より大きく出っ張っている(突出している)箇所(領域、画素)、段差になっている箇所(領域、画素)のことを言う。特に、周囲よりへこんでいる箇所(領域、画素)を凹構造のエッジ、周囲より出っ張っている箇所(領域、画素)を凸構造のエッジと言う。
以下、本実施の形態のパーソナルコンピュータ1が撮影された画像の中から顔画像を検出する画像処理について詳細に説明する。図2は、パーソナルコンピュータ1が実行する画像処理プログラムのフローチャートを示す図である。
ステップS1では、デジタルカメラなどで撮影(撮像)した顔を検出する対象の画像(画像データ)を入力(取得)する。入力画像の各画素はR,G,Bの各色成分を含み、各色成分の範囲は0〜255とする。ステップS2では、入力画像のR,G,Bに基づき、輝度画像Yを次の式で生成する。すなわち、輝度画像Y面を生成する。
Y=(R+2G+B)/4
Y=(R+2G+B)/4
ステップS3では、生成した輝度画像を階層的に縮小して出力する。例えば、0〜31までの整数nに対して縮小倍率κを0.9n で与え、その32通りの縮小倍率κで縮小された輝度画像を出力する。なお、縮小方法は、例えばCubic変倍や線形変倍を用いればよい。このように複数通りの縮小画像を生成するのは、入力した画像にはどのようなサイズの顔画像があるかどうか不明であり、あらゆるサイズの顔の画像に対応できるようにするためである。
ステップS4では、縮小されたそれぞれの輝度画像Y(x,y)から4種類のエッジ画像E1(x,y)〜E4(x,y)を以下の手順で生成する。以下では、x方向を画像の横方向あるいは水平方向、y方向を縦方向あるいは鉛直方向とする。
まず、以下の式より、縦方向に平滑化した画像YLV(x,y)と横方向に平滑化した画像YLH(x,y)を生成する。縦方向のエッジ成分を抽出するためには、横方向を平滑化した画像データを使用し、横方向のエッジ成分を抽出するためには、縦方向を平滑化した画像データを使用するのが好ましいからである。
YLV(x,y)={Y(x,y−1)+2×Y(x,y)+Y(x,y+1)}/4
YLH(x,y)={Y(x−1,y)+2×Y(x,y)+Y(x+1,y)}/4
YLV(x,y)={Y(x,y−1)+2×Y(x,y)+Y(x,y+1)}/4
YLH(x,y)={Y(x−1,y)+2×Y(x,y)+Y(x+1,y)}/4
次に、横方向を平滑化した画像YLH(x,y)を使用して、以下の式より、縦方向のエッジ画像E1(x,y)を生成する。なお、エッジ画像の各画素はエッジ画素と言う。
E1´(x,y)=Min(YLH(x,y−1), YLH(x,y+2))
−Min(YLH(x,y), YLH(x,y+1))
E1(x,y)=γ(E1´(x,y))
E1´(x,y)=Min(YLH(x,y−1), YLH(x,y+2))
−Min(YLH(x,y), YLH(x,y+1))
E1(x,y)=γ(E1´(x,y))
次に、以下の式より、縦方向のエッジ画像E2(x,y)を生成する。
E2´(x,y)=|YLH(x,y−1)−YLH(x,y)|
+|YLH(x,y+1)−YLH(x,y)|
E2(x,y)=γ(E2´(x,y))
E2´(x,y)=|YLH(x,y−1)−YLH(x,y)|
+|YLH(x,y+1)−YLH(x,y)|
E2(x,y)=γ(E2´(x,y))
次に、縦方向を平滑化した画像YLV(x,y)を使用して、以下の式より、横方向のエッジ画像E3(x,y)を生成する。
E3´(x,y)=Min(YLV(x−1,y), YLV(x+2,y))
−Min(YLV(x,y), YLV(x+1,y))
E3(x,y)=γ(E3´(x,y))
E3´(x,y)=Min(YLV(x−1,y), YLV(x+2,y))
−Min(YLV(x,y), YLV(x+1,y))
E3(x,y)=γ(E3´(x,y))
次に、以下の式より、横方向のエッジ画像E4(x,y)を生成する。
E4´(x,y)=|YLV(x−1,y)−YLV(x,y)|
+|YLV(x+1,y)−YLV(x,y)|
E4(x,y)=γ(E4´(x,y))
E4´(x,y)=|YLV(x−1,y)−YLV(x,y)|
+|YLV(x+1,y)−YLV(x,y)|
E4(x,y)=γ(E4´(x,y))
ここで、Min()は、()の中の最小の値を戻す関数である。また、γ(E)は、γ変換とクリッピングを行う関数であり、以下の演算を行い、0〜31の整数を出力する。このMIN()処理は、非線形フィルタ処理である。また、γ変換やクリッピング処理を含めて非線形フィルタ処理と言ってもよい。
E<0の場合 γ(E)=0
E>63の場合 γ(E)=31
0≦E≦63の場合 γ(E)=(int)(4×√E)
E<0の場合 γ(E)=0
E>63の場合 γ(E)=31
0≦E≦63の場合 γ(E)=(int)(4×√E)
上記エッジ画像の生成について、図3を参照してさらに詳しく説明する。図3は、エッジ抽出対象画素と周辺画素とを座標xyで表した図である。上記E1´(x,y)は、輝度画像YLH(x,y)面において、縦方向4画素YLH(x,y−1)、YLH(x,y)、YLH(x,y+1)、YLH(x,y+2)のうち、対象画素(x,y)を基準に、外側2画素YLH(x,y−1)、YLH(x,y+2)の最小値と内側2画素YLH(x,y)、YLH(x,y+1)の最小値の差を求めている。
E1´(x,y)の値が正の値を示すことは、対象画素(x,y)近辺の値が、縦方向周辺画素の値より小さい、すなわち画素値が縦方向の周辺よりへこんでいることを示す。従って、このようにして生成したE1(x,y)の値を画素値として取り扱い、生成された画像を縦方向輝度凹部画像と言う。
上記E2´(x,y)は、輝度画像YLH(x,y)面において、対象画素(x,y)と縦方向に隣接する画素との輝度値の差分を足し込んだ値を示す。すなわち、縦方向隣接画素との間で輝度値の変化が大きい場合に大きな値が生成される。従って、このようにして生成したE2(x,y)の値を画素値として取り扱い、生成された画像を縦方向隣接画素差分画像と言う。縦方向隣接画素差分画像は、凹部構造のエッジ、凸部構造のエッジ、段差のエッジを区別なく検出する。
上記E3´(x,y)およびE3(x,y)、E4´(x,y)およびE4(x,y)は、横方向のエッジ画像を生成するためのものである。上記E1´(x,y)およびE1(x,y)、E2´(x,y)およびE2(x,y)に対して、縦と横をひっくり返して考え、後は同様に演算するものである。従って、このようにして生成されたE3(x,y)を横方向輝度凹部画像、E4(x,y)を横方向隣接画素差分画像と言う。
図4は、輝度の様々な構造に対して輝度凹部画像E1(x,y)を作成した結果を示す図である。図4(a)は輝度が凹んでいる場合であり、図4(b)は輝度が突出している場合であり、図4(c)は輝度が段差になっている場合である。図4を見ると、輝度が凹んでいる場合のみ輝度凹部画像が正の値を持つことがわかる。従って、輝度凹部画像E´の負の値を0にクリッピングすれば、輝度の凹みだけに反応するエッジ画像E1(x,y)が生成される。
この輝度凹部画像によると、目鼻口などの局所的に暗い箇所に特に良く反応する。図5は、具体的な顔の輝度画像について上記4種類のエッジ画像E1(x,y)〜E4(x,y)を生成した例を示す図である。実際、輝度凹部画像は、目鼻口の位置に鋭いピークを持つ。特に、図5の縦方向輝度凹部画像E1では、目、鼻の穴、口などに反応し、その中でも目、鼻の穴などには強く反応し白くなっている。すなわち、その位置のE1の値が大きな値となっている。従って、このような輝度凹部画像を解析することにより、顔を高精度に検出することができる。ただし、輝度凹部画像だけを用いるのではなく、従来の方法で作成したエッジ画像も合わせて用いることが望ましい。
なお、上記エッジ画像E´をガンマ変換した理由は、エッジ量E´を適切な特徴量Eに変換するためである。画像解析において、ほとんどエッジがない箇所での微妙なエッジ量の違いは、大きなエッジがある箇所での多少のエッジ量の違いよりも大きな意味を持つ。エッジ量E´に対してガンマ変換を施すことにより上記の効果が実現され、ほとんどエッジがない箇所でのエッジ量の違いは特徴量Eの大きな違いに変換され、大きなエッジがある箇所でのエッジ量の違いは特徴量Eの小さな違いに変換される。
次に、図2に戻って、ステップS5では、縮小した画像の1画素おきに19×19画素の顔判定対象領域を設定し、その領域におけるエッジ画像の部分画像を出力する。これをすべての縮小画像において行う。19×19画素の顔判定対象領域は、その領域が顔である場合に目や鼻や口などが2画素程度で検出できるのに適したサイズである。
ステップS6では、ステップ5で出力したエッジ画像の各部分画像に対して、この領域が顔の画像であるかどうか判定する。本実施の形態では、この顔の画像の判定を以下に説明する手法により行う。
まず、エッジ画像E1(x,y)の部分画像の各画素位置(x,y)(0≦x≦18、0≦y≦18)について、次の式に基づいてその位置の顔らしさV1(x,y)を生成する。顔らしさV1(x,y)は、各画素位置で顔らしさを数値化したもので、顔らしさの度合いや程度を示すものである。V1(x,y)は、顔として尤もらしい度合いを表す尤度といってもよい。
V1(x,y)=L1(x,y)(E1(x,y))
ここで、L1(x,y)(E)は、各画素位置(x,y)(0≦x≦18、0≦y≦18)について、後述する統計処理によりあらかじめ作成されているルックアップテーブルであり、画素位置(x,y)のエッジE1(x,y)がEである時のその箇所の顔らしさを表す。
V1(x,y)=L1(x,y)(E1(x,y))
ここで、L1(x,y)(E)は、各画素位置(x,y)(0≦x≦18、0≦y≦18)について、後述する統計処理によりあらかじめ作成されているルックアップテーブルであり、画素位置(x,y)のエッジE1(x,y)がEである時のその箇所の顔らしさを表す。
そして、生成した顔らしさV1(x,y)を全画素(x,y)(0≦x≦18、0≦y≦18)について積算し、顔らしさVSUM1を算出する。
図6は、具体的なエッジ画像について上記の処理を行った例を示す図である。図6の顔らしさ画像では、顔らしい箇所が白く表示され、顔らしくない箇所が黒く表示されている。図6(a)に示す顔のエッジ画像から生成した顔らしさ画像は、全体的に大きな値を持つ。すなわち、全体的に白っぽい画像となる。しかし、図6(b)に示す非顔のエッジ画像から生成した顔らしさ画像は所々小さな値を持つ。すなわち、所々黒っぽくなった画像となる。
図6(b)の非顔の例では、目の間、鼻、口の両横に対応する領域が顔らしくないとされて、顔らしさ画像ではその領域の画素値は小さな値となり黒い画像となっている。従って、非顔画像の顔らしさ画像を全画素積算した値VSUM1は小さな値になる。
図7は、ルックアップテーブルL1(x,y)(E)の具体的な値をエッジの大きさ毎に表した図である。図7では、顔らしさの値が大きいほど白く表示されている。図7において、左側はエッジが小さい時の顔らしさであり、右側はエッジが大きい時の顔らしさである。なお、ルックアップテーブルL1(x,y)(E)の全ての値を図示するなら、前述の通りエッジは0〜31の値で生成されているので、L1(x,y)(0)〜L1(x,y)(31)の32通りの図ができる。しかし、図7では、図示の便宜上そのうちの8通りのみ表示している。
なお、図7のルックアップテーブルL1(x,y)(E)は、具体的な値をエッジの大きさ毎に視覚的に表した図である。実際には、画素位置(x,y)を引数とした画素値のテーブルが、エッジの値毎にメモリに格納されている。すなわち、32個の画素位置(x,y)を引数とした画素値のテーブルがメモリに格納されている。
図7において、左側の図はエッジが小さい時の顔らしさを表す。左側の図を見ると、目、鼻、口の箇所の顔らしさが小さな値になっている。これは、目、鼻、口の箇所のエッジが小さい場合には、その箇所は顔らしくないということを表している。例えば、図6(a)の非顔の例では、鼻に対応する箇所のエッジが小さいので、その箇所は顔らしくないとされる。
また、図7の右側の図はエッジが大きい時の顔らしさを表す。右側の図を見ると、目、鼻、口以外の箇所の顔らしさが小さな値になっている。これは、目、鼻、口以外の箇所のエッジが大きい場合には、その箇所は顔らしくないということを表している。例えば、図6(a)の非顔の例では、目の間と口の両横に対応する箇所のエッジが大きいので、その箇所は顔らしくないとされる。
すなわち、顔の画像を特定種類の画像とし、目、鼻、口などを特定種類の画像の特徴的な要素であると考えると、特定種類の画像の特徴的な要素に対応する画素位置では、その画素のエッジ成分が大きい場合の特定種類の画像らしさの度合いを、エッジ成分が小さい場合の特定種類の画像らしさの度合いに比べて大きな値としている。また、特定種類の画像の特徴的な要素以外に対応する画素位置では、その画素のエッジ成分が大きい場合の特定種類の画像らしさの度合いを、エッジ成分が小さい場合の特定種類の画像らしさの度合いに比べて小さな値としている。
上記ルックアップテーブルを参照する処理を整理すると、まず、エッジ画像E1(x,y)の部分画像において、x=0、y=0のエッジE1の値を得る。次に、このエッジE1の値に相当するルックアップテーブルL1(x,y)(E1)を32個のルックアップテーブルの中から決める。ルックアップテーブルL1(x,y)(E1)が決まると、このルックアップテーブルL1(x,y)(E1)の画素位置(0,0)の値を得る。これが、エッジ画像E1(x,y)の画素位置(0,0)の顔らしさの値である。この処理を、x=0、y=0の画素からx=18、y=18の画素まで順次行い、顔らしさ画像V1(x,y)を得る。そして、V1(x,y)をすべて積算してVsum1を得る。
以上の処理により、エッジ画像E1(x,y)に基づいて部分画像の顔らしさVsum1が生成される。そして、エッジ画像E2(x,y)〜E4(x,y)に基づいて部分画像の顔らしさVsum2〜Vsum4を生成する処理も同様に行う。
図8は、図2のステップS6の顔判定の処理において、部分画像の顔らしさVsum1〜Vsum4を求めた後の処理のフローチャートを示す図である。ステップS6の顔判定処理では、上記に説明したように、顔らしさVsum1〜Vsum4を段階的に生成し、それらを積算した評価値が閾値よりも大きければ顔とする。ただし、評価値を閾値と比較する処理を図8に示すように各段階において行うことにより、明らかに顔ではない画像を早い段階で除外して、効率的な処理を行えるようにしている。
まず、ステップS11では、部分画像が顔の画像であるかどうかを判定する評価値を、エッジ画像E1(x,y)の顔らしさVsum1とする。ステップS12では、評価値が所定の閾値th1より大きいかどうかを判定し、この評価値が閾値th1より大きければステップS13に進み、この評価値が閾値th1より大きくなければ、部分画像は顔の画像でないとして、対象の部分画像の顔判定の処理を終了する。
ステップS13では、評価値をステップS11の評価値にエッジ画像E2(x,y)の顔らしさVsum2を足した値とする。ステップS14では、この評価値が所定の閾値th2より大きいかどうかを判定し、評価値が閾値th2より大きければステップS15に進み、この評価値が閾値th2より大きくなければ、部分画像は顔の画像でないとして、対象の部分画像の顔判定の処理を終了する。
ステップS15では、評価値をステップS13の評価値にエッジ画像E3(x,y)の顔らしさVsum3を足した値とする。ステップS16では、この評価値が所定の閾値th3より大きいかどうかを判定し、評価値が閾値th3より大きければステップS17に進み、この評価値が閾値th3より大きくなければ、部分画像は顔の画像でないとして、対象の部分画像の顔判定の処理を終了する。
ステップS17では、評価値をステップS15の評価値にエッジ画像E4(x,y)の顔らしさVsum4を足した値とする。ステップS18では、この評価値が所定の閾値th4より大きいかどうかを判定する。ステップS18において、評価値が閾値th4より大きければ、最終的にこの部分画像は顔の画像であると判定する。この評価値が閾値th4より大きくなければ、部分画像は顔の画像でないとして、対象の部分画像の顔判定の処理を終了する。
以上説明した部分画像の顔判定処理を、各縮小画像において、1ビットずつずらした各部分画像についてすべて行い、顔の画像と判定できる部分画像をすべて抽出し、ステップS7に進む。
ステップS7では、ステップ6によりある部分画像が顔であると判定された場合には、その部分画像の入力画像に対する顔の大きさSと座標(X,Y)を出力する。S,X,Yは、縮小画像における顔のサイズS´=19と、顔とされた領域の座標(X´,Y´)と縮小倍率κとを用いて、次の式で与えられる。
S = S´ / κ
X = X´ / κ
Y = Y´ / κ
S = S´ / κ
X = X´ / κ
Y = Y´ / κ
以上のようにして、入力画像に顔の画像がある場合は、その顔の画像の位置と大きさが検出されて出力される。
<統計処理>
次に、前述した統計処理について説明する。すなわち、画素位置(x,y)のエッジE1(x,y)がEであるときのその画素の顔らしさL1(x,y)(E)を求める方法を説明する。図9は、この顔らしさL1(x,y)(E)を求める処理のフローチャートを示す図である。この処理は、パーソナルコンピュータ1において実行される。
次に、前述した統計処理について説明する。すなわち、画素位置(x,y)のエッジE1(x,y)がEであるときのその画素の顔らしさL1(x,y)(E)を求める方法を説明する。図9は、この顔らしさL1(x,y)(E)を求める処理のフローチャートを示す図である。この処理は、パーソナルコンピュータ1において実行される。
ステップS21では、数百人以上の顔の画像を取得する。すなわち、数百人以上の顔をデジタルカメラ等で撮影(撮像)し、その画像(画像データ)を取得する。取得する画像は、図2のステップS1で入力する画像と同様な色成分で構成された画像である。ステップS22では、顔が撮影されている画像を、顔領域の大きさが19×19画素になるように変倍して、顔領域を切り出した部分画像を顔画像サンプル群とする。
ステップS23では、19×19画素の非顔画像サンプル群を、数百パターン以上取得する。これは、デジタルカメラで撮影した顔以外の画像から適宜抽出して非顔画像サンプル群とする。顔が写っている画像から、顔の領域を避けて抽出するようにしてもよい。この場合は、モニタに写された画像から、ユーザが適宜非顔画像の領域を指定すればよい。
ステップS24では、顔画像サンプル群からエッジ成分を抽出して、顔エッジ画像サンプル群を生成する。この処理は、顔検出処理においてエッジ画像E1(x,y)を生成する処理と同様に行う。ステップS25では、非顔画像サンプル群からエッジ成分を抽出して、非顔エッジ画像サンプル群を生成する。この処理も、顔検出処理においてエッジ画像E1(x,y)を生成する処理と同様に行う。
ステップS26では、顔エッジ画像サンプル群について、(x,y)のエッジがEとなる頻度P顔(x,y,E)を求める。すなわち、画素(x,y)の値がEとなる画像がいくつあるかをカウントする。ステップS27では、非顔エッジ画像サンプル群について、同様に、(x,y)のエッジがEとなる頻度P非顔(x,y,E)を求める。
ステップS28では、画素位置(x,y)のエッジE1(x,y)がEであるときのその画素の顔らしさL1(x,y)(E)を、次の式によって算出する。
L1(x,y)(E)=log{(P顔(x,y,E)+ε1)/(P非顔(x,y,E)+ε2)}
ここで、ε1とε2は所定の定数であり、対数の発散や過学習を抑制するために導入している。ε1の値はP顔(x,y,E)の平均的な値の1000分の1程度に設定すればよく、ε2の値はε1の値の数十倍に設定すればよい。
L1(x,y)(E)=log{(P顔(x,y,E)+ε1)/(P非顔(x,y,E)+ε2)}
ここで、ε1とε2は所定の定数であり、対数の発散や過学習を抑制するために導入している。ε1の値はP顔(x,y,E)の平均的な値の1000分の1程度に設定すればよく、ε2の値はε1の値の数十倍に設定すればよい。
上記L1(x,y)(E)を求める式において、log{(P顔(x,y,E)+ε1)}は、単調増加関数であり、log{1/(P非顔(x,y,E)+ε2)}は、単調減少関数である。すなわち、顔らしさL1(x,y)(E)は、画素位置(x,y)のエッジE1(x,y)がEである顔画像サンプルの分布が増加していく方向にその値は単調増加し、画素位置(x,y)のエッジE1(x,y)がEである非顔画像サンプルの分布が増加していく方向にその値は単調減少していく関数である。なお、画素位置(x,y)のエッジE1(x,y)がEである顔画像サンプルの分布、および、画素位置(x,y)のエッジE1(x,y)がEである非顔画像サンプルの分布は、通常正規分布している。
エッジ画像E2(x,y)〜E4(x,y)を顔らしさに変換するルックアップテーブルL2(x,y)(E)〜L4(x,y)(E)を生成するには、上記ステップS24、ステップS25のエッジ成分抽出処理を、顔検出処理におけるエッジ画像E2(x,y)〜E4(x,y)を生成する処理と同様にすればよい。
以上説明した第1の実施の形態の処理を行うと、次のような効果を奏する。
(1)顔画像の目、鼻、口などの位置は周辺に比べて局所的に暗い。従来のエッジ抽出方法では、エッジ構造が局所的に暗い構造であるか、局所的に明るい構造であるか、あるいはそれ以外の構造であるかを識別することはできなかった。しかし、上記のように凹部構造のエッジを検出し、エッジ画像である凹部画像を生成することにより顔画像の局所的に暗い構造である目、鼻、口などを適切に抽出することができる。その結果、顔の画像を正確に判定することができる。
(1)顔画像の目、鼻、口などの位置は周辺に比べて局所的に暗い。従来のエッジ抽出方法では、エッジ構造が局所的に暗い構造であるか、局所的に明るい構造であるか、あるいはそれ以外の構造であるかを識別することはできなかった。しかし、上記のように凹部構造のエッジを検出し、エッジ画像である凹部画像を生成することにより顔画像の局所的に暗い構造である目、鼻、口などを適切に抽出することができる。その結果、顔の画像を正確に判定することができる。
(2)輝度凹部画像によると、目鼻口などの局所的に暗い箇所に特に良く反応する。実際、輝度凹部画像は、目鼻口の位置に鋭いピークを持つ。従って、このような輝度凹部画像を解析することにより、顔を高精度に検出することができる。本実施の形態では、輝度凹部画像だけを用いるのではなく、従来の方法で作成したエッジ画像も合わせて用いるようにしているので、さらにより精度の高い顔の判定を可能としている。
(3)上記エッジE´エッジをガンマ変換した理由は、エッジ量E´を適切な特徴量Eに変換するためである。画像解析において、ほとんどエッジがない箇所での微妙なエッジ量の違いは、大きなエッジがある箇所での多少のエッジ量の違いよりも大きな意味を持つ。エッジ量E´に対してガンマ変換を施すことにより、ほとんどエッジがない箇所でのエッジ量の違いは特徴量Eの大きな違いに変換され、大きなエッジがある箇所でのエッジ量の違いは特徴量Eの小さな違いに変換される。これにより、エッジ量の違いが画像の構造の違いに一致するようになる。この結果、顔判定の精度も高くなる。
(4)上記実施の形態の図4から明らかなように、輝度が凹んでいる場合のみ輝度凹部画像が正の値を持つことがわかる。従って、本実施の形態では、輝度凹部画像E´の負の値を0にクリッピングするようにした。これにより、輝度の凹みだけに反応するエッジ画像E1(x,y)が生成され、エッジ画像E1を使用する処理がしやすくなる。
(5)エッジ画像の画素値をルックアップテーブルを用いて顔らしさに変換して積算するという単純で高速な処理により、顔の画像を検出することができる。また、エッジ画像を判定することにより、画像を撮影する際の照明条件の影響を抑制する効果がある。
−第2の実施の形態−
第2の実施の形態では、判定対象画像のコントラストの変動に強い顔判定方法を説明する。第2の実施の形態は、第1の実施の形態と同様に、パーソナルコンピュータ1で実現される。従って、第2の実施の形態の画像処理装置の構成は、第1の実施の形態の図1を参照することとする。
第2の実施の形態では、判定対象画像のコントラストの変動に強い顔判定方法を説明する。第2の実施の形態は、第1の実施の形態と同様に、パーソナルコンピュータ1で実現される。従って、第2の実施の形態の画像処理装置の構成は、第1の実施の形態の図1を参照することとする。
<統計処理>
まず、以下で説明する統計処理を行い、第2の実施の形態の顔判定用のルックアップテーブル(LUT)を作成する。第2の実施の形態のルックアップテーブルの作成について、第1の実施の形態の図9を参照しながら以下説明をする。
まず、以下で説明する統計処理を行い、第2の実施の形態の顔判定用のルックアップテーブル(LUT)を作成する。第2の実施の形態のルックアップテーブルの作成について、第1の実施の形態の図9を参照しながら以下説明をする。
まず、図9のステップS21からステップS23までと同様にして、数百以上の19×19画素の顔画像サンプル群と、数百以上の19×19画素の非顔画像サンプル群とを取得する。
次に、顔画像サンプル群の画素値にゲインをかけ、画素値の分散が100程度になるように調整する。または、顔画像サンプル群の中から、画素値の分散が200未満であるものを抽出する。このようにして調整または抽出した顔画像サンプル群と、先に求めた非顔画像サンプル群を使って、図9のステップS24からステップS28までと同様にして、顔判定用のルックアップテーブルを作成する。このようにして求めたルックアップテーブルを、低コントラスト顔判定用ルックアップテーブルと言う。
次に、顔画像サンプル群の画素値に上記とは異なるゲインをかけ、画素値の分散が400程度になるように調整する。または、顔画像サンプル群の中から、画素値の分散が200以上であるものを抽出する。このようにして調整または抽出した顔画像サンプル群と、先に求めた非顔画像サンプル群を使って、図9のステップS24からステップS28までと同様にして、顔判定用のルックアップテーブルを作成する。このようにして求めたルックアップテーブルを、高コントラスト顔判定用ルックアップテーブルと言う。
次に、上記のようにして求めた低コントラスト顔判定用ルックアップテーブルと高コントラスト顔判定用ルックアップテーブルを使用して、撮影された画像の中から顔画像を検出する画像処理について説明する。図10は、パーソナルコンピュータ1が実行する第2の実施の形態の画像処理プログラムのフローチャートを示す図である。
ステップS31からステップS34は、第1の実施の形態の図2のステップS1からステップS4と同様である。ステップS38では、輝度画像の積分画像I(x,y)と輝度画像の画素値の二乗の積分画像I2(x,y)を次の式に基づいて作成する。
ステップS35では、第1の実施の形態の図2のステップS5と同様に顔判定対象領域を設定する。ステップS39では、顔判定対象領域内の輝度画像Y(x,y)の画素値の分散σ2を計算する。顔判定対象領域を、4点(x,y),(x+w,y),(x,y+h),(x+w,y+h)を頂点とする長方形領域とすると、その領域内で輝度画像Y(x,y)を積分した値Ysumと輝度画像の二乗を積分した値Ysum2、は、次の式で算出される。
ステップS40では、上記分散σ2が200未満の場合には、低コントラスト顔検出用ルックアップテーブルを選択する。また、上記分散σ2が200以上の場合には、高コントラスト顔検出用ルックアップテーブルを選択する。なお、分散σ2が大きい場合は高コントラストの画像であることを示し、分散σ2が小さい場合は低コントラストの画像であることを示している。
ステップS36では、ステップS40で選択された顔検出用ルックアップテーブルを用いて、第1の実施の形態のステップS6と同様の方法で顔判定処理を行う。ステップS37では、第1の実施の形態のステップS7と同様に検出結果を出力する。
本実施の形態によると、顔判定対象領域のコントラストを高速に測定し、そのコントラストに応じて顔検出用ルックアップテーブルを選択することにより、判定処理時間を抑えながら、様々なコントラストに対して精度が高い判定をすることができる。
なお、コントラストによって異なるルックアップテーブルを使用するのは、コントラストが高い画像であると、エッジが大きめに出すぎてしまうためである。すなわち、コントラストが高いものは高いなりのルックアップテーブルを使用することにより、精度の高い顔判定が可能となるからである。
−第3の実施の形態−
第3の実施の形態では、異なる複数の解像度の画像を用いることにより、より高精度な顔判定を行う方法を説明する。第3の実施の形態は、第1の実施の形態と同様に、パーソナルコンピュータ1で実現される。従って、第3の実施の形態の画像処理装置の構成は、第1の実施の形態の図1を参照することとする。
第3の実施の形態では、異なる複数の解像度の画像を用いることにより、より高精度な顔判定を行う方法を説明する。第3の実施の形態は、第1の実施の形態と同様に、パーソナルコンピュータ1で実現される。従って、第3の実施の形態の画像処理装置の構成は、第1の実施の形態の図1を参照することとする。
<統計処理>
まず、以下で説明する統計処理を行い、第3の実施の形態の顔判定用のルックアップテーブル(LUT)を作成する。第3の実施の形態のルックアップテーブルの作成について、第1の実施の形態の図9を参照しながら以下説明をする。
まず、以下で説明する統計処理を行い、第3の実施の形態の顔判定用のルックアップテーブル(LUT)を作成する。第3の実施の形態のルックアップテーブルの作成について、第1の実施の形態の図9を参照しながら以下説明をする。
まず、図9のステップS21からステップS28までと同様にして、第1の実施の形態と同様な顔判定用ルックアップテーブルを作成する。以後、このルックアップテーブルを、通常サイズ顔判定用ルックアップテーブルと言う。
次に、図9のステップS22の段階で取得した顔画像サンプル群を縮小し、12×12画素程度の大きさにする。同様にして、図9のステップS23の段階で取得した非顔画像サンプル群を縮小し、12×12画素程度の大きさにする。このようにして作成した顔画像サンプル群と非顔画像サンプル群を使って、図9のステップS24からステップS28までと同様にして、顔判定用のルックアップテーブルを作成する。このようにして求めたルックアップテーブルを、縮小サイズ顔判定用ルックアップテーブルと呼ぶ。
次に、上記のようにして求めた通常サイズ顔判定用ルックアップテーブルと縮小サイズ顔判定用ルックアップテーブルを使用して、撮影された画像の中から顔画像を検出する画像処理について説明する。パーソナルコンピュータ1が実行する第3の実施の形態の画像処理プログラムは、第1の実施の形態の図2のフローチャートと、処理の流れとしては同様であるので、図2を参照しながら以下説明をする。
ステップS1からステップS4は、第1の実施の形態のステップS1からステップS4と同様である。
ステップS5では、縮小画像の1画素おきに19×19画素の顔判定対象領域を設定し、その領域におけるエッジ画像E1〜E4の部分画像を出力する。ここで出力したエッジ画像を通常サイズエッジ画像と呼ぶ。さらに、前記縮小画像に対して、0.94の縮小倍率で縮小された第2の縮小画像に対して、上記19×19画素の顔判定対象領域と同一の被写体に対応する12×12画素の縮小サイズ顔判定対象領域を設定し、その領域における、前記第2の縮小画像に対して作成したエッジ画像E1〜E4の部分画像を出力する。ここで出力したエッジ画像を縮小サイズエッジ画像と呼ぶ。
ステップS6では、通常サイズエッジ画像に対して、通常サイズ顔判定用ルックアップテーブルを用いて、第1の実施の形態と同様にして顔らしさを算出する。さらに、縮小サイズエッジ画像に対して、縮小サイズ顔判定用ルックアップテーブルを用いて、第1の実施の形態と同様にして顔らしさを算出する。
図11は、上記のようにして、通常サイズエッジ画像および縮小サイズエッジ画像に対して、各部分画像の顔らしさを求めた後の処理のフローチャートを示す図である。ステップS6の顔判定処理では、第1の実施の形態と同様に、顔らしさを段階的に生成し、それらを積算した評価値が閾値よりも大きければ顔とする。ただし、評価値を閾値と比較する処理を図11に示すように各段階において行うことにより、明らかに顔ではない画像を早い段階で除外して、効率的な処理を行えるようにしている。
まず、ステップS51では、部分画像が顔の画像であるかどうかを判定する評価値を、縮小サイズエッジ画像E1(x,y)の顔らしさVsum1とする。ステップS52では、評価値が所定の閾値th1より大きいかどうかを判定し、この評価値が閾値th1より大きければステップS53に進み、この評価値が閾値th1より大きくなければ、部分画像は顔の画像でないとして、対象の部分画像の顔判定の処理を終了する。
ステップS53では、評価値をステップS51の評価値に縮小サイズエッジ画像E2(x,y)の顔らしさVsum2を足した値とする。ステップS54では、この評価値が所定の閾値th2より大きいかどうかを判定し、評価値が閾値th2より大きければステップS55に進み、この評価値が閾値th2より大きくなければ、部分画像は顔の画像でないとして、対象の部分画像の顔判定の処理を終了する。
ステップS55では、評価値をステップS53の評価値に縮小サイズエッジ画像E3(x,y)の顔らしさVsum3を足した値とする。ステップS56では、この評価値が所定の閾値th3より大きいかどうかを判定し、評価値が閾値th3より大きければステップS57に進み、この評価値が閾値th3より大きくなければ、部分画像は顔の画像でないとして、対象の部分画像の顔判定の処理を終了する。
ステップS57では、評価値をステップS55の評価値に縮小サイズエッジ画像E4(x,y)の顔らしさVsum4を足した値とする。ステップS58では、この評価値が所定の閾値th4より大きいかどうかを判定し、評価値が閾値th4より大きければステップS59に進み、この評価値が閾値th4より大きくなければ、部分画像は顔の画像でないとして、対象の部分画像の顔判定の処理を終了する。
ステップS59からステップS66は、通常サイズエッジ画像について同様の処理を行う。その結果、ステップS66において、評価値が閾値th8より大きければ、最終的にこの部分画像は顔の画像であると判定する。この評価値が閾値th8より大きくなければ、部分画像は顔の画像でないとして、対象の部分画像の顔判定の処理を終了する。
ステップ7では、第1の実施の形態と同様に、顔検出結果を出力する。
第3の実施形態によると、第1の実施の形態に比べて、さらに縮小サイズエッジ画像の顔らしさの評価を加えることにより、さらに高精度な顔判定処理を行うことができる。例えば、顔判定対象領域が19×19画素であると、目は2画素程度になって検出しやすいが、口は4画素程度になって検出しにくくなる。ところが、同じ顔判定対象領域が12×12画素になると、口は2画素程度になって検出しやすくなる。従って、このような縮小サイズエッジ画像の顔らしさの評価を加えることにより、口などの凹構造が検出しやすくなり、さらに高精度な顔判定処理を行うことができるようになる。
−変形例−
上記実施の形態では、顔の画像を判定する例を説明した。しかし、顔の画像以外の画像にも本発明は適用できる。すなわち、特定種類の画像が取得した画像にあるかどうかを判定する場合にも適用できる。このような場合は、その特定種類の画像らしさの度合いを画素値および画素位置ごとに示すルックアップテーブルを統計処理により準備し、このルックアップテーブルを用いて、判定用画像の各画素における特定種類の画像らしさの度合いを求めるようにすればよい。
上記実施の形態では、顔の画像を判定する例を説明した。しかし、顔の画像以外の画像にも本発明は適用できる。すなわち、特定種類の画像が取得した画像にあるかどうかを判定する場合にも適用できる。このような場合は、その特定種類の画像らしさの度合いを画素値および画素位置ごとに示すルックアップテーブルを統計処理により準備し、このルックアップテーブルを用いて、判定用画像の各画素における特定種類の画像らしさの度合いを求めるようにすればよい。
上記実施の形態では、エッジ画像として輝度凹部画像を生成し、顔の目鼻口などの局所的に暗い箇所を適切に判断する例を説明した。しかし、歯を見せて笑っている口や、光が当たって光っている頬や鼻では、輝度が周囲に比べて局所的に明るくなっている。このような顔の局所的に明るい箇所も適切に検出するために、次のような式により、エッジ画像として輝度凸部画像を生成し、同様にして顔らしさを求めるようにしてもよい。
E5´(x,y)=Max(YLH(x,y−1), YLH(x,y+2))
−Max(YLH(x,y), YLH(x,y+1))
E5(x,y)=γ(E5´(x,y))
E5´(x,y)=Max(YLH(x,y−1), YLH(x,y+2))
−Max(YLH(x,y), YLH(x,y+1))
E5(x,y)=γ(E5´(x,y))
上記実施の形態では、顔らしさL1(x,y)(E)を、次の式によって算出する例を説明した。
L1(x,y)(E)=log{(P顔(x,y,E)+ε1)/(P非顔(x,y,E)+ε2)}
しかし、次のような式を用いてもよい。
L1(x,y)(E)=√{P顔(x,y,E)}−√{P非顔(x,y,E)}
第1項の√{P顔(x,y,E)}も単調増加関数と言え、第2項の√{P非顔(x,y,E)}も単調減少関数と言える。
L1(x,y)(E)=log{(P顔(x,y,E)+ε1)/(P非顔(x,y,E)+ε2)}
しかし、次のような式を用いてもよい。
L1(x,y)(E)=√{P顔(x,y,E)}−√{P非顔(x,y,E)}
第1項の√{P顔(x,y,E)}も単調増加関数と言え、第2項の√{P非顔(x,y,E)}も単調減少関数と言える。
上記実施の形態では、パーソナルコンピュータ1が、撮影された画像の中から顔画像を検出する画像処理を行う例を説明した。しかし、デジタルスチルカメラなどの撮像装置内で、撮像した画像に対し上記説明した処理を行うようにしてもよい。
図12は、このような撮像装置であるデジタルカメラ100の構成を示す図である。デジタルカメラ100は、撮影レンズ102、CCDなどからなる撮像素子103、CPUおよび周辺回路からなる制御装置104、メモリ105などから構成される。
撮像素子103は、被写体101を撮影レンズ102を介して撮影(撮像)し、撮影した画像データを制御装置104へ出力する。制御装置104は、撮像素子103で撮影された画像(画像データ)に対して、上記で説明した顔画像を検出する画像処理を行う。そして、制御装置104は、顔画像の検出結果に基づき撮影した画像に対し、ホワイトバランスの調整やその他の各種の画像処理を行い、画像処理後の画像データを適宜メモリ105に格納する。また、制御装置104は、顔画像の検出結果を、オートフォーカス処理などにも利用することができる。なお、制御装置104が実行する画像処理プログラムは、不図示のROMに格納されている。
また、上記説明した処理をビデオカメラにも適用できる。さらに、不審者を監視する監視カメラや、撮影された顔画像に基づいて個人を識別したり、性別や年齢や表情を推定するような装置にも適用できる。すなわち、顔の画像など特定種類の画像を抽出して処理する画像処理装置や撮像装置などのあらゆる装置に本発明を適用することができる。
上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
1 パーソナルコンピュータ
2 デジタルカメラ
3 記録媒体
4 コンピュータ
5 電気通信回線
100 デジタルカメラ
101 被写体
102 撮影レンズ
103 撮像素子
104 制御装置
105 メモリ
2 デジタルカメラ
3 記録媒体
4 コンピュータ
5 電気通信回線
100 デジタルカメラ
101 被写体
102 撮影レンズ
103 撮像素子
104 制御装置
105 メモリ
Claims (15)
- 特定種類の画像であるかどうかを判定する画像処理方法であって、
複数の画素からなる画像を取得し、
特定種類の画像らしさの度合いを画素値および画素位置ごとに示すルックアップテーブルを格納し、
前記取得した画像に基づいて判定用画像を生成し、
前記判定用画像の画素の画素値および画素位置に基づき、前記ルックアップテーブルを用いて、その画素における前記特定種類の画像らしさの度合いを求め、
前記求めた判定用画像の画素の画像らしさの度合いを積算し、
前記積算した結果に基づき、前記入力画像が前記特定種類の画像であるかどうかを判定することを特徴とする画像処理方法。 - 請求項1に記載の画像処理方法において、
前記特定種類の画像は、顔の画像であることを特徴とする画像処理方法。 - 請求項1または2に記載の画像処理方法において、
前記判定用画像は、前記取得した画像のエッジ成分を抽出して生成されることを特徴とする画像処理方法。 - 請求項1または2に記載の画像処理方法において、
前記判定用画像は、前記取得した画像の局所的に周辺より画素値がへこんでいる凹構造のエッジ成分を抽出して生成されることを特徴とする画像処理方法。 - 請求項1に記載の画像処理方法において、
前記ルックアップテーブルは、
前記特定種類の画像の特徴的な要素に対応する画素位置では、その画素のエッジ成分が大きい場合の前記特定種類の画像らしさの度合いを、エッジ成分が小さい場合の前記特定種類の画像らしさの度合いに比べて大きな値とし、
前記特定種類の画像の特徴的な要素以外に対応する画素位置では、その画素のエッジ成分が大きい場合の前記特定種類の画像らしさの度合いを、エッジ成分が小さい場合の前記特定種類の画像らしさの度合いに比べて小さな値とすることを特徴とする画像処理方法。 - 請求項2に記載の画像処理方法において、
前記判定用画像は、前記取得した画像のエッジ成分を抽出して生成され、
目鼻口のいずれかの領域に対応する画素位置では、その画素のエッジ成分が大きい場合の前記顔の画像らしさの度合いを、エッジ成分が小さい場合の前記顔の画像らしさの度合いに比べて大きな値とし、
目鼻口以外の領域に対応する画素位置では、その画素のエッジ成分が大きい場合の前記顔の画像らしさの度合いを、エッジ成分が小さい場合の前記顔の画像らしさの度合いに比べて小さな値とすることを特徴とする画像処理方法。 - 請求項1から6のいずれかに記載の画像処理方法において、
前記ルックアップテーブルは、前記特定種類の画像に属する判定対象画像サンプル群と前記特定種類の画像に属さない非判定対象画像サンプル群とに基づく統計処理により生成されることを特徴とする画像処理方法。 - 請求項7に記載の画像処理方法において、
前記統計処理において、
前記判定用画像を生成するときと等価な処理により、前記判定対象画像サンプル群に基づいて第1の画像サンプル群を生成し、前記非判定対象画像サンプル群に基づいて第2の画像サンプル群を生成し、
前記第1の画像サンプル群の画素位置(x,y)における画素値がEとなる頻度P1(x,y)(E)と、前記第2の画像サンプル群の画素位置(x,y)における画素値がEとなる頻度P2(x,y)(E)とを求め、
前記判定用画像の画素位置(x,y)における画素値Eに対してその画素における前記特定種類の画像らしさの度合いV(x,y)を、V(x,y) = L(x,y)(E)で与える画素位置(x,y)における前記ルックアップテーブルL(x,y)(E)を、L(x,y)(E) = f( P1(x,y)(E) , P2(x,y)(E) ) により生成し、
前記関数f( P1(x,y)(E) , P2(x,y)(E) )は、P1(x,y)(E)について実質的に広義の単調増加関数であり、P2(x,y)(E)について実質的に広義の単調減少関数であることを特徴とする画像処理方法。 - 請求項8に記載の画像処理方法において、
前記関数f( P1(x,y)(E) , P2(x,y)(E) )は、
f( P1(x,y)(E) , P2(x,y)(E) ) = log{ (P1(x,y)(E)+ε1) / (P2(x,y)(E)+ε2) }であり、
前記ε1とε2は所定の定数であることを特徴とする画像処理方法。 - 請求項1に記載の画像処理方法において、
コントラストの程度に応じた複数のルックアップテーブルを格納し、
前記取得した画像のコントラストを算出し、
前記複数のルックアップテーブルから前記コントラストに応じたルックアップテーブルを選択することを特徴とする画像処理方法。 - 特定種類の画像であるかどうかを判定する画像処理方法であって、
複数の画素からなる画像を取得し、
特定種類の画像らしさの度合いを画素値および画素位置ごとに示すルックアップテーブルを格納し、
複数の異なる縮小倍率により前記取得した画像の複数の縮小画像を生成し、
前記複数の縮小画像に基づいて判定用画像を生成し、
前記複数の縮小画像の1つである第1の縮小画像に対して判定対象領域を設定し、
前記判定対象領域の画素の画素値および前記判定対象領域内の画素位置に基づき、前記ルックアップテーブルを用いて、その画素における前記特定種類の画像らしさの度合いを求め、
前記求めた判定対象領域の画素の前記特定種類の画像らしさの度合いを積算し、
前記積算した結果に基づき、前記取得した画像内の前記判定対象領域に対応する画像が前記特定種類の画像であるかどうかを判定することを特徴とする画像処理方法。 - 請求項11に記載の画像処理方法において、
前記第1の縮小画像よりもさらに縮小された第2の縮小画像に対して、前記判定対象領域に対応する第2の判定対象領域をさらに設定し、
特定種類の画像らしさの度合いを画素値および前記第2の判定対象領域に対応した画素位置ごとに示す第2のルックアップテーブルをさらに格納し、
前記第2の判定対象領域の画素の画素値および前記第2の判定対象領域内の画素位置に基づき、前記第2のルックアップテーブルを用いて、その画素における前記特定種類の画像らしさの度合いを求め、
前記求めた第2の判定対象領域の画素の前記特定種類の画像らしさの度合いを積算し、
前記判定対象領域の画素の前記特定種類の画像らしさの度合いの積算結果および前記第2の判定対象領域の画素の前記特定種類の画像らしさの度合いの積算結果に基づき、前記取得した画像内の前記判定対象領域に対応する画像が前記特定種類の画像であるかどうかを判定することを特徴とする画像処理方法。 - 請求項1から12のいずれかに記載の画像処理方法をコンピュータに実行させる画像処理プログラム。
- 請求項13に記載の画像処理プログラムを搭載する画像処理装置。
- 請求項13に記載の画像処理プログラムを搭載する撮像装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006215943A JP2009258770A (ja) | 2006-08-08 | 2006-08-08 | 画像処理方法、画像処理装置、画像処理プログラム、撮像装置 |
PCT/JP2007/065446 WO2008018459A1 (fr) | 2006-08-08 | 2007-08-07 | Procédé de traitement d'image, appareil de traitement d'image, programme de traitement d'image, et appareil de prise d'image |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006215943A JP2009258770A (ja) | 2006-08-08 | 2006-08-08 | 画像処理方法、画像処理装置、画像処理プログラム、撮像装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009258770A true JP2009258770A (ja) | 2009-11-05 |
Family
ID=39032989
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006215943A Pending JP2009258770A (ja) | 2006-08-08 | 2006-08-08 | 画像処理方法、画像処理装置、画像処理プログラム、撮像装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2009258770A (ja) |
WO (1) | WO2008018459A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010500836A (ja) * | 2006-08-11 | 2010-01-07 | フォトネーション ビジョン リミテッド | デジタル画像収集装置におけるリアルタイム顔追跡 |
US8422739B2 (en) | 2006-08-11 | 2013-04-16 | DigitalOptics Corporation Europe Limited | Real-time face tracking in a digital image acquisition device |
CN103325249A (zh) * | 2012-03-22 | 2013-09-25 | 日本电气株式会社 | 捕获图像处理装置和捕获图像处理方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112165571B (zh) * | 2020-09-09 | 2022-02-08 | 支付宝实验室(新加坡)有限公司 | 一种证件图像采集方法、装置和设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06348851A (ja) * | 1993-04-12 | 1994-12-22 | Sony Corp | 対象物位置検出方法 |
JPH0883341A (ja) * | 1994-09-12 | 1996-03-26 | Nippon Telegr & Teleph Corp <Ntt> | 物体領域抽出方法とその装置及び物体認識装置 |
JP4377472B2 (ja) * | 1999-03-08 | 2009-12-02 | 株式会社東芝 | 顔画像処理装置 |
KR100343223B1 (ko) * | 1999-12-07 | 2002-07-10 | 윤종용 | 화자 위치 검출 장치 및 그 방법 |
US6231743B1 (en) * | 2000-01-03 | 2001-05-15 | Motorola, Inc. | Method for forming a semiconductor device |
JP4561273B2 (ja) * | 2004-09-22 | 2010-10-13 | ソニー株式会社 | 画像処理装置および方法、並びにプログラム |
-
2006
- 2006-08-08 JP JP2006215943A patent/JP2009258770A/ja active Pending
-
2007
- 2007-08-07 WO PCT/JP2007/065446 patent/WO2008018459A1/ja active Application Filing
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010500836A (ja) * | 2006-08-11 | 2010-01-07 | フォトネーション ビジョン リミテッド | デジタル画像収集装置におけるリアルタイム顔追跡 |
US8422739B2 (en) | 2006-08-11 | 2013-04-16 | DigitalOptics Corporation Europe Limited | Real-time face tracking in a digital image acquisition device |
US8509498B2 (en) | 2006-08-11 | 2013-08-13 | DigitalOptics Corporation Europe Limited | Real-time face tracking in a digital image acquisition device |
US8666124B2 (en) | 2006-08-11 | 2014-03-04 | DigitalOptics Corporation Europe Limited | Real-time face tracking in a digital image acquisition device |
CN103325249A (zh) * | 2012-03-22 | 2013-09-25 | 日本电气株式会社 | 捕获图像处理装置和捕获图像处理方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2008018459A1 (fr) | 2008-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8977056B2 (en) | Face detection using division-generated Haar-like features for illumination invariance | |
CN111741211B (zh) | 图像显示方法和设备 | |
CN108197546B (zh) | 人脸识别中光照处理方法、装置、计算机设备及存储介质 | |
US8605955B2 (en) | Methods and apparatuses for half-face detection | |
US8035871B2 (en) | Determining target luminance value of an image using predicted noise amount | |
US7565073B2 (en) | Photography apparatus, photography method, and photography program for obtaining an image of a subject | |
US8811733B2 (en) | Method of chromatic classification of pixels and method of adaptive enhancement of a color image | |
US20170323465A1 (en) | Image processing apparatus, image processing method, and storage medium | |
JP2004357277A (ja) | デジタル画像処理方法 | |
TWI632894B (zh) | 動態影像之心率活動偵測系統與其方法 | |
JP2011521521A (ja) | 最適映像選択 | |
WO2017203913A1 (ja) | 肌診断装置および肌診断方法 | |
WO2019102966A1 (ja) | 脈波検出装置、脈波検出方法、及び記憶媒体 | |
US20210082127A1 (en) | Image analysis apparatus, image analysis method, and storage medium to display information representing flow quantity | |
US11301974B2 (en) | Image processing apparatus, image processing method, image capturing apparatus, and storage medium | |
JP2004310475A (ja) | 画像処理装置、画像処理を行う携帯電話、および画像処理プログラム | |
US9147115B2 (en) | Method and device for detecting an object in an image | |
JP2009258770A (ja) | 画像処理方法、画像処理装置、画像処理プログラム、撮像装置 | |
CN109961422B (zh) | 数字图像的对比度值的确定 | |
CN110532993A (zh) | 一种人脸防伪方法、装置、电子设备及介质 | |
JP7386630B2 (ja) | 画像処理装置、画像処理装置の制御方法及びプログラム | |
JP4831344B2 (ja) | 目の位置の検出方法 | |
JP6565513B2 (ja) | 色補正装置、色補正方法及び色補正用コンピュータプログラム | |
JP2009258771A (ja) | 画像処理方法、画像処理装置、画像処理プログラム、撮像装置 | |
JP2007025901A (ja) | 画像処理装置、画像処理方法 |