(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-12-06
(54)【発明の名称】ニューラルネットワークモデルベースの深度推定
(51)【国際特許分類】
G06T 7/60 20170101AFI20231129BHJP
G06T 7/00 20170101ALI20231129BHJP
G06V 10/82 20220101ALI20231129BHJP
G06V 20/64 20220101ALI20231129BHJP
【FI】
G06T7/60 180B
G06T7/00 350C
G06V10/82
G06V20/64
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023530263
(86)(22)【出願日】2021-11-23
(85)【翻訳文提出日】2023-05-18
(86)【国際出願番号】 IB2021060891
(87)【国際公開番号】W WO2022107112
(87)【国際公開日】2022-05-27
(32)【優先日】2020-11-23
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】100092093
【氏名又は名称】辻居 幸一
(74)【代理人】
【識別番号】100109070
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100109335
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【氏名又は名称】近藤 直樹
(72)【発明者】
【氏名】リー ジョンファ
(72)【発明者】
【氏名】ホワイト ガレス
(72)【発明者】
【氏名】ミリコスキ アンティ
(72)【発明者】
【氏名】ウィンター エドワード セオドア
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA02
5L096AA06
5L096AA09
5L096FA66
5L096GA40
5L096GA51
5L096HA11
5L096KA04
5L096KA15
(57)【要約】
1又は2以上の第1の物体に関連する第1のグラフィック情報と対応する第1の複数の深度画像との間の関連性を示す訓練データセットに基づいて訓練されたニューラルネットワークモデルを記憶するシステムを提供する。システムは、1又は2以上の第1の物体に対応する第2のグラフィック情報を受け取る。システムは、受け取った第2のグラフィック情報に訓練済みニューラルネットワークモデルをさらに適用する。システムは、受け取った第2のグラフィック情報に対する訓練済みニューラルネットワークモデルの適用に基づいて、第1の複数の深度画像から第1の深度画像を予測する。システムは、予測された第1の深度画像から第1の深度情報を抽出する。第1の深度情報は、第2のグラフィック情報によって示される1又は2以上の第1の物体に対応する。
【選択図】 なし
【特許請求の範囲】
【請求項1】
1又は2以上の第1の物体に関連する第1のグラフィック情報と対応する第1の複数の深度画像との間の関連性を示す訓練データセットに基づいて訓練された訓練済みニューラルネットワークモデルを記憶するように構成されたメモリと、
前記1又は2以上の第1の物体に対応する第2のグラフィック情報を受け取り、
前記受け取った第2のグラフィック情報に前記訓練済みニューラルネットワークモデルを適用し、
前記受け取った第2のグラフィック情報に対する前記訓練済みニューラルネットワークモデルの前記適用に基づいて、前記第1の複数の深度画像から第1の深度画像を予測し、
前記予測された第1の深度画像から、前記第2のグラフィック情報によって示される前記1又は2以上の第1の物体に対応する第1の深度情報を抽出する、
ように構成されたプロセッサと、
を備えることを特徴とするシステム。
【請求項2】
前記第1のグラフィック情報は、異なる視点からの前記1又は2以上の第1の物体の色情報を含む、
請求項1に記載のシステム。
【請求項3】
前記第1の複数の深度画像は、3次元(3D)グラフィックスエンジンの深度センサ又は仮想イメージングセンサの少なくとも一方の異なる視点からの前記1又は2以上の第1の物体の深度情報を示す、
請求項1に記載のシステム。
【請求項4】
前記第1の複数の深度画像の各々は、前記1又は2以上の第1の物体に関連する異なる深度値に関する異なる色を含む、
請求項1に記載のシステム。
【請求項5】
前記第1のグラフィック情報及び前記第2のグラフィック情報は、1又は2以上の画像、点群データ、ボクセルセット、3次元(3D)メッシュ、ビデオ情報、LAS(LASer)フォーマットデータ、又は専用フォーマットデータのうちの少なくとも1つに対応する、
請求項1に記載のシステム。
【請求項6】
前記プロセッサは、
前記受け取った第2のグラフィック情報に示される前記1又は2以上の第1の物体に関連する深度情報を示す、前記第2のグラフィック情報に対応するグラウンドトゥルース画像を受け取り、
前記受け取ったグラウンドトゥルース画像と、前記訓練済みニューラルネットワークモデルによって前記第1の複数の深度画像から予測された前記第1の深度画像とを比較し、
前記受け取ったグラウンドトゥルース画像と前記訓練済みニューラルネットワークモデルによって予測された前記第1の深度画像との比較に基づいて第1の予測スコアを生成する、
ようにさらに構成される、請求項1に記載のシステム。
【請求項7】
前記プロセッサは、前記生成された第1の予測スコアが閾値スコア以上であるとの判定に基づいて、前記予測された第1の深度画像から前記第1の深度情報を抽出するようにさらに構成される、
請求項6に記載のシステム。
【請求項8】
前記プロセッサは、構造的類似度指数尺度に基づいて前記第1の予測スコアを生成するようにさらに構成される、
請求項6に記載のシステム。
【請求項9】
前記プロセッサは、前記グラウンドトゥルース画像を3次元(3D)グラフィックスエンジンから受け取るように構成される、
請求項6に記載のシステム。
【請求項10】
システムにおいて、
1又は2以上の第1の物体に関連する第1のグラフィック情報と対応する第1の複数の深度画像との間の関連性を示す訓練データセットに基づいて訓練された訓練済みニューラルネットワークモデルを記憶することと、
前記1又は2以上の第1の物体に対応する第2のグラフィック情報を受け取ることと、
前記受け取った第2のグラフィック情報に前記訓練済みニューラルネットワークモデルを適用することと、
前記受け取った第2のグラフィック情報に対する前記訓練済みニューラルネットワークモデルの前記適用に基づいて、前記第1の複数の深度画像から第1の深度画像を予測することと、
前記予測された第1の深度画像から、前記第2のグラフィック情報によって示される前記1又は2以上の第1の物体に対応する第1の深度情報を抽出することと、
を含むことを特徴とする方法。
【請求項11】
前記第1のグラフィック情報は、異なる視点からの前記1又は2以上の第1の物体の色情報を含む、
請求項10に記載の方法。
【請求項12】
前記第1の複数の深度画像は、3次元(3D)グラフィックスエンジンの深度センサ又は仮想イメージングセンサの少なくとも一方の異なる視点からの前記1又は2以上の第1の物体の深度情報を示す、
請求項10に記載の方法。
【請求項13】
前記第1の複数の深度画像の各々は、前記1又は2以上の第1の物体に関連する異なる深度値に関する異なる色を含む、
請求項10に記載の方法。
【請求項14】
前記第1のグラフィック情報及び前記第2のグラフィック情報は、1又は2以上の画像、点群データ、ボクセルセット、3次元(3D)メッシュ、ビデオ情報、LAS(LASer)フォーマットデータ、又は専用フォーマットデータのうちの少なくとも1つに対応する、
請求項11に記載の方法。
【請求項15】
前記受け取った第2のグラフィック情報に示される前記1又は2以上の第1の物体に関連する深度情報を示す、前記第2のグラフィック情報に対応するグラウンドトゥルース画像を受け取ることと、
前記受け取ったグラウンドトゥルース画像と、前記訓練済みニューラルネットワークモデルによって前記第1の複数の深度画像から予測された前記第1の深度画像とを比較することと、
前記受け取ったグラウンドトゥルース画像と前記訓練済みニューラルネットワークモデルによって予測された前記第1の深度画像との比較に基づいて第1の予測スコアを生成することと、
を含む、請求項10に記載の方法。
【請求項16】
前記生成された第1の予測スコアが閾値スコア以上であるとの判定に基づいて、前記予測された第1の深度画像から前記第1の深度情報を抽出することをさらに含む、
請求項15に記載の方法。
【請求項17】
前記生成された第1の予測スコアは、構造的類似度指数尺度に基づく、
請求項15に記載の方法。
【請求項18】
コンピュータ実装命令を記憶した非一時的コンピュータ可読媒体であって、前記コンピュータ実装命令は、システムによって実行された時に、
1又は2以上の第1の物体に関連する第1のグラフィック情報と対応する第1の複数の深度画像との間の関連性を示す訓練データセットに基づいて訓練された訓練済みニューラルネットワークモデルを記憶することと、
前記1又は2以上の第1の物体に対応する第2のグラフィック情報を受け取ることと、
前記受け取った第2のグラフィック情報に前記訓練済みニューラルネットワークモデルを適用することと、
前記受け取った第2のグラフィック情報に対する前記訓練済みニューラルネットワークモデルの前記適用に基づいて、前記第1の複数の深度画像から第1の深度画像を予測することと、
前記予測された第1の深度画像から、前記第2のグラフィック情報によって示される前記1又は2以上の第1の物体に対応する第1の深度情報を抽出することと、
を含む動作を前記システムに実行させる、ことを特徴とするコンピュータ可読媒体。
【請求項19】
前記第1のグラフィック情報及び前記第2のグラフィック情報は、1又は2以上の画像、点群データ、ボクセルセット、3次元(3D)メッシュ、ビデオ情報、LAS(LASer)フォーマットデータ、又は専用フォーマットデータのうちの少なくとも1つに対応する、
請求項18に記載のコンピュータ可読媒体。
【請求項20】
前記第1の複数の深度画像の各々は、前記1又は2以上の第1の物体に関連する異なる深度値に関する異なる色を含む、
請求項18に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
〔関連出願との相互参照/引用による組み入れ〕
なし
【0002】
本開示の様々な実施形態は、ニューラルネットワークモデルに関する。具体的には、本開示の様々な実施形態は、ニューラルネットワークモデルベースの深度推定のためのシステム及び方法に関する。
【背景技術】
【0003】
従来、深度推定にはレンジイメージングアプリケーション(range imaging applications)が使用される。レンジイメージングアプリケーションは、(飛行時間(ToF)センサ、光検出及び測距(LiDAR)センサ、又は構造化光(structured light)センサなどの)様々なタイプの深度センサを利用して、実際の環境内に存在する物体の深度推定を行うことができる。深度センサは、実際の環境内に存在する物体の1又は2以上の画像を異なる視点から取り込むことができる。深度センサによって取り込まれた画像を処理して深度情報を取得することは複雑なタスクとなり得る。さらに、レンジイメージングアプリケーションによって採用される深度センサは高価であり、容易に入手できず、実装が構造的に困難な場合もある。
【発明の概要】
【発明が解決しようとする課題】
【0004】
当業者には、説明したシステムと、本出願の残り部分において図面を参照しながら示す本開示のいくつかの態様とを比較することにより、従来の慣習的な手法の限界及び不利点が明らかになるであろう。
【課題を解決するための手段】
【0005】
実質的に少なくとも1つの図に関連して図示及び/又は説明し、特許請求の範囲にさらに完全に示すような、ニューラルネットワークモデルベースの深度推定のためのシステム及び方法を提供する。
【0006】
全体を通じて同じ要素を同じ参照符号によって示す添付図面を参照しながら本開示の以下の詳細な説明を検討することにより、本開示のこれらの及びその他の特徴及び利点を理解することができる。
【図面の簡単な説明】
【0007】
【
図1】本開示の実施形態による、ニューラルネットワークモデルベースの深度推定のための例示的なネットワーク環境の図である。
【
図2】本開示の実施形態による、ニューラルネットワークモデルベースの深度測定のためのシステムのブロック図である。
【
図3】本開示の実施形態による、ニューラルネットワークモデルベースの深度推定のための例示的な動作のシーケンス図である。
【
図4】本開示の実施形態による、訓練済みニューラルネットワークモデルの深度推定における性能をチェックする例示的な動作のためのシーケンス図である。
【
図5】本開示の実施形態による、ニューラルネットワークモデルベースの深度推定のための例示的な方法を示すフローチャートである。
【発明を実施するための形態】
【0008】
開示するニューラルネットワークモデルベースの深度推定のためのシステム及び方法では、後述する実装を見出すことができる。本開示の例示的な態様は、ニューラルネットワークモデルを訓練するように構成されたシステムを提供する。ニューラルネットワークモデルは、訓練データセットに基づいて訓練することができる。訓練データセットは、1又は2以上の第1の物体(例えば、インフラ、家具、人間、その他の生物及び無生物)に関連する第1のグラフィック情報及び対応する第1の複数の深度画像を含むことができる。第1のグラフィック情報の例としては、以下に限定するわけではないが、1又は2以上の第1の物体に関連する画像、点群データ、ボクセル情報、又はコンピュータ生成画像(CGI)情報を挙げることができる。第1の複数の深度画像は、第1のグラフィック情報に示される1又は2以上の第1の物体の深度情報を含むことができる。
【0009】
ニューラルネットワークモデルは、1又は2以上の第1の物体の深度推定のために、第1のグラフィック情報と対応する第1の複数の深度画像との間の対応性を学習するように訓練することができる。従って、開示するシステムは、訓練済みニューラルネットワークモデルへのグラフィック情報の(すなわち、画像、点群データ又はボクセルセットなどの1又は2以上のフォーマットでの)入力に基づいて1又は2以上の第1の物体に関連する(飛行時間(TOF)画像などの)深度画像を出力するように構成できるニューラルネットワークモデルを訓練することができる。
【0010】
開示するシステムには訓練済みニューラルネットワークモデルを記憶することができる。システムは、1又は2以上の第1の物体に対応することができる第2のグラフィック情報(例えば、新たなグラフィック情報)をさらに受け取ることができる。例えば、第2のグラフィック情報は、(椅子などの)1又は2以上の第1の物体に関連する画像とすることができる。なお、第2のグラフィック情報は、訓練データセットの第1のグラフィック情報と同じ(又は実質的に同じ)であることも、或いはニューラルネットワークモデルを訓練できる第1のグラフィック情報とは異なる情報であることもできる。
【0011】
システムは、受け取った第2のグラフィック情報にニューラルネットワークモデルをさらに適用することができる。訓練済みニューラルネットワークモデルは、受け取った第2のグラフィック情報に訓練データセットの第1の複数の深度画像を対応付けることができる。システムは、受け取った第2のグラフィック情報に対するニューラルネットワークモデルの適用に基づいて、訓練済みニューラルネットワークモデルを第1の複数の深度画像から第1の深度画像を予測するようにさらに制御することができる。システムは、予測された第1の深度画像から第1の深度情報をさらに抽出することができる。第1の深度情報は、第2のグラフィック情報に示される1又は2以上の第1の物体の深度情報を含むことができる。
【0012】
従って、開示するシステムは、訓練済みニューラルネットワークモデルの使用によって1又は2以上の第1の物体に関連する深度情報の予測を可能にすることができる。従って、第2のグラフィック情報に示される物体に関連する深度情報を決定するために、高価であって実装が構造的に困難な場合がある飛行時間(ToF)センサなどの深度センサを使用する必要性を排除することができる。さらに、開示するシステムは、深度センサによって直接実行される深度情報の取り込みと比べて安価で計算効率の高い深度情報の予測を提供することができる。さらに、システムは、ニューラルネットワークモデル(すなわち、様々な物体及びその様々な視点の大規模訓練データセットに基づいて訓練されたニューラルネットワークモデル)を利用して、従来の深度センサに比べて時間効率の良い深度情報の予測を行うことができる。
【0013】
図1は、本開示の実施形態による、ニューラルネットワークモデルベースの深度推定のための例示的なネットワーク環境の図である。
図1にはネットワーク環境100のブロック図を示す。ネットワーク環境100はシステム102を含むことができる。システム102はニューラルネットワークモデル104を含むことができる。ニューラルネットワークモデル104は、第1のグラフィック情報104Aと第1の複数の深度画像104Bとの間の関連性を含むことができる訓練データセットに基づいて訓練することができる。ネットワーク環境100は、第2のグラフィック情報106及び第1の深度画像108をさらに含むことができる。ネットワーク環境100は、ユーザ装置110及び通信ネットワーク112をさらに含むことができる。
【0014】
システム102は、1又は2以上の第1の物体に関連する第1のグラフィック情報104Aと対応する第1の複数の深度画像104Bとの間の関連性を示すことができる訓練データセットに基づいてニューラルネットワークモデル104を訓練するように構成できる好適なロジック、回路、インターフェイス及び/又はコードを含むことができる。システム102は、第1の複数の深度画像104Bから第1の深度画像108を予測するようにさらに構成することができる。システム102は、1又は2以上の第1の物体に関連する予測された第1の深度画像108から第1の深度情報をさらに抽出することができる。システム102の例としては、以下に限定するわけではないが、アニメーションシステム、コンピュータグラフィックスエンジン、コンピュータ装置、ラップトップ、メインフレームマシン、サーバ、コンピュータワークステーション、スマートフォン、セルラーフォン、携帯電話機、ゲーム装置及び/又は消費者電子(CE)装置を挙げることができる。
【0015】
ニューラルネットワークモデル104は、複数の層状に配置された人工ニューロンをノードとする計算ネットワーク又はシステムとすることができる。ニューラルネットワークモデル104の複数の層は、入力層、1又は2以上の隠れ層、及び出力層を含むことができる。複数の層の各層は、1又は2以上のノード(又は人工ニューロン)を含むことができる。入力層の全てのノードの出力は、(単複の)隠れ層の少なくとも1つのノードに結合することができる。同様に、各隠れ層の入力は、ニューラルネットワーク104の他の層の少なくとも1つのノードの出力に結合することができる。各隠れ層の出力は、ニューラルネットワークモデル104の他の層の少なくとも1つのノードの入力に結合することができる。最終層の(単複の)ノードは、少なくとも1つの隠れ層から入力を受け取って結果を出力することができる。層の数及び各層のノード数は、ニューラルネットワークモデル104のハイパーパラメータから決定することができる。このようなハイパーパラメータは、訓練データセットに基づくニューラルネットワークモデル104の訓練前又は訓練中に設定することができる。
【0016】
ニューラルネットワークモデル104の各ノードは、ネットワークの訓練中に調整できるパラメータセットを有する数学関数(例えば、シグモイド関数又は正規化線形ユニット(rectified linear unit))に対応することができる。パラメータセットは、例えば重みパラメータ及び正則化パラメータなどを含むことができる。各ノードは、ニューラルネットワークモデル104の他の(単複の)層(例えば、前の(単複の)層)のノードからの1又は2以上の入力に基づいて、数学関数を使用して出力を計算することができる。ニューラルネットワークモデル104のノードの全部又は一部は、同じ又は異なる数学関数に対応することができる。
【0017】
ニューラルネットワークモデル104の訓練では、(訓練データセットからの)所与の入力のための最終層の出力がニューラルネットワークモデル104の損失関数に基づく正しい結果に一致するかどうかに基づいて、ニューラルネットワークモデル104の各ノードの1又は2以上のパラメータを更新することができる。上記プロセスは、損失関数の最小値を達成して訓練エラーを最小化できるまで同じ又は異なる入力について繰り返すことができる。当業では、勾配降下法、確率的勾配降下法、バッチ勾配降下法、勾配ブースト法及びメタヒューリスティック法などの複数の訓練法が知られている。
【0018】
ニューラルネットワークモデル104は、例えばシステム102などの処理装置によって実行されるソフトウェアプログラム、ソフトウェアプログラムのコード、ライブラリ、アプリケーション、スクリプト、或いはその他のロジック又は命令などの電子データを含むことができる。ニューラルネットワークモデル104は、システム102などのコンピュータ装置が(第2のグラフィック情報106などの)提供された入力に基づいて深度情報を予測する1又は2以上の動作を実行することを可能にするように構成されたコード及びルーチンを含むことができる。これに加えて又はこれに代えて、ニューラルネットワークモデル104は、プロセッサ、(例えば、1又は2以上の演算を実行し又は実行を制御する)マイクロプロセッサ、フィールドプログラマブルゲートアレイ(FPGA)、又は特定用途向け集積回路(ASIC)を含むハードウェアを使用して実装することもできる。或いは、いくつかの実施形態では、ハードウェアとソフトウェアとの組み合わせを使用してニューラルネットワークモデル104を実装することもできる。
【0019】
ニューラルネットワークモデル104の例としては、以下に限定するわけではないが、画像間変換モデル、ディープニューラルネットワーク(DNN)、畳み込みニューラルネットワーク(CNN)、再帰型ニューラルネットワーク(RNN)、CNN-再帰型ニューラルネットワーク(CNN-RNN)、R-CNN、Fast R-CNN、Faster R-CNN、人工ニューラルネットワーク(ANN)、(You Only Look Once)YOLOネットワーク、長・短期記憶(LSTM)ネットワークベースのRNN、CNN+ANN、LSTM+ANN、ゲート付き再帰型ユニット(GRU)ベースのRNN、全結合ニューラルネットワーク、Connectionist Temporal Classification(CTC)ベースのRNN、ディープベイズニューラルネットワーク、敵対的生成ネットワーク(GAN)、及び/又はこれらのネットワークの組み合わせを挙げることができる。いくつかの実施形態では、ニューラルネットワークモデル104が、データフローグラフを用いた数値計算法を含むことができる。いくつかの実施形態では、ニューラルネットワークモデル104が、複数のディープニューラルネットワーク(DNN)のハイブリッドアーキテクチャに基づくことができる。いくつかの実施形態では、ニューラルネットワークモデル204Aを人工知能(AI)エンジンとすることができる。
【0020】
第2のグラフィック情報106は、1又は2以上の第1の物体のうちの(椅子などの)物体を含み又はこれに対応することができ、1又は2以上の視点から取り込み又は生成することができる。ある実施形態によれば、第2のグラフィック情報106は、1又は2以上の第1の物体のうちの物体に関連する1又は2以上の画像、点群データ、ボクセルセット、3次元(3D)メッシュ、ビデオ情報、LAS(LASer)フォーマットデータ又は専用フォーマットデータに対応することができる。例えば、第2のグラフィック情報106は、3次元(3D)カメラ又はステレオカメラ又は3次元(3D)グラフィックエンジンから受け取ることができる。第2のグラフィック情報は、第1の深度画像108を予測又は出力するために訓練済みニューラルネットワークモデル104に入力することができる。第1の深度画像108は、第2のグラフィック情報106に含まれる1又は2以上の第1の物体のうちの物体に関連する深度情報を含むことができる。ある実施形態によれば、第1の深度画像108は、第2のグラフィック情報106内の物体の視点と同じ視点からの物体の深度情報を含むことができる。
【0021】
ユーザ装置110は、第1の深度画像108の予測のためにニューラルネットワークモデル104に第2のグラフィック情報106を提供するように構成できる好適なロジック、回路及びインターフェイスを含むことができる。ユーザ装置110は、予測された第1の深度画像108をニューラルネットワークモデル104から受け取るようにさらに構成することができる。ユーザ装置110の例としては、以下に限定するわけではないが、カメラ装置、アニメーションエンジン、コンピュータ装置、スマートフォン、セルラーフォン、携帯電話機、ゲーム装置、メインフレーム機、サーバ、コンピュータワークステーション、及び/又は消費者電子(CE)装置を挙げることができる。いくつかの実施形態では、入力された第2のグラフィック情報106に基づく第1の深度画像108の予測のために、訓練済みニューラルネットワークモデル104をユーザ装置110にインストール又は配備することができる。
【0022】
通信ネットワーク112は、システム102とユーザ装置110とが互いに通信できるようにする通信媒体を含むことができる。通信ネットワーク112は、有線接続又は無線接続の一方とすることができる。通信ネットワーク112の例としては、以下に限定するわけではないが、インターネット、クラウドネットワーク、ワイヤレスフィデリティ(Wi-Fi)ネットワーク、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、又はメトロポリタンエリアネットワーク(MAN)を挙げることができる。ネットワーク環境100内の様々な装置は、様々な有線及び無線通信プロトコルに従って通信ネットワーク112に接続するように構成することができる。このような有線及び無線通信プロトコルの例としては、以下に限定するわけではないが、伝送制御プロトコル及びインターネットプロトコル(TCP/IP)、ユーザデータグラムプロトコル(UDP)、ハイパーテキスト転送プロトコル(HTTP)、ファイル転送プロトコル(FTP)、ZigBee、EDGE、IEEE802.11、ライトフィデリティ(Li-Fi)、802.16、IEEE 802.11s、IEEE 802.11g、マルチホップ通信、無線アクセスポイント(AP)、装置間通信、セルラー通信プロトコル及びBluetooth(BT)通信プロトコルのうちの少なくとも1つを挙げることができる。
【0023】
動作中、システム102は、1又は2以上の第1の物体に関連する第1のグラフィック情報104Aと対応する第1の複数の深度画像104Bとの間の関連性を示すことができる訓練データセットに基づいて訓練されたニューラルネットワークモデル104を記憶するように構成することができる。ニューラルネットワークモデル104は、1又は2以上の第1の物体に関連する深度情報を予測するために第1のグラフィック情報104Aに第1の複数の深度画像104Bを対応付けるように訓練することができる。ニューラルネットワークモデル104の訓練の詳細については、例えば
図3にさらに示す。システム102は、1又は2以上の第1の物体に対応することができる第2のグラフィック情報106をさらに受け取ることができる。システム102は、第2のグラフィック情報106を受け取って、第2のグラフィック情報106に示される1又は2以上の第1の物体に関連する深度情報を抽出することができる。第2のグラフィック情報106の詳細については、例えば
図3にさらに示す。
【0024】
システム102は、受け取った第2のグラフィック情報106に訓練済みニューラルネットワークモデル104を適用するようにさらに構成することができる。訓練済みニューラルネットワークモデル104は、第2のグラフィック情報106に示される1又は2以上の第1の物体に関連する深度情報を予測するために、受け取った第2のグラフィック情報106に第1のグラフィック情報104Aと訓練データセットの第1の複数の深度画像104Bとの間の関連性を対応付けることができる。第2のグラフィック情報106に対する訓練済みニューラルネットワークモデル104の適用の詳細については、例えば
図3にさらに示す。
【0025】
システム102は、受け取った第2のグラフィック情報106に対する訓練済みニューラルネットワークモデル104の適用に基づいて第1の複数の深度画像104Bから第1の深度画像108(例えば、飛行時間(TOF)画像)をさらに予測することができる。例えば、訓練済みニューラルネットワークモデル104は、(画像などの)第2のグラフィック情報106から第1の深度画像108を予測するように構成できる画像間変換モデルとすることができる。第1の深度画像108を予測するように訓練済みニューラルネットワークモデル104を制御する詳細については、例えば
図3にさらに示す。
【0026】
システム102は、予測された第1の深度画像108から第1の深度情報(例えば、距離情報又はXYZ情報)をさらに抽出することができる。第1の深度情報は、第2のグラフィック情報106に示される1又は2以上の第1の物体に対応することができる。ある実施形態によれば、第1の深度画像108は、1又は2以上の第1の物体に関連する異なる深度値に関する異なる色情報を含むことができる。第1のグラフィック情報104Aの抽出の詳細については、例えば
図3にさらに示す。
【0027】
ある実施形態によれば、システム102は、受け取った第2のグラフィック情報106に対応するグラウンドトゥルース画像を受け取るようにさらに構成することができる。グラウンドトゥルース画像は、第2のグラフィック情報106に示される1又は2以上の第1の物体に関連する深度情報を示すことができる。システムは、グラウンドトゥルース画像とニューラルネットワークモデルによって予測された第1の深度画像とを比較して第1の予測スコアを生成することができる。第1の予測スコアの生成の詳細については、例えば
図4にさらに示す。ある実施形態によれば、システムは、第1の予測スコアが閾値スコア以上であるとの判定に基づいて、予測された第1の深度画像108から第1の深度情報を抽出するようにさらに構成することができる。第1の予測スコアの判定の詳細については、例えば
図4にさらに示す。
【0028】
図2は、本開示の実施形態による、ニューラルネットワークモデルベースの深度推定のためのシステムのブロック図である。
図2の説明は
図1の要素に関連して行う。
図2にはシステム102のブロック
図200を示す。システム102は、プロセッサ202及びメモリ204を含むことができる。メモリ204は、ニューラルネットワークモデル104をさらに含むことができる。システム102は、入力/出力(I/O)装置206、3次元(3D)グラフィックスエンジン208、及びネットワークインターフェイス210をさらに含むことができる。
【0029】
プロセッサ202は、メモリ204に記憶された命令セットを実行するように構成できる好適なロジック、回路及びインターフェイスを含むことができる。プロセッサ202は、システム102によって実行される異なる動作に関連するプログラム命令を実行するように構成することができる。例えば、動作の一部は、第1の深度画像108を予測するようにニューラルネットワークモデル104を訓練することを含むことができる。プロセッサ202は、第1の深度画像108を予測し、予測された第1の深度画像108から第1の深度情報を抽出するようにさらに構成することができる。プロセッサ202は、当業で周知の多くのプロセッサ技術に基づいて実装することができる。プロセッサ技術の例としては、以下に限定するわけではないが、中央処理装置(CPU)、X86ベースのプロセッサ、縮小命令セットコンピューティング(RISC)プロセッサ、特定用途向け集積回路(ASIC)プロセッサ、複合命令セットコンピューティング(CISC)プロセッサ、グラフィカルプロセッシングユニット(GPU)及びその他のプロセッサを挙げることができる。
【0030】
メモリ204は、プロセッサ202によって実行される1又は2以上の命令を記憶するように構成できる好適なロジック、回路、インターフェイス及び/又はコードを含むことができる。メモリ204は、訓練データセット及びニューラルネットワークモデル104を記憶するように構成することができる。メモリ204は、以下に限定するわけではないが、第2のグラフィック情報106、第1の深度画像108及び1又は2以上のグラウンドトゥルース画像を記憶するようにさらに構成することができる。メモリ204の実装例としては、以下に限定するわけではないが、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、電気的に消去可能なプログラマブルリードオンリーメモリ(EEPROM)、ハードディスクドライブ(HDD)、固体ドライブ(SSD)、CPUキャッシュ、及び/又はセキュアデジタル(SD)カードを挙げることができる。
【0031】
I/O装置206は、ユーザから入力を受け取り、受け取った入力に基づいて出力を提供するように構成できる好適なロジック、回路及びインターフェイスを含むことができる。I/O装置206は、第2のグラフィック情報106を入力として受け取るように構成することができる。I/O装置206は、第1の深度画像108及び抽出された第1の深度情報をさらに表示することができる。様々な入力及び出力装置を含むことができるI/O装置206は、システム102、3Dグラフィックスエンジン208又はユーザ装置110と通信するように構成することができる。I/O装置206の例としては、以下に限定するわけではないが、タッチ画面、キーボード、マウス、ジョイスティック、マイク、又はディスプレイ装置を挙げることができる。
【0032】
3Dグラフィックスエンジン208は、異なる視点(例えば、異なる角度又は位置)からの1又は2以上の第1の物体に対応する(第1のグラフィック情報104A及び第2のグラフィック情報106などの)グラフィック情報を生成するように構成できる好適なロジック、回路、インターフェイス及び/又はコードを含むことができる。3Dグラフィックスエンジン208は、1又は2以上の第1の物体に関連する生成されたグラフィック情報(例えば、画像、3Dメッシュ、ボクセル情報又は点群データ)をレンダリングするように(I/O装置206などに含まれる)ディスプレイ装置をさらに制御することができる。3Dグラフィックスエンジン208は、(pythonスクリプトジェネレータなどの)スクリプトジェネレータを利用してグラフィック情報を生成又は修正することができる。例えば、3Dグラフィックスエンジン208は、(ToFセンサなどの)深度センサ又はステレオカメラによって第1の視点から取り込まれた1又は2以上の第1の物体の第1の画像をレンダリングするようにディスプレイ装置を制御することができる。3Dグラフィックスエンジン208は、I/O装置206を介して、異なる視点からの1又は2以上の第1の物体のレンダリングされた第1の画像を修正する(すなわち、第1のグラフィック情報104Aを生成する)ための1又は2以上のユーザ入力をさらに受け取ることができる。1又は2以上の第1の物体の第1のグラフィック情報104Aは、以下に限定するわけではないが、(回転した物体、サイズ変更された物体、再配置された物体などに関する)画像、点群データ、ビデオ情報、ボクセル情報、又は3Dメッシュを含むことができる。3Dグラフィックスエンジン208の例としては、以下に限定するわけではないが、3Dコンピュータグラフィックスエンジン、3D作成アプリケーション、3Dモデリング又はシミュレーションアプリケーション、3Dアニメーションエンジン、又はビデオ編集アプリケーションを挙げることができる。
図2にはシステム102に統合された3Dグラフィックスエンジン208を示しているが、本開示はこのように限定されるものではない。従って、いくつかの実施形態では、本開示の範囲から逸脱することなく3Dグラフィックスエンジン208をシステム102から分離することもできる。
【0033】
ネットワークインターフェイス210は、通信ネットワーク112を介したシステム102とユーザ装置110との間の通信を容易にするように構成できる好適なロジック、回路及びインターフェイスを含むことができる。ネットワークインターフェイス210は、システム102と通信ネットワーク112との有線又は無線通信を支援する様々な既知の技術を使用して実装することができる。ネットワークインターフェイス210は、以下に限定するわけではないが、アンテナ、無線周波数(RF)トランシーバ、1又は2以上の増幅器、チューナ、1又は2以上の発振器、デジタルシグナルプロセッサ、コーダ-デコーダ(CODEC)チップセット、加入者IDモジュール(SIM)カード、又はローカルバッファ回路を含むことができる。ネットワークインターフェイス210は、インターネット、イントラネットなどのネットワーク、又はセルラー電話ネットワーク、無線ローカルエリアネットワーク(LAN)、及びメトロポリタンエリアネットワーク(MAN)などの無線ネットワークと無線通信を介して通信するように構成することができる。無線通信は、グローバルシステムフォーモバイルコミュニケーション(GSM)、拡張データGSM環境(EDGE)、広帯域符号分割多元接続(W-CDMA)、ロングタームエボリューション(LTE)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、Bluetooth、(IEEE802.11a、IEEE 802.11b、IEEE 802.11g又はIEEE 802.11nなどの)ワイヤレスフィデリティ(WiFi)、ボイスオーバーインターネットプロトコル(VoIP)、ライトフィデリティ(Li-Fi)、又はワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(Wi-MAX)、電子メール用プロトコル、インスタントメッセージ、及びショートメッセージサービス(SMS)などの複数の通信規格、プロトコル及び技術のうちの1つ又は2つ以上を使用するように構成することができる。
【0034】
図3は、本開示の実施形態による、ニューラルネットワークモデルベースの深度推定のための例示的な動作のシーケンス図である。
図3の説明は、
図1及び
図2の要素に関連して行う。
図3には、304~312の一連の動作を示すシーケンス
図300を示す。一連の動作は、
図1のシステム102又は
図2のプロセッサ202の様々なコンポーネントによって実行することができる。
【0035】
304において、ニューラルネットワークモデル104をメモリ204に記憶することができる。ある実施形態によれば、システム102のプロセッサ202がニューラルネットワークモデル104を訓練することができる。ニューラルネットワークモデル104は、1又は2以上の第1の物体に関連する第1のグラフィック情報104Aと対応する第1の複数の深度画像104Bとの間の関連性を示すことができる訓練データセット302に基づいて訓練することができる。ある実施形態によれば、第1のグラフィック情報104Aは、以下に限定するわけではないが、1又は2以上の画像、点群データ、ボクセルセット、3次元(3D)メッシュ、ビデオ情報、LAS(LASer)フォーマットデータ、又は専有フォーマットデータのうちの少なくとも1つに対応することができる。第1のグラフィック情報104Aは、(限定するわけではないが、正面ビュー、側面ビュー、上面ビュー、背面ビュー、回転ビュー、傾斜ビューなどの)1又は2以上の視点からの(生物又は
図3に示す椅子のような無生物などの)1又は2以上の第1の物体を含み、又はこのような第1の物体に対応することができる。
【0036】
例示的なシナリオでは、訓練データセット302が、第1の画像302Aなどの第1のグラフィック情報104Aと、第2の画像302Bなどの対応する深度画像とを含むことができる。換言すれば、訓練データセット302は、第1の画像302Aと第2の画像302Bとの間の関連性又は対応性を含むことができる。訓練データセット302は、第3の画像302Cなどの第1のグラフィック情報104Aと、第4の画像302Dなどの対応する深度画像とをさらに含むことができる。換言すれば、訓練データセット302は、第3の画像302Cと第4の画像302Dとの間の関連性又は対応性を含むことができる。訓練データセット302は、点群データ302Eなどの第1のグラフィック情報104Aと、第5の画像302Fなどの対応する深度画像とをさらに含むことができる。換言すれば、訓練データセット302は、点群データ302Eと第5の画像302Fとの間の関連性又は対応性を含むことができる。訓練データセット302は、3次元(3D)メッシュ302Gなどの第1のグラフィック情報104Aと、第6の画像302Hなどの対応する深度画像とをさらに含むことができる。換言すれば、訓練データセット302は、3Dメッシュ302Gと第6の画像302Hとの間の関連性又は対応性を含むことができる。
【0037】
ある実施形態によれば、第1のグラフィック情報104Aは、異なる視点からの1又は2以上の第1の物体の色情報を含むことができる。例えば、(第1の画像302A又は第3の画像302Cなどの)第1のグラフィック情報104Aは、(椅子などの)1又は2以上の第1の物体の(赤色、緑色、青色(RGB)情報などの)色情報を含むことができる。第1のグラフィック情報104Aは、限定するわけではないが側面ビュー及び正面ビューなどの異なる視点から椅子などの物体を描写できる(例えば、ポータブルネットワークグラフィックス(PNG)フォーマットでの)1又は2以上の画像を含むことができる。さらに、第1のグラフィック情報104Aは、椅子などの物体に関連する(点群データ302Eなどの)点群データを含むことができる。第1のグラフィック情報104Aは、椅子に関連する(3Dメッシュ302Gなどの)3Dメッシュをさらに含むことができる。1又は2以上の物体に関する第1のグラフィック情報104Aは、訓練データセット302の作成前又は作成時に3Dグラフィックエンジン208によって生成又は修正することができる。3Dグラフィックスエンジン208によって実行される修正は、以下に限定するわけではないが、回転、サイズ変更、移動又は並進を含むことができる。いくつかの実施形態では、1又は2以上の物体に関する第1のグラフィック情報104Aを、訓練データセット302の作成前に深度センサ(図示せず)から取り込むことができる。第1のグラフィック情報104Aは、深度センサの異なる視点(すなわち、正面、側面、底面、上面又は特定の角度からのビュー)、或いは深度センサが先行して取り込むことができる第1のグラフィック情報104Aの修正時に3Dグラフィックエンジン208によって作成される視点からの(椅子などの)1又は2以上の物体を描写することができる。3Dグラフィックスエンジン208によって作成された物体の視点は、3Dグラフィックスエンジン208の仮想イメージングセンサからの物体のキャプチャと呼ぶことができる。
【0038】
ある実施形態によれば、(
図3に示す)第2の画像302B、第4の画像302D、第5の画像302F及び第6の画像302Hは、ニューラルネットワークモデル104を訓練できる第1の複数の深度画像104Bと呼ぶことができる。第1の複数の深度画像104Bは、(図示していないToFセンサなどの)深度センサ、又は(3次元(3D)グラフィックスエンジン208などの)3Dグラフィックスエンジンの仮想イメージングセンサの少なくとも一方の異なる視点からの1又は2以上の物体の深度情報を示すことができる。深度センサ又は3Dグラフィックスエンジン208は、ニューラルネットワークモデル104を訓練する訓練データセットを生成するために利用することができる。しかしながら、開示するシステム102は、実際の深度センサを使用することなく、訓練済みニューラルネットワークモデル104を使用して1又は2以上の物体(すなわち、第2のグラフィック情報に示される物体)の深度情報又は深度値を予測することもできる。深度情報は、例えば深度センサ又は仮想イメージングセンサと(椅子などの)物体との間の距離情報に対応することができる。なお、開示するシステム102による1又は2以上の第1の物体の深度推定では、実際の深度センサの使用を排除することができる。
【0039】
ある実施形態によれば、(TOF画像などの)第1の複数の深度画像104Bの各々は、1又は2以上の第1の物体に関連する異なる深度値に関する異なる色を示す画素を含むことができる。例えば、深度値は、(椅子などの)物体の可視表面上の各地点と深度センサ又は仮想イメージングセンサとの間の距離に関連することができる。ある例では、第1の複数の深度画像104Bの各々が、椅子の表面上の深度センサに近い地点の第1の深度値が椅子の表面上の深度センサから離れた地点の第2の深度値とは異なる値を有することができるような深度マップを示すことができる。いくつかの実施形態では、物体と深度センサとの間の距離の増加と共に(RGB値のような)色値が次第に減少するように深度値を1又は2以上の色によって示すことができる。例えば、特定の視点から物体を取り込んだ時に、近くの地点は物体の可視表面上の離れた地点と比べて暗い色又は陰を有することができる。
【0040】
従って、訓練データセット302は、第1の画像302A、第3の画像302C、点群データ302E及び3Dメッシュ302Gなどの第1のグラフィック情報104Aを含むことができる。対応する第1の複数の深度画像104Bは、それぞれが対応する第1のグラフィック情報104Aに関連付け又は対応付けされた第2の画像302B、第4の画像302D、第5の画像302F及び第6の画像302Hを含むことができる。第2の画像302Bは、第1の画像302Aに示される(椅子などの)物体の深度情報を含むことができる。第4の画像302Dは、第3の画像302Cに示される物体(すなわち、椅子)の深度情報を含むことができる。同様に、第5の画像302Fは、点群データ302Eに示される物体(すなわち、椅子)の深度情報を含むことができる。さらに、第6の画像302Hは、3Dメッシュ302Gに示される物体(すなわち、椅子)の深度情報を含むことができる。第1のグラフィック情報104A及び対応する第1の複数の深度画像104Bは、例えば対データ、不対データ、又は対データと不対データとの組み合わせとすることができる。プロセッサ202は、1又は2以上の第1の物体の深度情報の予測のために第1のグラフィック情報104Aを第1の複数の深度画像104Bのうちの対応する深度画像に対応付けるように訓練データセット302に基づいてニューラルネットワークモデル104を訓練するように構成することができる。なお、
図3の訓練データセット302は一例として示すものにすぎない。訓練データセット302は、本開示の範囲から逸脱することなく、異なるタイプの物体又は物体を含むシーンに関する第1のグラフィック情報104Aと第1の複数の深度画像104Bとの間の対応関係を含むことができる。
【0041】
306において、1又は2以上の第1の物体に対応することができる第2のグラフィック情報306Aを受け取ることができる。ある実施形態によれば、プロセッサ202は、(椅子などの)1又は2以上の第1の物体に対応することができる第2のグラフィック情報306Aを受け取るように構成することができる。第2のグラフィック情報306Aは、訓練データセット302に含まれていない可能性がある(新たな画像などの)新たな情報とすることができる。第2のグラフィック情報306Aは、第2のグラフィック情報306Aに示される(椅子などの)1又は2以上の第1の物体に関連する深度情報を予測するためにユーザ装置110から受け取ることができる。第2のグラフィック情報306Aは、(メモリ204などの)メモリ、又はサーバ(図示せず)のデータベースから受け取ることもできる。
【0042】
ある実施形態によれば、第2のグラフィック情報306Aは、1又は2以上の画像、点群データ、ボクセルセット、3Dメッシュ、ビデオ情報、LASフォーマットデータ又は専用フォーマットデータのうちの少なくとも1つに対応することができる。ある例では、第2のグラフィック情報306Aが、第3の画像302Cなどの第1のグラフィック情報104Aに正確に又は実質的に類似することができる。換言すれば、第2のグラフィック情報306Aは、(第3の画像302Cなどの)第1のグラフィック情報104Aに示されるものと同じ視点からの(椅子などの)物体を描写することができる。いくつかの実施形態では、第2のグラフィック情報306Aが、第1のグラフィック情報104Aと異なる又は同じであることができる異なる視点から又は(点群データ又はLASフォーマットデータなどの)異なるフォーマットデータで1又は2以上の第1の物体を描写することができる。プロセッサ202は、受け取った第2のグラフィック情報306Aを訓練済みニューラルネットワークモデル104にさらに入力することができる。
【0043】
308において、受け取った第2のグラフィック情報306Aに訓練済みニューラルネットワークモデル104を適用することができる。ある実施形態によれば、プロセッサ202は、受け取った第2のグラフィック情報306Aに訓練済みニューラルネットワークモデル104を適用するように構成することができる。例えば、訓練済みニューラルネットワークモデル104は、(RGB領域内の画像とすることができる)第2のグラフィック情報306Aを入力として受け取り、受け取った第2のグラフィック情報306Aを別の領域(例えば、深度情報を有する画像)に変換するような画像間変換モデルとすることができる。受け取った第2のグラフィック情報306Aに対するニューラルネットワークモデル104の適用では、ニューラルネットワークモデル104が、受け取った第2のグラフィック情報306Aの1又は2以上の特徴と、ニューラルネットワークモデル104を訓練する第1のグラフィック情報104Aの各々の1又は2以上の特徴とを比較することができる。比較される特徴は、第1のグラフィック情報104A及び第2のグラフィック情報306Aによって示される1又は2以上の物体に関連することができる。この比較に基づいて、ニューラルネットワークモデル104又はプロセッサ202は、関連する特徴が受け取った第2のグラフィック情報306Aの特徴と実質的に一致する(訓練データセット302内の)第1のグラフィック情報104Aを決定することができる。
【0044】
310において、受け取った第2のグラフィック情報306Aに対する訓練済みニューラルネットワークモデル104の適用に基づいて、第1の複数の深度画像104Bから第1の深度画像310Aを予測することができる。ある実施形態によれば、プロセッサ202は、受け取った第2のグラフィック情報306Aに対する訓練済みニューラルネットワークモデル104の適用に基づいて、第1の複数の深度画像104Bから第1の深度画像310Aを予測するように構成することができる。訓練済みニューラルネットワークモデル104は、訓練済みニューラルネットワークモデル104に入力された第2のグラフィック情報306Aに対応する第1の深度画像310Aを予測することができる。プロセッサ202は、第2のグラフィック情報306Aに対応する予測された第1の深度画像310Aを受け取ることができる。例えば、訓練済みニューラルネットワークモデル104は、第2のグラフィック情報306A(すなわち、特定の視点からの椅子の物体を示す第2のグラフィック情報306A)が訓練データセット302に含まれる第3の画像302Cと実質的に一致すると判定し、従って訓練済みニューラルネットワークモデル104内の第3の画像302Cに関連する第4の画像302Dを(第1の深度画像310Aとして)決定又は予測することができる。
【0045】
ある実施形態によれば、予測された第1の深度画像310Aは、受け取った第2のグラフィック情報306Aに示される1又は2以上の第1の物体の深度情報を示すことができる。予測された(TOF画像などの)第1の深度画像310Aは、(椅子などの)1又は2以上の第1の物体に関連する異なる深度値に関する異なる色を含むことができる。例えば、
図3に示すように、第1の深度画像310Aにおける椅子の表面上の地点の色合いは、特定の視点からの椅子の表面上の地点の距離が増加するとともに次第に減少することができる。例示的なシナリオでは、
図3に示すように第2のグラフィック情報306Aが訓練データセット302の第3の画像302Cに類似している場合、第1の深度画像310Aが第4の画像302Dに類似することができる。従って、訓練済みニューラルネットワークモデル104は、訓練済みニューラルネットワークモデル104に入力された第2のグラフィック情報306A(すなわち、コンピュータ生成画像(CGI))の情報に基づいて異なる深度画像(又はTOF画像)を予測することができる。
【0046】
312において、予測された第1の深度画像310Aから第1の深度情報を抽出することができる。ある実施形態によれば、プロセッサ202は、予測された第1の深度画像310Aから第1の深度情報を抽出するように構成することができる。第1の深度情報は、第2のグラフィック情報306Aによって示される1又は2以上の第1の物体に対応することができる。第1の深度情報は、例えば(第2のグラフィック情報306Aが生成された又は取り込まれた視点などの)特定の視点から第2のグラフィック情報306Aに示される物体(すなわち、椅子)の表面の各地点の距離情報(距離値又はXYZ情報)を含むことができる。いくつかの実施形態では、第1の深度情報を、各深度値を数値によって表すことができるようなテキストフォーマットデータ(例えば、「.SKV」ファイルフォーマット又は「.CSV」ファイルフォーマット)とすることができる。例示的なシナリオでは、物体(すなわち、第1の深度画像310A内の椅子)の表面上のより近くにあると知覚できる地点が、第1の深度画像310A内の物体(すなわち、椅子)の表面上のより遠くにあると知覚できる点に比べて低い数値を示す深度値を有することができる。従って、開示するシステム102は、予測された第1の深度画像310A内の1又は2以上の物体の表面の各地点に(距離値又はXYZ値などに対応する)深度値を割り当てることができる。
【0047】
従って、本開示のシステム102は、実際の深度センサを使用することなく、(第2のグラフィック情報306Aなどの)グラフィック情報に基づく(第1の深度情報などの)深度情報の予測を可能にすることができる。訓練済みニューラルネットワークモデル104による第1の深度画像310Aの予測は、従来の深度センサによる深度情報の決定に比べて計算的に高度であるとともに時間効率に優れることができる。さらに、システム102では、読み取り可能なフォーマットで深度情報を決定するために追加のハードウェア装置が必要となり得る従来の深度センサに比べて、深度推定のためのハードウェア要件を大幅に低減することができる。
【0048】
シーケンス
図300については、304、306、308、310及び312などの離散的動作として示しているが、いくつかの実施形態では、開示する実施形態の本質を損なうことなく、このような離散的動作を特定の実装に応じてさらなる動作にさらに分割し、より少ない動作に組み合わせ、又は削除することもできる。
【0049】
図4は、本開示の実施形態による、訓練済みニューラルネットワークモデルの深度推定における性能をチェックする例示的な動作のシーケンス図である。
図4の説明は、
図1、
図2及び
図3の要素に関連して行う。
図4には、402~412の一連の動作を示すシーケンス
図400を示す。一連の動作は、
図1のシステム102又は
図2のプロセッサ202の様々なコンポーネントによって実行することができる。
【0050】
402において、第2のグラフィック情報306Aに対応するグラウンドトゥルース画像402Aを受け取ることができる。ある実施形態によれば、プロセッサ202は、受け取られた第2のグラフィック情報306Aに対応するグラウンドトゥルース画像402Aを受け取るように構成することができる。グラウンドトゥルース画像402Aは、第2のグラフィック情報306Aに示される1又は2以上の第1の物体に関連する深度情報を示すことができる。
【0051】
いくつかの実施形態では、プロセッサ202を、(3Dグラフィックスエンジン208などの)3Dグラフィックスエンジンからグラウンドトゥルース画像402Aを受け取るように構成することができる。グラウンドトゥルース画像402Aは、第2のグラフィック情報306Aに示される1又は2以上の第1の物体に対応する正確な深度値を有する深度画像とすることができる。例えば、グラウンドトゥルース画像402Aは、メモリ204から受け取ることができる。1又は2以上の実施形態では、グラウンドトゥルース画像402Aを、(3Dグラフィックスエンジン208又は深度センサが生成できる)第4の画像302Dなどの、第1のグラフィック情報104Aからの画像又はその他のフォーマットデータのうちの1つとすることができる。
【0052】
404において、受け取ったグラウンドトゥルース画像402Aと、ニューラルネットワークモデル104によって予測された第1の深度画像310Aとを比較することができる。ある実施形態によれば、プロセッサ202は、受け取ったグラウンドトゥルース画像402Aと、第1の複数の深度画像104Bからニューラルネットワークモデル104によって予測された第1の深度画像310Aとを比較するように構成することができる。いくつかの実施形態では、受け取ったグラウンドトゥルース画像402Aの各画素と第1の深度画像310Aの各画素とを比較して、受け取ったグラウンドトゥルース画像402Aと第1の深度画像310Aとの間の類似度を決定することができる。
【0053】
406において、受け取られたグラウンドトゥルース画像402Aと、訓練済みニューラルネットワークモデル104によって予測された第1の深度画像310Aとの比較に基づいて、第1の予測スコアを生成することができる。ある実施形態によれば、プロセッサ202は、受け取ったグラウンドトゥルース画像402Aと訓練済みニューラルネットワークモデル104によって予測された第1の深度画像310Aとの比較に基づいて第1の予測スコア(例えば、「0」~「1」)を生成するように構成することができる。第1の予測スコアは、(第1の深度画像310Aなどの)深度画像の予測における訓練済みニューラルネットワークモデル104の性能を示すことができる。
【0054】
いくつかの実施形態では、プロセッサ202を、構造的類似度指数尺度(structural similarity index measure)に基づいて第1の予測スコアを生成するようにさらに構成することができる。構造的類似度指数尺度は、「0」~「1」の範囲内で定めることができる。例えば、受け取ったグラウンドトゥルース画像402Aと予測された第1の深度画像310Aとが正確に類似している場合、プロセッサ202は、構造的類似度指数尺度に基づく第1の予測スコアを「1」として生成することができる。別の例では、受け取ったグラウンドトゥルース画像402Aと予測された第1の深度画像310Aとが互いに最小の類似度を有する場合、プロセッサ202は、構造的類似度指数尺度に基づく第1の予測スコアを「0」として生成することができる。従って、「1」の値に近い第1の予測スコアは、訓練済みニューラルネットワークモデル104によって予測された第1の深度画像310Aが、「0」の値に近い第1の予測スコアと比べて正確であり得ることを示すことができる。従って、「1」の値に近い第1の予測スコアは、第1の深度画像310Aの予測における訓練済みニューラルネットワークモデル104の性能がより良好であることを示すことができる。
【0055】
408において、生成された第1の予測スコアが閾値スコア以上であるかどうかを判定する。ある実施形態によれば、プロセッサ202は、生成された第1の予測スコアが閾値スコア以上であるかどうかを判定するように構成することができる。閾値スコアは、訓練済みニューラルネットワークモデル104の最小性能パラメータを示すことができる。例えば、閾値スコアは「0.9」とすることができる。従って、プロセッサ202は、第1の予測スコアが「0.9」の閾値スコア以上であれば、訓練済みニューラルネットワークモデル104からの(第1の深度画像310Aなどの)深度画像の予測が十分なものであることを示すと判定することができる。
【0056】
410において、第1の予測スコアが閾値スコア以上であるとの判定に基づいて、予測された第1の深度画像310Aから第1の深度情報を抽出することができる。ある実施形態によれば、プロセッサ202は、第1の予測スコアが閾値スコア以上であるとの判定に基づいて、予測された第1の深度画像310Aから第1の深度情報を抽出するように構成することができる。例えば、第1の予測スコアは「0.94」とすることができる。従って、プロセッサ202は、予測された第1の深度画像310Aから第1の深度情報を抽出することができる。予測された第1の深度画像310Aから第1の深度情報を抽出する詳細については、例えば
図3の312において説明している。
【0057】
412において、第1の予測スコアが閾値スコア未満であるとの判定に基づいて、ニューラルネットワークモデル104を再訓練することができる。ある実施形態によれば、プロセッサ202は、第1の予測スコアが所定の閾値スコア未満であるとの判定に基づいてニューラルネットワークモデル104を再訓練するように構成することができる。例えば、第1の深度画像310Aの予測のための第1の予測スコアが「0.9」の閾値スコア未満である場合、ニューラルネットワークモデル104を再訓練することができる。従って、本開示のシステム102は、ニューラルネットワークモデル104に入力されたグラフィック情報に関連する正確な深度画像の予測におけるニューラルネットワークモデル104の性能を強化するために、ニューラルネットワークモデル104の再訓練を可能にすることができる。
【0058】
シーケンス
図400については、402、404、406、408、410及び412などの離散的動作として示しているが、いくつかの実施形態では、開示する実施形態の本質を損なうことなく、このような離散的動作を特定の実装に応じてさらなる動作にさらに分割し、より少ない動作に組み合わせ、又は削除することもできる。
【0059】
図5は、本開示の実施形態による、ニューラルネットワークモデルベースの深度推定のための例示的な方法を示すフローチャートである。
図5の説明は、
図1、
図2、
図3及び
図4の要素に関連して行う。
図5にはフローチャート500を示す。フローチャート500の例示的な方法は、例えば
図1のシステム102又は
図2のプロセッサ202などのいずれかのコンピュータシステムによって実行することができる。フローチャート500の例示的な方法は、502から開始して504に進むことができる。
【0060】
504において、ニューラルネットワークモデル104をメモリ204に記憶することができる。ある実施形態によれば、メモリ204は、ニューラルネットワークモデル104を記憶するように構成することができる。ニューラルネットワークモデル104は、1又は2以上の第1の物体に関連する第1のグラフィック情報104Aと対応する第1の複数の深度画像104Bとの間の関連性を示すことができる(訓練データセット302などの)訓練データセットに基づいて訓練することができる。プロセッサ202は、第1の深度画像108を予測するようにニューラルネットワークモデル104を訓練するよう構成することができる。ニューラルネットワークモデル104のメモリ204への記憶及びニューラルネットワークモデル104の訓練については、例えば
図3の304において説明している。
【0061】
506において、第2のグラフィック情報106を受け取ることができる。ある実施形態によれば、プロセッサ202は、1又は2以上の第1の物体に対応することができる第2のグラフィック情報106を受け取るように構成することができる。第2のグラフィック情報106は、例えば1又は2以上の画像、点群データ、ボクセルセット、3Dメッシュ、ビデオ情報、LAS(LASer)フォーマットデータ、専用フォーマットデータ、又はコンピュータ生成画像(CGI)情報とすることができる。第2のグラフィック情報106の受信については、例えば
図3の306において説明している。
【0062】
508において、第2のグラフィック情報106に訓練済みニューラルネットワークモデル104を適用することができる。ある実施形態によれば、プロセッサ202は、第2のグラフィック情報106に訓練済みニューラルネットワークモデル104を適用するように構成することができる。ニューラルネットワークモデル104は、第1の深度画像108を予測するために第2のグラフィック情報106に適用することができる。第2のグラフィック情報106に対するニューラルネットワークモデル104の適用については、例えば
図3の308において説明している。
【0063】
510において、第1の複数の深度画像104Bから第1の深度画像108を予測することができる。ある実施形態によれば、プロセッサ202は、第2のグラフィック情報106に対する訓練済みニューラルネットワークモデル104の適用に基づいて第1の複数の深度画像104Bから(飛行時間(TOF)画像などの)第1の深度画像108を予測するように構成することができる。訓練済みニューラルネットワークモデル104の適用に基づいて第1の複数の深度画像104Bから第1の深度画像108を予測することについては、例えば
図3の310において説明している。
【0064】
512において、予測された第1の深度画像108から第1の深度情報を抽出することができる。ある実施形態によれば、プロセッサ202は、予測された第1の深度画像108から第1の深度情報(すなわち、距離情報)を抽出するように構成することができる。第1の深度情報は、第2のグラフィック情報106によって示される1又は2以上の第1の物体に対応することができる。予測された第1の深度画像108からの第1の深度情報の抽出については、例えば
図3の312において説明している。制御は終了に進むことができる。
【0065】
フローチャート500には、504、506、508、510及び512などの離散的な動作を示しているが、本開示はこのように限定されるものではない。従って、いくつかの実施形態では、開示する実施形態の本質を損なうことなく、このような離散的動作を特定の実装に応じてさらなる動作にさらに分割し、より少ない動作に組み合わせ、又は削除することができる。
【0066】
本開示の様々な実施形態は、機械及び/又はコンピュータ(例えば、システム102)が実行できる命令を記憶した非一時的コンピュータ可読媒体及び/又は記憶媒体を提供することができる。これらの命令は、(ニューラルネットワークモデル104などの)ニューラルネットワークモデルを記憶することを含む動作を機械及び/又はコンピュータ(例えば、システム102)に実行させることができる。ニューラルネットワークモデル104は、1又は2以上の第1の物体に関連する第1のグラフィック情報104Aと対応する(第1の複数の深度画像104Bなどの)第1の複数の深度画像との間の関連性を示すことができる(訓練データセット302などの)訓練データセットに基づいて訓練することができる。動作は、1又は2以上の第1の物体に対応することができる(第2のグラフィック情報106などの)第2のグラフィック情報を受け取ることをさらに含むことができる。動作は、受け取った第2のグラフィック情報106に訓練済みニューラルネットワークモデル104を適用することをさらに含むことができる。動作は、受け取った第2のグラフィック情報106に対する訓練済みニューラルネットワークモデル104の適用に基づいて、第1の複数の深度画像104Bから(第1の深度画像108などの)第1の深度画像を予測することをさらに含むことができる。動作は、予測された第1の深度画像108から第1の深度情報を抽出することをさらに含むことができる。第1の深度情報は、第2のグラフィック情報106によって示される1又は2以上の第1の物体に対応することができる。
【0067】
本開示の例示的な態様は、(プロセッサ202などの)プロセッサを含むことができる(システム102などの)システムを含むことができる。システム102は、(ニューラルネットワークモデル104などの)ニューラルネットワークモデルを記憶するように構成されたメモリをさらに含むことができる。ニューラルネットワークモデル104は、1又は2以上の第1の物体に関連する第1のグラフィック情報104Aと対応する第1の複数の深度画像104Bとの間の関連性を示すことができる(訓練データセット302などの)訓練データセットに基づいて訓練することができる。プロセッサ202は、1又は2以上の第1の物体に対応することができる(第2のグラフィック情報106などの)第2のグラフィック情報を受け取るようにさらに構成することができる。プロセッサ202は、受け取った第2のグラフィック情報106に訓練済みニューラルネットワークモデル104を適用するようにさらに構成することができる。プロセッサ202は、受け取った第2のグラフィック情報106に対する訓練済みニューラルネットワークモデル104の適用に基づいて、第1の複数の深度画像104Bから(第1の深度画像108などの)第1の深度画像を予測するようにさらに構成することができる。プロセッサ202は、予測された第1の深度画像108から第1の深度情報を抽出するようにさらに構成することができる。第1の深度情報は、第2のグラフィック情報106によって示される1又は2以上の第1の物体に対応することができる。
【0068】
ある実施形態によれば、第1のグラフィック情報104Aは、異なる視点からの1又は2以上の第1の物体の色情報を含むことができる。ある実施形態によれば、第1の複数の深度画像104Bは、(3次元(3D)グラフィックスエンジン208などの)3Dグラフィックスエンジンの深度センサ又は仮想イメージングセンサの少なくとも一方の異なる視点からの1又は2以上の第1の物体の深度情報を示すことができる。
【0069】
ある実施形態によれば、第1の複数の深度画像104Bの各々は、1又は2以上の第1の物体に関連する異なる深度値に関する異なる色を含むことができる。ある実施形態によれば、第1のグラフィック情報104A及び第2のグラフィック情報106は、1又は2以上の画像、点群データ、ボクセルセット、3次元(3D)メッシュ、ビデオ情報、LAS(LASer)フォーマットデータ又は専用フォーマットデータのうちの少なくとも1つに対応することができる。
【0070】
ある実施形態によれば、プロセッサ202は、受け取った第2のグラフィック情報106に対応する(グラウンドトゥルース画像402Aなどの)グラウンドトゥルース画像を受け取るようにさらに構成することができる。グラウンドトゥルース画像402Aは、第2のグラフィック情報106に示される1又は2以上の第1の物体に関連する深度情報を示すことができる。プロセッサ202は、受け取ったグラウンドトゥルース画像402Aと、ニューラルネットワークモデル104によって第1の複数の深度画像104Bから予測された第1の深度画像108とをさらに比較することができる。プロセッサ202は、受け取ったグラウンドトゥルース画像402Aと、訓練済みニューラルネットワークモデル104によって予測された第1の深度画像108との比較に基づいて、第1の予測スコアをさらに生成することができる。ある実施形態によれば、プロセッサ202は、第1の予測スコアが閾値スコア以上であるとの判定に基づいて、予測された第1の深度画像108から第1の深度情報を抽出するようにさらに構成することができる。ある実施形態によれば、プロセッサ202は、構造的類似度指数尺度に基づいて第1の予測スコアを生成するように構成することができる。ある実施形態によれば、プロセッサ202は、3Dグラフィックスエンジン208からグラウンドトゥルース画像402Aを受け取るように構成することができる。
【0071】
本開示は、ハードウェアで実現することも、又はハードウェアとソフトウェアとの組み合わせで実現することもできる。本開示は、少なくとも1つのコンピュータシステム内で集中方式で実現することも、又は異なる要素を複数の相互接続されたコンピュータシステムにわたって分散できる分散方式で実現することもできる。本明細書で説明した方法を実行するように適合されたコンピュータシステム又はその他の装置が適することができる。ハードウェアとソフトウェアとの組み合わせは、ロードされて実行された時に本明細書で説明した方法を実行するようにコンピュータシステムを制御することができるコンピュータプログラムを含む汎用コンピュータシステムとすることができる。本開示は、他の機能も実行する集積回路の一部を含むハードウェアで実現することができる。
【0072】
本開示は、本明細書で説明した方法の実装を可能にする全ての特徴を含み、コンピュータシステムにロードされた時にこれらの方法を実行できるコンピュータプログラム製品に組み込むこともできる。本文脈におけるコンピュータプログラムとは、情報処理能力を有するシステムに特定の機能を直接的に、或いはa)別の言語、コード又は表記法への変換、b)異なる内容形態での複製、のいずれか又は両方を行った後に実行させるように意図された命令セットの、あらゆる言語、コード又は表記法におけるあらゆる表現を意味する。
【0073】
いくつかの実施形態を参照しながら本開示を説明したが、当業者であれば、本開示の範囲から逸脱することなく様々な変更を行うことができ、同等物を代用することもできると理解するであろう。また、本開示の範囲から逸脱することなく、特定の状況又は内容を本開示の教示に適合させるように多くの修正を行うこともできる。従って、本開示は、開示した特定の実施形態に限定されるものではなく、添付の特許請求の範囲内に収まる全ての実施形態を含むように意図される。
【国際調査報告】