(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-07
(45)【発行日】2024-06-17
(54)【発明の名称】光検出システム
(51)【国際特許分類】
G01B 11/24 20060101AFI20240610BHJP
【FI】
G01B11/24 K
(21)【出願番号】P 2020124549
(22)【出願日】2020-07-21
【審査請求日】2023-07-06
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】白髭 大貴
(72)【発明者】
【氏名】関根 寛
(72)【発明者】
【氏名】森本 和浩
【審査官】國田 正久
(56)【参考文献】
【文献】特開2022-021296(JP,A)
【文献】国際公開第2016/063028(WO,A1)
【文献】特開2017-009405(JP,A)
【文献】Gariepy, G. et al.,Single-photon sensitive light-in-flight imaging,Nature Communications,2015年01月27日,6:6021,DOI: 10.1038/ncomms7021
(58)【調査した分野】(Int.Cl.,DB名)
G01B 11/00 - 11/30
(57)【特許請求の範囲】
【請求項1】
複数の光電変換部が2次元平面に配された光検出部と、前記光検出部で取得された情報に基づき演算を行う演算処理部と、を備える光検出システムであって、
前記光検出部は、前記2次元平面における、レーザ光源から被写体への入射光線に基づく光の光量分布情報と、前記被写体からの反射光線に基づく光の光量分布情報と、を取得し、
前記演算処理部は、前記入射光線に基づく光の光量分布情報と、前記反射光線に基づく光の光量分布情報と、前記入射光線に基づく光の光量分布情報及び前記反射光線に基づく光の光量分布情報を取得した時間である時間情報とから、前記入射光線が反射する前記被写体の反射面に対する法線ベクトルの情報を演算し、
前記法線ベクトルは、前記2次元平面と直交する方向を含む3次元におけるベクトルであることを特徴とする光検出システム。
【請求項2】
複数の光電変換部が2次元平面に配された光検出部と、前記光検出部で取得された情報に基づき演算を行う演算処理部と、を備える光検出システムであって、
前記光検出部は、前記2次元平面における、レーザ光源から被写体への入射光線に基づく光の光量分布情報と、前記被写体での屈折光線に基づく光の光量分布情報と、を取得し、
前記演算処理部は、前記入射光線に基づく光の光量分布情報と、前記屈折光線に基づく光の光量分布情報と、前記入射光線に基づく光の光量分布情報及び前記屈折光線に基づく光の光量分布情報を取得した時間である時間情報とから、前記入射光
線が屈折する前記被写体の屈折面に対する法線ベクトルの情報を演算し、
前記法線ベクトルは、前記2次元平面と直交する方向を含む3次元におけるベクトルであることを特徴とする光検出システム。
【請求項3】
複数の光電変換部が2次元平面に配された光検出部と、前記光検出部で取得された情報に基づき演算を行う演算処理部と、を備える光検出システムであって、
前記光検出部は、前記2次元平面における、レーザ光源から照射され、被写体で反射された反射光線に基づく光の光量分布情報を取得し、
前記演算処理部は、前記レーザ光源から前記被写体へ照射されるレーザ光の方向情報と、前記反射光線に基づく光の光量分布情報と、前記反射光線に基づく光の光量分布情報を取得した時間である時間情報とから、前記レーザ光が反射する前記被写体の反射面に対する法線ベクトルの情報を演算し、
前記法線ベクトルは、前記2次元平面と直交する方向を含む3次元における法線ベクトルであることを特徴とする光検出システム。
【請求項4】
前記レーザ光源の照射タイミングと、前記光検出部の検出タイミングとが、タイミング制御部により制御されていることを特徴とする請求項1乃至3のいずれか1項に記載の光検出システム。
【請求項5】
前記光電変換部はアバランシェダイオードであることを特徴とする請求項1乃至4のいずれか1項に記載の光検出システム。
【請求項6】
第2光検出部を備え、
前記第2光検出部は、2次元平面に複数の第2光電変換部が配されており、前記光検出部と、前記第2光検出部は異なる位置に設けられていることを特徴とする請求項1乃至5のいずれか1項に記載の光検出システム。
【請求項7】
前記レーザ光源の照射開始と前記光電変換部の光検出開始の動作が、前記レーザ光源の照射開始から前記光電変換部の光検出開始までの期間を固定した状態で、複数回行われることを特徴とする請求項1乃至6のいずれか1項に記載の光検出システム。
【請求項8】
第1のフレーム期間における、前記レーザ光源の照射開始から前記光電変換部の光検出開始までの期間と、第2のフレーム期間における、前記レーザ光源の照射開始から前記光電変換部の光検出開始までの期間とは異なることを特徴とする請求項1乃至7のいずれか1項に記載の光検出システム。
【請求項9】
前記被写体は、前記光検出部の視野の範囲外に配置されていることを特徴とする請求項1乃至8のいずれか1項に記載の光検出システム。
【請求項10】
前記レーザ光源の反射面は、前記光検出部の死角にあることを特徴とする請求項1乃至9のいずれか1項に記載の光検出システム。
【請求項11】
前記光電変換部に入射する光をカウントするカウンタを有し、
前記光電変換部の光検出開始を制御する制御部は、前記光電変換部と前記カウンタとの間に設けられているスイッチ、または論理回路であることを特徴とする請求項1乃至10のいずれか1項に記載の光検出システム。
【請求項12】
前記光電変換部に入射する光をカウントするカウンタを有し、
前記光電変換部の光検出開始を制御する制御部は、前記カウンタの動作と非動作とを切り替える信号を前記カウンタに入力することを特徴とする請求項1乃至11のいずれか1項に記載の光検出システム。
【請求項13】
前記被写体における前記レーザ光源から被写体への入射光線の照射位置を変えながら複数の前記法線ベクトルを演算し、
前記複数の法線ベクトルから被写体の3次元空間における形状を推定することを特徴とする請求項1乃至12のいずれか1項に記載の光検出システム。
【請求項14】
前記入射光線に基づく光
は、拡散光であることを特徴とする請求項1
、2、13のいずれか1項に記載の光検出システム。
【請求項15】
前記反射光線に基づく光は、拡散光であることを特徴とする請求項1又は3に記載の光検出システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、光検出システムに関する。
【背景技術】
【0002】
アバランシェ増倍を起こすアバランシェダイオードを用いた光検出部において、アバランシェダイオードに到来する光子の数をデジタル的に計測し、その計数値をデジタル信号として画素から出力する光検出部が知られている。このような技術は、シングルフォトンアバランシェダイオード(SPAD:Single-photon avalanche diode)と呼ばれている。
【0003】
特許文献1には、光源装置から被写体に向かって投光され、被写体の表面で反射された光を、複数のSPAD画素を含む光検出部が受光することにより、被写体までの距離に応じた距離画像を取得することができる装置が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1の装置においては、距離情報を得るために、被写体からの反射光を光検出部が受光する必要がある。しかしながら、被写体の形状や被写体と光検出部との位置関係によって、光検出部が反射光を受光できない可能性がある。この場合に、特許文献1の装置においては、被写体の情報を得ることができない。
【0006】
そこで、本発明は、光検出部が被写体からの反射光を受光できない場合でも、被写体の情報を得ることができる光検出システムを提供することを目的とする。
【課題を解決するための手段】
【0007】
一形態に係る光検出システムは、複数の光電変換部が2次元平面に配された光検出部と、前記光検出部で取得された情報に基づき演算を行う演算処理部と、を備える光検出システムであって、前記光検出部は、前記2次元平面における、レーザ光源から被写体への入射光線に基づく光の光量分布情報と、前記被写体からの反射光線に基づく光の光量分布情報と、を取得し、前記演算処理部は、前記入射光線に基づく光の光量分布情報と、前記反射光線に基づく光の光量分布情報と、前記入射光線に基づく光の光量分布情報及び前記反射光線に基づく光の光量分布情報を取得した時間である時間情報とから、前記入射光線が反射する前記被写体の反射面に対する法線ベクトルの情報を演算し、前記法線ベクトルは、前記2次元平面と直交する方向を含む3次元におけるベクトルである。
【0008】
一形態に係る光検出システムは、複数の光電変換部が2次元平面に配された光検出部と、前記光検出部で取得された情報に基づき演算を行う演算処理部と、を備える光検出システムであって、前記光検出部は、前記2次元平面における、レーザ光源から被写体への入射光線に基づく光の光量分布情報と、前記被写体での屈折光線に基づく光の光量分布情報と、を取得し、前記演算処理部は、前記入射光線に基づく光の光量分布情報と、前記屈折光線に基づく光の光量分布情報と、前記入射光線に基づく光の光量分布情報及び前記屈折光線に基づく光の光量分布情報を取得した時間である時間情報とから、前記入射光が屈折する前記被写体の屈折面に対する法線ベクトルの情報を演算し、前記法線ベクトルは、前記2次元平面と直交する方向を含む3次元におけるベクトルである。
【0009】
一形態に係る光検出システムは、複数の光電変換部が2次元平面に配された光検出部と、前記光検出部で取得された情報に基づき演算を行う演算処理部と、を備える光検出システムであって、前記光検出部は、前記2次元平面における、レーザ光源から照射され、被写体で反射された反射光線に基づく光の光量分布情報を取得し、前記演算処理部は、前記レーザ光源から前記被写体へ照射されるレーザ光の方向情報と、前記反射光線に基づく光の光量分布情報と、前記反射光線に基づく光の光量分布情報を取得した時間である時間情報とから、前記入射光が反射する前記被写体の反射面に対する法線ベクトルの情報を演算し、
前記法線ベクトルは、前記2次元平面と直交する方向を含む3次元における法線ベクトルである。
【発明の効果】
【0010】
本発明によれば、光検出部が被写体からの反射光を受光できない場合でも、被写体の情報を得ることができる光検出システムを提供することができる。
【図面の簡単な説明】
【0011】
【
図1】実施形態1に係る光検出システムの構成図である。
【
図2】実施形態1に係る光検出システムの概念を示す図である。
【
図3】実施形態1に係る光検出システムの効果を示す図である。
【
図4】実施形態1に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図5】光速よりも遅い動体と光速で進むパルス光の違いを説明する図である。
【
図7】実施形態1に係る光検出部の駆動パルスを説明する図である。
【
図8】実施形態1に係る演算処理部で行う処理を説明する図である。
【
図9】実施形態1に係る光検出システムによる3次元形状計測結果のイメージ図である。
【
図10】光検出システムの演算処理のコンセプトを説明する図である。
【
図11】実施形態2に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図12】実施形態3に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図13】実施形態4に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図14】実施形態5に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図15】実施形態6に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図16】実施形態7に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図17】実施形態8に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図18】実施形態9に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図19】実施形態10に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図20】実施形態11に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図21】実施形態12に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【
図22】実施形態13に係る光検出部とレーザ光源と被写体との位置関係を示す構成図である。
【発明を実施するための形態】
【0012】
以下に示す形態は、本発明の技術思想を具体化するためのものであって、本発明を限定するものではない。各図面が示す部材の大きさや位置関係は、説明を明確にするために誇張していることがある。以下の説明において、同一の構成については同一の番号を付して説明を省略することがある。
【0013】
(実施形態1)
図1は、本実施形態に係る光検出システム1000の構成図である。
【0014】
光源101は、レーザ光を照射可能なレーザ光源である。たとえば、光源101としては、短パルスレーザであるピコ秒レーザを用いることができる。光源の波長は特に限定されないが、例えば、赤外光を発する光源を用いることができる。例えば、光源のピーク波長が、750nm以上1500nm以下にある光源を用いることができる。
【0015】
光検出部100は、光源101から照射されたパルスレーザ光により生じた拡散光(物体(例えば、水蒸気や塵)に光が照射されて生じる光)を検出する装置である。光検出部100は、光源101から照射されたパルスレーザ光を検出してもよい。光検出部100は、XY方向に複数のSPAD画素が配置されたSPADアレイである。なお、以下では光検出部100に含まれる光電変換部がアバランシェダイオードである例を説明する。これに限らず、光電変換部はアバランシェ増倍しないフォトダイオードにより構成されていてもよい。
【0016】
タイミング制御部110は、光源101の照射タイミングと光検出部100による光検出タイミングとを制御している。具体的には、光源101の照射開始タイミングおよび照射終了タイミングと、光検出部100の光検出開始タイミングおよび光検出終了タイミングとを制御している。言い換えると、タイミング制御部110は、光源101の照射タイミングと、光検出部100による光検出の開始タイミングとを同期している。ここで、「同期」とは、光源101の照射タイミングと光検出の開始タイミングとを同時にするのはもちろんのこと、両者のタイミングがずれており、そのずれがタイミング制御部110からの制御信号に基づくものである場合も含む。つまり、光源101の照射タイミングと、光検出部100の開始タイミングとが、タイミング制御部110からの共通の制御信号に基づいて制御されているものを「同期」という。
【0017】
演算処理部120は、光検出部100で検出された情報に基づき演算処理する。演算処理部120は、進行方向解析部111、空間情報抽出部112、画像再構成部113を有する。
【0018】
進行方向解析部111は、光検出部100から出力される複数フレームの2次元平面の光量分布情報から、レーザ光の進行方向を演算する。すなわち、x(X方向の情報),y(Y方向の情報),t(時間情報)の情報から、XY平面における光の進行方向を求める。進行方向解析部111は、光の進行方向ごとに、光跡を複数のグループに分けてもよい。
【0019】
空間情報抽出部112は、進行方向解析部111により演算されたパルスレーザ光の進行方向ごとに、光の進行方向のうちZ方向成分の空間情報を抽出する。すなわち、x,y,tの3次元情報からx,y,z,tの4次元情報における光の進行方向を求める。x,y,z、tの4次元情報における光の進行方向を得ることにより、Z方向成分を含む被写体の法線ベクトルを求めることが可能となる。4次元情報の求め方についての詳細は後述する。
【0020】
画像再構成部113は、空間情報抽出部112から入力された法線ベクトルの情報から、x、y、zの3次元空間における被写体の形状を再構成し、表示部114に情報を出力する。
【0021】
表示部114は、画像再構成部113から入力された信号に基づいて、画像を表示する。ユーザの操作により、画像再構成部113から出力される情報を選択し、表示部114に画像を表示してもよい。
【0022】
図2を参照しながら、本実施形態に係る光検出システム1000を用いた測定方法の概念を説明する。
【0023】
図2(A)には、光源から被写体102への入射光ベクトルn
iと、被写体からの反射光ベクトルn
rとを示している。本明細書において、「ベクトル」とは、x,y,zの3次元空間における光の進行方向をいう。本実施形態では、x,y,zの3次元空間における入射光ベクトルと、反射光ベクトルと、から、x,y,zの3次元空間における法線ベクトルを演算している。
【0024】
図2(B)に示すように、入射光ベクトルn
iと反射光ベクトルn
rとから、入射光ベクトルn
iと反射光ベクトルn
rとの交点における反射面に対する法線ベクトルを演算することが可能となる。当該法線ベクトルは、照射範囲の反射面に対するものであり、照射範囲以外の面に対する法線ベクトルはわからない。そこで、被写体102への照射範囲を変えながら光源からの光を照射し、各領域(各照射範囲)での法線ベクトルを演算する。これにより、各領域での法線ベクトルを得ることができ、被写体の3次元形状を得ることが可能となる。
【0025】
ここで、
図3を参照しながら、x,y,zの3次元空間における入射光ベクトルおよび反射光ベクトルを求めることの効果を説明する。
図3では、被写体が円柱の場合と円錐の場合について説明するが、被写体はこれらの形状に限られない。
図3(A)および
図3(B)は、被写体と光検出部100との3次元空間における配置位置を示している。光検出部100は、それぞれの被写体のXY平面を検出するように配置されている。
図3(C)は、
図3(A)の円柱について、YZ平面で観測した場合の入射光線310および反射光線311を示している。
図3(D)は、
図3(B)の円錐について、YZ平面で観測した場合の入射光線320および反射光線321を示している。
図3(E)は、
図3(A)に示す光検出部100と
図3(B)に示す光検出部100とのそれぞれから得られた入射光線310、320および反射光線311、321を示している。
図3(C)、
図3(D)において、入射光線の進行方向は同じであるが、反射光線の進行方向は
図3(C)、
図3(D)で異なる。しかしながら、
図3(E)に示すように、光検出部100で検出されたXY平面においては反射光線311、321の進行方向が同じになることがある。つまり、x、y、zの3次元空間で見ると反射光ベクトルの進行方向が各例で異なるにも関わらず、x、y、tの3次元情報(x、yの2次元空間)から得られた反射光線は円柱と円錐で同じにみえる場合がある。この場合に、光検出部100にから得られたx、y、tの3次元情報をもとに法線ベクトルを演算すると、法線ベクトルの進行方向は同じになる。よって、3次元情報をもとにした法線ベクトルからは、被写体が円柱なのか円錐なのかを判断することができない。このように、x、y、tの3次元情報のみでは、正確な法線ベクトルを得られない場合がある。以下で詳しく説明するが、本実施形態では、x、y、tの3次元情報からx、y、z、tの4次元情報を演算している。つまり、本実施形態によれば、x,y,zの3次元空間における正確な法線ベクトルを演算することが可能となる。したがって、被写体のx、y、zの3次元形状を演算することが可能となる。
【0026】
図4を参照しながら、本実施形態の光検出部100、光源101、被写体102の配置位置の一例を説明する。光検出部100は、XY平面の情報を撮像している。この場合に、光源からの入射光線n
iと反射光線n
rを光検出部100で検出すると、
図3で説明したように、XY平面における光線となる。つまり、光検出部100で検出される情報は、Z方向における情報はなく、x,yの2次元空間の情報のみとなる。本実施形態では、Z方向の情報を得るために、XY平面の空間情報と時間情報(t)から、Z方向の空間情報を得ている。具体的には、光源からのパルスレーザ光による拡散光の「見かけの速度」を用いてZ方向の空間情報を得ている。以下で、「見かけの速度」について説明する。
【0027】
図5は、光速よりも十分遅い動体の見かけの速度と、光速で進むパルス光との見かけの速度との違いを説明するための図である。
【0028】
図5(A)は、光速よりも十分遅い動体の例として、ボールが移動する例を示している。動体の進む方向と同じ方向に設けられているカメラC(θ=0°)と、動体の進む方向とは逆の方向に設けられているカメラA(θ=180°)と、動体の進む方向と直交する方向に設けられているカメラB(θ=90°)が示されている。
【0029】
図5(B)は、動体の位置(被写体位置)と、動体からの拡散光を各カメラが検出している時間(検出時間)との関係を示したものである。動体からの拡散光がカメラに到達する間に動体はほぼ動かないため、動体の位置によらず、カメラA、B、Cの検出時間は、一緒の傾向を示す。
【0030】
図5(C)は、動体の進む方向に対するカメラが設けられている角度θと、見かけの速度との関係を示したものである。見かけの速度は、検出時間あたりの動体の移動量となる。
図5(B)から、検出時間あたりの動体の移動量は、一定であるため、見かけの速度も一定となる。
図5(C)は、この関係を示したものである。すなわち、動体の見かけの速度は、各カメラに対する動体の進行方向によらず、一定となる。
【0031】
他方、
図5(D)は、光速で進むパルスレーザ光の例を示している。
図5(A)と同様に、パルスレーザ光の進む方向と同じ方向にカメラC(θ=0°)、パルスレーザ光の進む方向とは逆の方向にカメラA(θ=180°)、パルスレーザ光の進む方向と直交する方向にカメラB(θ=90°)がそれぞれ設けられている。
【0032】
図5(E)は、パルスレーザ光の位置(被写体位置)と、パルス光によって生じる拡散光が各カメラで検出されている時間(検出時間)との関係を示したものである。所定の位置で発生したパルス光の拡散光がカメラに到達する間に、拡散光を発生するパルス光自体も進むため、異なる位置に設けられているカメラA、B、Cの検出時間がそれぞれ異なることとなる。具体的には、カメラCでは、X1からX4において生じた拡散光は、同時に検出される。他方、カメラAでは、X1からX4において生じた拡散光は、X1、X2、X3、X4の順でカメラAに到達するため、各位置からの拡散光の検出時間は異なる。カメラBも、カメラAと同様に、X1からX4において生じた拡散光は、X1、X2、X3、X4の順でカメラAに到達するため、各位置からの拡散光の検出時間は異なる。但し、カメラAが設けられた位置と比較すると、カメラBが設けられた位置は、拡散光が発生する各地点からの距離がほぼ一定のため、各地点で発生する拡散光のカメラBの検出時間の間隔は、カメラAよりも短くなる。この結果、
図5(E)に示すような関係となる。
【0033】
図5(F)は、パルス光の進む方向に対するカメラが設けられている角度θと、見かけの速度との関係を示したものである。
図5(E)から、見かけの速度、すなわち、検出時間あたりの拡散光の移動量は、各カメラにおいて異なる。具体的には、カメラB(θ=90°)で検出される拡散光の見かけの速度は、カメラA(θ=180°)よりも大きくなる。また、カメラC(θ=0°)で検出される拡散光の見かけの速度は、無限大となる。
図5(D)は、この関係を示したものである。すなわち、パルス光の見かけの速度は、各カメラに対するパルス光の進行方向によって変化する。
【0034】
以上より、カメラにより観測される光の進行方向の速度を解析することにより、新たな次元(Z情報)の光の進行方向のベクトルを見積もることが可能となる。具体的には、カメラの光検出部で取得されたXY平面の光量分布情報と、この光量分布情報を取得した時間である時間情報とを複数備えたデータセットから、Z方向の情報も含めた情報を抽出することが可能となる。すなわち、3次元の時空間情報から4次元の時空間情報を取得することが可能となる。光量分布情報とは拡散光の分布情報である。
【0035】
図6は、光検出部100の画素領域を示したものである。画素領域には、SPAD画素103がXY方向において2次元状に複数繰り返して配されている。
【0036】
1つのSPAD画素103は、光電変換部201(アバランシェダイオード)と、クエンチ素子202と、制御部210、カウンタ/メモリ211、読み出し部212を有する。
【0037】
光電変換部201のカソードにはアノードに供給される電位VLよりも高い電位VHに基づく電位が供給される。光電変換部201のアノードとカソードには、光電変換部201に入射したフォトンがアバランシェ増倍されるような逆バイアスがかかるように電位が供給される。このような逆バイアスの電位を供給した状態で光電変換することで、入射光によって生じた電荷がアバランシェ増倍を起こしアバランシェ電流が発生する。
【0038】
逆バイアスの電位が供給される場合において、アノードおよびカソードの電位差が降伏電圧より大きいときには、アバランシェダイオードはガイガーモード動作となる。ガイガーモード動作を用いて単一光子レベルの微弱信号を高速検出するアバランシェダイオードがSPAD(Single Photon Avalanche Diode)である。
【0039】
クエンチ素子202は、高い電位VHを供給する電源と光電変換部201に接続される。クエンチ素子202は、P型MOSトランジスタまたはPoly抵抗などの抵抗素子により構成される。また、クエンチ素子202は、直列の複数のMOSトランジスタにより構成されていてもよい。光電変換部201においてアバランシェ増倍により光電流が増倍されると、増倍した電荷によって得られる電流が、光電変換部201とクエンチ素子202との接続ノードに流れる。この電流による電圧降下により、光電変換部201のカソードの電位が下がり、光電変換部201は、電子なだれを形成しなくなる。これにより、光電変換部201のアバランシェ増倍が停止する。その後、電源の電位VHがクエンチ素子202を介して光電変換部201のカソードに供給されるため、光電変換部201のカソードに供給される電位が電位VHに戻る。つまり、光電変換部201の動作領域は再びガイガーモード動作となる。このように、クエンチ素子202は、アバランシェ増倍による電荷の増倍時に負荷回路(クエンチ回路)として機能し、アバランシェ増倍を抑制する働きを持つ(クエンチ動作)。また、クエンチ素子は、アバランシェ増倍を抑制した後に、アバランシェダイオードの動作領域を再びガイガーモードにする働きを持つ。
【0040】
制御部210は、光電変換部201からの出力信号をカウントするか否かを決定する。例えば、制御部210は光電変換部201とカウンタ/メモリ211との間に設けられたスイッチ(ゲート回路)である。スイッチのゲートは、パルス線124と接続されており、パルス線124に入力される信号に応じて、制御部のオンとオフが切り替えられる。
図1のタイミング制御部110からの制御信号に基づく信号がパルス線124に入力される。そして、スイッチのゲートは全列一括して制御される。これにより、全SPAD画素が一括して光検出の開始と終了が制御される。このような制御をグローバルシャッタ制御ということもある。
【0041】
また、制御部210は、スイッチではなく、論理回路で構成してもよい。例えば、論理回路として、AND回路を設け、AND回路の第1の入力を光電変換部201からの出力とし、第2の入力をパルス線124の信号とすれば、光電変換部201からの出力信号をカウントするか否かを切り替えることが可能となる。
【0042】
さらに、制御部210は、光電変換部201とカウンタ/メモリ211との間に設ける必要はなく、カウンタ/メモリ211のうち、カウンタの動作と非動作を切り替える信号を入力する回路であってもよい。
【0043】
カウンタ/メモリ211は、光電変換部201に入る光子の数をカウントして、デジタルデータとして保持する。リセット線213は各行に対応して設けられており、垂直走査回路部(不図示)からリセット線213に制御パルスが供給されたとき、保持されていた信号がリセットされる。
【0044】
読み出し部212は、カウンタ/メモリ211と読み出し信号線123に接続されている。読み出し部212には、垂直走査回路部(不図示)から、制御線を介して制御パルスが供給され、カウンタ/メモリ211のカウント値を読み出し信号線123に出力するか否かを切り替える。読み出し部212は、例えば、信号を出力するためのバッファ回路などを含む。
【0045】
読み出し信号線123は、光検出部100から演算処理部120に出力する信号線であっても、光検出部100内に設けられている信号処理部に出力する信号線であってもよい。また、水平走査回路部(不図示)と垂直走査回路部(不図示)は、SPADアレイが設けられている基板に設けてもよいし、SPADアレイが設けられている基板とは異なる基板に設けてもよい。
【0046】
また、上記では、カウンタを用いる構成を示したが、カウンタの代わりに、時間・デジタル変換回路(TDC:Time to Digital Converter)を設けて、パルス検出タイミングを取得してメモリに情報を保持してもよい。
【0047】
図7は、光源101からのパルスレーザ光を発光するタイミング、パルスレーザ光が物体(例えば、水蒸気や塵)に照射され、パルスレーザ光の拡散光が光検出部100に到達するタイミングを示す。また、
図7は、光検出部100で光検出(光量カウント)するタイミングも示している。
【0048】
第1フレーム期間では、時刻t11(t12)に発光光が照射されるとともに、光検出が開始され、時刻t13に光検出が終了する。
図9に示す第1フレーム期間では、拡散光が光検出部100に到達する時刻には、光検出部100は光検出しておらず、拡散光は検出されていない。第1フレーム期間で、光検出部100が光検出を複数回行っているのは、XY平面の光量分布を求めるためである。各フレーム期間内で複数回の光検出が終了すると、メモリに格納されている値が読み出される。
【0049】
図6に示すように、光検出部100には、アレイ状に複数のSPAD画素が配されており、各行に配されている複数のSPAD画素の光検出開始のタイミングは、全画素一括で制御される。すなわち、第1フレームでは、SPADの全画素において、
図9に示す発光光のタイミングと、カウント期間のタイミングは同じである。
【0050】
第2フレームでは、時刻t21に発光光が照射され、時刻t22に光検出が開始され、時刻t23に光検出が終了する。第1フレームと比較して、第2フレームは、発光光が照射される時刻から光検出が開始される時刻までの間が長くなっている。
図7に示す第2フレームでは、拡散光が光検出部100に到達する時刻に、光検出部100は光検出しており、拡散光が検出される。
【0051】
その後、各フレームは、発光光の照射時刻と光検出開始時刻の間の時間が徐々に長くなるように設定され、第Nフレームでは、時刻tN1に発光光が照射され、時刻tN22に光検出が開始され、時刻tN3に光検出が終了するように構成されている。
【0052】
光検出部100は、2次元にSPAD画素が配置されたSPADアレイであるため、上記のようなタイミングチャートにより、フレームごとに、XY平面の光量分布情報と、この光量分布情報を取得した時間である時間情報を備えた1組のデータが取得できる。このため、x,y,tに関する情報を取得することができる。
【0053】
図8は、
図1の進行方向解析部111と、空間情報抽出部112で行われる演算処理のフローを示した図である。演算処理が開始されると、進行方向解析部111は、入射光および反射光を解析し、入射光および反射光の進行方向(光線のベクトル)を演算する(S410)。
【0054】
次に、入射光ベクトルと反射光ベクトルの交点を求める(S420)。光検出部で交点が撮像され且つ一点で交わる場合は、その座標を交点とし次のステップに進む(S430)。光検出部で交点が撮像されておらず、交点の情報が直接得られていない場合は、2つのベクトルが最も近づく点を交点とし、交点で交わるように2つのベクトルを3次元における傾きを変えずに移動させる。(S440)。
【0055】
次に、空間情報抽出部112において、フィッティングする関数を探索し、交点における被写体表面の法線ベクトルを演算する(S450)。法線ベクトルの演算には、計測された撮像面における光跡の位置情報(XY平面の光量分布情報)と、各光跡の位置情報に対応した時間情報を用いる。関数を探索する計算モデルは後述する。
【0056】
次に、被写体表面の法線ベクトルから被写体の表面の3次元形状を取得する(S460)。
【0057】
ステップS410からステップS460を、光源からの光の照射領域(照射範囲)を変えながら繰り返すことにより、
図9に示すような被写体の3次元形状を計測することができる。
【0058】
(演算処理のコンセプト)
図10は、演算処理部120で行う処理のコンセプトを説明する図である。
【0059】
図10(A)において、符号400は光検出部100の撮像面である。撮像面はXY平面を有する。矢印で記載したのは、光の進行方向のベクトルである。(i)撮像面400に対して平行な方向に進む光、(ii)撮像面400に対して遠ざかる方向に進む光、(iii)撮像面400に対して向う方向に進む光、をそれぞれ示している。
図10では、単純化するために、これらの光は、X方向とZ方向のベクトル成分のみを有し、Y方向のベクトル成分を有さないとしている。
【0060】
図10(B)は、時刻t1~t3について、撮像面400で撮影される上記(i)から(iii)の光の光跡を示したものである。ここで、フレームレートが遅い場合、光跡は線状のように観測される。また、見かけの速度が遅い光の場合、光跡はより尾を引いているように観測される。ここでは光の進行方向に対して光強度の立ち上がり部分(光跡の先頭部分)のみを表示している。
【0061】
図10(B)に示すように、光はX方向とZ方向のベクトル成分を有するが、各時刻において撮影されるXY平面には、Z方向のベクトル成分はXY平面に投影され、Z方向の情報を取り出すことができない。
図10(B)に示すように、進行方向(i)の光に比べて、進行方向(ii)の光は、見かけの速度が遅くなり、逆に、進行方向(i)の光に比べて、進行方向(iii)の光は、見かけの速度が速くなる。
【0062】
図10(C)は、時刻t1~t3と、撮像面の光跡の位置(X方向)との関係を示す図である。
図10(C)において、進行方向(i)~(iii)の光、すなわち、Z方向のベクトル成分が異なる光は、異なる関数で記述されることになる。
【0063】
例えば、線形近似で記述する場合、X方向の位置(目的変数)=a+b・時間(説明変数)となり、Z方向のベクトル成分の違いによって、係数aとbの値が異なることとなる。
【0064】
実際の光跡を記述するためには、Y方向のベクトル成分、拡散光が生じる位置と光検出の撮像面の距離、光検出部からパルス光への方向ベクトルがパルス光の進行とともに時間変化することに起因する非線形効果を考慮しなければならない。そのため、変数および係数が増加し、より複雑なモデルとなるが、光のZ方向のベクトル成分によって、撮像面における光の位置情報と時間情報を記述する関数が異なることは変わらない。
【0065】
図10(D)は、光検出部100で実測されるデータ(計測値)について、
図10(C)と同様に、時間軸と撮像面上の光の位置(X方向)の軸にプロットしたものである。各計測値にフィッティングする関数を探索し、その関数からZ方向のベクトル成分を抽出できれば、Z方向のベクトル成分を推定することができる。
【0066】
すなわち、2次元の空間情報(XZ方向のベクトル情報)及び時間情報に基づき、光検出部上の1次元の位置情報(X方向のベクトル情報)及び時間情報を計算するモデルを作る。そして、実測データであるX方向情報と時間情報を十分に説明できる、XZ方向のベクトル情報と時間情報が探索できれば、Z方向のベクトル成分を推定できる。このような演算は、実測データから観測対象である光の動きを推定しているため、逆問題を解くと表現することも可能である。
【0067】
さらに、次元を拡張して、3次元の空間情報(XYZ方向のベクトル情報)及び時間情報から、光検出部上の2次元の空間情報(XY方向のベクトル情報)及び時間情報を計算するモデルを作る。そして、実測データであるXY方向の情報と時間情報(データセット)を十分に説明できる、3次元の空間情報(XYZ方向のベクトル情報)と時間情報が探索できれば、Z方向のベクトル成分を推定できる。より具体的には、データセットと、モデルを用いて計算した光検出部上の2次元の空間情報及び時間情報とをフィッティングすることにより、3次元の空間情報および時間情報を取得する。そして、取得された3次元の空間情報および時間情報から、Z方向のベクトル成分を推定する。
【0068】
(計算モデルの説明)
以下、計算に用いるモデルの一例について説明をする。下記モデルのかわりに、レンズの収差やセンサ特性の不均一性などを考慮した、より複雑なモデルを用いてもよい。また、最小二乗法を解く代わりに、ニューラルネットワークモデル等を用いたパラメータ推定を行ってもよい。
【0069】
レーザパルス位置の時間変化
【数1】
は、
【数2】
と記述できる。ここで、
【数3】
は、時間に依存しない定数ベクトル、cは、光の速度、
【数4】
は、光伝搬の方向を示す規格化ベクトルである。ここで、tは、
【数5】
にレーザパルスが到達したときの時間であり、t’に対してオフセットを有している。t’は、
【数6】
の位置にあるレーザパルスがカメラで検出される時間である。光検出器の撮像面(焦点面)に対して射影したレーザパルスの位置は、
【数7】
である。ここで、α(t)は、時間に依存する係数、-z
pは、焦点距離である。z
pが時間に依存しないと仮定すると、α(t)は、α(t)=z
p/(z
0+ct・n
z)と記述できる。光検出器の撮像面に幾何学的に射影されたレーザパルスの動きは以下の式1のように記述できる。
【数8】
【数9】
から光検出器までの光伝搬時間を考慮すると、観測時間t’は、以下の式2のように記述できる。
【数10】
上記式を解くと、以下の式3になる。
【数11】
式3を式1に代入し、観測時間t’の関数である撮像面に射影されたレーザパルス光の位置は以下の式4のように記述できる。
【数12】
時間分解測定により、3次元データポイント(X
i
p’Y
i
p’T
’i)のNセットのデータが取得できる(i=1,2,…,N)。4次元の光を再現するために、6つのパラメータであるx
0,y
0,z
0,n
x,n
y,n
zを設定し、以下の式5に示す最適化問題を解く。
【数13】
ここで、Nは測定データ点の全体の数、(X
p
i,Y
p
i)はi番目のデータ点に関する撮像面の画素の位置、-z
pは焦点距離、T
’iはi番目のデータ点に関する測定された観測時間、
【数14】
はt=0におけるレーザ光の位置である。
式5において、規格化された光伝搬ベクトルは、極座標系で表現すると、
【数15】
となる。式5を極座標に変換すると、以下の式6および式7となる。
【数16】
【数17】
上記式6および式7では、5つのパラメータであるx
0,y
0,z
0,θ,φを設定して最適化問題を解く。
【0070】
上で説明したモデルの特徴は以下の3点である。
【0071】
すなわち、第1として、「光の直進性」と「光速不変の法則」を仮定していることである。第2として、撮像面上の2次元座標(Xp,Yp)は、パルス光の位置(x,y,z)に対する撮像面への射影により演算していることである。第3として、検出時間T’は、パルス光が位置(x,y,z)に到達する時間tに対し、拡散光がカメラに到達するまでにかかる時間を考慮して演算していることである。
【0072】
ところで、データ点数が少ない軌跡では、最適化問題を解く際に、値が発散してしまう、または誤った解に収束してしまう可能性がある。そこで、光の軌跡の連続性を仮定すれば、この問題を回避できることができる。具体的には、複数の軌跡があった場合に、第2の軌跡の開始点が、第1の軌跡の終了点であるという制約条件を追加する。
【0073】
より具体的には、第2の軌跡に関しては、コスト関数(損失関数)であるλ・{(xc-x0-ctc・nx)2+(yc-y0-ctc・ny)2+(zc-z0-ctc・nz)2}を式5に追加すればよい。ここで、(xc,yc,zc,tc)は、第1の軌跡の終了点の4次元座標である。あるいは、最小二乗法の式に追加するのではなく、第2の軌跡を推定する際の初期条件として第1の軌跡の終了点を設定してもよい。
【0074】
(実施形態2)
図11を用いて実施形態2に係る光検出システムの構成について説明する。実施形態2は、光源101からの照射光を反射体104で反射させ、MEMSミラー106でレーザ光の照射位置を変えている点が実施形態1とは異なる。それ以外の構成は、実施形態1と実質的に同じであるため、説明は省略する。
【0075】
本実施形態によれば、実施形態1と同様に光検出部が被写体からの反射光を受光できない場合でも、被写体の3次元形状を求めることができる。また、発熱体である光源101を放熱部材等に固定することができるため、光源101を動かす場合に比べて放熱性を高めることができる。
【0076】
(実施形態3)
図12を用いて実施形態3に係る光検出システムの構成について説明する。実施形態3は、光検出部100の視野の境界L1内にはあるが、光源101からの光の被写体102での反射面が光検出部100の死角の境界L2内に位置する点が実施形態1とは異なる。それ以外の構成は、実施形態1と実質的に同じであるため、説明は省略する。
【0077】
本実施形態では、被写体102での反射面は死角の境界L2内に位置している。したがって、光検出部100は入射光ベクトルniと反射光ベクトルnrの交点を検出できない。しかしながら、入射光ベクトルniと反射光ベクトルnrから入射光ベクトルniと反射光ベクトルnrとの交点を推測している。そして、推測された交点からの法線ベクトルを演算し、被写体102の形状を推測している。
【0078】
本実施形態によれば、実施形態1と同様に光検出部が被写体からの反射光を受光できない場合でも、被写体の3次元形状を求めることができる。また、光検出部100の死角にある被写体102の形状も演算することが可能となる。
【0079】
(実施形態4)
図13を用いて実施形態4に係る光検出システムの構成について説明する。実施形態4は、被写体102が光検出部100の視野の境界L1内に入っていない点が実施形態3とは異なる。以下で説明する構成以外の構成は実施形態3と実質的に同じであるため、説明は省略する。
【0080】
図13に示すように、本実施形態では、光検出部100は被写体102を検出していない。つまり、被写体102は、光検出部100の視野の境界L1外(視野の範囲外)に配置されている。本実施形態では、光検出部100は、入射光ベクトルn
iと反射光ベクトルn
rから被写体102の法線ベクトルを演算することで、被写体の形状を演算している。
【0081】
本実施形態によれば、実施形態1と同様に被写体からの反射光を受光できない場合でも、被写体の形状を求めることができる。また、被写体102を光検出部100が検出可能な位置に配置する必要がなくなり、入射光ベクトルniと反射光ベクトルnrを検出できればよくなる。したがって、光検出部100と被写体102の配置位置の自由度を高めることができる。
【0082】
(実施形態5)
図14を用いて実施形態5に係る光検出システムの構成について説明する。実施形態5は、被写体102からの反射光線を光検出部100で検出し、入射光線を光検出部100で検出していない点が実施形態4とは異なる。それ以外の構成は実施形態4と実質的に同じであるため、説明は省略する。
【0083】
本実施形態は、光源101から被写体102への入射光ベクトルniの情報を持っている場合を想定している。この場合は、光検出部100で検出された反射光線から反射光ベクトルnrを演算し、入射光ベクトルniの情報と組み合わせて法線ベクトルを演算する。
【0084】
本実施形態によれば、実施形態4と同様に、光検出部が反射光を受光していない場合でも、被写体の3次元形状を得ることができる。また、光検出部100と被写体102の配置位置の自由度を高めることができる。
【0085】
(実施形態6)
図15を用いて実施形態6に係る光検出システムの構成について説明する。実施形態6は、被写体102からの反射光線を光検出部100で検出し、入射光線および光源101を光検出部100で検出していない点が実施形態3とは異なる。それ以外の構成は実施形態3と実質的に同じであるため、説明は省略する。
【0086】
本実施形態は、光源101から被写体102への入射光ベクトルn
iの情報を事前に光検出システムが持っている場合を想定している。例えば、
図18に示すように、光源101と入射光線とが光検出部100の死角の境界L2内に位置している。この場合、光検出部100は、入射光線を撮像することができず、光検出部100から入射光ベクトルを得ることはできない。そこで、本実施形態では、光検出部100で検出された反射光線の情報から反射光ベクトルn
rを演算し、システムが保持している入射光ベクトルn
iの情報と組み合わせることにより法線ベクトルを演算する。
【0087】
本実施形態によれば、実施形態3と同様に、光検出部が反射光を受光しない場合でも被写体の3次元形状を求めることができる。また、光検出部100の死角にある被写体102の面の形状も入射光ベクトルniの情報と光検出部100で得られた反射光ベクトルnrの情報から演算することが可能となる。
【0088】
(実施形態7)
図16を用いて実施形態7に係る光検出システムの構成について説明する。実施形態7は、複数の光源101からの光を被写体102に照射し、各光源101からの反射光線を用いて被写体102の形状を測定している点が実施形態6とは異なる。それ以外の構成は実施形態6と実質的に同じであるため、説明は省略する。
【0089】
本実施形態は、光源101aと光源101bを用いて被写体102の形状を測定している。光検出部100は、光源101aからの入射光ベクトルniaと反射光ベクトルnraと、光源101bからの入射光ベクトルnibを用いて被写体の形状を推定している。
【0090】
本実施形態によれば、実施形態6と同様に、光検出部が反射光を受光しない場合でも被写体の3次元形状を求めることができる。また、光検出部100の死角にある被写体102の面の形状も入射光ベクトルの情報と光検出部100で得られた反射光ベクトルの情報から演算することが可能となる。また、1つの光源では死角になってしまう場合でも複数の光源を用いることにより光線を検出できる確率が高くなる。さらに複数の光源101a、101bを用いて被写体の形状を推定しているため、形状の推定精度を高くすることができる。
【0091】
(実施形態8)
図17を用いて実施形態8に係る光検出システムの構成について説明する。実施形態8は、各光源101a、101bで被写体102へのレーザ光の照射範囲を変えている点が実施形態7とは異なる。それ以外の構成は実施形態7と実質的に同じであるため、説明は省略する。
【0092】
本実施形態は、光源101aと光源101bを用いて被写体102の形状を測定している。被写体102を複数の部分に分割したとすると、光源101aは、被写体102の複数の部分のうちの一部を検出し、光源101bは、被写体102の複数の部分のうちの他の一部を検出している。
【0093】
本実施形地によれば、各実施形態と同様に、光検出部が反射光を受光しない場合でも被写体の3次元形状を求めることができる。また、被写体102の形状の測定にかかる時間を減らすことができる。
【0094】
(実施形態9)
図18を用いて実施形態9に係る光検出システムの構成について説明する。実施形態9は、光検出部100と鏡面体108の間に被写体102を配置し、被写体102の形状を測定する点が実施形態1とは異なる。それ以外の構成は実施形態1と実質的に同じであるため、説明は省略する。
【0095】
本実施形態に係る光検出システムは、光源101からの光を鏡面体108と被写体102とで複数回反射させ、被写体102の裏側(光検出部100の死角)の情報を得ている。
【0096】
鏡面体108の反射面は凹面になっていることが好ましい。これにより、被写体102に光を反射させやすくなるためである。
【0097】
本実施形地によれば、各実施形態と同様に、光検出部が反射光を受光しない場合でも被写体の3次元形状を求めることができる。また、光検出部100aの死角の情報も光検出部100で検出できる。
【0098】
(実施形態10)
図19を用いて実施形態10に係る光検出システムの構成について説明する。実施形態10は、複数の光検出部100a、100bを用い被写体102の形状を測定する点が実施形態1とは異なる。それ以外の構成は実施形態1と実質的に同じであるため、説明は省略する。
【0099】
本実施形態は、光検出部100aと光検出部100bを用いて被写体102の形状を測定している。被写体102は、光検出部100aの視野の境界L1a内および光検出部100bの視野の境界L1b内に位置している。光検出部100aと光検出部100bとは異なる位置に設けられている。光検出部100aは、XY面を検出し、光検出部100bはYZ面を検出している。このように、光検出部100bは、光検出部100aが検出する2次元平面とは異なる2次元平面を検出するように配置されている。
【0100】
本実施形態では、光検出部100aでXY平面を検出し、光検出部100bでZを含む平面を検出している。したがって、実施形態1乃至9で説明したような、「見かけの速度」を利用することなく、光検出部100aと光検出部100bとから3次元空間における入射光ベクトルniと反射光ベクトルnrとを得ることができる。したがって、「見かけの速度」を利用することなく、法線ベクトルを演算することができ、被写体の3次元形状を測定することが可能となる。
【0101】
なお、「見かけの速度」を利用する実施形態では、拡散光を用いて入射光ベクトルと反射光ベクトルを求めているが、本実施形態では、レーザ光自体の光量分布情報を用いてもよい。
【0102】
本実施形地によれば、各実施形態と同様に、光検出部が反射光を受光しない場合でも被写体の3次元形状を求めることができる。また、見かけの速度を利用する必要がないため、画像処理にかかる負荷を減らすことができる。さらに、反射光が1つの光検出部100aの死角にあるとしても、他の光検出部100bで検出できる可能性があるため、検出精度を高くすることができる。
【0103】
(実施形態11)
図20を用いて実施形態11に係る光検出システムの構成について説明する。実施形態11は、光検出部100が複数の被写体102a、102bにおける入射光ベクトルと反射光ベクトルとを検出している点が実施形態1と異なる。それ以外の構成は実施形態1と実質的に同じであるため、説明は省略する。
【0104】
図20に示すように、被写体102aの法線ベクトルは、光源101からの入射光ベクトルn
iと反射光ベクトルn
rとから演算している。そして、被写体102bの法線ベクトルは、被写体102aからの反射光ベクトルn
rと被写体102bの反射光ベクトルn
rとから演算している。
【0105】
本実施形地によれば、各実施形態と同様に、光検出部が反射光を受光しない場合でも被写体の3次元形状を求めることができる。また、光源101から直接入射する光を用いていない場合でも形状を演算することができる。
【0106】
(実施形態12)
図21を用いて実施形態12に係る光検出システムの構成について説明する。実施形態12は、光検出部100と被写体102との間に、透光部材105が配置されている点が実施形態1とは異なる。それ以外の構成は実施形態1と実質的に同じであるため、説明は省略する。
【0107】
図21に示すように、光検出部100と被写体102との間に透光部材105が配置されている。透光部材105が配されることにより、光線をより検出しやすくすることができる。透光部材105は、光線が照射される空間の屈折率との屈折率差が0.5以内であることが好ましい。例えば、透光部材105としては、水蒸気、塵等を用いることができる。
【0108】
図22に示すように、光検出部100と被写体102との間に、透光部材105が配置されている場合でも、各実施形態と同様に、光検出部が反射光を受光しない場合でも被写体の3次元形状を求めることができる。
【0109】
(実施形態13)
図22を用いて実施形態13に係る光検出システムの構成について説明する。実施形態13は、被写体102への入射光ベクトルn
iと屈折光ベクトルn
fとから被写体の屈折面に対する法線ベクトルを演算している点が実施形態1とは異なる。それ以外の構成は実施形態1と実質的に同じであるため、説明は省略する。
【0110】
光検出部100は、被写体102のXY平面における入射光ベクトルniと屈折光ベクトルnf2とを検出している。実施形態1と同様に、入射光線からx,y,z,tの4次元情報における入射光ベクトルniを演算し、屈折光線からx,y,z,tの4次元情報における屈折光ベクトルnf2を演算する。被写体102の中を進む屈折光ベクトルnf1は、入射光ベクトルniが被写体に当たる点(ベクトルが変化する点)と被写体から出る点とを繋ぐことにより推定する。
【0111】
被写体102とその周囲の屈折率と、入射光ベクトルと、上記の屈折光ベクトルn
f1と、から、
図22(B)に示すように、物体の界面の法線ベクトルを推定することができる。被写体が存在する空間の屈折率と被写体の屈折率が既知の場合において、スネルの法則sinα/sinβ=ni/n
2により入射光ベクトルn
iと法線ベクトルn
nがなす角α、法線ベクトルn
nと屈折光ベクトルn
f1がなす角β、が一義的に決まる。これにより、法線ベクトルn
nが求められる。屈折光ベクトルn
f1と屈折光ベクトルn
f2が交わる界面においても同様に法線ベクトルが求められる。
【0112】
本実施形態のように、被写体102に光が入射した場合でも、各実施形態と同様に、光検出部が反射光を受光しない場合でも被写体の3次元形状を求める場合がある。
【0113】
本発明は、上記実施形態に限らず種々の変形が可能である。例えば、いずれかの実施形態の一部の構成を他の実施形態に追加した例や、他の実施形態の一部の構成と置換した例も、本発明の実施形態である。
【0114】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【0115】
100 光検出部
101 光源
102 被写体