(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022185842
(43)【公開日】2022-12-15
(54)【発明の名称】光検出装置、光検出システム、および光検出方法
(51)【国際特許分類】
G01S 7/495 20060101AFI20221208BHJP
G01S 17/10 20200101ALI20221208BHJP
【FI】
G01S7/495
G01S17/10
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2021093715
(22)【出願日】2021-06-03
(71)【出願人】
【識別番号】316005926
【氏名又は名称】ソニーセミコンダクタソリューションズ株式会社
(74)【代理人】
【識別番号】110001357
【氏名又は名称】弁理士法人つばさ国際特許事務所
(72)【発明者】
【氏名】中田 豊
【テーマコード(参考)】
5J084
【Fターム(参考)】
5J084AA05
5J084AB01
5J084AB07
5J084AB20
5J084AC02
5J084AC03
5J084AC04
5J084AC06
5J084AC07
5J084AD01
5J084BA03
5J084BA20
5J084BA36
5J084CA03
5J084CA26
5J084CA31
5J084CA32
5J084CA45
5J084EA01
5J084EA20
5J084EA22
(57)【要約】
【課題】干渉光が存在した場合でも、測距精度の低下を防止することができる光検出装置を得る。
【解決手段】本開示の光検出装置は、所定のパルスパターンを有する複数の光パルスを検出可能な受光素子と、受光素子の検出タイミングに基づいて第1のヒストグラムを生成可能なヒストグラム生成回路と、第1のヒストグラムに基づいて、パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成可能なフィルタ回路と、第2のヒストグラムに基づいて検出タイミングの代表値を算出可能な代表値算出回路とを備える。フィルタ回路は、第1のヒストグラムまたは第1のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける第1の複数の頻度値のうちの最大値である第1の頻度値をフィルタ処理の対象から除外することが可能である。
【選択図】
図1
【特許請求の範囲】
【請求項1】
所定のパルスパターンを有する複数の光パルスを検出可能な受光素子と、
前記受光素子の検出タイミングに基づいて第1のヒストグラムを生成可能なヒストグラム生成回路と、
前記第1のヒストグラムに基づいて、前記パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成可能なフィルタ回路と、
前記第2のヒストグラムに基づいて前記検出タイミングの代表値を算出可能な代表値算出回路と
を備え、
前記フィルタ回路は、前記第1のヒストグラムまたは前記第1のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける第1の複数の頻度値のうちの最大値である第1の頻度値を前記フィルタ処理の対象から除外することが可能である
光検出装置。
【請求項2】
前記フィルタ処理は、前記処理対象ヒストグラムにおける第2の複数の頻度値と、前記フィルタ係数パターンに含まれる複数のフィルタ係数とそれぞれ乗算し、その乗算結果を加算することを含み、
前記第1の複数の頻度値は、前記第2の複数の頻度値のうちの、前記フィルタ係数パターンに応じた一部の複数の頻度値である
請求項1に記載の光検出装置。
【請求項3】
前記フィルタ処理は、前記処理対象ヒストグラムにおける第2の複数の頻度値と、前記フィルタ係数パターンに含まれる複数のフィルタ係数とそれぞれ乗算し、その乗算結果を加算することを含み、
前記第1の複数の頻度値は、前記第2の複数の頻度値である
請求項1に記載の光検出装置。
【請求項4】
前記最大値の検出対象である前記第1の複数の頻度値を設定する設定回路をさらに備えた
請求項1に記載の光検出装置。
【請求項5】
前記フィルタ回路は、第1のフィルタ回路および第2のフィルタ回路を有し、
前記第1のフィルタ回路は、前記第1のヒストグラムに基づいて第1のフィルタ処理を行うことにより前記中間ヒストグラムを生成可能であり、
前記第2のフィルタ回路は、前記中間ヒストグラムに基づいて第2のフィルタ処理を行うことにより前記第2のヒストグラムを生成可能であり、
前記処理対象ヒストグラムは前記中間ヒストグラムであり、
前記第2のフィルタ回路は、前記第1の頻度値を前記第2のフィルタ処理の対象から除外することが可能である
請求項1に記載の光検出装置。
【請求項6】
前記フィルタ回路は、前記第1の複数の頻度値が所定の判定条件を満たした場合に、前記第1の頻度値を前記フィルタ処理の対象から除外することが可能である
請求項1に記載の光検出装置。
【請求項7】
前記所定の判定条件は、前記第1の頻度値と、前記第1の複数の頻度値における前記第1の頻度値以外の1以上の頻度値との関係を示す条件である
請求項6に記載の光検出装置。
【請求項8】
前記フィルタ回路は、さらに、前記処理対象ヒストグラムにおける前記第1の複数の頻度値のうちの2番目に大きな値である第2の頻度値を前記フィルタ処理の対象から除外することが可能である
請求項1に記載の光検出装置。
【請求項9】
前記受光素子は、繰り返し設定される複数の光検出期間のそれぞれにおいて、前記複数の光パルスを検出可能であり、
前記複数の検出期間のそれぞれの時間長は互いに等しい
請求項1に記載の光検出装置。
【請求項10】
前記受光素子は、繰り返し設定される複数の光検出期間のそれぞれにおいて、前記複数の光パルスを検出可能であり、
前記複数の光検出期間は、第1の時間長の第1の光検出期間と、第2の時間長の第2の光検出期間とを含む
請求項1に記載の光検出装置。
【請求項11】
複数の前記受光素子と、
加算回路と
を備え、
前記複数の受光素子のそれぞれは、検出結果に応じたパルス信号を生成可能であり、
前記加算回路は、前記複数の受光素子のそれぞれにより生成された前記パルス信号に基づいて、パルスの数に応じた検出信号を生成可能であり、
前記ヒストグラム生成回路は、前記検出信号に基づいて前記第1のヒストグラムを生成可能である
請求項1に記載の光検出装置。
【請求項12】
前記複数の受光素子のそれぞれは、繰り返し設定される複数の光検出期間のそれぞれにおいて、前記複数の光パルスを検出可能であり、
前記ヒストグラム生成回路は、前記複数の光検出期間のそれぞれにおける第3の複数の頻度値のそれぞれを累積加算することにより前記第1のヒストグラムを生成可能であり、前記複数の光検出期間のそれぞれにおいて、前記第3の複数の頻度値のうちの最大値である第3の頻度値を累積加算しないことが可能である
請求項11に記載の光検出装置。
【請求項13】
所定のパルスパターンを有する第1の複数の光パルスを射出可能な発光部と、
前記第1の複数の光パルスに応じた、第2の複数の光パルスを検出可能な受光素子と、
前記受光素子の検出タイミングに基づいて第1のヒストグラムを生成可能なヒストグラム生成回路と、
前記第1のヒストグラムに基づいて、前記パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成可能なフィルタ回路と、
前記第2のヒストグラムに基づいて前記検出タイミングの代表値を算出可能な代表値算出回路と
を備え、
前記フィルタ回路は、前記第1のヒストグラムまたは前記第1のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける第1の複数の頻度値のうちの最大値である第1の頻度値を前記フィルタ処理の対象から除外することが可能である
光検出システム。
【請求項14】
所定のパルスパターンを有する第1の複数の光パルスを射出することと、
前記第1の複数の光パルスに応じた第2の複数の光パルスを検出することと、
前記第2の複数の光パルスの検出タイミングに基づいて第1のヒストグラムを生成することと、
前記第1のヒストグラムに基づいて、前記パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成することと、
前記第1のヒストグラムまたは前記第1のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける第1の複数の頻度値のうちの最大値である第1の頻度値を前記フィルタ処理の対象から除外することと、
前記第2のヒストグラムに基づいて前記検出タイミングの代表値を算出することと
を含む光検出方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、光を検出する光検出装置、光検出システム、および光検出方法に関する。
【背景技術】
【0002】
計測対象までの距離を計測する際、しばしば、ToF(Time Of Flight)法が用いられる。このToF法では、光を射出するとともに、計測対象により反射された反射光を検出する。そして、TOF法では、光を射出したタイミングおよび反射光を検出したタイミングの間の時間差を計測することにより、計測対象までの距離を計測する。
【0003】
ところで、レーダ装置では、複数のレーダ装置がある場合に、複数のレーダ装置間で干渉が生じ得る。例えば、特許文献1には、複数のレーダ装置間の干渉による、測距精度の低下の防止を図る技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
このように、光検出装置では、干渉光が存在した場合でも、測距精度の低下を防止できることが望まれている。
【0006】
干渉光が存在した場合でも、測距精度の低下を防止することができる光検出装置、光検出システム、および光検出方法を提供することが望ましい。
【課題を解決するための手段】
【0007】
本開示の一実施の形態における光検出装置は、受光素子と、ヒストグラム生成回路と、フィルタ回路と、代表値算出回路とを備えている。受光素子は、所定のパルスパターンを有する複数の光パルスを検出可能に構成される。ヒストグラム生成回路は、受光素子の検出タイミングに基づいて第1のヒストグラムを生成可能に構成される。フィルタ回路は、第1のヒストグラムに基づいて、パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成可能である。代表値算出回路は、第2のヒストグラムに基づいて検出タイミングの代表値を算出可能である。フィルタ回路は、第1のヒストグラムまたは第1のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける第1の複数の頻度値のうちの最大値である第1の頻度値をフィルタ処理の対象から除外することが可能である。
【0008】
本開示の一実施の形態における光検出システムは、発光部と、受光素子と、ヒストグラム生成回路と、フィルタ回路と、代表値算出回路とを備えている。発光部は、所定のパルスパターンを有する第1の複数の光パルスを射出可能に構成される。受光素子は、記第1の複数の光パルスに応じた、第2の複数の光パルスを検出可能に構成される。ヒストグラム生成回路は、受光素子の検出タイミングに基づいて第1のヒストグラムを生成可能に構成される。フィルタ回路は、第1のヒストグラムに基づいて、パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成可能である。代表値算出回路は、第2のヒストグラムに基づいて検出タイミングの代表値を算出可能である。フィルタ回路は、第1のヒストグラムまたは第1のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける第1の複数の頻度値のうちの最大値である第1の頻度値をフィルタ処理の対象から除外することが可能である。
【0009】
本開示の一実施の形態における光検出方法は、所定のパルスパターンを有する第1の複数の光パルスを射出することと、第1の複数の光パルスに応じた第2の複数の光パルスを検出することと、第2の複数の光パルスの検出タイミングに基づいて第1のヒストグラムを生成することと、第1のヒストグラムに基づいて、パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成することと、第1のヒストグラムまたは第1のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける第1の複数の頻度値のうちの最大値である第1の頻度値をフィルタ処理の対象から除外することと、第2のヒストグラムに基づいて検出タイミングの代表値を算出することとを含む。
【0010】
本開示の一実施の形態における光検出装置、光検出システム、および光検出方法では、所定のパルスパターンを有する複数の光パルスが検出され、この複数の光パルスの検出タイミングに基づいて、第1のヒストグラムが生成される。この第1のヒストグラムに基づいて、パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理が行われることにより、第2のヒストグラムが生成される。その際、第1のヒストグラムまたは第2のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける、第1の複数の頻度値のうちの最大値である第1の頻度値が、フィルタ処理の対象から除外される。そして、第2のヒストグラムに基づいて検出タイミングの代表値が算出される。
【図面の簡単な説明】
【0011】
【
図1】本開示の実施の形態に係る光検出システムの一構成例を表すブロック図である。
【
図2】
図1に示した発光部が射出する光パルスの一例を表す波形図である。
【
図3】
図1に示した受光部の一構成例を表す回路図である。
【
図4】
図1に示したヒストグラム生成部の一構成例を表すブロック図である。
【
図5】
図4に示したヒストグラム生成部の一動作例を表す説明図である。
【
図6】
図1に示したフィルタ処理部の一構成例を表すブロック図である。
【
図7】
図6に示したフィルタ処理部におけるフィルタ係数パターンの一例を表す説明図である。
【
図8】フィルタ係数パターンの一例を表す説明図である。
【
図9】フィルタ処理の一動作例を表す説明図である。
【
図10A】フィルタ処理の一動作例を表す他の説明図である。
【
図10B】フィルタ処理の一動作例を表す他の説明図である。
【
図10C】フィルタ処理の一動作例を表す他の説明図である。
【
図10D】フィルタ処理の一動作例を表す他の説明図である。
【
図10E】フィルタ処理の一動作例を表す他の説明図である。
【
図11】
図1に示した光検出システムの一動作例を表す説明図である。
【
図12】
図1に示した光検出システムの一動作例を表すタイミング図である。
【
図13】
図1に示した光検出システムの一動作例を表す他のタイミング図である。
【
図14】
図1に示した光検出システムの一動作例を表す他のタイミング図である。
【
図15】
図6に示したフィルタ処理部の一動作例を表す説明図である。
【
図16A】
図6に示したフィルタ処理部の一動作例を表す説明図である。
【
図16B】
図6に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図16C】
図6に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図16D】
図6に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図16E】
図6に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図17】比較例に係るフィルタ処理部の一動作例を表す他の説明図である。
【
図18】
図6に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図19】
図6に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図20】
図6に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図21】
図6に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図22】
図1に示した光検出システムの一動作例を表す他の説明図である。
【
図23】変形例に係るフィルタ処理部の一構成例を表すブロック図である。
【
図24】他の変形例に係るフィルタ処理部の一構成例を表すブロック図である。
【
図25】他の変形例に係るフィルタ処理部の一構成例を表すブロック図である。
【
図26】
図25に示したフィルタ処理部の一動作例を表す説明図である。
【
図27】他の変形例に係るフィルタ処理部の一構成例を表すブロック図である。
【
図28】
図27に示したフィルタ処理部の一動作例を表す説明図である。
【
図29】他の変形例に係るフィルタ処理部の一構成例を表すブロック図である。
【
図30A】
図29に示したフィルタ処理部の一動作例を表す説明図である。
【
図30B】
図29に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図30C】
図29に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図30D】
図29に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図31】他の変形例に係るフィルタ処理部の一構成例を表すブロック図である。
【
図32】
図31に示したフィルタ処理部の一動作例を表す説明図である。
【
図33】
図31に示したフィルタ処理部の一動作例を表す他の説明図である。
【
図34】他の変形例に係る光検出システムの一動作例を表すタイミング図である。
【
図35】他の変形例に係るヒストグラム生成部の一構成例を表すブロック図である。
【
図36】
図35に示したヒストグラム生成部を備えた光検出システムの一動作例を表すタイミング図である。
【
図37】車両制御システムの概略的な構成の一例を示すブロック図である。
【
図38】車外情報検出部及び撮像部の設置位置の一例を示す説明図である。
【発明を実施するための形態】
【0012】
以下、本開示の実施の形態について、図面を参照して詳細に説明する。なお、説明は以下の順序で行う。
1.実施の形態
2.移動体への応用例
【0013】
<1.実施の形態>
[構成例]
図1は、一実施の形態に係る光検出システム(光検出システム1)の一構成例を表すものである。光検出システム1は、ToFセンサであり、光を射出するとともに、計測対象により反射された反射光を検出するように構成される。なお、本開示の実施の形態に係る光検出装置および光検出方法は、本実施の形態により具現化されるので、併せて説明する。光検出システム1は、光検出部20と、発光制御部11と、発光部12とを備えている。
【0014】
光検出部20は、発光制御部11に対して指示を行うことにより発光部12に光パルスL0を照射させるとともに、計測対象により反射された光パルス(反射光パルスL1)を検出するように構成される。
【0015】
発光制御部11は、光検出部20からの指示に基づいて発光部12の動作を制御するように構成される。
【0016】
発光部12は、発光制御部11からの指示に基づいて、計測対象に向かって、所定のパルスパターンを有する複数の光パルスL0を射出するように構成される。発光部12は、例えば赤外光を射出する光源を有する。この光源は、例えば、レーザ光源やLED(Light Emitting Diode)などを用いて構成される。
【0017】
図2は、発光部12の射出光を表すものであり、(A)は射出光の一例を示し、(B)は射出光の他の一例を示す。この例では、発光部12は、3つの光パルスL0を射出する。光パルスL0のパルス幅P1は、例えば4nsecにすることができる。
図2(A)の例では、3つ光パルスL0における2つのパルス間隔P2を等しくしている。
図2(B)の例では、3つの光パルスL0における2つのパルス間隔P2が互いに異なるようにしている。発光部12は、このように、複数の光パルスL0は、パルスパターンを有する。このパルスパターンは、測距制御部25により設定される。例えば、光検出システム1におけるパルスパターンは、他の光検出システムにおけるパルスパターンと異なるように設定される。発光部12は、後述するように、繰り返し設定される複数の光検出期間Tのそれぞれにおいて、このようなパルスパターンを有する複数の光パルスL0を射出するようになっている。
【0018】
光検出システム1から射出された光パルスL0は、計測対象において反射される。そして、計測対象により反射された光パルス(反射光パルスL1)は、光検出システム1の光検出部20に入射する。光検出部20は、この反射光パルスL1を検出するようになっている。
【0019】
光検出部20は、画素アレイ21と、ヒストグラム生成部22と、フィルタ処理部23と、距離演算部24と、測距制御部25とを有している。
【0020】
画素アレイ21は、マトリックス状に配置された複数の受光部Pを有している。複数の受光部Pは、光を検出するように構成される。
【0021】
図3は、受光部Pの一構成例を表すものである。受光部Pは、複数の受光回路DETと、加算回路ADDとを有している。
【0022】
複数の受光回路DETのそれぞれは、フォトダイオードPDと、抵抗素子R1と、インバータIV1とを有している。フォトダイオードPDは、光を電荷に変換する光電変換素子である。フォトダイオードPDのアノードには電源電圧VSSが供給され、カソードはノードN1に接続される。フォトダイオードPDは、例えばシングルフォトンアバランシェダイオード(SPAD;Single Photon Avalanche Diode)を用いることができる。抵抗素子R1の一端には電源電圧VDDが供給され、他端はノードN1に接続される。インバータIV1の入力端子はノードN1に接続され、出力端子は加算回路ADDの入力端子に接続される。インバータIV1は、ノードN1における電圧が論理しきい値より高い場合に低レベルを出力し、ノードN1における電圧が論理しきい値より低い場合に高レベルを出力することにより、パルス信号PLSを生成するように構成される。
【0023】
この構成により、この受光回路DETでは、フォトダイオードPDが光を検出することにより、アバランシェ増幅が生じ、ノードN1における電圧が低下する。そして、ノードN1における電圧がインバータIV1の論理しきい値より低くなると、パルス信号PLSが低レベルから高レベルへ変化する。その後、抵抗素子R1を介してノードN1に電流が流れることにより、ノードN1の電圧が上昇する。そして、ノードN1における電圧がインバータIV1の論理しきい値より高くなると、パルス信号PLSが高レベルから低レベルに変化する。このようにして、受光回路DETは、検出した光に応じたパルスを有するパルス信号PLSを生成するようになっている。
【0024】
加算回路ADDは、複数の受光回路DETから供給された複数のパルス信号PLSに基づいて、複数のパルス信号PLSにおけるパルスの数を示すコードを含む検出信号Sdetを生成するように構成される。具体的には、加算回路ADDは、複数のパルス信号PLSのうちの、高レベルであるパルス信号PLSの数を示すコードを生成する。例えば、受光部Pが9つの受光回路DETを有する場合には、このコードは、0以上9以下の値を示す。この場合には、コードは4ビットのコードである。そして、加算回路ADDは、このようなコードを含む検出信号Sdetを、ヒストグラム生成部22に供給するようになっている。
【0025】
ヒストグラム生成部22(
図1)は、検出信号Sdetに基づいて、受光部Pにおける反射光パルスL1の検出タイミングについてのヒストグラムH1を生成するように構成される。ヒストグラム生成部22は、複数の検出信号Sdetに基づいて、複数のヒストグラムH1をそれぞれ生成するようになっている。
【0026】
図4は、ヒストグラム生成部22における、1つの検出信号Sdetに基づいて1つのヒストグラムH1を生成する回路の一構成例を表すものである。ヒストグラム生成部22は、複数のアキュムレータAC(この例では100個のアキュムレータAC1~AC100)と、出力部OUT1とを有している。
【0027】
アキュムレータAC1は、測距制御部25から供給された制御信号EN1およびクロック信号CLKに基づいて、制御信号EN1がアクティブになる期間における検出信号Sdetが示すコードの値を累積加算することによりカウント値CNT1を生成するように構成される。制御信号EN1は、例えば、複数の光検出期間T(後述)のそれぞれの開始タイミングから始まる、1nsecの時間幅を有する期間においてアクティブになる信号である。クロック信号CLKは、例えば、1GHzの信号である。アキュムレータAC1は、複数の光検出期間Tのそれぞれにおいて、制御信号EN1がアクティブになる期間における、検出信号Sdetが示すコードの値をラッチし、ラッチした値を累積加算することによりカウント値CNT1を更新するようになっている。
【0028】
同様に、アキュムレータAC2は、測距制御部25から供給された制御信号EN2およびクロック信号CLKに基づいて、制御信号EN2がアクティブになる期間における検出信号Sdetが示すコードの値を累積加算することによりカウント値CNT2を生成するように構成される。制御信号EN2は、例えば、複数の光検出期間Tのそれぞれの開始タイミングから1nsec経過したタイミングから始まる、1nsecの時間幅を有する期間においてアクティブになる信号である。アキュムレータAC2は、複数の光検出期間Tのそれぞれにおいて、制御信号EN2がアクティブになる期間における、検出信号Sdetが示すコードの値をラッチし、ラッチした値を累積加算することによりカウント値CNT2を更新するようになっている。
【0029】
アキュムレータAC3は、測距制御部25から供給された制御信号EN3およびクロック信号CLKに基づいて、制御信号EN3がアクティブになる期間における検出信号Sdetが示すコードの値を累積加算することによりカウント値CNT3を生成するように構成される。制御信号EN3は、例えば、複数の光検出期間Tのそれぞれの開始タイミングから2nsec経過したタイミングから始まる、1nsecの時間幅を有する期間においてアクティブになる信号である。アキュムレータAC3は、複数の光検出期間Tのそれぞれにおいて、制御信号EN3がアクティブになる期間における、検出信号Sdetが示すコードの値をラッチし、ラッチした値を累積加算することによりカウント値CNT3を更新するようになっている。
【0030】
以上、アキュムレータAC1~AC3を例に挙げて説明したが、アキュムレータAC4~AC100についても同様である。
【0031】
図5は、ヒストグラム生成部22におけるアキュムレータAC1~AC100の一動作例を表すものであり、(A)は発光部12の射出光の波形を示し、(B)は最初の光検出期間Tにおいて得られたカウント値CNT1~CNT100の一例を表すものであり、(C)は複数の光検出期間Tにおいて得られたカウント値CNT1~CNT100の一例を表すものである。
【0032】
光検出システム1では、発光部12は、繰り返し設定された複数の光検出期間Tのそれぞれにおいて、3つの光パルスL0を射出する(
図5(A))。そして、この複数の光パルスL0に応じた複数の反射光パルスL1が受光部Pに入射する(
図5(B))。受光部Pは、反射光パルスL1を受光することにより検出信号Sdetを生成する。ヒストグラム生成部22におけるアキュムレータAC1~AC100は、この検出信号Sdetに基づいて、カウント値CNT1~CNT100を生成する。
【0033】
図5(B)に示したように、この例では、最初の光検出期間Tにおいて、アキュムレータAC23~AC29は、3つの反射光パルスL1のうちの最初の反射光パルスL1に応じたカウント値CNT23~CNT29を生成し、アキュムレータAC33~AC39は、2番目の反射光パルスL1に応じたカウント値CNT33~CNT39を生成し、アキュムレータAC43~AC49は、3番目の反射光パルスL1に応じたカウント値CNT43~CNT49を生成する。アキュムレータAC1~AC100は、複数の光検出期間Tにおいて、カウント値CNT1~CNT100のそれぞれを累積加算する。これにより、アキュムレータAC1~AC100は、
図5(C)に示したようなカウント値CNT1~CNT100を生成する。このカウント値CNT1~CNT100は、ヒストグラムH1を構成する。カウント値CNT1~CNT100のそれぞれは、ヒストグラムH1における頻度値である。例えば、ヒストグラムH1において、最初の反射光パルスL1に応じたカウント値CNT23~CNT29の分布のピーク位置は、光検出システム1と計測対象との間の距離に応じた位置である。
【0034】
このようにして、アキュムレータAC1~AC100は、複数の光検出期間Tにおいて、カウント値CNT1~CNT100のそれぞれを累積加算する。そして、アキュムレータAC1~AC100は、複数の光検出期間Tが終了した後に、累積加算されたカウント値CNT1~CNT100を出力部OUT1に供給するようになっている。
【0035】
出力部OUT1(
図4)は、クロック信号CLK2に基づいて、カウント値CNT1~CNT100をカウント値CNT1から順に出力することにより、ヒストグラムH1をフィルタ処理部23に供給するようになっている。
【0036】
このようにして、ヒストグラム生成部22は、1つの検出信号Sdetに基づいて、1つのヒストグラムH1を生成する。ヒストグラム生成部22は、複数の検出信号Sdetのそれぞれに基づいて、このような処理を行うことにより、複数のヒストグラムH1を生成する。そして、ヒストグラム生成部22は、これらのヒストグラムH1をフィルタ処理部23に供給するようになっている。
【0037】
フィルタ処理部23(
図1)は、複数のヒストグラムH1に対してフィルタ処理をそれぞれ行うことにより、複数のヒストグラムH2をそれぞれ生成するように構成される。
【0038】
図6は、フィルタ処理部23における、1つのヒストグラムH1に基づいて1つのヒストグラムH2を生成する回路の一構成例を表すものである。フィルタ処理部23は、シフトレジスタ31と、乗算部32と、最大値検出部33と、除去部34と、加算部35とを有している。
【0039】
シフトレジスタ31は、複数のレジスタを有している。複数のレジスタのそれぞれは、複数ビットからなるカウント値を記憶することができるように構成される。1段目のレジスタの入力端子には、ヒストグラムH1におけるカウント値CNT1~CNT100が、カウント値CNT1から順に順次供給され、出力端子は2段目のレジスタの入力端子に接続される。2段目のレジスタの入力端子は、1段目のレジスタの出力端子に接続され、出力端子は3段目のレジスタの入力端子に接続される。他のレジスタについても同様である。この構成により、シフトレジスタ31では、クロック信号CLK2に基づいて、1段目のレジスタから最終段のレジスタに向かって、供給されたカウント値を1つずつシフトするようになっている。
【0040】
乗算部32は、シフトレジスタ31に含まれる複数のレジスタの複数の出力値に対して、測距制御部25から供給された複数のフィルタ係数をそれぞれ乗算し、乗算によりえられた複数の値を除去部34に供給するようになっている。
【0041】
最大値検出部33は、測距制御部25からの指示に基づいて、シフトレジスタ31から出力される複数の出力値のうちの2以上の出力値の最大値を検出するように構成される。そして、最大値検出部33は、乗算部32が出力する複数の値のうちの、その最大値に対応する値を除去するように、除去部34に対して指示を行うようになっている。
【0042】
除去部34は、最大値検出部33からの指示に基づいて、乗算部32から供給された複数の値のうち、最大値検出部33により検出された最大値に対応する値を“0”に置き換え、それ以外の複数の値をそのまま出力するように構成される。これにより、フィルタ処理部23では、最大値検出部33により検出された最大値が、フィルタ処理の対象から除外されるようになっている。
【0043】
加算部35は、除去部34から出力された複数の値を加算するように構成される。
【0044】
フィルタ処理部23には、ヒストグラムH1におけるカウント値CNT1~CNT100が、カウント値CNT1から順に供給される。シフトレジスタ31は、1段目のレジスタから最終段のレジスタに向かって、供給されたカウント値を1つずつシフトする。フィルタ処理部23では、カウント値CNT1~CNT100のうちの1つが供給される度に、乗算部32が、シフトレジスタ31に含まれる複数のレジスタの出力値に対して複数のフィルタ係数をそれぞれ乗算し、最大値検出部33が、2以上の出力値のうちの最大値を検出し、除去部34が、乗算部32から供給された複数の値のうち、最大値検出部33により検出された最大値に対応する値を“0”に置き換えて出力し、加算部35が、除去部34から出力された複数の値を加算するようになっている。
【0045】
以下に、フィルタ処理部23におけるフィルタ処理について、詳細に説明する。以下では、説明の便宜上、最大値検出部33および除去部34の動作を省いて説明する。なお、最大値検出部33および除去部34の動作については、詳細に後述する。
【0046】
図7は、複数のフィルタ係数を含むフィルタ係数パターンを表すものであり、(A)はフィルタ係数パターンの一例を示し、(B)はフィルタ係数パターンの他の一例を示す。この例では、複数のフィルタ係数のそれぞれは、“0”または“1”に設定される。フィルタ係数パターンは、発光部12が射出する複数の光パルスL0のパルスパターンにそれぞれ対応するように設定される。例えば、
図7(A)に示したフィルタ係数パターンは、
図2(A)に示したパルスパターンに対応し、
図7(B)に示したフィルタ係数パターンは、
図2(B)に示したパルスパターンに対応する。フィルタ係数が“1”である部分の幅は、光パルスL0のパルス幅に応じて、4nsecにすることが望ましい。
【0047】
図8は、
図7(A)に示したフィルタ係数パターンを構成する2つのフィルタ係数パターンを表すものである。
図7(A)に示したフィルタ係数パターンは、
図8に示すように、2つのフィルタ係数パターンの線形結合として表すことができる。
【0048】
図8(A)に示したフィルタ係数パターンを用いたフィルタ処理は、いわゆるヒストグラムフィルタ処理である。このフィルタ係数パターンは、光パルスL0の形状に対応して設定される。例えば、光パルスL0の形状がガウス分布を有する場合には、このフィルタ係数パターンもガウス分布を有することが望ましい。
【0049】
図9は、
図8(A)に示したフィルタ係数パターンを用いたフィルタ処理の一例を表すものであり、一番上はヒストグラムH1を示し、上から2段目はフィルタ係数パターンを示し、上から3段目は、ヒストグラムH1における頻度値(カウント値)とフィルタ係数パターンのフィルタ係数との乗算結果を示し、上から4段目は、フィルタ処理の結果を示す。なお、この例では、説明の便宜上、フィルタ係数が“1”である部分の幅を3nsecにしている。
【0050】
ヒストグラムH1は、矢印で示したように、フィルタ係数パターンの右側から、左に向かって1目盛りずつ移動する。
図9(A)~(E)に示したように、ヒストグラムH1の移動に応じて、ヒストグラムH1における、フィルタ係数が“1”である範囲と重なる部分が変化する。これにより、一番下の段に示したようなヒストグラムが生成される。生成されたヒストグラムの形状では、ヒストグラムH1の形状に比べて、ピークがより際立つ。このように、ヒストグラムフィルタ処理を行うことにより、ヒストグラムの形状を変更することができる。
【0051】
図8(B)に示したフィルタ係数パターンを用いたフィルタ処理は、いわゆるデコーディングフィルタ処理である。すなわち、このフィルタ係数パターンは、複数の光パルスL0のパルスパターン(この例では
図2(A))に対応する。これにより、光検出システム1は、自らが射出した複数の光パルスL0に応じた複数の反射光パルスL1を検出した場合には、ヒストグラムH1のパターンおよびフィルタ係数パターンが互いにマッチングするため、以下に説明するように、より大きなピークを有するヒストグラムH2を生成することができる。
【0052】
図10A~10Eは、
図7に示したフィルタ係数パターンを用いたフィルタ処理の一例を表すものであり、一番上はヒストグラムH1を示し、上から2段目はフィルタ係数パターンを示し、上から3段目は、ヒストグラムH1における頻度値(カウント値)とフィルタ係数パターンのフィルタ係数との乗算結果を示し、上から4段目は、フィルタ処理の結果を示す。
【0053】
図9の場合と同様に、ヒストグラムH1は、矢印で示したように、フィルタ係数パターンの右側から、左に向かって1目盛りずつ移動する。
図10A~10Eに示したように、ヒストグラムH1の移動に応じて、ヒストグラムH1における、フィルタ係数が“1”である範囲と重なる部分が変化する。これにより、
図10A~10Eの一番下の段に示したようなヒストグラムH2が生成される。この例では、ヒストグラムH1のパターンおよびフィルタ係数パターンが互いにマッチングするため、例えば、
図10Cのケースにおいて、ヒストグラムH2のピークを高くすることができる。
【0054】
図11は、
図10A~10Eに示したフィルタ処理を行った場合の、光検出システム1の一動作例を表すものであり、(A)は発光部12の射出光の波形を示し、(B)はヒストグラムH1の一例を示し、(C)はヒストグラムH2の一例を示す。この例では、
図11(C)に示したように、ヒストグラムH2に、5つの分布が生じる。これらの5つの分布は、
図10(A)~(E)に示した処理にそれぞれ対応する。ヒストグラムH2のピークは、この5つの分布のうちの中央の分布において生じる。このピーク位置は、光検出システム1と計測対象との間の距離に応じた位置である。
【0055】
このようにして、フィルタ処理部23は、1つのヒストグラムH1に基づいて1つのヒストグラムH2を生成する。フィルタ処理部23は、複数のヒストグラムH1のそれぞれに基づいて、このような処理を行うことにより、複数のヒストグラムH2を生成する。そして、フィルタ処理部23は、これらのヒストグラムH2を距離演算部24に供給するようになっている。
【0056】
距離演算部24は、複数のヒストグラムH2のそれぞれに基づいて、光パルスが光検出システム1と計測対象との間を往復する光飛行時間を算出し、この光飛行時間に基づいて、複数の受光部Pのそれぞれにおける距離値を算出するように構成される。具体的には、距離演算部24は、例えばヒストグラムH2における頻度値の代表値を検出することにより、光飛行時間を算出する。例えば、距離演算部24は、頻度値のピーク値を、頻度値の代表値にすることができる。そして、距離演算部24は、この光飛行時間に基づいて、光検出システム1と計測対象との間の距離値を算出する。距離演算部24は、複数の受光部Pのそれぞれについての距離値のデータを含む距離データDTを出力するようになっている。
【0057】
測距制御部25は、発光制御部11、ヒストグラム生成部22、フィルタ処理部23、および距離演算部24の動作を制御することにより、光検出システム1の動作を制御するように構成される。また、測距制御部25は、光検出システム1において使用されるクロック信号CLK,CLK2を生成する機能をも有している。
【0058】
ここで、フォトダイオードPDは、本開示における「受光素子」の一具体例に対応する。ヒストグラム生成部22は、本開示における「ヒストグラム生成回路」の一具体例に対応する。フィルタ処理部23は、本開示における「フィルタ回路」の一具体例に対応する。距離演算部24は、本開示における「代表値算出回路」の一具体例に対応する。測距制御部25は、本開示における「設定回路」の一具体例に対応する。加算回路ADDは、本開示における「加算回路」の一具体例に対応する。検出信号Sdetは、本開示における「検出信号」の一具体例に対応する。ヒストグラムH1は、本開示における「第1のヒストグラム」の一具体例に対応する。ヒストグラムH2は、本開示における「第2のヒストグラム」の一具体例に対応する。光検出期間Tは、本開示における「光検出期間」の一具体例に対応する。
【0059】
[動作および作用]
続いて、本実施の形態の光検出システム1の動作および作用について説明する。
【0060】
(全体動作概要)
まず、
図1を参照して、光検出システム1の全体動作概要を説明する。発光制御部11は、光検出部20の測距制御部25からの指示に基づいて発光部12の動作を制御する。発光部12は、発光制御部11からの指示に基づいて、計測対象に向かって、所定のパルスパターンを有する複数の光パルスL0を射出する。光検出部20の画素アレイ21において、受光部Pは、光を検出することにより、検出信号Sdetを生成する。ヒストグラム生成部22は、測距制御部25からの指示に基づいて、受光部Pにおける反射光パルスL1の検出タイミングについてのヒストグラムH1を生成する。フィルタ処理部23は、ヒストグラムH1に対してフィルタ処理を行うことにより、ヒストグラムH2を生成する。距離演算部24は、ヒストグラムH2に基づいて光飛行時間を算出し、この光飛行時間に基づいて、受光部Pにおける距離値を算出する。そして、距離演算部24は、複数の受光部Pのそれぞれについての距離値のデータを含む距離データDTを出力する。測距制御部25は、発光制御部11、ヒストグラム生成部22、フィルタ処理部23、および距離演算部24の動作を制御することにより、光検出システム1の動作を制御する。
【0061】
(詳細動作)
図12は、光検出システム1の一動作例を表すものであり、(A)は発光部12の射出光の波形を示し、(B)は受光部Pにおける入射光の波形を示し、(C)はヒストグラム生成部22のカウント値CNT1~CNT100の分布を示し、(D)はヒストグラムH2を示す。
【0062】
光検出システム1では、測距制御部25は、複数の光検出期間Tを設定する。この例では、複数の光検出期間Tの時間長は、互いに等しい。測距制御部25は、この例では、
図2(B)に示したパルスパターンで、発光部12を発光させる。発光制御部11は、測距制御部25からの指示に基づいて発光部12の動作を制御し、発光部12は、複数の検出期間Tのそれぞれにおいて、計測対象に向かって、
図2(B)に示したパルスパターンを有する3つの光パルスL0を射出する(
図12(A))。
【0063】
光検出システム1から射出された光パルスL0は、計測対象において反射される。そして、計測対象により反射された光パルス(反射光パルスL1)は、光検出部20の受光部Pに入射する(
図12(B))。複数の検出期間Tのそれぞれにおいて、3つの反射光パルスL1のタイミングは、3つの光パルスL0のタイミングから、光検出システム1から計測対象までの距離に応じた時間だけそれぞれ遅延したタイミングである。
【0064】
受光部Pは、この反射光パルスL1を検出し、検出信号Sdetを生成する。ヒストグラム生成部22における100個のアキュムレータAC1~AC100は、検出信号Sdetに基づいて、カウント値CNT1~CNT100を生成する(
図12(C))。カウント値CNT1~CNT100は、複数の光検出期間Tにおいて累積加算される。これにより、
図12(C)に示したように、3つの反射光パルスL1を検出する度に、カウント値CNT1~CNT100のうちの、この3つの反射光パルスL1に対応する複数のカウント値が徐々に大きくなる。そして、最後の光検出期間Tが終了すると、ヒストグラム生成部22は、累積加算されたカウント値CNT1~CNT100を、ヒストグラムH1として出力する。
【0065】
フィルタ処理部23は、このようにして生成されたヒストグラムH1に対してフィルタ処理を行うことにより、ヒストグラムH2を生成する(
図12(D))。測距制御部25は、
図2(B)に示したパルスパターンに対応する、
図7(B)に示したフィルタ係数パターンで、フィルタ処理部23を動作させる。ヒストグラムH1における、反射光パルスL1に基づくパターンは、フィルタ処理部23におけるフィルタ係数パターンと互いにマッチングするため、ヒストグラムH2は、
図12(D)に示したように、高いピークを有する。距離演算部24は、このヒストグラムH2に基づいて光飛行時間を算出し、この光飛行時間に基づいて、受光部Pにおける距離値を算出する。
【0066】
この例では、光検出システム1は、自らが射出した3つの光パルスL0に応じた3つの反射光パルスL1を検出した。光検出システム1は、例えば、さらに、他の光検出システム1Aから射出された複数の光パルスを検出する場合もあり得る。以下に、この場合の動作について説明する。
【0067】
図13は、光検出システム1の他の一動作例を表すものである。この
図13では、光検出システム1とは異なる光検出システム1Aが射出した光パルスおよびこの光パルスに基づくヒストグラムを、破線で描いている。
【0068】
この例では、複数の光検出期間Tのそれぞれにおいて、光検出システム1とは異なる光検出システム1Aから射出された複数の光パルスL2が、受光部Pに入射する(
図13(B))。この例では、光検出システム1Aは、光検出システム1の光検出期間Tと同じ時間長の光検出期間において、3つの光パルスL2を射出する。この光検出システム1Aのパルスパターンは、光検出システム1のパルスパターンとは異なる。
【0069】
受光部Pは、反射光パルスL1およびこの光パルスL2を検出し、検出信号Sdetを生成する。ヒストグラム生成部22における100個のアキュムレータAC1~AC100は、検出信号Sdetに基づいて、カウント値CNT1~CNT100を生成する(
図13(C))。これにより、この3つの光パルスL2に対応する複数のカウント値が徐々に大きくなる。そして、最後の光検出期間Tが終了すると、ヒストグラム生成部22は、累積加算されたカウント値CNT1~CNT100を、ヒストグラムH1として出力する。
【0070】
フィルタ処理部23は、このようにして生成されたヒストグラムH1に対してフィルタ処理を行うことにより、ヒストグラムH2を生成する(
図13(D))。ヒストグラムH1における、光パルスL2に基づくパターンは、フィルタ処理部23におけるフィルタ係数パターンと互いにマッチングしない。よって、
図13に示したように、このような光パルスL2が入射しても、ヒストグラムH2には大きなピークは生じない。よって、距離演算部24は、ヒストグラムH2における、反射光パルスL1に係る部分に基づいて光飛行時間を算出し、この光飛行時間に基づいて、受光部Pにおける距離値を算出する。このように、光検出システム1では、光検出システム1とは異なる光検出システム1Aから射出された複数の光パルスL2が入射した場合において、測距精度が低下する可能性を低減することができる。
【0071】
また、光検出システム1は、例えば、周期的な、強い干渉光が入射する場合もあり得る。以下に、この場合の動作について説明する。
【0072】
図14は、光検出システム1の他の一動作例を表すものである。この
図14では、この干渉光に基づくヒストグラムを、破線で描いている。
【0073】
この例では、複数の光検出期間Tのそれぞれにおいて、干渉光L3が受光部Pに入射する(
図14(B))。この例では、干渉光L3は、光検出システム1の光検出期間Tと同じ一定の周期で生じている。受光部Pは、反射光パルスL1およびこの干渉光L3を検出し、検出信号Sdetを生成する。ヒストグラム生成部22における100個のアキュムレータAC1~AC100は、検出信号Sdetに基づいて、カウント値CNT1~CNT100を生成する(
図14(C))。これにより、干渉光L3に対応するカウント値が徐々に大きくなる。そして、最後の光検出期間Tが終了すると、ヒストグラム生成部22は、累積加算されたカウント値CNT1~CNT100を、ヒストグラムH1として出力する。この例では、干渉光L3が反射光パルスL1よりも強いので(
図14(B))、
図14(C)に示したように、ヒストグラムH1においても、干渉光L3に係るカウント値が一番大きくなる。
【0074】
フィルタ処理部23は、このようにして生成されたヒストグラムH1に対してフィルタ処理を行うことにより、ヒストグラムH2を生成する(
図14(D))。フィルタ処理部23は、以下に詳細に説明するように、最大値検出部33により検出された最大値をフィルタ処理の対象から除外することにより、ヒストグラムH2における、この干渉光に応じた成分を低減させる。これにより、光検出システム1では、干渉光がある場合でも、測距精度の低下を防ぐことができる。
【0075】
フィルタ処理部23では、最大値検出部33は、測距制御部25からの指示に基づいて、シフトレジスタ31から出力される複数の出力値のうちの2以上の出力値の最大値を検出する。そして、最大値検出部33は、乗算部32が出力する複数の値のうちの、その最大値に対応する値を除去するように、除去部34に対して指示を行う。除去部34は、最大値検出部33からの指示に基づいて、乗算部32から供給された複数の値のうち、最大値検出部33により検出された最大値に対応する値を“0”に置き換え、それ以外の複数の値をそのまま出力する。
【0076】
測距制御部25は、最大値検出部33に対して、シフトレジスタ31から出力される複数の出力値のうちの、最大値検出の処理対象Rmaxとなる2以上の出力値を設定する。最大値検出部33は、測距制御部25により設定された処理対象Rmaxである2以上の出力値に基づいて、最大値を検出する。処理対象Rmaxについては、様々な設定方法があり得る。以下に、これらの様々な設定方法における、光検出システム1の動作を説明する。
【0077】
(動作例E1)
動作例E1では、測距制御部25は、シフトレジスタ31から出力される複数の出力値のうちの、フィルタ係数が“1”である2以上の出力値を、最大値検出の処理対象Rmaxとして設定する。
【0078】
図15,16A~16Eは、動作例E1に係る光検出システム1の一動作例を表すものである。
図15,16A~16Eのそれぞれにおいて、(A)はヒストグラムH1を示し、(B)はフィルタ処理部23におけるフィルタ係数パターンを示し、(C)は、ヒストグラムH1における頻度値(カウント値)とフィルタ係数パターンのフィルタ係数との乗算結果を示す。動作例E1では、
図15,16A~16Eに示したように、シフトレジスタ31から出力される複数の出力値のうちの、フィルタ係数が“1”である12個の出力値が、最大値検出の処理対象Rmaxとして設定される。
【0079】
ヒストグラムH1は、3つの反射光パルスL1に係る部分W1と、干渉光L3に係る部分W2とを含む。ヒストグラムH1は、矢印で示したように、フィルタ係数パターンの右側から、左に向かって、1目盛りずつ移動する。
【0080】
図15では、ヒストグラムH1における部分W1が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている(
図15(A),(B))。最大値検出部33は、ヒストグラムH1における、最大値検出の処理対象Rmaxである12個の頻度値のうちの最大値を検出する。この例では、部分W1における3つの分布のうちの一番右の分布のピーク値が最大値MAXである。そして、除去部34は、最大値検出部33からの指示に基づいて、乗算部32が出力する複数の値のうちの、この最大値MAXに係る値を“0”に置き換えて出力する(
図15(C))。そして、加算部35は、除去部34から出力された12個の値を加算する。
【0081】
図16A~16Eでは、ヒストグラムH1が左に向かって移動することにより、ヒストグラムH1とフィルタ係数パターンとの相対的な位置関係が変化し、ヒストグラムH1における部分W2が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている。
図16A~16Eでは、部分W2おける4つの頻度値のうちの1つが最大値MAXである。そして、除去部34は、最大値検出部33からの指示に基づいて、乗算部32が出力する複数の値のうちの、この最大値MAXに係る値を“0”に置き換えて出力する(
図16A(C),16B(C),16C(C),16D(C),16E(C))。そして、加算部35は、除去部34から出力された12個の値を加算する。
【0082】
このように、光検出システム1では、最大値検出部33により検出された最大値をフィルタ処理の対象から除外する。これにより、光検出システム1では、ヒストグラムH2における、この干渉光に応じた成分を低減させることができるので、干渉光に起因する測距精度の低下を防ぐことができる。
【0083】
すなわち、例えば、最大値検出部33および除去部34を設けない場合には、
図17に示したように、最大値はフィルタ処理の対象から除外されない。この
図17は、
図16Cに対応する図である。この
図17(C)では、
図16C(C)とは異なり、ヒストグラムH1における頻度値(カウント値)とフィルタ係数パターンのフィルタ係数との乗算結果に、最大値MAXに応じた成分が除去されずに残っている。よって、加算部35が12個の値を加算することにより得られた値は、最大値MAXに応じた成分を含む。この最大値MAXが大きい場合には、干渉光L3が、ヒストグラムH2におけるピーク値を構成する場合もあり得る。すなわち、この場合には、反射光パルスL1がヒストグラムH2におけるピーク値を構成しない。この場合には、測距精度が低下してしまう。
【0084】
一方、本実施の形態では、最大値検出部33および除去部34を設けるようにしたので、例えば
図16A~16Eに示したように、最大値検出部33により検出された最大値がフィルタ処理の対象から除外される。その結果、反射光パルスL1がヒストグラムH2におけるピーク値を構成するようになるので、干渉光がある場合でも、測距精度の低下を防ぐことができる。
【0085】
(動作例E2)
動作例E2では、測距制御部25は、シフトレジスタ31から出力される複数の出力値のうちの、フィルタ係数が“1”である3つの部分のそれぞれにおける1つの出力値を、最大値検出の処理対象Rmaxとして設定する。
【0086】
図18,19は、動作例E2に係る光検出システム1の一動作例を表すものである。動作例E2では、
図18,19に示したように、シフトレジスタ31から出力される複数の出力値のうちの、フィルタ係数が“1”である3つの部分のそれぞれにおける1つの出力値が、最大値検出の処理対象Rmaxとして設定される。この例では、フィルタ係数が“1”である3つの部分における一番左側の出力値が、処理対象Rmaxとして設定される。
【0087】
図18では、ヒストグラムH1における部分W1が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている(
図18(A),(B))。最大値検出部33は、ヒストグラムH1における、最大値検出の処理対象Rmaxである3個の頻度値のうちの最大値を検出する。この例では、部分W1における3つの分布のうちの一番右の分布における値が最大値MAXである。そして、除去部34は、最大値検出部33からの指示に基づいて、乗算部32が出力する複数の値のうちの、この最大値MAXに係る値を“0”に置き換えて出力する(
図18(C))。そして、加算部35は、除去部34から出力された12個の値を加算する。
【0088】
図19では、ヒストグラムH1における部分W2が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている。
図19では、部分W2おける4つの頻度値のうちの1つが最大値MAXである。そして、除去部34は、最大値検出部33からの指示に基づいて、乗算部32が出力する複数の値のうちの、この最大値MAXに係る値を“0”に置き換えて出力する(
図18(C))。そして、加算部35は、除去部34から出力された12個の値を加算する。
【0089】
このように、光検出システム1では、最大値検出部33により検出された最大値をフィルタ処理の対象から除外する。これにより、光検出システム1では、ヒストグラムH2における、この干渉光に応じた成分を低減させることができるので、干渉光に起因する測距精度の低下を防ぐことができる。
【0090】
(動作例E3)
動作例E3では、測距制御部25は、シフトレジスタ31から出力される複数の出力値のうちの全てを、最大値検出の処理対象Rmaxとして設定する。
【0091】
図20,21は、動作例E3に係る光検出システム1の一動作例を表すものである。動作例E3では、
図20,21に示したように、シフトレジスタ31から出力される複数の出力値の全てが、最大値検出の処理対象Rmaxとして設定される。
【0092】
図20では、ヒストグラムH1における部分W1が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている(
図20(A),(B))。最大値検出部33は、ヒストグラムH1における、最大値検出の処理対象Rmaxである複数の頻度値のうちの最大値を検出する。この例では、部分W2における値が最大値MAXである。この
図20では、この最大値MAXは、フィルタ係数が“1”である部分と重なっていない。よって、除去部34は、乗算部32が出力する複数の値をそのまま出力する(
図20(C))。そして、加算部35は、除去部34から出力された12個の値を加算する。
【0093】
図21では、ヒストグラムH1における部分W2が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている。除去部34は、最大値検出部33からの指示に基づいて、乗算部32が出力する複数の値のうちの、最大値MAXに係る値を“0”に置き換えて出力する(
図21(C))。そして、加算部35は、除去部34から出力された12個の値を加算する。
【0094】
このように、光検出システム1では、最大値検出部33により検出された最大値をフィルタ処理の対象から除外する。これにより、光検出システム1では、ヒストグラムH2における、この干渉光に応じた成分を低減させることができるので、干渉光に起因する測距精度の低下を防ぐことができる。
【0095】
図22は、光検出システム1の一動作例を表すものであり、(A)は光検出システム1と計測対象との間の距離が短い場合を示し、(B)は光検出システム1と計測対象との間の距離が中程度である場合を示し、(A)は光検出システム1と計測対象との間の距離が長い場合を示す。
図22(A)~(C)に示したように、光検出システム1と計測対象との間の距離が短い場合には、反射光パルスL1の光強度が強く、距離が遠い場合には、反射光パルスL1の光強度が弱い。このように、反射光パルスL1の光強度が弱い場合でも、光検出システム1では、最大値検出部33により検出された最大値をフィルタ処理の対象から除外するので、干渉光L3に起因する測距精度の低下を防ぐことができる。その結果、光検出システム1では、測距可能な距離を延ばすことができる。
【0096】
このように、光検出システム1では、所定のパルスパターンを有する複数の反射光パルスL1を検出可能なフォトダイオードPDと、フォトダイオードPDの検出タイミングに基づいて第1のヒストグラム(ヒストグラムH1)を生成可能なヒストグラム生成部22と、ヒストグラムH1に基づいて、パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラム(ヒストグラムH2)を生成可能なフィルタ処理部23と、第2のヒストグラム(ヒストグラムH2)に基づいて検出タイミングの代表値を算出可能な距離演算部24とを備えるようにした。フィルタ処理部23は、第1のヒストグラム(ヒストグラムH1)における2以上の頻度値のうちの最大値である第1の頻度値をフィルタ処理の対象から除外するようにした。これにより、光検出システム1では、ヒストグラムH2における、干渉光に応じた成分を低減させることができるので、干渉光が存在した場合でも、測距精度の低下を防止することができる。
【0097】
[効果]
以上のように本実施の形態では、所定のパルスパターンを有する複数の反射光パルスを検出可能なフォトダイオードと、フォトダイオードの検出タイミングに基づいてヒストグラムを生成可能なヒストグラム生成部と、第1のヒストグラムに基づいて、パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成可能なフィルタ処理部と、第2のヒストグラムに基づいて検出タイミングの代表値を算出可能な距離演算部とを備えるようにした。そして、フィルタ処理部は、第1のヒストグラムにおける2以上の頻度値のうちの最大値である第1の頻度値をフィルタ処理の対象から除外するようにした。これにより、干渉光が存在した場合でも、測距精度の低下を防止することができる。
【0098】
[変形例1]
上記実施の形態では、フィルタ処理部23は、
図6に示したように、除去部34が、最大値検出部33からの指示に基づいて、乗算部32から供給された複数の値のうち、最大値検出部33により検出された最大値に対応する値を“0”に置き換えるようにしたが、これに限定されるものではない。これに代えて、例えば、
図23に示すフィルタ処理部23Aのように、除去部34を設けず、加算部35の検出結果から、最大値に対応する値を減算してもよい。このフィルタ処理部23Aは、最大値検出部33Aと、加算部36Aとを有している。最大値検出部33Aは、測距制御部25からの指示に基づいて、シフトレジスタ31から出力される複数の出力値のうちの2以上の出力値に基づいて、この2以上の出力値のうちの最大値を検出するように構成される。そして、最大値検出部33Aは、その最大値に、フィルタ係数パターンに含まれるその最大値に対応するフィルタ係数を乗算し、乗算結果を加算部36Aに供給するようになっている。加算部36Aは、加算部35の加算結果から、最大値検出部33Aから供給された値を減算するように構成される。この構成でも、フィルタ処理部23Aは、最大値検出部33Aにより検出された最大値を、フィルタ処理の対象から除外することができる。
【0099】
[変形例2]
上記実施の形態では、フィルタ処理部23は、
図6に示したように、フィルタ処理を一段のフィルタ回路を用いて行うようにしたが、これに限定されるものではない。これに代えて、例えば、フィルタ処理を複数段のフィルタ回路を用いて行ってもよい。以下に、本変形例について、いくつか例を挙げて説明する。
【0100】
図24は、本変形例に係るフィルタ処理部23Bの一構成例を表すものである。フィルタ処理部23Bは、測距制御部25Bからの指示に基づいて処理を行う。このフィルタ処理部23Bは、シフトレジスタ31と、乗算部32と、最大値検出部33と、除去部34と、加算部35と、シフトレジスタ41と、乗算部42と、最大値検出部43と、除去部44と、加算部45とを有している。シフトレジスタ31、乗算部32、最大値検出部33、除去部34、および加算部35は、1段目のフィルタ回路を構成し、シフトレジスタ41、乗算部42、最大値検出部43、除去部44、および加算部45は、2段目のフィルタ回路を構成する。2段目のフィルタ回路の構成は、1段目のフィルタ回路の構成と同様である。1段目のフィルタ回路は、ヒストグラムH1に基づいて中間ヒストグラムH11を生成する。2段目のフィルタ回路は、中間ヒストグラムH11に基づいてヒストグラムH2を生成する。
【0101】
図25は、本変形例に係る他のフィルタ処理部23Cの一構成例を表すものである。フィルタ処理部23Cは、測距制御部25Cからの指示に基づいて処理を行う。このフィルタ処理部23Cは、シフトレジスタ31と、乗算部32と、加算部35と、シフトレジスタ41と、乗算部42と、最大値検出部43と、除去部44と、加算部45とを有している。シフトレジスタ31、乗算部32、および加算部35は、1段目のフィルタ回路を構成し、シフトレジスタ41、乗算部42、最大値検出部43、除去部44、および加算部45は、2段目のフィルタ回路を構成する。この例では、1段目のフィルタ回路は、
図8(A)に示したようなフィルタ係数パターンを用いて、ヒストグラムフィルタ処理を行う。また、2段目のフィルタ回路は、
図8(B)に示したフィルタ係数パターンを用いてデコーディングフィルタ処理を行うとともに、最大値検出を行う。
【0102】
図26は、フィルタ処理部23Cの一動作例を表すものであり、(A)はヒストグラムH1を示し、(B)は1段目のフィルタ回路におけるフィルタ係数パターンを示し、(C)は、第1のフィルタ回路により生成される中間ヒストグラムH11を示し、(D)は2段目のフィルタ回路におけるフィルタ係数パターンを示し、(E)は中間ヒストグラムH11における頻度値(カウント値)と第2のフィルタ回路におけるフィルタ係数パターンのフィルタ係数との乗算結果を示す。この2段目のフィルタ回路では、動作例E1(
図15,16A~16E)のように、シフトレジスタ41から出力される複数の出力値のうちの、フィルタ係数が“1”である複数の出力値が、最大値検出の処理対象Rmaxとして設定される。
【0103】
1段目のフィルタ回路では、ヒストグラムH1は、矢印で示したように、フィルタ係数パターンの右側から、左に向かって、1目盛りずつ移動する(
図26(A),(B))。1段目のフィルタ回路は、
図26(B)に示したフィルタ係数パターンを用いて、ヒストグラムフィルタ処理を行うことにより、中間ヒストグラムH11を生成する(
図26(C))。
【0104】
2段目のフィルタ回路では、中間ヒストグラムH11は、矢印で示したように、フィルタ係数パターンの右側から、左に向かって、1目盛りずつ移動する(
図26(C),(D))。この例では、中間ヒストグラムH11における部分W1が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている。2段目のフィルタ回路における最大値検出部43は、ヒストグラムH11における、最大値検出の処理対象Rmaxである3個の頻度値のうちの最大値を検出する。この例では、部分W1における3つの分布のうちの一番右の分布のピーク値が最大値MAXである。そして、除去部44は、最大値検出部43からの指示に基づいて、この最大値MAXに係る値を“0”に置き換えて出力する(
図26(E))。そして、加算部35は、除去部34から出力された3個の値を加算する。2段目のフィルタ回路は、
図26(D)に示したフィルタ係数パターンを用いて、デコーディングフィルタ処理を行うことにより、ヒストグラムH2を生成する。
【0105】
図27は、本変形例に係る他のフィルタ処理部23Dの一構成例を表すものである。フィルタ処理部23Dは、測距制御部25Dからの指示に基づいて処理を行う。このフィルタ処理部23Dは、シフトレジスタ31と、乗算部32と、最大値検出部33と、除去部34と、加算部35と、シフトレジスタ41と、乗算部42と、最大値検出部43と、除去部44と、加算部45とを有している。シフトレジスタ31、乗算部32、最大値検出部33、除去部34,および加算部35は、1段目のフィルタ回路を構成し、シフトレジスタ41、乗算部42、最大値検出部43、除去部44、および加算部45は、2段目のフィルタ回路を構成する。この例では、1段目のフィルタ回路は、ワンショットのフィルタ係数パターンを用いて処理を行うとともに、最大値検出を行う。また、2段目のフィルタ回路は、
図7に示したフィルタ係数パターンを用いてフィルタ処理を行うとともに、最大値検出を行う。
【0106】
図28は、フィルタ処理部23Dの一動作例を表すものであり、(A)はヒストグラムH1を示し、(B)は1段目のフィルタ回路におけるフィルタ係数パターンを示し、(C)は、第1のフィルタ回路により生成される中間ヒストグラムH11を示し、(D)は2段目のフィルタ回路におけるフィルタ係数パターンを示し、(E)は中間ヒストグラムH11における頻度値(カウント値)と第2のフィルタ回路におけるフィルタ係数パターンのフィルタ係数との乗算結果を示す。この1段目のフィルタ回路では、動作例E3(
図20,21)のように、シフトレジスタ31から出力される複数の出力値の全てが、最大値検出の処理対象Rmaxとして設定される。また、2段目のフィルタ回路では、動作例E2(
図18,19)のように、シフトレジスタ41から出力される複数の出力値のうちの、フィルタ係数が“1”である3つの部分のそれぞれにおける1つの出力値が、最大値検出の処理対象Rmaxとして設定される。
【0107】
1段目のフィルタ回路では、ヒストグラムH1は、矢印で示したように、フィルタ係数パターンの右側から、左に向かって、1目盛りずつ移動する(
図28(A),(B))。1段目のフィルタ回路は、
図28(B)に示したワンショットのフィルタ係数パターンを用いて処理を行うことにより、中間ヒストグラムH11を生成する。1段目のフィルタ回路における最大値検出部33は、ヒストグラムH11における、最大値検出の処理対象Rmaxである複数の頻度値のうちの最大値を検出する。この例では、部分W2における値が最大値MAXである。よって、1段目のフィルタ回路は、ヒストグラムH1において、この最大値MAXに係る値を“0”に置き換えることにより、中間ヒストグラムH11を生成する(
図28(C))。
【0108】
2段目のフィルタ回路では、中間ヒストグラムH11は、矢印で示したように、フィルタ係数パターンの右側から、左に向かって、1目盛りずつ移動する(
図28(C),(D))。この例では、中間ヒストグラムH11における部分W1が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている。2段目のフィルタ回路における最大値検出部43は、ヒストグラムH11における、最大値検出の処理対象Rmaxである3個の頻度値のうちの最大値を検出する。この例では、部分W1における3つの分布のうちの一番右の分布の値が最大値MAXである。そして、除去部44は、最大値検出部43からの指示に基づいて、この最大値MAXを“0”に置き換えて出力する(
図28(E))。そして、加算部35は、除去部34から出力された3個の値を加算する。2段目のフィルタ回路は、
図26(D)に示したフィルタ係数パターンを用いて、デフィルタ処理を行うことにより、ヒストグラムH2を生成する。
【0109】
[変形例3]
上記実施の形態では、フィルタ処理部23は、最大値検出部33により検出された最大値をフィルタ処理の対象から除外するようにしたが、これに限定されるものではなく、例えば、最大値だけでなく、2番目に大きい値や、3番目に大きい値などをもフィルタ処理の対象から除外してもよい。以下に、最大値および2番目に大きい値をフィルタ処理の対象から場外する例について詳細に説明する。
【0110】
図29は、本変形例に係るフィルタ処理部23Eの一構成例を表すものである。フィルタ処理部23Eは、検出部33Eを有している。検出部33Eは、測距制御部25により設定された処理対象Rmaxである2以上の出力値のうち、最大値、および2番目に大きい値を検出するように構成される。そして、検出部33Eは、乗算部32が出力する複数の値のうちの、その最大値に対応する値と、2番目に大きい値に対応する値とを除去するように、除去部34に対して指示を行うようになっている。
【0111】
図30A~30Dは、フィルタ処理部23Eの一動作例を表すものである。
図30A~30Dのそれぞれにおいて、(A)はヒストグラムH1を示し、(B)はフィルタ係数パターンを示し、(C)は、ヒストグラムH1における頻度値(カウント値)とフィルタ係数パターンのフィルタ係数との乗算結果を示す。この例では、動作例E2(
図18,19)のように、シフトレジスタ31から出力される複数の出力値のうちの、フィルタ係数が“1”である3つの部分のそれぞれにおける1つの出力値が、最大値検出の処理対象Rmaxとして設定される。
【0112】
図30A~30Dでは、ヒストグラムH1における部分W2が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている。ヒストグラムH1は、矢印で示したように、フィルタ係数パターンの右側から、左に向かって、1目盛りずつ移動する。
【0113】
図30Aでは、部分W2における7つの頻度値のうちの1つが最大値MAXであり、部分W1における複数の頻度値のうちの1つが2番目に大きい値MAX2である。
図30B~30Eでは、部分W2における7つの頻度値のうちの1つが最大値MAXであり、この7つの頻度値のうちの他の1つが2番目に大きい値MAX2である。除去部34は、検出部33Eからの指示に基づいて、この最大値MAXに係る値および2番目に大きい値MAX2に係る値を“0”に置き換えて出力する(
図30A(C),30B(C),30C(C),30D(C))。そして、加算部35は、除去部34から出力された12個の値を加算する。
【0114】
[変形例4]
上記実施の形態では、フィルタ処理部23は、最大値検出部33により検出された最大値をフィルタ処理の対象から除外するようにしたが、その際、例えば、所定の判定条件を満たした場合に、最大値をフィルタ処理の対象から除外するようにしてもよい。以下に、本変形例に係るフィルタ処理部23Fについて詳細に説明する。
【0115】
図31は、フィルタ処理部23Fの一構成例を表すものである。フィルタ処理部23Fは、最大値検出部33Fを有している。最大値検出部33Fは、測距制御部25からの指示に基づいて、シフトレジスタ31から出力される複数の出力値のうちの2以上の出力値の最大値を検出するように構成される。最大値検出部33Fは、判定部39Fを有している。判定部39Fは、検出した最大値が所定の判定条件を満たすかどうかを判定するように構成される。最大値検出部33Fは、検出した最大値が所定の判定条件を満たす場合に、乗算部32が出力する複数の値のうちの、その最大値に対応する値を除去するように、除去部34に対して指示を行うようになっている。
【0116】
図32,33は、フィルタ処理部23Fの一動作例を表すものである。
図32,22のそれぞれにおいて、(A)はヒストグラムH1を示し、(B)はフィルタ係数パターンを示し、(C)は、ヒストグラムH1における頻度値(カウント値)とフィルタ係数パターンのフィルタ係数との乗算結果を示す。この例では、動作例E2(
図18,19)のように、シフトレジスタ31から出力される複数の出力値のうちの、フィルタ係数が“1”である3つの部分のそれぞれにおける1つの出力値が、最大値検出の処理対象Rmaxとして設定される。
【0117】
図32では、ヒストグラムH1における部分W1が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている(
図32(A),(B))。最大値検出部33は、ヒストグラムH1における、最大値検出の処理対象Rmaxである3個の頻度値のうちの最大値を検出する。この例では、部分W1における3つの分布のうちの一番右の分布における値が最大値MAXである。判定部39Fは、検出した最大値が所定の判定条件を満たすかどうかを判定する。この判定条件は、最大値検出の処理対象Rmaxである3個の頻度値のうちの最大値から、この3個の頻度値の平均値を減算し、その減算結果が所定のしきい値よりも大きいことであってもよい。この例では、3つの頻度値は、互いに同程度であるので、この判定条件を満たさない。よって、除去部34は、この最大値MAXに係る値を“0”に置き換えずに、そのまま出力する(
図32(C))。そして、加算部35は、除去部34から出力された12個の値を加算する。
【0118】
図33では、ヒストグラムH1における部分W2が、フィルタ係数パターンにおけるフィルタ係数が“1”である領域と重なっている(
図33(A),(B))。最大値検出部33は、ヒストグラムH1における、最大値検出の処理対象Rmaxである3個の頻度値のうちの最大値を検出する。この例では、部分W2における4つの頻度値のうちの1つが最大値MAXである。この例では、この最大値MAXは、残りの2つの値に比べて十分に大きいので、判定条件を満たす。よって、最大値検出部33Fは、乗算部32が出力する複数の値のうちの、その最大値MAXに対応する値を除去するように、除去部34に対して指示を行う。除去部34は、最大値検出部33Fからの指示に基づいて、乗算部32が出力する複数の値のうちの、この最大値MAXに係る値を“0”に置き換えて出力する(
図33(C))。そして、加算部35は、除去部34から出力された12個の値を加算する。
【0119】
[変形例5]
上記実施の形態では、複数の光検出期間Tの長さを互いに等しくしたが、これに限定されるものではなく、例えば、光検出期間Tを変更してもよい。以下に、本変形例について詳細に説明する。
【0120】
図34は、本変形例に係る光検出システムの一動作例を表すものであり、(A)は発光部12の射出光の波形を示し、(B)は受光部Pにおける入射光の波形を示し、(C)はヒストグラム生成部22のカウント値CNT1~CNT100の分布を示し、(D)はヒストグラムH2を示す。
【0121】
発光部12は、複数の光検出期間Tのそれぞれの開始タイミングを基準として、3つの光パルスL0を射出する(
図34(A))。受光部Pは、複数の光検出期間Tのそれぞれの開始タイミングを基準として、光検出システム1と計測対象との間の距離に応じた時間だけ遅れたタイミングで、3つの反射光パルスL1を検出する(
図34(B))。よって、複数の光検出期間Tのそれぞれにおいて、受光部Pが反射光パルスL1を検出するタイミングは同じである。その結果、3つの反射光パルスL1を検出する度に、カウント値CNT1~CNT100のうちの、この3つの反射光パルスL1に対応する複数のカウント値が徐々に大きくなる(
図34(C))。一方、干渉光L3は一定の周期で生じているので、複数の光検出期間Tのそれぞれにおいて、受光部Pが干渉光L3を検出するタイミングは変化する。よって、カウント値CNT1~CNT100のうちの、この干渉光L3に対応する複数のカウント値は、さほど大きくならない。その結果、ヒストグラムH2は、
図34(D)に示したように、反射光パルスL1に基づく部分に高いピークを有する。
【0122】
この
図34では、カウント値CNT1~CNT100のうちの、この干渉光L3に対応する複数のカウント値は、さほど大きくならないように描いたが、場合によっては、大きくなることもあり得る。このような場合でも、最大値検出部33により検出された最大値がフィルタ処理の対象から除外されるので、上記実施の形態の場合と同様に測距精度の低下を防ぐことができる。
【0123】
[変形例6]
上記実施の形態では、検出信号Sdetに基づいて、受光部Pにおける反射光パルスL1の検出タイミングについてのヒストグラムH1を生成するようにしたが、その際、例えば、複数の光検出期間Tのそれぞれにおいて、カウント値の最大値を検出し、検出された最大値を累積加算しないようにしてもよい。以下に、本変形例に係るヒストグラム生成部22Gについて詳細に説明する。
【0124】
図35は、本変形例に係るヒストグラム生成部22Gの一構成例を表すものである。ヒストグラム生成部22Gは、最大値検出部53Gを有している。最大値検出部53Gは、複数の光検出期間Tのそれぞれにおいて、アキュムレータAC1~AC100により得られたカウント値の最大値を検出するように構成される。そして、最大値検出部53Gは、その最大値であるカウント値を生成したアキュムレータに対して、その最大値を累積加算しないように指示するようになっている。
【0125】
図36は、本変形例に係る光検出システムの一動作例を表すものであり、(A)は発光部12の射出光の波形を示し、(B)は受光部Pにおける入射光の波形を示し、(C)はヒストグラム生成部22Gのカウント値CNT1~CNT100の分布を示し、(D)はヒストグラムH2を示す。
【0126】
受光部Pは、複数の光検出期間Tのそれぞれにおいて、発光部12が射出した3つの光パルスL0に応じた3つの反射光パルスL1と、干渉光L3とを検出する(
図36(A),(B))。ヒストグラム生成部22Gにおける100個のアキュムレータAC1~AC100は、受光部Pが生成した検出信号Sdetに基づいて、カウント値CNT1~CNT100を生成する(
図36(C))。ヒストグラム生成部22Gの最大値検出部53Gは、複数の光検出期間Tのそれぞれにおいて、アキュムレータAC1~AC100により得られたカウント値の最大値を検出する。この例では、複数の光検出期間Tのそれぞれにおいて、干渉光L3に応じたカウント値が最大値になり得る。最大値検出部53Gは、その最大値であるカウント値を生成したアキュムレータに対して、その最大値を累積加算しないように指示する。これにより、
図36(C)において、破線の丸で示したように、干渉光L3に応じたカウント値は生じない。その結果、ヒストグラムH2は、
図36(D)に示したように、反射光パルスL1に基づく部分に高いピークを有する。
【0127】
この例では、ヒストグラム生成部22Gは、複数の光検出期間Tのそれぞれにおいて、アキュムレータAC1~AC100により得られたカウント値の最大値を検出したが、これに限定されるものではない。例えば、変形例3に係る検出部33Eと同様に、最大値、および2番目に大きい値を検出してもよい。また、例えば、変形例4に係る最大値検出部33Fと同様に、検出した最大値が所定の判定条件を満たす場合に、その最大値を累積加算しないようにしてもよい。
【0128】
[その他の変形例]
また、これらの変形例のうちの2以上を組み合わせてもよい。
【0129】
<2.移動体への応用例>
本開示に係る技術(本技術)は、様々な製品へ応用することができる。例えば、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット等のいずれかの種類の移動体に搭載される装置として実現されてもよい。
【0130】
図37は、本開示に係る技術が適用され得る移動体制御システムの一例である車両制御システムの概略的な構成例を示すブロック図である。
【0131】
車両制御システム12000は、通信ネットワーク12001を介して接続された複数の電子制御ユニットを備える。
図37に示した例では、車両制御システム12000は、駆動系制御ユニット12010、ボディ系制御ユニット12020、車外情報検出ユニット12030、車内情報検出ユニット12040、及び統合制御ユニット12050を備える。また、統合制御ユニット12050の機能構成として、マイクロコンピュータ12051、音声画像出力部12052、及び車載ネットワークI/F(interface)12053が図示されている。
【0132】
駆動系制御ユニット12010は、各種プログラムにしたがって車両の駆動系に関連する装置の動作を制御する。例えば、駆動系制御ユニット12010は、内燃機関又は駆動用モータ等の車両の駆動力を発生させるための駆動力発生装置、駆動力を車輪に伝達するための駆動力伝達機構、車両の舵角を調節するステアリング機構、及び、車両の制動力を発生させる制動装置等の制御装置として機能する。
【0133】
ボディ系制御ユニット12020は、各種プログラムにしたがって車体に装備された各種装置の動作を制御する。例えば、ボディ系制御ユニット12020は、キーレスエントリシステム、スマートキーシステム、パワーウィンドウ装置、あるいは、ヘッドランプ、バックランプ、ブレーキランプ、ウィンカー又はフォグランプ等の各種ランプの制御装置として機能する。この場合、ボディ系制御ユニット12020には、鍵を代替する携帯機から発信される電波又は各種スイッチの信号が入力され得る。ボディ系制御ユニット12020は、これらの電波又は信号の入力を受け付け、車両のドアロック装置、パワーウィンドウ装置、ランプ等を制御する。
【0134】
車外情報検出ユニット12030は、車両制御システム12000を搭載した車両の外部の情報を検出する。例えば、車外情報検出ユニット12030には、撮像部12031が接続される。車外情報検出ユニット12030は、撮像部12031に車外の画像を撮像させるとともに、撮像された画像を受信する。車外情報検出ユニット12030は、受信した画像に基づいて、人、車、障害物、標識又は路面上の文字等の物体検出処理又は距離検出処理を行ってもよい。
【0135】
撮像部12031は、光を受光し、その光の受光量に応じた電気信号を出力する光センサである。撮像部12031は、電気信号を画像として出力することもできるし、測距の情報として出力することもできる。また、撮像部12031が受光する光は、可視光であっても良いし、赤外線等の非可視光であっても良い。
【0136】
車内情報検出ユニット12040は、車内の情報を検出する。車内情報検出ユニット12040には、例えば、運転者の状態を検出する運転者状態検出部12041が接続される。運転者状態検出部12041は、例えば運転者を撮像するカメラを含み、車内情報検出ユニット12040は、運転者状態検出部12041から入力される検出情報に基づいて、運転者の疲労度合い又は集中度合いを算出してもよいし、運転者が居眠りをしていないかを判別してもよい。
【0137】
マイクロコンピュータ12051は、車外情報検出ユニット12030又は車内情報検出ユニット12040で取得される車内外の情報に基づいて、駆動力発生装置、ステアリング機構又は制動装置の制御目標値を演算し、駆動系制御ユニット12010に対して制御指令を出力することができる。例えば、マイクロコンピュータ12051は、車両の衝突回避あるいは衝撃緩和、車間距離に基づく追従走行、車速維持走行、車両の衝突警告、又は車両のレーン逸脱警告等を含むADAS(Advanced Driver Assistance System)の機能実現を目的とした協調制御を行うことができる。
【0138】
また、マイクロコンピュータ12051は、車外情報検出ユニット12030又は車内情報検出ユニット12040で取得される車両の周囲の情報に基づいて駆動力発生装置、ステアリング機構又は制動装置等を制御することにより、運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行うことができる。
【0139】
また、マイクロコンピュータ12051は、車外情報検出ユニット12030で取得される車外の情報に基づいて、ボディ系制御ユニット12020に対して制御指令を出力することができる。例えば、マイクロコンピュータ12051は、車外情報検出ユニット12030で検知した先行車又は対向車の位置に応じてヘッドランプを制御し、ハイビームをロービームに切り替える等の防眩を図ることを目的とした協調制御を行うことができる。
【0140】
音声画像出力部12052は、車両の搭乗者又は車外に対して、視覚的又は聴覚的に情報を通知することが可能な出力装置へ音声及び画像のうちの少なくとも一方の出力信号を送信する。
図37の例では、出力装置として、オーディオスピーカ12061、表示部12062及びインストルメントパネル12063が例示されている。表示部12062は、例えば、オンボードディスプレイ及びヘッドアップディスプレイの少なくとも一つを含んでいてもよい。
【0141】
図38は、撮像部12031の設置位置の例を示す図である。
【0142】
図38では、車両12100は、撮像部12031として、撮像部12101,12102,12103,12104,12105を有する。
【0143】
撮像部12101,12102,12103,12104,12105は、例えば、車両12100のフロントノーズ、サイドミラー、リアバンパ、バックドア及び車室内のフロントガラスの上部等の位置に設けられる。フロントノーズに備えられる撮像部12101及び車室内のフロントガラスの上部に備えられる撮像部12105は、主として車両12100の前方の画像を取得する。サイドミラーに備えられる撮像部12102,12103は、主として車両12100の側方の画像を取得する。リアバンパ又はバックドアに備えられる撮像部12104は、主として車両12100の後方の画像を取得する。撮像部12101及び12105で取得される前方の画像は、主として先行車両又は、歩行者、障害物、信号機、交通標識又は車線等の検出に用いられる。
【0144】
なお、
図38には、撮像部12101ないし12104の撮影範囲の一例が示されている。撮像範囲12111は、フロントノーズに設けられた撮像部12101の撮像範囲を示し、撮像範囲12112,12113は、それぞれサイドミラーに設けられた撮像部12102,12103の撮像範囲を示し、撮像範囲12114は、リアバンパ又はバックドアに設けられた撮像部12104の撮像範囲を示す。例えば、撮像部12101ないし12104で撮像された画像データが重ね合わせられることにより、車両12100を上方から見た俯瞰画像が得られる。
【0145】
撮像部12101ないし12104の少なくとも1つは、距離情報を取得する機能を有していてもよい。例えば、撮像部12101ないし12104の少なくとも1つは、複数の撮像素子からなるステレオカメラであってもよいし、位相差検出用の画素を有する撮像素子であってもよい。
【0146】
例えば、マイクロコンピュータ12051は、撮像部12101ないし12104から得られた距離情報を基に、撮像範囲12111ないし12114内における各立体物までの距離と、この距離の時間的変化(車両12100に対する相対速度)を求めることにより、特に車両12100の進行路上にある最も近い立体物で、車両12100と略同じ方向に所定の速度(例えば、0km/h以上)で走行する立体物を先行車として抽出することができる。さらに、マイクロコンピュータ12051は、先行車の手前に予め確保すべき車間距離を設定し、自動ブレーキ制御(追従停止制御も含む)や自動加速制御(追従発進制御も含む)等を行うことができる。このように運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行うことができる。
【0147】
例えば、マイクロコンピュータ12051は、撮像部12101ないし12104から得られた距離情報を元に、立体物に関する立体物データを、2輪車、普通車両、大型車両、歩行者、電柱等その他の立体物に分類して抽出し、障害物の自動回避に用いることができる。例えば、マイクロコンピュータ12051は、車両12100の周辺の障害物を、車両12100のドライバが視認可能な障害物と視認困難な障害物とに識別する。そして、マイクロコンピュータ12051は、各障害物との衝突の危険度を示す衝突リスクを判断し、衝突リスクが設定値以上で衝突可能性がある状況であるときには、オーディオスピーカ12061や表示部12062を介してドライバに警報を出力することや、駆動系制御ユニット12010を介して強制減速や回避操舵を行うことで、衝突回避のための運転支援を行うことができる。
【0148】
撮像部12101ないし12104の少なくとも1つは、赤外線を検出する赤外線カメラであってもよい。例えば、マイクロコンピュータ12051は、撮像部12101ないし12104の撮像画像中に歩行者が存在するか否かを判定することで歩行者を認識することができる。かかる歩行者の認識は、例えば赤外線カメラとしての撮像部12101ないし12104の撮像画像における特徴点を抽出する手順と、物体の輪郭を示す一連の特徴点にパターンマッチング処理を行って歩行者か否かを判別する手順によって行われる。マイクロコンピュータ12051が、撮像部12101ないし12104の撮像画像中に歩行者が存在すると判定し、歩行者を認識すると、音声画像出力部12052は、当該認識された歩行者に強調のための方形輪郭線を重畳表示するように、表示部12062を制御する。また、音声画像出力部12052は、歩行者を示すアイコン等を所望の位置に表示するように表示部12062を制御してもよい。
【0149】
以上、本開示に係る技術が適用され得る車両制御システムの一例について説明した。本開示に係る技術は、以上説明した構成のうち、撮像部12031に適用され得る。これにより、車両制御システム12000では、干渉光が存在した場合でも、測距精度の低下を防止することができる。その結果、車両制御システム12000では、車両の衝突回避あるいは衝突緩和機能、車間距離に基づく追従走行機能、車速維持走行機能、車両の衝突警告機能、車両のレーン逸脱警告機能等を、高い精度で実現できる。
【0150】
以上、実施の形態および変形例、ならびにそれらの具体的な応用例を挙げて本技術を説明したが、本技術はこれらの実施の形態等には限定されず、種々の変形が可能である。
【0151】
例えば、上記の実施の形態等では、
図2に示したように、複数のパルスパターンにおいて、パルス間隔P2が異なるようにしたが、これに限定されるものではない。これに代えて、例えば、複数のパルスパターンにおいて、パルス幅P1が異なるようにしてもよいし、例えば、光パルスL0の数が異なるようにしてもよい。
【0152】
例えば、上記の実施の形態等では、複数の光検出期間Tにおいて、同じパルスパターンを有する複数の光パルスL0を射出することにより測距を行うようにした。例えば、この複数の光検出期間Tを単位として、パルスパターンを変更してもよい。この場合には、フィルタ処理部23は、変更されたパルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行う。
【0153】
なお、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
【0154】
なお、本技術は以下のような構成とすることができる。以下の構成の本技術によれば、干渉光が存在した場合でも、測距精度の低下を防止することができる。
【0155】
(1)
所定のパルスパターンを有する複数の光パルスを検出可能な受光素子と、
前記受光素子の検出タイミングに基づいて第1のヒストグラムを生成可能なヒストグラム生成回路と、
前記第1のヒストグラムに基づいて、前記パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成可能なフィルタ回路と、
前記第2のヒストグラムに基づいて前記検出タイミングの代表値を算出可能な代表値算出回路と
を備え、
前記フィルタ回路は、前記第1のヒストグラムまたは前記第1のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける第1の複数の頻度値のうちの最大値である第1の頻度値を前記フィルタ処理の対象から除外することが可能である
光検出装置。
(2)
前記フィルタ処理は、前記処理対象ヒストグラムにおける第2の複数の頻度値と、前記フィルタ係数パターンに含まれる複数のフィルタ係数とそれぞれ乗算し、その乗算結果を加算することを含み、
前記第1の複数の頻度値は、前記第2の複数の頻度値のうちの、前記フィルタ係数パターンに応じた一部の複数の頻度値である
前記(1)に記載の光検出装置。
(3)
前記フィルタ処理は、前記処理対象ヒストグラムにおける第2の複数の頻度値と、前記フィルタ係数パターンに含まれる複数のフィルタ係数とそれぞれ乗算し、その乗算結果を加算することを含み、
前記第1の複数の頻度値は、前記第2の複数の頻度値である
前記(1)に記載の光検出装置。
(4)
前記最大値の検出対象である前記第1の複数の頻度値を設定する設定回路をさらに備えた
前記(1)から(3)のいずれかに記載の光検出装置。
(5)
前記フィルタ回路は、第1のフィルタ回路および第2のフィルタ回路を有し、
前記第1のフィルタ回路は、前記第1のヒストグラムに基づいて第1のフィルタ処理を行うことにより前記中間ヒストグラムを生成可能であり、
前記第2のフィルタ回路は、前記中間ヒストグラムに基づいて第2のフィルタ処理を行うことにより前記第2のヒストグラムを生成可能であり、
前記処理対象ヒストグラムは前記中間ヒストグラムであり、
前記第2のフィルタ回路は、前記第1の頻度値を前記第2のフィルタ処理の対象から除外することが可能である
前記(1)から(4)のいずれかに記載の光検出装置。
(6)
前記フィルタ回路は、前記第1の複数の頻度値が所定の判定条件を満たした場合に、前記第1の頻度値を前記フィルタ処理の対象から除外することが可能である
前記(1)から(5)のいずれかに記載の光検出装置。
(7)
前記所定の判定条件は、前記第1の頻度値と、前記第1の複数の頻度値における前記第1の頻度値以外の1以上の頻度値との関係を示す条件である
前記(6)に記載の光検出装置。
(8)
前記フィルタ回路は、さらに、前記処理対象ヒストグラムにおける前記第1の複数の頻度値のうちの2番目に大きな値である第2の頻度値を前記フィルタ処理の対象から除外することが可能である
前記(1)から(7)のいずれかに記載の光検出装置。
(9)
前記受光素子は、繰り返し設定される複数の光検出期間のそれぞれにおいて、前記複数の光パルスを検出可能であり、
前記複数の検出期間のそれぞれの時間長は互いに等しい
前記(1)から(8)のいずれかに記載の光検出装置。
(10)
前記受光素子は、繰り返し設定される複数の光検出期間のそれぞれにおいて、前記複数の光パルスを検出可能であり、
前記複数の光検出期間は、第1の時間長の第1の光検出期間と、第2の時間長の第2の光検出期間とを含む
前記(1)から(8)のいずれかに記載の光検出装置。
(11)
複数の前記受光素子と、
加算回路と
を備え、
前記複数の受光素子のそれぞれは、検出結果に応じたパルス信号を生成可能であり、
前記加算回路は、前記複数の受光素子のそれぞれにより生成された前記パルス信号に基づいて、パルスの数に応じた検出信号を生成可能であり、
前記ヒストグラム生成回路は、前記検出信号に基づいて前記第1のヒストグラムを生成可能である
前記(1)から(10)のいずれかに記載の光検出装置。
(12)
前記複数の受光素子のそれぞれは、繰り返し設定される複数の光検出期間のそれぞれにおいて、前記複数の光パルスを検出可能であり、
前記ヒストグラム生成回路は、前記複数の光検出期間のそれぞれにおける第3の複数の頻度値のそれぞれを累積加算することにより前記第1のヒストグラムを生成可能であり、前記複数の光検出期間のそれぞれにおいて、前記第3の複数の頻度値のうちの最大値である第3の頻度値を累積加算しないことが可能である
前記(11)に記載の光検出装置。
(13)
所定のパルスパターンを有する第1の複数の光パルスを射出可能な発光部と、
前記第1の複数の光パルスに応じた、第2の複数の光パルスを検出可能な受光素子と、
前記受光素子の検出タイミングに基づいて第1のヒストグラムを生成可能なヒストグラム生成回路と、
前記第1のヒストグラムに基づいて、前記パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成可能なフィルタ回路と、
前記第2のヒストグラムに基づいて前記検出タイミングの代表値を算出可能な代表値算出回路と
を備え、
前記フィルタ回路は、前記第1のヒストグラムまたは前記第1のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける第1の複数の頻度値のうちの最大値である第1の頻度値を前記フィルタ処理の対象から除外することが可能である
光検出システム。
(14)
所定のパルスパターンを有する第1の複数の光パルスを射出することと、
前記第1の複数の光パルスに応じた第2の複数の光パルスを検出することと、
前記第2の複数の光パルスの検出タイミングに基づいて第1のヒストグラムを生成することと、
前記第1のヒストグラムに基づいて、前記パルスパターンに応じたフィルタ係数パターンを用いてフィルタ処理を行うことにより第2のヒストグラムを生成することと、
前記第1のヒストグラムまたは前記第1のヒストグラムに応じた中間ヒストグラムである処理対象ヒストグラムにおける第1の複数の頻度値のうちの最大値である第1の頻度値を前記フィルタ処理の対象から除外することと、
前記第2のヒストグラムに基づいて前記検出タイミングの代表値を算出することと
を含む光検出方法。
【符号の説明】
【0156】
1…光検出システム、11…発光制御部、12…発光部、20…光検出部、21…画素アレイ、22,22G…ヒストグラム生成部、23,23A,23B,23C,23D,23E,23F…フィルタ処理部、24…距離演算部、25,25B,25C…測距制御部、31,41…シフトレジスタ、32,42…乗算部、33,33A,43,33F…最大値検出部、33E…検出部、34,44…除去部、35,36A,45…加算部、39F…判定部、53G…最大値検出部、AC1~AC100…アキュムレータ、ADD…加算回路、CLK,CLK2…クロック信号、CNT1~CNT100…カウント値、DET…受光回路、H1,H2…ヒストグラム、H11…中間ヒストグラム、IV1…インバータ、L0…光パルス、L1,L2…反射光パルス、L3…干渉光、OUT1…出力部、P…受光部、PD…フォトダイオード、PLS…パルス信号、Rmax…処理対象、R1…抵抗素子、Sdet…検出信号、T…光検出期間。