(57)【要約】      （修正有）【課題】物体の３次元再構成のために初期対応割り当てのデータを効率的に処理するための方法、装置及びコンピュータ可読媒体を提供する。【解決手段】データを効率的に処理するための方法は、シーンの第１の画像セットとシーンの第２の画像セットを受け取り、第１の画像セットに基づいて第１のピクセル指紋を決定し、第２の画像セットに基づいて第２のピクセル指紋を決定し、第１のピクセル指紋に基づいて第１のバイナリピクセル指紋を生成し、第２のピクセル指紋に基づいて第２のバイナリピクセル指紋を生成し、更に、第１のピクセル指紋と第２のピクセル指紋との間にステレオ対応が存在するかどうかを、少なくとも一部は第１のバイナリピクセル指紋と第２のバイナリピクセル指紋の比較に基づいて判定する。【選択図】図９
2020053037.tif 000002
【特許請求の範囲】
【請求項１】
第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間のステレオ対応を決定するためのシステムであって、前記システムはプロセッサを有し、
前記プロセッサは、１以上のイメージセンサからシーンの第１の画像セットとシーンの第２の画像セットを受け取るステップを実行するよう構成され、ここで、第２の画像セットは第１の画像セットとは異なる視点から取得されるものであり、
前記プロセッサは、さらに、第１の画像セットに基づいて第１のピクセル指紋を決定するステップを実行するよう構成され、ここで、第１の経時的な画像セットの各画像における第１のピクセル位置での第１のピクセル値セットを含み、
前記プロセッサは、さらに、第２の画像セットに基づいて第２のピクセル指紋を決定するステップを実行するよう構成され、ここで、第２のピクセル指紋は、第２の経時的な画像セットの各画像における第２のピクセル位置での第２のピクセル値セットを含み、
前記プロセッサは、さらに、第１のピクセル指紋に基づいて第１のバイナリピクセル指紋を生成するステップを実行するよう構成され、ここで、第１のバイナリピクセル指紋は、第１のピクセル値セットの各々を閾値と比較することにより生成された第１のバイナリ値セットを包含し、
前記プロセッサは、さらに、第２のピクセル指紋に基づいて第２のバイナリピクセル指紋を生成するステップを実行するよう構成され、ここで、第２のバイナリピクセル指紋は、第２のピクセル値セットの各々を閾値と比較することにより生成された第２のバイナリ値セットを包含しており、かつ
前記プロセッサは、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋の比較に少なくとも一部は基づいて判定するステップを実行するよう構成されてなる、
上記システム。
【請求項２】
シーンの前記第１の画像セット及び／又は前記第２の画像セットが逆カメラ／プロジェクタから受け取られる、請求項１記載のシステム。
【請求項３】
更に、前記シーンに光パターンのセットを投影するように構成されたプロジェクタを有し、前記第１の画像セットの各画像は前記光パターンのセットとは異なる光パターンを使用して取得される、請求項１記載のシステム。
【請求項４】
前記光パターンのセットは、シーンに異なる光パターンを投影するために平行移動、回転及び／又は変形される固定パターンを含む、請求項３記載のシステム。
【請求項５】
前記第１のピクセル指紋は、前記第１のピクセル値セットを前記第１の画像セットの時間的順序に対応して順序付けられたセットとして含み、
前記第２のピクセル指紋は、前記第２のピクセル値セットを前記第２の画像セットの時間的順序に対応して順序付けられたセットとして含む、請求項１記載のステム。
【請求項６】
前記第１のバイナリ値セットを生成することは、前記第１のピクセル値セットの各ピクセル値に対して、前記ピクセル値が閾値を超える場合はゼロを割り当て、前記ピクセル値が閾値を超えない場合は１を割り当てることを含む、請求項１記載のシステム。
【請求項７】
前記第１のバイナリピクセル指紋と前記第２のバイナリピクセル指紋とを比較することは、前記第１のバイナリピクセル指紋と第２のバイナリピクセル指紋で対応するバイナリ値を比較することを含む、請求項１記載のシステム。
【請求項８】
前記プロセッサは、第１のピクセル指紋を正規化するステップを実行するよう構成され、ここで、第１のピクセル指紋を正規化することは、第１の画像セットの各画像における第１のピクセル位置での第１のピクセル値セットを正規化して、第１の正規化ピクセル値セットを包含する第１の正規化ピクセル指紋を作成することを含み、かつ
前記プロセッサは、第２のピクセル指紋を正規化するステップを実行するよう構成され、ここで、第２のピクセル指紋を正規化することは、第２の画像セットの各画像における第２のピクセル位置での第２のピクセル値セットを正規化して、第２の正規化ピクセル値セットを包含する第２の正規化ピクセル指紋を作成することを含み、
ここで、
第１のバイナリピクセル指紋を生成することは、第１の正規化ピクセル指紋に基づいて第１のバイナリピクセル指紋を生成することを含み、
第２のバイナリピクセル指紋を生成することは、第２の正規化ピクセル指紋に基づいて第２のバイナリピクセル指紋を生成することを含む、
請求項１記載のシステム。
【請求項９】
前記プロセッサは、第１の正規化ピクセル指紋に基づいて、第３のバイナリピクセル指紋を生成するステップを実行するよう構成され、、ここで、第３のバイナリピクセル指紋は、第１の正規化ピクセル値セットの各々の絶対値を信頼閾値と比較することによって生成された第３のバイナリ値セットを含み、かつ
前記プロセッサは、第２の正規化ピクセル指紋に基づいて、第４のバイナリピクセル指紋を生成するステップを実行するよう構成され、、ここで、第４のバイナリピクセル指紋は、第２の正規化ピクセル値セットの各々の絶対値を信頼閾値と比較することによって生成された第４のバイナリ値セットを含む、
請求項８記載のシステム。
【請求項１０】
前記第１のバイナリピクセル指紋と前記第２のバイナリピクセル指紋とを比較することは、
前記第１、第３及び第４のバイナリピクセル指紋で対応するバイナリ値のＯＲ値と、前記第２、第３及び第４のバイナリピクセル指紋で対応するバイナリ値のＯＲ値と、を比較することを含む、
請求項９記載のシステム。
【請求項１１】
前記第１のバイナリピクセル指紋と前記第２のバイナリピクセル指紋とを比較することは、前記第１のバイナリピクセル指紋と第２のバイナリピクセル指紋で対応するバイナリ値がハミング距離閾値内にあるかどうかを判定することを含む、請求項１記載のシステム。
【請求項１２】
前記プロセッサは、前記第１の画像セットにおける前記第１のピクセル指紋の決定に先立って、前記第１の画像セットの各画像に画像フィルタを適用するように構成されてなる、請求項１記載のシステム。
【請求項１３】
前記第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを決定することは、
連続的な経時的相関を実行して、第１のピクセル指紋と第２のピクセル指紋との間の相関値を生ぜしめて、
相関閾値を超える前記相関値とピクセル指紋の以前のペアに対する以前の相関値に基づいて、第１のピクセル指紋と第２のピクセル指紋との間に潜在的対応が存在することを決定すること、
を含む、請求項１記載のシステム。
【請求項１４】
前記第１の画像セットの前記第１のピクセル指紋と前記第２の画像セットの前記第２のピクセル指紋との間にステレオ対応が存在するかどうかを判定することは、
穴埋め操作を実行して、他のピクセル指紋と潜在的対応があるとまだ決定されていないピクセル指紋に対して初期対応を補間することを含む、請求項１３記載のシステム。
【請求項１５】
前記第１のピクセル位置及び／又は前記第２のピクセル位置は、スキップパラメータに基づいて選択される、請求項１記載のシステム。
【請求項１６】
前記第１のピクセル位置（ｉ１，ｊ１）は、スキップパラメータＳに基づいて、ｉ１モジュロＳ＝０及びｊ１モジュロＳ＝０となるように選択される、請求項１５記載のシステム。
【請求項１７】
第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間のステレオ対応を決定する方法であって、前記方法はプロセッサを使用し、
前記プロセッサは、１以上のイメージセンサからシーンの第１の画像セットとシーンの第２の画像セットを受け取るよう構成され、ここで第２の画像セットは第１の画像セットとは異なる視点から取得され、
前記プロセッサは、第１の画像セットに基づいて第１のピクセル指紋を決定するよう構成され、ここで、第１のピクセル指紋は、第１の経時的な画像セットの各画像における第１のピクセル位置での第１のピクセル値セットを含み、
前記プロセッサは、第２の画像セットに基づいて第２のピクセル指紋を決定するよう構成され、ここで、第２のピクセル指紋は、第２の経時的な画像セットの各画像における第２のピクセル位置での第２のピクセル値セットを含み、
前記プロセッサは、第１のピクセル指紋に基づいて第１のバイナリピクセル指紋を生成するよう構成され、ここで、第１のバイナリピクセル指紋は、第１のピクセル値セットの各々を閾値と比較することにより生成された第１のバイナリ値セットを包含し、
前記プロセッサは、第２のピクセル指紋に基づいて第２のバイナリピクセル指紋を生成するよう構成され、ここで、第２のバイナリピクセル指紋は、第２のピクセル値セットの各々を閾値と比較することにより生成された第２のバイナリ値セットを包含し、更に、
前記プロセッサは、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを、少なくとも一部は第１のバイナリピクセル指紋と第２のバイナリピクセル指紋の比較に基づいて判定するよう構成されてなる、
上記方法。
【請求項１８】
プロセッサ実行可能命令を格納する少なくとも１つの非一時的なコンピュータ可読記憶媒体であって、少なくとも１つのコンピュータハードウェアプロセッサによって前記命令が実行されると、
前記少なくとも１つのコンピュータハードウェアプロセッサは、１以上のイメージセンサからシーンの第１の画像セットとシーンの第２の画像セットを受け取り、ここで、第２の画像セットは第１の画像セットとは異なる視点から取得され、
前記少なくとも１つのコンピュータハードウェアプロセッサは、第１の画像セットに基づいて第１のピクセル指紋を決定し、ここで、第１のピクセル指紋は、第１の経時的な画像セットの各画像における第１のピクセル位置での第１のピクセル値セットを含み、
前記少なくとも１つのコンピュータハードウェアプロセッサは、第２の画像セットに基づいて第２のピクセル指紋を決定し、ここで、第１のピクセル指紋は、第２の経時的な画像セットの各画像における第２のピクセル位置での第２のピクセル値セットを含み、
前記少なくとも１つのコンピュータハードウェアプロセッサは、第１のピクセル指紋に基づいて第１のバイナリピクセル指紋を生成し、ここで、第１のバイナリピクセル指紋は、第１のピクセル値セットの各々を閾値と比較することにより生成された第１のバイナリ値セットを含み、
前記少なくとも１つのコンピュータハードウェアプロセッサは、第２のピクセル指紋に基づいて、第２のバイナリピクセル指紋を生成し、ここで、第２のバイナリピクセル指紋は、第２のピクセル値セットの各々を閾値と比較することにより生成された第２のバイナリ値セットを含み、更に、
前記少なくとも１つのコンピュータハードウェアプロセッサは、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを、少なくとも一部は第１のバイナリピクセル指紋と第２のバイナリピクセル指紋の比較に基づいて判定する、
ように前記命令が構成されてなる、上記コンピュータ可読記憶媒体。
【請求項１９】
第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間のステレオ対応を決定するためのシステムであって、前記システムはプロセッサを有し、
前記プロセッサは、１以上のイメージセンサからシーンの第１の画像セットとシーンの第２の画像セットを受け取るステップを実行するよう構成され、、ここで、第２の画像セットは第１の画像セットとは異なる視点から取得され、
前記プロセッサは、第１の画像セットに基づいて第１のピクセル指紋を決定するステップを実行するよう構成され、ここで、第１のピクセル指紋は、第１の画像セットの各画像における第１のピクセル位置に対して相対的な空間及び／又は時間における異なる位置での第１のピクセル値セットを含み、
前記プロセッサは、第２の画像セットに基づいて第２のピクセル指紋を決定するステップを実行するよう構成され、ここで、第２のピクセル指紋は、第２の画像セットの各画像における第２のピクセル位置に対して相対的な空間及び／又は時間における異なる位置での第２のピクセル値セットを含み、
前記プロセッサは、第１のピクセル指紋に基づいて第１のバイナリピクセル指紋を生成するステップを実行するよう構成され、ここで、第１のバイナリピクセル指紋は、第１のピクセル値セットの各々を閾値と比較することにより生成された第１のバイナリ値セットを含み、
前記プロセッサは、第２のピクセル指紋に基づいて第２のバイナリピクセル指紋を生成するステップを実行するよう構成され、ここで、第２のバイナリピクセル指紋は、第２のピクセル値セットの各々を閾値と比較することにより生成された第２のバイナリ値セットを含み、更に、
前記プロセッサは、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを、少なくとも一部は第１のバイナリピクセル指紋と第２のバイナリピクセル指紋の比較に基づいて判定するステップを実行するよう構成されてなる、
上記システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に記載する技術は、一般に物体又はシーンの２次元画像からの３次元（３Ｄ）再構成、特に２次元画像のペア間の初期対応割り当てのデータを効率的に処理する手法に関する。
【背景技術】
【０００２】
先進的マシンビジョンシステムとそれらの基盤となるソフトウェアは、多様な製造及び品質管理プロセスにますます多用されている。マシンビジョンにより量産製品及びカスタム製品のいずれの生産においても、より迅速に、より正確に再現可能な結果を得ることができる。典型的なマシンビジョンシステムには、関心領域に向けられた１台以上のカメラ、関心領域に適当な照明を向ける照明源、画像を取得して送信するフレームグラバー／画像処理要素、マシンビジョンソフトウェアアプリケーションを実行して取得された画像を操作するためのコンピュータ又はオンボード処理デバイス、及びインタラクションのためのユーザインタフェースを含む。
【０００３】
３Ｄビジョンシステムの１形態は、ベースライン上に１〜数インチのカメラ間隔を置いて並置された少なくとも２台のカメラを採用するステレオカメラに基づくステレオビジョンベースのシステムは、通常エピポーラジオメトリと画像修正に基づいている。それらは相関ベースの方法を使用し、又は２台以上のカメラからの修正画像における対応関係を見つける緩和技術と組み合わせることができる。しかしながら従来のステレオビジョンシステムでは、計算の労力が必要なため物体及び／又はシーンの正確かつ高速な３次元データ再構成を迅速に生み出す能力が制限されている。
【発明の概要】
【０００４】
開示された主題により、例えば１対の２次元画像からの物体又はシーンの３次元再構成のために、２次元画像のペア間の初期対応割り当てのデータを効率的に処理するための装置、システム、及び方法が提供される。発明者は、従来のシステムがステレオ対応を決定するために２次元画像のペアにある種の正規化相互相関を適用できる一方で、これらのシステムは必要な計算を実行するためにしばしば多大な計算の労力を費やさなければならないことを認識した（例えば処理する必要があるピクセル値の数、それらのピクセル値のサイズなど）。発明者は、本明細書で更に論じるように、２次元画像のペア、特に経時的ステレオ画像シーケンスのペアに対する初期対応の割り当てを効率的に処理することによって、３次元データ再構成技術を改善する技術を開発した。経時的ステレオ画像シーケンスは、経時的に異なる視点から取得された物体又はシーンの画像セットを含む。発明者は、記載されたシステム及び方法は、経時的ステレオ画像シーケンスの各ピクセル指紋についてバイナリピクセル指紋を導出する点が特に新規であることを指摘する。
【０００５】
幾つかの態様では、記載されたシステム及び方法は、２つの画像間のステレオ対応を確立するためのシステムを提供する。システムはステレオ画像対応を生成するのに適したやり方で、例えばシーンの異なる視点を取得するために２台以上のカメラを置くことにより、シーンの画像を取得するように配置された２台以上のカメラ（又はセンサ）を含んでよい。代替として、システムは、ペア状にステレオ画像対応を生成するのに適したやり方でシーンの画像を取得するように配置された１台以上の逆カメラ（又はプロジェクタ）を備えた１台以上のカメラ（又はセンサ）を含んでもよい。１台以上のプロジェクタを使用して一連の光パターンをシーンに投影し、各カメラから画像のセットを取得することができる。各カメラから取得された画像のセットは、経時的画像と呼ぶことができる。画像セットの各画像は、一連の投影された光パターンの１つに対応することができる。
【０００６】
したがって各カメラについて経時的画像及びバイナリ経時的画像を決定できる。経時的画像内の位置（ｉ，ｊ）におけるピクセル指紋は、各カメラで取得された画像のセットから、位置（ｉ，ｊ）及び／又は位置（ｉ，ｊ）に対して相対的な空間及び／又は時間における異なる位置で収集されたピクセル値の順序付けられたセットを含むことができる。幾つかの実施形態では、経時的画像内の位置（ｉ，ｊ）におけるピクセル指紋は、位置（ｉ，ｊ）で収集されたピクセル値の順序付けられたセットを含むことができる。追加的又は代替的に、幾つかの実施形態では、経時的画像内の位置（ｉ，ｊ）におけるピクセル指紋は、各カメラで取得された画像のセットから、位置（ｉ，ｊ）に対して相対的な空間における異なる位置で収集されたピクセル値の順序付けられたセットを含むことができる。追加的又は代替的に、幾つかの実施形態では、経時的画像内の位置（ｉ，ｊ）におけるピクセル指紋は、各カメラで取得された画像のセットから、位置（ｉ，ｊ）に対して相対的な時間における異なる位置で収集されたピクセル値の順序付けられたセットを含むことができる。追加的又は代替的に、幾つかの実施形態では、経時的画像内の位置（ｉ，ｊ）におけるピクセル指紋は、各カメラで取得された画像のセットから、位置（ｉ，ｊ）に対して相対的な空間と時間における異なる位置で収集されたピクセル値の順序付けられたセットを含むことができる。
【０００７】
バイナリ経時的画像内の位置（ｉ，ｊ）におけるバイナリピクセル指紋は、位置（ｉ，ｊ）におけるピクセル指紋の各設定値を１以上の閾値と比較し、１以上の閾値に基づいて各設定値をゼロ又は１と置き換えることによって決定される。任意選択で、１以上の閾値と比較する前にピクセル指紋の設定値を正規化して、対応するバイナリピクセル指紋を生成することができる。検索（例えばエピポーラ線に沿った検索）を使用して、各カメラからのバイナリピクセル指紋の間の対応を決定することができる。ピクセル（例えばエピポーラ線上又はその近傍のピクセル）間の１以上のバイナリ比較を各カメラのバイナリ経時的画像から実行し、それらの比較の結果に基づいてピクセル対応を決定することができる。
【０００８】
幾つかの態様では、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間のステレオ対応を決定するためのシステム、方法、及び／又はコンピュータ可読記憶媒を提供することができる。
【０００９】
システムは、１以上のイメージセンサから、シーンの第１の画像セットとシーンの第２の画像セットを受け取る動作を実行するように構成されたプロセッサを含むことができる。第２の画像セットは、第１の画像セットとは異なる視点から取得されてよい。
【００１０】
プロセッサは、第１の画像セットに基づいて第１のピクセル指紋を決定する動作を実行するように構成できる。第１のピクセル指紋は、第１の経時的画像セットにおける各画像内の第１のピクセル位置での第１のピクセル値セットを包含することができる。プロセッサは、第２の画像セットに基づいて第２のピクセル指紋を決定する動作を実行するように構成できる。第２のピクセル指紋は、第２の経時的画像セットにおける各画像内の第２のピクセル位置での第２のピクセル値セットを包含することができる。
【００１１】
プロセッサは、第１のピクセル指紋に基づいて、第１のバイナリピクセル指紋を生成する動作を実行するように構成できる。第１のバイナリピクセル指紋は、第１のピクセル値セットの各々を閾値と比較することによって生成された第１のバイナリ値セットを含むことができる。プロセッサは、第２のピクセル指紋に基づいて、第２のバイナリピクセル指紋を生成する動作を実行するように構成できる。第２のバイナリピクセル指紋は、第２のピクセル値セットの各々を閾値と比較することによって生成された第２のバイナリ値セットを含むことができる。
【００１２】
プロセッサは、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを、少なくとも一部は第１のバイナリピクセル指紋と第２のバイナリピクセル指紋の比較に基づいて判定する動作を実行するように構成できる。
【００１３】
幾つかの実施形態では、シーンの第１の画像セット及び／又は第２の画像セットが逆カメラ／プロジェクタから受け取られる。
【００１４】
幾つかの実施形態では、システムはシーンに光パターンのセットを投影するように構成されたプロジェクタを含むことができる。第１の画像セットの各画像は、上記の光パターンのセットとは異なる光パターンを使用して取得できる。
【００１５】
幾つかの実施形態では、シーンに異なる光パターンを投影するために、光パターンのセットは平行移動、回転及び／又は変形された固定パターンを含むことができる。
【００１６】
幾つかの実施形態では、第１のピクセル指紋は、第１のピクセル値セットを第１の画像セットの時間的順序に対応して順序付けられたセットとして含むことができ、第２のピクセル指紋は、第２のピクセル値セットを第２の画像セットの時間的順序に対応して順序付けられたセットとして含むことができる。
【００１７】
幾つかの実施形態では、第１のバイナリ値セットを生成することは、第１のピクセル値セットの各ピクセル値に対して、ピクセル値が閾値を超える場合はゼロを割り当て、ピクセル値が閾値を超えない場合は１を割り当てることを含んでよい。
【００１８】
幾つかの実施形態では、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋とを比較することは、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋で対応するバイナリ値を比較することを含んでよい。
【００１９】
幾つかの実施形態では、プロセッサは、第１のピクセル指紋を正規化する動作を実行するように構成できる。第１のピクセル指紋を正規化することは、第１の画像セットの各画像における第１のピクセル位置での第１のピクセル値セットを正規化して、第１の正規化ピクセル値セットを包含する第１の正規化ピクセル指紋を作成することを含んでよい。プロセッサは、第２のピクセル指紋を正規化する動作を実行するように構成できる。第２のピクセル指紋を正規化することは、第２の画像セットの各画像における第２のピクセル位置での第２のピクセル値セットを正規化して、第２の正規化ピクセル値セットを包含する第２の正規化ピクセル指紋を作成することを含んでよい。第１のバイナリピクセル指紋を生成することは、第１の正規化ピクセル指紋に基づいて第１のバイナリピクセル指紋を生成することを含んでよい。第２のバイナリピクセル指紋を生成することは、第２の正規化ピクセル指紋に基づいて第２のバイナリピクセル指紋を生成することを含んでよい。
【００２０】
幾つかの実施形態では、プロセッサは、第１の正規化ピクセル指紋に基づいて、第３のバイナリピクセル指紋を生成する動作を実行するように構成できる。第３のバイナリピクセル指紋は、第１の正規化ピクセル値セットの各々の絶対値を信頼閾値と比較することによって生成された第３のバイナリ値セットを正規化第１のピクセル値セットの各々の絶対値を信頼閾値と比較することにより生成された第３のバイナリ値セットを含むことができる。プロセッサは、第２の正規化ピクセル指紋に基づいて、第４のバイナリピクセル指紋を生成する動作を実行するように構成できる。第４のバイナリピクセル指紋は、第２の正規化ピクセル値セットの各々の絶対値を信頼閾値と比較することによって生成された第４のバイナリ値セットを含むことができる。
【００２１】
幾つかの実施形態では、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋とを比較することは、第１、第３及び第４のバイナリピクセル指紋で対応するバイナリ値のＯＲ値と、第２、第３及び第４のバイナリピクセル指紋で対応するバイナリ値のＯＲ値とを比較することを含むことができる。
【００２２】
幾つかの実施形態では、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋とを比較することは、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋で対応するバイナリ値がハミング距離閾値内にあるかどうかを判定することを含む第１のバイナリピクセル指紋と第２のバイナリピクセル指紋とを比較することは、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋で対応するバイナリ値がハミング距離閾値内にあるかどうかを判定することを含むことができる。
【００２３】
幾つかの実施形態では、プロセッサは、第１の画像セットの第１のピクセル指紋を決定する前に、第１の画像セットの各画像に画像フィルタを適用するように構成できる。
【００２４】
幾つかの実施形態では、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを決定することは、連続的な経時的相関を実行して、第１のピクセル指紋と第２のピクセル指紋との間の相関値を生み出し、相関閾値を超える相関値とピクセル指紋の以前のペアに対する以前の相関値に基づいて、第１のピクセル指紋と第２のピクセル指紋との間に潜在的対応が存在することを決定することを含むことができる。
【００２５】
幾つかの実施形態では、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを判定することは、穴埋め操作を実行して、他のピクセル指紋と潜在的対応があるとまだ決定されていないピクセル指紋に対して初期対応を補間することを含むことができる。
【００２６】
幾つかの実施形態では、第１のピクセル位置及び／又は第２のピクセル位置は、スキップパラメータに基づいて選択できる。
【００２７】
幾つかの実施形態では、第１のピクセル位置（ｉ１，ｊ１）をスキップパラメータＳに基づいて、ｉ１モジュロＳ＝０及びｊ１モジュロＳ＝０となるように選択できる。
【００２８】
幾つかの態様では、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間のステレオ対応を決定するためのシステム、方法及び／又はコンピュータ可読記憶媒体を提供することができる。
【００２９】
システムは、１以上のイメージセンサからシーンの第１の画像セットとシーンの第２の画像セットを受け取る動作を実行するように構成されたプロセッサを含むことができる。第２の画像セットは第１の画像セットとは異なる視点から取得されてよい。
【００３０】
プロセッサは、第１の画像セットに基づいて第１のピクセル指紋を決定する動作を実行するように構成できる。第１のピクセル指紋は、第１の画像セットの各画像における第１のピクセル位置に対して相対的な空間及び／又は時間における異なる位置での第１のピクセル値セットを包含することができる。プロセッサは、第２の画像セットに基づいて第２のピクセル指紋を決定する動作を実行するように構成できる。第２のピクセル指紋は、第２の画像セットの各画像における第２のピクセル位置に対して相対的な空間及び／又は時間における異なる位置での第１のピクセル値セットを包含することができる。
【００３１】
プロセッサは、第１のピクセル指紋に基づいて第１のバイナリピクセル指紋を生成する動作を実行するように構成できる。第１のバイナリピクセル指紋は、第１のピクセル値セットの各々を閾値と比較することにより生成された第１のバイナリ値セットを含むことができる。プロセッサは、第２のピクセル指紋に基づいて、第２のバイナリピクセル指紋を生成する動作を実行するように構成できる。第２のバイナリピクセル指紋は、第２のピクセル値セットの各々を閾値と比較することにより生成された第１のバイナリ値セットを含むことができる。
【００３２】
プロセッサは、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを、少なくとも一部は第１のバイナリピクセル指紋と第２のバイナリピクセル指紋の比較に基づいて判定する動作を実行するように構成できる。
【００３３】
以上、開示の主題の特徴をややおおまかに述べたのは、以下に続く詳細な説明においてそれらがより良く理解されるように、また本発明の技術への寄与がより適切に評価されるようにするためである。言うまでもなく開示された主題の追加の特徴があり、それらは以下に説明されるとともに、本明細書に付属する特許請求の範囲の主題をなす。本明細書で用いられる表現及び用語は説明を目的としたものと理解すべきであり、限定するものと見なされてはならない。
【００３４】
図面において、様々な図に示されている同一又はほぼ同一の各構成要素は同じ参照符号で表されている。見やすさのため、各図面にはすべての構成要素が表示されているわけではない。図面は必ずしも縮尺通りではなく、代わりに本明細書で説明される技術及び装置の種々の側面を示すことに重点が置かれている。
【図面の簡単な説明】
【００３５】
【図１】幾つかの実施形態により、１台のプロジェクタと２台のカメラがステレオ画像対応を生成するのに適したやり方でシーンの画像を取得するように配置されている例示的な実施形態を示す。
【００３６】
【図２】幾つかの実施形態により、一連の投影された光パターンの１つに対応する例示的なステレオ画像のペアを示す。
【００３７】
【図３】幾つかの実施形態により、シーンの経時的ステレオ画像シーケンスの例示的なペアを示す。
【００３８】
【図４】幾つかの実施形態により、ステレオ画像及び対応する正規化画像の例示的なペアを示す。
【００３９】
【図５】幾つかの実施形態により、シーンのステレオ画像の例示的なペアを示す。
【００４０】
【図６】幾つかの実施形態により、シーンに投影された一連の光パターンに対応する経時的ステレオ画像シーケンスの例示的ペアを示す。
【００４１】
【図７】幾つかの実施形態により、１対の画像からピクセル指紋のバイナリピクセル指紋を生成するための例示的なプロセスを示す。
【００４２】
【図８】幾つかの実施形態により、１対の画像から例示的なピクセル指紋のために生成されるバイナリピクセル指紋の例を示す。
【００４３】
【図９】幾つかの実施形態により、経時的ステレオ画像シーケンスに対する初期対応割り当てのデータを効率的に処理するための例示的なコンピュータ化された方法を示す。
【発明を実施するための形態】
【００４４】
本明細書に記載する技術は、２次元画像のペア間の初期対応割り当てのデータを効率的に処理するために使用できる。発明者は、従来のシステムが２次元画像のペアに正規化相互相関を適用してステレオ対応を決定することは知られているが、これらのシステムは必要な計算を実行するために多大な計算の労力を費やさなければならないことを認識した。発明者は、本明細書で更に説明するように、２次元画像のペア、特に経時的ステレオ画像シーケンスのペアの初期対応割り当てのデータを効率的に処理することにより、３次元データ再構成を改善する技術を開発した。発明者は、記載されたシステム及び方法が、経時的ステレオ画像シーケンスにおける各ピクセル指紋についてバイナリピクセル指紋を導出する点が新規であることを指摘する。
【００４５】
以下の説明では、開示された主題の完全な理解を提供するために、開示された主題のシステム及び方法、並びにそのようなシステム及び方法が動作できる環境などに関して多くの特定の詳細が述べられる。加えて、以下に示す例は例示にすぎず、開示された主題の範囲内にある他のシステム及び方法が存在することが想定されていることが理解されるであろう。
【００４６】
図１は、１台のプロジェクタ１０４と２台のカメラ１０６が、ステレオ画像対応を生成するのに適したやり方で物体又はシーン１０２の画像を取得するように配置された例示的実施形態１００を示す。幾つかの実施形態では、複数のカメラを使用して取得された物体の画像シーケンスを時間的にコード化するために、統計的パターンプロジェクタが使用される。例えばプロジェクタは物体に平行移動パターンを投影でき、各カメラは物体の１２〜１６の画像（又は他の数の画像）を含む画像シーケンスを取得できる。各画像は、画像を構成するピクセルセットを包含している。幾つかの実施形態では、光パターンはパターンが物体又はシーン上を回動するように（例えばパターン自体が時計回り又は反時計回りに回転することなく）水平方向及び／又は垂直方向に移動できる。カメラ１０６はそれぞれ電荷結合素子（ＣＣＤ）イメージセンサ、相補型金属酸化物半導体（ＣＭＯＳ）イメージセンサ、又はその他の適当なイメージセンサを包含できる。幾つかの実施形態では、カメラ１０６はそれぞれローリングシャッター、グローバルシャッター、又はその他の適当なシャッタータイプを持つことができる。幾つかの実施形態では、カメラ１０６はそれぞれＧｉｇＥビジョンインターフェース、ユニバーサルシリアルバス（ＵＳＢ）インターフェース、同軸インターフェース、ＦＩＲＥＷＩＲＥ（登録商標）インターフェース、又は他の適当なインターフェースを持つことができる。幾つかの実施形態では、カメラ１０６はそれぞれ１以上のスマート機能を持つことができる。幾つかの実施形態では、カメラ１０６それぞれはＣマウントレンズ、Ｆマウントレンズ、Ｓマウントレンズ、又はその他の適当なレンズタイプを持つことができる。幾つかの実施形態では、カメラ１０６のそれぞれプロジェクタ、例えばプロジェクタ１０４に適合したスペクトルフィルタを持ち、プロジェクタのスペクトル範囲外の環境光を遮断することができる。
【００４７】
図２は、一連の投影された光パターンの１つに対応する例示的なステレオ画像２００及び２５０のペアを示す。例えばプロジェクタ１０４は物体に異なる光パターンを投影でき、カメラ１０６はステレオ画像２００及び２５０を取得できる。幾つかの実施形態では、２台のカメラからのステレオ画像シーケンスから３次元データを再構成するために、ピクセル２０２及び２５２などの対応するピクセルのペアを各カメラからの画像間で見出すことが必要な場合もある。
【００４８】
図３は、シーンの経時的ステレオ画像シーケンスの例示的なペアを示す。例えばプロジェクタ１０４はシーンに異なる光パターンを連続的に投影し、カメラ１０６の一方は画像３００、３０２及び３０４を取得でき、カメラ１０６の他方は画像３５０、３５２、及び３５４を取得できる。幾つかの実施形態では、記載されたシステム及び方法の技術を適用するために、取得された画像を正規化することができる。図４は、ステレオ画像４００及び４５０の例示的なペア、及びこれらに対応する正規化画像４５０及び４５２を示している。示されているように、ステレオ画像４００及び４５０はステレオ画像４００及び４５０の光パターンを含むように処理することができる一方、画像４００及び４５０の実際のシーン及び／又は物体を減らす。幾つかの実施形態では、画像４００及び４５０の実際のシーン及び／又は物体を減らすために、投影される光パターンのタイプの知識は必要ない場合もある。
【００４９】
図５は、ステレオ画像５００及び５５０（及び関連するピクセル）の例示的なペアを示しており、対応するピクセル５０２及び５５２は２つの画像５００及び５５０に投影されたパターンの同じ部分を表している。例えば上述したように、プロジェクタ１０４はシーンに光パターンを投影することができ、カメラ１０６はステレオ画像５００及び５５０を取得できる。取得されたステレオ画像５００及び５５０を使用して２つのピクセル間の対応を識別することができる。幾つかの実施形態では、対応を識別するために経時的に取得されたステレオ画像のシーケンスが使用される。図５に示された単一のステレオ画像のペアから続いて、図６に示すように、プロジェクタ１０４がシーンに経時的に異なる光パターンを連続的に投影すると、カメラ１０６は経時的ステレオ画像シーケンス６００及び６５０と、対応するピクセル指紋６０２及び６５２を取得できる。各カメラ１０６は、経時的に一連の画像１、２、３、４、・・・Ｎを取得できる。ピクセル指紋６０２及び６５２は、それぞれ経時的ステレオ画像シーケンス６００及び６５０にわたるピクセル（ｉ，ｊ）及び（ｉ’，ｊ’）に基づいている。各ピクセル指紋は経時的にグレー値の順序付けられたリストＧ＿ｉ＿ｊ＿ｔを含み、ｔは離散的な経時的インスタンス１、２、３、４、・・・Ｎを示す。
【００５０】
幾つかの実施形態では、経時的画像又は経時的画像のサブセットのみを使用する正規化相互相関アルゴリズムを２つの画像シーケンスに適用して、各画像からの対応するピクセルのペア（例えば類似の経時的グレー値を有するペア）を決定することができる。しかしながらこのようなプロセスは必要な計算を実行するために多大な計算の労力を必要とする場合がある。このプロセスは、初期対応割り当てのデータを効率的に処理し、特に以下で更に説明するように、経時的ステレオ画像シーケンスにおける各ピクセル指紋についてバイナリピクセル指紋を導出することによって改善できる。
【００５１】
幾つかの実施形態では、第１のカメラの各ピクセルについて、第２のカメラのエピポーラ線に沿ったすべての実行可能な候補との正規化相互相関を実行することにより、潜在的に対応するピクセルが、カメラの較正による偏差を補償するための閾値、例えば±１ピクセル又は他の適当な値で読み出される。一例では、これは３０００潜在的ペアについて正規化相互相関を計算することに近く、その計算量は寸法ｘｒｅｓ×ｙｒｅｓの画像の数Ｎの場合は約ｘｒｅｓ×ｙｒｅｓ×Ｎ×３０００乗算である（例えばＮ＝２４の場合は約９４×１０９）。
【００５２】
幾つかの態様では、記載されたシステム及び方法は、既存の技術の技術的改善に関するものであり、アルゴリズム手法を利用して初期対応割り当ての計算の労力を、（例えば上記の手法と比較して）例えば２００倍又は他の適当な倍数まで減らすものである。計算の労力は、潜在的対応のサブセットでのみ計算的に重い相互相関を実行することによって、及び／又は対応を計算するために処理されるデータの量を減らすことによって低減できる。
【００５３】
図９は、幾つかの実施形態により、経時的ステレオ画像シーケンスの初期対応割り当てのデータを効率的に処理するための例示的なコンピュータ化された方法９００を示す。方法９００は、任意の適当なコンピューティングシステム（例えば汎用コンピューティング装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、フィールドプログラマブルゲートアレイ装置（ＦＰＧＡ）、特定用途向け集積回路装置（ＡＳＩＣ）、ＡＲＭベースのデバイス、又はその他の適当なコンピューティングシステム）で実行されてよく、本明細書に記載された技術の態様はこの点で限定されない。幾つかの実施形態では、１台以上のカメラは、取得された画像のピクセル毎にバイナリピクセル指紋を生成できる。この場合、カメラからシステムにデータを送るために必要な帯域幅は縮小できる。
【００５４】
動作９０２で、システムは１以上のイメージセンサからシーンの第１の画像セットとシーンの第２の画像セットを受け取ることができる。第２の画像セットは第１の画像セットとは異なる視点から取得される。例えばシステムは、図１に関して説明した２台のカメラから、シーンの１２〜１６の画像又はその他の適当な数の画像の経時的シーケンスを受け取ることができる。幾つかの実施形態では、プロジェクタはシーンに光パターンのセットを投影するように構成されている。第１の画像セット及び／又は第２の画像セットの各画像は、光パターンのセットから異なる光パターンを使用して取得できる。例えば図２に示すように、シーンに光パターンが投影され、２台のカメラがそれぞれの画像を取得することができる。別の例では、図３に示すように、光パターンのセットがシーンに連続的に投影され、２台のカメラがそれぞれの経時的ステレオ画像シーケンスを取得することができる。幾つかの実施形態では、光パターンのセットは、シーンに投影される光パターンを変更するために平行移動、回転及び／又は変形される固定パターンを含んでよい。幾つかの実施形態では光パターンのセットは、移動する光学パターンを含むことができる。幾つかの実施形態では、移動光学パターンは、円形経路に沿って並進する光学パターンを含んでもよい。幾つかの実施形態では、光パターンはパターンが物体又はシーン上を回動するように（例えばパターン自体が時計回り又は反時計回りに回転することなく）水平方向及び／又は垂直方向に移動できる。
【００５５】
動作９０４で、システムは第１の画像セットに基づいて第１のピクセル指紋を決定することができる。幾つかの実施形態では、第１のピクセル指紋は、第１の経時的画像セットの各画像における第１のピクセル位置での第１のピクセル値セットを包含する。幾つかの実施形態では、第１のピクセル指紋は、第１の画像セットの各画像における第１のピクセル位置に対して相対的な空間及び／又は時間における異なる位置での第１のピクセル値セットを包含することができる。図８は、そのようなピクセル指紋の例を示している。幾つかの実施形態では、第１のピクセル指紋は、第１のピクセル値セットを第１の画像セットの時間的順序に対応して順序付けられたセットとして含む。図５−図６は、そのような経時的ピクセル位置と、画像の順序付けられたセットで対応するピクセル値の例を示している。幾つかの実施形態では、システムは第１の画像セットにおける第１のピクセル指紋を決定する前に、第１の画像セットの各画像に弱いガウスフィルタを適用する。幾つかの実施形態では、システムはスキップパラメータに基づいて第１のピクセル位置を選択する。例えばシステムは第１のピクセル位置（ｉ１，ｊ１）をスキップパラメータＳに基づいて、ｉ１モジュロＳ＝０及びｊ１モジュロＳ＝０となるように選択できる。
【００５６】
動作９０６で、システムは、第２の画像セットに基づいて第２のピクセル指紋を決定することができる。幾つかの実施形態では、第２のピクセル指紋は、第２の経時的画像セットの各画像における第２のピクセル位置での第２のピクセル値セットを包含する。幾つかの実施形態では、第２のピクセル指紋は、第２の画像セットの各画像における第２のピクセル位置に対して相対的な空間及び／又は時間における異なる位置での第２のピクセル値セットを包含することができる。図８は、そのようなピクセル指紋の例を示している。幾つかの実施形態では、第２のピクセル指紋は、第２のピクセル値セットを第２の画像セットの時間的順序に対応して順序付けられたセットとして含む。図５−図６は、そのような経時的ピクセル位置と、画像の順序付けられたセットで対応するピクセル値の例を示している。幾つかの実施形態では、システムは第２の画像セットにおける第２のピクセル指紋を決定する前に、第２の画像セットの各画像に弱いガウスフィルタを適用する。幾つかの実施形態では、システムはスキップパラメータに基づいて第２のピクセル位置を選択する。例えばシステムは第２のピクセル位置（ｉ２，ｊ２）をスキップパラメータＳに基づいて、ｉ２モジュロＳ＝０及びｊ２モジュロＳ＝０となるように選択できる。
【００５７】
動作９０８で、システムは第１のピクセル指紋に基づいて第１のバイナリピクセル指紋を生成することができる。第１のバイナリピクセル指紋は、第１のピクセル値セットの各々を閾値と比較することにより生成された第１のバイナリ値セットを含む。幾つかの実施形態において、第１のバイナリ値セットを生成することは、第１のピクセル値セットの各ピクセル値に対して、ピクセル値が閾値を超える場合はゼロを割り当て、ピクセル値が閾値を超えない場合は１を割り当てることを含む。図８は、そのようなピクセル指紋の例を示している。
【００５８】
幾つかの実施形態では、システムは第１の画像セットの各画像における第１のピクセル位置での第１のピクセル値セットを正規化することによって第１のピクセル指紋を正規化して、第１の正規化ピクセル値セットを包含する第１の正規化ピクセル指紋を作成できる。することを含んでよい。図４は、例示的なステレオ画像及び対応する正規化画像を示す。そのような実施形態では、システムは第１のピクセル指紋に関して説明したやり方で、第１の正規化ピクセル指紋に基づいて第１のバイナリピクセル指紋を生成することができる。図７及びこれに関連する説明は、この技術に対応する例示的なプロセスを示しており、図８及びこれに関連する説明は、この技術によって生成されるそのようなバイナリピクセル指紋の例を示す。
【００５９】
動作９１０で、システムは、第２のピクセル指紋に基づいて第２のバイナリピクセル指紋を生成することができる。第２のバイナリピクセル指紋は、第２のピクセル値セットの各々を閾値と比較することにより生成された第２のバイナリ値セットを含む。幾つかの実施形態では、第２のバイナリ値のセットを生成することは、第２のピクセル値のセットの各ピクセル値について、ピクセル値が閾値を超える場合はゼロを割り当て、ピクセル値が閾値を超えない場合は１を割り当てることを含む。図８は、そのようなピクセル指紋の例を示している。
【００６０】
幾つかの実施形態では、システムは、第２の画像セットの各画像における第２のピクセル位置での第２のピクセル値セットを正規化して、第２の正規化ピクセル値セットを包含する第２の正規化ピクセル指紋を作成することにより、第２のピクセル指紋を正規化できる。図４は、例示的なステレオ画像及び対応する正規化画像を示している。そのような実施形態では、システムは、第２のピクセル指紋に関して説明したやり方で、第２の正規化ピクセル指紋に基づいて第２のバイナリピクセル指紋を生成することができる。図７及びこれに関連する説明は、この技術に対応する例示的なプロセスを示しており、図８及びこれに関連する説明は、この技術に従って生成されるそのようなバイナリピクセル指紋の例を示す。
【００６１】
動作９１２において、システムは、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを、少なくとも一部は第１のバイナリピクセル指紋と第２のバイナリピクセル指紋の比較に基づいて判定することができる。幾つかの実施形態では、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋とを比較することは、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋で対応するバイナリ値を比較することを含む。幾つかの実施形態では、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋とを比較することは、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋で対応するバイナリ値がハミング距離閾値内にあるかどうかを判定することを含む。
【００６２】
幾つかの実施形態では、システムは、第１の正規化ピクセル値セットの各々の絶対値を信頼閾値と比較することにより、第１の正規化ピクセル指紋に基づいて第３のバイナリピクセル指紋を生成することができる。幾つかの実施形態では、システムは第２の正規化ピクセル値セットの各々の絶対値を信頼閾値と比較することにより、第２の正規化ピクセル指紋に基づいて第４のバイナリピクセル指紋を生成することができる。幾つかの実施形態では、第１のバイナリピクセル指紋と第２のバイナリピクセル指紋とを比較することは、（ｉ）第１、第３及び第４のバイナリピクセル指紋で対応するバイナリ値のＯＲ値と、（ｉｉ）第２、第３及び第４のバイナリピクセル指紋で対応するバイナリ値のＯＲ値とを比較することを含む。
【００６３】
幾つかの実施形態では、システムは、連続的な経時的相関を実行して、第１のピクセル指紋と第２のピクセル指紋との間の相関値を生み出し、及び相関閾値を超える相関値とピクセル指紋の以前のペアに対する以前の相関値に基づいて、第１のピクセル指紋と第２のピクセル指紋との間に潜在的対応が存在することを決定することによって、第１の画像セットの第１のピクセル指紋と第２の画像セットの第２のピクセル指紋との間にステレオ対応が存在するかどうかを決定することができる。幾つかの実施形態では、システムは、穴埋め操作を実行して、他のピクセル指紋と潜在的対応があるとまだ決定されていないピクセル指紋に対して初期対応を補間することができる。
【００６４】
幾つかの実施形態では、説明されたシステム及び方法は、コンピューティングシステムでの実装に適したプロセスを提供する。幾つかの実施形態では、コンピューティングシステム（図１には図示せず）は、（例えば動作９０２に関して説明したように）イメージセンサ又はカメラから１対の経時的ステレオ画像シーケンスを受け取る。本明細書で更に説明するように、例えばコンピューティングシステムは、汎用コンピューティングデバイス（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、フィールドプログラマブルゲートアレイデバイス（ＦＰＧＡ）、特定用途向け集積回路デバイス（ＡＳＩＣ）、ＡＲＭベースのデバイス、又はその他の適当なコンピューティングシステムであってよい。）幾つかの実施形態では、１台以上のカメラは、取得された画像内のピクセル毎にバイナリピクセル指紋を生成してもよい。この場合は、カメラからシステムにデータを送るために必要とされる帯域幅を縮小できる。
【００６５】
システムは、（例えば動作９０４及び／又は９０６に関して説明したように）各画像シーケンスのピクセル指紋を決定することができる。幾つかの実施形態では、システムは、画像毎に弱いガウスフィルタを使用するなどして、画像シーケンスを平滑化することができる。幾つかの実施形態では、システムは任意選択でピクセル指紋毎に画像シーケンスを正規化することができる。正規化画像シーケンス又は正規化ピクセル指紋に基づいて、各カメラのピクセル毎にバイナリシーケンス又はバイナリピクセル指紋、例えば第１のカメラであるカメラ１に対してはＢＩＮＡＲＹ１＿ｉ＿ｊ（例えば動作９０８で説明したように）、及び第２のカメラであるカメラ２に対してはＢＩＮＡＲＹ１＿ｉ’＿ｊ’（例えば動作９１０に関して説明したように）が作成される。与えられたピクセルについて、ピクセルの代表的なバイナリ値が決定される。例えばシステムは、経時的正規化ピクセル値に基づいてピクセル値に対して０又は１を割り当てることができる。例えばシステムは正規化化された値が≧０又は＜０（又はその他の適当な閾値）であるか判定することにより、０又は１を割り当てることができる。例えばシステムは、０以上の値（例えば平均より明るいことを示す）には１を割り当て、０未満の値（例えば平均より暗いことを示す）には０を割り当てることができる。
【００６６】
システムは、（正規化又は非正規化）バイナリピクセル指紋を使用して潜在的対応の検索を開始できる（例えば動作９１２に関して説明したように）。与えられたカメラ１のピクセルについて、カメラ２における検索スペースは最初に定義された閾値、例えばＳＡＦＥＴＹ＿ＴＨＲＥＳＨＯＬＤを有するエピポーラ線に制限できる。潜在的対応については、例えばシステムは、バイナリシーケンスのペアが潜在的対応と一致している（又は同等である）か、例えばＢＩＮＡＲＹ１＿ｉ＿ｊ＝＝ＢＩＮＡＲＹ１＿ｉ’＿ｊ’かどうかをチェックできる。
【００６７】
代替的又は追加的に、潜在的対応に対して、システムはバイナリシーケンスのペアが特定の距離閾値内にあるかどうかをチェックできる。例えばシステムは、バイナリシーケンスのペアがハミング距離閾値ＨＤ＿ＴＨＲＥＳＨＯＬＤ内にあるかどうかをチェックできる。例えばシステムはＨＡＭＭＩＮＧ＿ＤＩＳＴＡＮＣＥ（ＢＩＮＡＲＹ１＿ｉ＿ｊ、ＢＩＮＡＲＹ１＿ｉ’＿ｊ’）＜ＨＤ＿ＴＨＲＥＳＨＯＬＤかどうかを判定できる。幾つかの実施形態では、等しい長さの２つのバイナリシーケンス間のハミング距離は、対応する値が異なる位置の数である。例えば１０１１１０１と１００１００１の間のハミング距離は２である。
【００６８】
代替的又は追加的に、システムは正規化画像シーケンスに基づいて、各カメラのピクセル毎にバイナリシーケンスの別のペアＢＩＮＡＲＹ２＿ｉ＿ｊ及びＢＩＮＡＲＹ２＿ｉ’＿ｊ’を生成できる。このバイナリシーケンスのペアは、バイナリシーケンスの初期ペアに対する信頼フラグを表わすことができる。与えられたピクセルに対して、当該ピクセルの代表的なバイナリ値が決定される。例えばシステムは経時的正規化ピクセル値に基づいて、絶対正規化値が信頼閾値ＣＯＮＦＩＤＥＮＣＥ＿ＴＨＲＥＳＨＯＬＤを下回るかどうかに応じて０又は１を割り当てることができる。潜在的対応について、システムはＢＩＮＡＲＹ１＿ｉ＿ｊ｜ＢＩＮＡＲＹ２＿ｉ＿ｊ｜ＢＩＮＡＲＹ２＿ｉ’＿ｊ’＝＝ＢＩＮＡＲＹ１＿ｉ’＿ｊ’｜ＢＩＮＡＲＹ２＿ｉ’＿ｊ’｜ＢＩＮＡＲＹ２＿ｉ＿ｊであるかどうかチェックできる。
【００６９】
バイナリシーケンスのペアが上述した１以上の判定基準に従って類似している（例えば一致している）場合、システムは連続的な経時的相関を実行できる。例えば相関が初期相関閾値ＩＮＩＴＩＡＬ＿ＣＯＲＲＥＬＡＴＩＯＮ＿ＴＨＲＥＳＨＯＬＤを超える値を生み出し、相関が（ｉ，ｊ）に対する以前の潜在的対応より大きい場合、ピクセルのペア（ｉ，ｊ））及び（ｉ’，ｊ’）は、潜在的対応としてマークできる。幾つかの実施形態では、カメラ１における特定のピクセル（ｉ，ｊ）について、システムはそれぞれのバイナリシーケンス又は指紋を判定基準としてとして使用カメラ２における（例えばエピポーラ線に沿って、カメラ２の画像全体で、又はその他の適当な位置で）類似の又は一致するピクセル（ｉ’，ｊ’）を識別できる。判定基準が満たされている場合、システムは結果のペア（ｉ，ｊ）及び（ｉ’，ｊ’）をリスト内に保存でき、後で経時的相関を実行してよい。例えばシステムはリスト内の各ペアを相関させ、最高の相関スコアを持つペアを潜在的対応として選択できる。代替的又は追加的に、システムは経時的相関を実行して、現在のペア（ｉ，ｊ）及び（ｉ’，ｊ’）の相関が初期閾値を超え、（ｉ，ｊ）を含む以前の相関ペアよりも高い相関を有するか反転できる。現在のペアの相関が初期閾値を超え、以前の相関関係のペアより高い相関を有する場合、現在のペアは以前の潜在的対応を置き換えることができる。幾つかの実施形態では、経時的相関は相関されるべきピクセルのペアの経時的グレー値又は正規化値に基づく正規化相互相関を使用することによって実行できる。
【００７０】
幾つかの実施形態では、初期検索が完了した後で穴埋めプロセスを実行して、本明細書で説明したプロセスによって割り当てられていないピクセルに対する初期対応を補間することができる。例えば、検索スペースが大きく制限されているために、最初にすべての対応の約８５％〜９５％を見出すことができる。（対応レベルでの）穴埋めプロセスを使用して１００％の対応を生み出すことができる（例えば最初に識別された対応を活用する）。幾つかの実施形態において、穴埋めプロセスは対応を持たない特定のポイント及び／又はピクセル（例えば過飽和画像点ポイント）を識別し、識別されたポイントの近傍の関連する対応を補間することにより適当な対応を生成することができる。幾つかの実施形態では、システムは最初の対応割り当ての前に画像シーケンスにフィルタ（例えば弱い平滑化フィルタ）を適用することができ、これにより１００％の対応が得られる（例えば穴埋めプロセスを必要としない）。フィルタはノイズを低減でき、ある程度は経時的画像毎に小さい空間的近傍を集約することができる。これにより、異なるカメラ又はイメージセンサの遠近効果とサンプリング効果に起因するピクセル精度の一致強度偏差の数を減らすことができる。
【００７１】
幾つかの実施形態では、説明されたシステム及び方法は、ＧＰＵでの実装に適したプロセスを提供する。ＧＰＵは（例えば動作９０２に関して説明したように）イメージセンサ又はカメラから１対の経時的ステレオ画像シーケンスを受け取る。ＧＰＵは、対応検索中に比較閾値を使用できる。例えばＧＰＵはハミング距離閾値ＨＤ＿ＴＨＲＥＳＨＯＬＤを使用でき、これは０であるか（例えば差異が許容されない）、０より大きい（例えばいくらかの差異が許与される）。ＧＰＵは、ＨＤ＿ＴＨＲＥＳＨＯＬＤパラメータを保存、決定及び／又は受信できる。幾つかの実施形態では、ＧＰＵは画像シーケンスを平滑化することができる（例えば画像毎に弱いガウスフィルタを使用する）。追加又は代替として、ＧＰＵは画像シーケンスを修正できる。例えばＧＰＵは、エピポーラ線が修正によって水平線になるように、画像シーケンスを標準ケースに修正できる。
【００７２】
幾つかの実施形態では、ＧＰＵは任意選択として、ピクセル指紋毎に画像シーケンスを正規化することができる。ＧＰＵは正規化画像シーケンス又は正規化ピクセル指紋に基づいて、第１のカメラであるカメラ１のピクセルのサブセットに対して、バイナリシーケンス又はバイナリピクセル指紋ＢＩＮＡＲＹ１を作成でき（例えば動作９０８に関して説明したように）、第２のカメラであるカメラ２に対しては別のバイナリピクセル指紋ＢＩＮＡＲＹ１が作成される（例えば動作９１０に関して説明したように）。ＧＰＵは種々の技術を使用してカメラ１に対するピクセルのサブセットを選択できる。例えば幾つかの実施形態では、ＧＰＵは、モジュロ演算を使用してピクセルを選択することができる。例えばＧＰＵはスキップグリッドスキップを使用して、選択したピクセル（ｉ，ｊ）が（ｉモジュロＳＫＩＰＰＩＮＧ＝０、ｊモジュロＳＫＩＰＰＩＮＧ＝０）を満たすようにすることができる。与えられたピクセルについて、ピクセルの代表的なバイナリ値が決定される。例えばＧＰＵは、経時的正規化ピクセル値に基づいて、ピクセルに０又は１を割り当てることができる。例えばＧＰＵは、正規化値が≧０又は＜０（又はその他の適当な閾値）であるかどうかを判定することにより、０又は１を割り当てることができる。例えばシステムは、０以上の値（例えば平均より明るいことを示す）には１を割り当て、０未満の値（例えば平均より暗いことを示す）には０を割り当てることができる。
【００７３】
続いてＧＰＵは各カメラからの各画像シーケンスについてピクセル毎にバイナリシーケンスを生成できる。例えばカメラ１とカメラ２のそれぞれが１６の画像の画像シーケンスを取得するケースでは、ＧＰＵはカメラ２に対してピクセル毎に１６ビットのバイナリシーケンスを生成でき、カメラ１に対してスキップグリッド上のピクセル毎に１６ビットのバイナリシーケンスを生成できる。システムは（正規化又は非正規化）バイナリシーケンス又はバイナリピクセル指紋を使用して、潜在的対応の検索を初期化できる（例えば動作９１２に関して説明したように）。ＧＰＵは例えばカメラ１におけるスキップグリッド上の各ピクセルについて、カメラ２の対応するエピポーラ線の近傍にあるカメラ２の各ピクセルを、バイナリシーケンス又はバイナリピクセル指紋に関して比較できる。潜在的対応について、ＧＰＵはバイナリシーケンスのペアが、特定の距離閾値内にあるかチェックすることによって、バイナリシーケンスのペアが潜在的対応と一致しているかどうかを確認できる。例えばシステムは、バイナリシーケンスのペアがハミング距離閾値内にあるかどうかチェックできる。例えばシステムは、ＨＡＭＭＩＮＧ＿ＤＩＳＴＡＮＣＥ（ＢＩＮＡＲＹ１＿ｉ＿ｊ、ＢＩＮＡＲＹ１＿ｉ’＿ｊ’）≦ＨＤ＿ＴＨＲＥＳＨＯＬＤかどうか判定できる。バイナリシーケンスのペアが条件を満たしている場合、ＧＰＵは当該ペアを潜在的対応のリストに保存できる。カメラ１におけるスキップグリッド上の各ピクセルに対して潜在的対応ステップを実行した後、ＧＰＵは潜在的対応のリストを生成できる。カメラ１におけるスキップグリッド上の各ピクセルについて、ＧＰＵは潜在的候補のリストで連続的な経時的相関を行うことができる。例えば相関が初期相関閾値ＩＮＩＴＩＡＬ＿ＣＯＲＲＥＬＡＴＩＯＮ＿ＴＨＲＥＳＨＯＬＤを超える値を生み出す場合、及び／又は相関がリストの以前の潜在的対応より大きい場合、バイナリシーケンスのペアを現在の初期対応としてマークできる。
【００７４】
図７は、幾つかの実施形態により、１対の経時的画像からピクセル指紋に対するバイナリピクセル指紋を生成するための例示的なプロセス７００を示す。この例示的なプロセスにおいて、本明細書で説明されるように１台以上のカメラ又はイメージセンサからシーンの第１の画像セットと第２の画像セットが受け取られる。第２の画像セットは、第１の画像セットとは異なる視点から取得されて、ペアでステレオ画像対応を生成できる。例えばシーンの幾つかの画像（例えば１２〜１６の画像）の時間的シーケンス、又はその他の適当な数の画像を、図１に関して説明した２台のカメラから受け取ることができる。ピクセル（ｉ，ｊ）に対する第１のピクセル指紋７０２は第１の画像セットから、ピクセル（ｉ’，ｊ’）は第２の画像セットから上述したやり方で決定される。第１のピクセル指紋７０２は、値ｖ１〜ｖＮを含み、これらは第１の画像セットの各画像における各ピクセルの実際のグレースケール及び／又はカラー値を表わしている。第２のピクセル指紋７５２は値ｖ１’〜ｖＮ’を含み、これらは第２の画像セットの各画像における各ピクセルの実際のグレースケール及び／又はカラー値を表わしている。
2020053037.tif 000003
バイナリピクセル指紋は、第１のピクセル指紋と第２のピクセル指紋に対応して、値ｂ１〜ｂＮを含む第１のバイナリピクセル指紋７０６と、値ｂ１’〜ｂＮ’を含む第２のバイナリピクセル指紋７５６の形態で、上述した及び図９に関して説明したやり方で生成される。図８は、プロセス７００の例示的な例を提供する。
【００７５】
図８は、幾つかの実施形態により、１対の画像からピクセル指紋に対して生成されるバイナリピクセル指紋の例８００を示す。この例では、１９の画像からなる第１の画像セットが第１のカメラであるカメラ１から受け取られ、１９の画像からなる第２の画像セットが第２のカメラであるカメラ２から受け取られる（例えばカメラ１とカメラ２からの各画像セットがステレオペアを表わす場合）。第１の画像セットで与えられたピクセル位置（ｉ，ｊ）と、第２の画像セットで対応するピクセル位置（ｉ’，ｊ’）に対して、それぞれ第１のピクセル指紋８０２と第２のピクセル指紋８５２が生成される。各ピクセル指紋は、画像セット全体で与えられたピクセル位置のグレーピクセル値を含む。例えば第１のピクセル指紋８０２は、第１の画像全体のピクセル位置（ｉ，ｊ）に対するグレー値を含み（例えばピクセル８０２はグレースケール値６３、１５８などを含む）、第２のピクセル指紋８５２は第２の画像全体のピクセル位置（ｉ’，ｊ’）に対するグレー値を含む（例えばピクセル８５２はグレースケール値８１、１８６などを含む）。以下の表１は、第１のピクセル指紋８０２と第２のピクセル指紋８５２に対するグレー値を示す。任意選択として、第１のピクセル指紋８０２と第２のピクセル指紋８５２をそれぞれ正規化することにより、第１の正規化ピクセル指紋８０４及び第２の正規化ピクセル指紋８５４が生成される。
2020053037.tif 000004
ここで、ベクトルｖのｔ番目の成分ｖｔとベクトルｖの成分の平均値ｖａｖｇが減算され、それによって得られる値が、ベクトルｖの各成分からｖａｖｇを減算して生じるベクトルの長さｖ−ｖａｖｇで除算される。以下の表１は、第１の正規化ピクセル指紋８０４と第２の正規化ピクセル指紋８５４に対する正規化値を示す。最後に、第１のバイナリピクセル指紋８０６と第２のバイナリピクセル指紋８５６はそれぞれ、各正規化値を閾値、例えばゼロと比較して、正規化値が閾値を超える場合は例えばゼロを割り当て、正規化値が閾値を下回る場合は他のバイナリ値、例えば１を割り当てることによって、第１の正規化ピクセル指紋８０４と第２の正規化ピクセル指紋８５４から生成される。以下の表１は、第１のバイナリピクセル指紋８０６及び第２のバイナリピクセル指紋８５６に対するバイナリ値を示している。
【００７６】
2020053037.tif 000005
【００７７】
代替的に、第１のバイナリピクセル指紋８０６と第２のバイナリピクセル指紋８５６は、各値を閾値と比較して、値が閾値を超える場合は例えばバイナリ値、例えばゼロを割り当て、値が閾値を下回る場合は他のバイナリ値、例えば１を割り当てることによって、（正規化を実行することなく）それぞれ第１のピクセル指紋８０２及び第２のピクセル指紋８５２から生成できる。表１は、カメラからのピクセルと別のカメラからの任意のピクセルが与えられると、同じバイナリシーケンス又は指紋値になる２台のカメラに対する対応するピクセルのペアの値を示しているが、それぞれの正規化値と結果として生じるバイナリピクセル指紋値は、選択したピクセルが対応しない場合は異なることがある。
【００７８】
本明細書で説明した原理に従って動作する技術は、任意の適当なやり方で実装できる。上記のフローチャートの処理及び決定ブロックは、これらの種々のプロセスを実行するアルゴリズムに含まれてよいステップと動作を表している。これらのプロセスから導出されるアルゴリズムは１以上の専用又は多目的プロセッサと統合されてその動作を指示するソフトウェアとして実装でき、デジタル信号処理（ＤＳＰ）回路又は特定用途向け集積回路装置（ＡＳＩＣ）などの機能的に等価な回路として実装でき、又はその他の適当なやり方で実装できる。本明細書に含まれるフローチャートは、何らかの特定の回路又は何らかの特定のプログラミング言語又はプログラミング言語の種類の構文や動作を示していないことを理解されたい。むしろ、フローチャートは、本明細書に記載するタイプの技術を実行する特定の装置の処理を行うための回路の製造、又はコンピュータソフトウェアアルゴリズムの実装に使用できる機能情報を例示するものである。本明細書で特に明記しない限り、各フローチャートに記載されたステップ及び／又は動作の特定のシーケンスは、実装可能なアルゴリズムの例示にすぎず、本明細書に記載された原理の実装及び実施形態は変化できることも理解されたい。
【００７９】
したがって幾つかの実施形態では、本明細書に記載する技術は、アプリケーションソフトウェア、システムソフトウェア、ファームウェア、ミドルウェア、埋め込みコード、又は他の任意の適切なタイプのコンピュータコードを含むソフトウェアとして実装されるコンピュータ実行可能命令において具体化できる。そのようなコンピュータ実行可能命令は、幾つかの適切なプログラミング言語及び／又はプログラミング又はスクリプトツールのいずれかを使用して記述でき、フレームワーク又は仮想マシンで実行される実行可能マシン言語コード又は中間コードとしてコンパイルすることもできる。
【００８０】
本明細書に記載された技術がコンピュータ実行可能命令として具体化されると、これらのコンピュータ実行可能命令は、多くの利便機能を含む任意の適当なやり方で実装でき、それぞれがこれらの技術に従って動作するアルゴリズムの実行を完了するための１以上の動作を提供する。しかしながらインスタンス化された「利便機能」はコンピュータシステムの構造的要素であり、それは１以上のコンピュータと統合されて実行されると１以上のコンピュータに特定の操作上の役割を実行させる。利便機能は、ソフトウェア要素の一部又は全体であることができる。例えば利便機能はプロセスの機能として、又は個別のプロセスとして、又は他の適当な処理単位として実装されてよい。本明細書に記載された技術が複数の利便機能として実装される場合、各利便機能は独自の方法で実装されてよく、すべて同じ方法で実装する必要はない。更に、これらの利便機能は必要に応じてパラレル及び／又はシリアルに実行されてよく、及びそれらが実行されているコンピュータの共有メモリを使用して、メッセージ受け渡しプロトコルを用いるか又はその他の適当なやり方で互いの間で情報を渡すことができる。
【００８１】
一般に、利便機能は、特定のタスクを実行し、又は特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、構成要素、データ構造などを含む。通常、利便機能の機能性は、それらが動作するシステムにおいて所望されるように組み合わせたり配分したりできる。幾つかの実装形態では、本明細書の技術を実行する１以上の利便機能が一緒になって完全なソフトウェアパッケージを形成できる。これらの利便機能は、代替実施形態ではソフトウェアプログラムアプリケーションを実装するために、他の無関係な利便機能及び／又はプロセスと相互作用するように適合されてよい。
【００８２】
本明細書では、１以上のタスクを実行するために幾つかの例示的な利便機能が説明された。しかしながら記載された利便機能及びタスクの分割は、本明細書で説明された例示的な技術を実装できる利便機能のタイプを例示するものにすぎず、実施形態は特定の数、分割又はタイプの利便機能に限定されないことを理解されたい。幾つかの実装においてすべての機能性が単一の利便機能で実装される場合がある。また、幾つかの実装では本明細書に記載された利便機能の一部を他の利便機能と一緒に又は別個に（すなわち単一ユニット又は別個のユニットとして）実装でき、或いはこれらの利便機能の一部が実装されないことも可能である。
【００８３】
本明細書に記載した技術を実装するコンピュータ実行可能命令（１以上の利便機能として又は他のやり方で実装される場合）は、ある実施形態では１以上のコンピュータ可読媒体に符号化されて媒体に機能性を提供する。コンピュータ可読媒体は、ハードディスクドライブなどの磁気媒体、コンパクトディスク（ＣＤ）やデジタル多用途ディスク（ＤＶＤ）などの光学媒体、永続的又は非永続的なソリッドステートメモリ（フラッシュメモリ、磁気ＲＡＭなど）、又はその他の適当な記憶媒体を含む。そのようなコンピュータ可読媒体は任意の適当なやり方で実装できる。本明細書で使用される「コンピュータ可読媒体」（「コンピュータ可読記憶媒体」とも呼ばれる）は、有形の記憶媒体を指す。有形の記憶媒体は非一時的であり、少なくとも１つの物理的構造的要素を有する。本明細書で使用される「コンピュータ可読媒体」では、少なくとも１つの物理的構造的要素は、情報が埋め込まれた媒体を作成するプロセス、その媒体に情報を記録するプロセス、又は情報を含んだ媒体を符号化するプロセスの間に何らかの方法で変更できる少なくとも１つの物理的特性を有する。例えばコンピュータ可読媒体の物理的構造の一部の磁化状態を、記録プロセス中に変更できる。
【００８４】
更に、上述した幾つかの技術は、これらの技術で使用するために特定の方法で情報（例えばデータ及び／又は命令）を保存する動作を含む。これらの技術の幾つかの実装（技術がコンピュータ実行可能命令として実現される実装など）では、情報はコンピュータ可読記憶媒体に符号化される。本明細書で特定の構造がこの情報を保存するための有利なフォーマットとして説明されている場合、これらの構造を使用して記憶媒体上で符号化されるときに情報の物理的編成を与えることができる。次にこれらの有利な構造は、情報と相互作用する１以上のプロセッサの動作に影響を与えることにより、例えばプロセッサによって実行されるコンピュータ操作の効率を上げることによって記憶媒体に機能性を付与できる。
【００８５】
技術をコンピュータ実行可能命令として具体化できる幾つかの実装（すべての実装ではなく）では、これらの命令は任意の適当なコンピュータシステムで動作する１以上の適当なコンピューティングデバイスで実行でき、又は１以上のコンピューティングデバイス（又は１以上のコンピューティングデバイスの１以上のプロセッサ）はコンピュータ実行可能命令を実行するようにプログラムできる。コンピューティングデバイス又はプロセッサは、命令がデータストアなどのコンピューティングデバイス又はプロセッサにアクセス可能な方法で命令が保存されたときに命令を実行するようにプログラムできる（例えばオンチップキャッシュ又は命令レジスタ、バスを介してアクセス可能なコンピュータ可読ストレージ、１以上のネットワークを介してアクセス可能なコンピュータ可読記憶媒体、及びデバイス／プロセッサなどによってアクセス可能な媒体）。これらのコンピュータ実行可能命令を含む利便機能は、単一の多目的プログラム可能なデジタルコンピューティングデバイス、処理能力を共有して本明細書に記載した技術を共同で実行する２以上の多目的コンピューティングデバイスの協調システム、本明細書に記載された技術を実行するためだけの単一のコンピューティングデバイス又はコンピューティングデバイスの協調システム（コロケーションもしくは地理的に分散）、本明細書に記載した技術を実行するための１以上のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又は任意の他の適当なシステムと統合されてその動作を指示することができる。
【００８６】
コンピューティングデバイスは、少なくとも１つのプロセッサ、ネットワークアダプタ、及びコンピュータ可読記憶媒体を含むことができる。コンピューティングデバイスは、例えばデスクトップ又はラップトップ・パーソナルコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、スマートフォン、携帯電話、サーバ、又は他の任意の適当なコンピューティングデバイスであってよい。ネットワークアダプタは、任意の適当なコンピューティングネットワークを介して他の任意の適当なコンピューティングデバイスと有線及び／又は無線で通信するために、コンピューティングデバイスを有効にする任意の適当なハードウェア及び／又はソフトウェアであってもよい。コンピューティングネットワークには、ワイヤレスアクセスポイント、スイッチ、ルータ、ゲートウェイ、及び／又はその他のネットワーク機器、及びインターネットを含め２以上のコンピュータ間でデータを交換するための適当な有線及び／又は無線通信媒体を含む。コンピュータ可読媒体は、処理されるデータ及び／又はプロセッサによって実行される命令を保存するように適合できる。プロセッサは、データの処理や命令の実行を可能にする。データ及び命令は、コンピュータ可読記憶媒体に保存できる。
【００８７】
コンピューティングデバイスは、更に入出力装置を含め１以上の構成要素及び周辺機器を有してよい。これらのデバイスは、とりわけユーザインタフェースを提供するために使用できる。ユーザインタフェースを提供するために使用できる出力デバイスの例は、出力を視覚的に表示するためのプリンタ又はディスプレイ画面、及び出力を聴覚的に表示するためのスピーカ又はその他の音声生成装置を含む。ユーザインタフェースに使用できる入力デバイスの例は、キーボード、マウスやタッチパッドなどのポインティングデバイス、及びデジタル化タブレットである。別の例として、コンピューティングデバイスは、音声認識又は他の可聴形式で入力情報を受け取ることができる。
【００８８】
以上説明された実施形態は、技術が回路及び／又はコンピュータ実行可能命令で実装されたものである。少なくとも１つの例が提供された方法の形態で幾つかの実施形態があってもよいことを理解されたい。方法の一部として実行される動作は、任意の適切なやり方で順序付けることができる。したがって、例示の実施形態では連続した動作として示されているが、実施形態は幾つかの動作を同時に実行することも含めて、例示されたものとは異なる順序で動作が実行されるように構成できる。
【００８９】
上述した実施形態の種々の態様は、単独でも、組み合わせて、又は上述した実施形態で具体的に論じられていない様々な構成で使用することができ、それゆえその応用において上記の説明に記された又は図面に示された詳細及び構成要素の配置に限定されるものではない。例えばある実施形態に記載された態様は、他の実施形態に記載される態様と任意のやり方で組み合わせることができる。
【００９０】
特許請求の範囲でクレーム要素を修正するために「第１」、「第２」、「第３」などの序数詞を使用することは、それ自体はあるクレーム要素の別のクレーム要素に対する優先、優位又は順位、或いは方法の動作が実行される時間的順序を意味するものではなく、単にクレーム要素を区別するために特定の名前を持つクレーム要素を（序数詞の使用を除いて）同じ名前を持つ別の要素と区別するための表示としてのみ使用される。
【００９１】
また、本明細書で使用される語法及び用語は説明を目的とするものであり、制限と見なされるべきではない。本明細書における「含む」、「有する」、「持つ」、「包含する」、「伴う」、及びそれらの変形の使用は、その後に列挙される項目、及びその同等物、並びに追加項目を網羅することを意味する。
【００９２】
本明細書では、「例示的」という言葉は、例、事例又は例示としての役割を果たすことを意味するために使用される。それゆえ例示として本明細書に記載される実施形態、実装、プロセス、特徴などは、例示的な例として理解されるべきであり、特に明記しない限り選好される例もしくは有利な例として理解されるべきではない。
【００９３】
以上、少なくとも１つの実施形態の幾つかの態様を説明したが、当業者には様々な変更、修正及び改善が容易に想到し得るものであることを理解されたい。そのような変更、修正及び改善は本開示の一部であることが意図されており、本明細書に記載する原理の精神及び範囲内にあることが意図されている。それゆえ上記の説明及び図面は例示にすぎない。
【００９４】
特許請求の範囲を以下に記載する。
【図１】
2020053037.tif 000006
【図２】
2020053037.tif 000007
【図３】
2020053037.tif 000008
【図４】
2020053037.tif 000009
【図５】
2020053037.tif 000010
【図６】
2020053037.tif 000011
【図７】
2020053037.tif 000012
【図８】
2020053037.tif 000013
【図９】
2020053037.tif 000014
【外国語明細書】
2020053037000001.pdf