background image

 

68 

 

Οι μετατροπές που έγιναν στον αλγόριθμο δημιουργούν και προβλήματα σε ορισμένες 

περιπτώσεις.  Αρχικά,  ο  διαχωρισμός  που  απαιτείται  για  την  παραλληλοποίηση  οδηγεί  σε 

μικρές  καθυστερήσεις  για  τον  υπολογισμό  κελιών  μεταξύ  δύο  κομματιών  και  για  την 

διαδικασία  του  διαχωρισμού.  Επομένως,  ο  αλγόριθμος  δεν  είναι  ο  βέλτιστος  δυνατός  όσον 

αφορά στον υπολογισμό μικρών περιοχών. Επιπρόσθετα, οι υπολογισμοί που γίνονται για τα 

κελιά έχουν δραστική επίδραση στη δομή του αλγορίθμου. Ο αλγόριθμος θυσιάζει αρκετή από 

την απόδοση του για να προσφέρει βελτίωση στην ακρίβεια,. Ταυτόχρονα, λόγω τον αλλαγών 

που απαιτούνται, δεν είναι δυνατή η εύκολη μετατροπή του για οποιαδήποτε άλλη προσέγγιση 

που αφορά τη μέτρηση του ύψους, καθώς δεν γίνεται πλέον η χρήση του δέντρου, που είναι 

βασικό κομμάτι του αρχικού αλγορίθμου. 

Ο αλγόριθμος, που υλοποιήθηκε,  δίνει έμφαση στην ακρίβεια των μετρήσεων, αφού 

κρίνεται απαραίτητη στις εφαρμογές που χρησιμοποιείται η ανάλυση οπτικού πεδίου [40]. Η 

ακρίβεια του αλγορίθμου αποτελεί βασικό στόχο του αλγορίθμου, διότι μικρές αλλαγές είναι 

πιθανό να αλλοιώσουν σημαντικά την ορατότητα της θέσης που εξετάζεται. Επομένως, στον 

αλγόριθμο έγινε χρήση της τεχνικής της παρεμβολής, η οποία εξασφαλίζει την ακρίβεια των 

αποτελεσμάτων  του  αλγορίθμου,  χωρίς  να  απαιτεί  τη  χρήση  υψομετρικού  μοντέλου  με 

μικρότερα κελιά. Ταυτόχρονα, καθώς η ανάλυση οπτικού πεδίου χρησιμοποιείται σε ένα ευρύ 

φάσμα εφαρμογών, πολλές από τις οποίες αναφέρονται και στο κεφάλαιο 1, συχνά συνδυάζεται 

με άλλες τεχνικές ανάλογα με τις απαιτήσεις του έργου στο οποίο εφαρμόζεται. Κατά συνέπεια, 

η γλώσσα προγραμματισμού στην οποία υλοποιήθηκε ο αλγόριθμος οφείλει να ανταποκρίνεται 

στις ανάγκες για την πλειοψηφία των έργων αυτών. Έτσι, η χρήση της Python επιλέχτηκε λόγω 

της  ευελιξίας  που  παρέχει  [41].  Οι  βιβλιοθήκες  που  είναι  διαθέσιμες  στην  Python  την 

καθιστούν ιδανική για χρήση σε μεγάλη ποικιλία εφαρμογών, καθώς μπορούν να εκφράσουν 

σύνθετους αλγόριθμους πολύ γρήγορα. Πιο συγκεκριμένα, η Python υποστηρίζει βιβλιοθήκες 

για την επεξεργασία γεωχωρικών δεδομένων, όπως η shapely, η rasterio και η gdal οι οποίες 

διευκολύνουν την ανάπτυξη σημαντικών εφαρμογών, όπως της Open Data Cube. Η αύξηση 

όμως  της  απόδοσης  που  παρέχει  στον  προγραμματιστή  η  Python,  έχει  ως  αποτέλεσμα  τη 

μείωση της απόδοσης του αλγορίθμου. Το συγκεκριμένο πρόβλημα μπορεί να μετριασθεί μέσω 

της παράλληλης εκτέλεσης του αλγορίθμου, όταν γίνει χρήση αρκετών διεργασιών. Συνολικά, 

ο  αλγόριθμος  διατηρεί  μια  ισορροπία  μεταξύ  απόδοσης  και  χρηστικότητας,  και  μπορεί  να 

προσαρμοστεί  περαιτέρω,  ώστε  να  καλύψει  οποιοδήποτε  πρόβλημα  προκύψει  μελλοντικά, 

αφού ο πηγαίος κώδικας διατίθεται ελεύθερα (open source).