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