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

您的位置:電子發(fā)燒友網>源碼下載>通訊/手機編程>

iOS11系統(tǒng)中SDK的新特性

大小:0.3 MB 人氣: 2017-09-25 需要積分:1

年紀大了過了能熬夜看 WWDC 的時代了,但是還是在小小寶的哭鬧和媽媽大人換尿布的催促中起了個大早。于是算趁著“熱乎”把 WWDC 2017 的 Keynote 看完了。和往年差不多,雖然 WWDC 是一個開發(fā)者會議,但是 Keynote 并不是專門針對我們開發(fā)者的,它還承擔了公司狀況說明,新品發(fā)布等功能。作為技術人員,可能接下來的 session 會更有意義。要用一句話來評價今年 Keynote 所展現出來的內容的話,就是小步革新。大的技術方面可以說只有 ARKit 可堪研究,但是我們還是看到了類似跨 app 拖拽,新的 Files 應用這樣進一步突破 iOS 原有桎梏的更新 (iMessage 轉賬什么的就不提了,我大天朝威武,移動支付領域領先世界至少三年)。iOS 11,特別是配合新的硬件,相信會給用戶帶來不錯的體驗。
作為 iOS 開發(fā)者,和往年一樣,我整理了一下在可能需要關注的地方。
新增框架
新加入 SDK 的大的框架有兩個,分別是負責簡化和集成機器學習的 Core ML 和用來創(chuàng)建增強現實 (AR) 應用的 ARKit。
Core ML
自從 AlphaGo 出現以來,深度學習毫無疑問成了行業(yè)熱點。而 Google 也在去年就轉變 Mobile-first 到 AI-first 的戰(zhàn)略??梢哉f一線的互聯網企業(yè)幾乎都在押寶 AI,目前看來機器學習,特別是深度學習是最有希望的一條道路。
如果你不是很熟悉機器學習的話,我想我可以在這里“僭越”地做一些簡介。你可以先把機器學習的模型看作一個黑盒函數,你給定一些輸入 (可能是一段文字,或者一張圖片),這個函數會給出特定的輸出 (比如這段文字中的人名地名,或者圖片中出現的商店名牌等)。一開始這個模型可能非常粗糙,完全不能給出正確的結果,但是你可以使用大量已有的數據和正確的結果,來對模型進行訓練,甚至改進。在所使用的模型足夠優(yōu)化,以及訓練量足夠大的情況下,這個黑盒模型將不僅對訓練數據有較高的準確率,也往往能對未知的實際輸入給出正確的返回。這樣的模型就是一個訓練好的可以實際使用的模型。
對機器學習模型的訓練是一項很重的工作,Core ML 所扮演的角色更多的是將已經訓練好的模型轉換為 iOS 可以理解的形式,并且將新的數據“喂給”模型,獲取輸出。抽象問題和創(chuàng)建模型雖然并不難,但是對模型的改進和訓練可以說是值得研究一輩子的事情,這篇文章的讀者可能也不太會對此感冒。好在 Apple 提供了一系列的工具用來將各類機器學習模型轉換為 Core ML 可以理解的形式。籍此,你就可以輕松地在你的 iOS app 里使用前人訓練出的模型。這在以前可能會需要你自己去尋找模型,然后寫一些 C++ 的代碼來跨平臺調用,而且難以利用 iOS 設備的 GPU 性能和 Metal (除非你自己寫一些 shader 來進行矩陣運算)。Core ML 將使用模型的門檻降低了很多。
Core ML 在背后驅動了 iOS 的視覺識別的 Vision 框架和 Foundation 中的語義分析相關 API。普通開發(fā)者可以從這些高層的 API 中直接獲益,比如人臉圖片或者文字識別等。這部分內容在以前版本的 SDK 中也存在,不過在 iOS 11 SDK 中它們被集中到了新的框架中,并將一些更具體和底層的控制開放出來。比如你可以使用 Vision 中的高層接口,但是同時指定底層所使用的模型。這給 iOS 的計算機視覺帶來了新的可能。
Google 或者 Samsung 在 Android AI 上的努力,大多是在自帶的應用中集成服務。相比起來,Apple 基于對自己生態(tài)和硬件的控制,將更多的選擇權交給了第三方開發(fā)者。
ARKit
Keynote 上的 AR 的演示可以說是唯一的亮點了。iOS SDK 11 中 Apple 給開發(fā)者,特別是 AR 相關的開發(fā)者帶來了一個很棒的禮物,那就是 ARKit。AR 可以說并非什么新技術,像是 Pokémon Go 這樣的游戲也驗證了 AR 在游戲上的潛力。不過除了 IP 和新鮮感之外,個人認為 Pokémon Go 并沒有資格代表 AR 技術的潛力?,F場的演示像我們展示了一種可能,粗略看來,ARKit 利用單鏡頭和陀螺儀,在對平面的識別和虛擬物體的穩(wěn)定上做得相當出色。幾乎可以肯定,那么不做最早,只做最好的 Apple 似乎在這一刻回到了舞臺上
ARKit 極大降低了普通開發(fā)者玩 AR 的門檻,也是 Apple 現階段用來抗衡 VR 的選項??梢詴诚胍幌赂囝愃?Pokémon Go 的 AR 游戲 (結合實境的虛擬寵物什么的大概是最容易想到的) 能在 ARKit 和 SceneKit 的幫助下面世,甚至在 iPad Pro 現有技能上做像是 AR 電影這樣能全方位展示的多媒體可能也不再是單純的夢想。
而與之相應的,是一套并不很復雜的 API。涉及的 View 幾乎是作為 SceneKit 的延伸,再加上在真實世界的定為也已經由系統(tǒng)幫助處理,開發(fā)者需要做的大抵就是將虛擬物體放在屏幕的合適位置,并讓物體之間互動。而利用 Core ML 來對相機內的實際物體進行識別和交互,可以說也讓各類特效的相機或者攝影 app 充滿了想像空間。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

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

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

      ?