JP4329821B2 - 顔検出装置、顔検出方法および顔検出プログラム - Google Patents

顔検出装置、顔検出方法および顔検出プログラム Download PDF

Info

Publication number
JP4329821B2
JP4329821B2 JP2007022401A JP2007022401A JP4329821B2 JP 4329821 B2 JP4329821 B2 JP 4329821B2 JP 2007022401 A JP2007022401 A JP 2007022401A JP 2007022401 A JP2007022401 A JP 2007022401A JP 4329821 B2 JP4329821 B2 JP 4329821B2
Authority
JP
Japan
Prior art keywords
block
face
determination
hue
brightness
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.)
Expired - Fee Related
Application number
JP2007022401A
Other languages
English (en)
Other versions
JP2008191723A (ja
Inventor
真幹 大崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2007022401A priority Critical patent/JP4329821B2/ja
Priority to US12/023,691 priority patent/US8019128B2/en
Publication of JP2008191723A publication Critical patent/JP2008191723A/ja
Application granted granted Critical
Publication of JP4329821B2 publication Critical patent/JP4329821B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/162Detection; Localisation; Normalisation using pixel segmentation or colour matching

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Description

本発明は、顔検出装置、顔検出方法および顔検出プログラムに関し、特に、画像の中から人物の顔である顔画像をユーザーが満足できるような精度、時間で検出することができる顔検出装置、顔検出方法および顔検出プログラムに関するものである。
従来より、画像の中から人物の顔である顔画像を検出する顔検出装置が知られている。この種の顔画像検出装置に関し、次の特許文献1には、画像データに対してエッジ抽出処理などの複数の画像処理を行うことで、目の位置を検出し、その検出した目の周囲の領域の画像と、予め複数登録されている目の周囲の領域の特徴を示すパターン情報とを比較して、人の顔を構成する画像データであるかを判定する技術が記載されている。
特開2001−175869号公報(0057、0067段落など)
しかしながら、特許文献1に記載された技術では、多種多様である人の顔の画像を判定するために、多くのパターン情報を登録しておく必要があるり、登録したパターンが多いと比較処理に長時間を有するという問題点があった。
一方、顔画像を検出できる検出精度、顔画像を検出するのに要する検出時間については、ユーザー毎に、或は、同じユーザーであっても時と場合によって、その要求は様々に異なるものである。よって、いくら精度良く顔画像を検出できたとしても、長時間かかっていては、ユーザーの要求を満足することはできない場合や、反対に、いくら短時間で顔画像を検出できたとしても、その精度が悪ければユーザーの要求を満足することができない場合があった。
本発明は、上述した問題を解決するためになされたものであり、画像の中から人物の顔である顔画像をユーザーが満足できるような精度、時間で検出することができる顔検出装置、顔検出方法および顔検出プログラムを提供することを目的とする。
この目的を達成するために、請求項1記載の顔検出装置は、画像の中から人物の顔である顔画像を検出するものであって、前記画像の中の判定対象が前記顔画像であるか否かの判定を行する顔判定手段と、その顔判定手段による判定を所定回数実行する度に、その判定結果をユーザーに提示する提示手段と、その提示手段によって提示された判定結果に基づいてユーザーが決定する次回の顔判定手段による判定を実行するか否かの決定に従って、次回の顔判定手段による判定を実行するか否かを判断する判断手段と、前記画像を構成する各画素の明度と、彩度と、色相とを読み取る読取手段と、その読取手段によって読み取った各画素の明度と、彩度と、色相とから所定範囲の肌色値を有する画素を特定する特定手段と、その特定手段によって特定された全画素の外周を包囲する長方形の領域を抽出する肌色領域抽出手段とを備え、前記顔判定手段は、前記肌色領域抽出手段により抽出された長方形の領域を升目状のブロックに分割するものであって、前記判断手段によって次回の顔判定手段による判定を実行すると判定される度に、前記ブロックの大きさが小さくなるように分割する分割手段と、その分割手段によって分割された各ブロックを構成する各画素の明度と、彩度と、色相とから、各ブロックの明度と、彩度と、色相とを算出する算出手段と、その算出手段によって算出された各ブロックの明度と、彩度と、色相とから各ブロックが所定範囲の肌色値を有するかを判定する肌色値判定手段と、その肌色値判定手段によって所定範囲の肌色値を有すると判定されたブロックであって同列に並ぶブロックについて、各列毎に主走査方向の最上流側に位置するブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第1条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上赤色に変化しているかを検出し、かかる第1条件を満たす場合に、前記比較ブロックを顔の目の下部分に相当するとして判断し、次に、顔の目の下部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第2条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第2条件を満たす場合に、前記比較ブロックを顔の頬部分に相当するとして判断し、次に、顔の頬部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第3条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上低く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第3条件を満たす場合に、前記比較ブロックを首部分に相当するとして判断する部分判断手段と、その部分判断手段によって前記第1,第2,第3条件を満たすと判断された場合に、前記肌色領域抽出手段により抽出された長方形の領域に含まれる画像は前記顔画像であると認定する認定手段とを備えている。
請求項2記載の顔検出装置は、請求項1記載の顔検出装置において、ユーザーが要求する前記顔画像に対する補正内容を取得する取得手段と、その取得手段によって取得した補正内容に従って、前記顔判定手段によって前記顔画像であると判定された前記判定対象を補正する補正手段とを備え、前記提示手段は、前記判定結果として、少なくとも前記補正手段によって補正された前記判定対象を提示する。
請求項3記載の顔検出装置は、請求項1または2記載の顔検出装置において、前記算出手段は、前記分割手段によって分割された各ブロックを構成する各画素の明度の平均値と、彩度の平均値と、色相の平均値とを、各ブロックの明度と、彩度と、色相として算出する
請求項記載の顔検出装置は、請求項1からのいずれかに記載の顔検出装置において、前記所定回数とは1回である。
請求項記載の顔検出方法は、画像の中から人物の顔である顔画像を検出するものであって、前記画像の中の判定対象が前記顔画像であるか否かの判定を行する顔判定工程と、その顔判定工程による判定を所定回数実行する度に、その判定結果をユーザーに提示する提示工程と、その提示工程によって提示された判定結果に基づいてユーザーが決定する次回の顔判定工程による判定を実行するか否かの決定に従って、次回の顔判定工程による判定を実行するか否かを判断する判断工程と、前記画像を構成する各画素の明度と、彩度と、色相とを読み取る読取工程と、その読取工程によって読み取った各画素の明度と、彩度と、色相とから所定範囲の肌色値を有する画素を特定する特定工程と、その特定工程によって特定された全画素の外周を包囲する長方形の領域を抽出する肌色領域抽出工程とを備え、前記顔判定工程は、前記肌色領域抽出工程により抽出された長方形の領域を升目状のブロックに分割するものであって、前記判断工程によって次回の顔判定工程による判定を実行すると判定される度に、前記ブロックの大きさが小さくなるように分割する分割工程と、その分割工程によって分割された各ブロックを構成する各画素の明度と、彩度と、色相とから、各ブロックの明度と、彩度と、色相とを算出する算出工程と、その算出工程によって算出された各ブロックの明度と、彩度と、色相とから各ブロックが所定範囲の肌色値を有するかを判定する肌色値判定工程と、その肌色値判定工程によって所定範囲の肌色値を有すると判定されたブロックであって同列に並ぶブロックについて、各列毎に主走査方向の最上流側に位置するブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第1条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上赤色に変化しているかを検出し、かかる第1条件を満たす場合に、前記比較ブロックを顔の目の下部分に相当するとして判断し、次に、顔の目の下部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第2条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第2条件を満たす場合に、前記比較ブロックを顔の頬部分に相当するとして判断し、次に、顔の頬部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第3条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上低く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第3条件を満たす場合に、前記比較ブロックを首部分に相当するとして判断する部分判断工程と、その部分判断工程によって前記第1,第2,第3条件を満たすと判断された場合に、前記肌色領域抽出工程により抽出された長方形の領域に含まれる画像は前記顔画像であると認定する認定工程とを備えている。
請求項記載の顔検出プログラムは、画像の中から人物の顔である顔画像を検出させるものであって、前記画像の中の判定対象が前記顔画像であるか否かの判定を、行させる顔判定ステップと、その顔判定ステップによる判定を所定回数実行させる度に、その判定結果をユーザーに提示させる提示ステップと、その提示ステップによって提示した判定結果に基づいてユーザーが決定する次回の顔判定ステップによる判定を実行させるか否かの決定に従って、次回の顔判定ステップによる判定を実行させるか否かを判断させる判断ステップと、前記画像を構成する各画素の明度と、彩度と、色相とを読み取らせる読取ステップと、その読取ステップによって読み取った各画素の明度と、彩度と、色相とから所定範囲の肌色値を有する画素を特定させる特定ステップと、その特定ステップによって特定された全画素の外周を包囲する長方形の領域を抽出させる肌色領域抽出ステップとを備え、前記顔判定ステップは、前記肌色領域抽出ステップにより抽出された長方形の領域を升目状のブロックに分割させるものであって、前記判断ステップによって次回の顔判定ステップによる判定を実行させると判定される度に、前記ブロックの大きさが小さくなるように分割させる分割ステップと、その分割ステップによって分割された各ブロックを構成する各画素の明度と、彩度と、色相とから、各ブロックの明度と、彩度と、色相とを算出させる算出ステップと、その算出ステップによって算出された各ブロックの明度と、彩度と、色相とから各ブロックが所定範囲の肌色値を有するかを判定させる肌色値判定ステップと、その肌色値判定ステップによって所定範囲の肌色値を有すると判定されたブロックであって同列に並ぶブロックについて、各列毎に主走査方向の最上流側に位置するブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第1条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上赤色に変化しているかを検出し、かかる第1条件を満たす場合に、前記比較ブロックを顔の目の下部分に相当するとして判断し、次に、顔の目の下部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第2条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第2条件を満たす場合に、前記比較ブロックを顔の頬部分に相当するとして判断し、次に、顔の頬部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第3条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上低く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第3条件を満たす場合に、前記比較ブロックを首部分に相当するとして判断させる部分判断ステップと、その部分判断ステップによって前記第1,第2,第3条件を満たすと判断された場合に、前記肌色領域抽出ステップにより抽出された長方形の領域に含まれる画像は前記顔画像であると認定させる認定ステップとを備えている。
請求項1記載の顔検出装置によれば、画像の中の判定対象が顔画像であるか否かの判定が所定回数実行されると、その判定結果がユーザーに提示される。すると、ユーザーは、その判定結果に基づいて次回の顔判定手段による判定を実行するか否かの決定をするので、そのユーザーの決定に従って次回の顔検出手段による判定を実行するか否かの判断がなされる。よって、ユーザーが次回の顔判定手段による判定を実行する決定をした場合には、次の顔判定手段による判定が実行され、先の判定よりも時間はかかるものの、先の判定よりも高精度に顔画像か否かの判定がなされる。従って、時間よりも精度を優先させるユーザーの要求を満足させることができるという効果がある。一方、ユーザーが次回の顔判定手段による判定を実行しない決定をした場合には、次の顔判定手段による判定は実行されず、次の判定を実行すれば、より高精度な判定ができるものの、短時間で顔画像か否かの判定を終了することができる。従って、精度よりも時間を優先させるユーザーの要求を満足させることができるという効果がある。
請求項2記載の顔検出装置によれば、請求項1記載の顔検出装置の奏する効果に加え、判定対象が顔画像であると判定された場合には、ユーザーに提示する判定結果として、少なくとも、判定対象をユーザーが要求する補正内容に従って補正された顔画像が提示される。よって、ユーザーに、次の顔判定手段による判定を実行するか否かの決定をさせやくすることができるという効果がある。
請求項記載の顔検出装置によれば、請求項1からのいずれかに記載の顔検出装置の奏する効果に加え、前記所定回数とは1回であるので、短時間で判定結果を提示することができるという効果がある。
請求項記載の顔検出方法によれば、画像の中の判定対象が顔画像であるか否かの判定が所定回数実行されると、その判定結果がユーザーに提示される。すると、ユーザーは、その判定結果に基づいて次回の顔判定工程による判定を実行するか否かの決定をするので、そのユーザーの決定に従って次回の顔判定工程による判定を実行するか否かの判断がなされる。よって、ユーザーが次回の顔判定工程による判定を実行する決定をした場合には、次の顔判定工程による判定が実行され、先の判定よりも時間はかかるものの、先の判定よりも高精度に顔画像か否かの判定がなされる。従って、時間よりも精度を優先させるユーザーの要求を満足させることができるという効果がある。一方、ユーザーが次回の顔判定工程による判定を実行しない決定をした場合には、次の顔判定工程による判定は実行されず、次の判定を実行すれば、より高精度な判定ができるものの、短時間で顔画像か否かの判定を終了することができる。従って、精度よりも時間を優先させるユーザーの要求を満足させることができるという効果がある。
請求項記載の顔検出プログラムによれば、画像の中の判定対象が顔画像であるか否かの判定を所定回数実行すると、その判定結果をユーザーに提示する。すると、ユーザーは、その判定結果に基づいて次回の顔判定ステップによる判定を実行するか否かの決定をするので、そのユーザーの決定に従って次回の顔判定ステップによる判定を実行するか否かの判断をする。よって、ユーザーが次回の顔判定ステップによる判定を実行する決定をした場合には、次の顔判定ステップによる判定を実行し、先の判定よりも時間はかかるものの、先の判定よりも高精度に顔画像か否かの判定をする。従って、時間よりも精度を優先させるユーザーの要求を満足させることができるという効果がある。一方、ユーザーが次回の顔判定ステップによる判定を実行しない決定をした場合には、次の顔判定ステップによる判定は実行せず、次の判定を実行すれば、より高精度な判定ができるものの、短時間で顔画像か否かの判定を終了することができる。従って、精度よりも時間を優先させるユーザーの要求を満足させることができるという効果がある。
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図1は、本発明の実施形態である多機能周辺装置(以下、「MFP(Multi Function Peripheral)」と称す)1を示す外観斜視図である。このMFP1は、プリンタ機能、スキャナ機能、及び、コピー機能などの各種の機能を有している。
MFP1の本体の前面には、開口部2が設けられ内部が上下に仕切られている。開口部2の下側には、複数枚の記録用紙を積層収納可能な給紙カセット3が挿入されている。開口部2の上側は記録済みの記録用紙が排紙される排紙部4となっており、記録済みの記録用紙は矢印A方向に排出される。
開口部2の上部には、スキャナ機能やコピー機能の実行時における原稿読取などのための画像読取装置(図示しない)が配置されている。原稿カバー体5の下側には、原稿を載置するための載置用ガラス板が設けられており、原稿を読み取る場合は、原稿カバー体5を上側に開き、載置用ガラス板上に原稿を載置し、原稿カバー体5を閉じて原稿を固定する。操作キー15の原稿読取ボタンを押下すると、載置用ガラス板の下側に設けられている原稿読取り用のスキャナ(例えばCIS:Contact Image Sensor)20(図2参照)により原稿紙面の画像が読み取られる。読み取られた画像データは後述のRAM13(図2参照)における所定の記憶領域に格納される。
原稿カバー体5の前方には、数値や文字などを入力する入力キー群15aと、各種コマンドを入力するコマンド入力キー群15bと、メニューや操作手順や実行中の処理の状態を表示するためのLCD16とが設けられている。利用者は、操作キー15を押下することで、電源のオン/オフや、各機能の切り替えなどの操作を行うことができる。そして、LCD16には、操作キー15の押下に対応する情報が表示されるので、印刷する画像データやプリンタ21(図2参照)などの各種情報を確認することができる。
開口部2の前面であって、入力キー群15aの下方には、携帯用のフラッシュメモリカードを挿入するためのメモリカードスロット22が設けられている。フラッシュメモリカードに格納されている画像データは、プリンタ機能によって印刷することができる。
次に、図2を参照して、MFP1の電気的構成について説明する。図2は、MFP1の電気的構成を示すブロック図である。MFP1は、CPU11、ROM12、RAM13、操作キー15、LCD16、スピーカ17、USBインターフェイス18、スキャナ20、プリンタ21、メモリカードスロット22とを主に有しており、CPU11、ROM12、RAM13とはバスライン26を介してお互いに接続されている。また、操作キー15、LCD16、スピーカ17、USBインターフェイス18、スキャナ20、プリンタ21、メモリカードスロット22、バスライン26とは、入出力ポートを介してお互いに接続されている
CPU11は、ROM12やRAM13に記憶される固定値やプログラム或いは、MFP1が有している各機能の制御や、USBインターフェイス18を介して送受信される各種信号に従って、入出力ポート27と接続された各部を制御するものである。ROM12は書換不可能なメモリであり、MFP1で実行される各種の制御プログラムを記憶する領域である制御プログラム領域12aと、ブロックサイズメモリ12bとが設けられている。
制御プログラム領域12aには、例えば、後述する図3乃至図5、図7及び図8、図10及び図11のフローチャートに示す処理を実行するプログラムが記憶されている。
また、ブロックサイズメモリ12bが設けられている。このブロックサイズメモリには、画像中から抽出した人物の顔を含んでいるであろうと推測される肌色領域を、図8のフローチャートで示すブロック情報抽出処理において、ブロック単位で分割する場合に、その一つのブロックの大きさが後述する顔判定回数カウンタn13bの値が大きくなるに従って小さくなるように、顔判定回数カウンタn13bの値に応じた一つのブロックサイズの大きさを示すテーブルが記憶されている。よって、図8のフローチャートで示すブロック情報抽出処理では、肌色領域をブロック単位で分割する場合、その一つのブロックサイズは、このテーブルに従って設定される。
RAM13は、各種のデータを一時的に記憶するための書換可能なメモリであり、画像メモリ13a、肌色画像メモリ13b、肌色領域ポインタ13c、ブロック情報メモリ13d、ブロック判定フラグメモリ13e、前ブロックデータメモリ13f、後ブロックデータメモリ13gとが設けられている。
画像メモリ13aは、パーソナルコンピュータやメモリカードから読み込んだRGB形式のビットマップ画像データ(以下、「ビットマップデータ」と称す)が入力される領域である。ビットマップデータとは、格子状に画素を並べて画像を形成するための公知のデータ形式であり、各画素の色を示す画素値が、それぞれの画素について記憶されているデータである。入力されたビットマップデータは、RGB形式からL*C*h形式に変換されて、肌色画像メモリ13bに記憶される。
ここで、L*C*h形式について説明する。本実施形態では、L*C*h表色系を用いており、「L*」は明度を示し、「C*」は彩度を示し、「h」は色相を示している。
肌色画像メモリ13bは、入力されたL*C*h形式のビットマップデータのうち、人の肌の特性を示す画素を抽出して記憶するメモリである。
肌色領域ポインタ13cは、X方向最小値13c1、X方向最大値13c2、Y方向最小値13c3、Y方向最大値13c4とが設けられている。肌色領域ポインタ13cは、肌色画像メモリ13bに記憶されている画像データにおいて、人の肌の特性を有する画素の外周を包囲する長方形(図6(c)参照)の位置情報を記憶するためのメモリである。
ブロック情報メモリ13dは、肌色画像メモリ13bにおける画像データにおいて、肌色領域ポインタ13cにより示される長方形の領域が所定の大きさのブロックに分割された場合に、各ブロックを構成する画素値の平均値(以下、「ブロック値」と称す)がそれぞれ記憶されるメモリである(図9(b)参照)。
ブロック判定フラグメモリ13eは、ブロック情報メモリ13dに記憶される各ブロックに対応するブロック判定フラグが記憶されるメモリである。ブロック判定フラグは、ブロック値が人の肌の特性を示す場合は「1」に設定され、示さない場合は「0」に設定されるフラグである。
前ブロックデータメモリ13f、後ブロックデータメモリ13gとは、ブロック情報メモリ13dのいずれかのブロック値を記憶するためのメモリであり、ブロック値の差分値を求めるために使用されるメモリである。ここで、前ブロックデータメモリ13fと後ブロックデータメモリ13gとについて、図12(b)を参照して説明する。図12(b)は、ある領域が縦8個、横4個のブロックに分割された状態を示している。各ブロックはブロック値を有しており、「○」と記載されたブロックが、列毎に走査される。
1行目から走査方向に走査して、始めに見つかったブロック値が、前ブロックデータメモリ13fに記憶され、次に見つかったブロック値が後ブロックデータメモリ13gに記憶される。後ブロックデータメモリ13gから前ブロックデータメモリ13fが減算され、ブロック値の差分値が求められる。差分値が算出されると、後ブロックデータメモリ13gの値が、先ブロックデータメモリ13fに記憶される。続けて走査方向に走査が行われ、次に見つかったブロック値は、後ブロックデータメモリ13gに記憶され、同様に差分値が算出される。
顔判定回数カウンタn13hは、図3のフローチャートに示す第n回目の顔判定処理(S3)が第何回目の顔判定処理であるかをカウントするものである。次の顔判定処理を実行するか否かはユーザーによって決定され、ユーザーが次の顔判定処理を実行すること決定した場合には、顔判定回数カウンタn13hに「1」が加算されていく。
スピーカ17は、操作キー15の操作音やエラー発生時の注意音を利用者に報知するものである。プリンタ21は、図示しないが、インクジェットプリンタで構成されている。プリンタ21は、C(シアン)、M(マゼンダ)、Y(イエロー)、K(ブラック)の4色のインクを使用する印刷ヘッド、紙送り装置、回復装置を備えカラー印刷を行うことができる。
図3は、顔補正処理を示すフローチャートであり、顔補正処理は、ユーザーが指定した画像の中から人物の顔である顔画像を検出し、その検出した顔画像にユーザーが要求する補正をする処理であり、CPU11によって実行される。
この顔補正処理では、まず、メモリカードがメモリカードスロット22に挿入されているか否かを判断し(S301)、挿入されている場合には(S301:Yes)、デジタルカメラプリントメニューをLCD16に表示する(S302)。そして、その中から顔補正がユーザーによって選択されたかを判断し(S303)、選択された場合には(S303:Yes)、メモリカードに格納されている画像データを読み込み(S304)、読み込んだ画像のサムネイル画像をLCD16に表示する(S305)。尚、メモリカードから読み込んだ画像データは画像メモリ13aに記憶される。
次に、LCD16に表示されているサムネイル画像の中から顔補正をする画像がユーザーによって選択されたかを判断し(S306)、選択された場合には(S306:Yes)、顔補正メニューをLCD16に表示する(S307)。この顔補正メニューには、例えば、赤目補正、肌色補正等のメニューが表示される。
次に、その顔補正メニューの中から所定の補正メニューが選択されたかを判断し(S308)、所定の補正メニューが選択された場合には(S308:Yes)、顔判定回数カウンタn13hを「1」に設定する(S309)。
尚、S301でメモリカードがメモリカードスロット22に挿入されていない場合(S301:No)、S303で顔補正がユーザーによって選択されなかった場合(S303:No)、サムネイル画像の中から顔補正をする画像がユーザーによって選択されなかった場合(S306:No)、所定の補正メニューが選択されなかった場合には(S308:No)、いずれも本処理を終了する。
S309において顔判定回数カウンタn13hを「1」に設定すると、次は肌色領域抽出処理(S1)を行う。
ここで、図4のフローチャートを参照して、肌色領域抽出処理(S1)について説明する。肌色領域抽出処理では、始めに、肌色画像メモリ13bを初期化する(S11)。ここでの初期化とは、全画素の画素値(L*値,C*値,h値)を白(100,0,0)に設定することである。
次に、画像メモリ13aに記憶された画像データを、RGB形式からL*C*h形式に変換して、肌色画像メモリ13bにコピーする(S12)。肌色画像メモリ13bから、1つの画素の画素値(L*値,C*値,h値)を読み取り(S13)、読み取った画素値を構成するL*値、C*値、h値は、それぞれ所定の範囲内の肌色値であるかを判定する(S14)。本実施形態において、所定の範囲内の肌色値とは、図9(a)に示すように、画素値が「32≦L*≦92」且つ「10≦C*≦40」且つ「25≦h≦64」であることとする。
読み取った画素値が、所定の範囲内の肌色値である場合は(S14:Yes)、画素値を変更せずにS16の処理へ移る。一方、読み取った画素値が、所定の範囲内の肌色値でない場合は(S14:No)、肌色画像メモリ13bにおいて、読み取った画素値を白に設定する。そして、肌色画像メモリ13bの画素値を全て読み取ったかを判定し(S16)、全て読み取った場合は(S16:Yes)、処理を終了する。一方、肌色画像メモリ13bの画素値を全て読み取っていない場合は(S16:No)、S13の処理へ戻り、S13からS15の各処理を繰り返す。
この図4のフローチャートの処理により、画像メモリ13aに記憶された画像データのうち、所定の範囲内の肌色値を有した画素が肌色画像メモリ13bに抽出される。ここで、図6を参照して、図4のフローチャートの処理で、画像メモリ13aから肌色画像メモリ13bに抽出された画像データについて説明する。
図6は、画像メモリ13aと肌色画像メモリ13bとの内容を概略的に示したイメージ図である。図6(a)は、画像メモリ13aに画像データが記憶されている状態を示している。画像メモリ13aに記憶されている画像データは、まず、RGB形式からL*C*h形式に変換され、肌色画像メモリ13bに記憶される。そして、図6(b)に示すように、肌色画像メモリ13bは、所定の範囲の肌色値を有する画素値のみが残され、その他の画素値は白に設定される。図6(b),(c)において、本来は、顔を構成する黒い輪郭線も白に設定されているが、図を分かり易くするために黒く示している。また、図9、図12とについても同様に示している。
再び、図3に戻って説明を続ける。肌色領域抽出処理(S1)が終了すると、次に、肌色領域判定処理(S2)を実行する。
ここで、図5のフローチャートを参照して、肌色領域判定処理(S2)について説明する。肌色領域判定処理(S2)では、始めに、肌色領域ポインタ13cを初期化する(S21)。
そして、肌色画像メモリ13bから、1つの画素の画素値(L*値,C*値,h値)を読み取る(S22)。読み取った画素値が白(100,0,0)であるかが判定され(S23)、読み取った画素値が白(100,0,0)である場合は(S23:Yes)、S26の処理へ移る。一方、読み取った画素値が白でない場合は(S23:No)、読み取った画素の画素位置(x,y)が、肌色領域ポインタ13cで示される長方形の領域内に位置するかを判定する(S24)。
S24の処理において、読み取った画素の画素位置(x,y)が、肌色領域ポインタ13cで示される長方形の領域内に位置しない場合は(S24:No)、読み取った画素が、肌色領域ポインタ13cで示される長方形の領域内に位置するように、x値またはy値を肌色領域ポインタ13cの値に反映し(S25)、S26の処理へ移る。一方、読み取った画素が、肌色領域ポインタ13cで示される長方形の領域内に位置する場合は(S24:Yes)、肌色領域ポインタ13cの値を変更せずに、S26の処理へ移る。
そして、肌色画像メモリ13bの画素値を全て読み取ったかを判定し(S26)、全て読み取った場合は(S26:Yes)、処理を終了する。一方、肌色画像メモリ13bの画素値を全て読み取っていない場合は(S26:No)、S22の処理に戻り、S22からS25の各処理を繰り返す。この図5のフローチャートの処理により、図6(b)に示す肌色画像メモリ13bの画像において、図6(c)に示すその画像を包囲する長方形の領域(図中点線で示す領域)を判定し、その位置情報を肌色領域ポインタ13cに記憶することができる。
再び、図3に戻って説明を続ける。肌色領域判定処理(S2)終了すると、次に第n回目の顔判定処理を実行する(S3)。
ここで、図7のフローチャートを参照して、第n回目の顔判定処理(S3)について説明する。第n回目の顔判定処理(S3)では、ブロック情報抽出処理(S4)を実行し、次に、判定処理(S5)を実行して終了する。
まず、図8を参照してブロック情報抽出処理(S4)について説明する。図8は、ブロック情報抽出処理(S4)を示すフローチャートである。この処理では、まず、肌色領域ポインタ13cで示される長方形の領域(図6(c)参照)を分割するブロックサイズを、ブロックサイズメモリ12bに記憶されているテーブルから設定する(S31a)。具体的には、顔判定回数カウンタnの値が大きい程、即ち、顔判定処理(S3)の実行回数(判定回数)が多ければ多い程、かかるブロックサイズは小さく設定される。よって、顔判定処理(S3)の実行回数(判定回数)が多ければ多い程、時間はかかるが高精度に顔判定を実行することができる。換言すれば、顔判定処理(S3)の実行回数(判定回数)が少なければ少ない程、精度は劣るが短時間で顔判定を実行することができる。
次に、肌色領域ポインタ13cで示される長方形の領域(図6(c)参照)を、設定されたブロックサイズで縦M個、横N個に分割する(S31)。そして、ブロック情報メモリ13dとブロック判定フラグメモリ13eとを初期化する(S32)。
分割されたブロックのうちの1つのブロックについて、そのブロックを構成する画素のL*値、C*値、h値の平均値を求め、各値をブロック情報メモリ13dに記憶する(S33)。求めた平均値(L*値、C*値、h値)はそれぞれ、所定の範囲内の肌色値であるかを判定し(S34)、求めた平均値がそれぞれ、所定の範囲内の肌色値である場合は(S34:Yes)、平均値を求めたブロックのブロック判定フラグを、「1(有効)」に設定する(S35)。一方、求めた平均値がそれぞれ、所定の範囲内の肌色値でない場合は(S34:No)、平均値を求めたブロックのブロック判定フラグを、「0(無効)」に設定する(S36)。
そして、全てのブロックの平均値を求めたかを判定し(S37)、全てのブロックの平均値を求めた場合は(S37:Yes)、処理を終了する。一方、全てのブロックの平均値を求めていない場合は(S37:No)、S33の処理に戻り、S33からS36までの各処理を繰り返す。
この図8のフローチャートの処理により、肌色領域ポインタ13cにより示される長方形領域(図6(c)参照)が、図9(b)に示すように複数のブロックに分割される。よって、各ブロックの値をブロック情報メモリ13dに記憶することができ、各ブロックの値が、所定の肌色値の範囲内であるかを示すブロック判定フラグを、ブロック判定フラグメモリ13eに設定することができる。
図9(b)は、肌色画像メモリ13bにおいて、肌色領域ポインタ13により示される長方形領域(図6(c)参照)を、縦8個、横4個の均一な大きさのブロックに分割したイメージ図を示している。各ブロックを区別して説明するために、分割されたブロックの左上を基準として、図面に向かって、右方向に列番号(N)を順番に記載し、下方向に行番号(M)を順番に記載している。以後、N列のM行に位置するブロックを、「ブロック(N,M)」と表記することとし、例えば、左上のブロックを示す場合は、ブロック(1,1)と表記し、左下のブロックを示す場合は、ブロック(1,8)と表記する。
また、図9(b)のブロック内に示す「○」や「×」は、ブロックの値が所定の肌色値の範囲内であるかを示したものである。「○」と示されているブロックは、ブロック判定フラグが「1(有効)」と設定されている状態を示し、「×」と示されているブロックは、ブロック判定フラグが「0(無効)」と設定されてる状態を示している。以後、各ブロックに設定されているフラグの状態を簡単に説明するために、ブロック判定フラグが「1(有効)」に設定されているブロックを「有効ブロック」と称し、ブロック判定フラグが「0(無効)」に設定されているブロックを「無効ブロック」と称す。
次に、第n回目の顔判定処理(S3)として、ブロック情報抽出処理(S4)の次に実行される判定処理(S5)について説明する。はじめに、図12(a)を参照して、顔判定処理で行う処理の概略について説明する。図12(a)は、この判定処理(S5)の概略を説明するための図である。
図12(a)は、人の顔の肌において、各部分の肌の明度と色相との関係を示した図である。図12(a)に示すように、人の顔の肌を部分に大別すると、「額」と「目の下」と「頬」と「首」との4つに分類することができる。それぞれの部分は、お互いに色相や明度が重複しているが、ある部分と別の部分とを比較すると、所定の傾向が示されている。例えば、「目の下」の肌と、「額」の肌と比較すると、相対的に「目の下」の肌の明度は高くなり(白くなり)、色相は赤くなるという傾向が示されている。
また、「頬」の肌と、「目の下」の肌とを比較すると、相対的に「頬」の肌の明度は高くなり(白くなり)、色相は黄色くなるという傾向が示されている。また、「首」の肌と、「頬」の肌とを比較すると、相対的に明度は低くなり(黒くなり)、色相は黄色くなるという傾向が示されている。
顔判定処理では、「額」から「目の下」、「目の下」から「頬」、「頬」から「首」に向かって各部分の肌の明度と色相とを比較し、相対的にどのような変化を示すかを調べている。また、相対的な変化を調べているので、肌の色に関係なく判定することができる。
次に、図10および図11とのフローチャートを参照して、判定処理(S5)について説明する。判定処理では、始めに、変数iを「1」に設定する(S41)。
i列において、1行目からn行目へ走査し、ブロック判定フラグが「1(有効)」であるブロック(有効ブロック)が2個見つかったかを判定し(S42)、有効ブロックが2個見つかった場合は(S42:Yes)、1番目に見つかった有効ブロックのL*値とh値とを前ブロックデータメモリ13fに記憶し、2番目に見つかった有効ブロックのL*値とh値とを後ブロックデータメモリ13gに記憶する(S43)。
そして、後ブロックデータメモリ13gの値から、前ブロックデータメモリ13fの値を減算し、ブロック値の差分値(ΔL*値、Δh値)を求める(S44)。求めた差分値の絶対値が所定の値以下であるかを判定し(S45)、求めた差分値が所定の値以下でない場合は(S45:No)、S49の処理へ移る。
「求めた差分値の絶対値が所定の値以下であるか」という処理(S45、後述のS54、後述のS60)は、前ブロックデータメモリ13fと後ブロックデータメモリ13gとに記憶されているブロック値が、人の顔の肌において同一の部分の肌(例えば、「額」と「額」)を示す場合には、その判定を行わないための処理である。
一方、S45の処理において、求めた差分値の絶対値が所定の値以下である場合は(S45:Yes)、後ブロックデータメモリ13gの値を、前ブロックデータメモリ13fに記憶する(S46)。続けて、行方向に走査し、有効ブロックが見つかったを判定し(S47)、有効ブロックが見つかった場合は(S47:Yes)、見つかった有効ブロックのL*値とh値とを後ブロックデータメモリ13gに記憶し、S44の処理に戻る。一方、有効ブロックが見つからなかった場合は(S47:No)、S63の処理へ移る。
S49の処理では、ΔL*値は正の値であり、且つ、Δh値は負の値であるかを判定し(S49)、ΔL*値は正の値であり、且つ、Δh値は負の値である場合は(S49:Yes)、後ブロックデータメモリ13gの値を、前ブロックデータメモリ13fに記憶する(S50)。一方、ΔL*値は正の値であり、且つ、Δh値は負の値である場合以外は(S49:No)、S63の処理へ移る。
次に、続けて行方向に走査し、有効ブロックが見つかったかを判定し(S51)、有効ブロックが見つかった場合は(S51:Yes)、見つかった有効ブロックのL*値とh値とを後ブロックデータメモリ13gに記憶する(S52)。一方、有効ブロックが見つからなかった場合は(S51:No)、S63の処理へ移る。
そして、後ブロックデータメモリ13gの値から、前ブロックデータメモリ13fの値を減算し、ブロック値の差分値(ΔL*値、Δh値)を求める(S53)。求めた差分値の絶対値が、所定の値以下であるかを判定し(S54)、求めた差分値の絶対値が、所定の値以下である場合は(S54:Yes)、S50の処理に戻り、S50からS53の各処理を繰り返す。一方、求めた差分値の絶対値が、所定の値以下でない場合は(S54:No)、ΔL*値は正の値であり、且つ、Δh値も正の値であるかを判定する(S55)。
S55の処理において、ΔL*値は正の値であり、且つ、Δh値も正の値である場合は(S55:Yes)、後ブロックデータメモリ13gの値を、前ブロックデータメモリ13fに記憶する(S56)。一方、ΔL*値は正の値であり、且つ、Δh値も正の値である場合以外は(S55:No)、S63の処理へ移る。
続けて、行方向に走査し、有効ブロックが見つかったかを判定し(S57)、有効ブロックが見つかった場合は(S57:Yes)、見つかった有効ブロックのL*値とh値とを後ブロックデータメモリ13gに記憶する(S58)。一方、有効ブロックが見つからなかった場合は(S57:No)、S63の処理へ移る。
そして、後ブロックデータメモリ13gの値から、前ブロックデータメモリ13fの値を減算し、ブロック値の差分値(ΔL*値、Δh値)を求める(S59)。求めた差分値の絶対値が、所定の値以下であるかを判定し(S60)、求めた差分値の絶対値が所定の値以下である場合は(S60:Yes)、S56の処理に戻り、S56からS59までの各処理を繰り返す。一方、求めた差分値の絶対値が、所定の値以下でない場合は(S60:No)、ΔL*値は負の値であり、且つ、Δh値は正の値であるかを判定する(S61)。
S61の処理において、ΔL*値は負の値であり、且つ、Δh値は正の値である場合は(S61:Yes)、画像メモリ13aに記憶された画像データは、人の顔の画像であると判断し(S62)、処理を終了する。一方、ΔL*値は負の値であり、且つ、Δh値は正の値である場合以外は(S61:No)、S63の処理へ移る。
S63の処理では、変数iがN(ブロックの列数)と等しいかを判定し(S63)、等しい場合は(S63:Yes)、処理を終了する。一方、等しくない場合は(S63:No)、変数iに「1」を加算し、S42の処理に戻り、S42からS63の各処理を繰り返す。
この判定処理(S5)により、ブロック情報メモリ13dに記憶されている有効ブロック値を列毎に走査方向に走査して、そのブロック差分値を順番に求めることができる。そして、その差分値が、「額」から「目の下」へ変化する場合の特徴を示し、「目の下」から「頬」へ変化する場合の特徴を示し、「頬」から「首」へ変化する場合の特徴を示しているかを判定するので、顔画像であるかを判定することができる。
次に、図9(b)を参照して、有効ブロックのブロック値がどのように比較されるかの一例を説明する。図9(b)は、有効ブロックと走査方向とを示したイメージ図である。
図9(b)に示すように、1列目(i=1)から順番に、走査方向(列方向)に向かって有効ブロックが走査される。3列目を例に説明すると、まず、走査方向に走査すると、ブロック(3,2)と、ブロック(3,4)とが見つかる。その差分値は、「額」から「目の下」へ変化する場合の特徴を示すので、続けて、次の有効ブロックが走査される。次に、ブロック(3,5)が見つかり、ブロック(3,4)とブロック(3,5)との値の差分値が比較される。その差分値は、「目の下」から「頬」へ変化する場合の特徴を示すので、続けて、次の有効ブロックが走査される。次に、ブロック(3,6)が見つかり、ブロック(3,5)とブロック(3,6)との値の差分値が比較される。ブロック(3,6)は、「頬」と「首」との肌が混ざっているが、ブロック(3,5)とブロック(3,6)との差分値は、「頬」から「首」へ変化する場合の特徴を示すので、この画像は、人の顔の画像であると判断される。
再び、図3のフローチャートの説明に戻る。上述した第n回目の顔判定処理(S3)が終了すると、その第n回目の顔判定処理(S3)において、顔画像を検出したかを判断し(S311)、検出していれば(S311:Yes)、検出した顔画像を、S308においてユーザーから要求された補正内容に従って検出した顔画像を補正する(S312)。
そして、その補正した顔画像と、次の顔判定を実行するかのメッセージとをLCD16に表示する(S313)。このS313で表示される内容を見てユーザーは、その補正した顔画像で満足であれば、次の顔判定処理を実行しないと決定し、その補正した顔画像で満足でなければ、次の顔判定を実行すると決定する。
一方、第n回目の顔判定処理(S3)において、顔画像を検出できなかった場合には(S311:No)、顔画像を検出できなかった旨と次の顔判定を実行するかのメッセージとをLCD16に表示する。このS311で表示される内容を見てユーザーは、納得すれば、次の顔判定を実行しないと決定し、不満であれば、次の顔判定を実行すると決定する。
こうして、ユーザーが次の顔判定を実行するのか、しないのかを決定し、その決定内容を入力すると、その内容を判断し(S315)、次の顔判定処理を実行しない場合には(S315)、本処理を終了する。一方、次の顔判定処理を実行しない場合には(S315)、顔判定回数カウンタnに「1」を加算し(S316)、再び、第n回目の顔判定処理(S3)が実行される。
この場合、一つ前に実行した第n回目の顔判定処理(S3)の場合よりも、今回実行される第n回目の顔判定処理(S3)の方が、ブロック情報抽出処理(S4)における肌色領域ポインタで示される長方形の領域を分割するブロックサイズが小さく設定される。即ち、今回実行される第n回目の顔判定処理(S3)の方が、一つ前に実行した第n回目の顔判定処理(S3)よりも肌色領域ポインタで示される長方形の領域が小さく細分化されることになる。
よって、今回実行される第n回目の顔判定処理(S3)の方が、一つ前に実行した第n回目の顔判定処理(S3)よりも判定時間が長く長時間掛かるものの、高精度に顔判定することができる。従って、一つ前に実行した第n回目の顔判定処理(S3)では、顔画像が検出できなかったとしても、次の第n回目の顔判定処理(S3)では、顔画像を検出することができる場合があり、長時間かかってもいいから高精度に顔画像が検出されることを望むユーザーにとっては、有効である。一方、一つ前に実行した第n回目の顔判定処理(S3)の判定結果で満足であれば、それ以上の精度は要求されていないとして、ユーザーが要求する精度の範囲内で且つ短時間に顔判定を行うことができる。
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
例えば、上記実施形態では、判定回数を重ねる度にブロックサイズを小さく細分化することで、高精度かつ長時間で顔画像を検出する場合について説明したが、判定回数を重ねる度に、高精度かつ長時間で顔画像を検出する手段としては、かかる場合に限定されるものではない。例えば、テンプレートとのマッチングを行うパターンマッチングを利用して、判定回数を重ねる度に、画像とマッチングさせるテンプレートの数を増加させていくようにしても良い。かかる場合であっても、判定を重ねる度に高精度かつ長時間で顔画像を検出することができる。
また、上記実施形態では、判定回数を重ねるにつれて小さく設定される一つのブロックサイズをROM12のブロックサイズメモリに予め規定値として記憶しておく場合について説明したが、判定回数を重ねるにつれ、分割する領域をいかなる割合で細分化していくかをユーザーが任意に設定できるように構成しても良い。
また、例えば、上記実施形態では、ブロックの走査方向を縦方向(列方向)に走査したが、画像が傾いている場合は、ブロックを横や斜めに走査してもよい。斜めに走査しても有効ブロックの値の差分値を求めることができるので、画像が傾いている場合でも人の顔の画像であると判断することができる。
また、上記実施形態では、MFP1により画像データを画像処理しているが、PCのハードディスクに、上記実施形態の画像処理を行うプログラムを記憶しておき、PCで画像データの画像処理を行っても良い。
MFPの外観斜視図である。 MFPの電気的構成を示すブロック図である。 顔補正処理を示すフローチャートである。 肌色領域抽出処理を示すフローチャートである。 肌色領域判定処理を示すフローチャートである。 肌色領域抽出処理を説明するための図である。 第n回目の顔判定処理を示すフローチャートである。 ブロック情報抽出処理を示すフローチャートである。 (a)は図4のS14において必要となる所定の範囲内の肌色値を示すテーブルである。図9(b)は肌色領域ポインタにより示される長方形領域を、複数のブロックで分割したイメージを示す図である。 判定処理を示すフローチャートである。 判定処理を示すフローチャートである。 (a)は判定処理(S5)の概略を説明するための図である。(b)は、領域が複数のブロックで分割された状態を示す図である。
1 MFP(顔検出装置)
S1 肌色領域抽出手段
S3 顔判定手段
S306 取得手段
S312 補正手段
S313,S314 提示手段
S315 判断手段

Claims (6)

  1. 画像の中から人物の顔である顔画像を検出する顔検出装置において、
    前記画像の中の判定対象が前記顔画像であるか否かの判定を行する顔判定手段と、
    その顔判定手段による判定を所定回数実行する度に、その判定結果をユーザーに提示する提示手段と、
    その提示手段によって提示された判定結果に基づいてユーザーが決定する次回の顔判定手段による判定を実行するか否かの決定に従って、次回の顔判定手段による判定を実行するか否かを判断する判断手段と
    前記画像を構成する各画素の明度と、彩度と、色相とを読み取る読取手段と、
    その読取手段によって読み取った各画素の明度と、彩度と、色相とから所定範囲の肌色値を有する画素を特定する特定手段と、
    その特定手段によって特定された全画素の外周を包囲する長方形の領域を抽出する肌色領域抽出手段とを備え、
    前記顔判定手段は、
    前記肌色領域抽出手段により抽出された長方形の領域を升目状のブロックに分割するものであって、前記判断手段によって次回の顔判定手段による判定を実行すると判定される度に、前記ブロックの大きさが小さくなるように分割する分割手段と、
    その分割手段によって分割された各ブロックを構成する各画素の明度と、彩度と、色相とから、各ブロックの明度と、彩度と、色相とを算出する算出手段と、
    その算出手段によって算出された各ブロックの明度と、彩度と、色相とから各ブロックが所定範囲の肌色値を有するかを判定する肌色値判定手段と、
    その肌色値判定手段によって所定範囲の肌色値を有すると判定されたブロックであって同列に並ぶブロックについて、各列毎に主走査方向の最上流側に位置するブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第1条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上赤色に変化しているかを検出し、かかる第1条件を満たす場合に、前記比較ブロックを顔の目の下部分に相当するとして判断し、次に、顔の目の下部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第2条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第2条件を満たす場合に、前記比較ブロックを顔の頬部分に相当するとして判断し、次に、顔の頬部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第3条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上低く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第3条件を満たす場合に、前記比較ブロックを首部分に相当するとして判断する部分判断手段と、
    その部分判断手段によって前記第1,第2,第3条件を満たすと判断された場合に、前記肌色領域抽出手段により抽出された長方形の領域に含まれる画像は前記顔画像であると認定する認定手段とを備えていることを特徴とする顔検出装置。
  2. ユーザーが要求する前記顔画像に対する補正内容を取得する取得手段と、
    その取得手段によって取得した補正内容に従って、前記顔判定手段によって前記顔画像であると判定された前記判定対象を補正する補正手段とを備え、
    前記提示手段は、前記判定結果として、少なくとも前記補正手段によって補正された前記判定対象を提示することを特徴とする請求項1に記載の顔検出装置。
  3. 前記算出手段は、前記分割手段によって分割された各ブロックを構成する各画素の明度の平均値と、彩度の平均値と、色相の平均値とを、各ブロックの明度と、彩度と、色相として算出することを特徴とする請求項1又は2に記載の顔検出装置。
  4. 前記所定回数とは1回であることを特徴とする請求項1からのいずれかに記載の顔検出装置。
  5. 画像の中から人物の顔である顔画像を検出する顔検出方法において、
    前記画像の中の判定対象が前記顔画像であるか否かの判定を行する顔判定工程と、
    その顔判定工程による判定を所定回数実行する度に、その判定結果をユーザーに提示する提示工程と、
    その提示工程によって提示された判定結果に基づいてユーザーが決定する次回の顔判定工程による判定を実行するか否かの決定に従って、次回の顔判定工程による判定を実行するか否かを判断する判断工程と
    前記画像を構成する各画素の明度と、彩度と、色相とを読み取る読取工程と、
    その読取工程によって読み取った各画素の明度と、彩度と、色相とから所定範囲の肌色値を有する画素を特定する特定工程と、
    その特定工程によって特定された全画素の外周を包囲する長方形の領域を抽出する肌色領域抽出工程とを備え、
    前記顔判定工程は、
    前記肌色領域抽出工程により抽出された長方形の領域を升目状のブロックに分割するものであって、前記判断工程によって次回の顔判定工程による判定を実行すると判定される度に、前記ブロックの大きさが小さくなるように分割する分割工程と、
    その分割工程によって分割された各ブロックを構成する各画素の明度と、彩度と、色相とから、各ブロックの明度と、彩度と、色相とを算出する算出工程と、
    その算出工程によって算出された各ブロックの明度と、彩度と、色相とから各ブロックが所定範囲の肌色値を有するかを判定する肌色値判定工程と、
    その肌色値判定工程によって所定範囲の肌色値を有すると判定されたブロックであって同列に並ぶブロックについて、各列毎に主走査方向の最上流側に位置するブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第1条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上赤色に変化しているかを検出し、かかる第1条件を満たす場合に、前記比較ブロックを顔の目の下部分に相当するとして判断し、次に、顔の目の下部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第2条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第2条件を満たす場合に、前記比較ブロックを顔の頬部分に相当するとして判断し、次に、顔の頬部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第3条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上低く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第3条件を満たす場合に、前記比較ブロックを首部分に相当するとして判断する部分判断工程と、
    その部分判断工程によって前記第1,第2,第3条件を満たすと判断された場合に、前記肌色領域抽出工程により抽出された長方形の領域に含まれる画像は前記顔画像であると認定する認定工程とを備えていることを特徴とする顔検出方法。
  6. 画像の中から人物の顔である顔画像を検出させる顔検出プログラムにおいて、
    前記画像の中の判定対象が前記顔画像であるか否かの判定を、行させる顔判定ステップと、
    その顔判定ステップによる判定を所定回数実行させる度に、その判定結果をユーザーに提示させる提示ステップと、
    その提示ステップによって提示した判定結果に基づいてユーザーが決定する次回の顔判定ステップによる判定を実行させるか否かの決定に従って、次回の顔判定ステップによる判定を実行させるか否かを判断させる判断ステップと
    前記画像を構成する各画素の明度と、彩度と、色相とを読み取らせる読取ステップと、
    その読取ステップによって読み取った各画素の明度と、彩度と、色相とから所定範囲の肌色値を有する画素を特定させる特定ステップと、
    その特定ステップによって特定された全画素の外周を包囲する長方形の領域を抽出させる肌色領域抽出ステップとを備え、
    前記顔判定ステップは、
    前記肌色領域抽出ステップにより抽出された長方形の領域を升目状のブロックに分割させるものであって、前記判断ステップによって次回の顔判定ステップによる判定を実行させると判定される度に、前記ブロックの大きさが小さくなるように分割させる分割ステップと、
    その分割ステップによって分割された各ブロックを構成する各画素の明度と、彩度と、色相とから、各ブロックの明度と、彩度と、色相とを算出させる算出ステップと、
    その算出ステップによって算出された各ブロックの明度と、彩度と、色相とから各ブロックが所定範囲の肌色値を有するかを判定させる肌色値判定ステップと、
    その肌色値判定ステップによって所定範囲の肌色値を有すると判定されたブロックであって同列に並ぶブロックについて、各列毎に主走査方向の最上流側に位置するブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第1条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上赤色に変化しているかを検出し、かかる第1条件を満たす場合に、前記比較ブロックを顔の目の下部分に相当するとして判断し、次に、顔の目の下部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第2条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上高く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第2条件を満たす場合に、前記比較ブロックを顔の頬部分に相当するとして判断し、次に、顔の頬部分に相当する比較ブロックを着目ブロック、その着目ブロックよりも前記主走査方向下流側に位置するブロックを順番に比較ブロックとして選択し、第3条件として、前記比較ブロックの明度が前記着目ブロックの明度よりも所定値以上低く変化し、かつ、前記比較ブロックの色相が前記着目ブロックの色相よりも所定値以上黄色に変化しているかを検出し、かかる第3条件を満たす場合に、前記比較ブロックを首部分に相当するとして判断させる部分判断ステップと、
    その部分判断ステップによって前記第1,第2,第3条件を満たすと判断された場合に、前記肌色領域抽出ステップにより抽出された長方形の領域に含まれる画像は前記顔画像であると認定させる認定ステップとを備えていることを特徴とする顔検出プログラム
JP2007022401A 2007-01-31 2007-01-31 顔検出装置、顔検出方法および顔検出プログラム Expired - Fee Related JP4329821B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007022401A JP4329821B2 (ja) 2007-01-31 2007-01-31 顔検出装置、顔検出方法および顔検出プログラム
US12/023,691 US8019128B2 (en) 2007-01-31 2008-01-31 Face detection device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007022401A JP4329821B2 (ja) 2007-01-31 2007-01-31 顔検出装置、顔検出方法および顔検出プログラム

Publications (2)

Publication Number Publication Date
JP2008191723A JP2008191723A (ja) 2008-08-21
JP4329821B2 true JP4329821B2 (ja) 2009-09-09

Family

ID=39668033

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007022401A Expired - Fee Related JP4329821B2 (ja) 2007-01-31 2007-01-31 顔検出装置、顔検出方法および顔検出プログラム

Country Status (2)

Country Link
US (1) US8019128B2 (ja)
JP (1) JP4329821B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8259995B1 (en) 2006-01-26 2012-09-04 Adobe Systems Incorporated Designating a tag icon
US7978936B1 (en) * 2006-01-26 2011-07-12 Adobe Systems Incorporated Indicating a correspondence between an image and an object
WO2010064405A1 (ja) * 2008-12-05 2010-06-10 パナソニック株式会社 顔検出装置
US8525847B2 (en) * 2009-06-01 2013-09-03 Apple Inc. Enhancing images using known characteristics of image subjects
CN102137343B (zh) * 2010-08-24 2014-04-16 华为技术有限公司 业务类型信息传送方法、系统和相关设备
KR101743520B1 (ko) * 2011-04-09 2017-06-08 에스프린팅솔루션 주식회사 색상 변환 장치 및 그 방법
KR102135155B1 (ko) * 2013-12-12 2020-07-17 삼성전자주식회사 디스플레이 장치 및 그 제어방법

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2849256B2 (ja) 1991-12-26 1999-01-20 日本電信電話株式会社 画像認識装置
JPH0883341A (ja) 1994-09-12 1996-03-26 Nippon Telegr & Teleph Corp <Ntt> 物体領域抽出方法とその装置及び物体認識装置
JP3561985B2 (ja) 1994-11-28 2004-09-08 ソニー株式会社 画像処理装置
JP3436473B2 (ja) * 1997-06-20 2003-08-11 シャープ株式会社 画像処理装置
JP2001188910A (ja) 1999-10-22 2001-07-10 Toshiba Corp 画像の輪郭抽出方法、画像からの物体抽出方法およびこの物体抽出方法を用いた画像伝送システム
KR100343223B1 (ko) 1999-12-07 2002-07-10 윤종용 화자 위치 검출 장치 및 그 방법
JP4039847B2 (ja) 2001-11-12 2008-01-30 オリンパス株式会社 画像処理装置およびプログラム
JP3994819B2 (ja) 2002-07-31 2007-10-24 富士ゼロックス株式会社 画像識別装置、画像識別方法、画像識別プログラム
JP4116377B2 (ja) 2002-09-18 2008-07-09 株式会社リコー 画像処理方法および画像処理装置
JP4072071B2 (ja) 2003-02-13 2008-04-02 富士フイルム株式会社 顔画像補正方法および装置、並びに顔画像補正プログラム
JP2005056231A (ja) 2003-08-06 2005-03-03 Matsushita Electric Ind Co Ltd 画像処理装置
JP4757559B2 (ja) 2004-08-11 2011-08-24 富士フイルム株式会社 被写体の構成要素を検出する装置および方法

Also Published As

Publication number Publication date
US20080181468A1 (en) 2008-07-31
US8019128B2 (en) 2011-09-13
JP2008191723A (ja) 2008-08-21

Similar Documents

Publication Publication Date Title
JP4329821B2 (ja) 顔検出装置、顔検出方法および顔検出プログラム
US9053556B2 (en) Image processing apparatus for panoramic synthesis of a plurality of sub-images
JP4158829B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
US20090158915A1 (en) Sheet music creation method and image processing system
CN104601852B (zh) 一种文件双面复印方法及装置
US20120154833A1 (en) Image display apparatus, image control method for image display apparatus, and storage medium
JP2008154106A (ja) 秘匿処理方法,画像処理装置および画像形成装置
US20090285457A1 (en) Detection of Organ Area Corresponding to Facial Organ Image in Image
JP3992035B2 (ja) 画像処理装置、方法及びプログラム
JP5018587B2 (ja) オブジェクト検出方法、オブジェクト検出装置、オブジェクト検出プログラムおよびオブジェクト検出プログラムを記録したコンピュータ読取可能な記録媒体
JP2007228032A (ja) 画像読取装置及びこれを備えた画像形成装置
US20090244570A1 (en) Face image-output control device, method of controlling output of face image, program for controlling output of face image, and printing device
US8189235B2 (en) Apparatus, method and program product that calculates a color blending ratio so security dots reproduced in a monochrome image are substantially undetectable
US8004731B2 (en) Image forming apparatus
JP4985243B2 (ja) 画像処理装置及び画像処理プログラム
JP2002281306A (ja) 画像形成装置、画像形成方法および記録媒体
KR100750112B1 (ko) 입체물 스캔 장치 및 방법
CN110991451B (zh) 扫描图像的卡片区域图像的校正方法及装置
JP4267029B2 (ja) 画像処理装置、画像処理方法、画像処理方法のプログラム及びその記憶媒体
JP2009246545A (ja) 画像出力装置
JP2002109542A (ja) 画像処理システム並びにデータ処理装置及び方法
JP2005109807A (ja) 画像処理方法、画像処理装置、画像形成装置及び画像処理システム
JP4360412B2 (ja) 画像処理装置、方法及びプログラム
JP6950621B2 (ja) 画像形成装置、画像処理装置、及び画像処理方法
JP7009750B2 (ja) 画像形成装置、同装置による地紋領域判定方法及び地紋領域判定プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090427

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090526

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090608

R150 Certificate of patent or registration of utility model

Ref document number: 4329821

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120626

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120626

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130626

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees