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

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

▶ 三星電子株式会社の特許一覧

<>
  • 特許-映像の深度推定に関する方法及び装置 図1
  • 特許-映像の深度推定に関する方法及び装置 図2
  • 特許-映像の深度推定に関する方法及び装置 図3
  • 特許-映像の深度推定に関する方法及び装置 図4
  • 特許-映像の深度推定に関する方法及び装置 図5
  • 特許-映像の深度推定に関する方法及び装置 図6
  • 特許-映像の深度推定に関する方法及び装置 図7
  • 特許-映像の深度推定に関する方法及び装置 図8
  • 特許-映像の深度推定に関する方法及び装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-05-26
(45)【発行日】2025-06-03
(54)【発明の名称】映像の深度推定に関する方法及び装置
(51)【国際特許分類】
   G06T 7/55 20170101AFI20250527BHJP
   G06T 7/00 20170101ALI20250527BHJP
   H04N 13/271 20180101ALI20250527BHJP
   H04N 13/239 20180101ALI20250527BHJP
【FI】
G06T7/55
G06T7/00 350C
H04N13/271
H04N13/239
【請求項の数】 37
(21)【出願番号】P 2021086601
(22)【出願日】2021-05-24
(65)【公開番号】P2022027464
(43)【公開日】2022-02-10
【審査請求日】2024-04-17
(31)【優先権主張番号】10-2020-0094598
(32)【優先日】2020-07-29
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】390019839
【氏名又は名称】三星電子株式会社
【氏名又は名称原語表記】Samsung Electronics Co.,Ltd.
【住所又は居所原語表記】129,Samsung-ro,Yeongtong-gu,Suwon-si,Gyeonggi-do,Republic of Korea
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】金 勝彦
(72)【発明者】
【氏名】張 現盛
【審査官】橋爪 正樹
(56)【参考文献】
【文献】特表2019-526878(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00- 7/90
H04N 13/00-13/398
(57)【特許請求の範囲】
【請求項1】
入力映像を撮影するカメラと、
前記入力映像をニューラルネットワークに印加し、
前記入力映像内のピクセルの深度に関する第1統計値を取得し、
前記入力映像内の他のピクセルの深度に関する他の第1統計値を取得し、
前記入力映像内の前記ピクセルの深度に関する第2統計値を取得し、
前記入力映像内の前記他のピクセルの深度に関する他の第2統計値を取得し、
前記第1統計値及び前記第2統計値に基づいて、前記入力映像内の前記ピクセルの深度情報を推定し、
前記他の第1統計値及び前記他の第2統計値に基づいて、前記入力映像内の前記他のピクセルの深度情報を推定する、少なくとも1つのプロセッサと、
を含み、
前記第1統計値及び前記他の第1統計値は第1タイプの統計値に該当し、
前記第2統計値及び前記他の第2統計値は第2タイプの統計値に該当する、
神経網装置。
【請求項2】
前記プロセッサは、前記深度情報を推定するときに、前記第2統計値に基づいて前記第1統計値信頼度を決定し、前記他の第2統計値に基づいて前記他の第1統計値信頼度を決定する、請求項1に記載の神経網装置。
【請求項3】
前記第2統計値は、前記ピクセルの深度値に対する標準偏差又は分散に該当し、前記他の第2統計値は、前記他のピクセルの深度値に対する標準偏差又は分散に該当する、請求項2に記載の神経網装置。
【請求項4】
前記プロセッサは、
前記第2統計値が指示する信頼度に応じて選択的に前記第1統計値を補正し、
前記他の第2統計値が指示する信頼度に応じて選択的に前記他の第1統計値を補正する、請求項2に記載の神経網装置。
【請求項5】
前記プロセッサは、
前記第1統計値、前記第2統計値、前記他の第1統計値、及び前記他の第2統計値に基づいて参照映像から再構成された入力映像を生成し、
前記生成され、再構成された入力映像と前記入力映像の比較結果に基づいて、前記ニューラルネットワークの訓練を行う、請求項4に記載の神経網装置。
【請求項6】
前記第1統計値及び前記他の第1統計値は、前記ニューラルネットワークの出力チャネルのうち第1チャネルに対応する出力映像から取得され、
前記第2統計値及び前記他の第2統計値は、前記ニューラルネットワークの出力チャネルのうち第2チャネルに対応する出力映像から取得される、請求項1に記載の神経網装置。
【請求項7】
入力映像をニューラルネットワークに印加して取得された出力データの第1チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第1統計値を取得するステップと、
前記出力データの第2チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第2統計値を取得するステップと、
前記第1統計値及び前記第2統計値に基づいて、前記入力映像内の各ピクセルの深度情報を推定するステップと、
を含む、神経網方法。
【請求項8】
前記第1統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の平均を含み、
前記第2統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の分散又は標準偏差を含む、請求項7に記載の神経網方法。
【請求項9】
前記深度情報を推定するステップは、
前記第2統計値に基づいて、前記第1統計値の信頼度を決定するステップと、
前記各ピクセルの信頼度に基づいて、該当するピクセルの第1統計値を深度情報として採択するか否かを判断するステップと、
を含む、請求項7に記載の神経網方法。
【請求項10】
前記信頼度を決定するステップは、
前記第2統計値が大きいほど前記信頼度を低減するステップと、
前記第2統計値が小さいほど前記信頼度を増大させるステップと、
を含む、請求項9に記載の神経網方法。
【請求項11】
前記深度情報を推定するステップは、
前記第1統計値及び前記第2統計値による確率分布を取得するステップと、
前記確率分布に基づいて、前記第1統計値の補正のためのランダムサンプリングを行うステップと、
を含む、請求項7に記載の神経網方法。
【請求項12】
前記ランダムサンプリングを行うステップは、前記第2統計値に基づいて前記第1統計値の信頼度を決定し、前記決定された第1統計値の信頼性に基づいて選択的にランダムサンプリングを行うステップを含む、請求項11に記載の神経網方法。
【請求項13】
端末のカメラを用いて前記入力映像を撮影するステップと、
前記深度情報を用いて、前記端末及び前記入力映像に含まれている周辺オブジェクトに対応する3D位置情報を生成するステップと、
をさらに含む、請求項7に記載の神経網方法。
【請求項14】
前記入力映像は、単眼映像及びステレオ映像のうち少なくとも1つを含む、請求項7に記載の神経網方法。
【請求項15】
ハードウェアと結合して請求項7~14のいずれか一項に記載の方法を実行させるために媒体に格納されたコンピュータプログラム。
【請求項16】
入力映像をニューラルネットワークに印加し、前記入力映像内の各ピクセルごとに深度に関する第1統計値及び第2統計値を取得するステップと、
前記第1統計値及び前記第2統計値に基づいて、前記入力映像内の各ピクセルの深度に関する確率分布を取得するステップと、
前記入力映像内の各ピクセルの深度に関する確率分布及び前記入力映像の各ピクセルの予め決定された深度情報に基づく目的関数を用いて、前記ニューラルネットワークを学習するステップと、
を含む、神経網方法。
【請求項17】
前記第1統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の平均を含み、
前記第2統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の分散又は標準偏差を含む、請求項16に記載の神経網方法。
【請求項18】
前記入力映像内の各ピクセルごとに深度に関する第1統計値及び第2統計値を取得するステップは、
前記入力映像をニューラルネットワークに印加して取得された出力データの第1チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第1統計値を取得するステップと、
前記出力データの第2チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第2統計値を取得するステップと、
を含む、請求項16に記載の神経網方法。
【請求項19】
前記入力映像内の各ピクセルごとに深度に関する第1統計値及び第2統計値を取得するステップは、
前記入力映像から抽出された特徴マップを前記ニューラルネットワーク内の第1ネットワークに印加し、前記第1統計値を取得するステップと、
前記特徴マップを前記ニューラルネットワーク内の第2ネットワークに印加し、前記第2統計値を取得するステップと、
を含む、請求項16に記載の神経網方法。
【請求項20】
前記ニューラルネットワークを学習するステップは、
前記入力映像内の各ピクセルの深度に関する確率分布及び前記入力映像に対応する参照映像に基づいて、前記入力映像内の各ピクセルの深度情報を推定するステップと、
前記推定された入力映像の各ピクセルの深度情報及び前記入力映像の各ピクセルの前記予め決定された深度情報に基づく目的関数を用いて、前記ニューラルネットワークを学習するステップと、
を含む、請求項16に記載の神経網方法。
【請求項21】
前記参照映像は、
ステレオイメージと、
単眼動画及び前記単眼動画を撮影したカメラのポーズ情報と、
のうち少なくとも1つを含む、請求項20に記載の神経網方法。
【請求項22】
前記ニューラルネットワークを学習するステップは、前記入力映像に対応する参照映像及び前記入力映像に基づいて、前記入力映像の各ピクセルの前記予め決定された深度情報を取得するステップをさらに含む、請求項16に記載の神経網方法。
【請求項23】
前記ニューラルネットワークを学習するステップは、
前記入力映像に対応する参照映像及び前記入力映像内の各ピクセルの深度に関する確率分布に基づいて出力映像を合成するステップと、
前記入力映像及び前記出力映像に基づく目的関数を用いて、前記ニューラルネットワークを学習するステップと、
を含む、請求項16に記載の神経網方法。
【請求項24】
前記出力映像を合成するステップは、前記入力映像内の第1ピクセルの深度に関する確率分布及び前記入力映像に対応する参照映像内の第1ピクセルの深度に対応するピクセルに基づいて、前記第1ピクセルに対応する出力映像内の第2ピクセルを生成するステップを含む、請求項23に記載の神経網方法。
【請求項25】
前記第1ピクセルに対応する出力映像内の第2ピクセルを生成するステップは、前記第1ピクセルの深度に関する確率分布に基づいて、前記入力映像に対応する参照映像内の第1ピクセルの深度に対応するピクセルの値を加重和して前記第1ピクセルに対応する出力映像内の第2ピクセルを生成するステップを含む、請求項24に記載の神経網方法。
【請求項26】
前記ニューラルネットワークを学習するステップは、前記入力映像内の第1ピクセルと、前記第1ピクセルに対応する前記出力映像内の第2ピクセルとの差を最小化する目的関数に基づいて、前記ニューラルネットワークを学習するステップを含む、請求項23に記載の神経網方法。
【請求項27】
前記ニューラルネットワークを学習するステップは、
前記第1統計値及び前記第2統計値に基づいて、前記入力映像内の各ピクセルに対応するマスクを生成するステップと、
前記マスク及び前記目的関数を用いて、前記ニューラルネットワークを学習するステップと、
を含む、請求項16に記載の神経網方法。
【請求項28】
前記ニューラルネットワークを学習するステップは、前記目的関数を用いて、前記ニューラルネットワークのレイヤごとにパラメータを最適化するステップを含む、請求項16に記載の神経網方法。
【請求項29】
前記入力映像は、単眼映像及びステレオ映像のうち少なくとも1つを含む、請求項16に記載の神経網方法。
【請求項30】
ハードウェアと結合して請求項16~29のいずれか一項に記載の方法を実行させるために媒体に格納されたコンピュータプログラム。
【請求項31】
入力映像をニューラルネットワークに印加して取得された出力データの第1チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第1統計値を取得し、
前記出力データの第2チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第2統計値を取得し、
前記第1統計値及び前記第2統計値に基づいて、前記入力映像内の各ピクセルの深度情報を推定する少なくとも1つのプロセッサと、
を含む、神経網装置。
【請求項32】
前記第1統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の平均を含み、
前記第2統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の分散又は標準偏差を含む、請求項31に記載の神経網装置。
【請求項33】
前記プロセッサは、
前記深度情報を推定することにおいて、
前記第2統計値に基づいて前記第1統計値の信頼度を決定し、
前記各ピクセルの信頼度に基づいて、該当するピクセルの第1統計値を深度情報として採択するか否かを判断する、請求項31に記載の神経網装置。
【請求項34】
前記入力映像を撮影するカメラをさらに含み、
前記プロセッサは、前記深度情報を用いて、前記カメラの装置及び前記入力映像に含まれている周辺オブジェクトのうち少なくとも1つに対応する3D位置情報を生成する、請求項31に記載の神経網装置。
【請求項35】
前記入力映像は、撮影された単眼映像及び撮影されたステレオ映像のうち少なくとも1つを含む、請求項31に記載の神経網装置。
【請求項36】
前記プロセッサは、
学習データ内の第1映像内の各ピクセルの深度に関する確率分布に基づいて前記ニューラルネットワークを学習させ、
前記確率分布は、前記第1映像内の各ピクセルの深度に関する第1統計値及び第2統計値に基づいて取得される、請求項31に記載の神経網装置。
【請求項37】
前記プロセッサは、
前記第1統計値を取得することにおいて、前記第1チャネルから前記入力映像内の各ピクセルごとに前記第1統計値を取得し、
前記第2統計値を取得することにおいて、前記第2チャネルから前記入力映像内の各ピクセルごとに前記第2統計値を取得する、請求項31に記載の神経網装置。
【発明の詳細な説明】
【技術分野】
【0001】
映像の深度推定に関する方法及び装置に関する。
【背景技術】
【0002】
映像の深度情報は、カメラと物体との間の距離に関する情報であり、映像の深度情報を用いて場面内の幾何学的な構造(例えば、消失点の位置、水平線境界など)を類推する方法に対する関心が増大している。このような幾何学的な構造に対する理解は、オブジェクトの正確な位置を把握したり、オブジェクト間の3次元関係を把握したりするなど場面の理解に用いられ、3D映像の製造、ロボットビジョン(robot vision)、ヒューマンコンピュータインターフェース(human computer interface)などの様々な分野で活用されている。
【0003】
人は、両側の目で眺めた物体の変位である視差(parallax)を介して物体と遠距離又は近距離にあるかの程度を識別することができる。このような原理により、x軸(水平軸)上の位置が異なる2つのカメラで撮影したステレオ映像を用いて、2つの2次元映像の視差を介して映像内物体の深度情報を推定することができる。即ち、2つのカメラが互いに異なる位置で撮影した2つの映像間の幾何学的な関係により映像の深度情報を取得することができる。しかし、ステレオ映像を用いた深度推定技術は2つの映像を必要とし、2つの映像を整合するための演算が求められる。ここで、映像で深度情報を推定するための様々な技術が開発されており、1つのカメラで撮影した2次元の単眼映像から深度情報を推定するための技術が研究されている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
実施形態は、映像内の各ピクセルごとに深度に関する2以上の統計値を出力するように学習されたニューラルネットワークに基づいて、映像の深度を推定する技術を提供する。
【0005】
実施形態は、ニューラルネットワークの2以上の出力データが統計的な特性を有するように目的関数を設計し、映像内の各ピクセルごとに深度に関する2以上の統計値を出力するようにニューラルネットワークを学習する技術を提供する。
【課題を解決するための手段】
【0006】
一側面に係る神経網装置は、入力映像を撮影するカメラと、前記入力映像をニューラルネットワークに印加し、前記入力映像内のピクセルの深度に関する第1統計値を取得し、前記入力映像内の他のピクセルの深度に関する他の第1統計値を取得し、前記入力映像内の前記ピクセルの深度に関する第2統計値を取得し、前記入力映像内の前記他のピクセルの深度に関する他の第2統計値を取得し、前記第1統計値及び前記第2統計値に基づいて、前記入力映像内の前記ピクセルの深度情報を推定し、前記他の第1統計値及び前記他の第2統計値に基づいて、前記入力映像内の前記他のピクセルの深度情報を推定する、少なくとも1つのプロセッサとを含む。
【0007】
前記第1統計値及び前記他の第1統計値は第1タイプの統計値に該当してもよい。
【0008】
前記第2統計値及び前記他の第2統計値は第2タイプの統計値に該当してもよい。
【0009】
前記第2統計値は前記第1統計値に対する信頼度を指示し、前記他の第2統計値は前記他の第1統計値に対する信頼度を指示することができる。
【0010】
前記第2統計値は、前記ピクセルの深度値に対する標準偏差又は分散に該当し、前記他の第2統計値は、前記他のピクセルの深度値に対する標準偏差又は分散に該当するすることができる。
【0011】
前記プロセッサは、前記第2統計値が指示する信頼度に応じて選択的に前記第1統計値を補正し、記他の第2統計値が指示する信頼度に応じて選択的に前記他の第1統計値を補正することができる。
【0012】
前記プロセッサは、前記第1統計値、前記第2統計値、前記他の第1統計値、及び前記他の第2統計値に基づいて参照映像から再構成された入力映像を生成することができる。
【0013】
前記生成され、再構成された入力映像と前記入力映像の比較結果に基づいて、前記ニューラルネットワークの訓練を行うことができる。
【0014】
前記第1統計値及び前記他の第1統計値は、前記ニューラルネットワークの出力チャネルのうち第1チャネルに対応する出力映像から取得され、前記第2統計値及び前記他の第2統計値は、前記ニューラルネットワークの出力チャネルのうち第2チャネルに対応する出力映像から取得されることができる。
【0015】
一実施形態に係る神経網方法は、入力映像をニューラルネットワークに印加して取得された出力データの第1チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第1統計値を取得するステップと、前記出力データの第2チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第2統計値を取得するステップと、前記第1統計値及び前記第2統計値に基づいて、前記入力映像内の各ピクセルの深度情報を推定するステップとを含む。
【0016】
前記第1統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の平均を含み、前記第2統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の分散又は標準偏差を含むことができる。
【0017】
前記深度情報を推定するステップは、前記第2統計値に基づいて、前記第1統計値の信頼度を決定するステップと、前記各ピクセルの信頼度に基づいて、該当するピクセルの第1統計値を深度情報として採択するか否かを判断するステップとを含むことができる。
【0018】
前記信頼度を決定するステップは、前記第2統計値が大きいほど前記信頼度を低減するステップと、前記第2統計値が小さいほど前記信頼度を増大させるステップとを含むことができる。
【0019】
前記深度情報を推定するステップは、前記第1統計値及び前記第2統計値による確率分布を取得するステップと、前記確率分布に基づいて、前記第1統計値の補正のためのランダムサンプリングを行うステップとを含むことができる。
【0020】
前記ランダムサンプリングを行うステップは、前記第2統計値により指示される前記第1統計値の信頼度に基づいて選択的にランダムサンプリングを行うステップを含むことができる。
【0021】
一実施形態に係る神経網方法は、端末のカメラを用いて前記入力映像を撮影するステップと、前記深度情報を用いて、前記端末及び前記入力映像に含まれている周辺オブジェクトに対応する3D位置情報を生成するステップとをさらに含むことができる。
【0022】
前記入力映像は、単眼映像及びステレオ映像のうち少なくとも1つを含むことができる。
【0023】
一実施形態に係る神経網方法は、入力映像をニューラルネットワークに印加し、前記入力映像内の各ピクセルごとに深度に関する第1統計値及び第2統計値を取得するステップと、前記第1統計値及び前記第2統計値に基づいて、前記入力映像内の各ピクセルの深度に関する確率分布を取得するステップと、前記入力映像内の各ピクセルの深度に関する確率分布及び前記入力映像の各ピクセルの予め決定された深度情報に基づく目的関数を用いて、前記ニューラルネットワークを学習するステップとを含む。
【0024】
前記第1統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の平均を含み、前記第2統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の分散又は標準偏差を含むことができる。
【0025】
前記入力映像内の各ピクセルごとに深度に関する第1統計値及び第2統計値を取得するステップは、前記入力映像をニューラルネットワークに印加して取得された出力データの第1チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第1統計値を取得するステップと、前記出力データの第2チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第2統計値を取得するステップとを含むことができる。
【0026】
前記入力映像内の各ピクセルごとに深度に関する第1統計値及び第2統計値を取得するステップは、前記入力映像から抽出された特徴マップを前記ニューラルネットワーク内の第1ネットワークに印加し、前記第1統計値を取得するステップと、前記特徴マップを前記ニューラルネットワーク内の第2ネットワークに印加し、前記第2統計値を取得するステップとを含むことができる。
【0027】
前記ニューラルネットワークを学習するステップは、前記入力映像内の各ピクセルの深度に関する確率分布及び前記入力映像に対応する参照映像に基づいて、前記入力映像内の各ピクセルの深度情報を推定するステップと、前記推定された入力映像の各ピクセルの深度情報及び前記入力映像の各ピクセルの前記予め決定された深度情報に基づく目的関数を用いて、前記ニューラルネットワークを学習するステップとを含むことができる。
【0028】
前記参照映像は、ステレオイメージと、単眼動画及び前記単眼動画を撮影したカメラのポーズ(姿勢)情報のうち少なくとも1つを含むことができる。
【0029】
前記ニューラルネットワークを学習するステップは、前記入力映像に対応する参照映像及び前記入力映像に基づいて、前記入力映像の各ピクセルの前記予め決定された深度情報を取得するステップをさらに含むことができる。
【0030】
前記ニューラルネットワークを学習するステップは、前記入力映像に対応する参照映像及び前記入力映像内の各ピクセルの深度に関する確率分布に基づいて出力映像を合成するステップと、前記入力映像及び前記出力映像に基づく目的関数を用いて、前記ニューラルネットワークを学習するステップとを含むことができる。
【0031】
前記出力映像を合成するステップは、前記入力映像内の第1ピクセルの深度に関する確率分布及び前記入力映像に対応する参照映像内の第1ピクセルの深度に対応するピクセルに基づいて、前記第1ピクセルに対応する出力映像内の第2ピクセルを生成するステップを含むことができる。
【0032】
前記第1ピクセルに対応する出力映像内の第2ピクセルを生成するステップは、前記第1ピクセルの深度に関する確率分布に基づいて、前記入力映像に対応する参照映像内の第1ピクセルの深度に対応するピクセルの値を加重和して前記第1ピクセルに対応する出力映像内の第2ピクセルを生成するステップを含むことができる。
【0033】
前記ニューラルネットワークを学習するステップは、前記入力映像内の第1ピクセルと、前記第1ピクセルに対応する前記出力映像内の第2ピクセルとの差を最小化する目的関数に基づいて、前記ニューラルネットワークを学習するステップを含むことができる。
【0034】
前記ニューラルネットワークを学習するステップは、前記第1統計値及び前記第2統計値に基づいて、前記入力映像内の各ピクセルに対応するマスクを生成するステップと、前記マスク及び前記目的関数を用いて、前記ニューラルネットワークを学習するステップとを含むことができる。
【0035】
前記ニューラルネットワークを学習するステップは、前記目的関数を用いて、前記ニューラルネットワークのレイヤごとにパラメータを最適化するステップを含むことができる。
【0036】
前記入力映像は、単眼映像及びステレオ映像のうち少なくとも1つを含むことができる。
【0037】
一実施形態に係る神経網装置は、入力映像をニューラルネットワークに印加して取得された出力データの第1チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第1統計値を取得し、前記出力データの第2チャネルに基づいて、前記入力映像内の各ピクセルごとに深度に関する第2統計値を取得し、前記第1統計値及び前記第2統計値に基づいて、前記入力映像内の各ピクセルの深度情報を推定する少なくとも1つのプロセッサとを含む。
【0038】
前記第1統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の平均を含み、前記第2統計値は、前記入力映像内の各ピクセルの深度値の確率に基づく深度値の分散又は標準偏差を含むことができる。
【0039】
前記プロセッサは、前記深度情報を推定することにおいて、前記第2統計値に基づいて前記第1統計値の信頼度を決定し、前記各ピクセルの信頼度に基づいて、該当するピクセルの第1統計値を深度情報として採択するか否かを判断することができる。
【0040】
前記神経網装置は、前記入力映像を撮影するカメラをさらに含み、前記プロセッサは、前記深度情報を用いて、前記カメラの装置及び前記入力映像に含まれている周辺オブジェクトのうち少なくとも1つに対応する3D位置情報を生成することができる。
【0041】
前記入力映像は、撮影された単眼映像及び撮影されたステレオ映像のうち少なくとも1つを含むことができる。
【0042】
前記プロセッサは、学習データ内の第1映像内の各ピクセルの深度に関する確率分布に基づいて前記ニューラルネットワークを学習させ、前記確率分布は、前記第1映像内の各ピクセルの深度に関する第1統計値及び第2統計値に基づいて取得されることができる。
【0043】
前記プロセッサは、前記第1統計値を取得することにおいて、前記第1チャネルから前記入力映像内の各ピクセルごとに前記第1統計値を取得し、前記第2統計値を取得することにおいて、前記第2チャネルから前記入力映像内の各ピクセルごとに前記第2統計値を取得することができる。
【発明の効果】
【0044】
実施形態に係るニューラルネットワークから出力される2以上の統計値を推定モデルを用いた映像の深度推定及び推定モデル内ニューラルネットワークの学習過程に利用することで、深度推定の正確度向上及び学習効率向上の効果を有することができる。
【図面の簡単な説明】
【0045】
図1】一実施形態に係る映像の深度を推定するモデルを説明するための図である。
図2】一実施形態に係るニューラルネットワークの構造を例示した図である。
図3】一実施形態に係るニューラルネットワークの学習のための出力映像を生成する過程を示す図である。
図4】一実施形態に係る入力映像内のピクセルの深度に関する確率分布を示す図である。
図5】一実施形態に係るニューラルネットワークの出力データに基づいて、映像の深度情報を推定するモデルの構成を示す図である。
図6】一実施形態に係る入力映像を推定モデルに入力して取得された出力映像を示す図である。
図7】一実施形態に係る映像の深度を推定するモデルの推論過程を示す図である。
図8】一実施形態に係る映像の深度を推定するモデルの学習過程を示す図である。
図9】一実施形態に係る映像の深度を推定する装置の構造を示す図である。
【発明を実施するための形態】
【0046】
下記で説明する実施形態は様々な変更が加えられ得る。特許出願の範囲はこのような実施形態によって制限も限定もされない。各図面に提示した同じ参照符号は同じ部材を示す。本明細書で開示する特定の構造的又は機能的な説明は単に実施形態を説明するための目的として例示したものであり、実施形態は様々な異なる形態で実施され、本発明は本明細書で説明した実施形態に限定されるものではない。
【0047】
本明細書で用いる用語は、単に特定の実施形態を説明するために用いられるものであって、本発明を限定しようとする意図はない。単数の表現は、文脈上、明白に異なる意味をもたない限り複数の表現を含む。本明細書において、「含む」又は「有する」等の用語は明細書上に記載した特徴、数字、ステップ、動作、構成要素、部品、又はこれらを組み合わせたものが存在することを示すものであって、一つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品、又はこれらを組み合わせたものなどの存在又は付加の可能性を予め排除しないものとして理解しなければならない。
【0048】
異なる定義がされない限り、技術的であるか又は科学的な用語を含むここで用いる全ての用語は、本発明が属する技術分野で通常の知識を有する者によって一般的に理解されるものと同じ意味を有する。一般的に用いられる予め定義された用語は、関連技術の文脈上で有する意味と一致する意味を有するものと解釈すべきであって、本明細書で明白に定義しない限り、理想的又は過度に形式的な意味として解釈されることはない。
【0049】
また、図面を参照して説明する際に、図面符号に拘わらず同じ構成要素は同じ参照符号を付与し、これに対する重複する説明は省略する。実施形態の説明において関連する公知技術に対する具体的な説明が本発明の要旨を不要に曖昧にすると判断される場合、その詳細な説明は省略する。
【0050】
また、実施例の構成要素の説明において、第1,第2,A,B,(a),(b)などの用語を使用する場合がある。このような用語は、その構成要素を他の構成要素と区別するためのものであって、その用語によって該当の構成要素の本質や順番又は順序などが限定されることはない。いずれかの構成要素が他の構成要素に「連結」,「結合」又は「接続」されたと記載される場合、その構成要素はその他の構成要素に直接的に連結又は接続され得るが、各構成要素の間に更なる構成要素が「連結」,「結合」又は「接続」され得ると理解されなければならないのであろう。
(深度推定モデル)
図1は、一実施形態に係る映像の深度(depth)を推定するモデルを説明するための図である。
【0051】
図1を参照すると、一実施形態に係る映像の深度を推定するモデル(以下、推定モデルと称する)110は、例えば、ニューラルネットワーク(neural network)などの予め学習されたマシーンラーニングモデルを用いて、入力映像101から映像に含まれているピクセルの深度に関する複数のタイプの情報、例えば、第1タイプの第1統計値102、第2タイプの第2統計値103を出力する学習モデルを含む。以下の実施形態では、学習モデルの一例として、ニューラルネットワークを例にして説明する。これは説明の便宜のためのもので、学習モデルの構成をニューラルネットワークに制限されることはない。
【0052】
一実施形態に係る入力映像101は、カメラで撮影した2次元のイメージ(又は動画)であって、単眼(monocular)カメラで撮影した単眼映像を含んでもよい。単眼映像は、1つのカメラで撮影した1つの映像を意味する。即ち、一実施形態に係る推定モデル110は、単眼映像が入力されて映像内の各ピクセルに対応する深度情報を出力するモデルである。
【0053】
映像の深度は、映像を撮影したカメラと映像内オブジェクトの距離に基づく値であり、映像の深度は、映像のピクセル単位で示すことができる。例えば、映像の深度は、映像に含まれているピクセルごとに深度に関する値を含む深度マップ(depth map)に示すことができる。深度マップは、観察視点から物体表面との距離に関する情報が含まれた1つの映像又は映像の一チャネルを意味する。例えば、深度マップは、映像内の各ピクセルに対応する深度に関する値を格納した、映像内のピクセルの個数に対応する大きさのデータ構造であり、映像内の各ピクセルに対応する深度に関する値をグレースケール(grayscale)などでイメージ化した映像である。ステレオシステムにおいて映像の深度は、右側カメラで撮影した映像(以下、右側映像と称する)と左側カメラで撮影した映像(以下、左側映像と称する)に対応する点の位置差であるディスパリティ(disparity)に基づいて推定される。即ち、ステレオシステムで映像の深度情報はディスパリティ情報を含んでもよく、映像内のピクセルの深度値は、対応するディスパリティ値のように表現されてもよい。また、ステレオシステムで映像内のピクセルの深度に関する確率は、対応するディスパリティに関する確率である。
【0054】
再び図1を参照すると、一実施形態に係るニューラルネットワークの出力である映像に含まれているピクセルの深度に関する情報102,103は、映像内のピクセルそれぞれが有する深度値の確率に基づく統計値を含む。例えば、第1タイプの統計値は、各ピクセルの深度値に関する平均を含んでもよく、第1タイプの統計値は、分散(又は、標準偏差)を含んでもよい。一実施形態に係るニューラルネットワークの出力の1つである第1統計値102は、各ピクセルの推定された深度値に関する情報を指示し、第1統計値と更なる出力である第2統計値103は、各ピクセルの深度に関する推定の信頼度に関する情報を指示する。例えば、特定ピクセルに対応して出力された第1統計値が、該当ピクセルの深度値の確率に基づく深度値の平均である場合、第1統計値は、該当ピクセルの推定された深度値を指示することができる。例えば、特定ピクセルに対応して出力された第2統計値が、該当ピクセルの深度値の確率に基づく深度値の分散である場合、第2統計値は、該当ピクセルの深度値に対する推定の信頼度に関する情報を指示することができる。この場合、分散が大きいほど低い信頼度を指示し、分散が小さいほど高い信頼度を指示する。
【0055】
一実施形態によると、ニューラルネットワークのそれぞれの出力は、映像内の各ピクセルに対応する統計値をグレースケールなどでイメージ化した映像である。言い換えれば、映像内のピクセルの第1統計値に対応するグレースケールイメージ及び映像内のピクセルの第2統計値に対応するグレースケールイメージがニューラルネットワークの出力映像に生成されることができる。
【0056】
一実施形態に係る推定モデル110は、入力映像から映像内の各ピクセルに対応する深度の確率的特性を推定するニューラルネットワークに実現することができる。一実施形態によると、ニューラルネットワークは、入力層、少なくとも1つの隠れ層、及び出力層を含んでもよい。ニューラルネットワークの各レイヤは、少なくとも1つのノードを含み、複数のノード間の関係は非線形に定義される。一実施形態に係るニューラルネットワークは、DNN(deep neural network)、CNN(convolutional neural network)、RNN(recurrent neural network)などに設計され、様々な人工神経網構造を含んでもよい。一実施形態に係るニューラルネットワークは2以上の確率的特性を出力し、そのためにそれぞれの確率的特性を出力する2以上の出力チャネルを含んでもよい。
【0057】
以下、一実施形態に係るニューラルネットワークはDNNを例にして説明する。
【0058】
図2は、一実施形態に係るニューラルネットワークの構造を例示した図である。図2は、砂時計(hourglass)形態のU-net基盤に設計されたニューラルネットワークの構造を示す。図2に示されたニューラルネットワークは、一実施形態に係るニューラルネットワークの構造の一例示に過ぎず、一実施形態に係るニューラルネットワークの構造がこれに限定されず、様々な構造に設計されてもよい。
【0059】
図2を参照すると、一実施形態に係るニューラルネットワークは、入力映像から特徴マップ201を抽出するための少なくとも1つの接続されたレイヤで構成され、特徴マップ201から第1統計値202を取得するための第1ネットワーク210、及び第2統計値203を取得するための第2ネットワーク220を含んでいる。例えば、抽出された特徴マップ201と入力接続を含む第1ネットワーク210及び第2ネットワーク220は、互いに並列的に動作してもよい。図2は、推定モデルのニューラルネットワークで第1統計値及び第2統計値を出力するために、第1ネットワーク及び第2ネットワークを含んでいる場合を示すが、一実施形態に係るニューラルネットワークは、出力チャネルが2つのチャネルを含むように設計されてもよい。即ち、一実施形態に係る出力チャネルは、第1統計値に関する第1チャネル及び第2統計値に関する第2チャネルを含むように設計されることができる。例えば、例示された第1ネットワーク210及び第2ネットワーク220のいずれか1つは、第1統計値202を出力するチャネル及び第2統計値203を出力する他のチャネルを有する多重チャネルを出力するように構成されてもよい。
【0060】
図2を参照すると、一実施形態に係るニューラルネットワークに含まれたレイヤは特定機能に関し、機能に応じて区分されてもよい。例えば、ニューラルネットワークのDSレイヤは、特徴抽出部(Feature extractor)、Res-block(residual blocks又はResNet architecture)は、特徴分析部(Feature analyzer)、USレイヤは深度生成部(Depth generator)に分類される。但し、レイヤを機能に応じて区分することは説明の便宜のためのものであり、一実施形態に係るニューラルネットワークの構造を限定することはない。
【0061】
一実施形態に係るニューラルネットワークは、2以上の出力チャネルそれぞれが適切な意味を有する値を推定するように学習される。一実施形態に係るニューラルネットワークの最適化対象である目的関数(objective function)において、各チャネルの意味が反映されるようにし各出力チャネルを学習されることができる。例えば、ニューラルネットワークの目的関数による結果が正確度に関する閾値以上になるまで、目的関数に基づくニューラルネットワークの学習が行われる。
【0062】
以下、一実施形態に係るニューラルネットワークの出力は、第1統計値及び第2統計値に関する2つのチャネルを含み、第1統計値は平均であり、第2統計値は分散である場合について例を挙げて説明する。
【0063】
一実施形態に係る映像の深度推定のための学習方法は、入力映像をニューラルネットワークに印加し、入力映像内の各ピクセルごとに深度に関する第1統計値及び第2統計値を取得するステップと、第1統計値及び第2統計値に基づいて、入力映像内の各ピクセルの深度に関する確率分布を取得するステップと、入力映像内の各ピクセルの深度に関する確率分布及び入力映像の各ピクセルの実際の深度情報(又は、ラベリングされた深度情報)に基づく目的関数を用いて、ニューラルネットワークを学習するステップとを含む。
【0064】
一実施形態に係るニューラルネットワークの学習のための学習データは、入力映像及び入力映像の実際の深度情報を含んでもよい。一実施形態によると、入力映像の実際の深度情報は、入力映像に対応する参照映像から取得される。一実施形態に係る参照映像は、入力映像の実際の深度情報が分かる入力映像に対応する映像であり、例えば、入力映像がステレオシステムにおいて左側カメラで撮影した映像である場合、右側カメラで撮影した映像が参照映像になり、カメラの撮影情報(例えば、カメラポーズ)が含まれている動画が参照映像となる。言い換えれば、一実施形態に係る学習データは、入力映像及び入力映像の実際の深度情報、又は入力映像及び入力映像の実際の深度情報が分かる参照映像を含んでもよい。
【0065】
一実施形態に係るニューラルネットワークを学習する方法は、学習データが格納されたステレオ映像データベース又は動画データベースを活用して、ニューラルネットワークで推定された深度情報と入力映像の実際の深度情報との差を最小化するグラジエント(gradient)を算出し、最適化の過程を行うことができる。一実施形態によると、入力映像の実際の深度情報及び推定された深度情報に基づいて、予め設計された目的関数を用いてニューラルネットワークの損失(Loss)が生じ、生成された損失に基づいてグラジエントが生成される。生成されたグラジエントは、ニューラルネットワークのパラメータを最適化して学習させるために採用され、最急降下法などによりニューラルネットワークが学習されることができる。
【0066】
一実施形態によると、推定された深度情報と入力映像の実際の深度情報との差は、ニューラルネットワークで推定された深度情報及び参照映像に基づいて生成された出力映像及び入力映像の差を含んでもよい。即ち、参照映像及び出力映像に基づいてニューラルネットワークの損失が生成されることができる。一実施形態によると、参照映像及び出力映像に基づく損失は、入力映像から抽出された特徴及び参照映像から抽出された特徴に基づいて生成された損失を含むことができる。
【0067】
図3は、一実施形態に係るニューラルネットワークの学習のための出力映像を生成する過程を示す図である。
【0068】
図3を参照すると、学習データが格納されたステレオ映像データベース(stereo image DB)において左側カメラで撮影したイメージを入力映像(input left image)とし、右側カメラで撮影したイメージを参照映像(right image)とし、ニューラルネットワーク(DNN)を学習させることができる。一実施形態によると、左側カメラで撮影したイメージが入力映像として用いられる場合、右側カメラで撮影したイメージが参照映像として用いられてもよい。
【0069】
一実施形態によると、入力映像(input left image)をニューラルネットワーク(DNN)に印加し、入力映像内の各ピクセルごとに深度に関する第1統計値(mean)及び第2統計値(std.)が取得される。一実施形態に係るイメージジェネレータ(image generator)は、入力映像内の各ピクセルの深度に関する確率分布及び参照映像に基づいて、出力映像を生成することができる。ここで、入力映像内の各ピクセルの深度に関する確率分布は、確率変数(例えば、該当ピクセルの深度値)がどのような値を有するかに対する確率の分布として、第1統計値(mean)及び第2統計値(std.)に基づいて決定される。
【0070】
図4は、一実施形態に係る入力映像内のピクセルの深度に関する確率分布を示す図である。より具体的に、図4は、入力映像内(x、y)ピクセルの深度値の平均μ及び分散σによるガウス確率分布を示す。ここで、x、yピクセルの深度値の平均μ及び分散σは、ニューラルネットワークによって出力された統計値である。即ち、一実施形態に係る確率分布は、ニューラルネットワークによって出力されたピクセルの深度に関する統計値に基づいて取得される。一実施形態に係るニューラルネットワークにより出力される統計値は様々であり、一実施形態に係る統計値に基づいて取得される確率分布も様々である。例えば、一実施形態に係る確率分布は、深度の平均及び分散に基づいて取得されたガウス分布(Gaussian distribution)、ラプラス分布(Laplace distribution)などを含んでもよい。
【0071】
再び図3を参照すると、一実施形態に係る出力映像(reconstructed left image)は、入力映像内の各ピクセルの深度に関する確率分布に基づいて、各深度に対応する参照映像内のピクセル値の平均を算出することにより生成される。言い換えれば、出力映像内の第2ピクセルは、入力映像内の第1ピクセルの深度に関する確率分布に基づいて、入力映像に対応する参照映像内の第1ピクセルの深度に対応するピクセルの値を加重和して生成される。
【0072】
例えば、出力映像は次の数式(1)によって合成される。
【0073】
【数1】
ここで、
【0074】
【数2】
は出力映像内のピクセル(x、y)のピクセル値、J(x-d、y)は入力映像内のピクセル(x、y)の各深度に対応する参照映像内のピクセル値、Px、y(d)は入力映像内のピクセル(x、y)のディスパリティがdである確率を意味する。上述したように、ピクセル(x、y)のディスパリティはピクセル(x、y)の深度に対応する。即ち、一実施形態によると、入力映像内の特定ピクセルで推定された平均ディスパリティ(又は、深度)を基準にして、ディスパリティに関する確率のガウス分布により近所ディスパリティのピクセル値を加重和(weighted sum)することで、対応する出力映像内のピクセルを生成する。一実施形態によると、Px、y(d)は、ディスパリティに関するガウス分布によって数式(2)のように算出されることができる。
【0075】
【数3】
ここで、μ(x、y)は、ニューラルネットワークの出力のうちの1つである入力映像内のピクセル(x、y)のディスパリティの平均、σ(x、y)は、ニューラルネットワークの出力の1つである入力映像内のピクセル(x、y)のディスパリティの標準偏差を意味する。
【0076】
一実施形態に係るニューラルネットワークの損失は、予め定義された目的関数に基づいて生成される。一実施形態によると、予め定義された目的関数は様々に設計され、例えば、L2損失関数、交差エントロピー(cross entropy)目的関数、ソフトマックス(softmax)活性関数などを含んでもよい。
【0077】
再び図3を参照すると、一実施形態に係るニューラルネットワークは、出力映像(reconstructed left image)及び入力映像(input left image)に基づいて設計された目的関数を用いて学習されることができる。例えば、推定した深度の統計特性である平均と分散で、ガウス分布を表現して出力映像を生成する場合、一実施形態に係るニューラルネットワーク学習のための最適化した対象となる目的関数は、次の数式(3)のように設計されることができる。
【0078】
【数4】
ここで、I(x、y)は、入力映像内のピクセル(x、y)のピクセル値、
【0079】
【数5】
は出力映像内のピクセル(x、y)のピクセル値を意味する。
【0080】
即ち、一実施形態に係るニューラルネットワークは、ピクセル単位で深度に関する統計的特性を示す2以上の出力データを全て反映する目的関数に基づいて学習されることができる。
【0081】
一実施形態に係るニューラルネットワークの2以上の出力は、映像の深度情報を推定するために用いられる。一実施形態によると、推定の信頼度を指示する第2統計値は、第1統計値を使用するか否かを決定する基準となる。より具体的に、一実施形態に係る推定モデルは、第2統計値が指示する信頼度情報を予め決定された基準により判断し、ピクセル単位で第1統計値を推定された深度に使用するか否かを決定する。また、一実施形態によると、推定の信頼度を指示する第2統計値は、第1統計値の補正の有無を決定する基準となる。例えば、第2統計値によれば、信頼度が低いと判断される場合、一実施形態に係る推定モデルは、ピクセル単位で第1統計値に加えて処理を行ってもよい。この場合、第1統計値の追加的な処理は、第2統計値に基づいて第1統計値を補正する処理を含んでもよい。例えば、一実施形態に係る推定モデルは、第1統計値である平均及び第2統計値である分散による確率分布を取得し、確率分布に応じてランダムサンプリングを行うことで第1統計値を補正することができる。
【0082】
図5は、一実施形態に係るニューラルネットワークの出力データに基づいて、映像の深度情報を推定するモデルの構成を示す図である。
【0083】
図5を参照すると、一実施形態に係る推定モデル510は、第1統計値502及び第2統計値503を含むニューラルネットワーク520の出力データを加工し、映像の深度情報504を推定する加工モデル530を含むことができる。一実施形態によると、加工モデル530は、ピクセル単位で推定された深度値に関する情報を指示する第1統計値502、及びピクセル単位で推定の信頼度を指示する第2統計値503に基づいて、入力映像501の深度情報504を出力するモデルを含んでもよい。一実施形態によると、加工モデル530は、第2統計値に基づいて第1統計値の信頼度を決定し、決定された信頼度に基づいて第1統計値をピクセル単位で選別するフィルタの役割を果たす。更なるの実施形態によると、加工モデル530は、信頼度に基づいてピクセル単位で第1統計値を補正する処理を行ってもよい。
【0084】
第2統計値が各ピクセルごとに深度値の分散である場合、特定ピクセルの分散が予め決定された基準値よりも大きい場合、該当ピクセルの推定信頼度は低く評価される。即ち、一実施形態に係る加工モデル530は、第2統計値が大きいほど信頼度を減少させ、第2統計値が小さいほど信頼度を増大させることで、第1統計値の信頼度を決定することができる。一実施形態によると、特定ピクセルに対応する第1統計値の信頼度が低く評価された場合、映像の深度を推定することおいて、特定ピクセルに対応して推定された深度情報は排除されたり、補正されてもよい。一実施形態に係る加工モデル530は、第1統計値である平均及び第2統計値である分散による確率分布を取得し、取得された確率分布に応じてランダムサンプリングを行うことで、第1統計値を補正することができる。又は、特定ピクセルの信頼度が低く評価された場合、該当ピクセルの周辺ピクセルの深度値を参照して補正されてもよい。
【0085】
一実施形態に係るニューラルネットワークの2以上の出力データは、推定モデルの学習過程において、学習の効率及び正確性を高めるために用いられる。一実施形態に係る深度推定モデルの学習過程において、第2統計値によって特定ピクセルに対応する第1統計値を学習データとして使用しないか、又は、選別的に後処理を適用した後学習データに達することで、深度推定のエラーによる連鎖的な学習の失敗を防止することができる。例えば、ニューラルネットワークの出力結果に応じて、ピクセルごとに深度の確率情報を加工することで、出力映像と入力映像との間の差をピクセルごとに選別的にバックプロパゲーション(back-propagation)することができる。出力映像と入力映像との間の差は、例えば、前述した左側映像と再構成された左側イメージ(ここで、再構成は、ニューラルネットワークの学習過程で参照映像内の右側映像に基づいて再構成することを意味する)間の差を含んでもよい。
【0086】
又は、一実施形態に係るニューラルネットワークの学習過程で、第2統計値に基づいてピクセル単位で学習するためにマスクが生成されることができる。一実施形態によると、第2統計値に基づいて、各ピクセルに対応する2進マスクを生成し、ニューラルネットワーク内のカーネルにマスクを適用し、一部のピクセルに対応するカーネルを不活性化することで学習エポックを行ってもよい。又は、一実施形態によると、第2統計値に基づいて各ピクセルに対応する加重値マスクを生成し、ニューラルネットワーク内のカーネルに加重値マスクを適用し、各ピクセルに対応するカーネルに重みを付与することで学習エポックを行ってもよい。
【0087】
また、一実施形態に係るニューラルネットワークの学習過程で、第1統計値及び第2統計値に基づいて、入力映像内のオブジェクトが他のオブジェクトによって遮られる確率が入力映像のピクセルごとに算出されることができる。一実施形態によると、ピクセルごとに算出された他のオブジェクトによって遮られる確率に基づいて、各ピクセルに対応する2進マスク又は各ピクセルごとに0から1の間の値を有する加重値マスクが生成されてもよい。一実施形態によると、生成されたマスクをニューラルネットワークの損失に適用することで、学習の正確度を高めることができる。
【0088】
例えば、ニューラルネットワークの再構成損失(reconstruction loss)を測定するために、学習データに格納されているステレオ映像データベースで左側カメラで撮影した入力映像内のk番目のピクセルに対応するオブジェクトを再構成する過程(又は、合成する過程)において、k番目のピクセルの位置を基準としてディスパリティだけ離隔した左側カメラで撮影した参照映像のピクセル値を有してもよい。ここで、右側カメラと左側カメラは離隔しており、右側カメラで撮影した映像と左側カメラで撮影した映像との間にはディスパリティが存在する。ここで、参照映像を撮影したカメラが向かっている方向に複数のオブジェクトが重なっていれば、複数のオブジェクトのうち後ろに位置しているオブジェクトは、前に位置するオブジェクトによって遮られ、誤った損失伝播を引き起こすことがある。ここで、各ピクセルに対応するオブジェクトが他のオブジェクトによって遮られる確率を算出してマスクを生成し、生成されたマスクをニューラルネットワークの損失に適用することで、学習の正確度を高めることができる。
【0089】
入力映像の各ピクセルの第1統計値及び第2統計値により取得した分布を用いて、次の数式(4)を介して各ピクセルに対応するオブジェクトが他のオブジェクトにより遮られる確率を算出することができる。
【0090】
【数6】
数式(4)は、学習データに格納されているステレオ映像データベースにおいて、左側カメラで撮影した映像を入力映像に入れ、入力映像のディスパリティを推定したものを仮定している。数式(4)において、kは、ピクセルのインデックス、vはピクセルkに対応するオブジェクトが遮られていないオブジェクトである確率(visibility)、zはディスパリティ、Jは検索範囲(search range)、jと
【0091】
【数7】
は可変数(dummy variable)を示す。ピクセルkに対応するオブジェクトが遮られていないオブジェクトの確率であるvは、各ピクセルに対応するオブジェクトが他のオブジェクトによって遮られる確率に反対となる値であり、vの値が1である場合、ピクセルkに対応するオブジェクトは、他のオブジェクトに遮られていないことを指示し、vの値が0である場合、ピクセルkに対応するオブジェクトは、他のオブジェクトに遮られていることを指示する。
【0092】
即ち、数式(4)は、k番目のピクセルとk+j番目のピクセルが参照映像の同じ位置の値を参照しない確率を算出したものであり、v値が高ければ、k番目のピクセル値は、充分に再構成することのできる条件であると言える。数式(4)を介して算出された確率を活用して2進形態のマスクでマップを生成してもよく、0から1の間の値を有する確率値を加重値として活用してもよい。
【0093】
即ち、一実施形態に係るニューラルネットワークで出力された複数のデータは、ニューラルネットワークの学習効率及び性能を向上させるために用いられ、第1統計値の正確な推定に寄与することができる。
【0094】
また、一実施形態に係る第1統計値及び第2統計値を含むニューラルネットワークの出力は、映像の深度情報を推定及び使用する技術に様々に適用されてもよい。例えば、ニューラルネットワークの出力にピクセルの推定された深度値に関する情報を指示する第1統計値、及び各ピクセルの第1統計値に対する推定の信頼度に関する情報を指示する第2統計値が含まれている場合、映像の深度情報を入力として使用する様々なアルゴリズムに深度値及び信頼度情報を共に伝達することで、アルゴリズムの全体的な性能向上に寄与することができる。
【0095】
図6は、一実施形態に係る入力映像を推定モデルに入力して取得された出力映像を示す図である。
【0096】
図6を参照すると、一実施形態に係る出力映像は、入力映像内の各ピクセルの深度値(又は、ディスパリティ)の平均をイメージ化した映像及び深度値(又は、ディスパリティ)の標準偏差をイメージ化した映像が含まれている。深度値の標準偏差をイメージ化した映像を通じて、推定された深度値の平均の信頼度を評価することができる。深度値の標準偏差に関する出力映像が明るいほど、標準偏差が大きいことを意味し、標準偏差が大きいほど、信頼度は低いことを意味する。また、深度値の標準偏差に関する出力映像が暗いほど、深度値に関する標準偏差が小さいことを意味し、標準偏差が小さいほど、信頼度は大きいことを意味する。
【0097】
図6を参照すると、映像に表示された領域は通常、深度推定の難しい領域であって、深度値の標準偏差に関する出力映像で表示された領域が明るく示されることが確認される。例えば、通常、図6において、標準偏差に関する映像の明るい領域は、推定された深度値の信頼度が低いことを意味し、言い換えれば、通常の接近方法で該当領域の深度値を推定することが難しいことを意味する。
【0098】
一方、図6に示すシーン(scene)#1~#3の深度値の平均に関する映像(Estimated disparity mean)を参照すれば、深度値の標準偏差に関する映像(Estimated disparity std.)で明るい領域、即ち、深度推定の難しい領域(例えば、complex region、fine-grained texture region、object with unknown bottom-line)で推定された深度値が実際の深度値をよく反映していることが分かる。
【0099】
即ち、図6において表示された領域を参照すれば、ニューラルネットワークで出力された第2統計値を推定に関する信頼度情報として用いることが分かる。従って、ニューラルネットワークで2以上の統計値を推定モデルを用いた映像の深度推定、及び推定モデル内のニューラルネットワークの学習過程に利用することで、深度推定における正確度の向上及び学習効率の向上といった効果を達成することができる。
【0100】
図7は、一実施形態に係る映像の深度を推定するモデルの推論過程を示す図である。
【0101】
図7を参照すると、一実施形態に係る推定モデルは、ニューラルネットワーク(DNN)を含んでもよく、入力映像は、単眼映像(monocular input image)を含んでもよい。図7には図示していないが、一実施形態に係る推定モデルは、互いに異なる位置で同じオブジェクトを撮影した2以上の映像であるステレオ(stereo)映像を入力映像として入力されることができる。この場合、ステレオ映像内のステレオ整合が行われていない少なくとも1つのピクセル、又はステレオ整合が正確に行われていない少なくとも1つのピクセルに対して、深度情報を取得するために一実施形態に係る推定モデルが用いられてもよい。
【0102】
図7を参照すると、一実施形態に係る推定モデルは、入力映像をDNN内の少なくとも1つのレイヤを含む特徴抽出部に印加することで、特徴マップを抽出することができる。抽出された特徴マップは、DNN内の特徴分析部(Feature analyzer)を構成している少なくとも1つのレイヤを通過し、深度に関する確率推定に適切な形態に変換及び加工される。抽出された特徴マップ及び/又は変換及び加工された特徴マップは、DNN内の少なくとも1つのレイヤを含む深度確率生成部(Depth probability generator)に印加され、最終的に映像内の各ピクセルの深度に関する第1統計値(Mean of depth probability distribution)及び第2統計値(Variance of depth probability distribution)が出力される。図7は、特徴抽出部、特徴分析部、及び深度確率生成部をDNNの構成として例示したが、特徴抽出部、特徴分析部、及び深度確率生成部はそれぞれ異なるネットワークで構成されてもよく、複数のネットワーク構造が結合された構造で構成されてもよい。
【0103】
一実施形態に係る推定モデルは、第1統計値及び第2統計値に基づいて映像の深度情報を推定することができる。一実施形態に係る映像の深度情報は、映像の3D情報に関する分野に様々に用いてもよい。例えば、映像の深度情報は、3D映像を生成したり、入力映像を撮影した端末及び入力映像に含まれている周辺オブジェクトのうち少なくとも1つに対応する3D位置情報を生成するために用いてもよい。
【0104】
図8は、一実施形態に係る映像の深度を推定するモデルの学習過程を示す図である。
【0105】
図8を参照すると、一実施形態に係る推定モデルの学習のための学習データは、ステレオイメージを含んでもよい。図8には図示していないが、一実施形態に係る学習データは単眼動画を含んでもよい。一実施形態に係る参照映像が単眼動画を含む場合、動画を撮影したカメラの撮影位置、撮影角度などカメラのポーズ(姿勢)情報をさらに含んでもよい。言い換えれば、学習データに単眼動画が含まれている場合、単眼動画を構成しているフレームイメージの深度情報を取得するための情報が学習データにさらに含まれてもよい。
【0106】
図8を参照すると、一実施形態に係る推定モデルは、学習データに基づいて入力映像から深度に関する第1統計値及び第2統計値を出力するよう学習されることができる。
【0107】
図9は、一実施形態に係る映像の深度を推定する装置の構造を示す図である。
【0108】
図9を参照すると、一実施形態に係る映像の深度を推定する装置は、上述した推定モデルを用いて入力映像に関する深度情報を出力することができる。一実施形態に係る推定装置は、深度推定モデルを用いて、入力映像に対する深度を推定する少なくとも1つのプロセッサを含んでもよい。一実施形態に係る深度推定モデルは、上述したようにニューラルネットワークを用いて、入力映像の深度情報を推定するモデルを含んでもよい。
【0109】
即ち、一実施形態に係る映像の深度を推定するモデルは、チップ(chip)形態に具現化され、映像の3D情報を使用する装置に搭載されて映像の深度推定を行うことができる。例えば、先進の形態で具現化された推定モデルは、自動車用単眼深度センサ(monocular depth sensor)に搭載され、自動車で撮影される単眼映像から推定された深度情報に基づいて、自動車周辺のオブジェクトとの3D位置情報を生成するなど、自動車走行に関するサービスを提供するために用いられることができる。他の例として、チップ形態に具現化された推定モデルは、AR glassesに搭載され、2次元の入力映像から推定された深度情報を用いて3D位置情報を生成するなど、ARに関するサービスを提供するために用いられることができる。
【0110】
図2に示すように、一実施形態に係る深度推定モデルはDNNに設計されてもよく、DNNに含まれている複数のレイヤは、DNNで実行される特徴抽出、特徴分析、深度確率生成などの機能に関わっている。図7図9に示されているDNNの構成は、DNNに含まれた複数のレイヤが機能に応じて区分される例を示すものであり、DNNの構成が必ずこれに限定されることはない。
【0111】
実施形態に係る方法は、様々なコンピュータ手段を介して実施されるプログラム命令の形態で具現化され、コンピュータ読み取り可能な記録媒体に記録される。記録媒体は、プログラム命令、データファイル、データ構造などを単独又は組み合せて含む。記録媒体及びプログラム命令は、本発明の目的のために特別に設計して構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例として、ハードディスク、フロッピー(登録商標)ディスク及び磁気テープのような磁気媒体、CD-ROM、DVDのような光記録媒体、フロプティカルディスクのような磁気-光媒体、及びROM、RAM、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置を含む。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行される高級言語コードを含む。ハードウェア装置は、本発明に示す動作を実行するために1つ以上のソフトウェアモジュールとして作動するように構成してもよく、その逆も同様である。
【0112】
ソフトウェアは、コンピュータプログラム、コード、命令、又はそのうちの一つ以上の組合せを含み、希望の通りに動作するよう処理装置を構成したり、独立的又は結合的に処理装置を命令することができる。ソフトウェア及び/又はデータは、処理装置によって解釈されたり処理装置に命令又はデータを提供するために、いずれかの類型の機械、構成要素、物理的装置、仮想装置、コンピュータ格納媒体又は装置、又は送信される信号波に永久的又は一時的に具体化することができる。ソフトウェアはネットワークに連結されたコンピュータシステム上に分散され、分散した方法で格納されたり実行され得る。ソフトウェア及びデータは一つ以上のコンピュータで読出し可能な記録媒体に格納され得る。
【0113】
上述したように実施形態をたとえ限定された図面によって説明したが、当技術分野で通常の知識を有する者であれば、上記の説明に基づいて様々な技術的な修正及び変形を適用することができる。例えば、説明された技術が説明された方法と異なる順で実行されるし、及び/又は説明されたシステム、構造、装置、回路などの構成要素が説明された方法と異なる形態で結合又は組み合わせられてもよいし、他の構成要素又は均等物によって置き換え又は置換されたとしても適切な結果を達成することができる。
【0114】
したがって、他の具現化、他の実施形態及び特許請求の範囲と均等なものも後述する請求範囲の範囲に属する。
【符号の説明】
【0115】
101:入力映像
102:第1統計値
103:第2統計値
110:推定モデル
201:特徴マップ
202:第1統計値
203:第2統計値
210:第1ネットワーク
220:第2ネットワーク
501:入力映像
502:第1統計値
503:第2統計値
504:深度情報
510:推定モデル
520:ニューラルネットワーク
530:加工モデル
図1
図2
図3
図4
図5
図6
図7
図8
図9