(57)【要約】      （修正有）【課題】検出対象物体までの距離情報を、適正かつ効率的に取得可能な情報取得装置および物体検出装置を提供する。【解決手段】情報取得装置は、レーザ光を所定のドットパターンで目標領域に投射する投射光学系１００と、目標領域をＣＭＯＳイメージセンサにより撮像する受光光学系２００と基準画像に基づく参照テンプレートを保持する記憶部と、基準画像に割り当てられたセグメント領域の、実測画像上における移動位置に基づいて、セグメント領域に対する距離情報を取得する距離取得部と、を備える。距離取得部は、物体の境界が検出されたことに基づいて、探索範囲Ｌ０よりも長い探索範囲Ｌｌを設定する。【選択図】図７
2013234956.tif 000002
【特許請求の範囲】
【請求項１】
光を用いて目標領域の情報を取得する情報取得装置において、
レーザ光源から出射されたレーザ光を所定のドットパターンで目標領域に投射する投射光学系と、
前記投射光学系に対して所定の距離だけ横に離れて並ぶように配置され、前記目標領域をイメージセンサにより撮像する受光光学系と、
基準面に前記レーザ光を照射したときに前記受光光学系により撮像された基準ドットパターンに基づく参照情報を保持する記憶部と、
実測時に前記イメージセンサにより撮像された実測ドットパターンに基づく実測情報と前記参照情報とを参照し、所定の探索範囲において、前記基準ドットパターンに割り当てられた参照領域の、前記実測ドットパターン上における移動位置の探索を実行し、探索された前記移動位置に基づいて、当該参照領域に対する距離情報を取得する距離取得部と、を備え、
前記距離取得部は、既に探索がなされた前記参照領域の探索結果に基づいて、前記探索のための前記探索範囲を設定する、
ことを特徴とする情報取得装置。
【請求項２】
請求項１に記載の情報取得装置において、
前記距離取得部は、前記探索結果に基づいて、前記実測ドットパターン上における探索位置を設定し、当該探索位置に、前記探索のための前記探索範囲を設定する、
ことを特徴とする情報取得装置。
【請求項３】
請求項２に記載の情報取得装置において、
前記距離取得部は、前記基準ドットパターンに割り当てられた各参照領域に対する前記探索の実行順において１回前の探索時に探索された前記移動位置に、前記探索位置を設定する、
ことを特徴とする情報取得装置。
【請求項４】
請求項２に記載の情報取得装置において、
前記距離取得部は、前記基準ドットパターンに割り当てられた各参照領域に対する前記探索の実行順において１回前の探索時における前記参照領域の移動量を取得し、距離取得の対象とされる前記参照領域に対応する前記実測ドットパターン上の位置から前記移動量だけずらされた位置に、前記探索位置を設定する、
ことを特徴とする情報取得装置。
【請求項５】
請求項２に記載の情報取得装置において、
前記距離取得部は、前記基準ドットパターンに割り当てられた各参照領域に対する前記探索の実行順において複数回前までの探索時の前記探索結果に基づいて、前記実測ドットパターン上における前記参照領域の移動傾向を取得し、距離取得の対象とされる前記参照領域に対応する前記実測ドットパターン上の位置から前記移動傾向に従ってずらされた位置に、前記探索位置を設定する、
ことを特徴とする情報取得装置。
【請求項６】
請求項１ないし３の何れか一項に記載の情報取得装置において、
前記距離取得部は、前記探索結果に基づいて、距離情報の取得対象とされる前記参照領域に対応するドットパターンが、物体上の、距離が変化する境界領域に照射されると判定したとき、前記探索のための前記探索範囲として、所定幅の第１探索範囲に代えて、前記所定幅よりも長い幅の第２探索範囲を設定する、
ことを特徴とする情報取得装置。
【請求項７】
請求項６に記載の情報取得装置において、
前記距離取得部は、既に探索がなされた前記セグメント領域の前記実測ドットパターンに対するマッチング度合いが所定の閾値よりも低下したことに基づいて、前記探索のための前記探索範囲として、前記第１探索範囲に代えて前記第２探索範囲を設定する、
ことを特徴とする情報取得装置。
【請求項８】
請求項６または７に記載の情報取得装置において、
前記距離取得部は、前記第２探索範囲によって前記距離情報を取得できなかった場合、前記第２探索範囲を更に広げた探索範囲により、前記探索を再度実行する、
ことを特徴とする情報取得装置。
【請求項９】
請求項６ないし８の何れか一項に記載の情報取得装置において、
前記距離取得部は、前記基準ドットパターンに割り当てられた各参照領域に対する前記探索の実行順において複数回前までの探索時の前記探索結果に基づいて、既に探索がなされた前記参照領域の前記実測ドットパターン上における移動傾向を取得し、前記探索範囲の設定中心位置に対して、前記移動傾向に応じた方向の長さが他方の長さよりも長くなるよう、前記第２探索範囲を設定する、
ことを特徴とする情報取得装置。
【請求項１０】
請求項１ないし９の何れか一項に記載の情報取得装置を有する物体検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、目標領域に光を投射したときの反射光の状態に基づいて目標領域内の物体を検出する物体検出装置および当該物体検出装置に用いて好適な情報取得装置に関する。
【背景技術】
【０００２】
従来、光を用いた物体検出装置が種々の分野で開発されている。いわゆる距離画像センサを用いた物体検出装置では、２次元平面上の平面的な画像のみならず、検出対象物体の奥行き方向の形状や動きを検出することができる。かかる物体検出装置では、レーザ光源やＬＥＤ（Light Emitting Diode）から、予め決められた波長帯域の光が目標領域に投射され、その反射光がＣＭＯＳイメージセンサ等の受光素子により受光される。距離画像センサとして、種々のタイプのものが知られている。
【０００３】
所定のドットパターンを持つレーザ光を目標領域に照射するタイプの距離画像センサでは、ドットパターンを持つレーザ光の目標領域からの反射光が受光素子によって受光される。そして、ドットの受光素子上の受光位置に基づいて、三角測量法を用いて、検出対象物体の各部（検出対象物体上の各ドットの照射位置）までの距離が検出される（たとえば、特許文献１、非特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−３２３７９号公報
【非特許文献】
【０００５】
【非特許文献１】第１９回日本ロボット学会学術講演会（２００１年９月１８−２０日）予稿集、Ｐ１２７９−１２８０
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記物体検出装置では、所定距離だけ離れた位置に基準面を配したときにイメージセンサにより撮像されるドットパターンと、実測時にイメージセンサにより撮像されるドットパターンとが比較されて、距離の検出が行われる。たとえば、基準面に対するドットパターンに複数の領域が設定される。物体検出装置は、各領域に含まれるドットが実測時に撮像したドットパターン上のどの位置に移動したかに基づいて、領域毎に、対象物体までの距離を検出する。すなわち、各領域に含まれるドットと、実測時に撮像したドットパターンとを所定の探索範囲内において照合し、当該探索範囲内において最もマッチングが得られた位置が、各領域の移動位置とされる。
【０００７】
この場合、実測時に撮像したドットパターン上における各領域の探索範囲は、探索時の処理負担を考慮すると、短い方が望ましい。しかしながら、探索範囲を短くすると、検出対象物体までの距離によっては、上記領域に含まれるドットについてマッチングが得られず、距離取得が行えなくなることが起こり得る。
【０００８】
本発明は、この点に鑑みてなされたものであり、検出対象物体までの距離情報を、適正かつ効率的に取得可能な情報取得装置および物体検出装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の第１の態様は、光を用いて目標領域の情報を取得する情報取得装置に関する。
本態様に係る情報取得装置は、レーザ光源から出射されたレーザ光を所定のドットパターンで目標領域に投射する投射光学系と、前記投射光学系に対して所定の距離だけ横に離れて並ぶように配置され、前記目標領域をイメージセンサにより撮像する受光光学系と、基準面に前記レーザ光を照射したときに前記受光光学系により撮像された基準ドットパターンに基づく参照情報を保持する記憶部と、実測時に前記イメージセンサにより撮像された実測ドットパターンに基づく実測情報と前記参照情報とを参照し、所定の探索範囲において、前記基準ドットパターンに割り当てられた参照領域の、前記実測ドットパターン上における移動位置の探索を実行し、探索された前記移動位置に基づいて、当該参照領域に対する距離情報を取得する距離取得部と、を備える。前記距離取得部は、既に探索がなされた前記参照領域の探索結果に基づいて、前記探索のための前記探索範囲を設定する。
【００１０】
本発明の第２の態様は、物体検出装置に関する。本態様に係る物体検出装置は、上記第１の態様に係る情報取得装置を有する。
【発明の効果】
【００１１】
本発明によれば、既に探索がなされた前記参照領域の探索結果に基づいて、前記探索のための前記探索範囲が設定されるため、探索範囲の適正化を図ることができる。よって、検出対象物体までの距離情報を、適正かつ効率的に取得可能な情報取得装置および物体検出装置を提供することができる。
【００１２】
本発明の効果ないし意義は、以下に示す実施の形態の説明により更に明らかとなろう。ただし、以下に示す実施の形態は、あくまでも、本発明を実施化する際の一つの例示であって、本発明は、以下の実施の形態により何ら制限されるものではない。
【図面の簡単な説明】
【００１３】
【図１】実施の形態に係る物体検出装置の構成を示す図である。
【図２】実施の形態に係る情報取得装置と情報処理装置の構成を示す図である。
【図３】実施の形態に係る目標領域に対するレーザ光の照射状態とイメージセンサ上のレーザ光の受光状態を示す図である。
【図４】実施の形態に係る参照パターンの生成方法を説明する図である。
【図５】実施の形態に係る距離検出手法を説明する図である。
【図６】実施例１に係る距離取得の制御処理を示すフローチャートである。
【図７】実施例１に係る探索範囲の変動を示す図である。
【図８】実施例２に係る距離取得の制御処理を示すフローチャートである。
【図９】実施例２に係る距離情報テーブルを示す図である。
【図１０】実施例２に係る探索範囲の変動を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態につき図面を参照して説明する。本実施の形態には、所定のドットパターンを持つレーザ光を目標領域に照射するタイプの情報取得装置が例示されている。
【００１５】
まず、図１に本実施の形態に係る物体検出装置の概略構成を示す。図示の如く、物体検出装置は、情報取得装置１と、情報処理装置２とを備えている。テレビ３は、情報処理装置２からの信号によって制御される。
【００１６】
情報取得装置１は、目標領域全体に赤外光を投射し、その反射光をＣＭＯＳイメージセンサにて受光することにより、目標領域にある物体各部の距離（以下、「３次元距離情報」という）を取得する。取得された３次元距離情報は、ケーブル４を介して情報処理装置２に送られる。
【００１７】
情報処理装置２は、たとえば、テレビ制御用のコントローラやゲーム機、パーソナルコンピュータ等である。情報処理装置２は、情報取得装置１から受信した３次元距離情報に基づき、目標領域における物体を検出し、検出結果に基づきテレビ３を制御する。
【００１８】
たとえば、情報処理装置２は、受信した３次元距離情報に基づき人を検出するとともに、３次元距離情報の変化から、その人の動きを検出する。たとえば、情報処理装置２がテレビ制御用のコントローラである場合、情報処理装置２には、受信した３次元距離情報からその人のジェスチャを検出するとともに、ジェスチャに応じてテレビ３に制御信号を出力するアプリケーションプログラムがインストールされている。この場合、ユーザは、テレビ３を見ながら所定のジェスチャをすることにより、チャンネル切り替えやボリュームのＵｐ／Ｄｏｗｎ等、所定の機能をテレビ３に実行させることができる。
【００１９】
また、たとえば、情報処理装置２がゲーム機である場合、情報処理装置２には、受信した３次元距離情報からその人の動きを検出するとともに、検出した動きに応じてテレビ画面上のキャラクタを動作させ、ゲームの対戦状況を変化させるアプリケーションプログラムがインストールされている。この場合、ユーザは、テレビ３を見ながら所定の動きをすることにより、自身がテレビ画面上のキャラクタとしてゲームの対戦を行う臨場感を味わうことができる。
【００２０】
図２は、情報取得装置１と情報処理装置２の構成を示す図である。
【００２１】
情報取得装置１は、光学部の構成として、投射光学系１００と受光光学系２００とを備えている。投射光学系１００と受光光学系２００は、Ｘ軸方向に並ぶように、情報取得装置１に配置される。
【００２２】
投射光学系１００は、レーザ光源１１０と、コリメータレンズ１２０と、ミラー１３０と、回折光学素子（ＤＯＥ：Diffractive Optical Element）１４０とを備えている。また、受光光学系２００は、アパーチャ２１０と、撮像レンズ２２０と、フィルタ２３０と、ＣＭＯＳイメージセンサ２４０とを備えている。この他、情報取得装置１は、回路部の構成として、ＣＰＵ（Central Processing Unit）２１と、レーザ駆動回路２２と、撮像信号処理回路２３と、入出力回路２４と、メモリ２５を備えている。
【００２３】
レーザ光源１１０は、受光光学系２００から離れる方向（Ｘ軸負方向）に波長８３０ｎｍ程度の狭波長帯域のレーザ光を出力する。コリメータレンズ１２０は、レーザ光源１１０から出射されたレーザ光を平行光から僅かに広がった光（以下、単に「平行光」という）に変換する。
【００２４】
ミラー１３０は、コリメータレンズ１２０側から入射されたレーザ光をＤＯＥ１４０に向かう方向（Ｚ軸方向）に反射する。
【００２５】
ＤＯＥ１４０は、入射面に回折パターンを有する。この回折パターンによる回折作用により、ＤＯＥ１４０に入射したレーザ光は、所定のドットパターンのレーザ光に変換されて、目標領域に照射される。
【００２６】
ＤＯＥ１４０の回折パターンは、たとえば、ステップ型の回折ホログラムが所定のパターンで形成された構造とされる。回折ホログラムは、コリメータレンズ１２０により平行光とされたレーザ光をドットパターンのレーザ光に変換するよう、パターンとピッチが調整されている。
【００２７】
ＤＯＥ１４０は、ミラー１３０から入射されたレーザ光を、放射状に広がるドットパターンのレーザ光として、目標領域に照射する。ドットパターンの各ドットの大きさは、ＤＯＥ１４０に入射する際のレーザ光のビームサイズに応じたものとなる。
【００２８】
目標領域から反射されたレーザ光は、アパーチャ２１０を介して撮像レンズ２２０に入射する。
【００２９】
アパーチャ２１０は、撮像レンズ２２０のＦナンバーに合うように、外部からの光に絞りを掛ける。撮像レンズ２２０は、アパーチャ２１０を介して入射された光をＣＭＯＳイメージセンサ２４０上に集光する。フィルタ２３０は、レーザ光源１１０の出射波長（８３０ｎｍ程度）を含む赤外の波長帯域の光を透過し、可視光の波長帯域をカットするＩＲフィルタ（Infrared Filter）である。
【００３０】
ＣＭＯＳイメージセンサ２４０は、撮像レンズ２２０にて集光された光を受光して、画素毎に、受光量に応じた信号（電荷）を撮像信号処理回路２３に出力する。ここで、ＣＭＯＳイメージセンサ２４０は、各画素における受光から高レスポンスでその画素の信号（電荷）を撮像信号処理回路２３に出力できるよう、信号の出力速度が高速化されている。
【００３１】
ＣＰＵ２１は、メモリ２５に格納された制御プログラムに従って各部を制御する。かかる制御プログラムによって、ＣＰＵ２１には、レーザ光源１１０を制御するためのレーザ制御部２１ａと、３次元距離情報を生成するための距離取得部２１ｂと、距離を算出するための探索範囲を補正する探索範囲補正部２１ｃの機能が付与される。
【００３２】
レーザ駆動回路２２は、ＣＰＵ２１からの制御信号に応じてレーザ光源１１０を駆動する。
【００３３】
撮像信号処理回路２３は、ＣＭＯＳイメージセンサ２４０を制御して、ＣＭＯＳイメージセンサ２４０で生成された各画素の信号（電荷）をライン毎に順次取り込む。そして、取り込んだ信号を順次ＣＰＵ２１に出力する。ＣＰＵ２１は、撮像信号処理回路２３から供給される信号（撮像信号）をもとに、情報取得装置１から検出対象物の各部までの距離を、距離取得部２１ｂによる処理によって算出する。また、この際、ＣＰＵ２１は、メモリ２５に記憶された距離情報テーブルＴの距離取得結果に応じて、距離を算出するための探索範囲を、探索範囲補正部２１ｃによる処理によって補正して探索を実行する。入出力回路２４は、情報処理装置２とのデータ通信を制御する。
【００３４】
情報処理装置２は、ＣＰＵ３１と、入出力回路３２と、メモリ３３を備えている。なお、情報処理装置２には、同図に示す構成の他、テレビ３との通信を行うための構成や、ＣＤ−ＲＯＭ等の外部メモリに格納された情報を読み取ってメモリ３３にインストールするためのドライブ装置等が配されるが、便宜上、これら周辺回路の構成は図示省略されている。
【００３５】
ＣＰＵ３１は、メモリ３３に格納された制御プログラム（アプリケーションプログラム）に従って各部を制御する。かかる制御プログラムによって、ＣＰＵ３１には、画像中の物体を検出するための物体検出部３１ａの機能が付与される。かかる制御プログラムは、たとえば、図示しないドライブ装置によってＣＤ−ＲＯＭから読み取られ、メモリ３３にインストールされる。
【００３６】
たとえば、制御プログラムがゲームプログラムである場合、物体検出部３１ａは、情報取得装置１から供給される３次元距離情報から画像中の人およびその動きを検出する。そして、検出された動きに応じてテレビ画面上のキャラクタを動作させるための処理が制御
プログラムにより実行される。
【００３７】
また、制御プログラムがテレビ３の機能を制御するためのプログラムである場合、物体検出部３１ａは、情報取得装置１から供給される３次元距離情報から画像中の人およびその動き（ジェスチャ）を検出する。そして、検出された動き（ジェスチャ）に応じて、テレビ３の機能（チャンネル切り替えやボリューム調整、等）を制御するための処理が制御プログラムにより実行される。
【００３８】
入出力回路３２は、情報取得装置１とのデータ通信を制御する。
【００３９】
投射光学系１００と受光光学系２００の設置間隔は、情報取得装置１と目標領域の基準面との距離に応じて、設定される。どの程度離れた目標物を検出対象とするかによって、基準面と情報取得装置１との間の距離が変わる。検出対象の目標物までの距離が近くなるほど、投射光学系１００と受光光学系２００の設置間隔は狭くなる。逆に、検出対象の目標物までの距離が遠くなるほど、投射光学系１００と受光光学系２００の設置間隔は広くなる。
【００４０】
図３（ａ）は、目標領域に対するレーザ光の照射状態を模式的に示す図、図３（ｂ）は、ＣＭＯＳイメージセンサ２４０におけるレーザ光の受光状態を模式的に示す図である。なお、図３（ｂ）には、便宜上、目標領域に平坦な面（スクリーン）とスクリーンの前に人物が存在するときの受光状態が示されている。
【００４１】
図３（ａ）に示すように、投射光学系１００からは、ドットパターンを持ったレーザ光（以下、このパターンを持つレーザ光の全体を「ＤＰ光」という）が、目標領域に照射される。図３（ａ）には、ＤＰ光の光束領域が実線の枠によって示されている。ＤＰ光の光束中には、ＤＯＥ１４０による回折作用により生成されるドット領域（以下、単に「ドット」という）が、ＤＯＥ１４０による回折作用によるドットパターンに従って点在している。
【００４２】
目標領域に平坦な面（スクリーン）が存在すると、これにより反射されたＤＰ光は、図３（ｂ）のように、ＣＭＯＳイメージセンサ２４０上に分布する。
【００４３】
図３（ｂ）には、ＣＭＯＳイメージセンサ２４０上のＤＰ光の全受光領域が破線の枠によって示され、ＣＭＯＳイメージセンサ２４０の撮像有効領域に入射するＤＰ光の受光領域が実線の枠によって示されている。ＣＭＯＳイメージセンサ２４０の撮像有効領域は、ＣＭＯＳイメージセンサ２４０がＤＰ光を受光した領域のうち、センサとして信号を出力する領域であり、たとえば、ＶＧＡ（横６４０画素×縦４８０画素）のサイズである。また、同図（ａ）に示す目標領域上におけるＤｔ０の光は、ＣＭＯＳイメージセンサ２４０上では、同図（ｂ）に示すＤｔ’０の位置に入射する。スクリーンの前の人物の像は、ＣＭＯＳイメージセンサ２４０上では、上下左右が反転して撮像される。
【００４４】
ここで、図４、図５を参照して、上記距離検出の方法を説明する。
【００４５】
図４は、上記距離検出手法に用いられる参照パターンの設定方法を説明する図である。
【００４６】
図４（ａ）に示すように、投射光学系１００から所定の距離Ｌｓの位置に、Ｚ軸方向に垂直な平坦な反射平面ＲＳが配置される。出射されたＤＰ光は、反射平面ＲＳによって反射され、受光光学系２００のＣＭＯＳイメージセンサ２４０に入射する。これにより、ＣＭＯＳイメージセンサ２４０から、撮像有効領域内の画素毎の電気信号が出力される。出力された画素毎の電気信号の値（画素値）は、図２のメモリ２５上に展開される。
【００４７】
以下、反射面ＲＳからの反射によって得られた全画素値からなる画像を、「基準画像」、反射面ＲＳを「基準面」と称する。そして、図４（ｂ）に示すように、基準画像上に、「参照パターン領域」が設定される。なお、図４（ｂ）には、ＣＭＯＳイメージセンサ２４０の背面側から受光面をＺ軸正方向に透視した状態が図示されている。図５以降の図においても同様である。
【００４８】
こうして設定された参照パターン領域に対して、所定の大きさを有する複数のセグメント領域が設定される。セグメント領域の大きさは、得られる距離情報による物体の輪郭抽出精度、ＣＰＵ２１に対する距離検出の演算量の負荷および後述する距離検出手法によるエラー発生率を考慮して決定される。本実施の形態では、セグメント領域の大きさは、横１５画素×縦１５画素に設定される。
【００４９】
図４（ｃ）を参照して、参照パターン領域に設定されるセグメント領域について説明する。なお、図４（ｃ）には、便宜上、各セグメント領域の大きさが横９画素×縦９画素で示され、各セグメント領域の中央の画素が×印で示されている。
【００５０】
セグメント領域は、図４（ｃ）に示すように、隣り合うセグメント領域が参照パターン領域に対してＸ軸方向およびＹ軸方向に１画素間隔で並ぶように設定される。すなわち、あるセグメント領域は、このセグメント領域のＸ軸方向およびＹ軸方向に隣り合うセグメント領域に対して１画素ずれた位置に設定される。このとき、各セグメント領域には、固有のパターンでドットが点在する。よって、セグメント領域内の画素値のパターンは、セグメント領域毎に異なっている。隣り合うセグメント領域の間隔が狭いほど、参照パターン領域内に含まれるセグメント領域の数が多くなり、目標領域の面内方向（Ｘ−Ｙ平面方向）における距離検出の分解能が高められる。
【００５１】
こうして、ＣＭＯＳイメージセンサ２４０上における参照パターン領域の位置に関する情報と、参照パターン領域に含まれる全画素の画素値（参照パターン）と、参照パターン領域に対して設定されるセグメント領域の情報が、図２のメモリ２５に記憶される。メモリ２５に記憶されるこれらの情報を、以下、「参照テンプレート」と称する。
【００５２】
図２のＣＰＵ２１は、投射光学系１００から検出対象物体の各部までの距離を算出する際に、参照テンプレートを参照する。ＣＰＵ２１は、距離を算出する際に、参照テンプレートから得られる各セグメント領域内のドットパターンのずれ量に基づいて、物体の各部までの距離を算出する。
【００５３】
たとえば、図４（ａ）に示すように距離Ｌｓよりも近い位置に物体がある場合、参照パターン上の所定のセグメント領域Ｓｎに対応するＤＰ光（ＤＰｎ）は、物体によって反射され、セグメント領域Ｓｎとは異なる領域Ｓｎ’に入射する。投射光学系１００と受光光学系２００はＸ軸方向に隣り合っているため、セグメント領域Ｓｎに対する領域Ｓｎ’の変位方向はＸ軸に平行となる。図４（ａ）の場合、物体が距離Ｌｓよりも近い位置にあるため、領域Ｓｎ’は、セグメント領域Ｓｎに対してＸ軸正方向に変位する。物体が距離Ｌｓよりも遠い位置にあれば、領域Ｓｎ’は、セグメント領域Ｓｎに対してＸ軸負方向に変位する。
【００５４】
セグメント領域Ｓｎに対する領域Ｓｎ’の変位方向と変位量をもとに、投射光学系１００からＤＰ光（ＤＰｎ）が照射された物体の部分までの距離Ｌｒが、距離Ｌｓを用いて、三角測量法に基づき算出される。同様にして、他のセグメント領域に対応する物体の部分について、投射光学系１００からの距離が算出される。かかる算出手法の詳細は、たとえば、上記非特許文献１（第１９回日本ロボット学会学術講演会（２００１年９月１８−２
０日）予稿集、Ｐ１２７９−１２８０）に示されている。
【００５５】
かかる距離算出では、参照テンプレートのセグメント領域Ｓｎが、実測時においてどの位置に変位したかを検出する。この検出は、実測時にＣＭＯＳイメージセンサ２４０上に照射されたＤＰ光から得られたドットパターンと、セグメント領域Ｓｎに含まれるドットパターンとを照合することによって行われる。以下、実測時にＣＭＯＳイメージセンサ２４０上の撮像有効領域に照射されたＤＰ光から得られた全画素値からなる画像を、「実測画像」と称する。実測時のＣＭＯＳイメージセンサ２４０の撮像有効領域は、基準画像取得時と同様に、たとえば、ＶＧＡ（横６４０画素×縦４８０画素）のサイズである。
【００５６】
図５（ａ）〜（ｅ）は、かかる距離検出の手法を説明する図である。図５（ａ）は、ＣＭＯＳイメージセンサ２４０上における基準画像に設定された参照パターン領域を示す図であり、図５（ｂ）は、実測時のＣＭＯＳイメージセンサ２４０上の実測画像を示す図であり、図５（ｃ）〜（ｅ）は、実測画像に含まれるＤＰ光のドットパターンと、参照テンプレートのセグメント領域に含まれるドットパターンとの照合方法を説明する図である。なお、便宜上、図５（ａ）、（ｂ）には、一部のセグメント領域のみが示されており、図５（ｃ）〜（ｅ）には、各セグメント領域の大きさが、横９画素×縦９画素で示されている。また、図５（ｂ）の実測画像には、便宜上、図３（ｂ）のように、検出対象物体として基準面より前に人物が存在しており、人物の像が写り込んでいることが示されている。
【００５７】
図５（ａ）のセグメント領域Ｓｉの実測時における変位位置を探索する場合、図５（ｂ）に示すように、実測画像上に、セグメント領域Ｓｉに対して探索領域Ｒｉが設定される。探索領域Ｒｉは、Ｘ軸方向に所定の幅を持っている。セグメント領域Ｓｉが探索領域Ｒｉにおいて１画素ずつＸ軸方向に送られ、各送り位置において、セグメント領域Ｓｉのドットパターンと実測画像上のドットパターンとが比較される。以下、実測画像上の各送り位置に対応する領域を、「比較領域」と称する。探索領域Ｒｉには、セグメント領域Ｓｉと同じサイズの比較領域が複数設定され、Ｘ軸方向に隣り合う比較領域は互いに１画素ずれている。
【００５８】
探索領域Ｒｉの幅は、検出対象物体が基準面よりも情報取得装置１に対して離れる方向、および近づく方向にどの程度の距離を検出可能な範囲とするかによって決定される。図５中では、基準画像上のセグメント領域Ｓｉの画素位置に対応する実測画像上の画素位置（中心画素位置）から、Ｘ軸負方向にｘ画素ずれた位置からＸ軸正方向にｘ画素ずれた範囲（以下、「探索範囲Ｌ０」という）においてセグメント領域Ｓｉが送られるように探索領域Ｒｉが設定されている。
【００５９】
本実施の形態では、距離検出にかかる演算量を考慮して、通常時においては、探索範囲を距離検出精度の限界よりも短くし、中心画素位置から−１０画素ずれた位置から＋１０画素ずれた位置までの範囲が探索範囲Ｌ０に設定される。なお、距離検出精度限界まで探索範囲を広くする場合は、中心画素位置から−３０画素ずれた位置から＋３０画素ずれた位置までの範囲が探索範囲Ｌｍに設定される。
【００６０】
距離検出時には、探索領域Ｒｉにおいてセグメント領域ＳｉをＸ軸方向に１画素ずつ送りながら、各送り位置において、参照テンプレートに記憶されているセグメント領域Ｓｉのドットパターンと、実測画像のＤＰ光のドットパターンのマッチング度合いが求められる。このようにセグメント領域Ｓｉを探索領域Ｒｉ内においてＸ軸方向にのみ送るのは、上記のように、通常、参照テンプレートにより設定されたセグメント領域のドットパターンは、実測時において、Ｘ軸方向の所定の範囲内でのみ変位するためである。
【００６１】
なお、実測時には、検出対象物体の位置によっては、セグメント領域に対応するドット
パターンが実測画像からＸ軸方向にはみ出すことが起こり得る。たとえば、参照パターン領域のＸ軸負側のセグメント領域Ｓ１に対応するドットパターンが、基準面よりも遠距離の物体に反射された場合、セグメント領域Ｓ１に対応するドットパターンは、実測画像よりもＸ軸負方向に位置づけられる。この場合、セグメント領域に対応するドットパターンは、ＣＭＯＳイメージセンサ２４０の撮像有効領域内にないため、このセグメント領域については、適正にマッチングを行うことができない。しかし、このような端のセグメント領域以外については、適正にマッチングを行うことができるため、物体の距離検出への影響は少ない。
【００６２】
なお、端の領域についても、適正にマッチングを行う場合には、実測時のＣＭＯＳイメージセンサ２４０の撮像有効領域を、基準画像取得時のＣＭＯＳイメージセンサ２４０の撮像有効領域よりも、大きくすることができるものを用いれば良い。たとえば、基準画像取得時において、ＶＧＡ（横６４０画素×縦４８０画素）のサイズで撮像有効領域が設定された場合、実測時においては、それよりもＸ軸正方向およびＸ軸負方向に３０画素分大きいサイズで撮像有効領域を設定する。これにより、実測画像が基準画像よりも大きくなるが、端のセグメント領域についても、適正にマッチングを行うことができる。
【００６３】
上記マッチング度合いの検出時には、まず、参照パターン領域の各画素の画素値と実測画像の各セグメント領域の各画素の画素値が２値化されて、メモリ２５に保持される。たとえば、基準画像および実測画像の画素値が８ビットの階調の場合、０〜２５５の画素値のうち、所定の閾値以上の画素が、画素値１に、所定の閾値未満の画素が、画素値０に変換されて、メモリ２５に保持される。その後、比較領域とセグメント領域Ｓｉとの間の類似度が求められる。すなわち、セグメント領域Ｓｉの各画素の画素値と、比較領域の対応する画素の画素値との差分が求められる。そして、求めた差分を比較領域の全ての画素について加算した値Ｒｓａｄが、類似度を示す値として取得される。
【００６４】
たとえば、図５（ｃ）のように、一つのセグメント領域中に、ｎ列×ｍ行の画素が含まれている場合、セグメント領域のｉ列、ｊ行の画素の画素値Ｔ（ｉ，ｊ）と、比較領域のｉ列、ｊ行の画素の画素値Ｉ（ｉ，ｊ）との差分が求められる。そして、セグメント領域の全ての画素について差分が求められ、その差分の総和により、図５（ｃ）に示す式の値Ｒｓａｄが求められる。値Ｒｓａｄが小さい程、セグメント領域と比較領域との間の類似度が高い。
【００６５】
こうして、図５（ｄ）に示すように、セグメント領域Ｓｉについて、探索領域Ｒｉの全ての比較領域に対して値Ｒｓａｄが求められる。図５（ｅ）は、探索領域Ｒｉの各送り位置における値Ｒｓａｄが模式的に示されたグラフである。セグメント領域Ｓｉについて、探索領域Ｒｉの全ての比較領域に対して値Ｒｓａｄが求められると、まず、求めた値Ｒｓａｄの中から、最小値Ｂｔ１が参照される。次に、求めた値Ｒｓａｄの中から、２番目に小さい値Ｂｔ２が参照される。最小値Ｂｔ１と２番目に小さい値Ｂｔ２の位置が２画素以上離れた位置であり、且つ、その差分値Ｅｓが閾値未満であれば、セグメント領域Ｓｉの探索はエラーとされる。他方、差分値Ｅｓが閾値以上であれば、最小値Ｂｔ１に対応する比較領域Ｃｉが、セグメント領域Ｓｉの移動領域と判定される。
【００６６】
たとえば、図５（ｄ）のように、セグメント領域Ｓｉに対応する比較領域Ｃｉは、基準画像上のセグメント領域Ｓｉの画素位置と同位置の実測画像上の画素位置Ｓｉ０よりもＸ軸正方向にα画素ずれた位置で検出される。これは、基準面よりも近い位置に存在する検出対象物体（人物）によって、実測画像上のＤＰ光のドットパターンが基準画像上のセグメント領域Ｓｉ０よりもＸ軸正方向に変位したためである。以下、最小値Ｂｔ１の位置を、ボトム位置と称する。なお、セグメント領域Ｓｉの大きさが大きいほど、セグメント領域Ｓｉに含まれるドットパターンのユニーク性が増し、上記エラーの発生率が減少する。
たとえば、セグメント領域Ｓｉの大きさが横１５画素×縦１５画素に設定されると、通常、距離検出がエラーとなることは少なく、適正にマッチングを行うことができる。
【００６７】
こうして、実測時に取得されたＤＰ光のドットパターンから、各セグメント領域の変位位置が探索されると、上記のように、その変位位置に基づいて、三角測量法により、各セグメント領域に対応する検出対象物体の部位までの距離が求められる。
【００６８】
このようにして、セグメント領域Ｓ１〜セグメント領域Ｓｎまで全てのセグメント領域について、上記同様のセグメント領域の探索が行われる。
【００６９】
なお、上記のマッチング度合いの検出方法は一例であり、これに限られるものではない。たとえば、上記では、値Ｒｓａｄの最小値Ｂｔ１とＢｔ２の差分値が最も小さくなる画素位置を、セグメント領域に対応する領域としたが、値Ｒｓａｄの最小値の画素位置が、セグメント領域に対応する領域としても良い。この場合、値Ｒｓａｄの最小値が所定の閾値以上の場合、セグメント領域の探索がエラーとされる。
【００７０】
上述のように、本実施の形態では、探索範囲Ｌ０は、中心画素位置から−１０画素ずれた位置から＋１０画素ずれた位置までの範囲が設定される。しかし、たとえば、セグメント領域に対応する実測画像上のドットパターンが中心画素位置から−１０よりも小さい画素位置、または、＋１０よりも大きい画素位置で検出されるような場合、探索範囲Ｌ０内にボトム位置が含まれず、適正に距離検出を行うことができない。この場合、探索範囲Ｌ０の幅を広げることによって、ボトム位置が探索範囲内に含まれることとなり、適正に距離検出し得る。しかし、探索範囲を必要以上に大きくすると距離検出にかかる演算処理が増大する。
【００７１】
他方、実測画像上におけるセグメント領域の位置が大きく変動する領域をある程度予測できれば、その領域においてのみ、探索範囲を大きくすることによって、距離検出にかかる演算量を抑えつつ、適正に距離検出を行うことができる。
【００７２】
ここで、実測画像上におけるセグメント領域の位置が大きく変動する領域は、ある程度予測可能である。
【００７３】
たとえば、背景と検出対象物体、および人物の肩と手等の境界部分においては、前後方向（Ｚ軸方向）の距離情報が大きく変わる。以下、このような、距離が大きく変化する物体と物体の境界部分を単に「境界」とも称する。このような境界を含む領域においては、近距離の物体によって反射されたドットパターンと、遠距離の物体によって反射されたドットパターンが混在するため、セグメント領域のドットパターンとの照合が一部できなくなり、Ｒｓａｄの最小値は、大きなものとなる。また、このような境界を含む領域では、物体によって、ドットパターンの一部が遮られ、またはＣＭＯＳイメージセンサ２４０によってドットパターンの一部を撮像できず、Ｒｓａｄの最小値は、さらに劣化したものとなる。このように、境界位置に近いセグメント領域ほど、Ｒｓａｄの最小値は徐々に大きくなるものと想定される。したがって、Ｒｓａｄの最小値の劣化度合いをモニタすることにより、距離が大きく変動する境界位置のセグメント領域を検出することができるものと推測される。
【００７４】
また、たとえば、物体や壁面等が、情報取得装置１に対して、水平でなく、傾いており、前後方向（Ｚ軸方向）の距離情報が連続して遠ざかる、または近づくように変化する場合が想定され得る。このような場合、既に検出した距離情報の変化傾向から、次のセグメント領域も、同様の傾向で距離が変化すると想定することできる。このように、距離情報の変化傾向をモニタすることにより、斜面等、距離が連続して距離が変動するセグメント
領域を検出することができる。
【００７５】
そこで、本実施の形態では、このような距離が変動する領域において、探索範囲を広く設定して、探索を実行する。他方、このような距離が変動する領域でない場合は、探索範囲をある程度小さく設定して、探索を実行する。さらに、距離検出できなかった場合は、上記のような要因以外の要因により、セグメント領域に対応する位置が、距離が大きく変化する位置にあると想定し、距離検出精度の限界まで、探索範囲を広くして、探索を再度実行する。
【００７６】
以下、Ｒｓａｄの最小値の劣化度合いから境界を検出して、探索範囲を変化させる例を実施例１、既に検出した距離情報の変化傾向から距離の変動を想定し、探索範囲を変化させる例を実施例２として、具体的に説明する。
【００７７】
＜実施例１＞
図６は、境界位置の領域を検出したタイミングにおいて、探索範囲を広げて距離取得を行う処理を示すフローチャートである。図６の処理のうち、距離取得にかかる処理は、図２のＣＰＵ２１の距離取得部２１ｂ、探索範囲の設定にかかる処理は、図２のＣＰＵ２１の探索範囲補正部２１ｃの機能によって行われる。
【００７８】
図７（ａ）は、参照パターン領域の所定の画素位置に設定されるセグメント領域Ｓ（ｒ）と、そのＸ軸方向に隣り合うセグメント領域Ｓ（ｒ＋１）〜Ｓ（ｒ＋３）を示す模式図、図７（ｂ）は、投射光学系１００と受光光学系２００をＹ軸方向から見た模式図である。また、図７（ｃ）〜図７（ｇ）は、セグメント領域の探索範囲と、差分値Ｒｓａｄのグラフを示す模式図である。図７（ｂ）には、セグメント領域Ｓ（ｒ＋１）に対応する領域とセグメント領域Ｓ（ｒ＋１）に隣り合うセグメント領域Ｓ（ｒ）、Ｓ（ｒ＋２）に対応する領域が示されている。なお、図７（ａ）、（ｂ）では、便宜上、隣り合うセグメント領域が、互いに重なり合わないように、簡略化して示されている。
【００７９】
図７（ｂ）に示す例では、基準面の位置と、基準面よりも遠距離の位置にＸＹ平面にＸ−Ｙ平面に平行な検出対象物体Ａ、Ｂが示されている。これらの検出対象物体Ａ、Ｂ間の距離差は、ある程度大きいものの、検出対象物体Ａ、Ｂと壁面との距離差よりは非常に小さい。セグメント領域Ｓ（ｒ＋１）に対応する領域には、境界を跨ぐようにＤＰ光が照射されるため、近距離の検出対象物体Ａによって反射されたドットパターンと、遠距離の検出対象物体Ｂによって反射されたドットパターンの両方が混在している。また、セグメント領域Ｓ（ｒ＋１）に隣り合うセグメント領域Ｓ（ｒ）に対応する領域には、近距離の検出対象物体Ａによって反射されたドットパターンが、セグメント領域Ｓ（ｒ＋１）に隣り合うセグメント領域Ｓ（ｒ＋２）に対応する領域には、遠距離の検出対象物体Ｂによって反射されたドットパターンが含まれている。
【００８０】
以下、図６のフローチャートにおける処理について、図７に示す具体例を参照しながら説明する。図６のフローチャートにおいて、距離取得の対象とされるセグメント領域は、セグメント領域Ｓ（ｉ）である。
【００８１】
図６を参照して、ＣＰＵ２１は、まず、物体の境界位置を含むセグメント領域を検出したことを示す境界フラグがメモリ２５にセットされているか否かを判定する（Ｓ１０１）。そして、ＣＰＵ２１は、境界フラグがセットされていない場合（Ｓ１０１：ＮＯ）、処理をＳ１１１に進め、境界フラグがセットされている場合（Ｓ１０１：ＹＥＳ）、処理をＳ１２１に進める。たとえば、図７（ｂ）において、セグメント領域Ｓ（ｒ）から一つ手前のセグメント領域に対応する領域（破線で示された領域）は、距離が異なる物体の境界に掛からないため、セグメント領域Ｓ（ｒ）の距離検出時には、境界フラグはセットされ
てない。この場合、Ｓ１０１において、ＮＯと判定され、処理Ｓ１１１に進められる。
【００８２】
Ｓ１１１において、ＣＰＵ２１は、所定のセグメント領域Ｓ（ｉ）について、通常の探索範囲Ｌ０で距離取得を行う。通常の探索範囲Ｌ０は、上述のように、距離検出にかかる演算量を考慮して、−１０画素〜１０画素の範囲が設定される。たとえば、図７（ｃ）に示すように、セグメント領域Ｓ（ｒ）について距離取得が行われる場合、セグメント領域Ｓ（ｒ）と探索範囲Ｌ０内の各比較領域との差分値Ｒｓａｄが演算され、演算された差分値Ｒｓａｄのうち、差分値Ｒｓａｄが最小値となる位置の位置ｐ０からの画素ずれ量に応じた距離が当該セグメント領域Ｓ（ｒ）の距離情報として、取得される。これにより、図７（ｂ）に示すように、基準面の位置に配された検出対象物体Ａのセグメント領域Ｓ（ｒ）に対応する位置における距離情報が得られる。ここでは、先行セグメント領域における距離検出において、物体の境界が含まれると判定されていなかったため、−１０画素〜１０画素のある程度短い探索範囲Ｌ０で探索が実行される。
【００８３】
そして、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）について、通常の探索範囲Ｌ０で距離取得が成功したか否かを判定する（Ｓ１１２）。距離取得に成功した場合（Ｓ１１２：ＹＥＳ）、ＣＰＵ２１は、処理をＳ１１５に進める。距離取得に失敗し、エラーとなった場合（Ｓ１１２：ＮＯ）、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）について、距離検出精度の限界まで探索範囲を広くした全探索範囲Ｌｍで距離取得を行う（Ｓ１１３）。これにより、物体の境界以外において、距離が大きく変わったような場合においても、適正に距離検出を行うことができる。そして、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）について、全探索範囲Ｌｍで距離取得が成功したか否かを判定する（Ｓ１１４）。距離取得に成功した場合（Ｓ１１４：ＹＥＳ）、ＣＰＵ２１は、処理をＳ１１５に進める。距離取得に失敗し、エラーとなった場合（Ｓ１１４：ＮＯ）、ＣＰＵ２１は、処理をＳ１１６に進める。
【００８４】
セグメント領域Ｓ（ｉ）について、通常の探索範囲Ｌ０もしくは、全探索範囲Ｌｍで距離取得に成功すると（Ｓ１１２：ＹＥＳ、Ｓ１１４：ＹＥＳ）、ＣＰＵ２１は、次のセグメント領域の探索時における探索範囲の中心を、セグメント領域Ｓ（ｉ）の画素ずれ量に対応する位置に設定する（Ｓ１１５）。たとえば、図７（ｃ）に示すセグメント領域Ｓ（ｒ）の場合、画素ずれ量０が取得されるため、図７（ｄ）に示す次のセグメント領域Ｓ（ｒ＋１）の場合でも、探索範囲の中心位置は、位置ｐ０のままである。仮に、セグメント領域Ｓ（ｒ）における画素ずれ量が−３である場合、セグメント領域Ｓ（ｒ＋１）に対する探索範囲の中心位置は、位置ｐ０から−３だけずれた位置に設定される。
【００８５】
通常、物体の境界以外については、Ｚ軸方向の距離情報は大きく変わらないことが多いため、このように、距離取得に応じて、探索範囲の中心を移動させることによって、短い探索範囲に設定しても、この探索範囲内の比較領域とマッチングが得られる可能性が高い。したがって、境界以外の領域においては、ある程度短い探索範囲を設定し、探索範囲の中心を直前の距離取得結果に応じて、移動させることにより、少ない演算処理で効率的に距離取得を行うことができる。
【００８６】
こうして、境界フラグがセットされていないセグメント領域について、距離取得処理が完了すると、ＣＰＵ２１は、距離取得のために演算したＲｓａｄの最小値Ｒｓｍが所定の閾値Ｒｓｈを超えているか否かを判定する（Ｓ１１６）。閾値Ｒｓｈは、あらかじめ、メモリ２５に、物体の境界と判定し得るＲｓａｄの大きさの値がセットされている。Ｒｓａｄの最小値Ｒｓｍが閾値Ｒｓｈを超えている場合（Ｓ１１６：ＹＥＳ）、ＣＰＵ２１は、当該セグメント領域Ｓ（ｉ）が境界を含むことを示す境界フラグをメモリ２５にセットする（Ｓ１１７）。Ｒｓａｄの最小値Ｒｓｍが閾値Ｒｓｈ以下の場合（Ｓ１１６：ＮＯ）、ＣＰＵ２１は、当該セグメント領域Ｓ（ｉ）の次のセグメント領域があるか否かを判定する（Ｓ１０２）。次のセグメント領域がある場合（Ｓ１０２：ＹＥＳ）、ＣＰＵ２１は、
処理をＳ１０１に戻し、次のセグメント領域がない場合（Ｓ１０２：ＮＯ９）、ＣＰＵ２１は、距離取得の処理を完了する。こうして、全てのセグメント領域について、距離取得の処理が繰り返される。
【００８７】
たとえば、図７（ｂ）に示すセグメント領域Ｓ（ｒ）について距離取得が行われる場合、セグメント領域Ｓ（ｒ）に対応する領域は、検出対象物体Ａの境界に掛からない。このため、図７（ｃ）に示すように、Ｒｓａｄの最小値は、閾値Ｒｓｈを超えず、境界フラグはセットされない。これに対し、図７（ｂ）に示すセグメント領域Ｓ（ｒ＋１）について距離取得が行われる場合、対応する領域は、検出対象物体Ａの境界に掛かっている。このため、検出対象物体Ａによって反射されたドットパターンと、検出対象物体Ｂによって反射されたドットパターンが混在し、異なる距離のドットパターンが混在したドットパターンが、ＣＭＯＳイメージセンサ２４０により撮像される。これにより、図７（ｄ）に示すように、画素ずれ量０の位置と、画素ずれ量−αの位置の２つの位置において、Ｒｓａｄの値がやや小さくなる。
【００８８】
このように、セグメント領域Ｓ（ｒ＋１）におけるＲｓａｄの最小値は、異なる距離のドットパターンが混在することにより、１つの距離のドットパターンのみが含まれるセグメント領域の場合よりも、大きくなる。これにより、セグメント領域Ｓ（ｒ＋１）におけるＲｓａｄの最小値は、閾値Ｒｓｈを超える。したがって、セグメント領域Ｓ（ｒ＋１）においては、Ｒｓａｄの最小値に基づいて、互いに異なる複数の距離が含まれた物体の境界に、セグメント領域Ｓ（ｒ＋１）に対応する領域が掛かっていることを検出することができる。この場合、Ｓ１１６において、ＹＥＳと判定され、Ｓ１１７において、境界フラグがメモリ２５にセットされる。そして、次のセグメント領域Ｓ（ｒ＋２）にかかる処理では、Ｓ１０１において、ＹＥＳと判定され、Ｓ１２１以降の処理が行われる。
【００８９】
なお、境界において、最小値のＲｓａｄの値が閾値Ｒｓｈよりも大きい場合であっても、上記の距離検出にかかるエラー条件に合致しなければ、距離が取得され得る。図７（ｄ）の場合、−α画素ずれの位置において、Ｒｓａｄの値が小さくなっているものの、−α画素ずれの位置が探索範囲Ｌ０に含まれないため、０画素ずれの位置がボトム位置として、検出され、０画素ずれに対応する検出対象物体Ａの距離が当該セグメント領域Ｓ（ｒ＋１）の距離として、取得される。
【００９０】
図６に戻り、所定のセグメント領域において、境界フラグがセットされた場合（Ｓ１０１：ＹＥＳ）、ＣＰＵ２１は、境界フラグがセットされた次のセグメント領域について通常の探索範囲Ｌ０よりも長い探索範囲Ｌｌで距離取得を行う（Ｓ１２１）。たとえば、図７（ｂ）に示すセグメント領域Ｓ（ｒ＋２）について距離取得が行われる場合、一つ前のセグメント領域Ｓ（ｒ＋１）の距離取得において、物体の境界との判定がなされたため、距離が大きく変化することを想定して、−１０画素〜１０画素の探索範囲Ｌ０よりも長い探索範囲Ｌｌで探索が実行される。ここで、探索範囲Ｌｌには、距離検出精度の限界である全探索範囲Ｌｍよりも短い−２０画素〜２０画素が設定される。
【００９１】
こうして、セグメント領域Ｓ（ｒ＋２）について距離取得が行われる場合には、図７（ｅ）に示すように、位置ｐ０を中心として、やや長い探索範囲Ｌｌで探索が実行される。これにより、セグメント領域Ｓ（ｒ＋２）は、遠距離に配された検出対象物体Ｂによって、−α画素の位置に位置付けられたドットパターンと照合することができ、適正に距離検出を行うことができる。
【００９２】
通常、物体と背景（壁面等）の境界であれば、距離情報が大きく変わる。さらに、そのほか物体内の各領域においても、距離情報はある程度大きく変わり得る。たとえば、図７（ｂ）の検出対象物体Ａの位置が人物の手の位置、検出対象物体Ｂの位置が人物の肩の部
分とすると、人物の手（検出対象物体Ａ）と、人物の肩（検出対象物体Ｂ）との距離の変化は、人物と壁面との距離の差よりも、小さい。通常、物体内の各領域における距離の変化は、物体と背景の距離の変化よりも小さい。また、物体が人物等、複雑な形状をしている場合、物体内における境界の発生頻度は、物体と背景の境界の発生頻度よりも高いことが想定される。したがって、上記のように、物体の境界が検出されたことに応じて、通常の探索範囲Ｌ０よりも長く、且つ、全探索範囲Ｌｍよりも短い探索範囲Ｌｌを設定することにより、特に、同一物体内の境界の位置において、演算量を抑えつつ、効率的に距離検出を行うことができる。
【００９３】
そして、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）について、長い探索範囲Ｌｌで距離取得が成功したか否かを判定する（Ｓ１２２）。距離取得に成功した場合（Ｓ１２２：ＹＥＳ）、ＣＰＵ２１は、処理をＳ１２５に進める。距離取得に失敗し、エラーとなった場合（Ｓ１２２：ＮＯ）、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）について、距離検出精度の限界まで探索範囲を広くした全探索範囲Ｌｍで距離取得を行う（Ｓ１２３）。これにより、物体の境界以外の要因で距離が大きく変わった場合においても、適正に距離検出を行うことができる。そして、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）について、全探索範囲Ｌｍで距離取得が成功したか否かを判定する（Ｓ１２４）。距離取得に成功した場合（Ｓ１２４：ＹＥＳ）、ＣＰＵ２１は、処理をＳ１２５に進める。距離取得に失敗し、エラーとなった場合（Ｓ１２４：ＮＯ）、ＣＰＵ２１は、処理をＳ１２６に進める。
【００９４】
セグメント領域Ｓ（ｉ）について、長い探索範囲Ｌｌもしくは、全探索範囲Ｌｍで距離取得に成功すると（Ｓ１２２：ＹＥＳ、Ｓ１２４：ＹＥＳ）、ＣＰＵ２１は、次のセグメント領域の探索時における探索範囲の中心を、セグメント領域Ｓ（ｉ）の画素ずれ量に対応する位置に設定する（Ｓ１２５）。たとえば、図７（ｅ）に示すセグメント領域Ｓ（ｒ＋２）の場合、画素ずれ量−αが取得されるため、図７（ｆ）に示す次のセグメント領域Ｓ（ｒ＋３）の場合において、探索範囲の中心位置が位置ｐ１に設定される。
【００９５】
こうして、物体の境界が検出され、境界フラグがセットされたセグメント領域の次のセグメント領域について、距離取得が完了すると、ＣＰＵ２１は、距離取得のために演算したＲｓａｄの最小値Ｒｓｍが所定の閾値Ｒｓｈ以下であるか否かを判定する（Ｓ１２６）。Ｒｓａｄの最小値Ｒｓｍが閾値Ｒｓｈ以下の場合（Ｓ１２６：ＹＥＳ）、ＣＰＵ２１は、当該セグメント領域は、境界を抜けたと判定し、メモリ２５の境界フラグをリセットする（Ｓ１２７）。Ｒｓａｄの最小値Ｒｓｍが閾値Ｒｓｈを超える場合（Ｓ１２６：ＮＯ）、ＣＰＵ２１は、次のセグメント領域があるか否かを判定する（Ｓ１０２）。そして、次のセグメント領域がある場合（Ｓ１０２：ＹＥＳ）、ＣＰＵ２１は、処理をＳ１０１に戻し、次のセグメント領域がない場合（Ｓ１０２：ＮＯ９）、ＣＰＵ２１は、距離取得の処理を完了する。こうして、全てのセグメント領域について、距離取得の処理が繰り返される。
【００９６】
たとえば、図７（ｂ）に示すセグメント領域Ｓ（ｒ＋３）について距離取得が行われる場合、対応する領域からのドットパターンには、検出対象物体Ｂによって反射されたドットパターンのみが含まれるため、図７（ｅ）に示すように、Ｒｓａｄの最小値は、閾値Ｒｓｈを超えず、境界フラグがリセットされる。こうして、図７（ｇ）に示すように、次のセグメント領域Ｓ（ｒ＋３）では、通常の探索範囲Ｌ０で距離取得が行われる。なお、境界フラグがセットされ、長い探索範囲Ｌｌで距離取得しても、後続のセグメント領域において、図７（ｄ）に示すように、Ｒｓａｄの最小値が閾値Ｒｓｈを超えることが起こり得る。この場合は、境界フラグがリセットされず、後続のセグメント領域において、Ｒｓａｄの最小値が閾値Ｒｓｈ以下となるまで、長い探索範囲Ｌｌでの距離取得が繰り返される。このように、距離が大きく変化する可能性のある境界付近では、長い探索範囲Ｌｌで探索が実行され、境界を超えると、再度、通常の探索範囲Ｌ０に戻して距離取得が行われる
ため、演算量を抑えつつ、効率的に距離取得を行うことができる。
【００９７】
＜実施例１の効果＞
上記実施例１によれば、以下の効果が奏され得る。
【００９８】
距離が大きく変化する可能性のある物体の境界付近では、探索範囲を長い探索範囲Ｌｌに広げて距離取得が行われるため、互いに離れた位置にある物体の境界を含む領域であっても、適正に距離取得を行うことができる。
【００９９】
また、物体の境界以外では、ある程度短い探索範囲Ｌ０で距離取得が行われるため、距離検出にかかる演算量を抑えることができる。
【０１００】
また、長い探索範囲Ｌｌに広げて距離取得を行った後、Ｒｓａｄの最小値が小さくなると、再度、通常の探索範囲Ｌ０で距離取得が行われるため、距離検出にかかる演算量の増大を抑えることができる。
【０１０１】
また、長い探索範囲Ｌｌに広げて距離取得を行った後、距離取得に成功した場合、セグメント領域の画素ずれ量に応じて、次のセグメント領域に対する探索範囲の中心位置が設定されるため、より適正に探索範囲を設定することができる。
【０１０２】
さらに、長い探索範囲Ｌｌに広げて距離取得を行った後、距離取得に失敗した場合、距離検出精度の限界の全探索範囲Ｌｍまで広げて距離取得が行われるため、物体の境界以外の要因で距離が大きく変わった場合においても、適正に距離検出を行うことができる。
【０１０３】
＜実施例２＞
上記実施例１では、Ｒｓａｄの最小値の劣化度合いから物体の境界を検出して、探索範囲を広げたが、実施例２では、既に検出した距離情報の変化傾向から、距離の変動を想定して、探索範囲を変化させる。
【０１０４】
図８は、距離情報の変化傾向に応じて、探索範囲を広げて距離取得を行う処理を示すフローチャートである。図８の処理のうち、距離取得にかかる処理は、図２のＣＰＵ２１の距離取得部２１ｂ、探索範囲の設定にかかる処理は、図２のＣＰＵ２１の探索範囲補正部２１ｃの機能によって行われる。
【０１０５】
図９は、距離情報の変化傾向を得るために、メモリ２５に保持される距離情報テーブルＴを示す図である。距離情報テーブルＴには、横軸がセグメント領域のＸ座標、縦軸がセグメント領域のＹ座標を示す２次元配列であり、各要素には、その座標のセグメント領域の距離検出結果であるボトム位置の画素ずれ量が格納される。ここでは、ｐ列、ｑ行の位置にあるセグメント領域（ｐ、ｑ）が、距離取得の対象とされる場合の例が示されており、距離情報テーブルＴには、セグメント領域（ｐ、ｑ）に対してＸ軸方向に連続するｔ個のセグメント領域（ｐ−１、ｑ）〜（ｐ−ｔ、ｑ）の画素ずれ量が格納される。
【０１０６】
図１０（ａ）は、参照パターン領域の所定の画素位置に設定されるセグメント領域Ｓ（ｉ）と、そのＸ軸負方向に隣り合うセグメント領域Ｓ（ｉ−１）〜Ｓ（ｉ−３）を示す模式図、図１０（ｂ）は、投射光学系１００と受光光学系２００をＹ軸方向から見た模式図である。また、図１０（ｃ）は、セグメント領域Ｓ（ｉ−１）の探索範囲と、差分値Ｒｓａｄのグラフを示す模式図、図１０（ｄ）〜（ｆ）は、セグメント領域Ｓ（ｉ）の探索範囲と差分値Ｒｓａｄのグラフを示す模式図である。なお、図１０（ａ）では、便宜上、隣り合うセグメント領域が、互いに重なり合わないように、簡略化して示されている。また、図１０（ｂ）には、セグメント領域Ｓ（ｉ）、Ｓ（ｉ−１）〜Ｓ（ｉ−３）に対応する
領域が示されている。
【０１０７】
図１０（ｂ）に示す例では、基準面の位置よりも近距離の位置にＸＹ平面に平行な検出対象物体Ａと、基準面よりも遠距離の位置にＸＺ平面の面内方向に傾いた壁面が示されている。セグメント領域Ｓ（ｉ）、Ｓ（ｉ−１）〜Ｓ（ｉ−３）に対応する領域には、壁面によって反射されたドットパターンが含まれている。壁面は、Ｘ軸正方向に向かって、徐々に検出対象物体から遠ざかっている。
【０１０８】
以下、図８のフローチャートにおける処理について、図１０に示す具体例を参照しながら説明する。図８のフローチャートにおいて、距離取得の対象とされるセグメント領域は、セグメント領域Ｓ（ｉ）であり、セグメント領域Ｓ（ｉ−ｋ）は、セグメント領域Ｓ（ｉ）よりもｋ回前に距離取得の対象とされたセグメント領域である。
【０１０９】
図８を参照して、ＣＰＵ２１は、まず、図９に示す距離情報テーブルＴからｔ個分のセグメント領域Ｓ（ｉ−１）〜Ｓ（ｉ−ｔ）の距離取得結果（画素ずれ量）を取得する（Ｓ２０１）。そして、ＣＰＵ２１は、距離情報テーブルＴから、Ｘ軸方向に連続するｔ個分の全てのセグメント領域についての画素ずれ量が取得できたか否かを判定する（Ｓ２０２）。Ｘ軸方向に連続するｔ個分の全てのセグメント領域について画素ずれ量が取得できなかった場合（Ｓ２０２：ＮＯ）、ＣＰＵ２１は、通常の探索範囲Ｌ０で距離取得を行う（Ｓ２０３）。実施例２では、通常の探索範囲Ｌ０は、−１０画素〜１０画素の範囲が設定される。たとえば、参照パターン領域の左端（Ｘ軸負方向）のセグメント領域や、距離検出に失敗し、エラーとなった場合は、通常の探索範囲Ｌ０で距離取得が行われる。
【０１１０】
Ｘ軸方向に連続するｔ個分の全てのセグメント領域について画素ずれ量が取得できた場合（Ｓ２０２：ＹＥＳ）、ＣＰＵ２１は、各セグメント領域間の画素ずれ量の変位Δｄ１〜Δｄｔ−１を演算する（Ｓ２０４）。たとえば、図９に示すようにセグメント領域Ｓ（ｉ−２）の画素ずれ量−６と、セグメント領域Ｓ（ｉ−１）の画素ずれ量−７の場合、これらの変位Δｄ１は、−１となる。すなわち、セグメント領域Ｓ（ｉ−２）、Ｓ（ｉ−１）の変位は、負に変位しており、徐々に距離が遠ざかっていることがわかる。同様にして、Ｘ軸方向に連続するｔ個分の各セグメント領域間の画素ずれ量の変位Δｄ１〜Δｄｔ−１が演算される。
【０１１１】
そして、ＣＰＵ２１は、演算した全ての変位Δｄ１〜Δｄｔ−１が正であるか否か（Ｓ２０５）、負であるか否かを判定する（Ｓ２０６）。全ての変位が正の場合（Ｓ２０５：ＹＥＳ）、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）について、探索範囲Ｌ０を正の方向に平均変位Δｄだけ広げた探索範囲Ｌｐで距離取得を行う（Ｓ２０７）。なお、平均変位Δｄは、Ｓ２０４で演算した全ての変位Δｄ１〜Δｄｔ−１の平均変位の絶対値である。全ての変位が負の場合（Ｓ２０５：ＮＯ、Ｓ２０６：ＹＥＳ）、セグメント領域Ｓ（ｉ）について、探索範囲Ｌ０を負の方向に平均変位Δｄだけ広げた探索範囲Ｌｎで距離取得を行う（Ｓ２０８）。変位Δｄ１〜Δｄｔ−１の正負の符号が全て同一でない場合（Ｓ２０５：ＮＯ、Ｓ２０６：ＮＯ）、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）について、通常の探索範囲Ｌ０で距離取得を行う（Ｓ２０３）。
【０１１２】
たとえば、ｔが３に設定される場合、図１０（ａ）、（ｂ）に示す、セグメント領域Ｓ（ｉ）のＸ軸負方向に連続するセグメント領域Ｓ（ｉ−１）〜Ｓ（ｉ−３）については、負の変位が得られる。この場合の平均変位が１とすると、図１０（ｄ）に示すように、セグメント領域Ｓ（ｉ）では、通常の探索範囲Ｌ０からＸ軸負方向に１だけ広げた、−１１画素〜１０画素の範囲の探索範囲Ｌｎが設定される。逆に、物体が徐々に情報取得装置１に近づくような傾向が得られた場合は、Ｘ軸正方向に探索範囲が広げられ、たとえば、−１０画素〜１１画素の範囲の探索範囲Ｌｗが設定される。これにより、距離の変化の傾向
に応じて、あらかじめ、探索範囲が広げて探索が実行されるため、ボトム位置が探索範囲から外れにくくなり、適正に距離取得を行うことができる。
【０１１３】
こうして、セグメント領域Ｓ（ｉ）について、距離取得が完了すると、ＣＰＵ２１は、距離取得が成功したか否かを判定する（Ｓ２０９）。Ｓ２０３、または、Ｓ２０７もしくはＳ２０８において、距離取得に成功した場合（Ｓ２０９：ＹＥＳ）、ＣＰＵ２１は、処理をＳ２１２に進める。距離取得に失敗し、エラーとなった場合（Ｓ２０９：ＮＯ）、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）について、距離検出精度の限界まで探索範囲を広くした全探索範囲Ｌｍで距離取得を行う（Ｓ２１０）。これにより、Ｘ軸方向に連続したセグメント領域の距離の変化傾向によらないで、距離が大きく変わった場合においても、適正に距離検出を行うことができる。そして、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）について、全探索範囲Ｌｍで距離取得が成功したか否かを判定する（Ｓ２１１）。距離取得に成功した場合（Ｓ２１１：ＹＥＳ）、ＣＰＵ２１は、処理をＳ２１２に進める。距離取得に失敗し、エラーとなった場合（Ｓ２１１：ＮＯ）、ＣＰＵ２１は、処理をＳ２１３に進める。
【０１１４】
セグメント領域Ｓ（ｉ）について、距離取得に成功すると（Ｓ２０９：ＹＥＳ、Ｓ２１１：ＹＥＳ）、ＣＰＵ２１は、次のセグメント領域の探索時における探索範囲の中心を、セグメント領域Ｓ（ｉ）の画素ずれ量に対応する位置に設定する（Ｓ２１２）。そして、ＣＰＵ２１は、セグメント領域Ｓ（ｉ）の距離取得結果（画素ずれ量）を距離情報テーブルＴにセットする（Ｓ２１３）。なお、距離取得がエラーの場合は、エラーを示す所定の値が距離情報テーブルＴにセットされる。その後、ＣＰＵ２１は、当該セグメント領域Ｓ（ｉ）の次のセグメント領域があるか否かを判定する（Ｓ２１４）。次のセグメント領域がある場合（Ｓ２１４：ＹＥＳ）、ＣＰＵ２１は、処理をＳ２０１に戻し、次のセグメント領域がない場合（Ｓ２１４：ＮＯ）、ＣＰＵ２１は、距離取得の処理を完了する。こうして、全てのセグメント領域について、距離取得の処理が繰り返される。
【０１１５】
なお、Ｓ２０７〜２０８では、Ｘ軸方向に連続するセグメント領域の画素ずれ量に応じて、探索範囲が広げられたが、図１０（ｅ）に示すように、探索範囲の中心を移動させても良い。図１０（ｅ）の場合、セグメント領域Ｓ（ｉ−１）の画素ずれ量−αにΔａを加算した位置ｐ２に、探索範囲Ｌ０の中心が位置付けられる。この場合、探索範囲が広げられないため、演算量が増加することなく、画素ずれ量の傾向に応じて、適正に距離検出を行うことができる。
【０１１６】
＜実施例２の効果＞
上記実施例２によれば、以下の効果が奏され得る。
【０１１７】
距離の変化傾向に応じて、探索範囲を広げて距離取得が行われるため、斜面や階段状になっているような複数の距離情報が含まれる領域であっても、適正に距離取得を行うことができる。
【０１１８】
また、距離が変動しない平坦な領域では、ある程度短い探索範囲Ｌ０で距離取得が行われるため、距離検出にかかる演算量を抑えることができる。
【０１１９】
また、探索範囲を広げて距離取得を行った後、距離取得に成功した場合、セグメント領域の画素ずれ量に応じて、次のセグメント領域に対する探索範囲の中心位置が設定されるため、より適正に探索範囲を設定することができる。
【０１２０】
さらに、探索範囲を広げて距離取得を行った後、距離取得に失敗した場合、距離検出精度の限界の探索範囲Ｌｍまで広げて距離取得が行われるため、Ｘ軸方向に連続したセグメ
ント領域の距離の変化傾向によらないで、距離が大きく変わった場合においても、適正に距離検出を行うことができる。
【０１２１】
以上、本発明の実施の形態について説明したが、本発明は、上記実施の形態に何ら制限されるものではなく、また、本発明の実施の形態も上記の他に種々の変更が可能である。
【０１２２】
たとえば、上記実施例１では、長い探索範囲Ｌｌで距離取得を行った後、距離取得に失敗すると、距離検出精度の限界まで探索範囲を広げた全探索範囲Ｌｍで距離取得が行われたが、探索範囲Ｌｌをさらに広げた探索範囲で距離取得を行う処理を所定回数繰り返した後に、全探索範囲Ｌｍで距離取得が行われても良い。
【０１２３】
また、上記実施例１では、Ｒｓａｄの最小値Ｒｓｍが閾値Ｒｓｈを超えた場合に、セグメント領域に対応する領域に境界が含まれると判断したが、その他の条件によって、物体の境界位置を判断しても良い。たとえば、図７（ｄ）に示すように、Ｒｓａｄのグラフにおいて、Ｒｓａｄの値が低くなる位置が２箇所できた場合に、物体の境界であると判断しても良い。この場合、上記実施例１の場合よりも、より正確に物体の境界を判定して、セグメント領域の探索範囲を設定することができる。
【０１２４】
また、上記実施例１では、通常の探索範囲Ｌ０は、−１０画素〜１０画素のある程度の短い探索範囲が設定されたが、通常の探索範囲Ｌ０を全探索範囲Ｌｍと同様に−３０画素〜３０画素に設定されても良い。この場合、セグメント領域の取得結果の傾向から、通常の探索範囲Ｌ０から探索範囲を短くし、その後、上記実施例１のように、探索範囲を広げる処理が行われても良い。
【０１２５】
また、上記実施例１、２では、全探索範囲Ｌｍは、−３０画素〜３０画素が適用されたが、Ｚ軸方向の距離検出精度に応じて、その他の画素数であっても良い。
【０１２６】
また、上記実施例１、２では、探索対象のセグメント領域に対する探索範囲の中心が、１回前の探索時におけるセグメント領域の画素ずれ量に対応する位置に設定されたが、これに代えて、探索対象のセグメント領域に対応する実測画像上の位置から、１回前の探索時におけるセグメント領域の画素ずれ量だけシフトさせた位置に、探索対象のセグメント領域に対する探索範囲の中心を設定しても良い。たとえば、１回前の探索時における画素ずれ量が−αである場合、探索対象のセグメント領域に対する探索範囲の中心は、当該セグメント領域に対応する実測画像上の位置ｐを−αだけシフトさせた位置に設定される。この他、既に探索が行われた複数のセグメント領域の画素ずれ量を平均化する等、他の方法で取得された画素ずれ量を探索範囲の中心の設定のために用いても良く、セグメント領域の移動傾向を取得し、取得した移動傾向に応じた画素ずれ量だけ、実測画像上の位置ｐをずらした位置に、探索対象のセグメント領域に対する探索範囲の中心が設定されれば良い。
【０１２７】
また、上記実施例２では、Ｘ軸方向に連続するセグメント領域の距離取得結果（画素ずれ量）の変位から、距離の変動を推測したが、Ｙ軸方向に連続するセグメント領域の距離取得結果の変位から、距離の変動を推測しても良い。さらに、Ｘ軸方向、Ｙ軸方向の両方を考慮して、距離の変動を推測しても良い。
【０１２８】
また、上記実施例２では、距離取得結果に応じて、Ｘ軸正方向、またはＸ軸負方向に広げた探索範囲Ｌｗ、Ｌｎで距離取得が行われたが、Ｘ軸正方向、およびＸ軸負方向の両方に広げた探索範囲で距離取得が行われても良い。
【０１２９】
また、上記実施例２では、セグメント領域の画素ずれ量に応じて、１画素から、探索範
囲が広げられたが、画素ずれ量の変位が所定の閾値を超えた場合にのみ、探索範囲が広げられても良い。この場合、距離が大きく変動すると想定される場合にのみ、探索範囲を広げることができ、距離検出にかかる演算量を抑えることができる。
【０１３０】
また、上記実施例１と実施例２では、それぞれ、物体の境界に応じて探索範囲を広げる処理と、距離の変動傾向から探索範囲を広げる処理が示されたが、これらの処理が同時に適用されても良い。
【０１３１】
また、上記実施の形態では、隣り合うセグメント領域が互いに重なるように、セグメント領域が設定されたが、左右に隣り合うセグメント領域が、互いに重ならないように、セグメント領域が設定されても良く、また、上下に隣り合うセグメント領域が、互いに重ならないように、セグメント領域が設定されても良い。また、上下左右に隣り合うセグメント領域のずれ量は、１画素に限られるものではなく、ずれ量が他の画素数に設定されても良い。また、上記実施の形態では、セグメント領域の大きさが横１５画素×縦１５画素に設定されたが、検出精度に応じて、任意に設定可能である。さらに、上記実施の形態では、セグメント領域は、正方形状に設定されたが、長方形であっても良い。
【０１３２】
また、上記実施の形態では、セグメント領域と比較領域のマッチング率を算出する前に、セグメント領域と比較領域に含まれる画素の画素値を２値化したが、ＣＭＯＳイメージセンサ２４０によって得られた画素値をそのまま用いて、マッチングしても良い。また、上記実施の形態では、ＣＭＯＳイメージセンサ２４０によって得られた画素値をそのまま２値化したが、画素値について、所定の画素の重みづけ処理、および背景光の除去処理、等の補正処理を行った後に、２値化、もしくは多値化しても良い。
【０１３３】
また、上記実施の形態では、三角測量法を用いて距離情報が求められ、メモリ２７に記憶されたが、物体の輪郭抽出を主目的とするような場合は、三角測量法を用いた距離を演算せずに、セグメント領域の変位量（画素ずれ量）が距離情報として取得されても良い。
【０１３４】
また、上記実施の形態では、目標領域に照射されるレーザ光の波長帯以外の波長帯の光を除去するためにフィルタ２３０を配したが、たとえば、目標領域に照射されるレーザ光以外の光の信号成分を、ＣＭＯＳイメージセンサ２４０から出力される信号から除去する回路構成が配されるような場合には、フィルタ２３０を省略することができる。また、アパーチャ２１０の配置位置は、何れか２つの撮像レンズの間であっても良い。
【０１３５】
また、上記実施の形態では、受光素子として、ＣＭＯＳイメージセンサ２４０を用いたが、これに替えて、ＣＣＤイメージセンサを用いることもできる。さらに、投射光学系１００および受光光学系２００の構成も、適宜変更可能である。また、情報取得装置１と情報処理装置２は一体化されても良いし、情報取得装置１と情報処理装置２がテレビやゲーム機、パーソナルコンピュータと一体化されても良い。
【０１３６】
本発明の実施の形態は、特許請求の範囲に示された技術的思想の範囲内において、適宜、種々の変更が可能である。
【符号の説明】
【０１３７】
１  …  情報取得装置
２１  …  ＣＰＵ（距離取得部）
２１ｂ  …  距離取得部
２１ｃ  …  探索範囲補正部（距離取得部）
２３  …  撮像信号処理回路（距離取得部）
１００  …  投射光学系
１１０  …  レーザ光源
２００  …  受光光学系
２４０  …  ＣＭＯＳイメージセンサ（イメージセンサ）
Ｓ１〜Ｓｎ  …  セグメント領域（参照領域）
Ｌ０  …  探索範囲（第１探索範囲）
Ｌｌ  …  探索範囲（第２探索範囲）
Ｌｍ  …  探索範囲（第２探索範囲）
Ｌｎ  …  探索範囲（第２探索範囲）
Ｌｗ  …  探索範囲（第２探索範囲）
【図１】
2013234956.tif 000003
【図２】
2013234956.tif 000004
【図３】
2013234956.tif 000005
【図４】
2013234956.tif 000006
【図５】
2013234956.tif 000007
【図６】
2013234956.tif 000008
【図７】
2013234956.tif 000009
【図８】
2013234956.tif 000010
【図９】
2013234956.tif 000011
【図１０】
2013234956.tif 000012