您好,歡迎來電子發(fā)燒友網! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網>源碼下載>數值算法/人工智能>

ARCore如何好過ARKit?

大?。?/span>0.6 MB 人氣: 2017-09-28 需要積分:1
《p》本文原文作者為Matt Miesnieks,目前擔任6D.ai的CEO,Super Ventures合伙人, AR領域資深投資人。由亮風臺(hiscene)編譯。 《br》 在ARCore發(fā)布前不久,Matt Miesnieks曾發(fā)表過一篇ARKit、Vuforia、Tango和HoloLens的比較分析,并得出ARKit是更好的選擇這一結論。然而,8月29日,Google發(fā)布了ARCore,正面對抗ARKit,對此,他作了進一步分析,下面就讓我們看看,這件AR行業(yè)的大事,對于開發(fā)者和消費者來說,意味著什么呢?《/p》《p》ARCore只是輕量級的Tango么? 《br》 一位開發(fā)者戲稱:“我覺得ARCore SDK,就像是他們隨便地把Tango SDK改了個名字,注釋掉深度相機那塊代碼,改了一種編譯標志?!睉摬恢惯@些,但也不會太多,比如支持ARCore的新的Web瀏覽器對開發(fā)者來說很友好,但它們屬于相互獨立的核心SDK。《/p》《p》大概很多人都想知道為什么12個月之前,一切都已準備好的時候,Google沒有發(fā)布Tango VIO(無需深度相機),但現在才發(fā)布出來。 《br》 不論如何,這是一個好消息,意味著ARCore是非常成熟的,而且經過了充分的軟件測試(盡管蘋果有Metaio和Flyby的收購基礎,但ARCore還是比ARKit至少多兩年的實踐測試);另外,谷歌已經為Tango安排好了全面的功能藍圖,其中有不少無需依賴3D深度相機的功能,都在ARCore中找到了它們的位置。 《br》 如果在普通的智能手機上添加深度相機,你就等同于擁有了Tango手機?,F在谷歌有一個更簡單的路徑,可以通過OEM旗艦機,推廣SDK,ARCore就會隨著手機而被推廣開來?!?p》《p》關于標定 《br》 這就是有趣之所在了……Matt Miesnieks我之前有說過蘋果ARKit能夠如此穩(wěn)定的三種標定方法: 《br》 相機的光學幾何校正(簡單) 《br》 相機的光度標定(難) 《br》 IMU誤差消除(非常難) 《br》 另外,傳感器時鐘同步是更重要的?!?p》《p》標定不是非黑即白的問題,需要統(tǒng)計、并做更多的迭代以減少誤差,才能讓用例更加穩(wěn)定。系統(tǒng)標定得越好,位置估計誤差就會越不容易出現。 《br》 正如蘋果的ARKit,谷歌也做了以下幾件事: 《br》 首先,谷歌對所支持的設備選擇十分謹慎。起初,只有Samsung S8和Pixel。谷歌工程師已經在這些平臺進行過傳感器標定的優(yōu)化,以適配于DayDream的Inside-Out追蹤(從三自由度向六自由度)。不久前,谷歌工程師在韓國對Samsung傳感器進行標定和調諧,希望下一代手機可以支持Daydream。所以我們才有了標定好且符合時鐘同步的相機與IMU的兩款設備?!?p》《p》Google在今年早些時候的Google IO大會上宣布inside-out 6自由度跟蹤支持Day 《br》 今年,Google為融合Tango和Daydream SDK做了大量工作,據說11月份這項工作就會結束,所以8月底,很多底層工作應該會完成,意味著Tango/ARCore VIO系統(tǒng)可以利用Daydream傳感器融合的工作成果。 《br》 最后,標定的真正好處可以從系統(tǒng)表現看出來。ARKit和ARCore在用戶發(fā)現誤差之前,都可以追蹤得非常好。在AR應用中,目前還是以內容直觀可見的形式為主,不像室內導航那樣,存在長時間長距離的端對端測試。所以,從AR應用角度來看,標定帶來的差異幾乎是無法被檢測的。但是開發(fā)者們正在擴大SDK應用的界限,谷歌預計會在工廠中做更緊密的標定,并上市一批新一代的設備?!?p》《p》Vibrator被用于在工廠中標定加速度計,AR軟件堆棧更無須擔心過多誤差的問題了 《br》 最大的IMU OEM曾提到,為了節(jié)省成本,他們的智能機IMU在工廠中只是在單一溫度下進行標定。這意味著IMU硬件在某一指定的溫度下,誤差被調節(jié)到最低。但當手機發(fā)熱的時候,IMU就不會那樣準確。雖然這是十分普遍的現象,但是對于VIO來說,一旦設備發(fā)熱,標定結果不可信,算法結果會產生漂移。當然,OEM也可以在客戶要求下,在多種溫度下標定傳感器。 《br》 這一點,谷歌比不上蘋果。雖然這只是一個很小的誤差,但是意味著谷歌ARCore VIO代碼會隨著設備不同而發(fā)生變化。蘋果的軟硬件垂直集成幫助它更快地應對這類挑戰(zhàn),而Android需要對整個生態(tài)系統(tǒng)進行過濾。 《br》 光照 《br》 ARCore和ARKit提供了場景中的光照實時估計,所以開發(fā)者們可以迅速調整模擬光照,以便適應真實世界。 《br》 ARKit和ARCore可以對場景光進行簡單的估計,不管是真實世界環(huán)境光還是尖銳的聚光燈。ARKit為開發(fā)者提供了強度和色溫選項,而ARCore提供了單像素強度值(Android Studio API)或shader(Unity API)。這兩種方法在早期Demo中有相似的結果,而Google的Demo看起來更好一些,可能是因為開發(fā)者們對Tango用得更熟。 《br》 不過,谷歌在今年的Google I/O大會中已經表示,對虛擬陰影在真實世界光照下調整的功能即將和開發(fā)者們見面。這是一個很大的進步,會讓AR更加真實。 《br》 建圖 《br》 Mapping,即SLAM中的‘M’,也叫建圖,是ARCore相對于ARKit的顯著優(yōu)勢領域之一。 《br》 它意味著可以將3D真實世界的環(huán)境信息存在內存中,供追蹤器(VIO系統(tǒng)中的重要部分)進行設備的定位。設備就可以知道自己在環(huán)境中所處的位置。為了幫助大家理解,舉個例子,蒙著眼睛把你放到一個陌生城市的市中心,只給你一張地圖,你可以通過地圖了解到自己的位置。 《br》 最簡單形式的SLAM建圖是一些離散的3D點云數據,它們代表了光學特征點的位置(例如桌角)。在這些數據中還隱藏著一些元數據,通過特征點在多幀中相同位置出現的次數,表明點的可信度(例如走來走去的狗,可信度就很低,因為每張圖拍到的結果都不同)。一些圖包括了“關鍵幀”,也就是每隔幾秒存儲的視頻或照片的單幀,可以幫助追蹤器更好地將真實世界與圖進行匹配。另外,一些圖使用密集點云,更可信但是需要GPU和更多內存。ARCore和ARKit都使用了離散點云圖(可能沒有關鍵幀)?!?p》《p》離散點云圖就像右上圖所示。左上圖顯示了點云和真實世界是如何匹配的(顏色代表點的可信度)。左下圖是原始圖像,右下圖是強度圖,可以被用到多種SLAM系統(tǒng)中(但并沒有用到ARKit或ARCore中)。 《br》 那么這是如何工作的呢?當您加載ARCore/ARKit App時,跟蹤器會檢測之前是否有加載好的圖,如果沒有就會通過立體計算,自定義一個新的地圖,也就是說我們擁有了相機視角下的一個小范圍3D圖。當你開始四處運動,相機捕捉到新的一幅圖,并加載到3D圖中,讓它變得更大。ARKit在建圖的時候使用了“sliding window”,也就是說它只會在圖中保存最近的時間和距離數據,舊的數據會被自動忽視,而ARCore會管理更大的地圖,也就是說系統(tǒng)會更加穩(wěn)定。 《br》 所以使用ARCore,即使跟丟了也會恢復得很好。 《br》 ARCore相對于ARKit的獨有之處 《br》 誰都未能想到,ARCore在ARKit發(fā)布后,擁有如此迅速的反應時間。相對于ARKit來說,ARCore其實有不少優(yōu)勢: 《br》 1.功能方面:有一些ARKit并未提到的功能優(yōu)勢 《br》 2.開發(fā)者經驗:ARCore在Tango和Daydream上積累幾年豐富的開發(fā)者經驗,相對于ARKit僅僅幾個月來說,是更加成熟的。 《br》 3.OEM:有足夠的OEM廠商提供強大的支持 《br》 4.宣傳:一段比較走心的宣傳短片 《br》 ARCore的開發(fā)者們真的可以行動起來了么? 《br》 如果你喜歡Android,你有一個Samsung S8或Pixel,那么別猶豫,直接去開發(fā)吧。如果你喜歡iPhone,也不要擔心是否需要換成ARCore。ARKit / ARCore SDK目前還是1.0版,功能還非?;A(VIO,平面檢測,基礎照明),將在未來幾年內獲得更多的功能(3D場景理解,遮擋,多人聯(lián)網,內容持久性等)。對開發(fā)商和消費者來說,這將是一個不斷的學習曲線。所以現在只需要堅持向著自己認為對的路子走就好。 《br》 ARCore與ARKit究竟誰更好? 《br》 作為技術解決方案,它們的能力非常接近。ARKit在集成和跟蹤方面具有一定的技術優(yōu)勢; ARCore在建圖和重定位方面具有一些優(yōu)勢??墒沁@兩個優(yōu)點大多是專業(yè)的計算機視覺工程師才能看到的。 《br》 蘋果有一個清晰的市場宣傳優(yōu)勢,擁有龐大的設備基礎,可以立即升級到包含ARKit的最新iOS系統(tǒng)。蘋果的用戶一般更愿意花錢,所以從中期來看,AR Apps應該可以在ARKit上更好地獲利。 Android的優(yōu)勢在于規(guī)?;?,但Android生態(tài)系統(tǒng)需要至少12個月才能將所有的部分整合在一起,并在大多數新設備中獲得硬件支持的ARCore。 《br》 ARCore在管理Tango R&D的架構上有很好的優(yōu)勢,其中大部分已經進行了用戶/市場測試?,F在基礎已經比較到位,期待系統(tǒng)在未來12-24個月內快速發(fā)展,將變得更有趣。 《br》 ARKit或ARCore?主要還是看開發(fā)者的個人偏好和目標。這兩個系統(tǒng)都有自己的優(yōu)點和缺點,但重要的是兩者都能夠為消費者提供足夠的消費體驗,開發(fā)者請腦洞大開,盡情享受這個過程吧! 《br》 ARCore開發(fā)傳送門:《a href=“https://developers.google.com/ar/”》https://developers.google.com/ar/《/a》 《br》 ARKit開發(fā)傳送門:《a href=“https://developer.apple.com/arkit/”》https://developer.apple.com/arkit/《/a》《/p》
?

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關規(guī)定!

      ?