Εφαρμογή για την αναγνώριση αντικειμένων σε κινητές συσκευές με χρήση μηχανικής μάθησης
Application for the recognition of objects on mobile devices using machine learning
Διπλωματική εργασία
Author
Στασινός, Χαράλαμπος - Νεκτάριος
Date
2021-07Keywords
Android ; Μηχανική μάθηση ; Εφαρμογή για κινητές συσκευέςAbstract
Με την ανάπτυξη της τεχνολογίας και την μεγάλη εξάπλωση των κινητών συσκευών ένα μεγάλο
μέρος του πληθυσμού έχει έρθει σε επαφή με πλήθος νέων τεχνολογιών, οι οποίες παλαιότερα ήταν
διαθέσιμες μόνο μέσω τη χρήσης εξειδικευμένων συσκευών ή δεν ήταν καθόλου προσβάσιμες. Μία
τεχνολογία που έγινε εύκολα διαθέσιμη με την ανάπτυξη των κινητών συσκευών είναι η όραση
υπολογιστών.
Στην παρούσα εργασία θα παρουσιαστεί η ανάπτυξη ενός εκπαιδευτικού λογισμικού για κινητές
συσκευές που χρησιμοποιούν το λειτουργικό σύστημα Android, το οποίο θα βοηθάει τους χρήστες στην
αναγνώριση αντικειμένων μέσα από μια φωτογραφία, θα τα σημειώνει πάνω σε αυτήν και θα αναφέρει από
κάτω τις τρεις καλύτερες απαντήσεις με αναφορά του ποσοστού σιγουριάς ανά αντικείμενο. Το
συγκεκριμένο λογισμικό θεωρείται εκπαιδευτικό, διότι μπορεί να χρησιμοποιηθεί ως βοήθημα αλλά και ως
εργαλείο από τους χρήστες ,ώστε να αναγνωρίσουν τα αντικείμενα στο χώρο τους. Επιπλέον, μπορεί να
βοηθήσει στην αναγνώριση ηλεκτρονικών ειδών από άτομα που δεν διαθέτουν την ανάλογη γνώση.
Για την επίτευξη του στόχου της εργασίας η εφαρμογή γράφτηκε με χρήση της γλώσσας
προγραμματισμού Kotlin. Ακόμα αξιοποιήθηκαν οι τεχνολογίες AutoML της Google, για την εκπαίδευση
των μοντέλων μηχανικής μάθησης, αλλά και τα εργαλεία για αναγνώριση αντικειμένων και για επισήμανση
εικόνων του Google Machine Learning Kit.
Για την εκπαίδευση των μοντέλων μηχανικής μάθησης χρησιμοποιήθηκαν το σετ δεδομένων
CIFAR – 100, ένα σύνολο δεδομένων με ηλεκτρονικά είδη και ένα σύνολο δεδομένων με πέντε
διαφορετικούς τύπους λουλουδιών.
Κατά τη χρήση της εφαρμογής διαπιστώθηκε ότι αναγνωρίζονται κατά πλειοψηφία τα αντικείμενα
στις εικόνες που δοκιμάστηκαν. Στο πρώτο μοντέλο μηχανικής μάθησης, με τα συνηθισμένα αντικείμενα,
παρατηρήθηκε ότι αν το αντικείμενο ανήκει σε κάποια κατηγορία από αυτές που περιέχει το μοντέλο, τότε
η σωστή απάντηση εμφανίζεται στις τρεις πρώτες προβλέψεις. Στο δεύτερο μοντέλο μηχανικής μάθησης,
με τα ηλεκτρονικά είδη, παρατηρήθηκαν οι περισσότερες λανθασμένες προβλέψεις κυρίως λόγω του
περιορισμού ανίχνευσης των αντικειμένων. Στο τελευταίο μοντέλο μηχανικής μάθησης, με τα λουλούδια,
παρατηρήθηκε 100% επιτυχία αναγνώρισης των αντικειμένων εξαιτίας του μικρού αριθμού κατηγοριών.
Abstract
With the development of technology and the great spread of mobile devices, a large part of the
population has come into contact with a number of new technologies, which in the past were only available
through the use of specialized devices, or were not available at all. One technology that has become readily
available with the development of mobile devices is computer vision.
In this thesis we will present the development of an educational software for mobile devices using
the Android operating system, which will help users to identify objects through a photo, mark them on it
and list below the three best answers with an indication of the percentage of certainty per item. This software
is considered educational because it can be used as an aid but also as a tool by users to identify objects in
their space. In addition, it can help identify electronic items from people who do not have the appropriate
knowledge.
To achieve the goal of this thesis, the application was written using Kotlin as the programming
language. Also, for the training of the custom models of machine learning, Google’s AutoML technologies
were used, and for object detection and for image labeling, Google’s ML Kit tools were utilized.
For the training of machine learning models, the CIFAR – 100 was used, and also a dataset featuring
electronics, and a dataset containing five different types of flowers.
While using the application, it was found that the objects in the tested images were identified by a
majority. In the first machine learning model, with the usual objects, it was observed that if the object
belongs to some of the categories contained in the model, then the correct answer appears in the first three
predictions. In the second model of machine learning, with electronic items, the most erroneous predictions
were observed mainly due to the limited detection of objects. In the latest model of machine learning, with
flowers, 100% success of object recognition was observed due to the small number of categories.