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