增強現實(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:測試