The present work aims to develop an Android application that captures paved roads data while driving a vehicle. The identification of the events, such as holes and speed bumps, that occur during the driving will be performed in an automated way through the use of a machine learning algorithm. Furthermore, but not less important, a public web servisse will be developed allowing anyone, despite the interest, to visualize and use the captured data by the mobile application.
The Project as a whole uses Python, C# and Java programming languages. The application, called Lunar, has been developed in order to work on smartphones running on Kitkat version (4.x) or greater Android OS version. In this step, is concentrated the logic to capture accelerometer’s data and the respective GPS coordinates. The data processing step is done through processes developed in C# that are hosted in the cloud. Moreover, the machine learning logic has been developed through Python coding. Concerning the access records stored on this database, a Web API will be created using C# and Visual Studio 2017 IDE, where this component will work as the intermediate between the stored data and the final user. During this process the user will be able to access the data of any obstacles (event) at any given moment from any location along with other features that will be discussed throughout this document. Along the text are chapters concerning the use of the programming languages adopted, cloud technologies, as well as the mathematical and statistical concepts handled to develop the Lunar Project. Finally, personal conclusions will be taken and the results will be described and explained together with a description of all stages built for the mobile app operation.