TW202135008A - 合併來自地圖建立裝置之局部地圖 - Google Patents

合併來自地圖建立裝置之局部地圖 Download PDF

Info

Publication number
TW202135008A
TW202135008A TW109145173A TW109145173A TW202135008A TW 202135008 A TW202135008 A TW 202135008A TW 109145173 A TW109145173 A TW 109145173A TW 109145173 A TW109145173 A TW 109145173A TW 202135008 A TW202135008 A TW 202135008A
Authority
TW
Taiwan
Prior art keywords
map
client device
image data
node
data
Prior art date
Application number
TW109145173A
Other languages
English (en)
Other versions
TWI775247B (zh
Inventor
安維斯 埃凱蒂
朴娜 索米亞 木努庫拉
達里尼 奎西娜
彼得 詹姆斯 透納
甘迪文 拉古拉曼
希 音 黛安娜 胡
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 TW202135008A publication Critical patent/TW202135008A/zh
Application granted granted Critical
Publication of TWI775247B publication Critical patent/TWI775247B/zh

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/216Input arrangements for video game devices characterised by their sensors, purposes or types using geographical information, e.g. location of the game device or player using GPS
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/352Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/67Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • 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/579Depth or shape recovery from multiple images from motion
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • A63F13/5378Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen for displaying an additional top view, e.g. radar screens or maps
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8082Virtual reality
    • 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/20072Graph-based image processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Optics & Photonics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Image Processing (AREA)
  • Stacking Of Articles And Auxiliary Devices (AREA)
  • User Interface Of Digital Computer (AREA)
  • Instructional Devices (AREA)

Abstract

一種擴增實境系統在一用戶端裝置上產生電腦介導之實境。該用戶端裝置具有包含一相機之感測器,該相機經組態以擷取一環境之影像資料。該擴增實境系統基於所擷取影像資料而產生該用戶端裝置周圍之該環境之一第一3D地圖。伺服器接收自該環境中之一第二用戶端裝置擷取之影像資料且產生該環境之一第二3D地圖。該伺服器將第一3D與第二3D地圖一起連結於一單個3D地圖中。該單個3D地圖可為真實世界之一圖形表示,該圖形表示使用表示由在用戶端裝置處擷取之影像資料產生之3D地圖之節點以及表示該等節點之間的變換之邊緣。

Description

合併來自地圖建立裝置之局部地圖
本發明一般而言係關於電腦介導之實境系統,且更特定而言,係關於將自用戶端裝置所聚集之資料產生之3D地圖連結至一單個3D地圖中之一擴增實境(AR)系統。
一平行實境遊戲可提供與真實世界之至少一部分平行之一共享虛擬世界,可承載可吸引一玩家群體之多種互動。為一虛擬世界提供與真實世界之至少一部分平行之一地形允許玩家藉由導航真實世界而導航虛擬世界。在遊戲期間,一玩家可在一手持式或可穿戴式裝置中查看虛擬世界,該手持式或可穿戴式裝置使用電腦介導之實境技術來增加、減少或以其他方式更改玩家對其環境之視覺或聽覺感知。
然而,準確地更改玩家對環境之視覺感知通常涉及準確地知曉玩家在真實世界中之位置。此可難以確定,此乃因傳統定位裝置並非足夠準確的而無法在不具有一相當大之誤差範圍之情況下判定一玩家之位置。因此,一種用於對由玩家之行動裝置之相機所擷取之真實世界進行地圖建立以幫助在將來判定行動裝置之位置之系統係合意的。
在基於位置之平行實境遊戲中,玩家藉由利用一位置感知用戶端裝置(諸如一智慧型電話)移動穿過真實世界而導航一虛擬世界。諸多用戶端裝置使用由裝置上相機擷取之影像資料來對玩家之環境進行地圖建立,此可為判定玩家之位置、判定擴增實境(AR)影像以覆疊於所擷取影像資料上及諸如此類。此等地圖可描述同一環境,但由於在不同用戶端裝置上被擷取,因此地圖可具有一不同座標空間且擷取環境之一不同視圖。為建立一環境之一單個3D地圖,可基於影像資料、位置資料及/或擷取此資料之用戶端裝置而將所產生地圖連結在一起。
根據一特定實施例,一種藉由一網路連接至複數個用戶端裝置之系統接收由整合於一第一用戶端裝置處之一相機擷取之一第一組影像資料。該第一組影像資料表示該第一用戶端裝置周圍之一第一區域之一幾乎即時視圖。該系統基於該第一組影像資料而產生一第一3D地圖。該3D地圖在空間上描述該第一用戶端裝置周圍之該第一區域。該系統接收表示一第二用戶端裝置周圍之一第二區域之一幾乎即時視圖之一第二組影像資料且基於該第二組影像資料而產生一第二3D地圖。該系統分析該第一3D地圖及該第二3D地圖以識別一共同特徵且基於該共同特徵而將該第一3D地圖與該第二3D地圖連結至一單個3D地圖中。
該單個3D地圖可為節點之一圖形,每一節點表示由在一用戶端裝置處擷取之影像資料產生之一3D地圖。每一節點可基於擷取影像資料之用戶端裝置而與一不同座標空間相關聯,且圖形可包含節點之間的邊緣,該等邊緣表示座標空間之間的一變換。該系統可使用圖形來判定一用戶端裝置在環境中之一位置。
參考以下描述及隨附申請專利範圍可較佳地理解此等及其他特徵、態樣及優點。隨附圖式圖解說明特定實施例且與描述一起用於解釋各種原理。然而,圖式不應被視為限制性的。而是,保護範疇應自申請專利範圍判定。
相關申請案交叉參考
本申請案主張2019年12月20日提出申請之美國臨時申請案第62/952,036號之權益,該美國臨時申請案以其全文引用之方式併入。
一系統及方法將兩個或多於兩個局部地圖一起連結至一單個地圖中。單個地圖可用於達成在與真實世界平行之一虛擬世界中之擴增實境互動。在各種實施例中,局部地圖基於含有共同特徵、指示產生局部地圖之用戶端裝置之相對位置之同步資料或此兩者而被結合在一起。
在一項實施例中,系統使用一用戶端裝置上(例如,一手持式或穿戴之電子裝置上)之影像及全球定位系統(GPS)座標來產生一3D地圖。3D地圖由相機記錄模組及一慣性量測單元(IMU) (諸如加速度計或陀螺儀)構建。將影像及GPS座標發送至伺服器。伺服器與用戶端裝置一起處理資料以創建物件及幾何形狀,以及判定可能互動。可能互動之實例包含在具有AR動畫之一房間中進行之互動,諸如移動一虛擬元素。
透過一起使用影像與3D地圖,系統可使用神經網路或其他類型之模型來達成物件偵測及幾何形狀估計。一神經網路之一實例係用於機器學習中之一計算模型,該計算模型使用大量經連接之簡單單元(人工神經元)。單元以軟體連接在一起,且若經組合輸入信號係足夠大的,則該等單元會激發其自身之輸出信號。系統可使用深度學習(例如,一多層神經網路)來根據內容脈絡理解AR資料。其他類型之模型可包含其他統計模型或其他機器學習模型。
系統彙總局部地圖以建立一或多個全域地圖(例如,藉由將局部地圖連結在一起)。經彙總地圖在伺服器上一起組合成一單個全域地圖,該單個全域地圖提供環境或「世界」之一數位地圖。舉例而言,由一或多個裝置產生之兩個局部地圖可表示為不同座標空間中之節點。針對類似GPS座標之任何組合,包含局部地圖之部分(其在一預定臨限值內匹配)之類似影像及類似感測器資料可被判定為含有共同特徵(例如,在空間中「重疊」)。因此,系統可利用一邊緣將兩個節點連結在一起,該邊緣表示節點之座標空間之間的一變換。經連結節點可含於表示使用由用戶端裝置擷取之影像做出之其他局部地圖之節點的一圖形中。圖形可表示單個全域地圖且可幫助維持向多個用戶端裝置表示之虛擬世界之間的一致性。
此外,在某些實施例中,系統可基於該邊緣或含於局部地圖內之一共同特徵而將局部地圖一起結合至一世界地圖中。世界地圖可在特定GPS座標處儲存虛擬世界之動畫,且進一步透過3D點及視覺影像而索引至世界中之特定位置(例如,具有近似一英尺/三十釐米之一解析度)。在另一實例中,系統可基於指示用戶端裝置之相對位置之同步資料而將局部地圖結合在一起,該等用戶端裝置在其橫穿一環境時產生局部地圖。
說明性程序將資料映射至雲端且自雲端映射資料。在一項實施例中,一地圖係空間中之一3D點集合(諸如一點雲),該3D點集合以類似於3D像素之一方式表示世界。在可用且有用時,將影像資料連同3D地圖一起發送。特定實例發送不具有影像資料之3D地圖資料。
在各種實施例中,一用戶端裝置使用由一處理器執行之3D演算法來產生一3D地圖。用戶端裝置以一高效方式發送影像、3D地圖、GPS資料及任何其他感測器資料(例如,IMU資料、任何其他位置資料)。舉例而言,可選擇性地發送影像以便不使傳輸或處理停滯。在一項實例中,當影像展示出環境之一新穎視點時,可選擇性地發送該等影像,但當影像僅展示出環境內之一先前所見之視點時,不可選擇性地發送該等影像。舉例而言,當用戶端裝置之一相機之視域與來自過去或最近相機姿勢之先前影像具有最小重疊時,或當在取決於物件之預期移動之一時間量內未觀察到影像中之視點時,指定一影像以由系統發送。作為另一實例,若自提供來自當前(或一實質上重疊)視點之一先前影像以來已逝去一臨限時間量,則可提供影像。此可使得與地圖相關聯之所儲存影像能夠被更新以反映由影像繪示之一真實世界位置之一更當前(或至少一最近)狀態。
在各種實施例中,一雲端側裝置(諸如一伺服器)包含一即時偵測系統,該即時偵測系統使用3D資料及影像來偵測物件並估計影像中所繪示之真實世界環境之幾何形狀。舉例而言,可利用影像判定非真實之一房間之一3D地圖(例如,半密集及/或密集3D重建)。伺服器將影像及3D資料與偵測系統融合在一起以構建世界之一個一致且易於索引之3D地圖,或使用GPS資料合成真實世界地圖。一旦被儲存,真實世界地圖便可經搜尋以定位先前所儲存動畫及其他虛擬物件。
在各種實施例中,在用戶端裝置上完成地圖建立及追蹤。用戶端裝置聚集真實世界之一稀疏重建(將世界數位化),以及用戶端裝置之一相機相對於真實世界之一位置。地圖建立包含建立一點雲或3D點集合。用戶端裝置藉由串列化及傳輸點雲資訊及GPS資料而將稀疏表示傳遞回至伺服器。雲端處理達成多玩家能力(即時或幾乎即時地在獨立用戶端裝置之間共享地圖資料),能夠具有一有效實體記憶體(儲存並未在本端儲存於裝置上之用於將來體驗之地圖及動畫資料)及進行物件偵測。
伺服器包含地圖及圖框之一資料庫。每一圖框包含感測器資料,諸如形成影像之像素中之一或多者、相對於一座標空間之姿勢、相機內在要素(例如,相機參數,諸如焦距)、特徵點及/或特徵描述符等。伺服器使用GPS資料來判定先前是否已針對一真實世界位置儲存一真實世界地圖。若找到,則伺服器可將所儲存地圖傳輸至一用戶端裝置。 擴增實境計算系統
圖1係根據一實施例之包含一用戶端裝置102之一AR計算系統100之一方塊圖,該用戶端裝置與經由一網路104存取之元件協作。舉例而言,該等元件可為用以產生AR資料之一伺服器之組件。在某些實施例中,用戶端裝置102係一使用者可使用來存取一平行實境遊戲(例如,擴增實境遊戲)或另一擴增實境系統之一計算裝置。用戶端裝置擷取影像資料(亦稱為影像) (經由一裝置上相機)、3D資料、GPS資料及諸如此類。舉例而言,用戶端裝置102包含一遊戲引擎106 (例如,UNITY® 遊戲引擎或另一物理/再現引擎)及一AR平台108。
遊戲引擎106可促進用戶端裝置102處之一平行實境遊戲(或其他AR程式)。舉例而言,遊戲引擎106可接收由一使用者與用戶端裝置102進行之互動,諸如使用者經由用戶端裝置102之一介面而輸入資訊或一使用者在真實世界內移動用戶端裝置。遊戲引擎106可基於此等互動經由介面而將平行實境遊戲之資訊顯示給使用者。遊戲引擎106可在本端儲存平行實境遊戲之資訊,包含在虛擬世界中之虛擬位置處可用之虛擬元素,該等虛擬位置對應於真實世界內之位置。另一選擇係,遊戲引擎106可在伺服器處存取描述虛擬世界之遊戲台資訊且與伺服器連續進行通信以促進用戶端裝置102處之平行實境遊戲。關於圖4進一步描述針對平行實境遊戲之虛擬世界與真實世界之間的平行性。
AR平台108可對由用戶端裝置102擷取之資料執行分段及物件辨識。AR平台包含一複雜視覺模組110、一同時定位與地圖建立模組112、一地圖檢索模組114及一深度學習模組116。在某些實施例中,AR平台包含替代或額外模組。
複雜電腦視覺模組110執行用戶端側影像處理。複雜電腦視覺模組110接收由用戶端裝置102上之一相機擷取之影像資料且對影像資料執行影像處理。影像處理可包含影像分段及局部3D估計。
同時定位與地圖建立(例如,SLAM)模組112基於由用戶端裝置102擷取之影像資料及GPS資料而對用戶端裝置102周圍之一環境進行地圖建立。特定而言,SLAM模組112建立一或多個局部地圖,每一局部地圖表示如在由用戶端裝置102擷取之資料中查看之真實世界之部分。在某些實施例中,SLAM模組112亦可判定用戶端裝置102在環境中之位置。SLAM模組112包含建立局部地圖之一地圖建立系統,該等局部地圖可包含點、線及平面幾何形狀。此外,SLAM模組112可構建點雲且使用由用戶端裝置102擷取之追蹤資訊來找到相機(例如用戶端裝置102)在空間中之一位置。在其他實施例中,SLAM模組可使用影像資料及追蹤資訊來構建地圖。SLAM模組112進一步藉由將來自虛擬世界之動畫或擴增值覆疊於由用戶端裝置102擷取之影像資料(其經由用戶端裝置102之一顯示器而呈現)上而將該等動畫或擴增值重新投影回至真實世界中。在其他實施例中,SLAM模組112可使用不同或額外方法來對一用戶端裝置102周圍之環境進行地圖建立及/或判定用戶端裝置102在彼環境中之位置。
在某些實施例中,SLAM模組112可在產生一環境之一局部地圖之前使用戶端裝置102之位置與另一用戶端裝置同步。舉例而言,SLAM模組可在該環境中接收一機器可讀碼(例如,QR碼)之影像資料且使用戶端裝置102之位置與擷取相同機器可讀碼之一影像之其他用戶端裝置同步。SLAM模組112可將此資訊儲存為用於局部地圖之指示環境之位置之同步資料。在另一實例中,若影像資料含有另一用戶端裝置之一視圖(SLAM模組112可自影像資料判定該視圖或一使用者可經由用戶端裝置102指示該視圖),則SLAM模組112可儲存用於局部地圖之同步資料,該同步資料指示用戶端裝置102與另一用戶端裝置位於同一位置並參考其局部地圖。
地圖檢索模組114檢索由SLAM模組112產生之地圖。地圖檢索模組114自地圖資料庫124 (下文進一步描述)檢索先前產生之地圖(例如,經由網路104)。在某些實施例中,地圖檢索模組114可在用戶端裝置102處本端儲存某些地圖,諸如一使用者之家庭位置之一地圖。地圖檢索114可基於來自遊戲引擎106之一通知而檢索地圖且將地圖發送至遊戲引擎106以用於促進平行實境遊戲。
深度學習模組116應用機器學習模型來進行地圖上之物件辨識。深度學習模組116接收來自地圖檢索模組114之地圖。深度學習模組116應用一或多個機器學習模型來執行關注或特徵點偵測(例如,使用尺度不變特徵變換(SIFT)或定向FAST及旋轉BRIEF (ORB))以及物件偵測及分類。舉例而言,深度學習模組116可將一機器學習模型應用於地圖以判定含於地圖內之物件。機器學習模型可為分類器、迴歸模型及諸如此類。深度學習模組116可在於一外部系統上進行訓練之後(例如,經由網路104)獲得機器學習模型。在某些實施例中,深度學習模組116亦可提供物件辨識結果及/或使用者回饋來達成進一步模型訓練。
AR計算系統100包含用戶端裝置102可經由網路104而存取之元件。此等元件可位於一遠端伺服器處且包含與一個世界地圖建立模組120、一物件辨識模組122、一地圖資料庫124、一物件資料庫126及一深度學習訓練模組128進行通信之一AR後端引擎118。在其他實施例中,可包含額外或不同組件。此外,功能性可以與本文中所描述不同之方式分佈。舉例而言,在某些實施例中,可在用戶端裝置102處執行物件辨識功能性中之某些或全部。
一個世界地圖建立模組120將不同局部地圖融合在一起以建立一合成真實世界地圖(例如,真實世界之一單個3D地圖)。單個3D地圖可表示為由邊緣連結在一起之節點之一圖形。每一節點可表示由一用戶端裝置102產生之一地圖,該用戶端裝置可為圖1中所展示之用戶端裝置102或連接至伺服器以用於平行實境遊戲之另一用戶端裝置。每一地圖可基於用戶端裝置102而具有其自身之座標空間,該用戶端裝置產生了地圖或同一裝置之座標空間隨時間之變化(例如,由於GPS漂移或條件之改變等)。連接節點之邊緣可表示節點之座標空間之間的一變換。一個世界地圖建立模組120可在其經由網路104自用戶端裝置102接收到新地圖時將新節點及邊緣添加至單個3D地圖。一個世界地圖建立模組120將單個3D地圖儲存於地圖資料庫124中。
在一實例性使用情形情景中,即使在局部地圖之間存在一間隙,一個世界地圖建立模組120仍可判定該等局部地圖之節點之間的一邊緣。舉例而言,一個世界地圖建立模組120可接收局部地圖之節點,每一節點含有一線之部分而不具有連接其他兩個部分之一部分。一個世界地圖建立模組120可臨時將線之每一部分延伸達超出局部地圖中所指示量之一指定量(例如,十釐米、一米或無限遠)。假定局部地圖之相對位置係已知的(例如,基於識別一共同特徵之特徵分析或位置同步,如先前所描述),一個世界地圖建立模組120可判定每一局部地圖中之線之部分皆係同一線之一部分。舉例而言,若一線之投影致使其在一臨限量(例如,一毫米、一釐米等)內與另一線重疊,則一個世界地圖建立模組120可判定兩個部分係同一線之一部分。因此,一個世界地圖建立模組120可使用連接線之缺失部分來判定節點之間的一邊緣且將缺失部分添加至局部地圖中之一者或兩者。關於圖2進一步描述一個世界地圖建立模組120及單個3D地圖。
地圖資料庫124包含經組態以儲存由用戶端裝置102產生之地圖資料(亦即,「地圖」)之一或多個電腦可讀媒體。地圖資料可包含與由用戶端裝置102在一位置處收集之影像及其他感測器資料相關聯地儲存之3D點雲之局部地圖。地圖資料亦可包含地圖建立資訊,該地圖建立資訊指示不同局部地圖與表示真實世界或真實世界內之特定環境之一單個3D地圖之間的地理關係。雖然地圖資料庫124展示為一單一實體,但其可跨越多個裝置處之多個儲存媒體而分佈(例如,作為一分佈式資料庫)。
物件辨識模組122使用來自由用戶端裝置102擷取之影像及3D資料之物件資訊來識別資料中所表示之真實世界中之特徵。舉例而言,物件辨識模組122可判定一椅子係在一環境內之一3D位置處且將描述椅子之3D位置之物件資訊添加至物件資料庫126。物件辨識模組122可對儲存於地圖資料庫中之地圖、由一或多個用戶端裝置102擷取之影像資料或者由一或多個用戶端裝置102產生之地圖執行物件辨識。物件辨識模組可在對同一環境之新影像資料執行物件辨識之後另外更新儲存於物件資料庫126中之物件資訊。物件辨識模組122可自來自各種用戶端裝置102之經擷取影像連續接收物件資訊以添加至物件資料庫126。
在某些實施例中,物件辨識模組122可進一步將偵測到之物件區分成各種類別。在一項實施例中,物件辨識模組122可將所擷取影像中之物件識別為靜止或臨時的。舉例而言,物件辨識模組122可將一樹木判定為一靜止物件。在後續例項中,與可被判定為臨時之物件相比,物件辨識模組122可較不頻繁地更新靜止物件。舉例而言,物件辨識模組122可判定一所擷取影像中之一動物係臨時的且若在一後續影像中該動物不再存在於環境中,則可移除該物件。
物件資料庫126包含經組態以儲存關於所辨識物件之物件資訊之一或多個電腦可讀媒體。舉例而言,物件資料庫126可包含已知物件(例如,椅子、桌子、樹木、建築物等)之一清單,該清單具有該等物件之對應位置及該等物件之性質。性質可對一物件類型係泛用的或針對物件之每一例項而具體定義(例如,所有椅子皆可被視為家具,但每一椅子之位置可被個別地定義)。物件資料庫126可進一步基於每一物件之物件類型而區分物件。物件類型可基於類似特性而將物件資料庫126中之所有物件進行分組。舉例而言,一植物物件類型之所有物件可為由物件辨識模組122識別為植物之物件,諸如樹木、灌木、草、藤蔓等。在某些實施例中,系統可學習在相對穩定(例如,靜止)之特徵與較動態之特徵之間進行區分。舉例而言,系統可學習到,椅子傾向於在一定程度上到處移動,而桌子傾向於在近似同一位置中停留延長之時間週期。雖然物件資料庫126展示為一單一實體,但其可跨越多個裝置處之多個儲存媒體而分佈(例如,作為一分佈式資料庫)。
深度學習模組128將地圖資料與物件資訊融合在一起。特定而言,深度學習模組128可自地圖資料庫124或者一或多個用戶端裝置102檢索地圖且自物件資料庫126檢索物件資訊。深度學習模組可連結物件資訊與包含來自物件資訊之物件之對應地圖資料。深度學習模組128可使用在伺服器上訓練之一或多個機器學習模型來進行此。機器學習模型可包含分類器、神經網路、迴歸模型及諸如此類。深度學習模組128可將經融合資訊儲存於地圖資料庫124或伺服器處之另一資料庫中。
圖2係根據一項實施例之一個世界地圖建立模組120之一方塊圖。一個世界地圖建立模組120包含一地圖模組210、一圖形模組215、一組合模組220、一影像資料庫230及一地圖資料庫240。在額外或替代實施例中,一個世界地圖建立模組120可包含執行下文未論述之額外操作之其他模組。
地圖模組210基於由用戶端裝置102擷取之資料而判定一環境之地圖。此資料可包含影像資料、感測器資料、GPS資料及諸如此類。地圖模組210可基於所擷取資料而構建點雲,該等點雲用作環境之地圖。在某些實施例中,地圖模組210可使用其他技術來基於由用戶端裝置102擷取之資料判定一環境之一地圖。然而,在其他實施例中,地圖建立由SLAM模組112而非地圖建立模組210執行,且地圖建立模組210替代地自SLAM模組112檢索在用戶端裝置102處產生之局部地圖。在某些實施例中,可能已使用由同一環境內之多個用戶端裝置102擷取之資料協作地構建局部地圖中之一或多者。地圖模組210可將局部地圖儲存於地圖資料庫240處。地圖模組210將局部地圖發送至圖形模組215。
圖形模組215判定一或多個局部地圖之圖形表示。圖形模組215自地圖模組210接收局部地圖。圖形模組215亦可接收描述每一局部地圖之資訊。此資訊可包含哪一用戶端裝置產生了局部地圖及/或用於產生局部地圖之所擷取資料、用於產生局部地圖之資料、資料何時被擷取(例如,日期及時間)及諸如此類。
針對每一局部地圖,圖形模組215建立表示局部地圖之一節點。在某些實施例中,每一用戶端裝置102及/或伺服器亦由圖形模組215所建立之一節點表示。每一節點基於描述該節點所表示之局部地圖、用戶端裝置或伺服器之資訊而具有其自身之獨立座標系統。表示一環境之局部地圖之節點可另外不僅表示環境之空間覆蓋,且亦表示時間覆蓋(例如,環境如何隨時間改變)。圖形模組將節點發送至組合模組220以用於併入至先前所描述之單個3D地圖中。在另一實施例中,針對不同時間(例如,一天內之不同時段,諸如早晨、下午、晚上及夜間等)之地圖儲存於不同節點中且該等節點之間的邊緣指示地圖之空間座標及時間座標兩者中之映射。
組合模組220使用特徵分析將局部地圖轉換成真實世界之一單個3D地圖。在某些實施例中,組合模組220可將局部地圖組合成一個單個3D地圖。在其他實施例中,組合模組使用局部地圖建立每一環境之一3D地圖且將3D地圖連結於一單個3D地圖中。
組合模組220自圖形模組215接收表示一或多個局部地圖之節點。針對每一對節點,組合模組220可判定一邊緣。該邊緣表示節點之座標空間之間的一變換。在某些情形中,一對節點可在其間不具有一邊緣(例如,若該等節點展示完全不同之環境)。否則,該對節點可具有與其相關聯之一或多個邊緣。在某些實施例中,組合模組220可僅判定同一環境中之節點之邊緣,該組合模組可基於局部地圖之間的特徵匹配而判定該等邊緣。在一項實施例中,地圖建立模組210可基於兩個局部地圖在距彼此之一臨限距離內(組合模組220可自用於產生每一局部地圖之GPS資料來判定此)而將該等局部地圖識別為展示一單一環境。
組合模組220可基於由多個用戶端裝置102擷取之資料而形成邊緣。每一用戶端裝置可具有與其相關聯之一置信度得分,且置信度得分可用於判定邊緣之一置信度得分。邊緣之置信度得分表示使用該邊緣所表示的自一第一節點移動至一第二節點之變換將導致一輸出節點與第二節點相同之可能性。為判定邊緣,組合模組可使用追蹤資訊(例如,在平行實境遊戲之同一作業階段期間由同一用戶端裝置擷取之局部地圖之節點可能具有一邊緣)、基於特徵之定位(例如,基於含於局部地圖內之特徵(諸如點、線等)對節點之兩個局部地圖進行定位)、3D雲端對準(例如,利用一ICP演算法)、由同一用戶端裝置102產生之連續局部地圖之間的強制重疊、跨越複數個局部地圖之後處理最佳化及/或基於機器可讀碼之定位(例如,同步)。
舉例而言,在一項實施例中,組合模組220可執行特徵分析以判定用於兩個節點之一邊緣。組合模組220自物件資料庫126檢索針對兩個局部地圖中之每一者之資訊且對每一局部地圖執行特徵分析以使用該資訊判定局部地圖是否皆含有一共同特徵。若組合模組220判定每一地圖含有相同共同特徵,則組合模組220基於該共同特徵建立一邊緣。
在另一實例中,組合模組220可基於由用戶端裝置102執行之一同步而判定節點之間的一邊緣。組合模組220針對每一局部地圖檢索同步資料,該同步資料指示用戶端裝置102在同一環境內位於同一位置。當用戶端裝置102彼此指向時或當每一用戶端裝置102已擷取環境中之一機器可讀碼(例如,一QR碼)或其他可辨識特徵之影像時,可判定同步資料。基於該同步資料,組合模組220判定局部地圖之節點之一邊緣。
針對每一對節點,組合模組220自地圖資料庫240存取真實世界之一單個3D地圖。單個3D地圖包含由連接至伺服器之多個用戶端裝置102擷取之複數個節點且表示真實世界之一佈局。若節點中之一者或兩者尚未位於單個3D地圖中,則組合模組220將缺失之一或若干節點添加至單個3D地圖。此外,若組合模組220判定該對節點之一邊緣,則組合模組220在單個3D地圖中將邊緣連結在一起,從而基本上將局部地圖連結至一個較大地圖(例如,單個3D地圖)中。在某些實施例中,組合模組220可另外基於該邊緣而將局部地圖結合在一起以形成包含兩個局部地圖中之至少某些之一單個地圖。
組合模組220亦可在單個3D地圖中之現有節點之間添加邊緣。在某些實施例中,當判定一新邊緣時,組合模組220可將一對節點之間的多個邊緣組合成一單個邊緣。在其他實施例中,組合模組220可保留單個3D地圖中之一對節點之間的所有邊緣且指示哪一邊緣係所有邊緣中之最新邊緣,使得一用戶端裝置可在必要時使用最新邊緣來在局部地圖之間進行變換。
連接至伺服器之用戶端裝置102可使用單個3D地圖來在一環境內對其自身進行定位且在針對平行實境遊戲之一位置處檢索關於虛擬世界之資訊。此外,節點及邊緣之系統可用於減少單個3D地圖中之漂移及離群值。舉例而言,組合模組220可在節點已位於單個3D地圖中達一臨限時間量之後移除未藉由邊緣連結至其他節點之節點。 實例性資料流
圖3係展示根據一實施例之程序之一流程圖,該等程序由一用戶端裝置102及一伺服器執行以產生及顯示AR資料。用戶端裝置102及伺服器可類似於圖1中所展示之用戶端裝置及伺服器。虛線表示用戶端裝置102與伺服器之間的資料傳遞,而實線指示一單一裝置內(例如,用戶端裝置102內或伺服器內)之資料傳遞。在其他實施例中,可在裝置之間以不同方式分佈功能性及/或可使用不同裝置。
在302處,由一或多個感測器在用戶端裝置102處收集原始資料。在一項實施例中,原始資料包含影像資料、慣性量測資料及位置資料。影像資料可由實體地或無線地連結至用戶端裝置102之一或多個相機擷取。慣性量測資料可使用一陀螺儀、一加速度計或其一組合來收集且可包含多達六個自由度之慣性量測資料,亦即,三個自由度之平移移動及三個自由度之旋轉移動。位置資料可利用一全球定位系統(GPS)接收器來收集。額外原始資料可藉由各種其他感測器而收集,諸如壓力位準、照明位準、濕度位準、海拔高度位準、聲音位準、音訊資料等。原始資料可在一或多個儲存模組中儲存於用戶端裝置102中,該一或多個儲存模組可記錄歷史上由用戶端裝置102之各種感測器獲取之原始資料。
用戶端裝置102可維持304處之一局部地圖儲存。局部地圖儲存包含局部點雲資料。點雲資料包括空間中之位置,該等位置形成可被構建之一網格表面。在304處之局部地圖儲存可包含局部點雲資料之階層快取,以易於檢索來供用戶端裝置102使用。在304處之局部地圖儲存可另外包含融合至局部點雲資料中之物件資訊。物件資訊可在局部點雲資料中指定各種物件。
一旦在302處收集原始資料,用戶端裝置102便在306處檢查是否初始化一地圖。若在306處初始化一地圖,則用戶端裝置102可在308處起始SLAM功能。SLAM功能包含一地圖建立系統,該地圖建立系統構建點雲及追蹤以在初始化地圖上之空間中找到相機之位置。實例之SLAM程序進一步將動畫或一擴增值重新投影回至真實世界中。若在310處未初始化地圖,則用戶端裝置102可在304處之局部地圖儲存中搜尋已被本端儲存之一地圖。若在304處之局部地圖儲存中找到一地圖,則用戶端裝置102可檢索彼地圖以供由SLAM功能使用。若在310處未定位地圖,則用戶端裝置102可在312處使用一初始化模組來建立一新地圖。
一旦建立一新地圖,初始化模組便可將新建立之地圖儲存於304處之局部地圖儲存中。用戶端裝置102可在伺服器側上定期地使局部地圖儲存304中之地圖資料與320處之雲端地圖儲存同步。當同步地圖資料時,用戶端裝置102上之局部地圖儲存304可向伺服器發送任何新建立之地圖。伺服器側在326處檢查雲端地圖儲存320:是否來自用戶端裝置102之所接收地圖先前已被儲存於雲端地圖儲存320中。若否,則伺服器側在328處產生一新地圖以儲存於雲端地圖儲存320中。另一選擇係,伺服器可將328處之新地圖附加至雲端地圖儲存320中之現有地圖。
返回至用戶端側上,用戶端裝置102在314處判定是否偵測到一新穎視點。在某些實施例中,用戶端裝置102判定所擷取影像流中之每一視點是否與儲存於用戶端裝置102上之先前存在之視點具有小於一臨限重疊(例如,局部地圖儲存304可儲存由用戶端裝置102獲取或自雲端地圖儲存320檢索之視點)。在其他實施例中,用戶端裝置102在一多步驟判定中判定是否偵測到一新穎視點,314。在一高層級處,用戶端裝置102可檢索用戶端裝置102地理位置之一局部半徑內之任何先前存在之視點。自先前存在之視點,用戶端裝置102可開始在所討論之視點中識別與先前存在之視點相比之類似物件或特徵。舉例而言,用戶端裝置102在所討論之視點中識別一樹木且可自局部半徑內之先前存在之視點進一步減少亦具有可見樹木之所有先前存在之視點。用戶端裝置102可使用額外篩選層,該等額外篩選層在將所討論之視點與先前存在之視點之經篩選集合匹配時更穩健。在一項實例中,用戶端裝置102使用一機器學習模型來判定所討論之視視點是否與經篩選集合中之另一視點匹配(亦即,所討論之視點並非新穎的,此乃因其與一現有視點匹配)。若偵測到一新穎視點,314,則用戶端裝置102在316處記錄藉由局部環境推斷聚集之資料。舉例而言,在判定用戶端裝置102當前具有一新穎視點時,可將以新穎視點擷取之影像發送至伺服器(例如,發送至伺服器側上之一地圖/影像資料庫318)。可使用一新穎視點偵測器模組來判定何時及如何傳輸具有3D資料之影像。局部環境推斷可包含局部地圖建立系統之經更新關鍵圖框以及經串列化影像及/或地圖資料。局部環境推斷可由伺服器使用來相對於地圖中之一給定位置處之其他視點擬合新穎視點。
在伺服器側上,新穎視點資料(例如,包括首要地具有網格資料之點雲資訊)可在318處儲存於伺服器側上之地圖/影像資料庫中。伺服器可自所儲存雲端地圖儲存320及一物件資料庫322添加一真實世界地圖之不同部分。雲端環境推斷324 (包括所添加組件資料)可被發送回至用戶端裝置。所添加資料可包含點及網格以及具有語義標籤(例如,一牆壁或一床)之物件資料,以儲存於局部地圖儲存304中。 虛擬世界之概念圖
圖4繪示根據一項實施例之與真實世界400平行之一虛擬世界410之一概念圖,該真實世界可充當一基於位置之平行實境遊戲之玩家之遊戲台。圖1之用戶端裝置102可利用與如圖4中所展示之真實世界400對應之一虛擬世界410來主控一平行實境遊戲(或其他基於位置之遊戲)。
如所圖解說明,虛擬世界410可包含與真實世界400之地形平行之一地形。特定而言,將界定真實世界400中之一地理區域或空間之一座標範圍映射至界定虛擬世界410中之一虛擬空間之一對應座標範圍。真實世界400中之座標範圍可與一城鎮、鄰里、城市、校園、場所、一國家、大陸、整個地球或其他地理區域相關聯。將地理座標範圍內之每一地理座標映射至虛擬世界中之一虛擬空間中之一對應座標。
一玩家在虛擬世界410中之位置對應於該玩家在真實世界400中之位置。舉例而言,在真實世界400中位於位置412處之玩家A在虛擬世界410中具有一對應位置422。類似地,在真實世界中位於位置414處之玩家B在虛擬世界中具有一對應位置424。當玩家在真實世界400中之一地理座標範圍內四處移動時,該等玩家亦在界定虛擬世界410中之虛擬空間之座標範圍內四處移動。特定而言,當一玩家在真實世界中導航地理座標範圍時,可使用與由該玩家攜載之用戶端裝置102相關聯之一定位系統(例如由定位與地圖建立模組112使用之一GPS系統或其他系統)來追蹤玩家之位置。使用與玩家在真實世界400中之位置相關聯之資料來更新玩家在界定虛擬世界410中之虛擬空間之對應座標範圍內之位置。以此方式,玩家可藉由簡單地在真實世界400中之對應地理座標範圍當中行進而無需在真實世界400中之特定離散位置處檢入或週期性地更新位置資訊,從而在界定虛擬世界410中之虛擬空間之座標範圍內導航一連續追蹤。
平行實境遊戲可包含複數個遊戲目標,該複數個遊戲目標要求玩家行進至分散在虛擬世界410中之各種虛擬位置處之各種虛擬元素及/或虛擬物件及/或與該等各種虛擬元素及/或虛擬物件進行互動。一玩家可藉由行進至虛擬元素或物件在真實世界400中之對應位置而行進至此等虛擬位置。舉例而言,用戶端裝置102之一定位系統可連續追蹤玩家之位置,使得當玩家連續導航真實世界400時,玩家亦連續導航平行虛擬世界410。玩家可然後與特定位置處之各種虛擬元素及/或物件進行互動以達成或執行一或多個遊戲目標。
舉例而言,參考圖4,一遊戲目標可要求玩家捕獲位於虛擬世界410中之各種虛擬位置處之虛擬元素430或主張該等虛擬元素之所有權。此等虛擬元素430可連結至真實世界400中之地標、地理位置或物件440。真實世界地標或物件440可為藝術品、紀念碑、建築物、企業、圖書館、博物館或者其他適合真實世界地標或物件。為捕獲此等虛擬元素430,一玩家必須行進至在真實世界中連結至虛擬元素430之地標、地理位置或物件440且必須執行與虛擬世界410中之虛擬元素430之任何必要互動。舉例而言,圖4之玩家A將必須行進至真實世界400中之一地標440,以便經由用戶端裝置102而和與彼特定地標440連結之一虛擬元素430進行互動或捕獲該虛擬元素。與虛擬元素430之互動可需要真實世界400中之動作,諸如拍攝一照片及/或驗證、獲得或擷取關於與虛擬元素430相關聯之地標或物件440之其他資訊。
遊戲目標可要求玩家使用由玩家在平行實境遊戲中收集之一或多個虛擬項目。舉例而言,玩家可必須在虛擬世界410中行進,從而尋找可對於完成遊戲目標有用之虛擬項目(例如武器或其他項目)。可藉由行進至真實世界400中之不同位置或者藉由在虛擬世界410或真實世界400中完成各種動作而找到或收集此等虛擬項目。在圖4中所展示之實例中,一玩家使用虛擬項目432來捕獲一或多個虛擬元素430。特定而言,一玩家可在虛擬世界410中接近虛擬元素430之位置處部署虛擬項目432。接近一虛擬元素430部署一或多個虛擬項目432可致使針對特定玩家或針對特定玩家之團隊及/或派別而捕獲虛擬元素430。
在一項特定實施方案中,作為平行實境遊戲之一部分,一玩家可必須聚集虛擬能量。如圖4中所繪示,虛擬能量450可分散在虛擬世界410中之不同位置處。一玩家可藉由在真實世界400中行進至虛擬能量450之對應位置而收集虛擬能量450。虛擬能量450可用於為虛擬項目提供動力及/或執行平行實境遊戲中之各種遊戲目標。失去所有虛擬能量450之一玩家可與平行實境遊戲斷開連接。
根據本發明之態樣,平行實境遊戲可為一大型多玩家基於位置之遊戲,其中平行實境遊戲中之每個參與者共享同一虛擬世界。玩家可劃分成單獨團隊或派別且可一起工作以達成一或多個遊戲目標,諸如捕獲一虛擬元素430或主張該虛擬元素之所有權。以此方式,平行實境遊戲可本質上係鼓勵平行實境遊戲內之玩家之間的合作之一社交遊戲。在平行實境遊戲期間,來自對立團隊之玩家可相互對抗。一玩家可使用虛擬項目432來攻擊或阻礙對立團隊上之玩家之前進。
平行實境遊戲可具有各種特徵以增強及鼓勵平行實境遊戲內之遊戲玩法。舉例而言,玩家可累積可在整個平行實境遊戲中使用之一虛擬貨幣或其他虛擬獎賞。隨著玩家在平行實境遊戲內完成一或多個遊戲目標並獲得經驗,玩家可進展通過各種等級。玩家可透過在平行實境遊戲中所提供之一或多個通信介面而彼此進行通信。玩家亦可獲得可用於完成平行實境遊戲內之遊戲目標之增強的「力量」或虛擬項目432。熟習此項技術者使用本文中所提供之揭示內容應理解,各種其他遊戲特徵可與平行實境遊戲包含在一起而不背離本發明之範疇。 實例性方法
圖5係圖解說明根據一實施例之將一第一3D地圖與一第二3D地圖一起連結至一環境之一單個3D地圖中之一程序500的一流程圖。在某些實施例中,可將程序500更改為在用戶端側而非伺服器側執行。在此實施例中,伺服器接收510由一第一用戶端裝置102之一相機擷取之一第一組影像資料。影像資料表示一環境中之第一用戶端裝置102周圍之一第一區域之一幾乎即時視圖。伺服器基於第一組影像資料及在某些情形中由第一用戶端裝置102擷取之位置資料而產生520一第一3D地圖。3D地圖在空間上描述第一用戶端裝置102周圍之第一區域。
伺服器接收自環境中之第二用戶端裝置102擷取之一第二組影像資料。第二組影像資料描述第二用戶端裝置102周圍之一第二區域,且伺服器基於第二組影像資料而產生530一第二3D地圖。伺服器分析540第一3D地圖及第二3D地圖以尋找位於兩個3D地圖中之一共同特徵。回應於伺服器找到第一3D地圖及第二3D地圖中之一共同特徵,伺服器將第一3D地圖與第二3D地圖連結550至描述環境之一單個3D地圖中。在另一實施例中,用戶端裝置102產生第一3D地圖及第二3D地圖且將其發送至伺服器,該伺服器判定是否及如何將該第一3D地圖與該第二3D地圖連結在一起。
在某些實施例中,第一3D地圖及第二3D地圖可在節點之一圖形中相關聯。特定而言,第一3D地圖及第二3D地圖可各自由圖形中被一邊緣連結之節點表示。每一節點與一不同座標空間相關聯,該不同座標空間表示擷取用於產生3D地圖之影像資料之用戶端裝置102或表示影像資料由各別用戶端裝置擷取之一時間。邊緣包含經連結節點之不同座標空間之間的一變換。伺服器可基於分析540而判定邊緣,該分析可包含以下各項中之一或多者:作業階段資訊、基於點特徵之定位、基於線特徵之定位、3D雲端對準、強制重疊、最佳化或基於QR碼之定位。
圖6係圖解說明根據一實施例之用於基於一同步而產生一環境之一單個3D地圖之一程序600的一流程圖。在某些實施例中,可將程序600可更改為在用戶端側執行。在此實施例中,伺服器接收610由一第一用戶端裝置102之一相機擷取之影像資料。影像資料表示一環境中之第一用戶端裝置周圍之一第一區域之一幾乎即時視圖。伺服器在第一用戶端裝置102與一第二用戶端裝置102之間同步620位置。在某些實施例中,伺服器藉由自每一用戶端裝置102或另一用戶端裝置接收一特徵(諸如一QR碼)之影像資料而同步位置。
伺服器基於影像資料而自第一用戶端裝置產生630一第一3D地圖。另一選擇係,第一3D地圖可由用戶端裝置102產生且被發送至伺服器而非影像資料。第一3D地圖在空間上描述第一用戶端裝置102周圍之第一區域。第一3D地圖可為原始影像或由第一用戶端裝置102產生之一點雲。伺服器接收自環境中之第二用戶端裝置102擷取之影像資料。影像資料描述第二用戶端裝置102周圍之一第二區域,且伺服器基於影像資料而自第二用戶端裝置產生640一第二3D地圖。伺服器基於同步而自第一3D地圖及第二3D地圖產生650一單個3D地圖。由於裝置之位置在環境內被同步,因此即使第一3D地圖與第二3D地圖不重疊,亦可判定該等地圖內之特徵之相對位置。 計算機器架構
圖7係圖解說明適合於用作一用戶端裝置102或一伺服器之一實例性電腦700之一高階方塊圖。實例性電腦700包含耦合至一晶片組704之至少一個處理器702。晶片組704包含一記憶體控制器集線器720及一輸入/輸出(I/O)控制器集線器722。一記憶體706及一圖形配接器712耦合至記憶體控制器集線器720,且一顯示器718耦合至圖形配接器712。一儲存裝置708、鍵盤710、指標裝置714及網路配接器716耦合至I/O控制器集線器722。電腦700之其他實施例具有不同架構。
在圖7中所展示之實施例中,儲存裝置708係一非暫時性電腦可讀儲存媒體,諸如一硬碟機、光碟唯讀記憶體(CD-ROM)、DVD或一固態記憶體裝置。記憶體706保持由處理器702使用之指令及資料。指標裝置714係一滑鼠、追蹤球、觸控螢幕或其他類型之指標裝置,且與鍵盤710 (其可為一螢幕上鍵盤)組合地用於將資料輸入至電腦系統700中。在其他實施例中,電腦700具有各種其他輸入機構,諸如觸控螢幕、操縱桿、按鈕、捲動輪等或其任何組合。圖形配接器712在顯示器718上顯示影像及其他資訊。網路配接器716將電腦系統700耦合至一或多個電腦網路(例如,網路配接器716可經由網路104將用戶端裝置102耦合至伺服器)。
由圖1之實體使用之電腦類型可取決於實施例及實體所需之處理能力而變化。舉例而言,一伺服器可包含一分散式資料庫系統,該分散式資料庫系統包括共同工作以提供所描述之功能性之多個刀鋒(blade)伺服器。此外,該等電腦可缺乏上文所描述之組件中之某些組件,諸如鍵盤710、圖形配接器712及顯示器718。
熟習此項技術者可在不背離所描述之概念之情況下對本文中所揭示之設備及技術做出諸多使用及修改以及與其之背離。舉例而言,本發明中所圖解說明或描述之組件或特徵不限於所圖解說明或描述之位置、設定或內容脈絡。相比於參考前述各圖中之一或多者描述之彼等組件,根據本發明之設備之實例可包含其中之所有組件、較少組件或不同組件。本發明因此不限於本文中所描述之特定實施方案,而是應被賦予與隨附申請專利範圍及其等效內容一致之可能的最寬廣範疇。
100:擴增實境計算系統 102:用戶端裝置/第一用戶端裝置/第二用戶端裝置 104:網路 106:遊戲引擎 108:擴增實境平台 110:複雜視覺模組/複雜電腦視覺模組 112:同時定位與地圖建立模組/定位與地圖建立模組 114:地圖檢索模組/地圖檢索 116:深度學習模組 118:擴增實境後端引擎 120:一個世界地圖建立模組 122:物件辨識模組 124:地圖資料庫 126:物件資料庫 128:深度學習訓練模組/深度學習模組 210:地圖模組/地圖建立模組/圖形模組 220:組合模組 230:影像資料庫 240:地圖資料庫 302:步驟 304:局部地圖儲存 306:步驟 308:步驟 310:步驟 312:步驟 314:步驟 316:步驟 318:地圖/影像資料庫 320:雲端地圖儲存/所儲存雲端地圖儲存 322:物件資料庫 324:雲端環境推斷 326:步驟 328:步驟 400:真實世界 410:虛擬世界/平行虛擬世界 412:位置 414:位置 422:對應位置 424:對應位置 430:虛擬元素 432:虛擬項目 440:地標/地理位置/物件/真實世界地標 450:虛擬能量 500:程序 510:步驟 520:步驟 530:步驟 540:步驟 550:步驟 600:程序 610:步驟 620:步驟 630:步驟 640:步驟 650:步驟 700:電腦/電腦系統 702:處理器 704:晶片組 706:記憶體 708:儲存裝置 710:鍵盤 712:圖形配接器 714:指標裝置 716:網路配接器 718:顯示器 720:記憶體控制器集線器 722:輸入/輸出控制器集線器
圖1展示根據一實施例之用於產生及顯示擴增實境資料之一網路計算環境。
圖2係根據一項實施例之一個世界地圖建立模組120之一方塊圖。
圖3係圖解說明根據一實施例之程序之一流程圖,該等程序可由一AR計算系統執行以用於產生及顯示擴增實境資料。
圖4繪示根據一項實施例之與真實世界平行之一虛擬世界之一概念圖,該真實世界可充當一基於位置之平行實境遊戲之玩家之遊戲台。
圖5係圖解說明根據一實施例之將一第一3D地圖與一第二3D地圖一起連結至一環境之一單個3D地圖中之一流程圖。
圖6係圖解說明根據一實施例之基於一同步而產生一環境之一單個3D地圖之一流程圖。
圖7係圖解說明根據一實施例之適合於用作一用戶端裝置或一伺服器之一實例性電腦之一高階方塊圖。
302:步驟
304:局部地圖儲存
306:步驟
308:步驟
310:步驟
312:步驟
314:步驟
316:步驟
318:地圖/影像資料庫
320:雲端地圖儲存/所儲存雲端地圖儲存
322:物件資料庫
324:雲端環境推斷
326:步驟
328:步驟

Claims (20)

  1. 一種組合來自多個用戶端裝置之地圖資料以產生一環境之一三維(3-D)地圖之方法,該方法包括: 接收由整合於一第一用戶端裝置中之一相機擷取之一第一組影像資料,該第一組影像資料表示該第一用戶端裝置周圍之一第一區域之一幾乎即時視圖; 基於該第一組影像資料而產生一第一3D地圖,該3D地圖在空間上描述該第一用戶端裝置周圍之該第一區域; 基於一第二組影像資料而產生一第二3D地圖,其中該第二3D地圖在空間上描述一第二用戶端裝置周圍之一第二區域; 分析該第一3D地圖及該第二3D地圖以識別一共同特徵;及 基於該共同特徵而將該第一3D地圖與該第二3D地圖連結於一單個3D地圖中。
  2. 如請求項1之方法,其中: 該第一3D地圖與一圖形之一第一節點相關聯; 該第二3D地圖與該圖形之一第二節點相關聯;且 該第一節點與該第二節點由基於該分析而判定之一邊緣連結。
  3. 如請求項2之方法,其中該第一節點及該第二節點中之每一者與不同座標空間相關聯且該邊緣包含該等不同座標空間之間的一變換。
  4. 如請求項3之方法,其中每一座標空間表示該影像資料被擷取之一時間。
  5. 如請求項4之方法,其中使用以下各項中之一或多者來判定該邊緣:作業階段資訊、基於點特徵之定位、基於線特徵之定位、3D雲端對準、強制重疊、最佳化或基於QR碼之定位。
  6. 如請求項2之方法,其中該圖形包含與3D地圖資料相關聯之節點,該3D地圖資料係自由一或多個用戶端裝置在一或多個時間擷取之影像資料產生。
  7. 如請求項2之方法,其中該第一3D地圖及該第二3D地圖中之每一者與一置信度得分相關聯且該邊緣係基於每一3D地圖之該置信度得分。
  8. 如請求項1之方法,其進一步包括: 基於該單個3D地圖而判定該環境中之一第三用戶端裝置之一位置。
  9. 如請求項1之方法,其中在一虛擬實境遊戲中連接該第一用戶端裝置與該第二用戶端裝置。
  10. 一種包括可由一處理器執行之指令之非暫時性電腦可讀儲存媒體,該等指令包括: 用於接收由整合於一第一用戶端裝置中之一相機擷取之一第一組影像資料之指令,該第一組影像資料表示該第一用戶端裝置周圍之一第一區域之一幾乎即時視圖; 用於基於該第一組影像資料而產生一第一3D地圖之指令,該3D地圖在空間上描述該第一用戶端裝置周圍之該第一區域; 用於基於一第二組影像資料而產生一第二3D地圖之指令,其中該第二3D地圖在空間上描述一第二用戶端裝置周圍之一第二區域; 用於分析該第一3D地圖及該第二3D地圖以識別一共同特徵之指令;及 用於基於該共同特徵而將該第一3D地圖與該第二3D地圖連結於一單個3D地圖中之指令。
  11. 如請求項10之非暫時性電腦可讀儲存媒體,其中: 該第一3D地圖與一圖形之一第一節點相關聯; 該第二3D地圖與該圖形之一第二節點相關聯;且 該第一節點與該第二節點由基於該分析而判定之一邊緣連結。
  12. 如請求項11之非暫時性電腦可讀儲存媒體,其中該第一節點及該第二節點中之每一者與不同座標空間相關聯且該邊緣包含該等不同座標空間之間的一變換。
  13. 如請求項12之非暫時性電腦可讀儲存媒體,其中每一座標空間表示該影像資料被擷取之一時間。
  14. 如請求項13之非暫時性電腦可讀儲存媒體,其中使用以下各項中之一或多者來判定該邊緣:作業階段資訊、基於點特徵之定位、基於線特徵之定位、3D雲端對準、強制重疊、最佳化或基於QR碼之定位。
  15. 如請求項11之非暫時性電腦可讀儲存媒體,其中該圖形包含與3D地圖資料相關聯之節點,該3D地圖資料係自由一或多個用戶端裝置在一或多個時間擷取之影像資料產生。
  16. 如請求項11之非暫時性電腦可讀儲存媒體,其中該第一3D地圖及該第二3D地圖中之每一者與一置信度得分相關聯且該邊緣係基於每一3D地圖之該置信度得分。
  17. 如請求項10之非暫時性電腦可讀儲存媒體,該等指令進一步包括: 用於基於該單個3D地圖而判定該環境中之一第三用戶端裝置之一位置之指令。
  18. 如請求項10之非暫時性電腦可讀儲存媒體,其中在一虛擬實境遊戲中連接該第一用戶端裝置與該第二用戶端裝置。
  19. 一種電腦系統,其包括: 一電腦處理器;及 一非暫時性電腦可讀儲存媒體,其儲存指令,該等指令在由該電腦處理器執行時執行包括以下各項之動作: 接收由整合於一第一用戶端裝置中之一相機擷取之一第一組影像資料,該第一組影像資料表示該第一用戶端裝置周圍之一第一區域之一幾乎即時視圖; 基於該第一組影像資料而產生一第一3D地圖,該3D地圖在空間上描述該第一用戶端裝置周圍之該第一區域; 基於一第二組影像資料而產生一第二3D地圖,其中該第二3D地圖在空間上描述一第二用戶端裝置周圍之一第二區域; 分析該第一3D地圖及該第二3D地圖以識別一共同特徵;及 基於該共同特徵而將該第一3D地圖與該第二3D地圖連結於一單個3D地圖中。
  20. 如請求項19之電腦系統,其中: 該第一3D地圖與一圖形之一第一節點相關聯; 該第二3D地圖與該圖形之一第二節點相關聯;且 該第一節點與該第二節點由基於該分析而判定之一邊緣連結。
TW109145173A 2019-12-20 2020-12-18 合併來自地圖建立裝置之局部地圖 TWI775247B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962952036P 2019-12-20 2019-12-20
US62/952,036 2019-12-20

Publications (2)

Publication Number Publication Date
TW202135008A true TW202135008A (zh) 2021-09-16
TWI775247B TWI775247B (zh) 2022-08-21

Family

ID=76437695

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109145173A TWI775247B (zh) 2019-12-20 2020-12-18 合併來自地圖建立裝置之局部地圖

Country Status (9)

Country Link
US (1) US11969651B2 (zh)
EP (1) EP4078540A4 (zh)
JP (1) JP7466649B2 (zh)
KR (1) KR20220119123A (zh)
CN (1) CN115151948A (zh)
AU (1) AU2020409014A1 (zh)
CA (1) CA3165304A1 (zh)
TW (1) TWI775247B (zh)
WO (1) WO2021124289A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11014001B2 (en) * 2018-03-05 2021-05-25 Sony Interactive Entertainment LLC Building virtual reality (VR) gaming environments using real-world virtual reality maps
EP3846124A1 (en) * 2019-12-30 2021-07-07 TMRW Foundation IP SARL System and method enabling a collaborative 3d map data fusion platform and virtual world system thereof
KR102639524B1 (ko) * 2021-10-05 2024-02-22 국방과학연구소 전자 장치의 지도 병합 방법
WO2023132269A1 (ja) * 2022-01-06 2023-07-13 ソニーグループ株式会社 情報処理装置、および情報処理方法、並びにプログラム
CN114236564B (zh) * 2022-02-23 2022-06-07 浙江华睿科技股份有限公司 动态环境下机器人定位的方法、机器人、装置及存储介质
US20240046564A1 (en) * 2022-08-02 2024-02-08 Niantic, Inc. Simulated Consistency Check for Points of Interest on Three-Dimensional Maps

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2691935A1 (en) 2011-03-29 2014-02-05 Qualcomm Incorporated System for the rendering of shared digital interfaces relative to each user's point of view
US20120306850A1 (en) 2011-06-02 2012-12-06 Microsoft Corporation Distributed asynchronous localization and mapping for augmented reality
US20140267234A1 (en) * 2013-03-15 2014-09-18 Anselm Hook Generation and Sharing Coordinate System Between Users on Mobile
US20140323148A1 (en) * 2013-04-30 2014-10-30 Qualcomm Incorporated Wide area localization from slam maps
US9437047B2 (en) * 2014-01-15 2016-09-06 Htc Corporation Method, electronic apparatus, and computer-readable medium for retrieving map
US10547825B2 (en) * 2014-09-22 2020-01-28 Samsung Electronics Company, Ltd. Transmission of three-dimensional video
US10185775B2 (en) * 2014-12-19 2019-01-22 Qualcomm Technologies, Inc. Scalable 3D mapping system
GB2541884A (en) 2015-08-28 2017-03-08 Imp College Of Science Tech And Medicine Mapping a space using a multi-directional camera
US9721369B2 (en) * 2015-09-15 2017-08-01 Facebook, Inc. Systems and methods for utilizing multiple map portions from multiple map data sources
US9984499B1 (en) * 2015-11-30 2018-05-29 Snap Inc. Image and point cloud based tracking and in augmented reality systems
KR101868374B1 (ko) 2016-10-20 2018-06-18 엘지전자 주식회사 이동 로봇의 제어방법
JP6874343B2 (ja) 2016-11-24 2021-05-19 株式会社豊田中央研究所 地図作成装置
KR101756946B1 (ko) 2017-01-20 2017-07-11 장수진 경도선/위도선을 기반으로 교통로를 구성하고, 지도 검색을 수행하는 방법 및 장치
US10990829B2 (en) * 2017-04-28 2021-04-27 Micro Focus Llc Stitching maps generated using simultaneous localization and mapping
US10885714B2 (en) * 2017-07-07 2021-01-05 Niantic, Inc. Cloud enabled augmented reality
CN109426333B (zh) 2017-08-23 2022-11-04 腾讯科技(深圳)有限公司 一种基于虚拟空间场景的信息交互方法及装置
WO2019221800A1 (en) * 2018-05-18 2019-11-21 Purdue Research Foundation System and method for spatially registering multiple augmented reality devices
US11297296B2 (en) 2018-05-30 2022-04-05 Sony Corporation Display control apparatus, program, and display control method
US10748302B1 (en) * 2019-05-02 2020-08-18 Apple Inc. Multiple user simultaneous localization and mapping (SLAM)
US11043004B2 (en) * 2019-05-22 2021-06-22 Dell Products, L.P. Resolving region-of-interest (ROI) overlaps for distributed simultaneous localization and mapping (SLAM) in edge cloud architectures
US11087479B1 (en) * 2019-12-20 2021-08-10 Facebook Technologies, Llc Artificial reality system with 3D environment reconstruction using planar constraints

Also Published As

Publication number Publication date
TW202241569A (zh) 2022-11-01
US11969651B2 (en) 2024-04-30
JP2023507500A (ja) 2023-02-22
CA3165304A1 (en) 2021-06-24
WO2021124289A1 (en) 2021-06-24
CN115151948A (zh) 2022-10-04
KR20220119123A (ko) 2022-08-26
US20210187391A1 (en) 2021-06-24
AU2020409014A1 (en) 2022-08-18
EP4078540A4 (en) 2023-01-18
JP7466649B2 (ja) 2024-04-12
TWI775247B (zh) 2022-08-21
EP4078540A1 (en) 2022-10-26

Similar Documents

Publication Publication Date Title
US11430189B2 (en) Cloud assisted generation of local map data using novel viewpoints
TWI775247B (zh) 合併來自地圖建立裝置之局部地圖
KR102612347B1 (ko) 장치 위치 측정을 위한 다중 동기화 통합 모델
TWI842024B (zh) 合併來自地圖建立裝置之局部地圖

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent