TW202109458A - 利用深度提示之深度預估模型之自我監督訓練 - Google Patents

利用深度提示之深度預估模型之自我監督訓練 Download PDF

Info

Publication number
TW202109458A
TW202109458A TW109114835A TW109114835A TW202109458A TW 202109458 A TW202109458 A TW 202109458A TW 109114835 A TW109114835 A TW 109114835A TW 109114835 A TW109114835 A TW 109114835A TW 202109458 A TW202109458 A TW 202109458A
Authority
TW
Taiwan
Prior art keywords
image
depth
prompt
loss
value
Prior art date
Application number
TW109114835A
Other languages
English (en)
Other versions
TWI839513B (zh
Inventor
詹姆斯 華森
麥克 佛曼
葛布雷歐 J 布羅斯托
達尼亞 特穆罕貝托
Original Assignee
美商尼安蒂克公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商尼安蒂克公司 filed Critical 美商尼安蒂克公司
Publication of TW202109458A publication Critical patent/TW202109458A/zh
Application granted granted Critical
Publication of TWI839513B publication Critical patent/TWI839513B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/261Image signal generators with monoscopic-to-stereoscopic image conversion
    • H04N13/268Image signal generators with monoscopic-to-stereoscopic image conversion based on depth image-based rendering [DIBR]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • G06T7/85Stereo camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Abstract

本發明揭示一種用於使用深度提示訓練一深度預估模型之方法。針對每一影像對:針對一第一影像,藉由該深度預估模型判定一深度預測且獲得一深度提示;第一次基於該深度預測將第二影像投影至該第一影像上以產生一合成圖框且再次基於該深度提示將該第二影像投影至該第一影像上以產生一提示合成圖框;針對該合成圖框計算一主要損失;針對該提示合成圖框計算一提示損失;及針對該影像對基於一每像素判定計算一總體損失,其中若該提示損失小於該主要損失,則該總體損失包含該主要損失及深度預測與深度提示之間的一監督深度損失。藉由最小化該等影像對之該等總體損失而訓練該深度預估模型。

Description

利用深度提示之深度預估模型之自我監督訓練
所闡述之標的物一般而言係關於自一單色彩輸入影像預估一深度圖,且特定而言係關於訓練一機器學習模型以預估利用由另一模型提供之深度提示之深度圖。
深度感測在導航及場景理解兩個方面具有應用。許多方法利用經訓練模型或網路來自一單色彩輸入影像判定一深度圖。存在利用不同種類之訓練資料來訓練深度預估系統之數種方法。可利用一偵測與測距系統訓練一深度預估系統以為一環境中之物件與由一相機對同一場景拍攝之影像成對地建立一實況深度(亦即,無線電偵測與測距(RADAR)、光偵測與測距(LIDAR)等)。儘管偵測與測距系統可提供物件之深度之一實況,但不斷地使用偵測與測距系統來感測許多不同環境之深度可在時間及資源方面係一昂貴嘗試。此外,偵測與測距系統不能夠判定某些物件之深度,該等物件可具有使其不能由偵測與測距系統偵測之材料性質(例如,反射性物件)。
訓練一深度預估系統之另一方法使用同一場景之立體影像對。在單一時刻擷取立體影像對取決於利用聚焦於同一場景但相距某一距離定位之兩個相機。深度預估系統透過自立體影像中之一者投影至立體影像對中之另一立體影像而操作。為了自一個影像投影至另一影像,除了一像差(深度之一經縮放倒數)及兩個影像之間的一姿態(亦即,用於拍攝立體影像對之兩個相機之視角之間的一變換矩陣)之外,深度預估系統亦考量當前立體影像。在最小化一投影相比於其所擷取立體影像之光度重構誤差時,深度預估系統可判定場景之深度。
其他方法使用一不斷變化的場景之單眼視訊資料來訓練一深度預估系統。深度預估系統藉由自單眼視訊資料中之一個時間影像投影至一後續時間影像同時最小化一光度重構誤差而進行訓練。然而,此等系統可能不準確地考量自一個時間影像至另一時間影像進入視野或離開視野之物件,此導致深度圖中及深度圖之邊界周圍之假影。此外,傳統系統當前輸入低解析度影像以判定深度圖,然後對深度圖進行增加取樣,此易於發生深度增加取樣假影。
可利用各種度量(諸如L1距離、L2距離、結構相異度(DSSIM)距離或此等距離之組合)量測光度誤差。自我監督訓練之一缺點係找出最佳深度值通常係困難的,尤其在針對多個深度值而言光度損失可係低的情況下。因此,訓練係更困難的,此可導致較低準確度預測。
本發明闡述利用深度提示訓練一深度預估模型作為對模型之當前預測之一替代方案。若一像素之一深度提示相比於來自經訓練模型的像素之深度輸出產生一較佳再投影(例如,一較低光度重構誤差),則利用深度預測及該提示(例如,與來自模型之輸出組合地)計算像素對一損失之一貢獻。若深度提示不產生一較佳再投影,則訓練忽略深度提示且依據來自模型之深度輸出判定像素對損失之貢獻。訓練程序根據損失(例如,利用反向傳播)更新模型。利用此等深度提示可相對於僅利用習用訓練程序而改良訓練程序之效能。深度提示可自以替代方式訓練之深度預估模型(例如,藉由外部系統訓練)獲得。
一訓練系統依賴於具有訓練影像資料之自我監督訓練演算法。與監督訓練相反,自我監督訓練不需要實況深度。可將訓練影像資料分割成若干影像對。影像對可係由雙眼相機系統擷取之真實立體影像對及/或來自由具有至少一個相機之一系統擷取之單眼視訊資料之時間上相異的圖框之偽立體影像對。訓練系統輸入來自一影像對之一第一訓練影像以判定第一訓練影像之一初始深度預測。訓練系統至少基於以下各項將影像對之第二訓練影像投影至影像對中之第一訓練影像上以產生一合成圖框:第一訓練影像之深度預測及兩個訓練影像之間的一姿態。訓練系統基於第一訓練影像之一深度提示而非深度預測將第二訓練影像第二次投影至第一訓練影像上以產生一提示合成圖框。姿態可依據用於拍攝訓練影像之相機之已知位置(例如,一雙眼相機系統中之相機之一已知放置)而知曉。在其他方面,例如在使用其中時間上毗鄰的圖框構成一偽立體影像對之單眼視訊資料之例項中,可藉由一姿態預估模型或一深度-姿態混合模型預估姿態。
投影程序之準確度至少基於第一訓練影像之深度預測之準確度。如此,可根據一合成圖框與其對應訓練影像之間的光度重構誤差定義一主要損失。可根據一提示合成圖框與對應訓練影像之間的光度重構誤差定義一提示損失。一影像對之一總體損失將跨越所有像素之損失貢獻加總。如上文所闡述,訓練系統可在一每像素基礎上比較主要損失與提示損失以判定彼像素對總體損失之貢獻。若一像素之主要損失值小於或等於提示損失值,則訓練系統忽略來自深度提示之提示損失且對總體損失之貢獻係彼像素之主要損失值。若像素之提示損失值小於主要損失值,則對總體損失之貢獻基於主要損失值及彼像素之深度預測值與彼像素之深度提示之間的一監督深度損失。在一項實施例中,該貢獻係主要損失值之一總和,且監督深度損失係在彼像素處模型之深度預測與深度提示之間的一絕對差。
在使用立體影像資料進行訓練之實施例中,利用深度提示來在一立體影像對中將每一立體影像投影至另一立體影像上以產生提示合成圖框。深度提示可自一以替代方式訓練之深度預估模型(例如,經組態以輸入一立體影像且輸出一單個深度圖之一立體深度模型)獲得。深度提示亦可自一同步定位與映射(SLAM)模組獲得,該模組經組態以同時產生映圖及至少基於影像資料及某些定位資料(例如,全域座標、加速度資料、里程計資料等)在所產生映圖內定位一用戶端裝置。
在使用單眼視訊資料進行訓練之實施例中,可在將一個時間影像投影至另一時間影像上期間利用深度提示及/或姿態提示來產生提示合成圖框。深度提示可如上文所闡述地獲得。姿態提示可自一以替代方式訓練之姿態預估模型獲得。
相關申請案之交叉參考
本申請案主張2019年5月2日提出申請之美國臨時申請案第62/842,531號之權益,該臨時申請案出於所有目的以其全文引用方式併入。 例示性基於位置之平行現實遊戲系統
在包含一虛擬世界地理環境中之增強現實內容之一平行現實遊戲之內容脈絡中闡述各種實施例,該虛擬世界地理環境與現實世界地理環境之至少一部分平行,使得玩家在現實世界中之移動及動作會影響在虛擬世界中之動作且反之亦然。利用本文中所提供之揭示內容,熟習此項技術者將理解,所闡述之標的物適用於其中依據影像資料判定深度資訊係合意的其他情況。另外,基於電腦之系統之固有靈活性允許系統之組件之間及當中之任務及功能性之各種各樣的可能組態、組合及劃分。例如,根據本發明之態樣之系統及方法可利用一單個運算裝置或跨越多個運算裝置(例如,連接於一電腦網路中)來實施。
圖1圖解說明根據一或多項實施例之一經網路連線運算環境100。經網路連線運算環境100提供在具有與現實世界平行之一地理環境之一虛擬世界中玩家之互動。特定而言,現實世界中之一地理區域可直接連結或映射至虛擬世界中之一對應區域。一玩家可藉由在現實世界中移動至各種地理位置而在虛擬世界中到處移動。例如,可追蹤且利用一玩家在現實世界中之位置來更新玩家在虛擬世界中之位置。通常,藉由找出玩家透過其與虛擬世界互動之一用戶端裝置110之位置且假設玩家處於相同(或大致相同)位置而判定玩家在現實世界中之位置。舉例而言,在各種實施例中,若玩家在現實世界中之位置係在與一虛擬元素在虛擬世界中之虛擬位置對應之現實世界位置之一臨限距離(例如,10米、20米等)內,則玩家可與該虛擬元素互動。為了方便,參考「玩家之位置」闡述各種實施例,但熟習此項技術者將瞭解,此等參考可指玩家之用戶端裝置110之位置。
現在參考圖2,其繪示根據一項實施例與現實世界200平行之一虛擬世界210之一概念圖,現實世界200可充當一平行現實遊戲之玩家之遊戲台。如所圖解說明,虛擬世界210可包含與現實世界200之地理環境平行之一地理環境。特定而言,界定現實世界200中之一地理區域或空間之一座標範圍映射至界定虛擬世界210中之一虛擬空間之一對應座標範圍。現實世界200中之座標範圍可與一城鎮、鄰域、城市、校園、場所、國家、大陸、整個地球或其他地理區域相關聯。地理座標範圍中之每一地理座標映射至虛擬世界中之一虛擬空間中之一對應座標。
一玩家在虛擬世界210中之位置對應於玩家在現實世界200中之位置。例如,在現實世界200中位於位置212處之玩家A具有虛擬世界210中之一對應位置222。類似地,在現實世界中位於位置214處之玩家B具有虛擬世界中之一對應位置224。當玩家在現實世界中之一地理座標範圍中到處移動時,玩家亦在界定虛擬世界210中之虛擬空間之座標範圍中到處移動。特定而言,與玩家所攜載之一行動運算裝置相關聯之一定位系統(例如,一GPS系統)可用於在一玩家沿現實世界中之地理座標範圍導航時追蹤玩家之位置。利用與玩家在現實世界200中之位置相關聯之資料來更新玩家在界定虛擬世界210中之虛擬空間之對應座標範圍中之位置。以此方式,在無需登記或週期性地更新現實世界200中之特定離散位置處之位置資訊之情況下,玩家可藉由簡單地在現實世界200中之對應地理座標範圍中行進而沿著界定虛擬世界210中之虛擬空間之座標範圍中之一連續軌跡導航。
基於位置之遊戲可包含要求玩家行進至散佈在虛擬世界中之各種虛擬位置處之各種虛擬元素及/或虛擬物件及/或與其等互動之複數個遊戲目標。一玩家可藉由在現實世界中行進至虛擬元素或物件之對應位置而行進至此等虛擬位置。例如,一定位系統可連續地追蹤玩家之位置,使得在玩家在現實世界連續地導航時,玩家亦在平行虛擬世界連續地導航。然後,玩家可在特定位置處與各種虛擬元素及/或物件互動以達成或執行一或多個遊戲目標。
舉例而言,一遊戲目標使玩家與位於虛擬世界210中之各種虛擬位置處之虛擬元素230互動。此等虛擬元素230可連結至現實世界200中之地標、地理位置或物件240。現實世界地標或物件240可係藝術品、紀念碑、建築物、企業、圖書館、博物館或其他適合現實世界地標或物件。互動包含擷取某些虛擬物項、宣告對某些虛擬物項之所有權、利用某些虛擬物項、花費某些虛擬貨幣等。為了擷取此等虛擬元素230,一玩家必須在現實世界中行進至連結至虛擬元素230之地標或地理位置240且必須在虛擬世界210中執行與虛擬元素230之任何必要互動。舉例而言,圖2之玩家A可必須行進至現實世界200中之一地標240以便與和彼特定地標240連結之一虛擬元素230互動或擷取虛擬元素230。與虛擬元素230之互動可需要現實世界中之動作,諸如拍攝一照片及/或驗證、獲得或擷取關於與虛擬元素230相關聯之地標或物件240之其他資訊。
遊戲目標可要求玩家使用玩家在基於位置之遊戲中收集之一或多個虛擬物項。例如,玩家可在虛擬世界210行進以搜尋可用於完成遊戲目標之虛擬物項(例如,武器、生物、動力源或其他物項)。可藉由行進至現實世界200中之不同位置或藉由在虛擬世界210或現實世界200中完成各種動作而找到或收集此等虛擬物項。在圖2中所展示之實例中,一玩家利用虛擬物項232來擷取一或多個虛擬元素230。特定而言,一玩家可將虛擬物項232部署在虛擬世界210中接近虛擬元素230或在虛擬元素230內之位置處。以此方式部署一或多個虛擬物項232可導致特定玩家或特定玩家之團隊/幫派擷取虛擬元素230。
在一項特定實施方案中,作為平行現實遊戲之一部分,一玩家可必須收集虛擬能量。如圖2中所繪示,虛擬能量250可散佈在虛擬世界210中之不同位置處。一玩家可藉由在實際世界200中行進至虛擬能量250之對應位置而收集虛擬能量250。虛擬能量250可用於為虛擬物項提供動力及/或執行遊戲中之各種遊戲目標。失去所有虛擬能量250之一玩家可與遊戲斷開連接。
根據本發明之態樣,平行現實遊戲可係其中遊戲中之每一參與者共用同一虛擬世界之一大型多玩家基於位置之遊戲。玩家可劃分成單獨團隊或幫派且可一起合作以達成一或多個遊戲目標,諸如擷取一虛擬元素或宣告對虛擬元素之所有權。以此方式,平行現實遊戲可本質上係鼓勵玩家之間在遊戲內合作之一社交遊戲。來自對立團隊之玩家可在平行現實遊戲期間彼此對抗(或有時協作以達成相互的目標)。一玩家可利用虛擬物項來攻擊或阻止對立團隊之玩家之前進。在某些情形中,鼓勵玩家聚集在現實世界位置以進行平行現實遊戲中之合作或互動事件。在此等情形中,遊戲伺服器設法確保玩家確實實體地存在且並非係欺騙的。
平行現實遊戲可具有各種特徵來增強及鼓勵平行現實遊戲內之遊戲玩法。例如,玩家可累積可貫穿遊戲使用(例如,購買遊戲物項、兌換其他物項、製作物項等)之一虛擬貨幣或另一虛擬獎勵(例如,虛擬權杖、虛擬點數、虛擬材料資源等)。玩家可隨著玩家完成一或多個遊戲目標且在遊戲內獲得經驗而晉升各種等級。在某些實施例中,玩家可透過遊戲中提供之一或多個通信介面彼此通信。玩家亦可獲得可用於在遊戲內完成遊戲目標之經增強「動力」或虛擬物項。利用本文中所提供之揭示內容,熟習此項技術者應理解,在不背離本發明之範疇之情況下,平行現實遊戲可包含各種其他遊戲特徵。
往回參考圖1,經網路連線運算環境100利用一用戶端-伺服器架構,其中一遊戲伺服器120經由一網路105與一用戶端裝置110通信以為用戶端裝置110處之玩家提供一平行現實遊戲。經網路連線運算環境100亦可包含其他外部系統,諸如贊助商/廣告商系統或企業系統。儘管圖1中圖解說明僅一個用戶端裝置110,但任何數目個用戶端110或其他外部系統可經由網路105連接至遊戲伺服器120。此外,經網路連線運算環境100可含有不同或額外元件,且功能性可以不同於下文所闡述之一方式分散於用戶端裝置110與伺服器120之間的。
一用戶端裝置110可係可由一玩家用來與遊戲伺服器120介接之任何可攜式運算裝置。例如,一用戶端裝置110可係一無線裝置、一個人數位助理(PDA)、可攜式遊戲裝置、蜂巢式電話、智慧型電話、平板電腦、導航系統、手持式GPS系統、可穿戴式運算裝置、具有一或多個處理器之一顯示器或其他此類裝置。在另一例項中,用戶端裝置110包含一習用電腦系統,諸如一桌上型或一膝上型電腦。並且,用戶端裝置110可係具有一運算裝置之一運載工具。簡言之,一用戶端裝置110可係可使得一玩家能夠與遊戲伺服器120互動之任何電腦裝置或系統。作為一運算裝置,用戶端裝置110可包含一或多個處理器及一或多個電腦可讀儲存媒體。電腦可讀儲存媒體可儲存致使處理器執行操作之指令。用戶端裝置110較佳地係可隨一玩家容易地攜載或以其他方式運輸之一可攜式運算裝置,諸如一智慧型電話或平板電腦。
用戶端裝置110與遊戲伺服器120通信,以為遊戲伺服器120提供一實體環境之感覺資料。用戶端裝置110包含一相機總成125,相機總成125擷取用戶端裝置110所在之實體環境中之一場景之兩個維度之影像資料。用戶端裝置110亦包含係例如藉由遊戲伺服器120訓練之一機器學習模型之一深度預估模型130。在圖1中所展示之實施例中,每一用戶端裝置110包含軟體組件,諸如一遊戲模組135及一定位模組140。用戶端裝置110可包含用於自一玩家接收資訊及/或將資訊提供至玩家之各種其他輸入/輸出裝置。實例輸入/輸出裝置包含一顯示螢幕、一觸控螢幕、一觸控墊、資料輸入鍵、揚聲器及適合於語音辨識之一麥克風。用戶端裝置110亦可包含用於記錄來自用戶端裝置110之資料之其他各種感測器,包含但不限於移動感測器、加速度計、陀螺儀、其他慣性量測單元(IMU)、氣壓計、定位系統、溫度計、光感測器等。用戶端裝置110可進一步包含用於經由網路105提供通信之一網路介面。一網路介面可包含用於與一或多個網路介接之任何適合組件,包含例如傳輸器、接收器、埠、控制器、天線或其他適合組件。
相機總成125擷取用戶端裝置110所在之環境之一場景之影像資料。相機總成125可使用在不同擷取速率下具有不同色彩擷取範圍之各種不同光感測器。相機總成125可含有一廣角透鏡或一長鏡頭。相機總成125可經組態以擷取單獨影像或視訊作為影像資料。另外,相機總成125之定向可在相機總成125瞄準水平面時平行於地面。相機總成125擷取影像資料且與用戶端裝置110上之運算裝置共用影像資料。影像資料可附加有描述包含感覺資料(例如,溫度、環境之亮度)或擷取資料(例如,曝光、溫暖、快門速度、焦距、擷取時間等)的影像資料之其他細節之後設資料。相機總成125可包含可擷取影像資料之一或多個相機。在一項例項中,相機總成125包括一個相機且經組態以擷取單眼影像資料。在另一例項中,相機總成125包括兩個相機且經組態以擷取立體影像資料。在各種其他實施方案中,相機總成125包括各自經組態以擷取影像資料之複數個相機。
深度預估模型130接收一場景之一輸入影像且基於輸入影像輸出場景之一深度圖。深度預估模型130係藉由一深度預估訓練系統170來訓練且可藉由深度預估訓練系統170來更新或調整,下文更詳細地論述深度預估訓練系統170。所接收輸入影像可係由相機總成125之一相機或來自另一用戶端裝置110之另一相機擷取。在某些實施例中,所接收輸入影像具有規定輸入影像之本質之附加至影像的後設資料。一影像之本質係指在擷取影像之一時間相機之一或多個幾何性質,例如,在擷取影像時相機之焦距、相機之主點偏移、相機之偏斜等。使用該等本質,深度預估模型130可產生考量該等本質之一本質矩陣。在某些實施例中,深度預估模型130判定輸入影像是否係令人滿意的,例如,高於一臨限解析度。若否,則深度預估模型130可執行一或多個預處理技術以確保輸入影像係令人滿意的,例如,在判定場景之深度圖之前對輸入影像進行增加取樣以達到一所要解析度。其他實例條件包含一對比度、一細微度、一色彩標度、影像之另一特性等。深度預估模型130輸入影像(在接收到時或在預處理之後)且判定場景之一深度圖。
使用一或多個機器學習演算法實施深度預估模型130。可用於深度預估模型130之機器學習演算法包含神經網路、決策樹、隨機森林、迴歸因子、叢集化、其之其他衍生演算法或其某一組合。在一或多項實施例中,將深度預估模型130結構化為包括複數個層之一神經網路,該複數個層至少包含經組態以接收輸入影像之一輸入層及經組態以輸出深度預測之一輸出層。每一層包括眾多節點,每一節點由前一層中之一或多個節點之一經加權組合定義。由深度預估訓練系統170在訓練期間判定定義在輸入層之後的節點之權重。在一種實例架構中,深度預估模型130可包括:一第一組層,其稱作一姿態編碼器,該姿態編碼器經組態以自輸入影像減小一維度以便判定抽象深度特徵;及一第二組層,其稱作一姿態解碼器,該姿態解碼器經組態以自深度特徵增加維度以便輸出與輸入影像相同之維度之一深度圖。
遊戲模組135為一玩家提供參與平行現實遊戲之一介面。遊戲伺服器120經由網路105將遊戲資料傳輸至用戶端裝置110以供用戶端裝置110處之遊戲模組135用來為遠離遊戲伺服器120之位置處之玩家提供遊戲之本機版本。遊戲伺服器120可包含用於經由網路105提供通信之一網路介面。一網路介面可包含用於與一或多個網路介接之任何適合組件,包含例如傳輸器、接收器、埠、控制器、天線或其他適合組件。
由用戶端裝置110執行之遊戲模組135提供一玩家與平行現實遊戲之間的一介面。遊戲模組135可在與用戶端裝置110相關聯之一顯示裝置上呈現一使用者介面,該使用者介面顯示與遊戲相關聯之一虛擬世界(例如,再現虛擬世界之影像)且允許一使用者在虛擬世界中互動以執行各種遊戲目標。在某些其他實施例中,遊戲模組135呈現使用來自平行現實遊戲之虛擬元素增強的來自現實世界之影像資料(例如,由相機總成125擷取)。在此等實施例中,遊戲模組135可根據自用戶端裝置110之其他組件接收之其他資訊產生虛擬內容及/或調整虛擬內容。舉例而言,遊戲模組135可根據在影像資料中擷取之場景之一深度圖(例如,由深度預估模型130判定)調整待在使用者介面上顯示之一虛擬物件。
遊戲模組135亦可控制各種其他輸出以在不需要一玩家觀看一顯示螢幕之情況下允許玩家與遊戲互動。例如,遊戲模組135可控制允許玩家在不觀看顯示螢幕之情況下玩遊戲之各種音訊、振動或其他通知。遊戲模組135可存取自遊戲伺服器120接收之遊戲資料以為使用者提供遊戲之一準確圖示。遊戲模組135可接收及處理玩家輸入且經由網路105提供對遊戲伺服器120之更新。遊戲模組135亦可產生及/或調整待由用戶端裝置110顯示之遊戲內容。舉例而言,遊戲模組135可基於深度資訊(例如,如由深度預估模型130判定)產生一虛擬元素。
定位模組140可係用於監測用戶端裝置110之位置之任何裝置或電路。舉例而言,定位模組140可藉由利用一衛星導航定位系統(例如,一GPS系統、一伽利略定位系統、全球導航衛星系統(GLONASS)、北斗衛星導航及定位系統)、一慣性導航系統、一推測航行系統、基於IP位址、藉由利用三角量測及/或至蜂巢式塔或Wi-Fi熱點之接近度及/或用於判定位置之其他適合技術而判定實際或相對位置。定位模組140可進一步包含可幫助準確地定位用戶端裝置110位置之各種其他感測器。
當玩家在現實世界中帶著用戶端裝置110到處移動時,定位模組140追蹤玩家之位置且將玩家位置資訊提供至遊戲模組135。遊戲模組135基於玩家在現實世界中之實際位置更新與遊戲相關聯之虛擬世界中之玩家位置。因此,一玩家可簡單地藉由在現實世界中攜載或運輸用戶端裝置110而與虛擬世界互動。特定而言,玩家在虛擬世界中之位置可對應於玩家在現實世界中之位置。遊戲模組135可經由網路105將玩家位置資訊提供至遊戲伺服器120。作為回應,遊戲伺服器120可制定各種技術來驗證用戶端裝置110位置以防止欺騙者欺騙用戶端裝置110位置。應理解,與一玩家相關聯之位置資訊僅在被授予使用權限之情況下在玩家已被通知玩家之位置資訊將被存取及將在遊戲之內容脈絡中如何使用位置資訊(例如,用來更新虛擬世界中之玩家位置)之後被使用。另外,與玩家相關聯之任何位置資訊將以保護玩家隱私之一方式被儲存及維持。
遊戲伺服器120可係任何運算裝置及可包含一或多個處理器及一或多個電腦可讀儲存媒體。電腦可讀儲存媒體可儲存致使處理器執行操作之指令。遊戲伺服器120可包含一遊戲資料庫115或可與遊戲資料庫115通信。遊戲資料庫115儲存待經由網路105服務於用戶端110或提供至用戶端110之在平行現實遊戲中利用之遊戲資料。
儲存於遊戲資料庫115中之遊戲資料可包含:(1)與平行現實遊戲中之虛擬世界相關聯之資料(例如,用於在一顯示裝置上再現虛擬世界之影像資料、虛擬世界中之位置之地理座標等);(2)與平行現實遊戲之玩家相關聯之資料(例如,玩家設定檔,包含但不限於玩家資訊、玩家經驗等級、玩家貨幣、虛擬世界/現實世界中之當前玩家位置、玩家能量等級、玩家偏好、團隊資訊、幫派資訊等);(3)與遊戲目標相關聯之資料(例如,與當前遊戲目標相關聯之資料、遊戲目標之狀態、過去遊戲目標、未來遊戲目標、所要遊戲目標等);(4)與虛擬世界中之虛擬元素相關聯之資料(例如,虛擬元素之位置、虛擬元素之類型、與虛擬元素相關聯之遊戲目標;虛擬元素之對應實際世界位置資訊;虛擬元素之行為、虛擬元素之相關性等);(5)與連結至虛擬世界元素之現實世界物件、地標、位置相關聯之資料(例如,現實世界物件/地標之位置、現實世界物件/地標之描述、連結至現實世界物件之虛擬元素之相關性等);(6)遊戲狀態(例如,當前玩家數目、當前遊戲目標狀態、玩家排行榜等);(7)與玩家動作/輸入相關聯之資料(例如,當前玩家位置、過去玩家位置、玩家移動、玩家輸入、玩家查詢、玩家通信等);及(8)在平行現實遊戲之實施期間利用、關聯或獲得之任何其他資料。儲存於遊戲資料庫115中之遊戲資料可由系統管理員及/或藉由經由網路105自系統100之使用者/玩家(諸如自一用戶端裝置110)接收之資料來離線或即時地填充。
遊戲伺服器120可經組態以自一用戶端裝置110接收針對遊戲資料之請求(例如經由遠端程序呼叫(RPC))且經由網路105對彼等請求做出回應。例如,遊戲伺服器120可將遊戲資料編碼於一或多個資料檔案中且將資料檔案提供至用戶端裝置110。另外,遊戲伺服器120可經組態以經由網路105自一用戶端裝置110接收遊戲資料(例如,玩家位置、玩家動作、玩家輸入等)。例如,用戶端裝置110可經組態以週期性地發送玩家輸入及其他更新至遊戲伺服器120,遊戲伺服器120利用其等來更新遊戲資料庫115中之遊戲資料以反映遊戲之任何及所有經改變條件。
在所展示之實施例中,伺服器120包含一通用遊戲模組145、一商業遊戲模組150、一資料收集模組155、一事件模組160及一深度預估訓練系統170。如上文所提及,遊戲伺服器120與可係遊戲伺服器120之一部分或被遠端存取之一遊戲資料庫115 (例如,遊戲資料庫115可係經由網路105存取之一分散式資料庫)互動。在其他實施例中,遊戲伺服器120含有不同及/或額外元件。另外,各功能可以不同於所闡述之一方式在元件之間分散。例如,遊戲資料庫115可整合至遊戲伺服器120中。
通用遊戲模組145主控所有玩家之平行現實遊戲且充當所有玩家之平行現實遊戲之當前狀態之權威來源。作為主控件,通用遊戲模組145產生遊戲內容以例如經由玩家之各別用戶端裝置110呈獻給玩家。通用遊戲模組145可在主控平行現實遊戲時存取遊戲資料庫115以檢索及/或儲存遊戲資料。通用遊戲模組145亦自用戶端裝置110接收遊戲資料(例如,深度資訊、玩家輸入、玩家位置、玩家動作、地標資訊等)且將所接收遊戲資料併入至平行現實遊戲之所有玩家之總平行現實遊戲中。通用遊戲模組145亦可管理遊戲資料經由網路105向用戶端裝置110之遞送。通用遊戲模組145亦可管控用戶端裝置110之安全態樣,包含但不限於保護用戶端裝置110與遊戲伺服器120之間的連接、在各種用戶端裝置110之間建立連接,及驗證各種用戶端裝置110之位置。
在其中包含商業遊戲模組之實施例中,商業遊戲模組150可與通用遊戲模組145分開或係通用遊戲模組145之一部分。商業遊戲模組150可管理在平行現實遊戲內與現實世界中之一商業活動連結之各種遊戲特徵之包含。例如,商業遊戲模組150可經由網路105(經由一網路介面)自外部系統(諸如贊助商/廣告商、企業或其他實體)接收要包含與平行現實遊戲中之商業活動連結之遊戲特徵之請求。商業遊戲模組150可然後安排在平行現實遊戲中包含此等遊戲特徵。
遊戲伺服器120可進一步包含一資料收集模組155。在其中包含資料收集模組之實施例中,資料收集模組155可與通用遊戲模組145分開或係通用遊戲模組145之一部分。資料收集模組155可管理在平行現實遊戲內與現實世界中之一資料收集活動連結之各種遊戲特徵之包含。例如,資料收集模組155可修改儲存於遊戲資料庫115中之遊戲資料以包含與平行現實遊戲中之資料收集活動連結之遊戲特徵。資料收集模組155亦可在資料收集活動之後分析由玩家收集之資料且提供資料以供各種平台存取。
事件模組160管理玩家對平行現實遊戲中之事件之存取。儘管為了方便使用術語「事件」,但應瞭解,此術語不必指在一特定位置或時間之一特定事件。而是,其可指任何存取受控遊戲內容之提供,其中利用一或多個存取準則來判定玩家是否可存取彼內容。此內容可係包含具有較少存取控制或無存取控制之遊戲內容之一較大平行現實遊戲之一部分,或可係一獨立式存取受控平行現實遊戲。
深度預估訓練系統170訓練提供至用戶端裝置110之一深度預估模型,例如,深度預估模型130。深度預估訓練系統170接收影像資料以用於訓練深度預估模型。通常,深度預估訓練系統170處理影像資料,將影像資料輸入至深度預估模型中以產生一深度預測,使用深度預測將一個訓練影像投影至另一訓練影像上,基於光度重構誤差計算一損失,且迭代地調整深度預估模型之參數以最小化該損失。以上一般程序闡述一自我監督訓練演算法。通常,自我監督訓練不需要監督式訓練演算法通常會需要的實況深度來進行訓練。深度預估系統170部分地基於由另一模型(例如,一現成深度預估模型)提供之深度提示而訓練模型。深度預估訓練系統170可進一步定義深度預估模型之一誤差臨限值,其可用於判定深度預估模型在預估深度資訊上是否足夠準確。下文將進一步闡述由深度預估訓練系統170進行之訓練。
一旦訓練了深度預估模型,深度預估模型便接收影像資料且基於影像資料輸出環境之深度資訊。深度預估訓練系統170將經訓練模型提供至用戶端裝置110。用戶端裝置110利用經訓練模型來預估影像(例如,由裝置上之一相機擷取)中之像素之深度。深度預估可具有各種用途,諸如幫助再現虛擬內容以增強現實世界影像、輔助機器人之導航、為自主運載工具偵測潛在危險,及諸如此類。
網路105可係任何類型之通信網路,諸如一區域網路(例如,內部網路)、廣域網路(例如,網際網路)或其某一組合。該網路亦可包含一用戶端裝置110與遊戲伺服器120之間的一直接連接。通常,遊戲伺服器120與一用戶端裝置110之間的通信可經由利用任何類型之有線及/或無線連接之一網路介面利用各種通信協定(例如,TCP/IP、HTTP、SMTP、FTP)、編碼或格式(例如,HTML、XML、JSON)及/或保護方案(例如,VPN、安全HTTP、SSL)來攜載。
本文中所論述之技術參考伺服器、資料庫、軟體應用程式及其他基於電腦之系統,以及所採取動作及發送至此等系統及自此等系統發送之資訊。熟習此項技術者將認識到,基於電腦之系統之固有靈活性允許組件之間及當中之任務及功能性之各種各樣的可能組態、組合及劃分。例如,本文中所論述之伺服器程序可利用一單個伺服器或組合地工作之多個伺服器來實施。資料庫及應用程式可在一單個系統上實施或跨越多個系統分散。分散式組件可依序或並行地操作。
另外,在其中本文中所論述之系統及方法存取且分析關於使用者之個人資訊或利用個人資訊(諸如位置資訊)之情況下,可為使用者提供控制程式或特徵是否收集資訊及控制是否及/或如何自系統或其他應用程式接收內容之一機會。直至已向使用者提供將收集何種資訊及如何利用資訊之有意義通知才收集或利用此資訊或資料。除非使用者提供使用者可在任何時間撤銷或修改之同意書,否則不收集或利用該資訊。因此,使用者可具有對如何收集關於使用者之資訊及應用程式或系統如何利用該資訊之控制。另外,某些資訊或資料可在其被儲存或利用之前以一或多種方式處理,使得個人可識別資訊被移除。舉例而言,可處理一使用者之身份,使得無法針對使用者判定個人可識別資訊。 例示性遊戲介面
圖3繪示可作為一玩家與虛擬世界210之間的介面之一部分呈現於一用戶端110之一顯示器上之一遊戲介面300之一項實施例。遊戲介面300包含可用於顯示虛擬世界210及遊戲之各種其他態樣(諸如虛擬世界210中之玩家位置222以及虛擬元素230、虛擬物項232及虛擬能量250之位置)之一顯示視窗310。使用者介面300亦可顯示其他資訊,諸如遊戲資料資訊、遊戲通信、玩家資訊、用戶端位置驗證指令及與遊戲相關聯之其他資訊。舉例而言,使用者介面可顯示玩家資訊315,諸如玩家姓名、經驗等級及其他資訊。使用者介面300可包含用於存取各種遊戲設定及與遊戲相關聯之其他資訊之一選單320。使用者介面300亦可包含實現遊戲系統與玩家之間及平行現實遊戲之一或多個玩家之間的通信之一通信介面330。
根據本發明之態樣,一玩家可藉由簡單地在現實世界中隨身攜載一用戶端裝置110而與平行現實遊戲互動。例如,一玩家可藉由簡單地接入一智慧型電話上之與平行現實遊戲相關聯之一應用程式且帶著智慧型電話在現實世界中到處移動而玩遊戲。在此方面,玩家不必為了在基於位置之遊戲上玩而在一顯示螢幕上連續地觀看虛擬世界之一視覺圖示。因此,使用者介面300可包含允許一使用者與遊戲互動之複數個非視覺元件。例如,遊戲介面可在玩家正接近遊戲中之一虛擬元素或物件時或在平行現實遊戲中發生一重要事件時向玩家提供可聽通知。一玩家可使用音訊控制項340控制此等可聽通知。可端視虛擬元素或事件之類型而向使用者提供不同類型之可聽通知。可聽通知可端視一玩家與一虛擬元素或物件之接近度而增加或減小頻率或音量。可向使用者提供其他非視覺通知及信號,諸如一振動通知或者其他適合通知或信號。
利用本文中所提供之揭示內容,熟習此項技術者將瞭解,諸多遊戲介面組態及基礎功能性將依據本發明顯而易見。本發明不意欲限於任何一個特定組態。 深度預估訓練
深度預估訓練系統170在深度提示之幫助下訓練深度預估模型130以供用戶端裝置110利用。以下段落闡述依賴於立體影像資料、單眼視訊資料、深度提示、姿態提示或其某一組合之各種訓練方法。一深度提示係藉由不同於深度預估模型130之一方法產生之一深度圖。一種此類方法係自以不同於深度預估模型130之方式訓練之一替代深度預估模型產生一深度圖。舉例而言,可藉由作為經組態以接收一立體影像對且基於立體影像對產生一深度圖之一雙眼深度預估模型之一第三方系統訓練替代深度預估模型。另一方法係使用一裝置(例如,電話、自主運載工具)上之一同步定位與映射(SLAM)模組產生一深度圖。無論深度提示係如何產生,訓練階段皆產生經組態以接收一輸入影像且基於輸入影像輸出一深度圖之一經訓練單眼深度預估模型130。
通常,深度預估訓練系統170利用耦合成影像對之訓練影像資料進行訓練。一影像對可係一真實立體影像對或一偽立體影像對。一方面,一真實立體影像對包括由例如來自一雙眼相機系統之兩個不同相機在相對相同時間擷取之兩個影像。另一方面,一偽立體影像對包括由一單個相機擷取之兩個時間上相異的圖框(亦即,以不同時間戳記擷取),例如,來自由一單眼相機系統擷取之單眼視訊資料之兩個時間上毗鄰的圖框。在真實立體影像對之情況下,一影像對中之立體影像之間的一姿態通常係已知的。在偽立體影像對之情況下,兩個圖框之間的一姿態通常係未未知的。姿態通常描述兩個影像之間的一相對定位。在數學上說,一姿態係由影像之兩個視角之間可考量兩個視角之間的平移及旋轉兩者之一變換矩陣定義。為了適應,除深度預估模型之外,深度預估訓練系統170亦可訓練一姿態預估模型。在某些實施例中,可使用用於同時預估姿態及深度之一單個深度-姿態混合模型。標題為「Self-Supervised Training of a Depth Estimation System」且在2019年11月21日公開之美國專利公開案第2019/0356905 A1號以引用方式併入本文中且進一步闡述與深度-姿態混合模型相關之實施例。
在圖1中所展示之實施例中,深度預估訓練系統170包含一深度預測模組175、一提示模組180、一影像合成模組185、一損失計算模組190及一訓練模組195。在某些實施例中,深度預估訓練系統170進一步包含執行額外操作之額外模組。在其他實施例中,深度預估訓練系統170可包含不同及/或額外組件,例如,資料儲存器件、回饋模組、平滑化模組等。舉例而言,一資料儲存器件可儲存訓練資料或經訓練參數。在另一實例中,一平滑化模組可處理深度圖;此處理之一項實例係平滑化深度圖中之深度值。
深度預測模組175產生一訓練影像之一深度預測。深度預測模組175提供一訓練影像作為至深度預估模型130之輸入以產生訓練影像之一初始深度預測。深度預測係包括訓練影像之每一像素之一經預測深度值之一經預測深度圖。
提示模組180獲得一訓練影像之一深度提示。如上文所提及,可依據某一數目個方法獲得深度提示。在一種方法中,利用一以替代方式訓練之深度預估模型(例如,具有相對低運算資源要求之一現成深度預估模型)。在具有一以替代方式訓練之立體深度預估模型之實施例中,提示模組180將一訓練影像對提供至以替代方式訓練之立體深度預估模型以產生一深度提示。在另一方法中,利用一SLAM模組。在此等實施例中,提示模組180獲得由SLAM模組產生之深度提示。在任何其他方法中,提示模組180自產生深度提示之適當模組、裝置或系統獲得深度提示。在一或多項實施例中,提示模組180可依據以上方法之某一組合獲得多個深度提示。在某些實施例中,提示模組180獲得可用於與偽立體影像對一起進行訓練之姿態提示。姿態提示可自一以替代方式訓練之姿態預估模型、一SLAM模組或某一其他局域化模組獲得。
影像合成模組185藉由將一影像對中之一個訓練影像投影至另一訓練影像上而產生一或多個合成圖框。為了產生一合成圖框作為一影像對中自一第二訓練影像至一第一訓練影像上之一投影,影像合成模組185利用第二訓練影像、第二訓練影像之本質參數、兩個訓練影像之間的相對姿態、第一訓練影像之一深度圖及第一訓練影像之本質參數。通常,一訓練影像之本質參數係已知的,由擷取訓練影像之無論哪一相機記錄。一影像之本質參數(亦稱為「本質」)係指用於擷取彼影像之相機之幾何性質,例如包含相機之焦距、相機之主點偏移、相機之偏斜。在某些情形中,本質可針對每一相機在所有所拍攝影像之間係恆定的,或本質可在相機在拍攝各種影像時調整其參數之情況下變化。在任一情形中,本質可表示為一本質矩陣。在投影真實立體影像時,影像合成模組185姿態可根據擷取真實立體影像之兩個相機之組態而知曉。在投影單眼視訊資料時,可例如藉由一姿態預估模型基於訓練影像預估兩個時間上相異的圖框之間的姿態。
影像合成模組185藉由首先利用由深度預估模型130輸出之一深度預測進行投影而產生一模型合成圖框。為了清晰,影像合成模組185利用由深度預估模型130針對一訓練影像對中之一第一訓練影像輸出之深度預測來自一第二訓練影像投影至該第一訓練影像上,此深度預測由深度預測模組175產生。
針對具有一深度提示之訓練影像對,影像合成模組185利用一深度提示產生一提示合成圖框。為了清晰且遵循以上段落中之實例,影像合成模組185利用由提示模組180獲得之深度提示而非深度預測第二次在訓練影像對中自第二訓練影像投影至第一訓練影像上。作為具有具一深度提示之具有具已知姿態之一真實立體影像對之一實例,影像合成模組185產生一模型合成圖框及一提示合成圖框。以一類似方式,為了使用一姿態提示產生一提示合成圖框,影像合成模組185在考量姿態提示而非由一姿態預估模型預估之一姿態之情況下在影像對中自一個訓練影像投影至另一訓練影像上。作為一自然擴展,為了利用一深度提示及姿態提示兩者,影像合成模組185利用第一訓練影像之深度提示及兩個訓練影像之間的姿態提示進行投影。針對具有具一深度提示及/或一姿態提示之偽立體影像對之實例,影像合成模組185可產生多個提示合成圖框:根據一深度提示產生一第一提示合成圖框,根據一姿態提示產生一第二提示合成圖框,根據一深度提示及一姿態提示或其某一組合產生一第三提示合成圖框。在具有多個一種類型之提示(例如,多個深度提示)之實施例中,影像合成模組185可針對每一深度提示產生一或多個提示合成圖框。
損失計算模組190計算一總體損失以供在訓練深度預估模型130時使用。首先,損失計算模組190運算一模型合成圖框與一對應訓練影像之間的一光度重構誤差作為一主要損失。主要損失包括訓練影像中每像素之一主要損失值,其描述根據彼像素處之深度預測之光度重構之一準確度。一總體損失將跨越所有像素之損失貢獻加總。針對不具有深度提示之訓練影像對,總體損失基於主要損失值之總和。舉例而言,主要損失包括每像素之一主要損失值,使得每一像素對總體損失之貢獻係主要損失值,此導致訓練影像對之總體損失係主要損失值之一總和。
針對具有深度提示之訓練影像對,損失計算模組190在計算總體損失時進一步考量一提示損失。提示損失可運算為一提示合成圖框與對應訓練影像之間的一光度重構。提示損失包括每像素之一提示損失值。損失計算模組190在一每像素基礎上比較主要損失值與提示損失值。若在一像素處主要損失值小於或等於提示損失值(意味著在彼像素處模型之深度預測比深度提示更準確或與深度提示一樣準確),則損失計算模組190在彼像素處忽略深度提示,且彼像素對總體損失之貢獻基於深度預測,例如,該貢獻係主要損失值。若在一像素處提示損失值小於主要損失值(意味著在彼像素處深度提示比模型之深度預測更準確),則損失計算模組190考量深度提示,且彼像素對總體損失之貢獻基於深度預測及深度提示。在一項實施例中,一像素(具有小於主要損失之提示損失)之貢獻係在彼像素處主要損失值和深度預測值與深度提示值之間的一監督損失之一總和。
光度重構誤差之各種定義可由損失計算模組190實施。在一高層級處,一般而言,一深度之光度重構誤差係根據深度投影之一合成圖框之一像素與對應於合成圖框的影像之像素之間的一差。針對一像素處之一深度計算之光度重構誤差之實例定義係L1距離、L2距離、結構相異度(DSSIM) (其考量兩個影像之間的像素窗,例如,2x2、3x3、4x4等)、應用於其之一或多個運算子或其某一組合。下文提供光度重構之一或多個定義之方程式(pre):
Figure 02_image001
作為一L1距離的像素i 處之深度
Figure 02_image005
之光度重構誤差
Figure 02_image007
係一第一影像
Figure 02_image009
之像素i 與一第二影像
Figure 02_image013
之像素i 之間的絕對差。
Figure 02_image015
作為一L2距離的像素i 處之深度
Figure 02_image005
之光度重構誤差
Figure 02_image021
係一第一影像
Figure 02_image009
之像素i 與一第二影像
Figure 02_image013
之像素i 之間的平方距離。
Figure 02_image025
計算為一結構相異度的像素i 處之深度
Figure 02_image005
之光度重構誤差
Figure 02_image029
係以下之一半:1減以像素i 為中心之兩個影像
Figure 02_image031
Figure 02_image033
之對應窗之間的一結構相似度計算
Figure 02_image037
Figure 02_image041
係來自一第一影像之一窗x 與一第二影像之一對應窗y 之間的結構相似度之一運算,該第一影像及該第二影像兩者皆以像素i 為中心。
Figure 02_image045
係窗x 之平均值,而
Figure 02_image049
係窗y 之平均值。
Figure 02_image053
係窗x 之方差;
Figure 02_image057
係窗y 之方差;且
Figure 02_image061
係窗xy 之間的協方差。c1 c2 係例如基於像素-值之動態範圍計算之用於除法之平滑因子。
Figure 02_image065
光度重構誤差之DSSIM+L1定義合併如上文所展示之DSSIM及L1之光度重構誤差。其他實施例可利用DSSIM與L1之光度重構誤差之間的不同百分比。
監督深度損失之各種定義可由損失計算模組190實施。在一高層級處,一監督深度損失係兩個深度預測之間的一差。實例包含L1距離、L2距離、兩個深度值之間的L1距離之對數、應用於其之一或多個運算子或其某一組合。
訓練模組195藉由最小化總體損失而訓練深度預估模型130。訓練模組195透過調整深度預估模型130之參數而進行訓練以最小化每一訓練影像對之總體損失。訓練模組195對深度預估模型130進行反向傳播,從而調整深度預估模型130之參數以最小化總體損失。在某些實施例中,訓練模組195可執行迭代批次訓練,例如,按訓練影像對分批地訓練深度預估模型130。訓練時期(epoch)之一數目判定了將訓練影像資料正向及反向饋送通過深度預估模型130之實例之一數目。在訓練結束時,訓練模組195可使用具有實況深度資料之訓練影像資料之一保留集來驗證深度預估模型130以判定經訓練深度預估模型130之一準確度。
深度預估訓練系統170在使用訓練影像訓練其模型及模組之後可為深度預估模型130提供接收一色彩輸入影像且基於藉由深度預估訓練系統170訓練之參數產生一深度圖之參數。注意,儘管為了方便將深度預估訓練系統170展示為遊戲伺服器120之一部分,但模型中之某些或全部可藉由其他運算裝置來訓練且以各種方式提供至用戶端裝置110,包含係作業系統之一部分、包含於一遊戲應用程式中或視需要在雲端存取。
圖4係闡述根據一或多項實施例使用影像對訓練深度預估模型之一個一般程序400之一流程圖。程序400產生在給出一輸入影像之情況下可產生一深度圖之一經訓練深度預估模型130。程序400係藉由深度預估訓練系統170完成,但可更一般來說藉由任何其他運算裝置完成。
深度預估訓練系統170存取410包括複數個影像對之訓練影像資料。影像對可包含一或多個真實立體影像對、一或多個偽立體影像對或其某一組合。通常,每一真實立體影像對之間的一姿態係已知的,而一偽立體影像對之一姿態係預估的。
深度預估訓練系統170針對經訓練之每一影像對執行操作420至480。
深度預估訓練系統170針對影像對之第一影像使用深度預估模型產生420一深度預測。將第一影像輸入至深度預估模型130中,從而提取包括第一影像之每像素之一深度預測值之一深度預測。在一或多項實施例中,深度預測模組175產生深度預測。
深度預估訓練系統170獲得430影像對之第一影像之一深度提示。可依據遍及本發明闡述之各種方法中之任一者獲得深度提示。在一項實施例中,藉由將影像對輸入至一以替代方式訓練之立體深度預估模型中而獲得深度提示。其他方法包含自一SLAM模組、一LIDAR等獲得深度提示。在一或多項實施例中,提示模組180產生深度提示。
深度預估訓練系統170藉由基於深度預測將第二影像投影至第一影像上而產生一模型合成圖框。自第二影像至第一影像上之投影可進一步基於第一影像之一第一組本質參數、第二影像之一第二組本質參數及第一影像與第二影像之間的一姿態。在一或多項實施例中,影像合成模組185完成該等投影。
深度預估訓練系統170藉由基於深度提示將第二影像投影至第一影像上而產生450一提示合成圖框。針對提示合成圖框,投影依賴於深度提示而非深度預測。在具有姿態提示之實施例中,使用姿態提示來產生一額外提示合成圖框。在一或多項實施例中,影像合成模組185完成該等投影。
深度預估訓練系統170針對模型合成圖框計算460一主要損失。主要損失係基於模型合成圖框與第一影像之一比較之一光度重構誤差。深度預測之主要損失包括第一影像之每像素之一主要損失值。
深度預估訓練系統170針對提示合成圖框計算470一提示損失。提示損失係基於提示合成圖框與第一影像之一比較之一光度重構誤差。深度提示之提示損失包括第一影像之每像素之一提示損失值。可針對額外提示合成圖框計算額外提示損失,例如,一個提示合成圖框基於一姿態提示,另一提示合成圖框基於一深度提示及一姿態提示,或又一提示合成圖框基於以不同於第一深度提示之方式獲得之一第二深度提示。
深度預估訓練系統170基於主要損失及提示損失計算480一總體損失。總體損失將來自第一影像之每一像素之一貢獻加總。一給定像素之貢獻基於主要損失還是提示損失較小。若在彼像素處主要損失小於或等於提示損失,則像素對總體損失之貢獻係主要損失值。若在彼像素處提示損失小於主要損失,則像素對總體損失之貢獻係在彼像素處主要損失值和深度預測與深度提示之間的一監督深度損失之一總和。在一項實施例中,監督深度損失量測深度預測與深度提示之間的絕對差。在另一實施例中,監督深度損失量測深度預測與深度提示之間的絕對差之對數。在一或多項實施例中,損失計算模組190計算主要損失、提示損失及總體損失。在不具有一深度提示之情況下任何訓練影像對之總體損失可僅基於主要損失,亦即,針對一訓練影像對,每一像素對總體損失之貢獻係主要損失值。
深度預估訓練系統170藉由最小化影像對之總體損失而訓練490深度預估模型130。在最小化損失時,深度預估訓練系統170細化深度預估模型130之參數以依據一單色彩輸入影像預估深度。 深度預估模型
圖5係闡述根據一或多項實施例利用一深度預估模型之一個一般程序500之一流程圖。程序500在給出一輸入影像之情況下產生一深度圖。程序500可由具有一經訓練深度預估模型之一用戶端裝置110完成。用戶端裝置可係一泛用運算裝置且亦可具有一相機。在某些實施例中,在上文在圖1至圖3闡述之平行現實遊戲中實施用戶端裝置。儘管以下說明在一用戶端裝置之內容脈絡內,但程序500可在其他運算裝置上執行。
用戶端裝置110接收510一場景之一影像。場景之影像可由係用戶端裝置110之一組件或在用戶端裝置110外部之一相機擷取。在平行現實遊戲之內容脈絡中,場景可為可映射至虛擬世界中之虛擬位置之現實世界位置。場景之影像亦可具有對應於擷取該影像之相機之幾何性質之本質。影像可係由相機擷取之一單個影像。替代地,影像可係來自由相機擷取之視訊之一圖框。
用戶端裝置110將場景之影像輸入520至一經訓練深度預估模型中。深度預估模型可藉由深度預估訓練系統170例如經由圖4之程序400、圖5之程序500或其某一組合來訓練。深度預估模型接收場景之影像以及在某些實施例中影像之本質。
用戶端裝置110藉由經訓練深度預估模型產生530與場景之影像對應的場景之一深度圖。深度圖之每一像素具有描述在場景之影像中之對應像素處一表面之一相對距離之一深度值。深度預估模型接收場景之影像且基於針對深度預估模型訓練之參數輸出深度圖。
用戶端裝置110可使用所產生深度圖執行各種額外操作。舉例而言,用戶端裝置110可係能夠在一現實世界環境中使用深度圖進行導航之一自主運載工具。在另一實例中,用戶端裝置110係一增強現實系統之一部分且可呈現使用虛擬內容增強之現實世界影像。為了完成此任務,用戶端裝置110可使用所產生深度圖來產生虛擬內容,從而使得虛擬內容在正確深度處與現實世界影像中之物件互動。下文例示用於產生經增強內容之步驟。
在額外實施例中,用戶端裝置110基於場景之深度圖產生540虛擬內容。虛擬內容可來源於例如儲存於遊戲資料庫115中的平行現實遊戲之內容。所產生虛擬內容可係可增強至場景之影像上之增強現實內容。舉例而言,產生可在理解場景之深度之情況下在場景中到處移動之一虛擬角色。在一項例項中,在虛擬角色在一街道上朝向使用者行走時,虛擬角色可在大小上增大。在另一例項中,虛擬角色可藏在一樹後面,在彼處虛擬角色之一部分接著被樹遮擋。
用戶端裝置110顯示550使用虛擬內容增強的場景之影像。用戶端裝置包含一電子顯示器。電子顯示器可提供具有經增強虛擬內容之由相機擷取之視訊之一恆定饋送。
遵循以上實例,平行現實遊戲可作為一目標提供與虛擬角色之互動。為了與虛擬角色互動,行動裝置之一使用者可需要到處移動其行動裝置同時使虛擬角色保持於相機之一視野中。當使用者到處移動行動裝置時,行動裝置可不斷地擷取可用於在場景隨使用者之行動裝置之移動而改變時迭代地產生場景之深度資訊之視訊或影像資料。行動裝置可更新饋送於顯示器上之視訊同時亦基於所產生深度資訊更新虛擬角色,使得使用者將虛擬角色始終感知為在場景內適當地互動,例如,不行走穿過物件,不具有被截去之部分(在無任何物件遮擋彼等部分之情況下)等。 實例運算系統
圖6係根據一實施例之一運算裝置之一實例架構。儘管圖6繪示圖解說明用作本文中所闡述之一或多個實體之部分或全部之一電腦之實體組件之一高階方框圖,但根據一實施例,一電腦可具有額外組件、較少組件或圖6中所提供之組件之變化形式。儘管圖6繪示一電腦600,但該圖意欲為可存在於電腦系統中之各種特徵之功能說明,而非本文中所闡述之實施方案之一結構示意圖。實際上且如熟習此項技術者認識到,單獨展示之物項可被組合且某些物項可被分離。
圖6中圖解說明耦合至一晶片組604之至少一個處理器602。一記憶體606、一儲存裝置608、一鍵盤610、一圖形配接器612、一指標裝置614及一網路配接器616亦耦合至晶片組604。一顯示器618耦合至圖形配接器612。在一項實施例中,晶片組604之功能性係由一記憶體控制器集線器620及一I/O集線器622提供。在另一實施例中,記憶體606直接耦合至處理器602而非晶片組604。在某些實施例中,電腦600包含用於互連此等組件之一或多個通信匯流排。一或多個通信匯流排視情況包含互連系統組件且控制系統組件之間的通信之電路(有時稱作一晶片組)。
儲存裝置608係任何非暫時性電腦可讀儲存媒體,諸如一硬碟機、光碟唯讀記憶體(CD-ROM)、DVD或一固態記憶體裝置或者其他光學儲存器件、磁帶盒、磁帶、磁碟儲存器件或其他磁性儲存裝置、磁碟儲存裝置、光碟儲存裝置、快閃記憶體裝置或其他非揮發性固態儲存裝置。此一儲存裝置608亦可稱為永久記憶體。指標裝置614可係一滑鼠、追蹤球或其他類型之指標裝置,且與鍵盤610組合地用於將資料輸入至電腦600中。圖形配接器612在顯示器618上顯示影像及其他資訊。網路配接器616將電腦600耦合至一區域網路或廣域網路。
記憶體606保存處理器602所使用之指令及資料。記憶體606可係非永久性記憶體,其實例包含高速隨機存取記憶體,諸如DRAM、SRAM、DDR RAM、ROM、EEPROM、快閃記憶體。
如本技術領域中已知,一電腦600可具有不同於圖6中所展示之彼等組件之組件及/或其他組件。另外,電腦600可缺少某些所圖解說明組件。在一項實施例中,充當一伺服器之一電腦600可缺少一鍵盤610、指標裝置614、圖形配接器612及/或顯示器618。此外,儲存裝置608可係電腦600本機的及/或位於電腦600遠端(諸如嵌入於一儲存區域網路(SAN)中)。
如本技術領域中已知,電腦600經調適以執行用於提供本文中所闡述之功能性之電腦程式模組。如本文中所使用,術語「模組」係指用於提供所規定功能性之電腦程式邏輯。因此,一模組可以硬體、韌體、及/或軟體實施。在一項實施例中,程式模組儲存於儲存裝置608上、載入至記憶體606中,且由處理器602執行。 額外考量
以上說明之某些部分闡述在演算法程序或操作方面之實施例。此等演算法說明及表示由熟習資料處理技術之技術人員常用於向熟習此項技術之其他技術人員有效地傳達其工作之實質。雖然在功能上、運算上或邏輯上闡述此等操作,但應理解此等操作係藉由包括由一處理器或等效電路、微碼或諸如此類執行之指令之電腦程式實施。此外,亦已證明有時將功能操作之此等配置稱為模組係方便的,而不會喪失通用性。
如本文中所使用,對「一項實施例」或「一實施例」之任何提及意指結合該實施例所闡述之一特定元件、特徵、結構或特性包含於至少一項實施例中。片語「在一項實施例中」在說明書中之各種地方之出現未必全部指代同一實施例。
可使用表達「經耦合」及「經連接」以及其派生詞來闡述某些實施例。應理解,此等術語並非意欲為彼此之同義詞。舉例而言,可使用術語「經連接」來闡述某些實施例以指示兩個或更多個元件彼此直接實體或電接觸。在另一實例中,可使用術語「經耦合」來闡述某些實施例以指示兩個或更多個元件直接實體或電接觸。然而,術語「經耦合」亦可意指兩個或更多個元件彼此不直接接觸,但仍彼此合作或互動。實施例在此內容脈絡中不受限制。
如本文中所使用,術語「包括(comprise)」、「包括(comprising)」、「包含(include)」、「包含(including)」、「具有(has)」、「具有(having)」或其任何其他變化意欲涵蓋一非窮盡性包含。舉例而言,包括一系列要素之一程序、方法、物品或設備未必僅限於彼等要素,而是可包含未明確列出或此程序、方法、物品或設備所固有之其他要素。此外,除非明確陳述相反之情形,否則「或」係指一包含性或而非一排他性或。舉例而言,一條件A或B可由以下各項中的任一者來滿足:A係真(或存在)且B係假(或不存在)、A係假(或不存在)且B係真(或存在),以及A與B兩者皆係真(或存在)。
另外,用語「一(a或an)」之使用來闡述實施例之元件及組件。如此做僅僅係為了方便及賦予本發明一個一般意義。應將此說明解讀為包含一個或至少一個,且單數亦包含複數,除非此說明另有明顯意指。
在閱讀本發明之後,熟習此項技術者將瞭解,用於驗證一賬戶與一線上服務提供者之一系統及一程序之其他額外替代結構及功能設計對應於一真正業務。因此,雖然已圖解說明及闡述特定實施例及應用,但應理解,所闡述標的物不限於本文中所揭示之精確構造及組件且可在所揭示之方法及設備之配置、操作及細節方面做出熟習此項技術者將顯而易見之各種修改、改變及變化形式。保護範疇應僅由以下申請專利範圍限制。
100:經網路連線運算環境/系統 105:網路 110:用戶端裝置 115:遊戲資料庫 120:遊戲伺服器/伺服器 125:相機總成 130:深度預估模型/經訓練單眼深度預估模型/經訓練深度預估模型 135:遊戲模組 140:定位模組 145:通用遊戲模組 150:商業遊戲模組 155:資料收集模組 160:事件模組 170:深度預估訓練系統 175:深度預測模組 180:提示模組 185:影像合成模組 190:損失計算模組 195:訓練模組 200:現實世界 210:虛擬世界 212:位置 214:位置 222:位置/玩家位置 224:位置 230:虛擬元素 232:虛擬物項 240:地標/地理位置/物件/現實世界地標 250:虛擬能量 300:遊戲介面/使用者介面 310:顯示視窗 315:玩家資訊 320:選單 330:通信介面 340:音訊控制項 400:一般程序/程序 410:操作 420:操作 430:操作 440:操作 450:操作 460:操作 470:操作 480:操作 490:操作 500:一般程序/程序 510:操作 520:操作 530:操作 540:操作 550:操作 600:電腦 602:處理器 604:晶片組 606:記憶體 608:儲存裝置 610:鍵盤 612:圖形配接器 614:指標裝置 616:網路配接器 618:顯示器 620:記憶體控制器集線器 622:輸入/輸出集線器
圖1圖解說明根據一或多項實施例之一經網路連線運算環境。
圖2繪示根據一或多項實施例具有平行於現實世界之一地理環境之一虛擬世界之一圖示。
圖3繪示根據一或多項實施例之一平行現實遊戲之一例示性遊戲介面。
圖4係闡述根據一或多項實施例使用立體影像資料及深度提示來訓練一深度預估模型之一個一般程序之一流程圖。
圖5係闡述根據一或多項實施例利用深度提示訓練之一深度預估模型在一增強現實應用中之一實例使用之一流程圖。
圖6圖解說明根據一或多項實施例適合於在訓練或應用一深度預估模型時利用之一實例電腦系統。
圖及以下說明僅藉由圖解說明方式闡述某些實施例。熟習此項技術者將自以下說明容易地認識到,可在不背離所闡述之原理之情況下採用結構及方法之替代實施例。現在將參考數項實施例,在附圖中圖解說明該等實施例之實例。
400:一般程序/程序
410:操作
420:操作
430:操作
440:操作
450:操作
460:操作
470:操作
480:操作
490:操作

Claims (20)

  1. 一種電腦實施之方法,其包括: 接收一場景之一影像; 將該影像輸入至一深度預估模型中,該深度預估模型藉由包括以下各項之一程序訓練: 存取包括複數個影像對之訓練影像資料,每一影像對包括一第一影像及一第二影像; 針對每一影像對: 藉由該深度預估模型產生該第一影像之像素之深度預測值; 獲得該第一影像之該等像素之深度提示值; 基於該第一影像之該等像素之該等深度預測值,將該第二影像投影至該第一影像上以產生一模型合成圖框; 基於該第一影像之該等像素之該等深度提示值,將該第二影像投影至該第一影像上以產生一提示合成圖框; 基於該模型合成圖框之像素與該第一影像之該等像素之一比較,計算該等深度預測值之主要損失值; 基於該提示合成圖框之像素與該第一影像之該等像素之一比較,計算該等深度提示值之提示損失值;及 計算該影像對之一總體損失,其中基於該主要損失值還是該提示損失值較小而判定該第一影像中之一給定像素對該總體損失之貢獻,其中該第一影像中具有小於一主要損失值之一提示損失值的一第一像素之該貢獻包括該主要損失值以及基於該第一像素之一深度預測值及一深度提示值的一監督深度損失值; 基於該等影像對之該等總體損失調整該深度預估模型之參數;及 藉由該深度預估模型產生與該場景之該影像對應的該場景之一深度圖。
  2. 如請求項1之方法,其中每一影像對係由一對相機擷取之一真實立體影像對。
  3. 如請求項1之方法,其中每一影像對係一偽立體影像對,其中該第一影像及該第二影像係由一單個相機擷取之時間上相異的圖框。
  4. 如請求項1之方法,其中在每一影像對中將該第二影像投影至該第一影像上進一步基於該第一影像與該第二影像之間的一姿態。
  5. 如請求項1之方法,其中將該第二影像投影至該第一影像上進一步基於該第一影像之一第一組相機本質參數及該第二影像之一第二組相機本質參數。
  6. 如請求項1之方法,其中根據一深度預測值的一像素處之該主要損失值基於該模型合成圖框之該像素與該第一影像之該像素之間的一差,且其中根據一深度提示值的該像素處之該提示損失值基於該提示合成圖框之該像素與該第一影像之該像素之間的一差。
  7. 如請求項1之方法, 其中若在一給定像素處該主要損失值小於或等於該提示損失值,則該給定像素對該總體損失之該貢獻係該給定像素之該主要損失值;且 其中若在該給定像素處該提示損失值小於該主要損失值,則該給定像素對該總體損失之該貢獻係該給定像素之該主要損失值和在該給定像素處一深度預測值與一深度提示值之間的一差之一總和。
  8. 如請求項1之方法,其中該等深度提示值係由一立體深度預估模型產生,該立體深度預估模型經組態以輸入該影像對且基於該影像對輸出該等深度提示值。
  9. 如請求項1之方法,其中該等深度提示值係由一同步定位與映射(SLAM)模組基於該影像對而產生。
  10. 一種用於訓練一深度預估模型之電腦實施之方法,其包括: 存取包括複數個影像對之訓練影像資料,每一影像對包括一第一影像及一第二影像; 針對每一影像對: 藉由該深度預估模型產生該第一影像之像素之深度預測值; 獲得該第一影像之該等像素之深度提示值; 基於該第一影像之該等像素之該等深度預測值,將該第二影像投影至該第一影像上以產生一模型合成圖框; 基於該第一影像之該等像素之該等深度提示值,將該第二影像投影至該第一影像上以產生一提示合成圖框; 基於該模型合成圖框之像素與該第一影像之該等像素之一比較,計算該等深度預測值之主要損失值; 基於該提示合成圖框之像素與該第一影像之該等像素之一比較,計算該等深度提示值之提示損失值;及 計算該影像對之一總體損失,基於該主要損失值還是該提示損失值較小而判定該第一影像中之一給定像素對該總體損失之貢獻,其中該第一影像中具有小於一主要損失值之一提示損失值的一第一像素之該貢獻包括該主要損失值以及基於該第一像素之一深度預測值及一深度提示值的一監督深度損失值; 基於該等影像對之該等總體損失調整該深度預估模型之參數。
  11. 如請求項10之方法,其中每一影像對係由一對相機擷取之一真實立體影像對。
  12. 如請求項10之方法,其中每一影像對係一偽立體影像對,其中該第一影像及該第二影像係由一單個相機擷取之時間上相異的圖框。
  13. 如請求項10之方法,其中在每一影像對中將該第二影像投影至該第一影像上進一步基於該第一影像與該第二影像之間的一姿態。
  14. 如請求項10之方法,其中將該第二影像投影至該第一影像上進一步基於該第一影像之一第一組相機本質參數及該第二影像之一第二組相機本質參數。
  15. 如請求項10之方法,其中根據一深度預測值的一像素處之該主要損失值基於該模型合成圖框之該像素與該第一影像之該像素之間的一差,且其中根據一深度提示值的該像素處之該提示損失值基於該提示合成圖框之該像素與該第一影像之該像素之間的一差。
  16. 如請求項10之方法, 其中若在一給定像素處該主要損失值小於或等於該提示損失值,則該給定像素對該總體損失之該貢獻係該給定像素之該主要損失值;且 其中若在該給定像素處該提示損失值小於該主要損失值,則該給定像素對該總體損失之該貢獻係該給定像素之該主要損失值和在該給定像素處一深度預測值與一深度提示值之間的一差之一總和。
  17. 如請求項10之方法,其中該等深度提示值係由一立體深度預估模型產生,該立體深度預估模型經組態以輸入該影像對且基於該影像對輸出該等深度提示值。
  18. 如請求項10之方法,其中該等深度提示值係由一同步定位與映射(SLAM)模組基於該影像對而產生。
  19. 一種儲存指令之非暫時性電腦可讀儲存媒體,該等指令在由一處理器執行時致使該處理器執行包括以下各項之操作: 接收一場景之一影像; 將該影像輸入至一深度預估模型中,該深度預估模型藉由包括以下各項之一程序訓練: 存取包括複數個影像對之訓練影像資料,每一影像對包括一第一影像及一第二影像; 針對每一影像對: 藉由該深度預估模型產生該第一影像之像素之深度預測值; 獲得該第一影像之該等像素之深度提示值; 基於該第一影像之該等像素之該等深度預測值,將該第二影像投影至該第一影像上以產生一模型合成圖框; 基於該第一影像之該等像素之該等深度提示值,將該第二影像投影至該第一影像上以產生一提示合成圖框; 基於該模型合成圖框之像素與該第一影像之該等像素之一比較,計算該等深度預測值之主要損失值; 基於該提示合成圖框之像素與該第一影像之該等像素之一比較,計算該等深度提示值之提示損失值;及 計算該影像對之一總體損失,基於該主要損失值還是該提示損失值較小而判定該第一影像中之一給定像素對該總體損失之貢獻,其中該第一影像中具有小於一主要損失值之一提示損失值的一第一像素之該貢獻包括該主要損失值以及基於該第一像素之一深度預測值及一深度提示值的一監督深度損失值; 基於該等影像對之該等總體損失調整該深度預估模型之參數;及 藉由該深度預估模型產生與該場景之該影像對應的該場景之一深度圖。
  20. 如請求項19之儲存媒體, 其中若在一給定像素處該主要損失值小於或等於該提示損失值,則該給定像素對該總體損失之該貢獻係該給定像素之該主要損失值;且 其中若在該給定像素處該提示損失值小於該主要損失值,則該給定像素對該總體損失之該貢獻係該給定像素之該主要損失值和在該給定像素處一深度預測值與一深度提示值之間的一差之一總和。
TW109114835A 2019-05-02 2020-05-04 用於利用深度提示之深度預估模型之自我監督訓練之電腦實施之方法及非暫時性電腦可讀儲存媒體 TWI839513B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962842531P 2019-05-02 2019-05-02
US62/842,531 2019-05-02

Publications (2)

Publication Number Publication Date
TW202109458A true TW202109458A (zh) 2021-03-01
TWI839513B TWI839513B (zh) 2024-04-21

Family

ID=

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI803334B (zh) * 2022-05-31 2023-05-21 鴻海精密工業股份有限公司 深度估計模型優化與物體距離檢測方法及相關設備

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI803334B (zh) * 2022-05-31 2023-05-21 鴻海精密工業股份有限公司 深度估計模型優化與物體距離檢測方法及相關設備

Also Published As

Publication number Publication date
CA3097393A1 (en) 2020-11-05
AU2020266341A1 (en) 2020-12-03
KR20210069125A (ko) 2021-06-10
US11711508B2 (en) 2023-07-25
WO2020222204A1 (en) 2020-11-05
EP3776468A4 (en) 2022-01-12
JP2022037113A (ja) 2022-03-08
US11317079B2 (en) 2022-04-26
JP2021522603A (ja) 2021-08-30
AU2021206838A1 (en) 2021-08-12
JP6996009B2 (ja) 2022-01-17
CN112805748B (zh) 2022-10-25
CA3097393C (en) 2022-02-01
US20210218950A1 (en) 2021-07-15
KR102493185B1 (ko) 2023-01-30
KR102262824B1 (ko) 2021-06-10
KR20200130472A (ko) 2020-11-18
AU2020266341B2 (en) 2021-04-22
CN112805748A (zh) 2021-05-14
EP3776468A1 (en) 2021-02-17
US11044462B2 (en) 2021-06-22
AU2021206838B2 (en) 2023-08-17
JP7174139B2 (ja) 2022-11-17
US20200351489A1 (en) 2020-11-05
US20220210392A1 (en) 2022-06-30

Similar Documents

Publication Publication Date Title
TWI790380B (zh) 深度估計系統之自監督訓練
JP7174139B2 (ja) 深度ヒントを使用した深度推定モデルの自己教師ありトレーニング
US20230196690A1 (en) High-Speed Real-Time Scene Reconstruction from Input Image Data
US20230360339A1 (en) Determining Traversable Space from Single Images
TWI839513B (zh) 用於利用深度提示之深度預估模型之自我監督訓練之電腦實施之方法及非暫時性電腦可讀儲存媒體
TWI837557B (zh) 用於自監督多圖框單眼深度估計模型之電腦實施方法及非暫時性電腦可讀儲存媒體
TW202238068A (zh) 自監督多圖框單眼深度估計模型