Hi all,
I'm currently working on a project that requires thousands of Image Targets to be stored in a database. At runtime, the project should be able to recognize multiple image targets at once. My initial research led me to believe that using Vuforia's Cloud Database service would be perfect, until I discovered that Vuforia's cloud tracker only supports tracking one Image Target at a time.
As a result I have been building my project to use Device Databases, which worked perfectly until I had around 2,000 image targets in my project. At this point, Vuforia's Update() method takes up around 50% of the app's CPU usage and the app's framerate tanks to below 15 fps (This was recorded with Unity's profiler with no other scripts or objects enabled in the scene other than the ones required to get Vuforia running). I have tried changing the tracking quality in Vuforia's settings, but that had no effect. Is there any way to increase Vuforia's performance in a case like this?
I assume you are using
I assume you are using multiple device databases? Are you loading and activating all the databases at the same time? If not can you section them into categories and have a user interaction that switches between them and only loads what you need?
Yeah, we are using multiple
Yeah, we are using multiple device databases, but they all need to be activated at the same time without user interaction...
I was starting to suspect that Vuforia might not be the best solution for us. Thanks for the reply!
Hello mwimmersive,
Hello mwimmersive,
What's the average size of each database? Have you tested with all the images in a single database as well?
Thanks,
Vuforia Support
Hi Strasza,
Hi Strasza,
Currently the size of each database is around 300 items, although we plan on reconstructing them to be 1,000 images each. I was under the impression that a device database can not hold more than 1,000 items? Would putting them into one database increase our performance?
There is no limit to the
There is no limit to the number of image targets you place in a database, but the more targets you add the longer the load and detection times will be.