画像処理装置、画像処理方法、制御プログラムおよび記録媒体
【課題】画像から対象を検出する検出精度を効果的または効率的に向上させる。
【解決手段】画像上における所定の主体の全部または一部である検出対象を検出する画像処理装置1であって、画像から検出対象と考えられる推定検出対象を検出する検出対象検出部22と、検出対象検出部22が検出した推定検出対象を含む領域から、検出対象の主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象を検出する異種対象検出部24と、異種対象検出部24の検出結果に基づいて、検出対象検出部22が検出した推定検出対象が、検出対象であるか否かを判定する検出対象領域判定部25とを備える。
【解決手段】画像上における所定の主体の全部または一部である検出対象を検出する画像処理装置1であって、画像から検出対象と考えられる推定検出対象を検出する検出対象検出部22と、検出対象検出部22が検出した推定検出対象を含む領域から、検出対象の主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象を検出する異種対象検出部24と、異種対象検出部24の検出結果に基づいて、検出対象検出部22が検出した推定検出対象が、検出対象であるか否かを判定する検出対象領域判定部25とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像から人間の顔等の対象を検出する画像処理装置、画像処理方法、制御プログラムおよび記録媒体に関するものである。
【背景技術】
【0002】
近年、デジタルカメラ等には、撮影時に、人間の顔等を検出し、検出した対象に焦点を合わしたり、検出した対象のホワイトバランス等を調整したりする技術が搭載されている。この技術においては、画像から人間の顔等の対象を正確に検出できることが望ましい。そのため、対象を検出する精度を向上させる技術について様々なものが開発されている。
【0003】
例えば、特許文献1には、画像から人間の顔を検出する際に、画像に対して2次元の顔検出処理および3次元の顔検出処理を実行し、何れかの検出処理で検出された対象を人間の顔として特定する技術が記載されている。
【0004】
また、特許文献2には、画像から人間や動物の顔を検出する際に、まず顔検出処理を実行し、顔検出処理によって検出された対象の所定の領域に対して耳検出処理を実行し、耳検出処理によって検出された場合に、顔検出処理によって検出された対象を顔として特定する技術が記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2009−60379号公報(2009年3月19日公開)
【特許文献2】特開2009−289230号公報(2009年12月10日公開)
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上述のような従来技術では、向上させることが可能な検出精度に限界があるという問題がある。
【0007】
従来技術は、所定の主体の全部または一部を検出する際に、当該主体の全部または一部を検出する検出処理を複数種類実行し、その結果に基づいて対象を検出するものである。ここで、実行する検出処理の種類数を増加することにより検出精度を向上させることができる。
【0008】
しかしながら、所定の主体の全部または一部を検出する精度を向上させるために、検出処理の種類数を増加させると、その種類数に比例して、検出処理時間や検出処理に使用するメモリ等のリソース量も増加する。また、検出処理の種類数を増加させたとしても、所定の主体を対象とした検出処理を行っている限り、検出精度の向上には限界がある。
【0009】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、画像から対象を検出する検出精度を効果的または効率的に向上させる画像処理装置、画像処理方法、制御プログラムおよび記録媒体を実現することにある。
【課題を解決するための手段】
【0010】
本発明に係る画像処理装置は、上記課題を解決するために、画像上における所定の主体の全部または一部である検出対象を検出する画像処理装置であって、上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出手段と、上記検出対象検出手段が検出した推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定手段と、上記異種対象判定手段の判定結果に基づいて、上記検出対象検出手段が検出した推定検出対象が、上記検出対象であるか否かを判定する検出対象判定手段とを備えることを特徴としている。
【0011】
本発明に係る画像処理方法は、上記課題を解決するために、画像上における所定の主体の全部または一部である検出対象を検出する画像処理方法であって、上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出ステップと、上記検出対象検出ステップにおいて検出された推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定ステップと、上記異種対象判定ステップの判定結果に基づいて、上記検出対象検出ステップにおいて検出された推定検出対象が、上記検出対象であるか否かを判定する検出対象判定ステップとを含むことを特徴としている。
【0012】
ここで、一般的に、所定の検出対象を検出する検出対象検出手段は、所望の検出対象だけではなく、所望の検出対象と異なる対象を推定検出対象として検出する可能性がある。この検出対象検出手段の誤検出を低減することにより、検出精度を向上させることができる。
【0013】
これに対して、本発明に係る画像処理装置および画像処理方法は、上記検出対象検出手段が検出した推定検出対象が異種対象と考えられる推定異種対象であるか否かを判定し、その判定結果に基づいて、推定検出対象が検出対象であるか否かを判定する。
【0014】
ここで、推定検出対象が推定異種対象として判定された場合、当該推定検出対象は、検出対象ではなく、異種対象である可能性が高い。また、推定検出対象は推定異種対象ではないと判定された場合、当該推定検出対象は、異種対象ではなく、検出対象である可能性が高い。
【0015】
そのため、例えば、推定検出対象が推定異種対象として判定された場合、当該推定検出対象を検出対象ではないと判定し、推定検出対象は推定異種対象ではない判定された場合、当該推定検出対象は検出対象であると判定することにより、従来技術に比べて、効果的かつ効率的に誤検出を低減させることができる。従って、効果的かつ効率的に検出精度を向上させることができるという効果を奏する。
【0016】
また、検出対象に応じて、誤検出の可能性が高い対象が存在する場合がある。この場合、誤検出の可能性が高い対象を異種対象として設定することにより、より効率的に誤検出を低減させることができ、それゆえ、検出精度を向上させることができる。
【0017】
また、本発明に係る画像処理装置は、上記異種対象判定手段は、複数の種別の推定異種対象について、種別毎に、上記検出対象検出手段が検出した推定検出対象が推定異種対象であるか否かをそれぞれ判定することが好ましい。
【0018】
例えば、1種類の推定異種対象を判定する場合、実際には推定検出対象が検出対象ではない場合であっても、推定検出対象が推定異種対象ではないと判定され、当該推定検出対象を検出対象として判定する場合が考えられる。また、逆に、実際には推定検出対象が検出対象である場合であっても、推定検出対象が推定異種対象であると判定され、当該推定検出対象を検出対象ではないものとして判定する場合が考えられる。
【0019】
そのため、上記異種対象判定手段が複数の種別の推定異種対象について、種別毎に、推定検出対象が推定異種対象であるか否かをそれぞれ判定し、この複数の判定結果に基づいて推定検出対象が検出対象であるか否かを判定することにより、誤検出を除外する精度を向上させることができる。
【0020】
また、本発明に係る画像処理装置は、上記検出対象検出手段は、上記推定検出対象を検出すると共に、当該推定検出対象が上記検出対象である確度を示す検出対象確度を特定し、上記異種対象判定手段は、上記検出対象検出手段が検出した推定検出対象の検出対象確度に基づいて、判定する推定異種対象の種別内容および/または種別数を決定することが好ましい。
【0021】
ここで、検出対象確度が高い推定検出対象は、検出対象である可能性が高く、検出対象確度が低い推定検出対象は、検出対象である可能性が低い。例えば、検出対象確度が高い推定検出対象に対しては、判定する推定異種対象の種別内容を限定したり、種別数を少なくしたりしても、十分に誤検出を防ぐことができる。また、検出対象確度が低い推定検出対象に対しては、判定する推定異種対象の種別内容を幅広くしたり、種別数を多くしたりすることにより、誤検出を効果的に防ぐことができる。
【0022】
そのため、上記異種対象判定手段が検出対象確度に基づいて判定する推定異種対象の種別内容および/または種別数を決定することにより、効率的に誤検出を低減させることができる。
【0023】
また、本発明に係る画像処理装置は、上記検出対象判定手段は、上記異種対象判定手段が上記推定検出対象を上記推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することが好ましい。
【0024】
上記の構成によれば、上記検出対象判定手段は、上記異種対象判定手段が上記推定検出対象を上記推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定する。上述のように、推定検出対象を推定異種対象であると判定された場合、当該推定検出対象は検出対象ではなく、異種対象である場合がある。そのため、推定異種対象であると判定された推定検出対象を検出対象ではないと判定することにより、誤検出を低減することができる。
【0025】
また、本発明に係る画像処理装置は、上記検出対象判定手段は、上記異種対象判定手段が上記推定検出対象を所定の種別の推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することが好ましい。
【0026】
例えば、所定の種別の推定異種対象の判定精度が高い場合や、検出対象を検出する際に、所定の種別の推定異種対象に対応する異種対象が誤検出される可能性が高い場合などがある。すなわち、この場合、所定の種別の推定異種対象であると判定された推定検出対象は、検出対象ではなく、異種対象である可能性が高い。そのため、所定の種別の推定異種対象であると判定された推定検出対象を検出対象ではないと判定することにより、効率的、効果的に誤検出を低減することができる。
【0027】
また、本発明に係る画像処理装置は、上記検出対象判定手段は、上記異種対象判定手段が、所定数の種別数の推定異種対象について、上記推定検出対象を上記推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することが好ましい。
【0028】
推定異種対象であると判定された推定検出対象は、実際に検出対象ではない場合もあれば、検出対象である場合もある。ただ、複数の種別についてそれぞれ推定異種対象であると判定された推定検出対象は、異種対象である可能性が高い。
【0029】
そのため所定数の種別数の推定異種対象について、推定異種対象であると判定された推定検出対象を検出対象ではないと判定することにより、効果的に誤検出を低減することができる。
【0030】
上記異種対象判定手段は、上記推定検出対象を上記推定異種対象であると判定した場合、推定異種対象毎に、当該推定異種対象が対応する異種対象である確度を示す異種対象確度を特定し、上記検出対象判定手段は、各推定異種対象の異種対象確度を合計した合計値が所定の閾値以上の場合、上記推定検出対象を上記検出対象ではないと判定することが好ましい。
【0031】
ここで、異種対象確度またはその合計値が高い推定検出対象は、異種対象である可能性が高く、異種対象確度またはその合計値が低い推定検出対象は、異種対象である可能性が低い。
【0032】
そのため、異種対象確度の合計値が所定値以上の推定検出対象を検出対象ではないと判定することにより、効果的に誤検出を低減することができる。
【0033】
上記検出対象検出手段は、上記推定検出対象を検出すると共に、当該推定検出対象が上記検出対象である確度を示す検出対象確度を特定し、上記異種対象判定手段は、上記推定検出対象を上記推定異種対象であると判定した場合、推定異種対象毎に、当該推定異種対象が対応する異種対象である確度を示す異種対象確度を特定し、上記検出対象判定手段は、各推定異種対象の異種対象確度と上記検出対象確度とに基づいて、上記推定検出対象が上記検出対象であるか否かを判定することが好ましい。
【0034】
ここで、検出対象確度が高く、かつ、異種対象確度またはその合計値が低い推定検出対象は、検出対象である可能性が高い。また、検出対象確度が低く、かつ、異種対象確度またはその合計値が高い推定検出対象は、検出対象である可能性が低い。
【0035】
そのため、複数の推定異種対象の異種対象確度と検出対象確度とに基づいて、推定検出対象が検出対象であるか否かを判定することにより、効果的に誤検出を低減することができる。
【0036】
上記検出対象判定手段は、上記推定異種対象毎に予め定められている所定の重み付け値を、各推定異種対象の異種対象確度にそれぞれ乗算し、乗算後の複数の異種対象確度に基づいて、上記推定検出対象が上記検出対象であるか否かを判定することが好ましい。
【0037】
例えば、判定精度の高い推定異種対象、または、誤検出の可能性が高い推定異種対象に対して、重み付け値を高く設定し、判定精度の低い推定異種対象、または、誤検出の可能性が低い推定異種対象に対して、重み付け値を低く設定することにより、異種対象確度の値が、推定検出対象が検出対象であるか否かをより精度良く反映させることができる。
【0038】
そのため、上記検出対象判定手段が、上記推定異種対象毎に予め定められている所定の重み付け値を、各推定異種対象の異種対象確度にそれぞれ乗算して、乗算後の複数の異種対象確度に基づいて、上記推定検出対象が上記検出対象であるか否かを判定することにより、効果的に誤検出を低減することができる。
【0039】
なお、上記画像処理装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記画像処理装置の各手段として動作させることにより、上記画像処理装置をコンピュータにて実現させる制御プログラム、及びそれを記録したコンピュータ読み取り可能な記録媒体も本発明の範疇に入る。
【発明の効果】
【0040】
以上のように、本発明に係る画像処理装置は、上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出手段と、上記検出対象検出手段が検出した推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定手段と、上記異種対象判定手段の判定結果に基づいて、上記検出対象検出手段が検出した推定検出対象が、上記検出対象であるか否かを判定する検出対象判定手段とを備えている構成である。
【0041】
また、本発明に係る画像処理方法は、上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出ステップと、上記検出対象検出ステップにおいて検出された推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定ステップと、上記異種対象判定ステップの判定結果に基づいて、上記検出対象検出ステップにおいて検出された推定検出対象が、上記検出対象であるか否かを判定する検出対象判定ステップとを含む。
【0042】
従って、効果的かつ効率的に検出精度を向上させることができるという効果を奏する。
【図面の簡単な説明】
【0043】
【図1】本発明の実施形態を示すものであり、画像処理装置の要部構成の一例を示すブロック図である。
【図2】上記画像処理装置の記憶部に格納されている検出種別情報の一例を示す図である。
【図3】上記画像処理装置の記憶部に格納されている重み付け情報の一例を示す図である。
【図4】入力画像からペットを検出する検出処理の一例を示す図である。
【図5】上記検出処理で用いる入力画像を示す図である。
【図6】上記入力画像に対してペット検出を実行した結果を示す図である。
【図7】上記ペット検出により検出された領域を含む画像を示す図である。
【図8】上記ペット検出により検出された領域を含む画像に対して人間の顔検出を実行した結果を示す図である。
【図9】上記検出処理の結果を示す図である。
【図10】入力画像から人間の顔を検出する検出処理の一例を示す図である。
【図11】上記検出処理で用いる入力画像を示す図である。
【図12】上記入力画像に対して人間の顔検出を実行した結果を示す図である。
【図13】上記人間の顔検出により検出された領域を含む画像を示す図である。
【図14】上記人間の顔検出により検出された領域を含む画像に対して自動車のタイヤ検出を実行した結果を示す図である。
【図15】上記検出処理の結果を示す図である。
【図16】入力画像から人間の顔を検出する検出処理の他の一例を示す図である。
【図17】上記入力画像に対して人間の顔検出を実行した結果を示す図である。
【図18】上記人間の顔検出により検出された領域を含む画像を示す図である。
【図19】上記人間の顔検出により検出された領域を含む画像に対して犬の顔検出、猫の顔検出および鳥の顔検出をそれぞれ実行した結果を示す図である。
【図20】上記検出処理の結果を示す図である。
【図21】入力画像から人間の顔を検出する検出処理において、上記人間の顔検出により検出された領域を含む画像に対して犬の顔検出、猫の顔検出および鳥の顔検出をそれぞれ実行した結果を示す図である。
【図22】入力画像から人間の顔を検出する検出処理において、上記人間の顔検出により検出された領域を含む画像に対して犬の顔検出、猫の顔検出および鳥の顔検出をそれぞれ実行した結果を示す図である。
【発明を実施するための形態】
【0044】
本発明の一実施形態について図1から図22に基づいて説明すると以下の通りである。
【0045】
〔画像処理装置の構成〕
まず、画像処理装置について図1に基づいて説明する。画像処理装置は、画像上における所定の主体の全部または一部である検出対象を検出するものである。ここで、検出対象とは、画像上の任意の有形物であり、例えば、人間の全身、顔、目、鼻、口、手、腕もしくは脚など、または、犬、猫、鳥等の動物の全身もしくは顔など、または、自動車、バイク等の車体全体もしくはタイヤなど、または、ビル、家屋等の建造物など、または、木、雲、太陽等の自然物などである。また、例えば、検出対象が「人間の顔」の場合、検出対象の主体は「人間」である。また、検出対象が「犬の顔」の場合、検出対象の主体は「犬」である。また、検出対象が「自動車のタイヤ」の場合、検出対象の主体は「自動車」である。
【0046】
画像処理装置は、画像上における検出対象を検出するものであれば何でも良く、例えば、PC、デジタルカメラ、携帯電話機、PDA(Personal Digital Assistant)、ゲーム機、写真を撮影して印刷する装置、画像を編集する装置などであってよい。
【0047】
図1は、画像処理装置1の要部構成の一例を示すブロック図である。図1に示すように、画像処理装置1は、制御部11、記憶部12、画像入力部13および表示部14を備えている。なお、画像処理装置1は、他の装置と通信するための通信部、ユーザが画像処理装置を操作するための操作部、音声入力部、音声出力部等の部材を備えていてもよいが、発明の特徴点とは関係がないため当該部材を図示していない。
【0048】
画像入力部13は、外部の画像提供装置(不図示)から画像を受信するものである。画像提供装置は、保持している画像または取得した画像を他の装置に提供する装置であれば何でもよい。例えば、画像提供装置は、デジタルカメラ、PC、携帯電話機、PDA、ゲーム機、デジタルテレビ、USB(Universal Serial Bus)メモリ等の記憶装置などである。なお、画像処理装置1は、画像入力部13の代わりに、カメラを搭載していてもよい。
【0049】
表示部14は、制御部11の指示に従って画像を表示するものである。表示部14は、制御部11の指示に従って画像を表示するものであればよく、例えば、LCD(液晶ディスプレイ)、有機ELディスプレイ、プラズマディスプレイなどを適用することが可能である。
【0050】
制御部11は、記憶部12から一時記憶部(不図示)に読み出されたプログラムを実行することにより、各種の演算を行うと共に、画像処理装置1が備える各部を統括的に制御するものである。
【0051】
本実施形態では、制御部11は、機能ブロックとして、画像取得部21、検出対象検出部(検出対象検出手段)22、候補領域特定部23、異種対象検出部(異種対象判定手段)24、検出対象領域判定部(検出対象判定手段)25および検出対象領域出力部26を備える構成である。これらの制御部11の各機能ブロック(21〜26)は、CPU(central processing unit)が、ROM(read only memory)等で実現された記憶装置に記憶されているプログラムをRAM(random access memory)等で実現された一時記憶部に読み出して実行することで実現できる。
【0052】
画像取得部21は、画像入力部13を介して入力された画像を取得するものである。画像取得部21は、取得した画像を検出対象検出部22に出力する。なお、記憶部12に画像が記憶されている場合、画像取得部21は、記憶部12から画像を読み出してもよい。
【0053】
検出対象検出部22は、画像取得部21が取得した画像から検出対象と考えられる対象を検出するものである。すなわち、検出対象検出部22は、画像から検出対象と完全に一致する対象だけではなく、検出対象と類似する対象や、1つまたは複数の特徴点が検出対象と一致または類似する対象等を検出する。以下では、検出対象と考えられる対象を推定検出対象と称する。なお、検出対象検出部22が画像から推定検出対象を検出する手法は任意でよい。
【0054】
検出対象検出部22は、画像から推定検出対象を検出した場合、当該推定検出対象が対応する検出対象である確度を特定してもよい。以下では検出対象検出部22が特定した確度を検出対象確度と称する。検出対象確度は、推定検出対象が検出対象である度合いを示し、例えば、推定検出対象が検出対象と類似する程度を示す類似度でもよい。なお、当該類似度を推定検出対象の特徴点と検出対象の特徴点とを比較して算出してもよい。
【0055】
候補領域特定部23は、検出対象検出部22が画像から推定検出対象を検出すると、検出された推定検出対象毎に、推定検出対象を含む画像上の領域を特定するものである。以下では、候補領域特定部23が特定する推定検出対象を含む領域を候補領域と称する。候補領域特定部23は、検出対象検出部22が画像から複数の推定検出対象を検出した場合、各推定検出対象をそれぞれ含む複数の候補領域を特定する。候補領域特定部23は、特定した候補領域を示す候補領域情報を異種対象検出部24および検出対象領域判定部25に出力する。
【0056】
候補領域は、1つの推定検出対象を含む領域であれば、どのような形状であってもよい。例えば、候補領域特定部23は、推定検出対象の輪郭で閉じられた領域を当該推定検出対象の候補領域としてもよい。また、候補領域特定部23は、推定検出対象の輪郭から所定距離内の領域を当該推定検出対象の候補領域としてもよい。また、候補領域特定部23は、推定検出対象の特徴点を全て含む矩形内の領域を候補領域としてもよい。
【0057】
また、候補領域情報は、候補領域の位置および大きさを示す情報であって、例えば、画像上における推定検出対象を囲む矩形の4角の点の座標を示す情報でもよいし、上記矩形の端点の座標および上記矩形の大きさを示す情報でもよい。また、候補領域情報は、推定検出対象の輪郭を示す情報であってもよい。
【0058】
候補領域特定部23は、例えば、推定検出対象の輪郭(エッジ)の位置に基づいて候補領域情報を生成したり、推定検出対象の1つまたは複数の特徴点の位置に基づいて候補領域情報を生成したりする。
【0059】
候補領域特定部23は、検出対象検出部22が推定検出対象の確度を特定した場合、当該推定検出対象を含む候補領域を示す候補領域情報に、当該推定検出対象の確度を示す検出対象確度情報を対応付ける。
【0060】
異種対象検出部24は、候補領域特定部23から候補領域情報を取得し、取得した候補領域情報の示す候補領域から、検出対象の主体と種別が異なる主体の全部または一部と考えられる対象を検出するものである。以下では、検出対象の主体と種別が異なる主体の全部または一部を異種対象と称し、その異種対象と考えられる対象を推定異種対象と称する。異種対象検出部24は、候補領域特定部23から複数の候補領域情報を取得した場合、各候補領域から、それぞれ推定異種対象を検出するものである。
【0061】
換言すると、異種対象とは、画像上の任意の有形物(対象)であって、主体の種別が検出対象と異なるものである。例えば、検出対象が「犬の顔」の場合、異種対象を「人間の顔」等にしてよい。また、検出対象が「人間の顔」の場合、異種対象を「犬の顔」、「猫の顔」、「鳥の顔」、「自動車のタイヤ」等にしてよい。また、検出対象が「人間の全身」の場合、異種対象を「木」等にしてよい。また、検出対象が「自動車の車体全体」の場合、異種対象を「バイクの車体全体」等にしてよい。
【0062】
また、例えば、人間の身長が所定値以上を「大人」とし、人間の身長が所定値未満を「子供」として人間を分類して定義した場合、対象である「大人の全身」と「子供の全身」とは主体の種別が異なるものとする。この場合、検出対象が「大人の全身」の場合、異種対象を「子供の全身」等にしてよい。
【0063】
ここで、異種対象は、任意の対象であってよいが、検出対象を検出した際に、誤検出される可能性が高い対象を異種対象とすることが望ましい。このように、異種対象を選択することにより、効果的に検出対象の検出精度を向上させることができる。
【0064】
なお、本発明では、検出する対象(検出対象もしくは異種対象)または対象の主体が異なる場合、対象の種別が異なるものとする。すなわち、対象「人間の顔」および「犬の顔」は、部位が「顔」で一致しているが、対象の主体が異なるため、対象の種別は別である。また、対象「人間の顔」および「人間の全身」は、主体は一致しているが、主体の全体か一部かで異なるため、対象の種別は別である。
【0065】
異種対象検出部24は、1つの候補領域から複数の種別の推定異種対象をそれぞれ検出してもよい。ここで、異種対象と考えられる推定異種対象の範囲によって、推定異種対象を分類するものとする。つまり、2つの推定異種対象の範囲が異なる場合、両者は異なる種別の推定異種対象とする。異種対象の種別が異なる場合、当然、推定異種対象の種別は異なるが、異種対象の種別が同じであっても、検出手法が異なることにより、推定異種対象の範囲が異なる場合がある。換言すると、異種対象検出部24が実行する検出の種別(検出種別)は、検出する対象である異種対象の種別および検出する検出手法によって分類される。また、異種対象検出部24の検出種別が同じ場合、推定異種対象の範囲も同じであり、検出種別が異なる場合、推定異種対象の範囲も異なり、検出種別および推定異種対象の種別の区分は一致する。
【0066】
例えば、異種対象が「犬の顔」であり、「犬の顔」を検出する手法がA,B,Cの3種類ある場合、検出手法A,B,Cで検出される推定異種対象の範囲はそれぞれ異なる。そのため、この場合、異種対象検出部24は、候補領域から3種の推定異種対象をそれぞれ検出することとなる。なお、検出対象検出部22と同様に、異種対象検出部24が領域から推定異種対象を検出する手法は任意でよい。なお、以下では、特に断らない限り異種対象検出部24が異種対象に関わらず、所定の手法で検出するものとする。
【0067】
また、異種対象検出部24は、候補領域特定部23から候補領域情報および検出対象確度情報を取得した場合、当該候補領域情報の示す候補領域から検出する対象である推定異種対象の種別内容および/または種別数を、当該候補領域情報に対応付けられている検出対象確度情報の示す検出対象確度に基づいて決定してもよい。すなわち、異種対象検出部24は、検出対象確度に基づいて、検出種別の内容および/または種別数を決定してもよい。
【0068】
具体的には、異種対象検出部24は、記憶部12から検出対象確度と検出種別の内容および/または種別数とが対応付けられている検出種別情報31を読み出し、読み出した検出種別情報31を参照して、取得した検出対象確度情報の示す検出対象確度に対応する検出種別の内容および/または種別数を特定する。異種対象検出部24は、特定した検出種別の内容および/または種別数に基づいて、異種対象の検出を実行する。
【0069】
例えば、異種対象検出部24は、推定検出対象の確度が高い場合、推定検出対象が検出対象である可能性が高いため、検出対象の検出時に誤検出の可能性が高い異種対象に限定したり、異種対象の種別数を少なくしたりして、異種対象の検出を実行する。一方、異種対象検出部24は、推定検出対象の確度が低い場合、推定検出対象が検出対象である可能性が低いため、検出対象の検出時に誤検出の可能性が低い異種対象も検出の対象としたり、異種対象の種別数を多くしたりして、異種対象の検出を実行する。
【0070】
異種対象検出部24は、候補領域から推定異種対象を検出すると、検出した推定異種対象を示す推定異種対象情報を、当該推定異種対象が検出された候補領域を示す候補領域情報に対応付けて、検出対象領域判定部25に出力する。異種対象検出部24は、候補領域から複数の種別の推定異種対象を検出した場合、複数の種別の推定異種対象をそれぞれ示す複数の推定異種対象情報を候補領域情報に対応付ける。
【0071】
換言すると、異種対象検出部24は、候補領域特定部23が特定した候補領域内に含まれる推定検出対象が、検出対象の主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定するものである。また、異種対象検出部24は、推定異種対象であるか否かを示す異種対象判定結果情報を、判定された候補領域を示す候補領域情報に対応付けて、検出対象領域判定部25に出力する。
【0072】
また、異種対象検出部24は、候補領域から推定異種対象を検出した場合、推定異種対象毎に、当該推定異種対象が対応する異種対象である確度を特定してもよい。以下では異種対象検出部24が特定した確度を異種対象確度と称する。異種対象確度は、推定異種対象が異種対象である度合いを示し、例えば、推定異種対象が異種対象と類似する程度を示す類似度でもよい。なお、当該類似度を推定異種対象の特徴点と異種対象の特徴点とを比較して算出してもよい。
【0073】
異種対象検出部24は、異種対象確度を特定した場合、検出した推定異種対象を示す推定異種対象情報と、特定した異種対象確度を示す異種対象確度情報とを、当該推定異種対象が検出された候補領域を示す候補領域情報に対応付けて、検出対象領域判定部25に出力する。
【0074】
検出対象領域判定部25は、異種対象検出部24から推定異種対象情報(異種対象判定結果情報)および候補領域情報を取得し、取得した推定異種対象情報に基づいて、候補領域特定部23が特定した候補領域に含まれる推定検出対象が、検出対象であるか否かを判定するものである。検出対象領域判定部25は、判定した結果、検出対象を含む候補領域(検出対象であると判定した推定検出対象を含む候補領域)を検出対象領域として特定し、当該検出対象領域示す検出対象領域情報を検出対象領域出力部26に出力する。
【0075】
具体的には、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に推定異種対象情報が対応付けられている場合、当該候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではないと特定する。すなわち、検出対象領域判定部25は、異種対象検出部24が推定異種対象を検出した候補領域を検出対象領域ではない除去領域として特定する。異種対象検出部24が複数の種別の推定異種対象を検出する場合、検出対象領域判定部25は、異種対象検出部24が何れかの推定異種対象を検出した候補領域を検出対象領域ではない除去領域として特定する。一方、検出対象領域判定部25は、何れの推定異種対象も検出されなかった候補領域を検出対象領域として特定してもよい。
【0076】
また、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に所定の推定異種対象情報が対応付けられている場合、当該候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではないと特定する。すなわち、検出対象領域判定部25は、異種対象検出部24が所定の種別の推定異種対象を検出した候補領域を検出対象領域ではない除去領域として特定する。一方、検出対象領域判定部25は、所定の種別の推定異種対象が検出されなかった候補領域を検出対象領域として特定してもよい。
【0077】
また、異種対象検出部24が複数の種別の推定異種対象を検出する場合、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に所定の個数の推定異種対象情報が対応付けられている場合、当該候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではないと判定する。すなわち、検出対象領域判定部25は、異種対象検出部24が所定の種別数の推定異種対象を検出した候補領域を検出対象領域ではない除去領域として特定する。一方、検出対象領域判定部25は、所定の種別数の推定異種対象が検出されなかった候補領域を検出対象領域として特定してもよい。
【0078】
また、検出対象領域判定部25は、例えば、異種対象検出部24から取得した候補領域情報に、異種対象検出部24が検出の対象とした推定異種対象の種別数の半分以上の個数の推定異種対象情報が対応付けられている場合、当該候補領域情報の示す候補領域を検出対象領域ではない除去領域として特定する。一方、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に、異種対象検出部24が検出の対象とした推定異種対象の種別数の半分未満の個数の推定異種対象情報が対応付けられている場合、当該候補領域情報の示す候補領域を検出対象領域として特定してもよい。
【0079】
また、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に推定異種対象情報および異種対象確度情報が対応付けられている場合、各推定異種対象の異種対象確度を合計した確度合計値が所定の閾値以上の場合、当該候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではない除去領域として特定してもよい。一方、検出対象領域判定部25は、確度合計値が所定の閾値未満の場合、当該候補領域を検出対象領域として特定してもよい。
【0080】
また、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に推定異種対象情報、異種対象確度情報および検出対象確度情報が対応付けられている場合、各推定異種対象の異種対象確度を合計した確度合計値と検出対象確度とを比較して、当該候補領域情報の示す候補領域に含まれる推定検出対象が検出対象であるか否かを判定してもよい。例えば、検出対象領域判定部25は、異種対象確度を合計した確度合計値が検出対象確度より大きい場合、候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではない除去領域として特定する。また、例えば、検出対象領域判定部25は、異種対象確度を合計した確度合計値から検出対象確度を減算した値が所定値以上の場合、候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではない除去領域として特定する。
【0081】
また、検出対象領域判定部25は、各推定異種対象の重み付け値を示す重み付け情報32を記憶部12から読み出し、読み出した重み付け情報32の示す重み付け値に基づいて、各推定異種対象の異種対象確度にそれぞれ重み付け値を乗算して、その乗算した値を合計して確度合計値を算出してもよい。
【0082】
また、検出対象領域判定部25は、検出対象ではないと判定した推定検出対象以外の推定検出対象を検出対象であると判定し、当該推定検出対象を含む候補領域を検出対象領域として特定する。
【0083】
検出対象領域出力部26は、検出対象領域判定部25から取得した検出対象領域情報の示す領域を、画像取得部21が取得した画像上に重ねて表示部14に表示する。
【0084】
記憶部12は、制御部11が参照するプログラムやデータ等を格納するものであり、例えば、上記検出種別情報31および重み付け情報32等を格納する。記憶部12が格納する検出種別情報31および重み付け情報32の一例を図2、3に基づいて説明する。図2は、検出種別情報31の一例を示す図である。図3は、重み付け情報32の一例を示す図である。
【0085】
検出種別情報31は、検出対象確度と、検出種別の内容および種別数とが対応付けられている情報である。換言すると、検出種別情報31は、検出対象確度と、推定検出対象の種別内容および種別数とが対応付けられている情報である。具体的には、図2に示すように、検出対象確度が「600以下」、「601〜800」、「801〜1000」、「1001以上」の4つの範囲に分類されており、検出対象確度の各範囲に、各検出種別の実行の有無が対応付けられている。
【0086】
図2に示す例では、パターン1として、検出対象確度が1001以上の場合、異種対象検出部24が「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出の何れも実行しない。また、検出対象確度が801〜1000の場合、異種対象検出部24が「犬の顔」検出のみを実行する。検出対象確度が601〜800の場合、異種対象検出部24が「犬の顔」検出および「猫の顔」検出を実行する。検出対象確度が600以下の場合、異種対象検出部24が「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出を実行する。
【0087】
図2に示す例では、検出対象確度の範囲ごとに、異種対象検出部24が実行する検出種別の内容および種別数が対応付けられているが、これに限るものではない。例えば、検出対象確度の範囲ごとに、異種対象検出部24が実行する検出種別の内容のみが対応付けられていてもよいし、または、検出対象確度の範囲ごとに、異種対象検出部24が実行する検出種別の種別数のみが対応付けられていてもよい。
【0088】
検出種別情報31において、検出対象確度の範囲ごとに、異種対象検出部24が実行する検出種別の内容のみが対応付けられている場合、異種対象検出部24は、検出種別情報31により特定される検出種別の内容が示す検出を少なくとも実行すればよく、実行する検出種別の種別数は任意でよい。つまり、検出種別情報31により特定される検出種別が2種類ある場合、その特定される2種類の検出種別の検出を実行すればよく、それ以外の検出種別を実行してもよいし、実行しなくてもよい。
【0089】
また、検出種別情報31において、検出対象確度の範囲ごとに、異種対象検出部24が実行する検出種別の種別数のみが対応付けられている場合、異種対象検出部24は、検出種別情報31により特定される検出種別の種別数だけ検出を実行すればよく、実行する検出種別の内容は任意でよい。
【0090】
また、図2に示す例では、検出対象確度を4つの範囲に分類しているが、これに限るものではなく、検出対象確度の範囲の上限値、下限値および分類数は任意に設定すればよい。
【0091】
次に、図3に示すように、重み付け情報32は、検出種別(推定異種対象)と重み付け値とが対応付けられている情報である。図3に示す例では、「犬の顔」検出の重み付け値が0.8であり、「猫の顔」検出の重み付け値が0.8であり、「鳥の顔」検出の重み付け値が1.4である。
【0092】
なお、検出種別に設定する重み付け値の値は任意であってよい。ただし、検出対象および検出種別の検出精度等に基づいて設定することが望ましい。例えば、或る検出対象に対して、その検出対象の検出時に誤検出の可能性が高い異種対象と誤検出の可能性が低い異種対象とがあるとする。この場合、誤検出の可能性が高い異種対象を検出する検出種別の重み付け値を大きな値に設定し、誤検出の可能性が低い異種対象を検出する検出種別の重み付け値を小さな値に設定することにより、誤検出を効率的に低減させることができる。
【0093】
また、例えば、検出精度が高い検出種別と検出精度が低い検出種別とがあるとする。この場合、この場合、検出精度が高い検出種別の重み付け値を大きな値に設定し、検出精度が低い検出種別の重み付け値を小さな値に設定することにより、誤検出を効率的に低減させることができる。
【0094】
また、上述のように、例えば、異種対象が「犬の顔」であり、「犬の顔」を検出する手法がA,B,Cの3種類ある場合、「犬の顔」検出A、「犬の顔」検出B、「犬の顔」検出Cの3種の検出種別(推定異種対象)が考えられる。この場合、「犬の顔」検出A、「犬の顔」検出Bおよび「犬の顔」検出Cに対して、それぞれ異なる重み付け値を設定してもよい。
【0095】
〔検出処理〕
次に、画像処理装置1が実行する検出対象を検出する検出処理について図4〜22に基づいて説明する。最初に、図4〜9に基づいて、画像からペットの顔を検出する検出処理例(実施例1)を説明する。次に、図10〜図15に基づいて、画像から人間の顔を検出する検出処理例(実施例2)を説明する。次に、図5、16〜20に基づいて、画像から人間の顔を検出する検出処理例(実施例3)を説明する。次に、図21に基づいて、検出対象領域判定部25が検出対象領域であるか否かを判定する判定処理例(実施例4)を説明する。最後に、図22に基づいて、検出対象領域判定部25が検出対象領域であるか否かを判定する他の判定処理例(実施例5)を説明する。
【0096】
〔実施例1〕
まず、実施例1として、図5に示す入力画像41からペットの顔を検出する検出処理例を説明する。図4は、図5に示す入力画像41からペットを検出する検出処理の一例を示す図である。また、図5は、実施例1で用いる入力画像41を示す図である。
【0097】
実施例1では、検出対象を犬や猫等の「ペットの顔」とし、異種対象を「人間の顔」とする。また、検出対象領域判定部25は、候補領域のうち、推定異種対象が検出されたものは検出対象領域ではないと判定するものとする。また、図5に示すように、入力画像41には、人間42および犬43が描かれている。
【0098】
図4に示すように、まず、画像取得部21が入力画像41を取得する(S1)。次に、検出対象検出部22は、「ペットの顔」検出を実行し、入力画像41からペットの顔と考えられる対象を検出する(S2)。
【0099】
次に、候補領域特定部23は、検出対象検出部22が推定検出対象を検出したか否かを判定する(S3)。ここでは、図6に示すように、検出対象検出部22が犬の顔45および人間の顔44を検出したとする。
【0100】
検出対象検出部22が犬の顔45および人間の顔44を検出したため(S3でYES)、候補領域特定部23は、犬の顔45を含む矩形の領域47を候補領域として特定すると共に、人間の顔44を含む矩形の領域46を候補領域として特定する(S4)。
【0101】
異種対象検出部24は、図7に示すように、入力画像41から候補領域46および47をそれぞれ含む領域48および49を切り出し、領域48および49(候補領域46および47)に対して「人間の顔」検出を実行する(S5)。
【0102】
次に、検出対象領域判定部25は、領域48および49(候補領域46および47)から「人間の顔」が検出されたか否かを判定する(S6)。ここでは、図8に示すように、異種対象検出部24は、領域48(候補領域46)から人間の顔44を検出し、領域49(候補領域47)からは何も検出できなかったものとする。
【0103】
異種対象検出部24が領域48(候補領域46)から人間の顔44、すなわち異種対象を検出したため(S6でYES)、検出対象領域判定部25は、候補領域46を検出対象領域ではない除去領域であると判定する(S7)。また、異種対象検出部24が領域49(候補領域47)から何も検出しなかったため(S6でNO)、検出対象領域判定部25は、候補領域47を検出対象領域であると判定する。
【0104】
そして、検出対象領域判定部25は、候補領域46および47から除去領域として判定した候補領域46を除去して、残りの候補領域47を検出対象領域として特定する(S8)。検出対象領域出力部26は、図9に示すように、犬の顔45を含む領域(候補領域47)を検出対象領域50として入力画像41上に描画して検出結果画像51を生成し、生成した検出結果画像51を表示部14に表示する(S9)。
【0105】
なお、S2において、検出対象検出部22が「ペットの顔」検出を実行した結果、何も検出できなかった場合(S3でNO)、検出対象領域出力部26は、入力画像41からは「ペットの顔」が検出できなかったことを示す画像を表示部14に表示する(S9)。例えば、検出対象領域出力部26は、入力画像41をそのまま表示部14に表示する。
【0106】
〔実施例2〕
次に、実施例2として、図11に示す入力画像61から人間の顔を検出する検出処理例を説明する。図10は、図11に示す入力画像61から人間の顔を検出する検出処理の一例を示す図である。また、図11は、実施例2で用いる入力画像61を示す図である。
【0107】
実施例2では、検出対象を「人間の顔」とし、異種対象を「自動車のタイヤ」とする。また、検出対象領域判定部25は、候補領域のうち、推定異種対象が検出されたものは検出対象領域ではないと判定するものとする。また、図11に示すように、入力画像61には、人間62、63および自動車64が描かれている。
【0108】
図10に示すように、まず、画像取得部21が入力画像61を取得する(S11)。次に、検出対象検出部22は、「人間の顔」検出を実行し、入力画像61から人間の顔と考えられる対象を検出する(S12)。
【0109】
次に、候補領域特定部23は、検出対象検出部22が推定検出対象を検出したか否かを判定する(S13)。ここでは、図12に示すように、検出対象検出部22が人間の顔65、66および自動車のタイヤ67を検出したとする。
【0110】
検出対象検出部22が人間の顔65、66および自動車のタイヤ67を検出したため(S13でYES)、候補領域特定部23は、人間の顔65を含む矩形の領域68を候補領域として特定し、人間の顔66を含む矩形の領域69を候補領域として特定し、車のタイヤ67を含む矩形の領域70を候補領域として特定する(S14)。
【0111】
異種対象検出部24は、図13に示すように、入力画像61から候補領域68、69および70をそれぞれ含む領域71、72および73を切り出し、領域71、72および73(候補領域68、69および70)に対して「自動車のタイヤ」検出を実行する(S15)。
【0112】
次に、検出対象領域判定部25は、領域71、72および73(候補領域68、69および70)から「自動車のタイヤ」が検出されたか否かを判定する(S16)。ここでは、図14に示すように、異種対象検出部24は、領域73(候補領域70)から自動車のタイヤ67を検出し、領域71および72(候補領域68および69)からは何も検出できなかったものとする。
【0113】
異種対象検出部24が領域73(候補領域70)から自動車のタイヤ67、すなわち異種対象を検出したため(S16でYES)、検出対象領域判定部25は、候補領域70を検出対象領域ではない除去領域であると判定する(S17)。また、異種対象検出部24が領域71および72(候補領域68および69)から何も検出しなかったため(S16でNO)、検出対象領域判定部25は、候補領域68および69を検出対象領域であると判定する。
【0114】
そして、検出対象領域判定部25は、候補領域68〜70から除去領域として判定した候補領域70を除去して、残りの候補領域68および69を検出対象領域として特定する(S18)。検出対象領域出力部26は、図15に示すように、人間の顔65および66をそれぞれ含む領域(候補領域68および69)を、それぞれ検出対象領域74、75として入力画像61上に描画して検出結果画像76を生成し、生成した検出結果画像76を表示部14に表示する(S19)。
【0115】
なお、S12において、検出対象検出部22が「人間の顔」検出を実行した結果、何も検出できなかった場合(S13でNO)、検出対象領域出力部26は、入力画像61からは「人間の顔」が検出できなかったことを示す画像を表示部14に表示する(S19)。例えば、検出対象領域出力部26は、入力画像61をそのまま表示部14に表示する。
【0116】
〔実施例3〕
次に、実施例3として、図5に示す入力画像41から人間の顔を検出する検出処理例を説明する。図16は、図5に示す入力画像41から人間の顔を検出する検出処理の一例を示す図である。
【0117】
実施例3では、検出対象を「人間の顔」とし、異種対象を「犬の顔」、「猫の顔」および「鳥の顔」とする。すなわち、実施例3では、推定異種対象の種別数を3とする。また、検出対象領域判定部25は、候補領域のうち、推定異種対象が2種類以上検出されたものは検出対象領域ではないと判定するものとする。
【0118】
図16に示すように、まず、画像取得部21が入力画像41を取得する(S21)。次に、検出対象検出部22は、「人間の顔」検出(検出対象の検出)を実行し、入力画像41から人間の顔と考えられる対象を検出する(S22)。
【0119】
次に、候補領域特定部23は、検出対象検出部22が推定検出対象を検出したか否かを判定する(S23)。ここでは、図17に示すように、検出対象検出部22が人間の顔44および犬の顔45を検出したとする。
【0120】
検出対象検出部22が人間の顔44および犬の顔45を検出したため(S23でYES)、候補領域特定部23は、人間の顔44を含む矩形の領域81を候補領域として特定し、犬の顔45を含む矩形の領域82を候補領域として特定する(S24)。
【0121】
異種対象検出部24は、図18に示すように、入力画像41から候補領域81および82をそれぞれ含む領域83および84を切り出し、領域83および84(候補領域81および82)に対して「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出(複数の異種対象の検出)をそれぞれ実行する(S25)。
【0122】
次に、検出対象領域判定部25は、領域毎に、領域83および84(候補領域81および82)から「犬の顔」、「猫の顔」および「鳥の顔」がそれぞれ検出されたか否かを判定する(S26)。
【0123】
ここでは、図19に示すように、異種対象検出部24は、領域83(候補領域81)に対して「犬の顔」検出を実行した結果、人間の顔44を検出し、「猫の顔」検出および「鳥の顔」検出を実行したが、領域83(候補領域81)から何も検出できなかったとする。また、異種対象検出部24は、領域84(候補領域82)に対して「犬の顔」検出を実行した結果、犬の顔45を検出し、「猫の顔」検出を実行した結果、犬の顔45を検出し、「鳥の顔」検出を実行したが、領域84(候補領域82)から何も検出できなかったとする。
【0124】
なお、領域84(候補領域82)から「犬の顔」検出および「猫の顔」検出により、それぞれ同じ犬の顔45を検出している。しかしながら、「犬の顔」検出および「猫の顔」検出は異なる異種対象を検出するため、領域84(候補領域82)からは2種類の推定異種対象が検出されたものとみなす。つまり、図19に示す「○」の個数が各領域から検出された推定異種対象の種類数を示す。
【0125】
S27では、検出対象領域判定部25は、異種対象の検出結果に基づいて除去領域を特定する。本実施例3の場合、上述のように、推定異種対象が2種類以上検出されたものは検出対象領域ではないと判定する、つまり、除去領域であると判定する。
【0126】
すなわち、異種対象検出部24が領域83(候補領域81)から1種類の推定異種対象を検出したため(S26でYES)、検出対象領域判定部25は、候補領域81を検出対象領域であると判定する(S27)。また、異種対象検出部24が領域84(候補領域82)から2種類の推定異種対象を検出したため(S26でYES)、検出対象領域判定部25は、候補領域82を検出対象領域ではない除去領域であると判定する。なお、領域から何れの推定異種対象も検出されなかった場合(S26でNO)、検出対象領域判定部25は、当該領域を検出対象領域であると判定する(S27)。
【0127】
そして、検出対象領域判定部25は、候補領域81を検出対象領域として特定する(S28)。検出対象領域出力部26は、図20に示すように、人間の顔44を含む領域(候補領域81)を、検出対象領域85として入力画像41上に描画して検出結果画像86を生成し、生成した検出結果画像86を表示部14に表示する(S29)。
【0128】
なお、S22において、検出対象検出部22が「人間の顔」検出(検出対象の検出)を実行した結果、何も検出できなかった場合(S23でNO)、検出対象領域出力部26は、入力画像41からは「人間の顔」が検出できなかったことを示す画像を表示部14に表示する(S29)。例えば、検出対象領域出力部26は、入力画像41をそのまま表示部14に表示する。
【0129】
〔実施例4〕
次に、実施例4として、或る入力画像から人間の顔を検出する検出処理において、図21に示す異種対象の検出結果に基づいて、各候補領域が検出対象領域であるか否かを判定する判定処理例を説明する。
【0130】
実施例4では、実施例3と同様に、検出対象を「人間の顔」とし、異種対象を「犬の顔」、「猫の顔」および「鳥の顔」とする。
【0131】
また、検出対象検出部22が、入力画像から人間の顔と考えられる対象を6個検出し、候補領域特定部23が、6個の推定検出対象をそれぞれ含む候補領域A〜Fを特定したとする。また、異種対象検出部24が候補領域A〜Fに対してそれぞれ「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出を実行し、図21に示す結果が得られたものとする。
【0132】
具体的には、候補領域Aから「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出による3種類の推定異種対象が検出され、候補領域Bから「犬の顔」検出による1種類の推定異種対象が検出され、候補領域Cから「犬の顔」検出および「猫の顔」検出による2種類の推定異種対象が検出され、候補領域Dから「猫の顔」検出および「鳥の顔」検出による2種類の推定異種対象が検出され、候補領域Eからは何れの推定異種対象も検出されず、候補領域Fから「猫の顔」検出による1種類の推定異種対象が検出されたとする。
【0133】
実施例4では、検出対象領域判定部25が、何れかの推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合と、所定の推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合と、所定の推定異種対象が検出された候補領域、および、所定の種別数の推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合との3つの場合について説明する。
【0134】
まず、検出対象領域判定部25が、何れかの推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合について説明する。この場合、図21の結果を参照すると、何れかの推定異種対象が検出された候補領域は候補領域A〜D、Fであるため、検出対象領域判定部25は、候補領域A〜D、Fを検出対象領域ではないと判定する。一方、候補領域Eは何れの推定異種対象も検出されていないため、検出対象領域判定部25は、候補領域Eを検出対象領域であると判定する。
【0135】
次に、検出対象領域判定部25が、所定の推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合について説明する。ここでは、例えば、検出対象領域判定部25が「犬の顔」検出により推定異種対象が検出された候補領域を検出対象領域ではないと判定するものとする。
【0136】
この場合、図21の結果を参照すると、「犬の顔」検出により推定異種対象が検出された候補領域は、候補領域A〜Cであるため、検出対象領域判定部25は、候補領域A〜Cを検出対象領域ではないと判定する。一方、候補領域D〜Fは「犬の顔」検出により推定異種対象が検出されていないため、検出対象領域判定部25は、候補領域D〜Fを検出対象領域であると判定する。
【0137】
最後に、検出対象領域判定部25が、所定の推定異種対象が検出された候補領域、および、所定の種別数の推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合について説明する。ここでは、例えば、検出対象領域判定部25が「犬の顔」検出により推定異種対象が検出された候補領域を検出対象領域ではないと判定すると共に、2種類以上の推定異種対象が検出された候補領域を検出対象領域ではないと判定する。すなわち、候補領域から「犬の顔」検出により推定異種対象が検出されたか、または、候補領域から「犬の顔」検出では検出されなかったが、「猫の顔」検出および「鳥の顔」検出により2種類の推定異種対象が検出された場合に、検出対象領域判定部25が候補領域を検出対象領域ではないと判定する。
【0138】
この場合、図21の結果を参照すると、「犬の顔」検出により推定異種対象が検出された候補領域は、候補領域A〜Cであるため、検出対象領域判定部25は、候補領域A〜Cを検出対象領域ではないと判定する。また、「犬の顔」検出により検出されなかった候補領域D〜Fのうち、「猫の顔」検出および「鳥の顔」検出により2種類の推定異種対象が検出された候補領域は、候補領域Dであるため、検出対象領域判定部25は、候補領域Dを検出対象領域ではないと判定する。一方、検出対象領域判定部25は、上記に該当しない、残りの候補領域E、Fを検出対象領域であると判定する。
【0139】
〔実施例5〕
最後に、実施例5として、或る入力画像から人間の顔を検出する検出処理において、異種対象確度、または、異種対象確度および検出対象確度に基づいて、各候補領域が検出対象領域であるか否かを判定する判定処理例を説明する。
【0140】
実施例5では、実施例3と同様に、検出対象を「人間の顔」とし、異種対象を「犬の顔」、「猫の顔」および「鳥の顔」とする。
【0141】
また、検出対象検出部22が、入力画像から人間の顔と考えられる対象を3個検出し、候補領域特定部23が、3個の推定検出対象をそれぞれ含む候補領域G〜Iを特定したとする。また、異種対象検出部24が候補領域G〜Iに対してそれぞれ「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出を実行し、さらに、異種対象検出部24は検出した推定異種対象の異種対象確度を特定し、図22に示す結果が得られたものとする。
【0142】
具体的には、候補領域Gから「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出による3種類の推定異種対象が検出され、それぞれ異種対象確度が300、300、400であったとする。また、候補領域Hから「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出による3種類の推定異種対象が検出され、それぞれ異種対象確度が200、200、200であったとする。また、候補領域Iから「犬の顔」検出および「猫の顔」検出による2種類の推定異種対象が検出され、それぞれ異種対象確度が400、400であったとする。
【0143】
実施例5では、検出対象領域判定部25が、異種対象確度に基づいて、候補領域が検出対象領域であるか否かを判定する場合と、異種対象確度および検出対象確度に基づいて、候補領域が検出対象領域であるか否かを判定する場合との2つの場合について説明する。
【0144】
まず、検出対象領域判定部25が、異種対象確度に基づいて、候補領域が検出対象領域であるか否かを判定する場合について説明する。ここでは、例えば、検出された推定異種対象の異種対象確度の合計値が700より大きい場合、候補領域を検出対象領域ではないと判定するものとする。
【0145】
この場合、図22の結果を参照すると、候補領域Gは、推定異種対象の異種対象確度の合計値が300+300+400=1000(>700)であるため、検出対象領域判定部25は、候補領域Gを検出対象領域ではないと判定する。また、候補領域Hは、推定異種対象の異種対象確度の合計値が200+200+200=600(<700)であるため、検出対象領域判定部25は、候補領域Hを検出対象領域であると判定する。また、候補領域Iは、推定異種対象の異種対象確度の合計値が400+400=800(>700)であるため、検出対象領域判定部25は、候補領域Iを検出対象領域ではないと判定する。
【0146】
次に、検出対象領域判定部25が、異種対象確度および検出対象確度に基づいて、候補領域が検出対象領域であるか否かを判定する場合について説明する。ここでは、候補領域G〜Iにそれぞれ含まれる推定検出対象の検出対象確度は、全て900であったとし、検出された推定異種対象の異種対象確度の合計値が検出対象確度(900)より大きい場合、候補領域を検出対象領域ではないと判定するものとする。
【0147】
この場合、図22の結果を参照すると、候補領域Gは、推定異種対象の異種対象確度の合計値が300+300+400=1000(>900)であるため、検出対象領域判定部25は、候補領域Gを検出対象領域ではないと判定する。また、候補領域Hは、推定異種対象の異種対象確度の合計値が200+200+200=600(<900)であるため、検出対象領域判定部25は、候補領域Hを検出対象領域であると判定する。また、候補領域Iは、推定異種対象の異種対象確度の合計値が400+400=800(<900)であるため、検出対象領域判定部25は、候補領域Iを検出対象領域であると判定する。
【0148】
なお、ここでは、検出対象領域判定部25は、推定異種対象の異種対象確度の合計値と、検出対象確度との大小関係を比較して、候補領域が検出対象領域であるか否かを判定しているが、これに限るものではなく、複数の推定異種対象の異種対象確度と、検出対象確度とをどのように用いるかは任意でよい。すなわち、検出対象領域判定部25は、複数の推定異種対象の異種対象確度と、検出対象確度とに基づいて、候補領域が検出対象領域であるか否かを判定するものであればよい。
【0149】
さらに、上記2つの場合において、検出対象領域判定部25は、図3に示す重み付け情報32を用いて、異種対象確度の合計値を算出してもよい。
【0150】
具体的には、検出対象領域判定部25が、異種対象確度のみに基づいて判定する場合、候補領域Gに対する異種対象確度の合計値は、300×0.8+300×0.8+400×1.4=1040となる。合計値が閾値の700より大きいため、検出対象領域判定部25は、候補領域Gを検出対象領域ではないと判定する。また、候補領域Hに対する異種対象確度の合計値は、200×0.8+200×0.8+200×1.4=600となる。合計値が閾値の700より小さいため、検出対象領域判定部25は、候補領域Gを検出対象領域であると判定する。また、候補領域Iに対する異種対象確度の合計値は、400×0.8+400×0.8=640となる。合計値が閾値の700より小さいため、検出対象領域判定部25は、候補領域Gを検出対象領域であると判定する。
【0151】
また、検出対象領域判定部25が、異種対象確度および検出対象確度に基づいて判定する場合、同様に、候補領域Gに対する異種対象確度の合計値は、300×0.8+300×0.8+400×1.4=1040となる。合計値が検出対象確度の900より大きいため、検出対象領域判定部25は、候補領域Gを検出対象領域ではないと判定する。また、候補領域Hに対する異種対象確度の合計値は、200×0.8+200×0.8+200×1.4=600となる。合計値が検出対象確度の900より小さいため、検出対象領域判定部25は、候補領域Gを検出対象領域であると判定する。また、候補領域Iに対する異種対象確度の合計値は、400×0.8+400×0.8=640となる。合計値が検出対象確度の900より小さいため、検出対象領域判定部25は、候補領域Gを検出対象領域であると判定する。
【0152】
〔変形例1〕
また、変形例1として、異種対象検出部24が検出対象確度に基づいて、検出種別の内容および/または種別数を決定する例を説明する。
【0153】
この変形例1では、検出対象を「人間の顔」とし、検出対象検出部22が、入力画像から人間の顔と考えられる対象を4個検出し、候補領域特定部23が、4個の推定検出対象をそれぞれ含む候補領域J〜Mを特定したとする。また、候補領域J〜Mにそれぞれ含まれる推定検出対象の検出対象確度をそれぞれ1200、900、700、500とする。また、異種対象検出部24は、記憶部12から図2に示す検出種別情報31を読み出し、検出種別情報31に基づいて、検出種別の内容および種別数を決定するものとする。
【0154】
この場合、異種対象検出部24は、候補領域Jに含まれる推定検出対象の検出対象確度が1200であるため、検出種別情報31に示されるパターン1を選択する。具体的には、異種対象検出部24は、候補領域Jに対しては、何れの異種対象の検出も実行しない。また、異種対象検出部24は、候補領域Kに含まれる推定検出対象の検出対象確度が900であるため、検出種別情報31に示されるパターン2を選択する。具体的には、異種対象検出部24は、候補領域Kに対しては、「犬の顔」検出のみを実行する。また、異種対象検出部24は、候補領域Lに含まれる推定検出対象の検出対象確度が700であるため、検出種別情報31に示されるパターン3を選択する。具体的には、異種対象検出部24は、候補領域Lに対しては、「犬の顔」検出および「猫の顔」検出を実行する。また、異種対象検出部24は、候補領域Mに含まれる推定検出対象の検出対象確度が500であるため、検出種別情報31に示されるパターン4を選択する。具体的には、異種対象検出部24は、候補領域Mに対しては、「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出を実行する。
【0155】
〔変形例2〕
本実施形態では、異種対象検出部24が検出する対象である異種対象を、検出対象の主体と種別が異なる主体の全部または一部と考えられる対象としているがこれに限るものではない。例えば、異種対象を検出対象と種別が異なる対象としてもよい。
【0156】
この場合、例えば、検出対象「人間の目」の場合、異種対象を「人間の口」等にしてもよい。また、検出対象が「人間の手」の場合、異種対象を「人間の顔」や「人間の足」等にしてもよい。
【0157】
〔補足〕
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【0158】
最後に、画像処理装置1の各ブロック、特に制御部11は、ハードウェアロジックによって構成してもよいし、次のようにCPUを用いてソフトウェアによって実現してもよい。
【0159】
すなわち、画像処理装置1は、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである画像処理装置1の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記画像処理装置1に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【0160】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
【0161】
また、画像処理装置1を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【産業上の利用可能性】
【0162】
本発明は、画像上の所定の有形物を検出する画像処理装置に利用することができる。
【符号の説明】
【0163】
1 画像処理装置
22 検出対象検出部(検出対象検出手段)
24 異種対象検出部(異種対象判定手段)
25 検出対象領域判定部(検出対象判定手段)
【技術分野】
【0001】
本発明は、画像から人間の顔等の対象を検出する画像処理装置、画像処理方法、制御プログラムおよび記録媒体に関するものである。
【背景技術】
【0002】
近年、デジタルカメラ等には、撮影時に、人間の顔等を検出し、検出した対象に焦点を合わしたり、検出した対象のホワイトバランス等を調整したりする技術が搭載されている。この技術においては、画像から人間の顔等の対象を正確に検出できることが望ましい。そのため、対象を検出する精度を向上させる技術について様々なものが開発されている。
【0003】
例えば、特許文献1には、画像から人間の顔を検出する際に、画像に対して2次元の顔検出処理および3次元の顔検出処理を実行し、何れかの検出処理で検出された対象を人間の顔として特定する技術が記載されている。
【0004】
また、特許文献2には、画像から人間や動物の顔を検出する際に、まず顔検出処理を実行し、顔検出処理によって検出された対象の所定の領域に対して耳検出処理を実行し、耳検出処理によって検出された場合に、顔検出処理によって検出された対象を顔として特定する技術が記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2009−60379号公報(2009年3月19日公開)
【特許文献2】特開2009−289230号公報(2009年12月10日公開)
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上述のような従来技術では、向上させることが可能な検出精度に限界があるという問題がある。
【0007】
従来技術は、所定の主体の全部または一部を検出する際に、当該主体の全部または一部を検出する検出処理を複数種類実行し、その結果に基づいて対象を検出するものである。ここで、実行する検出処理の種類数を増加することにより検出精度を向上させることができる。
【0008】
しかしながら、所定の主体の全部または一部を検出する精度を向上させるために、検出処理の種類数を増加させると、その種類数に比例して、検出処理時間や検出処理に使用するメモリ等のリソース量も増加する。また、検出処理の種類数を増加させたとしても、所定の主体を対象とした検出処理を行っている限り、検出精度の向上には限界がある。
【0009】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、画像から対象を検出する検出精度を効果的または効率的に向上させる画像処理装置、画像処理方法、制御プログラムおよび記録媒体を実現することにある。
【課題を解決するための手段】
【0010】
本発明に係る画像処理装置は、上記課題を解決するために、画像上における所定の主体の全部または一部である検出対象を検出する画像処理装置であって、上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出手段と、上記検出対象検出手段が検出した推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定手段と、上記異種対象判定手段の判定結果に基づいて、上記検出対象検出手段が検出した推定検出対象が、上記検出対象であるか否かを判定する検出対象判定手段とを備えることを特徴としている。
【0011】
本発明に係る画像処理方法は、上記課題を解決するために、画像上における所定の主体の全部または一部である検出対象を検出する画像処理方法であって、上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出ステップと、上記検出対象検出ステップにおいて検出された推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定ステップと、上記異種対象判定ステップの判定結果に基づいて、上記検出対象検出ステップにおいて検出された推定検出対象が、上記検出対象であるか否かを判定する検出対象判定ステップとを含むことを特徴としている。
【0012】
ここで、一般的に、所定の検出対象を検出する検出対象検出手段は、所望の検出対象だけではなく、所望の検出対象と異なる対象を推定検出対象として検出する可能性がある。この検出対象検出手段の誤検出を低減することにより、検出精度を向上させることができる。
【0013】
これに対して、本発明に係る画像処理装置および画像処理方法は、上記検出対象検出手段が検出した推定検出対象が異種対象と考えられる推定異種対象であるか否かを判定し、その判定結果に基づいて、推定検出対象が検出対象であるか否かを判定する。
【0014】
ここで、推定検出対象が推定異種対象として判定された場合、当該推定検出対象は、検出対象ではなく、異種対象である可能性が高い。また、推定検出対象は推定異種対象ではないと判定された場合、当該推定検出対象は、異種対象ではなく、検出対象である可能性が高い。
【0015】
そのため、例えば、推定検出対象が推定異種対象として判定された場合、当該推定検出対象を検出対象ではないと判定し、推定検出対象は推定異種対象ではない判定された場合、当該推定検出対象は検出対象であると判定することにより、従来技術に比べて、効果的かつ効率的に誤検出を低減させることができる。従って、効果的かつ効率的に検出精度を向上させることができるという効果を奏する。
【0016】
また、検出対象に応じて、誤検出の可能性が高い対象が存在する場合がある。この場合、誤検出の可能性が高い対象を異種対象として設定することにより、より効率的に誤検出を低減させることができ、それゆえ、検出精度を向上させることができる。
【0017】
また、本発明に係る画像処理装置は、上記異種対象判定手段は、複数の種別の推定異種対象について、種別毎に、上記検出対象検出手段が検出した推定検出対象が推定異種対象であるか否かをそれぞれ判定することが好ましい。
【0018】
例えば、1種類の推定異種対象を判定する場合、実際には推定検出対象が検出対象ではない場合であっても、推定検出対象が推定異種対象ではないと判定され、当該推定検出対象を検出対象として判定する場合が考えられる。また、逆に、実際には推定検出対象が検出対象である場合であっても、推定検出対象が推定異種対象であると判定され、当該推定検出対象を検出対象ではないものとして判定する場合が考えられる。
【0019】
そのため、上記異種対象判定手段が複数の種別の推定異種対象について、種別毎に、推定検出対象が推定異種対象であるか否かをそれぞれ判定し、この複数の判定結果に基づいて推定検出対象が検出対象であるか否かを判定することにより、誤検出を除外する精度を向上させることができる。
【0020】
また、本発明に係る画像処理装置は、上記検出対象検出手段は、上記推定検出対象を検出すると共に、当該推定検出対象が上記検出対象である確度を示す検出対象確度を特定し、上記異種対象判定手段は、上記検出対象検出手段が検出した推定検出対象の検出対象確度に基づいて、判定する推定異種対象の種別内容および/または種別数を決定することが好ましい。
【0021】
ここで、検出対象確度が高い推定検出対象は、検出対象である可能性が高く、検出対象確度が低い推定検出対象は、検出対象である可能性が低い。例えば、検出対象確度が高い推定検出対象に対しては、判定する推定異種対象の種別内容を限定したり、種別数を少なくしたりしても、十分に誤検出を防ぐことができる。また、検出対象確度が低い推定検出対象に対しては、判定する推定異種対象の種別内容を幅広くしたり、種別数を多くしたりすることにより、誤検出を効果的に防ぐことができる。
【0022】
そのため、上記異種対象判定手段が検出対象確度に基づいて判定する推定異種対象の種別内容および/または種別数を決定することにより、効率的に誤検出を低減させることができる。
【0023】
また、本発明に係る画像処理装置は、上記検出対象判定手段は、上記異種対象判定手段が上記推定検出対象を上記推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することが好ましい。
【0024】
上記の構成によれば、上記検出対象判定手段は、上記異種対象判定手段が上記推定検出対象を上記推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定する。上述のように、推定検出対象を推定異種対象であると判定された場合、当該推定検出対象は検出対象ではなく、異種対象である場合がある。そのため、推定異種対象であると判定された推定検出対象を検出対象ではないと判定することにより、誤検出を低減することができる。
【0025】
また、本発明に係る画像処理装置は、上記検出対象判定手段は、上記異種対象判定手段が上記推定検出対象を所定の種別の推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することが好ましい。
【0026】
例えば、所定の種別の推定異種対象の判定精度が高い場合や、検出対象を検出する際に、所定の種別の推定異種対象に対応する異種対象が誤検出される可能性が高い場合などがある。すなわち、この場合、所定の種別の推定異種対象であると判定された推定検出対象は、検出対象ではなく、異種対象である可能性が高い。そのため、所定の種別の推定異種対象であると判定された推定検出対象を検出対象ではないと判定することにより、効率的、効果的に誤検出を低減することができる。
【0027】
また、本発明に係る画像処理装置は、上記検出対象判定手段は、上記異種対象判定手段が、所定数の種別数の推定異種対象について、上記推定検出対象を上記推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することが好ましい。
【0028】
推定異種対象であると判定された推定検出対象は、実際に検出対象ではない場合もあれば、検出対象である場合もある。ただ、複数の種別についてそれぞれ推定異種対象であると判定された推定検出対象は、異種対象である可能性が高い。
【0029】
そのため所定数の種別数の推定異種対象について、推定異種対象であると判定された推定検出対象を検出対象ではないと判定することにより、効果的に誤検出を低減することができる。
【0030】
上記異種対象判定手段は、上記推定検出対象を上記推定異種対象であると判定した場合、推定異種対象毎に、当該推定異種対象が対応する異種対象である確度を示す異種対象確度を特定し、上記検出対象判定手段は、各推定異種対象の異種対象確度を合計した合計値が所定の閾値以上の場合、上記推定検出対象を上記検出対象ではないと判定することが好ましい。
【0031】
ここで、異種対象確度またはその合計値が高い推定検出対象は、異種対象である可能性が高く、異種対象確度またはその合計値が低い推定検出対象は、異種対象である可能性が低い。
【0032】
そのため、異種対象確度の合計値が所定値以上の推定検出対象を検出対象ではないと判定することにより、効果的に誤検出を低減することができる。
【0033】
上記検出対象検出手段は、上記推定検出対象を検出すると共に、当該推定検出対象が上記検出対象である確度を示す検出対象確度を特定し、上記異種対象判定手段は、上記推定検出対象を上記推定異種対象であると判定した場合、推定異種対象毎に、当該推定異種対象が対応する異種対象である確度を示す異種対象確度を特定し、上記検出対象判定手段は、各推定異種対象の異種対象確度と上記検出対象確度とに基づいて、上記推定検出対象が上記検出対象であるか否かを判定することが好ましい。
【0034】
ここで、検出対象確度が高く、かつ、異種対象確度またはその合計値が低い推定検出対象は、検出対象である可能性が高い。また、検出対象確度が低く、かつ、異種対象確度またはその合計値が高い推定検出対象は、検出対象である可能性が低い。
【0035】
そのため、複数の推定異種対象の異種対象確度と検出対象確度とに基づいて、推定検出対象が検出対象であるか否かを判定することにより、効果的に誤検出を低減することができる。
【0036】
上記検出対象判定手段は、上記推定異種対象毎に予め定められている所定の重み付け値を、各推定異種対象の異種対象確度にそれぞれ乗算し、乗算後の複数の異種対象確度に基づいて、上記推定検出対象が上記検出対象であるか否かを判定することが好ましい。
【0037】
例えば、判定精度の高い推定異種対象、または、誤検出の可能性が高い推定異種対象に対して、重み付け値を高く設定し、判定精度の低い推定異種対象、または、誤検出の可能性が低い推定異種対象に対して、重み付け値を低く設定することにより、異種対象確度の値が、推定検出対象が検出対象であるか否かをより精度良く反映させることができる。
【0038】
そのため、上記検出対象判定手段が、上記推定異種対象毎に予め定められている所定の重み付け値を、各推定異種対象の異種対象確度にそれぞれ乗算して、乗算後の複数の異種対象確度に基づいて、上記推定検出対象が上記検出対象であるか否かを判定することにより、効果的に誤検出を低減することができる。
【0039】
なお、上記画像処理装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記画像処理装置の各手段として動作させることにより、上記画像処理装置をコンピュータにて実現させる制御プログラム、及びそれを記録したコンピュータ読み取り可能な記録媒体も本発明の範疇に入る。
【発明の効果】
【0040】
以上のように、本発明に係る画像処理装置は、上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出手段と、上記検出対象検出手段が検出した推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定手段と、上記異種対象判定手段の判定結果に基づいて、上記検出対象検出手段が検出した推定検出対象が、上記検出対象であるか否かを判定する検出対象判定手段とを備えている構成である。
【0041】
また、本発明に係る画像処理方法は、上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出ステップと、上記検出対象検出ステップにおいて検出された推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定ステップと、上記異種対象判定ステップの判定結果に基づいて、上記検出対象検出ステップにおいて検出された推定検出対象が、上記検出対象であるか否かを判定する検出対象判定ステップとを含む。
【0042】
従って、効果的かつ効率的に検出精度を向上させることができるという効果を奏する。
【図面の簡単な説明】
【0043】
【図1】本発明の実施形態を示すものであり、画像処理装置の要部構成の一例を示すブロック図である。
【図2】上記画像処理装置の記憶部に格納されている検出種別情報の一例を示す図である。
【図3】上記画像処理装置の記憶部に格納されている重み付け情報の一例を示す図である。
【図4】入力画像からペットを検出する検出処理の一例を示す図である。
【図5】上記検出処理で用いる入力画像を示す図である。
【図6】上記入力画像に対してペット検出を実行した結果を示す図である。
【図7】上記ペット検出により検出された領域を含む画像を示す図である。
【図8】上記ペット検出により検出された領域を含む画像に対して人間の顔検出を実行した結果を示す図である。
【図9】上記検出処理の結果を示す図である。
【図10】入力画像から人間の顔を検出する検出処理の一例を示す図である。
【図11】上記検出処理で用いる入力画像を示す図である。
【図12】上記入力画像に対して人間の顔検出を実行した結果を示す図である。
【図13】上記人間の顔検出により検出された領域を含む画像を示す図である。
【図14】上記人間の顔検出により検出された領域を含む画像に対して自動車のタイヤ検出を実行した結果を示す図である。
【図15】上記検出処理の結果を示す図である。
【図16】入力画像から人間の顔を検出する検出処理の他の一例を示す図である。
【図17】上記入力画像に対して人間の顔検出を実行した結果を示す図である。
【図18】上記人間の顔検出により検出された領域を含む画像を示す図である。
【図19】上記人間の顔検出により検出された領域を含む画像に対して犬の顔検出、猫の顔検出および鳥の顔検出をそれぞれ実行した結果を示す図である。
【図20】上記検出処理の結果を示す図である。
【図21】入力画像から人間の顔を検出する検出処理において、上記人間の顔検出により検出された領域を含む画像に対して犬の顔検出、猫の顔検出および鳥の顔検出をそれぞれ実行した結果を示す図である。
【図22】入力画像から人間の顔を検出する検出処理において、上記人間の顔検出により検出された領域を含む画像に対して犬の顔検出、猫の顔検出および鳥の顔検出をそれぞれ実行した結果を示す図である。
【発明を実施するための形態】
【0044】
本発明の一実施形態について図1から図22に基づいて説明すると以下の通りである。
【0045】
〔画像処理装置の構成〕
まず、画像処理装置について図1に基づいて説明する。画像処理装置は、画像上における所定の主体の全部または一部である検出対象を検出するものである。ここで、検出対象とは、画像上の任意の有形物であり、例えば、人間の全身、顔、目、鼻、口、手、腕もしくは脚など、または、犬、猫、鳥等の動物の全身もしくは顔など、または、自動車、バイク等の車体全体もしくはタイヤなど、または、ビル、家屋等の建造物など、または、木、雲、太陽等の自然物などである。また、例えば、検出対象が「人間の顔」の場合、検出対象の主体は「人間」である。また、検出対象が「犬の顔」の場合、検出対象の主体は「犬」である。また、検出対象が「自動車のタイヤ」の場合、検出対象の主体は「自動車」である。
【0046】
画像処理装置は、画像上における検出対象を検出するものであれば何でも良く、例えば、PC、デジタルカメラ、携帯電話機、PDA(Personal Digital Assistant)、ゲーム機、写真を撮影して印刷する装置、画像を編集する装置などであってよい。
【0047】
図1は、画像処理装置1の要部構成の一例を示すブロック図である。図1に示すように、画像処理装置1は、制御部11、記憶部12、画像入力部13および表示部14を備えている。なお、画像処理装置1は、他の装置と通信するための通信部、ユーザが画像処理装置を操作するための操作部、音声入力部、音声出力部等の部材を備えていてもよいが、発明の特徴点とは関係がないため当該部材を図示していない。
【0048】
画像入力部13は、外部の画像提供装置(不図示)から画像を受信するものである。画像提供装置は、保持している画像または取得した画像を他の装置に提供する装置であれば何でもよい。例えば、画像提供装置は、デジタルカメラ、PC、携帯電話機、PDA、ゲーム機、デジタルテレビ、USB(Universal Serial Bus)メモリ等の記憶装置などである。なお、画像処理装置1は、画像入力部13の代わりに、カメラを搭載していてもよい。
【0049】
表示部14は、制御部11の指示に従って画像を表示するものである。表示部14は、制御部11の指示に従って画像を表示するものであればよく、例えば、LCD(液晶ディスプレイ)、有機ELディスプレイ、プラズマディスプレイなどを適用することが可能である。
【0050】
制御部11は、記憶部12から一時記憶部(不図示)に読み出されたプログラムを実行することにより、各種の演算を行うと共に、画像処理装置1が備える各部を統括的に制御するものである。
【0051】
本実施形態では、制御部11は、機能ブロックとして、画像取得部21、検出対象検出部(検出対象検出手段)22、候補領域特定部23、異種対象検出部(異種対象判定手段)24、検出対象領域判定部(検出対象判定手段)25および検出対象領域出力部26を備える構成である。これらの制御部11の各機能ブロック(21〜26)は、CPU(central processing unit)が、ROM(read only memory)等で実現された記憶装置に記憶されているプログラムをRAM(random access memory)等で実現された一時記憶部に読み出して実行することで実現できる。
【0052】
画像取得部21は、画像入力部13を介して入力された画像を取得するものである。画像取得部21は、取得した画像を検出対象検出部22に出力する。なお、記憶部12に画像が記憶されている場合、画像取得部21は、記憶部12から画像を読み出してもよい。
【0053】
検出対象検出部22は、画像取得部21が取得した画像から検出対象と考えられる対象を検出するものである。すなわち、検出対象検出部22は、画像から検出対象と完全に一致する対象だけではなく、検出対象と類似する対象や、1つまたは複数の特徴点が検出対象と一致または類似する対象等を検出する。以下では、検出対象と考えられる対象を推定検出対象と称する。なお、検出対象検出部22が画像から推定検出対象を検出する手法は任意でよい。
【0054】
検出対象検出部22は、画像から推定検出対象を検出した場合、当該推定検出対象が対応する検出対象である確度を特定してもよい。以下では検出対象検出部22が特定した確度を検出対象確度と称する。検出対象確度は、推定検出対象が検出対象である度合いを示し、例えば、推定検出対象が検出対象と類似する程度を示す類似度でもよい。なお、当該類似度を推定検出対象の特徴点と検出対象の特徴点とを比較して算出してもよい。
【0055】
候補領域特定部23は、検出対象検出部22が画像から推定検出対象を検出すると、検出された推定検出対象毎に、推定検出対象を含む画像上の領域を特定するものである。以下では、候補領域特定部23が特定する推定検出対象を含む領域を候補領域と称する。候補領域特定部23は、検出対象検出部22が画像から複数の推定検出対象を検出した場合、各推定検出対象をそれぞれ含む複数の候補領域を特定する。候補領域特定部23は、特定した候補領域を示す候補領域情報を異種対象検出部24および検出対象領域判定部25に出力する。
【0056】
候補領域は、1つの推定検出対象を含む領域であれば、どのような形状であってもよい。例えば、候補領域特定部23は、推定検出対象の輪郭で閉じられた領域を当該推定検出対象の候補領域としてもよい。また、候補領域特定部23は、推定検出対象の輪郭から所定距離内の領域を当該推定検出対象の候補領域としてもよい。また、候補領域特定部23は、推定検出対象の特徴点を全て含む矩形内の領域を候補領域としてもよい。
【0057】
また、候補領域情報は、候補領域の位置および大きさを示す情報であって、例えば、画像上における推定検出対象を囲む矩形の4角の点の座標を示す情報でもよいし、上記矩形の端点の座標および上記矩形の大きさを示す情報でもよい。また、候補領域情報は、推定検出対象の輪郭を示す情報であってもよい。
【0058】
候補領域特定部23は、例えば、推定検出対象の輪郭(エッジ)の位置に基づいて候補領域情報を生成したり、推定検出対象の1つまたは複数の特徴点の位置に基づいて候補領域情報を生成したりする。
【0059】
候補領域特定部23は、検出対象検出部22が推定検出対象の確度を特定した場合、当該推定検出対象を含む候補領域を示す候補領域情報に、当該推定検出対象の確度を示す検出対象確度情報を対応付ける。
【0060】
異種対象検出部24は、候補領域特定部23から候補領域情報を取得し、取得した候補領域情報の示す候補領域から、検出対象の主体と種別が異なる主体の全部または一部と考えられる対象を検出するものである。以下では、検出対象の主体と種別が異なる主体の全部または一部を異種対象と称し、その異種対象と考えられる対象を推定異種対象と称する。異種対象検出部24は、候補領域特定部23から複数の候補領域情報を取得した場合、各候補領域から、それぞれ推定異種対象を検出するものである。
【0061】
換言すると、異種対象とは、画像上の任意の有形物(対象)であって、主体の種別が検出対象と異なるものである。例えば、検出対象が「犬の顔」の場合、異種対象を「人間の顔」等にしてよい。また、検出対象が「人間の顔」の場合、異種対象を「犬の顔」、「猫の顔」、「鳥の顔」、「自動車のタイヤ」等にしてよい。また、検出対象が「人間の全身」の場合、異種対象を「木」等にしてよい。また、検出対象が「自動車の車体全体」の場合、異種対象を「バイクの車体全体」等にしてよい。
【0062】
また、例えば、人間の身長が所定値以上を「大人」とし、人間の身長が所定値未満を「子供」として人間を分類して定義した場合、対象である「大人の全身」と「子供の全身」とは主体の種別が異なるものとする。この場合、検出対象が「大人の全身」の場合、異種対象を「子供の全身」等にしてよい。
【0063】
ここで、異種対象は、任意の対象であってよいが、検出対象を検出した際に、誤検出される可能性が高い対象を異種対象とすることが望ましい。このように、異種対象を選択することにより、効果的に検出対象の検出精度を向上させることができる。
【0064】
なお、本発明では、検出する対象(検出対象もしくは異種対象)または対象の主体が異なる場合、対象の種別が異なるものとする。すなわち、対象「人間の顔」および「犬の顔」は、部位が「顔」で一致しているが、対象の主体が異なるため、対象の種別は別である。また、対象「人間の顔」および「人間の全身」は、主体は一致しているが、主体の全体か一部かで異なるため、対象の種別は別である。
【0065】
異種対象検出部24は、1つの候補領域から複数の種別の推定異種対象をそれぞれ検出してもよい。ここで、異種対象と考えられる推定異種対象の範囲によって、推定異種対象を分類するものとする。つまり、2つの推定異種対象の範囲が異なる場合、両者は異なる種別の推定異種対象とする。異種対象の種別が異なる場合、当然、推定異種対象の種別は異なるが、異種対象の種別が同じであっても、検出手法が異なることにより、推定異種対象の範囲が異なる場合がある。換言すると、異種対象検出部24が実行する検出の種別(検出種別)は、検出する対象である異種対象の種別および検出する検出手法によって分類される。また、異種対象検出部24の検出種別が同じ場合、推定異種対象の範囲も同じであり、検出種別が異なる場合、推定異種対象の範囲も異なり、検出種別および推定異種対象の種別の区分は一致する。
【0066】
例えば、異種対象が「犬の顔」であり、「犬の顔」を検出する手法がA,B,Cの3種類ある場合、検出手法A,B,Cで検出される推定異種対象の範囲はそれぞれ異なる。そのため、この場合、異種対象検出部24は、候補領域から3種の推定異種対象をそれぞれ検出することとなる。なお、検出対象検出部22と同様に、異種対象検出部24が領域から推定異種対象を検出する手法は任意でよい。なお、以下では、特に断らない限り異種対象検出部24が異種対象に関わらず、所定の手法で検出するものとする。
【0067】
また、異種対象検出部24は、候補領域特定部23から候補領域情報および検出対象確度情報を取得した場合、当該候補領域情報の示す候補領域から検出する対象である推定異種対象の種別内容および/または種別数を、当該候補領域情報に対応付けられている検出対象確度情報の示す検出対象確度に基づいて決定してもよい。すなわち、異種対象検出部24は、検出対象確度に基づいて、検出種別の内容および/または種別数を決定してもよい。
【0068】
具体的には、異種対象検出部24は、記憶部12から検出対象確度と検出種別の内容および/または種別数とが対応付けられている検出種別情報31を読み出し、読み出した検出種別情報31を参照して、取得した検出対象確度情報の示す検出対象確度に対応する検出種別の内容および/または種別数を特定する。異種対象検出部24は、特定した検出種別の内容および/または種別数に基づいて、異種対象の検出を実行する。
【0069】
例えば、異種対象検出部24は、推定検出対象の確度が高い場合、推定検出対象が検出対象である可能性が高いため、検出対象の検出時に誤検出の可能性が高い異種対象に限定したり、異種対象の種別数を少なくしたりして、異種対象の検出を実行する。一方、異種対象検出部24は、推定検出対象の確度が低い場合、推定検出対象が検出対象である可能性が低いため、検出対象の検出時に誤検出の可能性が低い異種対象も検出の対象としたり、異種対象の種別数を多くしたりして、異種対象の検出を実行する。
【0070】
異種対象検出部24は、候補領域から推定異種対象を検出すると、検出した推定異種対象を示す推定異種対象情報を、当該推定異種対象が検出された候補領域を示す候補領域情報に対応付けて、検出対象領域判定部25に出力する。異種対象検出部24は、候補領域から複数の種別の推定異種対象を検出した場合、複数の種別の推定異種対象をそれぞれ示す複数の推定異種対象情報を候補領域情報に対応付ける。
【0071】
換言すると、異種対象検出部24は、候補領域特定部23が特定した候補領域内に含まれる推定検出対象が、検出対象の主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定するものである。また、異種対象検出部24は、推定異種対象であるか否かを示す異種対象判定結果情報を、判定された候補領域を示す候補領域情報に対応付けて、検出対象領域判定部25に出力する。
【0072】
また、異種対象検出部24は、候補領域から推定異種対象を検出した場合、推定異種対象毎に、当該推定異種対象が対応する異種対象である確度を特定してもよい。以下では異種対象検出部24が特定した確度を異種対象確度と称する。異種対象確度は、推定異種対象が異種対象である度合いを示し、例えば、推定異種対象が異種対象と類似する程度を示す類似度でもよい。なお、当該類似度を推定異種対象の特徴点と異種対象の特徴点とを比較して算出してもよい。
【0073】
異種対象検出部24は、異種対象確度を特定した場合、検出した推定異種対象を示す推定異種対象情報と、特定した異種対象確度を示す異種対象確度情報とを、当該推定異種対象が検出された候補領域を示す候補領域情報に対応付けて、検出対象領域判定部25に出力する。
【0074】
検出対象領域判定部25は、異種対象検出部24から推定異種対象情報(異種対象判定結果情報)および候補領域情報を取得し、取得した推定異種対象情報に基づいて、候補領域特定部23が特定した候補領域に含まれる推定検出対象が、検出対象であるか否かを判定するものである。検出対象領域判定部25は、判定した結果、検出対象を含む候補領域(検出対象であると判定した推定検出対象を含む候補領域)を検出対象領域として特定し、当該検出対象領域示す検出対象領域情報を検出対象領域出力部26に出力する。
【0075】
具体的には、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に推定異種対象情報が対応付けられている場合、当該候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではないと特定する。すなわち、検出対象領域判定部25は、異種対象検出部24が推定異種対象を検出した候補領域を検出対象領域ではない除去領域として特定する。異種対象検出部24が複数の種別の推定異種対象を検出する場合、検出対象領域判定部25は、異種対象検出部24が何れかの推定異種対象を検出した候補領域を検出対象領域ではない除去領域として特定する。一方、検出対象領域判定部25は、何れの推定異種対象も検出されなかった候補領域を検出対象領域として特定してもよい。
【0076】
また、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に所定の推定異種対象情報が対応付けられている場合、当該候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではないと特定する。すなわち、検出対象領域判定部25は、異種対象検出部24が所定の種別の推定異種対象を検出した候補領域を検出対象領域ではない除去領域として特定する。一方、検出対象領域判定部25は、所定の種別の推定異種対象が検出されなかった候補領域を検出対象領域として特定してもよい。
【0077】
また、異種対象検出部24が複数の種別の推定異種対象を検出する場合、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に所定の個数の推定異種対象情報が対応付けられている場合、当該候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではないと判定する。すなわち、検出対象領域判定部25は、異種対象検出部24が所定の種別数の推定異種対象を検出した候補領域を検出対象領域ではない除去領域として特定する。一方、検出対象領域判定部25は、所定の種別数の推定異種対象が検出されなかった候補領域を検出対象領域として特定してもよい。
【0078】
また、検出対象領域判定部25は、例えば、異種対象検出部24から取得した候補領域情報に、異種対象検出部24が検出の対象とした推定異種対象の種別数の半分以上の個数の推定異種対象情報が対応付けられている場合、当該候補領域情報の示す候補領域を検出対象領域ではない除去領域として特定する。一方、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に、異種対象検出部24が検出の対象とした推定異種対象の種別数の半分未満の個数の推定異種対象情報が対応付けられている場合、当該候補領域情報の示す候補領域を検出対象領域として特定してもよい。
【0079】
また、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に推定異種対象情報および異種対象確度情報が対応付けられている場合、各推定異種対象の異種対象確度を合計した確度合計値が所定の閾値以上の場合、当該候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではない除去領域として特定してもよい。一方、検出対象領域判定部25は、確度合計値が所定の閾値未満の場合、当該候補領域を検出対象領域として特定してもよい。
【0080】
また、検出対象領域判定部25は、異種対象検出部24から取得した候補領域情報に推定異種対象情報、異種対象確度情報および検出対象確度情報が対応付けられている場合、各推定異種対象の異種対象確度を合計した確度合計値と検出対象確度とを比較して、当該候補領域情報の示す候補領域に含まれる推定検出対象が検出対象であるか否かを判定してもよい。例えば、検出対象領域判定部25は、異種対象確度を合計した確度合計値が検出対象確度より大きい場合、候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではない除去領域として特定する。また、例えば、検出対象領域判定部25は、異種対象確度を合計した確度合計値から検出対象確度を減算した値が所定値以上の場合、候補領域情報の示す候補領域に含まれる推定検出対象を検出対象ではないと判定し、当該候補領域を検出対象領域ではない除去領域として特定する。
【0081】
また、検出対象領域判定部25は、各推定異種対象の重み付け値を示す重み付け情報32を記憶部12から読み出し、読み出した重み付け情報32の示す重み付け値に基づいて、各推定異種対象の異種対象確度にそれぞれ重み付け値を乗算して、その乗算した値を合計して確度合計値を算出してもよい。
【0082】
また、検出対象領域判定部25は、検出対象ではないと判定した推定検出対象以外の推定検出対象を検出対象であると判定し、当該推定検出対象を含む候補領域を検出対象領域として特定する。
【0083】
検出対象領域出力部26は、検出対象領域判定部25から取得した検出対象領域情報の示す領域を、画像取得部21が取得した画像上に重ねて表示部14に表示する。
【0084】
記憶部12は、制御部11が参照するプログラムやデータ等を格納するものであり、例えば、上記検出種別情報31および重み付け情報32等を格納する。記憶部12が格納する検出種別情報31および重み付け情報32の一例を図2、3に基づいて説明する。図2は、検出種別情報31の一例を示す図である。図3は、重み付け情報32の一例を示す図である。
【0085】
検出種別情報31は、検出対象確度と、検出種別の内容および種別数とが対応付けられている情報である。換言すると、検出種別情報31は、検出対象確度と、推定検出対象の種別内容および種別数とが対応付けられている情報である。具体的には、図2に示すように、検出対象確度が「600以下」、「601〜800」、「801〜1000」、「1001以上」の4つの範囲に分類されており、検出対象確度の各範囲に、各検出種別の実行の有無が対応付けられている。
【0086】
図2に示す例では、パターン1として、検出対象確度が1001以上の場合、異種対象検出部24が「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出の何れも実行しない。また、検出対象確度が801〜1000の場合、異種対象検出部24が「犬の顔」検出のみを実行する。検出対象確度が601〜800の場合、異種対象検出部24が「犬の顔」検出および「猫の顔」検出を実行する。検出対象確度が600以下の場合、異種対象検出部24が「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出を実行する。
【0087】
図2に示す例では、検出対象確度の範囲ごとに、異種対象検出部24が実行する検出種別の内容および種別数が対応付けられているが、これに限るものではない。例えば、検出対象確度の範囲ごとに、異種対象検出部24が実行する検出種別の内容のみが対応付けられていてもよいし、または、検出対象確度の範囲ごとに、異種対象検出部24が実行する検出種別の種別数のみが対応付けられていてもよい。
【0088】
検出種別情報31において、検出対象確度の範囲ごとに、異種対象検出部24が実行する検出種別の内容のみが対応付けられている場合、異種対象検出部24は、検出種別情報31により特定される検出種別の内容が示す検出を少なくとも実行すればよく、実行する検出種別の種別数は任意でよい。つまり、検出種別情報31により特定される検出種別が2種類ある場合、その特定される2種類の検出種別の検出を実行すればよく、それ以外の検出種別を実行してもよいし、実行しなくてもよい。
【0089】
また、検出種別情報31において、検出対象確度の範囲ごとに、異種対象検出部24が実行する検出種別の種別数のみが対応付けられている場合、異種対象検出部24は、検出種別情報31により特定される検出種別の種別数だけ検出を実行すればよく、実行する検出種別の内容は任意でよい。
【0090】
また、図2に示す例では、検出対象確度を4つの範囲に分類しているが、これに限るものではなく、検出対象確度の範囲の上限値、下限値および分類数は任意に設定すればよい。
【0091】
次に、図3に示すように、重み付け情報32は、検出種別(推定異種対象)と重み付け値とが対応付けられている情報である。図3に示す例では、「犬の顔」検出の重み付け値が0.8であり、「猫の顔」検出の重み付け値が0.8であり、「鳥の顔」検出の重み付け値が1.4である。
【0092】
なお、検出種別に設定する重み付け値の値は任意であってよい。ただし、検出対象および検出種別の検出精度等に基づいて設定することが望ましい。例えば、或る検出対象に対して、その検出対象の検出時に誤検出の可能性が高い異種対象と誤検出の可能性が低い異種対象とがあるとする。この場合、誤検出の可能性が高い異種対象を検出する検出種別の重み付け値を大きな値に設定し、誤検出の可能性が低い異種対象を検出する検出種別の重み付け値を小さな値に設定することにより、誤検出を効率的に低減させることができる。
【0093】
また、例えば、検出精度が高い検出種別と検出精度が低い検出種別とがあるとする。この場合、この場合、検出精度が高い検出種別の重み付け値を大きな値に設定し、検出精度が低い検出種別の重み付け値を小さな値に設定することにより、誤検出を効率的に低減させることができる。
【0094】
また、上述のように、例えば、異種対象が「犬の顔」であり、「犬の顔」を検出する手法がA,B,Cの3種類ある場合、「犬の顔」検出A、「犬の顔」検出B、「犬の顔」検出Cの3種の検出種別(推定異種対象)が考えられる。この場合、「犬の顔」検出A、「犬の顔」検出Bおよび「犬の顔」検出Cに対して、それぞれ異なる重み付け値を設定してもよい。
【0095】
〔検出処理〕
次に、画像処理装置1が実行する検出対象を検出する検出処理について図4〜22に基づいて説明する。最初に、図4〜9に基づいて、画像からペットの顔を検出する検出処理例(実施例1)を説明する。次に、図10〜図15に基づいて、画像から人間の顔を検出する検出処理例(実施例2)を説明する。次に、図5、16〜20に基づいて、画像から人間の顔を検出する検出処理例(実施例3)を説明する。次に、図21に基づいて、検出対象領域判定部25が検出対象領域であるか否かを判定する判定処理例(実施例4)を説明する。最後に、図22に基づいて、検出対象領域判定部25が検出対象領域であるか否かを判定する他の判定処理例(実施例5)を説明する。
【0096】
〔実施例1〕
まず、実施例1として、図5に示す入力画像41からペットの顔を検出する検出処理例を説明する。図4は、図5に示す入力画像41からペットを検出する検出処理の一例を示す図である。また、図5は、実施例1で用いる入力画像41を示す図である。
【0097】
実施例1では、検出対象を犬や猫等の「ペットの顔」とし、異種対象を「人間の顔」とする。また、検出対象領域判定部25は、候補領域のうち、推定異種対象が検出されたものは検出対象領域ではないと判定するものとする。また、図5に示すように、入力画像41には、人間42および犬43が描かれている。
【0098】
図4に示すように、まず、画像取得部21が入力画像41を取得する(S1)。次に、検出対象検出部22は、「ペットの顔」検出を実行し、入力画像41からペットの顔と考えられる対象を検出する(S2)。
【0099】
次に、候補領域特定部23は、検出対象検出部22が推定検出対象を検出したか否かを判定する(S3)。ここでは、図6に示すように、検出対象検出部22が犬の顔45および人間の顔44を検出したとする。
【0100】
検出対象検出部22が犬の顔45および人間の顔44を検出したため(S3でYES)、候補領域特定部23は、犬の顔45を含む矩形の領域47を候補領域として特定すると共に、人間の顔44を含む矩形の領域46を候補領域として特定する(S4)。
【0101】
異種対象検出部24は、図7に示すように、入力画像41から候補領域46および47をそれぞれ含む領域48および49を切り出し、領域48および49(候補領域46および47)に対して「人間の顔」検出を実行する(S5)。
【0102】
次に、検出対象領域判定部25は、領域48および49(候補領域46および47)から「人間の顔」が検出されたか否かを判定する(S6)。ここでは、図8に示すように、異種対象検出部24は、領域48(候補領域46)から人間の顔44を検出し、領域49(候補領域47)からは何も検出できなかったものとする。
【0103】
異種対象検出部24が領域48(候補領域46)から人間の顔44、すなわち異種対象を検出したため(S6でYES)、検出対象領域判定部25は、候補領域46を検出対象領域ではない除去領域であると判定する(S7)。また、異種対象検出部24が領域49(候補領域47)から何も検出しなかったため(S6でNO)、検出対象領域判定部25は、候補領域47を検出対象領域であると判定する。
【0104】
そして、検出対象領域判定部25は、候補領域46および47から除去領域として判定した候補領域46を除去して、残りの候補領域47を検出対象領域として特定する(S8)。検出対象領域出力部26は、図9に示すように、犬の顔45を含む領域(候補領域47)を検出対象領域50として入力画像41上に描画して検出結果画像51を生成し、生成した検出結果画像51を表示部14に表示する(S9)。
【0105】
なお、S2において、検出対象検出部22が「ペットの顔」検出を実行した結果、何も検出できなかった場合(S3でNO)、検出対象領域出力部26は、入力画像41からは「ペットの顔」が検出できなかったことを示す画像を表示部14に表示する(S9)。例えば、検出対象領域出力部26は、入力画像41をそのまま表示部14に表示する。
【0106】
〔実施例2〕
次に、実施例2として、図11に示す入力画像61から人間の顔を検出する検出処理例を説明する。図10は、図11に示す入力画像61から人間の顔を検出する検出処理の一例を示す図である。また、図11は、実施例2で用いる入力画像61を示す図である。
【0107】
実施例2では、検出対象を「人間の顔」とし、異種対象を「自動車のタイヤ」とする。また、検出対象領域判定部25は、候補領域のうち、推定異種対象が検出されたものは検出対象領域ではないと判定するものとする。また、図11に示すように、入力画像61には、人間62、63および自動車64が描かれている。
【0108】
図10に示すように、まず、画像取得部21が入力画像61を取得する(S11)。次に、検出対象検出部22は、「人間の顔」検出を実行し、入力画像61から人間の顔と考えられる対象を検出する(S12)。
【0109】
次に、候補領域特定部23は、検出対象検出部22が推定検出対象を検出したか否かを判定する(S13)。ここでは、図12に示すように、検出対象検出部22が人間の顔65、66および自動車のタイヤ67を検出したとする。
【0110】
検出対象検出部22が人間の顔65、66および自動車のタイヤ67を検出したため(S13でYES)、候補領域特定部23は、人間の顔65を含む矩形の領域68を候補領域として特定し、人間の顔66を含む矩形の領域69を候補領域として特定し、車のタイヤ67を含む矩形の領域70を候補領域として特定する(S14)。
【0111】
異種対象検出部24は、図13に示すように、入力画像61から候補領域68、69および70をそれぞれ含む領域71、72および73を切り出し、領域71、72および73(候補領域68、69および70)に対して「自動車のタイヤ」検出を実行する(S15)。
【0112】
次に、検出対象領域判定部25は、領域71、72および73(候補領域68、69および70)から「自動車のタイヤ」が検出されたか否かを判定する(S16)。ここでは、図14に示すように、異種対象検出部24は、領域73(候補領域70)から自動車のタイヤ67を検出し、領域71および72(候補領域68および69)からは何も検出できなかったものとする。
【0113】
異種対象検出部24が領域73(候補領域70)から自動車のタイヤ67、すなわち異種対象を検出したため(S16でYES)、検出対象領域判定部25は、候補領域70を検出対象領域ではない除去領域であると判定する(S17)。また、異種対象検出部24が領域71および72(候補領域68および69)から何も検出しなかったため(S16でNO)、検出対象領域判定部25は、候補領域68および69を検出対象領域であると判定する。
【0114】
そして、検出対象領域判定部25は、候補領域68〜70から除去領域として判定した候補領域70を除去して、残りの候補領域68および69を検出対象領域として特定する(S18)。検出対象領域出力部26は、図15に示すように、人間の顔65および66をそれぞれ含む領域(候補領域68および69)を、それぞれ検出対象領域74、75として入力画像61上に描画して検出結果画像76を生成し、生成した検出結果画像76を表示部14に表示する(S19)。
【0115】
なお、S12において、検出対象検出部22が「人間の顔」検出を実行した結果、何も検出できなかった場合(S13でNO)、検出対象領域出力部26は、入力画像61からは「人間の顔」が検出できなかったことを示す画像を表示部14に表示する(S19)。例えば、検出対象領域出力部26は、入力画像61をそのまま表示部14に表示する。
【0116】
〔実施例3〕
次に、実施例3として、図5に示す入力画像41から人間の顔を検出する検出処理例を説明する。図16は、図5に示す入力画像41から人間の顔を検出する検出処理の一例を示す図である。
【0117】
実施例3では、検出対象を「人間の顔」とし、異種対象を「犬の顔」、「猫の顔」および「鳥の顔」とする。すなわち、実施例3では、推定異種対象の種別数を3とする。また、検出対象領域判定部25は、候補領域のうち、推定異種対象が2種類以上検出されたものは検出対象領域ではないと判定するものとする。
【0118】
図16に示すように、まず、画像取得部21が入力画像41を取得する(S21)。次に、検出対象検出部22は、「人間の顔」検出(検出対象の検出)を実行し、入力画像41から人間の顔と考えられる対象を検出する(S22)。
【0119】
次に、候補領域特定部23は、検出対象検出部22が推定検出対象を検出したか否かを判定する(S23)。ここでは、図17に示すように、検出対象検出部22が人間の顔44および犬の顔45を検出したとする。
【0120】
検出対象検出部22が人間の顔44および犬の顔45を検出したため(S23でYES)、候補領域特定部23は、人間の顔44を含む矩形の領域81を候補領域として特定し、犬の顔45を含む矩形の領域82を候補領域として特定する(S24)。
【0121】
異種対象検出部24は、図18に示すように、入力画像41から候補領域81および82をそれぞれ含む領域83および84を切り出し、領域83および84(候補領域81および82)に対して「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出(複数の異種対象の検出)をそれぞれ実行する(S25)。
【0122】
次に、検出対象領域判定部25は、領域毎に、領域83および84(候補領域81および82)から「犬の顔」、「猫の顔」および「鳥の顔」がそれぞれ検出されたか否かを判定する(S26)。
【0123】
ここでは、図19に示すように、異種対象検出部24は、領域83(候補領域81)に対して「犬の顔」検出を実行した結果、人間の顔44を検出し、「猫の顔」検出および「鳥の顔」検出を実行したが、領域83(候補領域81)から何も検出できなかったとする。また、異種対象検出部24は、領域84(候補領域82)に対して「犬の顔」検出を実行した結果、犬の顔45を検出し、「猫の顔」検出を実行した結果、犬の顔45を検出し、「鳥の顔」検出を実行したが、領域84(候補領域82)から何も検出できなかったとする。
【0124】
なお、領域84(候補領域82)から「犬の顔」検出および「猫の顔」検出により、それぞれ同じ犬の顔45を検出している。しかしながら、「犬の顔」検出および「猫の顔」検出は異なる異種対象を検出するため、領域84(候補領域82)からは2種類の推定異種対象が検出されたものとみなす。つまり、図19に示す「○」の個数が各領域から検出された推定異種対象の種類数を示す。
【0125】
S27では、検出対象領域判定部25は、異種対象の検出結果に基づいて除去領域を特定する。本実施例3の場合、上述のように、推定異種対象が2種類以上検出されたものは検出対象領域ではないと判定する、つまり、除去領域であると判定する。
【0126】
すなわち、異種対象検出部24が領域83(候補領域81)から1種類の推定異種対象を検出したため(S26でYES)、検出対象領域判定部25は、候補領域81を検出対象領域であると判定する(S27)。また、異種対象検出部24が領域84(候補領域82)から2種類の推定異種対象を検出したため(S26でYES)、検出対象領域判定部25は、候補領域82を検出対象領域ではない除去領域であると判定する。なお、領域から何れの推定異種対象も検出されなかった場合(S26でNO)、検出対象領域判定部25は、当該領域を検出対象領域であると判定する(S27)。
【0127】
そして、検出対象領域判定部25は、候補領域81を検出対象領域として特定する(S28)。検出対象領域出力部26は、図20に示すように、人間の顔44を含む領域(候補領域81)を、検出対象領域85として入力画像41上に描画して検出結果画像86を生成し、生成した検出結果画像86を表示部14に表示する(S29)。
【0128】
なお、S22において、検出対象検出部22が「人間の顔」検出(検出対象の検出)を実行した結果、何も検出できなかった場合(S23でNO)、検出対象領域出力部26は、入力画像41からは「人間の顔」が検出できなかったことを示す画像を表示部14に表示する(S29)。例えば、検出対象領域出力部26は、入力画像41をそのまま表示部14に表示する。
【0129】
〔実施例4〕
次に、実施例4として、或る入力画像から人間の顔を検出する検出処理において、図21に示す異種対象の検出結果に基づいて、各候補領域が検出対象領域であるか否かを判定する判定処理例を説明する。
【0130】
実施例4では、実施例3と同様に、検出対象を「人間の顔」とし、異種対象を「犬の顔」、「猫の顔」および「鳥の顔」とする。
【0131】
また、検出対象検出部22が、入力画像から人間の顔と考えられる対象を6個検出し、候補領域特定部23が、6個の推定検出対象をそれぞれ含む候補領域A〜Fを特定したとする。また、異種対象検出部24が候補領域A〜Fに対してそれぞれ「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出を実行し、図21に示す結果が得られたものとする。
【0132】
具体的には、候補領域Aから「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出による3種類の推定異種対象が検出され、候補領域Bから「犬の顔」検出による1種類の推定異種対象が検出され、候補領域Cから「犬の顔」検出および「猫の顔」検出による2種類の推定異種対象が検出され、候補領域Dから「猫の顔」検出および「鳥の顔」検出による2種類の推定異種対象が検出され、候補領域Eからは何れの推定異種対象も検出されず、候補領域Fから「猫の顔」検出による1種類の推定異種対象が検出されたとする。
【0133】
実施例4では、検出対象領域判定部25が、何れかの推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合と、所定の推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合と、所定の推定異種対象が検出された候補領域、および、所定の種別数の推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合との3つの場合について説明する。
【0134】
まず、検出対象領域判定部25が、何れかの推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合について説明する。この場合、図21の結果を参照すると、何れかの推定異種対象が検出された候補領域は候補領域A〜D、Fであるため、検出対象領域判定部25は、候補領域A〜D、Fを検出対象領域ではないと判定する。一方、候補領域Eは何れの推定異種対象も検出されていないため、検出対象領域判定部25は、候補領域Eを検出対象領域であると判定する。
【0135】
次に、検出対象領域判定部25が、所定の推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合について説明する。ここでは、例えば、検出対象領域判定部25が「犬の顔」検出により推定異種対象が検出された候補領域を検出対象領域ではないと判定するものとする。
【0136】
この場合、図21の結果を参照すると、「犬の顔」検出により推定異種対象が検出された候補領域は、候補領域A〜Cであるため、検出対象領域判定部25は、候補領域A〜Cを検出対象領域ではないと判定する。一方、候補領域D〜Fは「犬の顔」検出により推定異種対象が検出されていないため、検出対象領域判定部25は、候補領域D〜Fを検出対象領域であると判定する。
【0137】
最後に、検出対象領域判定部25が、所定の推定異種対象が検出された候補領域、および、所定の種別数の推定異種対象が検出された候補領域を検出対象領域ではないと判定する場合について説明する。ここでは、例えば、検出対象領域判定部25が「犬の顔」検出により推定異種対象が検出された候補領域を検出対象領域ではないと判定すると共に、2種類以上の推定異種対象が検出された候補領域を検出対象領域ではないと判定する。すなわち、候補領域から「犬の顔」検出により推定異種対象が検出されたか、または、候補領域から「犬の顔」検出では検出されなかったが、「猫の顔」検出および「鳥の顔」検出により2種類の推定異種対象が検出された場合に、検出対象領域判定部25が候補領域を検出対象領域ではないと判定する。
【0138】
この場合、図21の結果を参照すると、「犬の顔」検出により推定異種対象が検出された候補領域は、候補領域A〜Cであるため、検出対象領域判定部25は、候補領域A〜Cを検出対象領域ではないと判定する。また、「犬の顔」検出により検出されなかった候補領域D〜Fのうち、「猫の顔」検出および「鳥の顔」検出により2種類の推定異種対象が検出された候補領域は、候補領域Dであるため、検出対象領域判定部25は、候補領域Dを検出対象領域ではないと判定する。一方、検出対象領域判定部25は、上記に該当しない、残りの候補領域E、Fを検出対象領域であると判定する。
【0139】
〔実施例5〕
最後に、実施例5として、或る入力画像から人間の顔を検出する検出処理において、異種対象確度、または、異種対象確度および検出対象確度に基づいて、各候補領域が検出対象領域であるか否かを判定する判定処理例を説明する。
【0140】
実施例5では、実施例3と同様に、検出対象を「人間の顔」とし、異種対象を「犬の顔」、「猫の顔」および「鳥の顔」とする。
【0141】
また、検出対象検出部22が、入力画像から人間の顔と考えられる対象を3個検出し、候補領域特定部23が、3個の推定検出対象をそれぞれ含む候補領域G〜Iを特定したとする。また、異種対象検出部24が候補領域G〜Iに対してそれぞれ「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出を実行し、さらに、異種対象検出部24は検出した推定異種対象の異種対象確度を特定し、図22に示す結果が得られたものとする。
【0142】
具体的には、候補領域Gから「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出による3種類の推定異種対象が検出され、それぞれ異種対象確度が300、300、400であったとする。また、候補領域Hから「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出による3種類の推定異種対象が検出され、それぞれ異種対象確度が200、200、200であったとする。また、候補領域Iから「犬の顔」検出および「猫の顔」検出による2種類の推定異種対象が検出され、それぞれ異種対象確度が400、400であったとする。
【0143】
実施例5では、検出対象領域判定部25が、異種対象確度に基づいて、候補領域が検出対象領域であるか否かを判定する場合と、異種対象確度および検出対象確度に基づいて、候補領域が検出対象領域であるか否かを判定する場合との2つの場合について説明する。
【0144】
まず、検出対象領域判定部25が、異種対象確度に基づいて、候補領域が検出対象領域であるか否かを判定する場合について説明する。ここでは、例えば、検出された推定異種対象の異種対象確度の合計値が700より大きい場合、候補領域を検出対象領域ではないと判定するものとする。
【0145】
この場合、図22の結果を参照すると、候補領域Gは、推定異種対象の異種対象確度の合計値が300+300+400=1000(>700)であるため、検出対象領域判定部25は、候補領域Gを検出対象領域ではないと判定する。また、候補領域Hは、推定異種対象の異種対象確度の合計値が200+200+200=600(<700)であるため、検出対象領域判定部25は、候補領域Hを検出対象領域であると判定する。また、候補領域Iは、推定異種対象の異種対象確度の合計値が400+400=800(>700)であるため、検出対象領域判定部25は、候補領域Iを検出対象領域ではないと判定する。
【0146】
次に、検出対象領域判定部25が、異種対象確度および検出対象確度に基づいて、候補領域が検出対象領域であるか否かを判定する場合について説明する。ここでは、候補領域G〜Iにそれぞれ含まれる推定検出対象の検出対象確度は、全て900であったとし、検出された推定異種対象の異種対象確度の合計値が検出対象確度(900)より大きい場合、候補領域を検出対象領域ではないと判定するものとする。
【0147】
この場合、図22の結果を参照すると、候補領域Gは、推定異種対象の異種対象確度の合計値が300+300+400=1000(>900)であるため、検出対象領域判定部25は、候補領域Gを検出対象領域ではないと判定する。また、候補領域Hは、推定異種対象の異種対象確度の合計値が200+200+200=600(<900)であるため、検出対象領域判定部25は、候補領域Hを検出対象領域であると判定する。また、候補領域Iは、推定異種対象の異種対象確度の合計値が400+400=800(<900)であるため、検出対象領域判定部25は、候補領域Iを検出対象領域であると判定する。
【0148】
なお、ここでは、検出対象領域判定部25は、推定異種対象の異種対象確度の合計値と、検出対象確度との大小関係を比較して、候補領域が検出対象領域であるか否かを判定しているが、これに限るものではなく、複数の推定異種対象の異種対象確度と、検出対象確度とをどのように用いるかは任意でよい。すなわち、検出対象領域判定部25は、複数の推定異種対象の異種対象確度と、検出対象確度とに基づいて、候補領域が検出対象領域であるか否かを判定するものであればよい。
【0149】
さらに、上記2つの場合において、検出対象領域判定部25は、図3に示す重み付け情報32を用いて、異種対象確度の合計値を算出してもよい。
【0150】
具体的には、検出対象領域判定部25が、異種対象確度のみに基づいて判定する場合、候補領域Gに対する異種対象確度の合計値は、300×0.8+300×0.8+400×1.4=1040となる。合計値が閾値の700より大きいため、検出対象領域判定部25は、候補領域Gを検出対象領域ではないと判定する。また、候補領域Hに対する異種対象確度の合計値は、200×0.8+200×0.8+200×1.4=600となる。合計値が閾値の700より小さいため、検出対象領域判定部25は、候補領域Gを検出対象領域であると判定する。また、候補領域Iに対する異種対象確度の合計値は、400×0.8+400×0.8=640となる。合計値が閾値の700より小さいため、検出対象領域判定部25は、候補領域Gを検出対象領域であると判定する。
【0151】
また、検出対象領域判定部25が、異種対象確度および検出対象確度に基づいて判定する場合、同様に、候補領域Gに対する異種対象確度の合計値は、300×0.8+300×0.8+400×1.4=1040となる。合計値が検出対象確度の900より大きいため、検出対象領域判定部25は、候補領域Gを検出対象領域ではないと判定する。また、候補領域Hに対する異種対象確度の合計値は、200×0.8+200×0.8+200×1.4=600となる。合計値が検出対象確度の900より小さいため、検出対象領域判定部25は、候補領域Gを検出対象領域であると判定する。また、候補領域Iに対する異種対象確度の合計値は、400×0.8+400×0.8=640となる。合計値が検出対象確度の900より小さいため、検出対象領域判定部25は、候補領域Gを検出対象領域であると判定する。
【0152】
〔変形例1〕
また、変形例1として、異種対象検出部24が検出対象確度に基づいて、検出種別の内容および/または種別数を決定する例を説明する。
【0153】
この変形例1では、検出対象を「人間の顔」とし、検出対象検出部22が、入力画像から人間の顔と考えられる対象を4個検出し、候補領域特定部23が、4個の推定検出対象をそれぞれ含む候補領域J〜Mを特定したとする。また、候補領域J〜Mにそれぞれ含まれる推定検出対象の検出対象確度をそれぞれ1200、900、700、500とする。また、異種対象検出部24は、記憶部12から図2に示す検出種別情報31を読み出し、検出種別情報31に基づいて、検出種別の内容および種別数を決定するものとする。
【0154】
この場合、異種対象検出部24は、候補領域Jに含まれる推定検出対象の検出対象確度が1200であるため、検出種別情報31に示されるパターン1を選択する。具体的には、異種対象検出部24は、候補領域Jに対しては、何れの異種対象の検出も実行しない。また、異種対象検出部24は、候補領域Kに含まれる推定検出対象の検出対象確度が900であるため、検出種別情報31に示されるパターン2を選択する。具体的には、異種対象検出部24は、候補領域Kに対しては、「犬の顔」検出のみを実行する。また、異種対象検出部24は、候補領域Lに含まれる推定検出対象の検出対象確度が700であるため、検出種別情報31に示されるパターン3を選択する。具体的には、異種対象検出部24は、候補領域Lに対しては、「犬の顔」検出および「猫の顔」検出を実行する。また、異種対象検出部24は、候補領域Mに含まれる推定検出対象の検出対象確度が500であるため、検出種別情報31に示されるパターン4を選択する。具体的には、異種対象検出部24は、候補領域Mに対しては、「犬の顔」検出、「猫の顔」検出および「鳥の顔」検出を実行する。
【0155】
〔変形例2〕
本実施形態では、異種対象検出部24が検出する対象である異種対象を、検出対象の主体と種別が異なる主体の全部または一部と考えられる対象としているがこれに限るものではない。例えば、異種対象を検出対象と種別が異なる対象としてもよい。
【0156】
この場合、例えば、検出対象「人間の目」の場合、異種対象を「人間の口」等にしてもよい。また、検出対象が「人間の手」の場合、異種対象を「人間の顔」や「人間の足」等にしてもよい。
【0157】
〔補足〕
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【0158】
最後に、画像処理装置1の各ブロック、特に制御部11は、ハードウェアロジックによって構成してもよいし、次のようにCPUを用いてソフトウェアによって実現してもよい。
【0159】
すなわち、画像処理装置1は、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである画像処理装置1の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記画像処理装置1に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【0160】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
【0161】
また、画像処理装置1を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【産業上の利用可能性】
【0162】
本発明は、画像上の所定の有形物を検出する画像処理装置に利用することができる。
【符号の説明】
【0163】
1 画像処理装置
22 検出対象検出部(検出対象検出手段)
24 異種対象検出部(異種対象判定手段)
25 検出対象領域判定部(検出対象判定手段)
【特許請求の範囲】
【請求項1】
画像上における所定の主体の全部または一部である検出対象を検出する画像処理装置であって、
上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出手段と、
上記検出対象検出手段が検出した推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定手段と、
上記異種対象判定手段の判定結果に基づいて、上記検出対象検出手段が検出した推定検出対象が、上記検出対象であるか否かを判定する検出対象判定手段とを備えることを特徴とする画像処理装置。
【請求項2】
上記異種対象判定手段は、複数の種別の推定異種対象について、種別毎に、上記検出対象検出手段が検出した推定検出対象が推定異種対象であるか否かをそれぞれ判定することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
上記検出対象検出手段は、上記推定検出対象を検出すると共に、当該推定検出対象が上記検出対象である確度を示す検出対象確度を特定し、
上記異種対象判定手段は、上記検出対象検出手段が検出した推定検出対象の検出対象確度に基づいて、判定する推定異種対象の種別内容および/または種別数を決定することを特徴とする請求項1に記載の画像処理装置。
【請求項4】
上記検出対象判定手段は、上記異種対象判定手段が上記推定検出対象を上記推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することを特徴とする請求項1〜3の何れか1項に記載の画像処理装置。
【請求項5】
上記検出対象判定手段は、上記異種対象判定手段が上記推定検出対象を所定の種別の推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することを特徴とする請求項2または3に記載の画像処理装置。
【請求項6】
上記検出対象判定手段は、上記異種対象判定手段が、所定数の種別数の推定異種対象について、上記推定検出対象を上記推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することを特徴とする請求項2、3または5に記載の画像処理装置。
【請求項7】
上記異種対象判定手段は、上記推定検出対象を上記推定異種対象であると判定した場合、推定異種対象毎に、当該推定異種対象が対応する異種対象である確度を示す異種対象確度を特定し、
上記検出対象判定手段は、各推定異種対象の異種対象確度を合計した合計値が所定の閾値以上の場合、上記推定検出対象を上記検出対象ではないと判定することを特徴とする請求項1〜3の何れか1項に記載の画像処理装置。
【請求項8】
上記検出対象検出手段は、上記推定検出対象を検出すると共に、当該推定検出対象が上記検出対象である確度を示す検出対象確度を特定し、
上記異種対象判定手段は、上記推定検出対象を上記推定異種対象であると判定した場合、推定異種対象毎に、当該推定異種対象が対応する異種対象である確度を示す異種対象確度を特定し、
上記検出対象判定手段は、各推定異種対象の異種対象確度と上記検出対象確度とに基づいて、上記推定検出対象が上記検出対象であるか否かを判定することを特徴とする請求項1〜3の何れか1項に記載の画像処理装置。
【請求項9】
上記検出対象判定手段は、上記推定異種対象毎に予め定められている所定の重み付け値を、各推定異種対象の異種対象確度にそれぞれ乗算し、乗算後の複数の異種対象確度に基づいて、上記推定検出対象が上記検出対象であるか否かを判定することを特徴とする請求項7または8に記載の画像処理装置。
【請求項10】
画像上における所定の主体の全部または一部である検出対象を検出する画像処理方法であって、
上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出ステップと、
上記検出対象検出ステップにおいて検出された推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定ステップと、
上記異種対象判定ステップの判定結果に基づいて、上記検出対象検出ステップにおいて検出された推定検出対象が、上記検出対象であるか否かを判定する検出対象判定ステップとを含むことを特徴とする画像処理方法。
【請求項11】
請求項1〜9の何れか1項に記載の画像処理装置を動作させるための制御プログラムであって、コンピュータを上記各手段として機能させるための制御プログラム。
【請求項12】
請求項11に記載の制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項1】
画像上における所定の主体の全部または一部である検出対象を検出する画像処理装置であって、
上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出手段と、
上記検出対象検出手段が検出した推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定手段と、
上記異種対象判定手段の判定結果に基づいて、上記検出対象検出手段が検出した推定検出対象が、上記検出対象であるか否かを判定する検出対象判定手段とを備えることを特徴とする画像処理装置。
【請求項2】
上記異種対象判定手段は、複数の種別の推定異種対象について、種別毎に、上記検出対象検出手段が検出した推定検出対象が推定異種対象であるか否かをそれぞれ判定することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
上記検出対象検出手段は、上記推定検出対象を検出すると共に、当該推定検出対象が上記検出対象である確度を示す検出対象確度を特定し、
上記異種対象判定手段は、上記検出対象検出手段が検出した推定検出対象の検出対象確度に基づいて、判定する推定異種対象の種別内容および/または種別数を決定することを特徴とする請求項1に記載の画像処理装置。
【請求項4】
上記検出対象判定手段は、上記異種対象判定手段が上記推定検出対象を上記推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することを特徴とする請求項1〜3の何れか1項に記載の画像処理装置。
【請求項5】
上記検出対象判定手段は、上記異種対象判定手段が上記推定検出対象を所定の種別の推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することを特徴とする請求項2または3に記載の画像処理装置。
【請求項6】
上記検出対象判定手段は、上記異種対象判定手段が、所定数の種別数の推定異種対象について、上記推定検出対象を上記推定異種対象であると判定した場合、当該推定検出対象を上記検出対象ではないと判定することを特徴とする請求項2、3または5に記載の画像処理装置。
【請求項7】
上記異種対象判定手段は、上記推定検出対象を上記推定異種対象であると判定した場合、推定異種対象毎に、当該推定異種対象が対応する異種対象である確度を示す異種対象確度を特定し、
上記検出対象判定手段は、各推定異種対象の異種対象確度を合計した合計値が所定の閾値以上の場合、上記推定検出対象を上記検出対象ではないと判定することを特徴とする請求項1〜3の何れか1項に記載の画像処理装置。
【請求項8】
上記検出対象検出手段は、上記推定検出対象を検出すると共に、当該推定検出対象が上記検出対象である確度を示す検出対象確度を特定し、
上記異種対象判定手段は、上記推定検出対象を上記推定異種対象であると判定した場合、推定異種対象毎に、当該推定異種対象が対応する異種対象である確度を示す異種対象確度を特定し、
上記検出対象判定手段は、各推定異種対象の異種対象確度と上記検出対象確度とに基づいて、上記推定検出対象が上記検出対象であるか否かを判定することを特徴とする請求項1〜3の何れか1項に記載の画像処理装置。
【請求項9】
上記検出対象判定手段は、上記推定異種対象毎に予め定められている所定の重み付け値を、各推定異種対象の異種対象確度にそれぞれ乗算し、乗算後の複数の異種対象確度に基づいて、上記推定検出対象が上記検出対象であるか否かを判定することを特徴とする請求項7または8に記載の画像処理装置。
【請求項10】
画像上における所定の主体の全部または一部である検出対象を検出する画像処理方法であって、
上記画像から上記検出対象と考えられる推定検出対象を検出する検出対象検出ステップと、
上記検出対象検出ステップにおいて検出された推定検出対象が、上記主体と種別が異なる主体の全部または一部である異種対象と考えられる推定異種対象であるか否かを判定する異種対象判定ステップと、
上記異種対象判定ステップの判定結果に基づいて、上記検出対象検出ステップにおいて検出された推定検出対象が、上記検出対象であるか否かを判定する検出対象判定ステップとを含むことを特徴とする画像処理方法。
【請求項11】
請求項1〜9の何れか1項に記載の画像処理装置を動作させるための制御プログラムであって、コンピュータを上記各手段として機能させるための制御プログラム。
【請求項12】
請求項11に記載の制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【公開番号】特開2013−65107(P2013−65107A)
【公開日】平成25年4月11日(2013.4.11)
【国際特許分類】
【出願番号】特願2011−202427(P2011−202427)
【出願日】平成23年9月15日(2011.9.15)
【出願人】(000002945)オムロン株式会社 (3,542)
【Fターム(参考)】
【公開日】平成25年4月11日(2013.4.11)
【国際特許分類】
【出願日】平成23年9月15日(2011.9.15)
【出願人】(000002945)オムロン株式会社 (3,542)
【Fターム(参考)】
[ Back to top ]