Qualcomm Vuforia 教學 (1) – 安裝 Vuforia

工作上有使用 AR: Augmented Reality 的需求,上網找找看有沒有什麼不錯的套件,在 SocialCompare 這網站條列了現有 AR 套件的功能說明與比較 (參1),經過一番比較挑中了 Qualcomm Vuforia 來實作,原因在於 ImageTarget 小於 100 的情況並且不使用特殊功能的情況下是免費的 (參2),這篇記錄一下安裝的過程。

2016-07-07 更新:本篇為 3.x 版本,目前 Vuforia 以更新到 5.5.9,新版本使用方式請參考 

Android Vuforia 系列:

AR 的介紹小蛙就不多說了,這裡主要以記錄安裝過程為主,有興趣的朋友可以連結到參考資料或維基百科去看看更多說明。

1. 上 Vuforia Vuforia Portal (https://developer.vuforia.com/)
001.png

2. 點選 Download 後進入以下畫面,再點選「Download Download SDK 3.0.9 for Windows/Mac/Linux
002.png

  3. 下載 SDK 需要登入,如果沒有帳號密碼點選「Create account now」,登入後即可開始下載 SDK。
003.png      004.png

4. 安裝 Android SDK + 安裝/更新 ADT 到新版
如果版本不符合 Eclipse 會跳出提示,這邊小蛙偷懶跳過不做了,可參考到 [教學] 如何使用 Eclipse、Android SDK、ADT 配置 Android 開發環境 ? @ 海芋小站 (參4)

5. 安裝 Vuforia SDK
解壓縮下載來的壓縮檔 vuforia-sdk-android-3-0-9.zip,解壓縮後把所有的工具放在 <DEVELOPMENT_ROOT> 目錄下,之後都會稱這個目錄為 <DEVELOPMENT_ROOT>,例如:放在 C:\Program Files\Android 的話,<DEVELOPMENT_ROOT> 就代表 C:\Program Files\Android。這邊要注意的是,小蛙發現如果放的路徑中間有空白,可能在做 ndk-build 或其他動作的時候會發生錯誤,如果可以盡可能選擇沒有空白的路徑。

6. 安裝 Android NDK
到 (參5) 下載 NDK,小蛙的環境是 Windows 8.1 64 bit 選擇自己對應的版本下載,解壓縮到剛剛第 5 點提到的 <DEVELOPMENT_ROOT>,因此整個結構會變成:

  C:\Program Files\Android\
                           android-ndk\
                           android-sdk\
                           vuforia-sdk\

7. 設定 NDK
Eclipse -> Window -> Android -> NDK -> NDK Location 設定成上述路徑,例如:小蛙的是: C:\Program Files (x86)\Android\android-ndk-r10c (好孩子不要學,參考上面第 5 點,改成中間沒有空白的,不然後面會出問題)。

8. 設定 vuforia QCAR 環境變數
Eclipse -> Window -> Preferences -> Java -> Build Path -> Classpath Variables -> New…
Name : QCAR_SDK_ROOT
Path : C:/Program Files (x86)/Android/vuforia-sdk-android-3-0-9 (換成自己的路徑)

9. 設定在 Eclipse 專案中使用 QCAR 變數
在要使用 Vuforia 的專案中 -> 滑鼠右鍵 -> Properties -> Java Build Path -> Libraries -> Add Variable… -> QCAR_SDK_ROOT -> Extend… -> build / java / vuforia / Vuforia.jar -> OK
接著到 Order and Export 把剛剛新增的 QCAR_SDK_ROOT… 打勾

10. 下載測試範例
下載 (https://developer.vuforia.com/resources/sample-apps/features) 並解壓縮到 <DEVELOPMENT_ROOT>\vuforia-sdk-android-3-0-9\samples

11. 匯入範例檔
Eclipse -> File -> Import… -> General -> Existing Android Code Into Workspace…
Root Directory : C:\Program Files (x86)\Android\vuforia-sdk-android-3-0-9\samples
Projects : VuforiaSamples-3-0-5_0
怕把原始檔改壞,複製一分到自己的工作區域,把 Copy projects into workspace 打勾

12. 執行 VuforiaSample
Run As -> Android Application 
專案可以跑起來,但會得到以下錯誤

BUILD FAILED
 D:\Workspace\PureProjectNew\VuforiaSamples\CopyVuforiaFiles.xml:4: D:\Workspace\build\lib\armeabi-v7a does not exist.

13. 修改設定檔 CopyVuforiaFile.xml

<fileset dir="C:/Program Files (x86)/Android/vuforia-sdk-android-3-0-9/build/lib/armeabi-v7a"/>
存檔後,Project -> Clean... -> Clean projects selected below VuforiaSamples
Clean 完之後按照上個步驟執行就可以了!

14. 使用範例圖片測試
https://developer.vuforia.com/resources/sample-apps/features,每個 sample 點進去會有 PDF 的範例圖片可以測試,依照每個範例的名稱開啟對應的圖片。

經過一番折騰,Qualcomm Vuforia 已經順利安裝起來了,這系列文章預估會有以下內容:

Qualcomm Vuforia 系列:

敬請期待 (希望不會又偷懶不記錄 …)

參考資料

    5 個回應

    1. kobe表示:

      請問key 那段要放在程式碼哪裡 謝謝

      • Hans表示:

        Dear kobe:
        目前 Vuforia 更新了,這篇教學文章是比較舊的版本喔!
        如果之後工作上有需要更新版本,小蛙才會再把新版本的放上來!
        不好意思造成困擾 ><

    2. mark表示:

      謝謝老師~~
      剛剛查了一下Vuforia都需要辦帳號拿key
      https://developer.vuforia.com/targetmanager/licenseManager/licenseListingDetails
      然後再程式碼裡面添加
      Vuforia.setInitParameters(mActivity, mVuforiaFlags, ” your_license_key “);
      就可以了
      現在能跑了 謝謝老師這篇詳細介紹

    3. mark表示:

      老師請問一下
      我依照您的方法做到最後一個步驟,Android 平板 案了Start 回應我
      04-28 15:38:15.312: E/Vuforia_Sample_Applications(11491): InitVuforiaTask.onPostExecute: Vuforia App key is missing. Please get a valid key, by logging into your account at developer.vuforia.com and creating a new project. Exiting.
      是有哪邊沒設定到嘛

    發佈留言

    發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

    這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料