  Recently, the use of synthetic training data has been on the rise as it
offers correctly labelled datasets at a lower cost. The downside of this
technique is that the so-called domain gap between the real target images and
synthetic training data leads to a decrease in performance. In this paper, we
attempt to provide a holistic overview of how to use synthetic data for object
detection. We analyse aspects of generating the data as well as techniques used
to train the models. We do so by devising a number of experiments, training
models on the Dataset of Industrial Metal Objects (DIMO). This dataset contains
both real and synthetic images. The synthetic part has different subsets that
are either exact synthetic copies of the real data or are copies with certain
aspects randomised. This allows us to analyse what types of variation are good
for synthetic training data and which aspects should be modelled to closely
match the target data. Furthermore, we investigate what types of training
techniques are beneficial towards generalisation to real data, and how to use
them. Additionally, we analyse how real images can be leveraged when training
on synthetic images. All these experiments are validated on real data and
benchmarked to models trained on real data. The results offer a number of
interesting takeaways that can serve as basic guidelines for using synthetic
data for object detection. Code to reproduce results is available at
https://github.com/EDM-Research/DIMO_ObjectDetection.
