Supported Object Types
The Vuforia Model Targets Feature provides robust recognition and tracking for supported objects and use cases.
The types of supported range from toys to full-sized vehicles, to architectural landmarks and to medical, manufacturing and industrial equipment.
In the following sections, we highlight the properties of physical objects that are supported by Vuforia's Model Target technology. Good and bad examples are shown to demonstrate the specific quality differences. These images are exemplary and only act as an indication. You may verify your specific use-case to comply with these recommendations.
Use-cases stretching the limits of the technology - such as using ModelTargets for articulated objects, and objects that are shiny or transparent are currently not supported robustly.
Position in Space
Model Target tracking works best if the object can be assumed static and does not move after having been detected. The user can move around the object but ideally should not move the object itself.
If you expect the object to be moved, select the ADAPTIVE motion hint as explained in this article: Optimizing Model Target Tracking.
Colored or Patterned Surface
Objects with colored or patterned surfaces typically work better. Objects in a single uniform color are difficult to track, though they can be reliably detected. Some variation in surface appearance is required to distinguish the object. For this reason, a pure white object on a pure white background or pure black objects on very dark backgrounds may not work well.
Similarly, objects that are mainly black, transparent or highly reflective may also make detection and tracking difficult since they do not provide sufficient surface details.
Sometimes 3D printed objects made from a single-color material may also be difficult to track.
NOTE: The color of the physical model does not necessarily have to exactly follow the color in the CAD model used for target generation. One Model Target database may be used to detect and track color variations of the same product.
Sufficient Geometric Detail - Complex Enough Model
Geometric complexity is key to distinguish an object from other shapes in the environment. Simple shapes such as cubes, spheres, or very elongated simple shapes may be easily confused with other objects in the user’s setting.
Try to base your experience on products or objects that have enough sharp edges, dents, bulges, etc.
It is recommended to avoid symmetric objects as the Model Target tracker won’t be able to tell its sides apart. Additionally, repeated parts, such as identical extrusions on a surface, can further cause confusion for detection and tracking.
Non-flexible and Rigid
While the Model Target tracker can tolerate some deviation between physical and digital model, expect that objects that articulate and/or flex may fail to be detected or tracked effectively.
As a best practice, remove parts from the CAD model that are not always present on the physical object (e.g. one variant of a product has some small attachment that is not present in another) or parts that are known to move.
This however only works if most of the object is rigid. Objects that mostly consist of articulated or flexible parts are not supported.
Physical objects should have the exact same shape and size as their 3D CAD model used for target generation. It is important to have a strong overlap for the robustness of the experience.
While wrongly scaled objects might be detected, tracking performance will be sub-par if metric scales don't correspond between the physical and the digital object.
Because of that, make sure that your model target is set to the correct size of the physical object in meters as accurately as possible.
For practical reasons - since sometimes CAD models just don't represent the physical object 1:1 - the Model Target technology can tolerate up to 10% of deviation between the real and virtual object as a compromise. See Best Practices for Scaling Model Targets for more information.
CAD Model Best Practices
While the previous section provided advice on how to select physical objects that work well with the Model Targets feature, this section provides recommendations for how to best prepare the corresponding CAD data.
In general, the CAD model used as input for the Model Target Generator should
- have a maximum of 400,000 polygons or triangles: and
- contain a maximum of 10 parts: and
- contain a maximum of 5 textures: and
- use a right-hand coordinate system.
These recommendations have been compiled based on common problems encountered with CAD models. Note that due to the large variety of CAD software available, with numerous possible generation pipelines, it's difficult to provide solutions that work in all cases. Therefore, the following advice is by necessity somewhat generic, and specific models may have still particular issues. Feel free to get in touch via the forums if the Model Target Generator isn't working properly for your particular model.
It can be helpful to add textures to your model if these provide visual fidelity and resembles the physical object. The textures can be surface patterns, labels, prints, or flat elements - such as gauge-backplates.
Such details help Vuforia Engine extracting the necessary information from the geometry and improves detection and tracking; though, the final detection and tracking performance depend on many run-time factors such as lighting intensity and color. The Model Target Generator will provide a warning if it detects missing textures on a model.
The currently supported texture formats are JPG, PNG, and PGM in either 32-bit, 24-bit, and 8-bit. Have this in mind when importing models to the MTG, as using other file formats for your CAD-model texture may result in import errors.
Using photorealistic textures, e.g. from 3D scans, can improve Model Target performance, in particular recognition accuracy for Advanced Model targets.
If your Model Target was created from a 3D scan, make sure to set the tracking mode to 3D SCAN to achieve best recognition and tracking performance. Please find more information about the Model Target Tracking Mode in this article.
Also, when using a realistic texture or realistic colors, make sure to train your model in Realistic Appearance mode:
At the same time, using photorealistic textures can decrease tracking performance, in particular, when they contain hard shadows that are not seen on the physical object during tracking. When scanning objects, make sure that you are capturing them in a well and evenly lit environment. Avoid hard shadows (direct sunlight) and strongly colored light sources.
See the Guide on How to Create Model Targets from Scanned Models for more information.
In some cases, the textures or color of your model may not match the real object. This may be the case because the model parts have been artificially colored in the CAD software or using the Automatic Coloring of Model Targets in the MTG or if there are differently textured variants of the object (e.g. a toy that comes with different painting, but the same shape for the different variants).
If this is the case, train the Model Target in Non-Realistic Appearance Mode when creating an Advanced Model Target:
Models sometimes tend to have cracks in their polygonal representation. This typically results from wrong tessellation, simplification, or combination mismatches. Try to avoid these as such holes create unnecessary, false details on the object that create computational overhead and potentially lead to false detections. Tip: Modern CAD software packages can verify the models for holes and cracks prior to 3D printing, such a tool can be helpful to verify your model before working with Vuforia.
During the conversion pipeline, some parts of a model might be corrupted, have wrong (transparent) material properties, or simply be missing in an assembly filter. Visually compare the loaded CAD model in the Model Target Generator to contain all your desired parts, visually matching with the physical object to be augmented.
NOTE: As explained above, in case parts are known to be non-rigid (moving) it is recommended to remove them from the model.
Normals facing the wrong direction - away from the physical surface normal - might cause mesh elements not to render leading to various side-effects. Additional edges, visible inside objects of a complex model, screen-door effects on surfaces, etc. can create a wrong visual representation of the CAD model and result in low detection and tracking performance. Incorrect normals can also yield apparently missing parts, see above section. Visually verify the integrity of normal distribution, some packages provide tools to conform normals.