  Transparent objects are a very challenging problem in computer vision. They
are hard to segment or classify due to their lack of precise boundaries, and
there is limited data available for training deep neural networks. As such,
current solutions for this problem employ rigid synthetic datasets, which lack
flexibility and lead to severe performance degradation when deployed on
real-world scenarios. In particular, these synthetic datasets omit features
such as refraction, dispersion and caustics due to limitations in the rendering
pipeline. To address this issue, we present SuperCaustics, a real-time,
open-source simulation of transparent objects designed for deep learning
applications. SuperCaustics features extensive modules for stochastic
environment creation; uses hardware ray-tracing to support caustics,
dispersion, and refraction; and enables generating massive datasets with
multi-modal, pixel-perfect ground truth annotations. To validate our proposed
system, we trained a deep neural network from scratch to segment transparent
objects in difficult lighting scenarios. Our neural network achieved
performance comparable to the state-of-the-art on a real-world dataset using
only 10% of the training data and in a fraction of the training time. Further
experiments show that a model trained with SuperCaustics can segment different
types of caustics, even in images with multiple overlapping transparent
objects. To the best of our knowledge, this is the first such result for a
model trained on synthetic data. Both our open-source code and experimental
data are freely available online.
