説明

画像処理装置、画像処理プログラム、および画像処理方法

【課題】被写体の検出精度を向上させる画像処理装置を提供する。
【解決手段】可動する耳を有する被写体の画像から、顔候補検出部104によって、被写体の顔候補を検出し、さらに付属部位検出部106によって被写体の耳を検出する。そして、頭部決定部107によって、検出した顔候補と耳とによって画像中から、被写体を検出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は画像処理に関するものである。
【背景技術】
【0002】
従来、画像から被写体の顔領域を抽出する画像処理装置としては、特許文献1に記載されたものがある。特許文献1では、画像から顔領域を抽出し、顔領域から顔の形および位置を検出した後、顔領域から目、鼻、口、および耳の各特徴領域を抽出し、特徴領域の特徴点を演算することで、顔の方向を検出している。
【特許文献1】特開2000−13066号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし、上記の発明では、可動部を有する被写体から、可動部を含んだ領域を抽出すると、可動部の動きによって、可動部を含んだ領域の検出精度が低下する、という問題点がある。例えば、猫の顔を特定部位、耳をその特定部位に結合する付属部位として想定した場合、その付属部位である耳を含んだ領域を抽出すると、耳の向きや、形状の変化によって、特定部位である猫の顔を検出する精度が低下する、という問題点がある。
【0004】
本発明はこのような問題点を解決するために発明されたもので、特定部位に結合する付属部位を有する被写体を正確に検出することを目的とする。
【課題を解決するための手段】
【0005】
本発明のある態様は、画像から被写体を検出する画像処理装置であって、画像から被写体の特定部位候補を検出する第1の検出部と、画像から被写体の特定部位に結合する付属部位を検出する第2の検出部と、第1の検出部の検出結果と第2の検出部の検出結果とに基づいて、画像から被写体を検出する被写体検出部と、を備えたことを特徴とする。
【0006】
本発明の別の態様は、画像から被写体を検出する画像処理プログラムであって、画像から被写体の特定部位候補を検出する第1の検出手順と、画像から被写体の特定部位に結合する付属部位を検出する第2の検出手順と、第1の検出手順の検出結果と第2の検出手順の検出結果とに基づいて、画像から被写体を検出する被写体検出手順と、をコンピュータに発揮させることを特徴とする。
【0007】
本発明のさらに別の態様は、画像から被写体を検出する画像処理方法であって、画像から被写体の特定部位候補を検出し、画像から被写体の特定部位に結合する付属部位を検出し、特定部位候補に関する情報と付属部位に関する情報とに基づいて、画像から被写体を検出することを特徴とする。
【0008】
これら態様によれば、可動する付属部位を有する被写体、例えば猫を被写体とする画像に対して、例えば猫の顔である特定部位と、例えば猫の耳である付属部位と、をそれぞれ検出し、検出した結果により、被写体を判定する。そのため、特定部位に結合する付属部位を有する被写体を画像から正確に検出することが可能となる。
【発明の効果】
【0009】
本発明によると、特定部位に結合する付属部位を有する被写体を正確に検出できる。
【発明を実施するための最良の形態】
【0010】
本発明の第1実施形態の構成について、図1を用いて説明する。図1は本実施形態の画像処理装置の概略図である。以下の説明では「被写体」は、飼い犬、飼い猫といったペットである。また、「顔」はペットの頭部のうち耳を含まない目、鼻、口からなる頭部の中央領域を指すものする(本明細書中では、顔は、例えば、特定部位に対応する)。「頭部」は顔と付属部位とを合わせた首から上の部分全体を指すものである。また、「付属部位」は、可動するペットの耳を指すものである。なお、被写体としてはペットに限られることはなく、例えば、犬、猫などの動物や、漫画またはアニメのキャラクターであってもよい。また、付属部位は、耳に限られることはなく、角や鶏冠などの顔から突き出た突出部であればよい。
【0011】
本実施形態の画像処理装置は、レンズ系100と、絞り101と、CCD102と、A/D変換器103と、顔候補検出部(本明細書中では、例えば、第1の検出部に対応する)104と、メモリ105と、付属部位検出部(本明細書中では、例えば、第2の検出部に対応する)106と、頭部決定部(本明細書中では、例えば、被写体検出部に対応する)107と、出力部108と、CPU109と、を備える。
【0012】
レンズ系100は、複数のレンズによって構成する。レンズ系100は、被写体の像を所定の位置に結像する。絞り101は、CCD102に到達する時間あたりの光量を調整する。CCD102は、レンズ系100および絞り101を介して結像される光学像を光電変換し、アナログの画像信号として出力する。なお、CCD102に代えて、例えばCMOSなどの他の撮像素子を使用してもよい。A/D変換器103は、CCD102から出力されたアナログの画像信号をデジタルの画像信号に変換する。
【0013】
顔候補検出部104は、A/D変換器103から出力される画像信号から、被写体の顔候補(本明細書中では、例えば、特定部位候補に対応する)を含んだ顔候補領域を設定する。顔候補検出部104は、例えばViola-Jonesの方法によって、顔候補を検出する。Viola-Jonesの方法は、予め機械学習させておいた複数の識別器を画像に対して適用する。これにより画像から顔候補を高速に検出することが可能である。Viola-Jonesの方法は、例えば、P. Viola and M. Jones. "Rapid Object Detection Using a Boosted Cascade of Simple Features," in Proc. of CVPR, vol.1, ppp.511-518, December, 2001に記載されている。
【0014】
また、顔候補検出部104は、ガボールフィルタとグラフマッチングとを用いる方法によって顔候補を検出してもよい。ガボールフィルタとグラフマッチングを用いる方法は、Gabor Waveletと顔特徴点の近傍領域を畳み込むことで特徴量を算出し、入力画像に対するFace Graphを抽出する。そして、予め登録されているFace Graphと、入力画像から得られたFace Graphの特徴量の類似度を検出する。ガボールフィルタとグラフマッチングを用いる方法としては、例えば、Laurenz Wiskott, Jean-Marc Fellous, Norbert Kruger, and Christoph von der Malsburg. "Face Recognition by Elastic Bunch Graph Matching" in Intelligent Biometric Techniques in Fingerprint and Face Recognition, eds. L.C. Jain et al., pub1. CRC Provv, ISBN 0-8493-2055-0, Chapter 11, pp. 355-396, (1999).に記載されている。
【0015】
メモリ105は、顔候補検出部104によって検出した顔候補領域を写した画像信号を記憶する。
【0016】
付属部位検出部106は、顔候補検出部104によって検出した顔候補領域の位置情報および大きさ情報に基づいて、顔に結合する付属部位を検出するための検出範囲を設定する。また、付属部位検出部106は、設定した検出範囲から付属部位を検出する。付属部位検出部106で設定する検出範囲および付属部位について、詳しくは後述する。本実施形態において、付属部位は耳であるため、2箇所存在する。以下においては、一方の付属部位を第1付属部位とし、もう一方の第1付属部位とペアとなる付属部位を第2付属部位とする。
【0017】
頭部決定部107は、顔候補が顔であるかどうか決定する。また、頭部決定部107は、メモリ105に記憶された顔候補領域を写した画像信号と、付属部位検出部106によって検出された第1付属部位および第2付属部位を写した画像信号と、に基づいて、頭部を決定する。決定した頭部の情報は、出力部108へ出力される。
【0018】
出力部108は、頭部決定部107で検出された頭部の情報を出力する。例えば、ディスプレイを有する画像処理装置においては、ディスプレイに表示された画像の中で、被写体の頭部を四角形状の枠で囲んで表示する。
【0019】
CPU109は、A/D変換器103、顔候補検出部104、付属部位検出部106、頭部決定部107、出力部108に接続し、A/D変換器103、各部における処理を制御する。
【0020】
ここで、付属部位検出部106で設定する検出範囲について、図2を用いて詳しく説明する。図2は、画像中の被写体における顔候補領域A31、付属部位を検出する範囲A32、A33を示す図である。図2中、顔候補領域A31の左上頂点の座標を(x31,y31)、幅をW31、高さをh31とする。なお、図2においては、画像の左上頂点を原点(図示せず)として、原点から画像の上辺に沿ってx軸の正方向、原点から画像の左辺に沿ってy軸の正方向とする。
【0021】
付属部位検出部106は、顔候補検出部104によって、検出された顔候補を含んだ顔候補領域A31に対して、次の式(1)〜(3)を用いて、第1付属部位を含んでいると推定され、第1付属部位を検出する検出範囲(本明細書中では、例えば、第1検出範囲に対応する)A32を算出する。この検出範囲A32を、第1付属部位検出範囲とする。図2中、第1付属部位検出範囲A32の左上頂点の座標を(x32,y32)、幅をW32、高さをh32とする。
【0022】
【数1】

【0023】
【数2】

【0024】
【数3】

【0025】
また、付属部位検出部106は、顔候補領域A31に対して、次の式(4)〜(6)を用いて、第2付属部位を含んでいると推定され、第2付属部位を検出する検出範囲(本明細書中では、例えば、第2検出範囲に対応する)A33を算出する。この検出範囲A33を、第2付属部位検出範囲とする。図2中、第2付属部位検出範囲A33の左上頂点の座標を(x33,y33)、幅をW33、高さをh33とする。
【0026】
【数4】

【0027】
【数5】

【0028】
【数6】

【0029】
なお、顔候補領域A31、第1付属部位検出範囲A32、第2付属部位検出範囲A33についての座標などの設定はこれに限られることはない。また、第1付属部位検出範囲A32、第2付属部位検出範囲A33は、上記大きさに限られることはなく、被写体のあらゆる種類の付属部位が入る、最小の大きさとなる範囲としてもよい。つまり、第1付属部位検出範囲A32、第2付属部位検出範囲A33の大きさは、被写体に応じて設定される。
【0030】
第1付属部位または第2付属部位を検出する範囲を、顔候補領域A31に基づいて、設定することで、顔候補に結合する付属部位が存在しない範囲で、第1付属部位および第2付属部位の検出が行われることを防止することができる。
【0031】
次に、付属部位検出部106の付属部位の検出方法について詳しく説明する。
【0032】
付属部位検出部106は、本実施形態では検出範囲内で、SIFT(Scale-Invariant Feature Transform)による特徴抽出法を用いて、付属部位を検出する。
【0033】
付属部位検出部106は、まず、第1付属部位検出範囲A32の画像L(x,y)の輝度勾配の大きさm(x,y)および勾配方向θ(x,y)を次の式(7)、(8)を用いて算出する。
【0034】
【数7】

【0035】
【数8】

【0036】
ただし、座標(x,y)における輝度値をL(x,y)とした場合に、fx(x,y)、fy(x,y)は、次の式(9)である。
【0037】
【数9】

【0038】
輝度勾配の方向は輝度が変化する方向であり、輝度勾配の大きさはその変化の強さを表す値である。付属部位とその背景で輝度が異なる場合、付属部位の縁で輝度勾配の大きさが大きくなり、輝度勾配の方向は付属部位の縁の法線方向となる。
【0039】
次に、付属部位検出部106は、輝度勾配の大きさm(x,y)に対して、ガウス分布G(x,y,σ)を掛けることで、重み付けされた輝度勾配の大きさW(x,y)を次の式(10)によって算出する。σは標準偏差である。
【0040】
【数10】

【0041】
そして、付属部位検出部106は、各勾配方向(θ=0〜360°)について重み付けされた輝度勾配の大きさW(x,y)と、デルタ関数δと、勾配方向θ(x,y)と、を用いて、全方向を36方向に量子化したヒストグラムhθ’を次の式(11)によって算出する。θ’は、勾配方向θ(x,y)を量子化した方向である。36方向は、360°を10分割して設定する方向である。
【0042】
【数11】

【0043】
第1付属部位検出範囲A32の画像L(x,y)対して、第1付属部位がない場合には、勾配方向θ(x,y)と勾配の大きさm(x,y)は例えば図3に示すようなものとなる。そして、この場合のヒストグラムは図4のようになる。ヒストグラムの最大値を100%として、ヒストグラムが80%以上となる箇所の中で、最も大きなピークとなる位置を第1の代表輝度の勾配方向(以下、第1勾配方向とする)θ1とする。第1付属部位がない場合には、第1勾配方向の他に、ヒストグラムが80%以上となる箇所が現れない。
【0044】
一方、第1付属部位検出範囲A32の画像L(x,y)対して、第1付属部位を含んでいる場合には、画像L(x,y)は、図3と同様に、ある特性を示す勾配方向θ(x,y)と勾配の大きさm(x,y)を有している。そして、この場合のヒストグラムは、図5のようになる。第1対象部位を含んだ画像L(x,y)のヒストグラムでは、図5に示すように、第1勾配方向θ1に加えて、もう一つのピークが得られる。このもう1つのピークを第2の代表輝度の勾配方向(以下、第2勾配方向とする)θ2とする。
【0045】
付属部位検出部106は、式(11)によって算出したヒストグラムから、第1勾配方向θ1と第2勾配方向θ2と算出する。そして、第1勾配方向θ1と第2勾配方向θ2とに基づいて、第1付属部位を検出する。本実施形態では、付属部位検出部106は、第1勾配方向θ1と第2勾配方向θ2の間の角度が所定角度以内であれば、第1付属部位であると判定する。所定角度としては、例えば、20°〜80°である。しかし、所定角度としては、これに限られることはなく、第1付属部位の特性によって設定することが可能である。
【0046】
付属部位検出部106は、第2付属部位検出範囲A33についても、同様の計算を行い、第2付属部位を検出する。
【0047】
次に、本実施形態の頭部を決定する方法について、図6のフローチャートを用いて説明する。
【0048】
ステップS200では、目、鼻、口を含む顔の特徴を用いて、Viola-Jonesの方法によって、顔候補を検出し、顔候補を含んだ顔候補領域A31を設定する。画像中に被写体が複数ある場合には、全ての被写体に対して、それぞれ顔候補領域A31が設定される。
【0049】
ステップS201では、画像中に顔候補があるかどうか判定する。そして、顔候補がある場合には、ステップS202へ進み、顔候補がない場合には、本制御を終了する。
【0050】
ステップS202では、付属部位検出範囲を設定する。付属部位検出範囲の設定方法について図7のフローチャートを用いて説明する。
【0051】
ステップS300では、顔候補領域A31の位置情報(x31,y31)および大きさ情報(W31,h31)を読み出す。
【0052】
ステップS301では、顔候補領域A31に対する第1付属部位検出範囲A32を式(1)〜(3)に基づいて、設定する(本明細書中では、例えば、第1検出範囲決定部に対応する)。
【0053】
ステップS302では、顔候補領域A31に対する第2付属部位検出範囲A33を式(4)〜(6)に基づいて、設定する(本明細書中では、例えば、第2検出範囲決定部に対応する)。
【0054】
ステップS303では、全ての顔候補領域A31に対して、第1付属部位検出範囲A32、第2付属部位検出範囲A33を設定したかどうか判定する。そして全ての顔候補領域A31に対して、第1付属部位検出範囲A32および第2付属部位検出範囲A33を設定した場合には、本制御を終了する。いずれかの顔候補領域A31に対して、第1付属部位検出範囲A32および第2付属部位検出範囲A33を設定していない場合には、ステップS300へ戻り、上記制御を繰り返す。
【0055】
以上の制御によって、顔候補領域A31に対して、第1付属部位検出範囲A32、第2付属部位検出範囲A33を設定する。
【0056】
図6に戻り、ステップS203では、顔候補領域A31に対して設定した第1付属部位検出範囲A32から第1付属部位を検出する。また、顔候補領域A31に対して設定した第2付属部位検出範囲A33から第2付属部位を検出する。本実施形態では、第1付属部位検出範囲A32に対して、SIFTによる特徴抽出法を用いることにより、第1付属部位を検出する。また、第2付属部位検出範囲A33に対して、SIFTによる特徴抽出法を用いることにより、第2付属部位を検出する。
【0057】
ステップS204では、第1付属部位検出範囲A32で第1付属部位が検出され、第2付属部位検出範囲A33で第2付属部位が検出されたかどうか判定する。そして、第1付属部位と第2付属部位とが検出された場合には、ステップS205へ進み、第1付属部位または第2付属部位が検出されなかった場合には、ステップS207へ進む。
【0058】
ステップS205では、顔候補領域A31に対して第1付属部位と第2付属部位とが検出されると、顔候補領域A31の顔候補を顔であると決定する(本明細書中では、例えば、特定部位決定部に対応する)。第1付属部位と第2付属部位とが検出された顔候補領域A31のみを顔であると決定することで、顔の検出を正確に行うことができる。
【0059】
ステップS206では、顔と第1付属部位と第2付属部位とにより頭部を決定する。これにより、画像に被写体があることが決定される。
【0060】
本実施形態では、顔候補領域A31に対して、第1付属部位検出範囲A32と第2付属部位検出範囲A33とを設定し、その中に第1付属部位または第2付属部位があるかどうか、判定することで、付属部位の動きにかかわらず、頭部の検出を正確に行うことができる。
【0061】
ステップS207では、設定された全ての顔候補領域A31に対する第1付属部位、第2付属部位の検出を行ったかどうか判定する。そして、全ての顔候補領域A31に対する第1付属部位、第2付属部位の検出を行った場合には、本制御を終了する。また、いずれかの顔候補領域A31に対する第1付属部位、第2付属部位の検出を行っていない場合には、ステップS203へ戻り、第1付属部位、第2付属部位を検出していない顔候補領域A31に対して、上記制御を繰り返す。
【0062】
本発明の第1実施形態の効果について説明する。
【0063】
本実施形態では、画像の中から、被写体の顔候補を検出し、顔候補を含んだ顔候補領域A31の情報に基づいて、第1付属部位検出範囲A32と第2付属部位検出範囲A33とを設定し、第1付属部位と第2付属部位とを検出する。被写体の顔候補と、付属部位と、を別々に検出することで、画像の中から被写体の頭部を正確に検出することができる。そのため、例えば可動する耳を有する猫などが被写体である場合でも、被写体の頭部を正確に検出することができる。これによって、撮影時のAF、web上の画像からの例えば猫や犬などの被写体画像検索、などを素早く、かつ正確に行うことができる。
【0064】
また、顔候補に対して、第1付属部位と第2付属部位とが検出された場合に、顔候補を顔であると決定する。これにより、被写体の顔を正確に検出することができ、被写体の頭部を正確に検出することができる。
【0065】
顔候補領域A31の位置情報および大きさ情報に基づいて、第1付属部位または第2付属部位が存在すると推定される第1付属部位検出範囲A32と第2付属部位検出範囲A33とを設定する。そして、その中に第1付属部位または第2付属部位があるかどうか判定する。顔候補領域A31に対して、距離が遠い箇所については、付属部位の検出を行わないので、付属部位の検出時間を短くすることができ、さらに被写体の頭部を正確に検出することができる。
【0066】
次に本発明の第2実施形態について図8を用いて説明する。なお、第1実施形態と同じ構成については、図1と同じ符号を付し、ここでの説明は省略する。本実施形態では、付属部位検出部404と、メモリ405と、顔候補検出部406と、頭部決定部407と、が第1実施形態とは異なる。
【0067】
付属部位検出部404は、A/D変換器103から出力される画像信号に基づき、第1付属部位候補を含んだ領域(以下、第1付属部位領域(本明細書中では、例えば、第1領域に対応する)とする)を設定する。また、第2付属部位を探索する範囲(以下、第2付属部位探索範囲(本明細書中では、例えば、第2領域に対応する)とする)を設定し、第2付属部位探索範囲内で第2付属部位を検出する範囲(以下、第2付属部位検出範囲とする)を設定する。そして、第2付属部位検出範囲から第2付属部位を検出する。第1付属部位領域と、第2付属部位探索範囲と、第2付属部位検出範囲と、について、詳しくは後述する。
【0068】
メモリ405は、付属部位検出部404によって検出した第1付属部位と第2付属部位とを写した画像信号を記憶する。
【0069】
顔候補検出部406は、付属部位検出部404によって検出した第1付属部位および第2付属部位の位置情報および大きさ情報に基づいて、顔候補を検出する顔候補検出範囲(本明細書中では、例えば、第3検出範囲に対応する)を設定する。顔候補検出範囲について、詳しくは後述する。また、顔候補検出部406は、顔候補検出範囲から顔候補を検出する。
【0070】
頭部決定部407は、メモリ405に記憶された第1付属部位と第2付属部位を写した画像信号と、顔候補検出部406によって検出された顔候補を写した画像信号と、に基づいて、頭部を決定する。決定した頭部の情報は、出力部108へ出力される。
【0071】
ここで、付属部位検出部404において設定する、第1付属部位領域と、第2付属部位探索範囲と、第2付属部位検出範囲と、について図9を用いて説明する。図9は、第1付属部位領域、第2付属部位探索範囲、第2付属部位検出範囲を示す図である。図9中、第1付属部位領域A71の左上頂点の座標を(x71,y71)、幅をW71、高さをh71とする。
【0072】
付属部位検出部404は、SIFTによる特徴抽出法によってコーナーを検出し、第1付属部位候補を含む第1付属部位領域A71を設定する。SIFTによる特徴抽出法では、特徴点を検出する際に得られる特徴点のスケールサイズに応じて、特徴量を記述するウィンドウサイズが定まる。これによって定まった所定サイズの領域を第1付属部位領域A71として設定する。
【0073】
付属部位検出部404は、第1付属部位領域A71を設定すると、第1付属部位領域A71の近傍に、次の式(12)〜(14)を用いて、第2付属部位探索範囲A72を算出し、設定する。図9中、第2付属部位探索範囲A72の左上頂点の座標を(x72,y72)、幅をW72、高さをh72とする。
【0074】
【数12】

【0075】
【数13】

【0076】
【数14】

【0077】
第2付属部位探索範囲A72は、第1付属部位領域A71よりも大きいサイズであり、被写体のあらゆる種類に対する付属部位を検出することができるように設定される。また、第2付属部位探索範囲A72は、第1付属部位領域A71の近傍に設けられる。第2付属部位探索範囲A72を第1付属部位領域A71の近傍に設けることで、第1付属部位と距離が離れた、第1付属部位とペアにならない付属部位が検出されることを防ぐことができる。これによって、第1付属部位とペアとなる第2付属部位を正確に検出することができる。なお、第2付属部位探索範囲A72は、本実施形態においては、第1付属部位領域A71と隣接しているが、第1付属部位領域A71と隣接させずに設けてもよい。また、第2付属部位探索範囲A72の一部が第1付属部位領域A71と重なるように設けてもよい。また、第2付属部位探索範囲A72のサイズは、上記サイズに限られず、第1付属部位とペアとなる第2付属部位を正確に検出できるサイズであればよい。
【0078】
付属部位検出部404は、第2付属部位探索範囲A72を設定すると、第2付属部位探索範囲A72内で、第2付属部位検出範囲A73を次の式(15)、(16)を満たすように設定する。図9中、第2付属部位検出範囲A73の左上頂点の座標を(x73,y73)、幅をW73、高さをh73とする。なお、第2付属部位検出範囲A73は、例えば図10に示すように、第2付属部位探索範囲A72の左上から順次設定される。
【0079】
【数15】

【0080】
【数16】

【0081】
第2付属部位検出範囲A73は、第1付属部位領域A71と上記の関係を有するように設定されることで、第1付属部位と略同一の大きさの第2付属部位のみを検出することが可能となる。これによって、第1付属部位とペアとなる第2付属部位を正確に検出することができる。
【0082】
ここで、顔候補検出部406における、顔候補領域について、図11を用いて説明する。図11は、第1付属部位領域A71、第2付属部位検出範囲A73、顔候補領域A74を示す図である。図11中、顔候補領域A74の左上頂点の座標を(x74,y74)、幅をW74、高さをh74とする。
【0083】
顔候補検出部406は、第1付属部位領域A71または第2付属部位検出範囲A73の周辺の領域に、次の式(17)〜(19)に基づいて、顔候補領域A74を設定する。
【0084】
【数17】

【0085】
【数18】

【0086】
【数19】

【0087】
次に、本実施形態の頭部を決定する方法について、図12のフローチャートを用いて説明する。
【0088】
ステップS500では、第1付属部位と第2付属部位とを検出する。ここで付属部位の検出方法について図13のフローチャートを用いて説明する。
【0089】
ステップS600では、第1実施形態と同様に、SIFTによる特徴抽出法によって、探索範囲に第1付属部位候補を含む第1付属部位領域A71を設定する。探索範囲は、予め設定されるサイズの領域であり、被写体のあらゆる種類に対する第1付属部位領域A71の最大のサイズよりも大きいサイズの領域である(本明細書中では、例えば、第1領域設定部に対応する)。
【0090】
ステップS601では、探索範囲内に第1付属部位候補があり、第1付属部位領域A71が設定されたかどうか判定する。そして、探索範囲内に、第1付属部位領域A71が設定された場合には、ステップS602へ進む。また、探索範囲内で、第1付属部位領域A71が設定されなかった場合には、ステップS608へ進む。
【0091】
ステップS602では、第2付属部位探索範囲A72を式(12)〜(14)に基づいて設定する(本明細書中では、例えば、第2領域設定部に対応する)。
【0092】
ステップS603では、第2付属部位探索範囲A72に、式(15)、(16)に基づいた第2付属部位検出範囲A73を設定する。
【0093】
ステップS604では、第2付属部位検出範囲A73から第2付属部位を検出する。本実施形態では、第2付属部位検出範囲A73に対して、第1実施形態と同様に、SIFTによる特徴抽出法によって、第2付属部位を検出する。
【0094】
ステップS605では、第2付属部位検出範囲A73に第2付属部位があるかどうか判定する。そして、第2付属部位検出範囲A73に第2付属部位がある場合には、ステップS606へ進む。また、第2付属部位検出範囲A73に第2付属部位がない場合には、ステップS609へ進む。
【0095】
ステップS606では、第1付属部位候補とペアとなる第2付属部位が検出されたので、第1付属部位候補を第1付属部位と決定する。
【0096】
ステップS607では、第1付属部位と第2付属部位とを写した画像信号をメモリ405に記憶する。
【0097】
ステップS608では、探索範囲を画像の全範囲に対して設定したかどうか判定する。そして、探索範囲を画像の全範囲に対して設定した場合には、この制御を終了する。また、探索範囲を画像のいずれかの領域に対して設定していない場合には、新たな探索範囲を設定し、ステップS600へ戻り、上記制御を繰り返す。
【0098】
一方、ステップS605によって、第2付属部位検出範囲A73に第2付属部位がないと判定されると、ステップS609によって、第2付属部位探索範囲A72の全ての領域に第2付属部位検出範囲A73を設定したかどうか判定する。そして、全ての第2付属部位探索範囲A72に第2付属部位検出範囲A73を設定した場合には、ステップS608へ進む。また、第2付属部位探索範囲A72のいずれかの領域に第2付属部位検出範囲A73を設定していない場合には、ステップS603へ戻り、新たな第2付属部位検出範囲A73を設定し、上記制御を繰り返す。
【0099】
以上の制御により、第1付属部位と第2付属部位とを検出する。
【0100】
図12に戻り、ステップS501では、第1付属部位と、第1付属部位とペアとなる第2付属部位と、があるかどうか判定する。そして、第1付属部位と、第1付属部位とペアとなる第2付属部位と、がある場合には、ステップS502へ進み、第1付属部位、または第1付属部位とペアとなる第2付属部位がない場合には、本制御を終了する。
【0101】
ステップS502では、第1付属部位と、第1付属部位とペアとなる第2付属部位と、がある場合には、第1付属部位と第2の付属部位との位置情報および大きさ情報により、第1付属部位または第2付属部位の周辺の領域に顔候補検出範囲を式(17)〜(19)に基づいて設定する。
【0102】
ステップS503では、顔候補検出範囲内で顔候補の検出を行う。顔候補を検出する方法としては、例えばViola-Jonesの方法によって顔候補の検出を行う。
【0103】
ステップS504では、顔候補検出範囲内に顔候補があるかどうか判定する。そして、顔候補検出範囲内に顔候補領域がある場合にはステップS505へ進む。また、顔候補検出範囲内に顔候補がない場合にはステップS507へ進む。
【0104】
ステップS505では、第1付属部位と、第1付属部位とペアとなる第2付属部位と、顔候補と、が検出されると、顔候補を被写体の顔であると決定する。
【0105】
ステップS506では、第1付属部位と、第2付属部位と、被写体の顔と、よって、被写体の頭部を決定する。
【0106】
ステップS507では、全ての第1付属部位および第2付属部位に対して、顔候補を検出したかどうか判定する。そして、全ての第1付属部位および第2付属部位に対して、顔候補を検出した場合には、本制御を終了する。また、いずれかの第1付属部位および第2付属部位に対して、顔候補を検出していない場合には、ステップS502へ戻り、上記制御を繰り返す。
【0107】
なお、第1付属部位領域A71を設定する方法しては、以下の方法を用いてもよい。
【0108】
まず、探索範囲の中からコーナーとなる箇所を検出する。コーナー検出は、SIFTによる特徴抽出法によって検出する。そして、ヒストグラムを作成し、第1勾配方向θ1、第2勾配方向θ2を算出し、第1勾配方向θ1と第2勾配方向θ2の間の角度を算出する。この角度が例えば20°〜80°の場合には、検出したコーナーが第1付属部位である耳の先端であると判定することができる。
【0109】
次に、第1付属部位の先端から、公知のエッジ検出方法、例えば、輝度値を一次微分し、その変化量が大きなところをエッジとして検出する。これにより、第1付属部位の縁を検出する。
【0110】
第1付属部位の先端、および第1付属部位の縁を検出すると、第1付属部位の先端から伸びる第1付属部位の縁に沿って、別のコーナーを、例えばSIFTのような特徴抽出法によって検出する。これによって、第1付属部位の末端を検出することができる。なお、コーナーを検出する方法としては、Harrisの方法、SUSANの方法などを用いてもよい。
【0111】
第1付属部位の先端と第1付属部位の末端とを検出すると、これらの端を含む領域を第1付属部位領域A71として設定する。これによると、第1付属部位の大きさを正確に算出することができる。
【0112】
本発明の第2実施形態の効果について説明する。
【0113】
第1付属部位を含む第1付属部位領域A71を設定した後に、第1付属部位領域A71よりも大きいサイズの第2付属部位探索範囲A72を第1付属部位領域A71の近傍に設定する。そして、第2付属部位探索範囲A72内で第2付属部位を検出する。第2付属部位探索範囲A72のサイズを制限することで、例えば、第2付属部位探索範囲A72を被写体のあらゆる種類に対する第2付属部位が入るサイズとした場合に、第1付属部位とペアとならない付属部位が検出されることを防ぐことができる。そのため、第1付属部位とペアとなる第2付属部位を正確に検出することができる。また、第1付属部位とペアとなる第2付属部位を検出するための、処理時間を短くすることができ、顔検出の処理で必要となる時間を短くすることができる。また、被写体の頭部を正確に検出することができる。
【0114】
また、第1付属部位と第2付属部位との位置情報、大きさに応じて、顔候補領域A74を設定し、その顔候補領域A74で顔候補を検出する。これよって、第1付属部位および第2付属部位と結合しない顔候補が検出されることを防ぐことができ、被写体の頭部を正確に検出することができる。
【0115】
なお、上記実施形態においては、顔候補と、第1付属部位と、第2付属部位と、が検出された場合に顔を決定しているが、第1付属部位と第2付属部位のどちらかが検出された場合に、顔を決定してもよい。この場合には、顔候補領域における顔の確からしさなどを算出し、顔の確からしさが高く、第1付属部位または第2付属部位が検出された場合に、顔を決定し、被写体の頭部を決定してもよい。
【0116】
また、上記画像処理装置は、デジタルカメラ、デジタルビデオカメラ、電子内視鏡など、正しく作動するために電流または電磁界に依存する機器である電子機器に搭載することが可能である。
【0117】
また、上述した実施形態の説明では、画像処理装置が行う処理としてハードウェアによる処理を前提としていたが、このような構成に限定される必要はない。例えば、別途ソフトウェアにて処理する構成も可能である。
【0118】
この場合、画像処理装置は、CPU、RAM等の主記憶装置、上記処理の全て或いは一部を実現させるためのプログラムが記憶されたコンピュータ読取り可能な記憶媒体を備える。ここでは、このプログラムを画像処理プログラムと呼ぶ。そして、CPUが上記記憶媒体に記憶されている画像処理プログラムを読み出して、情報の加工・演算処理を実行することにより、上記画像処理装置と同様の処理を実現させる。
【0119】
ここで、コンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、この画像処理プログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該画像処理プログラムを実行するようにしても良い。
【図面の簡単な説明】
【0120】
【図1】本発明の第1実施形態の画像処理装置を示す概略ブロック図である。
【図2】本発明の第1実施形態の顔候補領域などを示す図である。
【図3】画像に対する勾配方向と勾配の大きさを示す図である。
【図4】図3における特徴を有する場合のヒストグラムを示す図である。
【図5】代表輝度の勾配方向が2つある場合のヒストグラムを示す図である。
【図6】本発明の第1実施形態の頭部を決定するためのフローチャートである。
【図7】本発明の第1実施形態の付属部位検出範囲の設定方法を説明するフローチャートである。
【図8】本発明の第2実施形態の画像処理装置を示す概略ブロック図である。
【図9】本発明の第2実施形態の第1付属部位領域などを示す図である。
【図10】本発明の第2実施形態の第2付属部位検出範囲の設定順位を説明する図である。
【図11】本発明の第2実施形態の顔候補領域などを示す図である。
【図12】本発明の第2実施形態の頭部を決定するためのフローチャートである。
【図13】本発明の第2実施形態の付属部位の検出制御についてのフローチャートである。
【符号の説明】
【0121】
102 CCD
104、406 顔候補検出部(第1の検出部)
106、404 付属部位検出部(第2の検出部)
107、407 頭部決定部(被写体検出部)

【特許請求の範囲】
【請求項1】
画像から被写体を検出する画像処理装置であって、
前記画像から前記被写体の特定部位候補を検出する第1の検出部と、
前記画像から前記被写体の特定部位に結合する付属部位を検出する第2の検出部と、
前記第1の検出部の検出結果と前記第2の検出部の検出結果とに基づいて、前記画像から前記被写体を検出する被写体検出部と、を備えたことを特徴とする画像処理装置。
【請求項2】
前記第2の検出部は、
前記第1の検出部の検出結果に基づいて、前記特定部位に結合する第1付属部位と、前記特定部位に結合し、かつ前記第1付属部位とペアとなる第2付属部位と、を検出することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記特定部位候補に対して、前記第1付属部位および前記第2付属部位が検出された場合に、前記特定部位候補を前記特定部位と決定する特定部位決定部を備え、
前記被写体検出部は、前記特定部位決定部によって決定された前記特定部位と、前記付属部位と、に基づいて、前記画像から前記被写体を検出することを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記第2の検出部は、
前記第1の検出部によって検出された前記特定部位候補の位置情報および大きさ情報に基づいて、前記第1付属部位を検出するための第1検出範囲を設定する第1検出範囲決定部と、
前記第1の検出部によって検出された前記特定部位候補の位置情報および大きさ情報に基づいて、前記第2付属部位を検出するための第2検出範囲を設定する第2検出範囲決定部と、を備え、
前記第1検出範囲から前記第1付属部位を検出し、前記第2検出範囲から前記第2付属部位を検出することを特徴とする請求項2または3に記載の画像処理装置。
【請求項5】
前記第1の検出部は、前記第2の検出部の検出結果に基づいて、前記特定部位候補を検出することを特徴とする請求項1に記載の画像処理装置。
【請求項6】
前記第1の検出部は、前記第2の検出部によって検出された前記付属部位の位置情報および大きさ情報に基づいて、前記特定部位候補を検出するための第3検出範囲を設定し、前記第3検出範囲から前記特定部位候補を検出することを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記第2の検出部は、
前記特定部位に結合する第1付属部位に関する情報に基づいて、第1領域を設定する第1領域設定部と、
前記第1領域よりも大きいサイズの第2領域を、前記被写体に関する情報に基づいて前記第1領域の近傍に設定する第2領域設定部と、を備え、
前記特定部位に結合し、かつ前記第1付属部位とペアとなる第2付属部位を、前記第2領域から検出することを特徴とする請求項5または6に記載の画像処理装置。
【請求項8】
前記付属部位は、可動することを特徴とする請求項1から7のいずれか一つに記載の画像処理装置。
【請求項9】
前記付属部位は、前記特定部位から突き出た突出部であることを特徴とする請求項1から8のいずれか一つに記載の画像処理装置。
【請求項10】
前記特定部位は、動物の顔であり、
前記付属部位は、前記動物の耳であることを特徴とする請求項1から9のいずれか一つに記載の画像処理装置。
【請求項11】
前記第1の検出部は、機械学習させておいた複数の識別器から前記特定部位候補を検出することを特徴とする請求項1から10のいずれか一つに記載の画像処理装置。
【請求項12】
前記第1の検出部は、ガボールフィルタおよびグラフマッチングにより、前記特定部位候補を検出することを特徴とする請求項1から10のいずれか一つに記載の画像処理装置。
【請求項13】
請求項1から12のいずれか一つに記載の画像処理装置を備えたことを特徴とする電子機器。
【請求項14】
画像から被写体を検出する画像処理プログラムであって、
前記画像から前記被写体の特定部位候補を検出する第1の検出手順と、
前記画像から前記被写体の特定部位に結合する付属部位を検出する第2の検出手順と、
前記第1の検出手順の検出結果と前記第2の検出手順の検出結果とに基づいて、前記画像から前記被写体を検出する被写体検出手順と、をコンピュータに発揮させることを特徴とする画像処理プログラム。
【請求項15】
画像から被写体を検出する画像処理方法であって、
前記画像から前記被写体の特定部位候補を検出し、
前記画像から前記被写体の特定部位に結合する付属部位を検出し、
検出した前記特定部位候補と前記付属部位とに基づいて、前記画像から前記被写体を検出することを特徴とする画像処理方法。

【図3】
image rotate

【図6】
image rotate

【図7】
image rotate

【図10】
image rotate

【図12】
image rotate

【図13】
image rotate

【図1】
image rotate

【図2】
image rotate

【図4】
image rotate

【図5】
image rotate

【図8】
image rotate

【図9】
image rotate

【図11】
image rotate


【公開番号】特開2010−26804(P2010−26804A)
【公開日】平成22年2月4日(2010.2.4)
【国際特許分類】
【出願番号】特願2008−187572(P2008−187572)
【出願日】平成20年7月18日(2008.7.18)
【出願人】(000000376)オリンパス株式会社 (11,466)
【Fターム(参考)】