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

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

▶ 日立オートモティブシステムズ株式会社の特許一覧

<>
  • 特開-環境認識装置および環境認識方法 図1
  • 特開-環境認識装置および環境認識方法 図2
  • 特開-環境認識装置および環境認識方法 図3
  • 特開-環境認識装置および環境認識方法 図4
  • 特開-環境認識装置および環境認識方法 図5
  • 特開-環境認識装置および環境認識方法 図6
  • 特開-環境認識装置および環境認識方法 図7
  • 特開-環境認識装置および環境認識方法 図8
  • 特開-環境認識装置および環境認識方法 図9
  • 特開-環境認識装置および環境認識方法 図10
  • 特開-環境認識装置および環境認識方法 図11
  • 特開-環境認識装置および環境認識方法 図12
  • 特開-環境認識装置および環境認識方法 図13
  • 特開-環境認識装置および環境認識方法 図14
  • 特開-環境認識装置および環境認識方法 図15
  • 特開-環境認識装置および環境認識方法 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023180611
(43)【公開日】2023-12-21
(54)【発明の名称】環境認識装置および環境認識方法
(51)【国際特許分類】
   G06T 7/00 20170101AFI20231214BHJP
   G06V 10/82 20220101ALI20231214BHJP
【FI】
G06T7/00 350C
G06V10/82
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022094052
(22)【出願日】2022-06-10
(71)【出願人】
【識別番号】509186579
【氏名又は名称】日立Astemo株式会社
(74)【代理人】
【識別番号】110000925
【氏名又は名称】弁理士法人信友国際特許事務所
(72)【発明者】
【氏名】遠藤 健
(72)【発明者】
【氏名】永崎 健
(72)【発明者】
【氏名】的野 春樹
(72)【発明者】
【氏名】松尾 茂
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096BA04
5L096CA05
5L096HA11
5L096JA03
5L096JA11
5L096KA04
(57)【要約】      (修正有)
【課題】複数の画像間における画素毎の対応関係をより少ない演算量で算出する環境認識装置を提供する。
【解決手段】環境認識装置は、第一の画像及び第二の画像から特徴量を求めることによって得られる第一の特徴マップ及び第二の特徴マップを求める特徴抽出部20と、第一の特徴マップ及び第二の特徴マップに対して畳み込み演算を行うことで各部分領域の対応関係に関する確からしさを表現したマッチングコストを求めるコスト算出部30と、求めたマッチングコストを解析することで第一の画像と第二の画像の対応関係を確定させるマッチング部50と、を備える。コスト算出部は、第一の特徴マップと第二の特徴マップに対して、コスト算出用の第一のパラメータと第二のパラメータを利用した畳み込み演算を実行して、第一の畳み込み演算結果と第二の畳み込み演算結果を求め、第一の畳み込み演算結果と第二の畳み込み演算結果とを統合してマッチングコストを求める。
【選択図】図1
【特許請求の範囲】
【請求項1】
第一の画像と第二の画像を取得する画像取得部と、
前記第一の画像の複数の部分領域に対して特徴量を求めることによって得られる第一の特徴マップと、前記第二の画像の複数の部分領域に対して特徴量を求めることによって得られる第二の特徴マップと、を求める特徴抽出部と、
前記第一の特徴マップおよび前記第二の特徴マップに対して畳み込み演算を行うことで各部分領域の対応関係に関する確からしさを表現したマッチングコストを求めるコスト算出部と、
前記コスト算出部で求めたマッチングコストを解析することで第一の画像と第二の画像の対応関係を確定させるマッチング部と、を備え、
前記コスト算出部は、前記第一の特徴マップと前記第二の特徴マップのそれぞれに対して、コスト算出用の第一のパラメータと第二のパラメータを利用した畳み込み演算を実行することで第一の畳み込み演算結果と第二の畳み込み演算結果をそれぞれ求め、前記第一の畳み込み演算結果と前記第二の畳み込み演算結果とを統合することで前記マッチングコストを求める
環境認識装置。
【請求項2】
前記第一の画像と前記第二の画像は、それぞれ第一のカメラと第二のカメラにより同時刻に取得された画像であり、
前記マッチング部で確定される対応関係は視差である
請求項1に記載の環境認識装置。
【請求項3】
前記コスト算出部は、前記第一の畳み込み演算結果と前記第二の畳み込み演算結果とを統合する際に、前記第一の畳み込み演算結果と前記第二の畳み込み演算結果とのいずれか一方を左右方向にずらして要素加算する
請求項2に記載の環境認識装置。
【請求項4】
前記第一の画像と前記第二の画像は、一つのカメラにより異なる時刻に取得された画像であり、
前記マッチング部で確定される対応関係は移動量を表現したフローである
請求項1に記載の環境認識装置。
【請求項5】
前記コスト算出部は、前記第一の畳み込み演算結果と前記第二の畳み込み演算結果とを統合する際に、前記第一の畳み込み演算結果と前記第二の畳み込み演算結果とのいずれか一方を上下左右方向にずらして要素加算する
請求項4に記載の環境認識装置。
【請求項6】
前記コスト算出部において、前記コスト算出用の第一のパラメータと前記コスト算出用の第二のパラメータは、学習時に推定した畳み込みパラメータを統合したものである
請求項1に記載の環境認識装置。
【請求項7】
前記コスト算出用の第一のパラメータと前記コスト算出用の第二のパラメータとのいずれか一方は、前記学習時に推定した畳み込みパラメータの一部を要素加算したものであり、
前記コスト算出用の第一のパラメータと前記コスト算出用の第二のパラメータとのもう一方は、前記学習時に推定した畳み込みパラメータの一部を空間方向にずらして要素加算したものである
請求項6に記載の環境認識装置。
【請求項8】
前記コスト算出部は、一定数の行毎に前記マッチングコストを算出する
請求項1に記載の環境認識装置。
【請求項9】
前記マッチングコストを補正するコスト集約部を備え、
前記マッチング部は、前記コスト集約部が補正した前記マッチングコストに対して対応関係を確定させる
請求項1~8のいずれか1項に記載の環境認識装置。
【請求項10】
第一の画像と第二の画像を取得する画像取得処理と、
前記第一の画像の複数の部分領域に対して特徴量を求めることによって得られる第一の特徴マップと、前記第二の画像の複数の部分領域に対して特徴量を求めることによって得られる第二の特徴マップと、を求める特徴抽出処理と、
前記第一の特徴マップおよび前記第二の特徴マップに対して畳み込み演算を行うことで各部分領域の対応関係に関する確からしさを表現したマッチングコストを求めるコスト算出処理と、
前記コスト算出処理により求めたマッチングコストを解析することで第一の画像と第二の画像の対応関係を確定させるマッチング処理と、を含み、
前記コスト算出処理では、前記第一の特徴マップと前記第二の特徴マップのそれぞれに対して、コスト算出用の第一のパラメータと第二のパラメータを利用した畳み込み演算を実行することで第一の畳み込み演算結果と第二の畳み込み演算結果をそれぞれ求め、前記第一の畳み込み演算結果と前記第二の畳み込み演算結果とを統合することで前記マッチングコストを求める
環境認識方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、環境認識装置および環境認識方法に関する。
【背景技術】
【0002】
複数の画像間における画素毎の対応関係を算出することで、画像に撮像された対象までの距離や物体のフローを算出する技術が知られている。この技術は、車両に搭載されたカメラを利用して、これらの距離やフロー情報を算出することで、当該車両の周囲の他車両などの挙動を解析することができ、予防安全機能に利用することができる。
【0003】
特許文献1には、ステレオカメラを使用して、左右画像間の対応関係を算出する手法の一例が開示されている。すなわち、特許文献1には、深層学習に基づく手法に関する技術が記載されている。具体的には、特許文献1に記載される技術は、左右の特徴マップを視差値だけずらして連結し、それら連結された特徴マップを視差の探索範囲分さらに連結することで3次元マッチングコスト特徴を生成するようにしている。また、この3次元マッチングコスト特徴はグループ化相互相関特徴とさらに連結される。その後、3次元畳み込み処理を複数回実行することで、各画素に対して視差を算出している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特表2021-526683号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載されるような3次元マッチングコスト特徴に対する3次元畳み込み処理は、幅、高さ、視差方向に対する畳み込み処理になり、処理負荷が高いという問題がある。特に、3次元マッチングコスト特徴に対する1回目の畳み込み処理は、幅、高さ、視差のサイズが大きいため、計算リソースの少ないデバイスへの適用が困難であり、演算量の削減を行うことが要求されていた。
【0006】
本発明は、かかる課題に鑑み、複数の画像間における画素毎の対応関係をより少ない演算量で算出可能な環境認識装置および環境認識方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、例えば特許請求の範囲に記載の構成を採用する。
本願は、上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、環境認識装置として、
第一の画像と第二の画像を取得する画像取得部と、
第一の画像の複数の部分領域に対して特徴量を求めることによって得られる第一の特徴マップと、第二の画像の複数の部分領域に対して特徴量を求めることによって得られる第二の特徴マップと、を求める特徴抽出部と、
第一の特徴マップおよび第二の特徴マップに対して畳み込み演算を行うことで各部分領域の対応関係に関する確からしさを表現したマッチングコストを求めるコスト算出部と、
コスト算出部で求めたマッチングコストを解析することで第一の画像と第二の画像の対応関係を確定させるマッチング部と、を備える。
そして、コスト算出部は、第一の特徴マップと第二の特徴マップのそれぞれに対して、コスト算出用の第一のパラメータと第二のパラメータを利用した畳み込み演算を実行することで第一の畳み込み演算結果と第二の畳み込み演算結果をそれぞれ求め、第一の畳み込み演算結果と第二の畳み込み演算結果とを統合することでマッチングコストを求めるようにした。
【発明の効果】
【0008】
本発明によれば、複数の画像間における画素毎の対応関係をより少ない演算量で算出することができる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0009】
図1】本発明の一実施の形態例による環境認識装置の例の構成図である。
図2】本発明の一実施の形態例による車両に搭載される全体構成とハードウェア構成の例を示す図である。
図3】本発明の一実施の形態例の環境認識処理例を示すフローチャートである。
図4】本発明の一実施の形態例の特徴抽出処理を示す図である。
図5】本発明の一実施の形態例のコスト算出処理例を示すフローチャートである。
図6】本発明の一実施の形態例のコスト算出処理を示す図である。
図7】本発明の一実施の形態例のコスト補正処理を示す図である。
図8】本発明の一実施の形態例のコスト算出処理における学習時の演算方法を示す図である。
図9】本発明の一実施の形態例のコスト算出処理におけるカーネルの統合方法を説明する図である。
図10】本発明の一実施の形態例のコスト算出処理における右特徴マップ用のカーネルの生成方法を説明する図である。
図11】本発明の一実施の形態例のコスト算出処理における左特徴マップ用のカーネルの生成方法を説明する図である。
図12】本発明の一実施の形態例のコスト算出処理において一定数の行毎に処理する場合のフローチャートである。
図13】本発明の一実施の形態例のフロー算出処理を示すフローチャートである。
図14】本発明の一実施の形態例のコスト算出処理のフローチャートである。
図15】本発明の一実施の形態例のコスト算出処理を示す図である。
図16】本発明の一実施の形態例のコスト算出処理における学習時の演算方法を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の一実施の形態例を、添付図面を参照して説明する。
図1は、環境認識装置1の構成を示す機能ブロックである。
本実施の形態例の環境認識装置1は、後述するようにカメラ、コンピュータ、メモリ、および記憶装置などで構成されており、コンピュータがメモリ等に格納された制御プログラムを実行することにより各種機能部として動作する。
【0011】
[環境認識装置の構成]
図1に示すように、環境認識装置1は、カメラやコンピュータの動作により実現される機能部として画像取得部10、特徴抽出部20、コスト算出部30、コスト集約部40、及びマッチング部50を有している。
画像取得部10は、第一の画像格納部11と第二の画像格納部12を有し、カメラで撮像された複数の画像を取得する画像取得処理を行う。ステレオカメラの場合には、第一の画像格納部11と第二の画像格納部12は、同時刻に撮像された左右の2枚の画像を取得する。また、単眼カメラの場合、第一の画像格納部11と第二の画像格納部12は、異なる時刻に撮像された複数枚の画像を取得する。
【0012】
特徴抽出部20は、畳み込み演算部21と特徴抽出パラメータ格納部22とを有する。畳み込み演算部21は、画像取得部10で取得した複数枚の画像に対して、畳み込み演算を実行する。特徴抽出パラメータ格納部22には、畳み込みに利用されるカーネルのパラメータが格納される。畳み込みに利用されるカーネルは、所定のロス関数を最小化するように学習により決定される。
【0013】
コスト算出部30は、画像取得部10で取得された複数の画像の対応関係に関するコストを算出するコスト算出処理を行う。具体的には、コスト算出部30は、第一の画像畳み込み演算部31と第二の画像畳み込み演算部32とを備え、第一の画像畳み込み演算部31は、第一のパラメータ格納部33に格納された第一のパラメータによる畳み込み演算を実行し、第二の画像畳み込み演算部32は、第二のパラメータ格納部34に格納された第二のパラメータによる畳み込み演算を実行する。
【0014】
各画像畳み込み演算部31、32での畳み込み演算結果は、統合部35で統合される。このコスト算出部30は、ステレオカメラの場合、左右画像間の視差に関するコストを算出し、単眼カメラの場合には異なる時刻に撮像された画像間のフローに関するコストを算出する。コスト算出処理では、特徴抽出部20で算出された特徴マップそれぞれに対して独立に各画像畳み込み演算部31、32で畳み込み演算が実施され、その結果が統合部35で統合されることで、コストマップが算出される。畳み込み演算で利用するカーネルは、所定のロス関数を最小化するように決定されたものである。
【0015】
コスト集約部40は、畳み込み演算部41と特徴抽出パラメータ格納部42とを備える。
畳み込み演算部41は、コスト算出部30で算出されたコストマップに対して、畳み込み演算を実施することで、コストマップを補正する。特徴抽出パラメータ格納部42には、畳み込み演算部41で実行する畳み込みカーネルのパラメータが格納される。
ここで利用されるカーネルは3次元畳み込みカーネルであり、所定のロス関数を最小化するように決定されたものである。
マッチング部50は、コスト集約部40で算出され、補正されたコストマップをコスト解析部51が解析することで、画像取得部10で取得した複数枚の画像における対応関係を決定する。すなわち、マッチング部50は、ステレオカメラの場合には画像間の視差を決定し、単眼カメラの場合にはフローを決定する。コスト解析部51では、SoftArgMin処理やカーネルを利用した解析処理を実行することができる。
【0016】
特徴抽出部20、コスト算出部30、コスト集約部40、及びマッチング部50では、所定のロス関数を最小化する学習により決定されたカーネルが利用される。これらカーネルは、マッチング部50で決定したマッチング結果と正解値データを比較して定義されたロス関数を最小化することで決定される。ステレオカメラの場合には、画像間の視差に対するロスが最小化され、単眼カメラの場合には、画像間のフローに対するロスが最小化される。
【0017】
[環境認識装置が搭載された車両の構成]
図2は、本実施の形態例の環境認識装置1と車両制御装置2を含むコンピュータ4が搭載された車両5の構成を示す。
車両(自動車)5には、前方監視を行うために車載カメラ3L、3Rが設置されている。ここでは、2台の車載カメラ3L、3Rは、左画像と右画像を得るステレオカメラとしたが、1台のカメラが環境認識装置1に接続される場合もある。
【0018】
車載カメラ3L、3Rで撮像された画像は、コンピュータ4内の環境認識装置1に供給される。環境認識装置1は、撮像画像の画像処理を実行し、環境認識処理を行う。なお、環境認識装置1が環境を認識する際には、車載カメラ3L、3Rによる撮像画像だけでなく、不図示のレーダなどの他の検出機構を併用する場合もある。
環境認識装置1で認識された環境の情報は、同じくコンピュータ4内に構成される車両制御装置2に送られ、車両5の走行などが制御される。但し、環境認識装置1と車両制御装置2とは、それぞれ別のコンピュータで構成するようにしてもよい。
【0019】
図2に示すように、環境認識装置1と車両制御装置2が内蔵されたコンピュータ4は、CPU(中央処理ユニット)4aとワークメモリ4bと記憶部4cとインターフェース(I/F)4dとを備え、これらが相互にデータ転送可能に接続されている。
CPU4aは、記憶部4cが記憶したプログラムをワークメモリ4b内で実行する。これにより、ワークメモリ4b内に環境認識処理などを行う各処理部が構成される。
記憶部4cは、環境認識処理や車両制御を行うプログラムを記憶すると共に、画像や制御データなどを記憶する。
インターフェース4dは、車載カメラ3L、3Rからの画像データや、各種センサの検出データの入力処理や、車両の制御データの出力処理を行う。
【0020】
[環境認識装置が行う処理の動作例1:ステレオカメラを利用して視差を算出する例]
次に、環境認識装置1が行う動作例1として、ステレオカメラである車載カメラ3L、3Rを利用して視差を算出する動作を説明する。
以降では、ステレオカメラで取得される左右画像のうち、右画像に対して視差を算出する処理を説明する。
【0021】
図3は、環境認識装置1による視差を算出する処理を示すフローチャートである。
まず、環境認識装置1は、画像取得処理(P101)、特徴抽出処理(P102)、マッチングコスト算出処理(P103)、コスト補正処理(P104)、及び視差算出処理(P105)を順に実行する。
【0022】
画像取得処理(P101)において、画像取得部10は、ステレオカメラの左右画像のデータを取得する。
特徴抽出処理(P102)では、画像取得処理(P101)で取得された左画像及び右画像に対して、特徴抽出部20が畳み込み演算を実施することで特徴マップを生成する。
【0023】
図4は、特徴抽出部20による特徴抽出処理(P102)の詳細を示す。
ここでは、特徴抽出部20は、左画像I100と右画像I101に対して、学習済みの畳み込みニューラルネットワークN100を利用して、左特徴マップF100と右特徴マップF101をそれぞれ算出する。畳み込みニューラルネットワークN100は、畳み込み演算、正規化演算、活性化演算の繰り返し構造から構成される。正規化演算としては、Batch Normalization、活性化としてはRectified Linear Unitが利用される。ただし、最終層のみBatch NormalizationとRectified Linear Unitは利用されない。
【0024】
ここで、特徴抽出部20は、左画像I100と右画像I101に対して、同一の畳み込みニューラルネットワークN100を利用して畳み込み演算を実施する。これにより、特徴抽出部20は、同一の見え方をする箇所に対して、同一の特徴量を抽出することができる。また、畳み込みニューラルネットワークN100は、後述する学習により推定されたパラメータを利用する。
図3の説明に戻ると、マッチングコスト算出処理(P103)では、コスト算出部30は、特徴抽出処理(P102)で算出した左特徴マップF100と右特徴マップF101を利用して、各視差に対するコストを生成する。
【0025】
図5は、コスト算出部30によるマッチングコスト算出処理(P103)の詳細を示すフローチャートである。
マッチングコスト算出処理(P103)では、コスト算出部30は、左特徴マップ畳み込み処理(P201)、右特徴マップ畳み込み処理(P202)、及び各視差に対応したコスト生成(P203)を実施する。
各視差に対応したコスト生成(P203)では、コスト算出部30は、左特徴マップのシフト処理(P204)を実施し、その後右特徴マップと左特徴マップの要素加算処理(P205)を実行することで各視差に対応したコストを生成する。
ここで、左特徴マップのシフト処理(P204)と、右特徴マップと左特徴マップの要素加算処理(P205)とは、視差に対応したコスト生成(P203)の探索範囲で繰り返し実行される。
その後、コスト算出部30は、生成したコストに対して、Batch Normalizationによる正規化と、Rectified Linear Unitによる活性化を実行する。
【0026】
図6は、図5のフローチャートで説明したコスト算出部30によるマッチングコスト算出処理(P103)の処理状況の例を示す。
コスト算出部30は、左特徴マップ畳み込み処理(P201)で、左特徴マップF100に対して、畳み込みパラメータKLを利用した畳み込み演算LCを実行することで左特徴マップF110を取得する。
また、コスト算出部30は、右特徴マップ畳み込み処理(P202)で、右特徴マップF101に対して、畳み込みパラメータKRを利用した畳み込み演算RCを実行することで右特徴マップF111を取得する。
【0027】
各視差に対応したコスト生成(P203)では、算出する視差範囲(例えば、64pixなど)に応じた回数、以降の処理が実行される。
ここでは、視差4pixに対応したコスト生成処理に関して説明する。左特徴マップのシフト処理(P204)では、コスト算出部30は、右特徴マップF111に対して、左特徴マップF110を左方向に4pixシフトさせる。その後、コスト算出部30は、要素加算処理(P205)で、右特徴マップF111とシフトした左特徴マップF110を要素加算することで視差4pixに対応したコストマップC104を生成する。
【0028】
そして、コスト算出部30は、この左特徴マップのシフト処理(P204)と要素加算処理(P205)を、算出する視差範囲回数分(D+1回)実行し、それを特徴マップの奥行方向に結合することでコストマップC200を生成する。ここで、コストマップC200の各位置には、各視差に対応したコストが格納される。
【0029】
上述した説明では、説明の都合上、特徴マップのチャンネルに関する説明を省略したが、コスト算出部30は、畳み込みパラメータKLとKRとして、複数のカーネルを利用することができる。これにより、左特徴マップF110と右特徴マップF111のサイズはそれぞれ、(HL、WL、WL)、(HR、WR、CR)となる。ここで、HL、WL、WLは、それぞれ左特徴マップF110の高さ、幅、チャンネルを示している。また、HR、WR、CRは、それぞれ右特徴マップF111の高さ、幅、チャンネルを示している。
【0030】
要素加算処理において、コスト算出部30は、視差範囲に対応したD+1回の左特徴マップF110のシフト処理、及び左特徴マップF110と右特徴マップF111の要素加算処理を実行することで、サイズ(D+1、HR、WR、CR)のコストマップC200を算出する。そして、このように算出されたコストマップC200の各位置のチャンネル毎に、視差に対応したコストが格納される。
【0031】
また、コスト算出部30は、左特徴マップF110の幅として、WL=WR+Dとなるサイズの左特徴マップF100自体を入力することで、右特徴マップF111に対して、シフトした左特徴マップF110を横方向に重複させて配置することができる。ここで、左特徴マップF110の幅をWL=WR+Dとすることは、図4に示す左画像I100を右画像I101よりも大きいサイズで畳み込みニューラルネットワークN100に入力することを意味している。なお、畳み込みパラメータKLとKRは後述する学習により推定されたパラメータである。
【0032】
コスト補正処理(P104)では、マッチングコスト算出処理(P103)で算出したコストマップC200に対して、コスト集約部40が畳み込みニューラルネットワークN200を利用した畳み込み演算を実行することで補正されたコストマップC201を算出する。コストマップC201のサイズは、(D+1、HR、WR、1)であり、各位置において、各視差に対するコストが格納される。補正されたコストマップC201としては、周辺画素のコストを考慮して補正されたコストが格納される。
図7に示す畳み込みニューラルネットワークN200では、コスト集約部40の畳み込み演算部41が3次元畳み込みカーネルを利用して、コストマップC200の幅、高さ、奥行方向に対して畳み込み演算を実施する。
畳み込みニューラルネットワークN200は、畳み込み演算、正規化演算、活性化演算の繰り返し構造から構成される。
【0033】
正規化演算としては、Batch Normalization、活性化演算としてはRectified Linear Unitが利用される。但し、最終層のみBatch NormalizationとRectified Linear Unitは利用されない。また、畳み込みニューラルネットワークN200は、入力されたコストマップをダウンサンプリングし、その後アップサンプリングするエンコーダ・デコーダ形式のネットワークである。また、ニューラルネットワークN200で利用されるカーネルは後述する学習により推定されたパラメータである。
【0034】
視差算出処理(P105)では、マッチング部50のコスト解析部51が、コスト補正処理(P104)で算出したコストマップC201に格納されたコストを解析することで、右画像の各画素における視差を算出する。コスト解析部51は、コストの解析方法として、公知のSoftArgMin処理を実行する。すなわち、コスト解析部51は、各位置に対する奥行方向Dに対してSoftMax処理を実施する。その際に、コスト解析部51は、コストを符号反転することで、各視差に対する確からしさを算出する。その後、コスト解析部51は、コストマップC201の奥行方向のインデックスに対応した視差値とSoftMax処理で算出した確からしさの総和を計算することで、各画素に対する視差を算出する。
【0035】
以上説明したように、図3に示す特徴抽出処理(P102)、マッチングコスト算出処理(P103)及びコスト補正処理(P104)では、学習により求めたカーネルを利用して畳み込み演算が実行される。また、Batch Normalizationのパラメータも利用される。
以降では、畳み込みのカーネル、及びBatch Normalizationのパラメータの推定で実施される学習方法に関して説明する。
この学習方法では、図3の視差算出処理(P105)で推定した最終的な視差と正解値データを利用してロス関数が定義され、カーネルはこのロス関数を最小化することで推定される。ロス関数としては、推定した視差と正解値データの差の絶対値が利用される。
なお、マッチング部50のコスト解析部51は、推定した視差画像のうち、正解値データが含まれる画素に対して上に述べた計算を実行し、その平均値をロス関数とする。
特徴抽出処理(P102)、マッチングコスト算出処理(P103)、コスト補正処理(P104)、及び視差算出処理(P105)は、いずれも微分可能な演算のみから構成されており、視差算出処理(P105)に対してロス関数を定義し、それを最小化することで、特徴抽出処理(P102)、マッチングコスト算出処理(P103)、及びコスト補正処理(P104)のパラメータが決定される。
【0036】
以上より、本実施の形態例の環境認識装置1は、マッチングコスト算出処理(P103)において、右画像と左画像独立に1度畳み込み演算を実施し、その結果を統合することでマッチングコストを算出することができる。従来、右画像と左画像を視差方向に連結して3次元畳み込み演算を1度実行することでマッチングコストを算出していたが、視差の探索範囲回数の畳み込み演算が必要であった。これに対して、本実施の形態例を適用することで畳み込み演算の回数を削減することができ、演算量の削減が可能になる。
【0037】
また、本実施の形態例の環境認識装置1は、マッチングコスト算出処理(P103)において、右画像と左画像の畳み込み演算結果のうち、左画像をシフトさせ、シフトした結果に対して要素加算処理を実行することでマッチングコストを算出している。このように、本実施の形態例の環境認識装置1は、複雑な演算を利用せず、画像のシフトと単純な加算処理によりコストを生成することで、より高速にマッチングコストを生成することができる。
また、本実施形態の環境認識装置1は、マッチングコスト算出処理(P103)で算出したコストをコスト補正処理(P104)で補正するようにした。これにより、本実施の形態例の環境認識装置1では、マッチングコスト算出処理(P103)で算出したコストが誤りを含む場合に対しても、周辺のコストを利用して補正することができ、より高精度に視差を算出することができる。
【0038】
以上の動作例1は、学習時により決定したカーネルを推論時のマッチングコスト算出処理(P103)で利用する構成であった。
これに対して、図8以降で説明する処理に基づいて、学習により決定したカーネルを統合したものをマッチングコスト算出処理(P103)で利用する構成にすることもできる。すなわち、学習時と推論時で演算方法を変更した構成にすることもできる。また、図8以降で述べる手続きに従い、推論時に利用するカーネルを生成することで、学習時の構成と同一の出力結果を得ることができる。
【0039】
図8は、学習時における、コスト算出部30の構成、及び手続きを説明する図である。
マッチングコスト算出処理(P103)において、左特徴マップF100と右特徴マップF101に対して処理を実行する。図8に示すように、コスト算出部30は、右特徴マップF101に対して、視差の探索範囲(D+1pix)回数だけ左特徴マップF100をシフトし、各視差に対応した左右ペアを生成する。
シフトせずにチャンネル方向に結合した特徴マップが「ずらしなし」のF0、1pixシフトして結合した特徴マップが「1pixずらし」のF1、Dpixシフトして結合した特徴マップが「Dpixずらし」のFDである。学習では、コスト算出部30は、これらD+1個のペアを奥行方向にさらに結合して、3次元畳み込みカーネルK100を利用した畳み込み演算を実行することでマッチングコストを生成する。
【0040】
ここで、3次元畳み込みカーネルK100は、幅、高さだけでなく、奥行方向に対しても次元を持つカーネルである。以降の説明では、奥行方向のサイズは「3」であるものとして説明する。学習時には、コスト算出部30は、上述した手順によりマッチングコストを生成する。生成したマッチングコストを利用して、コスト集約部40、及びマッチング部50が実行されることで、最終的に視差が算出される。そして、コスト解析部51は、視差算出処理(P105)が推定した視差に基づきロス関数を定義し、それを最小化することでマッチングコスト算出処理(P103)における3次元畳み込みカーネルK100の値を決定する。
推論時の構成は、図6に示したものが適用される。すなわち、コスト算出部30では、学習時に求めた3次元畳み込みカーネルK100の値を利用して、図6に示す畳み込みパラメータKL、及びKRが決定される。
【0041】
図9図10、及び図11は、学習時に求めた3次元畳み込みカーネルK100を利用した畳み込みパラメータKL、及びKRの決定方法を示す図である。
図9に示すように、3次元畳み込みカーネルK100の奥行方向のサイズは「3」であるため、3枚の左右ペアに対する畳み込みカーネルとなっている。3次元畳み込みカーネルK100は、それぞれの特徴マップ(F0R、F1R、F2R、F0L、F1L、F2L)に対して独立した畳み込みカーネルであるとみなすことができる。
F0R、F1R、及びF2Rは、3枚の左右ペアのうちの右特徴マップを示しており、F0L、F1L、及びF2Lは、3枚の左右ペアのうちの左特徴マップを示している。ここで、F0R、F1R、及びF2Rは同一の特徴マップであるのに対し、F0L、F1L、及びF2Lでは、F1LがF0Lを基準として1pixシフトしたマップ、F2LがF0Lを基準として2pixシフトしたマップになっている。
【0042】
3次元畳み込みカーネルK100のうち、F0R、F1R、及びF2Rに対する畳み込みカーネルを、K0R、K1R、及びK2Rとする。同様に、3次元畳み込みカーネルK100のうち、F0L、F1L、及びF2Lに対する畳み込みカーネルを、K0L、K1L、及びK2Lとする。
コスト算出部30は、カーネルK0R、K1R、及びK2Rを統合して右特徴マップ向け2次元畳み込みカーネルK101を生成する。また、コスト算出部30は、カーネルK0L、K1L、及びK2Lを統合して左特徴マップ向け2次元畳み込みカーネルK102を生成する。生成された右特徴マップ向け2次元畳み込みカーネルK101と左特徴マップ向け2次元畳み込みカーネルK102は、図6に示した推論時に利用される畳み込みパラメータKRとKLにそれぞれ対応する。
【0043】
図10は、右特徴マップ向け2次元畳み込みカーネルK101の生成方法を示す。
コスト算出部30は、畳み込みカーネルK0R、K1R、及びK2Rを要素加算することで、右特徴マップ向け2次元畳み込みカーネルK101を生成する。
【0044】
図11は、左特徴マップ向け2次元畳み込みカーネルK102の生成方法を示す。
コスト算出部30は、左特徴マップ向け2次元畳み込みカーネルK102の生成処理では、畳み込みカーネルK1Lに対して、畳み込みカーネルK0Lを左に1ピクセルシフトさせて要素加算を実行する。すなわち、コスト算出部30は、畳み込みカーネルK0Lの2列目の各要素を畳み込みカーネルK1Lの1列目の各要素に加算する。
次に、コスト算出部30は、畳み込みカーネルK0Lと加算された畳み込みカーネルK1Lに対して、畳み込みカーネルK2Lを右に1ピクセルシフトさせて要素加算を実行する。すなわち、コスト算出部30は、畳み込みカーネルK2Lの1列目の各要素を畳み込みカーネルK1Lの2列目の各要素に加算する。なお、畳み込みカーネルK0Lの1列目、及び畳み込みカーネルK2Lの3列目の要素加算処理では、存在していない畳み込みカーネルK1Lの0列目と4列目に要素加算することとなる。
この場合、コスト算出部30は、畳み込みカーネルK1Lの0列目と4列目の全ての要素は0であるとみなして、要素加算処理を実行する。上で述べた手続きにより生成された左特徴マップ向け2次元畳み込みカーネルK102は、畳み込みカーネルK0R、K1R、及びK2Rのサイズに比べて横方向に大きなサイズを持つカーネルとなる。
【0045】
これら生成された右特徴マップ向け2次元畳み込みカーネルK101と左特徴マップ向け2次元畳み込みカーネルK102は、図6に示す畳み込みパラメータKRとKLとしてそれぞれ利用される。これにより、異なる演算方法で学習時の構成と同一の出力を得ることができる。
【0046】
本実施の形態例の環境認識装置1は、学習時に求めた3次元畳み込みカーネルを推論時には統合して2次元畳み込みカーネルとして利用する。このようにすることで、本実施の形態例の環境認識装置1は、3次元畳み込みカーネルを利用して学習されたモデルを、推論時において再学習不要でより少ない演算量で実行できる。また、学習時に利用する3次元畳み込みカーネルのパラメータ数と推論時に利用するパラメータ数を比較した場合、推論時に利用するパラメータ数の方が少なくなる。これにより、より少ないメモリ使用量で視差算出を実行することが可能になる。
【0047】
これまでに説明した動作例1では、コスト算出部30によるマッチングコスト算出処理(P103)において、画像全体に対して1度にコストマップを生成する場合に関して説明したが、次に説明する図12のフローチャートに示す処理のように、部分領域毎に処理を実行することもできる。
【0048】
すなわち、図12に示すように、マッチングコスト算出処理(P301)では、連続した一定数の行に対して、図5のフローチャートに示すP201~P205の処理と同一の処理を実行する。一定数の行に対して行われる個々の処理(P201、P202、P203、P204、P205)は、図5で説明した通りである。
コスト算出部30は、P201~P205の処理を一定数の行毎に繰り返すことで、最終的なコストマップを生成する。
【0049】
このように、コスト算出部30は、連続した一定数の行毎にコストマップを生成し、処理する領域を分割することで、使用するメモリ量を低減することができる。また、コスト算出部30は、分散して推論できる実行環境の場合に、連続した一定数の行毎に分散して推論し、その結果を統合することで、推論時間を短縮することができる。
【0050】
なお、これまで説明した(動作例1)の特徴抽出処理(P102)では、入力画像のサイズと出力される特徴マップのサイズが等しい想定であった。一方で、特徴抽出部20は、入力画像のサイズに比べて出力される特徴マップのサイズを小さくすることもできる。特徴抽出部20は、畳み込みニューラルネットワーク(N100)において、畳み込み演算部21によりストライド2以上の畳み込み演算を実行することで入力画像に比べて小さいサイズの特徴マップを出力することができる。
例えば、畳み込み演算部21によりストライド2の畳み込みを2回実行することで出力される特徴マップは、入力画像の1/4のサイズとなる。すなわち、出力された特徴マップの1pixが、入力画像における4pixに相当する。この場合において、コスト算出部30は、入力画像に対する視差の探索範囲が64pixであった場合、その1/4に対応した16pix回数のコスト算出処理をマッチングコスト算出処理(P103)で実行する。このように、本実施の形態例の特徴抽出処理によれば、様々なサイズの特徴マップを出力する構成に変更することができる。
【0051】
また、これまで説明した(動作例1)のコスト補正処理(P104)では、入力されたコストマップと同一サイズのコストマップを出力する想定で処理を説明したが、入力されたコストマップに比べて大きいコストマップを出力したり、小さいコストマップを出力したりするように変更することもできる。
具体的には、入力に比べて大きいコストマップを出力する場合には、畳み込みニューラルネットワーク(N200)において、畳み込み演算部41は、エンコードに利用したストライド数に比べて大きなストライドをデコード時に設定することで、大きいサイズの特徴マップを出力できる。入力に比べて小さいコストマップを出力する場合には、畳み込みニューラルネットワーク(N200)において、畳み込み演算部41は、エンコードに利用したストライド数に比べて小さなストライドをデコード時に設定することで、小さいサイズの特徴マップを出力できる。
【0052】
また、図8図11に示す処理を利用して、学習時に決定した3次元畳み込みカーネルを、推論時に統合して利用する方法を説明したが、畳み込み演算の横方向と視差方向のパディングの影響を考慮し、以下のように変更してもよい。
以降の説明では、3次元畳み込みカーネルのサイズが幅、高さ、奥行方向それぞれ3pixであると想定する。
すなわち、コスト算出部30は、学習時において左右特徴マップのペアを生成する際に、右特徴マップ(F101)の左右端を1pixずつ削る。そして、コスト算出部30は、右特徴マップ(F101)のサイズをWR-2とする。その後、コスト算出部30は、左特徴マップ(F100)と右特徴マップ(F101)のペアを生成する。これにより、左特徴マップのサイズはWL=WR+Dであるため、D+3個のペアが生成される。その後、コスト算出部30は、D+3個のペアに対して3次元畳み込み処理を実行する。そして、コスト算出部30は、出力したコストマップの幅方向に対して左右端1pixずつ、奥行方向に対しては最小と最大の1枚ずつの特徴マップを削る。
【0053】
これにより出力される特徴マップのサイズは、(D+1、WR-4、H)となる。推論時では、コスト算出部30は、入力の右特徴マップ(F101)の左右端を1pixずつ削り、右特徴マップ(F101)のサイズをWR-2とする。その後、コスト算出部30は、右特徴マップ(F101)と左特徴マップ(F100)に対して、統合したカーネルを利用してそれぞれ畳み込み演算を実行する。
そして、コスト算出部30は、右特徴マップ(F111)の左右端1pixずつをさらに削り、右特徴マップ(F111)のサイズをWR-4とする。その後、コスト算出部30は、左特徴マップ(F110)の左右端2pixずつをさらに削り、左特徴マップ(F110)のサイズをWL=WR+D―4とする。そして、コスト算出部30は、要素加算処理を実行することで、(D+1、WR-4、H)のコストマップを生成する。このようにすることで、コスト算出部30は、学習時においてパディングの影響を受けるコストマップを推論時に除外することができ、画像端や視差の最大値・最小値まで、学習時と推論時の演算結果を一致させることができる。
【0054】
[環境認識装置が行う処理の動作例2:単眼カメラを利用してフローを算出する例]
次に、環境認識装置1が行う動作例2として、単眼カメラで撮像された複数時刻の画像から同一被写体の画素の移動量を表現したフロー(オプティカルフロー)を算出する動作について説明する。
以降では、単眼カメラで撮像された時刻T-1の画像と、その直後の時刻Tの画像の2枚を利用して、時刻Tから時刻T-1へのフローを算出する処理動作に関して説明する。また、フローの最大値・最小値は、縦方向と横方向で±3pixであり、時刻Tの対象画素において7×7の画素の領域内でフローを算出する処理として説明する。
【0055】
図13は、本実施の形態例における動作例2のフロー算出における処理を示す。
フローの算出では、画像取得処理(P401)、特徴抽出処理(P402)、マッチングコスト算出処理(P403)、コスト補正処理(P404)、及びオプティカルフロー算出処理(P405)が順に実行される。
まず、画像取得処理(P401)において、画像取得部10は、時刻T-1と時刻Tに撮像された2枚の画像を取得する。
特徴抽出処理(P402)では、特徴抽出部20は、画像取得処理(P401)で取得された時刻T-1に撮像された画像と時刻Tに撮像された画像のそれぞれに対して、畳み込みニューラルネットワークを利用してそれぞれの画像から特徴マップを生成する。
【0056】
図4に示した視差算出における特徴抽出処理との違いは、特徴抽出部20が左右の画像ではなく、時刻T-1と時刻Tの2枚の画像に対して特徴マップをそれぞれ算出する点である。また、畳み込みニューラルネットの畳み込み処理で利用されるカーネルは、後述する学習により推定される。
マッチングコスト算出処理(P403)では、コスト算出部30は、特徴抽出処理(P402)で取得された時刻T-1の特徴マップF201と時刻Tの特徴マップF200を利用して、各フローに対するコストを算出する。
【0057】
図14は、コスト算出部30によるマッチングコスト算出処理(P403)を示すフローチャートである。
コスト算出部30は、マッチングコスト算出処理(P403)において、時刻T-1の特徴マップ畳み込み処理(P201′)、時刻T特徴マップ畳み込み処理(P202′)を実施する。そして、コスト算出部30は、候補フローに対応したコスト算出を各フロー候補数(7×7)だけ実行する(P203)。時刻T-1の特徴マップ畳み込み処理(P201′)と、時刻T特徴マップ畳み込み処理(P202′)は、それぞれ図5で説明した左画像特徴マップ畳み込み処理(P201)と、右画像特徴マップ畳み込み処理(P202)の画像が、それぞれ時刻T-1の画像と時刻Tの画像に変わるだけである。
【0058】
候補フローに対応したコスト算出(P203)では、コスト算出部30は、時刻T-1の特徴マップを、候補フロー分だけシフトさせる(P204)。その後、コスト算出部30は、シフトされた時刻T-1の特徴マップと時刻Tの特徴マップを、要素加算処理を行うことで当該フローに対するコストを算出する(P205)。コスト算出部30は、この候補フローに対応したコスト算出(P203)を、探索範囲で繰り返し実行する。
【0059】
図15は、コスト算出部30による図13のマッチングコスト算出処理(P403)の処理手順を示す。
コスト算出部30は、時刻T-1特徴マップF201に対して、畳み込みパラメータK(T-1)を利用した畳み込み演算C(T-1)を実行し、時刻T-1特徴マップF211を算出する。また、コスト算出部30は、時刻Tにおける特徴マップF200に対して、畳み込みパラメータK(T)を利用した畳み込み演算C(T)を実行し、時刻Tにおける特徴マップF210を算出する。その後、コスト算出部30は、候補フローである(-3,-3)~(3,3)に対して、コストを算出する。そして、コスト算出部30は、候補フロー(-3,-3)に関するコスト生成において、時刻T特徴マップF210に対して、時刻T-1特徴マップF211を左方向に3pix、上方向に3pixシフトさせ、要素加算処理を実行する。
【0060】
コスト算出部30は、以上の処理を、(-3,-3)~(3,3)の範囲で順に実行し、各候補フローに対応したコストを算出し、それぞれのコストを奥行方向に連結することでコストマップC200を生成する。コストマップ(C200)の各位置には、フロー候補に応じたコストが格納される。
【0061】
これまでの説明では、説明の都合上、特徴マップのチャンネルに関して記載しなかったが、各特徴マップは、チャンネル方向にサイズを持っている。また、動作例1の視差算出で説明したのと同様に、コストマップC200はチャンネル毎にコストが格納されている。また、時刻Tにおける特徴マップF210と時刻T-1における特徴マップF211の要素加算処理において、コスト算出部30は、時刻T-1における特徴マップF211をシフトする。これにより、時刻Tにおける特徴マップF210と時刻T-1における特徴マップF211は、重なることがなくなり、要素加算処理ができない場合がある。そのため、特徴抽出部20は、コスト算出部30において要素加算処理ができなくなることを防ぐために、特徴抽出処理(P402)において時刻T-1の画像は、時刻Tの画像に比べて広い範囲を指定して入力される。
【0062】
コスト集約部40によるコスト補正処理(P404)では、マッチングコスト算出処理(P403)で算出されたコストマップC200に対して、畳み込み演算部41において、図7に示すように畳み込み処理を実行することで周辺領域を考慮したコストマップが生成される。
オプティカルフロー算出処理(P405)では、コスト補正処理(P404)で補正したコストマップに対して、コスト解析部51が実行する畳み込み演算により、(H、W、2)のサイズとなる特徴マップが生成される。H、Wは特徴マップの高さと幅をそれぞれ示しており、各位置に対して、フローの座標(横方向フロー、縦方向フロー)が格納されている。
【0063】
以上説明したように、図13に示す特徴抽出処理(P402)、マッチングコスト算出処理(P403)、コスト補正処理(P404)、及びオプティカルフロー算出処理(P405)では、学習により決定されたカーネルを利用して畳み込み演算が実行される。
【0064】
次に、この場合の学習方法に関して説明する。
この学習方法では、オプティカルフロー算出処理(P405)で算出したフローに対してロス関数が定義され、定義されたロス関数が最小化される。ロス関数は、横方向フローと縦方向フローそれぞれに対して、正解値データの横方向フローと縦方向フローとの差の絶対値を計算する。したがって、横方向フローと縦方向フローの差の絶対値を加算したものが画素毎の誤差となる。この誤差は、正解値データが格納された画素だけ計算され、その平均した値がロス関数として利用される。
【0065】
以上説明したように、本実施の形態例の環境認識装置1は、フロー算出におけるマッチングコスト算出において、時刻Tの画像と時刻T-1の画像に対して1度だけ畳み込み演算を実行するだけで、フローに対するコスト算出を実施できるようになる。したがって、各フロー候補に対する3次元畳み込み演算を実施する場合に比べて、演算量を低減することができる。
【0066】
なお、ここまで説明した動作例2では、学習時により決定したカーネルを推論時のマッチングコスト算出処理(P403)で利用するようにした。
一方、以下に説明する処理に基づいて、学習により決定したカーネルを統合したものをマッチングコスト算出処理(P403)で利用することもできる。すなわち、学習時と推論時で演算方法を変更する構成にすることができる。また、次に説明する処理により推論時に利用するカーネルを生成することで、学習時の構成と同一の出力結果を得ることができる。
【0067】
図16は、学習時におけるマッチングコスト算出処理(P403)を示す。
コスト算出部30は、候補フロー毎に時刻Tにおける特徴マップF200と時刻T-1における特徴マップF201で特徴マップのペアを作成する。具体的には、コスト算出部30は、候補フロー(-3、-3)に関しては、時刻Tにおける特徴マップF200に対して時刻T-1における特徴マップF201を左方向に3pixシフトさせ、上方向に3pixシフトさせて、特徴マップペアF(-3,-3)を作成する。
コスト算出部30は、この手続きを各候補フローに対応した回数実行することで、F(-3,-3)~F(3,3)を生成する。その後、コスト算出部30は、生成した特徴マップペアF(-3,-3)~F(3,3)を奥行方向に連結し、3次元畳み込みカーネル(K100)を利用して畳み込み演算を実行する。この際に利用する3次元畳み込みカーネル(K100)は、(49,3,3)のサイズを持つ。すなわち、3次元畳み込みカーネル(K100)は、空間方向に対しては3x3のサイズになり、奥行方向に対してはすべての特徴アップペアF(-3,-3)~F(3,3)に対して畳み込み可能なサイズになる。
【0068】
推論時には、コスト算出部30では、学習時に利用した3次元畳み込みカーネル(K100)が統合され、利用される。図15に示した畳み込みパラメータK(T-1)、及び畳み込みパラメータK(T)が推論時に利用される統合されたカーネルである。統合の方法は、基本的には動作例1と類似した手続きとなる。
具体的には、コスト算出部30は、畳み込みパラメータK(T)としては、3次元畳み込みカーネル(K100)のうち、時刻Tにおける特徴マップF200に対するそれぞれのカーネルを要素加算することで、畳み込みパラメータK(T)を生成する。また、コスト算出部30は、畳み込みパラメータK(T-1)に関しては、3次元畳み込みカーネル(K100)のうち、時刻T-1における特徴マップF201に対するそれぞれのカーネルを利用する。
【0069】
ここで、コスト算出部30は、特徴マップペアF(0,0)に対するカーネルに対して、F(-3,-3)~F(3,3)に対するカーネルを要素加算するが、その際にF(-3,-3)~F(3,3)をシフトして要素加算する。コスト算出部30は、F(-3,-3)を要素加算する場合には、カーネルを左方向に3pix、上方向に3pixシフトして要素加算を実行する。
以上の処理を、すべてのカーネルに対して実行することで、コスト算出部30は、畳み込みパラメータK(T-1)を生成する。動作例1との違いは、左右方向のみにカーネルをシフトするだけでなく、上下方向にもカーネルをシフトする点である。
【0070】
本実施の形態例の環境認識装置1では、学習時に求めた3次元畳み込みカーネルが、推論時には統合され、2次元畳み込みカーネルとして利用される。このようにすることで、3次元畳み込みカーネルを利用して学習されたモデルを、推論時において再学習することなく、より少ない演算量で実行することができる。また、学習時に利用する3次元畳み込みカーネルのパラメータ数と推論時に利用するパラメータ数を比較した場合、推論時に利用するパラメータ数の方が少なくなる。これにより、より少ないメモリ使用量で視差算出を実行することが可能になる。
【0071】
[変形例]
以上、実施の形態例による動作例1および動作例2で本発明を説明したが、本発明は上述した実施の形態例に限定されるものではない。
例えば、上述した実施の形態例では、コスト集約部40を有する構成とした。これに対して、コスト集約部40を有さずに、視差もしくはフローを算出してもよい。
【0072】
例えば動作例1では、ステレオカメラの左右画像のうち、右画像に対応した視差算出を実行したが、左画像に対応した視差算出にも利用できる。
また動作例2では、単眼カメラの時刻T-1の画像と時刻Tの画像に対応したフローの算出を実行したが、時刻T-1より前のさらに別の時刻T―2の画像と時刻Tの画像のフローを算出してもよい。すなわち、動作例2は、任意のフレーム間のフローの算出に適用が可能である。
また、特徴抽出部(P102)、マッチングコスト算出処理(P103)、コスト補正処理(P104)の処理において、図で説明したネットワーク構造やカーネルのサイズは具体的な一例を示したまでであり、上述した構造、もしくはサイズ以外であってもよい。
【0073】
また、ここまで説明した各実施の形態例は、本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
また、本発明の適用例として図2に示した車両に搭載したカメラが撮影した画像から環境認識して、車両制御を行う点についても一例であり、その他の車両などの各種移動体に搭載したカメラから環境認識する場合に適用してもよい。環境認識結果を使う用途についても、車両制御に限定されない。
また、図1および図2に示す構成図では、制御線や情報線は説明上必要と考えられるものだけを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
また、図3などに示すフローチャートの動作処理の流れについても一例であり、処理結果が同じであれば、一部の処理順序を変えたり、複数の処理を同時に実行したりしてもよい。
【0074】
また、本発明の環境認識装置内で行われる処理は、プログラム(ソフトウェア)の実行により行われるものであり、例えば既存のコンピュータ(情報処理装置)に、実施の形態例で説明した処理を実行するプログラムを実装することで、本発明の環境認識装置として機能させてもよい。この場合のプログラムの情報は、メモリや、ハードディスク、SSD(Solid State Drive)、ICカード、SDカード光ディスク等の各種記録媒体に置くことができる。
また、環境認識装置は、図2に示す構成では、CPUの制御で実行されるコンピュータで構成した例としたが、環境認識装置が行う機能の一部又は全部を、FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)などの専用のハードウェアによって実現してもよい。
【符号の説明】
【0075】
1…環境認識装置、2…車両制御装置、3L…車載カメラ、4…コンピュータ、4a…CPU、4b…ワークメモリ、4c…記憶部、4d…インターフェース、5…車両、10…画像取得部、11…画像格納部、12…画像格納部、20…特徴抽出部、21…畳み込み演算部、22…特徴抽出パラメータ格納部、30…コスト算出部、31…画像畳み込み演算部、32…画像畳み込み演算部、33…パラメータ格納部、34…パラメータ格納部、35…統合部、40…コスト集約部、41…畳み込み演算部、42…特徴抽出パラメータ格納部、50…マッチング部、51…コスト解析部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16