(57)【要約】本発明は入力データセットペアの第１の入力データセットおよび第２の入力データセットの変位マップを生成するための方法および装置である。その装置は、特徴マップのベースペア（２０ｅ）（３０ｅ）および特徴マップの精度ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）を含む、特徴マップ階層（５０）を生成するように第１の入力データセットおよび第２の入力データセットを処理するためのニューラルネットワークに基づく特徴抽出器（２５）と、特徴マップのベースペア（２０ｅ）（３０ｅ）を用いる初期変位マップを得るための第１のコンパレータユニットを含む変位ユニットと、そして特徴マップの精度ペア（２０ｄ）（３０ｄ）のための更新変位マップを得るための変位精度ユニットと、を含む。【選択図】図２
2021525408.tif 000002
【特許請求の範囲】
【請求項１】
入力データセットペアの第１の入力データセットと第２の入力データセットの変位マップを生成するための方法であって、各入力データセットは少なくとも１つの空間次元及び／又は時間次元を有し、前記方法は、
特徴マップのベースペア（２０ｅ）（３０ｅ）と特徴マップの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）を含む特徴マップ階層（５０）を生成するために、ニューラルネットワークに基づく特徴抽出器（２５）によって、第１の入力データセットと第２の入力データセットを処理する工程であって、特徴マップの各ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）（２０ｅ）（３０ｅ）は特徴マップ階層（５０）の１レベルを構成し、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）は少なくとも１つの空間次元及び／又は時間次元の全てにおいて、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）よりも粗さが少ない解像度を有する、工程と；
特徴マップのベースペア（２０ｅ）（３０ｅ）の第１の特徴マップを特徴マップのベースペア（２０ｅ）（３０ｅ）の第２の特徴マップとマッチングさせることに基づいて、特徴マップ階層（５０）の特徴マップのベースペア（２０ｅ）（３０ｅ）のための変位生成演算で初期変位マップを生成する工程と；
変位精製演算で、
アップスケーリングされた初期変位マップを生成するために、前記初期変位マップを、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、それぞれのアップスケーリング係数で、前記特徴マップ階層（５０）の特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）のスケールにアップスケーリングする工程、および、前記初期変位マップの前記値を前記それぞれのアップスケーリング係数で掛ける工程と、
特徴マップ階層（５０）の特徴マップの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第１の特徴マップ上にあるアップスケーリングされた初期変位マップを用いて、変形演算を実施することによって、特徴マップの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第１の特徴マップの変形バージョンを生成する工程と、
特徴マップの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第１の特徴マップの前記変形バージョン及び特徴マップの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第２の特徴マップのための補正変位マップを得るために、特徴マップの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第１の特徴マップの前記変形バージョンを特徴マップの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第２の特徴マップとマッチングさせる工程であって、更新変位マップを得るために、アップスケーリングされた初期変位マップに補正変位マップを追加する、工程と、
を含む、方法。
【請求項２】
特徴マップの少なくとも２つの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）は特徴マップ階層（５０）に含まれ、ここで、前記特徴マップ階層（５０）で特徴マップのベースペア（２０ｅ）（３０ｅ）に最も近い、特徴マップの第１の精製ペア（２０ｄ）（３０ｄ）は、特徴マップのベースペア（２０ｅ）（３０ｅ）よりも粗さが少ない解像度を有し、そして、特徴マップの前記第１の精製ペア（２０ｄ）（３０ｄ）よりも、前記特徴マップ階層（５０）で前記特徴マップの前記ベースペア（２０ｅ）（３０ｅ）から遠い特徴マップの各連続精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）は、特徴マップの前記各連続精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）よりも、前記特徴マップ階層（５０）で特徴マップ（２０ｅ）（３０ｅ）の前記ベースペアに近い特徴マップの隣接する精製ペア（２０ｄ）（３０ｄ）よりも粗さが少ない解像度を有し、
前記変位精製演算は、特徴マップの前記第１の精製ペア（２０ｄ）（３０ｄ）を使用して実行され、そして、それぞれのさらなる精製演算は、特徴マップの各連続する精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）のために実行され、ここで、各さらなる変位精製演算では、特徴マップの前記それぞれの連続する精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）よりも、前記特徴マップ階層（５０）で特徴マップの前記ベースペア（２０ｅ）（３０ｅ）に近い、特徴マップの前記隣接する精製ペア（２０ｄ）（３０ｄ）のために得られた前記更新変位マップは、それぞれの変位精製演算時におけるアップスケーリング中に、それぞれのアップスケーリング係数で、特徴マップの前記それぞれの連続する精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）の前記スケールへアップスケーリングされる前記初期変位マップとして使用され、そして、前記更新初期変位マップの前記値は前記それぞれのアップスケーリング係数で掛けられる、ことを特徴とする、請求項１に記載の方法。
【請求項３】
特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の前記第１の特徴マップの複数のシフト特徴マップ（８２）は、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の前記第１の特徴マップに、複数の異なるシフトを適用して生成され、
前記初期変位マップは、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の前記第１の特徴マップと、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の前記第２の特徴マップの、複数のシフト特徴マップ（８２）間のマッチングを調査することに基づいて、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の前記第２の特徴マップの各データ要素のポジションのための、合成シフトを生成することによって、得られ、
および／または、前記変位精製演算で、
特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第１の特徴マップの複数のシフト特徴マップ（８２）は、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の前記第１の特徴マップの変形バージョンに、複数の異なるシフトを適用することによって、生成され、
前記補正変位マップは、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の前記第１の特徴マップと、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の前記第２の特徴マップの、複数のシフト特徴マップ（８２）間のマッチングを調査することに基づいて、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第２の特徴マップの各データ要素のポジションのために、合成シフトを生成することによって、得られる、ことを特徴とする、請求項１に記載の方法。
【請求項４】
前記初期変位マップとしての適用のための出力変位マップを生成するための変位生成演算において、及び／又は、前記補正変位マップとしての適用のための前記出力変位マップを生成するための前記変位精製演算において、
シフト数が、異なるシフトの数である、前記複数のシフト特徴マップ（８２）と、
参照特徴マップ（８０）として機能する前記第２の特徴マップと、
のマッチングが、
第１の中間比較データマップを得るために、第１の比較コンボリューションユニット（８４）を、前記参照特徴マップ（８０）に適用する工程と、
複数の第２の中間比較データマップを得るために、第２の比較コンボリューションユニット（９４）を、前記複数のシフト特徴マップ（８２）の各々に適用する工程と、
追加演算で、合成比較データマップを得るために、前記異なるシフトの前記数と前記複数の第２の中間比較データマップに準じて複製された、前記第１の中間比較データマップを追加する工程と、
少なくとも１つの空間次元及び／又は時間次元の全てにおいて、前記合成比較データマップの各データ要素のためのそれぞれの合成シフトを生成する工程と、そして、前記それぞれの合成シフトを、前記出力変位マップの対応データ要素に割り当てる工程と、で実行される、ことを特徴とする、請求項３に記載の方法。
【請求項５】
少なくとも１つの空間次元及び／又は時間次元の全てにおいて、前記合成比較データマップの各データ要素のための、前記それぞれの合成シフトは、シフト調査コンボリューションユニット（１０４）を、前記合成比較データマップに適用することによって生成される、ことを特徴とする請求項４に記載の方法。
【請求項６】
前記特徴マップは、１以上の特徴チャネルを有し、そして前記合成比較データマップは、前記シフト調査コンボリューションユニット（１０４）を適用する前に、前記特徴マップの１以上の特徴チャネルによってスタックされる、ことを特徴とする請求項５に記載の方法。
【請求項７】
少なくとも１つの空間次元及び／又は時間次元の全てにおいて、前記合成比較データマップの各データ要素のためのそれぞれの合成シフトは、複数の異なるシフトから最もマッチングするシフトを選択することによって生成される、ことを特徴とする、請求項４に記載の方法。
【請求項８】
少なくとも１つの空間次元及び／又は時間次元の全てにおいて、前記合成比較データマップの各データ要素のためのそれぞれの合成シフトは、
異なるシフト値ごとに複数の変位ビンを確立すること、
変位ビンの各々に対する変位確率を生成することであって、前記変位確率は、前記合成比較データマップに基づいて計算され、こと、そして
対応変位確率によって前記シフト値を重み付けすることによって、前記合成シフトを得ること、によって生成される、ことを特徴とする、請求項４に記載の方法。
【請求項９】
１つの空間次元及び／又は時間次元の全てにおいて、前記合成比較データマップの各データ要素のためのそれぞれの合成シフトを生成する前に、非線形層を前記合成比較データマップに適用する、ことを特徴とする、請求項４に記載の方法。
【請求項１０】
前記特徴マップは１以上の特徴チャネルを有し、前記変位生成演算及び／又は前記変位精製演算において、前記マッチングする工程は、前記特徴マップの１以上の特徴チャネルを考慮することによって実行され、そして、初期変位マップ及び補正変位マップは、前記入力データセットの少なくとも１つの空間次元及び／又は時間次元の数と同じ、またはそれよりも少ない座標チャネルの数で、それぞれ生成される、ことを特徴とする請求項１に記載の方法。
【請求項１１】
第１の初期変位マップと第２の初期変位マップのペアは、前記変位生成演算において生成され、そして、前記第１の初期変位マップと前記第２の初期変位マップのペア、および、前記変位精製演算で生成された第１の補正変位マップと第２の補正変位マップのペアに基づいて、第１の更新変位マップと第２の更新変位マップのペアが、前記変位精製演算で生成される、ことを特徴とする、請求項１に記載の方法。
【請求項１２】
前記入力データセットペアはステレオ画像の画像のぺアであり、前記変位マップは視差マップであり、前記変位生成演算は視差生成演算であり、そして前記変位精製演算は視差精製演算である、ことを特徴とする、請求項１に記載の方法。
【請求項１３】
入力データセットペアの第１の入力データセットと第２の入力データセットの変位マップを生成するための装置であって、各入力データセットは少なくとも１つの空間次元及び／又は時間次元を有し、前記装置は、
特徴マップのベースペア（２０ｅ）（３０ｅ）と特徴マップの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）を含む特徴マップ階層（５０）を生成するために、前記第１の入力データセットと前記第２の入力データセットを処理するように適合された、ニューラルネットワークに基づく特徴抽出器（２５）であって、特徴マップの各ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）（２０ｅ）（３０ｅ）は特徴マップ階層（５０）の１レベルを構成し、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）は少なくとも１つの空間次元及び／又は時間次元の全てにおいて、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）よりも粗さが少ない解像度を有する、抽出器（２５）と；
特徴マップ階層（５０）の特徴マップの前記ベースペア（２０ｅ）（３０ｅ）のための初期変位マップを生成するために、特徴マップの前記ベース（２０ｅ）（３０ｅ）の第１の特徴マップを、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の第２の特徴マップとマッチングさせるように適合された、第１のコンパレータユニット（６４）（７４）を含む変位ユニットと；
変位精製ユニットであって、
アップスケーリングされた初期変位マップを生成するために、前記初期変位マップを、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、それぞれのアップスケーリング係数で、前記特徴マップ階層（５０）の特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）のスケールにアップスケーリングするよう適合され、かつ、前記初期変位マップの前記値を前記それぞれのアップスケーリング係数で掛けるように適合された、アップスケーリングユニット（１２０、１３０）と、
特徴マップ階層（５０）の特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第１の特徴マップ上の前記アップスケーリングされた初期変位マップを用いて、変形演算を実施することによって、特徴マップの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第１の特徴マップの変形バージョンを生成するように適合された変形ユニット（１１４）（１３４）と、
特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の前記第１の特徴マップの前記変形バージョンと、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の前記第２の特徴マップのための補正変位マップ得るために、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の前記第１の特徴マップの変形バージョンを特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の前記第２の特徴マップにマッチングさせるように適合された、第２のコンパレータユニット（１２６）（１３６）と、
更新変位マップを得るために、前記補正変位マップと前記アップスケーリングされた初期変位マップを追加するように適合された追加ユニット（１２８）（１３８）と、
を含む、変位精製ユニット、を含む、装置。
【請求項１４】
少なくとも１つのさらなる変位精製ユニットを含み、そして、特徴マップの少なくとも２つの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）は、前記特徴マップ階層（５０）に含まれ、ここで、前記特徴マップ階層（５０）で特徴マップのベースペア（２０ｅ）（３０ｅ）に最も近い、特徴マップの第１の精製ペア（２０ｄ）（３０ｄ）は、特徴マップのベースペア（２０ｅ）（３０ｅ）よりも粗さが少ない解像度を有し、そして、特徴マップの前記第１の精製ペア（２０ｄ）（３０ｄ）よりも、前記特徴マップ階層（５０）で前記特徴マップの前記ベースペア（２０ｅ）（３０ｅ）に遠い特徴マップの各連続精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）は、特徴マップの前記各連続精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）よりも、前記特徴マップ階層（５０）で特徴マップの前記ベースペア（２０ｅ）（３０ｅ）に近い特徴マップの隣接する精製ペア（２０ｄ）（３０ｄ）よりも粗さが少ない解像度を有し、
変位精製ユニットは、特徴マップの前記第１の精製ペア（２０ｄ）（３０ｄ）に適用され、そして、それぞれのさらなる変位精製ユニットは、特徴マップの各連続する精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）に適用され、ここで、各さらなる変位精製ユニットでは、特徴マップの前記それぞれの連続する精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）よりも、前記特徴マップ階層（５０）で特徴マップの前記ベースペア（２０ｅ）（３０ｅ）に近い、特徴マップの前記隣接する精製ペア（２０ｄ）（３０ｄ）のために得られた前記更新変位マップは、それぞれの変位精製演算時におけるアップスケーリング中に、それぞれのアップスケーリング係数で、特徴マップの前記それぞれの連続する精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）の前記スケールへアップスケーリングされる、前記初期変位マップとして使用され、かつ、前記更新変位マップの前記値は前記それぞれのアップスケーリング係数で掛けられる、ことを特徴とする、請求項１３に記載の装置。
【請求項１５】
前記変位ユニットは、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の前記第１の特徴マップに、複数の異なるシフトを適用することによって、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の前記第１の特徴マップの複数のシフト特徴マップ（８２）を生成するように適合された、第１のシフトユニット（６２）、（７２）をさらに含み、ここで、前記第１のコンパレータユニット（６４）、（７４）は、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の前記第１の特徴マップと、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の前記第２の特徴マップの、複数のシフト特徴マップ（８２）間のマッチングを調査することに基づいて、特徴マップの前記ベースペア（２０ｅ）（３０ｅ）の前記第２の特徴マップの各データ要素のポジションのための、合成シフトを生成することによって、前記初期変位マップを得るように適合され、および／または、
前記変位精製ユニットは、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の前記第１の特徴マップの変形バージョンに、複数の異なるシフトを適用することによって、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第１の特徴マップの複数のシフト特徴マップ（８２）を生成するように適合された、第２のシフトユニット（１２２、１３２）をさらに含み、ここで、前記第２のコンパレータユニット（１２６、１３６）は、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の前記第１の特徴マップと、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の前記第２の特徴マップの、複数のシフト特徴マップ（８２）間のマッチングを調査することに基づいて、特徴マップの前記精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）の第２の特徴マップの各データ要素のポジションのための、合成シフトを生成することによって、前記補正変位マップを得るように適合される、ことを特徴とする、請求項１３に記載の装置。
【請求項１６】
シフト番号が、異なるシフトの数である、前記複数のシフト特徴マップ（８２）と、
参照特徴マップ（８０）として機能する前記第２の特徴マップと、
のマッチングのために、
前記初期変位マップとしての適用のために、出力変位マップを生成するための第１のコンパレータユニット（６４）（７４）、および／または、前記補正変位マップとしての適用のために、前記出力変位マップを生成するための前記第２のコンパレータユニット（１２６、１３６）は、
第１の中間比較データマップを得るために、前記参照特徴マップ（８０）に適用するように適合された、第１の比較コンボリューションユニット（８４）と、
複数の第２の中間比較データマップを得るために、前記複数のシフト特徴マップ（８２）の各々に適用するように適合された、第２の比較コンボリューションユニット（９４）と、
合成比較データマップを得るために、前記異なるシフトの前記数と前記複数の前記第２の中間比較データマップに準じて複製された、前記第１の中間比較データマップを追加するように適合された、追加ユニット（９８）と、
少なくとも１つの空間次元及び／又は時間次元の全てにおいて、前記合成比較データマップの各データ要素のためのそれぞれの合成シフトを生成するように適合され、そして、前記それぞれの合成シフトを、前記出力変位マップの対応データ要素に割り当てるように適合された合成シフト生成ユニット（Ｃ２＿Ａ）（Ｃ２＿Ｂ）（Ｃ２＿Ｃ）を含む、
ことを特徴とする、請求項１５に記載の装置。
【請求項１７】
前記合成シフト生成ユニット（Ｃ２＿Ａ）は、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、前記合成比較データマップの各データ要素のそれぞれの合成シフトを生成するために、前記合成比較データマップに適用されるように適合され、そして、前記それぞれの合成シフトの全てを、前記合成比較データマップにおけるそれらのデータ要素に準じて、前記出力変位マップに割り当てるように適合された、シフト調査コンボリューションユニット（１０４）を含む、ことを特徴とする、請求項１６に記載の装置。
【請求項１８】
前記特徴マップは、１以上の特徴チャネルを有し、前記第１のコンパレータユニット（６４）（７４）及び／又は前記第２のコンパレータユニット（１２６）（１３６）は、シフト調査コンボリューションユニット（１０４）を適用する前に、前記特徴マップの１以上の特徴チャネルによって、合成比較データマップをスタックするように適合された、スタッキングユニット（１０２）を含む、ことを特徴とする、請求項１７に記載の装置。
【請求項１９】
少なくとも１つの空間次元及び／又は時間次元の全てにおける、前記合成比較データマップの各データ要素のための前記それぞれの合成シフトは、複数の異なるシフトから最もマッチングするシフトを選択することによって、前記合成シフト生成ユニット（Ｃ２＿Ｂ）によって生成される、ことを特徴とする、請求項１６に記載の装置。
【請求項２０】
少なくとも１つの空間次元及び／又は時間次元の全てにおける、前記合成比較データマップの各データ要素のための前記それぞれの合成シフトは、
異なる可能な変位値ごとに複数の変位ビンを確立すること、
前記変位ビンの各々に対する変位確率を生成することであって、ここで前記変位確率は、前記合成比較データマップに基づいて計算される、こと、そして
対応変位確率によって前記可能な変位値を重み付けすることによって、前記合成シフトを得ること、
によって、前記合成シフト生成ユニット（Ｃ２＿Ｃ）によって生成される、ことを特徴とする、請求項１６に記載の装置。
【請求項２１】
少なくとも１つの空間次元及び／又は時間次元の全てにおいて、前記合成比較データマップの各データ要素のためのそれぞれの合成シフトを生成する前に、前記合成比較データマップに適用される適合された非線形層を含む、ことを特徴とする、請求項１６に記載の装置。
【請求項２２】
前記特徴マップは、１以上の特徴チャネルを有し、前記変位ユニット及び／又は前記変位精製ユニットは、前記特徴マップの１以上の特徴チャネルを考慮することによって前記マッチングを実行するように適合され、そして、前記入力データセットの少なくとも１つの空間次元及び／又は時間次元の数と同じ、またはそれよりも少ない座標チャネルの数で、初期変位マップと補正変位マップを、それぞれ生成するように適合される、ことを特徴とする請求項１３に記載の装置。
【請求項２３】
前記変位ユニットは、第１の初期変位マップと第２の初期変位マップのペアを生成するように適合され、前記変位精製ユニットは、前記第１の初期変位マップと前記第２の初期変位マップの前記ペア、および、それぞれの第２のコンパレータユニット（１２６）（１３６）によって生成された第１の補正変位マップと第２の補正変位マップのペアに基づいて、第１の更新変位マップと第２の更新変位マップのペアを生成するように適合される、ことを特徴とする請求項１３に記載の装置。
【請求項２４】
前記入力データセットペアは、ステレオ画像の画像のペア（２０ａ）（３０ａ）であり、前記変位マップは視差マップであり、前記変位ユニットは視差ユニット（４０ｅ）であり、そして前記変位精製ユニットは視差精製ユニット（４０ｂ）（４０ｃ）（４０ｄ）である、ことを特徴とする、請求項１３に記載の装置。
【発明の詳細な説明】
【背景技術】
【０００１】
本発明は、入力データセットペアの、第１の入力データセットおよび第２の入力データセットの変位マップ（例えば、ステレオ画像ペアの左／第１の画像と右／第２の画像の視差マップ）を生成するための方法および装置に関する。
【技術分野】
【０００２】
ステレオ画像から正確に奥行を推定すること、換言すると、そこから視差マップを生成することは、自律（自動運転）車両、ロボットビジョン、拡張現実などの、多くのコンピュータビジョンアプリケーションの主要な問題である。より一般的に、２つの（関連する）画像間の変位に関する調査は、今日広く適用されているツールである。
【０００３】
従って、いくつかの異なるアプローチが、ステレオ画像に基づいて視差マップを生成するのに利用可能である。
【０００４】
特許文献１、特許文献２、特許文献３、特許文献４、特許文献５、および特許文献６で開示されるアプローチでは、低解像度画像が、ある光景から記録されたステレオ画像から生成される。視差解析はこれらの低解像度画像上で行なわれ、この解析によって得られる視差マップは拡大されるか、あるいは、その精製が徐々に適用される拡大によって向上される。
【０００５】
より低い解像度画像の個別の階層別のシリーズが、特許文献７および特許文献８のステレオ画像の各々のために生成される。これらのアプローチでは、視差マップは最も粗いレベルの左画像および右画像に基づいて生成される。低解像度視差マップのアップスケーリングは、これらの文書で適用される。
【０００６】
ステレオ画像は、視差マップを得るために、特許文献９で、ニューラルネットワークの助けによって処理される。ニューラルネットワークは、特徴マップ、そして例えば、ステレオ画像、または以下の文書の他のタイプの出力（それらのいくつかは、コーネル大学図書館のａｒＸｉｖオープンアクセスデータベースでプレプリントとして利用可能である）を生成するために使用される。
【０００７】
ニューラルネットワークを適用する、従来技術アプローチの多くの不利益は、実装が非常に複雑であることである。その上、計算コストは、既知のアプローチのほとんどにおいて高い。
【０００８】
既知のアプローチの観点から、入力データセットペアの第１の入力データセットと第２の入力データセットの変位マップを生成するための（例えば、ステレオ画像ペアの視差マップを生成するための）方法および装置が求められており、それを使用して、変位マップ（例えば視差マップ）が計算コストに対し効果的な方法で生成され得る。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】ＵＳ５，７２７，０７８
【特許文献２】ＵＳ２００８／０２６７４９４Ａ１
【特許文献３】ＵＳ２０１１／０１７６７２２Ａ１
【特許文献４】ＵＳ２０１２／０００８８５７Ａ１
【特許文献５】ＵＳ２０１４／０１４７０３１Ａ１
【特許文献６】ＵＳ９，０３０，５３０Ｂ２
【特許文献７】ＷＯ００／２７１３１Ａ１
【特許文献８】ＷＯ２０１６／００７２６１Ａ１
【特許文献９】ＣＮ１０５９５６５９７Ａ
【非特許文献】
【００１０】
【非特許文献１】Ａ．  Ｋｅｎｄａｌｌ  ｅｔ  ａｌ．：  Ｅｎｄ−ｔｏ−ｅｎｄ  ｌｅａｒｎｉｎｇ  ｏｆ  ｇｅｏｍｅｔｒｙ  ａｎｄ  ｃｏｎｔｅｘｔ  ｆｏｒ  ｄｅｅｐ  ｓｔｅｒｅｏ  ｒｅｇｒｅｓｓｉｏｎ，  ２０１７，  ａｒＸｉｖ：  １７０３．０４３０９  （ｉｎ  ｔｈｅ  ｆｏｌｌｏｗｉｎｇ：  Ｋｅｎｄａｌｌ）；
【非特許文献２】Ｙ．  Ｚｈｏｎｇ  ｅｔ  ａｌ．：  Ｓｅｌｆ−ｓｕｐｅｒｖｉｓｅｄ  ｌｅａｒｎｉｎｇ  ｆｏｒ  ｓｔｅｒｅｏ  ｍａｔｃｈｉｎｇ  ｗｉｔｈ  ｓｅｌｆ−ｉｍｐｒｏｖｉｎｇ  ａｂｉｌｉｔｙ，  ２０１７，  ａｒＸｉｖ：  １７０９．００９３０  （ｉｎ  ｔｈｅ  ｆｏｌｌｏｗｉｎｇ：  Ｚｈｏｎｇ）；
【非特許文献３】Ｎ．  Ｍａｙｅｒ  ｅｔ  ａｌ．：  Ａ  ｌａｒｇｅ  ｄａｔａｓｅｔ  ｔｏ  ｔｒａｉｎ  ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｔｗｏｒｋｓ  ｆｏｒ  ｄｉｓｐａｒｉｔｙ，  ｏｐｔｉｃａｌ  ｆｌｏｗ，  ａｎｄ  ｓｃｅｎｅ  ｆｌｏｗ  ｅｓｔｉｍａｔｉｏｎ，  ２０１５，  ａｒＸｉｖ：  １５１２．０２１３４  （ｉｎ  ｔｈｅ  ｆｏｌｌｏｗｉｎｇ：  Ｍａｙｅｒ）；
【非特許文献４】Ｐｈ．  Ｆｉｓｃｈｅｒ  ｅｔ  ａｌ．：  ＦｌｏｗＮｅｔ：  Ｌｅａｒｎｉｎｇ  ｏｐｔｉｃａｌ  ｆｌｏｗ  ｗｉｔｈ  ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｔｗｏｒｋｓ，  ２０１５，  ａｒＸｉｖ：  １５０４．０６８５２  （ｉｎ  ｔｈｅ  ｆｏｌｌｏｗｉｎｇ：  Ｆｉｓｃｈｅｒ）；
【非特許文献５】Ｊ．  Ｐａｎｇ  ｅｔ  ａｌ．：  Ｃａｓｃａｄｅ  ｒｅｓｉｄｕａｌ  ｌｅａｒｎｉｎｇ：  Ａ  ｔｗｏ−ｓｔａｇｅ  ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ  ｆｏｒ  ｓｔｅｒｅｏ  ｍａｔｃｈｉｎｇ，  ２０１７，  ａｒＸｉｖ：  １７０８．０９２０４  （ｉｎ  ｔｈｅ  ｆｏｌｌｏｗｉｎｇ：  Ｐａｎｇ）；
【非特許文献６】Ｃ．  Ｇｏｄａｒｄ  ｅｔ  ａｌ．：  Ｕｎｓｕｐｅｒｖｉｓｅｄ  ｍｏｎｏｃｕｌａｒ  ｄｅｐｔｈ  ｅｓｔｉｍａｔｉｏｎ  ｗｉｔｈ  ｌｅｆｔ−ｒｉｇｈｔ  ｃｏｎｓｉｓｔｅｎｃｙ，  ２０１７，  ａｒＸｉｖ：  １６０９．０３６７７  （ｉｎ  ｔｈｅ  ｆｏｌｌｏｗｉｎｇ：  Ｇｏｄａｒｄ）．
【発明の概要】
【００１１】
本発明は、入力データセットペア（例えばステレオ画像ペアの視差マップ）の第１の入力データセットと第２の入力データセットの変位マップを生成するための方法および装置を提供することを主な目的とし、これらは、可能な限り先行技術のアプローチの不利な点を持たない。
【００１２】
本発明のさらなる目的は、変位マップを生成するための方法と装置を提供することであり、それらを使って良好な品質と解像度の変位マップが計算コストに対して効果的な方法で、最も低い複雑さで生成され得る。
【００１３】
本発明の目的は、請求項１に記載の方法、および請求項１３に記載の装置によって達成され得る。本発明の好ましい実施形態は、従属請求項で定義される。
【００１４】
本文書を通して、「変位マップ」は特定のｎ次元の一般化視差を指すものとする、すなわち、一般化の周知のステレオ（左右）視差（視差マップは変位マップの特例である）、またはオプティカルフローの調査用のフローマップなどの他の種類の変位マップである。しかしながら、図を参照して詳述した実施形態は、ステレオ視差の周知の例の助けによって示される（図２を参照）。変位マップ（例えばｎ次元の一般化視差マップ）は、ｎ次元の変位ベクトルを各々の空間的位置（画像上のピクセルなど）に割り当てるマッピングを指す。
【００１５】
入力データセット（例えば画像）あるいは特徴マップ（これらは、本発明に係る方法及び装置によって処理された一般化画像および特徴マップである）には、少なくとも１つの空間次元及び／又は時間次元（空間次元の次元数には制限がなく、１、２、３、又はそれ以上であり得る）とチャネル次元（この次元に対応するチャネルは、特徴チャネルあるいは単にチャネルと呼ばれる）を有する多次元テンソルが与えられるとする。そのチャネル次元がＮである場合、その入力あるいは特徴マップにはＮチャネルがある、例えばＲＧＢ画像には３つのチャネルがあり、グレイスケール画像には１つのチャネルがある。本明細書における「空間次元」という表現は意味において拘束されず、チャンネル次元からのこれらの次元の区別としてのみ使用され、さらに、時間次元は別々に定義することができる。そして、上記の定義された（一般化された）変位は、入力データセットと同じ空間次元を有するテンソル、および長さが入力データセットテンソル内の空間次元の次元数と同じである、又はタスクが空間次元の部分集合に制限された場合、その数より少ない（座標）チャンネル次元で表される。したがって、入力データセットの各々の空間的位置（すなわち、一般に、ピクセルあるいはボクセル：データ要素）については、変位マップが変位、すなわち変位ベクトル、の方向および大きさを決定する。これらの変位ベクトルの座標は、変位マップ（特徴マップの特徴チャネルから区別するために、変位マップのチャネルは座標チャネルと呼ばれる）を表すテンソルの座標チャネル次元を形成するものとする。
【００１６】
一般化視差の意味での変位の概念は、変位ベクトルが可能な変位ベクトルの部分集合に制限される場合も含むこととする。例えば、２次元の左右入力データセットテンソル（この場合、画像）のための典型的なステレオ視差は、水平方向の変位のみを可能にするために一般化視差を抑制することによって、記述され得る。そのため、それらの垂直（ｙ）座標が常にゼロであるので（これは、図に示されている例の場合）、変位ベクトルは、２つの代わりに１つの座標で記述することができる。したがって、この場合、一般化視差は、その値が水平変位のみを表わし、且つ２次元の代わりに１次元の座標チャンネル次元であるテンソルで記述することができる。つまり、視差テンソルの座標チャンネルの数は、可能な変位ベクトルの部分空間の実際の次元数と等しくてもよく、すなわち、この場合、２次元の代わりに１次元である。
【００１７】
３次元空間で、画像要素は通常、ボクセルを指し、２次元空間でピクセルと呼ばれて、１次元空間でサンプル（例えば音声を録音する場合）又はサンプル値と呼ばれる。本明細書において、空間次元の数にかかわらず、入力データセットテンソル（及び特徴マップ）の空間的位置を「データ要素」と呼ぶ。
【００１８】
したがって、入力データセットはＲＧＢ画像である必要がなく、あらゆる種類の多次元データであってもよく、音声サンプルなどの時系列データ、ＥＣＧ、あらゆる色空間（ＲＧＢ、グレイスケール、ＹＣｂＣｒ、ＣＭＹＫなど）にエンコードされた２Ｄ画像、２Ｄカメラ熱画像、デプスカメラで作られた２Ｄデプスマップ、スパールＬＩＤＡＲ又はＲＡＤＡＲスキャンで作られた２Ｄデプスマップ、又は３Ｄ医療用画像（ＭＲＩ、ＣＴなど）、を含むが、それらに限定されない。変位マップの技術的な表現は、上記に記述されたものに制限されず、他の表現も考えられる。一般に、入力データセット（単に入力、入力データあるいはデータの入力セットと呼んでもよい）は典型的に画像あるいは他の情報が格納されるデータ要素を有する、すなわち、それは通常デジタル情報（例えばデジタル画像）を含み、更に、入力データセットは通常録画である（すなわちカメラの画像）。
【００１９】
変位マップ（一般化視差）の適用の複数の特例は注目に値する。ステレオ視差の場合、２つの入力画像（入力データセットの特例）は、左および右カメラの画像（すなわちステレオ画像ペアの構成部分）に対応し、そしてその一般化視差が実際に水平次元に拘束された２Ｄベクトル場であるため、それは（通常）２空間次元の１−座標チャネルテンソルで表される。
【００２０】
変位マップ（一般化視差）の他の場合、すなわち、２Ｄオプティカルフローの場合は、２つの入力画像（入力データセット）は、異なる時間（例えば以前のおよび現在のフレーム）に同じカメラで撮影されたフレームに対応する、すなわち、それらが入力画像ペアを構成する。３Ｄ画像レジストレーション（医療などのための別の画像マッチングプロセス）の場合、１つの画像は例えば拡散ＭＲＩ脳スキャンの画像であり、もう一方の画像は脳リファレンススキャン（すなわちこのプロセスでは、調査から得られた記録が参照と比較される）であり、その２つの画像が入力データセットペアを構成する；また、その一般化視差は３Ｄベクトル場である、すなわち、３つの空間座標のための各テンソル位置の３つの座標チャネル及び３次元の空間を有するテンソルである。上述のように、本発明に係る方法及び装置は、そこに適用された特徴抽出器の適切な構成によって、あらゆる空間次元に対して一般化することができる。
【００２１】
もう１つの可能な使用例は、２つのオーディオ録音を時間内に一致させることであって、ここで、空間次元の数が１（それは実際には時間次元である）であり、その２つの入力データセットがオーディオ録音および別の参照録音に対応し、また、一般化視差（変位）が１次元の空間次元（時間次元）および１つのみの座標チャンネル（入力データセットが１次元の空間次元を有するので）を有する。この場合、特徴抽出器は、オーディオ振幅（各時間例の各々のための関数値を有する）の時間依存の機能に適用される。これらの例とは別に、おそらく３を超える空間次元を有する他のアプリケーションを考案することができる。
【図面の簡単な説明】
【００２２】
本発明の好ましい実施形態は、下記の図面を参照して例として以下で説明される。
【図１】例示的なニューラルネットワークに基づく特徴抽出器ブランチを示す。
【図２】本発明に係る方法及び装置の実施形態を示すブロック図である。
【図３】ある実施形態における視差ユニットを示すブロック図である。
【図４】ある実施形態におけるシフト工程を示す概略図である。
【図５Ａ】視差（精製）ユニットの中で適用されたコンパレータユニットの実施形態を示すブロック図である。
【図５Ｂ】コンパレータユニットにおける視差の計算の可能なバリエーションである。そして、
【図６】視差精製ユニットの実施形態を示すブロック図である。
【発明を実施するための形態】
【００２３】
図１は、（入力データセットの例として）画像に適用された、ニューラルネットワークに基づいた特徴抽出器ブランチ（１５）（つまり単一のブランチ特徴抽出器）の例示である。図１の詳細は例としてのみ機能する。図に示されるパラメータは、いくつかの異なる方法で選択されることが可能で、詳細は以下を参照のこと。示される特徴抽出器ブランチ（１５）は、本発明に係る方法および装置において、例示的に使用され得る。図２では、（特徴抽出器（２５）の一部である）特徴抽出器ブランチ（２７）および（２９）が示される；これらは、図１および２に基づく本発明のこの態様の説明を簡易化するために、図１の特徴抽出器ブランチ（１５）に非常に類似する。
【００２４】
図２にも示されるように、あるレベルで選択されたピクセルグループは、レベル間の対応するコンボリューション（コンボリューション（２４ａ）（２４ｂ）を参照）のコンボリューション入力（例示的に最良の解像度レベルで示される、図の一番上の（２２ａ）（３２ａ）を参照）である。コンボリューションの出力は、コンボリューションカーネル（カーネル、またはフィルタとも呼ばれ得る）の対応する要素によって重み付けされたコンボリューション入力の、各ピクセルを合計することによって、コンボリューション出力（可能な限りの最高レベルで例示的に示される、コンボリューション出力（２６ａ）（３６ａ）を参照）になる。コンボリューションカーネルにおける出力チャネルの数が１より多い場合、複数の重み付けされた和は、（各出力チャネルに１つ）計算され、そしてコンボリューション出力を形成するために、ともにスタックされる。図２の中のグリッドのサイズは、コンボリューションカーネルの次元を示す（コンボリューション入力（２２ａ）（３２ａ）を参照）。特定のコンボリューション入力、カーネル、コンボリューション、およびコンボリューション出力は、例示的目的のためにのみ示される。例された例では、３ｘ３のカーネルが適用される（つまり、個々の空間次元での３ピクセルのカーネルサイズを備えたコンボリューション）。２Ｄの場合、カーネルは単純に３ｘ３、１ｘ１等によって表されるが、一般的な場合、あらゆる空間次元でカーネルのサイズを定義することが重要である。他の次元のカーネルも適用されて良く、つまり辺が互いに等しくないカーネルである。例えば、３ｘ１および１ｘ３のカーネルが交互に使用されてもよい。特徴チャネルの数はまた、特徴マップの各々のためのパラメータによって調整され得る。
【００２５】
上に強調されるように、図１は、ニューラルネットワークに基づいた特徴抽出器（ブランチ）の単なる例示である。学習可能なコンボリューション（または単にコンボリューション、あるいはコンボリューション演算子と呼ばれても良い）は、入力画像（１０ａ）に適用され、その助けにより、一連の特徴マップ（１０ｂ）、（１０ｃ）、（１０ｄ）および（１０ｅ）が連続的に生成される。本発明の実施形態で適用される（すなわち、ニューラルネットワーク特徴抽出器、およびコンパレータユニットにおける）コンボリューションは、上述のようないくつかの既知のアプローチに適用されている、事前定義されたフィルタでのコンボリューションの代わりに、学習されたフィルタ（カーネル）によって［実行される］コンボリューションである。コンボリューションは、画像上でカーネルを動かすことによって、それが適用される画像全体を掃引する。単純化のために、図１および２では、コンボリューションカーネルの例示的な位置のみが、特徴抽出器の各レベルについて、示される。
【００２６】
好ましくは、あらゆるコンボリューションは、非線形層（通常、Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔｓの略で−ＲｅＬＵ−、つまりｆ（ｘ）＝ｍａｘ（０、ｘ））で追従される。
【００２７】
コンボリューションは、そのストライドが＞１である場合、入力層の空間次元を縮小することができる。代替的に、個別のプーリング（通常、平均プーリングまたは最大プーリング）層は、空間次元を（一般に）２減らすために使用され得る。
【００２８】
ストライドが１の時、コンボリューションカーネルは、上述の掃引中、一度に１ピクセル動かされる。ストライドが２の時、コンボリューションカーネルは、動く際には、一度に２ピクセルをジャンプする。ストライドの値は通常整数である。より高いストライドでは、カーネルのオーバーラップが減り、その結果、出力ボリュームはより小さな空間次元を有する（以下の図１の例示の分析も参照のこと）。
【００２９】
上述されるように、空間次元はまた、プーリング層の助けによっても減少され得る。一般に適用される平均および最大プーリング層は、以下の通り適用される。最大プーリングをピクセルグループに適用すると、最大値のピクセルが各特徴チャネルに選択される。例えば、もし２ｘ２ピクセルグループが最大プーリング層の１ユニットで考慮され、各ピクセルが各チャネルで異なる強度を有すると、最大強度を伴うピクセルが各チャネルに選択され、そしてそのため、チャネルの最大値を組み合わせることによって、２ｘ２ピクセルグループは１ｘ１ピクセルグループ（つまり単一ピクセル）に減少される。平均プーリング層は同様に適用されるが、しかし、各チャネルのための調査ピクセルグループのピクセル値の平均を出力する。
【００３０】
図１に示される例では、各レベル（画像および特徴マップ）の幅と高さのパラメータが示される。画像（１０ａ）は高さＨおよび幅Ｗを有する。第１の特徴マップ（１０ｂ）のこれらのパラメータ（特長マップの行の第１番目）は、Ｈ／４とＷ／４であり、つまり、空間パラメータは、開始画像（１０ａ）と第１の特徴マップ（１０ｂ）との間で４減少される。特徴マップ（１０ｃ）の次元は、Ｈ／８とＷ／８である。従って、次のステップでは、後のステップと同様に、空間パラメータは２減少される（特徴マップ（１０ｄ）の次元はＨ／１６とＷ／１６、そして特徴マップ（１０ｅ）に対しては、これらはＨ／３２とＷ／３２となる）。このことは、特徴マップ階層（特徴マップ階層（５０）は図２も参照）の特徴マップのピクセル数が連続して減少される、つまり、画像（１０ａ）から最後の特徴マップ（１０ｅ）までの解像度が、徐々にますます低くなる、ことを意味する。換言すると、この順序では、（特徴抽出器のますます深くなるレベルで）ますます低くなる解像度の特徴マップが得られる。これらが特徴抽出器のますます深い段階にあるので、これらの特徴マップは、その順序でますます少数になる画像様の特性を有し、そしてますます多数の特徴様の特性を有することを期待される。ますます小さくなる特徴マップサイズによって、カーネルは、初期画像でますます大きくなった領域をカバーする。このように、ますます大きくなる画像のオブジェクトの認識は、より低い解像度の特徴マップで達成される。例として、歩行者、ペット、または自動車は、より低い解像度レベルで認識されることが可能である（これらは通常より高いレベルの特徴を含む特徴マップであり、したがって、これらは高レベル特徴マップと呼ばれ得る）が、しかし、これらの一部、あるいは詳細（例えば頭または一方の耳）のみは、より高い解像度レベルで認識されることが可能である（これらのレベルの特徴マップは一般に、より低いレベルの特徴を含み、したがって、これらは低レベル特徴アマップと呼ばれ得る）。
【００３１】
特徴抽出器は、より良い結果を有益に達成し、かつ過学習を回避するために、好ましくはあらかじめ訓練される。例えば、多くの異なるペットおよび他の特徴的なオブジェクトは、装置およびそれぞれの方法の機械学習の（ニューラルネットワークに基づく）コンポーネントに教えられる（訓練される）。適切な事前訓練で、オブジェクトの認識におけるより高い効率が達成されることが可能である（視差解析の例の助けによって示される詳細は、以下を参照）。
【００３２】
事前訓練／訓練過程で、損失値（エラー様の量）は、適切な損失関数で生成される。訓練過程では、損失値は、好ましくは最後の変位精製ユニットの（つまり、装置が訓練されていないが変位マップを生成するために使用される時に、最終変位マップを出力するものの出力への）出力で生成される。損失関数は、好ましくは、ニューラルネットワークの他の層でも適用される。損失関数は合計されるので、複数の損失関数は単一のものと考慮され得る。損失関数は、変位ユニットの全て、および少なくとも１つの変位精製ユニット（例の精製ステップでは、開始画像と比較して、１／３２まで、１／１６まで、１／８まで、および１／４までのスケール）の出力に置かれ得る。これらに損失関数を適用すると、合理的な変位マップがレベルの全てで達成されることが可能である。
【００３３】
さらに、事前訓練と訓練は通常２つの別個のフェーズであり、そこでは、実行されるタスクおよびそのデータ、そして適用されるネットワークのアーキテクチャと損失関数は、異なっていても良い。さらに、事前訓練は複数のフェーズを含んで良く、そこではネットワークが連続的に、より具体的なタスク上で訓練される（例えば、ＩｍａｇｅＮｅｔ−＞合成データ−＞実データ−＞より具体的なドメイン上での実データ；これらの任意のフェーズはスキップされることが可能で、任意のタスクは学習のために適用されて良く、その学習のために適切なデータが利用可能であり、その学習は教えるのに容易であり、その学習から、より良い／多くの多用な特徴捕捉が期待できる）。
【００３４】
ある例では、変位は事前訓練フェーズで教えられず、したがって、異なる損失関数が使用されなければならない。事前訓練が終了すると、事前訓練で使用されたが、変位マップ生成では使用されなかったネットワークの全ての部分（もし存在するのであれば、最後から１番目または２番目がそれであり得る）が、変位マップ訓練フェーズの開始時に取り置かれる。その後、変位マップ生成には必要であるが、事前訓練には必要でない層が、ネットワーク上に置かれ、そしてこれらの新しい層の重み付けが幾分開始される。このことは、ネットワークが、新しいタスク（我々のケースでは、変位マップ生成）で、または新しい方法で、部分的にまたは全体的に教えられることを可能にする。
【００３５】
ある例では、ＩｍａｇｅＮｅｔによる事前訓練の場合には、後に放棄される分類部分は、ネットワークの端部に配置され、そのタスクは、画像を適切なカテゴリー（例えばオブジェクトの分類：ブルドッグ、セントバーナード犬、猫、テーブル）に分類することである。その結果として、このバリアント（ｖａｒｉａｎｔ）では、より良い微分特性を備えたフィルタが達成される。メインタスクで明示的に実行されるべき分類は無く、事前訓練のみで実行されるので、分類部分（ネットワークの端部）は後ほど除去される。
【００３６】
また、そのような事前訓練もまた（単独で、またはＩｍａｇｅＮｅｔ学習の第２のフェーズとして）適用され、そこでは、変位は、同じアーキテクチャを使用して、しかし異なる方法および／または異なるデータで、教えられる。このことは、大量の合成データが計算上のコストの面から比較的安価で生成され得るので、有益である。その上、完全なグラウンドトゥルース変位マップ（例えば視差またはオプティカルフロー）が合成データのために生成されることが可能で、そのため、これらと共に教える方が良い。しかし、合成データ上で教えられたネットワークは、実際の画像の場合の同じ質に到達しない。したがって、実データ上での訓練も必要である。この後者はまた、例えば、大量のステレオ画像ペアが幾分異なる環境から利用可能である（この時、これらは事前訓練に適用される）が、しかし、我々は実際のターゲットドメインからより少数の教示画像を有し得る（この時、これらは訓練用に留保される）場合に、ある種の事前訓練であリ得る。これは、目的がＫＩＴＴＩベンチマークで良い結果を達成することである時の例における場合であり、しかし、ほんの少数の教示データしかこの環境から利用できない。
【００３７】
損失関数は通常、機械学習（ニューラルネットワーク）コンポーネントを微調整するために、装置内でバックプロパゲートされるが、任意の他の訓練アルゴリズムがバックプロパゲーションの適所に使用され得る。変位（例えば視差）生成の教師あり学習では、結果的に得られる変位マップ（および計算された奥行き値）は、例えばライダー（ＬＩＤＡＲ）データと比較されて良い；自己管理学習、または教師なし学習では、そのようなデータは必要無い。
【００３８】
我々はここで、特徴マップ階層に関するチャネル次元の質問に目を向ける。コンボリューションを実行することは通常、（最初は、例えばＲＧＢ画像用には３である）特徴チャネル次元を増加させる。チャネル次元のインクリメントは、開始画像と特徴マップを示すオブジェクトの厚さによって、図１に示される。１／３２のスケールでの代表的なチャネル数は、１０２４から２０４８である。
【００３９】
図１がコンボリューションニューラルネットワークに基づく特徴抽出器ブランチの単なる例であることが強調される。任意の他の層構成は、任意の種類の学習可能なコンボリューション層、プーリング層、および様々な非線形性と共に使用されることが可能である。それはまた、後に組み合わされ得る複数の計算経路（例えばＧｏｏｇｌｅＮｅｔバリアント、またはＲｅｓＮｅｔの場合のスキップ接続）を含むことが可能である。適用可能な層構成は、２つのものを共通して有する：１．それらは、入力における変換を学習することが可能である。２．それらは、通常は複数のスケールでの特徴出力を有する（ベース特徴マップは、特徴マップ階層の最下部にあり、少なくとも１つの−通常はより−中間的な特徴マップである）。我々はまた、特徴抽出器ネットワークを「ベースネットワーク」と呼んでもよい。
【００４０】
上記を要約すると、画像（１０ａ）は、特徴抽出器ブランチ（１５）の入力として使用される。特徴マップ（１０ｂ）は、示される例示的な特徴マップ階層の第１の特徴マップであり、ここに、さらなる特徴マップ（１０ｃ）（１０ｄ）（１０ｅ）が含まれる。
【００４１】
図１で、例示的なコンボリューション入力（１２ａ）でのコンボリューション（１４ａ）は、（ステレオ画像ペアの画像の１つである）開始画像（１０ａ）に適用され、そして、（コンボリューション（１４ａ）の出力である）コンボリューション出力（１６ａ）は、第１の特徴マップに示される。例示的なコンボリューション（１４ａ）は、（開始画像（１０ａ）の１以上のチャネルのすべてへの）ピクセルの３ｘ３グループに適用され、そして、そのコンボリューション出力（１６ａ）は、単一のピクセル（コンボリューションカーネルによって定義されたチャネルの数と等しい特定のチャネル数を伴い、チャネルの数を示すコンボリューションカーネルの奥行きを参照）である。特定のコンボリューション（１４ａ）と対応するコンボリューション入力（１２ａ）、およびコンボリューション出力（１６ａ）は、説明例を構成するのみであり、コンボリューションのカーネルは、規定のルールに準じて、画像全体を横断して（特徴マップの順序で、特徴マップ全体を横断して）動かされる。当然、カーネルのサイズは異なり得、あるいは、他のパラメータは異なり得る。特徴マップ（１０ｂ−１０ｅ）のために、さらに、例示的なコンボリューション（１４ｂ）（１４ｃ）（１４ｄ）は、コンボリューション入力（１２ｂ）（１２ｃ）（１２ｄ）およびコンボリューション出力（１６ｂ）（１６ｃ）（１６ｄ）と共に、図１に示される。
【００４２】
本発明に係る方法および装置は、入力データセットペアの第１の入力データセットと第２の入力データセットの変位マップを生成するのに適切であり（生成するように適合されており）、（図２の例では、変位マップは、ステレオ画像ペアの左画像（２０ａ）と右画像（３０ａ）の視差マップであり；調査されるペアのメンバーは、もちろん、幾分関連しており）；各入力データセットは、少なくとも１つの空間次元および／または時間次元を有する。本発明によれば、変位マップ（つまり少なくとも１つ）は、生成される。図で示されるように、本発明の実施形態は、（視差マップに基づく）立体的な奥行き推定のための、階層的特徴マッチングの方法および装置である。比較的低い計算コスト、および効果により、本発明に係る方法および装置は、有利に速い。そのため、本発明に係る方法と装置は、ニューラルネットワークを使用する視差マップ（例えばステレオ画像ペアからの視差マップ）を予測するのに適合されている。本発明に従う方法および装置は、カメラの適合と調整における小さなエラーに対してロバストであり、非テクスチャ領域においてうまく機能する。
【００４３】
ある実施形態の本発明に従う方法の工程は、（図２の例によって示される）以下に与えられる。
【００４４】
第１の工程で、第１の入力データセットと、第２の入力データセット（入力データセットの名前における「第１の」と「第２の」という表記は、当然、入力データセットの順序を意味しない；表記の役割は、単に２つの入力データセット間の違いを示すのみであり；これらは、図２の例での左画像（２０ａ）と右画像（３０ａ）である）は、ニューラルネットワークに基づく特徴抽出器（２５）（単に、ニューラル（ネットワーク）抽出器、またはニューラルネットワークを使用する抽出器と呼ばれても良い）によって処理され；それは、特徴マップのベースペア（図２の特徴マップ（２０ｅ）と（３０ｅ）で；一般に最も粗い特徴マップ）と、特徴マップの精製ペア（図２の特徴マップ（２０ｂ−２０ｄ）と（３０ｂ−３０ｄ）で、２番目に最も粗い、そして、さらにより粗さの少ない特徴マップで；特徴マップは好ましくは特徴抽出器によって連続的に作り出される）を含み、そして、特徴マップの各ペアは、特徴マップ階層（５０）の１レベルを構成し、特徴マップの精製ペアは、少なくとも１つの空間次元／時間次元において、特徴マップのベースペアよりも粗さの少ない解像度を有する。従って、特徴マップ階層は、特徴マップの少なくとも２つのペア（１つのベースペアまたは特徴マップ、および特徴マップの少なくとも１つの精製ペア）を含む。
【００４５】
そのため、特徴マップの１以上の精製ペアは、特徴マップ階層内に含まれても良い。下記で、本発明に従う方法は、１つの精製ペア（それは、唯一の、または、より好ましくは、図２に示されるような特徴マップの複数の精製ペアから選択された１つであり得る）について説明される。特徴マップの複数の（つまり少なくとも２つの）精製ペアを有する場合に目を向ける前に、特徴マップのこの単一の（唯一の、または選択された）精製ペアを参照する。
【００４６】
これらのペアを「ベース」および「精製」と呼ぶことは、限定的では無く、これらのペアに対して、（例えば第１の、第２のなど）任意の他の名前が使用され得る。図２の図示された例では、特徴マップが徐々にダウンスケーリングされるため、ますます粗くなる解像度が得られる。したがって、特徴マップの各連続するペアは、好ましくは、特徴マップ階層（５０）の以前のレベルの特徴マップのペアに対して、ダウンスケーリングされる。
【００４７】
この様に、上記の工程では、特徴マップ階層と呼ばれる、特徴マップの階層的な連続（シーケンス）が生成される。換言すると、ニューラルネットワークに基づく特徴抽出器は、複数のスケーリングの特徴マップを生み出す。従って、特徴マップレベルの数は、少なくとも２である；つまり、変位ユニットと、少なくとも１つの変位精製ユニット（例えば、視差ユニットと、少なくとも１つの視差精製ユニット）が、本発明に係る装置に含まれる。本説明の全体にわたって、視差は、変位に関する主な例である。特徴マップレベルの数は、好ましくは２と１０との間で、特に３と８との間、より好ましくは３と５との間（そして、図２の例では４）である。特徴マップ階層は、特徴マップペアを含み、つまり、第１の入力データセット（例えば左画像）と、第２の入力データセット（例えば右画像）の各々に対応する特徴マップの「サブ階層」があり、つまり、階層は２つのブランチを有する；特徴マップの階層のあるレベルでペアを構成するサブ階層からの特徴マップは、同じサイズと解像度（ピクセル数）を有する。従って、両方の階層ブランチは、あるレベルの特徴マップのペアに貢献する；換言すると、あるレベルは、階層の２つのブランチへ拡張する。要約すると、特徴マップ階層は、レベルの各々に特徴マップのペアを伴う複数のレベルを有する、特徴マップコレクション（特徴マップセット）である；名前における「階層」の語は、この特徴マップセットが、そのレベルでますます粗くなる特徴マップを有することを説明している。
【００４８】
図２の例で（ステレオ画像ペアの）入力データセットのメンバーを左画像および右画像と呼ぶことは、ステレオペアの左および右画像が常に定義され得るため、これらが異なる視点から記録されることを示す。左および右画像はまた、それぞれ単に、第１および第２の画像、あるいは例えば第１のサイドおよび第２のサイドの画像と呼ばれても良い（左および右というこの見解は、特徴マップ、視差ユニットのサブユニットなどの差別化に対しても当てはまる）。図１は単一の特徴抽出器ブランチ（１５）を示す。図２では、本発明に従う方法と装置の実施形態のブロック図が示される。図２の実施形態では、図２の、左および右側に２つの特徴抽出器ブランチ（２７）と（２９）（左および右画像の各々のための別個のブランチ）をそれぞれ有する、ニューラルネットワークに基づく特徴抽出器（２５）が、活用される。
【００４９】
上の説明によれば、以前と呼ばれるレベルは、図２によるとより高いレベルである（図でより高位置にある）。そのため、「本」（あるいは、今調査されている／扱われている）レベルの特徴マップは、より高いレベルの特徴マップに対して、ダウンスケーリングされる。スケーリングのために適用される既定量は、自由に選択される（整数の）数であり得る。このスケーリング係数は、階層の全体にわたって必ずしも同じではない、というのも、例えば、図２の説明例では２と４の係数が適用されている。また、他のスケーリング係数が、特に２の累乗で、使用され得る。変位（例えば視差）マップの精製によって適用されたアップスケーリング係数は、これらのスケーリング係数に対応していなければならない。スケーリング係数のすべては２であり得るが、それは、はるかに遅い実行（より長いランタイム）を引き起こすだろうし、また、それは精製において、より多くを生み出さない。画像に２のスケーリング係数を適用すると、スケーリングされた画像の面積は、元の４分の１になる。そのため、ランタイムが元の画像で１００％であれば、２の係数でスケーリングされた画像では２５％となり、４の係数でスケーリングされた画像では６、２５％になる。従って、スケーリング手順全体で２のスケーリング係数を使用する代わりに、手順の最初で４のスケーリング係数が適用され、そして、残りのスケーリングに２のスケーリング係数が適用されると、ランタイムは大いに減少され得る。従って、異なるスケーリング係数がレベルペアの各々の間で適用されて良く、しかし、すべてのレベルで同じスケーリング係数を使用することも考えられる。
【００５０】
「本」レベルの特徴マップは、常に以前のレベルよりも粗い解像度（より低いピクセル数）と、図２で示されるように、好ましくは、特徴マップチャネルのより高い数を有する。図では、特徴マップのチャネル数は、特徴マップの厚さによって示される。チャネルの数の好ましい増加は、「本」レベルの特徴マップで、元の画像（左画像および右画像）の写真情報が、ほとんどの場合、以前のレベルよりもより多く処理されているという事実に対応する。チャネルの数はまた、調査されるべき異なる特徴にも対応する。いくつかの場合、チャネルの数を高く上げ過ぎることに価値はない。結果として、チャネルの数は、連続する２レベルで同じであってすら良い。従って、好ましい場合では、「本」レベルの特徴マップは、より少ない残りの写真様の情報を含み、そして、それらの情報構造は、最終の特徴マップ（最も低い解像度を伴い、つまり、これらは一般に最も粗い特徴マップである）に、以前のレベルの特徴マップよりも、より類似するようになる（「本」レベルの特徴マップは、より「特徴マップ様」となる）。さらに、ニューラルネットワークのますます深いレベル（ますます粗い特徴マップ）では、ますます高いレベルの特徴が認識される。例えば、開始レベルでは、いくつかの基礎的なオブジェクトだけ（例えば、ライン、パッチ）が差別化され得るが、階層でより深くなると、異なるオブジェクトが認識され得る（例えばヒト、車両など）。情報保存能力が維持されることになっているので、特徴マップ／画像サイズを減少させると、チャネル数は増加されなければならない。
【００５１】
その後、次の工程で、特徴マップのベースペアの第１の特徴マップを、特徴マップのベースペアの第２の特徴マップとマッチングする工程に基づいて、特徴マップ階層（５０）の特徴マップのベースペアのための、変位（例えば視差）生成演算で、初期変位マップが生成される（図２の実施形態では視差マップ（複数）、すなわち左および右の視差マップ（４６ｅ）（４８ｅ）、つまり１つだけでなく２つの初期視差マップ、が計算される）。特徴マップのベースペアは、図２の例示では、特徴マップ（２０ｅ）と（３０ｅ）のペアである。これらは、階層が、画像（２０ａ）と（３０ａ）から開始するレベルでますます粗くなる解像度の特徴マップを含むため、示される階層で最も粗い特徴マップとなる。従って、初期変位マップは、特徴マップのベース（一般に最後の、最も低い解像度の、最も粗い）ペアのために生成される。この初期変位マップ（例えば視差マップ）は、低い解像度のもあり、その解像度は、最終変位マップ（つまり図２では、ステレオ画像のための出力として適切に使用され得る視差マップ）を有するために、増加されることになる。
【００５２】
さらに、変位精製演算に対応する工程で、初期変位マップ（例えば視差マップ）は、少なくとも１つの空間次元および／または時間次元での全てにおいて、それぞれのアップスケーリング係数（つまり、それを用いて、初期変位マップが特徴マップの適切な精製ペアのスケールにアップスケーリングされ得る）で、特徴マップ階層（例示の特徴マップ階層（５０））の特徴マップ（例示の特徴マップ（２０ｄ）と（３０ｄ）で、詳細は図６の説明を参照）の精製ペアのスケールに、アップスケーリングされ、そして、初期変位マップの値は、アップスケーリングされた初期変位マップを生成するために、それぞれのアップスケーリング係数で掛けられ（特徴マップと変位［例えば視差］マップは、入力データセットと同じ空間および／または時間次元を有するが、これらは一般に異なる解像度を有する）、その後、特徴マップの精製ペアの第１の特徴マップの変形バージョンは、特徴マップ階層（５０）の特徴マップ（例示では特徴マップ（２０ｄ）（３０ｄ））の精製ペアの第１の特徴マップ上で、アップスケーリングされた初期変位マップを使用して、変形演算を実施することによって、生成される。従って、アップスケーリングする工程で、変位マップのそれぞれの次元は拡大され（例えば、２の係数でのアップスケーリングによって、アップスケーリングする工程で、２つのピクセル間の距離はその前より二倍大きくなる）、そして、変位マップの値は、（アップスケーリングされた視差マップで距離が大きくなるので）アップスケーリング係数で掛けられ、実施例の詳細は、以下を参照のこと。
【００５３】
変形演算の例示的な実現は、図６に関連して以下に詳細に説明されるだろう。一言で言えば、以前の変位（例えば視差）マップは、他のサイド特性マップとの比較のための上位互換性のある入力を有するために、階層の異なるレベルからの１サイド特性マップに適用される。換言すると、変形演算は、変位（例えば視差）マップの値によって、ピクセルベースで、特徴マップをシフトさせる。したがって、特徴マップの変形バージョンは、それが比較されることになる、他の特性マップに、さらに「より近く」なるだろう（より粗いレベルのために計算される変位［例えば視差］は、それ自体が、シフトのための近似であり、その助けにより、一方の特徴マップは、あるレベルのペアの他方の特徴マップに変換され得る）。そのため、変形の助けにより、ペアの別の特徴マップのための近似が得られる（これは、上で上位互換性のある入力と呼ばれた）。この近似が、ペアそれ自体の他の特徴マップと比較されると、（近似の）以前の変位（例えば視差）への補正が得られる。この変形演算は、あるレベルの変位精製ユニットで、適切な変位（例えば視差）精製を求める場合に、シフトのより限定的なセットだけを適用することを可能にする（詳細は図６の説明を参照）。一般に、変位マップ（例えば視差）は、入力または特徴マップの、空間または時間次元に対応する（本文書では、座標チャネルと呼ばれる）チャネルを有する（あるいは、制限がある場合はより少ない座標チャネルを有していても良い）。変位マップが特徴マップに適用される時、変位マップの座標チャネルに格納された変位値は、特徴マップのピクセルの各々のためのシフトオフセットとして適用される。このシフト演算は、これらの特徴チャネルを互いに混合させることなく、特徴マップの全ての特徴チャネルのために、独立して実行される。
【００５４】
本文書の文脈では、上に定義された定義が変形に使用される。他のアプローチでは、この工程は、事前変形と呼ばれても良く、そして同時に、ワード変形が他の演算に使用されても良い。
【００５５】
次に、特徴マップの精製ペアの第１の特徴マップと特徴マップの精製ペアの第２の特徴マップの変形バージョンのための補正変位マップを得るために、特徴マップの精製ペアの第１の特徴マップの変形バージョンは、特徴マップの精製ペアの第２の特徴マップとマッチングされ（この変位［例えば視差］マップは、変形演算での調整による、単なる、より粗い変位マップのための補正であり）、この補正変位マップは、アップスケーリングされた変位マップ（この工程が最初に実行される時、特徴マップの精製ペアのために、つまり、一般に次のレベルのために、図２の例では左および右の視差マップ（４６ｄ）（４８ｄ））を得るために、アップスケーリングされた初期変位マップに追加される。
【００５６】
そのため、（変位マップの特別ケースとして視差マップを議論する）図２の参照符号を使用する上記工程では、次のレベルの特徴マップペアは、既に手元にある視差マップ（これは、図２の一番下の、視差精製ユニット（４０ｄ））に補正をもたらすために、活用される。換言すると、少なくとも１つの視差精製ユニットで、コンパレータのそれぞれの階層構造は、以前の検出を精製する。目標は、視差（そして一般に、変位）マップの、解像度および精製を上げることである。このことは、本発明に係る装置の変位精製ユニット（例えば、視差精製ユニット）によって、そしてそれ故に、好ましくは本発明に係る方法によっても、行われる。特徴マップの（例示的な精製ペアとしての）その次に粗いペアは、特徴マップの（ベースペアの良い候補としての）最も粗いペアよりも、高い解像度（高いピクセル数）を有する。従って、より高い解像度の補正が、このデータを基にした視差マップのために得られることが可能である。したがって、初期視差マップと、特徴マップに基づいて得られた視差マップ補正（上では、補正視差マップと呼ばれる）を加える前に、初期視差マップのサイズがアップスケーリングされる。アップスケーリングは、最も粗い特徴マップと次に粗い特徴マップとの間に２つのスケーリングがあるため、図２の例では２の係数で実行される。このように、各レベル対して概して言えば、各レベルでの追加の前に、以前のレベルの視差マップは、以前のレベルおよび現在のレベルの特徴マップ間のスケーリング係数で、アップスケーリングされる。図示される実施形態のアップスケーリングの詳細については、図６も参照のこと。異なる視差マップの追加は、それらを互いに「ピクセルごとに」（より一般的には、データ要素ごとに）追加することを意味する；したがって、ピクセル中の視差（一般的には、変位）値は合計され、または、一般化された視差ベクトルの場合は、視差ベクトルの追加（一般的には、これらは変位ベクトル上で実行される）は、この工程で実行される。
【００５７】
上の工程で、２つの特徴マップのマッチングが実行される。マッチングは、２つの特徴マップ（変位／視差精製演算で、それらの１つが変形される）の比較であり、それに基づいて、２つの特徴マップの変位（例えば視差）マップが得られる（生成される）ことが可能である。換言すると、マッチング演算で、変位（例えば視差）は、２つの特徴マップに基づいて計算される。図示される実施形態では、マッチングは、（特徴マップの複数のシフトバージョンを生成するための）シフト値を適用することによって実行され、また、比較は、複数のシフトバージョンを考慮して実行される。マッチングのこのアプローチは、特に図３と６に関して、下に詳細に説明される。
【００５８】
上に、発明の基本的な構成要素、つまり特徴マップのベースペアと特徴マップの精製ペアとの間の対応、が説明される。一般的な場合、上述される特徴マップの精製ペアは、特徴マップのたった１つ、または特徴マップのベースペアに最も近いものである（詳細は以下を参照）。特徴マップの１を超える精製ペアを有する典型的な場合は、以下に詳述される。
【００５９】
このように、（図２の図示される実施形態でのような）好ましい実施形態では、特徴マップ（図２の例の、特徴マップ（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ）のペア）の少なくとも２つ（複数）の精製ペアは、（図２の例で参照番号（５０）を有する）特徴マップ階層に含まれる。換言すると、特徴マップの複数の精製ペアを有する場合が、以下に説明される。特徴マップの１を超える精製ペアを有することは有利である、なぜならば、この実施形態では、変位マップの精製が複数の段階で実行され、そしてより良い解像度の変位マップを得ることが可能であるからである。
【００６０】
この実施形態で、特徴マップ階層で特徴マップのベースペア（図２の例の、特徴マップのペア（２０ｅ）（３０ｅ））に最も近い、特徴マップの第１の精製ペア（図２の例の、特徴マップのペア（２０ｄ）（３０ｄ））は、特徴マップのベースペアよりもより粗くない解像度を有し、そして、特徴マップ階層で、特徴マップの第１の精製ペアよりも、特徴マップのベースペアにより近くない、特徴マップの各連続する精製ペア（図２の例の、特徴マップのペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ））は、それぞれの連続する特徴マップの精製ペアよりも、特徴マップ階層で特徴マップのベースペアにより近い、隣接する、特徴マップの精製ペアよりも、より粗くない解像度を有する。
【００６１】
さらに、本実施形態では、変位（例えば視差）精製演算（これは、上で導入された第１の変位精製演算である）が、特徴マップの第１の精製ペアを使用して実行され、それぞれのさらなる変位精製演算は、特徴マップの各連続する精製ペアのために実行される。ここで、各さらなる変位精製演算では、特徴マップのそれぞれの連続する精製ペアよりも、特徴マップ階層で特徴マップのベースペアに近い、特徴マップの隣接する精製ペアのために得られた更新変位マップは、それぞれの変位精製演算時におけるアップスケーリング中に、それぞれのアップスケーリング係数で、特徴マップの、それぞれの連続する精製ペアのスケールへアップスケーリングされる初期変位マップとして使用され、そして、更新初期変位マップの値はそれぞれのアップスケーリング係数で掛けられる。
【００６２】
もし、１以上の後続レベルが存在するなら、図２の参照番号と示された実施形態の内容を使用して、視差マップの精製が、各後続レベルで行わる（最も下から、つまり最も粗いレベルから後続するカウントで、図２のますます高い視差レベルで、解像度はますます高くなる）。上述されるように、発明はまた、特徴抽出器が２つのレベルを有する（つまり、入力画像に加えて、特徴マップの２レベル、すなわち、特徴マップのベースペアを有する１レベルと、特徴マップの精製ペアを有する１レベル、が存在する）場合をもカバーし、それに対して、ステレオ画像の画像ペアのための視差マップを得るのに適した視差階層で、視差ユニットと視差精製ユニットが対応する。実際、（入力データセットとベース特徴マップのレベルとの間の）階層で、さらなる中間レベルを有することは、より良いパフォーマンスに繋がり得る。もし、より多くのレベルが適用されると、視差マップのサイズの、より小さなジャンプによって、より多くの精製工程で、合成視差マップに到達する。従って、対応する特徴マップシーケンスは、精製のために適用されるより多くの特徴マップレベルを有する。
【００６３】
さらなる視差精製ユニットは、図２の例と比較して適用されても良く、つまり、そのようなユニットは、視差精製のための入力として、元の画像（左および右画像）と共に適用可能であり得る。しかしながら、そのような、さらなる視差精製ユニットの計算コストは高く（さらに、より長いランタイムを意味し）、したがって、それをスキップすることの方が好まれ得る。そのような追加的な視差精製ユニットが適用されない（図示された場合などの）場合は、大した不利益を産まない。そのため、効率性の観点から、視差精製ユニットを分析された画像のレベルから省略するのが単純である。したがって、視差精製ユニットの構造によって、方法は、特徴マップの最も粗くないペアを処理した後に、あるいは代替的に開始画像自体をさらに処理した後に、最終視差マップに到着する。
【００６４】
要約すると、本発明に係るアプローチで、複数の異なるレベルの特徴マップが、ニューラルネットワークに基づく特徴抽出器によって生成される。その上、変位（例えば視差）解析中に、変位の異なるレベルが、変位ユニットと変位精製ユニットによって、特徴マップの階層的レベルに基づいて生成される。結果として、特徴マップレベル、および開始画像のレベルの合計数は、変位ユニット、および少なくとも１つの変位精製ユニット（例えば、視差ユニット、および少なくとも１つの視差精製ユニット；あらゆるユニットは、それぞれの単一の特徴マップレベルで作動する）の合計数と等しい、またはそれより大きくなる。図２の例で、第１の数はより大きい（それは５であり、ユニットの数は４である）。例では、特徴マップレベルの数はユニットの数と等しい。
【００６５】
しかしながら、変位（精製）ユニットによって処理されないような特徴マップレベルもまた、配置されて良く、つまり、それらは、特徴マップのベースペアでも精製ペアでもなく、変位（精製）ユニットによって処理されないようなペアである。従って、特徴マップのベースペアよりも粗い解像度を有する追加的なレベルが、さらに考えられ得る。換言すると、視差（精製）ユニットの全ては、入力としてそれぞれのユニットによって処理され得る、特徴マップのそれぞれのペアを有する。
【００６６】
上記詳細によって、ある実施形態では、入力データセットペアはステレオ画像の画像のぺアであり、変位マップは視差マップであり、変位生成演算は視差生成演算であり、そして変位精製演算は視差精製演算である。
【００６７】
一般に、本発明に従い、階層の最後のものであるベース特徴マップと解析中の画像との間に、少なくとも１つの特徴マップ（中間物と呼ばれても良い）が存在する。
【００６８】
上の詳細から明確である通り、ある実施形態では、特徴マップは１以上の特徴チャネルを有し、そして、変位（例えば視差）生成演算で、および／または、変位（例えば視差）精製演算で、特徴マップの１以上の特徴チャネルを考慮することによってマッチングが実行され、（全てのＣチャネルが、コンパレータのコンボリューションに、つまりマッチングに、考慮される、図５を参照のこと）、そして、初期変位（例えば視差）マップと補正変位（例えば視差）マップが、入力データセット（これらは同じ次元を有する）の少なくとも１つの空間次元および／または時間次元の数と同じ、またはそれより少ない数の座標チャネルと共に、それぞれ生成される。
【００６９】
また、図２の実施形態に示されるように、左の初期視差マップ（４６ｅ）と右の初期視差マップ（４８ｅ）のペアが、視差生成演算で生成され、そして、左の初期視差マップと右の初期視差マップのペア、および、視差精製演算で生成された左の補正視差マップと右の補正視差マップのペアに基づいて、左の更新視差マップと右の更新視差マップのペアが、視差精製演算で生成される。（更新視差マップは、次のレベルの初期視差マップとして機能し得る）。より一般的には、第１の初期変位マップと第２の初期変位マップのペアは、変位生成演算において生成され、そして、第１の初期変位マップと第２の初期変位マップのペア、および、変位精製演算で生成された第１の補正変位マップと第２の補正変位マップのペアに基づいて、第１の更新変位マップと第２の更新変位マップのペアが、変位精製演算で生成される。
【００７０】
発明のいくつかの実施形態は、第１の入力データセットと第２の入力データセットの変位マップを生成するための装置に関係し（装置は、図２の例の、ステレオ画像ペアの左画像と右画像の視差マップを生成するのに適しており）、各入力データセットは、少なくとも１つの空間次元および／または時間次元を有する。装置の実施形態はまた、図２によっても説明される。装置は、本発明に係る方法の工程を実行するために適合される。本発明に係る装置は、（図２の例の助けによって説明される）ある実施形態で、
−ニューラルネットワークに基づく特徴抽出器（２５）であって、該抽出器は、特徴マップのベースペアと特徴マップの精製ペアを含む特徴マップ階層（５０）を生成するために（特徴マップのペア、つまり図２の同じ水平位置の左と右の特徴マップ、については上を参照）、第１の入力データセットと第２の入力データセット（図２の例の左画像（２０ａ）と右画像（３０ａ））を処理するように適合され、特徴マップの各ペアは特徴マップ階層（５０）の１レベルを構成し、特徴マップの精製ペアは少なくとも１つの空間次元及び／又は時間次元の全てにおいて、特徴マップの前記ベースペアよりも粗さが少ない解像度を有する、抽出器（２５）と；
−変位ユニット（具体的には、図２の例の視差ユニット（４０ｅ））であって、該変位ユニットは、特徴マップ階層（５０）の特徴マップのベースペアのための初期変位マップ（図２の実施形態の初期視差マップ、すなわち、上に詳述される左および右の視差マップ（４６ｅ）（４８ｅ））を生成するために、特徴マップのベースペアの第１の特徴マップを、特徴マップのベースペアの第２の特徴マップとマッチングさせるように適合された、第１のコンパレータユニット（第１のコンパレータユニット（６４）（７４）は、実施形態の図３に示される）を含む、変位ユニット（４０ｅ）と；
−変位精製ユニット（具体的には、図２の例の視差精製ユニット；図２では、３つの視差精製ユニットが示され、すなわち、視差精製ユニット（４０ｂ）（４０ｃ）（４０ｄ））と、を含んでおり、該変位精製ユニットは、
−アップスケーリングユニット（図６の実施形態でアップスケーリングユニット（１２０）と（１３０）で、詳細は下を参照）であって、アップスケーリングされた初期変位マップを生成するために、初期変位マップを、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、それぞれのアップスケーリング係数で、特徴マップ階層（５０）の特徴マップの精製ペア（図２の例の特徴マップ（２０ｄ）（３０ｄ））のスケールにアップスケーリングするよう適合され、かつ、初期変位マップの値をそれぞれのアップスケーリング係数で掛けるように適合された、アップスケーリングユニットと、
−変形ユニット（実施形態の変形ユニット（１２４）（１３４）は、図６を参照）であって、特徴マップ階層（５０）の特徴マップの精製ペア（図２で、特徴マップ（２０ｄ）（３０ｄ）は初期変位マップをスケーリングするために使用される精製ペアのメンバーである）の第１特徴マップ上のアップスケーリングされた初期変位マップを用いて、変形演算を実施することによって、特徴マップの精製ペアの第１の特徴マップの変形バージョンを生成するように適合された変形ユニットと、
−第２のコンパレータユニット（第２のコンパレータユニット（１２６）（１３６）は、図６の実施形態を参照；第１と第２のコンパレータユニットは同じ構造、例えば図５Ｂに示される選択肢と共に、図５Ａに示される構造、を有していても良い）であって、特徴マップの精製ペアの第１の特徴マップの変形バージョンと、特徴マップの精製ペアの第２の特徴マップのための補正変位マップ得るために、特徴マップの精製ペアの第１の特徴マップの変形バージョンを特徴マップの精製ペアの第２の特徴マップとマッチングさせるように適合された、第２のコンパレータユニットと、
−（特徴マップの精製ペアのための）更新変位マップを得るために、補正変位マップとアップスケーリングされた初期変位マップを追加するように適合された追加ユニット（図６の実施形態の追加ユニット（１２８）（１３８）を参照）と、を含む。
【００７１】
好ましい実施形態（例えば、視差生成に特化した図２の実施形態を参照）では、上述されるように、装置は、少なくとも１つのさらなる変位精製ユニット（上に導入された変位精製ユニット上にある；視差の特別ケースについては、図２の複数の視差精製ユニット（４０ｂ−４０ｄ）を参照）を含み、そして、特徴マップの少なくとも２つの精製ペア（図２の例の、特徴マップの精製ペア（２０ｂ）（３０ｂ）（２０ｃ）（３０ｃ）（２０ｄ）（３０ｄ））は、特徴マップ階層に含まれ、ここで、特徴マップ階層で特徴マップのベースペア（図２の例の、特徴マップのペア（２０ｄ）（３０ｄ））に最も近い、特徴マップの第１の精製ペア（図２の例で、特徴マップのペア（２０ｅ）（３０ｅ））は、特徴マップのベースペアよりも粗さが少ない解像度を有し、そして、特徴マップ階層で、特徴マップの第１の精製ペアよりも、特徴マップのベースペアから遠い特徴マップの各連続する精製ペアは、特徴マップ階層で、特徴マップのそれぞれの連続する精製ペアよりも特徴マップのベースペアに近い、特徴マップの隣接する精製ペアよりも粗さが少ない解像度を有する。
【００７２】
さらに、この実施形態で、変位精製ユニットは、特徴マップの第１の精製ペアに適用され、そして、それぞれのさらなる変位精製ユニットは、特徴マップの各連続する精製ペアに適用され、ここで、各さらなる変位精製ユニットでは、特徴マップのそれぞれの連続する精製ペアよりも、特徴マップ階層で、特徴マップのベースペアに近い、特徴マップの隣接する精製ペアのために得られた更新変位マップは、それぞれの変位精製演算におけるアップスケーリング中に、それぞれのアップスケーリング係数で、特徴マップのそれぞれの連続する精製ペアのスケールへアップスケーリングされる初期変位マップとして使用され、そして、更新初期変位マップの値は、それぞれのアップスケーリング係数で掛けられる。
【００７３】
従来技術アプローチに関しては、それらのいくつかは、ニューラルネットワークに基づく特徴抽出（特許文献９、非特許文献１、非特許文献２、非特許文献３、非特許文献４、非特許文献５、非特許文献６）を適用するが、本発明に準じて適用される視差（一般に、変位）精製は、それらのいずれにも開示されていない。換言すると、本発明に適用された構造は開示されておらず、上に引用される従来技術から導出され得ず、本発明に適用された構造では、中間レベル特性マップ（それらの１つは変形される）は、変位（視差）精製の責任を負うシーケンスに活用される。
【００７４】
上述の論述から、非特許文献３は、視差見積もりのために、非特許文献４のアプローチを適用する。非特許文献４においては、ニューラルネットワークに基づくアプローチは、オプティカルフロー（時間「ｔ」から時間「ｔ＋１」へのフロー）のために適用される。フィッシャーは、特徴階層の比較的早い段階［より粗さが少ない、相対的に高い解像度］のレベルで適用（これは、このアプローチでは、特徴マップの唯一の比較である）し、つまり、これらのレベルからの特徴マップのみが画像の両方のために計算される。特徴マップペアを使用する階層的精製は、このアプローチでは適用されない。
【００７５】
非特許文献１においては、ニューラルネットワークに基づく特徴抽出器はステレオ画像に活用される。このアプローチでは、ダウンサンプリングおよびアップサンプリングが次から次に適用される。本発明においては非特許文献１と異なり、視差値は、いわゆる「ソフトアーグミン（ｓｏｆｔ  ａｒｇｍｉｎ）」演算を使用して、コストボリュームから回帰される。非特許文献１アプローチでは、コストボリュームが生成され、そこで、参照と、全ての可能な視差値で変換された他の特徴マップとが連結される。従って、このアプローチでは、参照は常に第１のレベルであり、そして、それらは３ｘ３ｘ３カーネルを適用するので、このカーネルの時、参照は、参照上で連結される連続する２レベルへの影響のみを有する。したがって、不都合にも、全ての他のレベルが参照を「見る」わけではない。
【００７６】
非特許文献２のアプローチは、非特許文献１に非常に類似している。このアプローチでは、特徴ボリュームが生成される。特徴マップの１つは参照として選択され、また、異なる視差値は別の特徴マップに適用される。連結によって得られる特徴ボリュームでは、変換された特徴マップが２つの参照の間に挟まれる。このアプローチは不都合に複雑で、また、計算コストは高い。
【００７７】
さらに、非特許文献１と非特許文献２のアプローチとは対照的に、そのようなアプローチは、本発明のある実施形態に適用され（図５Ａと５Ｂを参照）、そこでは、−コンパレータの構造に従って−異なってシフトされた特徴マップが１つ１つ参照と比較されたかの様に結果は同等である。さらに、コンパレータユニットの構造的細部のおかげで、本発明のこの実施形態に適用されるアプローチは、計算コストの側面からとても有益である。詳細については、下の図５Ａと５Ｂの説明を参照。
【００７８】
Ｐａｎｇは、視差解析のための枠組みを開示し、それは本発明とは大いに異なる。Ｐａｎｇのこのアプローチでは、第１のニューラルネットワークは、粗い視差マップを作り出し、それは本発明のアプローチとは異なる方法で、第２のニューラルネットワークによって精製される。対照的に、階層的に適用された視差精製ユニットの助けにより、高解像度の視差マップが、枠組みの発明において得ることができる。Ｐａｎｇのアプローチでは、中間結果は、第１の段階においてのみ合計されるので、次のレベルでは予測のために使用されない。対照的に、本発明のアプローチでは、中間結果は変形のために適用され、従って、連続するレベルの計算コストは低下する。
【００７９】
非特許文献６においては、階層的視差精製は適用されない。このアプローチでは、損失は、手順のいくつかの点において訓練手順を制御するために、複数のレベルで調査される。カメラ画像の１つ（例えば左）のみが、このアプローチでニューラルネットワークによって処理される、つまり、左−右の特徴マップの階層は生成されない。
【００８０】
特許文献７では、機械学習またはニューラルネットワークに基づくアプローチは適用されない。したがって、特徴空間への変換は、この従来技術の文書には適用されない。代わりに、前もって定義されたフィルタを用いたコンボリューションが、その文書のアプローチに適用される。換言すると、特徴は、特許文献７では調査されない（視差が基本的に画像を特徴づけるので、それは必要ない）。不都合にも、本発明とは対照的に、特許文献７のアプローチは、重要な特徴に集中していない。しかし、マッチングは、特徴を基に、より有効的に実行することができる。例えば、より多くの同色パッチがステレオ画像ペアの画像に配置されている場合、画像スペース（つまり色に基づく）においてこれらの間の対応を作り出すことは、特徴スペース（つまり意味内容に基づく）において作り出すよりも、難しくなる。要約すると、視差は、重要な特徴が配置されているそれらの領域に対して正確でなくてはならないので、本発明に適用される、特徴に基づくマッチングは、より有益である。特徴の観点から、特徴の存在が低解像度でも回収することができるので、ベース特徴マップの低解像度は不都合では無いということが確認されている（特徴マップは、低解像度では、さらに豊富な内容を有し、さらに多くの特徴様の特性を有する。上を参照）。これは特許文献７のアプローチと対照的であり、そこでは、低解像度レベルは、より少ない情報を含む。さらに、特許文献７のアプローチでは、同じ内容が異なる解像度で比較される。
【００８１】
要約すると、既知のアプローチでは、特徴マップ（例えば視差マップ）の階層的な精製は、本発明におけるような方法、つまりあるレベルで、以前の、より粗い変位マップがそのレベルの特徴マップの助けによって精製される方法、では現れない。
【００８２】
図２は、本発明のアプローチの実施形態の高レベルアーキテクチャを示す。特徴マップの対応ペアは、示された例示的な実施形態において、特徴マップ（２０ｂ）と（３０ｂ）、（２０ｃ）と（３０ｃ）、（２０ｄ）と（３０ｄ）、および（２０ｅ）と（３０ｅ）によって構成される。示されている例示的な実施形態において、同じコンボリューションニューラルネットワーク（ＣＮＮ）が、ステレオペアの左画像と右画像の両方に適用される（これらは、２要素のバッチとして、または共有フィルタを有する２つの別々のＣＮＮにより処理できる）。多くの場合、ニューラルネットワークは、より多くの画像を同時に処理できるように実施されており、これらの画像は、並行して処理され、最後にすべての画像の特徴マップを得ることができる。このアプローチでは、ニューラルネットワークがコピーされ、一方のニューラルネットワークが左画像を処理し、もう一方が右画像を処理する場合と同じ結果が得られる。
【００８３】
通常、特徴マップペアのメンバーは、同じサイズ（すなわち、図２で示されたのと同じような空間次元、例えばＨ／４ｘＷ／４、Ｈ／８ｘＷ／８）および同じ数の特徴チャネル（ペアの各メンバーの厚さで示される）を有する。
【００８４】
抽出された特徴は、視差（全体として変位）画像を生成するか（視差ユニット（４０ｅ））、または精製する（視差精製ユニット（４０ｄ）（４０ｃ）（４０ｂ））ユニットに供給される。本文書で適用されるユニットは、モジュールと呼ばれることもある。図２に示されるように、視差は最初にベース（通常は最も粗い）スケール（特徴マップのベースペアに対する、すなわち特徴マップ（２０ｅ）および（３０ｅ）に対する）で計算され、精製ユニットを使用してこれらの予測をアップスケーリングし、改善する。これにより、図２に示されるような階層構造になる。
【００８５】
図２に示されている例において、視差ユニット（４０ｅ）の出力、すなわち、最も粗い（図において最も低い、ベース）左視差マップ（４６ｅ）（左視差マップの最低解像度を有する）および最も粗い（図において最も低い、ベース）右視差マップ（４８ｅ）（右視差マップの最低解像度を有する）のサイズは、入力左画像（２０ａ）と右画像（３０ａ）の１／３２部分である。次の２つのレベルにおいて、視差マップのサイズはそれぞれ１／１６部分および１／８部分である。
【００８６】
１／３２、１／１６などのスケールは単なる実証を目的とすることに注意されたい。スケールの任意のシーケンスを任意のインクリメントで使用できる（２倍だけでなく、コンボリューション層とプーリング層の導入に関して上記で詳述したサイズ縮小の態様を参照）。最後の視差精製ユニット（図２の参照番号（４０ｂ））の出力は、ネットワーク出力（視差マップ（４６）および（４８））、すなわち、本発明の方法および装置のそれぞれの実施形態によって得られた合成視差マップ（例においてマップのペアである）である。結果を改善するために、追加のズームまたはコンボリューションを適用してもよい。視差（精製）ユニットは、学習可能なコンボリューション（つまり、コンボリューションを実行するユニット、または単にコンボリューションユニット、以下の図４から図６を参照）も備えるので、タスクを実行するために訓練する必要がある。
【００８７】
本発明で適用されるユニットのシステム（特徴抽出器、変位／視差［精製］ユニット）は、好ましくは全微分可能であり、エンドツーエンドで学習可能であることに留意されたい。その後、全ての変位（精製）ユニットは、勾配を後ろの方に通すことができるため、通常のＣＮＮ層のように動作する。これは、タスクに正しい（すなわち適切な）特徴だけを学習させるのに役立つ。ＣＮＮは、一般的に使用されるＩｍａｇｅＮｅｔ（Ｏｌｇａ  Ｒｕｓｓａｋｏｖｓｋｙ  ｅｔ  ａｌ．．ＩｍａｇｅＮｅｔ  Ｌａｒｇｅ  Ｓｃａｌｅ  Ｖｉｓｕａｌ  Ｒｅｃｏｇｎｉｔｉｏｎ  Ｃｈａｌｌｅｎｇｅ，２０１４，ａｒＸｉｖ：１４０９．０５７５を参照）または他の適切なタスク上で事前訓練することができ、または事前訓練なしで（訓練フェーズを適用するだけで）使用できる。利用されるネットワークは、教師ありまたは教師なしの方法で教育することができる。教師ありのアプローチにおいて、入力画像と出力変位（視差など）マップはネットワークに提示される。実世界の高密度な変位／視差マップを取得することは非常に難しいため、それらは一般に、シミュレーションされたデータである。教師なしのアプローチにおいて、ネットワーク出力は、左画像を右に、右画像を左に変形させるために使用される。次に、それらを実際の画像と比較し、どの程度一致しているかに基づいて損失を概算する。結果を改善するために、追加の損失成分を追加できる（詳細については上記を参照）。
【００８８】
図３には、実施形態における視差ユニット（４０ｅ）のフローチャートが示される（アプローチにおいて、これは、階層内の特徴マップに、同時に、図の中で一番下にあるものに、最初に適用されたユニット（モジュール）である）。それは、同じ階層レベル（図２の一番下）から、入力として左特徴マップ（２０ｅ）および右特徴マップ（３０ｅ）を受け取る。次に、特徴マップ（２０ｅ）および（３０ｅ）のシフトバージョンが、それぞれ左シフターユニット（６２）および右シフターユニット（７２）で生成され（シフターユニットは、単にシフター、あるいはシフターモジュールと呼ばれることもある）、これらのシフトバージョンは、それぞれのコンパレータユニット（７４）（６４）（単にコンパレータ、あるいはコンパレータモジュールと呼ばれることもある；シフターユニット（６２）（７２）とコンパレータユニット（６４）（７４）との間には相互接続（６６）（６８）が存在する）に供給され、これらコンパレータユニットも学習可能である（以下を参照）。
【００８９】
したがって、初期視差マップ（示されている例において、より正確には、左右の初期視差マップのペア）の生成を担う視差ユニット（４０ｅ）は、以下のように動作する。図３の左側（右側も同等）からの操作の記載から始まり、第１の入力としての左特徴マップ（２０ｅ）が、シフターユニット（６２）とコンパレータユニット（６４）の両方に供給される。相互接続（６６）（６８）により、コンパレータユニット（６４）は、シフト右特徴マップ（３０ｅ）を、それに供給される左特徴マップ（２０ｅ）と比較するために使用される。シフターユニット（６２）は、シフトバージョンの左特徴マップ（２０ｅ）をコンパレータユニット（７４）に送り、コンパレータユニットに対して右特徴マップ（３０ｅ）が右側で供給される。シフターユニットは、グローバルシフトを特徴マップに適用する、すなわち、特徴マップの全てのピクセルに同じ量のシフトを適用する（より多くのシフトをシフターユニットに同時に適用できる；次の図の説明を参照）。
【００９０】
コンパレータユニット（７４）がそのタスク（すなわち、その出力に対して視差マップを持たせるための比較）を実行すると、コンパレータユニットは、左特徴マップ（２０ｅ）のシフトバージョンを、右特徴マップのシフトされていないバージョンと比較する。実際には、コンパレータユニットは、全てのピクセルに対してピクセルごとに最も適切なシフト（すなわち、与えられた左特徴マップのピクセルが右特徴マップのそれぞれのピクセルと最良の対応であるシフト）を選択し（または補間する、以下を参照）、これらのシフト値を、再度ピクセルごとに、各ピクセルのために使用して、視差マップへ供給し、例えば、右特徴マップ（２０ｅ）からのピクセル位置（すなわち、ペアのシフトされていない特徴マップへ）。したがって、右視差マップは、右特徴マップ（したがって、右画像）の観点からの視差値を含む。
【００９１】
コンパレータユニット（６４）は、左特徴マップ（２０ｅ）およびシフトバージョンの右特徴マップ（３０ｅ）に対して同じプロセスを実行する。それは左初期視差マップ（４６ｅ）を出力し、ここで、視差値が左特徴マップ（左画像）の側面から与えられる。
【００９２】
したがって、図３に示されている方法の実施形態において、変位（例えば視差）生成演算では
−特徴マップのベースペアの第１の特徴マップの複数のシフト特徴マップ（図２に示されている特徴マップ（２０ｅ）（３０ｅ））は、特徴マップのベースペアの第１の特徴マップに複数の異なるシフト（シフトが単一の数値で与えられる場合のシフト／シフト値、またはシフトが複数の座標で与えられる場合のシフト／シフトベクトル）を適用することによって生成され、および
−初期変位マップ（図２において左右の視差マップ（４６ｅ）（４８ｅ））は、特徴マップのベースペアの第１の特徴マップの複数のシフト特徴マップと特徴マップのベースペアの第２の特徴マップとの間のマッチングを調査することに基づいて、特徴マップのベースペアの第２の特徴マップの各データ要素（ピクセル）位置のための合成シフトを生成することによって得られる（したがって、マッチングに基づいて、合成シフト、すなわち、それぞれのシフトは各ピクセル位置のために得られ、その位置に対応する変位（例えば視差）値を与える）。
【００９３】
変位（例えば視差）マップの精製について、図６に示されている実施形態において同様のステップが使用される（同じようなシフト適用のスキームが実行される）。したがって、変位（例えば視差）精製演算において、
−特徴マップの精製ペアの第１の特徴マップの複数のシフト特徴マップ（図２において特徴マップ（２０ｄ）（３０ｄ））は、特徴マップの精製ペアの第１の特徴マップの変形バージョンに複数の異なるシフトを適用することによって生成され、
−補正変位マップは、特徴マップの精製ペアの第１の特徴マップの複数のシフト特徴マップと特徴マップの精製ペアの第２の特徴マップとの間のマッチングを調査することに基づいて、特徴マップの精製ペアの第２の特徴マップの各データ要素（ピクセル）位置のための合成シフトを生成することによって得られる。
【００９４】
これらの実施形態、すなわち、図３と図６に示されている方法ステップおよび装置ユニットは、別々にまたは組み合わせて適用することができる。したがって、簡単に、シフトアプローチは、任意の変位ユニットおよび少なくとも１つの変位精製ユニットに（それに応じて、例示的な視差ユニットおよび少なくとも１つの視差精製ユニットの中に）適用することができる。
【００９５】
図４はシフト演算の説明的なブロック図を示す（図４は説明のためのものである；以下のシフターユニット（６２）（７２）および他のシフターユニットは同じように機能する）。図４において、シフターユニット（６５）は、入力特徴マップ（６０）（図では「入力特徴」とラベル付けされる）を出力特徴マップ内の複数の位置にコピーする。各オフセットに対して、シフターユニット（６５）は入力特徴マップのシフトバージョンを作成する（図４の例において、シフトバージョン（７５）（７６）（７７）および（７８）をもたらす）。
【００９６】
入力特徴マップにおいて各オフセットおよび位置について、指定された位置は、指定されたオフセットによって変換され、出力特徴マップ内の位置を生成する。次に、入力位置の入力特徴マップの対応ピクセルが、出力位置の出力特徴マップにコピーされる。それにより、幾何学的に言えば、出力特徴マップは入力特徴マップの変換バージョンになる。出力特徴マップのエッジにピクセルがあり、その位置は入力特徴マップの有効なピクセル位置に対応していない。これらのピクセルの特徴は、特徴マップのチャネルインデックスのみに応じて、ゼロ、別の定数、または学習可能なパラメータである幾つかの予め定義された値に初期化される（例えば、各チャネルに対して、定数フィラー値があり、次に、対応入力ピクセルを持たない出力ピクセルがある場合、そのピクセルの特徴ベクトルは、これらのフィラー値で構成されるベクトルに初期化される）。視差の場合には、好ましくは、シフトごとに、水平シフトの値が１ピクセルずつ増減する（すなわち、特徴マップ全体が所定のピクセル数でグローバルにシフトした）。したがって、入力のないマップの側面には、ゼロまたは学習可能なベクトルでパディングすることができる。
【００９７】
シフターユニットはシフトの範囲であるパラメータを有し、図４においてシフトを数字で表示する場合、その範囲が［−４，０］である（範囲の定義は、より多くの次元に一般化できる）。これは、どの（整数）シフトが生成されるかを記載する。最後に、ベースレベルの非対称シフト（シフト値）が視差ユニット（４０ｅ）のシフターユニット（６２）（７２）によって生成される（視差は一方向のみであるため、全ての特徴は左右の画像間で同じ方向に「移動」する）（図３を参照）。視差精製ユニットのシフターユニット（例えば、視差精製ユニット（４０ｄ）におけるシフターユニット（１２２）と（１３２）、図６を参照）において、シフトは対称的である（これらのレベルにおいて、精製が生成され、それがどちらの符号であっても構わない）。シフターユニットには学習可能なパラメータがない。範囲の極値は、最大許容視差および最大許容補正係数に基づいて選択されることが好ましい。シフターユニットはチャネルの数にｎ＝ｍａｘｒａｎｇｅ−ｍｉｎｒａｎｇｅ＋１を掛ける、すなわち、上記の例において合計５つのシフト（シフト−１、−２および−３に加えて、シフト０、−４も含む）が適用される。
【００９８】
一般的な場合、上記のように、可能なシフトは任意のＮ次元ベクトルである可能性がある。それは特定のタスクに応じて（適合的になど）選択される。例えば、本文書に詳述した２Ｄ視差の場合、水平ベクトルのみが可能なシフトとして考慮される。オプティカルフローの場合、シフトベクトルは任意の方向にすることができる、例えば、任意の方向において２で変化する可能性がある２Ｄ座標（ｘとｙなど）のようなシフトを考慮に入れることができる。この特定の例ではｘとｙの両方が−２から２の範囲である可能性があるため、５ｘ５＝２５の異なるシフトを意味する。例えば３Ｄの場合、ｘ、ｙ、ｚ方向のいずれかにおいて２つの変化があれば、１２５の異なるシフトを意味する。この場合、確率に基づくシフトの重み付けされた値が得られるとき、可能なシフトベクトルが重み付けされた値に加算される。示されたように、シフトの概念は、単一の数から多次元ベクトルへ簡単な方法で一般化できる。
【００９９】
図５Ａは、実施形態におけるコンパレータの構造を示す。ここで、図５Ａおよび５Ｂに示されている値は、例示的なものであることに注意されたい（例えば、コンボリューションカーネルのサイズ）。コンパレータユニットは、第１の入力として、特徴マップ階層の一方の側（例えば、左側）から特徴マップを受信する。この特徴マップは、図５Ａでは参照番号（８０）で示され、「参照」とラベル付けされている。コンパレータユニットは、第２の入力として、同じレベルから特徴マップ階層のもう一方の側（例えば、一方が左側の場合は右側）のシフト特徴マップ（参照番号（８２）で示される）を受信する。
【０１００】
図５Ａおよび５Ｂにおいて、コンパレータユニットの演算は視差について示されている。しかしながら、適切な次元を選択することによって変位マップを得るために、図５Ａおよび５Ｂのスキームは一般的に適用できることが明らかである。さらに、図５Ａおよび５Ｂにはバッチ次元（Ｎで示される）が導入される。並行して、同じ方法で処理されるべき特殊タイプの入力から、利用可能な１つより多くのインスタンスが存在する場合、バッチ次元が使用される。例えば、１つより多くのステレオカメラペアが視差を生成するために車内に配置される場合、１つより多くの、例えばそれぞれの左入力画像および右入力画像は、利用可能である。その後、同じ処理パイプラインは、これらの入力データペアを並行して処理するために、よく使用することができる。
【０１０１】
したがって、図５Ａおよび５Ｂにおける実施形態において、その出力の上で、コンパレータユニットは視差マップを生成し、これは例えば、入力特徴と同じ空間次元を有する単一チャネルテンソル（すなわち特徴マップのペアのそれぞれ）である。一般に、変位マップも同じ方法で生成できる。図５Ａにおいて、次元Ｎｘ１ｘＨｘＷを有する視差マップ（１０５）は、コンパレータユニットの出力で得られ、一方、参照が次元ＮｘＣｘＨｘＷを有する。この場合の空間次元は、高さ（Ｈ）と幅（Ｗ）であり、参照特徴マップと視差において同じである。コンパレータユニットにおいて、チャネル数（Ｃ）はＣから１に減少し（すなわち、視差のチャネル数に、この例では１）、対応する詳細については以下を参照されたい。本文書全体に適用されるアプローチによると、特徴チャネルは特徴マップに対応し、座標チャネルは変位マップ（ここで、視差マップ）に対応する。したがって、特徴チャネルの数は、Ｃから、座標チャネルの数（すなわち変位マップ、ここでは視差マップのチャネル数）に減少し、これは、最終的に本例では１である座標チャネルの数である。
【０１０２】
コンパレータユニットは、参照として選択された特徴マップと、いくつかの異なるシフトが行われた同じレベルの他の特徴マップとの比較を実行する。したがって、図２に示された例において、視差マップには複数の座標チャネルがなく、全てのピクセルに対して単一の数値（視差値）がある。対照的に、変位マップには、２Ｄオプティカルフローの場合に、ピクセルごとに２つの値、すなわち２つの座標チャネルがあり、一方で、３Ｄ医療画像レジストレーションの場合に、ピクセルごとに３つの値、すなわち３つの座標チャネルがある。したがって、この場合、視差マップのテンソルは、コンパレータユニットで実行されるチャネル削減に従って、１つのチャネルを有するピクセルの行列である（次元における変化については、図５Ａを参照）。コンパレータユニットによって生成された視差マップは、そのピクセルごとに、参照と他の特徴マップとの間のシフト値（視差、変位）を示す（図５Ｂは、コンパレータユニットの視差を得るためのさまざまな可能性を示し、詳細は以下を参照）。
【０１０３】
図５Ａおよび５Ｂに示された実施形態において、コンパレータユニットには２つの異なるビルディングブロック（サブユニット）がある：第１のサブユニット（図５Ａのユニット（Ｃ１）を生成する比較マップ、第１のブロックと呼ばれることもある）は、全ての可能なシフト（すなわち異なるシフトを有する特徴マップ）を参照（すなわち、参照として選択されたレベルの特徴マップ）と比較し、他のサブユニットはこれらの比較結果を検討し、視差を出力する（第１の合成シフトは図５Ａのユニット（Ｃ２＿Ａ）を生成し、図５Ｂの第１、第２、第３の合成シフトは（Ｃ２＿Ａ）（Ｃ２＿Ｂ）および（Ｃ２＿Ｃ）を生成し、それは第２のブロックと呼ばれることもある）。
【０１０４】
以下に、図５Ａのコンパレータユニットの実施形態の実現例について詳細に説明する。図５Ａに示された例において、ＮｘＣｘＨｘＷの次元を有するテンソルによって表される参照特徴マップ（８０）は、コンパレータユニットの比較マップ生成ユニット（Ｃ１）への第１の入力として与えられる（このブランチ（図の右側）は、第１の計算ブランチとも呼ばれる）。ＮｘＳｘＣｘＨｘＷの次元を有するテンソルによって表される第２の入力シフト特徴マップ（８２）（シフトされた特徴としてラベル付けされる）は、コンパレータユニットに与えられる（ここで、Ｓは適用されたシフトの数であり；このブランチ（図の左側）は、第２の計算ブランチとも呼ばれる）。
【０１０５】
第１の計算ブランチでは、第１の比較コンボリューションユニット（８４）が参照特徴マップ（８０）に適用される（ユニット（８４）の名前で比較という言葉は、コンパレータに適用されることを単に示唆し、単にコンボリューションユニット、すなわちコンボリューション［演算］を実行するユニットと呼ばれることもある）；この演算の結果、参照特徴マップ（８０）のチャネル次元（Ｃ）がＣ’に変更される（つまり、第１の中間データの次元はＮｘＣ’ｘＨｘＷである）。Ｃ’はＣと等しいまたは等しくない。示されている例では、比較コンボリューションユニット（８４）（＃１とラベル付けされる）は、３ｘ３ピクセルの次元（簡単に言えば、３ｘ３の次元）を有するカーネルを備える。さらに、この例では、２次元のコンボリューション演算子が適用されており、したがって、演算のカーネルは、画像のいわゆる幅と高さの次元をスキャンする。
【０１０６】
第２の計算ブランチでは、「バッチへマージ」ユニット（９２）が入力シフト特徴マップに適用され、これは、いくつかの異なるシフトの並列処理アーキテクチャによって並列化された方法で計算を効果的に実行できることを容易にする（次元は、第４の中間データ（９３）におけるＮＳｘＣｘＨｘＷに変換される）。言い換えると、それぞれの可能なオフセットに入力特徴マップのシフトバージョンがあるため、これらの特徴マップをバッチ（すなわち同時に計算できる計算ブランチ）として扱い、コンボリューションユニットと同時に処理することができる（並行して、バッチの各要素に同じコンボリューション演算を適用する）。第２の比較コンボリューションユニット（９４）がこの「バッチ処理された」入力に適用され、ＮＳｘＣ’ｘＨｘＷの次元を有する第５の中間データ（９５）をもたらす。示されている例において、第２の比較コンボリューションユニット（９４）（＃２とラベル付けされる）は、第１の比較コンボリューションユニット（８４）（３ｘ３カーネルを有し、２Ｄコンボリューション演算である）と同じプロパティを有する。したがって、ユニット（８４）と（９４）の主なパラメータは同じであるが（どちらもチャネル数をＣからＣ’に変換する）、学習プロセス中に学習された重みは典型的に異なる。学習プロセス中に、これらのコンボリューションユニット（８４）（９４）の学習可能なパラメータは、コンパレータの機能を最適に実行することができる値に収束する。
【０１０７】
これらの比較コンボリューションユニット（８４）および（９４）は、参照特徴マップおよび各シフト特徴マップのチャネル連結バージョンのそれぞれに適用される単一のコンボリューションユニットの事実上「半分」であり、結果はコンパレータユニットの追加ユニット（９８）によって一緒に加算され、ここで、追加ユニット（９８）は好ましくはブロードキャスト追加演算を実行する。ここでは、半分の１つ（比較コンボリューションユニット（９４）を備えたブランチ）をＳ回実行する必要があるという事実を強調するために、これらを互いに分離しており、ここで、Ｓは可能なシフトオフセットの数である。一方で、もう１つ（比較コンボリューションユニット（８４）を備えたブランチ）は、参照特徴マップ上で１回だけ実行される必要がある。追加ユニット（９８）の後、結果は、各シフトオフセットに対して、シフト特徴マップと参照マップの連結バージョンに単一のコンボリューションを実行した場合と同じである。したがって、この比較コンボリューションユニット（８４）および（９４）の分離は、計算コストの観点から非常に有利である。
【０１０８】
計算ブランチにおけるそれぞれの比較コンボリューションユニット（８４）（９４）の後、データは、互いに互換性のあるデータ形状にされる。したがって、第２の計算ブランチにおいて、データが「バッチ処理された」フォーマットから変換されて戻されることによって（ユニット（９２）と（９６）は、第２の計算ブランチの次元の変更から明らかなように、互いに逆演算を実行する）、データ再形成ユニット（９６）が適用される（第６の中間データ（９７）において、データをＮｘＳｘＣｘＨｘＷのフォーマットに変換する）。
【０１０９】
第１の計算ブランチにおいてこれと互換性のあるデータフォーマットを有するために、ＮｘｌｘＣ’ｘＨｘＷの次元を有する第２の中間データを備える、すなわち、シフト次元で次元を展開するように、第１の次元展開ユニット（８６）（「ｄｉｍ展開」とラベル付けされる）が第１の中間データ（８５）に適用され、この段階ではその値は１である。その後、複製演算は、第１の計算ブランチにおける複製ユニット（８８）によって実行される。複製ユニット（８８）（ブロードキャストユニットと呼ばれることもある；「ブロードキャスト（タイル／レプリケート）」とラベル付けされる）の助けにより、第１の計算ブランチのデータは、追加ユニット（９８）（第３の中間データにおけるＮｘＳｘＣ’ｘＨｘＷの次元を有する）のために準備される、すなわち第２の計算ブランチにおいて適用されたシフトの数に応じて（仮想的に）複製された／展開された。
【０１１０】
典型的に、これはメモリ内のバイトの実際のレプリケーションだけではなく、概念的な（すなわちバーチャル）レプリケーションとしてのみ考えるべきである。言い換えると、ブロードキャスト追加演算を考慮する。そこでは、追加の左側（ＬＨＳ）と右側（ＲＨＳ）の次元が異なっている（そのうちの１つ、例えばＬＨＳはある次元で１つの平面だけで構成されており、もう一方はシフトの数に応じて複数の平面を有する場合がある）。追加演算中に、例えば、ＬＨＳは、ＲＨＳの形状に一致するように実際には複製されないが、コンピューターメモリ内のＬＨＳに関連するデータを実際に複製（コピー）することなく、ＲＨＳの各平面に追加される。したがって、複製ユニットは、好ましくは、データの実際のレプリケーションでなく、追加のためのこのような準備を象徴する。
【０１１１】
したがって、同じデータフォーマット（ＮｘＳｘＣ’ｘＨｘＷ）の結果として、２つの計算ブランチの最後で得られたデータは、追加ユニット（９８）によってブロードキャスト追加される（上記のように、ブロードキャスト演算は、複製ユニット（８８）においてバーチャルであることが好ましく、したがって、複製ユニットの演算は、ブロードキャスト追加演算の助けになる）。追加ユニット（９８）は、コンパレータユニットの比較マップ生成ユニット（Ｃ１）の出力を与える；その出力には、異なるシフトのための特徴マップの比較が含まれる。したがって、比較マップ生成ユニット（Ｃ１）のタスクは、各シフトを参照と比較することである。
【０１１２】
コンパレータユニットの比較マップ生成ユニット（Ｃ１）で適用される計算構造は、参照が各シフトと別々に比較される計算と同じ結果を与える（これは、上記のスキームより計算費用対効果がはるかに少ない）。言い換えると、上記の詳細な計算スキームによれば、比較マップ生成ユニット（Ｃ１）で適用される比較は、数学的に２つの計算ブランチに分離され、ここで、第１のブランチにおいて、コンボリューションは完全に参照に適用され、また、第２のブランチにおいて、コンボリューションはシフトされたデータに適用される。この分離により、参照の計算は、シフトごとに個別に実行されるのではなく、１回だけ実行されなければならない。これは、計算費用対効果の観点から大きな利点をもたらす。上で詳述したように適切なデータ再形成演算を適用すると、追加ユニット（９８）は、比較が全てのシフトに対して別々に実行された場合と同じ結果をもたらす。追加ユニット（９８）の出力は、以下に結果比較データマップと呼ばれる（その高さと幅は、コンパレータユニットが適用されている特徴マップと、コンパレータユニットの合成出力である視差マップの両方と同じである）。比較データマップは単純な補助中間データセットであるため（コンパレータの２つのブランチにおける第１と第２の中間比較データマップに加えて、以下を参照）、単に何かの中間データと呼ばれることもある。比較データマップは図５Ａには示されておらず、第７の中間データ（１０１）のみが示されており、その第７の中間データ（１０１）が、非線形性ユニット（９９）の適用によって比較データマップから得られ、比較マップ生成ユニット（Ｃ１）の最後のユニットである。第７の中間データ（１０１）のデータ構造は、同じＮｘＳｘＣ’ｘＨｘＷのままである。
【０１１３】
したがって、合成シフト生成ユニット（Ｃ２＿Ａ）において、「チャネルへ」のデータ再形成演算は完了する、すなわち、追加ユニット（９８）の出力データが、スタッキングユニット（１０２）によって、チャネルによって、スタックされる（「チャネルへマージ」とラベル付される）。この演算は、異なるシフトに対応するサブテンソルのチャネル次元をスタックする、すなわち、シフト次元をチャネル次元にマージする。したがって、８つの中間データ（１０３）におけるデータフォーマットは、ＮｘＳＣ’ｘＨｘＷである。この実施形態において、適切な視差値は、コンボリューションユニット（１０４）を調査するシフトの助けによって、このデータのテンソルから得られる（このアプローチでは、視差値は比較用に訓練されたコンボリューションユニットによって生成されるため、シフターユニットが使用するシフト／シフト値が整数であったとしても、非整数は、図５Ａに示されるコンパレータユニットによって視差値として生成することもできる）。
【０１１４】
したがって、この段階で、異なるシフトの結果を比較するべきである（チャネルへのスタッキングを使用）。図５Ａに示されるように、この好ましい例では、より小さなカーネルを有するコンボリューションユニット（例では、シフト調査コンボリューションユニット（１０４）における１ｘ１のカーネル）がより大量のデータ（すなわちスタックされたデータ）に適用され、より大きなカーネル（他のコンボリューションと比較して大きい）を有するコンボリューションユニットがバッチ処理されたシフト特徴マップに適用される（すなわち、図５Ａの第４の中間データ（９３）；ブロック（Ｃ１）におけるバッチ処理された特徴マップは、合成シフト生成ユニット（Ｃ２＿Ａ）におけるフルスタックされたデータよりも少量のデータを構成する）。コンボリューションユニットのカーネルサイズのこの比率は、計算費用対効果の観点から有利である。
【０１１５】
視差ユニットまたは視差精製ユニット（一般に、変位ユニットまたは変位精製ユニット）におけるコンパレータユニットは、異なるレベルの異なる特徴チャネル数に適用されることを留意すべきである。その上、コンパレータユニットは典型的に、初期または補正視差（一般に変位）マップを出力し、両方のチャネル数は、この例では１、または一般に座標チャネルの数に減少する。言い換えると、図５Ａに示されるように、視差情報を得るための比較は、全ての特徴チャネルに対して実行される。したがって、コンパレータユニットは、異なる特徴マップレベルに格納された特徴情報に対して感度が高い。それによって、視差マップ生成プロセスは、機械学習の利点を活用するものであり、左右の画像で同じ色やパターンを持つエッジや領域などの低レベルの機能だけでなく、例えば道路シーンの可能な内部セマンティック表現などの高レベルの機能も使用して、特に効率的になる。そのことは、２つの画像上の同じオブジェクトが互いに対してより正確に一致することができることを意味している。
【０１１６】
シフト調査コンボリューションユニット（１０４）は、好ましくは１ｘ１カーネルを有するコンボリューション演算を実行する。このコンボリューション機能は、（Ｃ１）によって実行された特徴マップの比較を通じて得られた情報から最適な変位値を計算することである。例において、適用される次元によれば、２次元コンボリューションを適用することが好ましい（高さおよび幅の次元をスイープする）。シフト調査コンボリューションユニット（１０４）は、全ての単一ピクセルに対してシフト値、すなわち、それぞれの位置における視差の値を出力する。シフト調査コンボリューションユニット（１０４）は、一度に１つのピクセルを調査し、チャネル次元に格納されたデータに基づく合成シフトとしての学習に基づいて適切なシフト（例えば、シフト値）を出力するように教示される。
【０１１７】
図５Ａは、入力特徴マップと出力視差との間の画像サイズの対応を示しており、合成シフトは、視差マップの全てのピクセル位置について得ることができる。したがって、図５Ａにおいて、コンパレータユニットの合成シフト生成ユニット（Ｃ２＿Ａ）の出力は、それぞれのレベルの視差マップであり、このマップから、参照特徴マップおよびシフト演算が行われた特徴マップが選択される。要約すると、合成シフト生成ユニット（Ｃ２＿Ａ）において、最適なシフトオフセットは、好ましくは１ｘ１コンボリューションの助けにより、各データ要素（ピクセル）に対して決定される。
【０１１８】
図５Ａのコンパレータの上記の詳細な実施形態を実装する利点は、高効率性である。追加ユニット（９８）は、全ての可能なシフトのコンボリューションバリアントに個別にコンボリューション参照（コンボリューションが適用された参照）を追加することを留意すべきである。前述のように、この演算は、参照特徴を出力シフトと１つずつ連結し、それらをコンボリューションし、結果を連結することと同等である。しかしながら、この後者のアプローチは、上記の実施形態のアプローチよりもはるかに多くの計算リソースを必要とし、参照のコンボリューションを何度も実行し（連結はその第１のステップとして実行されるため）、その結果、参照に適用される複数のコンボリューション演算に従って冗長な計算になる。対照的に、上記の実施形態のアプローチでは、コンボリューション演算は、参照に対して一度だけ適用される。
【０１１９】
比較マップ生成ユニット（Ｃ１）（同じ比較マップ生成ユニット（Ｃ１）が、図５Ｂの実施形態に適用される）のコンボリューションには非線形性がないことは、留意すべきである、すなわち、比較マップ生成ユニット（Ｃ１）の比較コンボリューションユニット（８４）（９４）は、非線形層が続かない。そのため、コンボリューションユニット（８４）（９４）をこのように分割できる。非線形性は、好ましくは、非線形性ユニット（９９）におけるブロードキャスト追加演算（例えば、比較マップ生成ユニット（Ｃ１）の出力での追加ユニット（９８）の後）の後に適用される。非線形性は、例えばＲｅＬＵの非線形性である、すなわち、追加ユニット（９８）の出力に適用されるＲｅＬＵ非線形層である。
【０１２０】
上で詳述したように、合成シフト生成ユニット（Ｃ２＿Ａ）において、１ｘ１カーネルとのコンボリューションが実行される。その理由は、これがはるかに多くのチャネル数で機能することであり（ここでシフトがチャネル次元にマージされるため）、また、これらで大きなコンボリューションカーネルを使用することは避けたい。チャネル数が高いことを考えると、コンボリューションカーネルが大きい（３ｘ３など）と、はるかに遅くなる。合成シフト生成ユニット（Ｃ２＿Ａ）におけるより大きなカーネルを使用することは、比較マップ生成ユニット（Ｃ１）で好ましくは３ｘ３カーネルを適用するので、不必要である。１ｘ１カーネルのさらなる利点は、単一データ要素（ピクセル）からの情報を必要とすることであり、これにより、このコンボリューションでより大きなカーネルを使用する必要もなくなる。ただし、比較マップ生成ユニット（Ｃ１）において、シフト次元がバッチ次元にマージされるため、チャネルサイズははるかに小さくなる。演算の数はバッチサイズに線形に比例し、チャネルサイズに正比例するため、結果として、合成シフト生成ユニット（Ｃ２＿Ａ）のシフト調査コンボリューションユニット（１０４）に適用されるカーネルが、比較マップ生成ユニット（Ｃ１）の比較コンボリューションユニット（８４）および（９４）に適用されるカーネルよりも小さい場合、パフォーマンスが向上する。
【０１２１】
要約すると、図５Ａおよび５Ｂに示されるような方法の実施形態では、初期変位マップとして適用するための出力変位マップを生成するための変位（例えば、視差）生成演算において、及び／又は補正変位マップとして適用するための出力変位マップを生成するための変位精製演算において、      
−複数のシフト特徴マップ（８２）（ここで、シフト数は、異なるシフトの数である）、および
−参照特徴マップ（８０）として機能する他の特徴マップ（すなわち、他の特徴マップは、参照特徴マップの役割を果たす、したがって、以下この名称で呼ばれる）
のマッチングは、以下のステップで実行される：
−第１の中間比較データマップを得るために、参照特徴マップ（８０）に第１の比較コンボリューションユニット（８４）を適用し、
−複数の第２の中間比較データマップを得るために、複数のシフト特徴マップ（８２）のそれぞれに第２の比較コンボリューションユニット（９４）を適用し、
−合成比較データマップを得るために、追加演算において、異なるシフトの数に従って複製された（すなわち、上で詳述したように、バーチャルに複製された、または物理的に複製された）第１の中間比較データマップおよび複数の第２の中間比較データマップを追加し、
−少なくとも１つの空間次元及び／又は時間次元の全てにおいて、合成比較データマップの各データ要素に対してそれぞれの合成シフトを生成し、出力変位マップにおける対応データ要素にそれぞれの合成シフトの全てを割り当てる（すなわち、合成比較データマップにおけるデータ要素による）。
【０１２２】
上記の実施形態において（図５Ａに示されている実施形態のように、すなわち、合成シフト生成ユニット（Ｃ２＿Ａ）を含むバリエーションにおいて）、好ましくは、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、合成比較データマップの各データ要素のためのそれぞれの合成シフトは、合成比較データマップにシフト調査コンボリューションユニット（１０４）を適用することによって生成される。さらに、この実施形態において、好ましくは、特徴マップは１つ以上の特徴チャネルを有し、合成比較データマップは、シフト調査コンボリューションユニット（１０４）を適用する前に、特徴マップの１つ以上の特徴チャネルによってスタックされる。
【０１２３】
上記の実施形態のさらなるバリエーションでは（合成シフト生成ユニット（Ｃ２＿Ｂ）を含む実施形態のように）、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、合成比較データマップの各データ要素のためのそれぞれの合成シフトは、複数の異なるシフトから最も一致するシフトを選択することによって生成される（詳細およびその他のオプションについては、図５Ｂの説明を参照）。
【０１２４】
上記の実施形態のさらに別のバリエーションでは（合成シフト生成ユニット（Ｃ２＿Ｃ）を含む実施形態のように）、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、合成比較データマップの各データ要素のためのそれぞれの合成シフトは、以下のように生成される：
−異なるシフト値ごとに複数の変位ビンを確立し、
−変位ビンごとに変位確率を生成し、合成比較データマップに基づいて変位確率を計算し、および
−対応変位確率によってシフト値を重み付けすることで、合成シフトを得る（詳細およびその他のオプションについては、図５Ｂの説明を参照）。
【０１２５】
好ましくは、上記の実施形態のあらゆるバリエーションでは、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、合成比較データマップの各データ要素のためのそれぞれの合成シフトを生成する前に、非線形層が合成比較データマップに適用される。
【０１２６】
図５Ｂは、視差を生成するための３つの代替の可能性を示す（合成シフト生成ユニット（Ｃ２＿Ａ）（Ｃ２＿Ｂ）および（Ｃ２＿Ｃ）の全ては、次元Ｎｘ１ｘＨｘＷを有する視差マップを出力する；これらのアプローチは、もちろん、変位生成に一般化することができる）。したがって、合成シフト生成ユニット（Ｃ２＿Ａ）（Ｃ２＿Ｂ）および（Ｃ２＿Ｃ）は、視差をもたらすために第７の中間データ（１０１）に適用可能な他の可能性である。これら全ての可能性を有することが可能であり、また、設定に基づいて、そのうちの１つが選択される。あるいは、合成シフト生成ユニット（Ｃ２＿Ａ）（図５Ａの実施形態のように）、（Ｃ２＿Ｂ）および（Ｃ２＿Ｃ）のうちの１つのみを実施することも可能である。
【０１２７】
図５Ｂの合成シフト生成ユニット（Ｃ２＿Ａ）は、図５Ａに示されているものと同じである（詳細については上記を参照）。図５Ｂの別の代替案は、合成シフト生成ユニット（Ｃ２＿Ｂ）である。合成シフト生成ユニット（Ｃ２＿Ｂ）に示されているように、代替案であるＣ’は１でなければない、すなわち、コンボリューションユニット（８４）と（９４）を比較することにより、比較マップ生成ユニット（Ｃ１）におけるチャネル数をＣから１（Ｃ’）に減らす必要がある。これは、これらのコンボリューションの出力チャネルの数を１に設定することで実行できる。合成シフト生成ユニット（Ｃ２＿Ｂ）において、第１の中間ユニット（１０６）は第７の中間データ（１０１）に適用され、ここで、チャネル次元（Ｃ’が１である）がスクイーズされる、すなわち、基礎データ自体を変更せずに削除し（その結果、データフォーマットＮｘＳｘＨｘＷを得る）、その後、同じ第１の中間ユニット（１０６）において、アーグマックス（図５Ｂに示す）またはアーグミン演算がＳに適用され、比較マップ生成ユニット（Ｃ１）での比較の結果として、最大または最小の比較値が最良の対応でシフトに対応するべきであるかどうかに応じる。アーグマックスまたはアーグミンのいずれかを使用できるが、ネットワークを訓練する前に、最初にそれらの中の１つを決定する必要がある。アーグマックスまたはアーグミンを使用すると、比較マップ生成ユニット（Ｃ１）が類似性スコア（アーグマックス）または非類似性スコア（アーグミン）を出力するかどうかが決まる。なぜなら、コンパレータユニットの訓練段階に、アーグマックスまたはアーグミンを選択すると、比較コンボリューションユニットがより良いシフトのために、より大きなまたはより小さなスコアを出力することを学ぶからである。アーグマックスまたはアーグミンを適用することにより、シフト次元のサイズがＳから１に小さくなる。したがって、このアーグマックスまたはアーグミン関数は、参照特徴マップと異なるシフトが適用された他の特徴マップとの間で最良の対応が達成されることで、シフトを選択する。言い換えると、合成シフト生成ユニット（Ｃ２＿Ｂ）において、次元Ｎｘ１ｘＨｘＷを有する視差（１１０）の各データ要素に対して最良のシフトが選択される。
【０１２８】
図５Ｂの合成シフト生成ユニット（Ｃ２＿Ｃ）によって示される代替の実施形態において、視差は、シフトオフセットを確率重み付けと組み合わせることに基づいて生成される、すなわち、確率アプローチと離散ビンは、視差マップのそれぞれのピクセル位置に割り当てられた合成シフト（シフト値またはより多くの次元におけるシフトベクトル）を推定（生成、計算）するために使用される。この代替案では、合成シフト生成ユニット（Ｃ２＿Ｂ）と同様に、チャネル数Ｃは１でなければならない。その後、チャネル次元は、第２の中間ユニット（１０８）でスクイーズされる、すなわち、合成シフト生成ユニット（Ｃ２＿Ｂ）と同様に、スクイーズ後のデータフォーマットは、ＮｘＳｘＨｘＷとなる。
【０１２９】
合成シフト生成ユニット（Ｃ２＿Ｃ）の場合、出力チャネルの数は、調査中のレベルでの視差の可能な整数値の数、すなわち、比較マップ生成ユニット（Ｃ１）において、適用されたシフトの数に対応する；これらの値のそれぞれについて、離散ビンが確立される。チャネル変数がスクイーズされ、且つ可能なシフトの数がＳであるため、確率データ（１１４）の次元はＮｘＳｘＨｘＷである、すなわち、各バッチ、各シフト値、および高さと幅の次元の各ピクセル（データ要素）の確率を得る。シフトオフセットデータ（１１２）において、同じ変数を有するテンソルが確立され、１ｘＳｘ１ｘ１の次元を有する。シフト次元において、全ての可能なシフト値がある。シフトオフセットデータ（１１２）と確率データ（１１４）を乗算ユニット（１１６）の中で互いに掛け合わせ、加算ユニット（１１８）の中で乗算を合計すると、視差の各データ要素のための結果を得ることができ、その結果は、可能なシフト値の重み付けの合計およびそれぞれのシフト値のビンに対応する確率である。これにより、上記の詳述した方法によれば、データのシフト次元が１に減少し、次元Ｎｘ１ｘＨｘＷで視差（１１５）が得られる。
【０１３０】
第２の中間ユニット（１０８）のラベルによれば、確率データ（１１４）の確率は、ソフトマックス関数の助けによって得られる、すなわち、いわゆるソフトマックス関数は、現在のアプローチにおいて、シフト次元によって適用される。ソフトマックス関数の出力は、視差がビンに対応する値を有する確率を与えると期待される。各バッチ要素の各データ要素に対して、ソフトマックス関数は、第７の中間データ（１０１）のシフト次元（Ｓ）に作用し、ソフトマックス関数は、次のように定義される。
【０１３１】
【数１】
2021525408.tif 000003
【０１３２】
ここで、ソフトマックス関数の入力は、ｚｉ（ｉ：１．．Ｓ）で示される利用可能なシフト値に対応するスコアであり、第７の中間データ１０１のシフト次元を含み、およびｐｉ（ｉ：１．．Ｓ）は確率である、すなわち、ソフトマックス演算の出力である。ここで、Ｓは異なるシフト値の数、すなわちビンの数である。次に、結果の変位値（または一般にベクトル）は、ユニット（１１６）の中の全てのビンのそれぞれのビンの視差値で確率を掛けて、そしてユニット（１１８）における重み付けされた視差値を合計することによって得られる。次の例を参照。
【０１３３】
一例では、ピクセルの可能な視差（シフト）は０から３の間であり、出力確率は［０．０，０．２，０．７，０．１］であり、調査されたピクセルのためのコンパレータの出力は、合計として計算される（［０．０，０．２，０．７，０．１］  ．＊  ［０，１，２，３］）＝１．９。ここで、「＊」はベクトルの要素を１つずつ掛け合わせることを表わす。したがって、このアプローチにより、各ピクセルの視差値についてより良い推定を得ることができる。
【０１３４】
図６は、視差精製ユニットの実施形態を示す。図６では、示されたものが視差精製ユニット（４０ｄ）であることが示されているが、好ましく同じ構造を有するので、視差精製ユニット（４０ｂ）（４０ｃ）（４０ｄ）であってもよい。示されている視差精製ユニット（４０ｄ）は、前の階層レベルから左右の視差マップ（４６ｅ）（４８ｅ）を受け取ると、出力として、新しく精製された左右の視差マップ（４６ｄ）（４８ｄ）を作成する（入力および出力は、図６の矢印で示される）。視差精製ユニット（４０ｄ）の構造は、図３の視差ユニット（４０ｅ）と同様である。
【０１３５】
第一に、入力視差マップ（４６ｅ）（４８ｅ）は、アップスケーリングユニット（１２０）（１３０）において、次のスケールにアップスケーリングされる（アップサンプリングされる）（示されている例示では、スケール２であるため、ユニット（１２０）（１３０）は「ｘ２」でラベル付けされる）。示されている例において、アップスケーリングは空間次元で行われる、すなわち、２つのレベル間の特徴マップの他の方向のスケーリング（ダウンスケーリング）に応じた高さと幅で行われる。アップスケーリング係数は、例えば、一部のレベルが階層からスキップされた場合、２の累乗である。２の累乗の数がアップスケーリング係数の典型的な選択であるが、他の数（特に整数）をアップスケーリング係数として使用できる（特徴マップの対応ペアのスケールを考慮に入れると、精製に適用される特徴マップのペアは、それぞれのレベルの変位マップに対応するべきである；出力視差マップの可能なアップスケーリングについては、以下を参照）。入力視差マップのアップスケーリング（アップサンプリング）は、任意のアップサンプリング方法（例えば、バイリニア補間または最近隣補間、デコンボリューション、または最近隣補間とその後のディープワイス・コンボリューションを含む方法など）。アップスケーリングには、視差値（または一般に変位ベクトル）のアップスケーリング係数による乗算を含める必要があり、特徴マップ（図６の（２０ｄ）および（３０ｄ））が、前の入力視差（図６の（４６ｅ）および（４８ｅ））を計算したときに使用された特徴マップよりも特定の係数で大きいため、前に一致した２つのデータ要素間の変位にも同じアップスケーリング係数を掛ける必要がある。
【０１３６】
以下では、左アップスケーリングユニット（１２０）から始まり、右変形ユニット（１３４）および右シフターユニット（１３２）を通り、左コンパレータユニット（１２６）および左追加ユニット（１２８）で終わる視差精製ユニット（４０ｄ）の演算について説明する。視差精製ユニット（４０ｄ）の構造は、左から右へ、またはその逆に対称であるため、この説明は、右アップスケーリングユニット（１３０）から始まり、左変形ユニット（１２４）および左シフターユニット（１２２）を通り、右コンパレータユニットおよび右追加ユニット（１３８）で終わるルートにも適用することができる。
【０１３７】
左アップスケーリングユニット（１２０）の出力は、右特徴マップ（３０ｄ）を変形するために変形ユニット（１３４）に与えられ、この出力も追加ユニット（１２８）に転送される。追加ユニットは、視差マップ（４６ｅ）のアップスケーリングされたバージョンおよび（左）コンパレータユニット（１２６）によって生成された視差（精製）に基づいて、視差精製ユニット（４０ｄ）の出力左視差マップ（４６ｄ）を生成する。次のレベルの右視差マップ（４８ｄ）は、アップスケーリングユニット（１３０）の出力および（右）コンパレータユニット（１３６）の出力に追加ユニット（１３８）を使用して同様の方法で生成される。変形ユニット（１２４）および（１３４）は、上で定義されるように変形演算を実行する、すなわち、大まかに言うと、視差マップは、これらの演算において特徴マップに適用される。
【０１３８】
左アップスケーリングユニット（１２０）の出力は、右変形ユニット（１３４）に送られる。変形ユニット（１３４）において、その入力、すなわち右特徴マップ（３０ｄ）は、前のレベルの視差マップ（４６ｅ）のアップスケーリングされたバージョンによって変形される。言い換えると、現在のレベルの右特徴マップは、より低い近隣のレベルのアップスケーリングされた視差の助けによって変形される、すなわち、図において下位レベルの視差は、下位レベルの視差マップが最終的な視差の適切な近似値であるため（これにより、非参照特徴は空間的に参照特徴に近づく）、左特徴マップとよく比較できるように、現在のレベルの右特徴マップに適用される。現在のレベルの右特徴マップ（３０ｄ）の変形バージョンは、適切な数のシフトを生成し、変形された右特徴マップのシフトされたセットを左コンパレータユニット（１２６）に送る右シフターユニット（１３２）に与えられる（視差ユニット（４０ｅ）と同様に、相互接続（１４２）および（１４４）は、シフターユニットと反対側のコンパレータユニットとの間に適用され、図６を参照）。
【０１３９】
それぞれのシフターユニットの前に変形ユニットを使用すると、比較的少数の対称シフトを適用できる（右特徴マップの変形バージョンは同じレベルの左特徴マップに非常に近いため、その逆も同様である）。言い換えると、ここでのシフターユニット（シフトブロック）は対称シフトを生成するため、任意の方向の粗い視差マップを改善できる。以下の理由により、視差精製ユニットが非常に効果的になる（言い換えると、コンパレータは少数のシフトを処理するだけで、パフォーマンスが向上する）。
【０１４０】
左コンパレータユニットは、入力として、参照としての左特徴マップ（２０ｄ）および前のレベル（図の下位）左視差マップ（４６）によって変形された右特徴マップ（３０ｄ）のシフトバージョンを得る。このタイプの変形が使用されるので、変形ユニット（１３４）は、現在の左特徴マップのための良好な近似値を出力し、それは次に、現在のレベルの実際の左特徴マップ（２０ｄ）と比較される。したがって、コンパレータの出力は、このような視差マップ補正になり、これにより、前のレベル（これはそれ自体のレベルでの良い推定である）のより粗い推定が、より細かい解像度のデータの助けによって（すなわち、より高い解像度の特徴マップの助けによって）精製される。簡略化された例において、より粗いレベルで、そのレベルに対応する特徴マップの小さいペア上にあるオブジェクトの４ピクセルシフトがあることがわかる。したがって、精製の次のレベルでは、シフトは１６ピクセルになり（４のアップスケーリング係数を使用）、しかし、次のレベルの特徴マップでよりよく観察できるため；それは次に精製され、よって、シフトの予測は次のレベルで１５になる可能性がある。
【０１４１】
図２の実現において（図６の実施形態が、視差精製ユニット（４０ｂ）（４０ｃ）（４０ｄ）の全てに適用される場合）、最終の出力視差マップ（４６）および（４８）のサイズは、入力画像（左画像（２０ａ）および右画像（３０ａ））と比較して４にダウンスケーリングされる。もちろん、入力画像と同じサイズの視差マップを得ることもできる。このような視差マップを得る場合は、視差精製ユニット（４０ｂ）の出力にアップスケーリングユニット（図６のアップスケーリングユニット（１２０）および（１３０）と同様）を適用する必要がある；ここで、アップスケーリングユニットは４のアップスケーリング係数を適用し、視差マップの解像度と、同時に、同じアップスケーリング係数による変位ベクトルの大きさ（例えば、視差値）の両方を増加させる。
【０１４２】
したがって、追加ユニット（１２８）において、コンパレータユニット（１２６）で得られた視差マップ補正と、前のレベルの視差マップ（４６ｅ）のアップスケーリングされたバージョンが追加され、それにより、精製視差マップが得られる。上記のアプローチによれば、前のレベルの視差マップは、視差精製ユニット（４０ｄ）においてピクセルごとに補正される。
【０１４３】
要約すると、階層構造が本発明に係る方法および装置に適用されるので、一実施形態では、各レベルで、対応する特徴マップ間の少数の可能なシフトのみを処理する必要がある。このため、それぞれの実施形態の方法および装置は、２つの画像間の視差マップを計算するための迅速な方法を提供する。全ての特徴スケールで、左右の特徴は特別な方法で比較される。この方法は、迅速であり、学習が容易であり、且つカメラ調整の小さなエラーに対して高い耐性を有する。
【０１４４】
本発明に係る方法および装置では、階層構造は、異なるスケールでベースネットワークの特徴を利用する。上記の考慮事項を要約すると、次のスケール上のコンパレータは、残差補正係数のみを処理する必要があり、その結果、適用されるべきシフトの数がはるかに少なくなり、実行時間が大幅に早くなる。特徴マップを互いに比較する場合、左特徴マップと右特徴マップの一方が参照（Ｆｒｅｆ）として選択され、もう一方（Ｆｃ）が参照と比較される。Ｆｃは、特徴階層の特定のレベル（典型的に、レベルごとに最大５つの可能な視差値）で全ての可能な視差値（すなわち、ベクトルで表すこともできるシフト）によってシフトされ、全てのシフトでＦｒｅｆと比較される。
【０１４５】
上記のように、本発明の実施形態の一部は、変位マップを生成するための（例えば、ステレオ画像ペアの視差マップを生成するための）装置に関する。本発明に係る方法の上記の実施形態は、本発明に係る装置の実施形態として記載することができる。
【０１４６】
したがって、本発明の装置の実施形態（図３を参照）において、
−変位ユニット（４０ｅ）は、特徴マップのベースペアの第１の特徴マップに複数の異なるシフトを適用することによって、特徴マップのベースペアの第１の特徴マップの複数のシフト特徴マップを生成するために適合された第１のシフターユニット（図３の視差ユニット（４０ｅ）およびシフターユニット（６２）（６７））を含み、および
―第１のコンパレータユニット（図３のコンパレータユニット（６４）（７４））は、特徴マップのベースペアの第１の特徴マップの複数のシフト特徴マップと特徴マップのベースペアの第２の特徴マップとの間のマッチングを調査することに基づいて、特徴マップのベースペアの第２の特徴マップの各データ要素（ピクセル）位置のための合成シフトを生成することによって、初期変位マップを得るために適合される。
を備える。
【０１４７】
本発明の装置のさらなる実施形態（前の実施形態と組み合わせることが可能；図６を参照）において、
−変位精製ユニット（図２の視差精製ユニット（４０ｂ）（４０ｃ）（４０ｄ）、またはこれらのうちの１つ以上）は、特徴マップの精製ペアの第１の特徴マップの変形バージョンに複数の異なるシフトを適用することによって、特徴マップの精製ペアの第１の特徴マップの複数のシフト特徴マップを生成するために、適合された第２のシフターユニット（図６のシフターユニット（１２２）（１３２））を含み、および
−第２のコンパレータユニット（図６のコンパレータユニット（１２６）（１３６））は、特徴マップのベースペアの第１の特徴マップの複数のシフト特徴マップと特徴マップのベースペアの第２の特徴マップとの間のマッチングを調査することに基づいて、特徴マップの精製ペアの第２の特徴マップの各データ要素（ピクセル）位置のための合成シフトを生成することによって、補正変位マップを得るために適合される。
【０１４８】
第１および第２の入力データセットと同様に、「第１」および「第２」の指定用語は、第１／第２のコンパレータユニットまたは第１／第２のシフターユニットについて言及するときにのみ、変位ユニットおよび変位精製ユニット（例えば、視差ユニットと視差精製ユニット）の両方が各自のサブユニットを有することを表わす。この命題は、内部構造（実現）自体がそれぞれの第１のユニットと第２のユニットで異なる必要があることを意味するものではない。実際には、それぞれの第１および第２のシフターユニットの内部構造は、同じであることが好ましい；コンパレータユニットにおいて、例えば、コンボリューションの好ましく適用された重み付け（図５Ａおよび５Ｂの第１と第２の比較コンボリューションユニット（８４）（９４）を参照）が異なっていてもよい。
【０１４９】
好ましくは、前の２つの実施形態のいずれかにおいて（図５Ａおよび５Ｂを参照）、そのシフト数が異なるシフト値の数である複数のシフト特徴マップを、参照特徴マップ（８０）として機能する第２の特徴マップとマッチングさせるために、
−初期変位マップとして適用するための出力変位マップを生成するための第１のコンパレータユニット、及び／又は補正変位マップとして適用するための出力変位マップを生成するための第２のコンパレータユニットは、
−第１の中間比較データマップを得るために、参照特徴マップ（８０）に適用するように適合された第１の比較コンボリューションユニット（８４）と、
−複数の第２の中間比較データマップを得るために、複数のシフト特徴マップそれぞれに適用するように適合された第２の比較コンボリューションユニット（９４）と、
−合成比較データマップを得るために、異なるシフトの数および複数の第２の中間比較データマップの数に従って（バーチャルにまたは物理的に）複製された第１の中間比較データマップを追加するように、適合された追加ユニット（９８）と、
−合成シフト生成ユニット（例えば、図５Ｂの合成シフト生成ユニット（Ｃ２＿Ａ）（Ｃ２＿Ｂ）（Ｃ２＿Ｃ）を参照）であって、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、合成比較データマップの各データ要素のそれぞれの合成シフトを生成するように、且つ出力変位マップにおける対応データ要素（すなわち、合成比較データマップにおけるそのデータ要素に従う）にそれぞれの合成シフトの全てを割り当てるように、適合された合成シフト生成ユニットを備える。
【０１５０】
したがって、ユニット（８４）（９４）（９８）と合成シフト生成ユニットは第１のコンパレータユニット及び／又は第２のコンパレータユニットに含まれる。これらのユニットの目的は、さまざまな目的のために出力変位（視差など）マップを生成することであり、すなわち、出力変位マップは、変位ユニットの第１のコンパレータユニットの初期変位マップ自体であり、変位精製ユニットの第２のコンパレータユニットの補正変位マップである。
【０１５１】
好ましくは、前の実施形態において、合成シフト生成ユニット（合成シフト生成ユニット（Ｃ２＿Ａ）は実施形態の例である）はシフト調査コンボリューションユニット（１０４）を備えており、このシフト調査コンボリューションユニット（１０４）は、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、合成比較データマップの各データ要素のためのそれぞれの合成シフトを生成するために、合成比較データマップに適用するように、且つ出力変位マップにおける対応データ要素（すなわち、合成比較データマップにおけるそのデータ要素に従う）にそれぞれの合成シフトを割り当てるように、適合されている。
【０１５２】
特に、前の実施形態において、特徴マップは１つ以上の特徴チャネルを有し、第１のコンパレータユニット及び／又は第２のコンパレータユニットは、シフト調整コンボリューションユニット（１０４）を適用する前に、特徴マップの１つ以上の特徴チャネルによって合成比較データマップをスタックするように適合されたスタックユニット（１０２）を備える。
【０１５３】
合成シフト生成ユニットのさらなる代替案を使用し、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、合成比較データマップの各データ要素のためのそれぞれの合成シフトは、複数の異なるシフトから最もマッチングするシフトを選択することにより、合成シフト生成ユニット（合成シフト生成ユニット（Ｃ２＿Ｂ）は実施形態のための例である）によって生成される。
【０１５４】
合成シフト生成ユニットのさらなる代替案を使用し、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、合成比較データマップの各データ要素のためのそれぞれの合成シフトは、
−異なる可能なシフト値ごとに複数の変位ビンを確立し、
−変位ビンごとに変位確率を生成し、合成比較データマップに基づいて変位確率を計算し、
−対応変位確率によって可能な変位値を重み付けすることで、合成シフトを得ることによって、合成シフト生成ユニット（合成シフト生成ユニット（Ｃ２＿Ｂ）は実施形態のための例である）により、生成される。
【０１５５】
好ましくは、前の５つの実施形態のいずれかにおいて、装置（つまり、比較マップ生成ユニット（Ｃ１））は、少なくとも１つの空間次元及び／又は時間次元の全てにおいて、合成比較データマップの各データ要素のためのそれぞれの合成シフトを生成する前の合成比較データマップに適用するように適合された非線形性層を備える。
【０１５６】
本発明に係る装置の一実施形態において、好ましくは、特徴マップは１つ以上の特徴チャネルを有し、変位ユニット及び／又は変位精製ユニットは、特徴マップの１つ以上の特徴チャネルを考慮することによってマッチングを実行するように、且つ入力データセットの少なくとも１つの空間次元及び／又は時間次元の数と同じ又はそれ未満の数の座標チャネルで、初期変位マップ及び補正変位マップを別個に生成するように適合される（図２の実施形態の場合、視差マップは、一方向へのシフトのみを含むことができるので、単一の座標チャネルを有する［シフトは単一の数である］）。したがって、初期変位マップと補正変位マップ（これらは同じチャネル数を有する）は、タスクによって制約されない限り、空間次元／時間次元の数と同じ数の座標チャネルを有する。
【０１５７】
本発明に係る装置のさらなる実施形態（参照番号については、図２を参照）、変位ユニット（例えば初期変位マップ）は第１の初期変位マップと第２の初期変位マップのペアを生成するように適合され、変位精製ユニット（視差精製ユニット（４０ｂ）（４０ｃ）（４０ｄ））は、第１の初期変位マップと第２の初期変位マップのペアおよび第１の補正変位マップとそのそれぞれの第２のコンパレータユニットにより生成される第２の補正変位マップとのペアに基づいて、第１の更新変位マップと第２の更新変位マップとのペアを生成するように適合される。
【０１５８】
本装置の一実施形態（図に示されている実施形態のように）において、入力データセットペアはステレオ画像ペアであり、変位マップは視差マップであり、変位ユニットは視差ユニットであり、変位精製ユニットは視差精製ユニットである。
【０１５９】
もちろん、本発明は、上記の詳述した好ましい実施形態に限定されないが、特許請求の範囲によって定められる保護の範囲内で、さらなる変形、修正、および開発が可能である。さらに、任意の従属クレームの組み合わせによって定義できる全ての実施形態は、本発明の範囲内にある。
【図１】
2021525408.tif 000004
【図２】
2021525408.tif 000005
【図３】
2021525408.tif 000006
【図４】
2021525408.tif 000007
【図５Ａ】
2021525408.tif 000008
【図５Ｂ】
2021525408.tif 000009
【図６】
2021525408.tif 000010
【国際調査報告】
2021525408.tif 000011