(57)【要約】【課題】対象画像からの顔領域検出処理の高速化を図ることを可能とする。【解決手段】画像処理装置は、顔領域検出結果の用途を特定する用途特定情報を取得する用途特定情報取得部と、用途特定情報に基づき対象画像上における判定対象画像領域の設定条件を設定する条件設定部と、設定条件に従い判定対象画像領域を設定する判定対象設定部と、判定対象画像領域が顔の画像に対応する画像領域であることの確からしさを表す評価値を算出する評価値算出部と、評価値と判定対象画像領域の位置およびサイズとに基づき顔領域を設定する顔領域設定部と、を備える。【選択図】図４
2009237611.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
対象画像から顔の画像に対応する顔領域を検出して得られる検出結果の用途を特定する用途特定情報を取得する用途特定情報取得部と、
前記用途特定情報に基づき、前記対象画像上における画像領域である判定対象画像領域の設定条件を設定する条件設定部と、
前記設定条件に従い前記判定対象画像領域を設定する判定対象設定部と、
前記判定対象画像領域に対応する画像データに基づき、前記判定対象画像領域が顔の画像に対応する画像領域であることの確からしさを表す評価値を算出する評価値算出部と、
前記評価値と前記判定対象画像領域の位置およびサイズとに基づき、前記顔領域を設定する顔領域設定部と、を備える、画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記設定条件は、前記判定対象画像領域のサイズとして取り得る値の範囲を含む、画像処理装置。
【請求項３】
請求項１または請求項２に記載の画像処理装置であって、
前記設定条件は、前記対象画像における前記判定対象画像領域の位置し得る範囲を含む、画像処理装置。
【請求項４】
請求項１ないし請求項３のいずれかに記載の画像処理装置であって、さらに、
被写体を撮像して画像データを生成する画像生成部を備え、
前記用途は、撮像実行タイミングの設定である、画像処理装置。
【請求項５】
請求項１ないし請求項３のいずれかに記載の画像処理装置であって、
前記用途は、前記顔領域に対応する顔の画像の表情の判別である、画像処理装置。
【請求項６】
請求項１ないし請求項３のいずれかに記載の画像処理装置であって、さらに、
前記対象画像データと前記用途特定情報とを含む画像ファイルを取得する画像取得部を備え、
前記用途特定情報取得部は、前記画像ファイルに含まれる前記用途特定情報を取得する、画像処理装置。
【請求項７】
請求項１ないし請求項６のいずれかに記載の画像処理装置であって、
前記顔領域設定部は、前記評価値に基づき前記判定対象画像領域が顔の画像に対応する画像領域であるか否かを判定し、顔の画像に対応する画像領域であると判定された前記判定対象画像領域の位置およびサイズに基づき前記顔領域を設定する、画像処理装置。
【請求項８】
画像処理方法であって、
（ａ）対象画像から顔の画像に対応する顔領域を検出して得られる検出結果の用途を特定する用途特定情報を取得する工程と、
（ｂ）前記用途特定情報に基づき、前記対象画像上における画像領域である判定対象画像領域の設定条件を設定する工程と、
（ｃ）前記設定条件に従い前記判定対象画像領域を設定する工程と、
（ｄ）前記判定対象画像領域に対応する画像データに基づき、前記判定対象画像領域が顔の画像に対応する画像領域であることの確からしさを表す評価値を算出する工程と、
（ｅ）前記評価値と前記判定対象画像領域の位置およびサイズとに基づき、前記顔領域を設定する工程と、を備える、画像処理方法。
【請求項９】
画像処理のためのコンピュータプログラムであって、
対象画像から顔の画像に対応する顔領域を検出して得られる検出結果の用途を特定する用途特定情報を取得する用途特定情報取得機能と、
前記用途特定情報に基づき、前記対象画像上における画像領域である判定対象画像領域の設定条件を設定する条件設定機能と、
前記設定条件に従い前記判定対象画像領域を設定する判定対象設定機能と、
前記判定対象画像領域に対応する画像データに基づき、前記判定対象画像領域が顔の画像に対応する画像領域であることの確からしさを表す評価値を算出する評価値算出機能と、
前記評価値と前記判定対象画像領域の位置およびサイズとに基づき、前記顔領域を設定する顔領域設定機能と、を、コンピュータに実現させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象画像からの顔領域の検出に関する。
【背景技術】
【０００２】
対象画像データの表す対象画像から部分画像を順次切り出し、切り出した部分画像が顔に対応する画像であるか否かを判定することにより、対象画像から顔の画像に対応する画像領域である顔領域を検出する技術が知られている（例えば特許文献１）。
【０００３】
【特許文献１】特開２００７−９４６３３
【発明の開示】
【発明が解決しようとする課題】
【０００４】
対象画像からの顔領域の検出の際には、処理の高速化が図られることが好ましい。
【０００５】
本発明は、上記の課題を解決するためになされたものであり、対象画像からの顔領域検出処理の高速化を図ることを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題の少なくとも一部を解決するために、本発明は、以下の形態または適用例として実現することが可能である。
【０００７】
［適用例１］画像処理装置であって、
対象画像から顔の画像に対応する顔領域を検出して得られる検出結果の用途を特定する用途特定情報を取得する用途特定情報取得部と、
前記用途特定情報に基づき、前記対象画像上における画像領域である判定対象画像領域の設定条件を設定する条件設定部と、
前記設定条件に従い前記判定対象画像領域を設定する判定対象設定部と、
前記判定対象画像領域に対応する画像データに基づき、前記判定対象画像領域が顔の画像に対応する画像領域であることの確からしさを表す評価値を算出する評価値算出部と、
前記評価値と前記判定対象画像領域の位置およびサイズとに基づき、前記顔領域を設定する顔領域設定部と、を備える、画像処理装置。
【０００８】
この画像処理装置では、顔領域検出結果の用途を特定する用途特定情報に基づき対象画像上における判定対象画像領域の設定条件が設定され、設定条件に従い判定対象画像領域が設定され、判定対象画像領域について算出された評価値と判定対象画像領域の位置およびサイズとに基づき顔領域が設定される。従って、この画像処理装置では、対象画像からの顔領域検出処理の高速化を図ることができる。
【０００９】
［適用例２］適用例１に記載の画像処理装置であって、
前記設定条件は、前記判定対象画像領域のサイズとして取り得る値の範囲を含む、画像処理装置。
【００１０】
この画像処理装置では、用途特定情報に基づき判定対象画像領域のサイズとして取り得る値の範囲が設定されるため、対象画像からの顔領域検出処理の高速化を図ることができる。
【００１１】
［適用例３］適用例１または適用例２に記載の画像処理装置であって、
前記設定条件は、前記対象画像における前記判定対象画像領域の位置し得る範囲を含む、画像処理装置。
【００１２】
この画像処理装置では、用途特定情報に基づき判定対象画像領域の位置し得る範囲が設定されるため、対象画像からの顔領域検出処理の高速化を図ることができる。
【００１３】
［適用例４］適用例１ないし適用例３のいずれかに記載の画像処理装置であって、さらに、
被写体を撮像して画像データを生成する画像生成部を備え、
前記用途は、撮像実行タイミングの設定である、画像処理装置。
【００１４】
この画像処理装置では、撮像実行タイミングの設定という用途を特定する用途特定情報に基づき対象画像上における判定対象画像領域の設定条件が設定されるため、被写体を撮像して画像データを生成する際に対象画像からの顔領域検出処理の高速化を図ることができる。
【００１５】
［適用例５］適用例１ないし適用例３のいずれかに記載の画像処理装置であって、
前記用途は、前記顔領域に対応する顔の画像の表情の判別である、画像処理装置。
【００１６】
この画像処理装置では、顔領域に対応する顔の画像の表情の判別という用途を特定する用途特定情報に基づき対象画像上における判定対象画像領域の設定条件が設定されるため、対象画像からの顔領域検出処理の高速化を図ることができる。
【００１７】
［適用例６］適用例１ないし適用例３のいずれかに記載の画像処理装置であって、さらに、
前記対象画像データと前記用途特定情報とを含む画像ファイルを取得する画像取得部を備え、
前記用途特定情報取得部は、前記画像ファイルに含まれる前記用途特定情報を取得する、画像処理装置。
【００１８】
この画像処理装置では、取得された画像ファイルに含まれる対象画像データの表す対象画像からの顔領域検出処理の高速化を図ることができる。
【００１９】
［適用例７］適用例１ないし適用例６のいずれかに記載の画像処理装置であって、
前記顔領域設定部は、前記評価値に基づき前記判定対象画像領域が顔の画像に対応する画像領域であるか否かを判定し、顔の画像に対応する画像領域であると判定された前記判定対象画像領域の位置およびサイズに基づき前記顔領域を設定する、画像処理装置。
【００２０】
なお、本発明は、種々の態様で実現することが可能であり、例えば、画像処理方法および装置、顔領域検出方法および装置、顔領域設定方法および装置、画像生成方法および装置、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【発明を実施するための最良の形態】
【００２１】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．実施例：
Ａ−１．画像処理装置の構成：
Ａ−２．画像生成処理：
Ａ−３．顔領域検出処理：
Ｂ．変形例：
【００２２】
Ａ．実施例：
Ａ−１．画像処理装置の構成：
図１は、本発明の実施例における画像処理装置としてのデジタルスチルカメラ１００の構成を概略的に示す説明図である。実施例のデジタルスチルカメラ（以下「ＤＳＣ」とも呼ぶ）１００は、被写体としての撮像対象物を撮像して被写体画像を表す画像データを生成する撮像装置（画像生成装置）として機能すると共に、生成された画像データに対する画像処理を行う画像処理装置としても機能する。
【００２３】
ＤＳＣ１００は、レンズ１０２と、レンズ１０２を駆動して焦点（ピント）の位置や焦点距離を調整するレンズ駆動部１０４と、レンズ駆動部１０４を制御するレンズ駆動制御部１０６と、レンズ１０２を介して受光面に入力された光を電気信号に変換する撮像素子１０８と、撮像素子１０８から出力された電気信号に対するＡ／Ｄ変換を行うＡ／Ｄ変換器１１０と、外部機器との情報のやり取りのためのインターフェース部（Ｉ／Ｆ部）１１２と、液晶ディスプレイにより構成された表示部１１４と、ボタンやタッチパネルにより構成された操作部１１６と、ＤＳＣ１００の各部を制御するＣＰＵ１１８と、ＲＯＭやＲＡＭによって構成された内部メモリ２００と、を備えている。撮像素子１０８は、例えばＣＣＤを用いて構成される。ＤＳＣ１００の各構成要素は、バス１２２を介して互いに接続されている。
【００２４】
内部メモリ２００には、画像生成部２１０と、モード設定部２２０と、領域検出部２３０と、表情判別部２４０と、が格納されている。画像生成部２１０は、レンズ１０２や撮像素子１０８等を制御して、被写体としての撮像対象物を撮像し、被写体画像を表す画像データを生成するためのコンピュータプログラムである。モード設定部２２０は、自動的に、あるいは操作部１１６を介したユーザの指示に従い、撮像モード（後述）を設定するためのコンピュータプログラムである。領域検出部２３０は、対象画像データの表す対象画像における所定の画像（顔の画像や顔の器官の画像）に対応する画像領域（顔領域や器官領域）の検出を行うコンピュータプログラムである。表情判別部２４０は、領域検出部２３０により検出された顔領域に対応する顔の画像の表情の判別を行うコンピュータプログラムである。ＣＰＵ１１８は、内部メモリ２００から、これらのプログラムを読み出して実行することにより、これら各部の機能を実現する。
【００２５】
領域検出部２３０は、プログラムモジュールとして、条件設定部２３１と、判定対象設定部２３２と、評価値算出部２３３と、判定部２３４と、領域設定部２３５と、を含んでいる。領域検出部２３０は、さらに、撮像モードに応じた顔領域の検出条件を定義する条件テーブルＣＴと、顔領域の検出に用いられる複数の顔学習データＦＬＤと、器官領域の検出に用いられる複数の顔器官学習データＯＬＤと、を有している。表情判別部２４０は、表情判別に用いられる複数の表情データＥＤを有している。これらの各部の機能や各テーブル・データの内容については後述する。
【００２６】
図２は、実施例のＤＳＣ１００による画像生成処理の流れを示すフローチャートである。実施例のＤＳＣ１００による画像生成処理は、被写体としての撮像対象物を撮像して、被写体画像を表す画像データを生成する処理である。
【００２７】
ステップＳ１１０（図２）では、モード設定部２２０（図１）が、撮像モードを特定する撮像モード情報を取得して、使用する撮像モードを設定する。具体的には、モード設定部２２０は、表示部１１４上に撮像モード情報得のためのユーザインタフェースを表示させる。図３は、撮像モード情報取得のためのユーザインタフェースの一例を示す説明図である。図３に示すように、本実施例のＤＳＣ１００は、撮像モードとして、通常モードと、肖像写真を生成するためのポートレートモードと、笑顔の人物の顔を含む写真を生成するためのスマイルモードと、証明写真を生成するための証明写真モードと、の４つのモードを有している。
【００２８】
通常モードは、ユーザによる撮像指示に応じて撮像が実行される撮像モードである。初期状態においては、撮像モードは通常モードに設定されている。ポートレートモードおよび証明写真モードは、後述する顔検出用画像ＦＤＩｍｇにおいて条件テーブルＣＴ（図１）に定義された検出条件に該当する顔領域が検出された場合に、自動的に撮像が実行される撮像モードである。スマイルモードは、顔検出用画像ＦＤＩｍｇにおいて条件テーブルＣＴに定義された検出条件に該当する顔領域が検出され、検出された顔領域に対応する顔の画像の表情が笑顔であると判定された場合に、自動的に撮像が実行される撮像モードである。ユーザは、操作部１１６（図１）を介して、所望の撮像モードを選択指定する。モード設定部２２０は、指定された撮像モードを特定する撮像モード情報を取得し、撮像モード情報により特定される撮像モードを使用する撮像モードとして設定する。
【００２９】
なお、本実施例における撮像モード情報は、顔領域の検出結果の用途を特定する情報であると言える。例えば、ポートレートモードまたは証明写真モードであることを示す撮像モード情報は、顔領域の検出結果が撮像実行タイミングの設定に用いられることを特定する情報である。また、スマイルモードであることを示す撮像モード情報は、顔領域の検出結果が、顔領域に対応する顔の画像の表情が笑顔であるか否かの判定に用いられることを特定する情報である。そのため、本実施例における撮像モード情報は、本発明における用途特定情報に相当する。また、撮像モード情報を取得するモード設定部２２０は、本発明における用途特定情報取得部に相当する。
【００３０】
ステップＳ１２０（図２）では、領域検出部２３０の条件設定部２３１（図１）が、撮像モード情報と条件テーブルＣＴとに基づき、後に実行される顔領域検出処理の際の検出条件を特定し、使用ウィンドウサイズとウィンドウ移動範囲と使用顔学習データとを設定する。
【００３１】
図４は、条件テーブルＣＴの内容の一例を示す説明図である。図４に示すように、条件テーブルＣＴには、撮像モード毎に、検出サイズと検出傾きと検出向きと検出範囲とが定められている。検出サイズは、顔領域検出処理の対象となる画像（後述の顔検出用画像ＦＤＩｍｇ（図１０参照））から顔領域として検出すべき画像領域のサイズである。条件テーブルＣＴには、顔検出用画像ＦＤＩｍｇのサイズが横３２０画素×縦２４０画素である場合の検出サイズが示されている。なお、本実施例では、顔領域は正方形形状の画像領域として検出されるものとされており、検出サイズは、顔領域の１辺の長さが画素数を単位として規定されている。
【００３２】
図４に示すように、通常モードについては、検出サイズが２０画素から２４０画素までと規定されている。この検出サイズの範囲は、本実施例において検出可能な顔領域のサイズの範囲全体である。ポートレートモードについては、検出サイズが６０画素から１８０画素までと規定されており、比較的小さいサイズ（２０画素から６０画素まで）および比較的大きいサイズ（１８０画素から２４０画素まで）が検出サイズから除外されている。すなわち、ポートレートモードにおいては、顔検出用画像ＦＤＩｍｇのサイズに対して比較的小さいサイズおよび比較的大きいサイズの顔領域の検出は実行されない。スマイルモードについては、検出サイズが６０画素から２４０画素までと規定されており、比較的小さいサイズ（２０画素から６０画素まで）が検出サイズから除外されている。すなわち、スマイルモードにおいては、顔検出用画像ＦＤＩｍｇのサイズに対して比較的小さいサイズの顔領域の検出は実行されない。証明写真モードについては、検出サイズが１８０画素から２４０画素までと規定されており、比較的大きいサイズのみに限定されている。すなわち、証明写真モードにおいては、顔検出用画像ＦＤＩｍｇのサイズに対して比較的大きいサイズの顔領域の検出のみが実行される。
【００３３】
条件設定部２３１は、条件テーブルＣＴ（図４）に規定された検出サイズに従った顔領域の検出が実行されるように、使用ウィンドウサイズを設定する。本実施例では、後述するように、顔領域検出処理（図２のステップＳ１５０、Ｓ１８０およびＳ２１０）において、顔検出用画像ＦＤＩｍｇ上に正方形形状のウィンドウＳＷがそのサイズおよび位置が変更されつつ配置され、配置されたウィンドウＳＷにより規定される顔検出用画像ＦＤＩｍｇ上の画像領域である判定対象画像領域ＪＩＡが顔の画像に対応する画像領域であるか否かを判定することにより、顔領域の検出が行われる（図１０参照）。使用ウィンドウサイズは、顔領域検出処理において使用されるウィンドウＳＷのサイズの範囲（すなわち判定対象画像領域ＪＩＡのサイズとして取りうる値の範囲）である。
【００３４】
図５は、使用ウィンドウサイズの設定方法の一例を示す説明図である。条件設定部２３１（図１）は、図５（ａ）に示す予め設定された１５個のウィンドウＳＷの標準サイズを有している。すなわち、ウィンドウＳＷの標準サイズ（１辺の長さ）は、２０画素（最小サイズ）、２４画素、２９画素、３５画素、４１画素、５０画素、６０画素、７２画素、８６画素、１０３画素、１２４画素、１４９画素、１８０画素、２１３画素、２４０画素（最大サイズ）の合計１５個のサイズである。図５（ｂ）には、顔検出用画像ＦＤＩｍｇ上に配置された最小サイズのウィンドウＳＷ（ＳＷｓ（２０））と最大サイズのウィンドウＳＷ（ＳＷｓ（２４０））とを示している。
【００３５】
条件設定部２３１は、撮像モード毎に、１５個のウィンドウＳＷの標準サイズの内、条件テーブルＣＴ（図４）に規定された検出サイズの範囲内に含まれる標準サイズを、使用ウィンドウサイズとして設定する。通常モードについては、検出サイズが２０画素から２４０画素までと規定されているため、ウィンドウＳＷの１５個の標準サイズのすべてが使用ウィンドウサイズとして設定される。
【００３６】
ポートレートモードについては、図５（ｃ）に示すように、検出サイズが６０画素から１８０画素までと規定されているため、使用ウィンドウサイズは、検出サイズ内に含まれる標準サイズである６０画素、７２画素、８６画素、１０３画素、１２４画素、１４９画素、１８０画素の７個のサイズとなる。スマイルモードについては、図５（ｄ）に示すように、検出サイズが６０画素から２４０画素までと規定されているため、使用ウィンドウサイズは、検出サイズ内に含まれる標準サイズである６０画素、７２画素、８６画素、１０３画素、１２４画素、１４９画素、１８０画素、２１３画素、２４０画素の９個のサイズとなる。証明写真モードについては、図５（ｅ）に示すように、検出サイズが１８０画素から２４０画素までと規定されているため、使用ウィンドウサイズは、検出サイズ内に含まれる標準サイズである１８０画素、２１３画素、２４０画素の３個のサイズとなる。
【００３７】
条件テーブルＣＴ（図４）に規定された検出範囲は、顔領域検出処理の対象となる画像（後述の顔検出用画像ＦＤＩｍｇ）における顔領域の検出を行うべき画像領域である。図４に示すように、通常モードについては、検出範囲は顔検出用画像ＦＤＩｍｇの全領域であると規定されている。一方、その他のモード（ポートレートモード、スマイルモード、証明写真モード）については、検出範囲は、顔検出用画像ＦＤＩｍｇの一部の画像領域であると規定されている。なお図４には、条件テーブルＣＴにおいて、ポートレートモード、スマイルモード、証明写真モードについての検出範囲が顔検出用画像ＦＤＩｍｇの一部の画像領域であることが規定されていることのみを示しているが、実際には、各撮像モードについて、顔検出用画像ＦＤＩｍｇにおける検出範囲が規定されている。
【００３８】
条件設定部２３１は、条件テーブルＣＴ（図４）に規定された検出範囲に従った顔領域の検出が実行されるように、ウィンドウ移動範囲を設定する。ウィンドウ移動範囲は、顔領域検出処理（図２のステップＳ１５０、Ｓ１８０およびＳ２１０）において、ウィンドウＳＷが配置され得る顔検出用画像ＦＤＩｍｇ上の範囲（すなわち判定対象画像領域ＪＩＡが位置し得る範囲）である（図１０参照）。通常モードについては、検出範囲が顔検出用画像ＦＤＩｍｇの全領域であると規定されているため、ウィンドウ移動範囲は、顔検出用画像ＦＤＩｍｇの全領域に設定される。
【００３９】
図６は、検出範囲が顔検出用画像ＦＤＩｍｇの一部の領域である場合におけるウィンドウ移動範囲の設定方法の一例を示す説明図である。図６（ａ）には、例えばポートレートモードについて規定された顔検出用画像ＦＤＩｍｇ上の検出範囲ＤＡを示している。ポートレートモードについては、図６（ａ）に示すように、ウィンドウＳＷが顔検出用画像ＦＤＩｍｇの外側にはみ出さない限りにおいて、ウィンドウＳＷの中心が検出範囲ＤＡ内に位置するような範囲が、ウィンドウ移動範囲として設定される。このようにウィンドウ移動範囲を設定することは、検出範囲ＤＡにおいてウィンドウＳＷにより規定される判定対象画像領域ＪＩＡが設定されると表現できる。なお、図６（ｂ）に示すように、ポートレートモードについて、ウィンドウ移動範囲が、顔検出用画像ＦＤＩｍｇ上においてウィンドウＳＷ全体が検出範囲ＤＡ内に含まれるような範囲として設定されるものとしてもよい。スマイルモードおよび証明写真モードについても、ポートレートモードと同様に、撮像モードに応じて規定された検出範囲ＤＡに基づいて、ウィンドウ移動範囲が設定される。
【００４０】
条件テーブルＣＴ（図４）に規定された検出傾きは、顔領域検出処理の対象となる画像（顔検出用画像ＦＤＩｍｇ）において顔領域として検出すべき顔の画像の傾き（以下、「顔傾き」とも呼ぶ）である。ここで、顔傾きとは、画像面内（インプレーン）における顔の画像の回転角度を意味している。図７は、各顔傾きに対応する顔の画像の一例を示す説明図である。本実施例では、横長画像である顔検出用画像ＦＤＩｍｇ（図１０参照）の天地方向と、顔の画像の天地方向とが一致した状態（図７（ａ）の状態）を顔傾きが０度であると定義し、顔傾きが０度の状態から顔の画像が時計回りに回転する方向をプラスの方向として、顔傾きをマイナス１８０度からプラス１８０度までの値で示すものとしている。
【００４１】
図４に示すように、通常モードについては、検出傾きは、マイナス１８０度からプラス１８０度まで、すなわち、すべての傾きであると規定されている。そのため、通常モードにおいては、顔検出用画像ＦＤＩｍｇにおけるあらゆる顔傾きを有する顔の画像に対応する顔領域が検出され得る。
【００４２】
ポートレートモードおよびスマイルモードについては、図４に示すように、検出傾きは、マイナス１２０度からプラス１２０度までと規定されている。そのため、ポートレートモードおよびスマイルモードにおいては、顔検出用画像ＦＤＩｍｇにおける顔傾きがマイナス１２０度からプラス１２０度までの顔の画像に対応する顔領域が検出され得る。なお、ポートレートモードおよびスマイルモードについては、顔傾きが、顔の画像の天地方向が顔検出用画像ＦＤＩｍｇにおける天地方向または水平方向に一致する状態の顔傾きからプラスマイナス３０度の範囲内にある顔の画像に対応する顔領域を検出するために、検出傾きがマイナス１２０度からプラス１２０度までと規定されている。
【００４３】
証明写真モードについては、図４に示すように、検出傾きがマイナス９５度からマイナス８５度までおよびプラス８５度からプラス９５度までと規定されている。そのため、証明写真モードにおいては、顔検出用画像ＦＤＩｍｇにおける顔傾きがマイナス９５度からマイナス８５度までおよびプラス８５度からプラス９５度までの顔の画像に対応する顔領域が検出され得る。なお、証明写真モードについては、顔の画像の天地方向が横長の顔検出用画像ＦＤＩｍｇにおける水平方向にほぼ一致するような顔の画像に対応する顔領域を検出するために、検出傾きが上述のような角度であると規定されている。
【００４４】
条件テーブルＣＴ（図４）に規定された検出向きは、顔領域検出処理の対象となる画像（顔検出用画像ＦＤＩｍｇ）において顔領域として検出すべき顔の画像の向き（以下、「顔向き」とも呼ぶ）である。ここで、顔向きとは、画像面外（アウトプレーン）における顔の画像の向きを意味している。図８は、各顔向きに対応する顔の画像の一例を示す説明図である。本実施例では、デジタルスチルカメラ等の画像生成装置の撮像面に正対した顔の画像の顔向きを「正面向き」と定義し、撮像面に向かって右を向いた顔の画像（画像の観賞者からみて左を向いた顔の画像）の顔向きを「右向き」と、撮像面に向かって左を向いた顔の画像（画像の観賞者からみて右を向いた顔の画像）の顔向きを「左向き」と定義している。
【００４５】
図４に示すように、通常モードについては、検出向きは、正面向き、右向き、左向きのすべてであると規定されている。そのため、通常モードにおいては、顔検出用画像ＦＤＩｍｇにおける正面向き、右向き、左向きの顔の画像に対応する顔領域が検出され得る。ポートレートモード、スマイルモード、証明写真モードについては、図４に示すように、検出向きは、正面向きのみと規定されている。そのため、これらのモードにおいては、顔検出用画像ＦＤＩｍｇにおける正面向きの顔の画像に対応する顔領域のみが検出され得る。
【００４６】
条件設定部２３１は、条件テーブルＣＴ（図４）に規定された検出傾きおよび検出向きに従った顔領域の検出が実行されるように、複数の顔学習データＦＬＤ（図１）の中から使用する顔学習データＦＬＤを設定する。顔学習データＦＬＤの内容については後述するが、各顔学習データＦＬＤは、当該顔学習データＦＬＤを用いた顔領域検出処理によって検出可能な顔の画像の顔傾きおよび顔向きに対応付けられて設定されている。すなわち、使用する顔学習データＦＬＤが設定されると、顔領域検出処理によって検出可能な顔の画像の顔傾きおよび顔向きが定まる。
【００４７】
通常モードについては、図４に示すように、検出傾きがマイナス１８０度からプラス１８０度まで（すなわち、すべての顔傾き）と規定され、検出向きが正面向き、右向き、左向きのすべてであると規定されているため、すべての顔傾きおよびすべての顔向きに対応付けられた顔学習データＦＬＤが、使用する顔学習データＦＬＤとして設定される。
【００４８】
ポートレートモードおよびスマイルモードについては、図４に示すように、検出傾きがマイナス１２０度からプラス１２０度までと規定され、検出向きが正面向きのみであると規定されているため、当該顔傾きおよび顔向きに対応付けられた顔学習データＦＬＤが、使用する顔学習データＦＬＤとして設定される。
【００４９】
証明写真モードについては、図４に示すように、検出傾きがマイナス９５度からマイナス８５度までおよびプラス８５度からプラス９５度までと規定され、検出向きが正面向きのみであると規定されているため、当該顔傾きおよび顔向きに対応付けられた顔学習データＦＬＤが、使用する顔学習データＦＬＤとして設定される。
【００５０】
ステップＳ１３０（図２）では、画像生成部２１０（図１）が、撮像準備指示を取得し、撮像準備指示に応じて準備画像ＰＩｍｇを生成する。撮像準備指示は、例えばユーザが操作部１１６に含まれるシャッターボタンを半押しすると、画像生成部２１０に伝えられる。準備画像ＰＩｍｇは、撮像前の種々の処理に用いられる画像である。画像生成部２１０は、レンズ１０２や撮像素子１０８等を制御して、準備画像ＰＩｍｇを生成する。なお、表示部１１４が撮像時のファインダーとして利用されている場合には、準備画像ＰＩｍｇが表示部１１４に表示される。
【００５１】
画像生成処理（図２）におけるステップＳ１４０以降は、撮像モード情報により特定される撮像モードに応じた処理が実行される。撮像モードが通常モードである場合には、顔領域検出処理（ステップＳ１５０）が実行される。顔領域検出処理は、準備画像ＰＩｍｇに基づき生成された顔検出用画像ＦＤＩｍｇにおける顔の画像に対応する画像領域を顔領域ＦＡとして検出する処理である。顔領域検出処理の際には、ステップＳ１２０で設定された使用ウィンドウサイズ、ウィンドウ移動範囲、使用顔学習データが採用される。すなわち、通常モードにおいては、ウィンドウＳＷの１５個の標準サイズ（図５（ａ）参照）のすべてが使用ウィンドウサイズとして設定され、ウィンドウ移動範囲が顔検出用画像ＦＤＩｍｇの全領域に設定され、すべての顔傾きおよびすべての顔向きに対応付けられた顔学習データＦＬＤが使用する顔学習データＦＬＤとして設定された状態で、顔領域検出処理が実行される。なお、顔領域検出処理の内容は後に詳述する。
【００５２】
顔領域検出処理（図２のステップＳ１５０）が完了すると、画像生成部２１０（図１）が、撮像指示を取得する（ステップＳ１６０）。撮像指示は、例えばユーザが操作部１１６に含まれるシャッターボタンを半押しした状態から全押しすると、画像生成部２１０に伝えられる。ステップＳ１７０では、画像生成部２１０が、撮像指示に応じて、レンズ１０２や撮像素子１０８等を制御して撮像を行うことにより画像データを生成する。なお、画像生成部２１０は、顔領域検出処理において顔領域ＦＡが検出された場合には、画像データ生成の際に、検出された顔領域ＦＡを利用した所定の画像処理を実行するものとしてもよい。所定の画像処理としては、例えば顔の肌に対応する画像の部分の色を好ましい肌色に調整するための肌色補正や、顔の画像を変形させる変形処理等が挙げられる。
【００５３】
一方、撮像モードがポートレートモードまたは証明写真モードである場合には、やはり、ステップＳ１２０で設定された使用ウィンドウサイズ、ウィンドウ移動範囲、使用顔学習データを採用した顔領域検出処理（図２のステップＳ１８０）が実行される。すなわち、ポートレートモードにおいては、上述した７個のウィンドウＳＷのサイズが使用ウィンドウサイズとして設定され（図５（ｃ）参照）、ウィンドウＳＷの中心が検出範囲ＤＡ内に位置するようなウィンドウ移動範囲が設定され、マイナス１２０度からプラス１２０度までの顔傾きと正面向きの顔向きとに対応付けられた顔学習データＦＬＤが使用する顔学習データＦＬＤとして設定された状態で、顔領域検出処理が実行される。また、証明写真モードにおいては、上述した３個のウィンドウＳＷのサイズが使用ウィンドウサイズとして設定され（図５（ｅ）参照）、ウィンドウＳＷの中心が検出範囲ＤＡ内に位置するようなウィンドウ移動範囲が設定され、マイナス９５度からマイナス８５度までおよびプラス８５度からプラス９５度までの顔傾きと正面向きの顔向きとに対応付けられた顔学習データＦＬＤが使用する顔学習データＦＬＤとして設定された状態で、顔領域検出処理が実行される。
【００５４】
顔領域検出処理（図２のステップＳ１８０）において顔領域ＦＡが検出されなかった場合には（ステップＳ１９０：Ｎｏ）、再度、顔領域検出処理が実行される。顔領域検出処理において顔領域ＦＡが検出された場合には（ステップＳ１９０：Ｙｅｓ）、画像生成部２１０が、レンズ１０２や撮像素子１０８等を制御して撮像を行うことにより画像データを生成する（ステップＳ２００）。すなわち、撮像モードがポートレートモードまたは証明写真モードである場合には、ユーザによる撮像指示（図２のステップＳ１６０参照）に応じてではなく、顔領域検出処理における顔領域ＦＡの検出に応じて自動的に、撮像による画像データの生成が実行される。なお、ポートレートモードまたは証明写真モードにおいても、通常モード時と同様に、画像データ生成の際に、検出された顔領域ＦＡを利用した所定の画像処理を実行するものとしてもよい。
【００５５】
撮像モードがスマイルモードである場合には、やはり、ステップＳ１２０で設定された使用ウィンドウサイズ、ウィンドウ移動範囲、使用顔学習データを採用した顔領域検出処理（図２のステップＳ２１０）が実行される。すなわち、スマイルモードにおいては、上述した９個のウィンドウＳＷのサイズが使用ウィンドウサイズとして設定され（図５（ｄ）参照）、ウィンドウＳＷの中心が検出範囲ＤＡ内に位置するようなウィンドウ移動範囲が設定され、マイナス１２０度からプラス１２０度までの顔傾きと正面向きの顔向きとに対応付けられた顔学習データＦＬＤが使用する顔学習データＦＬＤとして設定された状態で、顔領域検出処理が実行される。
【００５６】
顔領域検出処理（図２のステップＳ２１０）において、顔領域ＦＡが検出されなかった場合には（ステップＳ２２０：Ｎｏ）、再度、顔領域検出処理が実行される。顔領域検出処理において、顔領域ＦＡが検出された場合には（ステップＳ２２０：Ｙｅｓ）、表情判別部２４０（図１）が、表情データＥＤを利用して笑顔判定を行う（ステップＳ２３０）。笑顔判定は、検出された顔領域ＦＡに対応する顔の画像の表情が笑顔であるか否かを判定する処理である。笑顔判定は、顔領域ＦＡから顔器官学習データＯＬＤ（図１）を用いて顔の器官の画像に対応する画像領域である器官領域の検出を行うと共に、顔および顔の器官の輪郭検出を行い、口角の開き具合、鼻唇溝の有無、目尻の下がり具合等を総合的に評価することにより実行可能である。なお、笑顔判定の実行に必要な技術は、特開２００４−１７８５９３号公報や、副島義貴著「場景変動を考慮した移動物体の追跡に関する研究」１９９８年２月１５日等に記載されている。また、器官領域の検出は、使用する学習データが顔学習データＦＬＤではなく顔器官学習データＯＬＤであることを除けば、顔領域検出処理と同様の処理により実行可能である。
【００５７】
笑顔判定（図２のステップＳ２３０）において、検出された顔領域ＦＡに対応する顔の画像の表情は笑顔ではないと判定された場合には（ステップＳ２４０：Ｎｏ）、再度、顔領域検出処理が実行される。一方、笑顔判定において検出された顔領域ＦＡに対応する顔の画像の表情が笑顔であると判定された場合には（ステップＳ２４０：Ｙｅｓ）、画像生成部２１０が、レンズ１０２や撮像素子１０８等を制御して撮像を行うことにより画像データを生成する（ステップＳ２５０）。すなわち、撮像モードがスマイルモードである場合には、ユーザによる撮像指示（図２のステップＳ１６０参照）に応じてではなく、顔領域検出処理における顔領域ＦＡの検出および笑顔判定における笑顔であるとの判定に応じて自動的に、撮像による画像データの生成が実行される。なお、スマイルモードにおいても、通常モード時と同様に、画像データ生成の際に、検出された顔領域ＦＡを利用した所定の画像処理を実行するものとしてもよい。
【００５８】
Ａ−３．顔領域検出処理：
図９は、実施例における顔領域検出処理（図２のステップ１５０、Ｓ１８０およびＳ２１０）の流れを示すフローチャートである。また、図１０は、顔領域検出処理の概要を示す説明図である。顔領域検出処理は、対象画像データの表す対象画像から顔の画像に対応する画像領域である顔領域ＦＡの検出を行う処理である。図１０の最上段には、画像生成処理（図２）のステップＳ１３０において生成された準備画像ＰＩｍｇを示している。
【００５９】
ステップＳ３１０（図９）では、領域検出部２３０（図１）が、準備画像ＰＩｍｇを表す準備画像データから顔検出用画像ＦＤＩｍｇを表す顔検出用画像データを生成する。本実施例では、図１０に示すように、顔検出用画像ＦＤＩｍｇは横３２０画素×縦２４０画素のサイズの画像である。領域検出部２３０は、必要により準備画像データの解像度変換を行うことにより、顔検出用画像ＦＤＩｍｇを表す顔検出用画像データを生成する。なお、本実施例の顔領域検出処理において、顔検出用画像ＦＤＩｍｇを表す顔検出用画像データは、本発明における対象画像を表す対象画像データに相当する。
【００６０】
ステップＳ３２０（図３）では、判定対象設定部２３２（図１）が、判定対象画像領域ＪＩＡの設定に用いるウィンドウＳＷのサイズを初期値に設定する。ステップＳ３３０では、判定対象設定部２３２が、ウィンドウＳＷを顔検出用画像ＦＤＩｍｇ上の初期位置に配置する。ステップＳ３４０では、判定対象設定部２３２が、顔検出用画像ＦＤＩｍｇ上に配置されたウィンドウＳＷにより規定される画像領域を、顔の画像に対応する顔領域であるか否かの判定（以下「顔判定」とも呼ぶ）の対象となる判定対象画像領域ＪＩＡに設定する。
【００６１】
ここで、ウィンドウＳＷのサイズの初期値およびウィンドウＳＷの顔検出用画像ＦＤＩｍｇ上における初期位置は、画像生成処理（図２）のステップＳ１２０で設定された使用ウィンドウサイズおよびウィンドウ移動範囲に基づき設定される。具体的には、ウィンドウＳＷのサイズの初期値は、使用ウィンドウサイズの中で最大のサイズに設定される。例えば、撮像モードがポートレートモードに設定されたときの顔領域検出処理（図２のステップＳ１８０）では、図５（ｃ）に示すポートレートモードにおける使用ウィンドウサイズの内の最大サイズである１８０画素が、ウィンドウＳＷのサイズの初期値として設定される。また、ウィンドウＳＷの顔検出用画像ＦＤＩｍｇ上における初期位置は、ウィンドウＳＷがウィンドウ移動範囲内に位置する限りにおいて最も左上側の位置である。すなわち、ウィンドウＳＷの中心が検出範囲ＤＡの左上の頂点に重なるような位置である（図６（ａ）参照）。ただし、このように初期位置を設定するとウィンドウＳＷが顔検出用画像ＦＤＩｍｇの外側にはみ出してしまう場合には、初期位置は、ウィンドウＳＷの上辺または左辺が顔検出用画像ＦＤＩｍｇの上辺または左辺に重なるような位置である。図１０の中段には、顔検出用画像ＦＤＩｍｇ上に初期値のサイズのウィンドウＳＷが初期位置に配置され、ウィンドウＳＷにより規定される画像領域が判定対象画像領域ＪＩＡとして設定された様子を示している。
【００６２】
ステップＳ３５０（図９）では、評価値算出部２３３（図１）が、判定対象画像領域ＪＩＡについて、判定対象画像領域ＪＩＡに対応する画像データ基づき、顔判定に用いる累計評価値Ｔｖを算出する。なお、本実施例では、顔判定は、画像生成処理（図２）のステップＳ１２０で設定された使用顔学習データを用いて行われる。すなわち、顔判定は、判定対象画像領域ＪＩＡが、使用顔学習データを構成する各顔学習データＦＬＤ（図１）に対応付けられた顔傾きおよび顔向きを有する顔の画像に対応する画像領域であるか否かを判定することにより実行される。また、本実施例では、顔学習データＦＬＤは、特定顔傾きおよび特定顔向きの組み合わせ毎に用意されている。ここで、特定顔傾きは、予め設定された図７に示す１２個の顔傾きであり、特定顔向きは、予め設定された図８に示す３個の顔向きである。評価値算出部２３３は、ステップＳ１２０で設定された使用顔学習データに対応する特定顔傾きおよび特定顔向きの組み合わせ毎に、累計評価値Ｔｖを算出する。
【００６３】
図１１は、顔判定に用いる累計評価値Ｔｖの算出方法の概要を示す説明図である。本実施例では、累計評価値Ｔｖの算出にＮ個のフィルタ（フィルタ１〜フィルタＮ）が用いられる。各フィルタの外形はウィンドウＳＷと同じアスペクト比を有しており（すなわち正方形形状であり）、各フィルタにはプラス領域ｐａとマイナス領域ｍａとが設定されている。評価値算出部２３３は、判定対象画像領域ＪＩＡにフィルタＸ（Ｘ＝１，２，・・・，Ｎ）を順に適用して評価値ｖＸ（すなわちｖ１〜ｖＮ）を算出する。具体的には、評価値ｖＸは、フィルタＸのプラス領域ｐａに対応する判定対象画像領域ＪＩＡ上の領域内に位置する画素の輝度値の合計から、マイナス領域ｍａに対応する判定対象画像領域ＪＩＡ上の領域内に位置する画素の輝度値の合計を差し引いた値である。
【００６４】
算出された評価値ｖＸは、各評価値ｖＸに対応して設定された閾値ｔｈＸ（すなわちｔｈ１〜ｔｈＮ）と比較される。本実施例では、評価値ｖＸが閾値ｔｈＸ以上である場合には、フィルタＸに関しては判定対象画像領域ＪＩＡが顔の画像に対応する画像領域であると判定され、フィルタＸの出力値として値「１」が設定される。一方、評価値ｖＸが閾値ｔｈＸより小さい場合には、フィルタＸに関しては判定対象画像領域ＪＩＡが顔の画像に対応しない画像領域であると判定され、フィルタＸの出力値として値「０」が設定される。各フィルタＸには重み係数ＷｅＸ（すなわちＷｅ１〜ＷｅＮ）が設定されており、すべてのフィルタについての出力値と重み係数ＷｅＸとの積の合計が、累計評価値Ｔｖとして算出される。
【００６５】
なお、顔判定に用いられるフィルタＸの態様や閾値ｔｈＸ、重み係数ＷｅＸ、後述の閾値ＴＨは、顔学習データＦＬＤ（図１）として規定されている。顔学習データＦＬＤは、サンプル画像を用いた学習によって設定される。図１２は、学習に用いられるサンプル画像の一例を示す説明図である。学習には、顔の画像に対応する画像であることが予めわかっている複数の顔サンプル画像によって構成された顔サンプル画像群と、顔の画像に対応する画像ではないことが予めわかっている複数の非顔サンプル画像によって構成された非顔サンプル画像群と、が用いられる。
【００６６】
学習による顔学習データＦＬＤの設定は特定顔傾きおよび特定顔向きの組み合わせ毎に実行される。そのため、顔サンプル画像群は、１２個の特定顔傾きと３個の特定顔向きとの組み合わせのそれぞれに対応するものが準備される。図１２には、正面向きの特定顔向きに対応するいくつかの顔サンプル画像群を示している。例えば０度の特定顔傾きと正面向きの特定顔向きとの組み合わせについての顔学習データＦＬＤの設定は、０度の特定顔傾きと正面向きの特定顔向きとの組み合わせに対応する顔サンプル画像群と非顔サンプル画像群とを用いて実行される。
【００６７】
各顔サンプル画像群は、画像サイズに対する顔の画像の大きさの比が所定の値の範囲内であると共に顔の画像の傾きが特定顔傾きに等しい複数の顔サンプル画像（以下、「基本顔サンプル画像ＦＩｏ」とも呼ぶ）を含む。また、顔サンプル画像群は、少なくとも１つの基本顔サンプル画像ＦＩｏについて、基本顔サンプル画像ＦＩｏを例えば１．２倍から０．８倍までの範囲の所定の倍率で拡大および縮小した画像（例えば図１２における画像ＦＩａおよびＦＩｂ）や、基本顔サンプル画像ＦＩｏを時計回りおよび反時計回りに例えば１５度の範囲で所定の角度だけ回転させた画像（例えば図１２における画像ＦＩｃおよびＦＩｄ）をも含む。
【００６８】
サンプル画像を用いた学習は、例えばニューラルネットワークを用いた方法や、ブースティング（例えばアダブースティング）を用いた方法、サポートベクターマシーンを用いた方法等により実行される。例えば学習がニューラルネットワークを用いた方法により実行される場合には、各フィルタＸ（すなわちフィルタ１〜フィルタＮ、図１１参照）について、ある顔サンプル画像群と非顔サンプル画像群とに含まれるすべてのサンプル画像を用いて評価値ｖＸ（すなわちｖ１〜ｖＮ）が算出され、所定の顔検出率を達成する閾値ｔｈＸ（すなわちｔｈ１〜ｔｈＮ）が設定される。ここで、顔検出率とは、顔サンプル画像群を構成する顔サンプル画像の総数に対する、評価値ｖＸによる閾値判定によって顔の画像に対応する画像であると判定される顔サンプル画像の数の割合を意味している。
【００６９】
次に、各フィルタＸに設定された重み係数ＷｅＸ（すなわちＷｅ１〜ＷｅＮ）が初期値に設定され、顔サンプル画像群および非顔サンプル画像群の中から選択された１つのサンプル画像についての累計評価値Ｔｖが算出される。後述するように、顔判定においては、ある画像について算出された累計評価値Ｔｖが所定の閾値ＴＨ以上の場合には、当該画像は顔の画像に対応する画像であると判定される。学習においては、選択されたサンプル画像（顔サンプル画像または非顔サンプル画像）について算出された累計評価値Ｔｖによる閾値判定結果の正誤に基づき、各フィルタＸに設定された重み係数ＷｅＸの値が修正される。以降、サンプル画像の選択と、選択されたサンプル画像について算出された累計評価値Ｔｖによる閾値判定、および判定結果の正誤に基づく重み係数ＷｅＸの値の修正が、顔サンプル画像群および非顔サンプル画像群に含まれるすべてのサンプル画像について繰り返し実行される。以上の処理が特定顔傾きおよび特定顔向きの組み合わせ毎に実行されることにより、特定顔傾きおよび特定顔向きの組み合わせ毎の顔学習データＦＬＤが設定される。
【００７０】
判定対象画像領域ＪＩＡについて画像生成処理（図２）のステップＳ１２０で設定された使用顔学習データに対応する特定顔傾きおよび特定顔向きの組み合わせ毎に累計評価値Ｔｖが算出されると（図９のステップＳ３５０）、判定部２３４（図１）は、累計評価値Ｔｖを特定顔傾きおよび特定顔向きの組み合わせ毎に設定された閾値ＴＨと比較する（ステップＳ３６０）。累計評価値Ｔｖが閾値ＴＨ以上である場合には、領域検出部２３０が、判定対象画像領域ＪＩＡは当該特定顔傾きおよび当該特定顔向きを有する顔の画像に対応する画像領域であるとして、判定対象画像領域ＪＩＡの位置、すなわち現在設定されているウィンドウＳＷの座標と、当該特定顔傾きおよび当該特定顔向きと、を記憶する（ステップＳ３７０）。一方、いずれの特定顔傾きおよび当該特定顔向きの組み合わせについても累計評価値Ｔｖが閾値ＴＨより小さい場合には、ステップＳ３７０の処理はスキップされる。
【００７１】
ステップＳ３８０（図９）では、領域検出部２３０（図１）が、現在設定されているサイズのウィンドウＳＷにより、図２のステップＳ１２０で設定されたウィンドウ移動範囲全体がスキャンされたか否かを判定する。未だウィンドウ移動範囲全体がスキャンされていないと判定された場合には、判定対象設定部２３２（図１）が、ウィンドウＳＷを所定の方向に所定のウィンドウ移動ピッチＳＰだけ移動する（ステップＳ３９０）。図１０の下段には、ウィンドウＳＷが移動した様子を示している。ウィンドウ移動ピッチＳＰは、例えば、縦方向および横方向共にウィンドウＳＷのサイズに０．２を乗じた値である。ステップＳ３９０では、ウィンドウＳＷがこのウィンドウ移動ピッチＳＰ分の移動量で右方向に移動する。また、ウィンドウＳＷがさらに右方向には移動できない位置に配置されている場合には、ステップＳ３９０において、ウィンドウＳＷがウィンドウ移動範囲の左端まで戻ると共に、ウィンドウ移動ピッチＳＰ分の移動量で下方向に移動する。ウィンドウＳＷがさらに下方向には移動できない位置に配置されている場合には、ウィンドウ移動範囲全体がスキャンされたこととなる。ウィンドウＳＷの移動（ステップＳ３９０）の後には、移動後のウィンドウＳＷについて、上述のステップＳ３４０以降の処理が実行される。
【００７２】
ステップＳ３８０（図９）において現在設定されているサイズのウィンドウＳＷによりウィンドウ移動範囲全体がスキャンされたと判定された場合には、図２のステップＳ１２０で設定された使用ウィンドウサイズがすべて使用されたか否かが判定される（ステップＳ４００）。未だ使用されていない使用ウィンドウサイズがあると判定された場合には、判定対象設定部２３２（図１）が、ウィンドウＳＷのサイズを現在設定されているサイズの次に小さい使用ウィンドウサイズに変更する（ステップＳ４１０）。すなわち、ウィンドウＳＷのサイズは、最初に使用ウィンドウサイズの内の最大サイズに設定され、その後、順に小さいサイズに変更されていく。ウィンドウＳＷのサイズの変更（ステップＳ４１０）の後には、変更後のサイズのウィンドウＳＷについて、上述のステップＳ３３０以降の処理が実行される。
【００７３】
ステップＳ４００（図９）において使用ウィンドウサイズがすべて使用されたと判定された場合には、領域設定部２３５（図１）が、顔領域設定処理を実行する（ステップＳ４２０）。図１３および図１４は、顔領域設定処理の概要を示す説明図である。領域設定部２３５は、図９のステップＳ３６０において累計評価値Ｔｖが閾値ＴＨ以上であると判定されステップＳ３７０において記憶されたウィンドウＳＷの座標（すなわちウィンドウＳＷの位置およびサイズ）と特定顔傾きとに基づき、顔の画像に対応する画像領域としての顔領域ＦＡを設定する。具体的には、特定顔傾きが０度である場合には、ウィンドウＳＷにより規定される画像領域（すなわち判定対象画像領域ＪＩＡ）が、そのまま顔領域ＦＡとして設定される。一方、特定顔傾きが０度以外である場合には、ウィンドウＳＷにより規定される画像領域（判定対象画像領域ＪＩＡ）を所定の点（例えばウィンドウＳＷの重心）を中心として特定顔傾き分だけ回転させた画像領域が顔領域ＦＡとして設定される。例えば図１３（ａ）に示すように、３０度の特定顔傾きについて累計評価値Ｔｖが閾値ＴＨ以上であると判定された場合には、図１３（ｂ）に示すように、ウィンドウＳＷにより規定される画像領域をウィンドウＳＷの重心を中心として時計回りに３０度回転させた画像領域が顔領域ＦＡとして設定される。
【００７４】
また、領域設定部２３５は、ステップＳ３７０において、ある特定顔傾きおよび特定顔向きの組み合わせについて互いに一部が重複する複数のウィンドウＳＷが記憶された場合には、各ウィンドウＳＷにおける所定の点（例えばウィンドウＳＷの重心）の座標の平均の座標を重心とし、各ウィンドウＳＷのサイズの平均のサイズを有する１つの新たなウィンドウ（以下、「平均ウィンドウＡＷ」とも呼ぶ）を設定する。例えば図１４（ａ）に示すように、互いに一部が重複する４つのウィンドウＳＷ（ＳＷ１〜ＳＷ４）が記憶された場合には、図１４（ｂ）に示すように、４つのウィンドウＳＷのそれぞれの重心の座標の平均の座標を重心とし、４つのウィンドウＳＷのそれぞれのサイズの平均のサイズを有する１つの平均ウィンドウＡＷが定義される。このとき、上述したのと同様に、特定顔傾きが０度である場合には、平均ウィンドウＡＷにより規定される画像領域がそのまま顔領域ＦＡとして設定される。一方、特定顔傾きが０度以外である場合には、平均ウィンドウＡＷにより規定される画像領域を所定の点（例えば平均ウィンドウＡＷの重心）を中心として特定顔傾き分だけ回転させた画像領域が顔領域ＦＡとして設定される（図１４（ｃ）参照）。
【００７５】
なお、図１３に示したように、他のウィンドウＳＷと重複しない１つのウィンドウＳＷが記憶された場合にも、図１４に示した互いに一部が重複する複数のウィンドウＳＷが記憶された場合と同様に、１つのウィンドウＳＷ自身が平均ウィンドウＡＷであると解釈することも可能である。
【００７６】
本実施例では、学習の際に用いられる顔サンプル画像群（図１２参照）に、基本顔サンプル画像を例えば１．２倍から０．８倍までの範囲の所定の倍率で拡大および縮小した画像（例えば図１２における画像ＦＩａおよびＦＩｂ）が含まれているため、ウィンドウＳＷの大きさに対する顔の画像の大きさが基本顔サンプル画像ＦＩｏと比べてわずかに大きかったり小さかったりする場合にも、顔領域ＦＡが検出されうる。従って、本実施例では、ウィンドウＳＷの標準サイズとして上述した１５個の離散的なサイズのみが設定されているが、あらゆる大きさの顔の画像について顔領域ＦＡが検出されうる。同様に、本実施例では、学習の際に用いられる顔サンプル画像群に、基本顔サンプル画像を時計回りおよび反時計回りに例えば１５度の範囲で所定の角度だけ回転させた画像（例えば図１２における画像ＦＩｃおよびＦＩｄ）が含まれているため、ウィンドウＳＷに対する顔の画像の傾きが基本顔サンプル画像ＦＩｏとはわずかに異なっている場合にも、顔領域ＦＡが検出されうる。従って、本実施例では、特定顔傾きとして上述した１２個の離散的な角度のみが設定されているが、あらゆる角度の顔の画像について顔領域ＦＡが検出されうる。
【００７７】
なお、顔領域検出処理において検出された顔領域ＦＡから顔の器官の画像に対応する画像領域である器官領域の検出を行う器官領域検出処理は、顔領域検出処理と同様に、顔領域ＦＡ上にウィンドウＳＷをサイズおよび位置を変更しつつ配置し、配置されたウィンドウＳＷにより規定される画像領域が顔の器官の画像に対応する画像領域であるか否かを判定することにより、実行可能である。また、器官領域検出処理に用いられる顔器官学習データＯＬＤ（図１）は、顔学習データＦＬＤと同様に、サンプル画像群を用いた学習により設定可能である。
【００７８】
以上説明したように、本実施例の画像生成処理（図２）では、顔領域の検出結果の用途を特定可能な情報である撮像モード情報が取得され、撮像モード情報に基づき、使用ウィンドウサイズ（すなわち判定対象画像領域ＪＩＡのサイズとして取りうる値の範囲）と、ウィンドウ移動範囲（すなわち判定対象画像領域ＪＩＡが位置し得る範囲）と、が設定される。なお、判定対象画像領域ＪＩＡのサイズとして取りうる値の範囲と判定対象画像領域ＪＩＡが位置し得る範囲とは、まとめて判定対象画像領域ＪＩＡの設定条件と表現することができる。そのため、顔領域検出処理において、撮像モードに応じた処理に必要なサイズおよび位置の顔領域の検出のみが実行される。従って、本実施例の画像生成処理では、対象画像からの顔領域の検出の際に、処理の高速化を図ることができる。
【００７９】
Ｂ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００８０】
Ｂ１．変形例１：
上記実施例では、ＤＳＣ１００による画像生成処理を例に用いて説明したが、本発明は、ＤＳＣ１００以外の他の画像処理装置にも適用可能である。例えば、本発明は、デジタルビデオカメラ等の他の画像生成装置による画像生成処理にも適用可能である。また、本発明は、パーソナルコンピュータやプリンタにおいて、画像データと撮像モード情報とを含む画像ファイルが取得された場合における、画像データの表す画像を対象とした顔領域検出処理にも適用可能である。この場合には、画像ファイルに含まれる撮像モード情報が取得され、撮像モード情報により特定される撮像モードに応じて、使用ウィンドウサイズ、ウィンドウ移動範囲、使用顔学習データが設定される。
【００８１】
Ｂ２．変形例２：
上記実施例における撮像モードの種類（図３）は、あくまで一例であり、ＤＳＣ１００が、図３に示した撮像モードの一部を有さないとしてもよいし、他の撮像モードを有するとしてもよい。また、条件テーブルＣＴ（図４）において撮像モードに応じて規定された検出サイズ、検出傾き、検出向き、検出範囲は、あくまで一例であり、種々変更可能である。
【００８２】
Ｂ３．変形例３：
上記実施例では、正方形形状のウィンドウＳＷを採用しているが、ウィンドウＳＷの形状は正方形形状に限られない。例えば、ウィンドウＳＷの形状は、円形形状であってもよい。この場合には、ウィンドウＳＷのサイズは、例えば円の径により特定される。
【００８３】
Ｂ４．変形例４：
上記実施例における顔領域検出処理（図９）の態様はあくまで一例であり、種々変更可能である。例えば顔検出用画像ＦＤＩｍｇ（図１０参照）のサイズは３２０画素×２４０画素に限られず、他のサイズであってもよいし、準備画像ＰＩｍｇそのものを顔検出用画像ＦＤＩｍｇとして用いることも可能である。また、使用されるウィンドウＳＷのサイズやウィンドウＳＷの移動方向および移動量（移動ピッチ）は上述したものに限られない。また、上記実施例では、顔検出用画像ＦＤＩｍｇのサイズが固定され、複数種類のサイズのウィンドウＳＷが顔検出用画像ＦＤＩｍｇ上に配置されることにより複数サイズの判定対象画像領域ＪＩＡが設定されているが、複数種類のサイズの顔検出用画像ＦＤＩｍｇが生成され、固定サイズのウィンドウＳＷが顔検出用画像ＦＤＩｍｇ上に配置されることにより複数サイズの判定対象画像領域ＪＩＡが設定されるものとしてもよい。
【００８４】
また、上記実施例では、累計評価値Ｔｖを閾値ＴＨと比較することにより顔判定を行っているが（図１１参照）、顔判定を複数の判別器を用いた判別等の他の方法によって行ってもよい。顔判定の方法に応じて、顔学習データＦＬＤの設定に用いられる学習方法も変更される。また、顔判定は、必ずしも学習を用いた判別方法により行われる必要はなく、パターンマッチング等の他の方法により行われるとしてもよい。
【００８５】
また、上記実施例では、３０度刻みの１２種類の特定顔傾き（図１２参照）が設定されているが、より多くの種類の特定顔傾きが設定されてもよいし、より少ない種類の特定顔傾きが設定されてもよい。また、必ずしも特定顔傾きが設定される必要はなく、０度の顔傾きについての顔判定が行われるとしてもよい。また、上記実施例では、顔サンプル画像群に基本顔サンプル画像ＦＩｏを拡大・縮小した画像や回転させた画像が含まれるとしているが、顔サンプル画像群に必ずしもこのような画像が含まれる必要はない。
【００８６】
上記実施例において、あるサイズのウィンドウＳＷにより規定される判定対象画像領域ＪＩＡについての顔判定で顔の画像に対応する画像領域であると判定された場合には、当該サイズより所定の比率以上小さいサイズのウィンドウＳＷを配置する場合には、顔の画像に対応する画像領域であると判定された判定対象画像領域ＪＩＡを避けて配置するものとしてもよい。このようにすれば、処理の高速化を図ることができる。
【００８７】
上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【００８８】
また、本発明の機能の一部または全部がソフトウェアで実現される場合には、そのソフトウェア（コンピュータプログラム）は、コンピュータ読み取り可能な記録媒体に格納された形で提供することができる。この発明において、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスクやＣＤ−ＲＯＭのような携帯型の記録媒体に限らず、各種のＲＡＭやＲＯＭ等のコンピュータ内の内部記憶装置や、ハードディスク等のコンピュータに固定されている外部記憶装置も含んでいる。
【図面の簡単な説明】
【００８９】
【図１】本発明の実施例における画像処理装置としてのデジタルスチルカメラ１００の構成を概略的に示す説明図である。
【図２】実施例のＤＳＣ１００による画像生成処理の流れを示すフローチャートである。
【図３】撮像モード情報取得のためのユーザインタフェースの一例を示す説明図である。
【図４】条件テーブルＣＴの内容の一例を示す説明図である。
【図５】使用ウィンドウサイズの設定方法の一例を示す説明図である。
【図６】検出範囲が顔検出用画像ＦＤＩｍｇの一部の領域である場合におけるウィンドウ移動範囲の設定方法の一例を示す説明図である。
【図７】各顔傾きに対応する顔の画像の一例を示す説明図である。
【図８】各顔向きに対応する顔の画像の一例を示す説明図である。
【図９】実施例における顔領域検出処理の流れを示すフローチャートである。
【図１０】顔領域検出処理の概要を示す説明図である。
【図１１】顔判定に用いる累計評価値Ｔｖの算出方法の概要を示す説明図である。
【図１２】学習に用いられるサンプル画像の一例を示す説明図である。
【図１３】顔領域設定処理の概要を示す説明図である。
【図１４】顔領域設定処理の概要を示す説明図である。
【符号の説明】
【００９０】
１００…デジタルスチルカメラ
１０２…レンズ
１０４…レンズ駆動部
１０６…レンズ駆動制御部
１０８…撮像素子
１１０…Ａ／Ｄ変換器
１１４…表示部
１１６…操作部
１１８…ＣＰＵ
１２２…バス
２００…内部メモリ
２１０…画像生成部
２２０…モード設定部
２３０…領域検出部
２３１…条件設定部
２３２…判定対象設定部
２３３…評価値算出部
２３４…判定部
２３５…領域設定部
２４０…表情判別部
【図１】
2009237611.tif 000003
【図２】
2009237611.tif 000004
【図３】
2009237611.tif 000005
【図４】
2009237611.tif 000006
【図５】
2009237611.tif 000007
【図６】
2009237611.tif 000008
【図７】
2009237611.tif 000009
【図８】
2009237611.tif 000010
【図９】
2009237611.tif 000011
【図１０】
2009237611.tif 000012
【図１１】
2009237611.tif 000013
【図１２】
2009237611.tif 000014
【図１３】
2009237611.tif 000015
【図１４】
2009237611.tif 000016