[AR]Vumark(下一代條形碼)


VuMark

准備知識

Vumark的說明: https://library.vuforia.com/articles/Training/VuMark

https://library.vuforia.com/articles/Solution/Working-with-VuMarks-in-Unity

SVG的制作工具:AI(Adobe Illustrator)

SVG查看工具:IE9以上、Chrome、Firefox類的瀏覽器,或者其它看圖軟件,以下是在AI中查看SVG文件,可以看到vumark的屬性信息。

image

建議先查看Vuforia自帶的Vumark Demo。

操作環境

Vuforia 6.0.112

Unity3D 5.3.6f1

Windows 7 x64

操作步驟

1、登錄vuforia的后台:https://developer.vuforia.com,創建一個Database,類型為 Vumark

2、點擊Add Target ,上傳一個SVG文件,此svg文件帶有標識點,由美術根據相關制作標准制作

image

3、下載database ( UnityPackage 文件),如果你是Android和IOS,請選擇其它格式。

4、新建一個Unity工程,導入vuforia的SDK,將下載好的unitypackage文件導入到unity中

獲取VuMark圖

接下來要做的事情,就是掃描識別圖,進行識別,那么識別圖從那兒獲取呢?

在vuforia的后台中,在Target 的右側有個 Generate VuMark,它可以通過這張svg圖片文件,生成N多張VuMark圖片。

點擊“Generate VuMark”,在彈出的窗口中,輸入需要生成的ID(100),選擇圖片的格式,點擊 Download

image

點擊“Generate VuMark”,在彈出的窗口中,輸入需要生成的ID(50),選擇圖片的格式,點擊 Download

這樣就得到了ID=100和ID=50的兩張VuMark圖,這兩張圖就可以拿來進行識別了。

 

經測試識別最大值和最小值,可正確地識別,打印結果如下:

New VuMark: 999999999999

New VuMark: 0

最多生成圖片數量

從上面的圖中可知,ID Length =40,約是2的40次方,范圍在:0 ~ 999 999 999 999,也就是可以生成 999999999999 +1 張Vumark圖。

以下是生成圖片的ID,嘗試輸入不在范圍內的值。

輸入負數

image

輸入超出最大值

image

識別成功和丟失

從Example中,可以看到丟失和識別成功的事件寫在以下兩個文件中:

VuMarkHandler.cs 綁定在單獨的GameObject上
VuMarkEventHandler.cs 綁定在VuMark上

這兩個腳本日后研究完善並做更加詳細地注釋:https://github.com/zhaoqingqing/blog_samplecode/tree/master/ar-vr-mr/vuforia/vumark

相關FQ

1、是否可以同時Active多個database?

在目前的6.0.112版本中,我的測試,不可以同時Load 多個database(包括兩個)

 

與FrameMarker比較

FrameMarker

image

FrameMarker特征圖是由高通設計的,如上圖所示,ID從 0~511,對應着512張圖片,ID=1,ID=2 兩張圖像之間的差異就是最外圈的黑白點之間的差異。

 

Vumark

1、Vumark的特征圖是可以自定義的,可以不是黑白點了。

2、最大ID在數量上提升了N倍,0 ~ 999 999 999 999


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM