ARcore概述及開發環境.md
#ARcore 學習 (一)
概述及開發環境
##基本概念
ARcore是Google公司開發的增強現實體驗構建平臺。利用不同的API使手機可以感知環境,瞭解現實世界並和資訊進行互動。 ARcore主要使用三種技術功能將虛擬內容通過手機攝像頭與現實世界整合: 運動跟蹤:使手機可以理解和跟蹤自己相對於現實世界的位置 環境理解:使手機可以檢測各類表面(地面,牆壁,桌面等水平,垂直和傾斜表面)的大小和位置 光估測:使手機可以估測當前環境的光照條件,使虛擬內容更好的融合到現實世界中 支援的裝置和開發平臺 基本要求是執行在Android 7.0(Nougat)以及更高版本的系統上 硬體方面也有一定要求,但官方並未給出具體資料
###現有官方全球範圍支援裝置列表如下:
華碩: Zenfone AR,Zenfone ARES
Google: Nexus 5X(Android 8.0或更高),Nexus 6P(Android 8.0或更高),Pixel,Pixel XL,Pixel 2,Pixel 2 XL HMD Global: Nokia 6 2018版(也叫Nokia 6.1),Nokia 6.1 Plus,Nokia 7 Plus,Nokia 8(Android 8.0或更高),Nokia 8 Sirocco
華為: Honor 10,nova 3,nova 3i,P20,P20 Pro,Mate RS(保時捷設計)
LG: G6(Android 8.0或更高),G7 ThinQ,(V30, V30+, V30+ JOJO)以上都需要Android 8.0或以上版本,V35 ThinQ
摩托羅拉: Moto G5S Plus,Moto G6,Moto G6 Plus,Moto X4(Android 8.0或更高),Moto Z2 Force,Moto Z3,Moto Z3 Play
一加: OnePlus 3T(Android 8.0或更高),OnePlus 5,OnePlus 5T,OnePlus 6
三星: Galaxy A5 (2017) ,Galaxy A6 (2018) ,Galaxy A7 (2017) ,Galaxy A8, Galaxy A8+ (2018),Galaxy Note8,Galaxy Note9,Galaxy S7, Galaxy S7 edge,Galaxy S8, Galaxy S8+,Galaxy S9, Galaxy S9+,Galaxy Tab S4
Sony: Xperia XZ Premium,Xperia XZ1, Xperia XZ1 Compact(以上都需要Android 8.0或更高系統),Xperia XZ2, Xperia XZ2 Compact, Xperia XZ2 Premium(以上除需要Android 8.0以上系統外,還需要安全補丁高於2018-08-05版本)
Vivo: NEX A,NEX S
小米: MI 8,MI 8 SE,MI Mix 2S,Pocophone F1
Android中國支援的裝置有:
小米:
Mix 2S,MI 8
華為:
P20, P20 Pro,Mate RS保時捷設計
iOS裝置需要安裝iOS 11.0或者更高版本併兼容ARKit:
iPhone:
iPhone X,iPhone 8&8 Plus,iPhone 7&7 Plus,iPhone 6S&6S Plus,iPhone SE
iPad:
iPad第五代和第六代,12.9英寸的iPad Pro第一代和第二代
所支援的開發平臺有: Android Android NDK Unity for Android Unity for iOS iOS Unreal web
##工作原理分析
ARCore在做的兩件最本質的事情:在移動裝置移動時跟蹤它的位置和構建自己對現實世界的理解。
ARCore 的運動跟蹤技術使用手機攝像頭標識特徵點,並跟蹤這些點隨著時間變化的移動。 將這些點的移動與手機慣性感測器的讀數組合,ARCore可以在手機移動時確定它的位置和螢幕方向。
除了標識關鍵點外,ARCore還會檢測平坦的表面(例如桌子或地面),並估測周圍區域的平均光照強度。這些功能共同讓ARCore可以構建自己對周圍世界的理解。 藉助 ARCore 對現實世界的理解,我們能以一種與現實世界無縫整合的方式新增物體、註釋或其他資訊。
##基本概念
-
運動跟蹤
-
用於估測攝像頭隨著時間推移而相對於周圍世界的姿態(位置和方向)的技術
-
環境理解
- ARcore需要不斷通過特徵點和平面來改進它對環境的理解
-
光估測
-
通過對環境光的檢測,來使虛擬物體也具有相同的光照現象,與現實環境更加融合
-
使用者互動
- 主要是ARcore對於虛擬物體的互動操作
-
定向點
-
指定的特徵點,用來在現實環境中固定虛擬物體來使用
-
錨點和可跟蹤物件
- 錨點是位於現實環境中來固定虛擬物體的點,我們用來確定位置的現實物體就是可跟蹤物件
-
增強影象
-
可以用來響應的特殊2D影象 雲錨點共享 將錨點用雲端來進行共享,從而實現多裝置聯機
###相關資料
百度搜索 EasyAR 視+AR
#環境搭建
- 下載ARcore
- 環境要求
Android Studio 3.1 或更高版本以及 Android SDK Platform 7.0(API 級別 24)或更高版本 Android Emulator 27.2.7 或更高版本
- 非常手段