(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022177826
(43)【公開日】2022-12-01
(54)【発明の名称】オブジェクトの相対スケールを推定する機械学習可能なモデルのトレーニング
(51)【国際特許分類】
G06T 7/00 20170101AFI20221124BHJP
G06N 20/00 20190101ALI20221124BHJP
G06N 3/02 20060101ALI20221124BHJP
【FI】
G06T7/00 350C
G06N20/00
G06N3/02
【審査請求】未請求
【請求項の数】15
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022080909
(22)【出願日】2022-05-17
(31)【優先権主張番号】10 2021 205 034.4
(32)【優先日】2021-05-18
(33)【優先権主張国・地域又は機関】DE
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.ZIGBEE
(71)【出願人】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】イヴァン ソスノヴィク
(72)【発明者】
【氏名】アーノルト スメルダース
(72)【発明者】
【氏名】コンラート グロー
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096BA04
5L096BA05
5L096EA03
5L096EA39
5L096FA32
5L096GA19
5L096GA32
5L096GA55
5L096HA11
5L096KA04
(57)【要約】 (修正有)
【課題】画像内のオブジェクトの相対的なスケールを推定する機械学習可能なモデルをトレーニングする。
【解決手段】画像パッチのためのパッチレベルスケール推定値を生成するシステムは、特徴抽出器360及び機械学習可能なモデル部分を含むスケール推定器380を含む。特徴抽出器は、予めトレーニングされた既知の特徴抽出器であってもよい。スケール推定器は、特徴抽出器が生成する特徴マップを、オブジェクトの相対スケール推定値に変換するシステム及び方法によってトレーニングされる。スケール推定器は、スケールラベルを必要としない可能性がある、特定のものであるが教師なしの手法によりトレーニングデータに基づいてトレーニングされる。スケール推定器は、推論中に画像の複数の画像パッチに適用される。結果としてのパッチレベルスケール推定値は、画像内に描かれたシーンのジオメトリを示し得るシーンジオメトリマップに組み合わせられる。
【選択図】
図3
【特許請求の範囲】
【請求項1】
画像内のオブジェクトの相対スケールを推定する機械学習可能なモデルをトレーニングするためのコンピュータ実装された方法(200)であって、
前記方法は、
-特徴抽出器(360)を提供するステップ(210)であって、前記特徴抽出器(360)は、
-画像の画像パッチを入力として受信し、
-複数の特徴マップを出力として取得するために前記画像パッチ内の複数の特徴を検出するように構成されており、前記複数の特徴は、前記画像内の1つ又は複数のオブジェクトに関連し、それぞれの特徴マップは、前記画像パッチの画像データにフィルタを適用することによって生成され、それぞれの特徴マップは、スケール次元に沿って、異なる空間スケールのセットにわたるフィルタ応答を含む、ステップ(210)と、
-前記特徴抽出器の出力を処理するスケール推定器(380)を提供するステップ(220)であって、前記スケール推定器は、機械学習可能なモデル部分を含み、かつ、
-それぞれの特徴マップを特徴レベルスケール推定値に集約し、前記集約は、異なる空間スケールにわたって最大フィルタ応答を識別し、それによって、複数の特徴レベルスケール推定値を取得することを含み、
-前記機械学習可能なモデル部分を用いて、前記複数の特徴レベルスケール推定値からパッチレベルスケール推定値を推論するように構成されている、ステップ(220)と、
を含み、
さらに前記方法は、
-トレーニング画像のセットを含むトレーニングデータにアクセスするステップ(230)と、
-前記スケール推定器の前記機械学習可能なモデル部分を、前記複数の特徴レベルスケール推定値から前記パッチレベルスケール推定値を推論するために前記トレーニングデータに基づいてトレーニングするステップ(240)と、
を含み、
前記トレーニングするステップは、
-前記トレーニング画像の画像パッチ(300)の画像データを、少なくとも2つのさらなる画像パッチ(310,320)を取得するために少なくとも2つの既知のスケール係数によって空間的にスケーリングするステップ(250)と、
-前記特徴抽出器及び前記スケール推定器を、少なくとも2つのパッチレベルスケール推定値を取得するために前記少なくとも2つのさらなる画像パッチに適用するステップ(260)と、
-前記機械学習可能なモデル部分のパラメータを損失関数の誤差項を最小化することによって最適化するステップ(270)であって、前記誤差項は、実際の相対スケールと推定された相対スケールとの間の不整合を表現し、前記実際の相対スケールは、2つの既知のスケール係数の間の差分として決定され、前記推定された相対スケールは、少なくとも2つのパッチレベルスケール推定値の間の差分として決定されるステップと、
を含む、コンピュータ実装された方法(200)。
【請求項2】
それぞれの特徴マップは、少なくとも2つの空間次元とスケール次元とを含み、前記スケール推定器は、平均化、重み付け又は多数決によって、前記少なくとも2つの空間次元にわたって前記それぞれの特徴マップを集約するように構成されている、請求項1に記載のコンピュータ実装された方法(200)。
【請求項3】
前記スケール推定器は、フィルタ応答が最大となる空間スケールを識別し、前記空間スケールの識別子を特徴レベルスケール推定値又はその一部として使用することにより、前記スケール次元にわたって前記それぞれの特徴マップを集約するように構成されている、請求項1又は2に記載のコンピュータ実装された方法(200)。
【請求項4】
前記スケール推定器の前記機械学習可能なモデル部分は、ニューラルネットワークを含む、請求項1乃至3のいずれか一項に記載のコンピュータ実装された方法(200)。
【請求項5】
前記ニューラルネットワークは、1つの隠れ層を有する浅いニューラルネットワークである、請求項4に記載のコンピュータ実装された方法(200)。
【請求項6】
前記誤差項は、前記実際の相対スケールと前記推定された相対スケールとの間の平均二乗誤差又は平均二乗偏差を定義する、請求項1乃至5のいずれか一項に記載のコンピュータ実装された方法(200)。
【請求項7】
画像内のオブジェクトの相対スケールを推定するコンピュータ実装された方法(700)であって、
前記方法は、
-特徴抽出器(360)を提供するステップ(710)であって、前記特徴抽出器(360)は、
-画像の画像パッチを入力として受信し、
-複数の特徴マップを出力として取得するために前記画像パッチ内の複数の特徴を検出するように構成されており、前記複数の特徴は、前記画像内の1つ又は複数のオブジェクトに関連し、それぞれの特徴マップは、前記画像パッチの画像データにフィルタを適用することによって生成され、それぞれの特徴マップは、スケール次元に沿って、異なる空間スケールのセットにわたるフィルタ応答を含む、ステップ(710)と、
-前記特徴抽出器の出力を処理するスケール推定器(380)を提供するステップ(720)であって、前記スケール推定器は、請求項1乃至6のいずれか一項に記載の方法によってトレーニングされた機械学習可能なモデル部分を含み、前記スケール推定器は、
-それぞれの特徴マップを特徴レベルスケール推定値に集約し、前記集約は、異なる空間スケールにわたって最大フィルタ応答を識別し、それによって、複数の特徴レベルスケール推定値を取得することを含み、
-前記機械学習可能なモデル部分を用いて、前記複数の特徴レベルスケール推定値からパッチレベルスケール推定値を推論するように構成されている、ステップ(720)と、
-前記特徴抽出器及び前記スケール推定器を、前記少なくとも1つの画像パッチのためのパッチレベルスケール推定値を取得するために前記画像の少なくとも1つの画像パッチに適用するステップ(730)と、
-前記パッチレベルスケール推定値のデータ表現を出力するステップ(750)と、
を含む、コンピュータ実装された方法(700)。
【請求項8】
前記方法は、画像のシーンジオメトリを示すシーンジオメトリマップ(420)を、
-前記特徴抽出器及び前記スケール推定器を、複数のパッチレベルスケール推定値を取得するために前記画像の複数の画像パッチ(410,412)に適用するステップと、
-前記画像用のシーンジオメトリマップを、前記複数の画像パッチに関連する前記複数のパッチレベルスケール推定値の表現として生成するステップと、
によって生成するステップをさらに含む、請求項7に記載のコンピュータ実装された方法(700)。
【請求項9】
前記特徴抽出器及び前記スケール推定器を、前記画像の画像パッチを重畳させるために適用するステップをさらに含む、請求項8に記載のコンピュータ実装された方法(700)。
【請求項10】
前記方法は、
-前記シーンジオメトリマップにおける前記複数のパッチレベルスケール推定値から、前記複数のパッチレベルスケール推定値の最小値を減算するステップ、及び、
-前記シーンジオメトリマップを、前記画像の空間解像度に空間的に拡大するステップ(430)
のうちの少なくとも1つをさらに含む、請求項8又は9に記載のコンピュータ実装された方法(700)。
【請求項11】
前記方法は、
-前記画像を、コンピュータ制御された実体(610)の環境(600)を感知するように構成されたセンサ(620,622)から取得するステップと、
-前記画像のシーンジオメトリマップを解析するステップと、
-前記コンピュータ制御された実体を当該環境に適応制御するために、前記解析の結果に基づいて、前記コンピュータ制御された実体のために制御データを生成するステップと、
をさらに含む、請求項8乃至10のいずれか一項に記載のコンピュータ実装された方法(700)。
【請求項12】
前記コンピュータ制御された実体は、ロボットシステム又は自律型車両(610)である、請求項11に記載のコンピュータ実装された方法(700)。
【請求項13】
コンピュータ可読媒体(800)であって、請求項1乃至12のいずれか一項に記載のコンピュータ実装された方法をプロセッサシステムに実施させるために配列された命令を表現する一時的又は非一時的データ(810)を含む、コンピュータ可読媒体(800)。
【請求項14】
画像内のオブジェクトの相対スケールを推定する機械学習可能なモデルをトレーニングするためのシステム(100)であって、
前記システム(100)は、
-入力インタフェースサブシステム(140)を含み、前記入力インタフェースサブシステム(140)は、
-トレーニング画像のセットを含むトレーニングデータ(152)と、
-特徴抽出器(154,360)であって、前記特徴抽出器(154,360)は、
-画像の画像パッチを入力として受信し、
-複数の特徴マップを出力として取得するために前記画像パッチ内の複数の特徴を検出するように構成されており、前記複数の特徴は、前記画像内の1つ又は複数のオブジェクトに関連し、それぞれの特徴マップは、前記画像パッチの画像データにフィルタを適用することによって生成され、それぞれの特徴マップは、スケール次元に沿って、異なる空間スケールのセットにわたるフィルタ応答を含む、特徴抽出器(154,360)と、
-前記特徴抽出器の出力を処理するスケール推定器(156,380)であって、前記スケール推定器は、機械学習可能なモデル部分を含み、かつ、
-それぞれの特徴マップを特徴レベルスケール推定値に集約し、前記集約は、異なる空間スケールにわたって最大フィルタ応答を識別し、それによって、複数の特徴レベルスケール推定値を取得することを含み、
-前記機械学習可能なモデル部分を用いて、前記複数の特徴レベルスケール推定値からパッチレベルスケール推定値を推論するように構成されているスケール推定器(156,380)と、
にアクセスするように構成されており、
さらに前記システム(100)は、
-前記スケール推定器の前記機械学習可能なモデル部分を、前記複数の特徴レベルスケール推定値から前記パッチレベルスケール推定値を推論するために前記トレーニングデータに基づいてトレーニングするように構成されたプロセッササブシステム(120)を含み、前記トレーニングは、
-前記トレーニング画像の画像パッチ(300)の画像データを、少なくとも2つのさらなる画像パッチ(310,320)を取得するために少なくとも2つの既知のスケール係数によって空間的にスケーリングするステップと、
-前記特徴抽出器及び前記スケール推定器を、少なくとも2つのパッチレベルスケール推定値を取得するために前記少なくとも2つのさらなる画像パッチに適用するステップと、
-前記機械学習可能なモデル部分のパラメータを損失関数の誤差項を最小化することによって最適化するステップであって、前記誤差項は、実際の相対スケールと推定された相対スケールとの間の不整合を表現し、前記実際の相対スケールは、2つの既知のスケール係数の間の差分として決定され、前記推定された相対スケールは、少なくとも2つのパッチレベルスケール推定値の間の差分として決定されるステップと、
を含む、システム(100)。
【請求項15】
画像内のオブジェクトの相対スケールを推定するためのシステム(500)であって、
前記システム(500)は、
-入力インタフェースサブシステム(540)を含み、前記入力インタフェースサブシステム(540)は、
-画像(552)と、
-特徴抽出器(554,360)であって、前記特徴抽出器(554,360)は、
-画像の画像パッチを入力として受信し、
-複数の特徴マップを出力として取得するために前記画像パッチ内の複数の特徴を検出するように構成されており、前記複数の特徴は、前記画像内の1つ又は複数のオブジェクトに関連し、それぞれの特徴マップは、前記画像パッチの画像データにフィルタを適用することによって生成され、それぞれの特徴マップは、スケール次元に沿って、異なる空間スケールのセットにわたるフィルタ応答を含む、特徴抽出器(554,360)と、
-前記特徴抽出器の出力を処理するスケール推定器(556,380)であって、前記スケール推定器は、請求項1乃至6のいずれか一項に記載の方法によってトレーニングされた機械学習可能なモデル部分を含み、前記スケール推定器は、
-それぞれの特徴マップを特徴レベルスケール推定値に集約し、前記集約は、異なる空間スケールにわたって最大フィルタ応答を識別し、それによって、複数の特徴レベルスケール推定値を取得することを含み、
-前記機械学習可能なモデル部分を用いて、前記複数の特徴レベルスケール推定値からパッチレベルスケール推定値を推論するように構成されているスケール推定器(556,380)と、
にアクセスするように構成されており、
さらに前記システム(500)は、
-プロセッササブシステム(520)を含み、前記プロセッササブシステム(520)は、
-前記特徴抽出器及び前記スケール推定器を、前記少なくとも1つの画像パッチのためのパッチレベルスケール推定値を取得するために前記画像の少なくとも1つの画像パッチに適用し、
-前記パッチレベルスケール推定値のデータ表現を出力するように構成されている、システム(500)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像内のオブジェクトの相対スケールを推定する機械学習可能なモデルをトレーニングするためのシステム及びコンピュータ実装された方法に関する。本発明は、さらに、例えば、画像のシーンジオメトリ(場面の幾何学的配置)を決定するために、画像内のオブジェクトの相対的スケールを推定するシステム及びコンピュータ実装された方法に関する。さらに、本発明は、任意のコンピュータ実装された方法を実施するためのプロセッサシステムのための命令を表すデータを含むコンピュータ可読媒体に関する。
【背景技術】
【0002】
背景技術
コンピュータビジョンの分野は、機械が自身の環境を「見て」それを理解することができるようにすることに関連する。コンピュータビジョンのコアタスクは、画像内のオブジェクト、例えば、自律型車両によって取得されたカメラ画像内の歩行者若しくは車両、又は、製造ロボットにより処理される部品などを識別して分類することである。
【0003】
スケールは、画像内に示されるオブジェクトの自然な属性であり、場所や外観のように基本的なプロパティである。ここで、「スケール」という用語は、画像内のオブジェクトの見かけのサイズを指す場合があり、これは、カメラからオブジェクトまでの距離、カメラの焦点などに依存し得る。コンピュータビジョンのタスクは、典型的には、画像内のオブジェクトの(変化する)スケールを考慮する必要がある。例えば、画像分類は、正確な分類結果を達成するために、好適には、スケール不変である。画像セグメント化においては、スケールの同変性は、出力マップを入力に比例してスケーリングする必要があるため重要である。オブジェクト検出又はオブジェクト追跡においては、スケール不変及びスケール同変であることが重要である。
【0004】
スケール不変性又は同変性は、通常、コンピュータビジョンにおいては、トレーニングデータに十分な種類の例を、例えば異なるスケールにおけるオブジェクトを提供することによって取り扱われる。機械学習可能なモデル及び/又はそれらのトレーニングを適合させて、スケール不変性又は同変性を提供することも可能である。例えば、刊行物「Scale-Equivariant Steerable Networks」2019年、https://arxiv.org/abs/1910.11093v1には、CNNのパフォーマンスを向上させるためにCNN内にスケール同変性のためのメカニズムを組み込むことが説明されており、ここで、パフォーマンスとは、画像を適正に分類するためのCNN機能として理解することができる。このスケール同変メカニズムは、ニューラルネットワークの畳み込み層のフィルタを、基底フィルタ(基底関数とも称される)の加重和になるように構築することに基づいており、ここでの、重みは、CNNのトレーニング中にトレーニングすることができる。
【0005】
スケール不変若しくは同変にすべきコンピュータビジョンのタスクのために、又は、少なくとも十分な程度にスケール不変若しくは同変にすべきコンピュータビジョンのタスクのために、機械学習可能なモデルを適合させ及び/又はトレーニングすることは知られているが、画像内のオブジェクトの相対スケールの明示的な表示を取得することが望ましい場合もある。これは、例えば、画像内に描かれたシーンジオメトリを推定可能にする場合がある。例えば、あるシーンが、花畑の中の花々のような同様のオブジェクトで密集している場合、このシーンの画像内のオブジェクトの相対スケールは、この場合、その表面が地平方向に向かって傾斜しているオブジェクトを含む平面になるシーンジオメトリを示す可能性がある。これは、画像の底部近傍に配置されたオブジェクトが、より大きい見かけサイズを有し、従って、画像の中央に向かって減少する見かけサイズを伴うことから明らかになるものとしてもよい。換言すれば、オブジェクトの相対スケールは、結論がシーンジオメトリに基づいて引き出されることを可能にさせ、これは、カメラ画像により、車両の密集したフィールドによって交通渋滞の可能性が示される自律型運転など多くの実生活の用途において役立つ可能性がある。他の例は、多くの歩行者がいる環境であり、そこでは、シーンジオメトリが、自動運転車に近い歩行者を識別し、重要性に基づいて歩行者を選別することができるようにさせるために使用されるものとしてもよく、ここで、自動運転車は、それらが遠く離隔しているために重要ではない歩行者を無視することができる。一般に、スケールごとのオブジェクト間において理解を取得することは、オブジェクト間の関係を、同一又は類似のスケールのオブジェクトは関連性があり得るものとして識別可能にさせる場合がある。このことは、オブジェクトの関係グラフを生成するために使用され得る。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】「Scale-Equivariant Steerable Networks」2019年、https://arxiv.org/abs/1910.11093v1
【発明の概要】
【発明が解決しようとする課題】
【0007】
教師あり学習を使用することにより、例えば、画素単位で又は画像解像度に対する相対的な値として、例えば、オブジェクトにそれらのスケールを含む注釈が付されたトレーニングデータを提供することにより、画像内のオブジェクトのスケールの明示的な表示を提供するために機械学習可能モデルをトレーニングすることが知られている。ただし、これには、種々のスケールにおいてオブジェクトを示す膨大なトレーニングデータと、例えばラベルを提供してスケールを明示的に示すことができるように機械学習可能なモデルを注意深く構築するための多大な手作業とが必要になるという欠点がある。
【0008】
例えば、教師なしの手法によって、より簡単にトレーニングすることができ、計算の複雑さが限定されているスケール推定器を取得することができることは、利点となるであろう。
【課題を解決するための手段】
【0009】
発明の概要
本発明の第1の態様によれば、請求項1及び14によってそれぞれ定義されるような、画像内のオブジェクトの相対スケールを推定する機械学習可能なモデルをトレーニングするためのコンピュータ実装された方法及び対応するシステムが提供される。本発明のさらなる態様によれば、請求項7及び15によってそれぞれ定義されるような、画像内のオブジェクトの相対スケールを推定するためのコンピュータ実装された方法及び対応するシステムが提供される。本発明のさらなる態様によれば、請求項13によって定義されるような、プロセッサシステムにコンピュータ実装された方法のいずれかを実施させるための命令を含むコンピュータ可読媒体が提供される。
【0010】
上記の手段に従って、ニューラルネットワークなどの機械学習可能なモデル部分を含み得る、相対スケール推定値を提供するようにトレーニングされるものとしてよいスケール推定器が提供される。このスケール推定器は、特徴抽出器に対する「アドオン」として提供されるものとしてもよい。そのような特徴抽出器は、例えば、64×64画素の画像パッチ又は任意の他の適当な空間次元を有する画像パッチを入力として受信し、画像パッチから画像内の1つ又は複数のオブジェクトに関連する複数の特徴を抽出するように構成された既存の「既知の」特徴抽出器であるものとしてもよい。これらの特徴の例には、異なるタイプの縁部、テクスチャ、コーナーなどが含まれる。これらの特徴は、手動で定義されるものとしてもよいが、例えば、オブジェクトの例を含むトレーニングデータ上において先行してトレーニングされた特徴抽出器によって機械学習されるものとしてもよい。特徴抽出器は、それ自体公知であるように、複数の特徴マップを出力として提供することができる。例えば、特徴抽出器が、畳み込みニューラルネットワーク(CNN)を含む場合、そのような特徴マップは、CNNの出力チャネルによって構成され又はそれによって表されるものとしてもよい。さらに、特徴抽出器は、適合させられるものとしてもよく、機械学習された特徴抽出器の場合には、少なくとも適当な程度にスケール同変であるようにトレーニングされるものとしてよい。これは、スケール次元を有する特徴マップとなって表れる。従って、特徴抽出器は、スケール次元に沿ってそれぞれフィルタ応答を提供することができる。そのような特徴抽出器自体は、例えば、本明細書に記載されるスケール同変CNN(SE-CNN)に関する限り、参照により本明細書に組み込まれる同時係属中の欧州特許出願第20195059号明細書から公知であり、その入力層及び畳み込み層は、本明細書に記載のような特徴抽出器の例を構成することができる。
【0011】
スケール推定器は、特徴抽出器の出力から得られるそれぞれの特徴マップを集約するように構成されるものとしてもよい。例えば、そのような集約は、その空間次元など、特徴マップの種々の次元に沿ってフィルタ応答を集約することを含み得るものである。特に、スケール次元に沿って、最大フィルタ応答が特定されるものとしてもよく、その結果、特徴マップの集約は、特徴レベルスケール推定値を提供することになり得る。特定の例においては、CNNが512の出力チャネルを有する場合、集約は、結果として各々が特徴マップのそれぞれのスケール次元に沿った最大フィルタ応答から導出される512の特徴レベルスケール推定値となり得る。スケール推定器は、前述のニューラルネットワークなどの機械学習可能なモデル部分をさらに含み得るものであり、このモデル部分は、入力として特徴レベルスケール推定値を受信し、入力として提供された画像パッチの全体的なスケール推定値を表すパッチレベルスケール推定値を出力するように構成されるものとしてもよい。
【0012】
この目的のために、機械学習可能なモデル部分は、トレーニングデータでトレーニングされるものとしてもよい。しかしながら、パッチレベルスケール推定値がグラウンドトゥルースとして手動又は少なくとも外部から提供される教師ありトレーニングに頼る代わりに、トレーニングのための適当な目標が、トレーニング中に生成されるものとしてもよい。詳細には、例えば、1つのオブジェクトが他のオブジェクトよりもカメラに近いことを学習するために、オブジェクトの相対スケールを学習することができればスケール推定器にとって十分である場合がある。そのような相対スケールは、スケールの絶対尺度を表さない場合があり、それによって、例えば、オブジェクトが幅2mであるなどのように、オブジェクトの絶対サイズについて結論を引き出すことができない場合がある。それにもかかわらず、そのような相対スケールは、前述したシーンジオメトリの推定を含む種々の目的にとっては十分である場合がある。相対スケールの推定のためのトレーニング目標は、請求項に記載の手段により、少なくとも2つの既知のスケール係数に従って、トレーニング画像の画像パッチの画像データの空間的スケーリングによって生成されるものとしてもよい。例えば、画像パッチにおける画像データは、例えば0.75の係数によって縮小されるものとしてもよいし、例えば1.5の係数によって拡大されるものとしてもよい。等しい寸法の画像パッチが得られるように、そのような拡大にはクロッピングが含まれ、縮小にはパディングが含まれ得ることが理解されよう。他の例においては、画像パッチの画像データは、例えば、単位スケール係数を用いて、1.0の係数と、1.5の係数とによってスケーリングされるものとしてもよい。そのようなスケール係数の他の種々の例も同様に考えられる。そのようなスケール係数は、「既知の」又は「実際の」スケール係数と称されるものとしてもよい。
【0013】
次いで、特徴抽出器及びスケール推定器が、スケーリングされた画像データを含む画像パッチに適用されるものとしてもよく、その結果、少なくとも2つのパッチレベルのスケール推定値が得られる。どちらの画像パッチのオブジェクトの絶対サイズもわからない場合がありながら、2つの画像パッチ間のオブジェクトの相対サイズがわかっている場合があり、この相対サイズは、2つの既知のスケール係数間の関係によって表される。この関係は、例えば、差分(例えば、2.0-0.5=1.5)又は比率(例えば、2.0/0.5=4.0)などとして表されるものとしてもよく、実際の相対スケールと称されるものとしてもよい。ここで、「実際の」とは、画像データがそれぞれのスケール係数に従って実際にスケーリングされた事実を指し、「相対」とは、スケール係数間の関係(例えば、差分又は比率)を表す数値を指す。パッチレベルのスケール推定値についても同様の関係が計算されるものとしてもよく、結果として相対スケールが推定される。損失関数は、それによって、トレーニングが、実際の相対スケールを推定することを学習するために、ニューラルネットワークの重みなどの機械学習可能なモデル部分のパラメータを適合させるように定式化されるものとしてもよい。詳細には、損失関数は、実際の相対スケールと推定された相対スケールとの間の不整合を表すことができ、トレーニングは、不整合を最小化すべくシークすることができる。従って、スケール推定器は、相対スケールをより良好に推定することを学習することができる。これは、手動で提供されるグラウンドトゥルースを必要としない。なぜなら、実際の相対スケールは、内部で生成されるものとしてもよいからである。従って、スケール推定器のトレーニングが容易になる場合がある。その上さらに、スケール推定器は、(既存の)特徴抽出器に対するアドオンとして簡素に提供されるものとしてもよい。これは、特徴抽出器自体に過度にこだわる必要がなく、むしろ特定の特徴抽出器によって提供される特徴マップに適応するようにスケール推定器自体をトレーニングするという点において、関心事項の分離に貢献する。さらに、そのようなスケール推定器は、特徴マップを特徴レベルスケール推定値に集約し、特徴レベルスケール推定値をパッチレベルスケール推定値に組み合わせる必要が「単に」あるだけなので、アーキテクチャ的に比較的単純であることも判明している。そのような組合せは、特徴抽出器自体と比較した場合、比較的単純な機械学習可能なモデル部分によって実施されるものとしてもよい。例えば、多くの用途においては、隠れ層を1つしか有していない浅いニューラルネットワークで十分な可能性がある。従って、特徴抽出器が既に例えばオブジェクト検出又は分類の目的において利用可能である場合には、スケール推定器が計算の複雑さ及び/又はトレーニング努力の観点から見て比較的少ないコストで追加されるものとしてもよい。
【0014】
任意選択的に、それぞれの特徴マップは、少なくとも2つの空間次元とスケール次元とを含み、ここで、スケール推定器は、平均化、重み付け又は多数決によって、少なくとも2つの空間次元にわたってそれぞれの特徴マップを集約するように構成されている。特徴マップの空間次元は、スケール推定については特に関連性がない場合がある。従って、空間次元は、例えば、平均化、重み付け、多数決又は同様の技術によって、空間次元にわたって特徴マップを集約することにより、例えば、1×1まで縮小されるものとしてもよい。特定の例においては、グローバル平均プーリング層は、H×W×S特徴マップを1×1×S特徴マップ(「S」はスケール次元を表す)に縮小するために使用されるものとしてもよい。
【0015】
任意選択的に、スケール推定器は、フィルタ応答が最大となる空間スケールを識別し、空間スケールの識別子を特徴レベルスケール推定値又はその一部として使用することにより、スケール次元にわたってそれぞれの特徴マップを集約するように構成される。特徴マップは、フィルタ応答が最大となる空間スケールを識別し、空間スケールの識別子を特徴レベルスケール推定器又はその一部として使用することによって、例えば、1×1×Sから1×1×1まで集約されるものとしてもよい。例えば、予め定められたスケールのセット
【数1】
がある場合(これらは、例えば、特徴抽出器のハイパーパラメータとして定められてもよい)、特徴レベルスケール推定値は、例えば、argmax演算子によって識別された、最大特徴応答が得られるスケールに対応するセットのインデックスであるものとしてもよい。
【0016】
任意選択的に、スケール推定器の機械学習可能なモデル部分は、ニューラルネットワークを含む。例えば、このニューラルネットワークは、1つの隠れ層を有する浅いニューラルネットワークであるものとしてよい。そのようなニューラルネットワーク又は一般に浅い多層パーセプトロン(MLP)は、特徴レベルスケール推定値をパッチレベルスケール推定値に組み合わせることを学習するために十分な場合があることが判明している。そのようなMLPは,実装のために必要とされるリソースが少なくて済み、その比較的少ないパラメータを考慮すると、容易にトレーニングすることができる場合がある。
【0017】
任意選択的に、誤差項は、実際の相対スケールと推定された相対スケールとの間の平均二乗誤差又は平均二乗偏差を定義する。これらの平均二乗誤差(MSE)又は平均二乗偏差(MSD)は、どちらも誤差関数として適しているが、実装及び実施時の評価に必要なリソースはほとんどない。
【0018】
任意選択的に、画像のシーンジオメトリを示すシーンジオメトリマップは、以下のステップ、即ち、
-特徴抽出器及びスケール推定器を、複数のパッチレベルスケール推定値を取得するために画像の複数の画像パッチに適用するステップと、
-画像用のシーンジオメトリマップを、複数の画像パッチに関連する複数のパッチレベルスケール推定値の表現として生成するステップと、
によって生成される。
【0019】
他の箇所において説明するように、パッチレベルスケール推定値は、例えば、画像パッチを表す配列を、それぞれのパッチレベルスケール推定値を含む配列内の各位置を用いて構築することによって、シーンジオメトリマップ内に組み合わせるものとしてもよい。そのような配列は、画像用のマップに類似させることができ、本明細書の他の箇所において説明するようなシーンジオメトリを示すものであってもよい。
【0020】
任意選択的に、特徴抽出器及びスケール推定器は、画像の画像パッチを重畳させるために適用される。スケール推定器は、画像パッチごとに1つのパッチレベルスケール推定値を生成することができるので、スケール推定器が非重畳画像パッチに適用される場合、結果としてのシーンジオメトリマップは、入力画像に比較して比較的低解像度であるものとしてもよい。シーンジオメトリマップの解像度を増加させるために、特徴抽出器及びスケール推定器が、重畳画像パッチに適用されるものとしてもよい。これにより、より詳細でかつ正確な画像用のシーンジオメトリマップを提供することができる。
【0021】
任意選択的に、シーンジオメトリマップは、以下のステップ、即ち、
-シーンジオメトリマップにおける複数のパッチレベルスケール推定値から、複数のパッチレベルスケール推定値の最小値を減算するステップ、及び/又は、
-シーンジオメトリマップを画像の空間解像度に空間的に拡大するステップ
によって生成される。
【0022】
任意選択的に、画像は、コンピュータ制御された実体の環境を感知するように構成されたセンサから取得されるものとしてもよく、画像のシーンジオメトリマップが解析され、コンピュータ制御された実体を当該環境に適応制御するために、前記解析結果に基づいて、コンピュータ制御された実体のために制御データが生成される。ロボットシステム又は自律型車両などのコンピュータ制御された実体は、シーンジオメトリマップの解析結果に基づいて制御されるものとしてよい。例えば、シーンジオメトリマップが生成される画像は、車載カメラによって取得されるものとしてもよく、このシーンジオメトリマップを用いて、車載カメラによって取得されたシーンジオメトリが示される。例えば、このシーンジオメトリマップは、自律型車両の前方に交通渋滞が存在することを示すことができ、この場合には、車両を異なるように制御すること、例えば、減速させることが望ましい場合がある。
【0023】
本発明の上述の実施形態、実装態様及び/又は任意の態様の2つ以上は、有用と考えられる任意の手法により組み合わせてもよいことが、当業者には理解されよう。
【0024】
任意のシステム、任意のコンピュータ実装された方法又は任意のコンピュータ可読媒体の修正及び変形であって、前記実体の他の1つの説明された修正及び変形に対応するものは、当業者であるならば、本説明に基づいて実施することができる。
【0025】
本発明のこれらの態様及び他の態様は、以下の説明において例を用いて説明される実施形態及び添付の図面から明らかになり、さらにこれらの実施形態及び添付の図面を参照することによって解明されるであろう。
【図面の簡単な説明】
【0026】
【
図1】画像内のオブジェクトの相対スケールを推定する機械学習可能なモデルをトレーニングするためのシステムを示した図である。
【
図2】画像内のオブジェクトの相対スケールを推定する機械学習可能なモデルをトレーニングするためのコンピュータ実装された方法のステップを示した図である。
【
図3】画像パッチのためのパッチレベルスケール推定値を生成するために画像パッチの画像データに適用される特徴抽出器及びスケール推定器を示した図である。
【
図4】スケール推定器のトレーニングのための誤差項の計算を表した図であり、画像パッチの画像データを2つの異なるスケール係数に従って、スケール推定器を使用してスケール係数を推定することによってスケーリングすることが含まれ、ここで、誤差関数はそれぞれのスケール係数の関係の間の不整合を表現する。
【
図5A】特徴抽出器及びスケール推定器に対する入力画像を示した図である。
【
図5B】複数の非重畳画像パッチに分割された入力画像を示した図であり、ここで、各画像パッチは、特徴抽出器及びスケール推定器に対する入力として使われる。
【
図5C】スケール推定器によって生成されたシーンジオメトリマップを示した図であり、当該シーンジオメトリマップは、各画像パッチについてのパッチレベルスケール推定値を含み、ここで、シーンジオメトリマップは、画像解像度に空間的に拡大されている。
【
図6】画像内のオブジェクトの相対スケールを推定するためのシステムを示した図である。
【
図7】シーンジオメトリマップを生成及び解析し、それに基づいて車両を制御する
図5に記載のシステムを含む(半)自律型車両を示した図である。
【
図8】画像内のオブジェクトの相対スケールを推定するためのコンピュータ実装された方法のステップを示した図である。
【
図9】データを含むコンピュータ可読媒体を示した図である。
【0027】
これらの図面は、純粋に図式化されたものであり、縮尺どおりに描かれていないことに留意すべきである。これらの図面において、既に説明した要素に対応する要素は、同一の参照符号を有し得る。
【0028】
以下の参照符号のリストは、図面の解釈を容易にするために提供されるものであり、特許請求の範囲を限定するものとして解釈されるべきではない。
【0029】
符号の説明
100 画像内のオブジェクトの相対スケールを推定する機械学習可能なモデルをトレーニングするためのシステム
120 プロセッササブシステム
140 データストレージインタフェース
150 データストレージ
152 トレーニングデータ
154 特徴抽出器のデータ表現
156 スケール推定器のデータ表現
200 画像内のオブジェクトの相対スケールを推定する機械学習可能なモデルをトレーニングするための方法
210 特徴抽出器を提供する
220 スケール推定器を提供する
230 トレーニングデータにアクセスする
240 トレーニングする
245 次の画像パッチのために反復する
250 スケーリングされた画像パッチを取得するために画像パッチを空間的にスケーリングする
260 特徴抽出器及びスケール推定器を適用する
270 スケール推定器の機械学習可能なモデル部分を最適化する
300 画像パッチ
310 縮小された画像データを有する画像パッチ
320 拡大された画像データを有する画像パッチ
360 特徴抽出器
380 スケール推定器
400 花畑を示す画像
410 複数の画像パッチに分割された画像
412 画像パッチ
420 シーンジオメトリマップ
430 拡大
440 画像解像度に拡大されたシーンジオメトリマップ
500 画像内のオブジェクトの相対スケールを推定するためのシステム
520 プロセッササブシステム
540 データストレージインタフェース
550 データストレージ
552 画像データ
554 特徴抽出器のデータ表現
556 スケール推定器のデータ表現
560 センサデータインタフェース
562 センサデータ
570 制御インタフェース
572 制御データ
600 環境
610 (半)自律型車両
620 センサ
622 カメラ
630 アクチュエータ
632 電気モータ
700 画像内のオブジェクトの相対スケールを推定する方法
710 特徴抽出器を提供する
720 スケール推定器を提供する
730 特徴抽出器及びスケール推定器を画像パッチに適用する
740 次の画像パッチのために反復する
750 パッチレベルスケール推定値のデータ表現を出力する
800 コンピュータ可読媒体
810 非一時的データ
【発明を実施するための形態】
【0030】
実施形態の詳細な説明
以下においては、
図1及び
図2を参照して、画像内のオブジェクトの相対スケールを推定する機械学習可能なモデルをトレーニングするためのシステム及びコンピュータ実装された方法を説明し、
図3を参照して、特徴抽出器及びスケール推定器が、画像パッチのためのパッチレベルスケール推定値を生成するために画像パッチの画像データに適用されることを説明し、
図4を参照して、スケール推定器の機械学習可能なモデル部分のトレーニングを説明し、
図5A乃至
図5Cを参照して、スケール推定器が、シーンジオメトリマップを生成するために入力画像に適用されることを説明し、
図6及び
図8を参照して、画像内のオブジェクトの相対スケールを推定するためのシステム及びコンピュータ実装された方法を説明し、さらに
図7を参照して、
図6に記載のシステムを組み込んだ自律型車両を説明する。
図9は、請求項に記載された発明の実施形態において使用されるコンピュータ可読媒体を示している。
【0031】
図1は、画像内のオブジェクトの相対スケールを推定する機械学習可能なモデルをトレーニングするためのシステム100を示している。このシステム100は、トレーニングのためにトレーニングデータ152にアクセスするための入力インタフェースサブシステムを含み得るものである。例えば、
図1に示されているように、入力インタフェースサブシステムは、データストレージ150上のトレーニングデータ152へのアクセスを提供することができるデータストレージインタフェース140を含むものとしてもよく又はそれによって構成されるものとしてもよい。例えば、データストレージインタフェース140は、メモリインタフェース又は例えばハードディスク若しくはSSDインタフェースなどの永続性のストレージインタフェースであるものとしてもよいが、Bluetooth、Zigbee、Wi-Fiインタフェース、イーサネット又は光ファイバインタフェースなどのパーソナル、ローカル又はワイドエリアネットワークインタフェースであるものとしてもよい。データストレージ150は、メモリ、ハードドライブ又はSSDなどのシステム100の内部データストレージであるものとしてもよいが、外部データストレージ、例えばネットワークアクセス可能なデータストレージであるものとしてもよい。
【0032】
いくつかの実施形態においては、データストレージ150は、特徴抽出器のデータ表現154及びスケール推定器のデータ表現156をさらに含み得るものであり、これらの両方は、以下において詳細に論じられ、システム100によってデータストレージ150からアクセスされ得る。ただし、トレーニングデータ152、特徴抽出器のデータ表現154及びスケール推定器のデータ表現156は、それぞれ、異なるデータストレージから、例えば異なるデータストレージインタフェースを介してアクセスされるものとしてもよいことが理解されよう。各データストレージインタフェースは、データストレージインタフェース140について上記において説明したタイプのものであってもよい。他の実施形態においては、特徴抽出器及び/又はスケール推定器のデータ表現154,156は、システム100によって、例えば設計パラメータ又は設計仕様に基づいて内部的に生成されるものとしてもよく、それゆえ、データストレージ150上に必ずしも明示的に格納されなくてもよい。
【0033】
システム100は、プロセッササブシステム120をさらに含み得るものであり、このプロセッササブシステム120は、システム100の動作中に、スケール推定器156、特に、スケール推定器156の機械学習可能なモデル部分を、トレーニングデータ152に基づき本明細書の他の箇所において説明するような手法によりトレーニングするように構成されるものとしてもよい。例えば、プロセッササブシステム120によるトレーニングは、トレーニング目標、例えば損失関数を使用して、スケール推定器156のパラメータを最適化するアルゴリズムを実行するステップを含み得る。いくつかの実施形態においては、特徴抽出器154は、機械学習可能モデルを含み得る又は機械学習可能モデルからなり得るものであり、プロセッササブシステム120は、トレーニングデータ152に基づいて又は異なる若しくは付加的なトレーニングデータに基づいて特徴抽出器154をトレーニングするように構成されるものとしてもよい。
【0034】
システム100は、トレーニングされたスケール推定器のデータ表現を出力するための出力インタフェースをさらに含み得るものであり、このスケール推定器は、機械「学習された」スケール推定器とも称され、データは、トレーニングされたスケール推定器データとも称される。「トレーニングされた」とは、本明細書においても他の場所においても、スケール推定器の少なくとも機械学習可能なモデル部分がトレーニングされたことを指すことが理解されよう。例えば、
図1にも示されているように、出力インタフェースは、データストレージインタフェース140によって構成されるものとしてもよく、ここで、前記インタフェースは、これらの実施形態においては、入力/出力(「IO」)インタフェースであり、これを介して、トレーニングされたスケール推定器がデータストレージデバイス150に記憶されるものとしてもよい。例えば、「トレーニングされていない」スケール推定器を定義するデータ表現156は、スケール推定器156のパラメータ、特に、スケール推定器156の機械学習可能なモデル部分のパラメータが、トレーニングデータ152に基づくトレーニングを反映するように適合させられるものとしてもよいという点において、トレーニングの間又は後に、少なくとも部分的に、トレーニングされたスケール推定器のデータ表現によって置換されるものとしてもよい。他の実施形態においては、トレーニングされたスケール推定器のデータ表現は、「トレーニングされていない」スケール推定器のデータ表現156とは別個に記憶されるものとしてもよい。いくつかの実施形態においては、出力インタフェースは、データストレージインタフェース140とは別個であるものとしてもよいが、一般に、データストレージインタフェース140について上述したようなタイプであるものとしてもよい。
【0035】
図2は、画像内のオブジェクトの相対スケールを推定する機械学習可能なモデル、特にスケール推定器をトレーニングするためのコンピュータ実装された方法200を示している。この方法200は、
図1のシステム100の動作に対応し得るものとするとよいが、他のタイプのシステム、装置、デバイス若しくは実体の動作に対応し得る、又は、コンピュータプログラムのステップに対応し得るという点において、必ずしもそうである必要はない。
【0036】
本方法200は、「特徴抽出器を提供する」と題されたステップにおいて、本明細書の他の箇所において説明するような特徴抽出器を提供するステップ210と、「スケール推定器を提供する」と題されたステップにおいて、本明細書の他の箇所において説明するようなスケール推定器を提供するステップ220と、「トレーニングデータにアクセスする」と題されたステップにおいて、トレーニング画像のセットを含むトレーニングデータにアクセスするステップ230と、を含むことが示されている。本方法200は、「トレーニングする」と題されたステップにおいて、スケール推定器の機械学習可能なモデル部分をトレーニングデータに基づいてトレーニングするステップ240をさらに含むことが示されており、ここで、このトレーニングするステップは、「スケーリングされた画像パッチを取得するために画像パッチを空間的にスケーリングする」と題されたステップにおいて、トレーニング画像の画像パッチの画像データを、少なくとも2つのさらなる画像パッチを取得するために少なくとも2つの既知のスケール係数によって空間的にスケーリングするステップ250と、「特徴抽出器及びスケール推定器を適用する」と題されたステップにおいて、特徴抽出器及びスケール推定器を、少なくとも2つのパッチレベルスケール推定値を取得するために少なくとも2つのさらなる画像パッチに適用するステップ260と、「スケール推定器の機械学習可能なモデル部分を最適化する」と題されたステップにおいて、機械学習可能なモデル部分のパラメータを損失関数の誤差項を最小化することによって最適化するステップ270であって、誤差項は、実際の相対スケールと推定された相対スケールとの間の不整合を表現し、実際の相対スケールは、2つの既知のスケール係数の間の差分として決定され、推定された相対スケールは、少なくとも2つのパッチレベルスケール推定値の間の差分として決定される、ステップと、を含む。このトレーニングするステップ240は、例えば、
図2において矢印245により示されるように、トレーニング画像の異なる画像パッチにわたって、及び、異なるトレーニング画像(図示せず)にわたって、反復する複数の反復ループを含み得る。
【0037】
画像内のオブジェクトの相対スケールの推定を引き続き参照すると、本明細書において説明される手段は、特徴抽出器及びスケール推定器を使用するものである。特徴抽出器は、機械学習可能な特徴抽出器であるものとしてもよいが、必ずしもそうである必要はなく、例えば、異なるタイプの訓練データに基づいて、異なるタイプのシステムによって、及び/又は、異なる瞬間に、スケール推定器とは別個に、トレーニングされるものとしてもよい。例えば、スケール推定器をトレーニングするためのシステム及び方法には、それ自体公知の手法により先にトレーニングされたことがある予めトレーニングされた特徴抽出器を使用することができる。非限定的な例においては、特徴抽出器は、画像パッチから特徴を抽出するようにトレーニングされたスケール同変畳み込みニューラルネットワーク(SE-CNN)であるものとしてもよい。そのような特徴抽出は、特徴ごとの特徴マップの出力を結果としてもたらすことができ、この特徴マップは、CNNの例においては、CNNの「チャネル」とも称される。
【0038】
例えば、関数F:x→yを考える。ここで、x,yは、入力及び出力テンソルであり、Fは、特徴抽出器、例えばSE-CNNを表す。入力テンソルは、batch_size×3×height×widthの形状を有するものとしてもよく、それに対して、出力テンソルは、batch_size×num_channels×num_scales×height’×width’の形状を有するものとしてもよい。ここで、「batch_size」は、入力として使用される画像パッチの数を表すことができ、それに対して「3」は、画像データの3つの色成分(例えば、RGB又はYUV)を表すことができ、「height」及び「width」は、各画像パッチの高さ及び幅とすることができ(例えば、64×64画素)、「num_channels」は、出力として生成される特徴マップの数を表すことができ、「num_scales」は、特徴が検出されたスケールの数を表すことができ、これはひいては特徴マップのスケール次元に対応することができ、「height’」及び「width’」は、特徴マップの高さ及び幅を表すことができ、これによって、特徴マップの空間次元を表すことができる。
【0039】
それ自体公知のように、特徴抽出器は、複数の特徴マップを出力として取得するために画像パッチ内の複数の特徴を検出するように構成されるものとしてもよく、ここで、複数の特徴は、画像内の1つ又は複数のオブジェクトに関連し、それぞれの特徴マップは、画像パッチの画像データにフィルタを適用することによって生成され、それぞれの特徴マップは、スケール次元に沿って、異なる空間スケールのセットにわたるフィルタ応答を含む。従って、特徴抽出器は、異なるスケールにわたるフィルタ応答を提供することによって、スケール情報を考慮に入れるように構成されるものとしてもよい。それ自体公知のように、特徴抽出器は、例えば、スケールの数及びスケール係数に関して、使用するスケールにより構成されるものとしてもよい。例えば、スケールは、特徴抽出器のハイパーパラメータとして定義されるものとしてもよい。スケール間の数及びステップサイズは、特定の用途に応じて選択されるものとしてもよい。例えば、画像が、渋滞を示している可能性の高い車両の車載カメラによって取得されたカメラ画像である場合、渋滞中の他の車両の相対サイズは、車両ごとにわずかに変化していることが予想される。従って、1.4などの比較的小さいステップサイズをスケール間において使用することができる。また、非常に遠くの車は、近くの車よりも最大で8分の1になる可能性もあり、従って、9つのスケール
【数2】
を選択し、数字を用いて、例えば、異なるスケールのために使用されるフィルタの相対サイズ又は相対カーネルサイズに言及することができる。他のタイプの用途においては、本明細書において説明されるものとは異なる数のスケール及び/又は異なるセットのスケールが使用されるものとしてもよいことが理解されよう。
【0040】
特徴抽出器の例として、欧州特許出願第20195059号明細書に記載されるSE-CNNのような、ImageNet-pretrained CNNが使用されるものとしてもよい。さらに、特徴マップは、1つのオブジェクトのみの特徴を示すことを想定することができる。このように、各特徴マップは、例えば、グローバル空間平均プーリング層Pを使用して空間的に集約されるものとしてもよい。この層は、特徴抽出器の最後の層として提供されるものとしてもよく、又は、特徴抽出器に続く別個の層として提供されるものとしてもよい。特定の例においては、特徴抽出器は、512の出力チャネルを有することができる。例えば、グローバル空間平均プーリング層を用いた集約の後、出力テンソルは、batch_size×512×9の形状を有することができ、ここで、「9」は、スケールの数を指す。各出力から、スケールは、最大フィルタ応答が取得されたところで抽出されるものとしてもよい。これは、例えば、argmax演算子を使用して、スケールの次元にわたって最大プーリングすることによって行われるものとしてもよい。その結果、スケールの512の予測が各画像パッチについて取得されるものとしてもよい。これらの予測は、他の箇所においても特徴レベルスケール推定値と称される。次いで、浅い多層パーセプトロンGは、これらの512の特徴レベルスケール推定値を1つのパッチレベルスケール推定値に回帰させるために使用されるものとしてもよい。ここで、Gは、スケール推定器の機械学習可能なモデル部分と他の箇所において称されるものの一例を表し得る。浅い多層パーセプトロンは、例えば、1つの隠れ層を有するニューラルネットワーク、深層ニューラルネットワーク、線形回帰器、又は、一般にベクトル(特徴レベルスケール推定値)をスカラ(パッチレベルスケール推定値)にマッピングし得る微分可能な任意のモデルであるものとしてもよい。これに関して、スケール推定器は、浅い機械学習可能なモデル部分を含み得るものであるが、スケール推定器は、例えば複数の隠れ層を有する深い機械学習可能なモデル部分を含み得るものであるので、これは、要件ではないことに留意されたい。
【0041】
図3は、上記の一例を示すものであり、ここでは、H×Vが例えば64×64画素であるサイズH×V×3の画像パッチ300が、特徴抽出器F360に入力され、結果として、「9」がこの例ではスケールの数であるサイズH’×V’×9の複数の特徴マップが生成される。グローバル空間平均プーリング層Pは、特徴マップをサイズ1×1×9の特徴マップに空間的に集約するために使用されるものとしてもよく、これには、各画像パッチについて1×1×1の単一の特徴レベルスケール推定値を生成し得るargmax演算子が続くものとしてもよい。次いで、スケール推定器380の機械学習可能なモデル部分、例えば浅い多層パーセプトロンGは、例えば、数が512であるすべての特徴レベルスケール推定値を単一のパッチレベルスケール推定値に組み合わせるために使用されるものとしてもよい。
【0042】
1つの隠れ層を有するスケール推定器の例は、以下のコード抽出に示されるようなPyTorch状の疑似コードによって記述することができる。
【表1】
【0043】
引き続き
図3を参照すると、グローバル空間平均プーリング層Pは、特徴抽出器Fから分離されるように示されていることに留意されたい。いくつかの実施形態においては、グローバル空間平均プーリング層P又は同様のタイプの空間アグリゲータ機能部は、特徴抽出器Fも含む同一の総合ネットワークの一部であるものとしてもよい。換言すれば、特徴抽出器Fと、当該特徴抽出器に後続するグローバル空間平均プーリング層P又は同様の機能部との両方を含むネットワークが提供されるものとしてもよい。特徴抽出器及びスケール推定器の要素の他の種々のタイプの分割も可能である。
【0044】
特徴抽出器Fは、いくつかの例において、オブジェクト検出器又は分類器の一部であるものとしてよい。そのようなオブジェクト検出器又は分類器は、オブジェクトのセグメンテーション又は分類を取得するために特徴抽出器Fの特徴マップを処理する付加的なネットワーク層を含み得るものである。そのような例においては、特徴マップは、オブジェクト検出器又は分類器の内部データを表すことができ、この内部データは、スケールを推定するスケール推定器によってアクセスされるものとしてもよい。従って、そのような例においては、特徴マップは、オブジェクト検出器又は分類器によるオブジェクト検出又は分類と、スケール推定との両方に使用されるものとしてもよい。
【0045】
スケール推定器、特に、多層パーセプトロンGなどのその機械学習可能なモデル部分は、適当なデータセットを使用して訓練されるものとしてもよい。例えば、ImageNet又はSTL-10などの種々のクラスの自然画像のデータセットが使用されるものとしてもよい。トレーニングは、例えば、損失関数を定義することによって、トレーニング目的を定義することを含み得るものである。
図4は、この損失関数の計算を説明するものである。ここでは、トレーニングデータからの画像パッチ300が、2つの異なるスケール係数に従って、例えば補間によってスケーリングされるものとしてもよく、このスケーリングは、γ1,γ2をそれぞれのスケール係数としたL
γ1,L
γ2として識別されるものとしてもよいことが示されている。例えば、そのようなスケール係数は、例えば、0.5乃至2.0の範囲からランダムにサンプリングされるものとしてもよい。これは、結果として、スケーリングされた画像データを含む2つの画像パッチ310,320をもたらし、これらは、特徴抽出器及びスケール推定器を含むネットワークN
θに供給されるものとしてもよい。ここでのスケール推定器は、パラメータθを有する機械学習可能なモデル部分を有する。ネットワークN
θは、
図3を参照して説明したように、スケーリングされた画像パッチ310,320の各々についてパッチレベルスケール推定値を生成することにより、スケール係数
【数3】
を予測することができる。これは、結果として実際のスケール係数γ1,γ2のセットと、推定されたスケール係数
【数4】
のセットと、をもたらすことができる。次いで、損失関数L
scaleは、次式のように、
【数5】
定義されるものとしてもよい。
【0046】
この損失関数は、2つの既知のスケール係数γ1,γ2の間の差分を表す項γ1-γ2によって表現されるような実際の相対スケールと、パッチレベルスケール推定値
【数6】
の間の差分を表す項
【数7】
によって表現されるような推定された相対スケールとの間の不整合を定義することができる。この不整合が最小である場合には、ネットワークN
θは、推定された相対スケールが実際の相対スケールに類似しているという点において相対スケールを正確に推定していると考えることができる。この損失関数に従ったスケール推定器のトレーニングは、スケール推定器の機械学習可能なモデル部分が、一方の画像を他方に一致させるためにどのくらい補間されるべきかを予測するようにトレーニングされるものとしてもよいという点において、いわゆるスケール対比学習のために提供することができる。そのような取り組みは、任意の専用深度又はスケールラベルを必要とせず、むしろ、サンプリングされたスケール係数γ1,γ2の間の差分(Δ)のみによって教師あり学習が行われる。特定の実施形態においては、このトレーニングは、Adamオプティマイザと1・10
-3に設定された学習率とを使用して、128のバッチサイズで100エポックだけ実行されるものとしてもよい。トレーニング手順は、実際の相対スケールが「true_scale」と称され、推定された相対スケールは「pred_scale」と称され、MSEが誤差項として使用される、以下のPyTorch状の疑似コードを使用して記述されるものとしてもよい。
【表2】
【0047】
トレーニングを引き続き参照すると、任意の他の適当な損失関数が同様に使用されるものとしてもよく、例えば、非二乗誤差などのMSEとは異なる誤差項を使用するものが使用されるものとしてもよい点に留意されたい。付加的に、スケール係数の差分を使用する代わりに、スケール係数の関係の比率又は他のタイプの表現が使用されるものとしてもよい。例えば、L
scaleは、次式
【数8】
のように、スケール係数の比率の差分に基づくものとしてもよい。
【0048】
特定の例においては、スケール係数の関係は、スケール係数の差分の対数又はそれらの比率の対数として表現されるものとしてもよい。
【0049】
いくつかの例においては、損失関数は、2よりも多い画像パッチを考慮に入れることにより、例えば、3つ又はそれ以上のスケール係数を使用することによって定義されるものとしてもよい。いくつかの例においては、スケール係数の少なくとも1つは、例えば、ユニタリースケール係数を表現する1.0である。
【0050】
スケール推定器、特に、パラメータθを有するスケール推定器の機械学習可能なモデル部分がトレーニングされた場合、画像内のオブジェクトの相対スケールを推定するために特徴抽出器及びスケール推定器の組合せが使用されるものとしてもよい。
【0051】
図5A乃至
図5Cは、スケール推定器による推論を示している。ここで、
図5Aは、特徴抽出器及びスケール推定器への入力画像400の例を示しており、この特定の例においては、花畑の形態のシーンが示されている。
図5Bは、非重畳画像パッチ412に分割された入力画像410を示しており、ここで、各画像パッチは、特徴抽出器及びスケール推定器に対する入力として使用される。
図5Cは、スケール推定器によって生成されたシーンジオメトリマップ420を示しており、このシーンジオメトリマップ420は、各画像パッチのためのパッチレベルスケール推定値の画像状の表現として生成されるものとしてもよい。ここで、異なるグレートーンは、異なるスケール推定値を示す。このシーンジオメトリマップにおいては、このシーンが、画像の底部ではカメラ近傍にあるオブジェクトを含み、さらに、カメラから離隔した画像の中央部及び上部近傍にあるオブジェクトを含むことが示されていることがわかる。矢印430によって示されるように、シーンジオメトリマップ420は、拡大されたシーンジオメトリマップ440をもたらすために、例えば、バイキュービック補間を使用して、入力画像410の解像度などの、より高い解像度まで空間的に拡大されるものとしてもよい。いくつかの例においては、最小の推定されたパッチレベルスケール推定値γ
minを、例えば、シーンジオメトリマップ420,440を生成する前に又は生成した後で、各個別のパッチレベルスケール推定値から減算するものとしてもよい。この推論手順は、以下のPyTorch状の疑似コードによって記述されるものとしてもよい。
【表3】
【0052】
オブジェクトの相対スケールの推定値の種々の使用が考えられ、ここでのシーンジオメトリマップの生成は、その単なる一例である。それにもかかわらず、入力画像の画像パッチについてパッチレベルスケール推定値を推定することによってシーンジオメトリマップを容易に生成し得ることは、多くの用途において利点になる可能性が高い。そのようなシーンジオメトリマップは、交通渋滞、混雑した空間、スポーツスタジアム、コンサート、野原などの画像の場合のように、車、人、花などの同一又は類似のタイプのオブジェクトが密集して出現するシーンの画像に対して特に正確である可能性が高い。
【0053】
特定の例には、自動車の車載カメラの映像がある。車両が交通渋滞に遭遇した場合、道路自体や路面標識(例えば、車線など)が見えなくなる又は部分的にしか見えなくなる場合がある。また、車両の前方に他の車両の密集配置状態が存在している点においてシーンが非常に密である場合もある。この場合、道路のジオメトリ、例えばその曲率は、シーンジオメトリマップから推定されるものとしてもよく、このマップは、ここではシーン内の車の相対位置及びスケールを推定することによって取得されるものとしてもよい。
【0054】
他の例として、広幅な道路の上方のどこかには交通監視カメラがあり、このカメラは、通常、道路を横断する歩行者又は車を監視している。交通監視カメラは、自動オブジェクト検出を行うことができるので、実際に道路を横断する人を検出するようにトレーニングされるものとするとよい。シーンジオメトリマップは、オープンルーフの2階建てバスが通過している例においては、カメラによって検出された人が地上の表面にいるように見えるため、実際に道路を横断しているとは考えられないことを示す可能性があるという点において、健全性検査を行うために使用されるものとしてもよい。従って、そのような場合及びそれに類似する場合に、シーンジオメトリマップは、画像に基づくオブジェクト検出に続く決定ロジックへの付加的入力として使用されるものとしてもよい。
【0055】
図6は、他の箇所において説明するような特徴抽出器及びスケール推定器を使用して画像内のオブジェクトの相対スケールを推定するためのシステム500を示している。このシステム500は、特徴抽出器及びスケール推定器のデータ表現にアクセスするための入力インタフェースサブシステムを含み得るものである。例えば、
図6にも示されるように、入力インタフェースサブシステムは、データストレージインタフェース540を含み得るものであり、このインタフェース540を介して特徴抽出器のデータ表現554及びスケール推定器のデータ表現556にアクセスされるものとしてよい。一般に、データストレージインタフェース540及びデータストレージ550は、データストレージインタフェース140及びデータストレージ150について
図1を参照して説明したのと同様のタイプのものであってよい。
図6は、さらに、データストレージ550が、特徴抽出器及びスケール推定器が画像内のオブジェクトの相対スケールを推定するために適用され得る画像の画像データ552を含むことを示している。例えば、画像データ552は、カメラの画像センサによって取得されるものとしてもよく、又は、ライダ若しくはレーダなどの他のタイプの空間センサによって取得されたセンサデータであるものとしてもよい。これらのセンサデータは、画像として表現されるものとしてもよい。いくつかの実施形態においては、そのようなセンサデータは、アクセスされるデータストレージ550からのものに代えて、例えば、センサデータインタフェース560又は他のタイプのインタフェースを介して、センサ620から直接受信されるものとしてもよい。そのような実施形態においては、センサデータ562は、システム500によって、「ライブ」で、例えば、リアルタイム又は疑似リアルタイムで受信されるものとしてもよい。
【0056】
システム500は、プロセッササブシステム520をさらに含み得るものであり、このプロセッササブシステム520は、システム500の動作中に、例えば、シーンジオメトリマップの形態において、画像データのそれぞれの画像パッチについて少なくとも1つのパッチレベルのスケール推定値又はいくつかの例では複数のパッチレベルスケール推定値を生成するために、特徴抽出器及びスケール推定器を画像データ552及び/又は画像データとしてのセンサデータ562に適用するように構成されるものとしてもよい。一般に、プロセッササブシステム520は、
図3乃至
図5C及び他の箇所を参照して先に説明したような任意の機能を実施するように構成されるものとしてもよい。
図6のプロセッササブシステム520についても、
図1のプロセッササブシステム120についてと同様の考慮事項及び任意付加的実装が適用されることがさらに理解されよう。同様の考慮事項及び任意選択的実装は、一般に、特段の明記がない限り、
図1のシステム100に対するように、
図6のシステム500にも適用可能であることがさらに理解されよう。
【0057】
図6は、システム500の種々の任意選択的部品をさらに示している。例えば、いくつかの実施形態においては、システム500は、環境600内のセンサ620によって取得されたセンサデータ562に直接アクセスするためのセンサデータインタフェース560を含み得るものである。センサ620は、システム500の一部であるものとしてもよいが、必ずしもそうである必要はない。センサ620は、画像センサ又は他のタイプの空間センサなど、任意の適当な形態を有することができる。センサデータインタフェース560は、低レベル通信インタフェース、電子バス又はデータストレージインタフェース540について、上述したようなタイプのデータストレージインタフェースを含むがこれらに限定されるものではないセンサのタイプに、そのタイプにおいて対応する任意の適当な形態を有し得る。
【0058】
いくつかの実施形態においては、システム500は、制御データ572を例えば環境600内のアクチュエータ630に提供するための制御インタフェース570などの出力インタフェースを含み得る。そのような制御データ572は、スケール推定器の出力の解析に基づいてアクチュエータ630を制御するためにプロセッササブシステム520によって生成されるものとしてもよい。例えば、アクチュエータ630は、電気的、油圧的、空気圧的、熱的、磁気的及び/又は機械的アクチュエータであるものとしてよい。特定のものではあるが非限定的な例には、電気モータ、電気活性ポリマー、油圧シリンダ、圧電アクチュエータ、空気圧アクチュエータ、サーボ機構、ソレノイド、ステッピングモータ等が含まれる。これにより、システム500は、画像データ内のオブジェクトの相対スケールの推定値に応じて、例えば、製造プロセスを制御するために、ロボットシステム又は自律型車両を制御するためなどに、動作することができる。
【0059】
(
図6には示されていない)他の実施形態において、システム500は、ディスプレイ、光源、スピーカ、振動モータなどのレンダリングデバイスへの出力インタフェースを含み得るものであり、これは、スケール推定器の出力に基づいて生成され得る感覚的に知覚可能な出力信号を生成するために使用されるものとしてもよい。感覚的に知覚可能な出力信号は、パッチレベルスケール推定値又はシーンジオメトリマップを直接示すものとしてもよいが、センサ的に導出される感知可能な出力信号を表すものとしてもよい。レンダリングデバイスを使用することにより、システム500は、ユーザに対して感覚的に知覚可能なフィードバックを提供することができる。
【0060】
一般に、
図1のシステム100及び
図6のシステム500を含むがこれらに限定されるものではない、本明細書に記載されている各システムは、ワークステーション又はサーバなどの単一のデバイス若しくは装置として又はその中に実装されるものとしてもよい。デバイスは、組込デバイスであるものとしてもよい。デバイス又は装置は、適当なソフトウェアを実行する1つ又は複数のマイクロプロセッサを含み得るものである。例えば、それぞれのシステムのプロセッササブシステムは、単一の中央処理装置(CPU)によって実装されるものとしてもよいが、そのようなCPU及び/又は他のタイプの処理ユニットの組合せ又はシステムによって実装されるものとしてもよい。ソフトウェアは、対応するメモリに、例えば、RAMなどの揮発性メモリ又はフラッシュなどの不揮発性メモリにダウンロード及び/又は格納されているものとしてもよい。代替的に、それぞれのシステムのプロセッササブシステムは、プログラマブルロジックの形態において、例えばフィールドプログラマブルゲートアレイ(FPGA)として、デバイス又は装置に実装されるものとしてもよい。一般に、それぞれのシステムの各機能ユニットは、回路の形態において実装されるものとしてもよい。それぞれのシステムは、例えば、分散型ローカルサーバ又はクラウドに基づくサーバなどの異なるデバイス又は装置を含む分散型の手法により実装されるものとしてもよい。いくつかの実施形態においては、システム500は、物理的実体若しくは製造プロセスを制御するように構成された制御システムの一部であるものとしてよく、又は、データ解析システムの一部であるものとしてよい。いくつかの実施形態においては、システム500は、車両、ロボット又は同様のコンピュータ制御される実体の一部であるものとしてよく、及び/又は、前記実体を制御するように構成された制御システムを表すものであってよい。
【0061】
図7は、システム500が、環境600内において動作する(半)自律型車両610の制御システムであることが示されている、上記の一例を示すものである。この自律型車両600は、車両600内に統合されたカメラ622から取得されたセンサデータに基づいて、自律型車両のステアリングやブレーキなどの態様を制御するために、システム500を組み込むことができる。例えば、システム500は、シーンジオメトリマップから検出され得るように、自律型車両600が交通渋滞に遭遇すると予想される場合に、(回生)ブレーキを実行するように電気モータ632を制御することができる。
【0062】
図8は、画像内のオブジェクトの相対スケールを推定するコンピュータ実装された方法700を示している。本方法700は、
図6のシステム500の動作に対応することができるが、他の任意のシステム、機械、装置又はデバイスを使用して又はそれらによって実施されるものとしてもよい。本方法700は、「特徴抽出器を提供する」と題されたステップにおいて、本明細書の他の箇所において説明するような特徴抽出器を提供するステップ710と、「スケール推定器を提供する」と題されたステップにおいて、本明細書の他の箇所において説明するようなスケール推定器を提供するステップ720と、を含むことが示されている。本方法700は、「特徴抽出器及びスケール推定器を画像パッチに適用する」と題されたステップにおいて、特徴抽出器及びスケール推定器を、少なくとも1つの画像パッチのためのパッチレベルスケール推定値を取得するために画像の少なくとも1つの画像パッチに適用するステップ730と、任意選択的に、他の画像パッチのために前記ステップ730を繰り返すステップ740と、「パッチレベルスケール推定値のデータ表現を出力する」と題されたステップにおいて、パッチレベルスケール推定値のデータ表現を、例えば、本明細書の他の箇所において説明するようなシーンジオメトリマップの形態において出力するステップ750と、をさらに含むことが示されている。
【0063】
いくつかの実施形態においては、
図2のコンピュータ実装された方法200及び
図8のコンピュータ実装された方法700は、同一のコンピュータプログラムによって実装されるものとしてもよく、又は、同一のシステムによって実施されるものとしてもよい。他の実施形態においては、
図2のコンピュータ実装された方法200及び
図8のコンピュータ実装された方法700は、異なるコンピュータプログラムによって実装されるものとしてもよく、又は、異なるシステムによって実施されるものとしてもよい。
【0064】
一般に、それぞれ
図2及び
図8のコンピュータ実装された方法200及び700の動作又はステップは、適用可能である場合、例えば、入力/出力関係によって必要とされる特定の順序を条件として、任意の適当な順序により、例えば、連続的に、同時に又はそれらの組合せにより実施されるものとしてよいことが理解されよう。
【0065】
本明細書に記載された各方法、アルゴリズム又は疑似コードは、コンピュータ実装された方法として、専用ハードウェアとして又は両者の組合せとしてコンピュータ上に実装されるものとしてもよい。
図9にも示されているように、コンピュータ用の命令、例えば、実行可能コードは、コンピュータ可読媒体800上に、例えば、機械可読の物理的マークの配列810の形態において、及び/又は、異なる電気的、例えば磁気的若しくは光学的特性若しくは値を有する一連の要素として、格納されるものとしてもよい。実行可能コードは、一時的又は非一時的な手法により格納されるものとしてもよい。コンピュータ可読媒体の例には、メモリデバイス、光ストレージデバイス、集積回路、サーバ、オンラインソフトウェアなどが含まれる。
図9は、光ディスク800を示している。代替的実施形態においては、コンピュータ可読媒体800は、本明細書の他の箇所において説明するような特徴抽出器のデータ表現及び/又はスケール推定器のデータ表現を含み得る。
【0066】
実施例、実施形態又は任意選択的な特徴は、非限定的に示されているかどうかにかかわらず、特許請求の範囲に記載されている本発明を限定するものとして理解されるべきではない。
【0067】
数学的記号及び表記は、本発明の解釈を容易にするために提供されており、特許請求の範囲を限定するものとして解釈されるべきではない。
【0068】
上述の実施形態は、本発明を限定するのではなくむしろ例示するものであり、当業者であるならば、添付の特許請求の範囲から逸脱することなく、多くの代替的実施形態を設計することができる点に留意されたい。特許請求の範囲において、括弧内に記載された参照符号は、特許請求の範囲を限定するものとして解釈されるべきではない。動詞「含む」及びその活用形の使用は、特許請求の範囲に記載されているもの以外の要素又はステップの存在を排除するものではない。要素に先行する冠詞「a」又は「an」は、そのような要素の複数の存在を排除するものではない。要素のリスト又はグループに先行する「少なくとも1つの」などの表現は、リスト又はグループからの要素のすべて又は任意の部分集合の選択を表す。例えば、「A、B及びCのうちの少なくとも1つ」という表現は、Aのみ、Bのみ、Cのみ、A及びBの両方、A及びCの両方、B及びCの両方、又は、A、B及びCのすべてを含むものと理解すべきである。本発明は、複数の異なる要素を含むハードウェアによって、及び、適当にプログラムされたコンピュータによって実装されるものとしてもよい。複数の手段を列挙した装置クレームにおいては、これらの手段のうちのいくつかは、同一の構成要素のハードウェアによって具現化されるものとしてもよい。特定の手段が相互に異なる従属請求項に記載されているという単なる事実は、これらの手段の組合せを有利に使用することができないことを示すものではない。
【手続補正書】
【提出日】2022-08-19
【手続補正1】
【補正対象書類名】図面
【補正方法】変更
【補正の内容】
【外国語明細書】