Dron Vision

My bachelor thesis project. The topic of the project was "Algorithm for computation and visualization of searched area with implementation using OpenStreetMap system."

Used technologies

  1. Java
  2. JAVA EE
  3. Android
  4. UML

Github repository

System description

The system is called "DronVision". It has been designed for purposes of surveillance and control of big areas, such as industrial or agricultural areas through visualization of area search by drones.

The system allows for gathering of real time geoposition data, analysing the data according to invented algorithm, and visualization of the data on mobile devices.

The system description

Designed and implemented system comprised of 3 components.

  • DronServer - server side of the system written in JAVA EE
  • DronTracker - application gathering geoposition data of aerial vehicles created for Android platform
  • DronVision - main client application, with main purpose of visualizing the searched area with use of OpenStreetMap API. Application was created for Android platform.

Thesis abstract

The main purpose of this thesis was to map out algorithm for computation and visualization of area registered by cameras mounted to unmanned aerial vehicles, colloquially known as drones, based on vehicles' geopositions and angles of camera lenses. Such an area was described in the research as searched area. Additional aim was to create an information system enabling to gather positional data from aircrafts and visualize effects of the algorithm on mobile devices.

At the beginning there were described theoretical aspects connected with touched issues, which contained such topics as global positioning system (GPS), the way it works and its accuracy, reference surfaces for mapping, digital elevation models, and the ways of gathering them with detailed description of shuttle radar topography mission. Being acquainted with these issues was crucial for further stages of the study. The next section focused on system analysis. There were discussed technologies adequate for designed system, available types of applications, platforms, and tools allowing to create software. Furthermore, the ways of communication between system elements were chosen, and the format of transported data was picked out. Thereafter, the study focused on the requirements that the designed system was to meet. The result of this section was a logical model of the system describing ways of realization of defined preconditions and tasks without implementation details. The next chapter was dedicated to the issue of developing the algorithm for computation and visualization of searched area. At the beginning there was performed an analysis of the requirements and foundations related to the algorithm. Afterwards, the complete algorithm was divided into three parts: algorithm for computation of the hull of the area, algorithm for the determination of the areas inside the hull, which were eclipsed by something, and therefore, not registered by the camera, and finally, algorithm for combining areas calculated in consecutive steps into single area. First two algorithms were designed with use of heuristics and the last one harnessed scientific theory of alpha shapes, and algorithm for computation of alpha-concave hull. After system analysis and algorithm description there was time for system design which consisted of the transformation of the analytical model into model containing informations about internal structure of the system, its configurations and implementation. As the effect of this section, static structure diagrams such as component diagram, class diagram, entity relationship diagram, and dynamic models such as activity and sequence diagrams were created. Within the system design stage user interface design for mobile - visualizing application called DronVision was also created. The last part of the study composed of implementation of the designed information system, invented algorithm, and presentation of the conceived solution taking into account apportionment of the whole system into subsystems, and overview of the visualizing application's views. This part may be circumscribed as user's manual for the application DronVision.

As a result, the assumptions stated at the beginning of the thesis were met and the tool for cooperation with unmanned aerial vehicles, in the range of visualization of searched areas, was created. The thesis allowed the author to remarkably extend his knowledge in such fields as computer science, mathematics, software engineering, algorithmics, geoinformatics, geophysics, and many others which are hard to classify.