1. 程式人生 > >增強現實(AR)筆記3:使用Vuforia Object Scaner來掃描物體

增強現實(AR)筆記3:使用Vuforia Object Scaner來掃描物體

1 前言

上一篇筆記中提到Object Recognition例程中沒有任何預設好的物件,需要開發者自己利用Object Scanner這個工具來掃描建立。本文就詳細記錄下掃描物體的操作,並且在文末給了一個大寶SOD蜜的例項。

2 Object Scanner的介紹

Object Scanner是用來掃描3D物體的Android程式,Object Scanner可以輸出物件資料檔案(*.OD),它包含了在Target Manager定義一個物件所需要的源資料。Object Scanner可以產生、測試、修改OD檔案。它提供了諸如外表面的涵蓋物件特徵的一個具象。

支援裝置:Galaxy S5和Google Nexus 5,Android 4.2以上,其他的Android手機可能不支援。
注意打光一定要均勻。

3 掃描工作流

物件掃描工作流大概可以這麼分四步:
1.準備-App及現場環境
2.掃描-從各個角度掃描物件
3.測試-在APP上評估已掃描的物件
4.OD檔案上傳-將OD檔案上傳到Target Manager

這幾步,官方都有詳細的介紹:
第1步,https://developer.vuforia.com/library/articles/Solution/How-To-Setup-an-Object-Scanning-Session
這裡需要製作一個底板,只要用官方檔案按原尺寸列印就好。
這個底板是為了鎖定掃描物件的位置座標,左下角是掃描物件區域座標的原點,與Object Target prefab中的bounding box的原點是重合的。單位是mm,這個單位和後面開發的場景一致,也用來衡量物體的實際大小。

第2步,https://developer.vuforia.com/library/articles/Solution/How-To-Scan-an-Object-and-Create-an-Object-Data-File
掃描生成OD檔案,總共分這4步:
a.列印Object Scanning Target
b.放置列印好的背景
c.將物件放入
d.掃描物件
在b中,掃描物件需要放在底板的原點。如果超過了座標,那麼就要掃描兩次,程式會自動合成兩次掃描的結果。掃描的話,只要讓攝像頭圍繞物件做密集的掃描,一旦掃描到特徵在縮圖就會有綠點分佈,綠點越多越密集,則識別的準確性就更高,且更快速,能加強使用者體驗。

需要特別注意的是,我用傲遊瀏覽器上傳了兩次都不成功,改用chrome上傳就搞定,3.3M的OD檔案大概花費了幾分鐘。

4 操作例項-大寶SOD蜜

我這邊隨手拎了一瓶大寶來做測試,即便夜晚燈光效果很差,甚至還帶陰影,但Object Scanner依然效果強勁,分分鐘識別出了這個瓶子。

圖1:掃描中

圖2:掃描完成

圖3:測試