List of Thesis topics
Professor: Prof. Saverio Mascolo - firstname.lastname@example.org
Luca De Cicco email@example.com
Vittorio Palmisano firstname.lastname@example.org
Vito Andrea Racanelli email@example.com
A thesis project consists of:
Students are encouraged to contact directly the lab assistants to decide the project to be carried out. Further information regarding the proposed projects is given in the following pages. More detailed information, references, and tools will be given once the project has been assigned.
This is the list of the available projects, followed by a short description of each project:
Assistant: Luca De Cicco 3
Indoor localization system 3
WebRTC meets Augmented Reality 3
Video streaming simulator for immersive videos 3
Investigation of video segments duration on immersive video streaming performance 3
WebRTC Automated Testing 4
Assistant: Vittorio Palmisano 5
Virtual Reality web application 5
Augmented Reality mobile application 5
Cloud application autoscaling with Kubernetes 5
Web video encoder 5
WebRTC native application 5
Cloud 3D streaming 6
WebRTC native application with a customized video source 6
Video similarity measurement 6
Hardware 4K video encoding comparison 6
Assistant: Vito Andrea Racanelli 7
Obstacle mapping and navigation 7
Bug algorithms for an wheeled mobile robot 7
Real time path planning among movable obstacles 7
Robust wall following and collision avoidance 8
Robot following 8
Autonomous parking 8
Line maze solver 8
Robust remote control and tracking 8
firstname.lastname@example.org - https://c3lab.poliba.it/LDC (DEI south wing, 3rd floor - room 51)
It follows a non-exhaustive list of proposed projects on topics generally related to WebRTC, video streaming, and indoor localization systems topics. Projects related to those topics can be spontaneously proposed by the student according to his/her interests.
Technologies: WiFi, shell scripting
Indoor localization of mobile robots is a longstanding issue. The use of WiFi signals is a promising approach that can be leveraged to estimate the position of a mobile robot. This project will aim at investigating this approach using open source available libraries such as https://www.internalpositioning.com/doc/.
The main goal of this project is to project the received video through a WebRTC session on a virtual display overlayed on the scene captured by a mobile device. Technologies to be used are augmented reality toolkits for the browser (f.i. AR.js) and WebRTC. To have an idea of what will be the final outcome take a look at this webpage.
Technologies: Matlab, video streaming
The goal of this project is to adapt an already developed simulator for streaming of classic 2D videos to the case of immersive 360 videos. The original simulator is written in Matlab and will be provided to the student(s) as a starting point to develop the project.
Technologies: video streaming, some shell scripting (or similar)
This project aims at investigating the performance of an immersive video streaming system with respect to different segments durations. The complete system will be provided by us. The student(s) will be required to conduct experiments and analyze the obtained results.
Testing the complete matrix of browsers/version and networks to pinpoint WebRTC connection and functionality issues is a complex task to be done manually. To the purpose, several tools can be used to design testing systems to automatically check if a WebRTC service is functioning as expected. One possible approach that could be investigated in this project is to employ the Selenium Grid (https://www.seleniumhq.org/docs/07_selenium_grid.jsp) or KITE (https://github.com/webrtc/KITE).
email@example.com - C3LAB - (3rd floor, south wing, DEI)
The goal of this project is the design and implementation of a web application for creating virtual rooms using Aframe/ThreeJS libraries (example: https://aframe.io/examples/showcase/museum/).
Technologies: Android or iOS, Java or ObjectiveC/Swift
The goal of this project is the design and implementation of a mobile application using the augmented reality frameworks ARCore (https://developers.google.com/ar/, for Android) or ARKit (https://developer.apple.com/arkit/, iOS).
The goal of this project is the development of a Kubernetes pod autoscaler (https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) using a customized metrics system (https://cloud.google.com/kubernetes-engine/docs/tutorials/custom-metrics-autoscaling).
The goal of this project is the development of a video encoder using web technologies (example: https://webrtc.github.io/samples/src/content/getusermedia/record/).
The project goal is the development of a native implementation of a WebRTC peer (example: https://webrtc.org/native-code/development/).
The project goal is the investigation of the 3D Streaming Toolkit (https://3dstreamingtoolkit.github.io/docs-3dstk/) that allows the real-time streaming of video content generated in the cloud.
The project goal is the investigation of a WebRTC native (C++) application (https://github.com/nicotyze/Webrtc-H264Capturer) that allows using pre-encoded content as video source.
Technologies: C++, OpenCV
The project goal is the investigation of video similarity measurements methods using OpenCV framework (http://www.swarthmore.edu/NatSci/mzucker1/opencv-2.4.10-docs/doc/tutorials/highgui/video-input-psnr-ssim/video-input-psnr-ssim.html).
Technologies: FFmpeg, required at least a GPU with encoding capabilities (Intel https://01.org/linuxgraphics/community/vaapi, Nvidia or AMD)
The project goal is the investigation of 4K video encoding using hardware graphic processing units (https://gist.github.com/Brainiarc7/4b49f463a08377530df6cecb8171306a) comparing CPU and memory usage.
firstname.lastname@example.org - C3LAB - (3rd floor, south wing, DEI)
General information: All these projects aim to develop a control system for a robotic navigation problem. You will use our mobile robot prototype platform "RoSyNa" that use a Raspberry Pi as controller board. Algorithms implementation can be made using the programming language that you prefer.
These projects are related to mobile robotics, navigation and localization control systems. Projects related to those topics can be spontaneously proposed by the students according to his/her/their interests.
The goal of this project is to equip a robot with the ability to roam around an area and create a “map” of where there are obstacles and where it is free to travel, then to provide the robot with the ability to travel to a user-defined position on this created map. After creating such a map, the robot would be able to travel to any area of open space as directed by a user at a remote location.
Most motion planning methods assume the complete knowledge of the environment. In the absence of a map, the robot must discover the world through its sensors and navigate on the basis of this incremental information. Bug algorithms are a class of planning methods that apply to robots with very basic sensor capabilities, like detecting contact with an obstacle and moving along its contour. Interestingly, they are complete, in the sense that they find a solution whenever one exists.
The objective of the project is to implement the BUG's algorithm for motion planning and obstacle avoidance in an unknown environment.
Consider a scenario where a mobile robot is planning and following a path in order to reach a goal. While moving in this environment an imminent danger is detected (obstacles moving), so that the robot must change its path or must be brought to a complete stop without hurts. The aim of this project is the implementation of a real time path planning among movable obstacles procedure for the an AWR.
This project aims to develop a robust wall-following and collision avoidance system for an AGV. The wall-following algorithm should be able to follow regular walls, virtual walls and curve while near corners.
Autonomous robots have the capability of gaining information about the environment. They work without the need for human intervention for a long period of time. They can also adapt to changes in their surrounding environment. The goal of this project is to develop a mobile robot algorithm that tracks an external object and dynamically follows its path.
This project aims to develop and implement a system capable of controlling an AWR so that it can start in front of the parking spot, or any other point on the parking area and self-drive to a parking spot achieving a desired final pose while avoiding obstacles on the way. Depending on the expertise of the group, the implementation platform may be MATLAB, V-REP or a real AWR.
The goal of this project is to implement a line following system for an AWR at first, then add memory to the system equipping the AWR with the ability to solve a line maze.
Remote control is mandatory in some tasks and the outcome of a mission relies on its robustness. This project aims to develop a remote control and tracking system for an AWR. The tracking system should be performed using artificial landmarks.