(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-21
(45)【発行日】2024-11-29
(54)【発明の名称】測距装置および測距システム
(51)【国際特許分類】
G01S 7/484 20060101AFI20241122BHJP
G01S 17/10 20200101ALI20241122BHJP
G02B 26/08 20060101ALN20241122BHJP
【FI】
G01S7/484
G01S17/10
G02B26/08 E
(21)【出願番号】P 2022532463
(86)(22)【出願日】2021-05-28
(86)【国際出願番号】 JP2021020537
(87)【国際公開番号】W WO2021256226
(87)【国際公開日】2021-12-23
【審査請求日】2024-03-11
(31)【優先権主張番号】P 2020106358
(32)【優先日】2020-06-19
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】314012076
【氏名又は名称】パナソニックIPマネジメント株式会社
(74)【代理人】
【識別番号】100101683
【氏名又は名称】奥田 誠司
(74)【代理人】
【識別番号】100155000
【氏名又は名称】喜多 修市
(74)【代理人】
【識別番号】100188813
【氏名又は名称】川喜田 徹
(74)【代理人】
【識別番号】100184985
【氏名又は名称】田中 悠
(74)【代理人】
【識別番号】100202197
【氏名又は名称】村瀬 成康
(74)【代理人】
【識別番号】100218981
【氏名又は名称】武田 寛之
(72)【発明者】
【氏名】加藤 弓子
(72)【発明者】
【氏名】鳴海 建治
(72)【発明者】
【氏名】稲田 安寿
【審査官】九鬼 一慶
(56)【参考文献】
【文献】特表2019-535014(JP,A)
【文献】米国特許出願公開第2020/0079364(US,A1)
【文献】特開2015-225615(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01S 7/48 - 7/51
G01S 17/00 -17/95
G02B 26/08
(57)【特許請求の範囲】
【請求項1】
測距範囲が隣り合うまたは部分的に重なる2つ以上の測距装置を含むシステムにおける測距装置であって、
光の照射範囲を変化させることが可能な発光装置と、
前記発光装置から出射された前記光が対象物で反射されることによって生じた反射光を検出して検出信号を出力する受光装置と、
前記システムにおける他の測距装置と通信する機能を備え、前記検出信号に基づいて、前記対象物までの距離を計算し、前記対象物の位置を決定する処理回路と、
を備え、
前記処理回路は、
決定された前記対象物の位置に基づき、前記他の測距装置が出射すべき光の照射範囲を規定する第1設定データを生成して前記他の測距装置に送信し、
前記他の測距装置から、前記発光装置が出射すべき光の照射範囲を規定する第2設定データを受信したとき、前記第2設定データに従って前記発光装置の発光を制御する、
測距装置。
【請求項2】
前記発光装置は、出射する光の広がり角を変化させることが可能であり、
前記第2設定データは、前記発光装置が出射すべき光の広がり角を規定する、
請求項1に記載の測距装置。
【請求項3】
前記第1設定データは、前記他の測距装置が出射すべき光の広がり角を規定する、請求項1または2に記載の測距装置。
【請求項4】
前記第1設定データは、前記処理回路によって距離が計算された前記対象物の位置を示す情報を含む、請求項1から3のいずれかに記載の測距装置。
【請求項5】
前記第2設定データは、測距対象の対象物の位置を示す情報を含み、
前記処理回路は、前記測距対象の対象物に光が照射されるように、前記発光装置の発光を制御する、
請求項1から4のいずれかに記載の測距装置。
【請求項6】
前記発光装置は、光ビームと拡散光とを切り替えて出射すること、および、前記光ビームの方向を変化させることが可能であり、
前記第2設定データは、前記発光装置が出射すべき光が前記光ビームであるか前記拡散光であるかを示す情報と、前記発光装置が出射すべき光が前記光ビームである場合に前記光ビームの方向を規定する情報とを含み、
前記処理回路は、前記第2設定データに従って、前記発光装置に、前記拡散光を出射させるか、前記光ビームを規定された前記方向に出射させる、
請求項1から5のいずれかに記載の測距装置。
【請求項7】
前記第1設定データは、前記他の測距装置が出射すべき光が光ビームであるか拡散光であるかを示す情報と、前記他の測距装置が出射すべき光が前記光ビームである場合に前記光ビームの方向を規定する情報とを含む、請求項1から6のいずれかに記載の測距装置。
【請求項8】
前記処理回路は、前記他の測距装置の前記測距範囲を規定するデータと、決定された前記対象物の位置の経時変化とに基づき、前記対象物が前記他の測距装置の前記測距範囲内に入ると判断したとき、前記第1設定データを生成して前記他の測距装置に送信する、請求項1から7のいずれかに記載の測距装置。
【請求項9】
前記他の測距装置の前記測距範囲は、光ビームによって測距される第1範囲と、拡散光によって測距される第2範囲とを含み、
前記処理回路は、
前記第1範囲および前記第2範囲を規定するデータと、決定された前記対象物の位置の経時変化とに基づき、前記対象物が前記第1範囲または前記第2範囲に入るか否かを判断し、
前記対象物が前記第1範囲に入ると判断したとき、前記他の測距装置が出射すべき光が光ビームであることを示す情報、および前記光ビームの方向を規定する情報を含む前記第1設定データを生成して前記他の測距装置に送信し、
前記対象物が前記第2範囲に入ると判断したとき、前記他の測距装置が出射すべき光が拡散光であることを示す情報を含む前記第1設定データを生成して前記他の測距装置に送信する、
請求項1から8のいずれかに記載の測距装置。
【請求項10】
前記処理回路は、前記発光装置に光を出射させ、前記受光装置に前記検出信号を出力させる動作を周期的に実行し、
前記検出信号に基づいて決定される前記対象物の位置が、次の周期において、前記他の測距装置の前記測距範囲内に入ると予測した場合に、前記第1設定データを生成して前記他の測距装置に送信する、
請求項1から9のいずれかに記載の測距装置。
【請求項11】
前記処理回路は、
前記第1設定データを、前記システムに含まれる処理装置を介して前記他の測距装置に送信し、
前記第2設定データを、前記処理装置を介して前記他の測距装置から受信する、
請求項1から10のいずれかに記載の測距装置。
【請求項12】
測距範囲が隣り合うまたは部分的に重なる2つ以上の測距装置を含むシステムであって、
前記2つ以上の測距装置の各々は、
光の照射範囲を変化させることが可能な発光装置と、
前記発光装置から出射された前記光が対象物で反射されることによって生じた反射光を検出して検出信号を出力する受光装置と、
前記システムにおける他の測距装置と通信する機能を備え、前記検出信号に基づいて、前記対象物までの距離を計算し、前記対象物の位置を決定する処理回路と、
を備え、
前記処理回路は、
決定された前記対象物の位置に基づき、前記他の測距装置が出射すべき光の照射範囲を規定する第1設定データを生成して前記他の測距装置に送信し、
前記他の測距装置から、前記発光装置が出射すべき光の照射範囲を規定する第2設定データを受信したとき、前記第2設定データに従って前記発光装置の発光を制御する、
システム。
【請求項13】
測距範囲が隣り合うまたは部分的に重なる2つ以上の測距装置を含むシステムにおける測距装置のコンピュータによって実行される方法であって、
光の照射範囲を変化させることが可能な発光装置に、前記光を出射させることと、
受光装置に、前記発光装置から出射された前記光が対象物で反射されることによって生じた反射光を検出させて検出信号を出力させることと、
前記検出信号に基づいて、前記対象物までの距離を計算し、前記対象物の位置を決定することと、
決定された前記対象物の位置に基づき、前記システムにおける他の測距装置が出射すべき光の照射範囲を規定する第1設定データを生成して前記他の測距装置に送信することと、
前記他の測距装置から、前記発光装置が出射すべき光の照射範囲を規定する第2設定データを受信したとき、前記第2設定データに従って前記発光装置の発光を制御することと、
を含む方法。
【請求項14】
測距範囲が隣り合うまたは部分的に重なる2つ以上の測距装置を含むシステムにおける測距装置のコンピュータによって実行されるコンピュータプログラムであって、
前記コンピュータに、
光の照射範囲を変化させることが可能な発光装置に、前記光を出射させることと、
受光装置に、前記発光装置から出射された前記光が対象物で反射されることによって生じた反射光を検出させて検出信号を出力させることと、
前記検出信号に基づいて、前記対象物までの距離を計算し、前記対象物の位置を決定することと、
決定された前記対象物の位置に基づき、前記システムにおける他の測距装置が出射すべき光の照射範囲を規定する第1設定データを生成して前記他の測距装置に送信することと、
前記他の測距装置から、前記発光装置が出射すべき光の照射範囲を規定する第2設定データを受信したとき、前記第2設定データに従って前記発光装置の発光を制御することと、
を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、測距装置および測距システムに関する。
【背景技術】
【0002】
自動運転車および自走式ロボットのような自走システムにおいて、他の車両または人等との衝突を回避することが重要である。そのために、カメラまたは測距装置による外部環境のセンシングを行うシステムが利用されている。
【0003】
測距に関しては、空間中に存在する1つ以上の物体までの距離を計測する種々のデバイスが提案されている。例えば、特許文献1から3は、ToF(Time of Flight)技術を利用して物体までの距離を計測するシステムを開示している。
【0004】
特許文献1は、光ビームで空間をスキャンし、物体からの反射光を検出することにより、物体までの距離を計測するシステムを開示している。このシステムは、複数のフレーム期間の各々において、光ビームの方向を変化させながら、イメージセンサにおける1つ以上の受光素子に、反射光を逐次検出させる。このような動作により、対象シーン全体の距離情報の取得に要する時間を短縮することに成功している。
【0005】
特許文献2は、複数回の全方位の測距により、自車の移動方向とは異なる方向に移動する横断物体を検出する方法を開示している。光源からの光パルスの強度または出射回数を増加させることにより、信号に対するノイズの比率を低減すること等が開示されている。
【0006】
特許文献3は、遠方の対象物についての詳細な距離情報を得るために、第1の測距装置とは別に、遠方の対象物に光ビームを出射する第2の測距装置を設けることを開示している。
【先行技術文献】
【特許文献】
【0007】
【文献】特開2018-124271号公報
【文献】特開2009-217680号公報
【文献】特開2018-049014号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
本開示は、複数の測距装置を用いた可動物体の測距を効率化するための技術を提供する。
【課題を解決するための手段】
【0009】
本開示の一態様に係る測距装置は、測距範囲が隣り合うまたは部分的に重なる2つ以上の測距装置を含むシステムにおいて用いられる。前記測距装置は、光の照射範囲を変化させることが可能な発光装置と、前記発光装置から出射された前記光が対象物で反射されることによって生じた反射光を検出して検出信号を出力する受光装置と、前記システムにおける他の測距装置と通信する機能を備え、前記検出信号に基づいて、前記対象物までの距離を計算し、前記対象物の位置を決定する処理回路と、を備える。前記処理回路は、決定された前記対象物の位置に基づき、前記他の測距装置が出射すべき光の照射範囲を規定する第1設定データを生成して前記他の測距装置に送信し、前記他の測距装置から、前記発光装置が出射すべき光の照射範囲を規定する第2設定データを受信したとき、前記第2設定データに従って前記発光装置の発光を制御する。
【0010】
本開示の包括的または具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能な記録ディスク等の記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。コンピュータ読み取り可能な記録媒体は、例えばCD-ROM(Compact Disc‐Read Only Memory)等の不揮発性の記録媒体を含み得る。装置は、1つ以上の装置で構成されてもよい。装置が2つ以上の装置で構成される場合、当該2つ以上の装置は、1つの機器内に配置されてもよく、分離した2つ以上の機器内に分かれて配置されてもよい。本明細書および特許請求の範囲では、「装置」とは、1つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
【発明の効果】
【0011】
本開示の一態様によれば、複数の測距装置を用いた可動物体の距離情報をより効率的に取得することができる。
【図面の簡単な説明】
【0012】
【
図1】実施形態1における測距システムの概略構成を模式的に示すブロック図である。
【
図3】測距装置の構成の一例を示すブロック図である。
【
図4A】光ビームおよびフラッシュ光のそれぞれの照射範囲の例を模式的に示す図である。
【
図4B】光ビームおよびフラッシュ光のそれぞれの照射範囲の例を模式的に示す図である。
【
図5A】間接ToF法による測距の例を示す図である。
【
図5B】間接ToF法による測距の他の例を示す図である。
【
図6A】記憶媒体が記憶するデータの例を示す図である。
【
図6B】処理の過程で記憶媒体に記録されるデータの例を示す図である。
【
図6C】隣り合う測距装置の間で送受信されるデータの形式の例を示す図である。
【
図7】記憶装置が記憶する情報の一例を示す図である。
【
図8】処理装置の動作の一例を示すフローチャートである。
【
図9】各測距装置の動作の一例を示すフローチャートである。
【
図10A】1つの測距装置の視野範囲内でトラッキング対象の対象物が移動する状況の一例を示す図である。
【
図10B】1つの測距装置の視野範囲内でトラッキング対象の対象物が移動する状況の他の例を示す図である。
【
図10C】隣り合う2つの測距装置の間で、トラッキング情報が受け渡される状況の例を示す図である。
【
図10D】隣り合う2つの測距装置の間で、トラッキング情報が受け渡される状況の他の例を示す図である。
【
図11】各測距装置の動作の他の例を示すフローチャートである。
【
図12】実施形態2における測距システムの構成を示すブロック図である。
【
図13】実施形態2における処理装置の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【0013】
本開示において、回路、ユニット、装置、部材もしくは部の全部または一部、またはブロック図における機能ブロックの全部または一部は、例えば、半導体装置、半導体集積回路(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も同じ目的で使うことができる。
【0014】
さらに、回路、ユニット、装置、部材または部の全部または一部の機能または動作は、ソフトウェア処理によって実行することが可能である。この場合、ソフトウェアは1つまたは複数のROM、光学ディスク、ハードディスクドライブなどの非一時的記録媒体に記録され、ソフトウェアがプロセッサによって実行されたときに、そのソフトウェアで特定された機能がプロセッサおよび周辺装置によって実行される。システムまたは装置は、ソフトウェアが記録されている1つまたは複数の非一時的記録媒体、プロセッサ、および必要とされるハードウェアデバイス、例えばインターフェースを備えていてもよい。
【0015】
本開示の実施形態を説明する前に、本開示の基礎となった知見を説明する。
【0016】
従来の測距装置では、シーン中の広い範囲に点在する複数の物体までの距離を計測するために、例えばラスタースキャンによってシーン内をくまなく光ビームで照射する方法が用いられている。そのような方法では、物体が存在しない領域にも光ビームが照射され、かつ光ビームの出射順序があらかじめ決まっている。そのため、シーン内に例えば危険な物体または重要な物体が存在する場合であっても、その物体に優先的に光ビームを照射することができない。スキャンの光出射の順序に関わらず特定の方向に優先的に光ビームを照射するためには、例えば特許文献3に開示されているように、優先される方向についての測距を行う測距装置を追加する方法がある。
【0017】
特許文献3に開示された方法では、車両の全周にわたって測距を行う第1のLIDAR(Light Detection and Ranging)に加えて、より遠方をより高い分解能で測距可能な第2のLIDARが用いられる。第1のLIDARでは十分に識別できない遠方の物体が、第2のLIDARによって高い分解能で識別される。この構成では、車両のコントローラが、第1のLIDARから出力されたデータに基づいて物体を検出し、その物体に光が照射されるように、第2のLIDARからの光ビームの方向を調整する。特許文献3のシステムのように、コントローラが複数の測距装置の光の出射方向を決定して制御する構成においては、コントローラの演算負荷が大きく、コントローラと各測距装置との間の通信に遅延が生じ得る。このため、例えば複数の測距装置の測距範囲をまたいで高速で移動する物体を高い精度で測距することができない場合がある。
【0018】
上記の課題を解決するため、本開示の実施形態では、複数の測距装置の間で光の照射範囲を規定する設定データを送受信し、各測距装置が、受信した設定データに基づいて適応的に光を出射する。このような構成により、複数の測距装置による対象物の測距をより効率化することができる。
【0019】
以下、本開示の実施形態の概要を説明する。
【0020】
本開示の一実施形態による測距装置は、測距範囲が隣り合うまたは部分的に重なる2つ以上の測距装置を含むシステムにおいて用いられる。前記測距装置は、光の照射範囲を変化させることが可能な発光装置と、前記発光装置から出射された前記光が対象物で反射されることによって生じた反射光を検出して検出信号を出力する受光装置と、前記システムにおける他の測距装置と通信する機能を備え、前記検出信号に基づいて、前記対象物までの距離を計算し、前記対象物の位置を決定する処理回路と、を備える。前記処理回路は、決定された前記対象物の位置に基づき、前記他の測距装置が出射すべき光の照射範囲を規定する第1設定データを生成して前記他の測距装置に送信し、前記他の測距装置から、前記発光装置が出射すべき光の照射範囲を規定する第2設定データを受信したとき、前記第2設定データに従って前記発光装置の発光を制御する。
【0021】
ここで、測距装置の「測距範囲」とは、その測距装置が測距することが可能な空間中の範囲を意味する。測距範囲は、3次元空間中で、発光装置から出射された光が到達し、かつ、物体が存在する場合にその物体からの反射光が受光装置によって検出され得る範囲である。以下の説明において、測距範囲を「視野範囲」と称することもある。「測距範囲が隣り合う」とは、それらの測距範囲が空間的に連続しているか、あるいは、それらの測距範囲が、各測距範囲の大きさに比べて小さいギャップを隔てて近接していることを意味する。光の「照射範囲」とは、その光によって照射される空間中の領域を意味する。発光装置は、光ビームの出射方向を変化させることが可能であってもよい。その場合、光ビームの出射方向の変化に応じて照射範囲が変化する。発光装置はまた、出射する光の広がりの程度を変化させることが可能であってもよい。その場合、出射光の広がりの程度の変化に応じて照射範囲が変化する。第1設定データおよび第2設定データの各々は、例えば、発光装置から出射される光の出射方向、広がりの程度、および照射されるべき対象物の位置もしくは範囲からなる群から選択される少なくとも1つを規定する情報を含み得る。そのような情報により、光の照射範囲が規定され得る。
【0022】
上記の構成によれば、測距範囲が隣り合うまたは部分的に重なる2つ以上の測距装置の間で、光の照射範囲を規定する設定データが送受信される。設定データが規定する光の照射範囲は、例えば測距の対象となる重要な対象物が存在する範囲であり得る。各測距装置は、受信した設定データに従って、規定された照射範囲を光で照射する。これにより、複数の測距装置の測距範囲にまたがって移動する対象物の距離データを効率的に取得することができる。
【0023】
前記発光装置は、出射する光の広がり角を変化させることが可能であってもよい。例えば、前記発光装置は、相対的に広がり角の小さい光ビームと、相対的に広がり角の大きい拡散光とを出射できるように構成されていてもよい。あるいは、前記発光装置は、広がり角の異なる複数種類の光ビームを出射できるように構成されていてもよい。その場合、前記第2設定データは、前記発光装置が出射すべき光の広がり角を規定していてもよい。同様に、前記第1設定データは、前記発光装置が出射すべき光の広がり角を規定していてもよい。
【0024】
前記第1設定データは、前記処理回路によって距離が計算された前記対象物の位置を示す情報を含んでいてもよい。同様に、前記第2設定データは、測距対象の対象物の位置を示す情報を含んでいてもよい。その場合、前記処理回路は、前記測距対象の対象物に光が照射されるように、前記発光装置の発光を制御する。
【0025】
前記発光装置は、光ビームと拡散光とを切り替えて出射すること、および、前記光ビームの方向を変化させることが可能であってもよい。その場合、前記第2設定データは、前記発光装置が出射すべき光が前記光ビームであるか前記拡散光であるかを示す情報と、前記発光装置が出射すべき光が前記光ビームである場合に前記光ビームの方向を規定する情報とを含んでいてもよい。前記処理回路は、前記第2設定データに従って、前記発光装置に、前記拡散光を出射させるか、前記光ビームを規定された前記方向に出射させるように構成され得る。同様に、前記第1設定データは、前記他の測距装置が出射すべき光が光ビームであるか拡散光であるかを示す情報と、前記他の測距装置が出射すべき光が前記光ビームである場合に前記光ビームの方向を規定する情報とを含んでいてもよい。
【0026】
前記処理回路は、前記他の測距装置の前記測距範囲を規定するデータと、決定された前記対象物の位置の経時変化とに基づき、前記対象物が前記他の測距装置の前記測距範囲内に入ると判断したとき、前記第1設定データを生成して前記他の測距装置に送信するように構成されていてもよい。このような動作により、前記対象物が前記他の測距装置の測距範囲内に入ると予測される適切なタイミングで、第1設定データを前記他の測距装置に送信することができるため、動作の効率を高めることができる。
【0027】
各測距装置の前記測距範囲は、光ビームによって測距される第1範囲と、拡散光によって測距される第2範囲とを含み得る。第1範囲は、光ビームによってスキャンされ得る空間中の範囲であり得る。前記処理回路は、前記第1範囲および前記第2範囲を規定するデータと、決定された前記対象物の位置の経時変化とに基づき、前記対象物が前記第1範囲または前記第2範囲に入るか否かを判断し、前記対象物が前記第1範囲に入ると判断したとき、前記他の測距装置が出射すべき光が光ビームであることを示す情報、および前記光ビームの方向を規定する情報を含む前記第1設定データを生成して前記他の測距装置に送信し、前記対象物が前記第2範囲に入ると判断したとき、前記他の測距装置が出射すべき光が拡散光であることを示す情報を含む前記第1設定データを生成して前記他の測距装置に送信するように構成されていてもよい。
【0028】
前記処理回路は、前記発光装置に光を出射させ、前記受光装置に前記検出信号を出力させる動作を周期的に実行し、前記検出信号に基づいて決定される前記対象物の位置が、次の周期において、前記他の測距装置の前記測距範囲内に入ると予測した場合に、前記第1設定データを生成して前記他の測距装置に送信するように構成されていてもよい。
【0029】
前記処理回路は、前記第1設定データを、前記システムに含まれる処理装置を介して前記他の測距装置に送信し、前記第2設定データを、前記処理装置を介して前記他の測距装置から受信するように構成されていてもよい。前記処理装置は、例えば前記システムの全体の動作を制御または管理するサーバコンピュータであり得る。前記処理装置は、前記第1設定データおよび前記第2設定データを単に中継するだけでもよい。あるいは、前記処理装置は、前記第1設定データおよび前記第2設定データに、例えば座標変換などの必要な処理を行った上で中継してもよい。このように、複数の測距装置の間の通信は、他の装置を介して行われてもよい。
【0030】
本開示の他の実施形態によるシステムは、測距範囲が隣り合うまたは部分的に重なる2つ以上の測距装置を含む。前記2つ以上の測距装置の各々は、光の照射範囲を変化させることが可能な発光装置と、前記発光装置から出射された前記光が対象物で反射されることによって生じた反射光を検出して検出信号を出力する受光装置と、前記システムにおける他の測距装置と通信する機能を備え、前記検出信号に基づいて、前記対象物までの距離を計算し、前記対象物の位置を決定する処理回路と、を備える。前記処理回路は、決定された前記対象物の位置に基づき、前記他の測距装置が出射すべき光の照射範囲を規定する第1設定データを生成して前記他の測距装置に送信し、前記他の測距装置から、前記発光装置が出射すべき光の照射範囲を規定する第2設定データを受信したとき、前記第2設定データに従って前記発光装置の発光を制御する。
【0031】
本開示のさらに他の実施形態による方法は、測距範囲が隣り合うまたは部分的に重なる2つ以上の測距装置を含むシステムにおける測距装置のコンピュータによって実行される。前記方法は、光の照射範囲を変化させることが可能な発光装置に、前記光を出射させることと、受光装置に、前記発光装置から出射された前記光が対象物で反射されることによって生じた反射光を検出させて検出信号を出力させることと、前記検出信号に基づいて、前記対象物までの距離を計算し、前記対象物の位置を決定することと、決定された前記対象物の位置に基づき、前記システムにおける他の測距装置が出射すべき光の照射範囲を規定する第1設定データを生成して前記他の測距装置に送信することと、前記他の測距装置から、前記発光装置が出射すべき光の照射範囲を規定する第2設定データを受信したとき、前記第2設定データに従って前記発光装置の発光を制御することと、を含む。
【0032】
本開示のさらに他の実施形態によるコンピュータプログラムは、測距範囲が隣り合うまたは部分的に重なる2つ以上の測距装置を含むシステムにおける測距装置のコンピュータによって実行される。前記コンピュータプログラムは、前記コンピュータに、光の照射範囲を変化させることが可能な発光装置に、前記光を出射させることと、受光装置に、前記発光装置から出射された前記光が対象物で反射されることによって生じた反射光を検出させて検出信号を出力させることと、前記検出信号に基づいて、前記対象物までの距離を計算し、前記対象物の位置を決定することと、決定された前記対象物の位置に基づき、前記システムにおける他の測距装置が出射すべき光の照射範囲を規定する第1設定データを生成して前記他の測距装置に送信することと、前記他の測距装置から、前記発光装置が出射すべき光の照射範囲を規定する第2設定データを受信したとき、前記第2設定データに従って前記発光装置の発光を制御することと、を実行させる。
【0033】
以下、本開示の例示的な実施形態を説明する。なお、以下で説明する実施形態は、いずれも包括的又は具体的な例を示すものである。以下の実施形態で示される数値、形状、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、各図は模式図であり、必ずしも厳密に図示されたものではない。さらに、各図において、実質的に同一の構成要素に対しては同一の符号を付しており、重複する説明は省略又は簡略化されることがある。
【0034】
(実施形態1)
本開示の例示的な第1の実施形態に係る測距システムを説明する。
【0035】
[1-1 測距システムの構成]
図1は、本実施形態における測距システム10の概略構成を模式的に示すブロック図である。測距システム10は、複数の測距装置100と、記憶装置200と、処理装置300とを備える。
図1には、測距システム10が搭載される移動体が備える制御装置も示されている。本実施形態では、制御装置は測距システム10の外部の要素であるが、制御装置が測距システム10に含まれていてもよい。
【0036】
各測距装置100は、隣接する他の測距装置100と通信することができる。各測距装置100はまた、処理装置300と通信することもできる。通信は無線でも有線でもよく、特定の通信方式に限定されない。
【0037】
図2は、複数の測距装置100の配置の例を示す図である。
図2に示すように、複数の測距装置100は、自動車などの移動体50に搭載され得る。複数の測距装置100は、自動車以外にも、例えば移動ロボットなどの他の種類の移動体に取り付けられていてもよい。各測距装置100は、移動体50の外側に取り付けられ、移動体50の周囲の環境のセンシングに用いられ得る。記憶装置200および処理装置300は、移動体50の内部または外部に配置され得る。
【0038】
複数の測距装置100は、測距可能な範囲(本明細書において、「測距範囲」と称する。)がそれぞれ異なる。複数の測距装置100のうちの隣り合う任意の2つの測距装置100の測距範囲は、互いに隣り合う、あるいは重なる。
図2に示す例では、5個の測距装置100によって移動体50の周囲360°の範囲の全体を測距することができる。
【0039】
図3は、測距装置100の構成の一例を示すブロック図である。測距装置100は、発光装置110と、受光装置120と、記憶媒体140と、処理回路180とを備える。処理回路180は、プロセッサ130と、制御回路150と、通信回路160とを備える。通信回路160は、受信回路162と、送信回路164とを含む。
【0040】
本実施形態における発光装置110は、広がり角が小さく照射範囲が狭い光ビームと、広がり角が大きく照射範囲が広い拡散光であるフラッシュ光とを出射することができる。発光装置110は、光ビームを出射する光源と、フラッシュ光を出射する光源とを個別に備えていてもよい。あるいは、発光装置110は、光ビームおよびフラッシュ光の両方を出射することが可能な1つの光源を備えていてもよい。発光装置110は、出射光の広がり角を変化させることにより、広がり角の異なる複数種類の光ビームと、フラッシュ光とを出射できるように構成されていてもよい。
【0041】
図4Aおよび
図4Bは、光ビームおよびフラッシュ光のそれぞれの照射範囲の例を模式的に示す図である。
図4Aおよび
図4Bには、自動車である移動体50の前方中央に取り付けられた測距装置100の発光装置110から照射される光の例が示されている。発光装置110は、フラッシュ光L1と、光ビームL2とを切り替えて出射することができる。フラッシュ光L1は、測距装置100の前方を広く照射する拡散光であるため、到達距離は相対的に短い。これに対し、光ビームは、光線束が絞られているため、相対的に遠くまで到達する。
【0042】
図4Aおよび
図4Bでは、フラッシュ光L1と光ビームL2の光源の位置が同一の点として示されているが、これらの光源の位置が異なっていてもよい。すなわち、発光装置110は、互いに離れた2つの光源から、フラッシュ光L1および光ビームL2をそれぞれ出射してもよい。ただし、フラッシュ光L1および光ビームL2は、これらの光の照射によって生じた対象物からの反射光を受光装置120が受光可能な角度で照射される。
図4Aおよび
図4Bに示すように、フラッシュ光L1の照射範囲と光ビームL2の照射範囲とは、互いに重複する。発光装置110は、受光装置120が反射光を受光可能な範囲内で、光ビームL2を任意の方向に出射することができる。出射方向を逐次変更するスキャニングにより、
図4Aに破線枠で示されているフラッシュ光L1の視野の範囲と同等の範囲の測距が可能である。
【0043】
発光装置110は、フラッシュ光を発する光源と、例えばレーザなどの光ビームを発する光源と、少なくとも1つの可動ミラー、例えばMEMSミラーとを備え得る。出射された光ビームは、可動ミラーによって反射され、シーン中の所定の領域に向かう。制御回路150は、可動ミラーを駆動することにより、第2の光源から出射された光ビームの方向を変化させることができる。これにより、光ビームによるスキャンが可能である。
【0044】
可動ミラーを有する発光装置とは異なる構造によって光の出射方向を変化させることが可能な光源を用いてもよい。例えば、特許文献1に開示されているような、反射型導波路を利用した発光デバイスを用いてもよい。あるいは、アンテナアレイによって各アンテナから出力される光の位相を調節することで、アレイ全体の光の方向を変化させる発光デバイスを用いてもよい。
【0045】
受光装置120は、発光装置110から出射された光が対象物で反射されることによって生じた反射光を検出して検出信号を出力する。受光装置120は、例えば2次元的に配列された複数の受光素子を備えるイメージセンサであり得る。測距装置100は、例えばToF技術を利用して対象物までの距離を計測することができる。例えば受光素子ごとに、光の飛行時間(Time of Fright:ToF)、すなわち光が出射してから受光されるまでの時間を計測し、その時間と光速度から距離を計算することができる。ToF技術には、直接ToFおよび間接ToFなどの方式がある。測距装置100は、いずれの方式で距離を計測してもよい。受光装置120は、イメージセンサに限定されない。例えば、単一の受光素子または少数の受光素子のアレイを備えた受光装置を用いてもよい。また、測距の方式は直接ToFおよび間接ToFに限定されず、例えばFMCW(Frequency-Modulated Continuous-Wave)方式を用いてもよい。以下の説明では、特に断らない限り、受光装置120は、2次元的に配列された複数の受光素子を備えるイメージセンサであり、間接ToF方式による測距を行うものとする。
【0046】
イメージセンサは、例えばCCD(Charge-Coupled Device)センサ、CMOS(Complementary Metal Oxide Semiconductor)センサ、または赤外線アレイセンサであり得る。各受光素子は、例えばフォトダイオードなどの光電変換素子と、1つ以上の電荷蓄積部とを含む。光電変換によって生じた電荷が、露光期間の間、電荷蓄積部に蓄積される。電荷蓄積部に蓄積された電荷は、露光期間終了後、出力される。このようにして、各受光素子は、露光期間の間に受けた光の量に応じた電気信号を出力する。この電気信号を「検出信号」と称することがある。イメージセンサは、モノクロタイプの撮像素子であってもよいし、カラータイプの撮像素子であってもよい。例えば、R/G/B、R/G/B/IR、またはR/G/B/Wのフィルタを有するカラータイプの撮像素子を用いてもよい。イメージセンサは、可視の波長範囲に限らず、例えば紫外、近赤外、中赤外、遠赤外などの波長範囲に検出感度を有していてもよい。イメージセンサは、SPAD(Single Photon Avalanche Diode)を利用したセンサであってもよい。イメージセンサは、全画素の露光を一括で行なう電子シャッタ方式、すなわちグローバルシャッタの機構を備え得る。電子シャッタの方式は、行毎に露光を行うローリングシャッタ方式、または光ビームの照射範囲に合わせた一部のエリアのみ露光を行うエリアシャッタ方式であってもよい。
【0047】
イメージセンサは、発光装置110からの光の出射タイミングを基準として、開始および終了のタイミングの異なる複数の露光期間のそれぞれにおいて、反射光を受光し、受光量を示す信号を露光期間ごとに出力する。
【0048】
制御回路150は、発光装置110による光の出射方向と出射タイミングとを決定し、発光を指示する制御信号を発光装置110に出力する。さらに、制御回路150は、受光装置120の露光のタイミングを決定し、露光および信号の出力を指示する制御信号を受光装置120に出力する。
【0049】
プロセッサ130は、受光装置120から出力された複数の異なる露光期間に蓄積された電荷を示す信号を取得し、それらの信号に基づき、対象物までの距離を計算する。プロセッサ130は、複数の露光期間にそれぞれ蓄積された電荷の比に基づき、発光装置110から光ビームが出射されてから反射光ビームが受光装置120によって受光されるまでの時間を計算し、当該時間から距離を計算する。このような測距の方式を間接ToF方式という。
【0050】
図5Aは、間接ToF方式における投光タイミング、反射光の到達タイミング、および2回の露光タイミングの例を示す図である。横軸は時間を示している。矩形部分は、投光、反射光の到達、および2回の露光のそれぞれの期間を表している。この例では、簡単のため、1つの光パルスが出射され、その光パルスによって生じた反射光を受ける受光素子が連続で2回露光する場合の例を説明する。
図5Aの(a)は、光源から光が出射するタイミングを示している。T0はパルス幅である。
図5Aの(b)は、光源から出射して物体で反射された光パルスがイメージセンサに到達する期間を示している。Tdは光パルスの飛行時間である。
図5Aの例では、光パルスの時間幅T0よりも短い時間Tdで反射光がイメージセンサに到達している。
図5Aの(c)は、イメージセンサの第1の露光期間を示している。この例では、投光の開始と同時に露光が開始され、投光の終了と同時に露光が終了している。第1の露光期間では、反射光のうち、早期に戻ってきた光が光電変換され、生じた電荷が蓄積される。Q1は、第1の露光期間の間に光電変換された光のエネルギーを表す。このエネルギーQ1は、第1の露光期間の間に蓄積された電荷の量に比例する。
図5Aの(d)は、イメージセンサの第2の露光期間を示している。この例では、第2の露光期間は、投光の終了と同時に開始し、光パルスのパルス幅T0と同一の時間、すなわち第1の露光期間と同一の時間が経過した時点で終了する。Q2は、第2の露光期間の間に光電変換された光のエネルギーを表す。このエネルギーQ2は、第2の露光期間の間に蓄積された電荷の量に比例する。第2の露光期間では、反射光のうち、第1の露光期間が終了した後に到達した光が受光される。第1の露光期間の長さが光パルスのパルス幅T0に等しいことから、第2の露光期間で受光される反射光の時間幅は、飛行時間Tdに等しい。
【0051】
ここで、第1の露光期間の間に受光素子に蓄積される電荷の積分容量をCfd1、第2の露光期間の間に受光素子に蓄積される電荷の積分容量をCfd2、光電流をIph、電荷転送クロック数をNとする。第1の露光期間における受光素子の出力電圧は、以下のVout1で表される。
Vout1=Q1/Cfd1=N×Iph×(T0-Td)/Cfd1
【0052】
第2の露光期間における受光素子の出力電圧は、以下のVout2で表される。
Vout2=Q2/Cfd2=N×Iph×Td/Cfd2
【0053】
図5Aの例では、第1の露光期間の時間長と第2の露光期間の時間長とが等しいため、Cfd1=Cfd2である。従って、Tdは以下の式で表すことができる。
Td={Vout2/(Vout1+Vout2)}×T0
【0054】
光速をC(≒3×108m/s)とすると、装置と物体との距離Lは、以下の式で表される。
L=1/2×C×Td=1/2×C×{Vout2/(Vout1+Vout2)}×T0
【0055】
イメージセンサは、実際には露光期間に蓄積した電荷を出力するため、時間的に連続して2回の露光を行うことができない場合がある。その場合には、例えば
図5Bに示す方法が用いられ得る。
【0056】
図5Bは、連続で2つの露光期間を設けることができない場合の投光と露光、および電荷出力のタイミングを模式的に示す図である。
図5Bの例では、まず、光源が投光を開始すると同時にイメージセンサは露光を開始し、光源が投光を終了すると同時にイメージセンサは露光を終了する。この露光期間は、
図5Aにおける露光期間1に相当する。イメージセンサは、露光直後にこの露光期間で蓄積された電荷を出力する。この電荷量は、受光された光のエネルギーQ1に相当する。次に、光源は再度投光を開始し、1回目と同一の時間T0が経過すると投光を終了する。イメージセンサは、光源が投光を終了すると同時に露光を開始し、第1の露光期間と同一の時間長が経過すると露光を終了する。この露光期間は、
図5Aにおける露光期間2に相当する。イメージセンサは、露光直後にこの露光期間で蓄積された電荷を出力する。この電荷量は、受光された光のエネルギーQ2に相当する。
【0057】
このように、
図5Bの例では、上記の距離計算のための信号を取得するために、光源は投光を2回行い、イメージセンサはそれぞれの投光に対して異なるタイミングで露光する。このようにすることで、2つの露光期間を時間的に連続して設けることができない場合でも、露光期間ごとに電圧を取得できる。このように、露光期間ごとに電荷の出力を行うイメージセンサでは、予め設定された複数の露光期間の各々で蓄積される電荷の情報を得るために、同一条件の光を、設定された露光期間の数と等しい回数だけ投光することになる。
【0058】
なお、実際の測距では、イメージセンサは、光源から出射されて物体で反射された光のみではなく、バックグラウンド光、すなわち太陽光または周辺の照明等の外部からの光を受光し得る。そこで、一般には、光パルスが出射されていない状態でイメージセンサに入射するバックグラウンド光による蓄積電荷を計測するための露光期間が設けられる。バックグランド用の露光期間で計測された電荷量を、光パルスの反射光を受光したときに計測される電荷量から減算することで、光パルスの反射光のみを受光した場合の電荷量を求めることができる。本実施形態では、簡便のため、バックグランド光についての動作の説明を省略する。
【0059】
この例では、間接ToF法による測距を行うが、直接ToF法による測距を行ってもよい。直接ToFによる測距を行う場合、受光装置120は、タイマーカウンタを伴う受光素子を受光面に沿って2次元的に配置したセンサを備える。タイマーカウンタは、露光開始とともに計時を開始し、受光素子が反射光を受光した時点で計時を終了する。このようにして、タイマーカウンタは、受光素子ごとに計時を行い、光の飛行時間を直接計測する。プロセッサ130は、計測された光の飛行時間から、距離を計算する。
【0060】
プロセッサ130は、受光装置120から出力された画素ごとの検出信号を取得し、画素ごとに物体までの距離を計算する。計算結果は、例えば距離の値を画素値とする2次元画像のデータ、すなわち距離画像データとして記録され得る。あるいは、計算結果は、3次元の点群データとして記録されてもよい。点群データは、距離画像における各画素の位置および距離の値から、例えば受光装置120の位置を原点とする3次元座標上の点の座標に変換することによって生成され得る。距離画像における画素位置および画素値のデータ、あるいは点群データにおける座標のデータは、物体の位置を示すデータとして扱われる。プロセッサ130は、生成した距離画像データまたは点群データを、記憶装置200に記録し、処理装置300に送信する。
【0061】
プロセッサ130は、さらに、当該測距装置100によって取得された特定の対象物の位置を示すデータを、当該測距装置100に隣接する測距装置における受光装置に設定された座標系で表されたデータに変換する。以下の説明において、着目する測距装置100を「自測距装置100」と称し、自測距装置100に隣接する測距装置を「隣接測距装置」と称することがある。各測距装置100に隣接する測距装置の数は、本実施形態では2つであるが、1つまたは3つ以上であってもよい。プロセッサ130は、自測距装置100によって測距され、位置が特定された対象物が、隣接する各測距装置によって測距可能であるか否かを判断する。さらに、当該対象物が、隣接する各測距装置によって測距可能である場合には、当該対象物がフラッシュ光で測距可能な位置にあるか、光ビームで測距可能な位置にあるかを計算する。プロセッサ130はまた、隣接測距装置から受信された照明データに基づいて、照明の種類を決定し、照射方向を決定する。この動作の詳細については後述する。
【0062】
記憶媒体140は、ROMおよびRAMなどのメモリを含み、プロセッサ130が実行するコンピュータプログラムを格納する。記憶媒体140はまた、自測距装置100と隣接測距装置との相対位置を示すデータを記憶する。このデータは、自測距装置100の座標系における対象物の位置を、隣接測距装置の座標系における当該対象物の位置に変換する処理において用いられる。
【0063】
図6Aは、記憶媒体140が記憶するデータの例を示す図である。
図6Aに示すように、記憶媒体140は、当該測距装置100に隣接する測距装置のそれぞれについて、原点の位置と、フラッシュ光によって測距可能な範囲と、光ビームによって測距可能な範囲とを、固定された値として記憶する。隣接する測距装置の原点の位置は、例えばその測距装置における受光装置の受光面の中心の位置に設定され得る。隣接する測距装置の原点の位置は、自測距装置100における座標系で表現される。
図6Aの例では、隣接する各測距装置のフラッシュ光および光ビームのそれぞれによる測距範囲は、受光装置120の左上隅および右下隅の2つの画素における最大距離にあたる位置を、自測距装置100に設定された3次元座標系で表現した値として記録される。
【0064】
図6Aに示すデータに代えて、自測距装置100の座標系と隣接測距装置の座標系との間の座標変換を行うための他の形式のデータが記憶媒体140に記録されてもよい。例えば、自測距装置100の座標系から各隣接測距装置の座標系に変換するためのアフィン変換の各パラメータと、各隣接測距装置の座標系で表現された、フラッシュ光による測距範囲および光ビームによる測距範囲とが記録されてもよい。プロセッサ130は、記憶媒体140に記憶されたデータの内容に応じて、自測距装置100の座標系で表現された対象物の位置と、隣接測距装置の座標系で表現されたフラッシュ光の測距範囲および光ビームの測距範囲とを比較可能にするための変換処理を行う。
【0065】
記憶媒体140には、プロセッサ130が処理の過程で生成する各種のデータも記録される。
図6Bは、処理の過程で記憶媒体140に記録されるデータの例を示す図である。この例では、シーン内で検出された1つ以上の対象物の情報が記憶媒体140に記録される。ここで「対象物」は、複数のフレームにわたり測距の対象とされるトラッキング対象を表す。プロセッサ130は、自測距装置100による対象物のトラッキングのために必要な情報と、隣接測距装置に引き渡すための情報とを記憶媒体140に記録する。
図6Bの例では、記憶媒体140は、検出された対象物を識別するための対象物ID、対象物を検出するためのテンプレートを識別するコード、前フレームでの位置、現フレームでの位置、次フレームでの推定位置、次フレームでの照明種類、次フレームでの照射方向、および次フレームでの光の照射範囲を記憶する。照明種類は、使用される光が光ビームであるかフラッシュ光であるかを示すコードによって指定され得る。照射範囲は、光ビームのスキャン範囲を表し、例えば角度で表現され得る。なお、光ビームを出射する光源が、ビームの広がり角を変更できるように構成されている場合は、ビームの広がり角が記録されてもよい。プロセッサ130は、トラッキング対象である対象物の情報を、当該測距装置100で取得された測距データ、あるいは隣接する測距装置から送信されたデータに基づいて生成する。対象物の情報は、フレームごとに更新される。当該測距装置100では対象物のトラッキングが不可能になった場合、すなわち当該測距装置100の視野外すなわち測距範囲外にその対象物が出た場合には、その対象物の情報は消去されてもよい。
【0066】
制御回路150は、プロセッサ130の計算結果に従って、発光装置110から出射される光の種類を決定し、発光装置110の照射方向と照射タイミングとを決定する。制御回路150はまた、発光装置110の照射タイミングに同期するように、受光装置120の露光タイミングを調整する。これにより、制御回路150は測距装置100の測距動作を制御する。なお、プロセッサ130と制御回路150の機能は1つの回路に統合されていてもよい。
【0067】
通信回路160は、他の測距装置および処理装置300と通信するための回路である。通信回路160は、任意の通信規格に準拠した方法で信号の送信および受信を行う。通信回路160は、無線および有線のいずれの方法で通信を行ってもよい。通信回路160は、受信回路162および送信回路164を含む。
【0068】
受信回路162は、自測距装置100に隣接する測距装置から送信される対象物の位置情報と照明情報とを受信する。
【0069】
送信回路164は、プロセッサ130が生成した距離画像データまたは点群データを、処理装置300に送信する。送信回路164はまた、プロセッサ130によって位置が決定された対象物の、隣接測距装置の座標系での位置情報と、その位置に応じた照明種類および照明方向の情報とを、隣接測距装置に送信する。
【0070】
図6Cは、隣り合う測距装置100の間で送受信される設定データの形式の例を示す図である。設定データは、送信先の測距装置の発光装置110が出射すべき光の照射範囲を規定する。本実施形態では、設定データは、送信先の測距装置を識別する送信先IDと、対象物の数を示す情報と、記憶媒体140に記録された対象物ごとの情報とを含む。
図6Cの例では、対象物ごとに、対象物を識別するID、対象物を検出するためのテンプレートを指定するコード、前フレームでの位置、現フレームでの位置、次フレームでの位置、照明種類、ビームの照射方向、およびビームのスキャン範囲のデータが送信される。なお、ビームの照射方向と次フレームでの対象物の位置とは、同等のデータであるといえるため、一方のデータを省略してもよい。照明に関する送信データは、隣接する測距装置が出射可能な照明の種類および調整可能な項目(例えばビームの広がり角等)に合わせて調整され得る。前フレーム、現フレーム、および次フレームにおける対象物の位置のデータは、例えば3次元の座標値として記録および送信される。これに代えて、対象物の位置のデータは、2次元の座標値と距離の値との組み合わせして記録および送信されてもよい。
図6Cに示すデータは、トラッキングすべき対象物の情報(すなわち「トラッキング情報」)を含む。以下の説明において、このデータを「トラッキングデータ」と称することがある。
【0071】
記憶装置200は、複数の測距装置100の設置位置と角度の情報を記憶する。
図7は、記憶装置200が記憶する情報の一例を示す図である。この例では、記憶装置200は、測距装置100ごとに、その設置位置と設置角度と補正値とを記憶する。設置位置は、測距システム10に設定された3次元座標系における点として表され得る。3次元座標系の原点は、例えば測距システム10が設置された移動体等の装置または物体の重心位置等の特定点に設定され得る。設置角度は、例えば、測距装置100が備える受光装置120の受光面の法線方向を、上記の3次元座標系で表現したベクトルとして表され得る。補正値は、例えば測距装置100ごとの発光装置110の出力の差に起因して生じる測距範囲のずれを補正するための値である。補正値は、例えば、製造時の取り付け誤差等に起因するセンサの位置または向きのずれによる座標のずれを補正するために用いられる。
図7の例では、一例として、x、y、z方向の座標の補正値が記録される。座標だけでなく、角度の補正値が記録されてもよい。
【0072】
処理装置300は、複数の測距装置100と有線または無線による通信を行い、各測距装置100から出力されたデータを処理するコンピュータである。処理装置300は、各測距装置100から逐次出力される距離画像データまたは点群データを、測距システム10全体で統一された3次元座標系における位置データに変換する。処理装置300は、記憶装置200に記憶された各測距装置100の設置位置と設置角度などの測距装置100ごとの特性を示す情報に基づいて、受信したデータを変換する。
【0073】
本実施形態では、各測距装置100に設定された座標系で表現されたデータを、測距システム10全体で統一された3次元座標系で表現されたデータに変換する処理が処理装置300によって実行される。ただし本開示はそのような構成に限定されない。例えば、各測距装置100におけるプロセッサ130が、自測距装置100の座標系から測距システム10全体で統一された座標系へのデータの変換を行い、変換後のデータを処理装置300に送信してもよい。その場合、各測距装置100における記憶媒体140は、座標変換を行うために必要なデータも記憶する。例えば、測距システム10全体で統一された座標系での自測距装置100の位置および向きを示すデータが記憶媒体140に記録され得る。自測距装置100の位置は、例えば受光装置120の受光面の中心位置の座標で表され得る。自測距装置100の向きは、例えば受光装置120の受光面の法線方向のベクトルで表され得る。
【0074】
[1-2 測距システムの動作]
[1-2-1 処理装置の動作]
次に、処理装置300の動作を説明する。
【0075】
図8は、処理装置300の動作を示すフローチャートである。処理装置300は、
図8に示すステップS1100からS1700の動作を実行する。以下、各ステップの動作を説明する。
【0076】
(ステップS1100)
処理装置300は、複数の測距装置100のうちの1つ以上の測距装置100から、距離データが入力されたか否かを判断する。ここで距離データは、前述のように、距離画像データまたは3次元点群データとして送信され得る。測距装置100からの入力がある場合、ステップS1200に進む。測距装置100からの入力がない場合、ステップS1100を繰り返す。
【0077】
(ステップS1200)
処理装置300は、ステップS1100において入力されたデータに含まれるIDまたは送信元アドレスなどの情報に基づいて、そのデータを送信した測距装置100を特定する。
【0078】
(ステップS1300)
処理装置300は、記憶装置200を参照し、ステップS1200で特定された測距装置100に対応する補正値のデータを取得し、当該補正値を用いて、ステップS1100で取得した距離データを補正する。
【0079】
(ステップS1400)
処理装置300は、記憶装置200を参照し、ステップS1200で特定された測距装置100に対応する設置位置および設置角度のデータを取得し、それらのデータに基づいて、ステップS1100で取得した距離データを変換する。具体的には、測距装置100に設定された3次元座標系での距離データを、測距システム10全体で共通の3次元座標系での位置データに変換する。これにより、複数の測距装置100から取得した距離データを、共通の3次元座標系での位置データすなわち点群データに統合する。
【0080】
(ステップS1500)
処理装置300は、ステップS1400で変換され統合された位置データを記憶装置200に記録する。
【0081】
(ステップS1600)
処理装置300は、前回の出力時点または処理の開始時点から、所定の処理周期あるいはサンプリング周期が経過したか否かを判断する。処理周期は、測距装置100から逐次入力される距離データを統合して出力する時間幅である。処理周期が経過した場合、ステップS1700に進む。処理周期が経過していない場合、ステップS1100に戻る。
【0082】
処理装置300は、ステップS1600において所定の処理周期が経過したと判断するまで、ステップS1100からS1600を繰り返す。これにより、一定の時間幅の間に複数の測距装置100のそれぞれで取得された距離データを、測距システム10全体で共通の3次元座標上の位置データに統合する。
【0083】
(ステップS1700)
処理装置300は、処理周期の間に複数の測距装置100で取得された距離データから変換された位置データを出力する。出力先は、例えば、測距システム10を搭載した移動体の制御装置であり得る。制御装置は、出力された位置データに基づいて、衝突回避などの必要な動作を実行する。
【0084】
[1-2-2 測距装置の動作]
次に、各測距装置100の動作を説明する。
【0085】
図9は、各測距装置100の動作の一例を示すフローチャートである。本実施形態における測距装置100は、光ビームまたはフラッシュ光を用いた測距を繰り返し実行することにより、シーン中に存在する歩行者または車両などの対象物を検出し、トラッキングする機能を備える。測距装置100はまた、隣接する他の測距装置100との間で、対象物の位置に関する情報、および照明に関する情報を送受信することにより、個々の対象物の測距に適した照射方法を適応的に選択して測距を行う機能を備える。以下、
図9を参照して、測距装置100による測距動作と、隣接する測距装置との間のデータ通信の動作とを説明する。
【0086】
(ステップS2100)
プロセッサ130は、受信回路162が隣接する測距装置100からデータを受信したか否かを判断する。当該データは、例えば
図6Cに示すように、自測距装置100の座標系で表現された対象物の位置と、その位置にある対象物の照射に適した照明の種類およびビームの出射方向等の情報を含み得る。受信回路162が隣接する測距装置100からデータを受信していない場合、ステップS2200に進む。受信回路162が隣接する測距装置100からデータを受信した場合、ステップS2400に進む。
【0087】
(ステップS2200)
隣接する測距装置100からデータが受信されていない場合、プロセッサ130は、記憶媒体140を参照して、前回の測距時に設定されたトラッキングの対象とすべき対象物があるか否かを判断する。トラッキング対象の対象物がある場合、ステップS2400に進む。トラッキング対象の対象物がない場合、ステップS2300に進む。初期状態においては、トラッキング対象の対象物がないため、ステップS2300に進む。
【0088】
(ステップS2300)
ステップS2200において、トラッキングすべき対象物が指定されていないと判断された場合、制御回路150は、あらかじめ設定された視野範囲全体を測距して対象物を検出する動作を発光装置110および受光装置120に指示するための制御信号を生成する。制御信号は、例えば、光ビームの出射角度を変更して逐次照射するスキャン動作による測距と、フラッシュ光を照射することによる測距とを組み合わせた動作を行うように、発光装置110および受光装置120に指示する信号であり得る。フラッシュ光による測距により、比較的近距離の広範囲の測距を一度に実行できる。また、光ビームによるスキャン動作により、遠方の視野範囲全体を測距することができる。この動作は、比較的広域の視野範囲から特定の対象物を検出するために行われる。なお、光ビームを用いたスキャン動作による測距のみを行い、フラッシュ光による測距を省略してもよい。ステップS2300の動作後、ステップS2700に進む。
【0089】
(ステップS2400)
プロセッサ130は、照明として光ビームが指定されているか否か、すなわちビームスキャンを実行するか否かを判断する。この判断は、ステップS2100で受信したデータに含まれる照明情報、またはステップS2200においてトラッキング対象と判断された対象物に対応付けられた照明情報を参照して行われる。照明として光ビームが指定されている場合、ステップS2500に進む。照明として光ビームが指定されていない場合、すなわちフラッシュ光が指定されている場合、ステップS2600に進む。
【0090】
(ステップS2500)
プロセッサ130は、ステップS2100で受信したデータに含まれる照明情報、またはステップS2200においてトラッキング対象と判断された対象物に対応付けられた照明情報を参照し、光ビームで照射する範囲を決定する。光ビームで照射する範囲は、対象物の一部または全体をカバーする範囲であり、対象物の大きさによって異なり得る。制御回路150は、決定した範囲を光ビームでスキャンして測距する動作を発光装置110および受光装置120に指示するための制御信号を生成する。ステップS2500の動作の後、ステップS2700に進む。
【0091】
(ステップS2600)
ステップS2400において、照明として光ビームが指定されていない場合、対象物はフラッシュ光による測距範囲に含まれることになる。その場合、フラッシュ光による測距動作により、対象物を測距および検出する動作が行われる。制御回路150は、フラッシュ光による測距動作を発光装置110および受光装置120に指示する制御信号を生成する。ステップS2600の動作の後、ステップS2700に進む。
【0092】
(ステップS2700)
制御回路150は、ステップS2300、S2500、およびS2600において設定された照明条件に基づく測距を指示するための制御信号を発光装置110および受光装置120に出力する。発光装置110および受光装置120は、入力された制御信号に従い、発光および露光を行う。これにより、予め設定された視野範囲の全体または一部についての距離データが取得される。なお、使用される照明の種類がフラッシュ光である場合は、1回の照射でフラッシュ光の測距範囲の全体についての距離データを取得できる。一方、使用される照明の種類が光ビームである場合は、光ビームを出射して反射光を検出する動作を、光ビームの出射方向を変化させて複数回実行することにより、指定された範囲内の距離データを取得できる。
【0093】
(ステップS2800)
プロセッサ130は、ステップS2700で測距された範囲に、トラッキング対象の対象物が存在するか否かを判断する。トラッキング対象の対象物は、前回の測距時にトラッキング対象として設定された対象物、またはステップS2100で受信されたデータが示す対象物である。プロセッサ130は、例えば、ステップS2700における測距によって得られた距離データについて、距離の値に基づくクラスタリングを行うことにより、測距範囲内に含まれる物体を検出する。あるいは、ステップS2700における測距によって得られた距離データから生成される3次元点群データについて、点群の位置に基づくクラスタリングを行うことにより、測距範囲内に含まれる物体を検出する。検出された物体と、トラッキング対象の対象物のテンプレートとの間でマッチングを行うことにより、その物体がトラッキング対象であるか否かを判断することができる。マッチングの結果、測距された範囲内にトラッキング対象の対象物があると判断された場合、ステップS2900に進む。測距された範囲内にトラッキング対象の対象物がないと判断された場合、ステップS3100に進む。
【0094】
(ステップS2900)
プロセッサ130は、ステップS2800でトラッキング対象物として照合された対象物の次の測距時点での位置を推定する。位置推定は、例えば、当該対象物の移動ベクトルを求めることによって行われ得る。プロセッサ130は、ステップS2700における測距に先立って自測距装置100または隣接測距装置によって検出された対象物が、ステップS2700において特定された位置まで移動したときの移動ベクトルを求める。求めた移動ベクトルの大きさを2倍にすることで、次の測距時点での対象物の位置を推定することができる。
【0095】
(ステップS3000)
プロセッサ130は、ステップS2900で推定した、次回の測距時の対象物の推定位置が自測距装置100の測距範囲内にあるか否かを判断する。次回の測距時の対象物の推定位置が自測距装置100の測距範囲内にある場合、ステップS3200に進む。次回の測距時の対象物の推定位置が自測距装置100の測距範囲内にない場合、ステップS3300に進む。
【0096】
(ステップS3100)
ステップS2800において、マッチングの結果、トラッキングすべき対象物が検出されなかった場合、プロセッサ130は、ステップS2700において測距された範囲内に新たな対象物が存在するか否かを判断する。プロセッサ130は、例えば、ステップS2700において生成された距離画像データについて、各画素の距離の値に基づくクラスタリングを行い、クラスタの形状があらかじめ定められた縦横比と大きさに合致するか否かを判断する。あらかじめ定められた縦横比と大きさの組み合わせは複数種類であってもよい。あるいは、プロセッサ130は、ステップS2700における測距によって得られた距離データから生成される3次元点群データについて、点群の位置に基づくクラスタリングを行ってもよい。その場合、プロセッサ130は、各クラスタの形状があらかじめ定められた3次元の概略形状に合致するか否かを判断する。あらかじめ定められた概略形状は、例えば直方体であり得る。複数の概略形状が定められていてもよい。なお、ステップS2800と同様に、あらかじめ定められたテンプレートとのマッチングによって新規の対象物を検出してもよい。ステップS3100において、新たな対象物が検出された場合、ステップS3200に進む。新たな対象物が検出されなかった場合、ステップS3600に進む。
【0097】
(ステップS3200)
プロセッサ130は、ステップS3000において、次回の測距時における推定位置が自測距装置100の測距範囲内であると判断された対象物、またはステップS3100において新たな対象物として検出された対象物を、トラッキング対象として設定する。プロセッサ130は、記憶媒体140に、トラッキング対象とする対象物の推定位置、照明種類等のデータを記録する。ここで、データは、例えば
図6Bに示すように、検出された対象物ごとに記録され得る。ステップS3200の後、ステップS2100に戻る。
【0098】
(ステップS3300)
ステップS3000において、次の測距時点での対象物の推定位置が自測距装置100の視野内にないと判断された場合、自測距装置100では当該対象物のトラッキングを継続できない。そこで、プロセッサ130は、次の測距時点での対象物の推定位置が隣接する測距装置100の視野内にあるか否か、すなわちトラッキングが隣接する測距装置100によって継続可能か否かを判断する。この判断は、例えば
図6Aに示すような、記憶媒体140内のデータを参照して行われる。プロセッサ130は、対象物の推定位置が、隣接測距装置のフラッシュ光の測距範囲または光ビームの測距範囲に含まれる場合には、当該対象物の推定位置が隣接測距装置の視野範囲内にあると判断する。記憶媒体140は、自測距装置100の座標系から各隣接測距装置の座標系に変換するための変換パラメータと、各隣接測距装置の座標系で表現された、フラッシュ光による測距範囲および光ビームによる測距範囲とを記憶していてもよい。その場合には、プロセッサ130は、対象物の推定位置を隣接測距装置の座標系での表現に変換した上で、当該推定位置が隣接測距装置の測距範囲内にあるか否かを判断する。変換は、例えば回転と平行移動によるアフィン変換によって行われ得る。対象物の推定位置が隣接する測距装置100の視野範囲内にある場合、ステップS3400に進む。対象物の推定位置が隣接する測距装置100の視野範囲内にない場合、ステップS3600に進む。
【0099】
(ステップS3400)
プロセッサ130は、記憶媒体140に記録された隣接測距装置の光の照射範囲の情報を参照して、隣接測距装置が対象物の測距を行うのに適した照明方法を決定する。対象物の推定位置がフラッシュ光の測距範囲内にある場合にはフラッシュ光が選択され、対象物の推定位置が光ビームの測距範囲内にある場合には光ビームが選択される。光ビームが選択される場合には、光ビームの出射方向も決定される。光ビームの出射方向は、対象物の推定位置に当該光ビームが照射される方向に決定される。
【0100】
(ステップS3500)
送信回路164は、隣接測距装置の座標系で表現された対象物の推定位置と、ステップS3400で決定された照明方法の情報を含む送信データを生成し、隣接測距装置に送信する。送信データは、例えば
図6Cに示すような形式のデータであり得る。なお、
図6Cの例では、複数の対象物の情報がまとめて送信されるが、対象物ごとに個別に送信してもよい。その場合には、対象物数の情報は送信データから省略される。なお、光ビームの広がり角を変更できる光源が使用される場合には、光ビームの広がり角の情報が含まれていてもよい。さらに、隣接測距装置が、光ビームおよびフラッシュ光の一方のみを出射可能に構成されている場合には、光ビームおよびフラッシュ光のいずれか一方の情報のみが送信データに含まれていてもよい。ステップS3500の後、ステップS3600に進む。
【0101】
(ステップS3600)
ステップS3100において新たな対象物が検出されなかった場合、またはステップS3300において、対象物の推定位置が隣接測距装置の視野内にないと判断された場合、またはステップS3500におけるデータ送信が完了した場合、トラッキング設定の解除処理が行われる。プロセッサ130は、記憶媒体140に記録されたトラッキング対象の情報を消去し、当該対象物のトラッキングを解除する。ステップS3600の後、ステップS2100に戻る。
【0102】
各測距装置100は、ステップS2100からS3600の動作を繰り返すことで、隣接する測距装置との間で、トラッキング対象の情報およびトラッキング対象の測距に使用される照明の情報を送受信することができる。これにより、各測距装置100は、トラッキング対象に適応的に光を照射することができる。したがって、例えば遠方の領域を光ビームでスキャンする頻度を減らし、効率よく対象物をトラッキングすることができる。
【0103】
上記の例では、ステップS2800におけるマッチング処理によってトラッキング対象が検出されなかった場合にのみ、ステップS3100において新たな対象物を検出する動作が行われる。このような動作に限らず、マッチング処理によってトラッキング対象が検出された場合であっても、新たな対象物を検出する動作を行ってもよい。
【0104】
[1-3 動作の具体例]
次に、
図10Aから
図10Dを参照して、測距装置100によるフラッシュ光と光ビームとの切り替え動作、および隣接する2つの測距装置100の間で行われるトラッキングの引継ぎ動作に関するいくつかの具体例を説明する。
【0105】
図10Aは、1つの測距装置100の視野範囲内でトラッキング対象の対象物60が移動する状況の一例を示している。図中の対象物60は二輪車であり、
t1、t2、t3は、連続する3回の測距のタイミングを表している。時刻は、
t1、t2、t3の順で経過する。
図10Aには、フラッシュ光の測距範囲111と、光ビームによる測距範囲112とが示されている。
図10Aの例では、移動体50の前方中央に測距装置100が配置されている。測距装置100の視野内で対象物60が、遠方から測距装置100に近付く方向に移動している。
【0106】
測距装置100は、時刻
t1、t2、t3のそれぞれのタイミングで、
図9に示す動作を実行する。
図10Aに示す状況では、時刻
t1、t2、t3のいずれにおいても、対象物60は測距装置100の視野内すなわち測距範囲内に位置する。このため、測距装置100は、隣接する他の測距装置との間で対象物60および照明に関する情報を送受信しない。測距装置100は、自身の測距範囲内で移動する対象物60の位置に応じて、光ビームとフラッシュ光とを切り替える。以下、
図9を再び参照しながら、
図10Aに示す動作を説明する。
【0107】
時刻t1では、ステップS2100において、測距装置100は、隣接する測距装置から対象物の情報を受信していない。従って、ステップS2200に進む。ステップS2200の時点では、対象物はまだ検出されておらず、トラッキングが行われていないため、ステップS2300に進む。ステップS2300において、広域スキャン、すなわち視野全体に光ビームを順次照射して測距する動作を指示する制御信号が生成される。続くステップS2700において、発光装置110および受光装置120は、制御信号に従って光ビームの照射による測距を行う。プロセッサ130は、視野全体について取得された反射光の受光結果から距離を計算する。例えば、プロセッサ130は、受光装置120の各画素における反射光の検出結果に基づいて、距離画像を生成する。続くステップS2800において、プロセッサ130は、ステップS2700で生成された距離画像と、あらかじめ定められたトラッキング対象のテンプレートとのマッチングを行う。時刻t1では二輪車が初めて測距装置100の測距範囲内に検出されるため、ステップS3100に進む。ステップS3100において、距離画像中に二輪車が新たな対象物として検出され、ステップS3200に進む。ステップS3200において、二輪車が新たなトラッキング対象の対象物として設定され、記憶媒体140に当該対象物の情報が記録される。例えば
図6Bに示すようなデータが記録され得る。時刻
t1では、対象物のそれ以前の位置がわからないため、時刻
t2での位置を推定することはできない。位置が推定されないので、次の時刻
t2で使用される照明は、例えば時刻
t1での対象物の位置および向きに基づき設定され得る。対象物の向きは、例えば距離画像に基づく画像処理によって決定され得る。
図10Aの例では、次の時刻
t2では光ビームが使用され、時刻t1での対象物の位置の周辺が光ビームによるスキャン範囲として設定される。ステップS3200の後、ステップS2100に戻り、時刻t2での動作が行われる。
【0108】
図10Aの例では、時刻t2でも、ステップS2100において、隣接する測距装置からデータを受信しない。このため、ステップS2200に進む。時刻t1での処理におけるステップS3200でトラッキング対象が設定されているため、ステップS2400に進む。ステップS2400においては、時刻t1でのステップS3200において記録されたデータに基づき、光ビームによるスキャンを実行すると判断される。ステップS2500において、時刻t1での対象物の位置の周辺がスキャン範囲として決定される。ステップS2700において、決定された範囲を光ビームでスキャンし、当該範囲の測距を行う。ステップS2800において、ステップS2400で得られたスキャン領域の距離画像と記憶媒体140に記憶されたトラッキング対象物のマッチング用テンプレートあるいはモデルとのマッチングが行われる。トラッキング対象物が距離画像に含まれていると判定され、ステップS2900に進む。ステップS2900において、プロセッサ130は、時刻t1と時刻t2との間での対象物の移動量に基づき、時刻t3での位置を推定して記憶媒体140にその位置情報を記録する。続くステップS3000において、ステップS2900で推定されたトラッキング対象物の位置が当該測距装置100の視野範囲内であるか否かが判定される。
図10Aの例では、時刻t3での対象物の位置が当該測距装置100の視野範囲内にあるため、ステップS3200に進む。ステップS3200において、プロセッサ130は、記憶媒体140に記憶された時刻t3でのトラッキング対象物の推定位置に従って、トラッキングの設定を行う。
図10Aの例では、時刻t3での対象物の推定位置が当該測距装置100のフラッシュ光の測距範囲内にあるので、時刻t3で使用される照明としてフラッシュ光が設定される。ステップS3200の後、ステップS2100に戻り、時刻t3での動作が行われる。
【0109】
図10Aの例における時刻t3では、ステップS2100において、隣接する測距装置からデータを受信しない。このため、ステップS2200に進む。時刻t1での処理におけるステップS3200でトラッキング対象が設定されているため、ステップS2400に進む。ステップS2400において、時刻t2で推定された時刻t3での対象物の推定位置から、ビームスキャンではなくフラッシュ光を用いて測距を行う旨の判断がなされる。ステップS2600において、プロセッサ130は、フラッシュ光による測距を指示するための制御信号を生成する。ステップS2700において、プロセッサ130は、発光装置110および受光装置120に、フラッシュ光による測距を実行させ、全視野の近距離範囲の距離画像を取得する。ステップS2800において、ステップS2700で得られた距離画像と、記憶媒体140に記憶されたトラッキング対象物のマッチング用テンプレートあるいはモデルとのマッチングが行われる。この例では、記憶媒体140に記憶されているトラッキング対象物が距離画像に含まれていることがマッチングによって判定されるため、ステップS2900に進む。ステップS2900において、プロセッサ130は、時刻t2と時刻t3との間での対象物の移動量に基づき、次の時刻t4(図示せず)での対象物の位置を推定し、推定した位置の情報を記憶媒体140に記録する。続くステップS3000において、ステップS2900で推定されたトラッキング対象物の位置が当該測距装置100の視野範囲内にあるか否かが判定される。
図10Aには時刻t4での位置が図示されていないが、時刻t4においては、対象物60は、当該測距装置100の視野範囲を通過し、視野範囲の外にある。このため、ステップS3300に進む。
図10Aの例では、図示されていない隣接測距装置の視野範囲は自測距装置100の視野範囲から離れている。このため、ステップS3300において、時刻t4における対象物の推定位置が隣接測距装置の視野内にないと判断され、ステップS3600に進む。ステップS3600において、プロセッサ130は、記憶媒体140に記憶されたトラッキング対象物の設定を解除し、ステップS2100に戻る。
【0110】
図10Bは、1つの測距装置100の視野範囲内でトラッキング対象の対象物60が移動する状況の他の例を示している。この例では、測距装置100が移動体50の側部に配置されている。対象物60である二輪車が、移動体50の斜め前方から斜め後方に向かって、移動体50の進行方向とほぼ平行に走行している。時刻t1において、対象物60は光ビームの測距範囲112内にある。時刻t2において、対象物60はフラッシュ光の測距範囲111内に入る。時刻t3において、対象物60は再び光ビームの測距範囲112内に入る。
【0111】
時刻
t1では、
図10Aの例と同様、ステップS2100、S2200、S2300、S2700、S2800、S3100、およびS3200の順に処理が行われる。ステップS3200において、記憶媒体140にトラッキング対象物の情報が記録されると、ステップS2100に戻り、時刻
t2での処理が行われる。
【0112】
時刻
t2では、ステップS2100からステップS2200に進み、時刻
t1での処理においてトラッキング対象物が設定されているため、ステップS2400に進む。
図10Bの例では、時刻
t1での対象物60の位置を拡張すると、時刻
t2では、光ビームによる測距範囲112でなくフラッシュ光の測距範囲111内に対象物60が入ると推定される。このため、ステップS2400ではnoと判断され、ステップS2600においてフラッシュ光が照明として決定される。続くステップS2700では、フラッシュ光照射による測距が行われ、ステップS2800に進む。ステップS2800におけるマッチング処理によってトラッキング対象物が検出されるため、ステップS2900に進む。ステップS2900において、次の時刻t3での対象物60の位置が推定される。続くステップS3000において、対象物60が自測距装置100の視野範囲内にあると判断され、ステップS3200に進む。ステップS3200において、トラッキング対象物の情報が記録され、ステップS2100に戻り、時刻
t3での処理が行われる。
【0113】
時刻
t3では、
図10Aの例と同様、ステップS2100、S2200、およびS2400の順に処理が行われる。ステップS2400においては、ビームスキャンを実行すると判定され、ステップS2500に進む。ステップ
S2500に続いてステップS2700、S2800、S2900が実行される。ステップS2900では、図示されていない時刻
t4での対象物60の位置が推定される。時刻
t4での推定位置は、当該測距装置100の視野範囲外であるため、ステップS3300に進む。
図10Aの例と同様、ステップS2900で推定された時刻
t4での対象物60の位置は隣接測距装置の視野範囲の外にあるため、ステップS3600に進む。ステップS3600において、トラッキングの設定が解除されると、ステップS2100に戻る。
【0114】
続いて、
図10Cおよび
図10Dを参照して、隣り合う2つの測距装置100aおよび100bの間で対象物のトラッキング情報が受け渡され、トラッキングが継続される動作の例を説明する。
【0115】
図10Cは、隣り合う2つの測距装置100aおよび100bの間で、トラッキング情報が受け渡される状況の例を示している。
図10Cの例では、第1測距装置100aが移動体50の右前部に配置され、第2測距装置100bが移動体50の右側部に配置されている。
図10Cにおける(1)は、光ビームを用いた測距とフラッシュ光を用いた測距との切り替えを含む例を示している。
図10Cにおける(2)は、光ビームを用いた測距によるトラッキングが、測距装置100aおよび100bの間で継続される例を示している。
図10Cおよび
図10Dには、第1測距装置100aのフラッシュ光および光ビームによるそれぞれの測距範囲111aおよび112aと、第2測距装置100bのフラッシュ光および光ビームによるそれぞれの測距範囲111bおよび112bとが例示されている。以下、
図10Cにおける(1)および(2)のそれぞれの例について、
図9を参照して具体的な動作を説明する。
【0116】
図10Cにおける(1)の例では、時刻t1およびt2における測距装置100aの動作は、
図10Aの例における時刻t1およびt2における動作と同様である。時刻t1では、対象物60は測距装置100aの測距範囲に初めて進入し、隣接する測距装置10
0bからのデータ受信がないため、ステップS2100においてnoと判断され、ステップS2200に進む。ステップS2200では、トラッキングの設定がまだなされていないため、ステップS2300に進む。ステップS2300において、広域スキャンによる測距を実行するための制御信号が生成され、ステップS2700に進む。ステップS2700において、発光装置110および受光装置120は、制御信号に従って視野範囲全体の測距を行う。プロセッサ130は、受光装置120から出力された検出信号に基づき、距離画像を生成する。続くステップS2800において、プロセッサ130は、距離画像内の対象物とトラッキングの設定がなされた対象物とのマッチングを行う。この時点では、まだマッチングすべき対象物が設定されていないため、ステップS3100に進む。ステップS3100において、ステップS2700で生成された距離画像からトラッキングすべき対象物が抽出される。この例では、二輪車が新たな対象物として検出され、ステップS3200に進む。ステップS3200において、検出された対象物にIDが付与され、時刻t1での対象物の位置情報、および当該位置に応じた次の時刻t2での測距に用いられる照明の情報が記憶媒体140aに記録される。この例では時刻t1およびt2において対象物60は光ビームの測距範囲112a内にあるため、照明として光ビームが選択される。その後、ステップS2100に戻り、時刻t2での処理が行われる。
【0117】
一方、測距装置100bは、時刻t1において、対象物を検出せず、隣接する測距装置100aからのデータ受信もない。このため、測距装置100bは、ステップS2100、S2200、S2300、S2700、S2800、S3100、S3600の順に処理を行う。具体的には、測距装置100bは、ステップS2100において、隣接する測距装置100aからのデータ受信がないため、ステップS2200に進む。トラッキングの設定もまだないため、ステップS2300に進み、光ビームによる広域スキャンが選択される。ステップS2700において、測距装置100bは、視野範囲全体を光ビームでスキャンして測距を行い、距離画像を取得する。時刻t1の時点では、測距装置100bの記憶媒体140bには、トラッキングの設定がなされた対象物についての情報がまだ記録されていない。このため、ステップS2800において、トラッキング対象物は検出されず、ステップS3100に進む。ステップS3100において、対象物のテンプレートあるいはモデルとのマッチングが行われる。時刻t1では、測距装置100bの視野範囲内に対象物がないため、ステップS3600に進み、ステップS2100に戻る。このように、時刻t1では、測距装置100bは、隣接する測距装置100aからデータの受信がなく、トラッキング対象もまだ設定されていないため、視野範囲全体についての測距を行う。対象物が検出されないため、トラッキングの設定を行うことなく、ステップS2100に戻る。その後、時刻t2での処理が行われる。
【0118】
図10Cにおける時刻t2では、測距装置100aは、ステップS2100において、隣接する測距装置100bからデータの受信がないため、ステップS2200に進む。時刻t2では、先の時刻t1で検出されたトラッキング対象物の情報が記憶媒体140aに記録されているので、ステップS2400に進む。記憶媒体140aには、照明の種類として、光ビームが記憶されているため、ステップS2500に進む。ステップS2500において、光ビームを照射する範囲が決定される。記憶媒体140aには、時刻t1での対象物の位置は記憶されているが、それ以前の当該対象物の位置は記憶されていない。従って、光ビームの照射範囲は、時刻t1での位置を拡張した比較的狭い範囲に設定される。ステップS2700において、測距装置100aは、ステップS2500で設定された方向に光ビームを出射し、設定された範囲をスキャンして測距を行い、測距装置100aの視野の一部の領域の距離画像を生成する。続くステップS2800において、ステップS2700で生成された距離画像から、トラッキング対象物をマッチングによって検出し、ステップS2900に進む。ステップS2900において、プロセッサ130は、時刻t1のフレームでの対象物の位置と時刻t2のフレームでの対象物の位置とから、フレーム間の対象物の移動方向と移動量とを推定し、次の時刻t3での対象物の位置を推定する。続くステップS3000において、プロセッサ130は、ステップS2900で推定された時刻t3での対象物の位置が測距装置100aの視野内にあるか否かを判断する。
図10Cの(1)の例では、推定された時刻t3での対象物の位置は、測距装置100aの視野から外れ、隣接する測距装置100bのフラッシュの照射範囲内にある。従って、ステップS3000からS3300、S3400に進む。ステップS3400において、フラッシュ光が照明として設定される。ステップS3500において、測距装置100aは、測距装置100bに、対象物および照明の情報を含むデータを送信する。その後、ステップS3600で測距装置100aの記憶媒体140aに記憶されている対象物のトラッキングの設定が解除され、ステップS2100に戻る。
【0119】
一方、時刻t2での測距装置100bの動作は、時刻t1での動作と同様である。時刻t2では、隣接する測距装置100aからのデータ受信がなく、さらに、測距装置100bの視野範囲内には対象物がないため、ステップS2100、S2200、S2300、S2700、S2800、S3100、S3600を経て、ステップS2100に戻る。
【0120】
時刻t3での測距装置100aの動作は、時刻t1およびt2での測距装置100bの動作と同様である。すなわち、ステップS2100、S2200、S2300、S2700、S2800、S3100、S3600を経て、ステップS2100に戻る。
【0121】
一方、時刻t3において、測距装置100bは、時刻t2で測距装置100aが、ステップS3500において送信したデータを受信している。このため、ステップS2100においてyesと判断され、ステップS2400に進む。測距装置100aから受信したデータにフラッシュ光を指定する情報が含まれているため、ステップS2600に進み、フラッシュ光が照明として設定される。ステップS2700において、測距装置100bは、フラッシュ光を用いた測距を行い、距離画像を生成する。続くステップS2800において、測距装置100bは、距離画像について、測距装置100aから受信したデータが示す対象物のテンプレートまたはモデルとのマッチング処理を行い、当該対象物を検出する。続くステップS2900において、測距装置100bは、測距装置100aから受信した時刻t2での対象物の位置情報と、自身が検出した時刻t3での対象物の位置情報とから、時刻t4での当該対象物の位置を推定する。ここで推定される時刻t4での対象物の位置は、測距装置100bの視野範囲内である。このため、ステップS3200に進み、トラッキング情報を設定してステップS2100に戻る。
【0122】
時刻t4での測距装置100aの動作は、時刻t3での動作と同様である。すなわち、ステップS2100、S2200、S2300、S2700、S2800、S3100、S3600を経て、ステップS2100に戻る。
【0123】
時刻t4において、測距装置100bは、t3の時点で隣接する測距装置100aからデータを受信していないため、ステップS2100からステップS3000に進む。時刻t3でのステップS3200において、対象物のトラッキング設定がなされているため、ステップS2400に進む。
図10Cの(1)の例では、時刻t4での対象物の推定位置はフラッシュ光の測距範囲111b内であるため、ステップS2600に進み、フラッシュ光の照射の設定がなされ、ステップS2700に進む。ステップS2700において、測距装置100bは、フラッシュ光による測距を行い、距離画像を生成する。続くステップS2800において、距離画像から、記憶媒体140bに記憶されたテンプレートのデータを参照して、対象物をマッチングによって検出する。ステップS2900において、図示されていない時刻t5での対象物の位置を推定する。時刻t5での対象物の推定位置は、測距装置100bの視野範囲外である。このため、ステップS3300に進む。
図10Cの例では、対象物は、時刻t5において、いずれの測距装置の視野内にも存在しないため、ステップS3600に進む。測距装置100bのプロセッサ130は、記憶媒体140bに記憶されたトラッキングの設定を解除して、ステップS2100に戻る。
【0124】
続いて、
図10Cの(2)の例における測距装置100aおよび100bのそれぞれの動作を説明する。
【0125】
図10Cの(2)の例における時刻t1での測距装置100aの動作は、
図10Cの(1)の例における時刻t1での測距装置100aの動作と同様である。すなわち、ステップS2100、S2200、S2300、S2700、S2800、S3100、S3200を経て、ステップS2100に戻る。
【0126】
時刻t2での測距装置100aの動作は、
図10Cの(1)の例における時刻t2での測距装置100aの動作と概ね同じである。すなわち、測距装置100aは、ステップS2100、S2200、S2400、S2500、S2500、S2700、S2800、S2900、S3000、S3300、S3400、S3500、S3600の動作を実行する。但し、この例では、時刻t3での対象物の推定位置が、隣接する測距装置100bの光ビームのスキャンによる測距範囲112b内にある。このため、ステップS3400において、光ビームによるスキャンが選択される。測距装置100aは、ステップS3500において、光ビームによるスキャンを指定する情報を含む送信データを、隣接する測距装置100bに送信する。その後、ステップS3600においてトラッキング設定を解除してステップS2100に戻る。
【0127】
図10Cの(2)の例における時刻t1およびt2での測距装置100bの動作は、
図10Cの(1)の例における時刻t1およびt2での測距装置100bの動作とそれぞれ同じであるため、説明を省略する。
【0128】
図10Cの(2)の例における時刻t3およびt4での測距装置100aの動作は、
図10Cの(1)の例における時刻t3およびt4での測距装置100aの動作とそれぞれ同じであるため、説明を省略する。
【0129】
図10Cの(2)の例における時刻t3での測距装置100bの動作は、
図10Cの(1)の例における時刻t3での測距装置100bの動作と概ね同じであるが、ステップS2400においてビームスキャンが選択される点で、異なっている。時刻t3では、測距装置100bは、時刻t2でのステップS3500において測距装置100aから送信されたデータを受信しているため、ステップS2100からステップS2400に進む。この例では、測距装置100aから受信したデータに光ビームによるスキャンを指定する情報が含まれるため、ステップS2500に進む。ステップS2500において、測距装置100bは、測距装置100aから受信した時刻t3での対象物の推定位置を含む範囲をスキャンの範囲として設定する。続くステップS2700において、測距装置100bは、時刻t3での対象物の推定位置の周辺領域を光ビームでスキャンし、距離画像を生成する。続くステップS2800において、ステップS2700で生成された距離画像について、測距装置100aから受信したデータが示す対象物のテンプレートまたはモデルとのマッチングを行い、当該対象物を検出する。続くステップS2900において、測距装置100bは、隣接する測距装置100aから受信した時刻t2での対象物の位置情報と、自身が検出した時刻t3での対象物の位置情報とに基づいて、時刻t4時点での対象物の位置を推定する。推定された時刻t4での対象物の位置は、測距装置100bの視野範囲内であるので、ステップS3200に進み、トラッキング情報を設定してステップS2100に戻る。
【0130】
図10Cの(2)の例における時刻t4での測距装置100bの動作は、
図10Cの(1)の例における時刻t4での測距装置100bの動作と概ね同じであるが、ステップS2400においてビームスキャンが選択される点で、異なっている。ステップS2100において、時刻t3で隣接する測距装置100aからデータが送信されていないため、ステップS2200に進む。時刻t3でのステップS3200において、トラッキング対象が設定されているため、ステップS2400に進む。
図10Cの(2)の例では、時刻t4での対象物の推定位置が光ビームによるスキャンの視野範囲内であるため、ステップS2500に進む。ステップS2500において、測距装置100bは、時刻t4での対象物の推定位置の周辺を光ビームのスキャン範囲として設定し、ステップS2700に進む。ステップS2700において、測距装置100bは、光ビームによるスキャン領域の距離画像を生成する。続くステップS2800において、距離画像から、記憶媒体140bに記憶されたテンプレートのデータを参照して、対象物をマッチングによって検出する。ステップS2900において、図示されていない時刻t5での対象物の位置を推定する。時刻t5での対象物の推定位置は、測距装置100bの視野範囲外である。このため、ステップS3300に進む。
図10Cの例では、対象物は、時刻t5において、いずれの測距装置の視野内にも存在しないため、ステップS3600に進む。測距装置100bのプロセッサ130は、記憶媒体140bに記憶されたトラッキングの設定を解除して、ステップS2100に戻る。
【0131】
【0132】
図10Dは、隣り合う2つの測距装置100aおよび100bの間で、トラッキング情報が受け渡される状況の他の例を示している。
図10Dの例では、第1測距装置100aが移動体50の前中央に配置され、第2測距装置100bが移動体50の前右寄りに配置されている。
図10Dには、移動体50の前方を二輪車が左から右へ横切る状況、および二輪車が移動体50の前方で左折する状況の例が示されている。
【0133】
図10Dの例における時刻t1での測距装置100aの動作は、
図10Cの各例における時刻t1での測距装置100aの動作と同様である。すなわち、時刻t1では、対象物は測距装置100aの測距範囲に初めて進入し、隣接する測距装置10
0bからのデータ受信がないため、ステップS2100においてnoと判断され、ステップS2200に進む。ステップS2200では、トラッキングの設定がまだなされていないため、ステップS2300に進む。ステップS2300において、広域スキャンによる測距を実行するための制御信号が生成され、ステップS2700に進む。ステップS2700において、発光装置110および受光装置120は、制御信号に従って視野範囲全体の測距を行う。プロセッサ130は、受光装置120から出力された検出信号に基づき、距離画像を生成する。続くステップS2800において、プロセッサ130は、距離画像内の対象物とトラッキングの設定がなされた対象物とのマッチングを行う。この時点では、まだマッチングすべき対象物が設定されていないため、ステップS3100に進む。ステップS3100において、ステップS2700で生成された距離画像からトラッキングすべき対象物が抽出される。この例では、二輪車が新たな対象物として検出され、ステップS3200に進む。ステップS3200において、検出された対象物にIDが付与され、時刻t1での対象物の位置情報、および当該位置に応じた次の時刻t2での測距に用いられる照明の情報が記憶媒体140aに記録される。
図10Dの例では、時刻t1では対象物は光ビームの測距範囲112aにあるが、時刻t1での位置から対象物の進行方向に移動すると、対象物はフラッシュ光の測距範囲111aに入ると推定される。このため、ステップS3200において、次のフレームすなわち時刻t2で使用される照明をフラッシュ光とするトラッキング設定が行われる。その後、ステップS2100に戻り、時刻t2での処理が行われる。
【0134】
一方、測距装置100bは、時刻t1において、対象物を検出せず、隣接する測距装置100aからのデータ受信もない。このため、
図10Cの例における時刻t1での動作と同様、測距装置100bは、ステップS2100、S2200、S2300、S2700、S2800、S3100、S3600の順に処理を行う。
【0135】
時刻t2では、測距装置100aは、ステップS2100において、隣接する測距装置100bからデータの受信がないため、ステップS2200に進む。時刻t2では、先の時刻t1で検出されたトラッキング対象物の情報が記憶媒体140aに記録されているので、ステップS2400に進む。記憶媒体140aには、照明の種類として、フラッシュ光が記憶されているため、ステップS2600に進む。ステップS2600において、フラッシュ光が照明として設定される。ステップS2700において、測距装置100aは、フラッシュ光で測距を行い、距離画像を生成する。続くステップS2800において、ステップS2700で生成された距離画像から、トラッキング対象として設定された対象物をテンプレートとのマッチングによって検出し、ステップS2900に進む。ステップS2900において、プロセッサ130は、時刻t1のフレームでの対象物の位置と時刻t2のフレームでの対象物の位置とから、フレーム間の対象物の移動方向と移動量とを推定し、次の時刻t3での対象物の位置を推定する。続くステップS3000において、プロセッサ130は、ステップS2900で推定された時刻t3での対象物の位置が測距装置100aの視野内にあるか否かを判断する。
図10Dの例では、推定された時刻t3での対象物の位置は、測距装置100aの視野から外れ、隣接する測距装置100bの光ビームの測距範囲112bにある。従って、ステップS3000からS3300、S3400に進む。ステップS3400において、光ビームが照明として設定される。ステップS3500において、測距装置100aは、測距装置100bに、対象物および照明の情報を含むデータを送信する。その後、ステップS3600において、測距装置100aの記憶媒体140aに記憶されている対象物のトラッキングの設定が解除され、ステップS2100に戻る。
【0136】
一方、時刻t2で、測距装置100bは、ステップS2100において、隣接する測距装置100aからデータの受信がないため、ステップS2200に進む。ステップS2200では、トラッキングの設定がまだなされていないため、ステップS2300に進む。ステップS2300において、広域スキャンによる測距を実行するための制御信号が生成され、ステップS2700に進む。ステップS2700において、発光装置110および受光装置120は、制御信号に従って視野範囲全体の測距を行う。プロセッサ130は、受光装置120から出力された検出信号に基づき、距離画像を生成する。続くステップS2800において、プロセッサ130は、距離画像内の対象物とトラッキングの設定がなされた対象物とのマッチングを行う。この時点では、まだマッチングすべき対象物が設定されていないため、ステップS3100に進む。ステップS3100において、ステップS2700で生成された距離画像から、あらかじめ定められた対象物のテンプレートまたはモデルとのマッチングによって新たな対象物が検出される。
図10Dの例では、二輪車が新たな対象物として検出され、ステップS3200に進む。ステップS3200において、検出された対象物にIDが付与され、時刻t2での対象物の位置情報、および当該位置に応じた次の時刻t3での測距に用いられる照明の情報が記憶媒体140aに記録される。
図10Dの例では、時刻t1での位置から時刻t2での位置までの対象物の進行方向を考慮すると、時刻t3では対象物は光ビームの測距範囲112bに入ると推定される。このため、ステップS3200において、次のフレームすなわち時刻t3で使用される照明を光ビームとするトラッキング設定が行われる。その後、ステップS2100に戻り、時刻t3での処理が行われる。
【0137】
時刻t3での測距装置100aの動作は、
図10Cの各例における時刻t3およびt4での動作と同様である。ステップS2100において、隣接する測距装置100bからのデータ受信がないため、ステップS2200に進む。トラッキングの設定がt2の時点で解除されているため、ステップS2300に進む。その後、ステップS2700からステップS2800に進む。ステップS2800において、マッチングすべきトラッキング対象物がないため、ステップS3100に進む。
図10Dの例では、時刻t3において測距装置100aの視野範囲内に新しい対象物がないため、ステップS3600に進み、ステップS2100に戻る。
【0138】
一方、時刻t3において、測距装置100bは、時刻t2で測距装置100aが、ステップS3500において送信したデータを受信している。このため、ステップS2100においてyesと判断され、ステップS2400に進む。測距装置100aから受信したデータに光ビームによるスキャンを指定する情報が含まれているため、ステップS2500に進み、スキャン範囲が設定される。なお、この例では、隣接する測距装置100aから受信したデータとは別に、先の時刻t2のステップS3200において測距装置100bが生成したトラッキングデータにも時刻t3で使用される照明の情報が含まれている。このような場合、隣接する測距装置100aから受信したデータに含まれる照明情報が優先され、自身が生成した照明情報は破棄される。続くステップS2700において、測距装置100bは、対象物の推定位置の周辺についてビームスキャンによる測距を行い、スキャン領域の距離画像を生成する。続くステップS2800において、測距装置100bは、距離画像について、測距装置100aから受信したデータが示す対象物のテンプレートとのマッチングを行い、当該対象物を検出する。続くステップS2900において、測距装置100bは、トラッキングデータ中の時刻t2での対象物の位置と、距離画像から特定した時刻t3での対象物の位置とから、図示されていない時刻t4での当該対象物の位置を推定する。ステップS3000において、ステップS2900で推定された対象物の位置が測距装置100bの視野範囲内であるか否かを判定する。
図10Dの例では、時刻t2での位置と時刻t3での位置とから、線形的に位置を推定した場合、時刻t4での対象物の位置は測距装置100bの視野範囲の外であると推定される。従って、ステップS3300に進む。
図10Dの例では、時刻t4での対象物の位置は隣接するいずれの測距装置の視野範囲内にもないため、ステップS3600に進む。ステップS3600において、トラッキングの設定が解除され、ステップS2100に戻る。
【0139】
図10Dの例では、隣接する2つの測距装置100aおよび100bが近接しており、フラッシュ光の視野範囲の多くが重なっている。時刻t2においては、
図9に従って、測距装置100aおよび測距装置100bの両方が同一の対象物の測距を行う。これに対し、時刻t3では、
図9に従って、測距装置100bは、測距装置100aから送信されたトラッキング情報に従って対象物の測距を行う。測距装置100bは、範囲を絞ったビームスキャンによって得られた比較的狭い領域の距離画像から対象物を検出する。このような動作により、処理の効率化が図られる。
【0140】
図9に従って処理する場合、測距装置100aおよび測距装置100bの時刻t2での測距動作が独立に行われる。より効率的にするために、例えば
図10Dの例のように視野範囲の重なりが大きい場合には、測距装置100aおよび測距装置100bの共通のフラッシュ光の視野範囲内に存在する対象物のトラッキング情報を共有してもよい。以下、
図11を参照しながら、そのような動作の例を説明する。
【0141】
図11は、共通のフラッシュ光の視野範囲内に存在する対象物のトラッキング情報を共有する場合の各測距装置100の動作を示すフローチャートである。
図11におけるステップS2100からS2900またはS3100までの動作は、
図9に示す対応するステップの動作と同じである。
図11の例においては、ステップS2900およびS3100の後、ステップS2950の動作が実行される。
【0142】
まず、
図10Dの例における時刻t1での測距装置100aの動作を説明する。測距装置100aは、
図9の例と同様、ステップS2100、S2200、S2300、S2700、S2800、S3100の動作を実行する。ステップS3100において、対象物が検出され、ステップS2950に進む。ステップS2950において、プロセッサ130は、時刻t2での対象物の推定位置が、自測距装置100aのフラッシュ光の測距範囲111aと隣接測距装置100bのフラッシュ光の測距範囲111bとが重なる範囲内にあるか否かを判断する。時刻t1では、測距装置100aは対象物を初めて検出するので、時刻t2時点での対象物の位置は、時刻t1での位置を拡張した範囲に設定される。
図10Dの例では、時刻t1での位置を拡張した範囲は、測距装置100aのフラッシュの視野範囲内である。このため、ステップS2950においてyesと判定され、ステップS3400に進む。ステップS3400において、測距装置100aは、時刻t2で使用される照明の種類をフラッシュ光に設定する。続くステップS3500において、測距装置100aは、対象物および照明に関する情報を含むトラッキングデータを隣接する測距装置100bに送信する。さらに、ステップS3200において、測距装置100aは、自身がトラッキングを行うためのトラッキング情報を設定し、記憶媒体140aに記憶する。ステップS3500およびS3200の動作により、測距装置100aおよび測距装置100bは、トラッキング情報を共有する。ステップS3200の後、ステップS2100に戻る。
【0143】
一方、時刻t1での測距装置100bの動作は、
図9での動作と同様である。すなわち、ステップS2100、S2200、S2300、S2700、S2800、S3100、S3600の順に処理が行われ、ステップS2100に戻る。
【0144】
時刻t2での測距装置100aの動作は、
図9の例と同様である。すなわち、ステップS2100、S2200、S2400、S2600、S2700、S2800、S2900の順に処理が行われる。測距装置100aは、ステップS2900において、時刻t3での対象物の位置を推定する。測距装置100aは、時刻t3での対象物の位置を、時刻t1およびt2での位置に基づいて推定する。時刻t3での対象物の推定位置は、測距装置100aのフラッシュ光の視野範囲から外れているため、ステップS2950においてnoと判断され、ステップS3000に進む。ステップS3000において、時刻t3での対象物の推定位置は、測距装置100aのスキャン範囲を含む全視野範囲の外にあるため、ステップS3600に進む。ステップS3600において、測距装置100aは、トラッキング設定を解除する。すなわち、記憶媒体140aに記録された当該対象物に関するトラッキング情報を削除する。その後、ステップS2100に戻る。
【0145】
一方、時刻t2において測距装置100bは、隣接する測距装置100aから共有のトラッキング情報を受信しているため、ステップS2100においてyesと判定され、ステップS2400に進む。測距装置100aから送信された共有のトラッキング情報は、対象物がフラッシュ光の視野範囲にあることを示しているため、ステップS2600に進む。ステップS2600において、フラッシュ光が照明として設定される。ステップS2700において、測距装置100bは、フラッシュ光を照射して測距を行い、距離画像を生成する。ステップS2800において、測距装置100bは、距離画像について、測距装置100aから送信された共有のトラッキング情報に示された対象物のテンプレートとのマッチングを行い、トラッキング対象物を検出する。ステップS2900において、測距装置100bは、共有のトラッキング情報に含まれる時刻t1での位置情報と時刻t2での位置情報とから、時刻t3での位置を推定する。ステップS2950において、ステップS2900で推定された時刻t3での対象物の位置が測距装置100bのフラッシュの視野範囲の外にあると判定され、ステップS3000に進む。ステップS3000において、ステップS2900で推定された時刻t3での対象物の位置が測距装置100bのスキャンによる視野範囲内にあると判定され、ステップS3200に進む。ステップS3200において、測距装置100bは、記憶媒体140に、時刻t3での対象物の位置および使用される照明に関する情報を記録してトラッキング情報を更新する。その後、ステップS2100に戻る。
【0146】
この例では、時刻t3での対象物の推定位置が両測距装置100aおよび100bのフラッシュの視野範囲の外側にある。このため、測距装置100aおよび測距装置100bのいずれも、トラッキング情報共有のためのデータ送信を行わない。
【0147】
時刻t3において、測距装置100aは、
図9の例と同様の動作を行う。この場合、隣接する測距装置100bからの共有情報の受信がなく、t2の時点でトラッキング設定が解除されている。このため、ステップS2100、S2200、S2300、S2700、S2800、S3100の順に処理される。ステップS3100において、新たな対象物も検出されないので、ステップS3600に進み、ステップS2100に戻る。
【0148】
一方、時刻t3において、測距装置100bは、先の時刻t2において隣接する測距装置100aから共有情報が送信されていないので、ステップS2100からステップS2200に進む。測距装置100bの記憶媒体140には、時刻t3での対象物の推定位置がスキャン範囲内にあることを示すトラッキング情報が記録されている。このため、ステップS2400に進み、ビームスキャンが選択される。続くステップS2500において、スキャン範囲が設定される。ステップS2700において、ビームスキャンによる測距が行われ、スキャン範囲の距離画像が生成される。ステップS2800において、ステップS2700で取得されたスキャン範囲の距離画像についてトラッキング対象物が検出され、ステップS2900に進む。ステップS2900において、時刻t2での対象物の位置と時刻t3での対象物の位置とから、図示されていない次の時刻t4での対象物の位置が推定される。時刻t4での対象物の推定位置は、測距装置100bおよび測距装置100aの両方のフラッシュの視野範囲の外である。したがって、ステップS2950においてnoと判断され、ステップS3000に進む。ステップS3000において、時刻t4での対象物の推定位置が、測距装置100bのスキャン範囲を含む全視野範囲の外であると判断され、ステップS3600に進む。ステップS3600において、トラッキング設定が解除され、ステップS2100に戻る。
【0149】
次に、他の例として、時刻t2で、測距装置100aが、
図10Dにおいてt2’で示される位置に対象物を検出する場合の動作を説明する。この場合、ステップS2900において、測距装置100aは、時刻t1およびt2での対象物の位置および向きから、
図10Dにおいてt3’で示される位置を、時刻t3での対象物の位置として推定する。この位置は、測距装置100aおよび100bのフラッシュの視野範囲の外にあるため、ステップS3000に進む。ステップS3000において、t3’の位置が測距装置100aのビームスキャンの範囲内であると判断され、ステップS3200に進む。この場合、ステップS3400およびS3500の動作が行われないため、隣接する測距装置100bにトラッキング情報が送信されない。ステップS3200において、測距装置100aのトラッキング情報は更新され、ステップS2100に戻る。以後、測距装置100aは、当該対象物のトラッキングを継続する。
【0150】
一方、時刻t2において、対象物が
図10Dに示すt2’の位置にある場合の測距装置100bの動作は、時刻t1における測距装置100bの動作と同様である。すなわち、ステップS2100、S2200、S2300、S2700、S2800、S3100、S3600の順に処理が行われ、ステップS2100に戻る。
【0151】
時刻t3において、
図10Dにおけるt3’の位置に対象物が存在する場合、測距装置100aは、ステップS2100において隣接する測距装置100bからの受信がないと判断し、ステップS2200に進む。ステップS2200において、記憶媒体140aにトラッキング対象の情報が記憶されているため、ステップS2400に進む。ステップS2400では、ビームスキャンを実行すると判断され、ステップS2500に進む。ステップS2500において、測距装置100bは、光ビームのスキャンの方向を決定する。ステップS2700において、測距装置100bは、スキャン範囲に対応する領域の距離画像を取得する。ステップS2800において、ステップS2700で取得された距離画像中にトラッキング対象物が検出され、ステップS2900に進む。ステップS
2900において、測距装置100bは、時刻t2での対象物の位置および向きと、時刻t3での対象物の位置および向きとから、図示されていない時刻t4での対象物の位置を推定する。続くステップS2950において、測距装置100aは、ステップS2900で推定された時刻t4での対象物の推定位置が測距装置100aおよび100bのフラッシュの共通の視野範囲内にあるか否かを判断する。この例では、時刻t4での対象物の推定位置が測距装置100aおよび100bのフラッシュの共通の視野範囲の外にあるため、ステップS3000に進む。また、時刻t4での対象物の推定位置は、測距装置100aのスキャンの視野範囲を含む全視野範囲の外にあるため、ステップS3600に進む。ステップS3600において、測距装置100aは、トラッキング対象の設定を解除し、ステップS2100に戻る。
【0152】
一方、時刻t3において、対象物が
図10Dに示すt3’の位置にある場合の測距装置100bの動作は、時刻t1およびt2における測距装置100bの動作と同様である。すなわち、ステップS2100、S2200、S2300、S2700、S2800、S3100、S3600の順に処理が行われ、ステップS2100に戻る。
【0153】
以上のように、
図11に示す例では、隣接する2つの測距装置10
0aおよび10
0bが、視野の重なり合う部分に存在する対象物の情報を共有する。各測距装置10
0aおよび10
0bは、自身が初めて検出する対象物の過去の位置情報を遡って持つことができる。したがって、より高い精度で対象物の位置を推定することができ、光の照射範囲を絞り込んだより効率的な測距が可能である。対象物の推定位置に応じて照明の種類および照射方向を適切に選択することができるため、複数の測距装置をまたいだ対象物のトラッキングの効率化が可能である。
【0154】
以上のように、本実施形態によれば、測距範囲が隣り合うまたは部分的に重なる複数の測距装置100の間で、対象物のトラッキングに必要な情報が送受信される。このため、測距装置100ごとに同一の対象物に関するトラッキング情報を設定し直すことなく、効率的に対象物をトラッキングすることができる。特に、従来のように光ビームで広い範囲をスキャニングする場合には、対象物を検出するまでに時間を要する。これに対し、本実施形態では、複数の測距装置100の間でトラッキング情報を送受信することにより、光ビームでのスキャニングの範囲を対象物の計測位置あるいは推定位置に従って狭めることができる。その結果、測距装置100の視野内に初めて進入した対象物についても、素早く検出することができる。
【0155】
(実施形態2)
次に、本開示の第2の実施形態を説明する。
【0156】
実施形態1では、測距システム10に含まれる複数の測距装置100の間で、対象物および照明に関するデータが送受信される。各測距装置100は、測距結果を示すデータを処理装置300に送信する。これに対し、実施形態2では、各測距装置100が、測距結果を示すデータに加えて、対象物および照明に関するデータを処理装置300に送信する。処理装置300は、各測距装置100の位置および向きの情報に基づいて、送信された測距データを、共通の座標系で表現されたデータとして統合する。処理装置300はさらに、各測距装置100によって測距された対象物の次の測距時刻における位置を推定し、その対象物を測距可能な他の測距装置100に、照明に関するデータを送信する。これにより、複数の測距装置100の測距範囲にまたがって移動する対象物を効率的にトラッキングすることができる。
【0157】
図12は、実施形態2における測距システム20の構成を示すブロック図である。本実施形態では、各測距装置100は、他の測距装置100と直接通信せず、処理装置300を介してデータの送受信が行われる。各測距装置100は、処理装置300と、無線または有線で接続されており、処理装置300との間でデータを送受信することができる。本実施形態では、記憶装置200は、
図7に示すデータに加えて、各測距装置100のフラッシュ光および光ビームのそれぞれの測距範囲を示すデータを記憶している。それらの測距範囲を示すデータは、測距システム20に設定された共通の座標系で表現されている。
【0158】
図13は、実施形態2における処理装置300の動作を示すフローチャートである。実施形態1における処理装置300の動作(
図8参照)と同じ動作には同じ符号を付し、説明を省略する。ステップS1100からステップS1600、およびステップS1700の動作は、
図8に示す動作と同様である。本実施形態では、ステップS1600とステップS1700との間に、ステップS4100からS4400の動作が追加されている。以下、ステップS4100からS4400の動作を説明する。
【0159】
(ステップS4100)
処理装置300は、ステップS1500で記録された対象物の位置データと、その直前の測距の時点で記録された同じ対象物の位置データとに基づいて、次の測距の時点での当該対象物の位置を推定する。位置推定は、例えば、当該対象物の移動ベクトルを求めることによって行われ得る。処理装置300は、連続する2回の測距の時点での対象物の位置の差から、移動ベクトルを求める。求めた移動ベクトルの大きさを2倍にすることで、次の測距時点での対象物の位置を推定することができる。
【0160】
(ステップS4200)
処理装置300は、記憶装置200に記録された各測距装置100の測距範囲のデータを参照して、ステップS4100で推定した位置にある対象物を測距可能な1つ以上の測距装置100を選択する。
【0161】
(ステップS4300)
処理装置300は、記憶装置200に記録された測距装置100の座標と向きを参照して、対象物の推定位置の座標値を、ステップS4200で選択された測距装置100の座標系での座標値に変換する。そして、記憶装置200内のデータを参照して、当該対象物の測距に適した測距装置100の照明の種類と照射方向とを決定する。
【0162】
(ステップS4400)
処理装置300は、ステップS4300で決定された照明の種類および照射方向の情報と、対象物の形状を示すテンプレート等の情報とを含むトラッキングデータを、ステップS4200で選択された測距装置100に送信する。トラッキングデータは、例えば
図6Cに示すデータと同様の形式で送信され得る。
【0163】
以上の動作により、複数の測距装置100の視野範囲をまたいで移動する対象物を、測距する測距装置100が入れ替わるたびに初期化するのでなく、単一の対象物として効率よくトラッキングすることができる。
【0164】
なお、処理装置300は、ステップS4100からS4400の動作を行う代わりに、各測距装置100から送信されたトラッキングデータを他の測距装置100に単に中継するように構成されていてもよい。その場合には、送信元の測距装置100または送信先の測距装置100のいずれかが、必要な座標変換を行い、対象物の測距に適した照明の種類および照射方向を決定する。
【0165】
以上の実施形態において、各測距装置100は、光ビームとフラッシュ光とを切り替えて出射することができるが、フラッシュ光を出射する機能を備えていなくてもよい。その場合には、照明の種類を決定する動作は省略され、記録および送信されるデータにも照明の種類を示す情報は含まれない。また、各測距装置100は、光ビームの広がり角を変化させる機能を備えていてもよい。そのような構成においては、対象物の大きさまたは距離に応じて光ビームの広がり角を適応的に変化させることができる。
【産業上の利用可能性】
【0166】
本開示の技術は、測距装置を複数備えるシステムに広く利用可能である。例えば、本開示の技術は、自動運転を行う移動体に搭載される測距システムに有用である。
【符号の説明】
【0167】
10、20 測距システム
50 移動体
60 対象物
100 測距装置
110 発光装置
120 受光装置
130 プロセッサ
140 記憶媒体
150 制御回路
160 通信回路
162 受信回路
164 送信回路
200 記憶装置
300 処理装置