IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ パナソニックIPマネジメント株式会社の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-05
(45)【発行日】2024-09-13
(54)【発明の名称】センシングデバイスおよび情報処理装置
(51)【国際特許分類】
   G01S 7/4863 20200101AFI20240906BHJP
   G01S 17/894 20200101ALI20240906BHJP
   G01C 3/06 20060101ALI20240906BHJP
【FI】
G01S7/4863
G01S17/894
G01C3/06 120Q
G01C3/06 140
【請求項の数】 15
(21)【出願番号】P 2021555937
(86)(22)【出願日】2020-09-29
(86)【国際出願番号】 JP2020037038
(87)【国際公開番号】W WO2021095382
(87)【国際公開日】2021-05-20
【審査請求日】2023-08-10
(31)【優先権主張番号】P 2019206918
(32)【優先日】2019-11-15
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】314012076
【氏名又は名称】パナソニックIPマネジメント株式会社
(74)【代理人】
【識別番号】100101683
【弁理士】
【氏名又は名称】奥田 誠司
(74)【代理人】
【識別番号】100155000
【弁理士】
【氏名又は名称】喜多 修市
(74)【代理人】
【識別番号】100188813
【弁理士】
【氏名又は名称】川喜田 徹
(74)【代理人】
【識別番号】100184985
【弁理士】
【氏名又は名称】田中 悠
(74)【代理人】
【識別番号】100202197
【弁理士】
【氏名又は名称】村瀬 成康
(74)【代理人】
【識別番号】100218981
【弁理士】
【氏名又は名称】武田 寛之
(72)【発明者】
【氏名】加藤 弓子
(72)【発明者】
【氏名】稲田 安寿
(72)【発明者】
【氏名】杉尾 敏康
(72)【発明者】
【氏名】井口 賀敬
【審査官】梶田 真也
(56)【参考文献】
【文献】特開2016-017799(JP,A)
【文献】特開2001-183444(JP,A)
【文献】国際公開第2017/141957(WO,A1)
【文献】特開2009-236811(JP,A)
【文献】特開2002-311327(JP,A)
【文献】特開2001-305413(JP,A)
【文献】国際公開第2015/125478(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G01S 7/48 - 7/51
G01S 17/00 - 17/95
G01C 3/00 - 3/32
(57)【特許請求の範囲】
【請求項1】
光源と、
光電変換を行う少なくとも1つの受光素子を備える受光装置と、
前記光源および前記受光装置を制御する処理回路と、
を備え、
前記処理回路は、
前記光源に、光をシーンに向けて少なくとも1回出射させ、
前記受光装置に、前記光による反射光を、複数の露光期間のそれぞれで受光させ、
前記受光装置からの受光データに基づき、前記複数の露光期間のそれぞれに対応する反射光量分布を示す輝度データであって、前記シーンの距離データを生成するために用いられる輝度データを生成し、
前記輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを出力し、
前記処理回路は、さらに、
前記輝度データに基づいて前記距離データを生成し、
前記距離データと、前記輝度データとを、切り替えて出力する
センシングデバイス。
【請求項2】
前記処理回路は、外部の装置からの要求に応じて、前記距離データと、前記輝度データとを切り替えて出力する、
請求項に記載のセンシングデバイス。
【請求項3】
前記処理回路は、前記受光データの状態に応じて、前記距離データと、前記輝度データとを切り替えて出力する、
請求項またはに記載のセンシングデバイス。
【請求項4】
前記処理回路は、
前記複数の露光期間の少なくとも1つについての前記受光データのノイズ量を計算し、
前記ノイズ量が閾値を超えるとき、前記輝度データを出力し、
前記ノイズ量が前記閾値を超えないとき、前記距離データを出力する、
請求項からのいずれかに記載のセンシングデバイス。
【請求項5】
前記処理回路は、
前記複数の露光期間の少なくとも1つについての前記受光データから反射率を計算し、
前記反射率が閾値を超えるとき、前記距離データを出力し、
前記反射率が前記閾値を超えないとき、前記輝度データを出力する、
請求項からのいずれかに記載のセンシングデバイス。
【請求項6】
前記処理回路は、複数のフレーム動作を繰り返し、
前記複数のフレーム動作の各々は、
前記光源に前記シーンに向けて前記光を出射させることと、
前記受光装置に、前記露光期間ごとに前記受光データを生成させることと、
前記輝度データと前記タイミングデータとの組、および前記距離データからなる群から選択される少なくとも1つを出力することと、
を含み、
前記処理回路は、前記輝度データと前記タイミングデータとの前記組、および前記距離データのいずれを出力するかを、前記フレーム動作ごとに決定する、
請求項からのいずれかに記載のセンシングデバイス。
【請求項7】
前記処理回路は、前記輝度データまたは前記距離データを出力するとき、前記輝度データおよび前記距離データのいずれのデータを含むかを示す識別子を付加して前記輝度データまたは前記距離データを出力する、請求項に記載のセンシングデバイス。
【請求項8】
前記処理回路は、前記距離データと、前記輝度データとを、前記シーンに含まれる複数の領域ごとに切り替えて出力する、請求項からのいずれかに記載のセンシングデバイス。
【請求項9】
前記処理回路は、前記輝度データと前記タイミングデータとの前記組の出力と、前記距離データの出力とを切り替えるとき、前記複数のフレーム動作に共通の固定値のデータを出力する、請求項またはに記載のセンシングデバイス。
【請求項10】
メモリと、
処理回路とを備え、
前記処理回路は、
センシングデバイスから、複数の露光期間のそれぞれに受光された、前記センシングデバイスの光源からの出射光に起因するシーンからの反射光の反射光量分布を示す輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを取得し、
前記輝度データおよび前記タイミングデータを前記メモリに記録し、
前記輝度データに対する画像処理を行い、
前記画像処理後の前記輝度データと、前記タイミングデータとに基づき、第1の距離データを生成し、
前記処理回路は、さらに、前記センシングデバイスに、前記輝度データと前記タイミングデータとに基づき前記センシングデバイス内部で生成される第2の距離データの出力と、前記輝度データの出力との切替を要求する信号を送信する
情報処理装置。
【請求項11】
前記処理回路は、
前記センシングデバイスから、前記第2の距離データおよび前記輝度データのいずれが出力されたかを示す識別データをさらに取得し、
前記識別データに基づき、前記センシングデバイスから出力されたデータに対する処理を切り替える、
請求項10に記載の情報処理装置。
【請求項12】
前記処理回路は、
前記センシングデバイスの自己位置を特定し、
前記センシングデバイスの前記自己位置が所定の条件を満足するとき、前記センシングデバイスに、前記輝度データの出力を要求する信号を送信する、
請求項10または11に記載の情報処理装置。
【請求項13】
前記処理回路は、
前記輝度データのノイズ量を判定し、
前記ノイズ量が基準値より大きいとき、前記センシングデバイスに、前記輝度データの出力を要求する信号を送信する、
請求項10または11に記載の情報処理装置。
【請求項14】
光源に、光をシーンに向けて少なくとも1回出射させることと、
受光装置に、前記光による反射光を、複数の露光期間のそれぞれで受光させることと、
前記受光装置からの受光データに基づき、前記複数の露光期間のそれぞれに対応する反射光量分布を示す輝度データであって、前記シーンの距離データを生成するために用いられる輝度データを生成することと、
前記輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを出力することと、
前記輝度データに基づいて前記距離データを生成することと、
前記距離データと、前記輝度データとを、切り替えて出力することと、
をコンピュータに実行させるコンピュータプログラム。
【請求項15】
センシングデバイスから、複数の露光期間のそれぞれに受光された、前記センシングデバイスの光源からの出射光に起因するシーンからの反射光の反射光量分布を示す輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを取得することと、
前記輝度データおよび前記タイミングデータをメモリに記録することと、
前記輝度データに対する画像処理を行うことと、
前記画像処理後の前記輝度データと、前記タイミングデータとに基づき、第1の距離データを生成することと、
前記センシングデバイスに、前記輝度データと前記タイミングデータとに基づき前記センシングデバイス内部で生成される第2の距離データの出力と、前記輝度データの出力との切替を要求する信号を送信することと、
をコンピュータに実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、センシングデバイスおよび情報処理装置に関する。
【背景技術】
【0002】
従来、物体を光で照射し、当該物体からの反射光を検出することにより、当該物体の距離データを取得する種々のデバイスが提案されている。対象シーンの距離データは、例えば3次元の点群(point cloud)のデータに変換され、利用され得る。点群データは、典型的には、シーン中で物体が存在する点の分布が3次元座標で表現されたデータである。
【0003】
特許文献1は、光ビームによって空間を走査し、光センサによって物体からの反射光を検出することで物体までの距離情報を取得するシステムを開示している。当該システムは、点群データの各点に計測時刻が対応付けられた情報を生成して出力する。
【0004】
特許文献2は、レーザスキャナによって車両の周囲に存在する構造物までの距離を計測し、その距離データに基づいて3次元点群データを生成する装置を開示している。
【0005】
特許文献3は、車両に組み込まれ、ToF(Time of Flight)技術を用いて物体までの距離を計測するフラッシュライダーシステムを開示している。
【0006】
特許文献4は、光ビームによって空間を走査し、イメージセンサによって物体からの反射光を受光して距離データを生成する装置を開示している。
【先行技術文献】
【特許文献】
【0007】
【文献】特開2009-294128号公報
【文献】特開2018-185228号公報
【文献】特開2019-95452号公報
【文献】米国特許出願公開第2018/0217258号明細書
【発明の概要】
【発明が解決しようとする課題】
【0008】
本開示の一態様は、測距に必要なデータを出力する新規なセンシングデバイスと、当該センシングデバイスから出力されたデータを処理する新規な情報処理装置を提供する。
【課題を解決するための手段】
【0009】
本開示の一態様に係るセンシングデバイスは、光源と、光電変換を行う少なくとも1つの受光素子を備える受光装置と、前記光源および前記受光装置を制御する処理回路と、を備える。前記処理回路は、前記光源に、光をシーンに向けて少なくとも1回出射させ、前記受光装置に、前記光による反射光を、複数の露光期間のそれぞれで受光させ、前記受光装置からの受光データに基づき、前記複数の露光期間のそれぞれに対応する反射光量分布を示す輝度データであって、前記シーンの距離データを生成するために用いられる輝度データを生成し、前記輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを出力する。
【0010】
本開示の他の態様に係る情報処理装置は、メモリと、処理回路とを備える。前記処理回路は、センシングデバイスから、複数の露光期間のそれぞれに受光されたシーンからの反射光の反射光量分布を示す輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを取得し、前記輝度データおよび前記タイミングデータを前記メモリに記録し、前記輝度データに対する画像処理を行い、前記画像処理後の前記輝度データと、前記タイミングデータとに基づき、第1の距離データを生成する。
【0011】
本開示の包括的または具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能な記録ディスク等の記録媒体によって実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラムおよび記録媒体の任意の組み合わせによって実現されてもよい。コンピュータ読み取り可能な記録媒体は、揮発性の記録媒体を含んでいてもよいし、CD-ROM(Compact Disc‐Read Only Memory)等の不揮発性の記録媒体を含んでいてもよい。装置は、1つ以上の装置で構成されてもよい。装置が2つ以上の装置で構成される場合、当該2つ以上の装置は、1つの機器内に配置されてもよく、分離した2つ以上の機器内に分かれて配置されてもよい。本明細書および特許請求の範囲では、「装置」とは、1つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
【発明の効果】
【0012】
本開示の一態様によれば、センシングデバイスから出力されたデータに基づいて、情報処理装置が、より高い精度の距離データを生成することができる。
【0013】
本開示に含まれる様々な態様における付加的な恩恵および有利な点は本明細書および図面から明らかとなる。この恩恵および/または有利な点のそれぞれは、本明細書および図面に開示された様々な態様または各態様における一部の特徴により個別に提供され得る。その恩恵およびまたは有利な点の1つ以上を得るために特徴の全てが必要ではない。
【図面の簡単な説明】
【0014】
図1】間接ToF法による測距方法の例を説明するための図である。
図2】間接ToF法による測距方法の例を説明するための図である。
図3】露光期間ごとの3つの画像と、それらの画像のデータから生成される距離画像の例を示す図である。
図4A】実施形態1のシステムの物理構成を示すブロック図である。
図4B】実施形態のシステムの機能構成を示すブロック図である。
図5】測距装置の動作を示すフローチャートである。
図6】測距装置による投光および露光の動作の例を示すタイムチャートである。
図7A】測距装置から出力されるデータの出力形式の例を示す第1の図である。
図7B】測距装置から出力されるデータの出力形式の例を示す第2の図である。
図8】実施形態1における制御装置の動作を示すフローチャートである。
図9】距離と最大の画素値との対応関係の例を示す図である。
図10】光源の一例を示す図である。
図11A】反射型導波路を利用した光源の例を模式的に示す斜視図である。
図11B】光導波路素子の構造の例を模式的に示す図である。
図11C】位相シフタの例を模式的に示す図である。
図12】記録媒体170に記録されるデータの一例を示す図である。
図13】実施形態1の変形例1における測距装置の動作を示すフローチャートである。
図14A】実施形態1の変形例1における測距装置から出力されるデータの出力形式の例を示す第1の図である。
図14B】実施形態1の変形例1における測距装置から出力されるデータの出力形式の例を示す第2の図である。
図15A】測距装置から出力されるデータの出力形式の他の例を示す第1の図である。
図15B】測距装置から出力されるデータの出力形式の他の例を示す第2の図である。
図16A】測距装置から出力されるデータの出力形式のさらに他の例を示す第1の図である。
図16B】測距装置から出力されるデータの出力形式のさらに他の例を示す第2の図である。
図17A】測距装置から出力されるデータの出力形式のさらに他の例を示す第1の図である。
図17B】測距装置から出力されるデータの出力形式のさらに他の例を示す第2の図である。
図18】実施形態2におけるシステムの機能構成を示す図である。
図19】実施形態2における測距装置の処理回路の動作を示すフローチャートである。
図20A】測距装置から出力される距離画像データのフォーマットの例を示す第1の図である。
図20B】測距装置から出力される距離画像データのフォーマットの例を示す第2の図である。
図21A】測距装置から出力される輝度画像データのフォーマットの例を示す第1の図である。
図21B】測距装置から出力される輝度画像データのフォーマットの例を示す第2の図である。
図22A】測距装置から出力される輝度画像データのフォーマットの他の例を示す第1の図である。
図22B】測距装置から出力される輝度画像データのフォーマットの他の例を示す第2の図である。
図23】実施形態2における制御装置の動作を示すフローチャートである。
図24】実施形態2の変形例1における測距装置の動作を示すフローチャートである。
図25】実施形態2の変形例2における測距装置の動作を示すフローチャートである。
図26】実施形態2の変形例3における記録媒体に記録されるデータの一例を模式的に示す図である。
図27】実施形態2の変形例3における測距装置の動作を示すフローチャートである。
図28】実施形態2の変形例3における記録媒体に記録されるデータの一例を示す図である。
図29A】実施形態2の変形例3における出力データの形式の一例を示す図である。
図29B】実施形態2の変形例3における出力データの形式の一例を示す図である。
図30】実施形態2の変形例3における制御装置が実行する処理の例を示すフローチャートである。
図31】指示信号の形式の一例を示す図である。
図32】測距装置の動作の他の例を示すフローチャートである。
図33A】出力フォーマットの一例を示す第1の図である。
図33B】出力フォーマットの一例を示す第2の図である。
図34】制御装置の動作の他の例を示すフローチャートである。
【発明を実施するための形態】
【0015】
本開示において、回路、ユニット、装置、部材もしくは部の全部または一部、またはブロック図における機能ブロックの全部または一部は、例えば、半導体装置、半導体集積回路(IC)、またはLSI(large scale integration)を含む1つまたは複数の電子回路によって実行され得る。LSIまたはICは、1つのチップに集積されてもよいし、複数のチップを組み合わせて構成されてもよい。例えば、記憶素子以外の機能ブロックは、1つのチップに集積されてもよい。ここでは、LSIまたはICと呼んでいるが、集積の度合いによって呼び方が変わり、システムLSI、VLSI(very large scale integration)、もしくはULSI(ultra large scale integration)と呼ばれるものであってもよい。LSIの製造後にプログラムされる、Field Programmable Gate Array(FPGA)、またはLSI内部の接合関係の再構成またはLSI内部の回路区画のセットアップができるreconfigurable logic deviceも同じ目的で使うことができる。
【0016】
さらに、回路、ユニット、装置、部材または部の全部または一部の機能または動作は、ソフトウェア処理によって実行することが可能である。この場合、ソフトウェアは1つまたは複数のROM、光学ディスク、ハードディスクドライブなどの非一時的記録媒体に記録され、ソフトウェアが処理装置(processor)によって実行されたときに、そのソフトウェアで特定された機能が処理装置(processor)および周辺装置によって実行される。システムまたは装置は、ソフトウェアが記録されている1つまたは複数の非一時的記録媒体、処理装置(processor)、および必要とされるハードウェアデバイス、例えばインターフェースを備えていてもよい。
【0017】
<背景>
本開示の実施形態を説明する前に、本開示の実施形態において用いられ得る測距方法の例を説明する。
【0018】
光源および受光装置を用いて物体までの距離を計算する測距方法にはいくつかの方法がある。例えば、直接ToF法および間接ToF法などのToF技術が一般に用いられている。このうち、直接ToF法は、光が出射されてから戻ってくるまでの時間を直接計測することにより、物体までの距離を計算する方法である。一方、間接ToF法は、光が出射されてから戻ってくるまでの時間を光強度に変換して計測する方法である。これらの測距方法には、光パルスを発する光源と、1つ以上の受光素子を備える受光装置とが用いられる。以下、測距方法の一例として、間接ToF法による測距方法の例を説明する。
【0019】
図1および図2は、間接ToF法による測距方法の例を説明するための図である。図1および図2において、矩形部分は、光パルスの投光、反射光の受光素子への到達、および3回の露光のそれぞれの期間を表している。横軸は時間を表している。図1は、相対的に近い物体から光パルスが反射される場合の例を示している。図2は、相対的に遠い物体から光パルスが反射される場合の例を示している。図1および図2において、波形(a)は光源から光パルスが出射されるタイミングを示し、波形(b)は当該光パルスの反射光が受光素子に到達する期間を示し、波形(c)は第1の露光期間を示し、波形(d)は第2の露光期間を示し、波形(e)は第3の露光期間を示している。測距用の光パルスの時間幅をT0、光パルスが出射されてから受光されるまでの時間、すなわち飛行時間をTdとする。
【0020】
この例では、投光の開始と同時に第1の露光期間が開始され、投光の終了と同時に第1の露光期間が終了する。第2の露光期間は、投光の終了と同時に開始し、光パルスの時間幅T0と同一の時間、すなわち第1の露光期間と同一の時間が経過した時点で終了する。第3の露光期間は、第2の露光期間の終了と同時に開始し、光パルスの時間幅T0と同一の時間、すなわち第1の露光期間と同一の時間が経過した時点で終了する。
【0021】
第1の露光期間では、反射光のうち、早期に戻ってきた光が光電変換され、生じた電荷が蓄積される。Q1は、第1の露光期間の間に光電変換された光のエネルギーを表す。このエネルギーQ1は、第1の露光期間の間に蓄積された電荷の量に比例する。第2の露光期間では、反射光のうち、第1の露光期間が終了した後、時間T0が経過するまでの間に到達した光が光電変換され、生じた電荷が蓄積される。Q2は、第2の露光期間の間に光電変換された光のエネルギーを表す。このエネルギーQ2は、第2の露光期間の間に蓄積された電荷の量に比例する。第3の露光期間では、反射光のうち、第2の露光期間が終了した後、時間T0が経過するまでの間に到達した光が光電変換され、生じた電荷が蓄積される。Q3は、第3の露光期間の間に光電変換された光のエネルギーを表す。このエネルギーQ3は、第3の露光期間の間に蓄積された電荷の量に比例する。
【0022】
第1の露光期間の長さが光パルスの時間幅T0に等しいことから、図1の例では、第2の露光期間で受光される反射光の時間幅は、飛行時間Tdに等しい。図1の例では、飛行時間Tdはパルスの時間幅T0よりも短いため、反射光はすべて第2の露光期間の終了時点までに受光素子に戻ってくる。従って、第3の露光期間では反射光は検出されない。第3の露光期間で蓄積される電荷はバックグラウンド光によるノイズを表す。これに対し、第1の露光期間では、バックグラウンド光に加え、反射光パルスの受光によって生成された電荷が蓄積される。第2の露光期間についても同様に、バックグラウンド光に加え、反射光パルスの受光によって生成された電荷が蓄積される。
【0023】
第1の露光期間で蓄積された電荷による受光素子の出力電圧をV1、第2の露光期間で蓄積された電荷による受光素子の出力電圧をV2、第3の露光期間で蓄積された電荷による受光素子の出力電圧をV3とする。図1の例のように、反射光が第1の露光期間および第2の露光期間では検出され、第3の露光期間では検出されない場合、V1>V3となる。図1の例では、3つの露光期間の時間長が等しいため、バックグラウンドノイズはすべての露光期間で変動がないものとする。この場合、反射光が検出されない第3の露光期間の出力電圧V3を、バックグラウンドノイズの電圧VBGとすることができる。第1の露光期間および第2の露光期間では、反射光による電荷とバックグラウンドノイズによる電荷の両方が蓄積される。このため、第1の露光期間における反射光の受光により蓄積される電荷による電圧VQ1は、以下の式(1)で表すことができる。
Q1=V1-VBG (1)
【0024】
同様に、第2の露光期間における反射光の受光により蓄積される電荷による電圧VQ2は、以下の式(2)で表すことができる。
Q2=V2-VBG (2)
【0025】
第1の露光期間の時間長と第2の露光期間の時間長とが等しいため、Q1とQ2との比は、T0-TdとTdとの比に等しい。すなわち、T0-TdとTdとの比は、VQ1とVQ2との比に等しい。従って、Tdは、以下の式(3)で表すことができる。
【数1】
【0026】
式(1)、(2)、(3)より、Tdは、以下の式(4)で表すことができる。
【数2】
【0027】
一方、図2に示す例のように、TdがT0よりも長く、反射光が第1の露光期間では戻らず、第2の露光期間と第3の露光期間で戻る場合、V1<V3となる。この場合、第1の露光期間はバックグラウンドノイズによる電荷のみを蓄積する。一方、第2の露光期間および第3の露光期間の一方または両方において、反射光パルスの受光による電荷と、バックグラウンドノイズによる電荷の両方が蓄積される。この場合、Tdは、以下の式(5)で表すことができる。
【数3】
【0028】
式(4)または(5)によって計算される飛行時間Tdを用いて、距離Dを、D=c×Td/2(cは光速)の演算によって求めることができる。
【0029】
図3は、図1に示す期間A0、A1、およびA2のそれぞれで蓄積された電荷の信号に基づいて生成される3つの画像と、それらの画像のデータから生成される距離画像の例を示す図である。この例における受光装置は、2次元的に配列された複数の受光素子のアレイを備えるイメージセンサである。露光期間ごとに、各受光素子に蓄積された電荷の信号に基づいて、2次元画像が生成される。図3の例では、反射光パルスは第1の露光期間および第2の露光期間で検出され、第3の露光期間ではバックグラウンド光によるノイズ成分のみが検出される。各画素の距離は、第1から第3の露光期間のそれぞれにおいて得られた画素値を用いて、上記の演算によって求められる。
【0030】
上記のように、反射光パルス以外のバックグラウンド光によるノイズがある場合、各画素の画素値はノイズ成分を含む。上記の式(4)および(5)では、ノイズによって各受光素子に蓄積される電荷はすべての露光期間において等しいものと仮定している。しかし、実際には、露光期間ごとに各画素のノイズは変動する。画素ごとに上記の計算を行うだけでは、ノイズの影響を除去することが十分にできない場合がある。
【0031】
測距装置は、一般に、距離計算の結果として、図3に示すような距離画像データ、または3次元点群データを出力する。距離画像データは、水平方向の位置x、垂直方向の位置y、および基準位置からの距離dの組(x,y,d)によって表現され、シーン中に存在する物体の距離分布を表す。3次元点群データは、シーン中の物体の分布を表す複数の点を3次元座標で表現したデータである。3次元点群データは、例えば距離画像データから変換されることによって生成され得る。
【0032】
上記のように、間接ToF法では、距離は、露光期間ごとに受光素子に蓄積された電荷の比を求めることで計算される。このため、距離画像データまたは3次元点群データを出力する測距装置では、対象物の反射率の情報は失われる。しかしながら、反射率の情報は、対象物の認識処理に有用である場合がある。例えば、1つ以上の測距装置から送信されるデータに基づいて対象物を認識し、認識結果に基づいて自動運転車などの車両の制御を行う制御装置において、そのような反射率の情報が有用である場合がある。一例として、測距装置から出力された距離画像データまたは3次元点群データにノイズが多く含まれている場合、計測点の反射率を反映した輝度データを利用することで、認識の精度を向上できる可能性がある。
【0033】
以上の考察に基づき、本発明者らは、以下に説明する本開示の実施形態の構成に想到した。
【0034】
本開示の一実施形態によるセンシングデバイスは、光源と、光電変換を行う少なくとも1つの受光素子を備える受光装置と、前記光源および前記受光装置を制御する処理回路と、を備える。前記処理回路は、前記光源に、光をシーンに向けて少なくとも1回出射させ、前記受光装置に、前記光による反射光を、複数の露光期間のそれぞれで受光させ、前記受光装置からの受光データに基づき、前記複数の露光期間のそれぞれに対応する反射光量分布を示す輝度データであって、前記シーンの距離データを生成するために用いられる輝度データを生成し、前記輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを出力する。
【0035】
上記構成によれば、前記処理回路は、前記受光装置からの受光データに基づき、前記複数の露光期間のそれぞれに対応する反射光量分布を示す輝度データであって、前記シーンの距離データを生成するために用いられる輝度データを生成し、前記輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを出力する。これにより、輝度データおよびタイミングデータを取得した情報処理装置が、輝度データおよびタイミングデータに基づいて、より高品質の距離画像データまたは3次元点群データを生成することが可能になる。
【0036】
前記処理回路は、前記距離データを生成し、前記距離データと、前記輝度データとを、切り替えて出力してもよい。上記構成によれば、必要に応じて、距離データを出力するモードと、輝度データおよびタイミングデータを出力するモードとを切り替えることができる。このため、例えば必要な場合にのみ、データ量の大きい輝度データを出力するなどの柔軟な制御が可能になる。
【0037】
前記処理回路は、外部の装置からの要求に応じて、前記距離データと、前記輝度データとを切り替えて出力してもよい。外部の装置は、例えば複数のセンシングデバイスから出力されるデータに基づいて統合された距離データまたは点群データを生成する情報処理装置であり得る。
【0038】
前記処理回路は、前記受光データの状態に応じて、前記距離データと、前記輝度データとを切り替えて出力してもよい。受光データの状態には、例えば、受光データに含まれるノイズ量、または受光データに含まれるそれぞれの値の大きさなどの、種々の状態が含まれ得る。
【0039】
前記処理回路は、前記複数の露光期間の少なくとも1つについての前記受光データのノイズ量を計算し、前記ノイズ量が閾値を超えるとき、前記輝度データを出力し、前記ノイズ量が前記閾値を超えないとき、前記距離データを出力してもよい。これにより、受光データのノイズ量が多く、処理回路が生成する距離データの信頼性が低いと推定される場合に、距離データに代えて輝度データを出力することができる。当該輝度データは、処理回路よりも高い処理能力を持つ外部の情報処理装置に送られ、当該情報処理装置によって処理されてもよい。情報処理装置は、センシングデバイスから取得した輝度データに基づき、より高品質な距離データまたは点群データを生成することができる。
【0040】
前記処理回路は、前記複数の露光期間の少なくとも1つについての前記受光データから反射率を計算し、前記反射率が閾値を超えるとき、前記距離データを出力し、前記反射率が前記閾値を超えないとき、前記輝度データを出力してもよい。これにより、反射率が高く、信頼度の高い距離データが生成できる場合には、距離データを出力し、そうでない場合には輝度データを出力するといった制御が可能になる。
【0041】
前記処理回路は、複数のフレーム動作を繰り返してもよい。前記複数のフレーム動作の各々は、前記光源に前記シーンに向けて前記光を出射させることと、前記受光装置に、前記露光期間ごとに前記受光データを生成させることと、前記輝度データと前記タイミングデータとの組、および前記距離データからなる群から選択される少なくとも1つを出力することと、を含み得る。このような構成により、輝度データとタイミングデータとの組、または距離データを、例えば短い時間間隔で繰り返し出力することができる。
【0042】
前記処理回路は、前記輝度データと前記タイミングデータとの前記組、および前記距離データのいずれを出力するかを、前記フレーム動作ごとに決定してもよい。これにより、フレーム動作ごとに、輝度データとタイミングデータとの組、および距離データのいずれか適当な方、または両方を出力することができる。
【0043】
前記処理回路は、前記輝度データまたは前記距離データを出力するとき、前記輝度データおよび前記距離データのいずれのデータを含むかを示す識別子を付加して前記輝度データまたは前記距離データを出力してもよい。これにより、輝度データまたは距離データに基づく処理を行う他の装置が、輝度データおよび距離データのいずれが取得したデータに含まれているかを容易に判断することができる。
【0044】
前記処理回路は、前記距離データと、前記輝度データとを、前記シーンに含まれる複数の領域ごとに切り替えて出力してもよい。これにより、シーン中の一部の領域についてのみ、距離データの信頼性が低い場合に、当該領域についてのみ輝度データを出力する、といった制御が可能になる。
【0045】
前記処理回路は、前記輝度データと前記タイミングデータとの前記組の出力と、前記距離データの出力とを切り替えるとき、前記複数のフレーム動作に共通の固定値のデータを出力してもよい。
【0046】
本開示の他の実施形態による情報処理装置は、メモリと、処理回路とを備える。前記処理回路は、センシングデバイスから、複数の露光期間のそれぞれに受光されたシーンからの反射光の反射光量分布を示す輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを取得し、前記輝度データおよび前記タイミングデータを前記メモリに記録し、前記輝度データに対する画像処理を行い、前記画像処理後の前記輝度データと、前記タイミングデータとに基づき、第1の距離データを生成する。
【0047】
上記の構成によれば、前記処理回路は、前記輝度データに対する画像処理を行い、前記画像処理後の前記輝度データと、前記タイミングデータとに基づき、第1の距離データを生成する。前記画像処理は、例えば前記輝度データのノイズを低減させる処理を含み得る。
【0048】
前記処理回路は、前記センシングデバイスに、前記輝度データと前記タイミングデータとに基づき前記センシングデバイス内部で生成される第2の距離データの出力と、前記輝度データの出力との切替を要求する信号を送信してもよい。
【0049】
前記処理回路は、前記センシングデバイスから、前記第2の距離データおよび前記輝度データのいずれが出力されたかを示す識別データをさらに取得し、前記識別データに基づき、前記センシングデバイスから出力されたデータに対する処理を切り替えてもよい。
【0050】
前記処理回路は、前記センシングデバイスの自己位置を特定し、前記センシングデバイスの前記自己位置が所定の条件を満足するとき、前記センシングデバイスに、前記輝度データの出力を要求する信号を送信してもよい。
【0051】
前記処理回路は、前記輝度データのノイズ量を判定し、前記ノイズ量が基準値より大きいとき、前記センシングデバイスに、前記輝度データの出力を要求する信号を送信してもよい。
【0052】
本開示の他の実施形態によるコンピュータプログラムは、コンピュータに、以下の動作を実行させる。
・光源に、光をシーンに向けて少なくとも1回出射させる。
・受光装置に、前記光による反射光を、複数の露光期間のそれぞれで受光させる。
・前記受光装置からの受光データに基づき、前記複数の露光期間のそれぞれに対応する反射光量分布を示す輝度データであって、前記シーンの距離データを生成するために用いられる輝度データを生成する。
・前記輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを出力する。
【0053】
本開示の他の実施形態によるコンピュータプログラムは、コンピュータに、以下の動作を実行させる。
・センシングデバイスから、複数の露光期間のそれぞれに受光されたシーンからの反射光の反射光量分布を示す輝度データと、前記複数の露光期間のそれぞれのタイミングを示すタイミングデータとを取得する。
・前記輝度データおよび前記タイミングデータを前記メモリに記録する。
・前記輝度データに対する画像処理を行う。
・前記画像処理後の前記輝度データと、前記タイミングデータとに基づき、第1の距離データを生成する。
【0054】
以下、本開示の例示的な実施形態を具体的に説明する。なお、以下で説明する実施形態は、いずれも包括的または具体的な例を示すものである。以下の実施形態で示される数値、形状、構成要素、構成要素の配置位置および接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、各図は模式図であり、必ずしも厳密に図示されたものではない。さらに、各図において、実質的に同一の構成要素に対しては同一の符号を付しており、重複する説明は省略または簡略化される場合がある。
【0055】
<実施形態1>
本開示の例示的な実施形態1に係るシステムを説明する。
【0056】
図4Aは、本実施形態のシステムの物理構成を示すブロック図である。本システムは、制御装置200と、複数の測距装置100とを備える。制御装置200は、例えば自動運転車などの車両の動作を制御する情報処理装置である。各測距装置100は、当該車両に搭載されるセンシングデバイスであり得る。各測距装置100は、制御装置200に有線または無線で接続される。本実施形態のシステムは複数の測距装置100を備えるが、測距装置100の数は単数でもよい。
【0057】
測距装置100は、光源110と、受光装置120と、第1処理回路130と、記録媒体170と、入出力インターフェース(IF)150とを備える。制御装置200は、第2処理回路230と、記録媒体270と、入出力インターフェース210とを備える。
【0058】
光源110は、シーンに向けて光を出射する。受光装置120は、光源110から出射され、物体で反射された光を検出するセンサを含む。第1処理回路130は、光源110および受光装置120を制御して、前述した間接ToF法に基づく動作を実行させる。ただし、本実施形態では、測距装置100は、距離計算そのものは行わず、距離計算の元となる各計測点の輝度データを、露光期間ごとに出力する。このように、本明細書では、自らは距離計算を行わないものの、距離計算に必要なデータを生成する装置を「測距装置」と称する。測距装置100は、露光期間ごとの各画素の輝度データに加えて、各露光期間の開始時刻および終了時刻を特定するための時刻データを、タイミングデータとして出力する。これらの輝度データおよび時刻データは、制御装置200に送られる。制御装置200は、露光期間ごとの輝度データおよびタイミングデータを利用して、上記の演算により、各計測点の距離を計算する。制御装置200は、計算した距離に基づいて、距離画像または3次元点群のデータを生成することができる。制御装置200は、さらに、距離画像または3次元点群のデータに基づいて、シーン中の特定の対象物を認識し、認識結果に基づいて車両の作動部、例えばエンジン、ステアリング、ブレーキ、またはアクセル等の動作を制御することができる。
【0059】
測距装置100は、複数の露光期間のそれぞれについて、1次元的または2次元的に拡がる対象領域における連続する複数の計測点の輝度データを出力する。受光装置120が2次元画像を取得可能なイメージセンサを含み得る。その場合、測距装置100は、当該イメージセンサの複数の画素に対応する2次元的に連続する複数の計測点の輝度データを出力する。一方、測距装置100が1次元的に光の出射方向を変更しながら反射光の検出を行うセンシングデバイスである場合、測距装置100は、1次元的に連続する複数の計測点の輝度データを出力する。本実施形態における測距装置100は、1次元的または2次元的に拡がる対象領域における連続する複数の計測点の輝度データを、露光期間ごとに生成し、各露光期間のタイミングを示すタイミングデータとともに出力する。
【0060】
次に、図4Bを参照して、本実施形態のより具体的な構成例を説明する。図4Bは、測距装置100および制御装置200のより詳細な機能構成を示すブロック図である。図4Bでは、複数の測距装置100のうち、1つの測距装置100のみ具体的な構成が示されている。他の測距装置100も同じ構成を備え得る。なお、測距装置100によって構成が異なっていてもよい。例えば、一部の測距装置100は、一般的な距離データを出力するように構成されていてもよい。
【0061】
[測距装置の構成]
図4Bに示す測距装置100は、光源110と、受光装置120と、処理回路130と、入出力インターフェース150とを備える。図4Bの例では、時刻データを出力するクロック160が、測距装置100の外部に設けられている。クロック160は、複数の測距装置100に時刻データを出力する。クロック160は、測距装置100の内部に設けられていてもよい。
【0062】
本実施形態における光源110は、レーザ光を広範囲に拡散させるフラッシュ光の出力手段である。光源110は、例えば、レーザ光源と散乱板とを含み、レーザ光を散乱板によって散乱させることで広範囲に広がる光を出射する。
【0063】
受光装置120は、イメージセンサ121と、光学部品(図示せず)とを含む。光学部品は、例えば1つ以上のレンズを含み、一定の画角の範囲からの光をイメージセンサ121の受光面に投射する。光学部品は、プリズムまたはミラー等の他の光学素子を含んでいてもよい。光学部品は、シーン中の物体の1点から拡散した光がイメージセンサ121の受光面上の1点に集束するように設計され得る。
【0064】
イメージセンサ121は、複数の受光素子122が受光面に沿って2次元的に配列されたセンサである。イメージセンサ121は、複数の受光素子122と、複数の電荷蓄積部124と、複数のスイッチ123とを備える。複数の受光素子122のそれぞれに対応して、複数(例えば3つ)の電荷蓄積部124が設けられている。スイッチ123は、受光素子122ごとに設けられ、受光素子122と、当該受光素子122に対応する複数の電荷蓄積部124との接続を切り替える。各受光素子122は、光電変換によって受けた光の量に応じた電荷を、露光期間ごとに生成する。各電荷蓄積部124は、対応する露光期間中に受光素子122が生成した電荷を蓄積する。各受光素子122に対応する電荷蓄積部124の数は、間接ToFによる測距動作に必要な露光期間の数と同数またはそれ以上である。スイッチ123は、処理回路130からの指示に従い、露光期間の切り替えに応じて、受光素子122と電荷蓄積部124の接続を切り替える。以下の説明において、1つの受光素子122と、当該1つの受光素子122に対応する電荷蓄積部124と、当該1つの受光素子122に対応するスイッチ123のまとまりを「画素」と称することがある。
【0065】
イメージセンサ121は、例えばCCD(Charge-Coupled Device)センサ、CMOS(Complementary Metal Oxide Semiconductor)センサ、または赤外線アレイセンサであり得る。イメージセンサ121は、可視の波長範囲に限らず、例えば紫外、近赤外、中赤外、遠赤外などの波長範囲に検出感度を有していてもよい。イメージセンサ121は、SPAD(Single Photon Avalanche Diode)を利用したセンサであってもよい。
【0066】
イメージセンサ121は、例えば、全画素の露光を一括で行なう電子シャッタ方式、すなわちグローバルシャッタの機構を備え得る。電子シャッタは、行毎に露光を行うローリングシャッタ方式、または光ビームの照射範囲に合わせた一部のエリアのみ露光を行うエリアシャッタ方式であってもよい。電子シャッタがグローバルシャッタ方式である場合、フラッシュ光と同期してシャッタを制御することで、1度で2次元情報を取得することができる。一方、ローリングシャッタ方式のように、一部の画素ごとに露光タイミングを変えていく方式の場合、露光タイミングが合わなかった画素では受光できないため、取得できる情報量が減少する。ただし、この課題は、画素ごとにシャッタータイミングのずれを補正する処理を行うことで解決できる。後述する変形例のように、光源110が広がりの小さい光ビームを出射するビームスキャナである場合には、グローバルシャッタ方式よりもローリングシャッタ方式の方が適している場合もある。
【0067】
受光装置120は、シーン中の物体から反射された光を受光する。受光装置120は、フレームごとに、イメージセンサ121の全画素について、前述の間接ToFによる露光期間ごとに蓄積された電荷を示すデータを出力する。本実施形態では、1フレームの動作において、複数の露光期間のそれぞれにおいて、距離計算に十分な電荷が蓄積されるように、各露光期間に共通の回数で、投光と露光とが反復される。そして、全ての露光期間で電荷の蓄積が完了した段階で、受光装置120は、全露光期間の全画素分のデータを出力する。受光装置120は、例えば1秒間に30フレームのレートで、上記データを出力する。受光装置120から出力されたデータは、メモリなどの記録媒体170に記録される。
【0068】
記録媒体170は、例えばROMまたはRAMなどのメモリを含み得る。記録媒体170は、処理回路130によって生成される各種のデータを記録する。記録媒体170は、さらに、処理回路130によって実行されるコンピュータプログラムを格納していてもよい。
【0069】
処理回路130は、光源110によるフラッシュ光の投光のタイミングと、受光装置120の露光のタイミングとを決定し、そのタイミングに従って、露光制御信号と、投光制御信号とを出力する。また、処理回路130は、受光装置120の各画素で露光期間ごとに電荷蓄積部124に蓄積された電荷を、露光期間ごとに画素値に変換し、画素値の配列データ、すなわち各画素の輝度を表す画像データとして出力する。この露光期間ごとの画像データは、インターフェース150を介して制御装置200に送られる。
【0070】
処理回路130は、例えばCPUなどのプロセッサを含む電子回路である。処理回路130は、例えば記録媒体170に格納されたプログラムを実行することにより、本実施形態における処理を実行する。なお、記録媒体170は処理回路130に含まれていてもよい。
【0071】
図4Bの点線枠300には、インターフェース150から制御装置200に送られる露光期間ごとの画像データの例が模式的に示されている。この例では、図1および図2に示す3つの露光期間A0、A1、A2で露光が行われる。この例における測距装置100からの出力データは、1フレームあたり露光期間の数に等しい数の画像データを含む。本実施形態では、出力データは、上記の画像データに加えて、制御装置200が距離計算を行うために必要な、各露光期間を特定する時刻データと、光源110から出射される光パルスの時間長を示すデータとを含む。出力データ形式の詳細については後述する。
【0072】
クロック160は、光源110の制御に必要な詳細な時刻情報を出力する回路である。クロック160は、例えばナノ秒またはマイクロ秒の精度の時刻を計測し、そのデータを出力する。クロック160は、例えばリアルタイムクロックなどの集積回路によって実現され得る。クロック160は時刻サーバと同期していてもよい。同期には、例えばNTP(Network Time Protocol)またはPTP(Precision Time Protocol)等のプロトコルを利用してもよい。あるいは、GPS情報を用いて制御装置200の時刻を基準とする時刻同期を行ってもよい。なお、時刻同期の方法は上記に限らず、任意である。時刻同期により、測距装置100は正確な時刻データを取得できる。
【0073】
[制御装置の構成]
次に、本実施形態における制御装置200の構成を説明する。図4Bに示されるように、制御装置200は、入出力インターフェース210と、処理回路230と、記録媒体270とを備える。制御装置200は、車両における作動部240の動作を制御する。作動部240は、例えば、エンジン、ステアリング、ブレーキ、またはアクセル等の、自動運転に関連する動作を行う装置である。
【0074】
インターフェース210は、複数の測距装置100から出力データを取得する。インターフェース210はまた、図示されていない外部のサーバから配信されている地図データを取得する。地図データは、例えばランドマーク地図のデータであり得る。インターフェース210は、処理回路230が処理に利用する他のデータを取得するように構成されていてもよい。他のデータは、例えば測距装置100または他のセンサによって取得された、カラー画像、傾き、速度、または加速度のデータであり得る。
【0075】
処理回路230は、前処理部231、点群データ生成部232、環境認識部233、および動作制御部234を含む。処理回路230は、例えばCPUまたはGPUなどのプロセッサを含む電子回路である。処理回路230における前処理部231、点群データ生成部232、環境認識部233、および動作制御部234の機能は、例えば処理回路230のプロセッサが、記録媒体270に格納されたプログラムを実行することによって実現され得る。その場合、当該プロセッサが、前処理部231、点群データ生成部232、環境認識部233、動作制御部234として機能する。これらの各機能部は、専用のハーウェアによって実現されていてもよい。なお、記録媒体270が、処理回路230に含まれていてもよい。
【0076】
前処理部231は、インターフェース210を介して取得した測距装置100からの出力データに対して、距離計算を行う前にノイズ低減処理などの画像処理を行う。この画像処理を、以下の説明では前処理と称する。ノイズ低減処理は、露光期間ごとの画像データに対して行われる。ノイズ低減処理の詳細については後述する。なお、前処理は、ノイズ低減処理以外に、例えばエッジ抽出または平滑化等の処理を含んでいてもよい。
【0077】
点群データ生成部232は、前処理部231で処理された露光期間ごとの画像と、各測距装置100の各露光期間の時刻データとを用いて、各画像の同一座標の画素について、前述の距離計算を行う。点群データ生成部232は、各測距装置100のイメージセンサ121の画素ごと、すなわちxy座標上の位置ごとに距離を計算し、距離画像データを生成する。点群データ生成部232は、測距装置100ごとに距離画像データを生成した後、各測距装置100の位置および方向のデータに基づいて、各測距装置100の距離画像の各画素の距離を、制御装置200が基準とする3次元座標上の点に変換する。
【0078】
処理回路230は、点群データ生成部232によって生成された統一座標での点群データから、自動車、人、自転車等のオブジェクトを抽出する。処理回路230は、さらに、当該統一座標での点群データと、地図データとをマッチングして、自己の周辺の状態を認識する。
【0079】
動作制御部234は、環境認識部233によって特定された、3次元空間中のオブジェクトの位置に基づいて、作動部240の動作を決定し、作動部240に制御信号を送信する。
【0080】
作動部240は、動作制御部234から送信された制御信号に応じた動作を実行する。例えば、車両の発進、加速、減速、停止、方向転換等の動作を実行する。
【0081】
[測距装置の動作]
次に、測距装置100の動作を説明する。
【0082】
図5は、測距装置100の動作を示すフローチャートである。本実施形態における測距装置100の処理回路130は、図5に示すステップS1120からS1190の動作を実行する。以下、各ステップの動作を説明する。
【0083】
(ステップS1120)
処理回路130は、まず、図示されていない外部の装置から動作終了の信号の入力の有無を判断する。ステップS1120において動作終了信号がある場合、処理回路130は動作を終了する。ステップS1120において動作終了信号がない場合、ステップS1130に進む。
【0084】
(ステップS1130)
処理回路130は、制御信号を受光装置120に出力し、受光装置120は、処理回路130が出力した制御信号に従って、電子シャッタを開放する。これにより、1フレーム分の光検出動作を開始する。
【0085】
(ステップS1140)
処理回路130は、1フレームの距離データを生成するのに必要な、あらかじめ定められた露光期間のすべてが終了したか否かを判定する。本実施形態では、各露光期間において、あらかじめ定められた回数の投光と露光が繰り返される。これにより、すべての露光期間について、各画素に電荷が蓄積される。ステップS1140においてすべての露光期間での電荷蓄積が終了している場合、ステップS1170に進む。ステップS1140において、すべての露光期間での電荷蓄積が終了していない場合、ステップS1150に進む。
【0086】
(ステップS1150)
処理回路130は、あらかじめ定められた露光期間のうち、まだ投光と露光が実行されておらず、電荷の蓄積が行われていない露光期間の1つを選択し、スイッチ123に切り替え信号を出力する。これにより、各画素における受光素子122と当該露光期間の電荷を蓄積する電荷蓄積部124とを接続する。切り替えのタイミングの詳細については後述する。
【0087】
(ステップS1160)
処理回路130は、クロック160からの時刻データを参照して、選択した露光期間について、あらかじめ定められた露光開始時間と露光終了時間に従って、光源110の投光タイミングと受光装置120の露光タイミングを制御する信号を生成する。光源110は、処理回路130が出力した制御信号に従って、あらかじめ定められた時間長のパルス状のフラッシュ光を出射する。受光装置120は、光源110の投光開始時点を基準に、あらかじめ定められた当該露光期間の開始時間と終了時間に従って露光を行い、当該露光期間の間に光電変換によって生じた電荷を、ステップS1150において選択された電荷蓄積部124に蓄積する。投光と露光のタイミングの詳細については後述する。
【0088】
ステップS1140からステップS1160が繰り返されることにより、1フレーム分の受光動作が完了する。
【0089】
(ステップS1170)
ステップS1140において全露光期間での投光と受光が完了したと判断した場合、処理回路130は、受光装置120におけるシャッタを閉じる。
【0090】
(ステップS1180)
処理回路130は、ステップS1130からステップS1160の一連の動作によって各画素の各電荷蓄積部124に蓄積された各露光期間での電荷を読み出し、当該電荷を画素値に変換して記録媒体170に記録する。処理回路130は、さらに、各電荷蓄積部124の電荷を消去する。
【0091】
(ステップS1190)
処理回路130は、ステップS1180で読み出した露光期間ごとの電荷を画素値に変換し、露光期間ごとに輝度画像データを生成する。さらに、処理回路130は、露光期間ごとの輝度画像データに加えて、あらかじめ定められたフレーム数ごと、あるいは各フレームの先頭に、各露光期間を特定するためのタイミングデータを付加する。タイミングデータは、例えば、露光期間の開始時刻と終了時刻の情報を含み得る。処理回路130は、露光期間ごとの輝度画像データと、各露光期間を特定するためのタイミングデータとを含む出力データを、インターフェース150を介して出力する。出力データの具体例については後述する。出力後、ステップS1120に戻る。
【0092】
処理回路130は、ステップS1120からステップS1190の動作を繰り返す。この繰り返しの単位を「フレーム動作」と称することがある。複数のフレーム動作を繰り返すことにより、フレームごとに距離計算に必要なデータが出力される。出力データは、制御装置200に送られる。
【0093】
本実施形態では、ステップS1190において、露光期間ごとの輝度画像データに加えて、各露光期間のタイミングデータを含む出力データが生成される。出力データには、投光時間すなわち光ビームのパルスの時間長のデータが含まれていてもよい。
【0094】
[投光および受光の動作の例]
本実施形態の測距装置100の動作のうち、投光および露光の動作の具体例を説明する。
【0095】
図6は、測距装置100による投光および露光の動作の例を示すタイムチャートである。図6は、1フレーム分の投光および露光の動作の例を時間軸上で表している。上段から順に、光源110の投光タイミング、受光装置120の露光タイミング、受光装置120のシャッタ開放期間、電荷蓄積部124の読み出しタイミングを示している。受光装置120のシャッタは、ステップS1130において1フレーム分の投光および露光を開始する時点で開放され、露光動作が完了するまで閉じられない。シャッタの開放によって1フレームの動作が開始される。ステップS1150において複数の露光期間の1つが選択され、各画素において、当該露光期間に対応する電荷蓄積部124と受光素子122とがスイッチ123によって接続される。
【0096】
本実施形態では、露光期間A0、A1、およびA2のそれぞれにおいて、光源110によるフラッシュ光のパルス状の投光が繰り返し行われる。パルスの時間長T0は、例えば90ナノ秒(nsec)程度であり得る。投光開始時点を時間の起点として、各露光期間の開始時点から終了時点までの間、当該露光期間に対応する電荷蓄積部124と受光素子122とがスイッチ123によって接続される。図6の上部の点線枠内に、各露光期間における連続する2回の投光および露光のタイミングの例が示されている。
【0097】
露光期間A0において、露光の開始および終了のタイミングは、投光の開始および終了のタイミングと同じである。例えば、露光開始時点は0nsecであり、露光終了時点は90nsec、すなわち投光されるパルスの時間長と同じである。スイッチは投光と同時に接続され、投光終了と同時に切断される。光源110による投光と、受光素子122による受光および電荷蓄積部124への電荷の蓄積とが所定の回数繰り返される。1回の投光では反射光のエネルギーが小さい場合であっても、複数回の受光による電荷蓄積によって計測可能にすることができる。
【0098】
露光期間A0において所定の回数の投光と露光が完了すると、次の露光期間A1が選択される。新たに選択された露光期間A1では、当該露光期間に対応する電荷蓄積部124と受光素子122とが、スイッチ123によって接続される。露光期間が変わっても光源110によるフラッシュ光の投光タイミングは変わらない。一方、新たに選択された露光期間A1では、図6の拡大図に示すように、投光開始時点から、パルスの時間長T0(例えば90nsec)だけ経過した時点で露光が開始され、露光開始後T0だけ経過した時点で露光が終了する。すなわち、投光終了と同時に露光を開始し、投光のパルス長と同じ時間長T0で露光するように、スイッチ123が、当該露光期間に対応する電荷蓄積部124と受光素子122とを接続する。露光期間A0と同様に、電荷蓄積部124は、反復された露光によって蓄積された電荷を保持する。
【0099】
露光期間A1において所定の回数の投光と露光が完了すると、さらに露光期間A2での投光と露光が行われる。露光期間A2では、図6の拡大図に示すように、投光開始時点から2T0(例えば、180nsec)経過した時点で露光が開始され、露光開始後T0経過した時点で露光が終了する。すなわち、投光終了後、さらに投光の時間長T0が経過した時点で露光が開始される。露光期間A2における露光時間長も、露光期間A0およびA1と同様に、T0である。露光期間A2でも、所定回数の投光と露光とが繰り返されることにより、電荷蓄積部124に電荷が蓄積される。
【0100】
露光期間A0、A1、およびA2のすべてで電荷蓄積が完了すると、処理回路130は、受光装置120にシャッタを閉鎖させる(ステップS1170)。そして、処理回路130は、各画素の電荷蓄積部124に蓄積された各露光期間に対応する電荷を読み出す。処理回路130は、読み出した電荷に基づき、露光期間ごとに輝度画像データを生成して出力する。
【0101】
[データフォーマットの例]
次に、本実施形態の測距装置100が出力するデータの形式の例を説明する。
【0102】
図7Aおよび図7Bは、測距装置100のインターフェース150から出力される露光期間ごとの画像データの出力形式の例を示している。この例における出力データは、複数のフレームに共通する固定値のデータと、フレームごとに異なるデータとを含む。複数のフレームに共通するデータとして、例えば、出力データの先頭に1回、あるいは、あらかじめ定められた数のフレームに1回、固定値が出力される。
【0103】
固定値は、例えば、位置、方向、画角、画素配置、露光期間A0、露光期間A1、および露光期間A2のデータを含む。「位置」は、イメージセンサ121の車両内での位置を示す。位置は、例えば車両の中心を原点とした3次元座標で表現された3バイトのデータであり得る。「方向」は、イメージセンサ121の表面の受光面が面する方向を示す。方向は、例えば車両の中心を原点とした3次元座標で表現された受光面の法線ベクトルを表す3バイトのデータであり得る。「画角」は、イメージセンサ121の画角を示し、例えば2バイトで表現され得る。「画素配置」は、イメージセンサ121のx方向およびy方向のそれぞれの画素の数を示し、例えば1バイトのデータであり得る。「露光期間A0」、「露光期間A1」、および「露光期間A2」は、それぞれの露光期間の時間範囲を示す。これらの時間範囲は、例えば、対応する投光の開始時点からの経過時間をナノ秒の単位で記述した1バイトのデータで表現され得る。なお、1フレームあたりの露光期間の数は3以外の数であってもよい。また、露光期間数が動作中に変化してもよい。例えば、別途、固定値として露光期間数が定義され、露光期間ごとの時間のデータが出力されてもよい。
【0104】
フレームごとの出力データは、例えば、日付、時刻、露光期間A0の輝度画像、露光期間A1の輝度画像、露光期間A2の輝度画像のデータを含む。日付は、例えば年、月、日を示すデータであり、1バイトで表現され得る。時刻は、例えば時、分、秒、ミリ秒、マイクロ秒を示すデータであり、5バイトで表現され得る。露光期間A0の輝度画像は、露光期間A0で蓄積された各画素の電荷から変換された画素値の集合であり、例えば画素ごとに1バイトのデータとして表現され得る。露光期間A1の輝度画像および露光期間A2の輝度画像についても同様に、例えば画素ごとに1バイトのデータとして表現され得る。
【0105】
[制御装置の動作]
次に、制御装置200の動作の例を説明する。
【0106】
図8は、本実施形態における制御装置200の動作を示すフローチャートである。制御装置200の処理回路230は、図8に示すステップS2120からS2200の動作を実行する。以下、各ステップの動作を説明する。
【0107】
(ステップS2120)
処理回路230は、図示されていない外部の装置から動作終了の信号が入力されているか否かを判断する。動作終了信号が入力されている場合、動作を終了する。動作終了信号が入力されていない場合、ステップS2130に進む。
【0108】
(ステップS2130)
処理回路230は、測距装置100からデータの入力があるか否かを判定する。測距装置100からデータの入力がある場合、ステップS2140に進む。測距装置100からデータの入力がない場合、ステップS2120に戻る。
【0109】
(ステップS2140)
処理回路230は、測距装置100から取得したデータについて、距離計算の精度を向上させるための前処理を行う。前処理は、例えばノイズ除去処理を含む。ここで、測距装置100は、図7Aおよび図7Bに示すフォーマットでデータを出力するものとする。この場合、前処理は、露光期間A0に対応する画像データと、露光期間A1に対応する画像データと、露光期間A2に対応する画像データに対して行われる。処理回路230は、それぞれの露光期間に対応する画像データに対して、個別にノイズ除去処理を行う。ノイズ除去処理の方法として、例えば、ウィーナーフィルタを用いた適応フィルタ処理が行われ得る。
【0110】
処理回路230は、フィルタ処理により、各画像データにおける空間周波数の高い成分を取り除くことで、ノイズを除去する。フィルタは、ウィーナーフィルタ以外のフィルタ、例えばガウスフィルタでもよい。各画像データにおける空間周波数の高い成分を取り除くために、例えばラプラシアンフィルタなどの、あらかじめ定められたフィルタを用いた畳み込み演算による平滑化処理を行ってもよい。前処理として、適応フィルタ以外のノイズ除去処理を行ってもよい。また。コントラスト強調、またはエッジ抽出のような、ノイズ除去処理以外の信号処理を行ってもよい。
【0111】
(ステップS2150)
処理回路230は、ステップS2140でノイズ除去処理が行われた露光期間ごとの画像データを用いて、画素ごとに距離を計算する。処理回路230は、露光期間ごとの画像データから同一画素の画素値を抽出し、前述の計算式(4)および(5)に基づいて飛行時間を計算し、さらに距離を計算する。
【0112】
(ステップS2160)
処理回路230は、さらに、ステップS2150で計算した画素ごとの距離と、ステップS2140でノイズ除去処理を行った露光期間ごとの画像データとを用いて、距離が計算された画素の反射率を計算する。反射率は、距離ごとにあらかじめ定められた反射率100%での値に対する、バックグラウンドノイズが除去された、各露光期間の画素値の合計の値の比率である。反射率100%での値は、例えば、基準となる白色ボードからの反射光の画素値を受光装置120からの距離ごとに予め計測することによって得られる。距離ごとの反射率100%の値は、記録媒体270に予めテーブルなどの形式で記録され得る。
【0113】
図9は、記録媒体270に記録されるテーブルの例を示している。この例におけるテーブルは、受光装置120の受光面からの距離と、その距離に位置する仮想的な反射率100%の白色ボードからの反射光を検出した場合の画素値との対応関係を規定する。反射率100%の値は、距離に対する関数として記録されていてもよい。距離と、反射率100%の値との対応関係を規定するテーブルまたは関数は、測距装置100から制御装置200に送信されてもよい。
【0114】
(ステップS2170)
処理回路230は、ステップS2150で計算された画素ごとの距離のデータ、すなわち距離画像データを、3次元点群データに変換する。ここで、距離画像データの画素のうち、距離の値が0または無限大である画素については、点群データのポイントとみなされず、変換は行われない。距離画像データの画素のうち、有効な距離が計算された画素についてのみ、変換が行われる。変換は、例えば以下のようにして行われる。まず、図7Aおよび図7Bに示す測距装置100の位置のデータを参照して、測距装置100の座標系の原点と、制御装置200に設定されたデータ統合のための座標系の原点との距離を計算する。さらに、図7Aおよび図7Bに示す測距装置100の方向のデータを参照して、制御装置200の統合座標系の座標軸に対する測距装置100の座標軸の回転量を計算する。計算された距離と回転量とに基づいて、ステップS2150で生成された距離画像中の有効な距離の値を持つ画素について、座標変換を行う。
【0115】
(ステップS2180)
処理回路230は、ステップS2170で生成した点群データと、外部から取得した地図データとに基づいて、測距装置100の周辺の環境を認識する。環境の認識は、地図データと点群データとのマッチングを行うことによって行われ得る。例えば、処理回路230は、点群データから、地図に含まれる固定物に一致する固定物を特定し、その固定物と測距装置100との位置関係を特定する。さらに、処理回路230は、ステップS2160で計算された点ごとの反射率の情報を利用して、点群データを物体ごとにグルーピングする。これにより、測距装置100の周辺にあって、地図には含まれない移動体、例えば人、動物、自転車、または自動車等を抽出することができる。
【0116】
地図データと点群データとのマッチングは、例えば以下のようにして行われ得る。まず、ランドマーク地図を参照し、検出対象とすべきランドマークを選択し、そのランドマークの位置座標等の情報を読み取る。そして、測距装置100の出力データに基づき、当該ランドマークまでの距離を計算する。ランドマークの座標と、計算したランドマークまでの距離とに基づいて、マッチングを行うことができる。
【0117】
前処理が行われた輝度画像データと点群データは、同一の測距装置100から出力されたデータに基づいて生成されるため、姿勢のずれがない。従って、歪み補正を行うことなく、上記の画像データと点群データとを重ね合わせることができる。処理回路230は、当該輝度画像データから、点群のグルーピングによって求めた対象物と重なる対象物を抽出することによって対象物の識別を行ってもよい。点群のグルーピングのみでは対象物の境界を明確にするのが困難な場合でも、位置ずれの無い輝度画像を用いた画素のグルーピングの結果と照らし合わせることで、対象物の境界がより明確となる。このように、輝度画像データと点群データとの双方から得られる情報を統合することにより、シーンを3次元空間としてより正確に再現することが可能となる。輝度画像データから対象物を抽出する際には、AIによる物体認識等の周知の画像認識処理を用いることができる。また、輝度画像データに対する前処理として、エッジ抽出、コントラスト強調等の画像処理を行ってもよい。
【0118】
(ステップS2190)
処理回路230は、ステップS2180において抽出された3次元空間内の建物等の構造物と移動体の配置に基づいて、ブレーキ、アクセル、ハンドル等の作動部240の動作を決定する。
【0119】
(ステップS2200)
処理回路230は、ステップS2190で決定した作動部240の動作に基づき、作動部240を制御する制御信号を生成し、出力する。
【0120】
[効果]
以上のように、本実施形態の測距装置100は、複数の露光期間のそれぞれにおいて、投光と露光とを行うことにより、露光期間ごとに輝度画像データを生成する。制御装置200は、露光期間ごとの輝度画像データに基づき、各画素の距離を計算し、さらに距離データを3次元点群データに変換する。制御装置200は、距離計算の前に、露光期間ごとの輝度画像データに対してノイズ除去などの前処理を行う。これにより、距離をより正確に計算することができる。さらに、距離計算によって失われる反射率を計算することで、点群データに基づく対象物の抽出あるいは認識の精度を向上させることができる。
【0121】
本実施形態の構成は一例に過ぎず、本実施形態には多様な変形例が想定される。以下、本実施形態のいくつかの変形例を説明する。
【0122】
<実施形態1の変形例1>
実施形態1における光源110は、レーザ光を広範囲に拡散させるフラッシュ光を出射するが、光源110は、フラッシュ光よりも広がりの小さい光ビームを出射するように構成されていてもよい。レーザ光などの光ビームを使用することにより、フラッシュ光を使用する場合よりも、光のエネルギ密度を高くすることができる。このため、より遠方の物体からの反射光を検出することができる。広い範囲に投光するために、光源110は、光の向きを変えて複数回投光を行うように制御される。
【0123】
[測距装置の構成]
本変形例における測距装置100の構成は、図4Bに示す構成と同じである。但し、光源110の機能および動作が異なる。以下、実施形態1と異なる点を中心に、本変形例の構成および動作を説明する。
【0124】
本変形例における光源110は、光ビームの出射方向を変化させることができるビームスキャナである。光源110は、処理回路130からの指令に応答して、シーン内の一部の領域を光ビームで順次照射する。この機能を実現するため、光源110は、光ビームの出射方向を変化させる機構を備える。
【0125】
図10は、光源110の一例を示す図である。この例における光源110は、レーザなどの発光素子と、少なくとも1つの可動ミラー、例えばMEMSミラーとを備える。発光素子から出射された光は、可動ミラーによって反射され、シーン内の所定の領域に向かう。処理回路130は、可動ミラーを駆動することにより、光ビームの出射方向を変化させることができる。これにより、例えばシーンを1次元的または2次元的に光ビームでスキャンすることができる。
【0126】
可動ミラーを有する構造とは異なる構造によって光の出射方向を変化させることが可能な光源を用いてもよい。例えば、特許文献4に開示されているような、反射型導波路を利用した光源を用いてもよい。
【0127】
図11Aは、反射型導波路を利用した光源110の例を模式的に示す斜視図である。参考のために、互いに直交するX軸、Y軸、およびZ軸が模式的に示されている。光源110は、光導波路アレイ10Aと、位相シフタアレイ20Aと、光分岐器30と、それらが集積された基板40とを備える。光導波路アレイ10Aは、Y方向に配列された複数の光導波路素子10を含む。各光導波路素子10はX方向に延びている。位相シフタアレイ20AはY方向に配列された複数の位相シフタ20を含む。各位相シフタ20はX方向に延びた光導波路を備える。光導波路アレイ10Aにおける複数の光導波路素子10は、位相シフタアレイ20Aにおける複数の位相シフタ20にそれぞれ接続されている。位相シフタアレイ20Aには光分岐器30が接続されている。
【0128】
不図示の発光素子から発せられた光L0は、光分岐器30を介して位相シフタアレイ20Aにおける複数の位相シフタ20に入力される。複数の位相シフタ20を通過した光は、位相がY方向に一定量ずつシフトした状態で、複数の光導波路素子10にそれぞれ入力される。複数の光導波路素子10にそれぞれ入力された光は、光ビームL2として、XY平面に平行な光出射面10sから、光出射面10sに交差する方向に出射される。
【0129】
図11Bは、光導波路素子10の構造の例を模式的に示す図である。光導波路素子10は、互いに対向する第1ミラー11と第2ミラー12との間に位置する光導波層15と、光導波層15に駆動電圧を印加するための一対の電極13および14とを含む。光導波層15は、例えば液晶材料または電気光学材料などの、電圧の印加によって屈折率が変化する材料によって構成され得る。第1ミラー11の透過率は、第2ミラー12の透過率よりも高い。第1ミラー11および第2ミラー12の各々は、例えば、複数の高屈折率層および複数の低屈折率層が交互に積層された多層反射膜から形成され得る。
【0130】
光導波層15に入力された光は、光導波層15内を第1ミラー11および第2ミラー12によって反射されながらX方向に沿って伝搬する。図11Bにおける矢印は、光が伝搬する様子を模式的に表している。光導波層15内を伝搬する光の一部は、第1ミラー11を通して外部に出射される。
【0131】
電極13および14に駆動電圧を印加することにより、光導波層15の屈折率が変化し、光導波路素子10から外部に出射される光の方向が変化する。駆動電圧の変化に応じて、光導波路アレイ10Aから出射される光ビームL2の方向が変化する。具体的には、図11Aに示す光ビームL2の出射方向を、X軸に平行な第1の方向D1に沿って変化させることができる。
【0132】
図11Cは、位相シフタ20の例を模式的に示す図である。位相シフタ20は、例えば熱によって屈折率が変化する熱光学材料を含む全反射導波路21と、全反射導波路21に熱的に接触するヒータ22と、ヒータ22に駆動電圧を印加するための一対の電極23および24とを含む。全反射導波路21の屈折率は、ヒータ22、基板40、および空気の屈折率よりも高い。屈折率差により、全反射導波路21に入力された光は、全反射導波路21内を全反射されながらX方向に沿って伝搬する。
【0133】
一対の電極23および24に駆動電圧を印加することにより、全反射導波路21がヒータ22によって加熱される。その結果、全反射導波路21の屈折率が変化し、全反射導波路21の端から出力される光の位相がシフトする。図11Aに示す複数の位相シフタ20における隣り合う2つの位相シフタ20から出力される光の位相差を変化させることにより、光ビームL2の出射方向を、Y軸に平行な第2の方向D2に沿って変化させることができる。
【0134】
以上の構成により、光源110は、光ビームL2の出射方向を2次元的に変化させることができる。
【0135】
上記のような光源110の動作原理、および動作方法などの詳細は、例えば特許文献4に開示されている。特許文献4の開示内容の全体を本明細書に援用する。
【0136】
本変形例では、処理回路130は、光ビームの投光ごとに、イメージセンサ121における一部の領域の受光素子が受光したときに蓄積された電荷を、当該光ビームの投光の時刻と関連付けて記録媒体170に記録する。
【0137】
図12は、記録媒体170に記録され得るデータの例を示す図である。記録媒体170は、光ビームが規定回数投光されるごとに、投光の時刻の代表値と、投光時刻の代表値を表す時刻IDとを関連付けて記憶する。また、光ビームの投光に伴って電荷蓄積部124が蓄積した電荷と、当該投光に対応する時刻IDとを、受光素子122ごと、すなわち画素ごとに記憶する。光ビームの投光は露光ごとに行われるので、電荷と時刻IDは露光ごとに記録される。
【0138】
[測距装置の動作]
次に、本変形例における測距装置100の動作を説明する。図13は、本変形例における測距装置100の動作を示すフローチャートである。図13に示すフローチャートでは、図5に示すフローチャートにステップS3110およびS3120が追加され、ステップS1180がステップS3130に変更されている。以下、各ステップの動作を説明する。
【0139】
(ステップS1120)
処理回路130は、まず、図示されていない外部の装置から動作終了の信号の入力の有無を判断する。ステップS1120において動作終了信号がある場合、処理回路130は動作を終了する。ステップS1120において動作終了信号がない場合、ステップS3110に進む。
【0140】
(ステップS3110)
処理回路130は、あらかじめ定められた、または図示されていない外部の装置によって指定された1つ以上の投光方向のうちのすべての投光方向についての動作が終了したか否かを判断する。すべての投光方向で動作が終了したと判断された場合、ステップS1190に進む。すべての投光方向で動作が終了していないと判断された場合、ステップS3120に進む。
【0141】
(ステップS3120)
処理回路130は、あらかじめ定められた、または図示されていない外部の装置によって指定された1つ以上の投光方向のうち、まだ投光を行っていない方向のうちの1つを選択する。
【0142】
(ステップS1130)
処理回路130は、制御信号を受光装置120に出力し、受光装置120は、処理回路130が出力した制御信号に従って、電子シャッタを開放する。これにより、1つの投光方向についての光検出動作を開始する。
【0143】
(ステップS1140)
処理回路130は、距離データを生成するのに必要な、あらかじめ定められた露光期間のすべてが終了したか否かを判定する。ステップS1140においてすべての露光期間での電荷蓄積が終了している場合、ステップS1170に進む。ステップS1140において、すべての露光期間での電荷蓄積が終了していない場合、ステップS1150に進む。
【0144】
(ステップS1150)
処理回路130は、あらかじめ定められた露光期間のうち、まだ投光と露光が実行されておらず、電荷の蓄積が行われていない露光期間の1つを選択し、スイッチ123に切り替え信号を出力する。
【0145】
(ステップS1160)
処理回路130は、クロック160からの時刻データを参照して、選択した露光期間について、あらかじめ定められた露光開始時間と露光終了時間に従って、光源110の投光タイミングと受光装置120の露光タイミングを制御する信号を生成する。光源110は、処理回路130が出力した制御信号に従って、あらかじめ定められた時間長のパルス状の光ビームを、ステップS3120で決定した方向に出射する。受光装置120は、光源110の投光開始時点を基準に、あらかじめ定められた当該露光期間の開始時間と終了時間に従って露光を行い、当該露光期間の間に光電変換によって生じた電荷を、ステップS1150において選択された電荷蓄積部124に蓄積する。
【0146】
(ステップS1170)
ステップS1140において全露光期間での投光と受光が完了したと判断した場合、処理回路130は、受光装置120におけるシャッタを閉じる。
【0147】
(ステップS3130)
処理回路130は、ステップS1130からステップS1160の一連の動作によって蓄積された各露光期間での電荷を読み出し、全画素のうち、反射光を受光した画素の電荷を画素値に変換し、画素ごとに画素値を記録媒体170に記録する。
【0148】
(ステップS1190)
処理回路130は、ステップS3130で記録されたデータに基づき、露光期間ごとに輝度画像データを生成する。さらに、処理回路130は、露光期間ごとの輝度画像データに加えて、光ビームの投光時刻のデータを生成する。処理回路130は、例えば、露光期間ごとの輝度画像データに加えて、あらかじめ定められたフレーム数ごと、あるいは各フレームの先頭に、各露光期間を特定するためのタイミングデータを付加する。タイミングデータは、例えば、露光期間の開始時刻と終了時刻の情報を含み得る。処理回路130は、露光期間ごとの輝度画像データと、各露光期間を特定するためのタイミングデータと、各画素の時刻データとを含む出力データを、インターフェース150を介して出力する。出力後、ステップS1120に戻る。
【0149】
処理回路130は、ステップS1120からステップS1190の動作を繰り返す。この繰り返しの単位を「フレーム動作」と称する。複数のフレーム動作を繰り返すことにより、フレームごとに距離計算に必要なデータが出力される。出力データは、制御装置200に送られる。
【0150】
[データフォーマットの例]
図14Aおよび図14Bは、本変形例における測距装置100から出力される露光期間ごとの画像データの出力形式の例を示す図である。この例では、図7Aおよび図7Bに示す例と比較して、固定値に、投光方向の数(例えば1バイト)が追加されている。また、フレームごとのデータに、各露光期間の投光方向ごとの時刻データ(例えば5バイト)が含まれている。露光期間ごとの輝度値のデータには、その輝度値の取得に使用された光ビームの出射時刻の代表値を特定する時刻IDのデータ(例えば1バイト)が付加されている。時刻IDと実際の時刻との対応関係は、図12に示すように、記録媒体170に記録されている。時刻IDと実際の時刻との対応関係を規定するデータは、制御装置200の記録媒体270にもあらかじめ記録される。
【0151】
図15Aおよび図15Bは、測距装置100から出力される露光期間ごとの画像データの出力形式の他の例を示す図である。この例では、同一の方向に出射された光ビームの反射光を受ける画素の集合を1つのブロックとして、各ブロックの画素領域を特定するデータ(例えば4バイト)が、フレームごとの出力データに含まれる。各ブロックは、例えば矩形の画素領域であり、最も左上に位置する画素の座標と、最も右下に位置する画素の座標とによって特定され得る。ブロックのデータにブロックIDが含まれていてもよい。図15Bの例では、日付のデータの後、ブロックの画素領域のデータが投光方向の数だけ並び、続いて、投光方向ごとの時刻のデータが、方向数と露光期間数との積の数だけ並ぶ。これに続いて、露光期間A0で蓄積された各画素の電荷を画素値に変換した画像データ、露光期間A1で蓄積された電荷に対応する画像データ、および露光期間A2で蓄積された電荷に対応する画像データが続く。なお、この例のように、ブロックの情報を出力する場合には、記録媒体170にブロックの画素領域を特定するデータが記録され得る。あるいは、輝度値などのデータがブロックのまとまりごとに記録媒体170に記録されていてもよい。図14B図15A、および図15Bに示すデータフォーマットでは、画素ごとあるいは画素ブロックごとに輝度データが取得された時刻が付与されている。すなわち、1フレーム分の輝度画像データには、異なる時刻における輝度データが含まれている。このようなデータフォーマットから生成される輝度画像データ、距離画像データ、および点群データは、フレーム単位ではなく、所定の時間範囲に含まれる画素あるいは画素ブロックに分割して利用することができる。例えば、制御装置200は、測距装置100から取得したデータを、他の計測装置等から取得した時刻情報を含むデータと組み合わせる際に、時刻情報を基準として画素あるいは画素ブロックに分割して組み合わせることができる。
【0152】
<実施形態1の変形例2>
次に、実施形態1の変形例2を説明する。本変形例では、前述の各例とは異なり、光源110は、拡がりの小さいレーザ光ビームを、1次元的に方向を変えて複数回出射するように構成される。受光装置120は、前述の各例とは異なり、イメージセンサではなく、単数または少数の受光素子を備える。受光装置120の受光面の法線ベクトルが、光源110の投光方向と一致するように、受光装置120の向きが光源110の投光方向の変化に応じて制御される。従って、処理回路130は、受光によって取得されたデータを、受光素子(画素)ごとでなく、ビームの投光方向ごとに記録媒体170に記録する。ビームの投光方向は、例えば基準位置からの角度によって指定される。
【0153】
本変形例における測距装置100の動作は、前述の変形例1における測距装置100の動作と同様であるため、説明を省略する。投光ごとに受光装置120が各露光期間で蓄積した電荷に応じた輝度データが、フレームごとにデータ列として出力される。本変形例における1回のフレーム動作は、あらかじめ定められた1つの軸についての複数の方向への一連の投光および露光の動作のまとまりを指す。1回のフレーム動作において、例えば、水平方向の360度の範囲を、0.5度ずつ方向を変化させて、計720の方向に光ビームが順次出射され得る。
【0154】
図16Aおよび図16Bは、本変形例における測距装置100から出力されるデータの出力形式の例を示す図である。本変形例における固定値は、図14Aおよび図14Bに示す例における画角および画素配置のデータに代えて、1回のフレーム動作で光ビームが出射される方向の角度の範囲が、例えば2バイトで出力される。本変形例における「方向」は、測距装置100にあらかじめ設定された0度の方向を、車両の中心を原点とする3次元座標表のベクトルとして表現したデータである。
【0155】
本変形例では、フレームごとの出力データについて、まず、当該フレームのデータが取得された日付(例えば1バイト)が出力される。続いて、露光期間A0で蓄積された電荷に応じた輝度値(例えば1バイト)および時刻(例えば5バイト)が、全投光方向について繰り返し出力される。露光期間A1およびA2についても同様に、蓄積された電荷に応じた輝度値および時刻が、全投光方向について繰り返し出力される。
【0156】
図17Aおよび図17Bは、測距装置100から出力されるデータの出力形式の他の例を示す図である。この例では、フレームごとの出力データについて、まず日付(例えば1バイト)が出力された後、各露光期間における投光方向ごとの時刻(例えば5バイト)が出力される。続いて、露光期間A0で蓄積された電荷に応じた輝度値(例えば1バイト)が、全投光方向について繰り返し出力される。露光期間A1およびA2についても同様に、蓄積された電荷に応じた輝度値が、全投光方向について繰り返し出力される。
【0157】
<実施形態2>
次に、本開示の例示的な実施形態2を説明する。
【0158】
実施形態1およびその各変形例では、測距装置100は、距離を計算することなく、常に各露光期間での受光によって蓄積された電荷を示す輝度データを出力する。これに対し、本実施形態では、測距装置100は、輝度データに基づいて画素ごとに距離を計算し、距離データの出力と、輝度データの出力とを状況に応じて切り替えることができる。この出力の切り替えは、外部からの指示による場合と、内部のデータに基づく判断による場合とがある。制御装置200は、測距装置100からデータを受信した後、輝度データであるか距離データであるかを判断し、データの種類に応じた処理を行う。
【0159】
図18は、本実施形態におけるシステムの機能構成を示す図である。本実施形態におけるハードウェア構成は図4Bに示す構成と同じであるが、動作が実施形態1とは異なっている。以下、実施形態1と異なる点を中心に、本実施形態の構成および動作を説明する。以下の説明において、輝度データを、ロー(raw)データと称することがある。
【0160】
[測距装置の構成]
本実施形態における処理回路130は、ローデータに基づいて画素ごとに距離を計算する機能を有する。処理回路130は、外部の制御装置200からの要求に応じて、距離データの出力とローデータの出力とを切り替える。なお、図18に示すシステムでは、測距装置100の数は1つであるが、図4Bに示す例と同様に、システムが複数の測距装置100を含んでいてもよい。
【0161】
本実施形態における光源110は、実施形態1における光源110と同様、レーザ光を広範囲に拡散させるフラッシュ光を出力する。
【0162】
受光装置120は、イメージセンサ121と、レンズなどの光学部品とを含む。イメージセンサ121は、2次元的に配列された複数の画素を有する。各画素は、受光素子122と、複数の露光期間にそれぞれ対応する複数の電荷蓄積部124と、受光素子122とそれぞれの電荷蓄積部124との接続を切り替えるスイッチ123とを備える。
【0163】
処理回路130は、光源110によるフラッシュ光の投光のタイミングと、受光装置120の露光のタイミングとを決定する。そして、決定したタイミングに従って、投光制御信号を光源110に送り、露光制御信号をイメージセンサ121に送る。処理回路130は、さらに、電荷蓄積部124によって露光期間ごとに生成された信号に基づき、画素ごとに距離を計算する。処理回路130は、計算した画素ごとの距離を示す距離データ、すなわち距離画像データを、インターフェース150を介して出力する。一方、制御装置200からローデータの出力を要求する信号を受けたときには、処理回路130は、距離データに代えて、ローデータを出力する。
【0164】
[制御装置の構成]
制御装置200は、図4Bに示す制御装置200と同じハードウェア構成を有する。ただし、本実施形態では、処理回路230が、状況に応じて、ローデータの送信を要求する信号を、インターフェース210を介して測距装置100に送信する点で、実施形態1とは異なる。処理回路230は、例えば、測距装置100から送信された距離画像データに多くのノイズが含まれている場合のように、より正確なデータが必要な場合に、ローデータを要求する信号を測距装置100に送る。
【0165】
図18の構成では、測距装置100のインターフェース150と制御装置200のインターフェース210との間で、直接的に信号が送受信される。このような構成に限らず、測距装置100と制御装置200との間の通信は、インターネットなどのネットワークを介して行われてもよい。測距装置100と制御装置200との間に、ネットワーク上の他の装置が介在していてもよい。測距装置100または制御装置200は、ネットワークを介して、例えばクラウドサーバ、またはストレージなどの記憶装置と通信してもよい。通信には、例えば、http、ftp、TCPまたはUDP、およびIPなどの通信プロトコルが用いられ得る。PULL型の通信方式が用いられてもよいし、PUSH型の通信方式が用いられてもよい。有線伝送には、例えばEthernet、USB、RS-232C、HDMI(登録商標)、または同軸ケーブルなどを用いることができる。あるいは、無線伝送には、例えば3GPP、IEEEで規定される3G/4G/5G、無線LAN、Wi-Fi、Bluetooth(登録商標)、またはミリ波などの、任意の無線通信方式が用いられ得る。
【0166】
[測距装置の動作]
図19は、本実施形態における測距装置100の処理回路130の動作を示すフローチャートである。図19に示すフローチャートは、図5に示すフローチャートにおけるステップS1190が、ステップS4110からS4150に置換されたものである。ステップS1120からS1170の動作は図5に示す動作と同じである。以下、図5に示す動作と異なる点を説明する。
【0167】
(ステップS4110)
ステップS1180が完了すると、処理回路130は、制御装置200からローデータ出力を要求する信号を受信したか否かを判断する。当該信号を受信している場合、ステップS4140に進む。当該信号を受信していない場合、ステップS4120に進む。
【0168】
(ステップS4120)
処理回路130は、記録媒体170に記録された露光期間ごとの各画素の電荷の値に基づいて、画素ごとに距離を計算する。距離の計算方法は、図8に示すステップS2150における計算方法と同様である。
【0169】
(ステップS4130)
処理回路130は、ステップS4120で計算した画素ごとの距離を画素値に変換して距離画像データを生成する。処理回路130は、当該データが距離画像データであることを示す識別子を当該距離画像データに付加した出力データを生成する。出力データの具体例については後述する。
【0170】
(ステップS4140)
ステップS4110でローデータの出力要求があったと判断した場合、処理回路130は、記録媒体170に記録された露光期間ごとの電荷の値を画素値に変換し、露光期間ごとの輝度画像データを生成する。この場合、処理回路130は、露光期間ごとの輝度画像データに、各露光期間のタイミングを示すタイミングデータを加えた出力データを生成する。出力データの形式は、例えば図7Aおよび図7Bに示す形式と同様である。ただし、出力データの先頭には、当該データがローデータすなわち輝度画像データであることを示す識別子が付加される。
【0171】
(ステップS4150)
処理回路130は、インターフェース150を介して、ステップS4130またはステップS4140で生成した出力データを出力する。
【0172】
処理回路130は、ステップS1120からステップS4150の動作を繰り返し実行する。これにより、外部の制御装置200からの要求に応じて、距離画像データの出力と露光期間ごとの輝度画像データの出力とが切り替えられる。距離画像データの出力と露光期間ごとの輝度画像データの出力との切り替えは、任意のフレームで行われ得る。あるいは、処理回路130は、1以上のあらかじめ定められたフレーム数ごとに出力形式を切り替えてもよい。その場合、制御装置200からの要求によらず、処理回路130は、距離画像データの出力と輝度画像データの出力とを、あらかじめ定められたフレーム数ごとに切替える。
【0173】
[データフォーマットの例]
次に、本実施形態における測距装置100が出力するデータのフォーマットの例を説明する。
【0174】
図20Aおよび図20Bは、測距装置100のインターフェース150から出力される距離画像データのフォーマットの例を示す図である。この例では、複数のフレームに共通の固定値の先頭に、データ形式、すなわち距離データおよび輝度データのいずれかが含まれるかを示す識別子が付加される。データ形式が距離データの場合、固定値には、図7Bに示す露光期間A0からA2のデータは含まれない。固定値は、前述の各例と同様、例えば出力データの先頭に1回、あるいは、出力データの切り替え時の先頭のフレームの前に出力され得る。
【0175】
フレームごとの出力データは、当該フレームのデータが生成された日付(例えば1バイト)および時刻(例えば5バイト)と、各画素の距離を画素値として変換した値(例えば1バイト)のデータとを含む。複数の画素の画素値のデータから距離画像が構成される。
【0176】
図21Aおよび図21Bは、測距装置100から出力される輝度画像データのフォーマットの例を示す図である。この例における輝度画像データのフォーマットは、図7Aおよび図7Bに示す例における固定値の先頭に、データ形式が輝度画像データであることを示す識別子(例えば1バイト)が付加されたものである。それ以外の点については、図7Aおよび図7Bに示す例と同じである。
【0177】
図22Aおよび図22Bは、測距装置100から出力される輝度画像データのフォーマットの他の例を示す図である。この例では、図22Aおよび図22Bに示すフォーマットに、距離ごとにあらかじめ計測された画素値の最大値(例えば1バイト)を示すデータが固定値として追加されている。この画素値の最大値は、あらかじめ設定された複数の距離のそれぞれについて、反射率100%の物体(例えば白色ボード)から光が反射されたと仮定した場合に、露光期間A0からA2の間に1つの画素において計測される画素値の総和を表す。この画素値の最大値は、特定の距離範囲(例えば0.1mから50m等)内の複数の距離について、例えば距離が大きくなるにつれて刻みが大きくなるように記録され得る。刻みは、例えば2を底とする距離の対数に比例するように決定され得る。画素値の最大値のデータは、距離ごとにあらかじめ計測され、例えば図9に示すように、記録媒体270にテーブルなどの形式で記録されている。画素値の最大値のデータは、前述のように、制御装置200における処理回路230による画素ごとの反射率を計算するときに用いられ得る。なお、実施形態1およびその各変形例においても、このような画素値の最大値のデータが出力データに含まれていてもよい。
【0178】
[制御装置の動作]
図23は、本実施形態における制御装置200における処理回路230の動作の例を示すフローチャートである。図23に示す動作では、図8に示すフローチャートにおけるステップS2130とステップS2140との間にステップS5110が追加され、ステップS2170とS2180との間にステップS5120からS5140が追加されている。それ以外の点は、図8に示す動作と同じである。以下、図8に示す動作と異なる点を主に説明する。
【0179】
(ステップS5110)
処理回路230は、ステップS2130において測距装置100からデータを受けると、そのデータがローデータすなわち輝度画像データであるか否かを判断する。この判断は、入力されたデータの固定値におけるデータ形式の値に基づいて行われる。入力されたデータがローデータである場合、ステップS2140に進む。入力されたデータがローデータでない場合、すなわち距離画像データである場合、ステップS2170に進む。
【0180】
(ステップS2140~S2160)
ステップS2140、S2150、およびS2160の処理は、図8における対応するステップの処理と同じである。ステップS2140において、処理回路230は、ローデータに対してノイズ除去処理などの、距離計算の精度を向上させるための前処理を行う。ステップS2150において、処理回路230は、ステップS2140でノイズ除去処理が行われた露光期間ごとの画像データを用いて、画素ごとに距離を計算することにより、距離画像データを生成する。ステップS2160において、処理回路230は、ステップS2150で計算した画素ごとの距離と、ステップS2140でノイズ除去処理を行った露光期間ごとの画像データとを用いて、距離が計算された画素の反射率を計算する。なお、反射率の計算に用いられる各距離の反射率100%の値は、実施形態1と同様、あらかじめ記録媒体170に記録されていてもよいし、図22Aおよび図22Bに示すように、入力されるデータに固定値として含まれていてもよい。
【0181】
(ステップS2170)
処理回路230は、ステップS2150で生成された距離画像データ、または、測距装置100から入力された距離画像データを点群データに変換する。この変換の処理は、図8におけるステップS2170の処理と同じである。
【0182】
(ステップS5120)
処理回路230は、ステップS2170で生成した点群データと、外部から取得した地図データとに基づいて、自己位置を推定する。自己位置は、例えば、地図データと点群データとのマッチングを行うことによって推定され得る。例えば、処理回路230は、点群データから、地図に含まれる固定物に一致する固定物をマッチングによって特定する。そして、当該固定物までの距離の値と、地図から得られる当該固定物までの距離とに基づいて自己位置を推定することができる。
【0183】
(ステップS5130)
処理回路230は、ステップS5120で推定した制御装置200の位置があらかじめ定められた条件に合致する領域にあるか否かを判断する。条件は、例えば、交差点の周辺10m以内といった条件であり得る。制御装置200の位置が条件に合致する場合は、ステップS5140に進む。制御装置200の位置が条件に合致しない場合は、ステップS2190に進む。
【0184】
(ステップS5140)
処理回路230は、測距装置100に、ローデータの出力を要求する信号を、インターフェース150を介して送信する。ステップS5130において、制御装置200の推定された位置が条件に合致しない場合の例として、測距装置100から入力された距離画像データの信頼性が低い場合が挙げられる。そのような場合、処理回路230は、測距装置100に、距離データではなくローデータの出力を要求する。これにより、次のフレームでは、距離データに代えてローデータが測距装置100から制御装置200に入力される。
【0185】
以降のステップS2180からS2200の動作は、図8における対応する動作と同じである。
【0186】
なお、本実施形態では、測距装置100は、距離画像データ、および露光期間ごとの輝度画像データのいずれか一方を出力する。このような動作に代えて、測距装置100は、輝度画像データを要求する信号を受けた場合に、距離画像データに加えて、露光期間ごとの輝度画像データの両方を出力するものとしてもよい。また、本実施形態では、制御装置200は、露光期間ごとの輝度画像データを受信した場合には必ず前処理と距離計算を行う。このような動作に代えて、制御装置200は、必要な場合にのみ、前処理と距離計算を行ってもよい。制御装置200は、取得した露光期間ごとの輝度画像データを、記録媒体270に記録して蓄積してもよい。あるいは、露光期間ごとの輝度画像データを、ネットワークを経由して外部のサーバまたはストレージなどの装置に送信することで蓄積してもよい。
【0187】
本実施形態では、制御装置200は、ステップS5130においてローデータの要求信号の出力の要否を、自己位置に基づいて決定する。このような動作に代えて、制御装置200が測距装置100から取得したデータの状態に基づいて、ローデータの要求信号の出力の要否を決定してもよい。例えば、取得した距離画像データの空間周波数が高い成分の値、または高周波成分が全体に占める割合があらかじめ定められた閾値を超えている場合にローデータの要求信号を出力してもよい。また、複数の測距装置100から取得したデータが矛盾する場合にローデータの要求信号を出力してもよい。あるいは、地図データが示す建築物の内部に点群が位置する場合のように、測距装置100から取得した距離画像データと、地図データとが矛盾する場合に、ローデータの要求信号を出力してもよい。例えば、測距装置100から取得した距離画像データにおける複数の画素に対応する点群のうち、地図データと矛盾する位置にある点があらかじめ定められた数以上ある場合に、ローデータの要求信号を出力してもよい。あるいは、制御装置200が別途画像データを取得する場合において、当該画像データと距離画像データとの間に、マッチングできない点があらかじめ定められた数よりも多く存在する場合に、ローデータの要求信号を出力してもよい。
【0188】
また、制御装置200は、測距装置100以外の計測装置による計測結果を取得し、当該他の計測装置による計測結果に基づいて、ローデータの要求信号の出力の要否を決定してもよい。他の計測装置は、ジャイロセンサであってもよい。例えば、ジャイロセンサの計測結果が時間方向に急峻な変化を示した場合、すなわち大きな揺れあるいは衝撃があった場合に、測距装置100にローデータの要求信号を出力してもよい。あるいは、ジャイロセンサの計測結果があらかじめ定められた閾値以上あるいは以下の角度を示す場合、すなわち急坂を走行する場合のようにシステム全体が傾いている場合に、測距装置100にローデータの要求信号を出力してもよい。また、他の計測装置は、輝度画像あるいは動画を撮影するカメラであってもよい。例えば、カメラからの信号を取得し、取得した画像あるいは動画のフレーム内にあらかじめ定められた値を超える輝度を示す画素がある場合に、測距装置100にローデータの要求信号を出力してもよい。このような高輝度の画素が現れる原因としては、強い太陽光が入射している場合や、対向車のヘッドライトの光が入射している場合が考えられる。あるいは、動画から取得されたモーションベクトルの解析結果に基づき、測距装置100にローデータの要求信号を出力してもよい。例えば、モーションベクトル角度が不安定な場合は、システムに衝撃あるいは振動が加わっていることが推定されるため、ローデータの要求信号を出力してもよい。
【0189】
システムが移動体である場合には、制御装置200は、当該移動体の動作計画に基づき、ローデータの要求信号の出力の要否を決定してもよい。動作計画が、加減速、進路変更、バック等の特定の動作である場合に、測距装置100にローデータの要求信号を出力してもよい。また、移動体の各種作動部のセンサから、ブレーキのロックやトラクションの異常等の動作異常の信号を取得した場合に、測距装置100にローデータの要求信号を出力してもよい。
【0190】
制御装置200の処理回路230は、測距装置100と制御装置200との間の通信の状態に基づいて、ローデータの要求信号を出力するか否かを決定してもよい。例えば、インターフェース210が備える不図示のメモリに、あらかじめ定められたデータ量を超えるデータが蓄積された場合に、処理回路230が距離画像データを要求する信号を出力してもよい。一例として、インターフェース210が1秒間に受け取るデータ量が、あらかじめ定められたデータ量を超える場合、あるいは超えることが予想される場合に、処理回路230は、距離画像データの要求信号を出力してもよい。
【0191】
[効果]
以上のように、本実施形態によれば、測距装置100の処理回路130は、露光期間ごとの各画素の輝度データに加えて、各画素の距離データを生成する。そして、距離データと、各露光期間についての輝度データとを、外部の制御装置200からの要求に応じて、切り替えて出力する。処理回路130は、露光期間ごとの輝度データと各露光期間のタイミングを示すタイミングデータとの組、および距離データのいずれを出力するかを、フレームごとに決定する。また、制御装置200の処理回路230は、測距装置100から送られてきたデータが所定の条件を満足しない場合に、測距装置100に輝度データの出力を要求する。
【0192】
このような動作により、通常時は測距装置100が距離データを出力し、より精度の高い測距が必要な場合に限り、測距装置100が露光期間ごとの輝度データを出力する、といったシステムを実現できる。露光期間ごとの輝度データのサイズは、距離データのサイズよりも大きい。本実施形態の動作によれば、制御装置200は、必要な場合にだけ、サイズの大きい露光期間ごとの各画素の輝度データを取得することができる。このため、制御装置200と測距装置100との間の通信量を低減することができる。
【0193】
本実施形態の動作により、通常時は測距装置100は距離画像データを出力し、例えば交差点周辺等の交通状況の複雑な場所では、測距装置100は制御装置200からの指示に従って露光期間ごとの輝度データを出力することができる。測距装置100から露光期間ごとの輝度データを受信した制御装置200は、前処理により、より精度の高い距離情報を生成することができる。また、各画素の反射率を計算することで認識性能を高め、環境認識の精度を向上することができる。さらに、露光期間ごとの詳細な輝度データをそのまま記録またはネットワークを介してサーバなどの他の装置に転送することで、複雑な交通環境の状態を示すデータを保持することができる。これにより、例えば事故が生じた場合に、より詳細な状況分析を可能にする検証用データを記録することもできる。
【0194】
<実施形態2の変形例1>
次に、実施形態2の変形例1を説明する。本変形例では、光源110は、フラッシュ光ではなく、より広がりの小さい光ビームを出射する。光源110は、広い範囲に投光するために、光の向きを変えて複数回投光を行うように制御される。光源110の構成は、実施形態1の変形例1における構成と同様である。
【0195】
図24は、本変形例における測距装置100の動作を示すフローチャートである。図24に示す動作では、図19に示す動作にステップS3110およびS3120が追加され、ステップS1180がステップS3130に置換されている。それ以外の点については、図19に示す動作と同じである。また、図24に示す動作は、図13に示す動作におけるステップS1190が、ステップS4110からS4150に置換されたものである。図24に示す各ステップの動作は、図13または図19に示す対応するステップの動作と同様であるため、説明を省略する。
【0196】
本変形例のように、光ビームの出射方向を変化させることができる光源110を用いて、対象シーンを光ビームで走査することにより、フラッシュ光を出射する光源110を用いた場合よりも遠方の物体の測距に必要なデータを取得することができる。また、図24に示すステップS4110からS4140の動作により、外部の装置からの要求に応じて、距離データの出力と、露光期間ごとの輝度データの出力とを切り替えることができる。
【0197】
なお、光源110と受光装置120の構成として、実施形態1の変形例2と同様の構成を採用してもよい。すなわち、光ビームを出射する光源110と、単一または少数の受光素子を備える受光装置120とを用いて、光源110および受光装置120の方向を変化させて測距に必要な受光データを取得する構成を採用してもよい。そのような構成においても、距離データと露光期間ごとの輝度データとを切り替えて出力するようにしてもよい。
【0198】
<実施形態2の変形例2>
次に、実施形態2の変形例2を説明する。本変形例では、制御装置200などの外部の装置からの要求によるのではなく、測距装置100の処理回路130での処理結果に基づいて出力データの内容が切り替えられる。本変形例の構成は、実施形態2の構成と同様である。
【0199】
図25は、本変形例における測距装置100における処理回路130の動作を示すフローチャートである。図25に示す動作では、図19に示す動作におけるステップS4110の代わりにステップS6110およびS6120が実行される。ステップS6110およびS6120以外のステップは、図19に示す対応するステップと同じである。以下、図19に示す動作とは異なる点を説明する。
【0200】
(ステップS6110)
処理回路130は、電荷蓄積部124から読み出された各露光期間の画素ごとの電荷の値を、画素配列に従った2次元配列データとして処理する。ランダムなノイズは、画像中の空間周波数の高周波成分として抽出することができる。本変形例では、処理回路130は、まず、露光期間A0、A1、およびA2の各輝度画像のそれぞれを、複数の領域に分割する。例えば、各輝度画像は、y軸方向に2分割、x軸方向に4分割されることにより、8つの領域に分割され得る。ここで、露光期間A0、A1、およびA2のいずれの輝度画像についても同様の方法で分割される。処理回路130は、分割された各領域を示す2次元のデータに対して空間周波数分析を行う。周波数分析の方法として、例えば2次元フーリエ変換が用いられ得る。処理回路130は、フーリエ変換の結果として得られた各周波数成分の実部を抽出する。処理回路130は、抽出した周波数成分のうち、あらかじめ定められた周波数以上の成分について、絶対値の積分を計算し、これをノイズ量とする。処理回路130は、露光期間A0、A1、およびA2にそれぞれ対応する3つの輝度画像の各分割領域について、上記のノイズ量を計算する。
【0201】
(ステップS6120)
処理回路130は、ステップS6110で計算された、各輝度画像の各分割領域でのノイズ量に基づいて、ノイズの大きさを評価する。ステップS6120において、ノイズ量が閾値を超えた場合、ステップS4140に進む。ステップS6120においてノイズ量が閾値を超えない場合、ステップS4120に進む。ノイズの大きさの評価方法の一例として、処理回路130は、露光期間A0、A1、およびA2の輝度画像のいずれかにおいて、画像全体のノイズ量の総和が、あらかじめ定められた値より大きい場合にはノイズが多いと判断してもよい。ノイズ量の大きさの判断の他の例として、処理回路130は、分割領域のうちの一部の領域であらかじめ定められた値よりもノイズ量が大きい場合にノイズが多いと判断してもよい。例えば、8つの分割領域のうちの1つの領域であらかじめ定められた値よりノイズ量が大きい場合、ノイズ量が多いと判断してもよい。2つ以上の領域であらかじめ定められた値よりノイズ量が大きい場合に、ノイズ量が多いと判断してもよい。このように、各輝度画像を複数の領域に分割し、領域ごとにノイズ量を算出および判定することで、画像の一部の領域においてノイズが大きい場合でも、見逃すことなく検出できる。
【0202】
以上の方法において、処理回路130は、露光期間A0、A1、およびA2のいずれかの輝度画像について、ノイズが多いと判断された場合、「ノイズ量が閾値を超えた」と判断してもよい。ノイズ量の判断方法は、上記の方法に限らず、他の方法であってもよい。
【0203】
ステップS6120において、ノイズ量が閾値を超えたと判断した場合、処理回路130は、インターフェース150を介して、輝度画像データすなわちローデータを出力する(S4140)。一方、ノイズが閾値を超えていない判断した場合、処理回路130は、前述の方法で、画素ごとに距離を計算することによって距離画像データを生成し、出力する(ステップS4120およびS4130)。
【0204】
処理回路130は、ステップS1120からステップS4150の動作を繰り返すことにより、取得された輝度データの状態に応じて、距離画像データの出力と、露光期間ごとの輝度画像データの出力とを切り替えることができる。本変形例では、輝度データの状態として、高周波成分の大きさに基づいて評価可能なノイズ量が用いられるが、輝度データの信頼度に関係する他の指標に基づいて評価してもよい。例えば、各画素の輝度データと、予め記録された距離ごとの反射率100%の場合の輝度値の最大値のデータとから計算される画素ごとの反射率に基づいて同様の判定を行ってもよい。処理回路130は、露光期間A0、A1、およびA2にそれぞれ対応する3つの輝度画像における1つ以上の画素の反射率に基づいて算出される反射率の指標値が、あらかじめ定められた値よりも低い場合に、距離画像データではなく、露光期間ごとの輝度画像データを出力してもよい。あるいは、輝度値があらかじめ定められた閾値を超える画素が所定の割合存在する場合に、距離画像データではなく、露光期間ごとの輝度画像データを出力してもよい。
【0205】
本変形例では、処理回路130は、ステップS6110およびS6120において、輝度画像データの出力の要否を、取得された輝度データの状態に応じて決定する。このような動作に代えて、処理回路130は、測距装置100が何らかの原因により異常停止した場合に、露光期間ごとの輝度画像データを出力してもよい。測距装置100の異常は、ジャイロセンサ等の他の計測装置により検知されてもよい。
【0206】
測距装置100が異常停止している時に輝度画像データを出力できるように、記録媒体170には最新の1以上のフレーム数の輝度画像データが時刻データとともに記憶されている。測距装置100が異常停止した際に、処理回路130は、記録媒体170に蓄積された露光期間ごとの輝度画像データを異常停止時点から遡って読み出し、制御装置200に出力する。出力先として、制御装置200のみでなく、通信を介して交通情報センター等の外部システムへ送信してもよい。
【0207】
本変形例では、フラッシュ光を出射する光源110が用いられるが、前述の変形例1のように、広がりの小さい光ビームを出射するビームスキャナを光源110として用いてもよい。また、実施形態1の変形例2のように、広がりの小さい光ビームを出射する光源と、単一または少数の受光素子を備える受光装置とを用いてもよい。
【0208】
前述の各例におけるデータ形式は例示であり、測距装置100は、他のデータ形式で同様の情報を出力してもよい。また、測距装置100は、前述のいずれかの形式で輝度データまたは距離画像データを生成した上で、所定の方法によって当該データを圧縮することでデータ量を削減してもよい。
【0209】
複数の測距装置100が1つの制御装置200にデータを送信する場合、上記の各例におけるデータ形式に含まれるデータに、測距装置100を識別するための識別子が追加されてもよい。
【0210】
複数の測距装置100が1つの制御装置200にローデータを出力する場合、制御装置200は、複数の測距装置100からのローデータを合わせて処理してもよい。そのような処理には、例えば、加算、平均化、またはフィルタリング等が含まれ得る。複数の測距装置100から出力されたローデータを合わせて処理することにより、距離計算の精度を向上させることができる。
【0211】
<実施形態2の変形例3>
続いて、実施形態2の変形例3を説明する。本変形例では、測距装置100の処理回路130は、フレーム単位ではなく、画像の領域ごとに、輝度データおよび距離データのいずれのデータを出力するかを決定する。本変形例における処理回路130は、イメージセンサ121の画素群を複数の領域に分割し、領域ごとに、距離データと、露光期間ごとの輝度データとを切り換えて出力する。従って、本変形例における各フレームの出力データは、ローデータおよび距離データの両方を含む。出力データは、各領域を特定するデータと、各領域がローデータおよび距離データのいずれのデータとして出力されているかを示すデータとを含む。制御装置200の処理回路230は、測距装置100からデータを受信した後、当該データが示す画像を同様に複数の領域に分割し、各領域について、ローデータであるか距離データであるかを判断し、その判断結果に応じて異なる処理を行う。
【0212】
本変形例におけるシステムの構成は、図18に示す構成と同じである。ただし、記録媒体270に記録されるデータ、および処理回路130および230の動作が図18の例とは異なっている。
【0213】
図26は、記録媒体270に記録されるデータの一例を模式的に示す図である。この例では、制御装置200が測距装置100から画像データを受信すると、図26に示すようなデータが記録媒体270に記録される。図26に示す例では、日付、領域ID、および領域の範囲と、画素ごとに記録される領域ID、距離、露光期間A0での輝度、露光期間A1での輝度、および露光期間A3での輝度とが記録される。距離データが記録される画素については、露光期間A0、A1、およびA2の輝度値は記録されず、ブランクとなる。逆に、露光期間A0、A1、およびA2の輝度値が記録される画素については、距離は記録されず、ブランクとなる。処理回路230は、測距装置100から送信された当該データを取得した後、距離の値が記録されていない画素について、順次、露光期間A0、A1、およびA2の輝度値のデータから距離を計算し、記録する。これにより、処理が進むにつれて、ブランクの距離データは、順次、計算された距離データによって置き換えられる。
【0214】
[測距装置の動作]
図27は、本変形例における測距装置100の動作を示すフローチャートである。図27に示す動作は、図19に示す動作におけるステップS4110からS4150が、ステップS7110からS7170に置き換わった点を除き、図19に示す動作と同じである。以下、図19に示す動作と異なる点を主に説明する。
【0215】
(ステップS7110)
ステップS1120からS1180の動作により、1フレーム分の露光期間ごとの輝度データの取得が完了すると、処理回路130は、当該データが示す各画像を複数の領域に分割する。このとき、制御装置200から送信された信号に記述された領域IDと領域範囲の情報に従って、各画像を複数の領域に分割する。
【0216】
(ステップS7120)
処理回路130は、ステップS7110で分割された領域の全てについて出力データの生成が終了したか否かを判断する。全領域について出力データの生成が終了している場合、ステップS7140に進む。出力データの生成が終了していない領域がまだ残っている場合、ステップS7130に進む。
【0217】
(ステップS7130)
処理回路130は、ステップS7110で分割された領域のうち、出力データがまだ生成されていない領域のうちの1つを選択する。
【0218】
(ステップS7140)
処理回路130は、制御装置200から送信された信号に基づき、ステップS7130で選択した領域の出力データとしてローデータの出力が要求されているか否かを判断する。当該領域についてローデータの出力が要求されている場合、ステップS7120に戻る。当該領域についてローデータの出力が要求されていない場合、ステップS7150に進む。
【0219】
(ステップS7150)
処理回路130は、ステップS7130で選択された領域内の各画素について、露光期間ごとの輝度値に基づいて、前述の方法で距離を計算する。
【0220】
(ステップS7160)
処理回路130は、ステップS7150で計算された画素ごとの距離を記録媒体170に記録する。
【0221】
図28は、記録媒体170に記録されるデータの一例を示す図である。時刻IDと詳細時刻との組、および領域IDと領域範囲との組が記録される。また、画素ごとに、当該画素が含まれる領域のIDと、ステップS1180で読みだされた各露光期間における電荷の値と、各露光期間を特定する時刻IDとが記録される。ローデータの出力が要求されていない領域内の画素については、ステップS7150で計算された距離も記録される。ローデータの出力が要求されている領域内の画素については、距離は記録されない。
【0222】
(ステップS7170)
処理回路130は、画素ごとに記録された距離を画素値に変換して距離データを生成する。距離データがない画素については露光期間ごとの電荷の値を輝度値に変換して輝度データを生成する。処理回路130は、生成した画像データを詳細な時刻データとあわせてインターフェース150を介して出力する。
【0223】
[データフォーマットの例]
図29Aおよび図29Bは、出力データの形式の一例を示す図である。この例では、複数のフレームに共通する固定値として、図7Aおよび図7Bの例と同様、測距装置の位置、方向、画角、画素配置、および各露光期間のタイミングデータが出力される。
【0224】
図29Aおよび図29Bの例では、フレームごとに変動する値として、以下のデータが順に出力される。まず、データが取得された日および詳細な時刻と、イメージセンサ121の画素配列の分割の領域数とが出力される。続いて、各領域の範囲を示す先頭画素座標と終端画素座標とが、領域の数だけ出力される。なお、本変形例では、各領域の形状は矩形であるが、楕円形などの他の形状でもよい。さらに、距離データが出力される領域の数と、距離データが出力される各領域のIDと、ローデータが出力される領域の数と、ローデータが出力される各領域のIDとが続く。これらの情報に続いて、ローデータ出力が要求されていない画素のそれぞれの距離が出力される。さらに、露光期間ごとに、ローデータ出力が要求されている画素のそれぞれの輝度値が順に出力される。
【0225】
[制御装置の動作]
図30は、本変形例における制御装置200の処理回路230が実行する処理の例を示すフローチャートである。図30に示すステップのうち、ステップS2120、S2130、S2170-S2200は、図8に示す対応するステップと同じである。以下、各ステップの動作を説明する。
【0226】
(ステップS2120)
処理回路230は、図示されていない外部の装置から動作終了の信号が入力されているか否かを判断する。動作終了信号が入力されている場合、動作を終了する。動作終了信号が入力されていない場合、ステップS2130に進む。
【0227】
(ステップS2130)
処理回路230は、測距装置100からデータの入力があるか否かを判定する。測距装置100からデータの入力がある場合、当該データを記録媒体270に記録し、ステップS9110に進む。測距装置100からデータの入力がない場合、ステップS2120に戻る。
【0228】
(ステップS9110)
処理回路230は、記録媒体270に記録されたフレームごとの入力データから、当該データが示す画像を複数の領域に分割するときの領域数、および各領域の画素範囲を示すデータを取得する。さらに、処理回路230は、すべての領域での処理が終了したか否かを判断する。すべての領域について処理が終了している場合は、ステップS9170およびステップS2170に進む。分割された複数の領域のうち未処理の領域がある場合は、ステップS9120に進む。なお、本変形例ではステップS9170からS9190の処理と、ステップS2170からS2200の処理とが並列的に行われるが、これらを直列的に行ってもよい。
【0229】
(ステップS9120)
処理回路230は、分割された複数の領域のうち、まだ処理が行われていない領域の1つを選択する。
【0230】
(ステップS9130)
処理回路230は、記録媒体270に記録されたフレームごとの入力データを参照し、ステップS9120で選択した領域の領域IDが距離領域IDに含まれるか否かを判断する。当該領域の領域IDが距離領域IDに含まれる場合、ステップS9110に戻る。当該領域の領域IDが距離領域IDに含まれない場合、すなわち当該領域の領域IDがRaw領域IDに含まれる場合、ステップS9140に進む。
【0231】
(ステップS9140)
処理回路230は、記録媒体270に記録された、測距装置100からの入力データのうち、当該領域のローデータ、すなわち図29Aおよび図29Bに示す露光期間A0、A1、およびA2のそれぞれの輝度データを取得する。処理回路230は、取得したローデータに対して前処理を行う。前処理の例として、例えばノイズ除去処理を行う。ノイズ除去は、当該領域として抽出された画素範囲の露光期間A0の輝度画像と、露光期間A1の輝度画像と、露光期間A2の輝度画像のそれぞれに適応フィルタを用いたノイズ除去処理を行う。前処理として、適応フィルタ以外のノイズ除去処理を行ってもよい。また。コントラスト強調、またはエッジ抽出のような、ノイズ除去処理以外の信号処理を行ってもよい。
【0232】
(ステップS9150)
処理回路230は、当該領域に含まれる画素範囲について、ステップS9140でノイズ除去処理を行った露光期間ごとの画像データを用いて、画素ごとの距離計算を行う。当該領域内の露光期間ごとの画像データより、同一画素の画素値を抽出し、前述の計算式に基づいて距離を求めることができる。
【0233】
(ステップS9160)
処理回路230は、ステップS9150で計算した、当該領域内の画素ごとの距離データを、記録媒体270に記憶する。ステップS9160を実行した後、ステップS9110に戻る。
【0234】
(ステップS9170)
全領域について、距離データが生成されると、処理回路230は、測距装置100から入力されたデータにおいて距離の値をもつ画素の距離と、ステップS9150で距離が計算された画素の距離とを合わせて、距離画像データを生成する。そして、この距離画像データの画素を距離に従ってクラスタリングする。これにより、距離画像データ内の各画素が、複数の距離範囲にそれぞれ対応する複数のクラスタのいずれかに分類される。
【0235】
(ステップS9180)
処理回路230は、ステップS9170で生成されたクラスタのうち、距離0と距離無限大のクラスタを除いたクラスタのそれぞれについて、当該クラスタを特徴づける距離範囲内の画素数N1と、当該クラスタを特徴づける距離範囲外の画素数N2との比N1/N2があらかじめ定められた第1の閾値以上かつ第1の閾値よりも大きい第2の閾値未満となる当該クラスタの周辺の領域を抽出する。処理回路230は、抽出した領域に最も近い矩形領域をローデータ要求領域として設定する。
【0236】
(ステップS9190)
処理回路230は、ステップS9180で設定された、ローデータ要求領域以外の領域を1つ以上の矩形領域に分割し、各矩形領域を非ローデータ要求領域、すなわち距離データ要求領域とする。処理回路230は、ローデータ要求領域と距離データ要求領域のそれぞれについて、当該領域の範囲を示すデータと、当該領域について指定するデータ形式、すなわち、ローデータか距離データかを示すデータコードとを含む指示信号を、測距装置100に送信する。
【0237】
図31は、指示信号の形式の一例を示す図である。図31の例では、指示信号は、領域数と、データコード(すなわち、ローデータ/距離データを表す2値)と、各領域の範囲と、領域ID順に記述されたデータコードとを示すデータを含む。
【0238】
処理回路230は、ステップS9170からステップS9190の動作により、測距装置100への出力信号を生成する。並行して、処理回路230は、ステップS2170からステップS2200の動作により、測距装置100の出力に基づいた自動運転車の制御信号を生成する。ステップS2170からステップS2200の動作は、図8に示す対応するステップの動作と同じである。ステップS9190およびS2200の後、ステップS2120に戻り、同様の動作が繰り返される。
【0239】
[効果]
以上のように、本変形例における制御装置200の処理回路230は、測距装置100の出力に基づいて生成した距離画像データに基づいて、測距装置100のイメージセンサ121における画素群を複数の領域に分割する。そして、領域ごとにローデータの出力、または距離データの出力を測距装置100に要求する。制御装置200からの要求に応じて、測距装置100の処理回路130は、ローデータを出力するか距離データを出力するかを領域ごとに決定する。これにより、例えば測距装置100から出力された距離データの精度が低い領域について、ローデータの出力を要求し、制御装置200の処理回路230がより詳細な信号処理を行うことができる。結果として、相対的に低い性能をもつ測距装置100の処理回路130では、短時間で生成することが困難な、精度の高い距離データを処理回路230が生成することができる。
【0240】
本変形例では、制御装置200が測距装置100に対して、領域ごとに、ローデータまたは距離データの出力を要求する。このような動作に代えて、例えば、測距装置100にすべての画素についての距離データを出力させ、特定の領域について、距離データに加えてローデータの出力を要求してもよい。特定の領域についてローデータを追加で出力することを要求する場合、制御装置200から出力される指示信号には、例えば、ローデータを追加で出力させる領域の数と、それらの領域のそれぞれの範囲を指定するデータが含まれ得る。
【0241】
図32は、特定の領域に対してローデータを追加で出力することを要求する指示信号を取得した場合の測距装置100の動作の一例を示すフローチャートである。図32に示す動作において、ステップS1110からS1180、S7150およびS7160は、図27に示す対応するステップと同じである。図32に示す例では、図27の例におけるステップS7110、S7120,S7130、およびS7240に代えて、ステップS7210およびS7220が実行される。また、ステップS7170に代えて、ステップS7230が実行される。以下、これらのステップを説明する。
【0242】
(ステップS7210)
ステップS1180の動作の後、処理回路130は、制御装置200から送信された指示信号に記述された、距離データに加えてローデータを出力する領域を記録媒体170に記録する。
【0243】
(ステップS7220)
処理回路130は、イメージセンサ121のすべての画素において距離計算を終了したか否かを判断する。全画素の距離計算が終了している場合、ステップS7230に進む。距離計算が終了していない画素がある場合、ステップS7150およびステップS7160の動作を行い、ステップS7220に戻る。
【0244】
(ステップS7230)
処理回路130は、記録媒体170に記録された各画素の距離データと、制御装置200から送信された指示信号で指定された領域の各画素のローデータとを出力する。
【0245】
図33Aおよび図33Bは、本変形例における出力フォーマットの一例を示す図である。この例では、固定値に続いて、フレームごとに、日時、時刻、全画素について計算された距離、ローデータが出力される領域の数、ローデータが出力される領域のそれぞれの範囲、各領域内の画素についての露光期間A0、A1、およびA2のそれぞれで蓄積された電荷を示す輝度が出力される。このように、測距装置100が全画素での距離情報に加えて、特定の領域内の画素についてローデータを追加で出力する場合、図33Aおよび図33Bに示すような形式のデータが出力され得る。
【0246】
図34は、制御装置200が、図33Aおよび図33Bに示す形式で出力されたデータを受信する場合の処理回路230の動作の一例を示す図である。図34に示す動作は、図30に示す動作におけるステップS9110からステップS9160が、ステップS9310からステップS9340に置き換わった点を除き、図30に示す動作と同様である。以下、図30の例と異なる動作を主に説明する。
【0247】
(ステップS9310)
処理回路230は、記録媒体270に記録されたフレームごとの入力データから、ローデータの出力のある領域とその画素範囲を特定し、ローデータの出力のある領域のすべてについての処理が完了したか否かを判断する。ローデータの出力のある領域のすべてについての処理が終了している場合、ステップS9170およびステップS2170に進む。ローデータの出力のある領域のうち未処理の領域がある場合、ステップS9320に進む。
【0248】
(ステップS9320)
処理回路230は、記録媒体270に記録されたフレームごとの入力データを参照し、ローデータの出力のある領域のうち、未だ処理が行われていない領域のうちの1つを選択する。
【0249】
(ステップS9140)
処理回路230は、ステップS9320で選択された領域の範囲内の各画素について、露光期間A0、A1、およびA2のそれぞれの輝度値を取得する。処理回路230は、取得した各露光期間の輝度値に対して前処理を行う。前処理は、例えば前述のノイズ除去処理である。
【0250】
(ステップS9150)
処理回路230は、当該領域に含まれる画素について、ステップS9140でノイズ除去処理を行った後の露光期間ごとの画像データを用いて、画素ごとに距離を計算する。
【0251】
(ステップS9330)
処理回路230は、当該領域に含まれる画素範囲について、測距装置100から出力された画素ごとの距離データの分散と、ステップS9140でノイズ除去処理を行った後、ステップS9150で計算された距離データの分散とを比較する。ステップS9150で計算した画素ごとの距離データの分散が、測距装置から出力された距離データの分散よりも小さい場合、ステップS9340に進む。ステップS9150で計算した画素ごとの距離データの分散が、測距装置から出力された距離データの分散以上の場合、ステップS9310に戻る。
【0252】
(ステップS9340)
処理回路230は、記録媒体170に記録された、当該領域の画素ごとの距離の値を、ステップS9150で計算された距離の値に置換する。これにより、当該領域の距離データを、ノイズが低減された距離データに修正することができる。
【0253】
なお、本変形例では、制御装置200は、距離画像を距離範囲ごとにクラスタリングして、クラスタの周辺画素の距離データの分布の状態に基づいて画像を複数の領域に分割するが、他の方法によって複数の領域を決定してもよい。各領域の範囲をフレームごとに変化させず、固定にしてもよい。また、距離データの分布、またはノイズの大きさに基づいて領域を設定してもよい。あるいは、測距装置100および制御装置200が搭載された移動体の速度に応じて領域の設定を変えてもよい。さらに、これら以外の方法で領域を設定してもよい。
【0254】
本変形例のように、1フレーム内にデータ形式の異なるデータが混在する場合、データの圧縮が困難である。そのため、1フレーム内で距離データとローデータとが混在する出力データを圧縮する場合には、距離データとローデータとを分割して圧縮してもよい。測距装置100から送信されたデータを受信する制御装置200は、取得した距離データとローデータとが混在するデータセットを処理し、全画素を距離データの形式にそろえて圧縮してもよい。
【0255】
本変形例では、測距装置100の光源110はフラッシュ光を出射するが、実施形態1の変形例1のように、広がり角の少ない光ビームを出射するビームスキャナを光源110として用いてもよい。ビームスキャナを用いる場合には、光源110からの投光方向の移動は、実施形態1の変形例1における方法と同様の方法で行うことができる。投光および受光のタイミング、およびスキャン動作に伴う露光の繰り返しに関しては、実施形態1の変形例1と同様の動作を適用できる。出力データについては、広がり角の小さい光ビームによるスキャンによって広範囲の測距を行うことに伴う測距時刻のずれに対応するために、出力データに、光ビームの方向ごとに詳細な時刻データを含めてもよい。
【0256】
以上の実施形態においては、3つの露光期間で受光データをそれぞれ取得する間接ToF法による動作を主に説明したが、本開示は、そのような動作に限定されない。例えば、露光期間の数は、3つに限らず、2つまたは4つ以上でもよい。
【産業上の利用可能性】
【0257】
本開示の技術は、測距を行う装置またはシステムに広く利用可能である。例えば、本開示の技術は、LiDAR(Light Detection and Ranging)システムの構成要素として使用され得る。
【符号の説明】
【0258】
100 測距装置
110 光源
120 受光装置
121 イメージセンサ
122 受光素子
123 スイッチ
124 電荷蓄積部
130 処理回路
150 インターフェース
160 クロック
170 記録媒体
200 車両制御装置
210 インターフェース
230 処理回路
270 記録媒体
240 作動部
図1
図2
図3
図4A
図4B
図5
図6
図7A
図7B
図8
図9
図10
図11A
図11B
図11C
図12
図13
図14A
図14B
図15A
図15B
図16A
図16B
図17A
図17B
図18
図19
図20A
図20B
図21A
図21B
図22A
図22B
図23
図24
図25
図26
図27
図28
図29A
図29B
図30
図31
図32
図33A
図33B
図34