Optimizing wireless video streams for computer vision

Finished: 2019-08-30

MSc assignment

Mobile robots that are connected to a server can send and receive data over a network to and from this server, where this data can be processed, stored and enhanced, and from which tasks can be delegated to the robot. Advantages of connecting a mobile robot to a server are saving battery when processing is offloaded to the server, the ability to perform processing that exceeds the computational power of the robot itself, and the ability to combine data from multiple sources. Furthermore, the server can keep the data available for other robots when a robot falls out. A major drawback of connecting a mobile robot to a server, is the dependency on a network connection, which might not always be fast and stable as the robot moves around. Network impairments can lead to increased latency, a lower throughput and even the loss of data.

To guarantee a reliable and robust system, independent of the type of robot and its locomotion, a standard has to be defined for sharing information between the robot and the server. This standard should define which information has to be shared between robot and server, the format of this information, and how network impairments are handled.

The goal of this research is to design such a standard for a system that uses Data Distribution Service for real-time systems (DDS) as networking middleware. A Simultaneous Localization And Mapping (SLAM) algorithm will be used as a use case to analyze the robustness of the standard in a functional setting. Both the standard and algorithm will be optimized for performance under varying network quality.

The research consists of several steps. First, SLAM will be examined to determine which information has to be submitted to the server for processing. After comparing state-of-the-art SLAM algorithms, an algorithm that best suits the application will be chosen for further investigation. Using a theoretical analysis hypotheses will be generated concerning the influences of video streaming, especially in areas with poor network quality, where variations in throughput will limit and vary the resolution and frame rate of the video stream. Next, network impairments are simulated on the video stream to test the hypotheses with experiments. Finally, a demo setup will be created in which a video stream is sent to the server over a network with varying quality, to demonstrate and verify the functionality of the standard.