title: Δημιουργία διαδικτυακού αποθετηρίου για την επισκόπηση και επεξεργασία τρισδιάστατων νεφών σημείων με χρήση ελεύθερου λογισμικού και λογισμικού ανοιχτού κώδικα
title: Development of a web repository for visualizing and processing 3D point clouds using free and open source software
Creators: name: Δαφερμος Ιωαννης
Publisher: name: Technical University of Crete
Year: 2019

description: Οι κλασικές αλλά και σύγχρονες μέθοδοι τοπογραφικής αποτύπωσης και γεωμετρικής τεκμηρίωσης π.χ. μέσω σαρώσεων με LiDAR, ή με φωτογραμμετρικές μεθόδους παράγουν μεγάλο όγκο δεδομένων, συνήθως με τη μορφή τρισδιάστατων νεφών σημείων (3D point clouds). Τα υπάρχοντα υπολογιστικά συστήματα και λογισμικά επεξεργασίας χωρικών δεδομένων αδυνατούν συχνά να τα διαχειριστούν λόγω του όγκου τους ή δεν παρέχουν την επιθυμητή λειτουργικότητα για την περαιτέρω ανάλυσή τους. Υπάρχει λοιπόν ανάγκη για λογισμικά και εργαλεία επεξεργασίας τα οποία θα καλύψουν αυτό το κενό.
Στόχος της παρούσας διπλωματικής εργασίας είναι η ανάπτυξη μίας διαδικτυακής εφαρμογής, στα πρότυπα χρήσης Ελεύθερου Λογισμικού & Λογισμικού Ανοικτού Κώδικα (ΕΛΛΑΚ), η οποία θα λειτουργεί ως αποθετήριο δεδομένων μορφής νέφους σημείων, παρέχοντας παράλληλα δυνατότητες τόσο επεξεργασίας όσο και οπτικοποίησής τους. Η εφαρμογή θα συνδέεται με μία βάση δεδομένων για την αποθήκευση και ανάκτηση των απαραίτητων για τη λειτουργία της πληροφοριών. Το περιβάλλον της θα πρέπει να είναι φιλικό προς τον χρήστη, απλοποιώντας τις διαδικασίες χειρισμού και επεξεργασίας των δεδομένων.
Έτσι, τα βασικά χαρακτηριστικά της εφαρμογής που υλοποιήθηκε περιλαμβάνουν ένα εύχρηστο γραφικό περιβάλλον που επιτρέπει τη διαχείριση χρηστών, τη δυνατότητα μεταφόρτωσης των δεδομένων, την κατάλληλη οπτικοποίηση καθώς και σειρά εργαλείων επεξεργασίας νεφών σημείων. Η δημιουργία της εφαρμογής βασίστηκε στη χρήση του πλαισίου ανάπτυξης διαδικτυακών εφαρμογών Django και της βάσης δεδομένων PostgreSQL με τις γεωχωρικές της επεκτάσεις PostGIS και PGPointCloud. Ως γλώσσα προγραμματισμού για τη σύνδεση των επιλεγμένων λογισμικών χρησιμοποιήθηκε η Python, που είναι και η γλώσσα προγραμματισμού του Django.
Ο χειρισμός γεωχωρικών δεδομένων και δεδομένων νεφών σημείων έγινε χρησιμοποιώντας κατάλληλες βιβλιοθήκες, οι κυριότερες εκ των οποίων είναι οι Leaflet, GDAL και PDAL. Η οπτικοποίηση τρισδιάστατων δεδομένων σε περιηγητές ιστού έγινε με χρήση του λογισμικού Potree, που βασίζεται στην τεχνολογία WebGL. Η υλοποίηση της επιθυμητής πρόσθετης λειτουργικότητας του Potree επιτεύχθηκε με παραμετροποίησή του μέσω των βιβλιοθηκών PDAL & GDAL, εντός του πλαισίου ανάπτυξης Django. Επίσης, έγινε προσπάθεια για δημοσίευση της εφαρμογής στο Διαδίκτυο με τον Apache web server.
Τέλος, η εφαρμογή που αναπτύχθηκε (PC Repository) δίνει τη δυνατότητα σε χρήστες με περιορισμένους υπολογιστικούς πόρους να αποθηκεύουν, οπτικοποιούν, διαχειρίζονται και επεξεργάζονται δεδομένα νεφών σημείων χρησιμοποιώντας διαδεδομένους περιηγητές ιστού, χωρίς να χρειάζεται να διαθέτουν εξειδικευμένο λογισμικό.
description: Classical as well as contemporary methods of topographic surveying and geometric documentation such as LiDAR scans or photogrammetry can produce large volumes of data, usually in the form of 3D point clouds. Existing computing systems and spatial data processing software often fail to manage them due to their size, or do not offer the desired functionality for further analysis. Therefore, there is a need for software and processing tools that will bridge this gap.
The aim of this master thesis is the development, through Free & Open Source Software (FOSS), of a web application that will operate as a repository of point cloud data, offering at the same time features such as processing and visualizing of such data. The application will connect to a database for storing and retrieving information necessary for its operation. It should engage a user-friendly environment, simplifying the procedures of data handling and processing.
Thus, the basic features of the developed application include an easy to use graphical interface that allows user management, uploading, visualizing as well as some processing capabilities of point cloud data. The development of the application was based on the use of Django web framework and PostgreSQL database with PostGIS and PGPointCloud spatial extensions. Python was used as a programming language for connecting the selected software components, which is also the programming language of Django.
Spatial data and point cloud data were managed using appropriate libraries, mainly Leaflet, GDAL and PDAL. The visualization of 3D data in web browsers was accomplished using Potree software, which is based on WebGL technology. The implementation of the desired additional functionality of Potree was achieved by customizing it through libraries PDAL & GDAL, within the Django framework. Publishing the application to the Internet was attempted using the Apache web server.
Finally, the developed application (PC Repository) allows users with limited computing resources to store, visualize, manage and process point cloud data using standard web browsers, without the need for specialized software.