IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

特許7050888イメージ深度予測ニューラルネットワーク
<>
  • 特許-イメージ深度予測ニューラルネットワーク 図1
  • 特許-イメージ深度予測ニューラルネットワーク 図2
  • 特許-イメージ深度予測ニューラルネットワーク 図3
  • 特許-イメージ深度予測ニューラルネットワーク 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-31
(45)【発行日】2022-04-08
(54)【発明の名称】イメージ深度予測ニューラルネットワーク
(51)【国際特許分類】
   G06T 7/00 20170101AFI20220401BHJP
   G06T 7/529 20170101ALI20220401BHJP
   G06T 7/579 20170101ALI20220401BHJP
【FI】
G06T7/00 350C
G06T7/529
G06T7/579
【請求項の数】 16
【外国語出願】
(21)【出願番号】P 2020207460
(22)【出願日】2020-12-15
(62)【分割の表示】P 2019514299の分割
【原出願日】2017-09-12
(65)【公開番号】P2021057067
(43)【公開日】2021-04-08
【審査請求日】2021-01-13
(31)【優先権主張番号】62/395,326
(32)【優先日】2016-09-15
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】アネリア・アンジェロヴァ
(72)【発明者】
【氏名】マーティン・ウィッケ
(72)【発明者】
【氏名】レザ・マフジョウリアン
【審査官】真木 健彦
(56)【参考文献】
【文献】特表2004-505393(JP,A)
【文献】特開平06-266410(JP,A)
【文献】米国特許出願公開第2016/0232440(US,A1)
【文献】柳瀬 直人,単一画像を用いた物体の寸法推定に関する検討,映像情報メディア学会 2016年年次大会講演予稿集,日本,映像情報メディア学会,2016年09月02日,21C-4
【文献】Reza Mahjourian,Geometry-Based Next Frame Prediction from Monocular Video,2017 IEEE Intelligent Vehicles Symposium (IV) ,米国,IEEE,2017年06月14日,P.1700-1707,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7995953
【文献】Shaoyuan Sun,Depth Estimation from Monocular Infrared Images Based on BP Neural Network Model,2012 International Conference on Computer Vision in Remote Sensing,中国,IEEE,2013年01月28日,P.237-241,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6421267
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06T 7/529
G06T 7/579
(57)【特許請求の範囲】
【請求項1】
システムであって、
1つまたは複数のコンピュータによって実施されるイメージ深度予測ニューラルネットワークであって、前記イメージ深度予測ニューラルネットワークが再帰型ニューラルネットワークであり、前記再帰型ニューラルネットワークが、イメージのシーケンスを受信し、前記シーケンス内の各イメージについて、
(i)前記再帰型ニューラルネットワークの現内部状態を更新し、かつ(ii)前記シーケンス内の前記イメージの現在の深度を特徴付ける現在の深度マップを生成するために、前記現内部状態に従って前記イメージを処理する
ように構成される、イメージ深度予測ニューラルネットワークと、
イメージ生成サブシステムであって、前記シーケンス内の各イメージについて、
前記イメージの前記現在の深度を特徴付ける前記現在の深度マップを受信することと、
前記現在の深度マップと前記イメージとに基づいて、複数の3次元(3D)ポイントを構築することであって、前記複数の3Dポイントのそれぞれが、前記イメージの異なるピクセルに対応する、構築することと、
1つまたは複数の変換層を前記複数の3Dポイントに適用することによって、前記シーケンス内の将来のイメージの予測される深度を特徴付ける深度出力を生成することであって、前記深度出力が、前記将来のイメージによって表されるシーンのトポロジを第3の深度次元で定義する値のセットを含む、ことと
を行うように構成される、イメージ生成サブシステムと
を備える、システム。
【請求項2】
前記深度出力が、前記将来のイメージの焦点面からの前記将来のイメージ内の複数のピクセルで示されるそれぞれのシーンの距離を表す、前記ピクセルのうちの各ピクセルについての予測される深度値を含む、請求項1に記載のシステム。
【請求項3】
前記将来のイメージが、前記イメージのシーケンス内の前記イメージのすぐ後に続く、請求項1または2に記載のシステム。
【請求項4】
前記イメージのシーケンスが、ロボティックエージェントのカメラによってキャプチャされたビデオのフレームである、請求項1から3のいずれか一項に記載のシステム。
【請求項5】
前記イメージ深度予測ニューラルネットワークが、1つまたは複数の畳み込み長短期記憶(LSTM)ニューラルネットワーク層を含む、請求項1から4のいずれか一項に記載のシステム。
【請求項6】
前記イメージ深度予測ニューラルネットワークが、1つまたは複数のフィードフォワード畳み込みニューラルネットワーク層を含む、請求項1から5のいずれか一項に記載のシステム。
【請求項7】
前記イメージ深度予測ニューラルネットワークが、
ダウンサンプリング再帰型サブニューラルネットワークと、その後に続くアップサンプリング再帰型サブネットワークとを備え、
前記ダウンサンプリング再帰型サブニューラルネットワークが、前記シーケンス内の各イメージについて、
前記イメージよりも低い解像度を有するダウンサンプリング済み出力を生成するために前記イメージを処理する
ように構成され、
前記アップサンプリング再帰型サブニューラルネットワークが、前記シーケンス内の各イメージについて、
前記イメージの前記現在の深度マップを生成するために前記イメージについての前記ダウンサンプリング済み出力を処理する
ように構成される、請求項1から6のいずれか一項に記載のシステム。
【請求項8】
1つまたは複数のコンピュータによって実行されるとき、前記1つまたは複数のコンピュータに請求項1から7のいずれか一項に記載のシステムを実施させる命令で符号化された、1つまたは複数のコンピュータ記憶媒体。
【請求項9】
イメージのシーケンスを受信するステップと、
前記シーケンス内の各イメージについて、イメージ深度予測ニューラルネットワークを使用して前記イメージを処理するステップであって、
前記イメージ深度予測ニューラルネットワークが再帰型ニューラルネットワークであり、前記再帰型ニューラルネットワークが、前記シーケンス内の各イメージについて、
(i)前記再帰型ニューラルネットワークの現内部状態を更新し、かつ(ii)前記イメージの現在の深度を特徴付ける現在の深度マップを生成するために、前記現内部状態に従って前記イメージを処理するように構成される、ステップと
を含み、
前記シーケンス内の各イメージについて、
前記イメージの前記現在の深度を特徴付ける前記現在の深度マップを受信するステップと、
前記現在の深度マップと前記イメージとに基づいて、複数の3次元(3D)ポイントを構築するステップであって、前記複数の3Dポイントのそれぞれが、前記イメージの異なるピクセルに対応する、ステップと、
1つまたは複数の変換層を前記複数の3Dポイントに適用することによって、前記シーケンス内の将来のイメージの予測される深度を特徴付ける深度出力を生成するステップであって、前記深度出力が、前記将来のイメージによって表されるシーンのトポロジを第3の深度次元で定義する値のセットを含む、ステップと
をさらに含む、方法。
【請求項10】
前記深度出力が、前記将来のイメージの焦点面からの前記将来のイメージ内の複数のピクセルで示されるそれぞれのシーンの距離を表す、前記ピクセルのうちの各ピクセルについての予測される深度値を含む、請求項9に記載の方法。
【請求項11】
前記将来のイメージが、前記イメージのシーケンス内の前記イメージのすぐ後に続く、請求項9または10に記載の方法。
【請求項12】
前記イメージのシーケンスが、ロボティックエージェントのカメラによってキャプチャされたビデオのフレームである、請求項9から11のいずれか一項に記載の方法。
【請求項13】
前記イメージ深度予測ニューラルネットワークが、1つまたは複数の畳み込み長短期記憶(LSTM)ニューラルネットワーク層を含む、請求項9から12のいずれか一項に記載の方法。
【請求項14】
前記イメージ深度予測ニューラルネットワークが、1つまたは複数のフィードフォワード畳み込みニューラルネットワーク層を含む、請求項9から14のいずれか一項に記載の方法。
【請求項15】
前記イメージ深度予測ニューラルネットワークが、
ダウンサンプリング再帰型サブニューラルネットワークと、その後に続くアップサンプリング再帰型サブネットワークとを備え、
前記ダウンサンプリング再帰型サブニューラルネットワークが、前記シーケンス内の各イメージについて、
前記イメージよりも低い解像度を有するダウンサンプリング済み出力を生成するために前記イメージを処理する
ように構成され、
前記アップサンプリング再帰型サブニューラルネットワークが、前記シーケンス内の各イメージについて、
前記現在の深度マップを生成するために前記イメージについての前記ダウンサンプリング済み出力を処理する
ように構成される、請求項9から14のいずれか一項に記載の方法。
【請求項16】
1つまたは複数のコンピュータによって実行されるとき、前記1つまたは複数のコンピュータに請求項9から15のいずれか一項に記載のそれぞれの方法の動作を実施させる命令で符号化された、1つまたは複数のコンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本願は、2016年9月15日出願の米国仮出願第62/395326号の優先権を主張する。先行出願の開示は本願の開示の部分と見なされ、参照により本願の開示に組み込まれる。
【0002】
本明細書は、ニューラルネットワークを使用してイメージを処理することに関する。
【背景技術】
【0003】
機械学習モデルは入力を受信し、受信した入力に基づいて、出力、たとえば予測される出力を生成する。いくつかの機械学習モデルはパラメトリックモデルであり、受信した入力と、モデルのパラメータの値とに基づいて出力を生成する。
【0004】
いくつかの機械学習モデルは、受信した入力に対する出力を生成するためにモデルの複数の層を利用するディープモデルである。たとえば、ディープニューラルネットワークは、出力層と、出力を生成するために受信した入力に非線形変換をそれぞれ適用する1つまたは複数の隠れ層とを含むディープ機械学習モデルである。
【0005】
いくつかのニューラルネットワークは再帰型ニューラルネットワークである。再帰型ニューラルネットワークは、入力シーケンスを受信し、入力シーケンスから出力シーケンスを生成するニューラルネットワークである。具体的には、再帰型ニューラルネットワークは、入力シーケンス内の現入力から出力を生成する際に、入力シーケンス内の前の入力を処理した後のネットワークの内部状態のいくつか、またはすべてを使用する。
【先行技術文献】
【非特許文献】
【0006】
【文献】X. Shi他、“Convolutional LSTM network: A machine learning approach for precipitation nowcasting." NIPS、2015
【文献】https://www.tensorflow.org/api_docs/python/tf/depth_to_space
【文献】J. Ba、J. Kiros、およびG. Hinton. Layer normalization. arXiv:1607.06450、2016
【文献】P.Fischer他、“Flownet: Learning Optical Flow with Conventional Networks" arXiv: 1504.06852、2015
【文献】I.Laina他、“Deeper Depth Prediction with Fully Convolutional Residual Networks arXiv: 1606.00373、2016
【文献】Eigen他、“Predicting Depth, Surface normal and Semantic Labels with a Common Multi-Scale Convolutional Architecture" ICCV 2015
【発明の概要】
【課題を解決するための手段】
【0007】
本明細書は、将来のイメージの予測を生成することのできる、1つまたは複数の場所の1つまたは複数のコンピュータ上のコンピュータプログラムとして実施されるシステムを説明する。
【0008】
一般には、1つの革新的な態様が、1つまたは複数のコンピュータによって実施されるイメージ深度予測ニューラルネットワークを含むシステムで具現化されてもよく、1つまたは複数のコンピュータ内で、イメージ深度予測ニューラルネットワークは、イメージのシーケンスを受信し、シーケンス内の各イメージについて、(i)再帰型ニューラルネットワークの現内部状態を更新し、(ii)シーケンス内の将来のイメージの予測される深度を特徴付ける深度出力を生成するために、現内部状態に従ってイメージを処理するように構成される再帰型ニューラルネットワークである。イメージの深度は、2Dイメージによって表されるシーンのトポロジを第3の深度次元で定義する値のセットを含んでもよい。
【0009】
システムは、シーケンス内の各イメージについて、将来のイメージの予測される深度を特徴付ける深度出力を受信し、深度出力を使用して将来のイメージの予測を生成するように構成されるイメージ生成サブシステムをさらに含んでもよい。深度出力は、将来のイメージ内の複数のピクセルのうちの各ピクセルについての、将来のイメージの焦点面からの、ピクセルで示されるそれぞれのシーンの距離を表す、予測される深度値を含んでもよい。将来のイメージは、イメージのシーケンス内のイメージのすぐ後に続いてもよい。この場合の焦点面への参照は、物理的カメラの存在についての要件を示唆しないことを当業者は理解されよう。
【0010】
いくつかの実装形態では、イメージのシーケンスは、ロボティックエージェントまたは車両のカメラによってキャプチャされたビデオのフレームである。
【0011】
イメージ深度予測ニューラルネットワークは、1つまたは複数の畳み込み長短期記憶(LSTM)ニューラルネットワーク層を含んでもよい。これは、空間および時間にわたって分散する情報からイメージ深度構造を学習するのを助けることができる。イメージ深度予測ニューラルネットワークは、1つまたは複数のフィードフォワード畳み込みニューラルネットワーク層を含んでもよい。
【0012】
いくつかの実装形態では、イメージ深度予測ニューラルネットワークは、ダウンサンプリング再帰型サブニューラルネットワークと、その後に続くアップサンプリング再帰型サブネットワークとを含む。ダウンサンプリング再帰型サブニューラルネットワークは、シーケンス内の各イメージについて、イメージよりも低い解像度を有するダウンサンプリング済み出力を生成するためにイメージを処理するように構成されることが可能である。アップサンプリング再帰型サブニューラルネットワークは、シーケンス内の各イメージについて、深度出力を生成するためにイメージについてのダウンサンプリング済み出力を処理するように構成されることが可能である。これは、空間および時間にわたって一般化されるイメージ深度特徴をシステムが学習するのを助けることができる。
【0013】
別の革新的な態様は、イメージのシーケンスを受信すること、およびシーケンス内の各イメージについて、イメージ深度予測ニューラルネットワークを使用してイメージを処理することを含む方法で具現化されてもよい。イメージ深度予測ニューラルネットワークは、シーケンス内の各イメージについて、(i)再帰型ニューラルネットワークの現内部状態を更新し、(ii)シーケンス内の将来のイメージの予測される深度を特徴付ける深度出力を生成するために、現再帰型ニューラルネットワークの現内部状態に従ってイメージを処理するように構成される再帰型ニューラルネットワークである。
【0014】
本方法は、シーケンス内の各イメージについて、将来のイメージの予測される深度を特徴付ける深度出力を受信すること、および深度出力を使用して将来のイメージの予測を生成することをさらに含んでもよい。深度出力は、将来のイメージ内の複数のピクセルのうちの各ピクセルについての、将来のイメージの焦点面からの、ピクセルで示されるそれぞれのシーンの距離を表す、予測される深度値を含んでもよい。将来のイメージは、イメージのシーケンス内のイメージのすぐ後に続いてもよい。
【0015】
いくつかの実装形態では、イメージのシーケンスは、ロボティックエージェントのカメラによってキャプチャされたビデオのフレームであることが可能である。
【0016】
イメージ深度予測ニューラルネットワークは、1つまたは複数の畳み込み長短期記憶(LSTM)ニューラルネットワーク層を含んでもよい。イメージ深度予測ニューラルネットワークはまた、1つまたは複数のフィードフォワード畳み込みニューラルネットワーク層を含んでもよい。
【0017】
いくつかの実装形態では、イメージ深度予測ニューラルネットワークは、ダウンサンプリング再帰型サブニューラルネットワークと、その後に続くアップサンプリング再帰型サブネットワークとを含む。ダウンサンプリング再帰型サブニューラルネットワークは、シーケンス内の各イメージについて、イメージよりも低い解像度を有するダウンサンプリング済み出力を生成するためにイメージを処理するように構成されることが可能である。アップサンプリング再帰型サブニューラルネットワークは、シーケンス内の各イメージについて、深度出力を生成するためにイメージについてのダウンサンプリング済み出力を処理するように構成されることが可能である。
【0018】
本明細書で説明される主題の特定の実施形態は、以下の利点のうちの1つまたは複数を実現するように実施されることが可能である。本明細書で説明される主題は一般に、将来のイメージを予測するための従来の手法に勝る多くの利点を有する幾何形状ベースの手法を利用するイメージ予測システムを対象とする。従来の手法は、モデルベースの手法とモデルフリー手法とに分類されることが可能である。モデルベースの手法は、環境についての強い仮定(たとえば、どんな種類のシーン、たとえば弾むボールまたは剛体オブジェクトが可能であるか)に依拠し、そのような制限された環境内でうまく動作するだけである。一方、モデルフリー手法は、前のイメージからのピクセル値のシーケンスから直接的に非構造化ピクセル値を予測するので、世界についてのどんな仮定にも依拠しない。ピクセル値は、RGB値、モノクローム値、輝度、およびクロミナンス値、またはピクセルの視覚特性の任意の他の表現でもよい。したがって、モデルフリー手法は、制約されない環境でうまく動作することができる。しかしながら、これらのモデルフリー手法で得られる次のイメージはしばしば、視覚的品質について最適化されない。
【0019】
本明細書で説明されるイメージ予測システムの例はまず、前のイメージのピクセル値のシーケンスから深度マップを推定し、次いで推定した深度マップを使用して次のイメージの次のピクセル値をレンダリングするために、生成コンピュータグラフィックス技法を使用する。この手法は、幾何形状ベースの手法と呼ばれる場合がある。深度マップは、再帰型ニューラルネットワークを使用して推定されてもよく、したがって再帰型ニューラルネットワークは環境に対してどんな仮定も課さず、したがって制約されない環境内、たとえば実生活内でシステムがうまく動作することを可能にする。加えて、生成コンピュータグラフィック技法は、高品質予測イメージをさらに提供するために、深度マップ内にキャプチャされたシーンの幾何形状およびカメラ軌跡を利用してもよい。
【0020】
具体的には、たとえば全結合層ではなく、畳み込みLSTMニューラルネットワーク層を含む、再帰型畳み込みニューラルネットワークを含むことによって、システムは、将来のイメージについての深度を予測するために、現入力イメージだけではなく前の入力イメージの履歴も考慮することができ、したがって予測される深度を使用して、既存の方法と比較して、将来のイメージのより正確で現実的な予測を生成することができる。モデルフリー方法は、畳み込みLSTM層を有する再帰型ニューラルネットワークを使用することによって、控えめでぼやけた予測を生成するが(たとえば、予測されるイメージで、RGB値などのピクセル値に基づく損失関数を使用する方法)、システムは、著しく高い品質およびシャープネスを有する将来のイメージの予測を生成することができる。さらに、前もって複数の将来のイメージをシミュレートするために、イメージのリッチ3D表現が使用されることが可能であり、多くの状況で有用な予測機能をシステムが有することが可能となる。
【0021】
提案される方法はまた、仮説次フレーム予測、たとえば探索行為または仮説行為の結果として生じるものを生成するために使用されることが可能である。この機能は、利用可能な行為のセットの潜在的結果を評価するために、意思決定アルゴリズムが次フレーム予測を使用することを可能にする。同様に、現実または仮想のカメラの近い将来の軌跡が、前の観測から予測されてもよい。入力フレームの代わりに将来のフレームについての深度マップを予測することは、シーン内の動的オブジェクトの運動をキャプチャすることを可能にする。この手法はまた、異常検出に適用されることが可能である。たとえば、次フレーム予測が、実際に観測されたフレーム上に重ねられ、シーントポロジ(深度)または外観(たとえばRGBフレームまたは他のピクセル値に基づくフレーム)の不整合について解析されることが可能である。大きい不整合は、オブジェクトが予期しない速度で移動することの徴候である場合があり、たとえば車両でのより安全なナビゲーションまたは他の目的で、警告信号として使用されてもよい。
【0022】
本開示での技法は、特に車両およびロボット工学で使用されてもよい。無人車両およびロボットが、たとえば移動または他の行為の結果を予測するように動作可能にされることが可能である。
【0023】
本明細書の主題の1つまたは複数の実施形態の詳細が、添付の図面および以下の説明で説明される。主題の他の特徴、態様、および利点が、説明、図面、および特許請求の範囲から明らかとなるであろう。
【図面の簡単な説明】
【0024】
図1】イメージ予測システムの一例のブロック図である。
図2】イメージ深度予測ニューラルネットワークの一例のブロック図である。
図3】将来のイメージの予測を生成するためにイメージのシーケンスを処理するための例示的プロセスの流れ図である。
図4】イメージ予測システムによって生成された例示的イメージ予測である。
【発明を実施するための形態】
【0025】
様々な図面内の同様の参照番号および名称は同様の要素を示す。
【0026】
本明細書は、イメージ深度予測ニューラルネットワークを含む、1つまたは複数の場所の1つまたは複数のコンピュータ上のコンピュータプログラムとして実施されるイメージ予測システムを説明する。
【0027】
図1は例示的イメージ予測システム100を示す。システム100は、以下で説明されるシステム、構成要素、および技法がその中に実装されることのできる、1つまたは複数の場所の1つまたは複数のコンピュータ上のコンピュータプログラムとして実施されるシステムの一例である。
【0028】
一般には、イメージ予測システム100は、イメージのシーケンス106を受信し、シーケンス内の各イメージについて、イメージのシーケンス内の将来のイメージの予測である出力イメージを生成するためにイメージのシーケンス106を処理するように構成される。たとえば、イメージのシーケンス106は、ロボティックエージェントのカメラによってキャプチャされているビデオのフレームを含んでもよく、将来のイメージは、将来にロボティックエージェントのカメラによってキャプチャされるイメージでもよい。将来のイメージは、たとえばシーケンス内の現イメージのすぐ後に続くイメージ、シーケンス内の現イメージの後ろの3つのイメージ、またはシーケンス内の現イメージの後ろの5つのイメージであることが可能である。
【0029】
将来のイメージの予測を生成するために、イメージ予測システム100は、イメージ深度予測ニューラルネットワーク102およびイメージ生成サブシステム104を含む。一般に、イメージ深度予測ニューラルネットワーク102は、1つまたは複数の畳み込み長短期記憶(LSTM)ニューラルネットワーク層と、オプションで1つまたは複数のフィードフォワード畳み込みニューラルネットワーク層とを含む再帰型ニューラルネットワークである。イメージ深度予測ニューラルネットワーク102の構造は、図2を参照しながら以下でより詳細に説明される。イメージ深度はイメージ内にキャプチャされたシーンのトポロジに関係する。深度マップは、イメージ内の各ピクセルについての深度値を含む。ピクセルの深度値は、イメージが記録される平面と、ピクセルが表すオブジェクトまたはオブジェクトの部分の実際または仮想の場所との間の垂直距離の表現である。イメージが記録される平面は、焦点面、たとえばカメラまたは仮想カメラの焦点面でもよい。
【0030】
一実施形態では、イメージ深度予測ニューラルネットワーク102が、イメージを受信し、そのイメージから深度マップを導出するように構成される。一実施形態では、これは、既知の深度を有するイメージを使用してニューラルネットワークをトレーニングすることによって達成され、既知の深度はグラウンドトゥルースと呼ばれる。
【0031】
各時間ステップで、イメージ深度予測ニューラルネットワーク102は、イメージのシーケンス106内のイメージを受信するように構成される。次いで、ニューラルネットワーク102は、イメージについての深度予測を生成するために、1つまたは複数の畳み込みLSTMニューラルネットワーク層を含むニューラルネットワーク層を使用してイメージを処理する。ニューラルネットワーク102内の各畳み込みLSTMニューラルネットワーク層は、各時間ステップで更新される状態を有する。イメージが受信されると、ニューラルネットワーク102は、畳み込みLSTMニューラルネットワーク層の現状態を更新するため、および現イメージについての深度予測を生成するためにイメージを処理する。畳み込みLSTMニューラルネットワーク層の更新後の状態は、後続のイメージについての深度予測を生成するために使用される。畳み込みLSTMニューラルネットワーク層の状態が各時間ステップで更新され、したがってシーケンス内のすべての前のイメージの深度情報を含むので、ニューラルネットワーク102は、既存の方法のように単一の静止画像から深度を予測するのではなく、イメージのシーケンス(たとえば、ビデオ)内の複数のイメージから深度を予測することができる。その結果、ニューラルネットワーク102は、予測される深度から、既存の方法と比較して著しく高い品質およびシャープネスを有する、より正確で現実的な将来のイメージを生成することができる。
【0032】
特に、いくつかのケースでは、イメージのシーケンス106内の所与のイメージ(たとえば、イメージ112)について、ニューラルネットワーク102は、現イメージ112の現深度を特徴付ける深度マップを含む深度予測を生成し、イメージ生成サブシステム104は、変換層を使用して、現イメージ112の現深度マップから将来のイメージ(たとえば、将来のイメージ108)の将来の深度マップを生成する。一般には、イメージについての深度マップは、イメージ内の複数の各ピクセルのそれぞれの深度値を含み、各深度値は、イメージの焦点面からの、ピクセルで示されるそれぞれのシーンの距離を表す。いくつかの他のケースでは、ニューラルネットワーク102は、将来のイメージ108の予測される深度を特徴付ける将来の深度マップを直接的に生成する。次いで、イメージ生成サブシステム104は、将来のイメージ108の予測される深度を使用して将来のイメージ108の予測を生成する。
【0033】
たとえば、いくつかの実装形態では、イメージのシーケンス{X1,X2,...,Xk-1}内のイメージXk-1が与えられたとすると、ニューラルネットワーク102は、現イメージXk-1の現深度を特徴付ける深度マップDk-1を生成するように構成される。深度マップDk-1は、複数のピクセルを含む2次元(2D)イメージであり、深度マップ内の各ピクセルは、現イメージ内の異なるピクセルに対応し、現イメージ内の対応するピクセルと同一の2D座標を有する。深度マップ内の各ピクセルは、現イメージ内の対応するピクセルの深度情報を表す深度値、すなわち現イメージの焦点面からの、現イメージ内の対応するピクセルに示されるそれぞれのシーンの距離を有する。
【0034】
ニューラルネットワーク102が深度マップDk-1を生成すると、サブシステム104は、複数の3次元(3D)ポイントを構築するために深度マップDk-1および現イメージXk-1を使用し、各3Dポイントは、現イメージXk-1内の異なるピクセルに対応する。具体的には、現イメージ内の複数のピクセル内の各ピクセルについて、サブシステムは、3Dポイントを構築するために、(i)ピクセルのxおよびy座標と、(ii)深度マップDk-1から得られるピクセルの深度値とを使用する。新たに構築された3DポイントはポイントクラウドCを形成する。各ポイントはx、y、z座標を有し、ポイントクラウドC内の3Dポイントのxおよびy座標は、現イメージのピクセルのxおよびy座標に基づいて決定され、3Dポイントのz座標は、ピクセルの深度値に基づいて決定される。3Dポイントには、現イメージXk-1内の対応するピクセルと同一のピクセル値(たとえば、RGB値)が割り当てられる。
【0035】
一実施形態では、次いでサブシステム104は、将来のイメージの予測される深度を特徴付ける将来の深度マップ(たとえば、将来のイメージXkの深度マップDk)を予測するために、1つまたは複数の変換層を3Dポイントに適用する。一実施形態では、深度マップ、予測される深度マップ、イメージ、または予測されるイメージに変換が適用される。これらの変換は、ニューラルネットワークの層、たとえば1つまたは複数の空間変換器ネットワーク層でもよく、または決定性アルゴリズムを使用して実施される決定性変換でもよい。
【0036】
たとえば、1つまたは複数の変換層は、以下のように構築されることのできる幾何形状ベースの変換行列を含む。イメージのシーケンス106がロボティックエージェントのカメラによってキャプチャされたビデオのフレームを含むと仮定すると、サブシステム104は、将来のフレームの将来の深度マップを予測するために、現フレームと将来のフレームとの間のカメラカメラモーションを使用することができる。一般には、カメラのカメラモーションは、カメラポーズベクトルの所与のシーケンス{P1,P2,...,Pk}に基づいて計算されることが可能である。カメラポーズベクトルPiは、時間ステップiでのカメラの位置および配向を表す。具体的には、カメラポーズベクトルPiは、時間ステップiでのカメラの3D位置および3D配向、すなわちヨー角、ピッチ角、およびロール角を含む。将来のイメージXkの深度マップDkを予測するために、サブシステム104は、カメラポーズベクトルPk-1およびPkに基づいてフレームXk-1とXkとの間のカメラモーションを計算する。計算されたカメラモーションは、3つの並進成分tx、ty、tzと、3つの回転成分rx、ry、rzとを含む。次いでサブシステム104は、フレームXk-1とXkとの間のカメラモーションに基づいて、時間ステップkでのカメラの新しい座標および配向を計算する。カメラの新しい座標および配向が与えられたとすると、サブシステム104は、カメラから所定の距離にあり、カメラの主軸と直交する平面にポイントクラウドCを投影し、カメラの主軸は、カメラのヨー方位角、ピッチ方位角、およびロール方位角によって形成される。次いでサブシステム104は、ポイントクラウドC内の対応する3Dポイントから平面までのそれぞれの新たに計算した距離に基づいて、平面内のそれぞれの投影後ポイントの深度値を更新する。平面内の取得した投影後ポイントは、将来のフレームXkの将来の深度マップDkを形成する。次いでサブシステム104は、平面内の投影後ポイントのそれぞれを、ポイントクラウドC内の対応する3Dポイントに割り当てられた、RGB値などのそれぞれのピクセル値でペイントすることによって、将来のフレームXkの予測を作成する。
【0037】
いくつかの実装形態では、システム100は、複数時間ステップ先の将来の深度マップまたは将来のイメージを予測することができ、すなわちt>kについてDtおよびXtを予測する。これを行うために、たとえば1つまたは複数の変換層が、時間ステップtでのカメラの新しい座標および配向を予測するために、時刻kから時刻tまでのロボティックエージェントの仮説カメラモーションを使用する。次いでサブシステム104は、DtとXtの両方を生成するために、時間ステップtでカメラから所定の距離にあり、カメラの主軸と直交する平面にポイントクラウドCを投影する。カメラの仮説モーションは、たとえばロボティックエージェント、たとえば移動する車両の運動の以前の知識に基づいてモデリングおよび推定される。
【0038】
いくつかの他の実装形態では、現イメージについての深度マップを生成する代わりに、ニューラルネットワーク102は、将来のイメージについての将来の深度マップ、たとえば将来のイメージXkについての将来の深度マップDkを直接的に予測することができる。次いでサブシステム104は、存在する場合、将来の深度マップを受信し、将来の深度マップを使用して将来のイメージの予測を生成してもよい。
【0039】
複数イメージ先を予測するシステムの能力は、多くの状況で有用である。たとえば、システムは、複数イメージ先を一般化し、それらを異常または驚くべき結果を検出するために使用することができる。特に、システムは、予測した将来のイメージを実際に観測されたイメージと比較し、シーントポロジまたは外観の不整合を解析することができる。大きい不整合は、オブジェクトが予期しない速度で移動することの徴候である場合があり、オブジェクトのより安全なナビゲーションのための通知信号として使用されることが可能である。
【0040】
図2は、イメージ深度予測ニューラルネットワーク102の例示的アーキテクチャを示す。
【0041】
一般には、イメージ深度予測ニューラルネットワーク102は、1つまたは複数の畳み込み長短期記憶(LSTM)ニューラルネットワーク層と、オプションで、1つまたは複数のフィードフォワード畳み込みニューラルネットワーク層とを含む再帰型ニューラルネットワークである。イメージ深度予測ニューラルネットワークは、イメージのシーケンスを受信し、シーケンス内の各イメージについて、現イメージの現深度または将来のイメージの予測される深度を特徴付ける深度マップを生成するように構成される。イメージ深度予測ニューラルネットワークは、グラウンドトゥルース深度マップに関連するイメージシーケンスを利用する教師ありトレーニングを使用してトレーニングされるニューラルネットワークでもよい。
【0042】
特に、いくつかの実装形態では、イメージ深度再帰型ニューラルネットワーク102は、ダウンサンプリング再帰型サブニューラルネットワーク202と、その後に続くアップサンプリング再帰型サブネットワーク204とを含む。ダウンサンプリング再帰型サブニューラルネットワーク202は、1つまたは複数の畳み込みLSTMニューラルネットワーク層208と、1つまたは複数のフィードフォワード畳み込みニューラルネットワーク層206とを含む。同様に、アップサンプリング再帰型サブニューラルネットワーク204は、1つまたは複数の畳み込みLSTMニューラルネットワーク層212と、1つまたは複数のフィードフォワード畳み込みニューラルネットワーク層214とを含む。畳み込みLSTMニューラルネットワーク層は、通常のLSTMニューラルネットワーク層に類似しているが、それらのゲートが、全結合ニューラルネットワーク層ではなく畳み込みによって実施される。畳み込みLSTMニューラルネットワーク層は、X. Shi他、“Convolutional LSTM network: A machine learning approach for precipitation nowcasting." NIPS、2015により詳細に記載されている。
【0043】
イメージ、たとえばイメージ112のシーケンス内の各イメージについて、ダウンサンプリング再帰型サブニューラルネットワーク202は、イメージ112よりも低い解像度を有するダウンサンプリング済み出力210(たとえば、ダウンサイジングされた特徴マップ)を生成するためにイメージ112を処理するように構成される。イメージ112をダウンサイジングするために、ダウンサンプリング再帰型サブニューラルネットワーク202は、ストライド2を有する1つまたは複数のフィードフォワード畳み込みニューラルネットワーク層を含む。ストライド2を有する1つまたは複数の畳み込みニューラルネットワーク層は、1つまたは複数の畳み込みLSTMニューラルネットワーク層に隣接して/の間に配置される。たとえば、ダウンサンプリング再帰型サブニューラルネットワーク202は、ストライド2を有する第1の畳み込みニューラルネットワーク層と、その後に続く第1の畳み込みLSTMニューラルネットワーク層と、その後に続くストライド2を有する第2の畳み込みニューラルネットワーク層と、その後に続く第2の畳み込みLSTMニューラルネットワーク層と、その後に続くストライド2を有する第3の畳み込みニューラルネットワーク層と、その後に続く第3の畳み込みLSTMニューラルネットワーク層とを含んでもよい。いくつかの実装形態では、サブニューラルネットワーク202は、特徴マップの空間構造を保持するために最大プーリング層を含まない。
【0044】
アップサンプリング再帰型サブニューラルネットワーク204は、深度マップ118を生成するために、イメージ112についてのダウンサンプリング済み出力210を処理するように構成される。深度マップを生成するとき、アップサンプリング再帰型サブニューラルネットワーク204は、ストライド1を有する1つまたは複数の畳み込みニューラルネットワーク層および1つまたは複数の畳み込みLSTMニューラルネットワーク層に隣接して配置され、またはそれらの間に配置されるブロックサイズ2を有する1つまたは複数の深度-空間ニューラルネットワーク層を使用することによって、イメージ112の解像度に達するようにダウンサンプリング済み出力210をアップサイジングする。たとえば、アップサンプリング再帰型サブニューラルネットワーク204は、ブロックサイズ2を有する第1の深度-空間ニューラルネットワーク層と、その後に続くストライド1を有する第1の畳み込みニューラルネットワーク層と、その後に続く第1の畳み込みLSTMニューラルネットワーク層と、その後に続くブロックサイズ2を有する第2の深度-空間ニューラルネットワーク層と、その後に続くストライド1を有する第2の畳み込みニューラルネットワーク層と、その後に続く第2の畳み込みLSTMニューラルネットワーク層と、その後に続くブロックサイズ2を有する第3の深度-空間ニューラルネットワーク層と、その後に続くストライド1を有する第3の畳み込みニューラルネットワーク層とを含んでもよい。深度-空間層内の「深度」に対する参照は、イメージ深度を指すのではなく、深度次元から高さおよび幅次元へのテンソルデータの再構成を指す。一般には、深度-空間ニューラルネットワーク層は、空間ブロック内の入力での深度次元から高さおよび幅次元に値を移動するように構成される。深度-空間ニューラルネットワーク層は、https://www.tensorflow.org/api_docs/python/tf/depth_to_spaceにより詳細に記載されている。いくつかのケースでは、深度-空間ニューラルネットワーク層は、Tensorflow(www.tensorflow.org) op tf.depth_to_spaceとして実施されることが可能である。
【0045】
一実施形態では、各時間ステップで、ネットワークは1つのビデオフレームを受信し、1つの深度予測を生成する。LSTM状態が後続のフレーム間で保持されるので、LSTM状態は、モデルが2つ以上のフレーム間の運動をキャプチャすることを可能にする。LSTMセルの出力は、次の層に渡され、一方LSTMセルの状態は、時間を通じて次のフレームに渡される。したがって、フレームiを処理するブロックは、入力フレームXiおよびLSTM状態Si-1を入力として受信し、Siは、フレームiを処理した後のすべての層からのLSTM状態のセットであり、オプションでS0=0である。モデルをアンロールすることはトレーニングを簡略化する。一実施形態では、ネットワークの複数のコピーがインスタンス化されるが、インスタンスにわたって共有されるモデルパラメータの単一のセットがある。一実施形態では、モデルは、各畳み込みまたはLSTMセルの後に層正規化(J. Ba、J. Kiros、およびG. Hinton. Layer normalization. arXiv:1607.06450、2016)を適用する。
【0046】
オプションで、1つまたは複数の修正が以下のように行われてもよい。スキップ接続がエンコーダからデコーダに追加される。スキップ接続は、デコーダ内の層の出力を、デコーダ内の対応する同様のサイズの層の入力に連結する。Flownet(P.Fischer他、“Flownet: Learning Optical Flow with Conventional Networks" arXiv: 1504.06852、2015)と同様に中間低解像度予測が実施される。中間予測はまた損失関数でも使用される。全結合層がモデルボトルネックで追加される。一実施形態では、全結合ネットワーク層の結果としてオーバーフィッティングとなる場合があるので、ドロップアウトが追加される。
【0047】
イメージ深度予測ニューラルネットワーク102をトレーニングするために、L2損失関数や逆HuberまたはBerhu損失関数(I.Laina他、“Deeper Depth Prediction with Fully Convolutional Residual Networks arXiv: 1606.00373、2016)などの1つまたは複数の深度予測損失関数が使用されてもよい。損失関数は、深度勾配差分損失(GDL)(Eigen他、“Predicting Depth, Surface normal and Semantic Labels with a Common Multi-Scale Convolutional Architecture" ICCV 2015)を最小限に抑えるための項を含んでもよい。GDL項の目的は、予測される深度とグラウンドトゥルース深度との間の局所的構造類似性を促進することである。一実施形態では、シーケンス内のすべてのフレームにわたって平均損失を計算することによって最終損失関数が形成される。一実施形態では、グラウンドトゥルース深度がないピクセルがマスクされる。
【0048】
一実施形態では、ニューラルネットワーク102は1つまたは複数の変換層をさらに含むことができる。たとえば、1つまたは複数の変換層は、幾何形状ベースの変換行列を含んでもよい。1つまたは複数の変換層は、現イメージの現深度から将来のイメージの予測される深度を生成するために使用されることが可能である。したがって、一実施形態では、イメージ深度予測サブシステム102が、前のイメージのうちの1つまたは前のイメージのシーケンスに基づいて将来のイメージの深度マップを予測するようにトレーニングされる。したがって、そのような実施形態ではイメージ生成サブシステム104が存在する必要はない。
【0049】
図3は、将来のイメージの予測を生成するためにイメージのシーケンスを処理するための例示的プロセス300の流れ図である。便宜上、プロセス300は、1つまたは複数の場所に配置された1つまたは複数のコンピュータのシステムによって実施されるものとして説明される。たとえば、本明細書に従って適切にプログラムされたイメージ予測システム、たとえば図1のイメージ予測システム100が、プロセス300を実施することができる。
【0050】
システムはイメージのシーケンスを受信する(ステップ302)。たとえば、イメージのシーケンスは、ロボティックエージェントのカメラによってキャプチャされたビデオのフレームを含む。
【0051】
シーケンス内の各イメージについて、システムは、シーケンス内の将来のイメージの予測を生成するために、イメージ深度予測ニューラルネットワークを使用してイメージを処理する(ステップ304)。イメージ深度予測ニューラルネットワークは、1つまたは複数の畳み込み長短期記憶(LSTM)ニューラルネットワーク層と、オプションで1つまたは複数のフィードフォワード畳み込みニューラルネットワーク層とを含む再帰型ニューラルネットワークである。将来のイメージは、シーケンス内の現イメージのすぐ後に続くイメージであることが可能である。
【0052】
システムは、(i)現内部状態を更新し、(ii)シーケンス内の将来のイメージの予測される深度を特徴付ける深度出力を生成するために、再帰型ニューラルネットワークの現内部状態に従ってイメージを処理する。再帰型ニューラルネットワークの現内部状態は、再帰型ニューラルネットワーク内のすべての畳み込みLSTMニューラルネットワーク層の現状態を含む。再帰型ニューラルネットワークは、(i)イメージよりも低い解像度を有するダウンサンプリング済み出力を生成するためにイメージを処理するように構成されるダウンサンプリング再帰型サブニューラルネットワークと、(ii)深度出力を生成するためにイメージについてのダウンサンプリング済み出力を処理するように構成されるアップサンプリング再帰型サブニューラルネットワークとを含む。深度出力は、複数のポイントを含む深度マップでもよく、各ポイントは、将来のイメージの焦点面からの、ピクセルで示されるそれぞれのシーンの距離を表す、将来のイメージ内の複数のピクセルのうちのピクセルについての予測される深度値に関連付けられる。
【0053】
次に、システムは、将来のイメージの予測される深度を特徴付ける深度出力を受信する(ステップ306)。
【0054】
システムは、次いで深度出力を使用して将来のイメージの予測を生成する(ステップ308)。
【0055】
図4は、イメージ予測システム、たとえば図1のイメージ予測システム100によって生成される例示的な次イメージ予測を示す。図4図4A図4Dを含む。
【0056】
特に、図4Aは、入力イメージのシーケンスからの入力イメージの一例を示す。例示的入力イメージは、街路を移動する車の現在位置を示す。
【0057】
図4Bは、例示的入力イメージを使用して生成されることのできる深度マップを示す。深度マップは、イメージ予測システムのイメージ深度予測ニューラルネットワーク、たとえば図1のイメージ深度予測ニューラルネットワーク102によって生成される。
【0058】
図4Cは、深度マップを使用してイメージ予測システムによって生成されることのできる次のイメージの例示的予測を示す。次イメージ予測は、車が新しい位置に前進したことを示す。
【0059】
図4Dは、シーケンス内の例示的入力イメージの後に続くグラウンドトゥルース次イメージである。グラウンドトゥルース次イメージ内の車は前進しており、そのことは、図4Cの次イメージ予測で示されるようにイメージ予測システムによって正確に予測される。
【0060】
本明細書は、システムおよびコンピュータプログラム構成要素に関連して「構成される」という用語を使用する。1つまたは複数のコンピュータのシステムについて、特定の動作または行為を実施するように構成されることは、システムが、動作の際にシステムに動作または行為を実施させるソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せをシステム上にインストールしていることを意味する。1つまたは複数のコンピュータプログラムについて、特定の動作または行為を実施するように構成されることは、1つまたは複数のプログラムが、データ処理装置によって実行されるとき、装置に動作または行為を実施させる命令を含むことを意味する。
【0061】
本明細書で説明される主題および機能動作の実施形態は、本明細書で開示される構造およびその構造的均等物を含むデジタル電子回路、有形に具現化されたコンピュータソフトウェアまたはファームウェア、コンピュータハードウェア、あるいはそれらのうちの1つまたは複数の組合せで実施されることが可能である。本明細書で説明される主題の実施形態は、1つまたは複数のコンピュータプログラム、すなわちデータ処理装置による実行のための、またはデータ処理装置の動作を制御するための有形の非一時的記憶媒体上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実施されることが可能である。コンピュータ記憶媒体は、機械可読記憶装置、機械可読記憶基板、ランダムもしくは逐次アクセスメモリデバイス、またはそれらのうちの1つまたは複数の組合せであることが可能である。代替または追加として、プログラム命令は、データ処理装置による実行のために、適切なレシーバ装置への伝送のために情報を符号化するように生成される人工的に生成された伝播信号、たとえば機械で生成された電気信号、光信号、または電磁信号上に符号化されることが可能である。
【0062】
「データ処理装置」という用語はデータ処理ハードウェアを指し、例としてプログラム可能プロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含むデータを処理するためのすべての種類の装置、デバイス、および機械を包含する。装置はまた、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)であることが可能であり、またはそれをさらに含むことができる。オプションで、装置は、ハードウェアに加えて、コンピュータプログラムのための実行環境を作成するコード、たとえばプロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、あるいはそれらのうちの1つまたは複数の組合せを構成するコードを含むことができる。
【0063】
プログラム、ソフトウェア、ソフトウェアアプリケーション、app、モジュール、ソフトウェアモジュール、スクリプト、またはコードとも呼ばれ、またはそれらとして説明される場合があるコンピュータプログラムが、コンパイル型言語またはインタプリタ型言語、宣言型言語または手続型言語を含む任意の形態のプログラミング言語で書かれてもよく、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、もしくはコンピューティング環境内での使用に適した他のユニットとしての形態を含む任意の形態で導入することが可能である。プログラムは、必須ではないがファイルシステム内のファイルに対応してもよい。プログラムは、他のプログラムまたはデータを保持するファイルの一部、たとえばマークアップ言語文書内に記憶された1つまたは複数のスクリプトの中に、当該のプログラム専用の単一のファイル内に、または複数の協調ファイル、たとえば1つまたは複数のモジュール、サブプログラム、もしくはコードの部分を記憶するファイル内に記憶されることが可能である。コンピュータプログラムは、1つのコンピュータ上で、または1つの場所に配置され、もしくは複数の場所にわたって分散され、データ通信ネットワークによって相互接続される複数のコンピュータ上で実行されるように導入することが可能である。
【0064】
本明細書で説明されるプロセスおよび論理フローは、入力データに対して演算し、出力を生成することによって機能を実施するために1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラム可能コンピュータによって実施されることが可能である。プロセスおよび論理フローはまた、専用論理回路、たとえばFPGAまたはASICによって、あるいは専用論理回路と1つまたは複数のプログラムされたコンピュータの組合せによっても実施されることが可能である。
【0065】
コンピュータプログラムの実行に適したコンピュータは、汎用もしくは専用マイクロプロセッサまたはその両方、あるいは任意の他の種類の中央演算処理装置に基づくことができる。一般には、中央演算処理装置は、読取り専用メモリもしくはランダムアクセスメモリまたはその両方から命令およびデータを受信する。コンピュータの不可欠な要素は、命令を実施または実行するための中央演算処理装置と、命令およびデータを記憶するための1つまたは複数のメモリデバイスである。中央演算処理装置およびメモリは、専用論理回路によって補足され、または専用論理回路内に組み込まれることができる。一般には、コンピュータはまた、データを記憶するための1つまたは複数の大容量記憶デバイス、たとえば磁気ディスク、光磁気ディスク、または光ディスクをも含み、あるいはそれらからデータを受信し、もしくはそれらにデータを転送し、またはその両方を行うように動作可能に結合される。しかしながら、コンピュータはそのようなデバイスを有する必要はない。さらに、コンピュータは、別のデバイス、たとえばほんのいくつかの例を挙げれば、携帯電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)レシーバ、またはポータブル記憶デバイス、たとえばユニバーサルシリアルバス(USB)フラッシュドライブ内に組み込まれることができる。
【0066】
コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、例として半導体メモリデバイス、たとえばEPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、たとえば内部ハードディスクまたは取外し可能ディスク、光磁気ディスク、ならびにCD-ROMおよびDVD-ROMディスクを含むすべての形態の不揮発性メモリ、媒体、およびメモリデバイスを含む。
【0067】
ユーザとの対話を実現するために、本明細書で説明される主題の実施形態は、ユーザに情報を表示するためのディスプレイデバイス、たとえばCRT(陰極線管)もしくはLCD(液晶ディスプレイ)モニタと、ユーザがそれによってコンピュータに入力を与えることのできるキーボードおよびポインティングデバイス、たとえばマウスもしくはトラックボールとを有するコンピュータ上で実施されることも可能である。他の種類のデバイスもユーザとの対話を実現するために使用されることが可能であり、たとえばユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、音声フィードバック、または触覚フィードバックであることが可能であり、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態で受信されることができる。さらに、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、デバイスから文書を受信することによって、たとえばウェブブラウザから受信した要求に応答して、ユーザのデバイス上のウェブブラウザにウェブページを送信することによって、ユーザと対話することができる。さらに、コンピュータは、パーソナルデバイス、たとえばメッセージングアプリケーションを実行中のスマートフォンにテキストメッセージまたは他の形態のメッセージを送信し、返信としてユーザから応答メッセージを受信することによってユーザと対話することができる。
【0068】
機械学習モデルを実施するためのデータ処理装置はまた、たとえば機械学習トレーニングまたは生成の共通部分および計算集約的部分、すなわち推論、作業負荷を処理するための専用ハードウェアアクセラレータユニットをも含むことができる。
【0069】
機械学習モデルは、機械学習フレームワーク、たとえばTensorFlowフレームワーク、Microsoft Cognitive Toolkitフレームワーク、Apache Singaフレームワーク、またはApache MXNetフレームワークを使用して実施および導入することが可能である。
【0070】
本明細書で説明される主題の実施形態は、たとえばデータサーバとしてバックエンド構成要素を含む、またはミドルウェア構成要素、たとえばアプリケーションサーバを含む、またはフロントエンド構成要素、たとえばユーザが本明細書で説明される主題の実施とそれを通じて対話することのできるグラフィカルユーザインターフェース、ウェブブラウザ、もしくはappを有するクライアントコンピュータを含む、あるいは1つまたは複数のそのようなバックエンド、ミドルウェア、またはフロントエンド構成要素の任意の組合せを含むコンピューティングシステムで実施されることが可能である。システムの構成要素は、デジタルデータ通信の任意の形態または媒体、たとえば通信ネットワークによって相互接続されることが可能である。通信ネットワークの例は、ローカルエリアネットワーク(LAN)と、広域ネットワーク(WAN)、たとえばインターネットとを含む。
【0071】
コンピューティングシステムはクライアントおよびサーバを含むことができる。クライアントおよびサーバは、一般には互いに離れており、通常は通信ネットワークを通じて対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行中のコンピュータプログラムと、互いにクライアント-サーバ関係を有することによって生じる。いくつかの実施形態では、たとえばクライアントとして働くデバイスと対話するユーザにデータを表示し、ユーザからユーザ入力を受信する目的で、サーバは、データ、たとえばHTMLページをユーザデバイスに伝送する。ユーザデバイスで生成されるデータ、たとえばユーザ対話の結果が、デバイスからサーバで受信されることができる。
【0072】
本明細書は多くの特定の実施詳細を含むが、これらは、何らかの発明の範囲、または特許請求され得るものの範囲に関する限定と解釈されるべきではなく、むしろ特定の発明の特定の実施形態に特有のものである場合のある特徴の説明と解釈されるべきである。本明細書で別々の実施形態の文脈において説明されるいくつかの特徴はまた、単一の実施形態で組み合わせて実施されることが可能である。逆に、単一の実施形態の文脈で説明される様々な特徴はまた、複数の実施形態で別々に、または任意の適切なサブコンビネーションで実施されることが可能である。さらに、特徴が、いくつかの組合せで働くものとして上記で説明され、さらにはそのように最初に特許請求される場合があるが、特許請求される組合せからの1つまたは複数の特徴が、いくつかのケースでは、組合せから削除される場合があり、特許請求される組合せが、サブコンビネーションまたはサブコンビネーションの変形を対象とする場合がある。
【0073】
同様に、動作が特定の順序で図面に示され、特許請求の範囲に記載されるが、このことは、望ましい結果を達成するために、そのような動作が図示される特定の順序で、または順次的順序で実施されること、またはすべての図示される動作が実施されることを必要とすると理解されるべきではない。いくつかの環境では、マルチタスキングおよび並列処理が有利である場合がある。さらに、前述の実施形態での様々なシステムモジュールおよび構成要素の分離は、すべての実施形態でそのような分離を必要とすると理解されるべきではなく、記載のプログラム構成要素およびシステムは一般に、単一のソフトウェア製品内に共に一体化され、または複数のソフトウェア製品内にパッケージ化されることが可能であることを理解されたい。
【0074】
主題の特定の実施形態が説明された。他の実施形態は以下の特許請求の範囲内にある。たとえば、特許請求の範囲に記載の行為が、異なる順序で実施され、それでもなお望ましい結果を達成することができる。一例として、添付の図に示されるプロセスは、望ましい結果を達成するために、図示される特定の順序、または順次的順序を必ずしも必要とするわけではない。いくつかのケースでは、マルチタスキングおよび並列処理が有利である場合がある。
【符号の説明】
【0075】
204 ノード
100 イメージ予測システム
102 イメージ深度予測ニューラルネットワーク
104 イメージ生成サブシステム
106 イメージのシーケンス
108 将来のイメージ
112 イメージ
118 深度マップ
204 アップサンプリング再帰型サブニューラルネットワーク
206 フィードフォワード畳み込みニューラルネットワーク層
208 畳み込みLSTMニューラルネットワーク層
210 ダウンサンプリング済み出力
212 畳み込みLSTMニューラルネットワーク層
214 フィードフォワード畳み込みニューラルネットワーク層
図1
図2
図3
図4