# Appearance-Based Gaze Estimation as a Benchmark for Eye Image Data Generation Methods
## 3 Materials
### Synthetic Blender Data  
There were two different sets of Blender data generated for this study. The first one was used for training all image generation networks, described in the \"Methodology\" section later. One of the goals of the trained generative framework was to produce ET data that cover a wide range of features associated with it. Therefore, the required level of variability should be represented in its training set. The distribution of features already present in real VOG data together with a target scenario of simulating its missing camera position variability formed this requirement. The second Blender data set was produced for the data augmentation study. The main idea behind that experiment was to benchmark various synthetic data sources as a substitute for real data. To achieve a fair assessment of employed data generation methods, we attempted to generate data that differ only in terms of the source they were produced from. This led to the task of producing a synthetic image set that mirrors the VOG data, where every image matches its real counterpart in everything but visual appearance. Note that every data augmentation method we tested directly relied on Blender renders. They were either used as is (Blender was tested as a separate method itself) or used as input to other tested methods (i.e., Blender segmentation masks in EyeGAN presented earlier; both images and masks in StarGANv2 described later). The Blender images were rendered in \(320\times 200\) resolution, which was chosen to maintain the original aspect ratio of 1.6 of VOG images while reducing the memory footprint of associated machine learning pipelines. The task outlined above essentially requires recreating the data collection equipment setup in Blender, which is not completely feasible due to the following challenges. First, it is impossible to directly reproduce the exact lighting conditions of the real experiment in a synthetic setting. We simplified this problem by restricting the model space to just two lighting sources--one omni- and one single-directional (the same in both Blender sets). Both lights were placed at the same location in the rendering space as the camera, and their strength was randomly sampled from distributions manually tuned to mimic the range of lighting variability in real data. Second, while we could place a camera in the same spot employed in the real data collection, this does not actually achieve the image alignment we strive for. This is explained by the fact that subjects had their head in the chin-rest throughout the data collection. Even though the position of both the chin-rest and the camera were fixed, the relative positioning of eyes in the camera frame ended up being different for every subject due to the anatomical diversity. We solved this problem by manually adjusting the camera position for every subject. It was achieved by finding a camera placement, the render from which gives the best feasible alignment with the real eye image for a neutral gaze position of \((0.0^{\circ};0.0^{\circ})\) used as a reference. Several limitations of the original codebase were addressed in order to meet the specific needs of this experiment. Most importantly, the rendering pipeline was updated to have the segmentation masks computed as a part of its output, which was missing initially. In addition to that, the rendering script was modified to run in batches, which increased its efficiency. All specific details of our modifications together with the list of parameter values for generation of both Blender data sets are provided in the Appendix D.  
It is worth re-emphasizing the set of pros and cons of utilized data sets, as it justifies the need for using two. On the one hand, the Blender model provides precise control over the image content (i.e., eye gaze, camera position, lighting setup, etc. ), but it represents just a single artificial subject.