Semester assignments for the course "Digital Image Processing" of THMMY in AUTH university.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

143 lines
7.8 KiB

\section{Δεύτερη σειρά πειραμάτων}
Στη δεύτερη σειρά πειραμάτων γίνεται παρουσίαση της λειτουργίας και των αποτελεσμάτων της συνάρτησης \texttt{mySpectralClustering} σε συνδυασμό με τη συνάρτηση \texttt{Image2Graph}. Τα πειράματα εκτελούνται με κλήση του script \texttt{demo2} χωρίς ορίσματα. Το script εκτελεί μία σειρά από έξι πειράματα κατά τα οποία γίνεται κατάτμηση δύο δοσμένων εικόνων (``\texttt{d2a}'' και ``\texttt{d2b}'') σε δύο, τρεις και τέσσερεις ομάδες (clusters) διαδοχικά. Τα αποτελέσματα φαίνονται και σχολιάζονται στη συνέχεια.
Στο πρώτο μέρος του script εκτελούνται τα πειράματα για την πρώτη εικόνα που δίνεται (``\texttt{d2a}''). Ο affinity matrix που προκύπτει απεικονίζεται γραφικά ώστε να γίνει εμφανής η δομή και η συμμετρία του. Τα αποτελέσματα της κατάτμησης φαίνονται παρακάτω.
\begin{figure}[H]
\centering
\resizebox{.7\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e1_g.pdf_tex}}
}
\caption{Απεικόνιση affinity matrix πρώτης εικόνας (``\texttt{d2a}'')}
\end{figure}
\begin{multicols}{2}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e1_f1.pdf_tex}}
}
\caption{Αρχική εικόνα (``\texttt{d2a}'')}
\end{figure}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e1_f2.pdf_tex}}
}
\caption{Κατάτμηση πρώτης εικόνας (``\texttt{d2a}'') σε 2 ομάδες}
\end{figure}
\end{multicols}
\begin{multicols}{2}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e1_f3.pdf_tex}}
}
\caption{Κατάτμηση πρώτης εικόνας (``\texttt{d2a}'') σε 3 ομάδες}
\end{figure}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e1_f4.pdf_tex}}
}
\caption{Κατάτμηση πρώτης εικόνας (``\texttt{d2a}'') σε 4 ομάδες}
\end{figure}
\end{multicols}
Όπως φαίνεται στις εικόνες ο αλγόριθμος κάνει τέλεια κατάτμηση για τη περίπτωση των τριών ομάδων. Στη περίπτωση των δύο ομάδων η πράσινη και κόκκινη περιοχή κατατάσσονται στην ίδια ομάδα, ωστόσο αυτό μπορεί να αλλάξει ανάλογα με το σπόρο που θα δοθεί στην αρχή του script λόγω της τυχαιότητας που εισάγεται από τον αλγόριθμο K-Means. Τέλος στη περίπτωση των τεσσάρων ομάδων παρουσιάζεται ``θόρυβος'' στην ομαδοποίηση.
Στο δεύτερο μέρος του script εκτελούνται τα πειράματα για την δεύτερη εικόνα που δίνεται (``\texttt{d2b}''). Ο affinity matrix που προκύπτει απεικονίζεται και πάλι γραφικά. Τα αποτελέσματα της κατάτμησης φαίνονται παρακάτω.
\begin{figure}[H]
\centering
\resizebox{.7\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e2_g.pdf_tex}}
}
\caption{Απεικόνιση affinity matrix πρώτης εικόνας (``\texttt{d2b}'')}
\end{figure}
\begin{multicols}{2}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e2_f1.pdf_tex}}
}
\caption{Αρχική εικόνα (``\texttt{d2b}'')}
\end{figure}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e2_f3.pdf_tex}}
}
\caption{Κατάτμηση πρώτης εικόνας (``\texttt{d2b}'') σε 2 ομάδες, grayscale χρώματα}
\end{figure}
\end{multicols}
\begin{multicols}{2}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e2_f5.pdf_tex}}
}
\caption{Κατάτμηση πρώτης εικόνας (``\texttt{d2b}'') σε 3 ομάδες, grayscale χρώματα}
\end{figure}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e2_f7.pdf_tex}}
}
\caption{Κατάτμηση πρώτης εικόνας (``\texttt{d2b}'') σε 4 ομάδες, grayscale χρώματα}
\end{figure}
\end{multicols}
Σε αυτό το πείραμα (όπως και σε επόμενα) θεωρήθηκε χρήσιμο να υλοποιηθεί μία διαφορετική ανάθεση χρωμάτων στις ομάδες της κατατμημένης εικόνας. Δημιουργήθηκε η συνάρτηση \texttt{meanClustersColorRGB} η οποία δέχεται σαν είσοδο την αρχική και την κατατμημένη εικόνα και παράγει στην έξοδο την κατατμημένη εικόνα με χρώματα για κάθε ομάδα το χρωματικό διάμεσο της ομάδας.
\begin{multicols}{2}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e2_f1.pdf_tex}}
}
\caption{Αρχική εικόνα (``\texttt{d2b}'')}
\end{figure}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e2_f2.pdf_tex}}
}
\caption{Κατάτμηση πρώτης εικόνας (``\texttt{d2b}'') σε 2 ομάδες, χρωματικός διάμεσος}
\end{figure}
\end{multicols}
\begin{multicols}{2}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e2_f4.pdf_tex}}
}
\caption{Κατάτμηση πρώτης εικόνας (``\texttt{d2b}'') σε 3 ομάδες, χρωματικός διάμεσος}
\end{figure}
\begin{figure}[H]
\centering
\resizebox{.4\textwidth}{!}{
\colorbox{shadecolor}{\input{res/demo2_e2_f6.pdf_tex}}
}
\caption{Κατάτμηση πρώτης εικόνας (``\texttt{d2b}'') σε 4 ομάδες, χρωματικός διάμεσος}
\end{figure}
\end{multicols}
Στη περίπτωση των δύο ομάδων θα ήταν ιδανικό να διαχωριστεί το καμπυλόγραμμο τετράγωνο που βρίσκεται ``μπροστά'' από το λευκό φόντο που βρίσκεται πίσω. Στη περίπτωση αυτή ο αλγόριθμος έχει μέτρια αποτελέσματα, ομαδοποιόντας τα χέρια της φιγούρας του Mario στην ίδια ομάδα με το φόντο.
Στη περίπτωση των τριών ομάδων θα ήταν ιδανικό να δημιουργηθούν οι ομάδες ώστε να περιέχουν η μία το λευκό φόντο, η άλλη το μπλε φόντο της φιγούρας και η τρίτη τη φιγούρα. Και εδώ ο αλγόριθμος δίνει μέτρια αποτελέσματα.
Στη περίπτωση των τεσσάρων ομάδων ισχύει ό,τι και στη προηγούμενη, δηλαδή για τρείς ομάδες.
Παρατηρείται ότι ο αλγόριθμος έχει σχετικά ικανοποιητικά αποτελέσματα αλλά επιδέχεται βελτίωσης.