Search Unity

Supercharge your computer vision models with synthetic datasets built by Unity

April 19, 2021 in Industry | 5 min. read
animated boxes of cereal
animated boxes of cereal

Is this article helpful for you?

Thank you for your feedback!

Is your limited dataset holding back the performance of your computer vision model? Using the power of the Unity Computer Vision Perception Package, Unity can unlock the potential of your computer vision model by generating custom datasets tailored to your specific requirements. Today, Unity Computer Vision Datasets are available to customers worldwide. Find out more about this new offering.

Building a quality synthetic dataset is both an art and a science. We’ve described the concept of synthetic data before, and we’ve shown how synthetic data can improve the performance of computer vision models while dramatically decreasing the total time and cost. Our expert team of computer vision scientists is constantly augmenting our portfolio of synthetic data strategies across a range of industrial computer vision problems, and this expertise is now available to you.

Unity Computer Vision team works with you to understand the performance objectives of your model and develop a strategy to ensure that the dataset we build meets those objectives. As part of any Unity Computer Vision Datasets project, we will iterate with your machine learning engineers to make changes to the dataset based on feedback from your model performance results. Contact us to get started today.

Your objects, diverse and perfectly labeled

This content is hosted by a third party provider that does not allow video views without acceptance of Targeting Cookies. Please set your cookie preferences for Targeting Cookies to yes if you wish to view videos from these providers.

Real-world objects scanned with photogrammetry

Synthetic data has a number of benefits, but it can be daunting to get started – generating synthetic data is a new concept even to many machine learning practitioners. Additionally, developing a representative set of 3D assets for your objects of interest can be complex and time consuming, stalling your progress. 

All 3D assets are not created equally, so when we create your dataset, we make sure that the assets being brought into Unity match the requirements of the model they are training. Our team can bring in your existing 3D assets or CAD models. If you don’t have original virtual assets, we can capture your physical objects using advanced photogrammetry techniques or our team of professional artists can create 3D digital twins of these objects.

Visual examples of image labeling - There are several images, some of a street, some of cereal, some of a dining room, some of a warehouse.
Visual examples of image labeling

Once we create the 3D assets for your project, we set up how these assets behave frame to frame and provide error-free labeling. Domain randomization is a technique that helps build robust models by programmatically varying parameters in a dataset. In each frame, the specific objects, positioning, occlusion, and more can vary, allowing for a diverse set of images from even a relatively small set of objects. The objects of interest can then be labeled with simple 2D or 3D bounding boxes or more complex forms of labeling like segmentation. If your project requires a custom labeling method, our experts will work with you to develop the right output for your requirements. 

Dynamic environments

Panning through a room
Randomization applied to the environment

In Unity Computer Vision Datasets projects, everything about the environment can be randomized to create diversity in your dataset. Lighting, textures, camera position, lens properties, signal noise, and more are all available for randomization to ensure that your dataset covers the breadth of your use cases. 

With synthetic data, the environment that provides the context for the computer vision problem may not necessarily resemble a real-world environment. Datasets for some computer vision tasks may simply require a highly randomized background, whereas others may demand more structure, such as a building or home interior. 

Our team has developed methods to produce both unstructured and structured synthetic environments for a range of computer vision tasks. Based on your computer vision problem, our experts will make a recommendation about the type of environment that is best suited to your scenario and scope the dataset accordingly.

One side has general groceries like bananas and rye bread and the other has cereal on shelves

Synthetic datasets at any scale

Depending on your application, dataset requirements vary greatly. The number of images you need for training depends on the complexity of your scene, the variety of objects you are using, and the requirements for accuracy in your solution. We will work with you to understand your needs, help scope the number of frames for your project, and iterate with you to ensure that the synthetic dataset meets your requirements. 

In the future, we plan to provide a simple self-service interface so you can generate additional data at your convenience, without having to rely on the Unity team. 

Tiered pricing is offered on every project, ensuring that as your data needs grow, your budget remains manageable.

Next steps

Contact us today to learn more about how we can create a synthetic dataset for your specific needs, including:

  1. Quality 3D assets that represent your objects of interest
  2. An environment that provides appropriate context for your computer vision model
  3. A randomization strategy for both the objects and environment to ensure dataset diversity for an unbiased and robust model
April 19, 2021 in Industry | 5 min. read

Is this article helpful for you?

Thank you for your feedback!

Related Posts