JP2024014231A - ステレオカメラ装置及びキャリブレーション方法 - Google Patents

ステレオカメラ装置及びキャリブレーション方法 Download PDF

Info

Publication number
JP2024014231A
JP2024014231A JP2022116907A JP2022116907A JP2024014231A JP 2024014231 A JP2024014231 A JP 2024014231A JP 2022116907 A JP2022116907 A JP 2022116907A JP 2022116907 A JP2022116907 A JP 2022116907A JP 2024014231 A JP2024014231 A JP 2024014231A
Authority
JP
Japan
Prior art keywords
parallax error
parallax
vertical
stereo camera
vehicle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022116907A
Other languages
English (en)
Inventor
聰 陳
Cong Chen
和良 山崎
Kazuyoshi Yamazaki
圭一 別井
Keiichi Betsui
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Astemo Ltd filed Critical Hitachi Astemo Ltd
Priority to JP2022116907A priority Critical patent/JP2024014231A/ja
Priority to PCT/JP2023/015371 priority patent/WO2024018709A1/ja
Publication of JP2024014231A publication Critical patent/JP2024014231A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C3/00Measuring distances in line of sight; Optical rangefinders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C3/00Measuring distances in line of sight; Optical rangefinders
    • G01C3/02Details
    • G01C3/06Use of electric means to obtain final indication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Electromagnetism (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Measurement Of Optical Distance (AREA)
  • Studio Devices (AREA)

Abstract

【課題】フロントガラスの取付けと、ステレオカメラの取付けが基準の取付け位置からばらついても、ステレオカメラの視差をチャート無しで補正することが可能なステレオカメラ装置を提供する。【解決手段】ステレオカメラ装置10は、車両に取り付けられた屈折体の姿勢、及び屈折体の形状を含む屈折体特性と、車両に配置されたステレオカメラ21の姿勢とに基づいて求められた、ステレオカメラ21が光を屈折する屈折体を通してそれぞれ撮像する複数の画像の垂直ずれに対する水平方向の視差誤差の相関情報を記憶する記憶部103と、ステレオカメラ21が同じ被写体を撮像した複数の画像をマッチングして、複数の画像の垂直ずれを求めるマッチング部104と、垂直ずれ及び相関情報に基づいて、マッチングされた複数の画像の視差誤差を推定する視差誤差推定部106と、マッチングされた画像の視差を、視差誤差を用いて補正する距離算出部107と、を備える。【選択図】図3

Description

本発明は、ステレオカメラ装置及びキャリブレーション方法に関する。
コンピュータ画像技術の発展に伴い、ステレオカメラがますます広く運用されている。一方、近年は自動車のAI化に伴い、ADAS(Advanced Driver Assistance Systems)や自動運転にもステレオカメラを用いて撮影された画像を認識する技術が広く使われている。ステレオカメラは、通常のカメラとは異なり、ステレオカメラが撮像した画像を用いた3次元物体認識を実現できる。3次元物体認識は、一定距離(基線長)だけ離れて設置された2つのカメラで同じ物体の画像をそれぞれ取得し、三角測距の原理により、物体の視差に基づいて、2つのカメラから物体までの距離を算出し、画像の三次元化を実現する技術である。
従来のステレオカメラは、主に物体までの距離情報を取得することで、車両の正面にある物体を車両が回避する技術をサポートしていた。この技術は、主に自動車の直進時に用いられ、車両が前方物体を回避することが可能となる。しかし、安全基準が上がるにつれて、車両が交差点に進入する前に、交差点にいる歩行者や自転車を検出し、回避する技術も要求されている。
交差点での歩行者や自転車を車両が回避するためには、従来のADAS向けステレオカメラよりも広い画角が必要とされる。一方で、広角レンズを用いて画角を広げると、撮影された画像の歪みが大きくなる。このため、画像の歪みを補正するキャリブレーションが不完全であれば、ステレオカメラが備える左カメラ及び右カメラで撮像された画像に画素ずれが生じる。この結果、画像に映る物体まで測距して物体を検出する処理に不具合が発生し、距離を誤って測ることがある。なお、以下の説明では、左カメラ及び右カメラで撮像された画像の垂直方向の画素ずれを「垂直ずれ」と呼ぶ。また、水平方向の画素ずれは、ステレオカメラの視差検出に影響を与えることから「視差誤差」と呼ぶ。
このような広い画角に対応するためには、以下の問題がある。すなわち、広角領域では、車両のフロントガラスへの入射角が大きくなり、フロントガラスの屈折の影響による画素ずれ、すなわち視差が大きくなる。一方、従来の狭角ステレオカメラでは、フロントガラスへの入射角が小さいため、フロントガラスで生じる画素ずれはほとんど考慮する必要がなかった。このため、フロントガラスを通して外界を撮像可能な広い画角のステレオカメラに対する視差のキャリブレーション方法が必要とされていた。
このような広い画角に対するキャリブレーション方法として、以下の特許文献1及び2に記載された技術が提案されている。
特許文献1には、「画角が広角になるほどフロントガラスを通過する際の光路の屈折による視差ずれが大きくなる」ことを課題として、「視差ずれの補正パラメータを画角内の水平方向位置についての関数又はテーブルとしてまとめ、これを光軸特性として記憶装置に記憶させる」、「エイミングで得た光軸特性を用いて更に画像を補正する」と記載されている。
特許文献2には、「フロントガラスは車種毎に相違しており、従って、そのガラス歪も車種毎に相違する。ガラス歪みによる撮像画像への影響を評価しようとした場合、全ての車種に対して実走行やシミュレーションを行う必要があり、膨大な工数や経費が必要となる不都合がある。」ことを課題として、「複数の幾何テーブルを組み合わせ、該各幾何テーブルに記憶されている幾何歪補正データにてステレオカメラと各保護フードとの幾何学的歪を除去し或いは異なる保護フードの幾何学的歪を再現する」と記載されている。
特開2021-25868号公報 特開2017-62198号公報
特許文献1に開示された、設計上のフロントガラス(車室の窓)の形状を基に画像を補正する技術では、車両に搭載されるフロントガラスの形状が全て同じであれば成り立つ。しかし、実際には、フロントガラスとカメラの位置関係は、それぞれの設置位置によりばらつく。このため、フロントガラスの水平、垂直方向の曲率半径、フロントガラスの厚さの製造ばらつきや、フロントガラスとステレオカメラの取り付け位置の相対関係のばらつきが発生すると、許容値(例えば、後述する図5に示す視差誤差が0.25画素以内)を満足できない。
また、特許文献2に開示された技術には、ステレオカメラの広角化の課題がある。この技術では、キャリブレーション用のチャートボード(以下、「チャート」と呼ぶ)を用いて画像が補正されるが、ステレオカメラの広角化に伴い、大きなチャートを用いる必要がある。
本発明は、上記のような課題に鑑みてなされたものであり、屈折体を通して外界を撮像するステレオカメラの視差をチャート無しで補正するキャリブレーションを行うことを目的とする。
本発明に係るステレオカメラ装置は、車両に取り付けられた屈折体の姿勢、及び屈折体の形状を含む屈折体特性と、車両に配置された複数のカメラの姿勢とに基づいて求められた、複数のカメラが光を屈折する屈折体を通してそれぞれ撮像する複数の画像の垂直ずれに対する水平方向の視差誤差の相関情報を記憶する記憶部と、複数のカメラが同じ被写体を撮像した複数の画像をマッチングして、複数の画像の垂直ずれを求めるマッチング部と、垂直ずれ及び相関情報に基づいて、マッチングされた複数の画像の視差誤差を推定する視差誤差推定部と、マッチングされた画像の視差を、視差誤差を用いて補正する距離算出部と、を備える。
本発明によれば、屈折体を通して外界を撮像するステレオカメラの視差をチャート無しで補正するキャリブレーションを行うことが可能となる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
ステレオカメラの画角に対するチャート幅の関係を示している。 本発明の一実施形態に係るステレオカメラが被写体を撮像する例を示す説明図である。 本発明の一実施形態に係るステレオカメラ装置の全体構成例を示すブロック図である。 本発明の一実施形態に係る計算機のハードウェア構成例を示すブロック図である。 本発明の一実施形態に係るステレオカメラから被写体までの間にフロントガラスを挟む時に計算される視差誤差のシミュレーション結果の例を示す図である。 ステレオカメラの水平画角に対するδ視差誤差の例を示すグラフである。 本発明の一実施形態に係るキャリブレーション方法の一例を示すフローチャートである。 本発明の一実施形態に係る左右画像の水平ステレオマッチングの例を示す図である。 本発明の一実施形態に係る左右画像の垂直方向のマッチングの例を示す図である。 本発明の一実施形態に係る視差誤差の算出手順の例を示す模式図である。 本発明の一実施形態に係る相関テーブルの構成図である。 本発明の一実施形態に係る視差誤差推定部が垂直ずれから視差誤差を推定する原理の説明図である。 本発明の一実施形態に係る9種類のばらつきの例を示す図である。 本発明の一実施形態に係るδ垂直ずれとδ視差誤差との相関関係を示す図である。 本発明の一実施形態に係る水平画角20度、40度、60度ごとに求めた視差誤差の残留値のシミュレーション結果を示す図である。
以下、本発明を実施するための形態について、添付図面を参照して説明する。本明細書及び図面において、実質的に同一あるいは同様の機能を有する構成要素が複数ある場合には、同一の符号に異なる添字を付して説明する場合がある。また、これらの複数の構成要素を区別する必要がない場合には、添字を省略して説明する場合がある。
以下に説明する本発明の実施形態は、本発明を説明するための例示であって、説明の明確化のため、適宜、省略および簡略化がなされている。本発明は、他の種々の形態でも実施することが可能である。特に限定しない限り、各構成要素は単数でも複数でも構わない。
また、本発明は、例えば、先進運転支援システム(ADAS:Advanced Driver Assistance System)、又は自動運転(AD:Autonomous Driving)向けの車載ECU(Electronic Control Unit)が通信可能な車両制御用の演算装置に適用可能である。
[一実施形態]
本発明の一実施形態に係るステレオカメラ装置、及びキャリブレーション方法は、上述した課題を解決する発明の一例である。本実施形態に係るステレオカメラ装置、及びキャリブレーション方法の内容について以下に説明する。なお、以下の説明では、2つの画像の視差を補正することを「キャリブレーション」と呼ぶ。
ステレオカメラは、(1)製造工場、(2)車両工場、(3)ディーラー、(4)車両の走行中の4段階でキャリブレーションが行われる。
(1)製造工場でのキャリブレーション
ステレオカメラが製造工場で製造されると、製造工場で光軸調整が行われる。
(2)車両工場でのキャリブレーション
ステレオカメラが製造工場から出荷された後、車両工場でステレオカメラが車両に取り付けられ、キャリブレーションが行われる。車両工場で行われるキャリブレーションは「エーミング」とも呼ばれる。エーミングで得られた補正テーブルなどの情報は、ステレオカメラに格納される。
(3)ディーラーでのキャリブレーション
車両工場でのキャリブレーションが行われた後、車両がディーラーに送られると、ディーラーエーミングが行われる。ディーラーエーミングは、主に車両の修理時において、ガラスを交換した後に行われる。
(4)車両の走行中のキャリブレーション
最後に、車両の走行中にキャリブレーションが行われる。車両の走行中のキャリブレーションを「自動調整」と呼ぶ。
本実施形態に係るキャリブレーション方法は、主に(3)ディーラーエーミング時と、(4)車両の走行中に利用される。ディーラーは、チャートなどの装置を設置するためのスペースが狭いことが多いので、本実施形態に係るチャート無しでのキャリブレーションが望ましい。
ここで、キャリブレーションに用いられるチャートのチャート幅について、図1を参照して説明する。
図1は、ステレオカメラの画角に対するチャート幅の関係を示している。図1の横軸は画角[度]をとり、縦軸は必要なチャート幅[m]をとる。ここでは、ステレオカメラとチャート間の距離を3mとしている。図1に示すように、例えば画角が40度の場合は、必要なチャート幅は2m程度でよい。一方、画角が120度の場合には、必要なチャート幅は10mを超えてしまう。このような広いチャート幅のチャートは取り扱いが困難であり、車両製造工場やディーラー検査工場の大幅な改造が必要とされていた。
図2は、ステレオカメラ21が被写体24を撮像する例を示す説明図である。
ステレオカメラ21は、フロントガラス22の内側(車両20内)に搭載されており、水平方向に並べて左右に配置された2台のカメラで構成される。屈折体(フロントガラス22)は、透過する光が屈折する特性を持ち、透明、半透明のいずれであってもよい。また、ステレオカメラ21を構成する2台のカメラのうち、左側のカメラを左カメラ21Lと呼び、右側のカメラを右カメラ21Rと呼ぶ。また、左カメラ21L及び右カメラ21Rを「左右カメラ」と略称し、ステレオカメラ21と総称することもある。
図2では、ステレオカメラ21がフロントガラス22を介して、被写体24を検出するシーンを表している。図2より、ステレオカメラ21の水平画角(約120度)は、従来のカメラの水平画角(約40度)よりも広いことが示される。なお、左カメラ21L及び右カメラ21Rは、それぞれ約120度の水平画角で被写体24を含む外界を撮像可能である。
フロントガラス22は、車両(車両20)に取り付けられた姿勢が車種ごとに異なる。また、同一車種であっても、車両(車両20)に取り付けられたフロントガラス22姿勢がわずかに異なることもある。
次に、一実施形態に係るステレオカメラ装置10の構成例について、図3を参照して説明する。
図3は、一実施形態に係るステレオカメラ装置10の全体構成例を示すブロック図である。
ステレオカメラ装置10は、撮像部100、外部入力部101、補正部102、記憶部103、マッチング部104、ノイズ除去部105、視差誤差推定部106、距離算出部107、及び制御部108を備える。ステレオカメラ装置10は、車両に搭載されるECU(Electronic Control Unit)の一部として構成されてもよい。
撮像部100は、補正部102に接続されている。撮像部(撮像部100)は、車両(車両20)に配置された複数のカメラ(ステレオカメラ21)が屈折体(フロントガラス22)を通してそれぞれ撮像する複数の画像を取得する。撮像部100は、可視光線カメラ又は赤外線カメラなどの車両の外界を撮像した画像を取得できる装置であり、水平方向に並べて配置された複数のカメラで構成される。このため、撮像部100は、可視光線を通じて外界を検出可能なカメラだけでなく、赤外線等の可視光線以外の光線に基づいて外界を検出可能なカメラで構成してもよい。ただし、撮像部100は、可視光カメラ又は赤外線カメラに限定されるものではない。この場合、撮像部100の代わりに、外界を所定波長の光線で検出可能な外界検出部として構成してもよい。また、撮像部100が撮像する撮像物(例えば、被写体24)としては、人、他の車両、風景であってもよく、従来のキャリブレーション用のチャート等であってもよい。
撮像部100は、図2に示した左カメラ21L及び右カメラ21R(ステレオカメラ21)で構成される。そして、撮像部100は、車両前方の風景を撮像した左右の二枚の画像を補正部102に出力する。画像の各画素が輝度値を示すものとする。また、画像は、カラー画像から分離されたRGB画像に限らず、モノクロ画像であってもよい。
外部入力部101は、記憶部103に接続されている。外部入力部101は、ステレオカメラ21の取り付け姿勢のばらつきや、フロントガラス22の取付け姿勢及び形状などの設計値に基づいて予め計算された2つの画像の視差誤差と垂直ずれの相関情報を入力し、記憶部103に送る。記憶部103では、視差誤差と垂直ずれの相関情報が、後述する図11に示す相関テーブルとして保存される。本明細書では、水平方向の画像のずれを「視差誤差」と呼ぶ。また、視差誤差と垂直ずれの相関情報としては、後述する図10にイメージ図が示され、後述する図14に比例関係が例示される。
また、外部入力部101は、ステレオカメラ21の取り付け姿勢のばらつきや、フロントガラス22の取付け姿勢及び形状などの設計値により予め外部の計算装置で計算された基準視差誤差と基準垂直ずれを入力し、記憶部103に送る。ここで、基準視差誤差と基準垂直ずれはフロントガラス22(設計値)の屈折で生じる値であり、上述した、ステレオカメラ21やフロントガラス22の取付け姿勢、形状等から計算される視差誤差と垂直ずれの相関情報とは別のものである。記憶部103には、基準視差誤差と基準垂直ずれが保存される。基準視差誤差と基準垂直ずれについては、図8と図9を用いて後述する。
また、外部入力部101は、工場でのエーミングで得られた補正テーブルを入力し、記憶部103に送る。記憶部103には、工場でのエーミングで得られた補正テーブルが保存される。
補正部102は、撮像部100、記憶部103及びマッチング部104に接続されている。補正部102は、記憶部103から読み出した補正テーブルを用いて、撮像部100から取得した左右画像を両方ともに補正する。ここでの左右画像の補正は、左カメラ21Lと右カメラ21Rのそれぞれのレンズの歪みの影響を補正する処理であり、左右画像の視差を補正する処理ではない。そして、補正部102は、補正した左右画像をマッチング部104に送信する。
記憶部103は、外部入力部101、補正部102、マッチング部104、ノイズ除去部105、視差誤差推定部106及び距離算出部107に接続されている。この記憶部103は、ステレオカメラ21の内部に構成される不揮発メモリであり、各種の情報を格納できる。例えば、記憶部(記憶部103)は、屈折体(フロントガラス22)の設計値により予め計算された基準視差誤差及び基準垂直ずれを記憶している。基準視差誤差と基準垂直ずれは、外部入力部101から入力される情報であり、車両20へのフロントガラス22の取付け前の視差誤差と垂直ずれを表す。そして、基準視差誤差及び基準垂直ずれは、複数のカメラ(ステレオカメラ21)の出荷時に記憶部(記憶部103)に記憶される。
また、記憶部103は、外部入力部101から入力される補正テーブルを格納し、補正部102に補正テーブルを送る。また、記憶部(記憶部103)は、複数のカメラ(左カメラ21L及び右カメラ21R)が光を屈折する屈折体(フロントガラス22)を通してそれぞれ車両(車両20)の外界を撮像する複数の画像の垂直ずれに対する水平方向の視差誤差の相関情報を記憶する。この相関情報は、車両(車両20)に取り付けられた屈折体(フロントガラス22)の姿勢、及び屈折体(フロントガラス22)の形状を含む屈折体特性(フロントガラス22の特性)と、車両(車両20)に配置された複数のカメラ(左カメラ21L及び右カメラ21R)の姿勢とに基づいて求められる。フロントガラス22は、フロントガラス22の水平曲率、フロントガラス22の垂直曲率、フロントガラス22の厚みといった屈折体特性(フロントガラス22の特性)を持つ。
また、記憶部103は、マッチング部104から入力される視差、及び垂直ずれを格納する。ここで、記憶部103は、複数回の処理でマッチング部104から入力された複数フレームの垂直ずれをノイズ除去部105に送信する。また、記憶部103は、垂直ずれと視差誤差の相関情報を視差誤差推定部106に送信する。また、記憶部103は、マッチング部104から入力された視差を距離算出部107に送信する。
なお、基準視差誤差及び基準垂直ずれは、車両(車両20)に屈折体(フロントガラス22)が取り付けられる前に記憶部(記憶部103)に記憶されてもよい。この場合、屈折体(フロントガラス22)が車両(車両20)に実際に取り付けられた後の基準視差誤差に対する変化量がδ視差誤差であり、基準垂直ずれに対する変化量がδ垂直ずれである。
マッチング部104は、補正部102及び記憶部103に接続されている。マッチング部(マッチング部104)は、複数のカメラ(ステレオカメラ21)が同じ被写体を撮像した複数の画像をマッチングして、複数の画像の垂直ずれを求める。例えば、マッチング部104は、補正部102から補正された左右画像を取得し、左右画像のマッチングを行って、視差と垂直ずれを算出する。マッチング部104は、算出した視差と垂直ずれを記憶部103に送信し、記憶部103に視差と垂直ずれを保存する。
ノイズ除去部105は、記憶部103及び視差誤差推定部106に接続されている。ノイズ除去部105は、記憶部103から読み出した複数フレームの垂直ずれの平均値を取る。次に、ノイズ除去部105は、フィルターを使って、ノイズとして混入する無効な垂直ずれを平均値の計算から除去して、垂直ずれの平均値を視差誤差推定部106に送信する。なお、ノイズ除去が不要であれば、ステレオカメラ装置10にノイズ除去部105が設けられなくてもよい。
視差誤差推定部106は、記憶部103、ノイズ除去部105及び距離算出部107に接続されている。視差誤差推定部(視差誤差推定部106)は、記憶部103から読み出した垂直ずれ及び相関情報に基づいて、マッチングされた複数の画像の視差誤差を推定する。このため、視差誤差推定部106は、ノイズ除去部105から垂直ずれの平均値を受信すると、記憶部103から視差誤差と垂直ずれの相関情報を読み出す。また、視差誤差推定部106は、記憶部103から基準視差誤差と基準垂直ずれを読み出し、ノイズ除去部105から受信した垂直ずれの平均値に基づいてδ垂直ずれを算出し、その後、δ視差誤差を算出する。
そこで、視差誤差推定部(視差誤差推定部106)は、記憶部(記憶部103)から読み出した基準垂直ずれ、及び垂直ずれに基づいて、車両(車両20)に実際に取り付けられた屈折体(フロントガラス22)により生じる垂直ずれの変化量であるδ垂直ずれを算出する。次に、視差誤差推定部(視差誤差推定部106)は、算出したδ垂直ずれ、及び記憶部(記憶部103)から読み出した相関情報に基づいて、車両(車両20)に実際に取り付けられた屈折体(フロントガラス22)により生じる視差誤差の変化量であるδ視差誤差を算出する。そして、視差誤差推定部106は、推定したδ視差誤差を距離算出部107に送信する。
また、視差誤差推定部106は、算出したδ視差誤差とδ垂直ずれを記憶部103に送信し、記憶部103にδ視差誤差とδ垂直ずれを保存する。上述したようにδ視差誤差とδ垂直ずれは、車両20へのフロントガラス22の取付け前後の変化量を表す。すなわち、複数のカメラ(ステレオカメラ21)の出荷後の基準視差誤差に対する変化量がδ視差誤差であり、基準垂直ずれに対する変化量がδ垂直ずれである。δ垂直ずれとδ視差誤差と詳細は、図8と図9を用いて後述する。
ステレオカメラ装置10にノイズ除去部105が設けられない構成である場合、視差誤差推定部(視差誤差推定部106)は、異なるタイミングで撮像された複数の画像の同じ位置でマッチング部104が求めた垂直ずれを複数回積算して、垂直ずれの平均値を算出する。そして、視差誤差推定部(視差誤差推定部106)は、垂直ずれの平均値と、相関情報とに基づいて視差誤差を推定する。このように垂直ずれの平均値を算出することで、1回だけ算出された垂直ずれが外れ値であった場合に、この垂直ずれにより推定される視差誤差が大きくなりすぎないようにできる。
距離算出部107は、記憶部103及び視差誤差推定部106に接続されている。距離算出部(距離算出部107)は、マッチングされた複数の画像の視差を、視差誤差を用いて補正する。この時、距離算出部(距離算出部107)は、基準視差誤差及びδ視差誤差を用いて視差を補正する。そこで、距離算出部107は、視差誤差推定部106からδ視差誤差を受け取り、記憶部103から視差と基準視差誤差を受け取る。そして、距離算出部107は、視差から基準視差誤差とδ視差誤差を除去する視差の補正を行う。また、距離算出部(距離算出部107)は、視差誤差を用いて補正した視差を用いて、車両(車両20)から外界の対象物までの距離を算出する。その後、距離算出部107は、対象物ごとに算出した距離を含む距離情報を制御部108に送信する。
制御部108は、距離算出部107に接続されている。制御部108は、距離算出部107から距離情報を受けると、対象物ごとの距離に応じて、警告を発報してドライバに注意喚起したり、ブレーキをかけたりするなどの自動制御を行う。
上述した機能ブロック100~106までが、車両の走行前に行われる処理を担っており、例えば、車両のディーラーによって処理が行われる。一方、機能ブロック100~107までは、車両の走行中に行われる処理を担う。
<計算機のハードウェア構成例>
次に、ステレオカメラ装置10を構成する計算機50のハードウェア構成例を説明する。
図4は、計算機50のハードウェア構成例を示すブロック図である。計算機50は、本実施の形態に係るステレオカメラ装置10として動作可能なコンピューターとして用いられるハードウェアの一例である。本実施の形態に係るステレオカメラ装置10は、計算機50(コンピューター)がプログラムを実行することにより、図3に示した各機能ブロックが連携して行う視差誤差の補正方法を実現する。
計算機50は、バス54にそれぞれ接続されたCPU(Central Processing Unit)51、ROM(Read Only Memory)52、及びRAM(Random Access Memory)53を備える。さらに、計算機50は、不揮発性ストレージ55及びネットワークインターフェイス56を備える。
CPU51は、本実施の形態に係る各機能を実現するソフトウェアのプログラムコードをROM52から読み出してRAM53にロードし、実行する。RAM53には、CPU51の演算処理の途中で発生した変数やパラメータ等が一時的に書き込まれ、これらの変数やパラメータ等がCPU51によって適宜読み出される。ただし、CPU51とGPU(Graphics Processing Unit)を併用してもよい。図3に示した機能ブロック100~107の機能は、CPU51によって実現される。
不揮発性ストレージ55としては、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フレキシブルディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ又は不揮発性のメモリ等が用いられる。この不揮発性ストレージ55には、OS(Operating System)、各種のパラメータの他に、計算機50を機能させるためのプログラムが記録されている。ROM52及び不揮発性ストレージ55は、CPU51が動作するために必要なプログラムやデータ等を記録しており、計算機50によって実行されるプログラムを格納したコンピュータ読取可能な非一過性の記憶媒体の一例として用いられる。図3に示した記憶部103の機能は、RAM53によって実現されるが、不揮発性ストレージ55によって実現されてもよい。
ネットワークインターフェイス56には、例えば、NIC(Network Interface Card)等が用いられ、NICの端子に接続された車載LAN(Local Area Network)、専用線等を介して各種のデータを装置間で送受信することが可能である。
ここで、従来の課題について定量的に説明する。
図5は、ステレオカメラから被写体までの間にフロントガラスを挟む時に計算される視差誤差のシミュレーション結果の例を示す図である。図5の縦軸は視差誤差[画素]、横軸はステレオカメラの水平画角[度]を示している。なお、視差誤差のシミュレーション処理における計算条件は以下となる。また、視差誤差の許容値は、0.25画素とする。
<計算条件(設計条件)>
・レンズ焦点距離:5.41mm
・レンズ射影:ftanθ
・ガラス曲率半径(水平):5.5m
・ガラス曲率半径(垂直):3.5m
・ガラス屈折率:1.52
・ガラス厚み:4.7mm
・ガラス傾き:30度
・センサ画素ピッチ:2.25μm
・カメラ基線長:180mm
・レンズ-ガラス間距離:40mm
図5に示すように、例えば、水平画角が70度(左35度+右35度)を超えると、視差誤差が許容値である0.25画素を超える。そこで、特許文献1に開示されたように、設計上のフロントガラスの形状を基に画像を補正することも考えられる。
図6は、ステレオカメラの水平画角に対するδ視差誤差の例を示すグラフである。上述した設計条件から求められる水平方向の視差に対するずれを「δ視差誤差」と呼ぶ。図6の縦軸はδ視差誤差[画素]、横軸は水平画角[度]を示している。また、図中には、δ視差誤差が-0.25画素と、+0.25画素である許容値41を破線で示している。
図6に示すグラフ40は、ステレオカメラの取付け姿勢のばらつきを表すため、ステレオカメラをヨー方向に3度回転した時に計算される、図5に示した視差誤差の変化量のシミュレーション結果を示している。図6に示した結果より、特許文献1に開示された技術により画像を補正しても、ステレオカメラの取付け姿勢にばらつきが発生すると、許容値41で表される±0.25画素の許容範囲をδ視差誤差が満足できないことが分かる。これはステレオカメラのように広い画角で外界を撮像する撮像部100における特有の課題となる。
一方、本実施形態に係るキャリブレーション方法では、フロントガラスの設計値での視差誤差(以下の説明では、「基準視差誤差」と呼ぶ)と、ステレオカメラの取付け姿勢のばらつきによるδ視差誤差とを分離して算出する。その後、δ視差誤差を用いて視差を補正することで、高精度なキャリブレーションを実現できる。そこで、本実施形態に係るキャリブレーション方法について詳細な内容を説明する。
図7は、本実施形態に係るキャリブレーション方法の一例を示すフローチャートである。ここでは、図2のステレオカメラ21が被写体24を撮像する例を挙げて、図3に示した各機能ブロックで行われる処理を説明する。
本実施形態に係るキャリブレーションを行う前は、外部の計算装置を用いて、車種に応じてステレオカメラ21の取付け姿勢と、フロントガラス22の取付け姿勢及び形状の設計値と、基準視差誤差に基づいて、視差誤差と垂直ずれの相関情報を算出しておく。そして、外部入力部101は、視差誤差と垂直ずれの相関情報が記録された相関テーブル(後述する図11を参照)を記憶部103に格納する(S1)。また、ステップS1では、外部入力部101は、車種に応じた設計値である基準垂直ずれと基準視差誤差も記憶部103に格納する。
次に、ステレオカメラ装置10は、ステレオカメラ21が撮像した2つの画像の視差に対するフロントガラス22の影響を低減するためのキャリブレーションを開始する(S2)。そこで、ステレオカメラ装置10は、撮像部100のステレオカメラ21を起動する。
次に、撮像部100は、左右2つの画像を取得する画像取得処理を行う(S3)。この時、撮像部100は、左カメラ21L及び右カメラ21Rが同じ被写体24又は風景を撮像した2つの画像を取得する。以下の説明では、左カメラ21L及び右カメラ21Rが撮像した2つの画像を「左右画像」とも呼ぶ。
次に、補正部102は、記憶部103から読み出した補正テーブル(工場でのエーミングで得られた補正テーブル)を用いて、撮像部100から取得した2つの画像を補正する補正処理を行う(S4)。
次に、マッチング部104は、補正部102により補正された2つの画像の視差と垂直ずれを算出するマッチング処理を行う(S5)。ここで、マッチング部104は、補正された左右の2つの画像に対して水平方向のステレオマッチングを行って視差を算出する。また、マッチング部104は、左右画像の垂直方向のマッチングにより垂直ずれを算出する。そして、マッチング部104は、算出した視差と垂直ずれを記憶部103に格納する。
その後、ステップS3~S5の処理が繰り返し行われる(S5A)。マッチング部104は、繰り返し処理で算出した複数フレームの垂直ずれを記憶部103に格納する。ステップS5Aの繰り返し処理は、後述するステップS6で垂直ずれを加算するための必要なフレーム数に合わせた回数だけ行われる。
次に、ノイズ除去部105は、記憶部103から読み出した複数フレームの垂直ずれを加算し、ノイズを除去する処理を行う(S6)。このため、ノイズ除去部105は、ステップS3~S5で繰り返し処理され、記憶部103に格納された複数フレームの垂直ずれを記憶部103から読み出す。ノイズ除去部105は、垂直ずれを加算処理する前にフィルターをかけて、計算結果のノイズとなる無効な垂直ずれを除去する。そして、ノイズ除去部105は、無効な垂直ずれが除去された複数の垂直ずれを加算し、垂直ずれの平均値を算出する。
次に、視差誤差推定部106は、ノイズ除去部105によりノイズが除去された垂直ずれと、記憶部103から読み出した基準垂直ずれとを用いて、δ垂直ずれを算出する処理を行う(S7)。次に、視差誤差推定部106は、視差誤差と垂直ずれの相関情報が記録された相関テーブルを用いて、δ垂直ずれからδ視差誤差を算出する処理を行う(S8)。次に、視差誤差推定部106は、算出したδ視差誤差を補正情報として記憶部103に格納する(S9)。
そして、距離算出部107は、記憶部103から読み出した視差から、基準視差誤差とδ視差誤差を除去して視差を補正した後、補正した視差を用いて撮像物までの距離情報を算出する処理を行う(S10)。そして、図7に示すキャリブレーション処理が終了する。
なお、本処理の終了後、撮像物までの距離情報が制御部108に出力される。そして、制御部108は、距離情報に基づいて外界を認識して、車両を前方の障害物から回避する等の自動運転を制御する。
図8は、左右画像の水平ステレオマッチングの例を示す図である。ここでは、ステレオカメラ21を構成する左カメラ21L及び右カメラ21Rがそれぞれ被写体24を撮像する。以下の説明では、フロントガラス22を「ガラス」と略称する。
図8の上側には、左カメラ21Lが被写体24を映した画像PLが示され、図8の下側には、右カメラ21Rが被写体24を映した画像PRが示される。像PL1は、ガラスなしの状態で左カメラ21Lが撮像した被写体24の像である。像PR1は、ガラスなしの状態で右カメラ21Rが撮像した被写体24の像である。視差DPXは、ガラスを通さないで撮像された像PL1と像PR1の水平方向のステレオマッチングにより算出される視差(水平ずれ)の真値である。視差DPXを、以下で説明する式では「Dx」と表す。また、設計上の位置にガラスが車両に取り付けられた状態のガラスを「ガラス(設計値)」と呼ぶ。
像PL2は、ガラス(設計値)がある場合に、左カメラ21Lがガラスを通して被写体24を撮像した画像である。像PR2は、ガラス(設計値)がある場合に、右カメラ21Rがガラスを通して被写体24を撮像した画像である。像PL2は、像PL1に対して右下にずれ、像PR2は、像PR1に対して右下にずれている。
画素ずれLS1は、ガラス(設計値)を通して左カメラ21Lが撮像した像PL2の、像PL1に対する視差誤差を示す。画素ずれRS1は、ガラス(設計値)を通して右カメラ21Rが撮像した像PR2の、像PR1に対する視差誤差を示す。このため、像PL2と像PR2に対して水平ステレオマッチングが行われると、視差DPXE1を生じる。視差DPXE1は、ガラス(設計値)の影響で生じる視差誤差を表している。
ここで、ガラス(設計値)がある場合の視差DPXE1を、式では「DEx」で表し、基準視差誤差をガラス(設計値)の影響で生じた視差誤差である「εx」で表すと、「DEx=Dx+εx」の式が求められる。
つまり、ガラス(設計値)がある場合の視差DExは、視差真値Dxと、ガラス(設計値)の影響で生じた基準視差誤差εxを加算した値となる。
ところで、ここでのガラス(設計値)がある場合とは理想状態である。実際には、ガラス(設計値)に対するカメラの取り付け姿勢がばらついたり、ガラスの取付け姿勢及び形状がばらついたりする。ここで、実際にガラスが車両に取り付けられた状態のガラスを「ガラス(実際値)」と呼ぶ。図8には、ガラス(実際値)を通して左カメラ21Lが撮像した像PL3と、ガラス(実際値)を通して右カメラ21Rが撮像した像PR3が示される。像PL3は、像PL2に対して右下にずれ、像PR3は、像PR2に対して右下にずれている。
画素ずれLS2は、ガラス(実際値)を通して左カメラ21Lが撮像した像PL3の、像PL2に対する視差誤差を示す。画素ずれRS2は、ガラス(実際値)を通して右カメラ21Rが撮像した像PR3の、像PR2に対する視差誤差を示す。このため、像PL3と像PR3に対して水平ステレオマッチングが行われると、視差DPXE2を生じる。視差DPXE2は、ガラス(実際値)の影響で生じる視差誤差を表している。
ここで、ガラス(実際値)がある場合の視差DPXE2を、式では「DE’x」で表し、設計値に対してガラス及びカメラのばらつきで生じたδ視差誤差を「δεx」で表すと、「DE’x=Dx+εx+δεx」の式が求められる。
つまり、ガラス(実際値)がある場合の視差DE’xは、上述した視差真値Dxと、ガラス(設計値)の影響で生じた基準視差誤差εxと、δ視差誤差δεxとを加算した値となる。すなわち、(視差)=(視差真値)+(基準視差誤差)+(δ視差誤差)の式となる。なお、δ視差誤差δεxは負値の場合もある。
図9は、左右画像の垂直方向のマッチングの例を示す図である。
図9の左側には、左カメラ21Lが被写体24を映した画像PLが示され、図9の右側には、右カメラ21Rが被写体24を映した画像PRが示される。画像PLに示される像PL1、PL2、PL3と、画素ずれLS1、LS2、画像PRに示される像PR1、PR2、PR3と、画素ずれRS1、RS2は、図8を参照して説明したとおりである。
垂直ずれDPYは、ガラスを通さないで撮像された像PL1と像PR1の垂直方向のステレオマッチングにより算出される垂直ずれの真値である。垂直ずれDPYを、式では「Dy」と表す。ガラスがない場合の垂直ずれの真値は、ステレオカメラ21の出荷時に調整されている。このため、左カメラ21Lと左カメラ21Lの垂直ずれの真値はゼロとなり、Dy=0の式で表される。
一方、ガラス(設計値)がある場合、左カメラ21Lと右カメラ21Rでは、それぞれガラス(設計値)を通して入射する光線の位置が異なる。このため、左カメラ21Lが撮像した画像の垂直方向の画素ずれLS1と、右カメラ21Rが撮像した画像の垂直方向の画素ずれRS1が異なる。そこで、ガラス(設計値)がある場合、像PL2と像PR2に対して垂直ステレオマッチングが行われると、垂直ずれDPYE1を生じる。つまり、垂直ずれDPYE1は、ガラス(設計値)の影響で生じる垂直ずれを表している。
ここで、ガラス(設計値)がある場合の垂直ずれDPYE1を、式では「DEy」で表し、基準垂直ずれをガラス(設計値)の影響で生じた垂直ずれである「εy」で表すと、Dy=0のため、「DEy=εy」の式が求められる。
つまり、ガラス(設計値)がある場合の垂直ずれDEyは、垂直ずれ真値Dy(=0)と、ガラス(設計値)の影響で生じた基準垂直ずれεyを加算した値となる。
図8を参照して示したように、ガラス(設計値)がある場合とは理想状態である。図9には、ガラス(実際値)を通して左カメラ21Lが撮像した像PL3と、ガラス(実際値)を通して右カメラ21Rが撮像した像PR3が示される。
画素ずれLS2は、ガラス(実際値)を通して左カメラ21Lが撮像した像PL3の、像PL2に対する垂直ずれを示す。画素ずれRS2は、ガラス(実際値)を通して右カメラ21Rが撮像した像PR3の、像PR2に対する垂直ずれを示す。このため、像PL3と像PR3に対して垂直ステレオマッチングが行われると、垂直ずれDPYE2を生じる。垂直ずれDPYE2は、ガラス(実際値)の影響で生じる垂直ずれの垂直ずれ値を表している。
ここで、ガラス(実際値)がある場合の垂直ずれDPYE2を、式では「DE’y」で表し、設計値に対してガラス及びカメラのばらつきで生じたδ垂直ずれを「δεy」で表すと、「DE’y=εy+δεy」の式が求められる。
つまり、ガラス(実際値)がある場合の垂直ずれDE’yは、垂直ずれ真値Dy(=0)と、ガラス(設計値)の影響で生じた基準垂直ずれεyと、δ垂直ずれとを加算した値となる。すなわち、(垂直ずれ)=(基準垂直ずれ)+(δ垂直ずれ)の式となる。なお、δ垂直ずれ(δεy)は負値の場合もある。
ところで、水平方向のDE’xは、カメラから被写体24までの距離によって値が変わる。このため、例えば、対象物までの距離が既知であるなどの所定条件での測定が必要とされていた。
一方、本実施形態に係るステレオカメラ装置10は、水平方向のずれではなく、距離に依存しない垂直方向のずれを用いることを特徴としている。ガラスが無い場合には垂直ずれはゼロであるので、被写体24までの距離が変わっても垂直ずれは変化せず、同じずれ量となる。このため、ステレオカメラ装置10は、直接、垂直ずれを算出することが可能となり、垂直ずれを用いて視差誤差の計算を行える。
次に、視差誤差の算出手順について説明する。
図10は、本実施形態に係る視差誤差の算出手順の例を示す模式図である。
(1)風景1001の撮像
始めに、ステレオカメラ21は、フロントガラス22を通して風景1001を撮像する。この時、図7におけるステップS3~S5の処理が行われる。
(2)垂直ステレオマッチング
次に、マッチング部104は、左右カメラで撮像された2つの画像の垂直方向のステレオマッチングを行って、垂直ずれ10DPYを検出する。この時、図7におけるステップS5の処理が行われる。ここで、画像内の垂直ずれは、垂直ずれ10DPYにおける垂直方向の矢印で表される。各矢印の向きは垂直ずれの方向を表し、長さは垂直ずれのずれ量を表す。
(3)視差誤差の算出
そして、視差誤差推定部106は、水平方向の視差誤差10DPXを推定する。ここで、画像内の視差誤差は、視差誤差10DPXにおける水平方向の矢印で表される。各矢印の向きは視差誤差の方向を表し、長さは視差誤差のずれ量を表す。
垂直ずれ10DPYの一つの矢印と同じ位置にある、視差誤差10DPXの一つの矢印は相関関係がある。これらの矢印の相関関係は、相関情報c1,c2として記憶部103の相関テーブルに記憶される。なお、相関情報c1,c2に示すように、画像の真ん中付近では、垂直ずれのずれ量と、視差誤差のずれ量があまり変わらない。しかし、フロントガラス22の曲率が大きくなる下側では、垂直ずれのずれ量に対して、視差誤差のずれ量が大きくなる。このため、複数の相関関係が相関情報として記憶部103に記憶される。後述するように垂直ずれと視差誤差の相関は、δ垂直ずれとδ視差誤差の相関として用いることができる。そして、視差誤差推定部106は、記憶部103から読み出される複数の相関関係を含む相関情報に基づいて、δ垂直ずれからδ視差誤差を推定できる。
なお、フロントガラス22が球面の一部で構成される場合、フロントガラス22の全体で垂直ずれと視差誤差の相関関係が一定となることが予想される。この場合、一つの相関関係が相関情報として記憶部103に記憶される。そして、視差誤差推定部106は、記憶部103から読み出される一つの相関関係を含む相関情報に基づいて、δ垂直ずれからδ視差誤差を推定できる。
上述したように視差誤差推定部106は、δ垂直ずれを算出できれば、視差誤差10DPXに示される各画角におけるδ視差誤差を推定することが可能となる。この時、図7におけるステップS6~S8の処理が行われる。
図11は、相関テーブルの構成図である。相関テーブルには、視差誤差と垂直ずれの相関情報が記録される。
相関テーブルは、例えば、ステレオカメラ21の水平画角[度]、垂直画角[度]の表で表される。各画角の交差するセルでは、視差誤差を「e(m)」とし、垂直ずれを「v(n)」とする2つの値が相関情報として格納される。ここで、視差誤差e(m)の「m」は、水平画角に対応し、「-60」から「+60」までの値をとる。また、垂直ずれv(n)の「n」は、垂直画角に対応し、「-30」から「+30」までの値をとる。
記憶部(記憶部103)は、カメラ(ステレオカメラ21)の撮像画角(水平画角及び垂直画角)に応じた複数の相関情報を相関テーブルに記憶している。例えば、図11に示す相関テーブルには、水平画角が-60度から+60度の範囲内、かつ垂直画角が-30度から+30度の範囲内で、水平画角と垂直画角を1度ずつ変更した場合における相関情報が格納されている。このため、視差誤差推定部106は、ある水平画角と垂直画角における視差誤差と垂直ずれの相関情報を相関テーブルから容易に読み出すことができる。そして、視差誤差推定部(視差誤差推定部106)は、撮像画角に合わせて記憶部(記憶部103)から読み出した複数の相関情報を用いて視差誤差を推定することができる。
なお、相関テーブルには、水平画角と垂直画角を0.5度ずつ変更した場合における相関情報が格納されてもよいし、水平画角と垂直画角を10度ずつ変更した場合における相関情報が格納されてもよい。
また、記憶部(記憶部103)は、屈折体(フロントガラス22)の形状が均一である場合に屈折体(フロントガラス22)に対して求められた一つの相関情報を記憶してもよい。水平画角と垂直画角がどこでも相関情報が同じであれば、一つの視差誤差と一つの垂直ずれの相関情報だけが相関テーブルに格納されてもよい。視差誤差推定部(視差誤差推定部106)は、記憶部(記憶部103)から読み出した一つの相関情報を用いて視差誤差を推定することができる。
次に、視差誤差推定部106が垂直方向の画素ずれから水平方向の視差誤差を推定可能である理由を説明する。
図12は、視差誤差推定部106が垂直ずれから視差誤差を推定する原理の説明図である。
図12の上側に示す説明図12P0は、ばらつきが無いガラスに入射する光線が出射する様子を示す立体図である。ここでは、ある入射光線11inがフロントガラス22に入射して出射光線11outとして出射する様子が示される。図中のX軸は水平画角方向を示し、Y軸は垂直画角方向を示し、Z軸は車両の進行方向を示す。入射光線11inと出射光線11outを区別しない時は、「光線」と呼ぶ。
入射光線11inをXY面に射影すると、XY面射影光線1111と表される。また、出射光線11outをXY面に射影すると、XY面射影光線1113と表される。ここで、切面1112は、光線がガラス22に当たった場所をXY面に射影したものである。
次に、取付け姿勢のばらつきがないガラスを光線が通る場合について説明する。
図12の左下に示す説明図12P1には、説明図12P0に示したXY面に射影された光線の例が示されている。ここで、XY面射影光線1113をX軸及びY軸に分解した光線1115と光線1114は、それぞれXY面射影光線1113の水平方向の分量と、垂直方向の分量を表している。
取付け姿勢にばらつきがあるガラスを光線が通る場合について説明する。
図12の右下に示す説明図12P2には、取付け姿勢にばらつきがあるガラスを通る光線が説明図12P0に示したXY面に射影された例が示されている。説明図12P2においても、説明図12P1と同じ切面1112で変化した光線の変位の様子が示される。
例えば、ガラスにロール回転のばらつきB1130がある場合、ばらつきが無い場合の切面1122(実線)は、切面1122(破線)に変化した位置で表せる。また、出射光線1123(破線)は、XY面射影光線(実線)から変化したものである。
また、光線1124(破線)と光線1125(破線)は、それぞれ変化した出射光線1123(破線)の垂直方向の分量と、水平方向の分量を表している。光線1124(破線)と光線1114(実線)の垂直差分は、ガラスのばらつきで生じたδ垂直ずれδεyである。また、光線1125(破線)と光線1115(実線)の水平差分は、ガラスのばらつきで生じたδ視差誤差δεxである。
ガラスの取付け姿勢の実際のばらつきは設計値よりかなり小さい。このため、ガラスの取付け姿勢にばらつきがある場合におけるδ視差誤差ε’xとδ垂直ずれε’yの比率は、ガラスの設計値で算出される基準視差誤差εxと基準垂直ずれεyの比率と大きく変化しない。
つまり、|εx|/|εy|≒|ε’x|/|ε’y|の関係がある。
例えば、事前にガラスの設計値で基準視差誤差εxと基準垂直ずれεyの相関を求めると、|εx|/|εy|=kと表される。一方、ガラスの取付け姿勢にばらつきがある場合におけるδ視差誤差を「ε’x」とし、δ垂直ずれを「ε’y」として、δ視差誤差ε’x、δ垂直ずれε’yの相関を求めると、|ε’x|≒k*|ε’y|と表せる。
つまり、|ε’x|-|εx|≒k*(|ε’y|-|εy|)と表せるので、δ視差誤差δεxとδ垂直ずれδεyの関係は、δεx≒k*δεyと表せる。
従って、視差誤差推定部106は、(実際の視差誤差)=(基準視差誤差(ガラス設計値))+(δ視差誤差(ばらつきあり))の計算式により、実際の視差誤差を推定できる。ここで、基準視差誤差と相関係数kは、ガラスの設計値によって得られる値である。また、上述したようにδ視差誤差δεxは、(δ垂直ずれδεy*k)で計算できる。
このように、本実施形態に係るステレオカメラ装置10は、ガラスの取付け姿勢にばらつきがあっても、δ垂直ずれとδ視差誤差との相関、つまり垂直ずれと視差誤差との相関を用いて、δ視差誤差(ばらつきあり)を算出し、実際の視差誤差を用いて視差を補正するので、高精度のキャリブレーションを実現することが可能となる。なお、ここでは相関が線形として説明したが、変化量が大きくなるに伴って相関が非線形となる。この場合であっても効果があることは言うまでもない。
次に、ガラスの取付け姿勢のばらつきを考慮した時のδ垂直ずれとδ視差誤差との相関について確認する。以下にばらつき条件を考慮した9種類のばらつきの例について説明する。
図13は、9種類のばらつきの例を示す図である。図13に示すばらつき(1)~(3)は、以下の計算条件を基にしている。
<計算条件(ばらつき)>
・X、Y、Zシフト:+2mm
・ピッチ、ヨー、ロール回転:+3度
・ガラス曲率半径(水平、垂直):-1.5m
・ガラス厚み:+1mm
図13のバラつき(1)は、フロントガラス22に対するステレオカメラのシフトバラつきの例を示す。図13の左から順に、X軸方向のシフト(Xシフト)、Y軸方向のシフト(Yシフト)、Z軸方向のシフト(Zシフト)の例が示される。
図13のバラつき(2)は、フロントガラス22に対するステレオカメラの回転バラつきの例を示す。図13の左から順に、ピッチ方向の回転(ピッチ回転)、ヨー方向の回転(ヨー回転)、ロール方向の回転(ロール回転)の例が示される。
図13のバラつき(3)は、フロントガラス22の特性バラつきの例を示す。図13の左から順に、フロントガラス22の水平曲率、フロントガラス22の垂直曲率、フロントガラス22の厚みの例が示される。
図14は、δ垂直ずれとδ視差誤差との相関関係を示す図である。図14の横軸はδ垂直ずれ、縦軸はδ視差誤差を示している。そして、図14に凡例で示す以下の計算条件でδ垂直ずれとδ視差誤差との相関関係が求められている。
<計算条件>
・左右並進移動(X軸):+2mm
・上下並進移動(Y軸):+2mm
・前後並進移動(Z軸):+2mm
・ピッチ角度(X軸回転):+3度
・ヨー角度(Y軸回転):+3度
・ロール角度(Z軸回転):+3度
・水平曲率半径:-1500mm
・垂直曲率半径:-1500mm
・厚さ :+0.2mm
ここでは、ステレオカメラ装置10が50m先の被写体24を検出する時のδ垂直ずれ、δ視差誤差を算出することで、δ垂直ずれとδ視差誤差との相関関係を求めている。図14の上側のグラフRT20は、水平画角が20度でのδ垂直ずれとδ視差誤差との相関関係を示している。図14の中側のグラフRT40は、水平画角が40度でのδ垂直ずれとδ視差誤差との相関関係を示している。図14の下側のグラフRT60は、水平画角が60度でのδ垂直ずれとδ視差誤差との相関関係を示している。
グラフRT20,RT40,RT60に示すように、δ垂直ずれとδ視差誤差には高い相関があることが分かる。また、フロントガラス22のばらつきに対して、δ視差誤差がずれるが、δ視差誤差のずれに伴ってδ垂直ずれも変化する。このため、δ垂直ずれを算出すればδ視差誤差を求められることが分かる。
また、δ垂直ずれとδ視差誤差との相関関係を表す相関係数kは、水平画角の広さによって異なることも分かる。例えば、水平画角が60度であれば相関係数kがほぼ「+1」である。そして、水平画角が40度、20度と変化するにつれて、相関係数kが「+1」よりも小さい値をとる。このため、高精度のキャリブレーションを行うには、ステレオカメラ21の水平画角ごとに異なる相関係数kを用いることが望ましい。
図15は、図14に示した計算条件(ばらつき)を全て考慮した複合条件での補正効果を示している。図15では、水平画角20度、40度、60度ごとに求めた視差誤差のシミュレーション結果が示される。ここで、補正前の視差誤差を黒丸で示し、水平画角毎の相関係数kを用いて補正した視差誤差を黒三角で示し、水平画角60度における一つの相関係数を用いて補正した視差誤差を白四角で示す。
水平画角60度における一つの相関係数を用いて補正した視差誤差は、水平画角が40度、60度では、0画素よりも多いことが分かる。一方、本実施形態に係る水平画角毎の相関係数kを用いて補正した視差誤差は、水平画角が40度であっても、ほぼ0画素である。ただし、水平画角が60度であると、補正後の視差誤差が0.5画素程度となる。
このように、本実施形態に係る補正を行うことで大幅に視差誤差を低減できることが分かる。また、水平画角毎の相関係数kで補正する方が残留する視差誤差は小さくできるが、水平画角60度での相関係数kであっても、補正前の視差誤差が1画素を超えていたのに比べると、十分な効果が得られることが分かる。
以上説明した一実施の形態に係るステレオカメラ装置10では、フロントガラス22の設計値で計算される基準視差誤差と、フロントガラス22のばらつきによるδ視差誤差とを分離して算出する。このため、ステレオカメラ装置10は、キャリブレーション用のチャート無しでも広い画角のステレオカメラ21の視差を高精度に補正すること(キャリブレーション)が可能となる。例えば、ステレオカメラ装置10は、フロントガラス22の水平、垂直方向の曲率半径の製造ばらつきやフロントガラス22とステレオカメラ21の相対値関係のばらつきがあっても、ステレオカメラ21の視差を高精度に補正することができる。
例えば、ディーラーの整備工場でフロントガラス22を交換する際、ステレオカメラ21の取り付け姿勢と、フロントガラス22の取付け姿勢及び形状などの特性のばらつきがあっても、本実施の形態に係るキャリブレーションを行うことで、高い測距精度を得ることができる。
また、本実施形態に係る方法は、キャリブレーション用の大きなチャートが不要である。このため、路上の風景の画像でもキャリブレーションすることができ、車両20が走行中であっても、フロントガラス22の影響を補正することも可能となる。
また、ユーザーは、車両20の停止中又は走行中に、ステレオカメラ21でフロントガラス22の影響を補正するキャリブレーションを利用できる。例えば、キャリブレーションモードで、車両20の停止中又は走行中にステレオカメラ21はリアルタイムで補正を行う。ここで、車両20の走行中のキャリブレーションは図7に示したフローチャートで行い、走行中に取得する複数フレームの画像を用いて、多数枚の垂直ずれを積算する。例えば、車両20が走行中、又は止まっている時に撮像される画像に映る風景の変化に基づいて垂直ずれを積算する。
例えば、ある方向に車両20が停車している状態で風景を撮像した後、車両20を別の方向に向けて停車し、その方向で風景を撮像することで、風景の変化に基づく垂直ずれの積算を行ってもよい。例えば、ステレオカメラ装置10は、同じ被写体の左右画像を100回取得し、ステレオマッチングを100回行い、例えば100回分の垂直ずれを積算して、平均値を取る。そして、視差誤差推定部106は、この垂直ずれから相関テーブルを利用して視差誤差を推定し、距離算出部107が視差から視差誤差を除去するキャリブレーションを行う。
なお、図10に示した風景1001は、人や動物など風景に限定されない。例えば、路面上、チャートなどの視差を取得可能な風景であれば、どこでもよい。
また、図7に示したステップS3~S5のような繰り返し処理(S5A)は、垂直ずれの積算だけに限定されない。例えば、例えば、複数のδ視差誤差を求めて、複数回視差を補正する処理が行われてもよい。また、視差の補正精度を高めるため、他のパラメータを積算してもよい。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は、上記実施の形態に限定されるものではなく、種々変更可能であることはいうまでもない。例えば、工場でのキャリブレーションでも本発明を適用し、チャートを用いないで視差を補正することが可能である。また、工場でチャートを用いてキャリブレーションを行う場合であっても、従来のキャリブレーションに比べて、狭いチャート幅のチャートを使えばよく、工場の改造、大きいチャートの設置スペースの用意等が不要となる。
また、ステレオカメラ装置10は、車両20が走行中であってもガラスへの影響を補正することができる。また、車両20の走行中にもキャリブレーションを行えることで、車両20の振動によりステレオカメラ21の取付け姿勢がずれた場合でも、適切に視差誤差を補正することが可能となる。
また、ステレオカメラ21は、車両20の車内に設けられるのであれば、リアガラスの車内側に設置されてもよい。この場合、ステレオカメラ装置10は、車両20の後ろの外界をステレオカメラ21が撮像した複数の画像から視差を補正し、車両20の後ろの外界の対象物までの距離を算出することも可能となる。
また、上述した実施の形態では、屈折体の一例としてフロントガラス22の車内側にステレオカメラ21が設置されることを説明したが、屈折体としてはガラス以外にも、透明プラスチック等の透明な有機化合物が用いられてもよい。
このように、本発明は上述した実施形態に限られるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りその他種々の応用例、変形例を取り得ることは勿論である。
図面において示す各構成要素の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面に開示された位置、大きさ、形状、範囲などに限定されない。また、以下の実施形態は、本発明を分かりやすく説明するためにシステムの構成を詳細かつ具体的に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されない。また、本実施形態の構成の一部について、他の構成の追加、削除、置換をすることも可能である。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
10…ステレオカメラ装置、20…車両、21…ステレオカメラ、22…フロントガラス、100…撮像部、101…外部入力部、102…補正部、103…記憶部、104…マッチング部、105…ノイズ除去部、106…視差誤差推定部、107…距離算出部、108…制御部

Claims (9)

  1. 車両に取り付けられた屈折体の姿勢、及び前記屈折体の形状を含む屈折体特性と、前記車両に配置された複数のカメラの姿勢とに基づいて求められた、複数のカメラが光を屈折する前記屈折体を通してそれぞれ撮像する複数の画像の垂直ずれに対する水平方向の視差誤差の相関情報を記憶する記憶部と、
    複数の前記カメラが同じ被写体を撮像した複数の前記画像をマッチングして、複数の前記画像の垂直ずれを求めるマッチング部と、
    前記垂直ずれ及び前記相関情報に基づいて、マッチングされた複数の前記画像の視差誤差を推定する視差誤差推定部と、
    マッチングされた前記画像の視差を、前記視差誤差を用いて補正する距離算出部と、を備える
    ステレオカメラ装置。
  2. 前記記憶部は、前記カメラの撮像画角に応じた複数の前記相関情報を記憶し、
    前記視差誤差推定部は、前記カメラの撮像画角に合わせて前記記憶部から読み出した複数の前記相関情報を用いて前記視差誤差を推定する
    請求項1に記載のステレオカメラ装置。
  3. 前記記憶部は、前記屈折体の形状が均一である場合に前記屈折体に対して求められた一つの前記相関情報を記憶し、
    前記視差誤差推定部は、前記記憶部から読み出した一つの前記相関情報を用いて前記視差誤差を推定する
    請求項1に記載のステレオカメラ装置。
  4. 前記視差誤差推定部は、異なるタイミングで撮像された複数の前記画像の同じ位置で前記マッチング部が求めた前記垂直ずれを複数回積算して、前記垂直ずれの平均値を算出し、前記垂直ずれの平均値と、前記相関情報とに基づいて前記視差誤差を推定する
    請求項2に記載のステレオカメラ装置。
  5. 前記記憶部は、前記屈折体の設計値により予め計算された基準視差誤差及び基準垂直ずれを記憶し、
    前記視差誤差推定部は、前記記憶部から読み出した前記基準垂直ずれ、及び前記垂直ずれに基づいて、前記車両に実際に取り付けられた前記屈折体により生じる前記垂直ずれの変化量であるδ垂直ずれを算出し、前記δ垂直ずれ、及び前記記憶部から読み出した前記相関情報に基づいて、前記車両に実際に取り付けられた前記屈折体により生じる前記視差誤差の変化量であるδ視差誤差を算出し、
    前記距離算出部は、前記基準視差誤差及び前記δ視差誤差を用いて前記視差を補正する
    請求項3に記載のステレオカメラ装置。
  6. 前記基準視差誤差及び前記基準垂直ずれは、前記複数のカメラの出荷時に前記記憶部に記憶され、
    前記複数のカメラの出荷後の前記基準視差誤差に対する変化量が前記δ視差誤差であり、前記基準垂直ずれに対する変化量が前記δ垂直ずれである
    請求項5に記載のステレオカメラ装置。
  7. 前記基準視差誤差及び前記基準垂直ずれは、前記車両に前記屈折体が取り付けられる前に前記記憶部に記憶され、
    前記屈折体が前記車両に実際に取り付けられた後の前記基準視差誤差に対する変化量が前記δ視差誤差であり、前記基準垂直ずれに対する変化量が前記δ垂直ずれである
    請求項5に記載のステレオカメラ装置。
  8. 前記距離算出部は、前記視差誤差を用いて補正した前記視差を用いて、前記車両から外界の対象物までの距離を算出する
    請求項2に記載のステレオカメラ装置。
  9. 車両に取り付けられ、光を屈折する屈折体を通して、前記車両に配置された複数のカメラがそれぞれ撮像する複数の画像を取得する処理と、
    複数の前記カメラが同じ被写体を撮像した複数の前記画像をマッチングして、複数の前記画像の垂直ずれを求める処理と、
    前記屈折体の姿勢、及び前記屈折体の形状を含む屈折体特性と、複数の前記カメラの姿勢とに基づいて求められた、複数の前記画像の前記垂直ずれに対する水平方向の視差誤差の相関情報、及び前記垂直ずれに基づいて、マッチングされた前記画像の視差誤差を推定する処理と、
    マッチングされた前記画像の視差を、前記視差誤差を用いて補正する処理と、を含む
    キャリブレーション方法。
JP2022116907A 2022-07-22 2022-07-22 ステレオカメラ装置及びキャリブレーション方法 Pending JP2024014231A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022116907A JP2024014231A (ja) 2022-07-22 2022-07-22 ステレオカメラ装置及びキャリブレーション方法
PCT/JP2023/015371 WO2024018709A1 (ja) 2022-07-22 2023-04-17 ステレオカメラ装置及びキャリブレーション方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022116907A JP2024014231A (ja) 2022-07-22 2022-07-22 ステレオカメラ装置及びキャリブレーション方法

Publications (1)

Publication Number Publication Date
JP2024014231A true JP2024014231A (ja) 2024-02-01

Family

ID=89617590

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022116907A Pending JP2024014231A (ja) 2022-07-22 2022-07-22 ステレオカメラ装置及びキャリブレーション方法

Country Status (2)

Country Link
JP (1) JP2024014231A (ja)
WO (1) WO2024018709A1 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6427900B2 (ja) * 2014-03-07 2018-11-28 株式会社リコー 校正方法、校正システム、プログラム及び移動体
JP2017062198A (ja) * 2015-09-25 2017-03-30 富士重工業株式会社 幾何歪除去再現装置
EP3410705B1 (en) * 2017-06-02 2021-11-03 Veoneer Sweden AB 3d vision system for a motor vehicle and method of controlling a 3d vision system
JP7180177B2 (ja) * 2018-07-31 2022-11-30 株式会社リコー ステレオカメラシステム、移動体及びステレオカメラ装置の形成方法
JP2021025868A (ja) * 2019-08-05 2021-02-22 日立オートモティブシステムズ株式会社 ステレオカメラ
JP7269130B2 (ja) * 2019-08-14 2023-05-08 日立Astemo株式会社 画像処理装置

Also Published As

Publication number Publication date
WO2024018709A1 (ja) 2024-01-25

Similar Documents

Publication Publication Date Title
JP6767998B2 (ja) 画像の線からのカメラの外部パラメータ推定
US9414045B2 (en) Stereo camera
US11393126B2 (en) Method and apparatus for calibrating the extrinsic parameter of an image sensor
CN114766003A (zh) 用于利用偏振增强传感器系统和成像系统的系统和方法
US20160379066A1 (en) Method and Camera System for Distance Determination of Objects from a Vehicle
EP2902967B1 (en) Stereo camera calibration method, disparity calculating device, and stereo camera
JP6602982B2 (ja) 車載カメラ、車載カメラの調整方法、車載カメラシステム
KR20160119444A (ko) 교정 방법, 교정 장치 및 컴퓨터 프로그램 제품
JP6515650B2 (ja) 校正装置、距離計測装置及び校正方法
JP2021025868A (ja) ステレオカメラ
JP2017151121A (ja) 外界認識装置
WO2024018709A1 (ja) ステレオカメラ装置及びキャリブレーション方法
JP7492599B2 (ja) 車載カメラ装置
JP7207889B2 (ja) 測距装置および車載カメラシステム
WO2024127591A1 (ja) カメラ校正装置及びカメラ校正方法
JP7083014B2 (ja) ステレオカメラ
US20230385995A1 (en) Method for simulating the effects of the optical quality of windshield
CN118004035B (zh) 一种基于车载投影仪的辅助驾驶方法、装置及电子设备
US20240054678A1 (en) Method for rectification of images and/or image points, camera-based system and vehicle
JP2023157660A (ja) 画像処理装置及び画像処理方法
CN113450420A (zh) 车辆挡风玻璃和摄像头镜头联合标定的方法、系统和车辆
CN114140507A (zh) 融合激光雷达和双目相机的深度估计方法、装置及设备