【Vuforia】最佳實踐:支持作爲模型目標(Model Targets)的對象和CAD模型

一、支持對象類型

       Vuforia模型目標特徵(Model Targets Feature)爲支持的對象和用例(use cases)提供了強大(robust)的識別追蹤功能。
       支持類型包括玩具、全尺寸車輛(full-sized vehicles)、建築地標(architectural landmarks),以及醫療、製造和工業設備等。

Car Coffee Maker Toy Part Engine

       下面,我們將重點介紹Vuforia’s Model Target技術所支持物理對象的屬性。我們將通過優劣舉例來說明具體的質量差異。上面這些圖像都是僅作示範(indication)的可效仿(exemplary)對象。您可以驗證您的特定用例(specific use-case)是否符合推薦規範(recommendations)。

       受技術限制的用例(Use-cases stretching the limits of the technology):目前並不能穩定將鉸接式(articulated),光滑(shiny)或透明(transparent)等類似對象作爲Model Targets

空間位置

       如果目標物體可以被固定住,並在被檢測到之後不再移動,追蹤模型目標的效果最好。用戶可以圍繞物體移動,但理想狀態下,不應移動目標物體本身。

       如果您希望移動目標物體,請選擇此文中所闡述的自適應動作提示(ADAPTIVE motion hint):模型目標追蹤優化(【原文】Optimizing Model Target Tracking)。

着色或有圖案的表面(Colored or Patterned Surface)

       通常對錶面着色或有圖案的目標物體追蹤效果更好。雖然顏色單一的物體的確可以被檢測到,但很難被追蹤。爲了區分,目標物體的外觀需要有一些變化。因此,純白背景下的純白的物體或至黑背景下的純黑物體的追蹤效果可能沒那麼好。
       同樣,主體顏色爲黑色,透明或高度反光(highly reflective)的目標物體也可能難以被檢測或追蹤,因其表面細節不夠多。
       有時,由單色材料製成的3D打印物體也可能難以被追蹤到。
着色或有圖案

注意:實體模型(physical model)的顏色沒必要和用來生成模型目標的CAD模型一致。一個模型目標數據庫(database)就可以用來檢測追蹤具有不同顏色的同種產品。

充足的幾何細節(Geometric Detail) - 足夠複雜(Complex Enough)的模型

       幾何複雜程度是同一環境中區分目標物體和其他形體(shapes)的關鍵。簡單的形體如立方體、球體,或非常細長簡單的形體(elongated simple shapes)很可能會和用戶設置的目標物體互相混淆。
       嘗試根據經驗使產品或目標物體擁有足夠尖銳(sharp)的邊緣、凹陷(dents)、凸起(bulges)等。
       建議避免使用對稱物體(symmetric objects),因爲模型目標追蹤器無法辨別其兩側有何不同。此外,重複的部分,比如(兩側)完全相同的衝壓成型表面(identical extrusions on a surface),會進一步使檢測追蹤功能混亂。
Complex Enough

不易彎曲並且剛性的(Non-flexible and Rigid)

       模型目標追蹤器可以容忍一些實體和數字模型之間的偏差,但利用鉸鏈連接(articulate)以及可彎曲(flex)物體可能無法被有效地檢測追蹤。
       爲了達到最好效果,請從CAD模型裏刪除實體對象中並不總會出現的部分(比如某一產品的變體型(variant)有一些小附件,而其它的不具備)。
       當然這隻對大部分是剛性的目標物體奏效,並不支持主要由鉸接式或可彎曲零件(flexible parts)構成的物體。
不易彎曲並且剛性的

和CAD模型相匹配

       物理對象(Physical objects)需要和用來生成模型目標的3D CAD模型具有相同的形體和尺寸。高度重疊(a strong overlap)對體驗穩定性(the robustness of the experience)來說非常重要。
       雖然比例錯了物體也可能被檢測到,但如果物理對象和數字對象之間的度量尺度不一致(correspond),追蹤性能將低於平均水平(sub-par)。
       因此,請確保模型目標和物理對象保持以米爲單位的尺寸相同,精度越高越好
       出於實際原因(For practical reasons),有時CAD模型並不能1:1代表實物——模型目標技術會允許現實和虛擬對象之間存在**10%**的偏差作爲妥協。
       詳細的有關信息,請參見Vuforia最佳實踐:縮放模型目標(【原文】Best Practices for Scaling Model Targets)。
匹配模型

二、CAD模型最佳實踐

       上一節提供了有關"如何挑選與模型目標特徵配合良好的物理對象"之建議,本節將提供有關"如何最好地準備相應的CAD數據"之建議。

       一般來說,用於模型目標生成器(Model Target Generator)的CAD模型需要:

  • 具有最多40萬個多邊形(polygons)或三角形(triangles)
  • 包含最多10個部分(parts)
  • 包含最多5種紋理(textures)
  • 使用右手座標系(right-hand coordinate system)

       這些建議是根據CAD模型遇到的常見問題編寫的。

注意:由於可用的CAD軟件種類繁多,生成管線(generation pipelines)也有多種可能,因此我們很難提供在所有情況下都能奏效的解決方案。因此,下面的建議不可避免地有些泛化(generic),並且特定模型仍然可能有特定問題。如果您的特定模型在模型目標生成器中不能正常工作,請通過論壇與我們聯繫。

紋理(Texturing)

       在模型中添加能夠增加視覺保真度(visual fidelity) ,使其與物理對象更爲相似的紋理會非常有幫助。該紋理可爲表面圖案、標籤、印品(prints)或諸如標準底板(gauge-backplates)的平面元素(flat elements)。
       這些細節有助於Vuforia引擎更好地從幾何體中提取必要的細節以改進檢測追蹤蹤效果,儘管其性能最終取決於很多運行時(run-time)因素,比如光照強度和顏色。模型目標生成器會生成此類細節的缺失警告。
       當前支持的紋理格式爲32248-bitJPGPNG以及PGM。請牢記這一點,因爲如果在CAD模型上使用其他格式的紋理,可能會導致模型導入模型目標生成器(MTG)時出錯。
紋理

       • 使用寫實紋理(例如3D掃描)可以提高(識別)模型目標的性能,特別是高級模型目標(Advanced Model targets)的識別精度。使用真實的紋理或顏色時,請確保在“真實外觀(Realistic Appearance)”模式下訓練模型:
Realistic Appearance
       同時,使用寫實紋理會降低追蹤性能,特別是當它們包含物理對象在追蹤過程中看不到的硬陰影(hard shadows)時。掃描對象時,請確保在光線充足且均勻(well and evenly)的環境中捕獲(capturing)它們。避開硬陰影和強烈的彩色光源。
       詳細的有關信息,請參閱Vuforia指南:如何用掃描模型創建模型目標(【原文】Guide on How to Create Model Targets from Scanned Models)。
       如果模型數據具有寫實紋理,建議對使用和不使用這些紋理創建的兩類模型目標進行性能測試。其中一種可能比另一種效果好得多(significantly better),這取決於該特定對象與紋理屬性。

       • 在某些情況下,模型的紋理或顏色可能與實際對象不匹配。這種情況可能是因爲模型零件(parts)在CAD軟件中被不自然地(artificially)着色了,或是因爲該對象有不同的紋理變體(textured variants)(例如某種玩具及其變體,繪圖(painting)不同但形體相同)。
       如果是這種情況,請確保在創建高級模型目標時移除不正確的紋理,並在“非真實外觀(Non-Realistic Appearance)”模式下訓練模型目標:
Non-Realistic Appearance

模型零件的着色 - “吹泡泡(Bubble-Gumming)”

       如果您的CAD模型不包含紋理或顏色,則最好爲零件分配不同的顏色,以指明實際對象的不同材質或表面特性。我們稱此過程爲“吹泡泡(Bubble-Gumming)”。

       按照設計,Vuforia模型目標特徵是根據形體(shape)檢測對象的,不過提供材質額外信息也有助於顯著加強檢測穩健性(robustness)。有些零件(parts)之間間隙(gaps)很小,雖然在現實中很明顯(strongly visible),但很難在渲染視圖(rendered view)中進行判斷(extract),則可以用顏色來進行區分(indicate)。例如車身和車門之間的間隙。如果可以的話,請避免使用無法傳輸顏色信息(如STL)的單色模型(single-color models)或文件格式。

       當您對CAD數據進行“吹泡泡”操作,創建Advanced Model Target時,在"Non-Realistic Appearance"模式下訓練模型目標非常重要

移除鉸接(articulated)零件

       如果物理對象主體是剛性的,但包含鉸接式或可移動(moving)的零件(例如,汽車的車輪或汽車儀表板(dashboard)上的方向盤(steering wheel)),請從CAD模型中移除這些零件。

注意:僅當物體主體爲剛性時生效。不支持主要由鉸接式或可彎曲零件構成的物體。

描述 模型
物理對象 物理對象
原始未着色的CAD模型
(移除了鉸接式的輪子)
原始未着色
“吹泡泡”處理過的CAD模型 吹泡泡

大孔(Large Holes)

       模型的多邊形呈現(polygonal representation)有時會出現裂縫(cracks)。這通常是由鑲嵌(tessellation)錯誤、簡化(simplification)錯誤或組合不匹配(combination mismatches)所導致。請儘量避免此類孔洞,因其會在對象上創建不必要的錯誤細節,佔用CPU計算開銷(computational overhead),並可能導致檢測錯誤。 Holes

提示:新的CAD軟件包(software packages)可以在3D打印之前驗證(verify)模型的孔和裂縫,此工具有助於您在使用Vuforia之前驗證模型。

部件丟失(Missing Parts)

       在管線轉換(conversion pipeline)期間,模型的某些部分可能已損壞(corrupted)、具有錯誤的(透明的)材質屬性,或僅在裝配過濾器(assembly filter)中丟失。從外表上(Visually)將模型目標生成器中加載的CAD模型,與要增強(to be augmented)的物理對象進行匹配,確認是否包含所有所需部件。 零件丟失

注意:如上所述,如果已知零件爲非剛性(non-rigid)(可移動)零件,建議將其從模型中移除。

法線錯誤(Incorrect Normals)

       指向錯誤的法線(遠離物理曲面法線(surface normal))可能會使得網格元素(mesh elements)無法渲染,從而導致各種副作用。額外邊緣、複雜模型的內部可見對象、表面紗窗效應(screen-door effects)等,都可能令CAD模型的視覺呈現(visual representation)出錯,並導致檢測追蹤性能低下。法線錯誤也可能產生明顯的部件丟失,請參見上一節。從外表上驗證法線分佈(normal distribution)的完整性,一些包(packages)提供了一致化法線(conform normals)的工具。 法線錯誤

三、瞭解更多

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章