(57)【要約】      （修正有）【課題】高精度で高密度な３次元形状の復元と、それを基にして認識される物体の認識率を向上させることが可能な車載周囲環境認識装置を提供する。【解決手段】撮像部の視点に基づき３次元形状を得る際に撮像部の誤差を推定する誤差管理部３００と、誤差管理部３００の推定結果に応じてマッチング手法を選定するマッチング部４００と、を有する。【選択図】図１
2019028633.tif 000002
【特許請求の範囲】
【請求項１】
撮像部を有する車載周囲環境認識装置であって、
前記撮像部の視点に基づき３次元形状を得る際に前記撮像部の誤差を推定する誤差管理部と、
該誤差管理部の推定結果に応じてマッチング手法を選定するマッチング部と、
を有することを特徴とする車載周囲環境認識装置。
【請求項２】
前記誤差管理部は、誤差の種別と量を管理することを特徴とする、請求項１記載の車載周囲環境認識装置。
【請求項３】
前記誤差の種別は、幾何の誤差を含み、該幾何の誤差は、縦位置、横位置、回転、拡大及び縮小のいずれか１つを含むことを特徴とする、請求項２記載の車載周囲環境認識装置。
【請求項４】
前記誤差の種別は、感度の誤差を含み、該感度の誤差は、点ノイズ、線ノイズ、ブラー、感度オフセット及び感度ゲインのいずれか１つを含むことを特徴とする、請求項２記載の車載周囲環境認識装置。
【請求項５】
前記撮像部を左右にそれぞれ有し、前記幾何の誤差を左右対応点若しくは左右対応する線情報によって補正し、該補正で残った誤差量を前記誤差管理部で推定し、該誤差量は縦方向を含めたステレオマッチング処理をすることを特徴とする、請求項３記載の車載周囲環境認識装置。
【請求項６】
前記撮像部を左右にそれぞれ有し、前記左右の前記撮像部で撮像された左右対応点から前記幾何の誤差を推定し、継時的なゆがみ又は振動の発生を特定することを特徴とする、請求項３記載の車載周囲環境認識装置。
【請求項７】
短期的な誤差量と長期的な誤差量とを分類し、
前記長期的な誤差量は、左右対応点データを活用してキャリブレーションで誤差を補正して残誤差が少なくなるようにして、
前記短期的な誤差及び前記残誤差は、縦方向及び横方向の前記幾何の誤差の補正と、複数のステレオマッチング処理から前記幾何の誤差に適する前記ステレオマッチング処理を選定して実行することを特徴とする、請求項３記載の車載周囲環境認識装置。
【請求項８】
前記撮像部に内蔵された温度センサに基づいて、撮像素子の温度変化を予測し、
前記誤差管理部は、前記温度センサが予測した温度に基づいて前記誤差を推定することを特徴とする、請求項１記載の車載周囲環境認識装置。
【請求項９】
走行路面の凹凸状況を推定する路面状況推定部を有し、前記幾何の誤差を推定することを特徴とする、請求項３記載の車載周囲環境認識装置。
【請求項１０】
前記撮像部の露光情報に基づいて、前記感度の誤差を予測することを特徴とする、請求項４記載の車載周囲環境認識装置。
【請求項１１】
前記マッチング手法は、コントラスト補正、ノイズ除去、マッチングウィンドウサイズ、マッチングウィンドウ内の間引き、探索範囲、マッチング手法、パラメータ及び視差補間の少なくともいずれかを変更することを特徴とする、請求項１記載の車載周囲環境認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車載周囲環境認識装置に関する。
【背景技術】
【０００２】
本発明は、車両に設置された２つのカメラにより車両周囲環境を認識する車載カメラに関する。予防安全技術の製品化が普及期に入りつつあり、車載カメラ、ミリ波レーダ、レーザレーダなどのセンシング技術も廉価に作る技術も重要となってきている。本発明は、カメラ（撮像部）を利用して車両周囲環境を認識するセンシング技術に関するものであり、特に２視点のカメラ情報を活用して３次元障害物を認識するアルゴリズムにおいて、その２視点の位置ずれを補正もしくは補完、許容する方法に関する。
【０００３】
走行中のステレオカメラの左右カメラの位置ずれを補正する、車載ステレオカメラの校正装置及び校正方法、特開２０１４−７４６３２号公報（特許文献１）がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−７４６３２号公報号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
車両に設置されたカメラを活用して障害物３次元形状を推定する。この際に、複数台のカメラ位置がどのような位置関係にあるかということがあらかじめ既知であると、３次元形状を復元する際の処理が非常に容易であると同時に高精度に３次元形状を復元することが可能である。しかしながら、廉価な部品の利用による温度変化による形状変化、画質のばらつき、製造ばらつきなどがカメラ単体での誤差が想定されるだけでなく、適当に車体にカメラが取り付けられているような場合には、車体とカメラの相対位置のずれが生じ、振動やたわみなどが発生する。
【０００６】
高精度な部品と精密な組立を行うことで初期誤差が少なく、なおかつ使用中に幾何的にも感度的にも誤差の少ないカメラを製造することも可能であるが、どうしてもコストが高くなりやすい。また、走行中にある程度長い時間をかけながら徐々に発生する誤差に関しては、特許文献１に示すように左右対応点を用いることで、２つのカメラに生じる相対誤差を補正することが記されている。しかしながら、より短期間、単フレームでの幾何誤差発生や、補正後に残った誤差に関する対応方法、また感度誤差に対する対応方法は記されておらず、そのまま３次元復元すれば、密な３次元形状を得られない、低精度であるなど、さまざまな課題が生じる。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は、撮像部を有する車載周囲環境認識装置であって、前記撮像部の視点に基づき３次元形状を得る際に前記撮像部の誤差を推定する誤差管理部と、該誤差管理部の推定結果に応じてマッチング手法を選定するマッチング部と、を有する。
【発明の効果】
【０００８】
本発明の車載周囲環境認識装置によれば、高精度で高密度な３次元形状の復元と、それを基にして認識される物体の認識率を向上させることを可能とする。
【図面の簡単な説明】
【０００９】
【図１】車載環境認識装置
【図２】ステレオカメラ部
【図３】キャリブレーション用対応点探索部
【図４】誤差管理部
【図５】マッチング部
【図６】走行中キャリブレーション部
【図７】物体検知部
【図８】警報制御部
【図９】露光調整
【図１０】キャリブレーション用処理領域
【図１１】特徴点の抽出結果
【図１２】特徴点の記述
【図１３】温度変化による誤差増減表
【図１４】時間管理
【図１５】統合管理部
【図１６】マッチング基本原理
【図１７】マッチング間引き
【図１８】マッチング手法Ｚ
【図１９】マッチング手法Ｘ
【図２０】処理フローチャート
【発明を実施するための形態】
【００１０】
本発明の車載周囲環境認識装置は、より安全かつ快適に車両を制御するに、カメラを利用して自車両の周囲環境をセンシングし、自車両の制御や警報に必要な情報を出力することを特徴とする。
【００１１】
特に、ステレオカメラで三次元形状を解析する際に、テクスチャの偏りによって生じる誤差がある。ステレオカメラの基本原理に基づく影響であり、ステレオマッチングはマッチングウィンドウ内のテクスチャの特徴に基づいてマッチングを行っている。このため、マッチングの際に、マッチングウィンドウ内にほぼ均一輝度の特徴がない少ない領域と、輝度差が大きく特徴の多い領域が存在するような場合には、マッチングウィンドウを設定しているものの、特徴の多い領域がマッチングするような、３次元計測結果となる。このためマッチングウィンドウの中心の３次元結果を算出しているつもりが、テクスチャの多い領域に合わせたマッチングとなり、計測した３次元結果に誤差が生じる。
以下、実施例について図面を用いて説明する。
【実施例１】
【００１２】
＜図１  車載環境認識装置＞
図１に車載環境認識装置の構成図を示す。左右に平行に並べられたカメラを、ステレオカメラとして利用し、車載周囲環境を認識する。ステレオカメラ部１００では、左右のカメラから撮像された左右の画像を利用する。右画像をベースとしてステレオマッチングを実施するために、基本的には右基準に感度、幾何などを合わせるものとする。ステレオカメラ部では、左右カメラの撮像と合わせてマッチングのための前処理を実施する。キャリブレーション用対応点探索部２００では、左右画像の特徴点を画像上から探索し、この特徴点の中から、左右画像上で対応のとれた左右対応点を探索して、左右画像の位置あわせが正しい状態が保たれているかどうかのチェックと共に、どの程度ずれているかということを推定する際に利用する。誤差管理部３００では、左右カメラの誤差について管理する。上記、キャリブレーション用対応点探索部２００の結果は、誤差推定のための１つの情報であり、この他にもカメラ内部に設置された温度計の計測結果や、ステレオカメラ部１００のシャッター時間やゲインなどの露光情報、レーンや路面の推定結果などの走行路推定結果、光源環境推定結果、天候推測結果、などの情報から左右カメラに生じる感度誤差、幾何誤差のノイズ要因を推定し、管理する。ステレオマッチングに影響を及ぼすノイズ要因を、ここで管理、ステレオマッチング手法をどうすべきかの判断材料をここで管理する。上記の誤差管理部３００の結果を基に、マッチング部では、適切なテレオマッチング手法を選定する。ステレオマッチングの前処理、メイン処理、後処理とそれぞれにおいて状況に応じた適切な手法を選定することで、通常では視差精度が低下する、もしくは視差密度が減少するような状況においても、視差精度と視差密度の低下を抑制し、より高精度、高密度な３次元形状の認識を可能とする。
【００１３】
走行中キャリブレーション部５００では、キャリブレーション用対応点探索部２００の結果を時系列に蓄積しながら、時系列に変化する左右カメラの幾何誤差の把握を実施する。長期間監視することで徐々に発生した左右カメラの相対幾何誤差などを精度良く安定的に補正を実施する。補正の実施などは誤差管理部３００などにもフィードバックされる。
【００１４】
物体検知部６００では、車線逸脱警報に利用するレーン認識や立体物検知の足元位置を見つけるためにも利用する路面推定部、更に、左右カメラのステレオカメラからステレオマッチングにより得られた３次元情報である視差画像を利用して立体物抽出を実施し、この立体物が車なのか、人なのか自転車なのかを検知する。これらの検知結果に基づいて、警報制御部７００では、予防安全のための警報や、車両制御を実施する。また、あまりに左右カメラの状態がステレオマッチングするには幾何もしくは感度誤差が大きいような場合には、センシングすることをギブアップする。
【００１５】
＜図２  ステレオカメラ部１００＞
ステレオカメラ部１００では、複数台のカメラで撮像された画像を利用して３次元復元を実施するための前処理を実施する。２つのカメラの相対位置関係は、少なくとも３次元復元を利用する前段階から既知であり、製品出荷前に低精度であったとしても事前の大まかな感度と幾何のキャリブレーションがされていることを前提とする。
【００１６】
ここでいう感度キャリブレーションとは、２つのカメラに映る画像の画質が一緒にそろい２つのカメラ間でのマッチング精度を上げるためのものであり、例えば、２つのカメラの輝度がそろうように、輝度のオフセットとゲインの調整、そして撮像素子に欠陥がないかのチェック、レンズ周囲に行くほど暗くなるレンズ集光特性の補正などが上げられ、これの補正値は感度補正部１３０に左右それぞれ別の補正値をもっており、撮像部１１０にてカメラで撮影後に、感度補正部１３０において、複数カメラ間の感度が同様になるように補正を実施する。
【００１７】
露光調整部１２０では、複数台のカメラの基準となるベースカメラを決めて、このベースカメラの露光条件に合わせて、他カメラの露光条件（シャッタースピードとゲイン）をあわせるものとする。これにより、撮像する上での露光条件を複数カメラ間で事前に揃えることによって、同じ被写体の画像上の輝度が同等になるようにする効果があり、これにより複数カメラ間で撮像された同物体の画像上の特徴が似るように前処理をすることとなる。図９に露光調整の方法を示す。図９上に示すように、認識の対象となる物体を考慮して、路面や白線、先行車両が入る領域に輝度分布を解析する露光調整用の処理領域を設ける。図９上の画像上の点線領域が露光調整用の処理領域を示す。この複数の処理領域内の輝度分布を解析、領域毎に重みをつけて輝度分布を合成し、平均輝度の高低を基にして暗い場合には明るくする露光条件に、明るい場合には暗くする露光条件へ変更する。図９下には、現状の露光条件から変更方法を示している。横軸は周囲の光源環境が明るい場合には現状の露光値を左側に移動するように調整し、反対に暗い場合は左側へ移動するような変更をおこなう。この変更は、現状のシャッター速度が上限値に達していない場合には、シャッターのみで明暗の調整を実施することを示し、反対にシャッターが上限値に達してからは、シャッター速度は一定にゲインの高低で明暗を調整するものとする。画質劣化につながるゲインは、できる限り使わないように基本はシャッターの時間を調整し、シャッターがこれ以上長時間に設定できなくなった後は、ゲインで調整することを示した図である。
【００１８】
また、シャッター速度やゲインの情報は、誤差管理部３００への入力ともなっており、例えば、シャッタースピードが最も長く、ゲインも最大に近い場合にはカメラの輝度を引き伸ばしてマッチングに利用するため、ノイズが多い状態であることが事前にわかる。これらの露光条件が何であったかを、誤差管理部にも伝えるための情報源にもなっている。このように露光調整と感度補正により、複数カメラ間、特に本実施例では左右に並べた車載ステレオカメラを利用した例とするが、左右カメラ間の感度補正を事前に簡易的に実施する。
【００１９】
また、左画像においても同様に、図９に示すように、ほぼ同一路面が入るように設定された矩形領域を設定し、右画像と同様に領域ごとに重みをつけて輝度分布を合成し、平均輝度を求めることで左右の感度ずれについて解析する。単フレームの解析結果は、光源環境推定部３４０で利用され、補正する場合には、簡易感度補正部３８０でその解析データを基に感度補正を実施する。更に、走行中キャリブレーション部５００の感度キャリブレーション部５３０では、時系列に走行中の感度ずれを観測、管理することで、長期的に左右の感度ずれが生じており、信頼度高く補正すべきかなどの解析を実施、最終実行判断は、実行管理部５４０で実施する。
【００２０】
次に、幾何補正テーブル生成部１４０では、２つのカメラの映像が平行化されるようにレンズ歪み補正と相対位置の補正を実施するための補正テーブルの生成を実施する。カメラに対してキャリブレーション用の格子模様、もしくは等間隔に円を配置したキャリブレーションチャートを撮像し、カメラ単体のレンズ歪み補正を実施する。次に、２つのカメラが固定位置関係になった状況において、左右カメラの平行化を実施する。２つのカメラを製品化される際の相対位置に組み込んだ後に、同一のキャリブレーションチャートを見せることによって、左右のカメラの相対位置を推定し、これを基にして左右カメラの画像がきれいに平行化されるような補正テーブルを完成させる。実際には、レンズ歪み補正テーブルと平行化のテーブルを合成したテーブルを幾何補正テーブル生成部１４０で生成し、実際にはステレオ用画像生成部１５０にて、幾何補正された画像を毎フレーム生成する。
【００２１】
ただし、先に説明した感度と幾何の補正に関しては、製品として出荷される前に実施されたデフォルト状態の補正内容に関して説明した。後に詳細説明するが、キャリブレーション用対応点探索部２００の結果を走行中のキャリブレーション部５００で利用して、製品出荷後に経年変化、温度変化、振動などによって発生している左右カメラの幾何誤差がある閾値以上に大きいことが、ある閾値以上に信頼性高く推定された場合において、幾何補正テーブルの更新を実施する。また、これらは上記カメラ出荷前に実施された工場での幾何キャリブレーション時の温度と、車で使用時の温度が大きく異なるから、あらかじめ決められた補正係数分の変化が必要であることを判断して、補正するような方法もある。
【００２２】
また、感度に関しても同様に、使用中に発生した誤差量を推定してある閾値以上の誤差とある閾値以上の信頼度となった場合に、単フレーム系の補正であれば、光源環境推定部３４０にデータを集約し補正すべきかデータの解析を実施、簡易感度補正部３８０にて補正を実施する。長時間の感度誤差の解析に関しては、走行中キャリブレーション部５００の時系列データ管理部５１０にデータ蓄積し、そのデータを基にして、感度キャリブレーション部５３０にて、感度キャリブレーションすべきか判断を実施。実行管理部５３０において実施を行い、実際の画像への反映は、感度補正部１３０で補正量を変更することでステレオマッチング前の画像への感度補正を実施する。
【００２３】
感度の誤差量の推定も、いくつかの手法があり、一つ目は温度によるノイズ量や感度特性の変化である。左右の感度特性を事前の工場キャリブレーション時にある既定範囲の温度で計測し、左右の感度が同じになるような調整をしているものの、これらは撮像素子の温度が変化すると、このＣＭＯＳ上で撮像される画像のノイズ量や輝度分布にも影響がでる。また、これらは温度によって再現性があるため、左右カメラの感度特性がそろうような輝度のオフセットとゲインを揃えるように補正を実施する。このような時間をかけて変化するような場合には、信頼性や、継続的に変更すべきかの判断を実施可能な走行中キャリブレーション部５００ で補正の可否を判断し、感度キャリブレーショ部５３０において相対的な輝度オフセットとゲインを揃えるような補正値を決定、もしくは工場でのキャリブレーション時の画質に合わせるような温度差に基づく補正係数を利用して補正値を決定してもよく、この補正値を利用して、実際の画像への反映は感度補正部１３０で実施する。特に、この場合、工場でのキャリブレーション時から離れるほど、補正量が大きくなり、推定誤差の誤差量が大きくなるため、工場でのキャリブレーション時の温度は、動作範囲の中心付近であり、なおかつ、その範囲内に入るように温度を調整した状態でキャリブレーションさせることで、走行中の温度変化による感度特性の変化に対応しやすくしている。更に、現状の露光調整による結果に応じて、感度補正を実施しても良い。
【００２４】
通常の露光調整自体は、マスターとなる右カメラの画像をベースに輝度分布を解析することで、露光条件であるシャッターとゲインの補正値を決定している。しかし、左右カメラの感度特性の違いを計測するためにも、左右カメラの輝度分布を走行中キャリブレーション部で比較し、更に左右カメラの温度の違いなどを比較しながら補正すべきかどうかなどを検証する。
【００２５】
＜図３  キャリブレーション用対応点探索部２００＞
キャリブレーション用対応点探索部２００では、左右カメラ間の相対位置のずれを把握するための基データとして左右対応点を抽出し、現状ステレオカメラでの３次元復元を実施するために定められている左右カメラの相対位置に対する誤差量を走行中キャリブレーション部５００で推定し、この幾何誤差量がある閾値以上大きくかつ、信頼度がある閾値以上高くなったと判断された場合に、走行中キャリブレーション部５００で計算された幾何キャリブレーションの値を基にステレオカメラ部１００で実施される幾何補正テーブルを変更する。これによって、より左右カメラ画像のステレオマッチングがしやすい、同一物体ができる限り同じに見えるような感度と平行な位置関係となるように補正し、視差精度と視差密度を高くする。
【００２６】
図１０に示すように、キャリブレーション用対応点探索部２００では、まず、処理領域決定部２１０にて処理領域を決める。左右対応点をできるだけ、左右カメラの幾何が解析しやすいようにより多くのデータをより画像上で分散した位置から取得したい。しかしながら、対応点の抽出は画像処理負荷の高い処理であり、左右画像の画面全体から実施することは困難であり、ここでは、処理領域決定部２１０であらかじめ画像上で分散させて所定の矩形領域を複数設定し、この範囲内だけを画像処理することとする。図１０に示す点線領域が処理領域の候補となっており、更に、ＣＰＵで対応点探索させる場合には、この複数設定された処理領域候補のなかから、更に絞込みを行う。簡易的な処理で精度良くかつ多くの特徴点を得られそうな処理領域を簡易的に選定するために、処理領域内のある強度以上のエッジがどのくらい多く存在するかということ、及びその閾値以上エッジの平均強度を推定することで、複数設定された処理領域の中から更に利用する処理領域の絞込みを行う。あらかじめ設定された領域が１４個あり、上記のエッジ数と強度から処理領域を選定する、この数が６個より多い場合には、更に画面上に散らばる６個の処理領域を選定する。簡易処理で左右特徴点  抽出部の処理領域を事前に絞り込むことで全体の処理時間を大幅に抑制する効果がある。また、この処理自体は、左右一方の画像をベースに処理領域を決定すればよい。決められた処理領域は左右が対となるように設定されていることから、右を決めて左側の対応領域も特徴点抽出に利用することとする。時系列のデータを活用することで、画面全体から満遍なく左右対応点情報を活用するようなことはキャリブレーション精度に重要であるが、ここは、走行中キャリブレーション部５００で主に実施する。
【００２７】
次に、左右特徴点抽出部２２０では、上記、処理領域決定部２１０で選定された処理領域に対して、対応点をとる前の特徴点を抽出する。この特徴点とは、画像上で唯一となる特徴を持った点が望ましいことから、縦と横それぞれの方向に輝度変化を持つようなテクスチャの変化により角となるような点を抽出する。図１１の点線の○印が示すように、画像上の模様から直線状の輝度変化だけでなく直交する方向に輝度変化のあるコーナーに特徴点が抽出されていることを示す。
【００２８】
対応点抽出部２３０では、各特徴点における特徴量を記述し、この特徴量が類似しているかどうかを判定する。この特徴量とは例えば、図１２に示すように、特徴点の座標を中心として、中心位置とその周囲の位置の輝度差、及び周囲の位置同士の輝度差を比較、大小で２値化した値をバイナリデータ列として保存した値を特徴量とする。このような特徴量の記述方式は、２値化せずに輝度差分を特徴量としても良い。特徴点を中心とした周囲の画素から特徴量を記述し、そのデータ同士の類似性を利用して左右対応点の探索を対応点抽出部２３０で実施する。左右で同じ物体の同じコーナーの点は同じ特徴量を持つであろうという考えから、このような特徴量を記述し、対応点の抽出を実施する。これらを比較することで、画像上の同じコーナーにある特徴点の特徴量は類似してくるため、特徴量の比較を実施すると画像上の同じコーナーを判定することができ、左右の対応点が見つかる。
【００２９】
しかしながら、上記の特徴量を利用した対応点探索だけでは、うまくいかない誤対応した点も含まれてしまう可能性がある。まず、簡易的なノイズ対策として、誤対応した点に関しては、左右画像上の大きくずれた位置で対応点をとる可能性がある。このため、誤対応点を簡単に削除する方法の１つとして、簡易ノイズ除去部２４０では、最初に、対応点が平行化の許容範囲内に入っていないことをもって、誤対応点であることを判定する。特に周囲の点と比較しても画像の上下方向に大きくずれていることを持って、ノイズだと特定を行う。
【００３０】
＜図４  誤差管理部３００＞
次に、誤差管理部（幾何と感度）３００について説明する。
誤差管理部３００では、ステレオカメラに生じる誤差を要因別に解析し、管理する部署である。
【００３１】
まず、最初に温度管理部３１０であるが、ここでは温度変化によって生じる平行化誤差と感度誤差の量を推定する。工場でキャリブレーションした際の温度から、カメラを使用中の温度が離れるほど、カメラの筐体への変形の影響や、カメラ撮像素子の感度の変化が大きくなる。これを工場でキャリブレーションした通常温度２０度の場合を基準として、撮像素子付近の温度が変化するほど、幾何誤差や感度誤差が大きくなることを事前に調査し、各カメラ共通の傾向が見受けられる場合には、キャリブレーション時からのカメラ使用時の撮像素子付近にある温度計がさす温度に応じて幾何誤差の発生量、感度誤差の発生量を推定する。図１３にその例を示す。例えば、各カメラに共通の傾向が認められており、かつ２０度キャリブレーション結果を補正したことにより、すべての誤差が０であった場合を示す。幾何系の縦方向のずれ量、横方向のずれ量が０pixelであり、拡大縮小、回転もまったくないとする。感度誤差についても、撮像素子の誤差を計測し、すべて補正済みであり、想定仕様通りの撮像ができる場合には、図１３の温度２０度のように誤差０となる。走行中に温度変化した場合の誤差増加量を低温-２０度の場合と高温６０度の場合の誤差量をあらかじめサンプリングされた１００台のカメラのデータを基に誤差平均値を求めると共に、傾向が類似していることを確認する。類似していることが確認できた場合には、この表を共通に使えるためサンプリングしてしまった後は、特に計測せずに使いまわすことが可能である。この温度変化時の誤差を表１３にまとめる。
【００３２】
更に、温度変化による誤差量が、各カメラの固体に応じて、大きく変化する場合においても図１３の表自体は同じであるが、通常キャリブレーション時以外の温度、６０度と-２０度でも事前に工場でキャリブレーションすることで、その間の温度の際の誤差は線形補完、それ以降は、外挿により推定などをすることで、各個体別の誤差の発生を推定してもよい。
このように、図１３の表をベースにして生じる誤差量を推定する。ただし、これも個体ごとの個体差はあったとしても、同一個体が同一温度では同じような誤差が発生する再現性がある場合にのみ利用できる。
【００３３】
次に、時間管理部３２０については工場から出荷時等、もしくはディーラー等でのキャリブレーションや部品メンテナンスからの総経過時間を管理することで、経年劣化による影響を推定するために利用する。レンズの劣化、変色など、走行時や特別な施設なしに補正が困難な項目については、この総経過時間をベースにどの程度、経年劣化が進んだかどうかの推定に利用する。温度変化によるノイズの増加などは、一時的なものかつ、経年劣化とは独立に発生するため、ここでは温度変化によるは考えず、経年劣化による幾何や感度の誤差を管理する手法を示す。
【００３４】
これとは別途、経年変化による左右カメラの位置ずれ、カメラ構造の変形などは、走行中のキャリブレーションによっても補正されるため、出荷時からの総経過時間とは無関係になりやすい。このため図１３に示すように、誤差別に時間管理を行う。総経過時間に関しては、共通の時間項目であり同じ時間を○がついている項目で共有した時間を使う。ただし、修理のためにカメラを変更したような場合には総経過時間もキャリブレーション後経過時間もリセットされたものが装着される。また、カメラの修理等で、再検査されたような場合にも管理している時間がリセットされることがある。それ以外の誤差項目ではキャリブレーション後経過時間を基に、誤差量を推定する項目は、キャリブレーション後経過時間の欄に○がつけてある。この項目はキャリブレーションで、補正された場合にリセットされる時間となるため、キャリブレーションの補正が項目別に異なるタイミングで働けば、それぞれリセットされるかどうかが異なる。例えば、幾何の縦方向のキャリブレーションだけを実施した場合には、他のキャリブレーション後経過時間はリセットされず、そのまま経過時間をカウントし続けて幾何縦のキャリブレーション後経過時間のみリセットされる。他、項目についても同様であり、感度オフセットのみキャリブレーションされれば、他項目のキャリブレーション後経過時間はリセットされないような設計となる。ただし、幾何系の外部パラメータ全てを同時にキャリブレーションしたような場合には、カメラの縦横、回転、拡大縮小に全て影響を与えるため、このようなキャリブレーションの場合には、このキャリブレーションによって書き換えられた値に応じて、キャリブレーション後経過時間をリセットするものとする。この場合には、幾何系全てのキャリブレーション後経過時間がリセットされる。時間管理部では、このような走行中キャリブレーションで補正される項目については、走行中キャリブレーションにより補正されてからの経過時間を項目ごとに、管理するものとする。
【００３５】
次に、走行路推定部３３０では、路面上の凹凸を解析し、その時系列データを解析することで、現在の走行状況は、凹凸が少なく整備された道路なのか、それとも舗装もされていない道路、もしくは穴や落下物のある凹凸路面なのかを推定する。推定された路面の凹凸状況に応じて、左右カメラの幾何状況にどの程度影響するかは、あらかじめ解析しておくことで、幾何に与える影響を推定できるようにしておく。
【００３６】
例えば高速道路のように整備された綺麗な道路では、左右カメラの振動による幾何誤差は小さく、左右対応点の結果からも無視できると判断する。反対に、一般道などでの凹凸路の場合には、左右対応点の結果を観測しながら、走行路がどのような路面であるか同時に推定すると、左右の幾何ずれが毎フレーム縦方向に３pixel程度発生する荒れた路面の道路があったと判定する。この場合、毎フレームごとに誤差が発生することを想定し、キャリブレーション用対応点探索部２００により左右対応点が十分に得られた場合には、走行中のキャリブレーション部で補正する補正量は、振動分は補正せずに、時系列データによる振動の平均分の補正値のみを、走行中キャリブレーション部にて補正。反対に、振動に対する補正は、走行路推定部３３０の推定結果、左右対応点の情報を利用して、そのフレームだけの簡易補正を簡易幾何補正部３６０にて実施する。もし、瞬間的な左右差が不明な場合には、通常と同様に、１フレームごとに補正を実施するのではなくなく、時系列データを活用する走行中キャリブレーション部５００においてキャリブレーションを実施し、ステレオカメラ部１００の幾何補正テーブルを幾何補正テーブル生成部１４０で編集することで、左右カメラの平行性を保つ。ただし、簡易補正部での補正は簡易的であって、回転方向の補正や、拡大縮小方向の補正など、簡易補正では対応しきれない補正がある。このため事前に、簡易補正したとしても、走行路によってどの程度の平行化誤差が発生しそうかというデータは取得し、そのデータを基に、現状の走行路から発生しそうな幾何誤差の想定値を推定することとする。
【００３７】
ステレオカメラの場合には、視差画像が得られるため、自車両前方の進行路を車速と操舵角から推定し、自車両が進行するエリアの視差情報から、自車走行路の路面と車体の相対位置姿勢を時系列に計測し、常に車体がピッチングしているような状況で、その影響をカメラが受けているかどうかなどの判定を実施する。整備された走行路の場合には、相対位置姿勢の変化は小さく、また、視差も安定して検出できる。反対に、カメラ筺体が廉価で、ピッチングによりカメラ筺体までもが変形するような場合には、視差の減少の影響も考えられる。
【００３８】
簡易幾何補正部３６０では、簡易的な幾何補正のみを実施し、このフレームのみ、もしくは固定フレーム間隔のみの幾何補正を実施する場合に利用し、幾何補正テーブル自体を書き換えるような変更は実施しない。このため、縦、横の補正を基本実施し、複雑なレンズ歪みなどの補正は実施しない。もちろん瞬間的な幾何のずれのため、瞬間的にレンズ歪みが変形することはないため、瞬間的な振動により発生する誤差を抑制する補正部として簡易幾何補正部３６０を活用する。
【００３９】
更に、幾何誤差推定部３７０では、温度管理部３１０、時間管理部３２０、走行路推定部３３０により想定される誤差量の総和から、瞬間的に補正された簡易幾何補正部３６０での補正量を減算して、現フレームに発生しうる最大誤差量を推定する。推定する誤差量は、図１３に示している温度変化の場合の誤差増減表と同様に、幾何種類別である、縦、横、拡大縮小、回転のケース別に誤差を管理してもよいし、縦横の位置ずれだけに集約しても良い。また、マッチング手法の縦探索の幅を考慮するのであれば、縦方向の最大ずれ量だけの推定値でも良い。
【００４０】
次に感度系についてまとめる。
既に述べたように温度管理部３１０においては温度別に発生する誤差量をあらかじめ計測しておき、実際のステレオカメラ利用時の温度に基づいて図１４に示すように感度誤差量も推定する。更に時間管理部３２０においては、総経過時間に基づくレンズの劣化を予測することや、走行中キャリブレー後の経過時間をノイズ種類別に計測し時間を管理する。これによりその経過時間に基づく感度の変化量を推定する。
【００４１】
次に、幾何系の誤差には影響しない、光源環境推定部３４０について記す。光源環境推定部３４０では、露光調整部１２０で設定されたカメラシャッター速度とゲイン、画像上の領域別平均輝度などに応じて、画像上のノイズ状況を推定する。シャッター時間が長いほうが、基本的にノイズが少なくなるが、シャッターが長い場合にも画像上の暗い部分にはノイズが多くなりやすく、領域別の平均輝度も利用した上で画像上のノイズ量を推定する。基本的には、カメラの特性をあらかじめ調査しておき、シャッターとゲインに応じたノイズの増加量を種類別に調査しておき、カメラ使用中には、その際の適応露光条件（シャッター速度、ゲイン、周囲の平均輝度）に応じた、ノイズ量を調査しておき、これに基づいたノイズ量を種別に光源環境推定部３４０にて推定する。
【００４２】
天候推定部３５０では、ワイパーの動作状況や、外気温、他センサによるガラスの曇り状況や雨滴センサなどによる雨滴付着判断結果から天候状況を予測し、雪や雨などが付着しやすい状況にあるか判断を行う。この天候推定部３５０の結果に応じて、カメラ撮像時に生じる感度のオフセットやゲイン、ブラーなどに左右差が生じる可能性があると判断する。この場合、他、誤差推定部と異なり雨が降っていたとしても、どのような輝度オフセット、ゲイン、ブラーがどの領域にどのタイミングで生じるか推定することは困難であるため、ここでは発生する可能性が高いと判定するにとどめる。
【００４３】
簡易感度補正部３８０では、主に短期間に発生した感度誤差のみを対象に簡易的に輝度オフセットやゲインなどの補正を実施する。温度変化や経年変化などに基づくある程度長期の補正については、走行中キャリブレーションにて基本的な対応を実施し、数フレーム間における急激な光源環境の変化が起きた場合のみなどに、簡易的な感度補正にて対応する。露光条件が安定的に変更されていれば、走行中のキャリブレーションで対応するものとする。露光調整用に右画像をベースに平均輝度を監視しているが、左画像でも同様に平均輝度を算出することによって、左右感度の違いを関しており、これをベースに補正量としている。
【００４４】
感度ノイズ推定部３９０では、温度管理部３１０、時間管理部３２０、光源環境推定部３４０、天候推定部３５０で推定された誤差量の総和から簡易感度補正部３８０にて補正された量を減算した量が現状の感度ノイズ量であることを推定する。また、天候推定部３５０については、感度誤差の可能性があることを情報として管理する。
【００４５】
ここでは、ステレオカメラで発生している左右カメラの誤差を管理するとともに、瞬間的に発生した誤差に対して、簡易的な方法、例えば幾何であれば縦か横のオフセットのみ、感度であれば輝度オフセットか輝度ゲインのみといった限定的な誤差抑制処理を実施し、更に、現状のカメラに簡易補正では抑制しきれなかった誤差、走行中キャリブレーションではまだ対応できていない誤差などを管理する。
【００４６】
＜マッチング部＞
次に、マッチング部４００では、誤差管理部３００で推定された幾何誤差と感度誤差の推定結果に応じて、より適切な視差情報が得られるようなマッチング手法を選定する。
【００４７】
統合管理部４１０においては、誤差管理部３００から得られた現フレームにおける幾何誤差と感度誤差をそれぞれ種別に、誤差量を管理する。図１５のマッチングの統合管理テーブルの上から４行目に示す誤差量を種別に毎フレーム更新する。また、推定誤差量を直接情報として得られる場合は、この総量を管理すればよいが、天候検知部の結果のように誤差が発生している可能性を示すような指数の場合には、その可能性の大小に基づいてあらかじめ規定の誤差量を付加して、誤差量を管理するものとする。
【００４８】
３次元を復元するために、特にステレオカメラの場合には、左右カメラが平行に取り付けられているように調整するが、これに誤差が残っている場合や走行中に温度や振動、経年変化などによって生じた左右カメラ間の相対位置姿勢のずれを幾何ノイズとし、この幾何ノイズには、縦ずれ、横ずれ、回転、拡大縮小の４種類を推定する。キャリブレーションを考慮した幾何補正では３軸位置と３軸回転があるが、ここではマッチングに与える影響を考慮して４種類の幾何誤差別に適切なマッチング手法を選択する評価項目として利用する。誤差量で定義している縦Apixelは、画像上で最もずれている画素がApixelであるという推定を基に示している。画像全体がApixel縦ずれではなく、最悪値がApixelという定義方法である。他B,C,Dについても同様で回転などの場合には、画面端や隅でもっとも大きくずれている場所の誤差がCpixelという定義をしている。横や拡大縮小についても同様の定義方法とする。
【００４９】
次に、左右カメラの感度差についても種類別に定義する。ここでは代表的かつマッチング影響を及ぼす５種類の感度ノイズ量を推定し、管理するものとする。感度ノイズの種類は、点ノイズ、線ノイズ、ブラー、オフセット、ゲインであり、それぞれ点ノイズとは画像上にはいる点状のノイズであり、同一輝度の物体を撮像しているにも関わらず周囲の画素と異なる輝度になるような現象であり、非常に暗い状況で、ゲインを上げた撮影時や、極端な高温時、低温時などにそのような点状のノイズが増える、このノイズ量自体はカメラ特性を理解して推定を誤差管理部３００で実施している。主に温度管理部３１０の結果に基づく誤差推定と、光源環境推定部３４０の露光情報に基づく誤差推定により点状のノイズ量の推定を実施する。
【００５０】
次に線ノイズは、画像上に縦に入るノイズであり、同一の輝度の平面を撮像していてもその縦線上だけ、隣接する線上の画素と異なる輝度になるようなノイズ要因であり、これも極端な温度特性時に発生することがわかっておりカメラ別に異なる量を考慮して、誤差管理部３００の温度管理部３１０にて、位置や強度を計算している。
【００５１】
次に、ブラーはレンズのピントボケのような画像の鮮明さを画像の解像度の特性として数値表現している。誤差管理部３１０では温度変化や経年劣化、更には、天候による水滴付着などから誤差量を推定している。温度管理部では他のノイズと同様に、温度変化時のブラーの値を図１３のテーブルに保持しており、この表をベースに、温度に応じたブラーの程度を推定する。経年劣化に関しても同様に、総経過時間の長さに基づいて、発生するレンズ分解能の低下量をテーブルとしてデータで保持しており、これをベースに現状の分解能低下量を推定する。天候による水滴付着に関しては実際の水滴付着時の解析結果をあらかじめテーブルで保持しており、この水滴付着の可能性があると判断された場合には、そのテーブルに保持された量の分だけぼける可能性があると判断する。これらの推定量を利用して、現フレームにおけるレンズの分解能をしめすブラーの値を推定する。
【００５２】
次に、輝度オフセット、輝度ゲインに関しては、経年劣化や温度変化、露光調整結果を含んだ周囲光源環境からそれぞれ別々に推定する。これらも基本は同様であり、温度特性に関しては図１３に示す温度別の誤差量に基づいた推定を実施、経年劣化などに関しては、同様に事前のテーブル表をデータと保持しており、ここから現在の温度や、総経過時間に基づいた誤差量を推定する。反対に、瞬間的な誤差に関しては、誤差管理部の感度ノイズ推定部の結果に基づいて、感度オフセット及び感度ゲインの推定値を利用する。
【００５３】
更に、走行路推定部と光源環境推定部の結果より、現在走行しているシーンを想定し、そのシーンにおいて優れているマッチング手法を選定するために、特定シーンに関しても、幾何ノイズ、感度ノイズと同様にマッチング手法選定のための評価対象とする。特に、特定シーンに関しては、おそらく走行していると推定されるシーンの重みを０から１０の重みで表現し、１０の場合には強くマッチング手法の選定に影響するという重み付けを表す。感度ノイズ、幾何ノイズも同様に重み付けすることで、どのノイズを重視したステレオマッチング手法を選定するかを決定することができる。本実施例においては、カメラの特性を調査し、事前にこのステレオカメラは幾何ノイズが大きく発生しやすく、幾何誤差がステレオマッチングにより得られる視差画像に与える影響が大きいのか、反対に感度ノイズが大きく発生しやすく、感度誤差がステレオマッチングにより得られる視差画像に与える影響が大きいのか事前に調査し幾何と感度の重要性のバランスをとるとともに、各誤差種別についても発生頻度や誤差量に応じてその重要性を決めておく。もちろんステレオカメラの構造や特性に応じて、この重要性をリアルタイムに変更することでより、感度ノイズに対する評価結果を重要視するような調整、反対に幾何ノイズに対する評価結果を重要視するような調整を行うことで、より適応的な調整を行ってもよい。
【００５４】
本実施例では、安定性などを重視し、幾何ノイズ、感度ノイズの重要性については工場などの出荷前に事前に決定し、特定シーンの重要性のみリアルタイムに変更する方式を選択した。このように、統合管理部４１０では、幾何ノイズ量と感度ノイズ量をそれぞれ詳細な種別ごとに、そして、感度ノイズ、幾何ノイズ、特定シーンのそれぞれの種別ごとの重要性についての情報を集約する。
【００５５】
ここまでで図１５の上側半分の横方向に並ぶ項目を説明した。
次に、テーブルの左側に縦方向に並ぶ項目について説明する。ここは、マッチング部の大半を占める各種マッチング手法の構成内容について示されており、このマッチング手法の基本構成を示している。
【００５６】
横一行ずつに、本フレームでステレオマッチングを実施する際の前処理、後処理を含めたマッチング方式になっており、この横１行で示す前処理後処理含めた一連のマッチング方式が、幾何ノイズ、感度ノイズ、特定シーンに対して、どのようなマッチング性能を示すスコアとなるかを、計算する。
【００５７】
これは横一行目の各セルに対して、まずは幾何ノイズの縦ノイズＡpixel発生した場合に、どのようなマッチング性能かあらかじめ評価したデータからセルにそのスコアを埋める。縦ノイズの全pixelのデータを持つとかなりのデータ量になるのであれば、所定のpixelの誤差の場合のスコアだけをデータとして保持して、間の誤差が推定された場合には、補間によりスコアを計算しても良い。
【００５８】
このように、各ノイズ別のスコアをそれぞれ計算して横方向にスコアを埋めていく。この場合には、次に、幾何：横ノイズ：Bpixel、幾何：回転：C：pixel、幾何：拡大縮小：D：pixel、に関して、マッチング手法の性能スコアを生める。誤差推定量に応じてマッチングの性能を示すスコアが異なるため、推定誤差の結果が変化するたびに、計算が必要となる。同様に、感度ノイズに関しても、感度ノイズの点ノイズの強度が通常時のE倍になった場合のマッチング性能を示すスコアをセルに埋める。同様に、線ノイズ：Ｆ倍、ブラーＭＴＦ：Ｇ、感度オフセット：Ｈ、感度ゲイン：Ｉ倍の場合についてもどうように、マッチング手法についてあらかじめ、その誤差が加わった場合のマッチング手法に対する評価結果を事前に取得しておいて、推定された誤差量に応じて、どのようなマッチング性能を示すかをリアルタイムにセルに反映させる。これをすべてのマッチング手法について評価することで、図１５に示す、灰色のセルの中のスコアを埋める。
【００５９】
最後に、このスコアを横方向に行別に合計し、最終的な評価点としてもとめ、最高得点の手法が現在のマッチング手法に最も適切であると判断する。
【００６０】
このように推定誤差に対して、それぞれ一連のマッチング手法の性能評価点を計算し集計することで、リアルタイムに変化する推定誤差に対して最も適切なマッチング手法を選定することが可能となり、発生している誤差状態に対して最も性能の良いステレオマッチング結果を得ることが可能となる。
【００６１】
横１行に示す、前処理、後処理を含めたマッチング手法について説明する。
本実施例においてマッチング手法は、前処理、マッチングメイン処理、後処理に分割し、更に、その詳細なＯＮ，ＯＦＦを含めて管理する。統合管理部においては常に処理を十個することが確定であるノイズ除去フィルタと無効視差判定については、図１５の統合管理部での管理対象外としているが、実際のステレオマッチング実行時には、ノイズ除去フィルタ部４４２と無効視差判定部４４３にて実施するものとする。
【００６２】
前処理、後処理含めた一連のマッチング手法の、図１５の表の上から一つ目の手法は、コントラスト補正有、ノイズ除去有、ステレオマッチング窓サイズ１６x１６、間引き無、マッチング手法Ｚ、パラメータＭ，視差の補完無、の手法である。この一連のマッチング手法の際に、幾何ノイズで縦方向に幾何誤差がApixだった場合の評価点をセルに埋める。という処理を実施、次に、横方向の誤差というように順番に、セルを埋める処理を実施、推定誤差に対するこの手法の評価点を計算することができる。次に、同じように、一連のマッチング手法として、コントラスト補正有、ノイズ除去無、ステレオマッチング窓サイズ１６x１６、１/２間引き、縦探索±１の範囲、ステレオマッチング手法Ｚ，パラメータＭ、視差の補完無、の場合において、同様に推定誤差に対する評価点を試算、合計となる評価点を計算し、この評価点と各種マッチング手法の評価点を比較することで、どのマッチング手法がより適切かどうかを判断する。
【００６３】
例えば、コントラスト補正され上から２つの手法に関しては、基本は夜間に強い手法であるため、露光条件でのゲインが高い、もしくはカメラの温度が高温もしくは低温時などにノイズが強くかつ低コントラストに強い手法を想定した手法となっている。また、その際の幾何誤差の大小で、少ない場合には上下にステレオマッチングの探査を振らない１つ目の手法が効率よく、２つ目の手法の場合には、ステレオマッチングの探査を実施する。上から３番目から５番目までの手法は、基本的に感度系のノイズが比較的すくない場合に利用される手法であり、その中で幾何誤差の縦、横のノイズが増えるほど、４番、５番の手法と幾何誤差を吸収しやすい縦方向にステレオマッチングを探査する方法となっている。
【００６４】
次に、Ｘのステレオマッチング手法を利用している６番目から８番目の手法は回転誤差に強い手法であり、感度誤差に関しても比較的ロバストである。回転誤差、拡大縮小などの誤差が増えた場合に比較的強い手法であり、この回転の誤差が大きいほど、７，８番とステレオマッチングの探索範囲が縦方向に増えるためにロバストな手法となっている。最後に示す、９番、１０番の手法は明るいが低コントラスト、及び、ノイジーな場合に強い評価結果となり、最終的な視差補完が実施されるため、比較的ロバストな実験結果となる。このように一連のステレオマッチング手法ごとに、誤差種別に対する得意、不得意が異なるため、このように誤差種別毎に評価を実施、現フレームにおける発生している推定誤差に応じて、最適なマッチング手法及び組み合わせの前処理、後処理を選定することで、より適切な視差画像を選定することを可能とする。
【００６５】
（前処理）
前処理とは、ステレオマッチングする前に、左右画像に対して、ステレオマッチングの性能が向上するように実施する処理であり、マッチング前処理部４２０で実施する。コントラスト補正は主に夜間、ノイズ除去は逆光や、高温、低温、夜間などのノイズが増加するときのために用意されている。コントラスト補正部４２１では、主に夜間用に用意されており、暗くて低コントラストで見えにくい白線や標識、歩行者などを対象に、コントラストを補正することで、認識率の向上を図る手法であり、暗くて見えにくい領域などの立体物などをより抽出しやすくするための処理である。点ノイズ系を削減するために主に利用されるノイズ除去部４２２を用意しており周辺輝度と大きく変化する画素については周囲の輝度情報から着目画素の輝度を抑制するような処理を実施する。
【００６６】
この表においてすべての機能のＯＮ，ＯＦＦの組み合わせを用意してもよいが、実際の車載ハードウェアやＣＰＵなどはコストや回路規模、処理時間、発熱による制約が付く場合が多く、またフレームレート内に処理を完了させることを考えるとすべての機能を処理時間がかかるＯＮ方向に倒した場合には、規定の処理時間内に処理を完了させることができないなどのことが生じることが懸念される。このため全ての組み合わせを用意するのではなく、あらかじめ設計段階で、お勧めの組み合わせに絞って統合管理部において、その手法群に対する評価をリアルタイムに実施するものとする。
【００６７】
（メイン処理）
マッチングメイン処理部４３０では、ステレオマッチングの中で、メインとなるマッチング処理を実施するが、マッチング処理する前にさまざまな設定などを決めた後に実施する。まずは縦横のサーチ範囲を縦横  探索範囲設定部４３１にて実施する。図１６にマッチングの基本を示しているが、マッチングのサーチ範囲を横方向の矢印の長さが横探索範囲であり、縦に並ぶ矢印の本数が縦探索範囲として基本的な考え方を示している。統合管理部４１０にて記された探索範囲±１という記述は、メインの横探索する矢印の上下に１pixel分だけずらして合計３矢印(pixel)分の横探索を実施することを意味する。
【００６８】
マッチング手法設定部４３２では、統合管理部４１０によって決められたマッチング手法の動作準備等を実施する。マッチング手法Ｚ，Ｘを推定された誤差量に基づいて手法ごとにスコア計算し、その合計の評価点によって手法を変更して利用する。
【００６９】
マッチング手法Ｚの数式とパラメータセットを図１８に示す。マッチング手法Ｚは、マッチングウィンドウ内の輝度差を比較する手法である。ただし、パラメータセットに基づいて、数式が若干変化する。パラメータ調整部４３５では、ステレオマッチングのパラメータ調整を実施する。本実施例における、マッチング手法によってパラメータは異なるが、主にパラメータ変更するマッチング手法Ｚのパラメータ変更について図１８を利用して説明する。パラメータＭの場合には、左右画像の輝度平均値を減算してから輝度差を比較し、その比較結果を絶対値として利用する一般的にＺＳＡＤという手法を利用する。パラメータＮでは、左右画像の輝度平均値は利用しない０として扱い、輝度差の２乗値を輝度差比較に利用する一般的にＳＳＤという手法をとる。パラメータＱでは、左右画像の輝度平均値は利用しない０として扱い、輝度差の絶対値を輝度差比較に利用する一般的にＳＡＤという手法で対応する。
【００７０】
マッチング手法Ｘについては、デフォルト設定のパラメータＰのみ扱う手法とし、図１９にその手法を示す。図１９の上から１つ目の式にあるように、マッチングウィンドウ中心との輝度差を０，１として表現する。これは図１９の上から２番目の式にあるように、ウィンドウ内の輝度情報を全て０，１のbit列で表現する。左右画像の対応するマッチングウィンドウ内を全てbit列で表現しているので、このbit列同士の類似度をHamming距離で計算する。０と１で表現されたbit列に対して、１bitずつお互いに０同士、もしくは１同士であれば類似しているとして＋１、そうでなければ加算しない。このようにbit列の類似度を計算しステレオマッチングする手法である。データ量がかなり削減されることが特徴となり、回路規模もかなり抑制できるために、ノイズ除去手法や、コントラスト補正、視差補間などのほか手法との組み合わせがしやすい手法である。
【００７１】
マッチング窓サイズ部４３３では、ステレオマッチングする際に利用する画素を特定するために着目画素周囲のマッチングのウィンドウサイズを決定する。図１６でいうと四角形のマッチングウィンドウの縦横のpixel数を本実施例では、ベースのサイズとして８x１６pixelもしくは１６x１６pixelのどちらかを統合管理部４１０の結果から選択する。間引き部４３４であるが、ここでは統合管理部４１０によって決められた結果にしたがって、間引きを実施する。図１７に示すように、マッチング窓サイズの中でマッチングに利用する画素の間引きを実施する。１/２相当の画素にする場合にも、図１７に示すようにさまざまな間引き方があるが、本実施例においては１/２の画素を間引く際のパターンは、縦横の画素のバランスが良く事前評価が良かった１/２斜め間引きを利用する。今回の統合管理部のパターンには用意されていないが１/４のような間引きを利用しても良い。対象の画像の模様によっても異なるが、同じ画素数をマッチングに利用する場合でも、より広い範囲の画素を利用した方が安定することが多く、決められた処理時間や、回路規模である際には、間引きするかわりに、より広い範囲のマッチングウィンドウとすることによりマッチング性能の安定性をたかめることも有効な手段である。もしくは間引きする代わりに縦方向のマッチング探索範囲を増やすことで幾何誤差を吸収する方が、全体として有効な場合もある。
【００７２】
マッチング処理部４３６では、これまでの、縦横  探索範囲設定部４３１、マッチング手法設定部４３２、マッチング窓サイズ部４３３、間引き部４３４、パラメータ調整部４３５において、設定された内容でマッチング処理を実行、結果を保存する。
【００７３】
（後処理）
マッチング後処理部４４０では、マッチング処理部４３６で生成された視差画像に対して、後処理を実行する。
視差補間処理部４４１の視差補間処理においてはその実行の可否を、リアルタイムに変更するため統合管理部においてその実行可否を判断する。視差補間処理とは、着目視差の周囲の視差値と比較し、大きく異なる場合に周囲の視差値から着目視差の値を変更することを実施する処理である。
【００７４】
他に、ノイズ除去フィルタ部４４２と無効視差判定部４４３があるが、これらは、リアルタイムに実行の可否を変更せず、常に実施するために、統合管理部４１０での管理対象外とする。ノイズ除去フィルタとは、マッチングの類似度が信頼に足るものかを判断するフィルタであり、サーチ範囲内のマッチング結果類似度で最も高い類似度以外の部分にも似たような高い類似度が存在するかということから、今回の類似度が明らかに画像の他の部分と比較して、類似しているといえるかどうかということを基準としてノイズかどうかを判断する。無効視差判定部４４３は、同様に類似度が、低すぎないかどうかということをチェックすることで最も類似しているものの、通常のマッチング度合いと比較して類似度が低すぎて信用できるかどうかということを基準に、類似度が高ければ有効視差、低ければ無効視差と判定する。
【００７５】
＜走行中キャリブレーション部＞
走行中キャリブレーション部５００では、走行中のキャリブレーションを実施する。工場で通常はキャリブレーションするものの、そもそも精度が不十分な場合や、経年劣化、走行中に発生する温度変化により生じる変形、感度変化、更には振動による左右カメラの幾何誤差など、さまざまな要因により左右カメラの整合性が失われる場合がある。走行キャリブレーション部５００では、このように走行中に発生した誤差を抑制するために、走行中にキャリブレーションによる補正を実施する。
【００７６】
時系列データ管理部５１０では、キャリブレーションの基になるデータを管理する。幾何系のデータでいうと、温度変化により、変形する左右カメラの幾何的な歪みに、一定の規則性があるため温度別に変形量を保存しておく。更に温度管理部３１０から時系列に変化する温度情報を取得し、ここで時系列データとして管理する。キャリブレーション用対応点探索部２００からは左右カメラの対応点を取得する。更に、信頼性や精度、安定性向上のためにも、時系列の対応点情報を利用することで、本当に変形しているということの確認や、画面全体からの情報を利用することで精度向上を狙ったキャリブレーションを幾何キャリブレーション部５２０で実施する。
【００７７】
感度キャリブレーション部５３０では、温度情報を利用して左右カメラの温度変化が一定以上であること、及びこれがある程度継続的であることを持って、感度補正を実施する。ただし、幾何キャリブレーションも、感度キャリブレーションも温度特性による誤差に完全な再現性がないこと、及び、温度計の温度が完全に変形箇所や撮像素子の温度を計測しているわけではなく、付近の温度を計測しているため、誤差が生じる。このため、走行中キャリブレーションによって簡易的な補正を実施するものの感度誤差も幾何誤差も誤差低減しただけであり、工場キャリブレーション時の温度と離れていると誤差が大きいことにはかわりなく、マッチング手法変更により更なる誤差抑制を実施している。
【００７８】
感度キャリブレーションには、この他に、経年変化による黄変なども対応しているが、徐々にしか進行しないこと、及び各カメラに応じてかなりの誤差が生じることから、この経年変化の時間と、更には、誤差管理部３７０の感度誤差が常に発生していることをもって感度キャリブレーションにより補正を実施する。このように左右カメラに発生する誤差はさまざまな種別が存在するため、走行中キャリブレーションで吸収できるものは走行中キャリブレーションにより誤差を抑制した上で、残った誤差要因をマッチング吸収する２つの誤差対策を実施する。これにより通常は左右カメラに誤差が発生すると視差情報の欠落や視差精度の低下が生じるがこれをできる限り抑制した密度と精度の高い視差情報をえることができる。実行管理部５４０では、幾何キャリブレーション部５２０の結果が従来値と極端に大きく変化しておらず正常で起こりうる範囲内であることなどを確認したうえでキャリブレーションを実行、ステレオカメラ部１００の幾何補正テーブル生成部１４０の修正を実施する。感度キャリブレーションの場合にも同様に、従来値と極端に大きく変化しておらず正常で起こりうる範囲内であることなどを確認したうえでキャリブレーションを実行、ステレオカメラ部１００の感度補正部１３０の補正値を書き換える。また、これらの情報を誤差管理部３００にも渡した上で、残誤差の管理に利用する。
【００７９】
＜物体検知部＞
物体検知部６００では、上記、マッチング部で生成された視差画像をベースに、レーン認識、路面推定、立体物抽出、パターン識別による歩行者と車両の識別を実施する。
【００８０】
レーン認識部６１０では、入力となる右カメラの輝度画像と視差画像を利用して、自車走行路の白線を検出する。画像上の左右の白線を検出することで、左右レーンマークの無限遠交点を求める。これを左右カメラ両方において実施することで、認識の信頼性の向上と共に、左右カメラの幾何ずれの補正にも利用可能である。簡易幾何補正部３６０や、幾何キャリブレーション部５２０で、これらの情報を活用して、左右カメラの幾何補正に利用してもよい。
【００８１】
路面推定部６２０では、視差情報を利用して自車進行路上の視差を解析することで、自車走行路の傾斜や高さの推定に利用する。この路面推定結果に基づいて、この路面より上側に存在する立体物の抽出を、立体物抽出部６３０で実施する。
【００８２】
パターン認識部６４０は、立体物抽出部６３０で抽出された立体物に対して、その立体物が、歩行者であるか車両であるかパターン識別部６４０にてパターンマッチングにより実施する。
【００８３】
パターンマッチングで識別された車両は、左右カメラの画像上の位置が特定できるため、その左右の画像領域で同一物体を見ているため、感度補正が完全ならば、その領域の輝度分布が完全に同じになるはずである。これらの情報を利用して、簡易感度補正部３８０や感度キャリブレーション部５３０で、左右カメラの感度補正を実施してもよい。
【００８４】
＜警報制御部＞
制御部７００では、物体検知部６００で実施されたレーン、歩行者、車両、その他、任意立体物の結果に応じて、安全性や利便性を向上するために警報、制御を実施する。まず、レーン認識の結果に関しては、ユーザが制御を実施するか、警報とするか、動作しない状態にするかは自由に選べるため、ユーザの設定に基づいて、警報するか制御するかを切り替える。レーン認識結果を警報する際には、警報部７１０においてレーン認識の結果と自車挙動の推測結果より、レーンを逸脱しそうな場合には警報を鳴らす。レーン認識結果より制御する際には、制御部７２０にてレーン認識の結果と自車挙動に基づいて、車両がレーン内から外れないように戻す横方向の制御を実施する。
【００８５】
立体物の歩行者や車両の場合には、立体物の位置や速度と自車両の進行路及び衝突予測時間に基づいて、警報や制御を実施する。立体物に関しては、衝突の可能性が高い場合には警報、更に車両が立体物に接近し、必ず衝突すると判断した場合には制御を実施する。ユーザによる警報や、制御のON,OFFは可能とする。
【００８６】
ギブアップ部７３０では、誤差管理部３００の結果に基づいて、左右カメラの幾何誤差、もししくは感度誤差が許容範囲を超えた場合には、システム全体をギブアップさせる。反対に例えば高温だったカメラが冷えて通常温度に安定的に戻ったことが判断できれば、ギブアップの解除なども実施する。
【００８７】
＜図２０  処理フローチャート＞
S０１
まず、ステレオカメラで左右画像を撮像する。
【００８８】
S０２
右画像を中心に解析し、シャッター速度、ゲインの露光調整を実施。
【００８９】
S０３
工場でのキャリブレーション結果もしくは、走行中のキャリブレーション結果に基づいた幾何補正量を計算。補正前の準備を実施。
【００９０】
S０４
ステレオ視するための画像を生成。
【００９１】
S０５
左右画像から左右対応点抽出を実施。左右の幾何誤差を計測するために利用する。
瞬間的な補正にも利用可能だが、簡易的な補正で誤差が残る、簡易幾何補正S０９で利用する。
長期的な補正のために、精度は良いが、瞬間的な幾何の歪みには対応できない時系列の対応点から走行中幾何キャリブレーションS１６で利用する。
【００９２】
S０６
温度誤差の推定。撮像素子付近の温度計で計測された温度を利用して、この温度に基づく幾何と感度の誤差量を推定する。
【００９３】
S０７
時間誤差の推定。経年劣化などにより生じる時間的な感度、幾何誤差を推定。
【００９４】
S０８
走行路からカメラに発生する振動など、幾何誤差を推定
S０９
簡易幾何補正では、ここで画像を編集することは処理負荷も高く、２度目の画像編集となり画質劣化、処理負荷増大につながってしまうため、６軸の幾何補正ではなく、簡易的に補正可能な縦と横の幾何補正のみを実施する。
【００９５】
S１０
推定した幾何ノイズの総合計量から簡易幾何補正で補正された誤差量を現在し、また、走行中キャリブレーションにより補正された場合にもそれを反映した幾何誤差を推定する。
【００９６】
S１１
光源環境誤差推定では、露光条件、画像上の輝度値から予想される画像上の感度ノイズ量の推定を実施する。
【００９７】
S１２
天候を予測し、雨天時などのフロントガラスに付着する水滴によるブラーなどが発生するかどうかを推定する。
【００９８】
S１３
簡易感度補正では、左右の感度オフセットやゲインのオフセットのみの補正を実施する。
【００９９】
S１４
感度ノイズの推定では、推定された感度ノイズの総計から、簡易補正量分を差し引いた感度誤差量を推定する。
【０１００】
S１５
左右対応点の時系列データを保存して、露光調整部に計測された、左右画像の平均輝度を活用する。
【０１０１】
S１６
左右対応点の時系列データを活用することで、画像上、及び３次元空間上に分散した左右対応点を利用して、幾何キャリブレーションを実施する。ここで利用する際には、毎フレーム発生するような振動が発生しているか発生していない状況かはあらかじめ判断する。
【０１０２】
S１７
感度キャリブレーションでは、左右画像のシャッターやゲインはそろえているが実際の画像の輝度分布がどのような状況にあるかを解析している。このため、左右の画像の輝度分布により感度のオフセットやゲインの補正が必要か、かつ補正量を推定する。
【０１０３】
S１８
幾何誤差、感度誤差が時系列的に安定して発生、なおかつこれが高信頼であることが確定された場合に、走行中キャリブレーションとして補正を実施する。
また、幾何誤差であっても毎フレーム左右カメラに振動が発生しているような場合には、振動が発生していることを確認し、更には、その振動の中心となるような幾何誤差量を推定することで補正を実施する。
【０１０４】
S１９
幾何誤差と感度誤差の推定値に対して、もっとも適切なマッチング手法が何かを図１６に示すテーブルの各セルのスコアを計算し、集計することで評価点を計算。もっとも優れている手法を選定する。
【０１０５】
S２０
選定されたステレオマッチング手法を利用してステレオマッチングを実行する。
【０１０６】
S２１
レーン認識、路面推定、立体物抽出、パターン識別を実施する。
【０１０７】
S２２
上記、認識結果を利用して、予防安全に関する警報、及び制御を実施する。
【０１０８】
以上説明した本実施例の車載環境認識装置によれば、ステレオマッチングにより３次元形状を解析する再に、マッチングウィンドウ内におけるテクスチャの偏りにより、求められる３次元形状に誤差が計測されることがある。このため、マッチングウィンドウ内のテクスチャを解析することで誤差が発生するマッチングウィンドウを特定し、この誤差による影響を抑制するために、計測店を削除、もしくはマッチングウィンドウを再分割する詳細計測、もしくは計測点の補正を実施し、この計測結果に基づいて警報、速度制御、サスペンション制御を実施する。
【０１０９】
本実施例の車載周囲環境認識装置は、下記のように表現することができる。
【０１１０】
撮像部を有する車載周囲環境認識装置であって、前記撮像部の視点に基づき３次元形状を得る際に前記撮像部の誤差を推定する誤差管理部と、該誤差管理部の推定結果に応じてマッチング手法を選定するマッチング部と、有する。
【０１１１】
また、前記誤差管理部は、誤差の種別と量を管理する。
【０１１２】
また、前記誤差の種別は、幾何の誤差を含み、該幾何の誤差は、縦位置、横位置、回転、拡大及び縮小のいずれか１つを含む。
【０１１３】
また、前記誤差の種別は、感度の誤差を含み、該感度の誤差は、点ノイズ、線ノイズ、ブラー、感度オフセット及び感度ゲインのいずれか１つを含む。
【０１１４】
また、像部を左右にそれぞれ有し、前記幾何の誤差を左右対応点若しくは左右対応する線情報によって補正し、該補正で残った誤差量を前記誤差管理部で推定し、該誤差量は縦方向を含めたステレオマッチング処理をする。
【０１１５】
また、像部を左右にそれぞれ有し、前記左右の前記撮像部で撮像された左右対応点から前記幾何の誤差を推定し、継時的なゆがみ又は振動の発生を特定する。
【０１１６】
また、な誤差量と長期的な誤差量とを分類し、前記長期的な誤差量は、左右対応点データを活用してキャリブレーションで誤差を補正して残誤差が少なくなるようにして、前記短期的な誤差及び前記残誤差は、縦方向及び横方向の前記幾何の誤差の補正と、複数のステレオマッチング処理から前記幾何の誤差に適する前記ステレオマッチング処理を選定して実行する。
【０１１７】
また、前記撮像部に内蔵された温度センサに基づいて、撮像素子の温度変化を予測し、
前記誤差管理部は、前記温度センサが予測した温度に基づいて前記誤差を推定する。
【０１１８】
また、走行路面の凹凸状況を推定する路面状況推定部を有し、前記幾何の誤差を推定する。
【０１１９】
また、前記撮像部の露光情報に基づいて、前記感度の誤差を予測する。
【０１２０】
また、前記マッチング手法は、コントラスト補正、ノイズ除去、マッチングウィンドウサイズ、マッチングウィンドウ内の間引き、探索範囲、マッチング手法、パラメータ及び視差補間の少なくともいずれかを変更する。
【０１２１】
本実施例の車載環境認識装置によれば、車両に設置された複数台のカメラを利用して、３次元形状を復元する際に、時間によって変化する複数台カメラ間の相対幾何誤差、及び感度誤差を管理し、長時間かけて発生する誤差はキャリブレーションによって誤差を抑制し、残誤差に関してはこれを許容するマッチング手法を選定することで、より高精度で高密度な３次元形状の復元と、それを基にして認識される物体の認識率を向上させることを可能とする。
【符号の説明】
【０１２２】
１００ ステレオカメラ部
１１０ 撮像部
１２０ 露光調整部
１３０ 感度補正部
１４０ 幾何補正テーブル生成部
１５０ ステレオ用画像生成部
２００ キャリブレーション用対応点探索部
２１０ 処理領域決定部
２２０ 左右特徴点抽出部
２３０ 対応点抽出部
２４０ ノイズ除去部
３００ 誤差管理部（幾何と感度）
３１０ 温度管理部
３２０ 時間管理部
３３０ 走行路推定部
３４０ 光源環境推定部
３５０ 天候推測部
３６０ 簡易幾何補正部
３７０ 平行化誤差推定部
３８０ 簡易感度補正部
３９０ 感度ノイズ推定部
４００ マッチング部
４１０ 統合管理部
４２０ マッチング前処理部
４２１ コントラスト補正部
４２２ ノイズ除去部
４２３ 感度補正部
４３０ マッチングメイン処理部
４３１ 縦横探索範囲設定部
４３２ マッチング手法設定部
４３３ マッチング窓サイズ部
４３４ 間引きパターン設定部
４３５ パラメータ調整部
４３６ マッチング処理部
４４０ マッチング後処理部
４４１ 視差補間処理部
４４２ ノイズ除去フィルタ部
４４３ 無効視差判定部
５００ 走行中キャリブレーション部
５１０ 時系列データ管理部
５２０ 幾何キャリブレーション部
５３０ 感度キャリブレーション部
５４０ 実行管理部
６００ 物体検知部
６１０ レーン認識部
６２０ 路面推定部
６３０ 立体物抽出部
６４０ パターン識別部
７００ 警報制御部
７１０ 警報部
７２０ 制御部
７３０ ギブアップ部
【図１】
2019028633.tif 000003
【図２】
2019028633.tif 000004
【図３】
2019028633.tif 000005
【図４】
2019028633.tif 000006
【図５】
2019028633.tif 000007
【図６】
2019028633.tif 000008
【図７】
2019028633.tif 000009
【図８】
2019028633.tif 000010
【図９】
2019028633.tif 000011
【図１０】
2019028633.tif 000012
【図１１】
2019028633.tif 000013
【図１２】
2019028633.tif 000014
【図１３】
2019028633.tif 000015
【図１４】
2019028633.tif 000016
【図１５】
2019028633.tif 000017
【図１６】
2019028633.tif 000018
【図１７】
2019028633.tif 000019
【図１８】
2019028633.tif 000020
【図１９】
2019028633.tif 000021
【図２０】
2019028633.tif 000022