(57)【要約】  畳み込みニューラルネットワークを使用するシーンを再構成する方法、システム、製造物品、および装置。畳み込みニューラルネットワークを使用してシーンを再構成する方法、装置、システムおよび製造物品が開示される。例示的な装置は、環境を表すグラウンドトルースデータを取得するセンサデータ取得器と、環境の環境特性を識別する環境検出器と、グラウンドトルースデータにノイズを適用してトレーニングセットを形成する合成データベースビルダと、トレーニングセットおよびグラウンドトルースデータを使用して機械学習モデルをトレーニングするモデルビルダと、機械学習モデルの各層に介在する残りのＯＲゲート接続を含むように機械学習モデルを修正するモデル調整器とを備える。合成データベースビルダはさらに、環境の環境特性に関連して機械学習モデルを格納する。
2021524968.tif 000002
【特許請求の範囲】
【請求項１】
シーン再構成のためのモデルを生成する装置であって、前記装置は、
環境を表すグラウンドトルースデータを取得するセンサデータ取得器と、
前記環境の環境特性を識別する環境検出器と、
前記グラウンドトルースデータにノイズを適用してトレーニングセットを形成する合成データベースビルダと、
前記トレーニングセットおよび前記グラウンドトルースデータを使用して機械学習モデルをトレーニングするモデルビルダと、
前記機械学習モデルの各層に介在する残りのＯＲゲート接続を含むように前記機械学習モデルを修正するモデル調整器と
を備え、
前記合成データベースビルダはさらに、前記環境の前記環境特性に関連して前記機械学習モデルを格納する、
装置。
【請求項２】
前記環境特性に関連付けられる誤差特性を決定する環境特性評価器と、前記誤差特性に基づいて前記グラウンドトルースデータに前記ノイズを適用する前記合成データベースビルダとをさらに備える、請求項１に記載の装置。
【請求項３】
前記合成データベースビルダは、前記グラウンドトルースデータを複数のトレーニングセットに分割し、異なる量のノイズをそれぞれのトレーニングセットに適用し、前記モデルビルダは、前記複数のトレーニングセットに基づいて前記機械学習モデルをトレーニングする、請求項１または２に記載の装置。
【請求項４】
前記モデルビルダは、ノイズ量が増加していくトレーニングセットを使用して前記機械学習モデルをトレーニングする、請求項３に記載の装置。
【請求項５】
前記環境特性は、前記環境の光学反射率の量を含む、請求項１から４のいずれか一項に記載の装置。
【請求項６】
前記機械学習モデルは、畳み込みニューラルネットワーク（ＣＮＮ）を使用して実装される、請求項１から５のいずれか一項に記載の装置。
【請求項７】
前記環境特性は第１環境特性であって、前記センサデータ取得器はセンサデータにアクセスし、前記環境検出器は前記センサデータにより表される環境の第２環境特性を識別する、装置であって、
前記第１環境特性と一致する前記第２環境特性に基づいて前記機械学習モデルを選択するモデルセレクタと、選択された前記機械学習モデルを使用して前記センサデータを処理し、シーンを作成するシーン再構成器と
をさらに備える、請求項１から６のいずれか一項に記載の装置。
【請求項８】
前記環境検出器は、前記センサデータに関連してアクセスされるメタデータに基づいて前記第２環境特性を識別する、請求項７に記載の装置。
【請求項９】
前記機械学習モデルを格納する合成データストレージをさらに備える、請求項１から８のいずれか一項に記載の装置。
【請求項１０】
少なくとも１つのプロセッサに、
環境を表すグラウンドトルースデータを取得することと、
前記環境の環境特性を識別することと、
前記グラウンドトルースデータにノイズを適用してトレーニングセットを形成することと、
前記トレーニングセットおよび前記グラウンドトルースデータを使用して機械学習モデルをトレーニングすることと、
前記機械学習モデルの各層に介在する残りのＯＲゲート接続を含むように前記機械学習モデルを修正することと、
前記環境の前記環境特性に関連して前記機械学習モデルを格納することと
を少なくとも実行させる、プログラム。
【請求項１１】
前記プログラムはさらに、前記少なくとも１つのプロセッサに、前記環境特性に関連付けられる誤差特性を決定させ、前記グラウンドトルースデータに適用された前記ノイズは、前記誤差特性に基づく、請求項１０に記載のプログラム。
【請求項１２】
前記プログラムはさらに、前記少なくとも１つのプロセッサに、前記グラウンドトルースデータを複数のトレーニングセットに分割することと、前記複数のトレーニングセットのそれぞれに異なる量のノイズを適用することと、前記複数のトレーニングセットに基づいて前記機械学習モデルをトレーニングすることとを実行させる、請求項１０または１１に記載のプログラム。
【請求項１３】
前記プログラムはさらに、前記少なくとも１つのプロセッサに、ノイズ量が増加していくトレーニングセットを使用して前記機械学習モデルをトレーニングさせる、請求項１２に記載のプログラム。
【請求項１４】
前記環境特性は、前記環境の光学反射率の量を含む、請求項１０から１３のいずれか一項に記載のプログラム。
【請求項１５】
前記機械学習モデルは、畳み込みニューラルネットワーク（ＣＮＮ）を使用して実装される、請求項１０から１４のいずれか一項に記載のプログラム。
【請求項１６】
前記環境特性は第１環境特性であり、前記プログラムはさらに、前記少なくとも１つのプロセッサに、
センサデータにアクセスすることと、
前記センサデータにより表される環境の第２環境特性を識別することと、
前記第１環境特性と一致する前記第２環境特性に基づいて前記機械学習モデルを選択することと、
選択された前記機械学習モデルを使用して前記センサデータを処理してシーンを再作成することと
を実行させる、請求項１０から１５のいずれか一項に記載のプログラム。
【請求項１７】
前記プログラムはさらに、前記少なくとも１つのプロセッサに、前記センサデータに関連してアクセスされるメタデータに基づいて前記第２環境特性を識別させる、請求項１６に記載のプログラム。
【請求項１８】
シーン再構成のためのモデルを生成する方法であって、前記方法は、
環境を表すグラウンドトルースデータを取得する段階と、
前記環境の環境特性を識別する段階と、
前記グラウンドトルースデータにノイズを適用してトレーニングセットを形成する段階と、
前記トレーニングセットおよび前記グラウンドトルースデータを使用して機械学習モデルをトレーニングする段階と、
前記機械学習モデルの各層に介在する残りのＯＲゲート接続を含むように前記機械学習モデルを修正する段階と、
前記環境の前記環境特性に関連して前記機械学習モデルを格納する段階と
を備える、方法。
【請求項１９】
前記環境特性に関連付けられる誤差特性を決定する段階をさらに備え、前記グラウンドトルースデータに適用された前記ノイズは前記誤差特性に基づく、請求項１８に記載の方法。
【請求項２０】
前記グラウンドトルースデータを複数のトレーニングセットに分割する段階をさらに備え、前記トレーニングセットに前記ノイズを適用する前記段階は、それぞれの前記トレーニングセットに異なる量のノイズを適用する段階を含み、前記機械学習モデルをトレーニングする前記段階は、前記複数のトレーニングセットに基づいて実行される、請求項１８または１９に記載の方法。
【請求項２１】
前記機械学習モデルをトレーニングする前記段階は、ノイズ量が増加していくトレーニングセットを使用して実行される、請求項２０に記載の方法。
【請求項２２】
前記環境特性は、前記環境の光学反射率の量を含む、請求項１８から２１のいずれか一項に記載の方法。
【請求項２３】
前記機械学習モデルは、畳み込みニューラルネットワーク（ＣＮＮ）を使用して実装される、請求項１８から２２のいずれか一項に記載の方法。
【請求項２４】
前記環境特性は第１環境特性である方法であって、
センサデータにアクセスする段階と、
前記センサデータにより表される環境の第２環境特性を識別する段階と、
前記第１環境特性と一致する前記第２環境特性に基づいて前記機械学習モデルを選択する段階と、
選択された前記機械学習モデルを使用して前記センサデータを処理し、シーンを再作成する段階と
をさらに備える、請求項１８から２３のいずれか一項に記載の方法。
【請求項２５】
シーンを再構成するモデルを生成する装置であって、前記装置は、
環境を表すグラウンドトルースデータを取得する手段と、
前記環境の環境特性を識別する手段と、
前記グラウンドトルースデータにノイズを適用してトレーニングセットを形成する手段と、
前記トレーニングセットおよび前記グラウンドトルースデータを使用して機械学習モデルをトレーニングする手段と、
前記機械学習モデルの各層に介在する残りのＯＲゲート接続を含むように前記機械学習モデルを修正する手段と、
前記環境の前記環境特性に関連して前記機械学習モデルを格納することを適用する手段と
を備える、装置。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照］
米国特許仮出願第６２／６７４，４６２号は、ここでその全体が参照により本明細書に組み込まれる。米国特許仮出願第６２／６７４，４６２号に対する優先権がここで主張される。
【０００２】
本開示は一般的に、シーン再構成に関し、より具体的には、畳み込みニューラルネットワークを使用するシーンを再構成する方法、システム、製造物品、および装置に関する。
【背景技術】
【０００３】
近年では、画像および映像データは、特に、スタティックカメラ（例えば、監視カメラ）および動的に移動するカメラ（例えば、クアッドコプターカメラ、ドローンなど）の出現により十分に利用可能になった。人間の脳が、以前の経験に基づいて単一観点からオブジェクトを推定する能力を含む一方、撮像された画像および映像データの１または複数の空隙は、機械ベースの解釈および／または解析に対して問題を引き起こし得る。
【図面の簡単な説明】
【０００４】
【図１】本開示の教示に従って構成された例示的な再構成システムの概略図である。
【０００５】
【図２】畳み込みニューラルネットワークを使用してシーンを再構成するために図１の例示的な再構成システムにより実装されるＯＲ状のアーキテクチャである。
【０００６】
【図３】合成データベース作成を実装するために実行され得る機械可読命令を表すフローチャートである。
【０００７】
【図４】シーン再構成を実装するために実行され得る機械可読命令を表すフローチャートである。
【０００８】
【図５】図１および２の例示的な再構成システムを実装するために図３および／または４の命令を実行するように構造化された例示的な処理プラットフォームのブロック図である。
【０００９】
図面は、縮尺通りではない。代わりに、層または領域の厚みは、図面において拡大され得る。
【発明を実施するための形態】
【００１０】
取得された画像データは、１または複数のファクタにより生じる誤差および／または空隙を含み得る。いくつかの例において、取得された画像データにおける誤差および／または空隙は、光検出および測距（ＬｉＤＡＲ）システムなどの、画像取得デバイスを飽和させる高反射面により生じる。いくつかの例において、誤差および／または空隙は、木、車両、建物などといったシーンにおける閉塞により生じる。本明細書に開示された例において、機械学習は、入力センサデータを処理して入力データにおける誤差（例えば、シーンにおける閉塞により生じる空隙）を修正するのに使用され得る１または複数のモデルを作成するのに使用される。 
【００１１】
機械学習（ＭＬ）および／または人工知能（ＡＩ）は、機械（例えば、コンピュータ、論理回路など）が、所与の入力に基づいて出力を生成することを可能にする。ＡＩは、機械が入力を処理して出力を生成するモデルを使用することを可能にする。ＭＬは、モデルが特定の入力が特定の出力をもたらすようにトレーニングされることを可能にする。一般的に、ＭＬ／ＡＩシステムを実装することは、学習／トレーニングフェーズと推論フェーズとの２つのフェーズを含む。学習／トレーニングフェーズにおいて、トレーニングアルゴリズムは、例えばトレーニングデータに基づいて、特定の入力に基づいて特定の出力を作成するようにモデルをトレーニングするのに使用される。一般的に、モデルは、入力データがどのように出力データに変換されるかをガイドする内部パラメータを含む。加えて、ハイパーパラメータは、トレーニング処理の一部として使用され、学習がどのように実行されるか（例えば、学習速度、機械学習モデルにおいて使用される層の数など）を制御する。一旦トレーニングされると、他のデータ（例えば、ライブデータ）は推論フェーズでモデルに入力され、出力を作成する。この推論フェーズは、トレーニングから（例えば、モデルから）学習したものに基づいて出力を生成すべく、ＡＩが「思考中」である場合である。いくつかの例において、入力データには、機械学習モデルへの入力として使用される前に、前処理が行われる。さらに、いくつかの例において、出力データには、ＡＩモデルにより生成された後に、後処理が行われ、出力を有用な結果（例えば、機械により実行される命令）に変換し得る。
【００１２】
多くの異なる種類の機械学習モデルおよび／または機械学習アーキテクチャが存在する。本明細書に開示された例では、畳み込みニューラルネットワーク（ＣＮＮ）モデルが使用される。本明細書に開示された例では、追加のＯＲゲート構造が機械学習モデルに追加され、誤検出を減らす（例えば、機械学習モデルの処理を介して誤差がもたらされる可能性を減らす）。ＣＮＮモデルを使用することは、入力される任意のサイズのセンサデータを処理することを可能にする。しかしながら、例えば、ディープニューラルネットワーク（ＤＮＮ）、サポートベクトルマシン（ＳＶＭ）などといった他のモデルアーキテクチャは、追加的にまたは代替的に使用され得る。
【００１３】
上述のように、ＭＬ／ＡＩモデルは、特定の入力に基づいて特定の出力を生成するようにトレーニングされる。ＭＬ／ＡＩモデルの種類および／または予想される出力に基づいて、異なる種類のトレーニングが実行され得る。例えば、教師ありのトレーニングは、入力とそれに対応する予想される出力とを使用して（例えば、選択パラメータの組み合わせの反復により）、モデル誤差を減らすＭＬ／ＡＩモデルのパラメータを選択する。
【００１４】
本明細書に開示された例において、ＭＬ／ＡＩモデルは、グラウンドトルースデータ（例えば、ノイズを含まないと既知であるキュレートされたセンサデータ）を使用してトレーニングされ、グラウンドトルースデータにはノイズが追加される。すなわち、ノイズが追加されたグラウンドトルースデータはトレーニング入力として使用され、その一方、グラウンドトルースデータ（追加ノイズなし）は予想される出力として使用される。本明細書に開示された例において、トレーニングは中心設備で（例えば、クラウドコンピューティング環境で）実行されるが、任意の他の計算環境で追加的にまたは代替的に実行され得る。
【００１５】
一旦トレーニングが完全すると、モデルはデータベースに格納される。データベースは、サーバ位置に（例えば、クラウドコンピューティング環境に）にあり得る。いくつかの例において、モデルはエッジデバイス（例えば、エッジユーザコンピュータ、ドローン、物のインターネット（ＩｏＴ）デバイスなど）に提供され得る。モデルは次に、サーバおよび／またはエッジデバイスにより実行され、再構成されたシーンを生成し得る。そのようなアプローチは、ドローンが環境内で動作している、且つナビゲーションおよび／または衝突回避目的のためにシーン再構成の実行を試みるシナリオにおいて有用である。
【００１６】
図１は、例示的な再構成システム１００の概略図である。図１の示された例において、再構成システム１００は、例示的なスキャン再構成マネージャ１０１、センサ１０２、およびセンサデータストレージ（１０３）を含む。例示的なスキャン再構成マネージャ１０１は、例示的なセンサデータ取得器１０４、例示的な環境検出器１０６、例示的なモデルセレクタ１０８、例示的なモデルビルダ１１０、例示的なモデル調整器１１２、例示的な誤差特性評価器１１４、例示的な合成データベースビルダ１１６、例示的な合成データストレージ１２４、および例示的なシーン再構成器１３０を含む。例示的なバス１１８は、例示的な再構成マネージャ１０１の前述の構造に通信可能に接続する。また、例示的なセンサデータ取得器１０４は、例示的なセンサデータソース１０３および／または例示的なセンサ１０２に通信可能に接続する。
【００１７】
図１の示された例の例示的なセンサ１０２は、例えば、１または複数の光検出および測距（ＬｉＤＡＲ）センサ、画像センサ、距離センサ、超音波センサなどといった１または複数のデータ取得センサにより実装される。いくつかの例において、複数の異なる種類のセンサが使用される。本明細書に開示された例において、センサ１０２は、センサデータ取得器１０４にデータを提供する。いくつかの例において、センサ１０２からのデータは、センサデータストレージ１０３に格納される。いくつかの例において、センサデータは、格納されるおよび／またはそうでない場合は３次元空間における画像情報を示すボクセル（体積要素）として提供される。いくつかの他の例において、センサデータは、ボクセル表現を生成するのに使用される画像データとして提供される。いくつかの例において、センサデータは、ボクセル表現を生成するのに使用されるポイントクラウドとして提供される。いくつかの例において、ボクセルは、３次元空間における点および／または領域の占有（例えば、特定の空間がオブジェクトにより消費されるかどうか）を示す２進値を含む。いくつかの例において、そのようなボクセル情報は、例えば、色（例えば、ＲＧＢ（赤、緑、青））データ、輝度データなどといった追加情報を含む。
【００１８】
図１の示された例の例示的なセンサデータストレージ１０３は、例えば、フラッシュメモリ、磁気媒体、光学媒体、ソリッドステートメモリ、ハードドライブ、サムドライブなどといった、データを格納するための任意のメモリ、ストレージデバイスおよび／またはストレージディスクにより実装される。さらに、例示的なセンサデータストレージ１０３に格納されたデータは、例えば、バイナリデータ、カンマ区切データ、タブ区切データ、構造化照会言語（ＳＱＬ）構造などといった任意のデータフォーマットであり得る。示された例において、センサデータストレージ１０３は単一デバイスとして示されている一方、例示的なセンサデータストレージ１０３および／または本明細書に説明されている任意の他のデータストレージデバイスは、任意の数のおよび／または種類のメモリにより実装され得る。図１の示された例において、例示的なセンサデータストレージ１０３は、センサデータ（例えば、センサ１０２により収集されたキャッシュされたセンサデータ）および／またはグラウンドトルースデータ（例えば、ノイズを含まないと既知であるキュレートされたセンサデータ）を格納する。
【００１９】
図１の示された例の例示的なセンサデータ取得器１０４は、例えば、ハードウェアプロセッサなどの論理回路により実装される。しかしながら、例えば、１または複数のアナログまたはデジタル回路、論理回路、プログラマブルプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、プログラマブル論理デバイス（ＰＬＤ）、フィールドプログラマブル論理デバイス（ＦＰＬＤ）、デジタルシグナルプロセッサ（ＤＳＰ）などといった任意の他の種類の回路が追加的にまたは代替的に使用され得る。例示的なセンサデータ取得器１０４は、グラウンドトルースデータおよび／またはセンサデータ（例えば、画像、ビデオなど）を取得する。いくつかの他の例において、センサデータおよび／またはグラウンドトルースデータは、例示的なセンサデータ取得器１０４がボクセル表現を生成するのに使用する画像データとして提供される。いくつかの例において、センサデータおよび／またはグラウンドトルースデータは、例示的なセンサデータ取得器１０４がボクセル表現を生成するのに使用するポイントクラウドとして提供される。 
【００２０】
図１の示された例の例示的な環境検出器１０６は、例えば、ハードウェアプロセッサなどの論理回路により実装される。しかしながら、例えば、１または複数のアナログまたはデジタル回路、論理回路、プログラマブルプロセッサ、ＡＳＩＣ、ＰＬＤ、ＦＰＬＤ、プログラマブルコントローラ、ＧＰＵ、ＤＳＰなどといった任意の他の種類の回路が追加的にまたは代替的に使用され得る。例示的な環境検出器１０６は、グラウンドトルースデータおよび／またはセンサデータの特性および／または特性の種類を識別する。本明細書に開示された例において、そのような特性は、環境が都市環境（例えば、都市のランドスケープ）であるかまたは農村環境であるかが識別されたかどうかを含む。いくつかの例において、例えば、環境に通常存在する建物および／またはアーキテクチャの種類などの、環境のさらなる特性が識別され得る。例えば、現代都市のランドスケープ／アーキテクチャ（例えば、サンフランシスコ、ニューヨークなど）は、他の都市のランドスケープ／アーキテクチャ（例えば、シエナ、イタリア、ダブリン、アイルランド）とは異なるモデルをもたらし得る。いくつかの例において、センサデータに含まれるメタデータ（例えば、エクスチェンジャブル・イメージ・ファイル・フォーマット（ＥＸＩＦ）データ）は、環境の地理的位置を決定するのに使用され得る。
【００２１】
図１の示された例の例示的なモデルセレクタ１０８は、例えば、ハードウェアプロセッサなどの論理回路により実装される。しかしながら、例えば、１または複数のアナログまたはデジタル回路、論理回路、プログラマブルプロセッサ、ＡＳＩＣ、ＰＬＤ、ＦＰＬＤ、プログラマブルコントローラ、ＧＰＵ、ＤＳＰなどといった任意の他の種類の回路が追加的にまたは代替的に使用され得る。例示的なモデルセレクタ１０８は、環境検出器１０６により識別される環境特性に基づいて、シーン再構成における使用のための合成データベースを選択する。本明細書に開示された例において、合成データベースは、シーン再構成を実行する場合に使用される１または複数の機械学習モデルを表す。
【００２２】
図１の示された例の例示的なモデルビルダ１１０は、例えば、ハードウェアプロセッサなどの論理回路により実装される。しかしながら、例えば、１または複数のアナログまたはデジタル回路、論理回路、プログラマブルプロセッサ、ＡＳＩＣ、ＰＬＤ、ＦＰＬＤ、プログラマブルコントローラ、ＧＰＵ、ＤＳＰなどといった任意の他の種類の回路が追加的にまたは代替的に使用され得る。例示的なモデルビルダ１１０は、グラウンドトルースデータをトレーニングセットに分割する。本明細書に開示された例では、３つのトレーニングセットが使用される。しかしながら、任意の他の数のトレーニングセットが、追加的にまたは代替的に使用され得る。いくつかの例において、各トレーニングセットは、他のトレーニングセットと同じデータを含む。そのようなアプローチは、合成データベースビルダ１１６により、様々なレベルのノイズがトレーニングセットに適用されることを可能にする。しかしながら、いくつかの他の例では、単一トレーニングセットが使用され、当該トレーニングセットには漸進的な量のノイズが適用される。本明細書に開示された例において、トレーニングセットは同じサイズである。しかしながら、任意のサイズのトレーニングデータが追加的にまたは代替的に使用され得る。
【００２３】
例示的なモデルビルダ１１０は、トレーニングセット（合成データベースビルダ１１６により適用されたノイズを含む）を使用してモデルをトレーニングする。本明細書に開示された例において、モデルは、畳み込みニューラルネットワーク（ＣＮＮ）を使用して実装される。しかしながら、任意の他の機械学習モデルアーキテクチャが追加的にまたは代替的に使用され得る。本明細書に開示された例において、例示的なモデルビルダ１１０は、確率的勾配降下法を使用してモデルをトレーニングする。しかしながら、任意の他のトレーニングアルゴリズムが追加的にまたは代替的に使用され得る。本明細書に開示された例では、各トレーニングセットに対して、検証データセット（例えば、ノイズが適用されたグラウンドトルースデータおよび／またはトレーニングデータの一部）とグラウンドトルースデータとの間の許容レベルの誤差が達成されるまで、トレーニングが実行される。
【００２４】
例示的なモデルビルダ１１０は次に、任意の追加のトレーニングセットが存在するかどうかを決定し、そうである場合、全てのトレーニングセットが使用されるまでトレーニングを反復する。本明細書に開示された例では、可変な量のノイズが様々なトレーニングセットに適用され得る（例えば、合成データベースビルダ１１６により）。例えば、第１反復において、第１ノイズ量が第１トレーニングセット（例えば１０％ノイズ）に適用され得、その一方、第２反復において、第１ノイズ量とは異なる第２ノイズ量が、第２トレーニングセット（例えば２０％ノイズ）に適用され得る。本明細書に開示された例において、それぞれ１０％、２０％、および５０％のノイズ値を有する３つのトレーニングセットが使用される。ノイズ量を増加させて使用することは、ノイズがますます増加するシナリオにおいて、モデルが自ら徐々に改善されるので、モデルのコンバージェンスを改善する。
【００２５】
図１の示された例の例示的なモデル調整器１１２は、例えば、ハードウェアプロセッサなどの論理回路により実装される。しかしながら、例えば、１または複数のアナログまたはデジタル回路、論理回路、プログラマブルプロセッサ、ＡＳＩＣ、ＰＬＤ、ＦＰＬＤ、プログラマブルコントローラ、ＧＰＵ、ＤＳＰなどといった任意の他の種類の回路が追加的にまたは代替的に使用され得る。全てのトレーニングセットがモデルビルダ１１０によってモデルの生成のために一旦使用されると、例示的なモデル調整器１１２は、残りのＯＲゲート接続を用いて、モデルを適合させるおよび／またはそうでない場合は強化する。従って、いくつかの例では、モデル調整器１１２はＯＲゲートカスタマイザと呼ばれる場合がある。上述のように、追加ＯＲゲートは、誤った推論を除去することにより、システムの精度を改善する。すなわち、ＯＲゲートアーキテクチャは、モデルの最終結果（例えば、ライブデータに関連して使用される場合の）によって誤ったボクセルデータが作成される結果をもたらさないことを保証する。換言すると、システムの性能は、入力データより劣らないことを保証される。
【００２６】
通常のＣＮＮ技術は、ある程度の誤差を生成する回帰と類似する方式で動作する。いくつかの従来のアプローチでは、ＣＮＮ技術は、画像入力データと１または複数の畳み込み層との間に論理ＡＮＤ演算を採用する。このように、ノイズのあるおよび／またはそうでない場合は不完全な（例えば、誤差／空隙を含む）入力センサが、現在の構造を示す特定のボクセルの情報を含まない、且つ、ＣＮＮ層が現在の構造を示す非ゼロ確率を示唆するとき、次に論理ＡＮＤアーキテクチャはゼロ値出力をもたらす。同様に、ノイズのある入力が構造を示すボクセルを含む（例えば、ボクセルにおける「１」の２進値）が、ＣＮＮ層の反復は構造を示さないとき、次に、論理ＡＮＤアーキテクチャはゼロ値出力をもたらす。このように、従来のＣＮＮ技術は、最初の入力画像より劣る（例えば、トルースデータと比較した場合、より多くの誤差を含む）出力画像再構成をもたらし得る。この効果は、入力センサデータにおける空隙が共通である環境で悪化する。
【００２７】
本明細書に開示された例は、例示的なモデル調整器１１２が残りの接続でＯＲ状のゲートを採用することにより、部分的にシーン再構成を改善し、それによって、誤った推論を除去する（例えば、誤検出の識別）。図２は、例示的なＯＲ状のアーキテクチャ２００を示す。図２の示された例において、例示的なアーキテクチャ２００は、第１ネットワーク層２０４、第２ネットワーク層２０６、第３ネットワーク層２０８を含むエンコーダフェーズ２０２を含む。また、図２の示された例は、対応する第４ネットワーク層２１２、第５ネットワーク層２１４、および第６ネットワーク層２１６を含むデコーダフェーズ２１０を含む。例示的なスキャン再構成マネージャ１０１により畳み込み活動中の誤った推論を除去すべく、例示的なアーキテクチャ２００は、画像データに関連付けられる入力および中間の畳み込み出力を許容する対応するＯＲゲート２１８、２１９、２２０を含む。いくつかの例において、アーキテクチャ２００は、ソース画像データの特定のニュアンスに関連して適合された１または複数の合成データソース／モデルを生成する。
【００２８】
図１に戻ると、図１の示された例の例示的な誤差特性評価器１１４は、例えば、ハードウェアプロセッサなどの論理回路により実装される。しかしながら、例えば、１または複数のアナログまたはデジタル回路、論理回路、プログラマブルプロセッサ、ＡＳＩＣ、ＰＬＤ、ＦＰＬＤ、プログラマブルコントローラ、ＧＰＵ、ＤＳＰなどといった任意の他の種類の回路が追加的にまたは代替的に使用され得る。例示的な誤差特性評価器１１４は、対象の環境に関連付けられる通常の誤差特性を決定する。例えば、都市環境（例えば、金属製の構造および／またはガラス窓を有する環境）は、センサデータにおける反射に遭遇し得る。そのような反射は、（実際には、そのボクセルが占有された値を有するべきである場合）占有されていないボクセルとして自ら現れ得る。誤差特性は、例示的な合成データベースビルダ１１６により使用され、特定の種類および／または量の誤差（例えば、ノイズ）をグラウンドトルースデータに適用する。
【００２９】
図１の示された例の例示的な合成データベースビルダ１１６は、例えば、ハードウェアプロセッサなどの論理回路により実装される。しかしながら、例えば、１または複数のアナログまたはデジタル回路、論理回路、プログラマブルプロセッサ、ＡＳＩＣ、ＰＬＤ、ＦＰＬＤ、プログラマブルコントローラ、ＧＰＵ、ＤＳＰなどといった任意の他の種類の回路が追加的にまたは代替的に使用され得る。例示的な合成データベースビルダ１１６は、環境固有の誤差／ノイズをグラウンドトルースデータの第１トレーニングセットに注入する。ノイズをトレーニングセットに適用すべく、例示的な合成データベースビルダ１１６は、１または複数のボクセルを、占有値（例えば、特定の位置におけるオブジェクトの存在を示す）から、非占有値（例えば、特定の位置におけるオブジェクトの不在を示す）にトグルする。本明細書に開示された例において、トレーニングデータに現れるボクセルの割合はトグルされる（例えば、１０％、２０％など）。しかしながら、トグルされるボクセルを識別する任意の他のアプローチが追加的にまたは代替的に使用され得る。さらに、いくつかの例では、占有値から非占有値にトグルする代わりに、合成データベースビルダ１１６は、ボクセルを、非占有値から占有値にトグルし得る（例えば、そのようなオブジェクトが特定の位置に存在しない場合、その位置にオブジェクトの存在を示すノイズを表す）。本明細書に開示された例において、ノイズは、合成データベースビルダ１１６により、トレーニングデータセットにおけるボクセルに、ランダムに適用される。しかしながら、ノイズは、任意の他のやり方でトレーニングデータセットにおけるボクセルに適用され得る。
【００３０】
図１の示された例の例示的な合成データストレージ１２４は、例えば、フラッシュメモリ、磁気媒体、光学媒体、ソリッドステートメモリ、ハードドライブ、サムドライブなどといった、データを格納するための任意のメモリ、ストレージデバイスおよび／またはストレージディスクにより実装される。さらに、例示的な合成データストレージ１２４に格納されたデータは、例えば、バイナリデータ、カンマ区切データ、タブ区切データ、構造化照会言語（ＳＱＬ）構造などといった任意のデータフォーマットであり得る。示された例において、合成データストレージ１２４は単一デバイスとして示されている一方、例示的な合成データストレージ１２４および／または本明細書に説明されている任意の他のデータストレージデバイスは、任意の数のおよび／または種類のメモリにより実装され得る。図１の示された例において、例示的な合成データストレージ１２４は、シーン再構成に使用され得る環境固有の機械学習モデル（例えば、合成データベース）を格納する。
【００３１】
図１の示された例の例示的なシーン再構成器１３０は、例えば、ハードウェアプロセッサなどの論理回路により実装される。しかしながら、例えば、１または複数のアナログまたはデジタル回路、論理回路、プログラマブルプロセッサ、ＡＳＩＣ、ＰＬＤ、ＦＰＬＤ、プログラマブルコントローラ、ＧＰＵ、ＤＳＰなどといった任意の他の種類の回路が追加的にまたは代替的に使用され得る。トレーニングされたモデルの推論および／または使用フェーズの間、例示的なシーン再構成器１３０は、センサデータ（例えば、センサデータ取得器１０４を介して受信されたセンサデータ）を、選択されたモデルを使用して処理し、再構成されたシーンを生成する。このように、シーンは、（例えば、再構成される環境において発生すると予想される誤差を考慮すべく）センサデータにより表される特定の環境に適合された機械学習モデルを使用して作成される。そのような適合は、センサデータを解析する場合、その種類の環境特有のノイズが考慮されることを保証する。生成されたシーンは次に、例えばドローンのナビゲーションを容易にするために使用され得る。
【００３２】
動作において、例示的なセンサデータ取得器１０４は、例示的なセンサデータソース１０３および／または例示的なセンサ１０２からの画像データなどのセンサデータを取得する。取得された画像データは、画像取得デバイス／ハードウェアに様々な方法で影響を与える特定の種類の環境に関連付けられ得る。例えば、ＬｉＤＡＲシステムは、都会環境における空間データを収集する場合、特定の誤差を示し得る。より具体的には、ポストモダンの都会環境（例えば、サンフランシスコ）は、ＬｉＤＡＲセンサを飽和させる高反射性材料（例えば、高反射性ガラス、高反射性金属など）を利用するオフィスビルおよび／または超高層ビルを含み得る。しかしながら、ＬｉＤＡＲシステムは、例えば、光学的にミュートされた建築材料の程度が比較的に大きいことにより、従来の都市（例えば、イタリアのシエナ、英国のバースなど）と同じ程度にそのような誤差を示さない場合がある。代わりに、ＬｉＤＡＲシステムは、影により生じるそのような環境における異なる種類の誤差を示し得る。
【００３３】
例示的な環境検出器１０６は、取得されたセンサデータと関連付けられる環境オブジェクトを識別し、例示的なモデルセレクタ１０８は、（例示的な合成データストレージ１２４から）識別された環境オブジェクトと関連付けられる合成データベースを選択する。環境オブジェクトは、ポストモダンの都市画像、従来の都市画像、ポストモダンの住居画像、田舎の画像などにより生じる状況およびニュアンスを含み得るが、これらに限定されない。一般的にいえば、選択された合成データベースは、取得された画像が空隙および／または誤差を含む場合に画像再構成作業を改善するための取得された画像データと関連するトレーニングデータを含む。例示的なモデルセレクタ１０８は、識別された環境オブジェクトに関連付けられる合成データベースおよび／またはデータセットを選択し、例示的なモデルビルダ１１０はＣＮＮを構築する。
【００３４】
例示的な誤差特性評価器１１４は、グラウンドトルースデータが取られた環境に関連付けられる通常の誤差特性を決定する。上述されたように、グラウンドトルースデータがポストモダン都市環境において取られた場合において、次に、例示的な誤差特性評価器１１４は、ＬｉＤＡＲベースの取得システムの対象の特性として輝度、彩度を識別する。例示的な合成データベースビルダ１１６は、環境固有の誤差をグラウンドトルースデータに注入し、１または複数のニューラルネットワークトレーニング動作によって、環境固有のモデルを開発する。このように、モデルは、代替環境（例えば、比較的高い程度の光学反射率を有する建築材料を示す、別のポストモダンの都会）のグラウンドトルースデータを再取得する必要なく、他の同様の状況である環境に、適用され得る。いくつかの例において、環境は、センサ１０２を保持するセンサプラットフォーム（例えば、センサ１０２を動作させるデバイス）が動作すると予想される領域の種類に対応し得る。例えば、環境は、自律走行車両が動作している車道の種類（例えば、都市の街路、郊外の街路、田舎の道路、幹線道路など）に対応し得る。
【００３５】
いくつかの例において、スキャン再構成マネージャ１０１はサーバで実装される。そのような例において、追加のサーバリソースが次に使用され、機械学習モデルのトレーニングを実行し得る。さらに、サーバで実装されるスキャン再構成マネージャ１０１は次に、センサプラットフォーム（例えば、センサ１０２を動作させるデバイス）からセンサデータを受信し、再構成されたシーンをセンサプラットフォームに提供し得る。いくつかの例において、スキャン再構成マネージャ１０１は、センサプラットフォームの要素として実装されるおよび／またはセンサプラットフォームと通信する。そのようなアプローチは、センサプラットフォーム（例えば、モバイルデバイス、無人航空機（ＵＡＶ）、ドローン、産業機器、自律走行車両など）が、センサデータをローカルに処理することと、環境固有のシーン再構成を実行することとを可能にする。
【００３６】
図１の再構成システム１００を実装する例示的な方式が図１および２に示されている一方、図１および／または２に示された１または複数の要素、処理および／またはデバイスは組み合わされ得、分割され得、再配置され得、省略され得、除去され得、および／または任意の他の方法で実装され得る。さらに、例示的なセンサデータ取得器１０４、例示的な環境検出器１０６、例示的なモデルセレクタ１０８、例示的なモデルビルダ１１０、例示的なモデル調整器１１２、例示的な特性評価器１１４、例示的な合成データベースビルダ１１６、例示的な合成データストレージ１２４、例示的なシーン再構成器１３０、および／またはより一般的には、図１の例示的なスキャン再構成マネージャ１０１は、ハードウェア、ソフトウェア、ファームウェア、および／または、ハードウェア、ソフトウェアおよび／またはファームウェアの任意の組み合わせにより実装され得る。したがって、例えば、例示的なセンサデータ取得器１０４、例示的な環境検出器１０６、例示的なモデルセレクタ１０８、例示的なモデルビルダ１１０、例示的なモデル調整器１１２、例示的な特性評価器１１４、例示的な合成データベースビルダ１１６、例示的な合成データストレージ１２４、例示的なシーン再構成器１３０のいずれか、および／または、より一般的には、図１の例示的なスキャン再構成マネージャ１０１は、１または複数のアナログまたはデジタル回路、論理回路、プログラマブルプロセッサ、プログラマブルコントローラ、グラフィックス処理ユニット（ＧＰＵ）、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、プログラマブル論理デバイス（ＰＬＤ）および／またはフィールドプログラマブル論理デバイス（ＦＰＬＤ）により実装され得る。単にソフトウェアおよび／またはファームウェアの実装を網羅する本特許の装置請求項またはシステム請求項のいずれかを読む場合、例示的なセンサデータ取得器１０４、例示的な環境検出器１０６、例示的なモデルセレクタ１０８、例示的なモデルビルダ１１０、例示的なモデル調整器１１２、例示的な特性評価器１１４、例示的な合成データベースビルダ１１６、例示的な合成データストレージ１２４、例示的なシーン再構成器１３０の少なくとも１つの、および／または、より一般的には、図１の例示的なスキャン再構成マネージャ１０１は、ソフトウェアおよび／またはファームウェアを含むメモリ、デジタル多用途ディスク（ＤＶＤ）、コンパクトディスク（ＣＤ）、ブルーレイディスクなどといった非一時的コンピュータ可読ストレージデバイスまたはストレージディスクを含むようにここで明確に定義される。またさらには、図１の例示的な再構成システム１００は、図１および／または２に示されたそれらに加えてまたはその代わりに、１または複数の要素、処理および／またはデバイスを含み得る、および／または、示された要素、処理およびデバイスのいずれか１つより多くまたは全てを含み得る。本明細書で使用されるように、「と通信する」という表現は、その変形例を含み、１または複数の中間要素による直接通信および／または間接通信を包含み、直接的な物理的（例えば、有線）通信および／または常時通信を必要としないが、むしろ、周期的な間隔、スケジュールされた間隔、非周期的な間隔、および／または一度だけのイベントにおける選択的な通信を追加的に含む。
【００３７】
図１および／または２の再構成システム１００を実装するための例示的なハードウェアロジック、機械可読命令、ハードウェア実装ステートマシン、および／またはその任意の組み合わせを表すフローチャートは、図３および／または４に示される。機械可読命令は、図５に関連して以下に論じられる例示的なプロセッサプラットフォーム５００に示されるプロセッサ５１２などのコンピュータプロセッサによる実行のための実行可能プログラムまたは実行可能プログラムの一部であり得る。プログラムは、ＣＤ‐ＲＯＭ、フロッピーディスク、ハードドライブ、ＤＶＤ、ブルーレイディスク、またはプロセッサ５１２に関連付けられるメモリなどの非一時的コンピュータ可読ストレージ媒体に格納されたソフトウェアで具現化され得るが、全体のプログラムおよび／またはその一部は、代替的に、プロセッサ５１２以外のデバイスにより実行されることおよび／またはファームウェアもしくは専用ハードウェアで具現化されることが可能である。さらに、例示的なプログラムが図３および４に示されたフローチャートを参照して説明されているが、例示的な再構成システム１００を実装する多くの他の方法が代替的に使用され得る。例えば、ブロックの実行順序が変更され得、および／または説明されたブロックの一部が変更され得、除去され得、または組み合わされ得る。追加的にまたは代替的に、いずれかまたは全てのブロックは、ソフトウェアまたはファームウェアを実行することなく対応する動作を実行するように構造化された１または複数のハードウェア回路（例えば、ディスクリートおよび／または集積アナログおよび／またはデジタル回路、ＦＰＧＡ、ＡＳＩＣ、コンパレータ、演算増幅器（オペアンプ）、論理回路など）により実装され得る。
【００３８】
本明細書に説明される機械可読命令は、圧縮フォーマット、暗号化フォーマット、断片化フォーマット、パッケージ化フォーマットなどのうち１または複数で格納され得る。本明細書に説明された機械可読命令は、機械実行可能命令を作成、製造および／または生成するのに利用され得るデータ（例えば、命令の一部、コード、コードの表現など）として格納され得る。例えば、機械可読命令は、１または複数のストレージデバイスおよび／またはコンピューティングデバイス（例えば、サーバ）に断片化および格納され得る。機械可読命令は、コンピューティングデバイスおよび／または他の機械により直接可読および／または実行可能にすべく、設置、修正、適応、更新、結合、補足、構成、解読、圧縮解除、アンパック、分散、再割り当てなどのうち１または複数を、必要とし得る。例えば、機械可読命令は、別個のコンピューティングデバイスに個々に圧縮、暗号化および格納された複数の部分に格納され得、ここで、当該複数の部分は、解読、圧縮解除および組み合わされた場合、本明細書に説明されたもののようなプログラムを実装する実行可能命令のセットを形成する。別の例において、機械可読命令は、コンピュータにより読み取られ得る状態で格納され得るが、特定のコンピューティングデバイスまたは他のデバイスで命令を実行すべく、ライブラリ（例えば、ダイナミックリンクライブラリ（ＤＬＬ））、ソフトウェア開発キット（ＳＤＫ）、アプリケーションプログラミングインタフェース（ＡＰＩ）などの追加を必要とする。別の例において、機械可読命令は、機械可読命令および／または対応するプログラムが全体的にまたは部分的に実行され得る前に構成（例えば、格納された設定、データ入力、記録されたネットワークアドレスなど）される必要があり得る。したがって、開示された機械可読命令および／または対応するプログラムは、格納中またはそうでない場合は静止中または送信中である場合、機械可読命令および／またはプログラムの特定のフォーマットまたは状態に関わらず、そのような機械可読命令および／またはプログラムを包含することを意図している。
【００３９】
上述のように、図３および図４の例示的な処理は、情報が任意の期間（例えば、長期間、永久的に、短時間、一時的なバッファの間、および／または情報をキャッシュする間）格納される、ハードディスクドライブ、フラッシュメモリ、リードオンリメモリ、コンパクトディスク、デジタル多用途ディスク、キャッシュ、ランダムアクセスメモリ、および／または任意の他のストレージデバイスまたはストレージディスクなどの非一時的コンピュータおよび／または機械可読媒体に格納された実行可能命令（例えば、コンピュータおよび／または機械可読命令）を使用して実装され得る。本明細書に使用されるように、非一時的コンピュータ可読媒体という用語は、任意の種類のコンピュータ可読ストレージデバイスおよび／またはストレージディスクを含み、伝搬する信号を排除し、送信媒体を排除するように明確に定義される。 
【００４０】
「含む（Ｉｎｃｌｕｄｉｎｇ）」および「備える（ｃｏｍｐｒｉｓｉｎｇ）」（およびその全ての形成および時制）は、非限定的用語であるように本明細書で使用される。したがって、請求項が「含む」または「備える」の任意の形成（例えば、ｃｏｍｐｒｉｓｅｓ、ｉｎｃｌｕｄｅｓ、ｃｏｍｐｒｉｓｉｎｇ、ｉｎｃｌｕｄｉｎｇ、ｈａｖｉｎｇなど）を、プリアンブルとしてまたは任意の種類の請求項の記述内で採用する場合はいつでも、追加要素、用語などが、対応する請求項または記述の範囲から外れることなく存在し得ることを理解するべきである。本明細書で使用されるように、「少なくとも（ａｔ  ｌｅａｓｔ）」という表現が移行部の用語、例えば、請求項のプリアンブルとして使用される場合、それは「備える」および「含む」という用語が非限定的であるのと同じように、非限定的である。用語「および／または（ａｎｄ／ｏｒ）」は、例えば、Ａ，Ｂおよび／またはＣのような形成で使用される場合、（１）Ａのみ、（２）Ｂのみ、（３）Ｃのみ、（４）ＡとＢと、（５）ＡとＣと、（６）ＢとＣと、および（７）ＡとＢとＣとのような、Ａ，Ｂ、Ｃの任意の組み合わせまたはサブセットを指す。構造、要素、項目、オブジェクトおよび／または物を説明する文脈において本明細書で使用されるように、「ＡおよびＢのうちの少なくとも１つ」という表現は、（１）少なくとも１つのＡ、（２）少なくとも１つのＢ、および（３）少なくとも１つのＡおよび少なくとも１つのＢのいずれかを含む実装例を指すことを意図している。同様に、構造、要素、項目、オブジェクトおよび／または物を説明する文脈において本明細書で使用されるように、「ＡまたはＢのうちの少なくとも１つ」という表現は、（１）少なくとも１つのＡ、（２）少なくとも１つのＢ、および（３）少なくとも１つのＡおよび少なくとも１つのＢのいずれかを含む実装例を指すことを意図している。処理、命令、動作、活動および／または段階の実行または実施を説明する文脈において本明細書で使用されるように、「ＡおよびＢのうちの少なくとも１つ」という表現は、（１）少なくとも１つのＡ、（２）少なくとも１つのＢ、および（３）少なくとも１つのＡおよび少なくとも１つのＢのいずれかを含む実装例を指すことを意図している。同様に、処理、命令、動作、活動および／または段階の実行または実施を説明する文脈において本明細書で使用されるように、「ＡまたはＢのうちの少なくとも１つ」という表現は、（１）少なくとも１つのＡ、（２）少なくとも１つのＢ、および（３）少なくとも１つのＡおよび少なくとも１つのＢのいずれかを含む実装例を指すことを意図している。
【００４１】
図３の例示的な処理３００は、実行される場合、１または複数の特定の環境に対応する機械学習モデルの作成をもたらす。図３のプログラム３００は、例示的なセンサデータ取得器１０４がグラウンドトルースデータ（例えば、画像、ビデオなど）を取得する場合に開始する。（ブロック３１０）本明細書に開示された例において、グラウンドトルースデータは、特定の環境（例えば、都市）の高品質の画像、ビデオ、センサデータなどを表す。いくつかの例において、グラウンドトルースデータがノイズを含まないことを保証すべく、グラウンドトルースデータは、手動でキュレートされるおよび／または編集される。本明細書に開示された例において、グラウンドトルースデータは、センサデータストレージ１０３に格納される。しかしながら、グラウンドトルースデータは、任意の他の位置に格納され得る。
【００４２】
例示的な環境検出器１０６は、グラウンドトルースデータの特性を識別する。（ブロック３１５）本明細書に開示された例において、そのような特性は、環境が都市環境（例えば、都市のランドスケープ）であるかまたは農村環境であるかを含む。いくつかの例において、例えば、環境に通常存在する建物および／またはアーキテクチャの種類などの、環境のさらなる特性が識別され得る。例えば、現代都市のランドスケープ／アーキテクチャ（例えば、サンフランシスコ、ニューヨークなど）は、他の都市のランドスケープ／アーキテクチャ（例えば、シエナ、イタリア、ダブリン、アイルランド）とは異なるモデルをもたらし得る。いくつかの例において、センサデータに含まれるメタデータ（例えば、エクスチェンジャブル・イメージ・ファイル・フォーマット（ＥＸＩＦ）データ）は、環境の地理的位置を決定するのに使用され得る。
【００４３】
例示的な誤差特性評価器１１４は、対象の環境に関連付けられる通常の誤差特性を決定する。（ブロック３２０）例えば、都市環境（例えば、金属製の構造および／またはガラス窓を有する環境）は、センサデータにおける反射に遭遇し得る。そのような反射は、（実際には、そのボクセルが占有された値を有するべきである場合）占有されていないボクセルとして自ら現れ得る。例示的なモデルビルダ１１０は、グラウンドトルースデータをトレーニングセットに分割する。（ブロック３３０）本明細書に開示された例では、３つのトレーニングセットが使用される。しかしながら、任意の他の数のトレーニングセットが、追加的にまたは代替的に使用され得る。いくつかの例において、各トレーニングセットは、他のトレーニングセットと同じデータを含む。そのようなアプローチは、様々なレベルのノイズがトレーニングセットに適用されることを可能にする。しかしながら、いくつかの他の例では、単一トレーニングセットが使用され、当該トレーニングセットには漸進的な量のノイズが適用される。本明細書に開示された例において、トレーニングセットは同じサイズである。しかしながら、任意のサイズのトレーニングデータが追加的にまたは代替的に使用され得る。
【００４４】
例示的な合成データベースビルダ１１６は、環境固有の誤差／ノイズをグラウンドトルースデータの第１トレーニングセットに注入する。（ブロック３４０）ノイズをトレーニングセットに適用すべく、１または複数のボクセルは、占有値（例えば、特定の位置におけるオブジェクトの存在を示す）から、非占有値（例えば、特定の位置におけるオブジェクトの不在を示す）にトグルされる。本明細書に開示された例において、トレーニングデータに現れるボクセルの割合はトグルされる（例えば、１０％、２０％など）。しかしながら、トグルされるボクセルを識別する任意の他のアプローチが追加的にまたは代替的に使用され得る。さらに、いくつかの例では、占有値から非占有値にトグルする代わりに、ボクセルは、非占有値から占有値にトグルされ得る（例えば、そのようなオブジェクトが特定の位置に存在しない場合、その位置にオブジェクトの存在を示すノイズを表す）。本明細書に開示された例において、ノイズは、トレーニングデータセットにおけるボクセルに、ランダムに適用される。しかしながら、ノイズは、任意の他のやり方でトレーニングデータセットにおけるボクセルに適用され得る。
【００４５】
例示的なモデルビルダ１１０は、トレーニングセットを使用してモデルをトレーニングする。（ブロック３５０）本明細書に開示された例において、例示的なモデルビルダ１１０は、確率的勾配降下法を使用してモデルをトレーニングする。しかしながら、任意の他のトレーニングアルゴリズムが追加的にまたは代替的に使用され得る。本明細書に開示された例では、検証データセット（例えば、ノイズが適用されたグラウンドトルースデータおよび／またはトレーニングデータの一部）とグラウンドトルースデータとの間の許容レベルの誤差が達成されるまで、トレーニングが実行される。
【００４６】
例示的なモデルビルダ１１０は次に、任意の追加のトレーニングセットが存在するかどうかを決定する。（ブロック３６０）追加のトレーニングセットが存在するとき、制御はブロック３４０に戻り、ここで、ブロック３４０から３６０の例示的な処理が、全てのトレーニングセットが使用されるまで反復される。本明細書に開示された例では、可変な量のノイズが様々なトレーニングセットに適用され得る（例えば、ブロック３４０で）。例えば、第１反復において、第１ノイズ量が第１トレーニングセット（例えば１０％ノイズ）に適用され得、その一方、第２反復において、第１ノイズ量とは異なる第２ノイズ量が、第２トレーニングセット（例えば２０％ノイズ）に適用され得る。本明細書に開示された例において、それぞれ１０％、２０％、および５０％のノイズ値を有する３つのトレーニングセットが使用される。ノイズ量を増加させて使用することは、ノイズがますます増加するシナリオにおいて、モデルが自ら徐々に改善されるので、モデルのコンバージェンスを改善する。
【００４７】
全てのトレーニングセットがモデルの生成のために一旦使用されると（例えば、ブロック３６０がＮＯの結果を返送すると）、例示的なモデル調整器１１２は、残りのＯＲゲート接続を用いて、モデルを適合させるおよび／またはそうでない場合は強化する。（ブロック３７０）上述のように、追加ＯＲゲートは、誤った推論を除去することにより、システムの精度を改善する。すなわち、ＯＲゲートアーキテクチャは、モデルの最終結果（例えば、ライブデータに関連して使用される場合の）によって誤ったボクセルデータが作成される結果をもたらさないことを保証する。換言すると、システムの性能は、入力データより劣らないことを保証される。
【００４８】
例示的な合成データベースビルダ１１６は次に、合成データストレージ１２４にモデルを格納する。（ブロック３８０）例示的なモデルは、ブロック３１５に関連して識別された環境特性に関連して格納される。環境特性（ブロック３１５で識別された）に関連してモデルを格納することは、後で、環境に基づいて使用するために様々なモデルが選択されることを可能にする。例示的な合成データベースビルダ１１６は次に、グラウンドトルースデータ（例えば、代替環境）の追加の位置が存在するかどうかを決定する。（ブロック３９０）グラウンドトルースデータの追加の位置がアクセスされたとき（例えば、ブロック３９０がＹＥＳの結果を返送するとき）、グラウンドトルースデータのそのような他の位置が処理される（例えば、モデルが作成される）まで、図３の例示的な処理が反復される。グラウンドトルースデータの追加の位置が一旦処理されると（例えば、ブロック３９０がＮＯの結果を返送すると）、図３の例示的な処理は終了する。図３の例示的な処理は、例えば、追加のグラウンドトルースデータが利用可能になった場合、再トレーニングなどを実行するように命令（例えば、ユーザから、アドミニストレータからなど）された場合、反復され得る。
【００４９】
図４の例示的な処理４００は、実行される場合、環境に対応する機械学習モデルの使用をもたらす。図４のプログラム４００は、ブロック４１０で開始され、ここで、例示的なセンサデータ取得器１０４はセンサデータを取得する。（ブロック４１０）本明細書に開示された例において、センサデータは、ライブセンサデータ（例えば、１または複数のセンサからの）を表す。いくつかの例において、センサデータは、環境においてナビゲートするドローンおよび／または他の無人航空機（ＵＡＶ）から取得される。いくつかの例において、スキャン再構成マネージャ１０１は、センサデータがドローンに搭載され処理されるように、ドローンにローカルに実装され得る。いくつかの他の例において、センサデータは、離れている位置（例えば、処理のためのサーバ）に送信され得る。
【００５０】
例示的な環境検出器１０６は、特定の環境に関連付けられ得る環境特性および／またはニュアンスを識別する。（ブロック４２０）本明細書に開示された例において、環境特性は、再構成される環境に関する情報（例えば、メタデータ）を表す。本明細書に開示された例において、そのような特性は、環境が都市環境（例えば、都市のランドスケープ）であるかまたは農村環境であるかを含む。いくつかの例において、例えば、環境に通常存在する建物および／またはアーキテクチャの種類などの、環境のさらなる特性が識別され得る。例えば、現代都市のランドスケープ／アーキテクチャ（例えば、サンフランシスコ、ニューヨークなど）は、他の都市のランドスケープ／アーキテクチャ（例えば、シエナ、イタリア、ダブリン、アイルランド）とは異なるモデルをもたらし得る。いくつかの例において、グローバルポジショニングデータ（ＧＰＳ）は、センサデータが対応する位置および／または環境を決定するのに使用され得る。
【００５１】
識別された環境特性を使用して、例示的なモデルセレクタ１０８は合成データベースを選択する。（ブロック４３０）例示的なシーン再構成器１３０は次に、選択されたモデルを使用してセンサデータを処理し、シーンを生成する。（ブロック４４０）このように、シーンは、センサデータにより表される特定の環境に適合された機械学習モデルを使用して作成され得る。そのような適合は、センサデータを解析する場合、その種類の環境特有のノイズが考慮されることを保証する。生成されたシーンは次に、例えばドローンのナビゲーションを容易にするために使用され得る。
【００５２】
図５は、図１および２の再構成システム１００を実装するために図３および／または４の命令を実行するように構造化された例示的なプロセッサプラットフォーム５００のブロック図である。プロセッサプラットフォーム５００は、例えば、サーバ、パーソナルコンピュータ、ワークステーション、自己学習機械（例えば、ニューラルネットワーク）、モバイルデバイス（例えば、携帯電話、スマートフォン、ｉＰａｄ（登録商標）などのタブレット）、パーソナルデジタルアシスタント（ＰＤＡ）、インターネット家電機器、ＤＶＤプレイヤ、ＣＤプレイヤ、デジタルビデオレコーダ、ブルーレイプレイヤ、ゲームコンソール、パーソナルビデオレコーダ、セットトップボックス、ヘッドセットもしくは他のウェアラブルデバイス、または任意の他の種類のコンピューティングデバイスであり得る。
【００５３】
示された例のプロセッサプラットフォーム５００は、プロセッサ５１２を含む。示された例のプロセッサ５１２は、ハードウェアである。例えば、プロセッサ５１２は、任意の所望のファミリまたは製造業者の１または複数の集積回路、論理回路、マイクロプロセッサ、ＧＰＵ、ＤＳＰ、またはコントローラにより実装され得る。ハードウェアプロセッサは、半導体ベース（例えば、シリコンベース）のデバイスであり得る。この例において、プロセッサは、例示的なスキャン再構成マネージャ１０１およびそこに含まれる要素／構造を実装する。
【００５４】
示された例のプロセッサ５１２は、ローカルメモリ５１３（例えば、キャッシュ）を含む。示された例のプロセッサ５１２は、バス５１８を介して、揮発性メモリ５１４と不揮発性メモリ５１６とを含むメインメモリと通信する。揮発性メモリ５１４は、シンクロナスダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、ＲＡＭＢＵＳ（登録商標）ダイナミックランダムアクセスメモリ（ＲＤＲＡＭ（登録商標））および／または任意の他の種類のランダムアクセスメモリデバイスにより実装され得る。不揮発性メモリ５１６は、フラッシュメモリおよび／または任意の他の所望の種類のメモリデバイスにより実装され得る。メインメモリ５１４、５１６へのアクセスは、メモリコントローラにより制御される。
【００５５】
示された例のプロセッサプラットフォーム５００は、インタフェース回路５２０も含む。インタフェース回路５２０は、イーサネット（登録商標）インタフェース、ユニバーサルシリアルバス（ＵＳＢ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）インタフェース、近距離無線通信（ＮＦＣ）インタフェース、および／またはＰＣＩエクスプレスインタフェースなどの任意の種類のインタフェース規格により実装され得る。
【００５６】
示された例において、１または複数の入力デバイス５２２は、インタフェース回路５２０に接続される。入力デバイス５２２は、ユーザがプロセッサ５１２にデータおよび／またはコマンドを入力することを許可する。入力デバイスは、例えば、オーディオセンサ、マイク、カメラ（スチールまたはビデオ）、キーボード、ボタン、マウス、タッチスクリーン、トラッキングパッド、トラックボール、アイソポイントおよび／または音声認識システムにより実装され得る。
【００５７】
１または複数の出力デバイス５２４も、示された例のインタフェース回路５２０に接続される。出力デバイス５２４は、例えば、ディスプレイデバイス（例えば、発光ダイオード（ＬＥＤ）、有機発光ダイオード（ＯＬＥＤ）、液晶ディスプレイ（ＬＣＤ）、ブラウン管ディスプレイ（ＣＲＴ）、ｉｎ−ｐｌａｃｅ  ｓｗｉｔｃｈｉｎｇ（ＩＰＳ）ディスプレイ、タッチスクリーンなど）、触知出力デバイス、プリンタおよび／またはスピーカにより実装され得る。したがって、示された例のインタフェース回路５２０は通常、グラフィックスドライバカード、グラフィックスドライバチップ、および／またはグラフィックスドライバプロセッサを含む。
【００５８】
また、示された例のインタフェース回路５２０は、ネットワーク５２６を介して外部機械（例えば、任意の種類のコンピューティングデバイス）とのデータ交換を容易にする、送信機、受信機、トランシーバ、モデム、レジデンシャルゲートウェイ、無線アクセスポイント、および／またはネットワークインタフェースなどの通信デバイスを含む。通信は、例えば、イーサネット（登録商標）接続、デジタル加入者線（ＤＳＬ）接続、電話回線接続、同軸ケーブルシステム、衛星システム、ラインオブサイト無線システム、セルラ電話システムなどを介して行われ得る。
【００５９】
示された例のプロセッサプラットフォーム５００は、ソフトウェアおよび／またはデータを格納するための１または複数の大容量ストレージデバイス５２８も含む。そのような大容量ストレージデバイス５２８の例は、フロッピーディスクドライブ、ハードドライブディスク、コンパクトディスクドライブ、ブルーレイディスクドライブ、独立ディスクの冗長アレイ（ＲＡＩＤ）システム、およびデジタル多用途ディスク（ＤＶＤ）ドライブを含む。
【００６０】
図３および４の機械実行可能命令５３２は、大容量ストレージデバイス５２８に、揮発性メモリ５１４に、不揮発性メモリ５１６に、および／または、ＣＤまたはＤＶＤなどのリムーバブル非一時的コンピュータ可読ストレージ媒体に格納され得る。
【００６１】
前述の事項から、ニューラルネットワークの畳み込み処理でＯＲ状の構造を利用することによって画像および／またはビデオデータの３次元スキャン再構成を改善する例示的なシステム、方法、装置および製造物品が開示されたことが理解されよう。加えて、本明細書に開示された例は、時間がかかり、プロセッサ集約的であり、メモリ集約的である必要条件を回避して、同様の環境特性を示す対象領域のグラウンドトルースデータを取得する。例えば、サンフランシスコとシカゴとの両方は、それらのポストモダンの都市的特徴（例えば、反射面を有する超高層ビル）により、同様の環境特性を示すので、グラウンドトルースデータ取得作業は、これら２つの位置のうちの１つでのみ一度実行される必要がある。結果として得られるモデルは次に、同様の状況である他の位置で使用され得る。 
【００６２】
本特許、２０１８年５月２１日に出願された米国特許仮出願第６２／６７４，４６２号からの優先権を主張しており、当該出願はその全体が参照により本明細書に組み込まれることを留意されたい。
【００６３】
畳み込みニューラルネットワークを使用してシーンを再構成する方法、装置、システムおよび製造物品が本明細書に開示される。そのさらなる例および組み合わせは、以下を含む。
【００６４】
例１は、シーン再構成のためのモデルを生成する装置であって、環境を表すグラウンドトルースデータを取得するセンサデータ取得器と、環境の環境特性を識別する環境検出器と、グラウンドトルースデータにノイズを適用してトレーニングセットを形成する合成データベースビルダと、トレーニングセットおよびグラウンドトルースデータを使用して機械学習モデルをトレーニングするモデルビルダと、機械学習モデルの各層に介在する残りのＯＲゲート接続を含むように機械学習モデルを修正するモデル調整器とを備え、当該合成データベースビルダはさらに、環境の環境特性に関連して機械学習モデルを格納する、装置を含む。
【００６５】
例２は、環境特性に関連付けられる誤差特性を決定する環境特性評価器と、誤差特性に基づいてグラウンドトルースデータにノイズを適用する合成データベースビルダとをさらに含む、例１の装置を含む。
【００６６】
例３は、合成データベースビルダは、グラウンドトルースデータを複数のトレーニングセットに分割し、異なる量のノイズを複数のトレーニングセットのそれぞれに適用し、モデルビルダは、複数のトレーニングセットに基づいて機械学習モデルをトレーニングする、例１または２のいずれか１つの装置を含む。
【００６７】
例４は、モデルビルダは、ノイズ量が増加していくトレーニングセットを使用して機械学習モデルをトレーニングする、例３の装置を含む。
【００６８】
例５は、環境特性は、環境の光学反射率の量を含む、例１から４のいずれか１つの装置を含む。
【００６９】
例６は、機械学習モデルは、畳み込みニューラルネットワーク（ＣＮＮ）を使用して実装される、例１から５のいずれか１つの装置を含む。
【００７０】
例７は、環境特性は第１環境特性であって、センサデータ取得器はセンサデータにアクセスし、環境検出器はセンサデータにより表される環境の第２環境特性を識別する、装置であって、第１環境特性と一致する第２環境特性に基づいて機械学習モデルを選択するモデルセレクタと、選択された機械学習モデルを使用してセンサデータを処理し、シーンを作成するシーン再構成器とをさらに含む、例１から６のいずれか１つの装置を含む。
【００７１】
例８は、環境検出器は、センサデータに関連してアクセスされるメタデータに基づいて第２環境特性を識別する、例７の装置を含む。
【００７２】
例９は、機械学習モデルを格納する合成データストレージをさらに含む、例１から８のいずれか１つの装置を含む。
【００７３】
例１０は、実行された場合、少なくとも１つのプロセッサに、環境を表すグラウンドトルースデータを取得することと、環境の環境特性を識別することと、グラウンドトルースデータにノイズを適用してトレーニングセットを形成することと、トレーニングセットおよびグラウンドトルースデータを使用して機械学習モデルをトレーニングすることと、機械学習モデルの各層に介在する残りのＯＲゲート接続を含むように機械学習モデルを修正することと、環境の環境特性に関連して機械学習モデルを格納することとを少なくともさせる命令を備える、少なくとも１つの非一時的コンピュータ可読媒体を含む。
【００７４】
例１１は、実行される場合、当該命令はさらに、少なくとも１つのプロセッサに、環境特性に関連付けられる誤差特性を決定させ、グラウンドトルースデータに適用されたノイズは、誤差特性に基づく、例１０の少なくとも１つの非一時的コンピュータ可読媒体を含む。
【００７５】
例１２は、実行される場合、命令はさらに、少なくとも１つのプロセッサに、グラウンドトルースデータを複数のトレーニングセットに分割することと、複数のトレーニングセットのそれぞれに異なる量のノイズを適用することと、複数のトレーニングセットに基づいて機械学習モデルをトレーニングすることとを実行させる、例１０または１１のいずれか１つの少なくとも１つの非一時的コンピュータ可読媒体を含む。
【００７６】
例１３は、実行される場合、当該命令はさらに、少なくとも１つのプロセッサに、ノイズ量が増加していくトレーニングセットを使用して機械学習モデルをトレーニングさせる、例１２の少なくとも１つの非一時的コンピュータ可読媒体を含む。
【００７７】
例１４は、環境特性は、環境の光学反射率の量を含む、例１０から１４のいずれか１つの少なくとも１つの非一時的コンピュータ可読媒体を含む。
【００７８】
例１５は、機械学習モデルは、畳み込みニューラルネットワーク（ＣＮＮ）を使用して実装される、例１０から１４のいずれか１つの少なくとも１つの非一時的コンピュータ可読媒体を含む。
【００７９】
例１６は、環境特性は第１環境特性であって、命令はさらに、実行される場合、少なくとも１つのプロセッサに、  センサデータにアクセスすることと、センサデータにより表される環境の第２環境特性を識別することと、第１環境特性と一致する第２環境特性に基づいて機械学習モデルを選択することと、選択された機械学習モデルを使用してセンサデータを処理してシーンを再作成することとを実行させる、例１０から１５のいずれか１つの少なくとも１つの非一時的コンピュータ可読媒体を含む。
【００８０】
例１７は、命令はさらに、実行される場合、少なくとも１つのプロセッサに、センサデータに関連してアクセスされるメタデータに基づいて第２環境特性を識別させる、例１６の少なくとも１つの非一時的コンピュータ可読媒体を含む。
【００８１】
例１８は、シーン再構成のためのモデルを生成する方法であって、環境を表すグラウンドトルースデータを取得する段階と、環境の環境特性を識別する段階と、グラウンドトルースデータにノイズを適用してトレーニングセットを形成する段階と、トレーニングセットおよびグラウンドトルースデータを使用して機械学習モデルをトレーニングする段階と、機械学習モデルの各層に介在する残りのＯＲゲート接続を含むように機械学習モデルを修正する段階と、環境の環境特性に関連して機械学習モデルを格納する段階とを備える、方法を含む。
【００８２】
例１９は、環境特性に関連付けられる誤差特性を決定する段階をさらに備え、グラウンドトルースデータに適用されたノイズは誤差特性に基づく、例１８の方法を含む。
【００８３】
例２０は、グラウンドトルースデータを複数のトレーニングセットに分割する段階をさらに備え、トレーニングセットにノイズを適用する上記段階は、それぞれのトレーニングセットに異なる量のノイズを適用する段階を含み、機械学習モデルをトレーニングする上記段階は、複数のトレーニングセットに基づいて実行される、例１８から２０のいずれか１つの方法を含む。
【００８４】
例２１は、機械学習モデルをトレーニングする上記段階は、ノイズ量が増加していくトレーニングセットを使用して実行される、例２０の方法を含む。
【００８５】
例２２は、環境特性は、環境の光学反射率の量を含む、例１８から２２のいずれか１つの方法を含む。
【００８６】
例２３は、機械学習モデルは、畳み込みニューラルネットワーク（ＣＮＮ）を使用して実装される、例１８から２３のいずれか１つの方法を含む。
【００８７】
例２４は、環境特性は第１環境特性である方法であって、センサデータにアクセスする段階と、センサデータにより表される環境の第２環境特性を識別する段階と、第１環境特性と一致する第２環境特性に基づいて機械学習モデルを選択する段階と、選択された機械学習モデルを使用してセンサデータを処理し、シーンを再作成する段階とをさらに含む、例１８から２３のいずれか１つの方法を含む。
【００８８】
例２５は、第２環境特性を識別する上記段階は、センサデータに関連してアクセスされるメタデータに基づく、例２４の方法を含む。
【００８９】
例２６は、シーンを再構成する装置であって、環境を表すグラウンドトルースデータを取得する手段と、環境の環境特性を識別する手段と、グラウンドトルースデータにノイズを適用してトレーニングセットを形成する手段と、トレーニングセットおよびグラウンドトルースデータを使用して機械学習モデルをトレーニングする手段と、機械学習モデルの各層に介在する残りのＯＲゲート接続を含むように機械学習モデルを修正する手段と、環境の環境特性に関連して機械学習モデルを格納することを適用する手段とを備える、装置を含む。いくつかの例において、取得する手段は、例示的なセンサデータ取得器１０４により実装され得る。いくつかの例において、識別する手段は、例示的な環境検出器１０６により実装され得る。いくつかの例において、適用する例示的な手段は、例示的な合成データベースビルダ１１６により実装され得る。いくつかの例において、トレーニングする例示的な手段は、例示的なモデルビルダ１１０により実装され得る。いくつかの例において、修正する例示的な手段は、例示的なモデル調整器１１２により実装され得る。 
【００９０】
例２７は、環境特性に関連付けられる通常の誤差特性を決定する手段をさらに備え、ノイズを適用する上記手段は、誤差特性に基づいてグラウンドトルースデータにノイズを適用することである、例２６の装置を含む。いくつかの例において、決定する手段は、環境特性評価器１１４により実装され得る。 
【００９１】
例２８は、適用する手段はグラウンドトルースデータを複数のトレーニングセットに分割することであって、適用する手段はそれぞれのトレーニングセットに異なる量のノイズを適用することであって、トレーニングする手段は複数のトレーニングセットに基づいてトレーニングを実行することである、例２６または２７のいずれか１つの装置を含む。
【００９２】
例２９は、トレーニングする手段は、適用されるノイズ量が増加していくトレーニングセットを使用して機械学習モデルをトレーニングする、例２８の装置を含む。
【００９３】
例３０は、環境特性は、環境において予想される光学反射率の量を含む、例２６から２９のいずれか１つの装置を含む。
【００９４】
例３１は、機械学習モデルは、畳み込みニューラルネットワーク（ＣＮＮ）を使用して実装される、例２６から３０のいずれか１つの装置を含む。
【００９５】
例３２は、環境特性は第１環境特性である装置であって、センサデータにアクセスする手段と、センサデータにより表される環境の第２環境特性を識別する手段と、第１環境特性と一致する第２環境特性に基づいて機械学習モデルを選択する手段と、選択された機械学習モデルを使用してセンサデータを処理し、シーンを再作成する手段とをさらに備える、例２６から３１のいずれか１つの装置を含む。
【００９６】
例３３は、識別する上記手段は、センサデータに関連してアクセスされるメタデータに基づいて第２環境特性を識別することである、例３２の装置を含む。特定の例示的な方法、装置および製造物品が本明細書において開示されているが、本特許の網羅する範囲はこれらに限定されない。これに対して、本特許は、本特許の請求項の範囲に公正に含まれる全ての方法、装置および製造物品を網羅する。
【図１】
2021524968.tif 000003
【図２】
2021524968.tif 000004
【図３】
2021524968.tif 000005
【図４】
2021524968.tif 000006
【図５】
2021524968.tif 000007
【国際調査報告】
2021524968.tif 000008
2021524968.tif 000009