十年磨一劍:iPhone8引3D建模
今年是iPhone誕生的第十年。按照蘋果的傳統(tǒng),大家都相信今年發(fā)布的新iPhone會有很大的技術(shù)革新。而根據(jù)供應(yīng)鏈的消息,蘋果早在今年年初就開始布局3D深度感知元件,可見深度感知非常可能是iPhone 8技術(shù)突破之一。
手機(jī)為什么需要深度感知?因?yàn)槭褂蒙疃雀兄浜蠑z像頭,可以做人臉的精確3D建模。大家知道,隨著人工智能的崛起,面部識別技術(shù)越來越成熟,SenseTime、??低暤炔簧俟径继峁┝嘶谏疃葘W(xué)習(xí)人工智能的面部識別解決方案,目前這些方案已經(jīng)在門禁系統(tǒng)、保安監(jiān)視系統(tǒng)甚至ATM機(jī)中使用。然而,基于傳統(tǒng)二維攝像頭的人臉識別存在很大問題,即無法區(qū)分真實(shí)三維人臉與二維照片,因此這樣的身份認(rèn)證系統(tǒng)容易被一張照片破解,如之前爆出的支付寶刷臉支付被照片騙過認(rèn)證就是這樣的問題。
而一旦擁有人臉的3D建模,這個安全漏洞就被補(bǔ)上了。而且,使用高精度人臉3D建模,人臉識別的準(zhǔn)確度也可以大大提高。iPhone 8如果使用刷臉解鎖,其用戶體驗(yàn)比起指紋認(rèn)證更方便,更快速,同時也會引起一大波手機(jī)廠商跟風(fēng)。
深度感知除了用在前置攝像頭的位置用于刷臉認(rèn)證之外,還可以用在后置攝像頭,用于AR/VR應(yīng)用。AR/VR應(yīng)用中往往需要對周圍環(huán)境和手勢做3D建模,因此也需要深度感知。結(jié)合前不久蘋果剛在WWDC發(fā)布的ARKit,在未來的iPhone使用后置深度感知也不無可能。
深度傳感主流技術(shù)
目前,有三種主流深度傳感技術(shù):結(jié)構(gòu)光,ToF以及攝像頭陣列。結(jié)構(gòu)光技術(shù)精度高,但是對于使用環(huán)境有較多限制,最有可能用在前置攝像頭做高精度3D人臉建模,即用于刷臉;ToF精度一般,對于環(huán)境光容忍度較好,適用于中等大小空間的建模以及動態(tài)姿勢/手勢建模;攝像頭陣列精度較差,但可以用于大尺度寬闊空間3D建模。
結(jié)構(gòu)光技術(shù)
結(jié)構(gòu)光技術(shù)常使用激光作為光源,并用光源把設(shè)計好的圖樣投影到目標(biāo)上。根據(jù)目標(biāo)深度變化,反射光的圖樣會發(fā)生變化,通過比較入射參考圖樣和反射圖樣就能估計深度。圖樣分為時變圖樣和形變圖樣,時變圖樣在不同時間投射不同的圖樣并掃描整個空間,形變圖樣則一次投射圖樣到整個空間,而每個地方投射的圖樣略有不同并計算深度分布。時變圖樣計算較簡單,但掃描時間長,而形變圖樣計算較復(fù)雜,但是可以一次計算整個空間的深度分布。
ToF
ToF系統(tǒng)中,光源發(fā)射一束光,傳感器檢測到反射光并記錄光從ToF傳感器入射至物體到從物體反射回ToF傳感器的時間間隔,即光的飛行時間。通過將非常時間乘以光速就可以知道目標(biāo)物體在空間中的深度信息。ToF傳感器的光學(xué)系統(tǒng)與傳統(tǒng)RGB攝像頭很接近,只是ToF傳感器輸出的是深度信息而非RGB攝像頭輸出的光強(qiáng)。
基于脈沖的ToF傳感器系統(tǒng)
移動設(shè)備中常用的計算飛行時間的方法是通過調(diào)制光源(如周期性地改變光源的強(qiáng)度),并且檢測反射光相當(dāng)于入射光的調(diào)制相位變化。相位變化測量目前已經(jīng)有成熟的混頻技術(shù)可以實(shí)現(xiàn)。
基于調(diào)制光的ToF傳感器。
激光光源以方波形式調(diào)制,通過將反射光與入射參考光做混頻可以估計飛行時間。
基于調(diào)制的ToF有一個主要問題,即距離混疊。當(dāng)入射光和反射光調(diào)制相位差為φ時,我們可以估計飛行距離d=(c/4πf)φ, 其中c是光速,f是光源調(diào)制頻率。然而,相位是一個周期函數(shù)。一個典型的φ-d圖如下圖所示。我們可以看到φ-d僅僅在一小段范圍內(nèi)單調(diào)。因此如果探測到的相位是60度,實(shí)際的相位除了可能等于60度以外還可能等于420度(60+360),780度(60+360*2),等等。故此,d也不能完全確定,除非d的距離范圍事先給定并且落在φ-d的一段單調(diào)區(qū)間內(nèi),因此基于調(diào)制光的ToF測量范圍有限。此外,基于調(diào)制光的ToF的精度和測量范圍還是一對矛盾。想要深度測量范圍大,則需要較低的調(diào)制頻率;如果想要深度測量精度高,則需要較高的調(diào)制頻率。這就進(jìn)一步限制了基于調(diào)制光ToF的性能。一種流行的提高測量范圍的技術(shù)是先后使用兩個不同的調(diào)制頻率并將兩次結(jié)果結(jié)合起來來估計深度,不過這會增加ToF測量的延遲。另外,LED光源所支持的調(diào)制頻率上限較低,因此深度測量精度也較激光要差。
相位-距離圖,相位-距離關(guān)系僅僅在一小段距離里是單調(diào)的,因此會造成混疊。
攝像頭陣列
攝像頭陣列通常使用在不同位置的多個攝像頭來拍攝多幀圖像,并且根據(jù)多幀圖像間的細(xì)微差別來估計深度。在CV領(lǐng)域,專業(yè)術(shù)語叫做“立體視覺”。目前,最簡單但也是用得最多的攝像頭陣列就是雙攝像頭,其中兩個攝像頭的位置稍有距離以模仿人眼??臻g中每一個點(diǎn)在雙攝像頭拍攝到的兩幀圖像上都略有區(qū)別,根據(jù)幾何學(xué)我們可以計算該點(diǎn)的深度。
攝像頭陣列部署方便,成本也很低,但是主要難點(diǎn)在于如何找到同一個點(diǎn)在多幀圖像上的位置(專業(yè)術(shù)語叫做“匹配點(diǎn)”)。目前基于深度學(xué)習(xí)的算法可以幫助找匹配點(diǎn),但是需要的計算量非常大,在移動設(shè)備上會消耗許多電池電量。
技術(shù)比較
總體性能而言,深度感知最關(guān)鍵的性能是精確性。在這方面,結(jié)構(gòu)光最強(qiáng),而攝像頭陣列通常最弱。
另一個重要指標(biāo)是深度測量范圍。結(jié)構(gòu)光的測量范圍最小,而ToF的測量范圍則取決于發(fā)射光的強(qiáng)度以及光源類型。攝像頭陣列的測量范圍取決于攝像頭間的距離。對于通常的攝像頭陣列,其測量范圍通常在10m以上,也就是說沒法測量距離很近物體的深度。
此外,還有深度圖的分辨率指標(biāo)。結(jié)構(gòu)光分辨率比ToF更好,因?yàn)榻Y(jié)構(gòu)光的發(fā)射圖樣可以被光學(xué)元件精確控制。理論上說,攝像頭陣列也有很高的分辨率,但是這基于每一個點(diǎn)都能被完美匹配的基礎(chǔ)上。在通常無法完美匹配的情況下,攝像頭陣列的分辨率會下降。
最后,我們還要考慮環(huán)境亮度。結(jié)構(gòu)光需要工作在較暗的環(huán)境中。ToF傳感器對于環(huán)境亮度容忍度較好,而且隨著背景消除技術(shù)的發(fā)展ToF能工作的環(huán)境亮度范圍正在越來越廣。攝像頭陣列只能工作在較亮的環(huán)境下。在黑暗的環(huán)境下,攝像頭陣列拍攝的圖像質(zhì)量變差,因此匹配點(diǎn)搜索變得更加困難,深度感知算法性能也會變得更差。
中國半導(dǎo)體廠商的機(jī)會
深度感知解決方案包括多個部件,如激光光源、光學(xué)元件以及傳感器芯片等,另外模組也有機(jī)會。中國大陸半導(dǎo)體廠商總體在深度傳感產(chǎn)業(yè)鏈中參與度還不高,在光學(xué)元件方面有馭光等初創(chuàng)公司在開發(fā)衍射元件,另外在模組方面,奧比中光則是深度感知方面較為領(lǐng)先。隨著深度傳感器市場逐漸打開以及半導(dǎo)體行業(yè)往中國大陸移動,可望在大陸在整體產(chǎn)業(yè)鏈方面能繼續(xù)發(fā)力