## The Underwater Ocean Environment
### Test Case Results  
For the purpose of analysing the contribution of the simulated environment, we created a test case algorithm based on the ORB future detection algorithm [45] and optical flow tracking based on [46] implemented in OpenCV. In this experiment, we show that the futures extracted from the scene are not the usually intended futures we would expect and would have an adverse impact on algorithms such as SLAM and obstacle detection which are based on tracking features. In Figure 24, we can see that tracking algorithm treats the dirt bubble as legitimate objects in the scene based on those features there is no camera movement between the frames where in fact we can see (from other features and the objects) that the view is moving upwards. In Figure 25 we can see the same effect repeating in the simulation as we intended. In the real image Figure 26 which we took underwater, we can see features detected in the view not only on the clear visible objects like the ropes but also on the zooplankton and organic material surrounding those ropes. Similarly in the simulated image in Figure 27 we can see features detected on our simulated zooplankton. Since this is a simulated scene we can turn on and off the zooplankton and run the feature detector as presented in Figure 28. In This Figure, we can see that features were detected only on the visible object. We can also see that futures were not detected on the distant objects due to simulated fog which reduces the visible gradients.  
In conclusion, this test case experiment sums up the essential concepts and implementation aspects related to the generation of a visually convincing underwater environment simulation. There are many more graphical effects which could not be covered by the scope of the paper and in our simulation but based on our real underwater experience we tried to cover the main effects influencing our underwater scene. The realism of the images was demonstrated by a visual comparison of the simulated images generated using Unreal Engine with real images. Most of the modelling and design aspects used in our work were based on information gathered by watching and experimenting with real underwater systems. We created a computer vision test case algorithm and compared side by side the performance of the algorithm on real images and videos taken during our real test dives with simulated experiments. The outcome showed a convincing similarity between the simulation and the real environment for feature extraction and tracking experiments.  
Figure 23: Motion blur. (**a**) is a real image (Pelorus Sound New Zealand) taken when we lowered the camera into the water. We can see the short lines blurring patterns of the Zooplankton due to that movement. (**b**) A simulated image. This image was created by rotating the simulated camera and setting the motion blur effect in the unreal engine.  
Figure 24: Tracking Experiment. This experiment was a real experiment done using the OpenROV platform in a mussel farm near Port Levy New Zealand. Two frames from a tracking experiment, the first number in the telemetry line (upper left corner of each frame) is the frame number. The features in the frames are coloured with different colours in order to keep track. Marked in red square are dirt bubbles attached to the camera port.  
Figure 25: _Cont._  
Figure 25: Tracking dirt mask. Repeating the experiment done in Figure 24 in the simulation. Similar to Figure 24 we can sea that features are detected and tracked on the dirt mask (mark in red square).  
Figure 26: Running feature extraction using ORB detector. This real image we took in a mussel farm in marlborough sounds New Zealand. We can see that the features (marked with different colours) were not necessarily detected on the mussel rope but rather on the surrounding organic material.  
Figure 27: Feature extraction in a simulated image with zooplankton but without dirt mask.