(57)【要約】      （修正有）【課題】操作対象物を撮影した画像から、操作対象物へのタッチ操作を行う物体を示す領域を精度良く抽出する。【解決手段】取得部２１が、距離画像及び反射強度画像を取得する。設定部２２が、距離画像の輝度ヒストグラムに対して、距離画像における検出対象の物体により操作される操作対象物の輝度ヒストグラムの形状に類似する関数を近似させることにより、操作対象物の輝度ヒストグラムを推定する。抽出部２３が、推定された操作対象物の輝度ヒストグラムに基づいて定まる操作対象物までの距離を用いて、距離画像から検出対象の物体を表す候補領域を抽出する。分割部２４が、反射強度画像を複数の領域に分割する。統合部２５が、複数の領域のうち、抽出された候補領域の輪郭線と形状が類似する抽出領域と、候補領域とを統合した領域を、検出対象の物体を表す領域として検出する。【選択図】図３
2017117341.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
物体との距離を該距離に応じた輝度で表す距離画像、及び物体からの反射光の強度を輝度で表す反射強度画像を取得し、
前記距離画像の輝度ヒストグラムに対して、該距離画像における検出対象の物体により操作される操作対象物の輝度ヒストグラムの形状に類似する関数を近似させることにより、前記操作対象物の輝度ヒストグラムを推定し、
推定された前記操作対象物の輝度ヒストグラムに基づいて定まる前記操作対象物までの距離を用いて、前記距離画像から前記検出対象の物体を表す候補領域を抽出し、
前記反射強度画像を、該反射強度画像の各画素の輝度に基づいて複数の領域に分割し、
前記複数の領域のうち、抽出された前記候補領域の輪郭線と形状が類似する抽出領域と、該候補領域とを統合した領域を、前記検出対象の物体を表す領域として検出する
ことを含む処理を実行させる物体検出方法。
【請求項２】
前記関数を、前記距離画像の輝度ヒストグラムにおいて、輝度の変化率が所定値以下となる基準輝度をピークとする左右対称な関数とする請求項１記載の物体検出方法。
【請求項３】
前記関数を前記距離画像の輝度ヒストグラムに近似させる際に、前記基準輝度に対応する距離以上の距離に対応する輝度の部分を近似させる請求項２記載の物体検出方法。
【請求項４】
前記関数をガウス関数とする請求項２又は請求項３記載の物体検出方法。
【請求項５】
前記距離画像として、時系列に複数のフレームを順次取得し、
前フレームにおいて、前記関数と前記距離画像の輝度ヒストグラムとの誤差が所定値以下であった場合、現フレームにおける前記基準輝度を、前フレームで探索された基準輝度を中心とする所定範囲から探索する
請求項２〜請求項４のいずれか１項記載の物体検出方法。
【請求項６】
前記距離画像として、時系列に複数のフレームを順次取得し、
前フレームにおいて、前記関数と前記距離画像の輝度ヒストグラムとの誤差が所定値以下であった場合、前記前フレームの関数と、現フレームの距離画像の輝度ヒストグラムとの誤差が所定値以下か否かを判定し、該誤差が所定値以下の場合は、前記前フレームの関数を、前記操作対象物の現フレームの輝度ヒストグラムとして推定する
請求項２〜請求項５のいずれか１項記載の物体検出方法。
【請求項７】
物体との距離を該距離に応じた輝度で表す距離画像、及び物体からの反射光の強度を輝度で表す反射強度画像を取得する取得部と、
前記距離画像の輝度ヒストグラムに対して、該距離画像における検出対象の物体により操作される操作対象物の輝度ヒストグラムの形状に類似する関数を近似させることにより、前記操作対象物の輝度ヒストグラムを推定する推定部と、
推定された前記操作対象物の輝度ヒストグラムに基づいて定まる前記操作対象物までの距離を用いて、前記距離画像から前記検出対象の物体を表す候補領域を抽出する抽出部と、
前記反射強度画像を、該反射強度画像の各画素の輝度に基づいて複数の領域に分割する分割部と、
前記複数の領域のうち、抽出された前記候補領域の輪郭線と形状が類似する抽出領域と、該候補領域とを統合した領域を、前記検出対象の物体を表す領域として検出する統合部と、
を含む物体検出装置。
【請求項８】
コンピュータに、
物体との距離を該距離に応じた輝度で表す距離画像、及び物体からの反射光の強度を輝度で表す反射強度画像を取得し、
前記距離画像の輝度ヒストグラムに対して、該距離画像における検出対象の物体により操作される操作対象物の輝度ヒストグラムの形状に類似する関数を近似させることにより、前記操作対象物の輝度ヒストグラムを推定し、
推定された前記操作対象物の輝度ヒストグラムに基づいて定まる前記操作対象物までの距離を用いて、前記距離画像から前記検出対象の物体を表す候補領域を抽出し、
前記反射強度画像を、該反射強度画像の各画素の輝度に基づいて複数の領域に分割し、
前記複数の領域のうち、抽出された前記候補領域の輪郭線と形状が類似する抽出領域と、該候補領域とを統合した領域を、前記検出対象の物体を表す領域として検出する
ことを含む処理を実行させる物体検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物体検出方法、物体検出装置、及び物体検出プログラムに関する。
【背景技術】
【０００２】
近年、例えば工場等の現場において、拡張現実機能（ＡＲ：Augmented Reality）を利用して、作業者の作業を支援する手法が提案されている。具体的には、現場の特定の場所にカメラで識別可能なマーカーを設置し、カメラ機能を有するタブレット端末でマーカーを撮影した際に、マーカーに対応付けられた情報をタブレット端末の画面に重畳して表示する例が提案されている。この場合、作業者は、作業に関する様々なマニュアル等を現場で持ち運ばなくても、タブレット端末を持参しさえすれば、マーカーを撮影するだけでマーカーが設置された場所に必要なマニュアル等を参照することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１８２０１４号公報
【非特許文献】
【０００４】
【非特許文献１】石井裕剛、外５名、「拡張現実感を利用した原子力発電プラントの解体支援方法の提案と評価」、日本バーチャルリアリティ学会論文誌、日本バーチャルリアリティ学会、平成20年6月30日、Vol.13、 No.2、p.289-300
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、こうした現場では、作業者は両手で作業を行うことが多いため、マニュアルの参照などのためにタブレット端末を使用することは、現場での作業の妨げとなる場合がある。したがって、図３１に示すように、タブレット端末の代わりに、例えばヘッドマウントカメラ９０及び眼鏡型ディスプレイ９１といったウェアラブル機器を組み合わせるなどして、作業環境におけるハンズフリー化を実現することが求められている。
【０００６】
こうしたハンズフリー化を実現するウェアラブル機器を用いた場合、タブレット端末のように画面をタッチして必要な情報を呼び出したり切り替えたりする操作が困難になる。そこで、例えば、手の動きによってウェアラブル機器に指示を与えるジェスチャー操作が用いられることがある。ジェスチャー操作では、ヘッドマウントカメラ９０によって作業者の手が撮影され、手の位置及び形状を解析することで操作内容を特定し、特定した操作内容に応じた処理が、眼鏡型ディスプレイ９１に表示された情報に対して実行される。
【０００７】
対象物上の特定の箇所を指定する作業例としては、点検作業時に壁面のひび割れといった異常箇所を発見した場合に、当該箇所を指定して対象物や位置に関する情報を電子的に記録することが考えられる。
【０００８】
このような作業に対し、ウェアラブル機器向けのジェスチャー操作の多くは、指や手の形状や空中での動作を用いるため、特定の箇所を指定する際に位置ずれが生じ易いという課題がある。
【０００９】
一方、対象物が作業者の手が届く場所にある場合は、対象物上の該当箇所を作業者が直接触れて指定する操作（タッチ操作）を行うことが可能である。ジェスチャー操作としてタッチ操作を用いれば、指定した箇所の位置ずれが生じ難いという効果がある。
【００１０】
ウェアラブル機器を用いてタッチ操作を認識するためには、撮影画像から、タッチ操作される対象物、並びに対象物に対してタッチ操作を行う物体（例えば、作業者の手や指など）の位置及び形状が、できるだけ正確に抽出されることが望ましい。
【００１１】
一つの側面として、本発明は、操作対象物を撮影した画像から、操作対象物へのタッチ操作を行う物体を示す領域を精度良く抽出することを目的とする。
【課題を解決するための手段】
【００１２】
一つの態様では、物体との距離を該距離に応じた輝度で表す距離画像、及び物体からの反射光の強度を輝度で表す反射強度画像を取得する。そして、前記距離画像の輝度ヒストグラムに対して、該距離画像における検出対象の物体により操作される操作対象物の輝度ヒストグラムの形状に類似する関数を近似させることにより、前記操作対象物の輝度ヒストグラムを推定する。推定された前記操作対象物の輝度ヒストグラムに基づいて定まる前記操作対象物までの距離を用いて、前記距離画像から前記検出対象の物体を表す候補領域を抽出する。また、前記反射強度画像を、該反射強度画像の各画素の輝度に基づいて複数の領域に分割する。そして、前記複数の領域のうち、抽出された前記候補領域の輪郭線と形状が類似する抽出領域と、該候補領域とを統合した領域を、前記検出対象の物体を表す領域として検出する。
【発明の効果】
【００１３】
一つの側面として、操作対象物を撮影した画像から、操作対象物へのタッチ操作を行う物体を示す領域を精度良く抽出することができる、という効果を有する。
【図面の簡単な説明】
【００１４】
【図１】距離画像の一例を示す図である。
【図２】反射強度画像の一例を示す図である。
【図３】物体検出システムの構成の一例を示す図である。
【図４】距離画像の輝度ヒストグラムの一例を示す図である。
【図５】距離画像における手指及びタッチ操作対象物の一例を示す図である。
【図６】距離画像の輝度ヒストグラム及び勾配変化率の概略を示す図である。
【図７】タッチ操作対象物の輝度ヒストグラムの一例を示す図である。
【図８】物体検出装置をコンピュータで実現する場合の構成の一例を示す図である。
【図９】物体検出処理の流れの一例を示すフローチャートである。
【図１０】第１実施形態における手指候補領域輝度設定処理の流れの一例を示すフローチャートである。
【図１１】輝度ヒストグラムの勾配変化率とピークとの関係を説明するための図である。
【図１２】距離画像の輝度ヒストグラムに対するガウス関数の近似を説明するための図である。
【図１３】距離画像から近傍領域及び手指候補領域を抽出した結果の一例を示す図である。
【図１４】反射強度画像での反射強度の差異の一例を示す図である。
【図１５】反射強度画像の輝度ヒストグラムを用いた分割対象範囲の設定方法の一例を示す図である。
【図１６】分割対象範囲の設定の流れの一例を示す図である。
【図１７】反射強度画像分割処理の流れの一例を示すフローチャートである。
【図１８】反射強度画像の分割の処理過程の一例を示した図である。
【図１９】統合処理の流れの一例を示すフローチャートである。
【図２０】誤結合した抽出領域の一例を示す図である。
【図２１】抽出領域の過分割の一例を示す図である。
【図２２】手指候補領域の輪郭線の一例を示す図である。
【図２３】抽出領域の輪郭線の一例を示す図である。
【図２４】範囲を縮小した分割対象領域の一例を示す図である。
【図２５】統合処理によって統合された手指領域の一例を示す図である。
【図２６】判定処理の流れの一例を示すフローチャートである。
【図２７】手指候補領域の輪郭線の他の例を示す図である。
【図２８】抽出領域の輪郭線の他の例を示す図である。
【図２９】第２実施形態における手指候補領域輝度設定処理の流れの一例を示すフローチャートである。
【図３０】第３実施形態における手指候補領域輝度設定処理の流れの一例を示すフローチャートである。
【図３１】作業者の装備の一例を示す図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して本発明の実施形態の一例を詳細に説明する。なお、同じ働きを担う構成要素又は処理には、全図面を通して同じ符号を付与し、重複する説明を適宜省略する場合がある。
【００１６】
ウェアラブル機器を用いたジェスチャー操作として、例えば、特定の操作に対応付けられた指や手の形状、又は空中での動作を用いて、眼鏡型ディスプレイ９１等に表示された情報の操作や作業現場内の対象物を指定する方法（モーション操作）がある。
【００１７】
しかし、モーション操作の場合、例えば、作業者が情報を操作する意図がないにもかかわらず、ウェアラブル機器の特定の操作に対応付けられた手の動きを偶然に実行してしまい、誤操作を引き起こしてしまう場合が考えられる。また、空中で指や手を動かすモーション操作では、例えば腕を固定しての動作に比べて指や手の位置が変化し易くなり、対象物上の特定の箇所を指示する操作では位置ずれが生じ易い状況が発生する。
【００１８】
ここで、操作対象物が作業者の手が届く範囲内にある場合は、作業者が直接操作対象物を指で触れることで特定の箇所を指定する操作（タッチ操作）が用いられることがある。
【００１９】
こうしたタッチ操作であれば、操作対象物へのタッチ操作の有無を判定することで、意図しない動きによる誤操作を回避でき、更に、空中での指や手の動作であるモーション操作に比べて操作対象物上の特定の箇所を指定する際の位置ずれが生じ難くなる。
【００２０】
タッチ操作では、例えば、撮影画像から作業者の手の位置及び形状を検出する検出処理、並びに、タッチ操作対象物と手との接触を判定する判定処理を行うことになる。
【００２１】
手の検出処理の一例としては、予め取得した手の肌の色及び外観の特徴に基づいて、可視光を利用した光学カメラの撮影画像から、手と推定される領域を検出する方法が用いられることがある。しかし、この場合、例えば手を照射する光源が太陽光か、又は照明器具からの光かといった光源の相違によって、撮影画像の手に対応する領域の色が予め取得した手の肌の色と異なってしまうことがある。また、光学カメラに対する手の向き、又は拳を握る等の手の形状の変化によって、撮影画像の手に対応する領域の形状が予め取得した手の外観と異なってしまうことがある。その結果、撮影画像から手に対応する領域を検出することが困難になることがある。
【００２２】
その他の撮影画像からの手の検出処理の例としては、手と背景との特徴量（例えば彩度）の差分を利用する方法、又は時間的に連続する撮影画像のフレーム間におけるフレーム毎の特徴量の差分を利用する方法がある。しかし、光学カメラを装着した作業者は現場内を移動して作業することから、手の撮影場所や撮影角度が逐次変化するため、特徴量の差分を利用する方法では、撮影画像から手に対応する領域を抽出することが困難である場合が多い。
【００２３】
また、判定処理の一例としては、例えば物体を異なる複数の方向から撮影する光学ステレオカメラを用いて、カメラからタッチ操作対象物及び指までの距離の各々を測定する方法がある。また、作業者の指先に接触センサを装着して、タッチ操作対象物への接触を検出する方法がある。しかし、光学ステレオカメラを用いる場合、作業者の移動に伴う照明位置や角度の変化によって、検出対象の物体の色や明るさが変わるため対応が困難になったり、作業者の体に装着し難くなったりという問題がある。また、指先に接触センサを装着する場合には、接触センサが作業者の様々な作業の妨げになることが想定される。
【００２４】
一方、近年、従来に比べて安価な赤外光を用いる距離センサが普及しつつある。距離センサには複数の測定方式があり、その中の一つに距離測定対象の物体に赤外光を照射し、物体からの反射光を受光するまでの時間差に基づいて、物体までの距離を計測する測定方式（ＴＯＦ：Time-of-Flight方式）がある。
【００２５】
赤外光を用いる距離センサは、光学カメラに比べて光源の違いによる影響を受け難く、物体までの距離を精度良く計測することができる。なお、計測結果は、距離センサから物体までの距離計測結果に基づいた距離画像として出力される。距離画像は、物体までの距離計測結果に応じて輝度が変化する画像であり、例えば、距離センサから物体までの距離が遠くなる程、距離画像における当該物体に対応する画素の輝度が高くなる。なお、距離画像は、距離センサから物体までの距離が遠くなる程、距離画像における当該物体に対応する画素の輝度が低くなるものであってもよい。また、距離画像は、距離に応じて各画素の輝度を変化させる場合に限らず、輝度以外の画素値、例えば彩度や色情報等を距離に応じて変化させてもよい。
【００２６】
図１は、距離画像３の一例を示す図である。タッチ操作の際、作業者はタッチ操作対象物に触れる指先９２に注目することから、図１に示すように、指先９２に対応する領域が距離画像３の中央部付近に位置する場合が多くなる。一方、手首から手の甲にかけての手背部９３に対応する領域は、指先９２に対応する領域が距離画像３の中央部付近にくることから、距離画像３の周辺部に位置する場合が多くなる。
【００２７】
また、タッチ操作対象物に対して指先９２でタッチ操作を行う場合、指先９２とタッチ操作対象物との間の距離の差が小さくなる。したがって、距離画像３上で、タッチ操作対象物に対応する領域と指先９２に対応する領域の輝度差も小さくなる。一方、タッチ操作対象物と手背部９３との距離の差は、タッチ操作対象物と指先９２との距離の差に比べて大きい。したがって、距離画像３におけるタッチ操作対象物に対応する領域と手背部９３に対応する領域との輝度差は、タッチ操作対象物に対応する領域と指先９２に対応する領域との輝度差に比べて大きくなる。
【００２８】
すなわち、距離画像３の輝度に基づいて、タッチ操作対象物から手背部９３を分離することは比較的容易であるが、タッチ操作対象物から指先９２を分離することは、タッチ操作対象物と手背部９３とを分離する場合に比べて困難になる。また、タッチ操作対象物と指先９２の輝度差が、距離センサが有する固有の計測誤差（ノイズ）内に含まれる程度に小さい場合、タッチ操作対象物から指先９２を分離することが更に困難になる。
【００２９】
図１の手指領域検出結果９４は、輝度に基づいて距離画像３から手指５を検出した際の画像の一例を示す。ここで、手指５とは、指先９２及び手背部９３を合わせた部分のことをいう。手指領域検出結果９４から、手背部９３に対応する領域は距離画像３から検出し易いが、指先９２に対応する領域は輪郭がはっきりとせず、距離画像３から検出し難いことがわかる。
【００３０】
距離センサの距離測定方式がＴＯＦ方式の場合は、前述した距離画像３の他、反射光の強度が輝度に比例する反射強度画像を取得可能な場合がある。この反射強度画像と同じ距離センサから得られる距離画像３は、共通の照射部及び受光部を用いることから、撮影範囲、すなわち画角も共通であり、各々の画像において同じ位置にある画素は、同一物体の同じ位置を表しているとみなすことができる。
【００３１】
反射強度画像は、物体からの反射光の強度に応じて輝度が変化する画像であり、例えば、反射光の強度が強くなる程、反射強度画像における当該物体に対応する画素の輝度が高くなる。なお、反射強度画像は、物体からの反射光の強度が強くなる程、反射強度画像における当該物体に対応する画素の輝度が低くなるものであってもよい。また、反射強度画像は、反射光の強度に応じて各画素の輝度を変化させる場合に限らず、輝度以外の画素値、例えば彩度や色情報等を反射光の強度に応じて変化させてもよい。
【００３２】
反射強度画像は、物体へ照射した赤外光の反射光の強度を利用しており、光学カメラを用いる場合に比べて、物体表面の色及び外観の特徴に影響され難い特徴がある。しかし、反射光の強度は、距離センサを基準とした物体の位置及び姿勢と共に、物体表面の材質に基づく赤外光への反射率に大きく依存する。また、距離センサから照射する赤外光が点光源の場合には、例えば対象とする物体上に同心円状の照射ムラが生じることがある。
【００３３】
図２は、反射強度画像の一例を示す図である。反射強度画像４では、一見すると図１に示した距離画像３に比べて、指先９２が明確に撮影されているように見える。例えば反射強度画像４から個々の物体に対応する領域を抽出するため、隣接する画素の輝度の類似性に基づいて反射強度画像４を複数の領域に分割した分割結果９５の一例を示す。分割結果９５に示すように、部材９６の一部分が手指５と同じ物体に対応する領域として分割され、手指５に対応する領域の形状が領域９７のようないびつな形状で抽出される場合がある。このような領域分割の失敗の原因としては、上述したような物体表面の材質の相違や赤外光の照射ムラの影響が考えられる。領域分割の失敗には、複数の物体を１つの領域として誤って結合する場合（誤結合）、反対に同一の物体であっても対応する領域が複数に分割される場合（過分割）がある。
【００３４】
したがって、反射強度画像４の領域分割結果から手指５の形状と大きさの類似度が高い領域を選択するには、領域分割結果から選択した領域に対して、誤結合や過分割の有無も含めた、手指５の形状、大きさについての類似性を評価する方法が必要となる。
【００３５】
ここで、反射強度画像４での領域分割における誤結合や過分割の発生に対する照射ムラの影響を考えると、誤結合及び過分割は、照射強度が弱い画像周辺部において発生し易く、照射強度が強い画像中央部では発生し難い傾向にある。
【００３６】
更に、タッチ操作時の手指５は指先９２に対応する領域が画像中央部に位置する場合が多いことを考えると、反射強度画像４上で誤結合及び過分割が発生し易い画像周辺部に位置する手背部９３と手指５との類似性を評価することが重要となる。
【００３７】
一方、距離画像３における手指５に対応する領域において、指先９２を除いた手背部９３に対応する部分は手指５との類似性が高くなる傾向が見られる。したがって、距離画像３から得た手指５に対応する領域を基準として、反射強度画像４から得た領域との類似度を評価することで、誤結合や過分割も考慮した評価ができると考えられる。
【００３８】
ここで、距離画像３と反射強度画像４とにおける手背部９３に対応する領域の形状及び大きさを比較すると、画角及び撮影距離はどちらの画像でも同じである。したがって、反射強度画像４において誤結合又は過分割が発生していない場合、手背部９３に対応する領域の形状及び大きさは、距離画像３における手背部９３に対応する領域と同一とみなすことができる程度に近似する。しかし、画素単位で見た場合、以下に示す各画像の特徴から差異が生じる。
【００３９】
例えば、反射強度画像４での輝度に対応する反射光強度の特徴として、カメラからの距離がほぼ等しい物体でも照射方向に垂直な面（例えば手背部９３における手の甲）での反射光の強度は強くなる。また、照射方向に平行な面（例えば手背部９３の側面）の反射光の強度は距離の変化以上に弱くなる。
【００４０】
一方、距離測定結果は、反射光の強度ではなく対象物への照射から反射光の受光までの時間差に強く依存する。これらの特徴から、手背部９３に対応する距離画像３及び反射強度画像４の各画像上での領域の輪郭線の形状は、全体としては類似するが画素単位では差異が生じ、単純な画素単位での領域の形状比較では類似性を正しく評価できないことがあるといえる。
【００４１】
また、手背部９３又は手指５に対応する距離画像３及び反射強度画像４の各画像での領域の面積（画素数）の比較による領域の類似性評価も考えられる。しかし、反射強度画像４から得た領域において誤結合及び過分割の両方が発生した場合、面積としては適切と評価されるが形状としては適切でない場合も考えられるため、面積比較だけでは十分な評価とはならない場合がある。
【００４２】
そこで、以降では、手指５を例にして、画像から手指５の大きさ、位置、及び形状を精度良く抽出することができる物体検出装置について説明する。
【００４３】
＜第１実施形態＞
図３は、第１実施形態に係る物体検出システム１の構成例を示す図である。物体検出システム１は、撮影装置１０、物体検出装置２０、及び表示装置３０を含む。
【００４４】
撮影装置１０は、撮影範囲内に存在する物体に赤外光を照射する赤外光源、及び距離センサを含み、距離センサで生成した距離画像３及び反射強度画像４を出力する。なお、撮影装置１０は、撮影範囲を所定時間間隔で連続的に撮影し、距離画像３及び反射強度画像４の各々を、時系列のフレーム画像として生成し、生成したフレーム画像を順次出力する。
【００４５】
撮影装置１０の設置形態としては、ハンズフリー環境を実現するため、物体検出システム１を利用する作業者等の人（ユーザ）の頭部に装着される形態、例えば前述したヘッドマウントカメラ９０のような形態が用いられる。
【００４６】
なお、撮影装置１０は、赤外光源及び距離センサを含む形態とするが、これに限らず、例えば赤外光源と距離センサとを分離し、それぞれをユーザの頭部に装着するようにしてもよい。また、撮影装置１０は、距離画像３及び反射強度画像４の画角が、撮影装置１０を装着したユーザの視界と同じ範囲に近づくよう調整され、ユーザに装着されているものとする。
【００４７】
物体検出装置２０は、撮影装置１０から、時系列のフレーム画像として順次出力される距離画像３及び反射強度画像４の各々を入力として受け付ける。物体検出装置２０は、距離画像３及び反射強度画像４を用いて、手指５の位置及び形状（手指領域）を検出する。物体検出装置２０は、図３に示すように、機能的には、取得部２１、設定部２２、抽出部２３、分割部２４、統合部２５、及び判定部２６を含む。
【００４８】
取得部２１は、撮影装置１０から入力される距離画像３及び反射強度画像４を取得し、取得した距離画像３を設定部２２に受け渡すと共に、取得した反射強度画像４を分割部２４に受け渡す。
【００４９】
設定部２２は、取得部２１から受け渡された距離画像３における各画素の輝度の分布を示す輝度ヒストグラムを生成する。そして、設定部２２は、輝度ヒストグラムの勾配変化率に基づいて、抽出部２３が距離画像３からユーザの手指５に対応する領域の候補となる領域を抽出するための閾値を設定する。以下、距離画像３又は反射強度画像４におけるユーザの手指５に対応する領域を「手指領域」、手指領域の候補となる領域を「手指候補領域」という。また、手指候補領域を抽出するための閾値を「手指候補領域輝度」という。
【００５０】
ここで、手指候補領域の役割、及び手指候補領域を抽出するための閾値である手指候補領域輝度（以下、「閾値ｖ２」ともいう）について詳細を説明する。なお、本実施形態では、タッチ操作対象物の形状は平面であり、ユーザがタッチ操作対象物にタッチ操作する際には、ユーザはタッチ操作対象物に略正対することを前提とする。
【００５１】
手指候補領域は、後述する反射強度画像から選択した抽出候補領域の形状判定に用いるため、距離画像３上の手指５の大きさ及び形状を再現し、かつ、タッチ操作対象物等の他の物体を含まない領域として抽出されることが望ましい。
【００５２】
ここで、図４（Ａ）は、撮影装置１０による距離画像３の撮影環境の一例を側面から見た図であり、撮影装置１０、手指５、及びタッチ操作対象物９８の位置関係を示している。
【００５３】
手指候補領域として、手指５だけを含む領域の抽出を行うための閾値ｖ２は、撮影装置１０からの距離のうち、タッチ操作対象物９８に到達しない距離の中で、最大の距離に対応する値に設定することが好ましい。
【００５４】
例えば、閾値ｖ２が小さすぎる（撮影距離が短い）場合は、抽出した手指候補領域が本来の手指領域よりも小さくなる。また、閾値ｖ２が大きすぎる（撮影距離が長い）場合は、手指５に加えてタッチ操作対象物９８まで手指候補領域に含まれるため、得られた手指候補領域の形状は本来の手指領域と形状が異なり、反射強度画像から選択した抽出候補領域の形状判定に用いることが困難となる場合がある。
【００５５】
次に、手指５及びタッチ操作対象物９８を含む距離画像３における輝度ヒストグラム、及び輝度ヒストグラムの勾配変化率の差異について詳細を説明する。
【００５６】
図４（Ｂ）は、図４（Ａ）に示した撮影環境下で得られた距離画像３の輝度ヒストグラムの一例を示す図であり、横軸に輝度、縦軸に各輝度における画素数を示している。距離画像３の輝度は、撮影装置１０から物体までの距離（撮影距離）に相当するため、輝度ヒストグラムは、撮影距離毎の画素数を表しているともいえる。なお、設定部２２は、輝度ヒストグラムを生成する際、各画素の輝度を８ビット、すなわち０から２５５に正規化する。なお、輝度の正規化範囲は一例であり、８ビットより少ないビット数、又は多いビット数で輝度を正規化してもよい。
【００５７】
ここで、撮影距離の最大値をＭＴとすると、距離画像３の輝度範囲を８ビット（０〜２５５）で正規化する場合、ある撮影距離Ｔに対する輝度Ｌは（１）式で示される。
【００５８】
Ｌ＝( Ｔ * ２５５ ) / ＭＴ  ・・・（１）
【００５９】
例えば、撮影距離の最大値ＭＴが１５００ｍｍ、撮影距離Ｔが６００ｍｍ、及び輝度範囲を８ビットで正規化した場合、撮影距離Ｔに対する輝度Ｌは、（１）式より、“１０２”となる。
【００６０】
本実施形態では、タッチ操作対象物９８は平面状の形状であることを前提とする。また、ユーザがタッチ操作対象物９８にタッチする際、多くの場合、ユーザはタッチ操作対象物９８に略正対した位置に移動すると考えられる。このため、図４（Ａ）に示すように、タッチ操作対象物９８は、撮影装置１０の撮影方向に対して略垂直とみなせる範囲に存在すると考えられる。したがって、撮影距離の変化に対するタッチ操作対象物９８の面積の変化は、タッチ操作対象物９８が存在する位置で大きくなる。すなわち、図４（Ｂ）に示すように、距離画像３におけるタッチ操作対象物９８に対応する領域の輝度ヒストグラムにおいて、タッチ操作対象物９８までの距離に相当する輝度を中心に、輝度変化に対する画素数の変化が大きくなる。
【００６１】
一方、タッチ操作を行う際の手指５は、略撮影方向に沿って伸びるため、撮影距離の変化に対する手指５の面積の変化は、タッチ操作対象物９８の面積の変化に比べて小さくなる。したがって、手指５に対応する領域の輝度ヒストグラムにおける輝度変化に対する画素数の変化も小さくなる。言い換えると、距離画像３の輝度ヒストグラムにおいて、タッチ操作対象物９８に対応する部分の勾配変化率は、手指５に対応する部分の勾配変化率に比べて大きくなる。
【００６２】
次に、閾値ｖ２の推定について詳細に説明する。
【００６３】
距離画像３の輝度ヒストグラムの勾配変化率を輝度の最小値から最大値に向かって探索し、勾配変化率が所定の閾値以上となる輝度を、タッチ操作対象物９８の撮影距離に相当する輝度ｖ０とする。
【００６４】
図４（Ｃ）は、図４（Ｂ）において、輝度ｖ０の付近を拡大した図であり、これを輝度ヒストグラム８２とする、また、図４（Ｄ）は、図４（Ｃ）に示す輝度ヒストグラム８２の勾配変化率を示したグラフである。
【００６５】
前述したように、閾値ｖ２は、タッチ操作対象物９８に到達しない撮影距離の中で、最大の距離に対応する値に設定することが好ましい。しかし、距離測定結果に含まれるノイズの影響によって閾値ｖ２を直接求めることは困難であることが多いため、輝度ｖ０から所定の調整値ｆ１（例えば３０ｍｍに相当する輝度値）だけ小さい輝度値を閾値ｖ２としてもよい。調整値ｆ１については、実際の作業を通じて事前に求めておくことが好ましい。また、コンピュータシミュレーション等により、調整値ｆ１を事前に求めておいてもよい。
【００６６】
ここで、想定する撮影環境において、ユーザはタッチ操作対象物９８に近づきすぎるとタッチ操作が困難となることから、タッチ操作対象物９８の撮影距離は少なくとも１００ｍｍ以上と考えられる。そこで、タッチ操作に必要なタッチ操作対象物９８の撮影距離の最小値（例えば、１００ｍｍ）に相当する輝度を閾値ｖ１とする。この場合、距離画像３上の輝度０から閾値ｖ１までの画素を含む領域を近傍領域８１とすると、近傍領域８１には手指５及び腕の一部が含まれるが、タッチ操作対象物９８は含まれないと考えられる。
【００６７】
そこで、図４（Ｄ）に示すように、閾値ｖ２は、輝度ヒストグラム８２の勾配変化率が予め定めた勾配変化率ｒ１より大きくなる輝度値ｖ０を、閾値ｖ１から輝度が高くなる方向に向かって探索し、得られた輝度値ｖ０から調整値ｆ１だけ小さくすることにより求められる。なお、閾値ｖ１から輝度が高くなる方向に向かって閾値ｖ０を探索する理由は、閾値ｖ１未満の近傍領域８１は、ユーザの手指５及び腕の一部しか含まれない領域であるため、あえて閾値ｖ１未満の輝度から閾値ｖ０の探索を開始する必要がないためである。
【００６８】
しかし、上記のように閾値ｖ２を求める方法は、距離画像３において、タッチ操作対象物９８に対応する領域が、ユーザの手指領域に比べて大きい領域である場合に成立するものである。例えば、図５に示すように、距離画像３において、手指領域とタッチ操作対象物９８に対応する領域との面積差が小さい場合には、問題が生じる。
【００６９】
図６に、距離画像３において、手指領域とタッチ操作対象物９８に対応する領域との面積差が小さい場合の輝度ヒストグラム、及びこの輝度ヒストグラムの勾配変化率を示す。両領域の面積差が小さい場合、輝度ヒストグラムにおいて、タッチ操作対象物９８に対応する部分の勾配変化率と、手指領域の部分の勾配変化率との差異も減少する。この場合において、上述したように、手指領域の勾配変化率とタッチ操作対象物９８に対応する部分の勾配変化率とを識別可能な閾値となる勾配変化率ｒ１を設定したとする。手指領域とタッチ操作対象物９８に対応する領域との面積差が小さい場合には、タッチ操作対象物９８に対応する部分の勾配変化率の最大値が、この勾配変化率ｒ１を超えない場合が生じ得る。この場合、勾配変化率ｒ１に対応する輝度値ｖ０を基準に閾値ｖ２を求めることができない。
【００７０】
そこで、本実施形態における設定部２２は、距離画像３において、手指領域とタッチ操作対象物９８に対応する領域との面積差が小さい場合でも、手指候補領域を適切に抽出可能な閾値ｖ２を設定する。
【００７１】
具体的には、設定部２２は、距離画像３の輝度ヒストグラムに対して、タッチ操作対象物９８に対応する領域を表す輝度ヒストグラムに類似する形状の関数を近似させ、近似させた関数に基づいて、タッチ操作対象物９８の撮影距離を推定する。そして、設定部２２は、推定したタッチ操作対象物９８の撮影距離に基づいて閾値ｖ２を設定する。
【００７２】
ここで、図７に、距離画像３におけるタッチ操作対象物９８に対応する領域の輝度ヒストグラム（以下、「タッチ操作対象物９８の輝度ヒストグラム」という）を示す。上述したように、タッチ操作対象物９８は、撮影装置１０の撮影方向に対して垂直とみなせる範囲に存在し、その形状は平面状である。すなわち、タッチ操作対象物９８上の各位置における撮影距離は、その位置によらず略一定である。そのため、タッチ操作対象物９８の輝度ヒストグラムは、図７に示すように、ある撮影距離に相当する輝度をピークとし、左右に対照的に広がる形状になるという特徴がある。
【００７３】
したがって、設定部２２は、タッチ操作対象物９８の輝度ヒストグラムに類似する形状の関数として、あるピークを中心に左右対称に広がる形状になるという特徴を表す関数、例えばガウス関数を用いる。距離画像３の輝度ヒストグラムにおいて、この関数と近似される部分は、タッチ操作対象物９８の輝度ヒストグラムを表しているといえる。そこで、設定部２２は、この近似した関数のピーク及び分散等を用いて、タッチ操作対象物９８の撮影距離を推定する。以下では、タッチ操作対象物９８の輝度ヒストグラムに類似する形状の関数として、ガウス関数を用いる例について説明する。
【００７４】
抽出部２３は、設定部２２により設定された手指候補領域輝度（閾値ｖ２）に基づいて、距離画像３から手指候補領域を抽出する。抽出部２３は、抽出した手指候補領域に関する情報を統合部２５に受け渡す。
【００７５】
分割部２４は、取得部２１から受け渡された反射強度画像４を、隣接する画素の輝度差に基づく予め定めた分割アルゴリズムに従って、複数の領域に分割する。分割部２４は、分割した複数の領域に関する情報を統合部２５に受け渡す。
【００７６】
統合部２５は、距離画像３における手指候補領域に関する情報を抽出部２３から取得すると共に、分割された反射強度画像４の複数の領域に関する情報を分割部２４から取得する。統合部２５は、反射強度画像４の複数の領域の中から、輪郭線が手指候補領域と最も類似する領域を抽出領域として選択し、手指候補領域と抽出領域とを統合することで、ユーザの手指領域を確定する。そして、統合部２５は、確定したユーザの手指領域に関する情報を判定部２６に受け渡す。
【００７７】
判定部２６は、統合部２５から受け渡された手指領域に関する情報に基づいて、タッチ操作対象物９８に対してタッチ操作が行われたか否かを判定する。タッチ操作が行われた場合、判定部２６は、タッチ操作に応じた画像が表示装置３０に表示されるように、表示装置３０を制御する。
【００７８】
なお、設定部２２、抽出部２３、分割部２４、統合部２５、及び判定部２６の各々の処理の詳細については後述する。
【００７９】
表示装置３０は、例えば、液晶画面、有機エレクトロルミネッセンス画面等の画面を備える。表示装置３０の画面上には、判定部２６による表示制御により、タッチ操作に応じた画像等の各種情報が表示される。表示装置３０の設置形態としては、ハンズフリー環境を実現するため、例えば前述した眼鏡型ディスプレイ９１のような形態が用いられる。なお、表示装置３０に必ずしも画面は必要なく、例えばユーザの網膜上にレーザを走査しながら照射することで、網膜上に映像を描画する網膜ディスプレイを用いてもよい。
【００８０】
図３では、一例として、物体検出装置２０を撮影装置１０及び表示装置３０と分離させた形態を示しているが、物体検出システム１の装置形態はこれに限られない。例えば、物体検出装置２０を撮影装置１０及び表示装置３０の一方と統合してもよく、また、撮影装置１０、物体検出装置２０、及び表示装置３０を１つの装置として統合してもよい。
【００８１】
次に、図８に、物体検出装置２０をコンピュータで実現する場合の構成図の一例を示す。
【００８２】
コンピュータ１００は、ＣＰＵ１０２、メモリ１０４、及び不揮発性の記憶部１０６を含む。また、コンピュータ１００は、入力装置１１２、撮影装置１０、及び表示装置３０の各々とコンピュータ１００とを接続してデータを送受信するＩ／Ｏ（Input/Output）１０８を含む。ＣＰＵ１０２、メモリ１０４、記憶部１０６、及びＩ／Ｏ１０８の各々は、バス１１０を介して互いに接続される。
【００８３】
入力装置１１２は、例えばキーボード及びマウス等の、コンピュータ１００の操作者がコンピュータ１００に指示を与えるための入力デバイスを含む。また、入力装置１１２は、例えばＣＤ−ＲＯＭ、フラッシュメモリ等の記録媒体１１６に記録されたデータの読み取り、及び記録媒体１１６へのデータの書き込みを行う装置を含む。なお、入力装置１１２を必ずしもＩ／Ｏ１１０に接続する必要はない。
【００８４】
なお、記憶部１０６は、ＨＤＤ（Hard Disk Drive）、フラッシュメモリ等によって実現できる。
【００８５】
記憶部１０６には、コンピュータ１００を図３に示す物体検出装置２０として機能させるための物体検出プログラム１２０が記憶される。物体検出プログラム１２０は、取得プロセス１２１、設定プロセス１２２、抽出プロセス１２３、分割プロセス１２４、統合プロセス１２５、及び判定プロセス１２６を含む。
【００８６】
ＣＰＵ１０２は、物体検出プログラム１２０を記憶部１０６から読み出してメモリ１０４に展開し、物体検出プログラム１２０に含まれる各プロセスを実行する。ＣＰＵ１０２は、取得プロセス１２１を実行することで、図３に示す取得部２１として動作する。また、ＣＰＵ１０２は、設定プロセス１２２を実行することで、図３に示す設定部２２として動作する。また、ＣＰＵ１０２は、抽出プロセス１２３を実行することで、図３に示す抽出部２３として動作する。また、ＣＰＵ１０２は、分割プロセス１２４を実行することで、図３に示す分割部２４として動作する。また、ＣＰＵ１０２は、統合プロセス１２５を実行することで、図３に示す統合部２５として動作する。また、ＣＰＵ１０２は、判定プロセス１２６を実行することで、図３に示す判定部２６として動作する。これにより、物体検出プログラム１２０を実行したコンピュータ１００が物体検出装置２０として動作する。
【００８７】
なお、物体検出プログラム１２０により実現される機能は、例えば半導体集積回路、より詳しくはＡＳＩＣ（Application Specific Integrated Circuit）等で実現することも可能である。
【００８８】
次に、第１実施形態に係る物体検出システム１の作用について説明する。例えば、撮影装置１０が、距離画像３及び反射強度画像４の生成及び出力を開始することを示す撮影通知を物体検出装置２０に通知する。物体検出装置２０は、この撮影通知を取得すると、図９に示す物体検出処理を実行する。
【００８９】
なお、以降では、撮影装置１０で撮影された各画像からユーザの手指５を検出する例を示すが、物体検出装置２０で検出する物体は手指５に限られず、例えば指示棒などの物体上の特定の箇所でもよい。また、距離画像３は、撮影装置１０から物体までの距離が遠くなる程、対応する部分の輝度が高く表示され、反射強度画像４は、物体での赤外光の反射強度が強くなる程、対応する部分の輝度が高く表示される場合を例に説明する。
【００９０】
図９に示す物体検出処理のステップＳ１００で、取得部２１が、撮影装置１０から物体検出装置２０に入力された距離画像３及び反射強度画像４を取得し、例えばメモリ１０４の予め定めた領域にそれぞれ記憶する。
【００９１】
ステップＳ２００で、設定部２２が、距離画像３をメモリ１０４から取得し、距離画像３に基づいて、抽出部２３で使用する手指候補領域輝度（閾値ｖ２）を設定する手指候補領域輝度設定処理を実行する。
【００９２】
図１０は、手指候補領域輝度設定処理の流れの一例を示すフローチャートである。
【００９３】
ステップＳ２０５で、設定部２２が、取得した距離画像３から、輝度ヒストグラムを生成する。
【００９４】
次に、ステップＳ２１０で、設定部２２が、距離画像３の輝度ヒストグラムにおいて、距離画像３の輝度ヒストグラムに近似させるガウス関数のピークに対応する輝度（基準輝度）の探索範囲における最大輝度を、注目輝度に設定する。基準輝度の探索範囲は、距離画像３の輝度ヒストグラムの全範囲としてもよいし、ユーザによるタッチ操作が可能な距離（例えば、１ｍ）に相当する輝度までの範囲としてもよい。
【００９５】
次に、ステップＳ２１５で、設定部２２が、探索範囲を全て探索したか否かを判定する。探索範囲内に、注目輝度として未設定の輝度が存在する場合には、処理はステップＳ２２０へ移行する。一方、探索範囲を全て探索した場合には、処理は図９に示す物体検出処理のステップＳ１００に戻る。
【００９６】
ステップＳ２２０では、設定部２２が、距離画像３の輝度ヒストグラムの注目輝度における勾配変化率を算出すると共に、距離画像３の輝度ヒストグラムの注目輝度における画素数を取得する。設定部２２は、注目輝度における勾配変化率が、所定の閾値−ａ１〜＋ａ１の範囲内で、かつ注目輝度における画素数が所定の閾値ａ２以上か否かを判定する。閾値−ａ１〜＋ａ１の範囲としては、勾配変化率が略０と見做せる範囲を予め定めておく。図１１に示すように、ある輝度における勾配変化率が略０であることは、その輝度が輝度ヒストグラムにおいてピークを有する輝度であることを表す。また、閾値ａ２は、距離画像３上の微小領域をノイズとして除去するための閾値である。
【００９７】
注目輝度における勾配変化率が閾値−ａ１〜＋ａ１の範囲内で、かつ画素数が閾値ａ２以上の場合には、処理はステップＳ２２５へ移行する。一方、注目輝度における勾配変化率が閾値−ａ１〜＋ａ１の範囲を超えているか、又は画素数が閾値ａ２未満の場合には、処理はステップＳ２４０へ移行する。
【００９８】
ステップＳ２２５では、設定部２２が、注目輝度を基準輝度に設定する。そして、設定部２２が、基準輝度を平均輝度、距離画像３の輝度ヒストグラムの基準輝度における画素数をピーク値、及び分散値を変数とするガウス関数を定義する。設定部２２は、分散値を適宜変更しながら、最小二乗法等を用いて、ガウス関数を距離画像３の輝度ヒストグラムに近似させる。
【００９９】
なお、図６の上図に示すように、距離画像３の輝度ヒストグラムにおいて、タッチ操作対象物９８に相当する部分よりも撮影装置１０に近い距離に相当する輝度の部分には、手指や腕等に相当する画素が多数含まれる。そのため、距離が撮影装置１０に近い側、すなわち輝度が小さい側も含めて、タッチ操作対象物９８の輝度ヒストグラムを想定したガウス関数を距離画像３の輝度ヒストグラムに近似させる場合には、適切な近似が行えない場合がある。そこで、例えば、図１２に示すように、基準輝度より輝度が高い範囲を近似対象範囲として、近似を行ってもよい。
【０１００】
次に、ステップＳ２３０で、設定部２２が、上記ステップＳ２２５において、距離画像３の輝度ヒストグラムに近似させたガウス関数の分散値が、所定の閾値ａ３以下か否かを判定する。上述したように、タッチ操作対象物９８は、撮影装置１０の撮影方向に略正対した平面状の物体であることを前提としているため、タッチ操作対象物９８の輝度ヒストグラムを想定したガウス関数の分散値は、ある程度の値以下になると考えられる。この値を閾値ａ３として予め定めておく。すなわち、近似したガウス関数の分散値が閾値ａ３を超える場合には、そのガウス関数に対応する距離画像３の輝度ヒストグラムの部分は、例えば、撮影装置１０の撮影方向に対して傾きを持った物体を表す部分であることが考えられる。このような物体は、本実施形態で前提とするタッチ操作対象物９８には当てはまらないため、近似したガウス関数に対応する距離画像３の輝度ヒストグラムの部分は、タッチ操作対象物９８の輝度ヒストグラムを表す部分ではないと判定するものである。
【０１０１】
距離画像３の輝度ヒストグラムに近似させたガウス関数の分散値が、閾値ａ３以下の場合には、処理はステップＳ２３５へ移行し、分散値が閾値ａ３を超えている場合には、処理はステップＳ２４０へ移行する。
【０１０２】
ステップＳ２３５では、設定部２２が、近似したガウス関数と、距離画像３の輝度ヒストグラムとの誤差が、所定の閾値ａ４以下か否かを判定する。誤差は、例えば、各輝度におけるガウス関数の値と、距離画像３の輝度ヒストグラムの値との差の絶対値又は二乗の総和とすることができる。また、誤差を求める範囲を、上記ステップＳ２２５で距離画像３の輝度ヒストグラムにガウス関数を近似させる際に適用した近似対象範囲に限定してもよい。誤差が閾値ａ４以下の場合には、処理はステップＳ２４５へ移行し、誤差が閾値ａ４を超える場合には、処理はステップＳ２４０へ移行する。
【０１０３】
ステップＳ２４０へ移行した場合には、現在設定中の注目輝度が基準輝度ではない、又は、現在設定中の注目輝度を基準輝度とするガウス関数の近似が失敗したことを表す。そこで、設定部２２が、現在設定中の注目輝度より１つ小さい輝度値を新たな注目輝度に設定する。そして、処理はステップＳ２１５に戻る。
【０１０４】
一方、ステップＳ２４５へ移行した場合には、現在設定中の注目輝度を基準輝度とした場合に、距離画像３の輝度ヒストグラムに対するガウス関数の近似が成功したことを表す。そこで、設定部２２が、上記ステップＳ２２５で近似されたガウス関数に基づいて、手指候補領域輝度（閾値ｖ２）を設定する。上述したように、閾値ｖ２としては、タッチ操作対象物９８に到達しない撮影距離の中で、最大の距離に対応する値、言い換えると、タッチ操作対象物９８までの最近傍距離を設定することが好ましい。具体的には、設定部２２は、図１２に示すように、近似したガウス関数の輝度が小さい側の裾野の所定値、例えば、１σ（σはガウス関数の標準偏差）に相当する輝度を、閾値ｖ２とすることができる。
【０１０５】
閾値ｖ２が設定されると、処理は図９に示す物体検出処理に戻る。
【０１０６】
なお、手指候補領域輝度設定処理における閾値ａ１〜ａ４の各々は、実測又はコンピュータシミュレーション等により得られる、タッチ操作対象物９８の距離画像３上での大きさ等に基づいて事前に求めておく。これらの閾値ａ１〜ａ４は、物体検出プログラム１２０と共に、記憶部１０６の所定の記憶領域に予め記憶しておく。
【０１０７】
次に、図９に示す物体検出処理のステップＳ３００で、抽出部２３が、ステップＳ１００で取得された距離画像３、ステップＳ２００で設定された閾値ｖ２、及びメモリ１０４に予め記憶しておいた閾値ｖ１を取得する。
【０１０８】
そして、抽出部２３は、閾値ｖ１以下の輝度を有する画素の集まりを近傍領域８１（図４（Ｄ）参照）として距離画像３から抽出する。次に、抽出部２３は、近傍領域８１に含まれる画素に隣接し、かつ閾値ｖ２以下の輝度を有する画素を距離画像３から抽出する。更に、抽出部２３は、閾値ｖ２以下の輝度を有する抽出した画素に隣接し、かつ閾値ｖ２以下の輝度を有する画素を距離画像３から抽出する処理を繰り返し実行することで、手指候補領域８０を距離画像３から抽出する。
【０１０９】
このように手指候補領域８０を距離画像３から抽出する理由は、手指５から離れた場所に存在する、輝度が閾値ｖ１より高く閾値ｖ２以下であって、かつ手指５とは異なる異物を、手指５として距離画像３から誤抽出してしまうことを防ぐためである。
【０１１０】
図１３は、距離画像３から近傍領域８１及び手指候補領域８０を抽出した結果の一例を示す図である。距離画像３には手指５の他、輝度が閾値ｖ１より高く閾値ｖ２以下である異物８３が含まれている。しかし、距離画像３から近傍領域８１を抽出した近傍領域抽出結果画像３Ａ、及び距離画像３から手指候補領域８０を抽出した抽出結果画像３Ｂには、共に異物８３は含まれず、手指５だけが抽出されている。
【０１１１】
次に、ステップＳ３５０で、分割部２４が、反射強度画像４をメモリ１０４から取得し、反射強度画像４に含まれる各画素の輝度に基づいて、ステップＳ４００での反射強度画像分割処理による反射強度画像４の分割対象範囲を設定する。
【０１１２】
ここで、分割対象範囲を設定する理由について説明する。例えば、距離センサから照射する赤外光が点光源の場合などには、光源から対象物までの距離や角度によって、物体上に同心円状の照射ムラが発生する。その結果、物体からの反射光の強度に、物体の材質等に基づく本来の反射強度の差異とは別に、照射ムラに起因する強弱も生じてしまう。これにより、反射強度画像４における輝度にも、本来の輝度差とは異なる輝度差が生じてしまい、別々の物体に対応する複数の領域を精度良く分割できない場合がある。
【０１１３】
例えば、赤外光の照射ムラが大きくなるにつれて、図１４に示すように、反射強度画像４の中央部５４と周辺部５５との間で輝度に差異が生じることがある。
【０１１４】
ユーザは、タッチ操作を行う場合、タッチ操作対象物９８を視野の中央に合わせるように頭部や身体の姿勢を調整する傾向がある。このため、頭部等に装着した撮影装置１０から照射する赤外光は視野の中央、すなわち反射強度画像４の中央部５４で最も強くなり、視野の周辺に広がるにつれて弱まるためである。
【０１１５】
反射強度画像４の中央部５４は赤外光の照射強度が強いため、反射光の強度も強くなり、それに伴いタッチ操作対象物９８と手指５との反射強度の差異も大きくなる。
【０１１６】
例えば、図１４の例では、反射強度画像４の中央部５４は周辺部５５に比べて反射光の強度が大きいため、中央部５４では周辺部５５に比べてタッチ操作対象物９８と手指５との反射光の強度の差異が大きくなる。したがって、中央部５４のように、反射強度画像４の反射光の強度が所定値以上の範囲では、周辺部５５に比べて反射強度画像４のタッチ操作対象物９８に対応する領域から検出対象である手指５に対応する領域が抽出し易くなる。その結果、図１４に示すように、反射強度画像４の分割結果である分割画像６（詳細は後述）において、手背部９３より指先９２に対応する領域の方が精度良く抽出できる。
【０１１７】
すなわち、反射強度画像４の反射強度が所定値以上の領域に対して反射強度画像４の分割処理を実行することで、手指５に対応した抽出領域を精度良く抽出することができる。そのため、反射強度が所定値以上の領域を、分割対象範囲として設定するものである。
【０１１８】
具体的には、まず、分割部２４は、反射強度画像４に対して平滑化処理を実行して平滑化画像を生成する。反射強度画像４を平滑化することで、反射強度画像４に含まれるノイズ成分を除去し、分割対象範囲に含まれるべき画素が欠落し、領域の分割が失敗することを回避するためである。
【０１１９】
図１５は、反射強度画像４の分割対象範囲の設定方法を説明する図である。図１５に示すように、分割部２４は、横軸を輝度、縦軸を画素数として、反射強度画像４を平滑化した平滑化画像に含まれる各画素の輝度ヒストグラム８５を生成する。分割部２４は、輝度ヒストグラム８５を生成する際、一例として、各画素の輝度を８ビット、すなわち０から２５５に正規化しているが、８ビットより少ないビット数、又は８ビットより多いビット数で輝度を正規化してもよい。
【０１２０】
そして、分割部２４は、例えば輝度が閾値ｉｒ０以上の画素で形成される領域を、反射強度画像４の分割対象範囲として設定する。
【０１２１】
なお、閾値ｉｒ０は、例えば手指５に対応した抽出候補領域を精度良く反射強度画像４から抽出することができる値として、コンピュータシミュレーション等により予め求められた値であり、例えばメモリ１０４の所定領域に予め記憶しておけばよい。
【０１２２】
図１６は、反射強度画像４の分割対象範囲の設定の流れの一例を示す図である。分割部２４によって反射強度画像４から平滑化画像１１が生成され、更に、平滑化画像１１の輝度ヒストグラム８５から分割対象範囲１２が設定される。
【０１２３】
次に、ステップＳ４００で、分割部２４が、反射強度画像４をメモリ１０４から取得し、反射強度画像４に含まれる各画素の輝度に基づいて、反射強度画像４を複数の領域に分割する反射強度画像分割処理を実行する。なお、反射強度画像分割処理は、反射強度画像４内の分割対象範囲１２に対して実行される。
【０１２４】
図１７は、反射強度画像分割処理の流れの一例を示すフローチャートである。
【０１２５】
まず、ステップＳ４０５で、分割部２４が、反射強度画像４の各画素にラベルを割り当てる。各画素に割り当てる各ラベルには、例えば画素が含まれる領域を示す識別子が含まれる。ステップＳ４０５では、まだ各画素が何れの領域に含まれるか不明であるため、分割部２４は、画素毎に異なる領域を示すラベルを各々の画素に割り当てる。
【０１２６】
次に、ステップＳ４１０で、分割部２４が、同じ領域を示すラベル（以降、「同じラベル」という）が割り当てられている画素の画素数をラベル毎に算出すると共に、同じラベルが割り当てられている画素の輝度平均値をラベル毎に算出する。なお、ステップＳ４０５の直後の本ステップの処理では、各々の画素に割り当てられたラベルは全て異なっている。そのため、同じラベルが割り当てられている画素の画素数は“１”であり、同じラベルが割り当てられている画素の輝度平均値は、各々の画素の輝度値となる。
【０１２７】
次に、ステップＳ４１５で、分割部２４が、反射強度画像４の中から未選択の画素を、注目画素として１つ選択する。
【０１２８】
次に、ステップＳ４２０で、分割部２４が、注目画素と同じラベルを割り当てられている画素数が閾値ｂ１以下であるか否かを判定する。肯定判定の場合には、処理はステップＳ４２５へ移行する。
【０１２９】
ステップＳ４２５では、分割部２４が、注目画素と、その注目画素に隣接する隣接画素とに各々割り当てられているラベルが異なり、かつ注目画素と隣接画素との輝度差が閾値ｂ２以下か否かを判定する。肯定判定の場合には、処理はステップＳ４３０へ移行する。
【０１３０】
なお、反射強度画像４の画素は、横方向及び縦方向に規則正しく碁盤目状（グリッド状）の配置であるため、隣接画素は、例えば注目画素の上、下、左、右、右斜め上、右斜め下、左斜め上、及び左斜め下の最大８個存在する。したがって、ステップＳ４２５では、分割部２４は、隣接画素のうち何れか１つを参照する。
【０１３１】
ステップＳ４３０では、分割部２４が、注目画素と同じラベルをステップＳ４２５で参照した隣接画素に割り当てる。分割部２４は、新たなラベルを割り当てた画素数をカウントするための変数であるラベル変更画素数に“１”を加算して、例えばメモリ１０４の予め定めた領域に記憶する。
【０１３２】
前述したように、例えば物体の材質の相違及び物体の向きによって赤外光の反射強度が変動することがあるが、一般的に見て、同じ物体の赤外光に対する反射強度は比較的近い値を取ることが多い。したがって、ステップＳ４２５で、注目画素と隣接画素との輝度差が閾値ｂ２以下と判定された場合、注目画素と隣接画素とは、同じ物体に対応する同じ領域に含まれる画素である可能性が高いと判断できる。
【０１３３】
すなわち、分割部２４は、注目画素と隣接画素との輝度値が近い場合には、それぞれ同じ物体に対応する領域に含まれる画素であると判定し、注目画素と隣接画素とに同じラベルを割り当てる。この処理を繰り返すことで、ラベルに基づいて生成した領域を広げていく。
【０１３４】
一方、ステップＳ４２５が否定判定の場合には、ステップＳ４３０の処理は実行されず、処理はステップＳ４４０へ移行する。
【０１３５】
ステップＳ４４０では、分割部２４が、ステップＳ４１５で選択した注目画素に、他の隣接画素が存在するか否か判定する。肯定判定の場合には、処理はステップＳ４２０に戻り、分割部２４がステップＳ４２０〜Ｓ４３５の処理を繰り返すことで、輝度差が予め定めた閾値ｂ２以下である隣接する画素同士を結合し、同じ物体と考えられる領域の範囲を広げていく。
【０１３６】
なお、ステップＳ４２０が否定判定となった場合に実行されるステップＳ４３５の処理については、後ほど説明する。
【０１３７】
ステップＳ４４０が否定判定、すなわち、ステップＳ４１５で選択した注目画素と、注目画素の周囲にある全ての隣接画素との輝度差を比較して画素の結合を行った場合は、処理はステップＳ４４５へ移行する。
【０１３８】
ステップＳ４４５では、分割部２４が、反射強度画像４に含まれる全ての画素をステップＳ４１５で選択したか否か判定し、否定判定の場合には、処理はステップＳ４１５に戻り、分割部２４が未選択の他の画素を新たな注目画素として選択する。こうして、分割部２４は、反射強度画像４の分割対象範囲１２に含まれる全ての画素についてステップＳ４１５〜Ｓ４４５の処理を繰り返すことで、同じ物体と考えられる領域の範囲を更に広げていく。
【０１３９】
このように、同じ物体と考えられる領域の範囲を広げていった場合、同じ領域内の画素の輝度にばらつきが生じることがある。その結果、異なる物体に対応する別々の領域に含まれるべき画素を同一の領域に含まれる画素であると誤って判定し、別々の領域を誤って結合する場合が考えられる。このため、ステップＳ４２５で、単に注目画素と隣接画素との輝度差を比較して、隣接画素が注目画素と同じ領域に含まれる画素か否かを判定するだけでは、画素の結合に関して誤判定を生じる可能性がある。
【０１４０】
そこで、分割部２４は、注目画素を含む領域の大きさ（画素数）を所定の閾値と比較する。具体的には、ステップＳ４２０で、領域内の画素数が閾値ｂ１を超えたと判定された場合（すなわち、否定判定の場合）は、処理はステップＳ４３５へ移行し、分割部２４が、画素間の結合の判定について新たな条件を追加して判定する。
【０１４１】
具体的には、ステップＳ４３５において、分割部２４が、注目画素と同じラベルが割り当てられた各画素の輝度平均値と、隣接画素と同じラベルが割り当てられた各画素の輝度平均値とを算出し、これらの輝度平均値差が閾値ｂ３以下か否かを判定する。これは、注目画素を含む領域内、及び隣接画素を含む領域内のそれぞれで輝度のばらつきがあったとしても、各々の領域内における輝度平均値が閾値ｂ３以下であれば、各々の領域は同じ物体を表している可能性が高いと考えられるからである。したがって、肯定判定の場合には、処理はステップＳ４２５へ移行して、分割部２４が、更に画素間の輝度差を判定した上で、ステップＳ４３０で各々の画素に同じラベルを割り当てて領域を結合する。
【０１４２】
一方、ステップＳ４３５の判定処理が否定判定の場合には、注目画素を含む領域、及び隣接画素を含む領域は異なる物体の領域を表していると考えられるため、注目画素と隣接画素とを結合させることなく、処理はステップＳ４４０へ移行する。
【０１４３】
そして、ステップＳ４４５が肯定判定の場合には、処理はステップＳ４５０へ移行する。
【０１４４】
ステップＳ４５０では、分割部２４が、反射強度画像４の分割対象範囲１２に含まれる全ての画素に対する結合した画素の割合に基づいて、反射強度画像４の分割を終了するか否かを判定する。具体的には、分割部２４は、ステップＳ４３０で記憶した、新たなラベルに変更したラベル変更画素数をメモリ１０４から取得し、反射強度画像４の分割対象範囲１２に含まれる全ての画素数に対するラベル変更画素数の割合が閾値ｂ４以下であるか否かを判定する。
【０１４５】
否定判定の場合には、処理はステップＳ４１０に戻り、分割部２４が、ステップＳ４１０〜Ｓ４５０の処理を繰り返すことで、反射強度画像４の分割を更に実行する。分割当初はラベルが変更される画素が多いが、分割が進むにつれて、ラベルが変更される画素が減少していく傾向にある。したがって、ラベルが更新された画素の割合が所定の割合より多い場合には、まだ分割途中であると考えられるため、ステップＳ４５０が否定判定となり、更に反射強度画像４の分割が行われる。すなわち、ラベルが更新された画素の割合が閾値ｂ４より多い場合には、更に反射強度画像４の分割を継続した方が、検出対象である手指５等の物体に近似した領域を得ることができる。
【０１４６】
なお、ステップＳ４５０が否定判定となって、処理がステップＳ４１０に戻る際には、分割部２４は、ラベル変更画素数を“０”に初期化してから、ステップＳ４１０〜Ｓ４５０の処理を繰り返す。
【０１４７】
一方、ステップＳ４５０が肯定判定の場合には、反射強度画像分割処理は終了し、図９に示す物体検出処理に戻る。
【０１４８】
以上により図９に示すステップＳ４００の反射強度画像分割処理が終了し、反射強度画像４の分割対象範囲１２が各画像の輝度に基づいて複数の領域に分割される。
【０１４９】
図１８は、ステップＳ４００の反射強度画像分割処理によって反射強度画像４が複数の領域に分割され、分割画像６が生成される状況を示した図である。なお、図１８では、反射強度画像４の全体が分割対象範囲１２である例を示している。また、画像４１は、反射強度画像分割処理前の反射強度画像４の指先９２部分を拡大した図であり、反射強度画像分割処理が進むに従い、画像４２→画像４３→画像４４→画像４５の順に指先９２の分割状況が変化することを示している。
【０１５０】
次に、図９に示す物体検出処理のステップＳ５００で、統合部２５が、距離画像３から抽出された手指候補領域８０と、反射強度画像から抽出された抽出領域とを統合した領域を、手指５を表す領域として検出する統合処理を実行する。以下、ステップＳ５００における統合処理の詳細について説明する。なお、反射強度画像分割処理の結果、反射強度画像４から得られた複数の領域を含む画像を分割画像６といい、分割画像６の複数の領域のうち、手指候補領域８０の輪郭線と類似する領域を抽出領域という。
【０１５１】
図１９は、統合処理の流れの一例を示すフローチャートである。
【０１５２】
まず、ステップＳ５０５で、統合部２５が、ステップＳ４００で取得した分割画像６の複数の領域の中から、ステップＳ３００で抽出した手指候補領域８０と重複する画素数が最も多い領域（抽出候補領域７）を選択する。
【０１５３】
次に、ステップＳ５１０で、統合部２５が、ステップＳ５０５で選択した抽出候補領域７の画素数に対する、手指候補領域８０との重複部分の画素数の割合が閾値ｃ１以上であるか否かを判定する。閾値ｃ１は、抽出候補領域７が手指５を表す領域であるか否かを判定するための値として、コンピュータシミュレーション等によって予め定められた値であり、例えばメモリ１０４の予め定めた領域に記憶されている。
【０１５４】
ステップＳ５１０が肯定判定の場合には、抽出候補領域７に占める手指候補領域８０との重複部分の割合が閾値ｃ１以上であることを示している。したがって、統合部２５は、ステップＳ５０５で選択した抽出候補領域７は手指５を表す領域の候補であると判定し、処理はステップＳ５１５へ移行する。
【０１５５】
一方、否定判定の場合には、抽出候補領域７に占める手指候補領域８０との重複部分の割合が閾値ｃ１未満であることから、ステップＳ５０５で選択した抽出候補領域７は、手指５を表す領域としては手指候補領域８０との重複部分の割合が少ないと考えられる。したがって、統合部２５は、ステップＳ５０５で選択した抽出候補領域７は手指５を表す領域ではないと判定し、処理はステップＳ５５５へ移行する。
【０１５６】
この場合、図２０に示すように、図９のステップＳ３５０で設定した分割対象範囲１２が広すぎて、抽出候補領域７が手指５以外の他の領域と誤って結合し、抽出候補領域７の大きさが分割対象範囲１２内の手指候補領域８０より大きくなったと考えられる。
【０１５７】
そこで、ステップＳ５５５では、統合部２５が、例えばメモリ１０４の所定領域に予め記憶されている分割対象範囲縮小フラグをオンに設定する。分割対象範囲縮小フラグは、反射強度画像４の分割対象範囲１２を更に縮小するか否かを表す識別子であり、統合部２５は、分割対象範囲縮小フラグをオンに設定することで、分割対象範囲１２の縮小を分割部２４に指示する。そして、統合処理は終了し、図９に示す分割処理に戻る。
【０１５８】
ステップＳ５１５では、統合部２５が、手指候補領域８０の画素数に対する抽出候補領域７の画素数の割合が閾値ｃ２以上であるか否かを判定する。閾値ｃ２は、抽出候補領域７が手指５を表す領域であるか否かを判定するための値として、コンピュータシミュレーション等によって予め定められた値であり、例えばメモリ１０４の予め定めた領域に記憶されている。
【０１５９】
ステップＳ５１５が肯定判定の場合には、手指候補領域８０に占める抽出候補領域７の割合が閾値ｃ２以上であることから、統合部２５は、ステップＳ５０５で選択した抽出候補領域７は手指５を表す領域の候補であると判定し、処理はステップＳ５２０へ移行する。
【０１６０】
一方、ステップＳ５１５が否定判定の場合には、手指候補領域８０に占める抽出候補領域７の割合が閾値ｃ２未満であることから、ステップＳ５０５で選択した抽出候補領域７は手指５を表す領域としては手指候補領域８０との重複部分の割合が少ないと考えられる。したがって、統合部２５は、ステップＳ５０５で選択した抽出候補領域７は手指５を表す領域ではないと判定し、統合処理は終了し、図９に示す分割処理に戻る。
【０１６１】
このように、ステップＳ５１５で否定判定となる原因としては、例えば赤外光の照射ムラ等の理由により、図２１に示すように、例えば抽出候補領域７が手指候補領域８０の大きさに比べて過剰に分割され、小さくなってしまったためと考えられる。この場合、例えば手指５を照らす光源の数又は位置等の調整を促すようなメッセージをユーザに提示するようにしてもよい。
【０１６２】
ステップＳ５２０では、統合部２５が、手指候補領域８０及び抽出候補領域７の輪郭線をそれぞれ抽出する。なお、輪郭線の抽出には、例えばガウシアンフィルタを用いて輪郭を強調することで輪郭線を抽出するＣａｎｎｙ法等、公知の抽出方法を用いることができる。
【０１６３】
次に、ステップＳ５２５で、統合部２５が、手指候補領域８０の輪郭線から、抽出候補領域７の輪郭線との類似度の比較に用いない比較対象外の部分（除外輪郭線）を抽出する。
【０１６４】
具体的には、統合部２５は、ステップＳ５２０で抽出した手指候補領域８０の輪郭線に含まれる各画素と、手指候補領域８０の輪郭線に含まれる各画素に隣接し、かつ手指候補領域８０の領域外にある隣接画素との輝度差を算出する。そして、統合部２５は、手指候補領域８０の輪郭線に含まれる各画素のうち、当該輝度差が所定の値より小さい画素を抽出する。
【０１６５】
なお、手指候補領域８０の輪郭線に含まれる画素について、複数の隣接画素が存在する場合、例えば、手指候補領域８０の輪郭線に含まれる画素と、その画素についての複数の隣接画素の各々との輝度差の平均値と、所定の値とを比較してもよい。また、手指候補領域８０の輪郭線に含まれる画素と、その画素についての複数の隣接画素の各々との輝度差の最大値と、所定の値とを比較してもよい。
【０１６６】
更に、統合部２５は、輝度差が所定の値より小さい画素が所定の数以上連続する部分を除外輪郭線として手指候補領域８０の輪郭線から抽出すると共に、距離画像３における除外輪郭線の各々の端点の座標を取得する。
【０１６７】
既に説明したように、距離画像３では、タッチ操作対象物９８と指先９２との距離が近いため、ステップＳ５２０で指先９２の輪郭線が距離画像３から抽出されない場合が多い。すなわち、ステップＳ５２０で抽出された手指候補領域８０の輪郭線は、本来の物体の輪郭線ではない場合が多い。手指候補領域８０の輪郭線に含まれる画素との輝度差が所定の値より小さい隣接画素は、手指候補領域８０と同じ物体（この場合、指先９２）を表している可能性が高いと考えられる。したがって、画素間の輝度差に関して上記条件を満たす手指候補領域８０の輪郭線を除外輪郭線として手指候補領域８０の輪郭線から抽出することで、本来の物体の輪郭線とは異なる輪郭線の部分を取得することができる。
【０１６８】
図２２は、手指候補領域８０の輪郭線について説明する図である。例えば、図２２（Ａ）に示す手指候補領域８０が距離画像３から抽出された場合、図２２（Ｂ）に示すように手指候補領域８０の輪郭線上から除外輪郭線５０が抽出される。また、手指候補領域８０の輪郭線上における除外輪郭線５０の端部が、端点５０Ａ、５０Ｂとして抽出される。
【０１６９】
次に、ステップＳ５３０で、統合部２５が、ステップＳ５２５で手指候補領域８０の輪郭線から抽出した端点５０Ａ、５０Ｂに対応する抽出候補領域７の輪郭線上の位置を取得する。具体的には、統合部２５は、ステップＳ５２０で抽出した抽出候補領域７の輪郭線に含まれる各画素の中から、ステップＳ５２５で取得した除外輪郭線５０の各々の端点５０Ａ、５０Ｂの座標に最も近い画素である最近傍画素の座標を各々取得する。取得した各々の最近傍画素の座標は、手指候補領域８０の端点５０Ａ、５０Ｂに対応した端点を表す。
【０１７０】
図２３は、抽出候補領域７の輪郭線について説明する図である。例えば、図２３（Ａ）に示す抽出候補領域７が反射強度画像４から選択された場合、図２３（Ｂ）に示すように、抽出候補領域７の輪郭線上から、手指候補領域８０の端点５０Ａ、５０Ｂにそれぞれ対応した端点５２Ａ、５２Ｂが取得される。
【０１７１】
次に、ステップＳ５３５で、統合部２５が、図９のステップＳ３５０で設定した反射強度画像４の分割対象範囲１２を距離画像３上に重ね合わせる。そして、統合部２５は、距離画像３の手指候補領域８０の輪郭線と、距離画像３上に重ね合わせた分割対象範囲１２との交点の座標を、分割対象範囲１２と交差する手指候補領域８０の輪郭線の端点として取得する。
【０１７２】
例えば、図２２（Ａ）に示すように、距離画像３上に分割対象範囲１２が重ね合わされた場合、図２２（Ｂ）に示すように、分割対象範囲１２と交差する手指候補領域８０の輪郭線の端点５６Ａ、５６Ｂが取得される。なお、端点５６Ａと端点５６Ｂとを接続する線を手指候補領域８０における分割輪郭線５６という。
【０１７３】
分割輪郭線５６は、分割対象範囲１２によって生成される輪郭線であるため、除外輪郭線５０と同様に、本来の物体の輪郭線とは異なる輪郭線を示している。したがって、分割対象範囲１２に含まれる手指候補領域８０の輪郭線のうち、除外輪郭線５０及び分割輪郭線５６以外の他の輪郭線が比較輪郭線８となる。
【０１７４】
更に、統合部２５は、反射強度画像４の抽出候補領域７の輪郭線と分割対象範囲１２との交点の座標を、分割対象範囲１２と交差する抽出候補領域７の輪郭線の端点として取得する。
【０１７５】
例えば、図２３（Ａ）に示すように分割対象範囲１２が設定された反射強度画像４から抽出候補領域７が選択された場合、図２３（Ｂ）に示すように、分割対象範囲１２と交差する抽出候補領域７の輪郭線の端点５７Ａ、５７Ｂが取得される。なお、端点５７Ａと端点５７Ｂとを接続する線を抽出候補領域７における分割輪郭線５７という。
【０１７６】
分割輪郭線５７は、手指候補領域８０における分割輪郭線５６と同様に、分割対象範囲１２によって生成される輪郭線であるため、本来の物体の輪郭線とは異なる輪郭線を示している。したがって、抽出候補領域７の輪郭線のうち、端点５２Ａと端点５７Ａとの間の輪郭線、及び端点５２Ｂと端点５７Ｂとの間の輪郭線が抽出候補領域７における比較輪郭線９となる。
【０１７７】
次に、ステップＳ５４０では、統合部２５が、手指候補領域８０における比較輪郭線８の形状特徴と、抽出候補領域７における比較輪郭線９の形状特徴とを取得し、各々の比較輪郭線８、９の形状特徴の差異を算出する。比較輪郭線８、９の形状特徴は、例えば、比較輪郭線８、９に含まれる各々の画素を積分することで算出される輪郭モーメントによって数値化される。輪郭モーメントの算出方法には公知の方法を用いることができるが、例えば輪郭線の相似、並進、回転に不変な性質を有するＨｕ不変モーメントを用いればよい。
【０１７８】
したがって、統合部２５は、手指候補領域８０における比較輪郭線８のＨｕ不変モーメントの値と、抽出候補領域７における比較輪郭線９のＨｕ不変モーメントの値との差分を算出する。なお、Ｈｕ不変モーメントの差分が小さい程、比較輪郭線８、９の形状特徴が類似していることを表す。
【０１７９】
ステップＳ５４５では、統合部２５が、ステップＳ５４０で算出した比較輪郭線８、９のＨｕ不変モーメントの差分が閾値ｃ０以下であるか否かを判定する。閾値ｃ０は、比較輪郭線８、９の形状特徴が互いに類似しているか否かを判定するための値として、コンピュータシミュレーション等によって予め定められた値であり、例えばメモリ１０４の予め定めた領域に記憶されている。
【０１８０】
ステップＳ５４５が肯定判定の場合には、手指候補領域８０における比較輪郭線８の形状特徴と、抽出候補領域７における比較輪郭線９の形状特徴とが類似しているとみなすことができる。すなわち、図９のステップＳ４００での反射強度画像分割処理で、手指５に対応する領域が反射強度画像４から正しく分割されたことになる。したがって、統合部２５は、手指候補領域８０と抽出候補領域７とは同じ手指５を表していると判定し、処理はステップＳ５５０へ移行する。なお、ステップＳ５４５が肯定判定となる場合の抽出候補領域７が抽出領域となる。
【０１８１】
ステップＳ５５０では、統合部２５が、ステップＳ３００で距離画像３から抽出された手指候補領域８０と、ステップＳ５０５で反射強度画像４から選択した抽出領域とを統合して、ユーザの手指領域を確定する。ここで、手指候補領域８０と抽出領域とを統合するとは、手指候補領域８０に含まれる画素の位置と、抽出領域に含まれる画素の位置とに関して各々論理和をとり、手指候補領域８０と抽出領域とを重ね合わせて１つの手指領域とすることをいう。そして、統合処理を終了し、図９に示す物体検出処理に戻る。
【０１８２】
一方、ステップＳ５４５が否定判定の場合には、統合部２５は、図９のステップＳ４００での反射強度画像分割処理で、手指５に対応する領域が反射強度画像４から正しく分割されなかったとみなす。したがって、統合部２５は、手指候補領域８０と抽出候補領域７とは異なる物体を表していると判定し、手指候補領域８０と抽出候補領域７とを統合することなく、統合処理を終了し、図９に示す物体検出処理に戻る。
【０１８３】
次に、図９に示す物体検出処理のステップＳ６００で、分割部２４が、分割対象範囲縮小フラグがオンに設定されているか否かを判定する。否定判定の場合には、ステップＳ３５０で反射強度画像４の分割対象範囲１２が適切に設定されたとみなし、処理はステップＳ８００へ移行する。
【０１８４】
なお、ステップＳ５００の統合処理で、手指候補領域８０と抽出領域とが統合されず、ユーザの手指領域８４が確定しなかった場合、分割画像６の分割条件を修正して、ステップＳ４００の反射強度画像分割処理を再度実行してもよい。
【０１８５】
例えば、図１９のステップＳ５１５の判定処理が否定判定となったことでユーザの手指領域８４が確定しなかった場合、分割画像６上で、手指５に対応する領域が複数の領域に細かく分割されてしまったことが原因の１つとして考えられる。したがって、例えば、図９のステップＳ４００における反射強度画像分割処理で隣接画素との結合条件を決定する閾値ｂ２を大きくする等して、反射強度画像分割処理を再度実行してもよい。
【０１８６】
一方、ステップＳ６００の判定処理が肯定判定の場合には、処理はステップＳ７００に移行する。
【０１８７】
ステップＳ７００では、分割部２４が、ステップＳ３５０で反射強度画像４の分割対象範囲１２を設定する際に用いた輝度に関する閾値を上げる。例えば、図１５に示すように、当初の分割対象範囲１２を設定する際に用いた閾値がｉｒ０であれば、分割部２４は、閾値ｉｒ０に対して閾値をｉｒほど上げたｉｒ１を新たな分割対象範囲１２の閾値とする。このように、分割部２４が、分割対象範囲１２を設定する際に用いる閾値を更新した後、処理はステップＳ３５０に戻る。
【０１８８】
ステップＳ３５０では、分割部２４が、ステップＳ７００で更新された閾値（例えば閾値ｉｒ１）以上の輝度を有する画素で形成される領域を、反射強度画像４の分割対象範囲１２として設定する。
【０１８９】
図２４は、閾値をｉｒ１に上昇した場合の反射強度画像４の分割対象範囲１２の例を示す図である。閾値をｉｒ１に上昇した場合、閾値ｉｒ１より低い閾値ｉｒ０を用いた場合の分割対象範囲１２（図２０参照）より、分割対象範囲１２が狭くなる。したがって、閾値更新前に比べて、手指５に対応する領域が他の領域と誤って結合する可能性が低くなることから、ステップＳ４００において、分割部２４は、手指５の形状に近づくように反射強度画像４を分割することができる。
【０１９０】
図２５は、図１９に示す統合処理によって統合された手指領域８４の一例を示す図である。図２５に示すように、手指領域８４は、距離画像３の手指候補領域８０と、反射強度画像４を分割した分割画像６の抽出領域とを統合した領域として表される。
【０１９１】
図９に示す物体検出処理のステップＳ８００で、判定部２６が、上記ステップＳ５００で確定された手指領域８４に基づいて、ユーザの手指５がタッチ操作対象物９８にタッチしたか否かを判定する判定処理を実行する。以下、ステップＳ８００における判定処理の詳細について説明する。
【０１９２】
図２６は、判定処理の流れの一例を示すフローチャートである。
【０１９３】
まず、ステップＳ８０５で、判定部２６が、上記ステップＳ５００において、手指領域８４が確定しているか否かを判定する。上記ステップＳ５１５で否定判定されて本ステップへ移行した場合には、手指領域８４が確定していないため否定判定される。この場合、判定処理を終了すると共に、図９に示す物体検出処理自体も終了する。一方、手指領域８４が確定している場合には、処理はステップＳ８１０へ移行する。
【０１９４】
ステップＳ８１０では、判定部２６が、手指領域８４の形状から、タッチ操作対象物９８にタッチする部位であると考えられる指先位置を推定する。例えば、判定部２６は、手指領域８４の輪郭線上の各点について曲率を算出し、最も曲率が高い部分を指先位置として推定することができる。また、判定部２６は、パターンマッチング等により予め定めた位置を指先位置として推定するようにしてもよい。
【０１９５】
次に、ステップＳ８１５で、判定部２６が、推定した指先位置に相当する距離画像３の画素の輝度値に基づいて、指先位置までの撮影距離を取得する。また、判定部２６は、指先で隠蔽されたタッチ操作対象物９８上の位置までの撮影距離を推定する。指先で隠蔽されたタッチ操作対象物９８上の位置までの撮影距離は、タッチ操作対象物９８が平面状であることを利用して、距離画像３における手指領域８４の周辺画素の輝度値を用いて推定することができる。なお、手指領域８４の周辺画素は、タッチ操作対象物９８に対応する領域上の画素である必要がある。したがって、手指領域８４外の画素で、かつ手指領域８４から所定範囲内に存在する画素を、周辺画素として用いる。また、手指領域８４外の画素で、かつ上記ステップＳ２００で得られた基準輝度を中心とした所定範囲内の輝度値を有する画素を、周辺画素として用いてもよい。基準輝度は、タッチ操作対象物９８までの撮影距離に相当する輝度値として推定された輝度値だからである。
【０１９６】
より具体的には、判定部２６は、距離画像３において、手指領域８４の周辺の少なくとも２つの周辺画素と指先位置に相当する画素とを通る直線を求め、周辺画素の各々の輝度値を用いた線形補間により、指先位置に相当する画素の位置における輝度値を算出する。そして、判定部２６は、線形補間により算出した輝度値に相当する撮影距離を、指先で隠蔽されたタッチ操作対象物９８上の位置までの撮影距離として推定することができる。また、判定部２６は、距離画像３における手指領域８４の周辺の複数の周辺画素の画素位置及び輝度値から、その複数の周辺画素に相当する位置を含む平面を算出し、その平面をタッチ操作対象物９８に相当する平面とする。そして、判定部２６は、タッチ操作対象物９８に相当する平面上で、推定した指先位置に相当する位置を求め、その位置と撮影装置１０との距離を、指先で隠蔽されたタッチ操作対象物９８上の位置までの撮影距離として推定することができる。
【０１９７】
次に、ステップＳ８２０で、判定部２６が、上記ステップＳ８１５で取得した又は推定した指先位置までの撮影距離と、指先で隠蔽されたタッチ操作対象物９８上の位置までの撮影距離との差が、所定の閾値ｄ１以下か否かを判定する。閾値ｄ１は、指先の厚みを考慮した値（例えば、１ｃｍ）を、例えばメモリ１０４の所定領域に予め記憶しておけばよい。両撮影距離の差が閾値ｄ１より大きい場合には、判定部２６は、タッチ操作対象物９８に対するタッチ操作は行われていないと判定し、判定処理を終了すると共に、図９に示す物体検出処理自体も終了する。両撮影距離の差が閾値ｄ１以下の場合には、処理はステップＳ８２５へ移行し、判定部２６が、タッチ操作に応じた画面が表示されるように表示装置３０を制御する。
【０１９８】
例えば、判定部２６は、文字列やバーコードとしてタッチ操作対象物９８に表示されたタッチ操作対象物９８の識別情報や設置位置等のタッチ操作情報を、距離画像３及び反射強度画像４の少なくとも一方を画像処理することにより取得する。そして、判定部２６は、取得したタッチ操作情報に予め対応付けられている提示情報、例えばマニュアル等の画像データを所定の記憶装置から取得し、取得した提示情報を表示装置３０に表示する。
【０１９９】
なお、タッチ操作情報は、距離画像３及び反射強度画像４の少なくとも一方を画像処理することにより取得される場合に限定されない。例えば、撮影装置１０とは別に光学カメラをユーザに装着し、判定部２６は、その光学カメラで撮影された画像を画像処理して、タッチ操作情報を取得してもよい。また、ユーザの位置を検出する位置センサをユーザに装着し、判定部２６は、タッチ操作が行われたと判定した際のユーザの位置情報をタッチ操作情報として取得してもよい。
【０２００】
タッチ操作に応じた表示装置３０への表示制御が終了すると、判定処理を終了すると共に、図９に示す物体検出処理自体も終了する。
【０２０１】
以上、第１実施形態に係る物体検出装置２０によれば、距離画像３から手指候補領域８０を抽出するための閾値ｖ２を設定する際に、距離画像３の輝度ヒストグラムが用いられる。そして、距離画像３の輝度ヒストグラムにおいて、タッチ操作対象物９８の輝度ヒストグラムの形状に類似する関数を近似させ、近似させた関数に基づいて、タッチ操作対象物９８の撮影距離を推定する。この推定したタッチ操作対象物９８の撮影距離に基づいて、手指候補領域８０を抽出するための閾値ｖ２を設定する。これにより、手指領域とタッチ操作対象物９８に対応する領域との面積差が小さい場合でも、輝度ヒストグラムの勾配変化率に基づいて閾値を設定する場合に比べ、閾値を適切に設定することができ、精度良く手指領域を抽出することができる。
【０２０２】
また、第１実施形態に係る物体検出装置２０によれば、反射強度画像４を複数の領域に分割し、分割した領域の中から、輪郭線に基づいて距離画像３から抽出した手指候補領域８０と類似する抽出領域を取得する。そして、物体検出装置２０は、手指候補領域８０と抽出領域とを統合し、撮影装置１０の画像上における物体の位置及び形状を特定する。したがって、各領域の輪郭線の類似度を判定することなく、単に手指候補領域８０と重複する反射強度画像４の抽出候補領域７と手指候補領域８０とを統合する場合に比べて、撮影装置１０の画像から物体の大きさ、位置、及び形状を精度良く抽出することができる。
【０２０３】
また、第１実施形態に係る物体検出装置２０によれば、各領域の輪郭線の類似度を判定する際、手指候補領域８０及び抽出候補領域７の各々の輪郭線のうち、比較輪郭線８、９を用いて手指候補領域８０及び抽出候補領域７の類似度を判定する。したがって、手指候補領域８０及び抽出候補領域７を囲む全ての輪郭線を用いて、手指候補領域８０及び抽出候補領域７の類似度を判定する場合に比べて、撮影装置１０の画像から物体の大きさ、位置、及び形状を更に精度良く抽出することができる。
【０２０４】
また、第１実施形態に係る物体検出装置２０によれば、反射強度画像４の反射強度が所定値以上の領域に対して反射強度画像分割処理を実行する。したがって、物体検出装置２０は、例えば検出対象である物体に光源の照射ムラがある場合であっても、撮影装置１０で撮影した画像から物体の大きさ、位置、及び形状を精度良く抽出することができる。
【０２０５】
また、第１実施形態に係る物体検出装置２０によれば、反射強度画像４から選択した抽出候補領域７に占める手指候補領域８０との重複部分の割合が閾値より小さい場合、反射強度画像４の分割対象範囲１２を縮小して、抽出候補領域７を選択し直す。したがって、例えば検出対象である物体に光源の照射ムラがある場合であっても、物体検出装置２０は、実際の手指５の大きさ、位置、及び形状に近い抽出領域を反射強度画像４から抽出することができる。
【０２０６】
なお、物体検出システム１において撮影装置１０は必ずしも必要ではない。例えば、取得部２１は、予め撮影され、コンピュータ等の電子機器に記憶されている距離画像３及び反射強度画像４を、インターネット等のネットワークを経由して当該電子機器から取得してもよい。
【０２０７】
また、第１実施形態では、反射強度画像分割処理において、分割対象範囲を設定する場合について説明したが、分割対象範囲を設定することなく、反射強度画像４の全体を分割処理の対象としてもよい。この場合、図２７及び図２８に示すように、比較輪郭線８、９を定義すればよい。
【０２０８】
具体的には、例えば、図２７（Ａ）に示す手指候補領域８０が距離画像３から抽出された場合、図２７（Ｂ）に示すように、手指候補領域８０の輪郭線と距離画像３の枠線との交点を求める。そして、この交点を枠線と交差する手指候補領域８０の輪郭線の端点５１Ａ、５１Ｂとして取得する。手指候補領域８０の輪郭線のうち、距離画像３の枠線と重複する輪郭線（枠輪郭線５１）は、距離画像３の画角によって生成された輪郭線であるため、除外輪郭線５０と同様に、本来の物体の輪郭線とは異なる輪郭線を示している。したがって、手指候補領域８０の輪郭線のうち、除外輪郭線５０及び枠輪郭線５１以外の他の輪郭線を比較輪郭線８とすればよい。
【０２０９】
また、例えば、図２８（Ａ）に示す抽出候補領域７が反射強度画像４から抽出された場合、図２８（Ｂ）に示すように、抽出候補領域７の輪郭線と反射強度画像４の枠線との交点を求める。そして、この交点を枠線と交差する抽出候補領域７の輪郭線の端点５３Ａ、５３Ｂとして取得する。抽出候補領域７の輪郭線のうち、反射強度画像４の枠線と重複する輪郭線（枠輪郭線５３）は、反射強度画像４の画角によって生成された輪郭線であるため、本来の物体の輪郭線とは異なる輪郭線を示している。したがって、抽出候補領域７の輪郭線のうち、端点５２Ａと端点５３Ａとの間の輪郭線、及び端点５２Ｂと端点５３Ｂとの間の輪郭線を比較輪郭線９とすればよい。
【０２１０】
また、分割対象領域を設定しない場合には、図１９に示す統合処理のステップＳ５５５、図９に示す物体検出処理のステップＳ６００及びＳ７００の処理は省略する。また、この場合、図１９に示す統合処理のステップＳ５１０で否定判定された場合には、上記ステップＳ５１５で否定判定された場合と同様に、例えば手指５を照らす光源の数又は位置等の調整を促すようなメッセージをユーザに提示するようにしてもよい。
【０２１１】
＜第２実施形態＞
次に、第２実施形態について説明する。なお、第２実施形態に係る物体検出システムにおいて、第１実施形態に係る物体検出システム１と同様の部分については、同一符号を付して詳細な説明を省略する。
【０２１２】
図３に示すように、物体検出システム１Ａは、撮影装置１０、物体検出装置２０Ａ、及び表示装置３０を含む。物体検出装置２０Ａは、機能的には、取得部２１、設定部２２Ａ、抽出部２３、分割部２４、統合部２５、及び判定部２６を含む。
【０２１３】
ここで、タッチ操作対象物９８とユーザの頭部等に装着された撮影装置１０との相対的な距離や姿勢の変化は、タッチ操作時においては小さいと考えられる。したがって、距離画像３のフレーム間における輝度ヒストグラムの変化も小さいと考えられる。距離画像３の輝度ヒストグラムの変化が小さいということは、タッチ操作対象物９８の輝度ヒストグラムを想定したガウス関数を近似させる際の基準輝度の変化も小さいと考えられる。
【０２１４】
そこで、第２実施形態における設定部２２Ａは、前フレームでガウス関数の近似に成功している場合には、現フレームでの基準輝度の探索の際に、前フレームにおける基準輝度を中心とした所定範囲に探索範囲を限定する。その他の設定部２２Ａの機能については、第１実施形態における設定部２２と同様である。
【０２１５】
物体検出装置２０Ａは、図８に示すコンピュータ１００で実現することができる。コンピュータ１００の記憶部１０６には、コンピュータ１００を図３に示す物体検出装置２０Ａとして機能させるための物体検出プログラム１２０Ａが記憶される。物体検出プログラム１２０Ａは、取得プロセス１２１、設定プロセス１２２Ａ、抽出プロセス１２３、分割プロセス１２４、統合プロセス１２５、及び判定プロセス１２６を含む。
【０２１６】
ＣＰＵ１０２は、物体検出プログラム１２０Ａを記憶部１０６から読み出してメモリ１０４に展開し、物体検出プログラム１２０Ａに含まれる各プロセスを実行する。ＣＰＵ１０２は、設定プロセス１２２Ａを実行することで、図３に示す設定部２２Ａとして動作する。他のプロセスについては、第１実施形態における物体検出プログラム１２０と同様である。これにより、物体検出プログラム１２０Ａを実行したコンピュータ１００が物体検出装置２０Ａとして動作する。
【０２１７】
なお、物体検出プログラム１２０Ａにより実現される機能は、例えば半導体集積回路、より詳しくはＡＳＩＣ等で実現することも可能である。
【０２１８】
次に、第２実施形態に係る物体検出システム１Ａの作用について説明する。第２実施形態では、図９に示す物体検出処理のステップＳ２００で実行される手指候補領域輝度設定処理が第１実施形態とは異なる。そこで、以下では、図２９を参照して、第２実施形態における手指候補領域輝度設定処理について説明する。なお、第１実施形態における手指候補領域輝度設定処理と同様の処理については、同一符号を付して詳細な説明を省略する。
【０２１９】
まず、ステップＳ２０５で、設定部２２Ａが、距離画像３から輝度ヒストグラムを生成する。そして、次のステップＳ２０６で、設定部２２Ａが、前フレームの距離画像３について、距離画像３の輝度ヒストグラムに対する、タッチ操作対象物９８を想定したガウス関数の近似が成功しているか否かを判定する。具体的には、設定部２２Ａは、所定の記憶領域に、前フレームのフレーム番号に対応付けて基準輝度が記録されているか否かを確認する。この記憶領域には、前フレームの距離画像３に対する手指候補領域輝度設定処理を実行した際に、ガウス関数の近似に成功している場合には、後述するステップＳ２９０において、近似に成功したガウス関数の基準輝度が記録されている。したがって、この記憶領域に前フレームの基準輝度が記録されている場合には、設定部２２Ａは、前フレームでガウス関数の近似が成功していると判定し、その基準輝度の情報を取得して、処理はステップＳ２０７へ移行する。前フレームの基準輝度が記録されていない場合には、設定部２２Ａは、前フレームでガウス関数の近似が失敗していると判定し、処理はステップＳ２０１へ移行する。
【０２２０】
ステップＳ２０７では、設定部２２Ａが、上記ステップＳ２０６で取得した前フレームの基準輝度を中心とする所定範囲を、現フレームでの基準輝度の探索範囲として決定する。所定範囲は、現フレームの距離画像３の輝度ヒストグラムの全輝度範囲よりも小さな範囲とする。
【０２２１】
以降、ステップＳ２５０〜Ｓ２８５において、第１実施形態における手指候補領域輝度設定処理のステップＳ２１０〜Ｓ２４５と同様の処理が実行される。なお、ステップＳ２５５で否定判定された場合には、ステップＳ１００に戻るのではなく、ステップＳ２０１へ移行する。
【０２２２】
ステップＳ２０１では、設定部２２Ａが、第１実施形態における手指候補領域輝度設定処理を実行する。具体的には、図１０に示すステップＳ２１０〜Ｓ２４５と同様である。そして、処理はステップＳ２８５の次のステップＳ２９０へ移行する。
【０２２３】
ステップＳ２９０では、設定部２２Ａが、現在の基準輝度を、現フレームのフレーム番号に対応付けて所定の記憶領域に記憶し、処理はステップＳ３００へ移行する。
【０２２４】
以上、第２実施形態に係る物体検出装置２０Ａによれば、距離画像３の輝度ヒストグラムにガウス関数を近似させる際の基準輝度の探索範囲が限定されるため、基準輝度の探索処理の計算量を低減することができる。
【０２２５】
＜第３実施形態＞
次に、第３実施形態について説明する。なお、第３実施形態に係る物体検出システムにおいて、第１及び第２実施形態に係る物体検出システム１、１Ａと同様の部分については、同一符号を付して詳細な説明を省略する。
【０２２６】
図３に示すように、物体検出システム１Ｂは、撮影装置１０、物体検出装置２０Ｂ、及び表示装置３０を含む。物体検出装置２０Ｂは、機能的には、取得部２１、設定部２２Ｂ、抽出部２３、分割部２４、統合部２５、及び判定部２６を含む。
【０２２７】
ここで、タッチ操作対象物９８とユーザの頭部等に装着された撮影装置１０との相対的な距離や姿勢の変化は、タッチ操作時においては小さいと考えられる。また、タッチ操作対象物９８に手指を近づける動作は、撮影装置１０の撮影方向に沿った動作となるため、撮影装置１０による撮影範囲内での手指の位置及び大きさの変化は小さいと考えられる。したがって、距離画像３のフレーム間における輝度ヒストグラムの変化も小さいと考えられる。距離画像３の輝度ヒストグラムの変化が小さいということは、距離画像３の輝度ヒストグラムに近似させたガウス関数のパラメータ（平均に相当する基準輝度、基準輝度における画素数、及び分散値）の変化も小さいと考えられる。
【０２２８】
そこで、第３実施形態における設定部２２Ｂは、前フレームでガウス関数の近似に成功している場合には、前フレームで近似が成功したガウス関数と、現フレームの距離画像３の輝度ヒストグラムとの誤差を閾値ａ４と比較する。そして、設定部２２Ｂは、誤差が閾値ａ４以下であれば、前フレームで近似が成功したガウス関数が、現フレームにおいても近似に成功したものとする。その他の設定部２２Ｂの機能については、第１及び第２実施形態における設定部２２、２２Ａと同様である。
【０２２９】
物体検出装置２０Ｂは、図８に示すコンピュータ１００で実現することができる。コンピュータ１００の記憶部１０６には、コンピュータ１００を図３に示す物体検出装置２０Ｂとして機能させるための物体検出プログラム１２０Ｂが記憶される。物体検出プログラム１２０Ｂは、取得プロセス１２１、設定プロセス１２２Ｂ、抽出プロセス１２３、分割プロセス１２４、統合プロセス１２５、及び判定プロセス１２６を含む。
【０２３０】
ＣＰＵ１０２は、物体検出プログラム１２０Ｂを記憶部１０６から読み出してメモリ１０４に展開し、物体検出プログラム１２０Ｂに含まれる各プロセスを実行する。ＣＰＵ１０２は、設定プロセス１２２Ｂを実行することで、図３に示す設定部２２Ｂとして動作する。他のプロセスについては、第１実施形態における物体検出プログラム１２０と同様である。これにより、物体検出プログラム１２０Ｂを実行したコンピュータ１００が物体検出装置２０Ｂとして動作する。
【０２３１】
なお、物体検出プログラム１２０Ｂにより実現される機能は、例えば半導体集積回路、より詳しくはＡＳＩＣ等で実現することも可能である。
【０２３２】
次に、第３実施形態に係る物体検出システム１Ｂの作用について説明する。第３実施形態では、図９に示す物体検出処理のステップＳ２００で実行される手指候補領域輝度設定処理が第１実施形態とは異なる。そこで、以下では、図３０を参照して、第３実施形態における手指候補領域輝度設定処理について説明する。なお、第１又は第２実施形態における手指候補領域輝度設定処理と同様の処理については、同一符号を付して詳細な説明を省略する。
【０２３３】
まず、ステップＳ２０５で、設定部２２Ｂが、距離画像３から輝度ヒストグラムを生成する。そして、次のステップＳ２０８で、設定部２２Ｂが、前フレームの距離画像３について、距離画像３の輝度ヒストグラムに対する、タッチ操作対象物９８を想定したガウス関数の近似が成功しているか否かを判定する。具体的には、設定部２２Ｂは、所定の記憶領域に、前フレームのフレーム番号に対応付けてガウス関数のパラメータが記録されているか否かを確認する。この記憶領域には、前フレームの距離画像３に対する手指候補領域輝度設定処理を実行した際に、ガウス関数の近似に成功している場合には、後述するステップＳ２９１において、近似に成功したガウス関数のパラメータが記録されている。したがって、この記憶領域に前フレームのガウス関数のパラメータが記録されている場合には、設定部２２Ｂは、前フレームでガウス関数の近似が成功していると判定し、処理はステップＳ２０９へ移行する。前フレームのガウス関数のパラメータが記録されていない場合には、設定部２２Ａは、前フレームでガウス関数の近似が失敗していると判定し、処理はステップＳ２０１へ移行する。
【０２３４】
ステップＳ２０９では、設定部２２Ｂが、所定の記憶領域から、前フレームのガウス関数のパラメータを取得する。次に、ステップＳ２７６で、設定部２２Ｂが、ステップＳ２０９で取得したパラメータで定義されるガウス関数と、上記ステップＳ２０５で生成した現フレームの距離画像３の輝度ヒストグラムとの誤差を算出し、誤差が閾値ａ４以下か否かを判定する。誤差が閾値ａ４以下の場合には、処理はステップＳ２８６へ移行し、誤差が閾値ａ４を超えている場合には、処理はステップＳ２０１へ移行する。
【０２３５】
ステップＳ２８６では、設定部２２Ｂが、第１実施形態における手指候補領域輝度設定処理のステップＳ２４５と同様に、上記ステップＳ２０９で取得したパラメータにより定義されるガウス関数に基づいて、閾値ｖ２を設定する。
【０２３６】
一方、ステップＳ２０１では、設定部２２Ｂが、第１実施形態における手指候補領域輝度設定処理を実行する。具体的には、図１０に示すステップＳ２１０〜Ｓ２４５と同様である。
【０２３７】
次に、ステップＳ２９１で、設定部２２Ｂが、上記ステップＳ２０９で取得したガウス関数のパラメータを、現フレームのフレーム番号に対応付けて所定の記憶領域に記憶し、処理はステップＳ３００へ移行する。
【０２３８】
以上、第３実施形態に係る物体検出装置２０Ｂによれば、近似に成功している前フレームのガウス関数を用いて、現フレームの距離画像の輝度ヒストグラムとの比較を行うため、基準輝度の探索処理やガウス関数の近似の計算量を低減することができる。
【０２３９】
なお、上記各実施形態では、距離画像の輝度ヒストグラムに近似させる関数として、ガウス関数を用いる場合について説明したが、これに限定されない。タッチ操作対象物９８の輝度ヒストグラムの形状に類似する関数であればよく、具体的には、ある輝度を中心に左右対称の形状となる関数であればよい。ガウス関数以外の関数を用いる場合には、その関数に応じたパラメータを用いればよい。例えば、関数の中心となる輝度を基準輝度とすればよく、また、その関数の広がりを示す指標を、ガウス関数における分散値と同様の指標として用いればよい。
【０２４０】
また、各実施形態では手指５を例にして、画像から手指５の大きさ、位置、及び形状を精度良く抽出することができる物体検出装置について説明した。しかし、本発明に係る物体検出装置は、手指５以外の物体であっても画像から物体の大きさ、位置、及び形状を精度良く抽出できることは言うまでもない。
【０２４１】
以上、各実施形態を用いて本発明を説明したが、本発明は各実施形態に記載の範囲には限定されない。本発明の要旨を逸脱しない範囲で各実施形態に多様な変更又は改良を加えることができ、当該変更又は改良を加えた形態も本発明の技術的範囲に含まれる。例えば、本発明の要旨を逸脱しない範囲で処理の順序を変更してもよい。
【０２４２】
また、各実施形態では、物体検出プログラム１２０、１２０Ａ、１２０Ｂが記憶部に予め記憶（インストール）されている態様を説明したが、これに限定されるものではない。開示の技術に係る物体検出プログラムは、コンピュータ読取可能な記録媒体１１６に記録されている形態で提供することも可能である。例えば、開示の技術に係る物体検出プログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、及びＵＳＢメモリ等の可搬型記録媒体に記録されている形態で提供することも可能である。また、開示の技術に係る物体検出プログラムは、フラッシュメモリ等の半導体メモリ等に記録されている形態で提供することも可能である。
【０２４３】
以上の各実施形態を含む実施形態に関し、更に以下の付記を開示する。
【０２４４】
（付記１）
コンピュータに、
物体との距離を該距離に応じた輝度で表す距離画像、及び物体からの反射光の強度を輝度で表す反射強度画像を取得し、
前記距離画像の輝度ヒストグラムに対して、該距離画像における検出対象の物体により操作される操作対象物の輝度ヒストグラムの形状に類似する関数を近似させることにより、前記操作対象物の輝度ヒストグラムを推定し、
推定された前記操作対象物の輝度ヒストグラムに基づいて定まる前記操作対象物までの距離を用いて、前記距離画像から前記検出対象の物体を表す候補領域を抽出し、
前記反射強度画像を、該反射強度画像の各画素の輝度に基づいて複数の領域に分割し、
前記複数の領域のうち、抽出された前記候補領域の輪郭線と形状が類似する抽出領域と、該候補領域とを統合した領域を、前記検出対象の物体を表す領域として検出する
ことを含む処理を実行させる物体検出方法。
【０２４５】
（付記２）
前記関数を、前記距離画像の輝度ヒストグラムにおいて、輝度の変化率が所定値以下となる基準輝度をピークとする左右対称な関数とする付記１記載の物体検出方法。
【０２４６】
（付記３）
前記関数を前記距離画像の輝度ヒストグラムに近似させる際に、前記基準輝度に対応する距離以上の距離に対応する輝度の部分を近似させる付記２記載の物体検出方法。
【０２４７】
（付記４）
前記関数をガウス関数とする付記２又は付記３記載の物体検出方法。
【０２４８】
（付記５）
前記距離画像として、時系列に複数のフレームを順次取得し、
前フレームにおいて、前記関数と前記距離画像の輝度ヒストグラムとの誤差が所定値以下であった場合、現フレームにおける前記基準輝度を、前フレームで探索された基準輝度を中心とする所定範囲から探索する
付記２〜付記４のいずれか１項記載の物体検出方法。
【０２４９】
（付記６）
前記距離画像として、時系列に複数のフレームを順次取得し、
前フレームにおいて、前記関数と前記距離画像の輝度ヒストグラムとの誤差が所定値以下であった場合、前記前フレームの関数と、現フレームの距離画像の輝度ヒストグラムとの誤差が所定値以下か否かを判定し、該誤差が所定値以下の場合は、前記前フレームの関数を、前記操作対象物の現フレームの輝度ヒストグラムとして推定する
付記２〜付記５のいずれか１項記載の物体検出方法。
【０２５０】
（付記７）
前記複数の領域のうち、抽出された前記候補領域と重複する割合が予め定めた割合以上で、かつ、前記候補領域の輪郭線の形状の特徴量と、前記候補領域の輪郭線に対応した輪郭線の形状の特徴量との差分が閾値以下である領域を、前記抽出領域とする付記１〜付記６のいずれか１項記載の物体検出方法。
【０２５１】
（付記８）
前記候補領域の輪郭線の形状の特徴量を、前記候補領域の輪郭線に含まれる各々の輪郭画素のうち、前記輪郭画素の輝度と、前記候補領域外で、かつ、前記輪郭画素から予め定めた範囲にある近傍画素の輝度との差分が閾値より小さい画素が連続する区間、及び前記距離画像の枠線と重複する区間を前記候補領域の輪郭線から取り除いた区間から求める付記７記載の物体検出方法。
【０２５２】
（付記９）
前記複数の領域に分割される前記反射強度画像の分割対象範囲を、予め定めた輝度以上を有する範囲に縮小する付記１〜付記８のいずれか１項記載の物体検出方法。
【０２５３】
（付記１０）
前記複数の領域のうち、前記候補領域と重複する割合が最も大きい抽出領域が前記予め定めた割合未満である場合、前記候補領域と重複する割合が前記予め定めた割合以上になるまで、前記予め定めた輝度を大きくして、前記複数の領域に分割される前記反射強度画像の分割対象範囲を更に縮小する付記９記載の物体検出方法。
【０２５４】
（付記１１）
前記検出対象の物体は人間の手指である付記１〜付記１０のいずれか１項記載の物体検出方法。
【０２５５】
（付記１２）
前記距離画像及び前記反射強度画像は、人間の体に装着された撮影装置で撮像された画像である付記１〜付記１０のいずれか１項記載の物体検出方法。
【０２５６】
（付記１３）
物体との距離を該距離に応じた輝度で表す距離画像、及び物体からの反射光の強度を輝度で表す反射強度画像を取得する取得部と、
前記距離画像の輝度ヒストグラムに対して、該距離画像における検出対象の物体により操作される操作対象物の輝度ヒストグラムの形状に類似する関数を近似させることにより、前記操作対象物の輝度ヒストグラムを推定する推定部と、
推定された前記操作対象物の輝度ヒストグラムに基づいて定まる前記操作対象物までの距離を用いて、前記距離画像から前記検出対象の物体を表す候補領域を抽出する抽出部と、
前記反射強度画像を、該反射強度画像の各画素の輝度に基づいて複数の領域に分割する分割部と、
前記複数の領域のうち、抽出された前記候補領域の輪郭線と形状が類似する抽出領域と、該候補領域とを統合した領域を、前記検出対象の物体を表す領域として検出する統合部と、
を含む物体検出装置。
【０２５７】
（付記１４）
前記関数を、前記距離画像の輝度ヒストグラムにおいて、輝度の変化率が所定値以下となる基準輝度をピークとする左右対称な関数とする付記１３記載の物体検出装置。
【０２５８】
（付記１５）
前記推定部は、前記関数を前記距離画像の輝度ヒストグラムに近似させる際に、前記基準輝度に対応する距離以上の距離に対応する輝度の部分を近似させる付記１４記載の物体検出装置。
【０２５９】
（付記１６）
前記関数をガウス関数とする付記１４又は付記１５記載の物体検出装置。
【０２６０】
（付記１７）
前記取得部は、前記距離画像として、時系列に複数のフレームを順次取得し、
前記推定部は、前フレームにおいて、前記関数と前記距離画像の輝度ヒストグラムとの誤差が所定値以下であった場合、現フレームにおける前記基準輝度を、前フレームで探索された基準輝度を中心とする所定範囲から探索する
付記１４〜付記１６のいずれか１項記載の物体検出装置。
【０２６１】
（付記１８）
前記取得部は、前記距離画像として、時系列に複数のフレームを順次取得し、
前記推定部は、前フレームにおいて、前記関数と前記距離画像の輝度ヒストグラムとの誤差が所定値以下であった場合、前記前フレームの関数と、現フレームの距離画像の輝度ヒストグラムとの誤差が所定値以下か否かを判定し、該誤差が所定値以下の場合は、前記前フレームの関数を、前記操作対象物の現フレームの輝度ヒストグラムとして推定する
付記１４〜付記１７のいずれか１項記載の物体検出装置。
【０２６２】
（付記１９）
コンピュータに、
物体との距離を該距離に応じた輝度で表す距離画像、及び物体からの反射光の強度を輝度で表す反射強度画像を取得し、
前記距離画像の輝度ヒストグラムに対して、該距離画像における検出対象の物体により操作される操作対象物の輝度ヒストグラムの形状に類似する関数を近似させることにより、前記操作対象物の輝度ヒストグラムを推定し、
推定された前記操作対象物の輝度ヒストグラムに基づいて定まる前記操作対象物までの距離を用いて、前記距離画像から前記検出対象の物体を表す候補領域を抽出し、
前記反射強度画像を、該反射強度画像の各画素の輝度に基づいて複数の領域に分割し、
前記複数の領域のうち、抽出された前記候補領域の輪郭線と形状が類似する抽出領域と、該候補領域とを統合した領域を、前記検出対象の物体を表す領域として検出する
ことを含む処理を実行させる物体検出プログラム。
【０２６３】
（付記２０）
前記関数を、前記距離画像の輝度ヒストグラムにおいて、輝度の変化率が所定値以下となる基準輝度をピークとする左右対称な関数とする付記１９記載の物体検出プログラム。
【０２６４】
（付記２１）
前記関数を前記距離画像の輝度ヒストグラムに近似させる際に、前記基準輝度に対応する距離以上の距離に対応する輝度の部分を近似させる付記２０記載の物体検出プログラム。
【０２６５】
（付記２２）
前記関数をガウス関数とする付記２０又は付記２１記載の物体検出プログラム。
【０２６６】
（付記２３）
前記距離画像として、時系列に複数のフレームを順次取得し、
前フレームにおいて、前記関数と前記距離画像の輝度ヒストグラムとの誤差が所定値以下であった場合、現フレームにおける前記基準輝度を、前フレームで探索された基準輝度を中心とする所定範囲から探索する
付記２０〜付記２２のいずれか１項記載の物体検出プログラム。
【０２６７】
（付記２４）
前記距離画像として、時系列に複数のフレームを順次取得し、
前フレームにおいて、前記関数と前記距離画像の輝度ヒストグラムとの誤差が所定値以下であった場合、前記前フレームの関数と、現フレームの距離画像の輝度ヒストグラムとの誤差が所定値以下か否かを判定し、該誤差が所定値以下の場合は、前記前フレームの関数を、前記操作対象物の現フレームの輝度ヒストグラムとして推定する
付記２０〜付記２３のいずれか１項記載の物体検出プログラム。
【０２６８】
（付記２５）
コンピュータに、
物体との距離を該距離に応じた輝度で表す距離画像、及び物体からの反射光の強度を輝度で表す反射強度画像を取得し、
前記距離画像の輝度ヒストグラムに対して、該距離画像における検出対象の物体により操作される操作対象物の輝度ヒストグラムの形状に類似する関数を近似させることにより、前記操作対象物の輝度ヒストグラムを推定し、
推定された前記操作対象物の輝度ヒストグラムに基づいて定まる前記操作対象物までの距離を用いて、前記距離画像から前記検出対象の物体を表す候補領域を抽出し、
前記反射強度画像を、該反射強度画像の各画素の輝度に基づいて複数の領域に分割し、
前記複数の領域のうち、抽出された前記候補領域の輪郭線と形状が類似する抽出領域と、該候補領域とを統合した領域を、前記検出対象の物体を表す領域として検出する
ことを含む処理を実行させる物体検出プログラムを記憶した記憶媒体。
【符号の説明】
【０２６９】
１、１Ａ、１Ｂ       物体検出システム
３     距離画像
４     反射強度画像
７     抽出候補領域
１０   撮影装置
２０、２０Ａ、２０Ｂ 物体検出装置
２１   取得部
２２、２２Ａ、２２Ｂ 設定部
２３   抽出部
２４   分割部
２５   統合部
２６   判定部
３０   表示装置
８０   手指候補領域
８４   手指領域
９８   タッチ操作対象物
１００ コンピュータ
１０２ ＣＰＵ
１０４ メモリ
１０６ 記憶部
１１２ 入力装置
１１６ 記録媒体
１２０、１２０Ａ、１２０Ｂ  物体検出プログラム
【図１】
2017117341.tif 000003
【図２】
2017117341.tif 000004
【図３】
2017117341.tif 000005
【図４】
2017117341.tif 000006
【図５】
2017117341.tif 000007
【図６】
2017117341.tif 000008
【図７】
2017117341.tif 000009
【図８】
2017117341.tif 000010
【図９】
2017117341.tif 000011
【図１０】
2017117341.tif 000012
【図１１】
2017117341.tif 000013
【図１２】
2017117341.tif 000014
【図１３】
2017117341.tif 000015
【図１４】
2017117341.tif 000016
【図１５】
2017117341.tif 000017
【図１６】
2017117341.tif 000018
【図１７】
2017117341.tif 000019
【図１８】
2017117341.tif 000020
【図１９】
2017117341.tif 000021
【図２０】
2017117341.tif 000022
【図２１】
2017117341.tif 000023
【図２２】
2017117341.tif 000024
【図２３】
2017117341.tif 000025
【図２４】
2017117341.tif 000026
【図２５】
2017117341.tif 000027
【図２６】
2017117341.tif 000028
【図２７】
2017117341.tif 000029
【図２８】
2017117341.tif 000030
【図２９】
2017117341.tif 000031
【図３０】
2017117341.tif 000032
【図３１】
2017117341.tif 000033