ARKit嘗試翻譯二_First Steps

Understanding Augmented Reality

Overview

任何AR的經(jīng)驗和arkit定義特征的基本要求是能夠創(chuàng)建和跟蹤對應(yīng)的真實空間之間的用戶在和一個虛擬的空間里你可以模型視覺內(nèi)容康二。當(dāng)你的應(yīng)用程序顯示的內(nèi)容與現(xiàn)場攝像頭圖像,用戶體驗增強現(xiàn)實:幻想,你的虛擬內(nèi)容是真實世界的一部分

How World Tracking Works

創(chuàng)建一個現(xiàn)實和虛擬空間之間的對應(yīng)關(guān)系闲询,arkit使用的技術(shù)稱為視覺慣性測距呕缭。這個過程結(jié)合了從iOS設(shè)備的運動傳感硬件與設(shè)備的攝像頭可見的場景的計算機視覺分析的信息授嘀。arkit識別顯著特征的場景圖像赴穗,跟蹤在視頻幀之間的特征差異的位置炕吸,該信息與運動傳感數(shù)據(jù)比較姿染。其結(jié)果是一個高精度的設(shè)備的位置和運動模型背亥。

世界跟蹤還分析和理解場景的內(nèi)容。使用命中測試方法(參見

ARHitTestResult

類)找到對應(yīng)于相機圖像中某個點的真實世界的表面悬赏。如果啟用

planeDetection

在您的會話配置設(shè)置狡汉,ARKit檢測平面在相機的圖像和報告他們的位置和尺寸。您可以使用命中測試結(jié)果或檢測到的飛機放置或與您的場景中的虛擬內(nèi)容交互

Best Practices and Limitations

世界跟蹤是一門不精確的科學(xué)闽颇。這個過程往往會產(chǎn)生令人印象深刻的準(zhǔn)確性轴猎,導(dǎo)致現(xiàn)實的AR經(jīng)驗。然而进萄,它依賴于設(shè)備的物理環(huán)境的細(xì)節(jié)并不總是一致的或難以實時測量沒有一定程度的錯誤捻脖。要建立高質(zhì)量的AR體驗,請注意這些警告和提示中鼠。

設(shè)計可預(yù)見照明條件的AR經(jīng)驗可婶。世界跟蹤涉及圖像分析,需要清晰的圖像援雇。當(dāng)相機看不到細(xì)節(jié)時矛渴,跟蹤質(zhì)量降低,例如當(dāng)相機指向空白的墻壁或場景太暗時。

使用跟蹤質(zhì)量信息提供用戶反饋具温。世界跟蹤相關(guān)的圖像分析與設(shè)備的議案蚕涤。arkit開發(fā)更好的了解現(xiàn)場,如果設(shè)備是移動的铣猩,即使設(shè)備只能移動微妙揖铜。過大的運動過快、過快或晃動過猛會導(dǎo)致模糊圖像或太多的距離用于跟蹤視頻幀之間的特征达皿,降低跟蹤質(zhì)量天吓。這個

arcamera

類提供跟蹤狀態(tài)原因信息,您可以使用它來開發(fā)用戶界面峦椰,該用戶界面告訴用戶如何解決低質(zhì)量的跟蹤情況龄寞。

允許平面檢測的時間產(chǎn)生明確的結(jié)果,并禁用平面檢測時汤功,你有你需要的結(jié)果物邑。平面檢測結(jié)果隨時間變化時,首先檢測到的平面滔金,其位置和程度可能是不準(zhǔn)確的拂封。當(dāng)飛機仍在現(xiàn)場,隨著時間的推移鹦蠕,arkit提煉其位置和程度的估計冒签。當(dāng)一個大的平面是在現(xiàn)場,arkit可能繼續(xù)變平面錨的位置钟病、程度萧恕,當(dāng)你已經(jīng)用飛機把內(nèi)容變換。

ARSession

一個arsession物體坐標(biāo)的主要過程肠阱,arkit執(zhí)行代表您創(chuàng)建一個增強現(xiàn)實體驗票唆。這些過程包括讀取數(shù)據(jù)從設(shè)備的運動傳感硬件,控制設(shè)備的內(nèi)置攝像頭屹徘,并對捕獲的相機圖像進(jìn)行圖像分析走趋。該會話綜合所有這些結(jié)果,以建立真實世界的空間噪伊,設(shè)備棲息和虛擬空間簿煌,你模型AR內(nèi)容之間的對應(yīng)關(guān)系。

每一個AR體驗了arkit需要一個單一的arsession對象鉴吹。如果你使用

arscnview

arskview

對象容易建立你的AR的視覺體驗的一部分姨伟,視圖對象包括arsession實例。如果你的AR內(nèi)容建立你自己的渲染器豆励,你就需要實例化并保持arsession對象自己套菜。

運行會話需要會話配置:

arsessionconfiguration

類或其子類

arworldtrackingsessionconfiguration

。這類決定如何arkit跟蹤設(shè)備的位置和運動的相對真實的世界技潘,從而影響你可以創(chuàng)建AR體驗的種類。

Topics

Configuring and Running a Session

-runWithConfiguration:options:

使用指定的配置和選項啟動會話的AR處理伍玖。

Parameters

configuration:定義會話的運動和場景跟蹤行為的對象。

options:如何影響現(xiàn)有會話狀態(tài)(如果有的話)轉(zhuǎn)換到新配置的選項剿吻。

如果會話第一次運行窍箍,此參數(shù)沒有影響。

Discussion:該會話跟蹤設(shè)備的運動和橙,捕捉和處理場景從設(shè)備攝像頭圖像,并與您的坐標(biāo)delegateobject orARSCNVieworARSKView僅在運行時查看造垛。

在已開始立即轉(zhuǎn)換到新會話配置的會話上調(diào)用此方法魔招。選項參數(shù)決定如何將現(xiàn)有會話狀態(tài)轉(zhuǎn)換到新配置。默認(rèn)情況下五辽,會話將從上次已知狀態(tài)恢復(fù)設(shè)備位置跟蹤办斑,并保留添加會話的任何錨點。調(diào)用此方法后杆逗,會話將異步運行乡翅。

ARSessionRunOptions

當(dāng)更改其配置時,影響如何轉(zhuǎn)換AR會話當(dāng)前狀態(tài)的選項

Topics

ARSessionRunOptionResetTracking

該會話不繼續(xù)從先前配置的設(shè)備位置/運動跟蹤罪郊。

Declaration

ARSessionRunOptionResetTracking= (1 << 0)

Discussion

默認(rèn)情況下蠕蚜,當(dāng)您調(diào)用runwithconfiguration:選項:方法在已運行或正在運行的會話上,會話將從其最后一個已知狀態(tài)恢復(fù)設(shè)備位置跟蹤悔橄。(例如靶累,一個aranchor對象保持其相對于攝像機的明顯位置。

runwithconfiguration:選項:方法具有與會話當(dāng)前配置相同類型的配置癣疟,可以使用此選項強制設(shè)備位置跟蹤返回初始狀態(tài)挣柬。

當(dāng)你呼喚runwithconfiguration:選項:方法與會話當(dāng)前配置的不同類型的配置,會話總是重置跟蹤(也就是說睛挚,這個選項是隱式啟用)

ARSessionRunOptionRemoveExistingAnchors

任何與前一配置中的會話相關(guān)的錨點對象將被移除

Declaration

ARSessionRunOptionRemoveExistingAnchors= (1 << 1)

默認(rèn)情況下邪蛔,當(dāng)您調(diào)用runwithconfiguration:選項:在已運行或正在運行的會話的方法上,會話將保留任何aranchor以前添加的對象扎狱。也就是說侧到,AR場景中的對象保持相對于設(shè)備的真實真實位置(除非啟用arsessionrunoptionresettracking選項)。

如果更改會話配置應(yīng)該無效在AR場景明顯的物體的真實位置使arsessionrunoptionremoveexistinganchors選項淤击。例如床牧,如果您向AR場景添加了虛擬內(nèi)容,其位置與真實世界的對象相關(guān)遭贸,請移除這些錨戈咳,以便重新評估適當(dāng)?shù)恼鎸嵨恢谩A硪环矫妫绻趫鼍爸械奶摂M內(nèi)容需要跟蹤真實世界的位置著蛙,只有當(dāng)該內(nèi)容第一次出現(xiàn)删铃,并可以自由移動后,您可以禁用此選項踏堡,以保持錨猎唁。

configuration

定義會話的運動和場景跟蹤行為的對象。

Declaration

@property(nonatomic, copy, readonly)ARSessionConfiguration*configuration;

-pause

會話中的暫停處理

Declaration

- (void)pause;

Discussion

暫停時顷蟆,該會話不跟蹤設(shè)備的運動或捕捉場景圖像诫隅,也不配合其delegate object或更新任何關(guān)聯(lián)arscnview或arskview對象。


Responding to AR Updates

delegate

您提供的對象帐偎,用于接收捕獲的視頻圖像和跟蹤信息逐纬,或響應(yīng)會話狀態(tài)的更改。

如果你使用arscnview或arskview類來顯示AR體驗削樊,不需要會話委派豁生。這些觀點自動顯示捕獲的視頻圖像和坐標(biāo)SceneKit或SpriteKit內(nèi)容跟蹤裝置和攝像機運動。

如果使用金屬或其他渲染技術(shù)創(chuàng)建AR可視化漫贞,請設(shè)置會話委托甸箱。您的委托對象定期接收arframe會話捕獲的對象。這些對象包含視頻幀圖像供您顯示和AR場景信息迅脐,您可以使用坐標(biāo)顯示您渲染的場景元素芍殖。

delegateQueue

通過會話調(diào)用委托方法的調(diào)度隊列。

Discussion

如果此值為nil(默認(rèn)值)谴蔑,則會話將在主隊列上調(diào)用委托方法围小。

ARSessionDelegate

方法可以實現(xiàn)從AR會話接收捕獲的視頻幀圖像和跟蹤狀態(tài)。

...

ARSessionObserver

方法可以實現(xiàn)響應(yīng)于AR會話狀態(tài)的更改树碱。


Displaying and Interacting with AR Content

currentFrame

視頻幀圖像肯适,與相關(guān)的AR場景信息,最近捕獲的會話成榜。

-addAnchor:

添加由會話跟蹤的指定錨點框舔。

-removeAnchor:

移除由會話跟蹤的指定錨點。


Instance Methods

-runWithConfiguration:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末赎婚,一起剝皮案震驚了整個濱河市刘绣,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌挣输,老刑警劉巖纬凤,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異撩嚼,居然都是意外死亡停士,警方通過查閱死者的電腦和手機挖帘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來恋技,“玉大人拇舀,你說我怎么就攤上這事◎叩祝” “怎么了骄崩?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長薄辅。 經(jīng)常有香客問我要拂,道長,這世上最難降的妖魔是什么站楚? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任脱惰,我火速辦了婚禮,結(jié)果婚禮上源请,老公的妹妹穿的比我還像新娘枪芒。我一直安慰自己彻况,他們只是感情好谁尸,可當(dāng)我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著纽甘,像睡著了一般良蛮。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上悍赢,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天决瞳,我揣著相機與錄音,去河邊找鬼左权。 笑死皮胡,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的赏迟。 我是一名探鬼主播屡贺,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼锌杀!你這毒婦竟也來了甩栈?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤糕再,失蹤者是張志新(化名)和其女友劉穎量没,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體突想,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡殴蹄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年究抓,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片饶套。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡漩蟆,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出妓蛮,到底是詐尸還是另有隱情怠李,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布蛤克,位于F島的核電站捺癞,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏构挤。R本人自食惡果不足惜髓介,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望筋现。 院中可真熱鬧唐础,春花似錦、人聲如沸矾飞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽洒沦。三九已至豹绪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間申眼,已是汗流浹背瞒津。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留括尸,地道東北人巷蚪。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像濒翻,于是被迫代替她去往敵國和親屁柏。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,515評論 2 359

推薦閱讀更多精彩內(nèi)容

  • ARKit ARKit框架通過集成iOS設(shè)備攝像頭和運動功能肴焊,在您的應(yīng)用程序或游戲中產(chǎn)生增強現(xiàn)實體驗前联。 概述 增強...
    暗夜夜夜行路閱讀 5,807評論 0 17
  • ARkit Introducing ARKit iOS 11引入ARKit,這是 個全新的框架娶眷,允許開發(fā)者輕松地為...
    坤哥愛卿閱讀 1,345評論 0 1
  • Introducing ARKit iOS 11 引入 ARKit似嗤,這是 個全新的框架,允許開發(fā)者輕松地為 iP...
    沒八阿哥的程序閱讀 2,427評論 1 9
  • 夜紙有感 天昏至哥家届宠,燒夜紙烁落,眾人跪乘粒,遂從之。心底想伤塌,人在世灯萍,長且短,兩眼一閉事...
    雪松_d0e3閱讀 84評論 0 0
  • 下雨的天空 依然好孤獨 熬過無盡的黑夜 是否能見到光明 讓我想起 夢里的陽光 灑滿了枕邊 還是那味道 點亮了身體 ...
    brant_feeboo閱讀 245評論 0 0