(57)【要約】【課題】画像に基づいてニューラルネットワークのための入力を生成するための方法を提供すること。【解決手段】本方法は、画像を受信するステップと、画像内の位置を識別するステップと、その位置における画像のサブセットを識別するステップとを含む。画像のサブセットは、コーナーの第１のセットによって定義される。本方法はまた、コーナーの第１のセットのうちの少なくとも１つを摂動し、コーナーの第２のセットを形成するステップを含む。コーナーの第２のセットは、画像の修正されたサブセットを定義する。本方法はさらに、画像のサブセットと画像の修正されたサブセットとの間の比較に基づいて、ホモグラフィを決定するステップと、ホモグラフィを画像に適用することによって、変換された画像を生成するステップと、その位置における変換された画像のサブセットを識別するステップとを含む。【選択図】図３
2020107356.tif 000002
【特許請求の範囲】
【請求項１】
本願明細書に記載の発明。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、２０１６年５月２０日に出願され、“Ｄｅｅｐ  Ｉｍａｇｅ  Ｈｏｍｏｇｒａｐｈｙ  Ｅｓｔｉｍａｔｉｏｎ”と題された、米国仮特許出願第６２／３３９，７９９号に対する優先権を主張するものであり、該米国仮特許出願の開示は、あらゆる目的のためにその全体が参照により本明細書中に援用される。
【背景技術】
【０００２】
２次元（２Ｄ）ホモグラフィ（または射影変換）を画像の対から推定することは、コンピュータビジョンにおける基本タスクである。ホモグラフィは、回転のみの移動、平面場面、および／またはオブジェクトが視認者から非常に離れている場面を含む、シナリオにおける単眼同時位置特定およびマッピング（ＳＬＡＭ）システムの不可欠な部分である。カメラ中心を中心とする回転を受ける２つの画像に関する変換は、ホモグラフィであることが周知であって、ホモグラフィは、パノラマを作成するために不可欠であることは、驚きに値しない。平面および略平面場面に対処するために、一般的ＳＬＡＭアルゴリズムＯＲＢ−ＳＬＡＭは、ホモグラフィ推定と基本行列推定の組み合わせを使用する。ホモグラフィの付加的用途は、拡張現実およびカメラ較正を含む。
【０００３】
ホモグラフィ推定の従来のアプローチは、２つの段階、すなわち、コーナー推定およびロバストホモグラフィ推定を含む。ロバスト性は、大きく過剰な点集合を返すことによって、コーナー検出段階に導入される一方、ホモグラフィ推定ステップへのロバスト性は、ＲＡＮＳＡＣまたは二乗損失関数のロバスト化の多用として現れる。コーナーは、人工線形構造ほどには信頼性がないため、研究団体は、線特徴およびより複雑な幾何学形状を特徴検出ステップに追加することに多大な努力を注いでいる。対の画像が与えられたとき、その対に関するホモグラフィを返す、単一のロバストなアルゴリズムの必要性が、当技術分野には存在する。
【発明の概要】
【課題を解決するための手段】
【０００４】
本発明のある実施形態によると、画像に基づいてニューラルネットワークのための入力を生成するための方法が、提供される。本方法は、画像を受信するステップと、画像内の位置を識別するステップと、その位置における画像のサブセットを識別するステップとを含む。画像のサブセットは、コーナーの第１のセットによって定義される。本方法はまた、コーナーの第１のセットのうちの少なくとも１つを摂動し、コーナーの第２のセットを形成するステップを含む。コーナーの第２のセットは、画像の修正されたサブセットを定義する。本方法はさらに、画像のサブセットと画像の修正されたサブセットとの間の比較に基づいて、ホモグラフィを決定するステップを含む。本方法はまた、ホモグラフィを画像に適用することによって、変換された画像を生成するステップと、その位置における変換された画像のサブセットを識別するステップとを含む。
【０００５】
本発明の別の実施形態によると、ニューラルネットワークを訓練するための方法が、提供される。本方法は、複数の画像を受信するステップを含む。複数の画像の個々の画像毎に、本方法は、個々の画像のサブセット、変換された画像のサブセット、および個々の画像のサブセットと変換された画像のサブセットとに基づくホモグラフィを含む、訓練トリプレットを生成するステップと、ニューラルネットワークによって、個々の画像のサブセットと変換された画像のサブセットとに基づいて推定されるホモグラフィを生成するステップとを含む。本方法はまた、推定されるホモグラフィとホモグラフィを比較するステップと、比較に基づいて、ニューラルネットワークを修正するステップとを含む。
【０００６】
本発明の具体的実施形態によると、２つの画像に基づいて推定されるホモグラフィを生成するための方法が、提供される。本方法は、第１のカメラ姿勢に基づく第１の画像を受信するステップと、第２のカメラ姿勢に基づく第２の画像を受信するステップとを含む。本方法はまた、第１の画像および第２の画像をニューラルネットワークの中に入力するステップと、ニューラルネットワークによって、第１の画像および第２の画像に基づいて推定されるホモグラフィを生成するステップとを含む。ニューラルネットワークは、複数の画像を受信することによって事前に訓練されている。複数の画像の個々の画像毎に、本方法は、個々の画像内の位置を識別するステップと、その位置における個々の画像のサブセットを識別するステップとを含む。個々の画像のサブセットは、コーナーの第１のセットによって定義される。本方法はまた、コーナーの第１のセットのうちの少なくとも１つを摂動し、コーナーの第２のセットを形成するステップであって、コーナーの第２のセットは、個々の画像の修正されたサブセットを定義する、ステップと、画像のサブセットと画像の修正されたサブセットとの間の比較に基づいて、ホモグラフィを決定するステップとを含む。本方法はさらに、ホモグラフィを個々の画像に適用することによって、変換された画像を生成するステップと、その位置における変換された画像のサブセットを識別するステップと、個々の画像のサブセットと変換された画像のサブセットとに基づいて特定の推定されるホモグラフィを生成するステップと、特定の推定されるホモグラフィとホモグラフィを比較するステップと、比較に基づいて、ニューラルネットワークを修正するステップとを含む。
【０００７】
従来の技法に優る多数の利点が、本発明を用いて達成される。例えば、本発明の実施形態は、コーナーが入力画像のうちの１つ内で検出されないとき、画像間の変換を推定する能力を提供する。さらに、本発明の実施形態は、検出されたコーナーが入力画像のうちの１つの小サブセット内に集中するとき、画像間の変換を推定する能力を提供する。他の実装では、実施形態は、画像のうちの１つが、ぼけている、または低光シナリオで撮影されたとき、画像間の変換を推定する能力を提供する。加えて、広範囲の画像モダリティ（限定ではないが、グレースケール画像、カラー（ＲＧＢ）画像、深度（ＲＧＢ−Ｄ）画像、赤外線画像、およびハイパースペクトル画像を含む）のための単一アルゴリズムを使用して画像間の変換を推定する能力が、いくつかの実施形態によって提供される。本発明のこれらおよび他の実施形態は、その利点および特徴の多くとともに、以下の文章および添付の図と併せてより詳細に説明される。
本願明細書は、例えば、以下の項目も提供する。
（項目１）
画像に基づいてニューラルネットワークのための入力を生成するための方法であって、前記方法は、
前記画像を受信することと、
前記画像内の位置を識別することと、
前記位置における前記画像のサブセットを識別することであって、前記画像のサブセットは、コーナーの第１のセットによって定義される、ことと、
前記コーナーの第１のセットのうちの少なくとも１つを摂動し、コーナーの第２のセットを形成することであって、前記コーナーの第２のセットは、前記画像の修正されたサブセットを定義する、ことと、
前記画像のサブセットと前記画像の修正されたサブセットとの間の比較に基づいて、ホモグラフィを決定することと、
前記ホモグラフィを前記画像に適用することによって、変換された画像を生成することと、
前記位置における前記変換された画像のサブセットを識別することと
を含む、方法。
（項目２）
前記画像のサブセット、前記変換された画像のサブセット、および前記ホモグラフィを前記ニューラルネットワークに送信することをさらに含む、項目１に記載の方法。
（項目３）
前記変換された画像のサブセットが境界アーチファクトを含まないことを決定することをさらに含む、項目１に記載の方法。
（項目４）
前記コーナーの第１のセットのうちの前記少なくとも１つを摂動し、前記コーナーの第２のセットを形成することは、
前記コーナーの第２のセットの第１の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第１のコーナーを囲繞する第１の摂動領域を定義することと、
前記コーナーの第２のセットの第２の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第２のコーナーを囲繞する第２の摂動領域を定義することと、
前記コーナーの第２のセットの第３の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第３のコーナーを囲繞する第３の摂動領域を定義することと、
前記コーナーの第２のセットの第４の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第４のコーナーを囲繞する第４の摂動領域を定義することと、
前記第１の摂動されたコーナーを前記第１の摂動領域内の第１のランダム位置に形成することと、
前記第２の摂動されたコーナーを前記第２の摂動領域内の第２のランダム位置に形成することと、
前記第３の摂動されたコーナーを前記第３の摂動領域内の第３のランダム位置に形成することと、
前記第４の摂動されたコーナーを前記第４の摂動領域内の第４のランダム位置に形成することと
を含む、項目１に記載の方法。
（項目５）
前記画像内の位置を識別することは、
前記第１の摂動領域、前記第２の摂動領域、前記第３の摂動領域、および前記第４の摂動領域が前記画像外に延在しないように、前記画像内の位置をランダムに選択すること
を含む、項目４に記載の方法。
（項目６）
前記比較に基づいて前記ホモグラフィを決定することは、
前記コーナーの第１のセットと前記コーナーの第２のセットとの間の１つ以上の変位ベクトルを決定することであって、前記１つ以上の変位ベクトルの各々は、第１の次元および第２の次元における対応するコーナー間のオフセットを示す、こと
を含む、項目１に記載の方法。
（項目７）
前記ホモグラフィを前記画像に適用することによって前記変換された画像を生成することは、
前記ホモグラフィの逆を前記画像に適用し、前記変換された画像を生成すること
を含む、項目１に記載の方法。
（項目８）
ニューラルネットワークを訓練するための方法であって、前記方法は、
複数の画像を受信することと、
前記複数の画像の個々の画像毎に、
前記個々の画像のサブセット、変換された画像のサブセット、および前記個々の画像のサブセットと前記変換された画像のサブセットとに基づくホモグラフィを含む、訓練トリプレットを生成することと、
前記ニューラルネットワークによって、前記個々の画像のサブセットと前記変換された画像のサブセットとに基づいて推定されるホモグラフィを生成することと、
前記推定されるホモグラフィと前記ホモグラフィを比較することと、
前記比較に基づいて、前記ニューラルネットワークを修正することと
を含む、方法。
（項目９）
前記訓練トリプレットを生成することは、
前記個々の画像内の位置を識別することと、
前記位置における前記個々の画像のサブセットを識別することであって、前記個々の画像のサブセットは、コーナーの第１のセットによって定義される、ことと、
前記コーナーの第１のセットのうちの少なくとも１つを摂動し、コーナーの第２のセットを形成することであって、前記コーナーの第２のセットは、前記個々の画像の修正されたサブセットを定義する、ことと、
前記画像のサブセットと前記画像の修正されたサブセットとの間の比較に基づいて、前記ホモグラフィを決定することと、
前記ホモグラフィを前記個々の画像に適用することによって、前記変換された画像を生成することと、
前記位置における前記変換された画像のサブセットを識別することと
を含む、項目８に記載の方法。
（項目１０）
前記画像のサブセット、前記変換された画像のサブセット、および前記ホモグラフィを前記ニューラルネットワークに送信することをさらに含む、項目９に記載の方法。
（項目１１）
前記変換された画像のサブセットが境界アーチファクトを含まないことを決定することをさらに含む、項目９に記載の方法。
（項目１２）
前記コーナーの第１のセットのうちの前記少なくとも１つを摂動し、前記コーナーの第２のセットを形成することは、
前記コーナーの第２のセットの第１の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第１のコーナーを囲繞する第１の摂動領域を定義することと、
前記コーナーの第２のセットの第２の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第２のコーナーを囲繞する第２の摂動領域を定義することと、
前記コーナーの第２のセットの第３の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第３のコーナーを囲繞する第３の摂動領域を定義することと、
前記コーナーの第２のセットの第４の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第４のコーナーを囲繞する第４の摂動領域を定義することと、
前記第１の摂動されたコーナーを前記第１の摂動領域内の第１のランダム位置に形成することと、
前記第２の摂動されたコーナーを前記第２の摂動領域内の第２のランダム位置に形成することと、
前記第３の摂動されたコーナーを前記第３の摂動領域内の第３のランダム位置に形成することと、
前記第４の摂動されたコーナーを前記第４の摂動領域内の第４のランダム位置に形成することと
を含む、項目９に記載の方法。
（項目１３）
前記画像内の位置を識別することは、前記第１の摂動領域、前記第２の摂動領域、前記第３の摂動領域、および前記第４の摂動領域が前記画像外に延在しないように、前記画像内の位置をランダムに選択することを含む、項目１２に記載の方法。
（項目１４）
前記ホモグラフィを前記画像に適用することによって前記変換された画像を生成することは、
前記ホモグラフィの逆を前記画像に適用し、前記変換された画像を生成すること
を含む、項目９に記載の方法。
（項目１５）
２つの画像に基づいて推定されるホモグラフィを生成するための方法であって、
第１のカメラ姿勢に基づく第１の画像を受信することと、
第２のカメラ姿勢に基づく第２の画像を受信することと、
前記第１の画像および前記第２の画像をニューラルネットワークの中に入力することと、
前記ニューラルネットワークによって、前記第１の画像および前記第２の画像に基づいて推定されるホモグラフィを生成することであって、前記ニューラルネットワークは、
複数の画像を受信することと、
前記複数の画像の個々の画像毎に、
前記個々の画像内の位置を識別することと、
前記位置における前記個々の画像のサブセットを識別することであって、前記個々の画像のサブセットは、コーナーの第１のセットによって定義される、ことと、
前記コーナーの第１のセットのうちの少なくとも１つを摂動し、コーナーの第２のセットを形成することであって、前記コーナーの第２のセットは、前記個々の画像の修正されたサブセットを定義する、ことと、
前記画像のサブセットと前記画像の修正されたサブセットとの間の比較に基づいて、ホモグラフィを決定することと、
前記ホモグラフィを前記個々の画像に適用することによって、変換された画像を生成することと、
前記位置における前記変換された画像のサブセットを識別することと、
前記個々の画像のサブセットと前記変換された画像のサブセットとに基づいて特定の推定されるホモグラフィを生成することと、
前記特定の推定されるホモグラフィと前記ホモグラフィを比較することと、
前記比較に基づいて、前記ニューラルネットワークを修正することと
によって事前に訓練されている、ことと
を含む、方法。
（項目１６）
前記画像のサブセット、前記変換された画像のサブセット、および前記ホモグラフィを前記ニューラルネットワークに送信すること
をさらに含む、項目１５に記載の方法。
（項目１７）
前記変換された画像のサブセットが境界アーチファクトを含まないことを決定すること
をさらに含む、項目１５に記載の方法。
（項目１８）
前記コーナーの第１のセットのうちの少なくとも１つを摂動し、前記コーナーの第２のセットを形成することは、
前記コーナーの第２のセットの第１の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第１のコーナーを囲繞する第１の摂動領域を定義することと、
前記コーナーの第２のセットの第２の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第２のコーナーを囲繞する第２の摂動領域を定義することと、
前記コーナーの第２のセットの第３の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第３のコーナーを囲繞する第３の摂動領域を定義することと、
前記コーナーの第２のセットの第４の摂動されたコーナーが形成され得る、前記コーナーの第１のセットの第４のコーナーを囲繞する第４の摂動領域を定義することと、
前記第１の摂動されたコーナーを前記第１の摂動領域内の第１のランダム位置に形成することと、
前記第２の摂動されたコーナーを前記第２の摂動領域内の第２のランダム位置に形成することと、
前記第３の摂動されたコーナーを前記第３の摂動領域内の第３のランダム位置に形成することと、
前記第４の摂動されたコーナーを前記第４の摂動領域内の第４のランダム位置に形成することと
を含む、項目１５に記載の方法。
（項目１９）
前記画像内の位置を識別することは、前記第１の摂動領域、前記第２の摂動領域、前記第３の摂動領域、および前記第４の摂動領域が前記画像外に延在しないように、前記画像内の位置をランダムに選択することを含む、項目１８に記載の方法。
（項目２０）
前記ホモグラフィを前記画像に適用することによって前記変換された画像を生成することは、
前記ホモグラフィの逆を前記画像に適用し、前記変換された画像を生成すること
を含む、項目１５に記載の方法。
【図面の簡単な説明】
【０００８】
本発明のさらなる理解を提供するために含まれる、添付の図面は、本明細書内に組み込まれ、その一部を構成し、本発明の実施形態を図示し、詳細な説明とともに、本発明の原理を説明する役割を果たす。本発明およびそれらが実践され得る種々の方法の基本的理解に必要となり得るもの以上に本発明の構造詳細をより詳細に示すことを試みるものではない。
【０００９】
【図１】図１は、本発明の実施形態による、２つの画像間のホモグラフィの異なるパラメータ化を図示する。
【００１０】
【図２】図２は、本発明の実施形態による、ニューラルネットワークを訓練するためのシステムを図示する。
【００１１】
【図３】図３は、本発明の実施形態による、画像に基づいてニューラルネットワークのための入力を生成するための方法を図示する。
【００１２】
【図４】図４は、本発明の実施形態による、ニューラルネットワークを訓練するための方法を図示する。
【００１３】
【図５Ａ】図５Ａ−５Ｆは、ニューラルネットワークのための入力を生成するための種々の動作を図示する。
【図５Ｂ】図５Ａ−５Ｆは、ニューラルネットワークのための入力を生成するための種々の動作を図示する。
【図５Ｃ】図５Ａ−５Ｆは、ニューラルネットワークのための入力を生成するための種々の動作を図示する。
【図５Ｄ】図５Ａ−５Ｆは、ニューラルネットワークのための入力を生成するための種々の動作を図示する。
【図５Ｅ】図５Ａ−５Ｆは、ニューラルネットワークのための入力を生成するための種々の動作を図示する。
【図５Ｆ】図５Ａ−５Ｆは、ニューラルネットワークのための入力を生成するための種々の動作を図示する。
【００１４】
【図６】図６は、本発明の実施形態による、２つの画像に基づいて推定されるホモグラフィを生成するための方法を図示する。
【００１５】
【図７】図７は、本発明の実施形態による、異なるコーナーの潜在的２Ｄ変位に関するスコアに対応する４つのプロットを図示する。
【００１６】
【図８】図８は、本発明の実施形態による、本発明の実施形態および従来の技法の平均コーナー誤差の平均を示す、プロットを図示する。
【００１７】
【図９】図９Ａ−９Ｄは、従来の技法および本発明の実施形態を使用したホモグラフィ推定結果を図示する。
【００１８】
【図１０】図１０Ａ−１０Ｄは、従来の技法および本発明の実施形態を使用したホモグラフィ推定結果を図示する。
【００１９】
【図１１】図１１Ａ−１１Ｄは、従来の技法および本発明の実施形態を使用したホモグラフィ推定結果を図示する。
【００２０】
【図１２】図１２は、本発明の実施形態による、簡略化されたコンピュータシステムを図示する。
【００２１】
添付の図では、類似コンポーネントおよび／または特徴は、同一数値参照標識を有し得る。さらに、同一タイプの種々のコンポーネントは、ある文字を伴う参照標識が続くことによって、または類似コンポーネントおよび／または特徴を区別する第２の数値参照標識が続くダッシュを伴う参照標識が続くことによって、区別され得る。第１の数値参照標識のみが、本明細書で使用される場合、説明は、添字にかかわらず、同一の第１の数値参照標識を有する類似コンポーネントおよび／または特徴の任意のものに適用可能である。
【発明を実施するための形態】
【００２２】
本発明の実施形態は、画像の対にホモグラフィ推定を実施するための深層畳み込みニューラルネットワークに関する。実施形態は、ホモグラフィ推定タスクに好適なＶｉｓｕａｌ  Ｇｅｏｍｅｔｒｙ  Ｇｒｏｕｐ式（ＶＧＧ式）ネットワークの使用を含む。ある実装では、４点パラメータ化が、採用され、推定性能を改良する。深層ネットワークは、最初から訓練されるための有意な量のデータを利用するため、準無限の訓練トリプレットのデータセット
【化１】
2020107356.tif 000003
が、ＭＳ−ＣＯＣＯデータセットのような実画像の既存のデータセットから作成され得る。本明細書に説明されるように、訓練トリプレット
【化２】
2020107356.tif 000004
は、ランダム射影変換を実画像の大量のデータセットに適用することによって生成されることができる。本発明の実施形態はまた、分類としてのホモグラフィ推定問題の付加的定式化を含み、これは、ホモグラフィにわたる分布を生じ、推定されるホモグラフィの信頼度を決定するために使用されることができる。
【００２３】
図１は、本発明の実施形態による、２つの画像間のホモグラフィの異なるパラメータ化を図示する。いくつかのインスタンスでは、第１のカメラ姿勢１０６ａから捕捉されたオブジェクト１０４の第１の画像１０２ａおよび第２のカメラ姿勢１０６ｂから捕捉されたオブジェクト１０４の第２の画像１０２ｂが、ホモグラフィＨによって関連可能となり得る。例えば、いくつかの実施形態では、ホモグラフィＨが、第１の画像１０２ａに適用され、第２の画像１０２ｂを生成および／または再作成してもよく、逆ホモグラフィＨ−１が、第２の画像１０２ｂに適用され、第１の画像１０２ａを生成および／または再作成してもよい。いくつかの実施形態では、オブジェクト１０４は、第２の画像１０２ｂがホモグラフィＨを使用して完璧に作成され得るような平坦表面であり得る。いくつかの実施形態では、オブジェクト１０４は、非平面であり得るが、第１の画像１０２ａおよび第２の画像１０２ｂがホモグラフィＨによって近似的に関係付けられ得るような第１のカメラ姿勢１０６ａおよび第２のカメラ姿勢１０６ｂから十分な距離にあり得る。
【００２４】
ホモグラフィＨをパラメータ化する最も簡単な方法は、３×３行列および固定スケールを使用するものであり得る。ホモグラフィは、左画像内のピクセル（［ｕ，ｖ］）を右画像内のピクセル（［ｕ’，ｖ’］）にマッピングし、以下の式によって定数倍に定義される。
【数１】
2020107356.tif 000005
３×３行列ホモグラフィは、回転および平行移動項の両方を含み得る。例えば、部分行列［Ｈ１１Ｈ１２；Ｈ２１Ｈ２２］は、ホモグラフィ内の回転項を表す一方、ベクトル［Ｈ１３Ｈ２３］は、平行移動オフセットである。回転および平行移動項を最適化問題の一部として平衡することは、困難であり得る。したがって、いくつかの実施形態では、単一種類の場所変数、すなわち、コーナー場所に基づく、代替パラメータ化が、深層ホモグラフィ推定のためにより好適であり得る。
【００２５】
４点パラメータ化が、Δｕ１＝ｕ１’−ｕ１を第１のコーナーに関するｕ−オフセットとし、Δｕ２＝ｕ２’−ｕ２を第２のコーナーに関するｕ−オフセットとし、Δｕ３＝ｕ３’−ｕ３を第３のコーナーに関するｕ−オフセットとし、Δｕ４＝ｕ４’−ｕ４を第４のコーナーに関するｕ−オフセットとすることによって実装されてもよい。したがって、４点パラメータ化は、以下のように、ホモグラフィを表す。
【数２】
2020107356.tif 000006
式中、Δｖｉ＝ｖｉ’−ｖｉは、ｉ番目のコーナーに関するｖ−オフセットである。ホモグラフィの行列定式化と同等に、４点パラメータ化は、８つの数を使用する。いったん４つのコーナーの変位が、既知となると、Ｈ４ｐｏｉｎｔが、Ｈｍａｔｒｉｘに変換されることができる。これは、種々の技法を使用して、例えば、正規化直接線形変換（ＤＬＴ）アルゴリズムまたはＯｐｅｎＣＶにおける関数ｇｅｔＰｅｒｓｐｅｃｔｉｖｅＴｒａｎｓｆｏｒｍ（）を使用して、遂行されることができる。
【００２６】
図２は、本発明のある実施形態による、ニューラルネットワーク２０１を訓練するためのシステム２００を図示する。システム２００は、複数の画像を訓練トリプレット発生器２０７に提供するために使用され得る、画像データベース２０５を含んでもよい。いくつかのインスタンスでは、訓練トリプレット発生器２０７は、入力画像ＩＡを画像データベース２０５から受信してもよく、画像ＩＡのサブセット
【化３】
2020107356.tif 000007
、変換された画像ＩＢのサブセット
【化４】
2020107356.tif 000008
、および画像ＩＡと変換された画像ＩＢを関連させるホモグラフィＨＡＢ（本明細書では、訓練トリプレットと称される）を生成してもよい。訓練トリプレット発生器２０７によって実施される種々の動作は、図４および５Ａ−５Ｆを参照してさらに詳細に説明される。いくつかの実装では、ホモグラフィＨＡＢは、サブセット
【化５】
2020107356.tif 000009
をサブセット
【化６】
2020107356.tif 000010
に正確にマッピングするため、グラウンドトゥルースホモグラフィと称され得る。
【００２７】
本発明のいくつかの用途では、ニューラルネットワーク２０１は、Ｂａｔｃｈ−ＮｏｒｍおよびＲｅＬＵとともに、３×３畳み込みブロックを利用し、これは、Ｏｘｆｏｒｄ  ＶＧＧ  Ｎｅｔに類似し得る。ニューラルネットワーク２０１は、入力として、１２８×１２８×２サイズの２チャネルグレースケール画像をとってもよい。例えば、ホモグラフィＨＡＢによって関係付けられる、２つの入力画像が、チャネルの観点からスタックされ、ニューラルネットワーク２０１の中にフィードされることができる。いくつかのインスタンスでは、８つの畳み込み層が、２つの畳み込みごとの後に最大プーリング層（２×２、ストライド２）を伴って使用される。８つの畳み込み層は、層毎に、６４、６４、６４、６４、１２８、１２８、１２８、１２８の数のフィルタを有してもよい。畳み込み層後、２つの完全結合層が続き得る。第１の完全結合層は、１０２４ユニットを有してもよい。確率０．５を有するドロップアウトが、最終畳み込み層および第１の完全結合層後に適用されてもよい。
【００２８】
いくつかの実施形態では、２つの異なるネットワーク、すなわち、回帰ネットワークおよび／または分類ネットワークが、ニューラルネットワーク２０１内に実装されてもよい。ネットワークは、最後の層まで同一アーキテクチャを共有してもよく、一方のネットワークは、実数値出力を生じ、他方のネットワークは、別の量を生じる。回帰ネットワークは、直接、８つの実数値の数を生じてもよく、訓練の間、ユークリッド（Ｌ２）損失を最終層として使用する。分類ネットワークは、量子化スキームを使用してもよく、ソフトマックスを最後の層に有してもよく、訓練の間、交差エントロピ損失関数を使用してもよい。量子化は、ある固有の量子化誤差が存在することを示し得るが、分類ネットワークは、分類ネットワークを使用して生じたコーナー毎に、信頼度を生じることが可能であり得る。いくつかのインスタンスでは、２１の量子化ビンが、８つの出力次元毎に使用され、これは、１６８の出力ニューロンを伴う最終層をもたらす。
【００２９】
いくつかのインスタンスでは、ニューラルネットワーク２０１は、反復アルゴリズムまたは反復最適化アルゴリズムを使用して訓練され、これは、確率的勾配降下法アルゴリズムと称され得る。これらの反復最適化アルゴリズムは、ニューラルネットワークの加重のためのランダム設定から開始し、ネットワーク加重に対するニューラルネットワークの誤差信号の導関数である「勾配」を使用して、方向における加重を反復的に移動させる。いくつかの実装では、勾配算出は、微分積分の連鎖律を使用して実施される。勾配は、１つの訓練トリプレットを使用して決定されることができ、その場合、バッチサイズは、１のバッチサイズである。代替として、勾配は、訓練トリプレットのセット、例えば、６４のトリプレットを使用して決定されることができる。本実装では、訓練は、６４のミニバッチを用いて実施される。
【００３０】
図２に図示されるように、サブセット
【化７】
2020107356.tif 000011
および
【化８】
2020107356.tif 000012
が、ニューラルネットワーク２０１の中に入力され、推定されるホモグラフィ
【化９】
2020107356.tif 000013
が、ニューラルネットワーク２０１によって、サブセット
【化１０】
2020107356.tif 000014
および
【化１１】
2020107356.tif 000015
に基づいて生成され、比較が、誤差信号発生器２１１によって、推定されるホモグラフィ
【化１２】
2020107356.tif 000016
とホモグラフィＨＡＢとの間で行われ、誤差信号２０９が、誤差信号発生器２１１によって生成され、ニューラルネットワーク２０１が、誤差信号２０９に基づいて修正される。いくつかのインスタンスでは、誤差信号２０９に基づいてニューラルネットワーク２０１に行われる修正は、同一入力画像を使用したニューラルネットワーク２０１による後続実行後、誤差信号２０９がゼロに向かって駆動（例えば、減少）されるようなものである。例えば、誤差信号２０９が
【化１３】
2020107356.tif 000017
と等しい場合、ニューラルネットワーク２０１は、後続実行後、推定されるホモグラフィ
【化１４】
2020107356.tif 000018
がホモグラフィＨＡＢにより近づくように駆動されるように修正（または自動修正）されてもよい。これは、ニューラルネットワーク２０１内の畳み込み層を修正することによって遂行されてもよい。
【００３１】
図３は、本発明のある実施形態による、画像（画像ＩＡ等）に基づいてニューラルネットワーク（ニューラルネットワーク２０１等）のための入力を生成するための方法３００を図示する。方法３００の動作は、任意の順序で実施されてもよく、全ての動作が、方法３００の実施の際、実施される必要があるわけではない。方法３００の種々の動作は、図５Ａ−５Ｆに関連して示される。
【００３２】
ブロック３０２では、画像ＩＡが、受信される（例えば、図５Ａに図示される画像５１０）。画像ＩＡは、ベクトルまたはピクセル（例えば、ラスタ）ベースである、２次元（２Ｄ）画像であってもよい。例えば、画像ＩＡの各ピクセルは、グレースケール値（ピクセルあたり１つの数値を含む）またはＲＧＢカラーモデル（ピクセルあたり３つの数値を含む）を使用して表されてもよい。いくつかの実施形態では、画像ＩＡは、深度マップであることができ、画像ＩＡの各ピクセルは、深度値であることができる。画像ＩＡは、正方形、長方形、またはある他の形状であってもよい。画像ＩＡを受信するステップは、システム２００の内部または外部のいずれかのいくつかのソースから画像ＩＡを受信する、読み出す、および／または取得するステップを含んでもよい。例えば、図２に図示されるように、訓練トリプレット発生器２０７は、前の画像を使用して訓練トリプレットを生成するステップに続いて（例えば、その直後）、画像データベース２０５から画像ＩＡを読み出してもよい。
【００３３】
ブロック３０４では、位置ｐが、画像ＩＡ内で識別される。位置ｐは、画像ＩＡ内の単一場所（例えば、ピクセル場所）を含んでもよい、または画像ＩＡのサブセットの４つのコーナーの場所等の画像ＩＡ内の複数の場所（例えば、複数のピクセル場所）または画像ＩＡのサブセット内の全てのピクセルを含んでもよい。いくつかの実施形態では、位置ｐは、画像ＩＡの続いて識別されるサブセットの中心ピクセル場所に対応し、中心ピクセル場所は、画像ＩＡの平均垂直ピクセル場所と画像ＩＡの平均水平ピクセル場所の交差点である。いくつかの実施形態では、以下により完全に説明されるように、位置ｐを識別するステップは、画像ＩＡの続いて識別されるサブセットが画像ＩＡ外に延在しないように、画像ＩＡ内のピクセル場所をランダムに選択するステップを含んでもよい。いくつかの実施形態では、位置ｐを識別するステップは、続いて識別される摂動領域が画像ＩＡ外に延在しないように、画像ＩＡ内のピクセル場所をランダムに選択するステップを含んでもよい。
【００３４】
ブロック３０６では、画像ＩＡのサブセット
【化１５】
2020107356.tif 000019
が、位置ｐにおいて識別される。いくつかの実施形態では、サブセット
【化１６】
2020107356.tif 000020
は、図５Ａを参照して示されるサブセット５２０と類似してもよい、または、異なってもよい。例えば、サブセット
【化１７】
2020107356.tif 000021
は、第１のコーナー５２５ａ、第２のコーナー５２５ｂ、第３のコーナー５２５ｃ、および第４のコーナー５２５ｄによって定義された正方形であってもよい。サブセット
【化１８】
2020107356.tif 000022
は、図５Ａでは、正方形として描写されるが、他の実施形態では、サブセット
【化１９】
2020107356.tif 000023
は、長方形、三角形、円形、卵形、またはある他の多角形であってもよい。故に、本発明の実施形態は、正方形画像に限定されない。さらに、サブセット
【化２０】
2020107356.tif 000024
は、ピクセルの単一連続グループ化である必要はなく、ピクセルの複数の接続されていないグループ化の組み合わせであってもよい。随意に、サブセット
【化２１】
2020107356.tif 000025
（同様に、位置ｐ）は、風景、都市の景観、人々、動物、壁、天井、床等の特徴を排他的に含む訓練画像等、所望のタイプの訓練画像に基づいて識別されてもよい。
【００３５】
ブロック３０８では、サブセット
【化２２】
2020107356.tif 000026
を定義するコーナーのうちの少なくとも１つが、
摂動され、１つ以上の摂動されたコーナーを形成する。いくつかの実施形態では、サブセット
【化２３】
2020107356.tif 000027
を定義するコーナーのうちの少なくとも１つを摂動するステップは、図５Ｂおよび５Ｃを参照して示されるものと類似してもよい、または、異なってもよい。例えば、図５Ｂを参照すると、４つの摂動領域５３５が、サブセット５２０のコーナー５２５のそれぞれを囲繞するように形成されてもよい。具体的には、第１の摂動領域５３５ａは、第１のコーナー５２５ａを囲繞するように形成され、第２の摂動領域５３５ｂは、第２のコーナー５２５ｂを囲繞するように形成され、第３の摂動領域５３５ｃは、第３のコーナー５２５ｃを囲繞するように形成され、第４の摂動領域５３５ｄは、第４のコーナー５２５ｄを囲繞するように形成される。摂動領域はそれぞれ、摂動されたコーナー５４０の可能性として考えられる場所を表し、新しいコーナー場所に関するある確率分布と関連付けられてもよい。例えば、いくつかの実施形態では、ある摂動領域内の任意のピクセル場所が、ある摂動領域内の任意の他のピクセル場所が新しいコーナー場所である可能性と同様である一様分布が、採用される。他の実施形態では、コーナー５２５により近いピクセル場所が、新しいコーナー場所として選択される可能性がより高くなるような正規分布が、採用される。
【００３６】
いくつかの実施形態では、変位ベクトル５３０が、コーナー５２５と摂動されたコーナー５４０を関連させるために、コーナー５２５毎に生成される。具体的には、第１の変位ベクトル５３０ａが、第１の摂動領域５３５ａによって定義された確率分布をサンプリングすることに基づいて生成されてもよく、第１のコーナー５２５ａと組み合わせられ（例えば、加算され）、第１の摂動されたコーナー５４０ａを形成してもよい。同様に、第２の変位ベクトル５３０ｂが、第２の摂動領域５３５ｂによって定義された確率分布をサンプリングすることに基づいて生成されてもよく、第２のコーナー５２５ｂと組み合わせられ（例えば、加算され）、第２の摂動されたコーナー５４０ｂを形成してもよい。類似動作が、第３の変位ベクトル５３０ｃおよび第４の変位ベクトル５３０ｄに対して実施されてもよい。
【００３７】
いくつかのインスタンスでは、摂動領域５３５はそれぞれ、２ρの幅および高さを有する。言い換えると、サブセット
【化２４】
2020107356.tif 000028
を定義するコーナー５２５
はそれぞれ、垂直および水平方向の両方における範囲［−ρ、ρ］内の値によって摂動されてもよい。本開示のいくつかの実装では、位置ｐおよび摂動範囲ρは、摂動領域５３５が画像ＩＡ外に延在しないように選択されてもよい。例えば、位置ｐは、サブセット
【化２５】
2020107356.tif 000029
の中心ピクセル場所に対応し、サブセット
【化２６】
2020107356.tif 000030
は、ｌの長さおよび高さを有する場合、少なくとも画像ＩＡの全ての縁からρ＋ｌ／２の距離だけ離れるように位置ｐが選択されるとき、摂動領域５３５は、画像ＩＡ外に延在しない。いくつかのインスタンスでは、位置ｐは、少なくとも画像ＩＡの全ての縁からρ＋ｌ／２の距離だけ離れた領域によって定義される一様確率分布を使用して、画像ＩＡ内のピクセル場所であるようにランダムに選択される。
【００３８】
摂動されたコーナー５４０は、画像ＩＡの修正されたサブセット５４５を定義する。コーナー５２５の少なくとも１つのコーナーが摂動されると、修正されたサブセット５４５は、修正されたサブセット５４５が、サブセット
【化２７】
2020107356.tif 000031
より少なくとも１つ多いピクセル、少なくとも１つ少ないピクセル、または異なる少なくとも１つのピクセルを含むように、サブセット
【化２８】
2020107356.tif 000032
と異なる。修正されたサブセット５４５自体が、サブセット
【化２９】
2020107356.tif 000033
のサブセットであってもよい、またはサブセット
【化３０】
2020107356.tif 000034
自体が、修正されたサブセット５４５のサブセットであってもよい。図５Ｂおよび５Ｃは、サブセット５２０の全４つのコーナーが摂動されることを示すが、いくつかの実施形態では、１つ、２つ、または３つのコーナーが、摂動されてもよい。いくつかのインスタンスでは、変位ベクトル５３０は、修正されたサブセット５４５が、サブセット
【化３１】
2020107356.tif 000035
と同じサイズであるが、所定の方向に偏移され得るように、同じである。
【００３９】
ブロック３１０では、ホモグラフィＨＡＢが、サブセット
【化３２】
2020107356.tif 000036
と修正されたサブセット５４５との間の比較に基づいて決定される。いくつかのインスタンスでは、サブセット
【化３３】
2020107356.tif 000037
と修正されたサブセット５４５との間の比較に基づいてホモグラフィＨＡＢを決定するステップは、コーナー５２５と摂動されたコーナー５４０との間の比較を含んでもよい。例えば、Ｈ４ｐｏｉｎｔの式（式２）を使用して、ｕ−オフセットおよびｖ−オフセットが、変位ベクトル５３０、すなわち、コーナー５２５と摂動されたコーナー５４０との間のベクトルと等しくなるように設定されてもよい。決定された後、ホモグラフィＨＡＢが、１つのパラメータ化から別のパラメータ化に変換されてもよい。例えば、決定された後、ホモグラフィＨＡＢは、Ｈ４ｐｏｉｎｔからＨｍａｔｒｉｘまたはその逆に変換されてもよい。
【００４０】
ブロック３１２では、変換された画像ＩＢが、ホモグラフィＨＡＢを画像ＩＡに適用することによって生成される。種々の方法が、ホモグラフィを決定するために検討されるため、ホモグラフィＨＡＢを画像ＩＡに適用するステップは、画像ＩＡにホモグラフィＨＡＢを直接適用するステップ、またはホモグラフィＨＡＢの逆（例えば、（ＨＡＢ）−１）を適用するステップのいずれかを含んでもよい。いくつかの実施形態では、変換された画像ＩＢは、図５Ｄを参照して示される変換された画像５５０と類似してもよい、または、異なってもよい。ホモグラフィＨＡＢを画像ＩＡに適用するステップは、限定ではないが、乗算、除算、加算、減算、畳み込み、および同等物を含む、ホモグラフィＨＡＢと画像ＩＡとの間の種々の動作のうちの１つ以上のものを実施するステップを含んでもよい。いくつかの実施形態では、画像ＩＢは、ＩＢ＝ＩＡ×（ＨＡＢ）−１となるように、ホモグラフィＨＡＢの逆を画像ＩＡで乗算することによって生成される。
【００４１】
本明細書に説明されるように、ホモグラフィ変換ＨＡＢが、同次座標内の３次元量として表される２次元点間で定義される（式１参照）。したがって、式ｘｉ’＝ＨＡＢｘｉは、数学的に精密である。しかしながら、ホモグラフィを高さＨ、幅Ｗ、および次元Ｄの画像に適用するとき、類似の簡潔な式：Ｉ’〜ＨＡＢ×Ｉが、利用されることができる。この式に関して、ホモグラフィを介したＤ−次元画像の変換は、（ｕ’，ｖ’）として参照されるＩ’から整数値ピクセル場所を求め、逆変換を適用し、オリジナル画像内の実数値座標（ｕ，ｖ）を取得し、次いで、双線形補間を使用して、オリジナル画像からのＤ−次元ピクセル値を補間することによって実施される。言い換えると、ホモグラフィを点に適用するとき、数学的精度が、利用されるが、しかし、ホモグラフィを画像に適用するとき、補間方法が、利用され、各ピクセルのＤ−次元値の値を推測する。補間は、任意の数の次元Ｄの画像のために類似様式で実装されるため、同一の式、すなわち、Ｉ’〜ＨＡＢ×Ｉが、グレースケール画像、カラー画像、ＲＧＢ−Ｄ画像、および任意の大きな次元のＤの画像のために利用されることができる。本明細書におけるホモグラフィを画像に適用する議論は、ホモグラフィを点に適用し、ピクセル値を補間する観点から、当業者によって理解されるであろうことを理解されたい。故に、画像ホモグラフィに関して同等物を有する式は、この点において、補間に基づく近似と理解されるべきである。
【００４２】
ブロック３１４では、画像ＩＢのサブセット
【化３４】
2020107356.tif 000038
が、位置ｐにおいて識別される。いくつかの実施形態では、サブセット
【化３５】
2020107356.tif 000039
は、図５Ｄを参照して示されるサブセット５５５と類似してもよい、または、異なってもよい。例えば、サブセット
【化３６】
2020107356.tif 000040
は、サブセット
【化３７】
2020107356.tif 000041
と同じピクセル場所を有するが、同じピクセル値ではない、正方形であってもよい。例えば、サブセット
【化３８】
2020107356.tif 000042
は、サブセット
【化３９】
2020107356.tif 000043
と同じサイズ（例えば、幅および高さ）であってもよい。サブセット
【化４０】
2020107356.tif 000044
は、図５Ｄでは、正方形として描写されるが、他の実施形態では、サブセット
【化４１】
2020107356.tif 000045
は、長方形、三角形、円形、卵形、またはある他の多角形であってもよい。さらに、サブセット
【化４２】
2020107356.tif 000046
は、ピクセルの単一連続グループ化である必要はなく、ピクセルの複数の接続されていないグループ化の組み合わせであってもよい。
【００４３】
ブロック３１６では、サブセット
【化４３】
2020107356.tif 000047
が境界アーチファクト（例えば、未知のピクセル）を含むかどうかが決定される。例えば、画像ＩＡ外のピクセル場所を含む、摂動領域５３５に起因して、サブセット
【化４４】
2020107356.tif 000048
は、画像ＩＢ外に延在するピクセル場所を含んでもよい。そのような境界アーチファクトは、ニューラルネットワーク２０１の誤った訓練につながり得るため、境界アーチファクトを伴うサブセット
【化４５】
2020107356.tif 000049
が検出されたとき、方法３００を再開することが有利であり得る（例えば、ブロック３０４またはブロック３０８において）。図５Ｅを参照して示されるように、サブセット
【化４６】
2020107356.tif 000050
が、種々のコーナーを含む場合、コーナーのみが、決定が行われるために、境界アーチファクトに関してチェックされる必要がある。サブセット
【化４７】
2020107356.tif 000051
が境界アーチファクトを含まないと決定されると、方法３００は、ブロック３１８に進んでもよい。
【００４４】
ブロック３１８では、訓練トリプレット
【化４８】
2020107356.tif 000052
が、サブセット
【化４９】
2020107356.tif 000053
、サブセット
【化５０】
2020107356.tif 000054
、およびホモグラフィＨＡＢ（図５Ｆに示されるように）を組み合わせることによって生成される。ブロック３１８は、訓練トリプレット
【化５１】
2020107356.tif 000055
をニューラルネットワーク２０１および／または誤差信号発生器２１１に出力する、送信する、ルーティングする、および／または提供することによって実施されてもよい。
【００４５】
図３に図示される具体的ステップは、本発明のある実施形態による、画像に基づいてニューラルネットワークのための入力を生成する特定の方法を提供することを理解されたい。ステップの他のシーケンスもまた、代替実施形態に従って実施されてもよい。例えば、本発明の代替実施形態は、異なる順序で上記に概略されたステップを実施してもよい。さらに、図３に図示される個々のステップは、個々のステップの必要に応じて種々のシーケンスで実施され得る、複数のサブステップを含んでもよい。さらに、付加的ステップが、特定の用途に応じて、追加または除去されてもよい。当業者は、多くの変形例、修正、および代替を認識するであろう。
【００４６】
図４は、本発明のある実施形態による、ニューラルネットワーク２０１を訓練するための方法４００を図示する。方法４００の動作は、任意の順序で実施されてもよく、全ての動作が、方法４００の実施の際、実施される必要があるわけではない。方法４００の種々の動作は、図２および５Ａ−５Ｆに関連して示される。ブロック４０２では、複数の画像が、受信される。複数の画像毎に、ブロック４０４から４１２が、実施されてもよい。
【００４７】
ブロック４０４では、訓練トリプレット
【化５２】
2020107356.tif 000056
が、例えば、図３を参照して図示される画像に基づいてニューラルネットワークのための入力を生成する方法に関連して説明されるような１つ以上の動作を実施することによって生成されてもよい。ブロック４０６では、訓練トリプレット
【化５３】
2020107356.tif 000057
が、例えば、訓練トリプレット
【化５４】
2020107356.tif 000058
をニューラルネットワーク２０１またはニューラルネットワーク２０１に結合される１つ以上のコンポーネント（例えば、誤差信号発生器２１１）に出力および／または送信することによって、ニューラルネットワーク２０１に提供される。
【００４８】
ブロック４０８では、推定されるホモグラフィ
【化５５】
2020107356.tif 000059
が、ニューラルネットワーク２０１によって、サブセット
【化５６】
2020107356.tif 000060
および
【化５７】
2020107356.tif 000061
に基づいて生成される。ブロック４１０では、推定されるホモグラフィ
【化５８】
2020107356.tif 000062
が、ホモグラフィＨＡＢと比較される。比較は、推定されるホモグラフィ
【化５９】
2020107356.tif 000063
およびホモグラフィＨＡＢに基づいて、１つ以上の数学的演算を実施するステップを含んでもよい。ブロック４１０は、ニューラルネットワーク２０１、誤差信号発生器２１１、またはニューラルネットワーク２０１に結合されるある他のコンポーネントによって実施されてもよい。いくつかの実施形態では、ブロック４１０は、誤差信号発生器２１１によって、
【化６０】
2020107356.tif 000064
と等しい誤差信号２０９を計算するステップを含む。ブロック４１２では、ニューラルネットワーク２０１は、ブロック４１０において行われた比較に基づいて修正される。例えば、ニューラルネットワーク２０１は、後続実行後、推定されるホモグラフィ
【化６１】
2020107356.tif 000065
がホモグラフィＨＡＢにより近づくように駆動されるように、修正（または自動修正）されてもよい。さらに、ニューラルネットワーク２０１に行われる修正の程度は、誤差信号２０９に比例してもよい。
【００４９】
ブロック４１４では、付加的画像が存在するかどうかが決定される。付加的画像が存在する場合、方法４００は、ブロック４０４に戻り、訓練トリプレット
【化６２】
2020107356.tif 000066
が、次の画像ＩＡに関して生成されてもよい。付加的画像が存在しない場合、方法４００は、終了する。いくつかの実施形態では、付加的画像が存在しないと決定されると、方法４００は、ブロック４０４に戻ってもよく、異なる訓練トリプレット
【化６３】
2020107356.tif 000067
が、以前に使用された画像に関して生成されてもよい。例えば、訓練トリプレット
【化６４】
2020107356.tif 000068
は、異なる摂動領域を使用して生成されてもよい、または方法４００の以前の反復の間に異なるようにランダムにサンプリングされた類似摂動領域を使用して生成されてもよい。
【００５０】
いくつかの実施形態では、ニューラルネットワーク２０１を訓練するために使用される訓練画像のタイプは、特定用途向けホモグラフィ推定エンジンが構築され得るように選択されてもよい。例えば、ホモグラフィ推定を介した平面ＳＬＡＭを使用して屋内の工場の床をナビゲートする、ロボットが、屋内の工場のロボットの画像センサから捕捉された画像のみを用いて訓練され得る。
【００５１】
図４に図示される具体的ステップは、本発明のある実施形態による、ニューラルネットワークを訓練する特定の方法を提供することを理解されたい。ステップの他のシーケンスもまた、代替実施形態に従って実施されてもよい。例えば、本発明の代替実施形態は、異なる順序で上記に概略されたステップを実施してもよい。さらに、図４に図示される個々のステップは、個々のステップの必要に応じて種々のシーケンスで実施され得る、複数のサブステップを含んでもよい。さらに、付加的ステップが、特定の用途に応じて、追加または除去されてもよい。当業者は、多くの変形例、修正、および代替を認識するであろう。
【００５２】
本発明の一実装では、ニューラルネットワーク２０１は、０．９のモーメンタムを用いた確率的勾配降下法（ＳＧＤ）を使用して、単一Ｔｉｔａｎ  Ｘ  ＧＰＵ上で約８時間にわたって訓練される。０．００５の基礎学習レートが、使用されてもよく、学習レートは、３０，０００回の反復回数毎に１０倍減少されてもよい。ニューラルネットワーク２０１は、６４のバッチサイズを使用して、９０，０００回の総反復回数にわたって訓練されてもよい。いくつかの実装では、Ｃａｆｆｅ等の一般的オープンソース深層学習パッケージが、利用されてもよい。訓練データを作成するために、ＭＳ−ＣＯＣＯ訓練セットが、利用されてもよい。全ての画像は、３２０×２４０にサイズ調整され、グレースケールに変換されてもよい。いくつかの実施形態では、ホモグラフィによって関係付けられる１２８×１２８サイズの５００，０００対の画像パッチが、生成されてもよい。各摂動領域のρ値は、３２に設定されてもよく、これは、１２８×１２８グレースケール画像の各コーナーが、総画像縁サイズの最大４分の１まで摂動され得ることを意味する。前述のように、より大きい摂動領域は、極端な画像変換を回避するために回避されてもよい。いくつかのインスタンスでは、ニューラルネットワーク２０１の加重は、ランダム値に初期化され、最初から訓練される（すなわち、事前訓練なし）。ＭＳ−ＣＯＣＯ検証セットが、使用され、過剰適合を監視してもよい。
【００５３】
図６は、本発明のある実施形態による、２つの画像に基づいて推定されるホモグラフィ
【化６５】
2020107356.tif 000069
を生成するための方法６００を図示する。方法６００の動作は、任意の順序で実施されてもよく、全ての動作が、方法６００の実施の際、実施される必要があるわけではない。ステップ６０２では、ニューラルネットワーク２０１が、例えば、図４を参照して図示されるニューラルネットワークを訓練する方法に関連して説明されるような１つ以上の動作を実施することによって、複数の画像を使用して訓練される。ステップ６０４では、第１のカメラ姿勢に基づく第１の画像が、受信される。第１の画像は、カメラによって捕捉された２Ｄ画像であってもよい。第１の画像を受信するステップは、第１の画像を受信する、読み出す、取得する、および／または捕捉するステップを含んでもよい。ステップ６０６では、第２のカメラ姿勢に基づく第２の画像が、受信される。第２の画像は、第１の画像と同一カメラまたは異なるカメラによって捕捉された２Ｄ画像であってもよい。ステップ６０８では、第１の画像および第２の画像が、ニューラルネットワーク２０１の中に入力される。ステップ６１０では、推定されるホモグラフィ
【化６６】
2020107356.tif 000070
が、第１の画像および第２の画像に基づいて生成されてもよい。例えば、第１の画像および第２の画像は、スタックされ、ニューラルネットワーク２０１の中にフィードされてもよく、これは、推定されるホモグラフィ
【化６７】
2020107356.tif 000071
を出力として生成してもよい。ＲＧＢ画像に加え、本発明の実施形態は、限定ではないが、グレースケール画像、カラー画像、ＲＧＢＤ画像、赤外線画像、および同等物を含む、変動する次元およびモダリティの広範囲の画像に適用可能である。
【００５４】
図６に図示される具体的ステップは、本発明のある実施形態による、２つの画像に基づいて推定されるホモグラフィを生成する特定の方法を提供することを理解されたい。ステップの他のシーケンスもまた、代替実施形態に従って実施されてもよい。例えば、本発明の代替実施形態は、異なる順序で上記に概略されたステップを実施してもよい。さらに、図６に図示される個々のステップは、個々のステップの必要に応じて種々のシーケンスで実施され得る、複数のサブステップを含んでもよい。さらに、付加的ステップが、特定の用途に応じて、追加または除去されてもよい。当業者は、多くの変形例、修正、および代替を認識するであろう。
【００５５】
図７は、本発明のある実施形態による、異なるコーナーの潜在的２Ｄ変位に関するスコアに対応する４つのプロットを図示する。いくつかの実施形態では（概して、分類ネットワークを利用するもの）、ニューラルネットワーク２０１が、特定のコーナー場所と関連付けられた信頼度が取得され得るように、潜在的２Ｄ変位毎にスコアを生成する。例えば、図７を参照すると、コーナー４と関連付けられたスコアの分布は、コーナー３と関連付けられたスコアの分布より狭いため、コーナー４に関するコーナー場所は、コーナー３に関するコーナー場所を上回る信頼度を伴って推定され得る。
【００５６】
図８は、本発明の実施形態および従来の技法の平均コーナー誤差の平均（ピクセル単位で表される）を示す、プロット８００を図示する。本開示の一実装では、Ｗａｒｐｅｄ  ＭＳ−ＣＯＣＯ１４試験セットが、試験セットから５，０００枚の画像を選定し、各画像をグレースケール６４０×４８０にサイズ調整することによって作成された。２５６×２５６サイズの対の画像パッチが、方法３００およびρ＝６４を使用した対応するグラウンドトゥルースホモグラフィを用いて生成された。ニューラルネットワーク２０１の分類および回帰変形が、従来の技法と比較された。本開示のいくつかの実施形態は、１２８×１２８×２入力の固定サイズを予期するため、Ｗａｒｐｅｄ  ＭＳ−ＣＯＣＯ１４試験セットからの画像対は、ニューラルネットワーク２０１を通して通過される前に２５６×２５６×２から１２８×１２８×２にサイズ調整された。ネットワークによる４点パラメータ化ホモグラフィ出力が、次いで、これを考慮するために２倍に乗算され得る。分類ネットワークを評価するとき、最高信頼度を伴うコーナー変位が、４つの返されたコーナー毎に選定される。
【００５７】
本実装の結果は、図８に示される。平均コーナー誤差の平均は、４つのコーナー毎の推定されるコーナーと実際のコーナーとの間の平均誤差に対応する。いくつかの実施形態では、本メトリックを測定するために、グラウンドトゥルースコーナー位置と推定されるコーナー位置との間のＬ２距離が、算出される。図８では、バー８０２は、回帰ネットワークを使用する本開示の実施形態に対応し、バー８０４は、従来のアプローチ（ＯＲＢ＋ＲＡＮＳＡＣ）に対応し、バー８０６は、異なるコーナーの潜在的２Ｄ変位に関するスコア（図７を参照して示されるもの等）が推定されるホモグラフィ
【化６８】
2020107356.tif 000072
に加えて生成される、分類ネットワークを使用する本開示の実施形態に対応する。回帰ネットワークは、最良性能を発揮するが、分類ネットワークは、信頼度をもたらし、結果を視覚的にデバッグする有意義な方法を提供することができる。
【００５８】
図９Ａ−９Ｄは、従来の技法および本発明の実施形態を使用したホモグラフィ推定結果を図示する。図９Ａおよび９Ｂは、ＯＲＢベースのホモグラフィ推定の出力を図示し、図９Ｃおよび９Ｄは、本発明の実施形態の出力を示す。図９Ａを参照すると、画像９０５の領域９１０が、定義される。図９Ｂを参照すると、画像９０５は、変換され、画像９１５を形成する。図９Ｂでは、領域９１０は、画像９０５と画像９１５との間で使用されたのと同一の変換を使用して、領域９２０に変換された。したがって、ホモグラフィＨＡＢが、領域９１０と領域９２０との間に定義される。本ホモグラフィＨＡＢは、領域９１０を領域９２０に正確にマッピングするため、グラウンドトゥルースホモグラフィと称され得る。図９Ｂでは、ＯＲＢ等の従来の特徴検出器を使用して、推定されるホモグラフィを生成するための試みが成された。しかしながら、画像が、大きな割合の一様な空を含み、特徴検出器が適切に機能するための十分な数の特徴を欠いているため、推定されるホモグラフィは、生成されなかった。
【００５９】
従来の方法と対照的に、図９Ｃおよび９Ｄは、本発明の実施形態を使用して生成されたグラウンドトゥルースホモグラフィおよび推定されるホモグラフィを図示する。図９Ａと同じである、図９Ｃを参照すると、画像９０５の領域９１０が、定義される。図９Ｄでは、領域９２０は、ホモグラフィＨＡＢ（すなわち、グラウンドトゥルースホモグラフィ）を通して、領域９１０に関係付けられる。加えて、図９Ｄでは、領域９４０は、本発明の実施形態を使用して決定された推定されるホモグラフィ
【化６９】
2020107356.tif 000073
によって、領域９１０に関係付けられる。サブセット９２０とサブセット９４０との間の差異は、本実施例では、無視可能であって、事実上重複する領域をもたらす。故に、推定されるホモグラフィは、従来の方法が任意の推定されるホモグラフィを生成することに失敗したという事実にもかかわらず、グラウンドトゥルースホモグラフィに密接に合致する。
【００６０】
図１０Ａ−１０Ｄは、従来の技法および本発明の実施形態を使用したホモグラフィ推定結果を図示する。図１０Ａおよび１０Ｂは、ＯＲＢベースのホモグラフィ推定の出力を図示し、図１０Ｃおよび１０Ｄは、本発明の実施形態の出力を示す。図９Ａ／９Ｂおよび９Ｃ／９Ｄに類似する様式において、画像１００５の領域１０１０が、定義される。図１０Ｂを参照すると、画像１００５は、変換され、画像１０１５を形成する。図１０Ｂでは、領域１０１０は、画像１００５と画像１０１５との間で使用されたのと同一の変換を使用して、領域１０２０に変換された。したがって、（グラウンドトゥルース）ホモグラフィＨＡＢが、領域１０１０と領域１０２０との間に定義される。領域１０１０および領域１０３０は、ＯＲＢベースのホモグラフィ推定を使用して決定された推定されるホモグラフィ
【化７０】
2020107356.tif 000074
によって関係付けられる。図１０Ａおよび１０Ｂを参照すると、特徴検出プロセスが、領域１０１０内の特徴と領域１０３０内の特徴を接続する線１０２５によって図示される。ＯＲＢベースのホモグラフィ推定を使用して推定されるホモグラフィを生成するための十分な特徴が検出されたが、推定されるホモグラフィに関する平均コーナー誤差は、９１．６７であった。
【００６１】
図１０Ｃおよび１０Ｄを参照すると、本発明の実施形態を使用して生成されたグラウンドトゥルースホモグラフィおよび推定されるホモグラフィが、図示および比較される。図１０Ａと同じである、図１０Ｃを参照すると、画像１００５の領域１０１０が、定義される。図１０Ｄでは、領域１０２０は、ホモグラフィＨＡＢ（すなわち、グラウンドトゥルースホモグラフィ）を通して、領域１０１０に関係付けられる。加えて、図１０Ｄでは、領域１０４０は、本発明の実施形態を使用して決定された推定されるホモグラフィ
【化７１】
2020107356.tif 000075
によって、領域１０１０に関係付けられる。サブセット１０２０とサブセット１０４０との間の差異は、本実施例では、無視可能であって、事実上重複する領域をもたらす。本結果は、本発明の実施形態を使用して達成される４．１０の平均コーナー誤差と比較して、図１０Ｂにおけるサブセット１０３０（９１．６７の平均コーナー誤差）とは際立って対照的である。
【００６２】
図１１Ａ−１１Ｄは、従来の技法および本発明の実施形態を使用したホモグラフィ推定結果を図示する。図１１Ａおよび１１Ｂは、ＯＲＢベースのホモグラフィ推定の出力を図示し、図１１Ｃおよび１１Ｄは、本発明の実施形態の出力を示す。少量のガウス雑音が、カメラによって捕捉され得る実際の画像をシミュレートするための図１１Ａおよび１１Ｂにおける画像のそれぞれに追加された。図１１Ａを参照すると、画像１１０５の領域１１１０が、定義される。図１１Ｂを参照すると、画像１１０５は、変換され、画像１１１５を形成する。図１１Ｂでは、領域１１１０は、画像１１０５と画像１１１５との間で使用されたのと同一の変換を使用して、領域１１２０に変換された。したがって、（グラウンドトゥルース）ホモグラフィＨＡＢが、領域１１１０と領域１１２０との間に定義される。領域１１１０および領域１１３０は、ＯＲＢベースのホモグラフィ推定を使用して決定された推定されるホモグラフィ
【化７２】
2020107356.tif 000076
によって関係付けられる。図１１Ａおよび１１Ｂを参照すると、特徴検出プロセスが、領域１１１０内の特徴と領域１１３０内の特徴を接続する線１１２５によって図示される。ＯＲＢベースのホモグラフィ推定を使用して、推定されるホモグラフィを生成するために十分な特徴が検出されたが、推定されるホモグラフィに関する平均コーナー誤差は、９１．６７であった。
【００６３】
図１１Ｃおよび１１Ｄを参照すると、本発明の実施形態を使用して生成されたグラウンドトゥルースホモグラフィおよび推定されるホモグラフィが、図示および比較される。図１１Ａと同じである、図１１Ｃを参照すると、画像１１０５の領域１１１０が、定義される。図１１Ｄでは、領域１１２０は、ホモグラフィＨＡＢ（すなわち、グラウンドトゥルースホモグラフィ）を通して、領域１１１０に関係付けられる。加えて、図１１Ｄでは、領域１１４０は、本発明の実施形態を使用して決定された推定されるホモグラフィ
【化７３】
2020107356.tif 000077
によって、領域１１１０に関係付けられる。サブセットの有意な部分にわたって分散された多数の特徴が、ＯＲＢベースのホモグラフィ推定を使用して検出されたにもかかわらず、従来の方法から生じる平均コーナー誤差は、再び、本発明の実施形態を使用して達成されたものを有意に上回った（７．４０と比較して５１．９２）。故に、本発明の実施形態は、異なるカメラ視点が画像変換をもたらす用途だけではなく、画像がぼけている用途および／またはぼけて／変換される用途にも使用のために好適である。
【００６４】
図１２は、本発明のある実施形態による、簡略化されたコンピュータシステム１２００を図示する。図１２に図示されるようなコンピュータシステム１２００は、ポータブル電子デバイス、携帯電話、または本明細書に説明されるような他のデバイス等のデバイスの中に組み込まれてもよい。図１２は、種々の実施形態によって提供される方法のステップの一部または全部を実施することができる、コンピュータシステム１２００の一実施形態の略図を提供する。図１２は、種々のコンポーネントの一般化された例証を提供するためだけに意図され、そのいずれかまたは全てが、必要に応じて利用されてもよいことに留意されたい。図１２は、したがって、広義には、個々のシステム要素が比較的に分離された様式または比較的により統合された様式において実装され得る状況を図示する。
【００６５】
コンピュータシステム１２００は、バス１２０５を介して電気的に結合されることができる、または必要に応じて別様に通信し得る、ハードウェア要素を備えるように示される。ハードウェア要素は、限定ではないが、デジタル信号処理チップ、グラフィック加速プロセッサ、および／または同等物等の、１つ以上の汎用プロセッサおよび／または１つ以上の特殊目的プロセッサを含む、１つ以上のプロセッサ１２１０と、限定ではないが、マウス、キーボード、カメラ、および／または同等物を含むことができる、１つ以上の入力デバイス１２１５と、限定ではないが、ディスプレイデバイス、プリンタ、および／または同等物を含むことができる、１つ以上の出力デバイス１２２０とを含んでもよい。
【００６６】
コンピュータシステム１２００はさらに、限定ではないが、ローカルおよび／またはネットワークアクセス可能記憶装置を備えることができ、および／または、限定ではないが、プログラム可能である、フラッシュ更新可能である、および／または同等物であることができる、ディスクドライブ、ドライブアレイ、光学記憶デバイス、ランダムアクセスメモリ（「ＲＡＭ」）等のソリッドステート記憶デバイス、および／または読取専用メモリ（「ＲＯＭ」）を含むことができる、１つ以上の非一過性記憶デバイス１２２５を含む、および／またはそれと通信してもよい。そのような記憶デバイスは、限定ではないが、種々のファイルシステム、データベース構造、および／または同等物を含む、任意の適切なデータ記憶を実装するように構成されてもよい。
【００６７】
コンピュータシステム１２００はまた、限定ではないが、Ｂｌｕｅｔｏｏｔｈ（登録商標）デバイス、８０２．１１デバイス、ＷｉＦｉデバイス、ＷｉＭａｘデバイス、セルラー通信設備等、および／または同等物等のモデム、ネットワークカード（無線または有線）、赤外線通信デバイス、無線通信デバイス、および／またはチップセットを含むことができる、通信サブシステム１２３０を含み得る。通信サブシステム１２３０は、１つ以上の入力および／または出力通信インターフェースを含み、データが、一実施例として挙げるために以下に説明されるネットワーク、すなわち、他のコンピュータシステム、テレビ、および／または本明細書に説明される任意の他のデバイス等のネットワークと交換されることを可能にしてもよい。所望の機能性および／または他の実装懸念に応じて、ポータブル電子デバイスまたは類似デバイスは、通信サブシステム１２３０を介して、画像および／または他の情報を通信してもよい。他の実施形態では、ポータブル電子デバイス、例えば、第１の電子デバイスは、コンピュータシステム１２００、例えば、電子デバイスの中に入力デバイス１２１５として組み込まれてもよい。いくつかの実施形態では、コンピュータシステム１２００はさらに、作業メモリ１２３５を備え、これは、上記に説明されるようなＲＡＭまたはＲＯＭデバイスを含むことができる。
【００６８】
コンピュータシステム１２００はまた、種々の実施形態によって提供されるコンピュータプログラムを備え得る、および／または本明細書に説明されるような他の実施形態によって提供される方法を実装し、および／またはシステムを構成するように設計され得る、１つ以上のアプリケーションプログラム１２４５等のオペレーティングシステム１２４０、デバイスドライバ、実行可能ライブラリ、および／または他のコードを含む、作業メモリ１２３５内に現在位置するものとして示される、ソフトウェア要素を含むことができる。単に、一例として、図１２に関連して説明されるもの等の前述の方法に関して説明される１つ以上のプロシージャは、コンピュータまたはコンピュータ内のプロセッサによって実行可能なコードおよび／または命令として実装され得、ある側面では、次いで、そのようなコードおよび／または命令は、説明される方法に従って１つ以上の動作を実施するように汎用コンピュータまたは他のデバイスを構成および／または適合するために使用されることができる。
【００６９】
これらの命令および／またはコードのセットは、上記に説明される記憶デバイス１２２５等の非一過性コンピュータ可読記憶媒体上に記憶されてもよい。ある場合には、記憶媒体は、コンピュータシステム１２００等のコンピュータシステム内に組み込まれ得る。他の実施形態では、記憶媒体は、コンピュータシステムと別個である、例えば、コンパクトディスク等の可撤性媒体である、および／または記憶媒体が、汎用コンピュータをその上に記憶される命令／コードを用いてプログラム、構成、および／または適合するために使用され得るように、インストールパッケージ内に提供され得る。これらの命令は、コンピュータシステム１２００によって実行可能である、実行可能コードの形態をとり得る、および／または、例えば、種々の概して利用可能なコンパイラ、インストールプログラム、圧縮／解凍ユーティリティ等のいずれかを使用したコンピュータシステム１２００上へのコンパイルおよび／またはインストールに応じて、次いで、実行可能コードの形態をとる、ソースおよび／またはインストール可能コードの形態をとり得る。
【００７０】
実質的な変形例が、具体的要件に従って構成されてもよいことが、当業者に明白となるであろう。例えば、カスタマイズされたハードウェアもまた、使用され得る、および／または特定の要素が、ハードウェア、アプレット等のポータブルソフトウェアを含む、ソフトウェア、または両方内に実装され得る。さらに、ネットワーク入力／出力デバイス等の他のコンピューティングデバイスへの接続も、採用されてもよい。
【００７１】
前述のように、一側面では、いくつかの実施形態は、コンピュータシステム１２００等のコンピュータシステムを採用し、本技術の種々の実施形態による方法を実施してもよい。一式の実施形態によると、そのような方法のプロシージャの一部または全部は、プロセッサ１２１０が、オペレーティングシステム１２４０の中に組み込まれ得る、１つ以上の命令の１つ以上のシーケンス、および／または作業メモリ１２３５内に含有される、アプリケーションプログラム１２４５等の他のコードを実行することに応答して、コンピュータシステム１２００によって実施される。そのような命令は、記憶デバイス１２２５のうちの１つ以上のもの等の別のコンピュータ可読媒体から作業メモリ１２３５の中に読み取られてもよい。単に、一例として、作業メモリ１２３５内に含有される命令のシーケンスの実行は、プロセッサ１２１０に、本明細書に説明される方法の１つ以上のプロシージャを実施させ得る。加えて、または代替として、本明細書に説明される方法の一部は、特殊ハードウェアを通して実行されてもよい。
【００７２】
用語「機械可読媒体」および「コンピュータ可読媒体」は、本明細書で使用されるとき、機械を具体的方式で動作させるデータを提供することに関わる、任意の媒体を指す。コンピュータシステム１２００を使用して実装される、ある実施形態では、種々のコンピュータ可読媒体は、実行のための命令／コードをプロセッサ１２１０に提供する際に関わり得る、および／またはそのような命令／コードを記憶および／または搬送するために使用され得る。多くの実装では、コンピュータ可読媒体は、物理的および／または有形記憶媒体である。そのような媒体は、不揮発性媒体または揮発性媒体の形態をとってもよい。不揮発性媒体は、例えば、記憶デバイス１２２５等の光学および／または磁気ディスクを含む。揮発性媒体は、限定ではないが、作業メモリ１２３５等の動的メモリを含む。
【００７３】
一般的形態の物理的および／または有形コンピュータ可読媒体は、例えば、フロッピー（登録商標）ディスク、可撓性ディスク、ハードディスク、磁気テープ、または任意の他の磁気媒体、ＣＤ−ＲＯＭ、任意の他の光学媒体、パンチカード、紙テープ、孔のパターンを伴う任意の他の物理的媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＦＬＡＳＨ−ＥＰＲＯＭ、任意の他のメモリチップまたはカートリッジ、またはコンピュータが命令および／またはコードを読み取ることができる、任意の他の媒体を含む。
【００７４】
種々の形態のコンピュータ可読媒体が、実行のための１つ以上の命令の１つ以上のシーケンスをプロセッサ１２１０に搬送する際に関わってもよい。単に、一例として、命令は、最初に、遠隔コンピュータの磁気ディスクおよび／または光学ディスク上で搬送されてもよい。遠隔コンピュータは、命令をその動的メモリの中にロードし、コンピュータシステム１２００によって受信および／または実行される伝送媒体を経由して、命令を信号として送信し得る。
【００７５】
通信サブシステム１２３０および／またはそのコンポーネントは、概して、信号を受信し、バス１２０５が、次いで、信号および／または信号によって搬送されるデータ、命令等を作業メモリ１２３５に搬送し得、そこから、プロセッサ１２１０が、命令を読み出し、実行する。作業メモリ１２３５によって受信された命令は、随意に、プロセッサ１２１０による実行前または後のいずれかにおいて、非一過性記憶デバイス１２２５上に記憶されてもよい。
【００７６】
前述の方法、システム、およびデバイスは、実施例である。種々の構成は、必要に応じて、種々のプロシージャまたはコンポーネントを省略、代用、または追加してもよい。例えば、代替構成では、本方法は、説明されるものと異なる順序で実施されてもよく、および／または種々の段階は、追加される、省略される、および／または組み合わせられてもよい。また、ある構成に関して説明される特徴は、種々の他の構成において組み合わせられてもよい。構成の異なる側面および要素は、類似様式で組み合わせられてもよい。また、技術は、進歩するものであって、したがって、要素の多くは、実施例であって、本開示の範囲または請求項を限定するものではない。
【００７７】
具体的詳細が、実装を含む、例示的構成の完全な理解を提供するために説明に与えられる。しかしながら、構成は、これらの具体的詳細を伴わずに実践されてもよい。例えば、周知の回路、プロセス、アルゴリズム、構造、および技法は、構成を曖昧にすることを回避するために、不必要な詳細を伴わずに示されている。本説明は、例示的構成のみを提供し、請求項の範囲、可用性、または構成を限定するものではない。むしろ、構成の前述の説明は、当業者に説明される技法を実装するための有効な説明を提供するであろう。種々の変更が、本開示の精神または範囲から逸脱することなく、要素の機能および配列に行われてもよい。
【００７８】
また、構成は、概略フローチャートまたはブロック図として描写される、プロセスとして説明され得る。それぞれ、シーケンシャルプロセスとして動作を説明し得るが、動作の多くは、並行して、または同時に実施されてもよい。加えて、動作の順序は、再配列されてもよい。プロセスは、図内に含まれない付加的ステップを有してもよい。さらに、本方法の実施例は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、または任意のそれらの組み合わせによって実装されてもよい。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコード内に実装されるとき、必要タスクを実施するためのプログラムコードまたはコードセグメントは、記憶媒体等の非一過性コンピュータ可読媒体内に記憶されてもよい。プロセッサは、説明されるタスクを実施してもよい。
【００７９】
いくつかの例示的構成が説明されたが、種々の修正、代替構造、および均等物が、本開示の精神から逸脱することなく、使用されてもよい。例えば、前述の要素は、より大きいシステムのコンポーネントであってもよく、他のルールが、本技術の用途に優先する、または別様にそれを修正してもよい。また、いくつかのステップは、前述の要素が検討される前、間、または後に行われてもよい。故に、前述の説明は、請求項の範囲を束縛するものではない。
【００８０】
本明細書および添付の請求項で使用されるように、単数形「ａ」、「ａｎ」、および「ｔｈｅ」は、文脈によって明確に別様に示されない限り、複数参照を含む。したがって、例えば、「ユーザ」の言及は、複数のそのようなユーザを含み、「プロセッサ」の言及は、１つ以上のプロセッサおよび当業者に公知のその均等物等の言及を含む。
【００８１】
また、単語「ｃｏｍｐｒｉｓｅ（〜を備える）」、「ｃｏｍｐｒｉｓｉｎｇ（〜を備える）」、「ｃｏｎｔａｉｎｓ（〜を含有する）」、「ｃｏｎｔａｉｎｉｎｇ（〜を含有する）」、「ｉｎｃｌｕｄｅ（〜を含む）」、「ｉｎｃｌｕｄｉｎｇ（〜を含む）」、および「ｉｎｃｌｕｄｅｓ（〜を含む）」は、本明細書および以下の請求項で使用されるとき、述べられた特徴、整数、コンポーネント、またはステップの存在を規定するために意図されるが、それらは、１つ以上の他の特徴、整数、コンポーネント、ステップ、行為、またはグループの存在または追加を除外するものではない。
【００８２】
また、本明細書に説明される実施例および実施形態は、例証目的のみのためのものであって、それに照らして、種々の修正または変更が、当業者に示唆され、本願の精神および権限および添付の請求項の範囲内に含まれることを理解されたい。
【図１】
2020107356.tif 000078
【図２】
2020107356.tif 000079
【図３】
2020107356.tif 000080
【図４】
2020107356.tif 000081
【図５Ａ】
2020107356.tif 000082
【図５Ｂ】
2020107356.tif 000083
【図５Ｃ】
2020107356.tif 000084
【図５Ｄ】
2020107356.tif 000085
【図５Ｅ】
2020107356.tif 000086
【図５Ｆ】
2020107356.tif 000087
【図６】
2020107356.tif 000088
【図７】
2020107356.tif 000089
【図８】
2020107356.tif 000090
【図９】
2020107356.tif 000091
【図１０】
2020107356.tif 000092
【図１１】
2020107356.tif 000093
【図１２】
2020107356.tif 000094
【外国語明細書】
2020107356000001.pdf