(57)【要約】【課題】三次元物体を、より効率的に検出する。【解決手段】三次元物体を検出する装置は、該三次元物体が対象物として含まれる画像から背景を除去して、前景画像領域を取得する前景取得手段と、該前景画像領域の中心線の所定の基準軸に対する傾きを算出する傾き算出手段と、該傾きに基づいて、前景画像領域から、検出領域を抽出する領域抽出手段と、該検出領域から、該物体を検出する物体検出手段と、を備える。中心線の傾きに基づいて、物体を検出すべき検出領域を抽出するので、物体が傾いている場合でも、該物体を排除することなく、検出領域を設定することができる。一実施例では、該傾きが所定値以上のとき、中心線に平行な線で、該検出領域を抽出する。【選択図】図４
2008146106.tif 000002
【特許請求の範囲】
【請求項１】
物体を検出するための装置であって、
三次元物体が対象物として含まれる画像から背景を除去して、前景画像領域を取得する前景取得手段と、
前記前景画像領域の中心線の所定の基準軸に対する傾きを算出する傾き算出手段と、
前記傾きに基づいて、前記前景画像領域から検出領域を抽出する領域抽出手段と、
前記検出領域から、前記物体を検出する物体検出手段と、
を備える、物体検出装置。
【請求項２】
さらに、前記前景画像領域内において、第１および第２の基準線となる画素行に存在する画素の数を２つに等分する位置を表す第１および第２の中央位置をそれぞれ求める中央位置算出手段と、
前記第１および第２の中央位置を結ぶ線を、前記中心線として求める中心線算出手段と、を備える、
請求項１に記載の物体検出装置。
【請求項３】
前記傾きが所定値以上のとき、前記領域抽出手段は、前記中心線に平行な線で前記前景画像領域を切り出すことにより、前記検出領域を抽出する、
請求項１または２に記載の物体検出装置。
【請求項４】
前記平行線は、前記中心線から左右にそれぞれ所定幅を持つよう設定される、
請求項３に記載の物体検出装置。
【請求項５】
さらに、前記画像内の対象物について、該対象物までの距離を取得する距離取得手段を備え、
前記傾きが前記所定値以上の時、前記領域抽出手段は、前記左右の幅のうち、左方向の幅と右方向の幅との相対的な大きさを、前記中心線に対して左側の画像領域に含まれる対象物についての距離と、該中心線に対して右側の画像領域の対象物についての距離との相対的な大きさに基づいて設定する、
請求項４に記載の物体検出装置。
【請求項６】
前記領域抽出手段は、前記左側の画像領域の対象物についての距離が、前記右側の画像領域の対象物についての距離より短ければ、前記左方向の幅を前記右方向の幅より大きくし、前記右側の画像領域の対象物についての距離が、前記左側の画像領域の対象物についての距離より短ければ、前記右方向の幅を前記左方向の幅より大きくする、
請求項５に記載の物体検出装置。
【請求項７】
前記傾きが所定値より小さいとき、前記領域抽出手段は、前記第１および第２の中央位置のうちの一方から左右にそれぞれ同じ幅を持つよう設定された垂直線で前記前景画像領域を切り出すことにより、前記検出領域を抽出する、
請求項２に記載の物体検出装置。
【請求項８】
前記左方向の幅と前記右方向の幅の合計が、前記前景画像領域の最大幅に対する所定の割合になるよう、該左方向の幅および右方向の幅が設定される、
請求項４から７のいずれかに記載の物体検出装置。
【請求項９】
さらに、
前記画像内の対象物について、該対象物までの距離値を画素ごとに取得する距離取得手段と、
前記中心線上にある画素の前記距離値に基づいて、それぞれの画素行の基準距離値を表す第２の中心線を算出する第２の中心線算出手段と、
前記検出領域におけるそれぞれの画素行について、前記第２の中心線から前記基準距離値を求め、該基準距離値に対して第１の所定範囲外にある距離値を持つ画素を、該画素行から除去する第１の除去手段と、を備え、
前記第１の除去手段による除去は、水平方向の所定範囲について行われる、
請求項１から８のいずれかに記載の物体検出装置。
【請求項１０】
前記第２の中心線算出手段は、前記第１の基準行に含まれる画素の前記距離値を平均した距離値と、前記第２の基準行に含まれる画素の前記距離値を平均した距離値とに基づいて、前記第２の中心線を算出する、
請求項９に記載の物体検出装置。
【請求項１１】
前記第２の中心線算出手段は、前記第１の中央位置にある画素の前記距離値と、前記第２の中央位置にある画素の前記距離値とに基づいて、前記第２の中心線を算出する、
請求項９に記載の物体検出装置。
【請求項１２】
前記第１の所定範囲は、前記水平方向の所定範囲において前記中心線から離れるに従って小さくなるよう設定される、
請求項９から１１のいずれかに記載の物体検出装置。
【請求項１３】
前記第１の所定範囲は、前記第２の中心線に対し、距離値が増える方向に第１の幅を持ち、距離値が減る方向に第２の幅を持つよう設定され、該第１の幅は、該第２の幅より大きい、
請求項９から１２のいずれかに記載の物体検出装置。
【請求項１４】
前記水平方向の所定範囲は、前記検出領域の所定の中央領域外に設定される、
請求項９から１３のいずれかに記載の物体検出装置。
【請求項１５】
さらに、
前記所定の中央領域において、前記検出領域におけるそれぞれの画素行について、該画素行の前記基準距離値に対して第２の所定範囲外にある距離値を持つ画素を、該画素行から除去する第２の除去手段を備える、
請求項１４に記載の物体検出装置。
【請求項１６】
前記第２の所定範囲は、前記第１の所定範囲より大きいよう設定される、
請求項１５に記載の物体検出装置。
【請求項１７】
さらに、
前記検出領域の所定の下部領域に、凹部が形成されているかどうかを検出する凹部検出手段と、
前記凹部が検出されたならば、画素から成る線分で該凹部を閉じる手段と、
前記検出領域内に、穴があるかどうかを検出する手段と、
前記穴が検出されたならば、所定の距離値を持つ画素で該穴を埋める手段と、
を備える、請求項１から１６のいずれかに記載の物体検出装置。
【請求項１８】
前記凹部検出手段は、さらに、
前記中心線により前記検出領域を２分した領域のそれぞれにおいて、垂直方向における最下点を求める手段と、
前記求めた２つの最下点を結ぶ線分の中点と、該中点から所定の高さに位置する点との間の領域に、画素が存在するかどうかを判断する手段と、
を備える、請求項１７に記載の物体検出装置。
【請求項１９】
前記所定の距離値は、前記検出領域に含まれる画素の距離値を平均した平均距離値である、
請求項１７または１８に記載の物体検出装置。
【請求項２０】
さらに、前記画像内の対象物について、該対象物までの距離値を取得する距離取得手段と、
前記前景画像領域を細分した各領域について、前記距離値を表すグレースケール値を算出し、該各領域が対応する該グレースケール値を持つグレースケール画像を生成する手段と、を備え、
前記領域抽出手段は、前記グレースケール画像から、前記検出領域を抽出し、
さらに、前記三次元物体をモデル化したモデルを記憶するモデル記憶手段と、
前記モデルと前記検出領域中の画像領域との類似度を表す相関値を算出する手段と、を備え、
前記物体検出手段は、前記モデルと最も高い相関値を持つ画像領域を、前記検出領域において検出することにより、前記三次元物体を検出する、
請求項１から１９のいずれかに記載の物体検出装置。
【請求項２１】
前記三次元物体は人間の頭部である、
請求項１から２０のいずれかに記載の物体検出装置。
【請求項２２】
前記検出される人間の頭部は、車両に乗車している人間の頭部である、
請求項２１に記載の物体検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、三次元物体を検出する装置に関する。
【背景技術】
【０００２】
従来、三次元物体を検出する様々な手法が提案されている。たとえば、下記の特許文献１には、マトリックス型赤外線センサの出力から得られた熱画像の温度データから、第１および第２のしきい値を用いて、乗員の人体部分および顔面位置を抽出する手法が記載されている。下記の特許文献２には、撮像装置により得られた画像を、距離データに応じてグループ化し、それぞれのグループに細線化処理を施し、線状度合いの高い画像部分が円形または楕円形に近似されるならば、人間の頭部であると判定する手法が記載されている。
【０００３】
下記の非特許文献１の手法によると、画像の前景部分の中心線を求め、下から３分の１の点を重心Ｃｆｇとし、左右等間隔にαで垂直に切り出す。切り出した領域において、再度中心線を求める。該中心線の傾きを求め、該傾きに沿ってＴ状エッジフィルタを用い、肩の位置を求める。２次曲線で近似した肩形状と中心線との交差点を、首位置とする。首より上の部分を、頭部として検出する。
【特許文献１】特開平１０−３１５９０８号公報
【特許文献２】特開２００３−２８１５５１号公報
【非特許文献１】Daniel B. Russakoff, Martin Herman, “Head tracking using stereo”, Machine Vision and Applications, 2002
【発明の開示】
【発明が解決しようとする課題】
【０００４】
所望の物体をより良好な精度で検出するために、また計算負荷を低減するために、該物体を検出すべき領域を該画像内において特定するのが望ましい。該領域が画像内で限定できれば、該領域内から物体を良好な精度で検出することができると共に、画像全体を処理対象としなくてもよい。上記の非特許文献１のような手法では、中心線に対し、左右等間隔に垂直方向に画像を切り出し、該切り出した画像を処理対象として、人間の頭部を検出する。このような手法によると、垂直方向に画像を一律に切り出すので、検出すべき物体の傾きが大きいとき、切り出された画像から該物体の一部が排除されるおそれがあり、よって物体を正確に検出することができないおそれがある。
【０００５】
したがって、物体の傾きが大きい場合でも、計算負荷を低減しつつ、物体をより正確に検出することのできる手法が必要とされている。
【課題を解決するための手段】
【０００６】
この発明の一つの側面によると、三次元物体を検出する装置は、三次元物体が対象物として含まれる画像から背景を除去して、前景画像領域を取得する手段と、該前景画像領域の中心線（ＣＬ）の所定の基準軸に対する傾き（ｋ）を算出する手段と、該傾きに基づいて、該前景画像領域から検出領域を抽出する手段と、該検出領域から、物体を検出する手段と、を備える。
【０００７】
この発明によれば、検出すべき物体が傾いている場合でも、該傾きに応じた検出領域を抽出するので、検出すべき物体を排除することなく、該検出領域を最適に抽出することができる。ここで、三次元物体が対象物として含まれる画像は、撮像装置によって得られることができる。代替的に、対象物までの距離を計測する距離計測装置により得られる画像でもよい。
【０００８】
この発明の一実施形態によると、前景画像領域内において、第１および第２の基準線（Ｌａ，Ｌｂ）となる画素行に存在する画素の数を２つに等分する位置を表す第１および第２の中央位置（Ｍａ，Ｍｂ）をそれぞれ算出し、該第１および第２の中央位置を結ぶ線を、上記中心線として求める。こうして、前景画像領域を二分するよう求めた中心線の傾きを用いることにより、物体の傾きに沿って検出領域を抽出することができる。
【０００９】
この発明の一実施形態によると、上記傾きが所定値以上のとき、検出領域は、上記中心線に平行な線（ＰＬ１，ＰＬ２）で抽出される。前景領域の中心線に対して平行に検出領域が抽出されるので、検出すべき物体の傾きが大きい場合でも、該物体を排除することなく検出領域を抽出することができる。
【００１０】
この発明の一実施形態によると、平行線は、中心線から左右にそれぞれ所定幅を持つよう設定される。一実施形態では、傾きが所定値より大きいとき、左右の幅のうち、左方向の幅（Ａ）と右方向の幅（Ｂ）との相対的な大きさを、中心線に対して左側の画像領域に含まれる対象物についての距離と、該中心線に対して右側の画像領域の対象物についての距離との相対的な大きさに基づいて設定することができる。また、一実施形態では、傾きが所定値より小さいとき、第１および第２の中央位置のうちの一方から左右にそれぞれ同じ幅を持つよう設定された垂直線（ＶＬ１，ＶＬ２）で前景画像領域を切り出すことにより、検出領域が抽出される。さらに、一実施形態では、左方向の幅と右方向の幅の合計が、前景画像領域の最大幅に対する所定の割合になるよう、該左方向の幅および右方向の幅が設定される。
【００１１】
こうして、物体の大きさおよび姿勢により適するよう、検出領域を抽出することができる。たとえば、大人の頭部と子供の頭部は大きさが異なるが、それぞれに適した幅を持つよう検出領域を抽出することができる。また、人物の撮像装置に対する向きに適した大きさになるよう、検出領域を抽出することができる。
【００１２】
この発明の一実施形態によると、さらに、画像内の対象物について、該対象物までの距離値を画素ごとに取得する手段と、中心線上にある画素の距離値に基づいて、それぞれの画素行の基準距離値（Ｄ）を表す第２の中心線（ＣＤ）を算出する手段と、検出領域におけるそれぞれの画素行について、第２の中心線から基準距離値を求め、該基準距離値に対して第１の所定範囲外（Ｄ±ｚ１）にある距離値を持つ画素を、該画素行から除去する第１の除去手段と、を備える。該除去は、水平方向の所定範囲について行われる。
【００１３】
この発明によれば、たとえば物体を誤検出する可能性のある領域を、検出領域から除去することができる。たとえば、物体が頭部であるとき、このような距離方向の限定により、腕領域を除去することができる。
【００１４】
この発明の一実施形態では、第２の中心線は、第１の基準行に含まれる画素の距離値を平均した距離値と、第２の基準行に含まれる画素の距離値を平均した距離値とに基づいて算出される。代替的に、第２の中心線は、第１の中央位置にある画素の距離値と、第２の中央位置にある画素の距離値とに基づいて算出される。こうして、第２の中心線は、距離方向における物体の中心を表すよう算出されることができる。
【００１５】
この発明の一実施形態によると、上記第１の所定範囲は、水平方向の所定範囲において中心線から離れるに従って小さくなるよう設定される（図１０の（ｄ））。こうして、物体の形状に沿うよう第１の所定範囲を設定することができる。
【００１６】
この発明の一実施形態によると、上記第１の所定範囲は、第２の中心線に対し、距離値が増える方向に第１の幅（ｚ３）を持ち、距離値が減る方向に第２の幅（ｚ４）を持つよう設定され、該第１の幅は、該第２の幅より大きい。
【００１７】
この発明の一実施形態によると、上記の水平方向の所定範囲は、検出領域の所定の中央領域外に設定される。こうして、物体の中央部分については、第１の除去手段による除去を行うことなく保存することができる。
【００１８】
この発明の一実施形態によると、上記所定の中央領域においては、検出領域におけるそれぞれの画素行について、該画素行の上記基準距離値に対して第２の所定範囲外（Ｄ±ｚ２）にある距離値を持つ画素を、該画素行から除去する第２の除去手段を備える。一実施例では、第２の所定範囲は、第１の所定範囲より大きいよう設定される。
【００１９】
この発明によれば、第２の所定範囲においては、第１の除去手段とは異なるしきい値で除去を実現し、物体の誤検出を回避することができる。たとえば、検出すべき物体が頭部であるとき、第２の除去手段で、乗員が前に抱えた荷物に対応する領域を除去することができ、該荷物領域において頭部が誤検出されることを回避することができる。
【００２０】
この発明の一実施形態によると、さらに、検出領域の所定の下部領域に、凹部が形成されているかどうかを検出する凹部検出手段と、凹部が検出されたならば、画素から成る線分で閉じる手段と、検出領域内に、穴があるかどうかを検出する手段と、穴が検出されたならば、所定の距離値を持つ画素で該穴を埋める手段と、を備える。
【００２１】
凹部があると、凹部の周辺領域で物体が誤検出されるおそれがある。この発明によれば、凹部が閉じられて穴が形成され、該穴が埋められるので、このような誤検出を回避することができる。
【００２２】
一実施形態においては、中心線により検出領域を２分した領域のそれぞれにおいて、垂直方向における最下点（Ｔａ，Ｔｂ）を求め、該２つの最下点を結ぶ線分の中点（Ｔｍ）と、該中点から所定の高さに位置する点との間の領域に、画素が存在するかどうかを判断することにより、凹部を検出する。
【００２３】
この発明の一実施形態によると、さらに、画像内の対象物について、該対象物までの距離値を取得する手段と、上記前景画像領域を細分した各領域について、該距離値を表すグレースケール値を算出し、該各領域が対応するグレースケール値を持つグレースケール画像を生成する手段と、を備える。上記領域抽出手段は、該グレースケール画像から、上記検出領域を抽出する。さらに、三次元物体をモデル化したモデルを記憶する記憶手段と、該モデルと該検出領域中の画像領域との類似度を表す相関値を算出する手段とが設けられる。該モデルと最も高い相関値を持つ画像領域を検出領域において検出することにより、三次元物体を検出する。
【００２４】
この発明によれば、限定された検出領域に対してモデルを相関させるので、計算量を軽減しつつ、物体をより正確に検出することができる。三次元物体を二次元の画像処理で検出するので、計算量を、より低減することができる。
【発明を実施するための最良の形態】
【００２５】
次に図面を参照してこの発明の実施の形態を説明する。図１は、この発明の一実施形態に従う、物体検出装置１の構成を示す。
【００２６】
この実施形態は、物体検出装置１が車両に搭載されており、乗員の頭部を検出する形態について示す。しかしながら、この物体検出装置が、この形態に限定されない点に注意されたい。これについては、後述される。
【００２７】
光源１０は、シート（座席）に座っている乗員の頭部を照射することができるよう車両内に配置される。一例では、シートの前方上部に配置される。
【００２８】
照射される光は、好ましくは近赤外光（ＩＲ光）である。一般に、撮影するときの明るさは、日中や夜間などの環境変化によって変動する。また、強い可視光が１方向から顔にあたると、顔面上に陰影のグラデーションが発生する。近赤外光は、この様な照明の変動や陰影のグラデーションに対してロバスト性を有する。
【００２９】
この実施例では、光源１０の前面にパターンマスク（フィルタ）１１を設け、乗員に対して格子状のパターン光があたるようにする。パターン光により、後述する視差の算出を、より正確なものにすることができる。これについては、後述される。
【００３０】
一対の撮像装置１２および１３は、乗員の頭部の近くであって、該乗員の頭部を含む２次元画像を撮像するよう配置される。撮像装置１２および１３は、左右、上下または斜めに所定距離だけ離れるよう配置される。撮像装置１２および１３は、光源１０からの近赤外光だけを受光するように光学バンドパスフィルターを有する。
【００３１】
処理装置１５は、例えば、種々の演算を実行するＣＰＵ、プログラムおよびデータを記憶するメモリ、データの入出力を行うインタフェース等を備えるマイクロコンピュータにより実現される。以上のことを考慮して、図１では、処理装置１５を機能ブロックで表している。これら各機能ブロックの一部または全部を、ソフトウェア、ファームウェア、およびハードウェアの任意の組み合わせで実現することができる。一例では、処理装置１５は、車両に搭載される車両制御装置（ＥＣＵ）により実現される。ＥＣＵは、ＣＰＵを備えるコンピュータであり、車両の様々な制御を実現するためのコンピュータプログラムおよびデータを格納するメモリを備えている。
【００３２】
視差画像生成部２１は、撮像装置１２および１３により撮像された２つの画像に基づいて、視差画像を生成する。
【００３３】
ここで、図２を参照して、視差を算出する手法の一例を簡単に述べる。撮像装置１２および１３は、それぞれ、二次元に配列された撮像素子アレイ３１および３２と、レンズ３３および３４を備える。撮像素子は、たとえば、ＣＣＤ素子またはＣＭＯＳ素子である。
【００３４】
撮像装置１２と１３の間の距離（基線長）が、Ｂで表されている。撮像素子アレイ３１および３２は、それぞれ、レンズ３３および３４の焦点距離ｆに配置されている。レンズ３３および３４のある平面から距離Ｌにある対象物の像が、撮像素子アレイ３１ではレンズ３３の光軸からｄ１ずれた位置に形成され、撮像素子アレイ３２ではレンズ３４の光軸からｄ２だけずれた位置に形成される。距離Ｌは、三角測量法の原理により、Ｌ＝Ｂ・ｆ／ｄで求められる。ここで、ｄが視差であり、ｄ＝ｄ２−ｄ１である。
【００３５】
視差ｄを求めるために、撮像素子アレイ３１の或るブロックに対し、該ブロックと同じ対象物部分が撮像されている対応ブロックを、撮像素子アレイ３２上で探索する。ブロックの大きさは、任意に設定することができ、たとえば、１画素でもよいし、複数の画素（たとえば、７×７画素）を１つのブロックとしてもよい。
【００３６】
一手法によると、撮像装置１２および１３の一方で得られる画像のブロックを、撮像装置１２および１３の他方で得られる画像に対して走査させ、対応ブロックを探索する（ブロックマッチング）。一方のブロックの輝度値（たとえば、ブロック中の画素の輝度値を平均したもの）と他方のブロックの輝度値との差の絶対値を求め、これを相関値とする。相関値が最小となるブロックを見つけ、この時の２つのブロック間の距離が、視差ｄを示す。代替的に、他の手法を用いて該探索処理を実現してもよい。
【００３７】
輝度値に変化がないブロックがあると、ブロック同士をマッチングすることが困難になるが、上記のパターン光により、このようなブロック中に輝度値の変化を起こさせることができ、よって、ブロックマッチングをより正確に実現することができる。
【００３８】
撮像装置１２および１３の一方から得られた撮像画像において、それぞれのブロックについて算出された視差値は、該ブロックに含まれる画素値に対応づけられ、これを視差画像とする。視差値は、その画素に撮像されている対象物の、撮像装置１２および１３に対する距離を表している。視差値が大きいほど、該対象物の位置は、撮像装置１２および１３に近い。
【００３９】
背景除去部２２は、こうして得られた視差画像から、背景領域を除去し、前景領域を抽出する。背景領域と前景領域のこのような分離には、任意の適切な手法を用いることができる。
【００４０】
この実施例では、メモリ２３に、図３の（ａ）に示されるように、背景を撮像した画像から生成された視差画像が予め記憶されている。この例では、人物が存在していない状態（すなわち、空席）を撮像した画像を、背景画像としている。画像領域４２はシートを示し、画像領域４３は、該シートのさらに背景を示す。該空席時の視差画像は、上記と同様の手法で生成されることができる。このような空席時の視差画像と、図３の（ｂ）に示されるような、乗員がシートに座っている時に生成された視差画像とを比較すると、乗員を撮像した領域４１の視差値が異なる。したがって、所定値以上異なる視差値を持つ画素を抽出することにより、図３の（ｃ）に示されるように、乗員領域４１を、前景領域として抽出することができる。
【００４１】
空席時の視差画像は、シートの位置および傾きに従い変化する。メモリ２３に、シートの位置および傾きに応じて複数の空席時の視差画像を記憶しておくことができる。車両には、シートの位置および傾きを検知するセンサ（図示せず）が設けられている。背景除去部２２は、該センサにより検知されたシートの位置および傾きに従って、メモリ２３から、対応する空席時の視差画像を読み出し、これを用いて背景を除去することができる。こうすることにより、シートの位置および（または）傾きが変更された場合にも、背景除去部２２により、より正確に前景領域を抽出することができる。
【００４２】
正規化部２４は、乗員領域４１について、正規化を実行する。この正規化により、撮像装置１１，１２からの距離に従って、該乗員領域の各画素にグレースケール値が割り当てられる。正規化は、式（１）に従って行われる。
【数１】
2008146106.tif 000003
【００４３】
ここで、撮像画像の水平（横）方向をｘ座標、垂直（縦）方向をｙ座標に設定すると、ｄ（ｘ，ｙ）は、乗員領域４１のｘｙ位置における視差値を示す。Ｎは、グレースケールのビット数である。一例では、Ｎ＝９であり、０〜５１１のグレースケール値を持つ５１２階調が実現される。０は黒であり、５１１は白である。ｄ’（ｘ，ｙ）は、乗員領域４１のｘｙ位置について算出されるグレースケール値を示す。視差の最大値ｄｍａｘは、撮像装置からの距離の最小値に対応し、視差の最小値ｄｍｉｎは、撮像装置からの距離の最大値に対応する。
【００４４】
式（１）に示されるように、正規化は、最大の視差値ｄｍａｘに対応する画素には、最も高いグレースケール値（この例では、白）を割り当て、視差値ｄが小さくなるほど、グレースケール値を徐々に低くする。言い換えれば、距離の最小値に対応する画素には、最も高いグレースケール値を割り当て、撮像装置に対する距離が大きくなるほど、グレースケール値を徐々に低くする。こうして、撮像装置に対する距離を表すグレースケール値を各画素が有するグレースケール画像が、乗員領域４１から生成される。
【００４５】
検出領域抽出部２５は、上記のグレースケール画像から、頭部を検出すべき領域を抽出する。これにより、頭部を検出するために処理すべき領域が限定されるので、より正確に頭部を検出することができると共に、計算負荷をより低減することができる。検出領域抽出部２５の詳細な処理は、後述される。
【００４６】
メモリ２６（これは、メモリ２３と同じメモリでよい）は、人間の頭部をモデル化した頭部モデルを記憶する。相関部２７は、検出領域抽出部２５により抽出された検出領域に対して、頭部モデルを走査し、走査領域と頭部モデルの相関値を計算する。相関値の最も大きい走査領域を、頭部領域と判断する。こうして、検出された頭部領域の位置および大きさから、頭部の物理的な位置および大きさを求めることができる。
【００４７】
図４は、本願発明の一実施形態に従う、検出領域抽出部２５により実行される処理のフローチャートである。この処理を、図５〜図７を参照しつつ、説明する。
【００４８】
図５の（ａ）は、乗員が正常に着座している状態を撮像した画像に基づいて生成されたグレースケール画像を示し、（ｂ）は、乗員が、身体を傾けて着座している状態を撮像した画像に基づいて生成されたグレースケール画像を示す。説明をわかりやすくするため、ｘおよびｙ座標が設定された撮像画像の枠が示されているが、撮像画像中、符号４５により示される背景領域は、背景除去部２２により既に除去されている点に注意されたい。また、符号４６により示される乗員領域は、図では白色で示されているが、実際には、この領域がグレースケール画像である点に注意されたい。グレースケール画像４６の底部のｙ座標をｙ１とし、頂部のｙ座標をｙ２とする。
【００４９】
図４のステップＳ１において、グレースケール画像４６の上部と下部に、それぞれ基準となる画素行（基準行と呼ぶ）を設定する。この例では、頂部から１／５（すなわち、（ｙ２−ｙ１）×４／５）の所の画素行が第１の基準行Ｌａに設定され、頂部から４／５（すなわち、（ｙ２―ｙ１）×１／５）の所の画素行が第２の基準行Ｌｂに設定される。これらの基準行は、ｘｙ平面において乗員（頭部〜胴体）の中心を表す中心線を決定するための行であるので、この実施例に示すように、好ましくは、グレースケール画像の上部および下部のそれぞれを通過するよう設定される。
【００５０】
さらに、第１の基準行Ｌａに含まれる画素の数を２つに等分する位置を表す中央位置Ｍａを算出する。ここで図６を参照すると、一例として、基準行Ｌａに存在する画素の配置が示されている。網掛けされた部分が、画素が存在する個所である。ここで、画素が存在するとは、好ましくは、適切な視差値が得られた画素（有効画素と呼ばれることができる）が存在することを示している。ｘａ１およびｘａ２は、第１の基準行Ｌａがグレースケール画像４６のエッジを横切る座標である。（ａ）の例では、ｘａ１からｘａ２の範囲が画素で満たされているので、中央位置Ｍａのｘ座標は（ｘａ２―ｘａ１）／２で表される。（ｂ）では、符号４８および４９に示すように、有効画素が存在しない部分が存在する。この場合、中央位置Ｍａのｘ座標は（ａ）とは異なる位置となる。画素行の総有効画素数を２つに等分する位置を求めることにより、中央位置を、該画素行の重心を表す所に位置付けることができる。
【００５１】
同様に、第２の基準行Ｌｂに存在する有効画素の総数を２つに等分する位置を表す中央位置Ｍｂを算出する。図６の（ａ）のような配置の時には、中央位置Ｍｂのｘ座標は（ｘｂ２―ｘｂ１）／２と表される。図５の（ａ）および（ｂ）には、こうして特定された中央位置ＭａおよびＭｂが示されている。
【００５２】
ステップＳ２において、中央位置Ｍａおよび中央位置Ｍｂを結ぶ直線を中心線ＣＬに設定し、ｙ軸に対する中心線ＣＬの傾きｋを算出する。傾きｋは、（中央位置Ｍａのｘ座標―中央位置Ｍｂのｘ座標）／（中央位置Ｍａのｙ座標―中央位置Ｍｂのｙ座標）により算出されることができる。傾きｋを、角度により表してもよい。
【００５３】
代替的に、複数の画素行（上記の基準行を含んでもよいし含まなくてもよい）の中央位置を上記のような手法で求め、一次近似手法で中心線ＣＬを決定して、その傾きを算出してもよい。図７には、このような複数の画素行で求められた中央位置がプロットされている。これらの中央位置を、任意の適切な手法で一次近似することにより、中心線ＣＬを求めることができる。
【００５４】
ステップＳ３において、中心線の傾きｋの絶対値が、所定値Ｔより小さいかどうかを判断する。ここで、図５の（ａ）は、傾きｋの絶対値が該所定値Ｔより小さい場合を示す。図５の（ｂ）は、傾きｋの絶対値が該所定値Ｔ以上である場合を示す。図から明らかなように、人物が正常に着座している時には、算出される傾きｋが所定値Ｔより小さくなり、人物が傾いて座っている時には、算出される傾きｋが所定値Ｔ以上となる。
【００５５】
代替的に、中心線ＣＬのｘ軸に対する傾きを用いてもよい。この場合、傾きが所定値より大きいとき、人物が正常に着座していると判断され、傾きが所定値以下であるとき、人物が傾いて座っていると判断される。
【００５６】
傾きｋの絶対値が所定値Ｔより小さい場合、ステップＳ４に進む。図５の（ｃ）に示すように、中央位置Ｍｂに対して左右にそれぞれ同じ幅Ａを有するよう、ｘ軸に対して垂直な第１および第２の垂直線ＶＬ１およびＶＬ２を設定する。該垂直線ＶＬ１およびＶＬ２により、グレースケール画像４６を切り出し、検出領域４７を抽出する。
【００５７】
この例では、“２×Ａ”が、グレースケール画像４６の最大幅の所定割合（たとえば、８０％）となるよう、幅Ａが設定される。ここで、グレースケール画像４６の最大幅は、たとえば符号５１（図５の（ａ））により示されている。最大幅は、各画素行を走査して、グレースケール画像４６の左端エッジと右端エッジの間の長さの最大値を求めることにより得られる。
【００５８】
こうして、傾きｋが小さい時には、乗員がほとんど傾くことなく正常に着座していると判断することができるので、下方にある（すなわち、胴体側にある）中央位置Ｍｂを中心として同じ幅を持つ領域を垂直に切り出すことにより、頭部を含むよう検出領域４７を抽出することができる。
【００５９】
一方、ステップＳ３において、傾きｋの絶対値が所定値Ｔ以上である時、ステップＳ５に進む。図５の（ｄ）に示すように、グレースケール画像４６の頂部から１／２の所の画素行を、第３の基準行Ｌｃとして特定する。さらに、第１および第２の基準行の場合と同様に、第３の基準行Ｌｃについて、該第３の基準行Ｌｃに存在する有効画素の総数を２つに等分する中央位置Ｃを求める。
【００６０】
ステップＳ６において、中央位置Ｃを基準として、左右それぞれに幅ＡおよびＢを有するよう、中心線ＣＬに対して平行な第１および第２の線ＰＬ１およびＰＬ２を設定する。該第１の平行線ＰＬ１および第２の平行線ＰＬ２により、グレースケール画像４６を切り出して、検出領域４７を抽出する。
【００６１】
左側の切り出し幅Ａおよび右側の切り出し幅Ｂの相対的な大きさは、好ましくは、乗員の右半身と左半身の撮像装置に対する距離に応じて決定される。すなわち、乗員が撮像装置に対して身体を傾けている時、乗員の左半身および右半身のうち、一方は他方に対して撮像装置に対する距離が近くなる場合がある。距離が短い方は大きく撮像され、距離が遠い方は小さく撮像される。したがって、左半身と右半身のうち、距離が近い方の切り出し幅を、距離が遠い方の切り出し幅より大きくするのが好ましい。
【００６２】
図５の（ｂ）の例では、乗員から向かって右方向から撮像されており、乗員の右半身が左半身より撮像装置に近い。よって、Ａ＞Ｂと設定される。ＡとＢの比率を、予め決めておくことができる。一実施例では、Ａ＋Ｂが、グレースケール画像４６の最大幅の８０％であり、かつ、Ａ：Ｂ＝３：２となるよう設定される。乗員から向かって左方向から撮像する場合には、Ａ＜Ｂと設定されることとなり、たとえば、Ａ：Ｂ＝２：３と設定される。最大幅は、前述したように決定されることができる。
【００６３】
なお、ここで挙げた数値は、頭部を除去することなく検出領域を限定することができる値として、発明者が経験上得た値の一例であり、よって、これらの数値に限定されない点に注意されたい。代替的に、左右の幅を同じに設定してもよい。
【００６４】
右半身と左半身のどちらが撮像装置に近いかは、任意の手法で判断することができる。前述したように、グレースケール画像中の各画素のグレースケール値は、距離を表している。したがって、たとえば、中心線より右側の領域に含まれる画素のグレースケール値の平均値と、中心線より左側の領域に含まれる画素のグレースケール値の平均値とを比較することにより、右半身と左半身のどちらが撮像装置に近いかを、判断することができる。
【００６５】
こうして、傾きｋが大きい場合でも、中心線ＣＬに平行なラインで切り出すことにより、頭部を排除することなく検出領域４７を抽出することができる。また、撮像装置に対して、左半身および右半身のどちらが傾いているかに従って、切り出し幅を左右で不均等にすることにより、人物の姿勢により適合した検出領域を抽出することができ、計算負荷を軽減することができる。
【００６６】
ここで図８を参照すると、片腕を頭部の側面に挙げた人物の一例がグレースケール画像４６として取得された場合を模式的に示している。前述したように、ｘｙ平面において、平行線ＰＬ１およびＰＬ２によって検出領域４７を切り出す様子が示されている。頭部を確実に検出領域４７に含めるよう、前述したようにＡおよびＢを大きめに設定すると、図に示されるように、腕領域が検出領域に含まれるおそれがある。このように挙げた腕（またはその一部）の領域が検出領域に含まれると、後述する相関処理において、該腕領域において頭部が誤検出されるおそれがある。これを回避するために、ＡおよびＢを、Ａ’およびＢ’に示すように狭くすると、平行線ＰＬ１およびＰＬ２により、頭部の一部が、符号５２に示すように検出領域から排除されるおそれがある。
【００６７】
本願発明の一実施形態では、このような検出すべき物体（この例では、頭部）の過除去を回避するため、ＡおよびＢは、前述したように広め（たとえば、最大幅の８０％）に設定し、結果として検出領域に含まれてしまうおそれのある不要領域（この例では、腕領域）を除去する手法を、さらに提案する。すなわち、ｘｙ平面において上記のように抽出された検出領域４７に対し、図９に示される処理を実行して、検出領域４７をさらに距離方向（ｚ方向）に限定する。
【００６８】
このｚ方向の限定処理を、図１０を参照しながら説明する。この手法の意図を明瞭にするため、図１０の（ａ）には、図５とは異なる画像例が用いられており、両腕を頭部の両側に挙げた人物のグレースケール画像４６が模式的に示されている。この例では、傾きｋが所定値以上であるので、グレースケール画像４６は、平行線ＰＬ１およびＰＬ２により切り出される。幅ＡおよびＢは３：２に設定されており、Ａ＋Ｂは、グレースケール画像４６の最大幅の８０％である。
【００６９】
それぞれの画素行について、平行線ＰＬ１およびＰＬ２と該画素行との交点を、それぞれＸＢおよびＸＡとする。中心線ＣＬと平行線ＰＬ１の間の中央を通るよう線ＱＬ１が設定され、中心線ＣＬと平行線ＰＬ２の間の中央を通るよう線ＱＬ２が設定される。それぞれの画素行と、線ＱＬ１および線ＱＬ２との交点を、それぞれＸｂおよびＸａとする。図には、中心線上ＣＬ上の点Ｍを通る画素行についてのＸＢ、Ｘｂ、ＸａおよびＸＡが示されている。
【００７０】
グレースケール画像４６内のそれぞれの画素は、距離を表すグレースケール値（以下、距離値とも呼ばれる）を有している。中央位置Ｍａが存在する第１の基準行Ｌａに含まれる画素の距離値を平均し、該平均距離値を、中央位置Ｍａに対応する距離値とする。同様に、中央位置Ｍｂが存在する第２の基準行Ｌｂに含まれる画素の距離値を平均し、該平均距離値を、中央位置Ｍｂに対応する距離値とする。図１０の（ｂ）に示すように、中央位置ＭａおよびＭｂのｙ座標と、ＭａおよびＭｂに対応する上記距離値（ｚ座標で表される）を、ｙｚ平面においてプロットして、該プロットしたＭａおよびＭｂを結び、中心線ＣＤを求める（図９のステップＳ１１）。中心線ＣＤは、一次式により表されることができる。
【００７１】
ステップＳ１２において、グレースケール画像４６の頂部から底部に向かって、画素行を走査する。ステップＳ１３において、画素行ごとに、該画素行の基準距離値Ｄを、中心線ＣＤから算出する。具体的には、該画素行のｙ座標値を、中心線ＣＤを表す一次式に代入することにより、該画素行の基準距離値Ｄを算出することができる。図には、点Ｍを通る画素行についての基準距離値Ｄが示されている。
【００７２】
ステップＳ１４において、それぞれの画素行の（ＸＢ〜Ｘｂ）の間および（Ｘａ〜ＸＡ）の間において、第１の所定範囲（Ｄ±ｚ１）外の距離値を持つ画素を、該画素行から除去する（第１の除去）。第１の所定範囲は、第１の除去で残すべき領域の対象物の厚みを考慮して設定される。
【００７３】
図１０の（ｂ）には、点Ｍについて算出された第１の所定範囲が示されている。Ｄ−ｚ１の点を通るよう、中心線ＣＤに平行な線ＤＬ２が設定され、Ｄ＋ｚ１の点を通るよう、中心線ＣＤに平行な線ＤＬ１が設定されている。また、図１０の（ｃ）は、線ＤＬ１およびＤＬ２を、ｘｚ平面上に表しており、端的に言えば、除去する領域を上から見た図である。これらの図からわかるように、ｘ方向のＸＢ〜Ｘｂの範囲において、線ＤＬ１、ＤＬ２およびＰＬ１で囲まれた画素は残され、それ以外の画素は除去される。同様に、ｘ方向のＸａ〜ＸＡの範囲において、線ＤＬ１、ＤＬ２およびＰＬ２で囲まれた画素は残され、それ以外の画素は除去される。
【００７４】
この第１の除去の技術的意義を説明する。中心線ＣＬは、前述したように、ｘｙ平面における人物（頭部〜胴体）の中心を表す線と考えられる。線ＱＬ１およびＱＬ２の間の領域は、人物の中央部分に相当する。一方、線ＱＬ１およびＱＬ２の外側の領域は、図１０の（ａ）に示すように、腕を含む領域である。第１の除去の目的の１つは、図８を参照して説明したように、このような腕領域を検出領域４７から除去することである。
【００７５】
この目的を達成するため、まず、頭部および胴体の中央部分を表すＱＬ１〜ＱＬ２の領域を保存しつつ、ＱＬ１およびＱＬ２の外側の領域において除去を行う。第１の所定範囲（Ｄ±ｚ１）は、頭部〜胴体の厚みを反映した範囲であるので、第１の除去により、該頭部〜胴体の範囲に収まらない距離値を持つ画素が除去される。通常、腕を挙げると、挙げた腕は頭部より前面に出ることが多いが、このような腕の領域を除去することができる。この例では、第１の所定範囲Ｄ±ｚ１は、胴体の厚みを考慮して５０ｃｍである。こうして、図１０の（ａ）のような、腕に対応する領域を検出領域４７から除去することができる。
【００７６】
図９に戻り、ステップＳ１５において、さらに、それぞれの画素行のＸｂ〜Ｘａの間において、第２の所定範囲（Ｄ±ｚ２）外の距離値を持つ画素を除去する（第２の除去）。図１０の（ｃ）を参照すると、第２の所定範囲Ｄ±ｚ２が、線ＤＬ３およびＤＬ４で示されている。ＱＬ１、ＱＬ２、ＤＬ３およびＤＬ４で囲まれた画素は残され、それ以外の画素は除去される。
【００７７】
この第２の除去の意義を説明する。乗員が、たとえばバッグやボールなどの付随物（荷物）を持っている場合、ｘｙ平面での切り出し処理を行っても、図１１の斜線領域５３に示すように、検出領域４７に荷物領域が残される。このような荷物領域が検出領域４７に残ると、後述する相関処理において、該荷物領域において頭部を誤検出するおそれがある。したがって、このような、胴体以外の領域を、検出領域４７から除去するのが好ましい。
【００７８】
したがって、ＱＬ１およびＱＬ２の間では、しきい値ｚ２を用いた除去を行う。胴体部分が除去されることを回避するため、しきい値ｚ２は、しきい値ｚ１より大きい値に設定されるのが好ましい。また、しきい値ｚ２は、想定される荷物の大きさに応じて決めるのが好ましい。たとえば、約３０ｃｍの厚みを持つ荷物を有している場合を想定すると、Ｄ±ｚ２は、Ｄ±ｚ１より３０ｃｍほど大きくなるよう設定される。
【００７９】
図９に戻ると、以上のようなｚ１およびｚ２を用いたｚ方向限定処理を、走査がグレースケール画像４６の最下行に達するまで、それぞれの画素行について実行する（Ｓ１６）。
【００８０】
代替的に、ｙｚ平面にプロットされる中央位置ＭａおよびＭｂに対応する距離値（ｚ座標値）として、中央位置Ｍａにおける画素の距離値およびＭｂにおける画素の距離値を用いてもよい。
【００８１】
また、代替形態において、中心線ＣＤは、中心線ＣＬと同様に、複数の画素行についての距離値をプロットし、一次近似手法により求めてもよい。この場合、距離値は、前述したように、対応する画素行に含まれる画素の距離値の平均でもよいし、該画素行の中央位置にある画素の距離値でもよい。
【００８２】
なお、この実施例では、第１の除去において、中心線ＣＤに対する線ＤＬ１の幅およびＤＬ２の幅は同じｚ１である。基準行ＬａおよびＬｂに含まれる画素の距離値を平均した平均距離値でｙｚ平面にプロットする場合には、このような同じ幅でよい。しかしながら、画素行の中央位置ＭａおよびＭｂにある画素の距離値をｙｚ平面にプロットする場合には、好ましくは、ＤＬ１〜ＣＤ：ＣＤ〜ＤＬ２を、たとえば３：２となるように、前者を後者より大きくするのが好ましい。
【００８３】
中央位置ＭａおよびＭｂにおける画素の距離値は、それぞれ、頭部表面までの距離および胴体表面までの距離を表している。一方、ＭａおよびＭｂの画素行（基準行ＬａおよびＬｂ）に含まれる画素の距離値の平均は、頭部および胴体の厚みを考慮した値となる。すなわち、前者の距離値は、後者の平均距離値よりも小さくなる。ＤＬ１とＤＬ２の間の幅は、頭部および胴体の厚みを反映するように設定されるのが好ましいので、図１０（ｂ）のようなＤＬ１およびＤＬ２を中心線ＣＤに対してｚ方向にシフトし、ＣＤ〜ＤＬ１の幅＞ＣＤ〜ＤＬ２の幅とするのが好ましい。この一例を、図１２に示し、ｚ３：ｚ４＝３：２となっている。
【００８４】
図１０の（ｄ）は、線ＤＬ１およびＤＬ２の代替的な設定を示す。この代替設定においては、上記のｚ１が、ｘ方向に従って変化する。人間の胴体は、その中央部分に向かうほど太くなる傾向にある。したがって、ＸＢ〜Ｘｂの間においては、ｘ値が大きくなるほど、中心線ＣＤと線ＤＬ１、ＤＬ２の間の幅を大きくし、Ｘａ〜ＸＡの間においては、ｘ値が大きくなるほど、中心線ＣＤと線ＤＬ１、ＤＬ２の間の幅を小さくする。
【００８５】
図１０の（ｃ）および（ｄ）を参照して明らかなように、ｚ方向の限定は、胴体の中央部分にいくほど厚みが大きくなっていることに基づいている。したがって、（ｃ）および（ｄ）のようなｚ１設定に必ずしも限定されず、たとえば、ＤＬ１とＱＬの交点から、ＤＬ２とＱＬ１の交点に向かって凸曲線を描くようにｚ１を設定してもよい。しかしながら、（ｃ）および（ｄ）のような形態は、ＤＬ１およびＤＬ２が直線であるので、高速な計算処理を実現することができる。
【００８６】
なお、傾きｋが所定値Ｔ以下の場合に抽出された検出領域４７についても、図９に示す手法で、ｚ方向に制限することができる点に注意されたい。この場合、平行線ＰＬ１およびＰＬ２に代えて、垂直線ＶＬ１およびＶＬ２が用いられる。
【００８７】
前述したように、図１１のように人物が荷物等を抱えていると、検出領域４７からその領域が除去される。その結果、検出領域４７には、凹部が形成されることとなる。
【００８８】
このような凹部が検出領域４７に形成されると、たとえば凹部の周辺で、後述する相関処理において頭部が誤検出されるおそれがある。これを回避するため、本願発明の一実施形態では、さらに、図１３に示す処理を実行し、得られた検出領域４７に凹部が存在する場合には、これを埋める。この処理を、図１４を参照しながら説明する。
【００８９】
図１４には、平行線ＰＬ１およびＰＬ２により切り出され、かつ、距離値を用いてｚ方向に限定された検出領域４７に、凹部５４が存在する場合の一例が示されている。凹部５４には、画素が存在していない。
【００９０】
図１３のステップＳ２１において、検出領域４７に含まれる画素の距離値を平均し、平均距離値を算出する。
【００９１】
ステップＳ２２において、前述した基準線Ｌｃ以下の領域で、最下点、すなわちｙ方向で最も低い点を求める。最下点は、中心線ＣＬと平行線ＰＬ１の間の領域および中心線ＣＬと平行線ＰＬ２の間の領域のそれぞれで求められ、これを、ＴａおよびＴｂとする。
【００９２】
ステップＳ２３において、２つの最下点ＴａおよびＴｂを結ぶ線分の中点Ｔｍを求める。さらに、中点Ｔｍのｙ座標Ｔｍｙに、αを加えた値を求める。αは、たとえば、基準線Ｌｃのｙ座標値の１／３に設定される。該中点からＴｍｙ＋αの高さにある点Ｔαを求める。代替的に、中点から該線分に対する法線を描画し、法線の長さがＴｍｙ＋αの所を点Ｔαとしてもよい。中点Ｔｍと点Ｔαとを結ぶ線分上に、画素が存在するかどうかを判断する。
【００９３】
図１４の例では、この判断はＮｏであり、画素が存在していない。これは、検出領域４７の下部に凹部５４が形成されていることを示している。この判断がＹｅｓであれば、検出領域４７の下部が閉じられていることを示す。
【００９４】
ステップＳ２３の判断がＮｏであれば、ステップＳ２４において、点ＴａおよびＴｂを、幅ｔ（数画素分の幅でよい）の線分で結ぶことにより、検出領域４７の下部を閉じて「穴」を形成する。ここで、線分は、前述のステップＳ２１で算出された平均距離値を有する画素から成るよう構成される。ステップＳ２３の判断がＹｅｓであれば、ステップＳ２５に進む。
【００９５】
代替的に、検出領域４７の底部から数画素行（たとえば、検出領域の底部と頂部の間の画素行の数の１／１０）を、平均距離値を有する画素で強制的に埋めることにより、穴を形成してもよい。
【００９６】
ステップＳ２５において、こうして閉じられた検出領域４７の基準線Ｌｃ以下の領域内に、「穴」が存在するかどうかを調べる。「穴」の検出は、任意の適切な手法で実現されることができる。たとえば、８連結による輪郭線を抽出する手法により、基準線Ｌｃ以下の領域の輪郭線を求めることにより、穴を検出することができる。このような穴検出手法は周知であるので、詳細な説明は控える。簡単に説明すると、領域を走査して、輪郭線（境界線）の開始点を決める。開始点において、その近傍の８個の画素位置を反時計回りにサーチして、次の画素を見つける。これを次々に進めることにより、１本の輪郭線を追跡することができる。
【００９７】
ステップＳ２６において、穴が検出されたかどうか判断する。穴が検出されたならば、ステップ２７において、該穴を、上記の平均距離値を持つ画素で埋める。
【００９８】
穴は、上記のような凹部が閉じられることにより形成される穴だけでなく、たとえば荷物等が胴体中央部分に存在する場合に該荷物領域が除去されることによって形成された穴も含まれる。また、前述したパターン光が強く、対象物の一部が白（たとえば、衣服の白い部分）の場合、視差値を算出することができない場合が生じうる。視差値が得られない部分は、距離値を有する画素（すなわち、上記の有効画素）が存在せず、穴として残されることがある。このような穴が、平均距離値の画素で埋められる。
【００９９】
凹部を検出する手法として、他の手法を用いてもよい。たとえば、凸包を求めるための周知の包装法やGraham法などを用いることができる。好ましくは、基準線Ｌｃ以下の領域のエッジを抽出し、該エッジに対して凸包を求める。凸包を求めることにより、該領域に外接する多角形が求められるので、上記のように線分で検出領域の下部を閉じることは必要とされない。求めた多角形の内部で、穴検出を行えばよい。
【０１００】
ステップＳ２８において、任意の適切な粒子解析処理を行う。たとえば、膨張および収縮処理を行うことができる。膨張および収縮処理は、周知の手法であるので、詳細には説明しない。膨張処理を行う場合、たとえば８個の近傍画素の距離値のうちの最大距離値を持つ画素で、画像を１画素分膨張させる。収縮処理においては、たとえば８個の近傍画素の距離値のうちの最小距離値を持つ画素で、画像の境界画素を置き換える。これを繰り返すと、ノイズを除去することができる。粒子解析処理を行った後、面積が最大となる領域を、最終的な検出領域４７として抽出する。たとえば検出領域外にノイズである画素が除去されずに残っていたとしても、面積が最大となる領域が抽出されるので、頭部および胴体を含む領域のみが検出領域４７として抽出される。
【０１０１】
なお、傾きｋが所定値Ｔ以下の場合に抽出された検出領域４７についても、図１３に示す手法で、穴を検出して埋めることができる点に注意されたい。この場合、平行線ＰＬ１およびＰＬ２に代えて、垂直線ＶＬ１およびＶＬ２が用いられる。
【０１０２】
次に、図１の相関部２７による処理を、説明する。
【０１０３】
まず、図１５を参照して、メモリ２６に記憶されるべき頭部モデルを生成する手法を説明する。図１５の（ａ）および（ｂ）に示されるように、人間の頭部は、楕円球の形状に類似しているという特徴を有する。したがって、人間の頭部を、楕円球で表すことができる。
【０１０４】
楕円球は、車両内の空間座標に基づいて構築される。車両内の空間座標は、たとえば、撮像装置１１および１２の位置を原点とする。ｚ軸は、撮像装置から垂直に伸長し、ｚ値は、撮像装置からの距離を示す。ｘ軸は、車両の幅方向に、ｚ軸に対して垂直に設定され、ｙ軸は、車両の高さ方向に、ｚ軸に対して垂直に設定される。
【０１０５】
図１５の（ｃ）は、人間の頭部を表した楕円球の一例であり、該楕円球は、中心座標Ｏ（Ｘ０,Ｙ０,Ｚ０）を有する。中心座標は、乗員がシートに座っている時に存在しうる座標点が選択される。ａ、ｂおよびｃは、楕円球の大きさを規定するパラメータであり、人間の頭部を表すよう適切な値に設定される。
【０１０６】
頭部の三次元モデルとしての該楕円球を、二次元画像に変換する。楕円球は、矢印５５で示すようにｚ軸方向から見ると、楕円形状を有しているので、該二次元画像は、楕円形状を有するよう生成される。さらに、該二次元画像は、各ｘｙ位置が、該ｘｙ位置に対応するｚ値を表すグレースケール値を持つよう生成される。
【０１０７】
ここで、二次元画像モデルを生成する手法を、より詳細に述べる。楕円球は、式（２）により表されるので、楕円球の各ｘｙ位置におけるｚ値は、式（３）のように表される。
【数２】
2008146106.tif 000004
【０１０８】
次に、矢印５５に示されるように、楕円球をｚ軸方向に二次元画像に投影する。この投影は、式（４）により実現される。ここで、Ｒ１１〜Ｒ３３は回転行列式であり、楕円球を回転させない場合には、Ｒ１１およびＲ２２には値１が設定され、他のパラメータにはゼロが設定される。楕円球を回転させる場合には、これらの値に、該回転の角度を表す値が設定される。ｆｘ、ｆｙ、ｕ０およびｖ０は、撮像装置の内部パラメータを示し、たとえば、レンズの歪み等を補正するためのパラメータを含む。
【数３】
2008146106.tif 000005
【０１０９】
式（４）に従う投影により、楕円球の表面上の各点（ｘ，ｙ，ｚ）は、二次元画像の（ｘ，ｙ）に投影される。二次元画像の座標（ｘ，ｙ）には、投影元の（ｘ，ｙ，ｚ）のｚ値を表すグレースケール値Ｉが対応づけられる。該グレースケール値Ｉは、式（５）に従って算出される。
【数４】
2008146106.tif 000006
【０１１０】
ここで、Ｚｍｉｎは、楕円球の（回転させた場合には、回転後の楕円球の）表面の座標のｚ値のうち、最も撮像装置に近い値を示す。Ｎは、正規化部２４による正規化で用いられたＮと同じである。式（５）により、ｚ値がＺｍｉｎの時には、該ｚ値に対応する画素には、最も高いグレースケール値が割り当てられる。ｚ値のＺｍｉｎからの距離が大きくなるにつれ、すなわち撮像装置に対する距離が大きくなるにつれ、該ｚ値に対応する画素のグレースケール値は徐々に低くなる。
【０１１１】
図１５の（ｄ）は、こうして作成された頭部モデルの二次元画像を模式的に示す。楕円の中心から周囲に向かって、グレースケール値が徐々に低くなっている。たとえば、図１５の（ｃ）に示される点５６は、図１５の（ｄ）の点５７に投影される。点５６は、ｚ値がＺｍｉｎであるので、点５７のグレースケール値は、最も高い値（この例では、白）を持つ。また、点５８は点５９に投影されるが、点５８のｚ値が、Ｚｍｉｎより大きい値であるので、点５９のグレースケール値は、点５７のグレースケール値よりも低くなる。
【０１１２】
こうして、図１５の（ａ）のような、頭部をｚ方向から見た楕円形状は、図１５の（ｄ）の二次元画像モデルの形状に反映され、図１５の（ｂ）のような、頭部の各部分における、撮像装置に対する距離は、図１５の（ｄ）の二次元画像モデルの対応する画素のグレースケール値に反映される。このように、人間の頭部は３次元データで表されるが、ｚ方向の距離をグレースケール値で表すことにより、人間の頭部を二次元画像にモデル化することができる。生成された二次元画像モデルは、メモリ２６に記憶される。
【０１１３】
何種類かの頭部モデルが用意されるのが好ましい。たとえば、大人の頭部と子供の頭部とは大きさが異なるので、別個の頭部モデルが用いられる。上記ａ、ｂおよびｃを調整することにより、所望の大きさの楕円球モデルを生成することができる。どのような大きさの楕円球モデルを用いるかは、複数の人間の頭部を統計的に調べた結果に基づいて決定してもよい。こうして生成された楕円球モデルは、上記のような手法で二次元画像モデルに変換され、メモリ２６に記憶される。
【０１１４】
また、乗員の姿勢に応じて複数の頭部モデルを用意するのが好ましい。たとえば、首を傾けた乗員の頭部を検出するために、異なる傾きを持つ頭部モデルを用意することができる。たとえば、上記の式（４）に示される回転行列中のパラメータＲ１１〜Ｒ３３の値を調整することにより、所望の角度だけ回転させた楕円球モデルを生成することができる。該楕円球モデルは、同様に、二次元画像モデルに変換され、メモリ２６に記憶される。
【０１１５】
図１６は、一実施例でメモリ２６に記憶される二次元画像の頭部モデルを表す。３種類の大きさがあり、図の右側にいくほど大きくなっている。さらに、それぞれの大きさに対し、傾きなしのモデル、π／４だけ回転させたモデル、３π／４だけ回転させたモデルが用意される。
【０１１６】
相関部２７は、メモリ２６から二次元画像の頭部モデルを読み出し、該頭部モデルを、検出領域抽出部２５により抽出された検出領域４７に対して走査させる。相関部２７は、該頭部モデルと、検出領域中の走査している画像領域との間でマッチングを行い、相関値を算出する。任意のマッチング手法を用いることができる。
【０１１７】
この実施例では、相関値ｒは、正規化因子のずれ、位置および姿勢の誤差等を考慮した正規化相関式（６）に従って行われる。ここで、Ｓは、マッチングするブロックの大きさを示す。ブロックの大きさは、たとえば１画素でもよく、または、複数の画素の集まり（たとえば、７×７画素）を１つのブロックとしてもよい。頭部モデルと走査対象領域との間の類似度が高いほど、高い値を持つ相関値ｒが算出される。
【数５】
2008146106.tif 000007
【０１１８】
前述したように、検出領域４７の頭部部分では、頭部の撮像装置に近い点から周囲に向かって撮像装置に対する距離が徐々に大きくなり、これに従って徐々に値が低くなるようグレースケール値が割り当てられている。一方、頭部モデルも、中心から周囲に向かって撮像装置に対する距離が徐々に大きくなり、これに従って徐々に値が低くなるようグレースケール値が割り当てられている。したがって、頭部モデルが、該乗員領域の頭部部分と相関されれば、他の部分と相関されるよりも、高い値の相関値ｒが算出されることとなる。こうして、相関値ｒに基づき、頭部部分を、検出領域４７から検出することができる。
【０１１９】
なお、式（１）で示される前景領域の正規化も、式（５）で示される頭部モデルの正規化も、撮像装置に対する距離が大きくなるにつれ、低い値を持つようグレースケール値が割り当てられる点は同じであるが、厳密に言えば、両者の正規化の間にはずれがある。たとえば、式（２）では、視差の最小値ｄｍｉｎにおいて、グレースケール値が最小になるが、式（５）では、ｚ値が無限大になったときにグレースケール値が最小になる。しかしながら、このようなスケーリングのずれは、上記のような相関により補償されることができる。また、頭部の楕円球モデルを構築する際の中心座標のずれなどの位置的な誤差も、このような相関により補償されることができる。すなわち、相関では、グレースケールが変化する傾向が似ているかどうかが判断されるので、相関される画像領域が、頭部モデルに類似したグレースケールの変化の傾向（すなわち、中心から周囲に向かってグレースケール値が徐々に低くなる）を有していれば、高い相関値が出力されることとなる。
【０１２０】
最も高い相関値ｒを算出した画像領域が、検出領域４７から検出され、該検出された画像領域の撮像画像における位置づけおよびグレースケール値に基づき、人間の頭部の位置を特定することができる。また、相関された頭部モデルに基づき、頭部の大きさおよび傾き（姿勢）を判断することができる。
【０１２１】
複数の頭部モデルがある場合には、上記のような相関処理を、メモリ２６に記憶された二次元画像の頭部モデルのそれぞれについて行われる。最も高い相関値ｒを算出した頭部モデルが特定されると共に、該モデルと相関された画像領域が、検出領域中に特定される。該検出された画像領域の撮像画像における位置づけおよびグレースケール値から、人間の頭部の位置を特定することができる。また、該最も高い相関値ｒの算出に用いられた頭部モデルに基づき、頭部の大きさおよび傾き（姿勢）を判断することができる。
【０１２２】
このような、二次元画像のグレースケールのマッチングは、従来の三次元空間における同定処理よりも高速に処理することができる。
【０１２３】
図１７の（ａ）および（ｂ）は、図５に示した画像例に基づいて抽出された検出領域４７において、上記の相関処理により特定された頭部領域６０を示す。
【０１２４】
他の実施例では、物体検出装置１は、光源および一対の撮像装置を用いる代わりに、距離計測装置７０を用いる。図１８は、この実施例に従う、物体検出装置１を示す。一例では、距離計測装置７０は、ＴＯＦ(time of flight)方式の距離画像センサである。該距離画像センサは、２次元に配列された撮像素子を有している。距離画像センサは、ＬＥＤ（発光ダイオード）を用いて、たとえば赤外光をパルス発光して対象物に照射し、レンズを介して該対象物からの反射光を受信する。各撮像素子において、照射光と受信光の位相差（時間遅れ）を求め、該位相差に基づき、距離計測装置７０から対象物までの距離を画素ごとに算出する。こうして、距離画像が生成される。
【０１２５】
処理装置１５の背景除去部７２は、距離画像において背景領域を除去し、前景領域を抽出する。これは、前述したように、任意の適切な手法で実現される。たとえば、空席時に距離計測装置７０により計測され生成された距離画像をメモリ７３に予め記憶し、該空席時距離画像と、今回撮像された乗員を含む距離画像とを比較することにより、前景領域を抽出するよう背景を除去することができる。
【０１２６】
正規化部７４は、前景領域を正規化する。正規化は、式（１）のｄｍｉｎを、前景領域中の距離の最大値Ｌｍａｘに、ｄｍａｘを、前景領域中の距離の最小値Ｌｍｉｎで置き換えることにより、計算されることができる。
【０１２７】
検出領域抽出部７５は、前景領域から、頭部を検出すべき検出領域を抽出する。検出領域の設定は、図１の検出領域抽出部２５と同様の手法を用いて行うことができる。
【０１２８】
メモリ７６（メモリ７３と同じでよい）は、メモリ２６と同様に、頭部モデルの二次元画像を記憶する。頭部モデルは、前述したような手法で生成されるが、ここで、図１５の（ｃ）の撮像装置は、距離計測装置に置き換えて考えることができる。相関部７６は、相関部２６と同様の手法で、相関を実施することができる。
【０１２９】
図１９は、物体を検出する処理のフローチャートを示す。この処理は、所定の時間間隔で実施される。一実施例では、図１に示される処理装置１５により、該処理は実現される。
【０１３０】
ステップＳ３１において、一対の撮像装置によって、人間の頭部を含む画像を取得する。ステップＳ３２において、該取得した画像から、視差画像を生成する。ステップＳ３３において、視差画像から背景を除去し、前景領域を抽出する。背景を除去した後、ノイズを除去するため、膨張収縮などの粒子解析処理および平滑化処理（たとえば、メディアンフィルタを用いて）を行ってもよい。
【０１３１】
ステップＳ３４において、前景領域を、式（１）に従って正規化する。ステップＳ３５において、正規化された前景領域から、検出領域を抽出する。一実施例では、ステップＳ３５において、図４、９および１３の処理が実行される。ステップＳ３６において、メモリから、予め生成されている頭部モデルを読み出す。ステップＳ３７において、頭部モデルを、検出領域に対して走査し、該頭部モデルと、該頭部モデルが重なった画像領域との間の類似度を示す相関値を算出する。ステップＳ３８において、最も高い相関値が算出された画像領域を、該相関値および頭部モデルと関連づけてメモリに記憶する。
【０１３２】
ステップＳ３９において、相関すべき頭部モデルがあるかどうかを判断する。この判断がＹｅｓならば、ステップＳ３６からの処理を繰り返す。
【０１３３】
ステップＳ４０において、メモリに記憶された相関値のうち、最も高い相関値を選択し、該相関値に対応する画像領域および頭部モデルに基づいて、人間の頭部が存在する位置および大きさを出力する。
【０１３４】
撮像装置に代えて距離測定装置を用いる場合には、ステップＳ３１および３２において、距離計測装置を用いて距離画像が生成される。
【０１３５】
上記の実施形態では、撮像装置に対する距離が大きくなるにつれグレースケール値が低くなるという傾向について、二次元画像モデルと画像領域との間で相関が行われた。このようなグレースケール値の傾向とは異なる傾向を用いてもよい。たとえば、撮像装置に対する距離が大きくなるにつれ、グレースケール値を大きくするという傾向について、類似性を判断してもよい。
【０１３６】
人間の頭部を検出する形態について説明してきたが、本願発明の物体検出装置は、他の物体を検出する形態についても適用可能である。たとえば、人間とは異なる物体についても、所定の方向から見た特徴的形状を有するとともに、該所定の方向の距離をグレースケール値で表した二次元画像モデルを生成することにより、検出することができる。
【０１３７】
また、物体検出装置が車両に搭載された場合の実施形態について説明してきたが、本願発明の物体検出装置は、様々な形態に適用可能である。たとえば、或る物体（たとえば、人間の頭部）が近づいたことを検出し、該検出に応じて、何らかのアクションをとる（例えば、メッセージを発する）というような形態にも適用可能である。
【図面の簡単な説明】
【０１３８】
【図１】この発明の一実施例に従う、物体を検出する装置のブロック図。
【図２】この発明の一実施例に従う、視差を算出する手法を説明する図。
【図３】この発明の一実施例に従う、背景の除去を説明する図。
【図４】この発明の一実施例に従う、検出領域を抽出する処理のフローチャート。
【図５】この発明の一実施例に従う、検出領域の抽出方法を説明するための図。
【図６】この発明の一実施例に従う、中央位置を求める手法を説明するための図。
【図７】この発明の一実施例に従う、中心線を求める他の手法を説明するための図。
【図８】この発明の一実施例に従う、検出領域を距離方向にさらに限定する技術的意義を説明するための図。
【図９】この発明の一実施例に従う、検出領域を距離方向にさらに限定する処理のフローチャート。
【図１０】この発明の一実施例に従う、検出領域の距離方向の限定を説明するための図。
【図１１】この発明の一実施例に従う、検出領域を距離方向にさらに限定する他の技術的意義を説明するための図。
【図１２】この発明の一実施例に従う、検出領域を距離方向に限定するしきい値の他の設定を示す図。
【図１３】この発明の一実施例に従う、検出領域における凹部および穴を検出する処理のフローチャート。
【図１４】この発明の一実施例に従う、検出領域における凹部を検出する処理を説明するための図。
【図１５】この発明の一実施例に従う、頭部モデルを説明する図。
【図１６】この発明の一実施例に従う、複数の種類の頭部モデルの一例を示す図。
【図１７】この発明の一実施例に従う、検出された頭部領域の一例を示す図。
【図１８】この発明の他の実施例に従う、物体を検出する装置のブロック図。
【図１９】この発明の一実施例に従う、物体を検出する処理のフローチャート。
【符号の説明】
【０１３９】
１  物体検出装置
２３，２６  メモリ
１２，１３  撮像装置
１５  処理装置
７０  距離計測装置
【図１】
2008146106.tif 000008
【図２】
2008146106.tif 000009
【図３】
2008146106.tif 000010
【図４】
2008146106.tif 000011
【図５】
2008146106.tif 000012
【図６】
2008146106.tif 000013
【図７】
2008146106.tif 000014
【図８】
2008146106.tif 000015
【図９】
2008146106.tif 000016
【図１０】
2008146106.tif 000017
【図１１】
2008146106.tif 000018
【図１２】
2008146106.tif 000019
【図１３】
2008146106.tif 000020
【図１４】
2008146106.tif 000021
【図１５】
2008146106.tif 000022
【図１６】
2008146106.tif 000023
【図１７】
2008146106.tif 000024
【図１８】
2008146106.tif 000025
【図１９】
2008146106.tif 000026