ΜΗΧΑΝΙΚΗ ΟΡΑΣΗ. 2η ΕΡΓΑΣΙΑ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ

Σχετικά έγγραφα
ΜΗΧΑΝΙΚΗ ΟΡΑΣΗ. 3η ΕΡΓΑΣΙΑ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ

Διατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών. «Προηγμένα Συστήματα Παραγωγής, Αυτοματισμού και. Ρομποτικής» Assignment 2

ΜΗΧΑΝΙΚΗ ΟΡΑΣΗ. 1η ΕΡΓΑΣΙΑ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ

Μάθημα: Μηχανική Όραση

ΖΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΔΠΜΣ Προηγμένα Συστήματα Παραγωγής, Αυτοματισμού και Ρομποτικής

Εργαστήριο ADICV1. Image Boundary detection and filtering. Κώστας Μαριάς 13/3/2017

ADVANCES IN DIGITAL AND COMPUTER VISION

Εργαστήριο ADICV2. Image filtering. Κώστας Μαριάς

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης

Ψηφιακή Επεξεργασία Εικόνας

ΙΑΤΡΙΚΗ ΑΠΕΙΚΟΝΙΣΗ & ΨΗΦΙΑΚΗ ΕΠΕΞΕΡΓΑΣΙΑ ΙΑΤΡΙΚΗΣ ΕΙΚΟΝΑΣ

Εφαρμοσμένα Μαθηματικά 3η εργαστηριακή άσκηση

References. Chapter 10 The Hough and Distance Transforms

Εισαγωγή στη Matlab Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής

Σύντομη Αναφορά σε Βασικές Έννοιες Ψηφιακής Επεξεργασίας Σημάτων

ΜΕΤΑΠΤΥΧΙΑΚΟ ΔΙΠΛΩΜΑ

Συστήματα Αναμονής (Queuing Systems)

Μάθημα 8 ο. Ανίχνευση Ακμών ΤΜΗΥΠ / ΕΕΣΤ 1

Μάθημα 8 ο. Ανίχνευση Ακμών ΤΜΗΥΠ / ΕΕΣΤ 1

Ασκήσεις Ρομποτικής με την χρήση του MATLAB

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πεδί α

Ο ΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ MATLAB

Εργαστήριο ADICV3. Image filtering, Point Processing and Histogram Equalisation. Κώστας Μαριάς 20/3/2017

Ψηφιακή Επεξεργασία Εικόνας

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΠΕΞΕΡΓΑΣΙΑ ΕΙΚΟΝΑΣ. Ενότητα 3: Αποκατάσταση Εικόνας.

ΒΙΟΜΗΧΑΝΙΚΑ ΗΛΕΚΤΡΟΝΙΚΑ

. Βάθος χρώματος: Πραγματικό χρώμα. . Βάθος χρώματος: Αποχρώσεις του γκρίζου 8bit. . Βάθος χρώματος: Αποχρώσεις του γκρίζου 1bit.

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ. Κεφάλαιο 8. Συνεχείς Κατανομές Πιθανοτήτων

ADVANCES IN DIGITAL AND COMPUTER VISION

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 2)

ώστε επιλογή: Στη συνέχεια θα διαβάζει την επιλογή του χρήστη και την ακτίνα ενός κύκλου και θα εκτυπώνει το αντίστοιχο αποτέλεσµα.

Αριθμητική Επίλυση Συνήθων Διαφορίκών Εξισώσεων 3ο Εργαστήριο 27/03/2015 1

Τυπικές χρήσεις της Matlab

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Κατάτµηση Εικόνων: Ανίχνευση Ακµών και Κατάτµηση µε Κατωφλίωση

7 ο Εργαστήριο Θόρυβος 2Δ, Μετακίνηση, Περιστροφή

Συστήματα Αυτομάτου Ελέγχου

Ακαδηµαϊκό Έτος , Χειµερινό Εξάµηνο ιδάσκων Καθ.: Νίκος Τσαπατσούλης

ΕΠΕΞΕΡΓΑΣΙΑ ΙΑΤΡΙΚΗΣ ΕΙΚΟΝΑΣ

Advances in Digital Imaging and Computer Vision

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΠΕΞΕΡΓΑΣΙΑ ΕΙΚΟΝΑΣ. Ενότητα 2: Βελτιστοποίηση Εικόνας.

1. Καταχωρεί σ ένα πίνακα ΠΟΛΕΙΣ[10] τις 10 πόλεις της Ελλάδας.

ΕΠΕΞΕΡΓΑΣΙΑ ΕΙΚΟΝΑΣ ΜΕ ΙΣΤΟΓΡΑΜΜΑ

ΚΕΣ 03: Αναγνώριση Προτύπων και Ανάλυση Εικόνας. KEΣ 03 Αναγνώριση Προτύπων και Ανάλυση Εικόνας. Κατάτµηση Εικόνων:

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι

Χρονικές σειρές 4 o μάθημα: ΠΙΝΑΚΕΣ ΚΑΙ ΔΙΑΝΥΣΜΑΤΑ

Προσομοίωση (simulation) στο Matlab

Εισαγωγή στην Αριθμητική Ανάλυση

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 3)

Ειδικά Θέµατα Υπολογιστικής Όρασης & Γραφικής. Εµµανουήλ Ζ. Ψαράκης & Αθανάσιος Τσακαλίδης Πολυτεχνική Σχολή Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Εργαστήριο 9 Συναρτήσεις στη PASCAL. Η έννοια του κατακερματισμού. Συναρτήσεις. Σκοπός

ΑΣΚΗΣΗ 2 ΒΑΣΙΚΑ ΚΑΙ ΣΥΝΘΕΤΑ ΣΗΜΑΤΑ ΔΥΟ ΔΙΑΣΤΑΣΕΩΝ - ΕΙΚΟΝΑΣ

Φύλλο Εργασίας 3. Μια γρήγορη επανάληψη από τα προηγούμενα

Κεφάλαιο 8 Συνεχείς Κατανομές Πιθανοτήτων

M files RCL Κυκλώματα

1. Κατασκευάστε ένα διάνυσμα με στοιχεία τους ζυγούς αριθμούς μεταξύ του 31 και 75

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 2)

Εργαστήριο ADICV2 Labs 2-6

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

1 η Εργαστηριακή Άσκηση MATLAB Εισαγωγή

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ TECHNOLOGICAL EDUCATIONAL INSTITUTE OF WESTERN GREECE

Νέο υλικό. Matlab2.pdf - Παρουσίαση μαθήματος 2. Matlab-reference.pdf Σημειώσεις matlab στα ελληνικά (13 σελίδες).

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

3 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB. Κολοβού Αθανασία Ε.Τ.Ε.Π.

Ψηφιακή Επεξεργασία Σήματος

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 1

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

Πανεπιστήμιο Ιωαννίνων Ακαδ. Έτος Τμήμα Μηχανικών Η/Υ & Πληροφορικής. Παρασκευάς Τσανταρλιώτης Α.Μ. 318

Εργαστηριακή Άσκηση 1

Ένα πρόβλημα στη μετεωρολογία

ΠΠΜ 501: Προχωρημένη Ανάλυση Κατασκευών με Η/Υ

A = x x 1 + 2x 2 + 4

Προσεγγιστική λύση Γραμμικών Συστημάτων με την μέθοδο Gauss-Seidel. Δημιουργία κώδικα στο Matlab

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης

ΠΛΗΡΟΦΟΡΙΚΗ Ι (MATLAB) Ενότητα 4

Δομημένος Προγραμματισμός (ΤΛ1006)

Ειδικά Θέµατα Υπολογιστικής Όρασης & Γραφικής. Εµµανουήλ Ζ. Ψαράκης & Αθανάσιος Τσακαλίδης Πολυτεχνική Σχολή Τµήµα Μηχανικών Η/Υ & Πληροφορικής

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΕΞΕΡΓΑΣΙΑ ΕΙΚΟΝΑΣ

Ε Ρ Γ Α Σ Τ Η Ρ Ι Α9 Κ Η Α Σ Κ Η Σ Η

Εισαγωγή στις Τηλεπικοινωνίες / Εργαστήριο

ΠΠΜ 221: Ανάλυση Κατασκευών με Μητρώα

ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ. ΕΝΟΤΗΤΑ: Γραμμικές Συναρτήσεις Διάκρισης. ΔΙΔΑΣΚΟΝΤΕΣ: Βλάμος Π. Αυλωνίτης Μ. ΙΟΝΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Μοντέλο φωτισμού Phong

Γραφικές παραστάσεις (2ο μέρος)

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 4)

ΜΕΤΑΠΤΥΧΙΑΚΟ ΔΙΠΛΩΜΑ

Εργαστήρια Αριθμητικής Ανάλυσης Ι. 9 ο Εργαστήριο. Απαλοιφή Gauss με μερική οδήγηση - Παρεμβολη

Digital Image Processing

Strings. Τα strings μπορούν να αντιστοιχηθούν σε μεταβλητές δηλώνοντας τα με απόστροφο

Εισαγωγή στην Επιστήμη των Η/Υ ΙΙ. Παλινδρόμηση Δημιουργία Video Συναρτήσεις GUI Μάθημα 6

Βασικά στοιχεία στο Matlab

ΕΙΣΑΓΩΓΗ ΣΤΟ MATHLAB Α ΜΕΡΟΣ

Αλληλεπίδραση με το Matlab

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ,

Ε.Α.Υ. Υπολογιστική Όραση. Κατάτμηση Εικόνας

Μέθοδοι πολυδιάστατης ελαχιστοποίησης

Διαδικασιακός Προγραμματισμός

Διάλεξη 23: Τεχνικές Κατακερματισμού II (Hashing)

Transcript:

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΠΡΟΗΓΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΠΑΡΑΓΩΓΗΣ ΑΥΤΟΜΑΤΙΣΜΟΥ & ΡΟΜΠΟΤΙΚΗΣ ΜΗΧΑΝΙΚΗ ΟΡΑΣΗ 2η ΕΡΓΑΣΙΑ ΣΠΟΥΔΑΣΤΕΣ: ΕΙΣΗΓΗΤΗΣ ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΑΜ: ΜΗ62 ΔΡ ΜΑΚΡΗΣ ΑΛ. ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ ΑΜ: ΜΗ69 ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2016-2017

ΑΣΚΗΣΗ 1 Στην παρούσα εργασία ζητείται να παρουσιαστούν διάφορα φίλτρα μέσω της εντολής Imfilter του Matlab. Το script που αναπτύχθηκε είναι το παρακάτω: clear all; clc; %Καθαρίζουμε το ιστορικό % Χρησιμοποιώντας την fspecial με τη βοήθεια του help στο Matlab % δημιουργούμε τα παρακάτω φίλτρα. %Ορίσματα για τα φίλτρα που θα ακολουθήσουν. radius=5; hsize=50; sigma=10; len=30; theta=45; Filter1 = fspecial('disk',radius); Filter2 = fspecial('gaussian',hsize,sigma); Filter3 = fspecial('motion',len,theta); Filter4 = fspecial('sobel'); Filter5 = (1/9)*ones(3); %Εκτυπώνουμε τις μορφές των φίλτρων σε ένα figure(10). figure(10) subplot(3,2,1); surf(filter1); title('disk filter') subplot(3,2,2); surf(filter2); title('gaussian filter') subplot(3,2,3); surf(filter3); title('motion filter') subplot(3,2,4); surf(filter4); title('sodel filter') subplot(3,2,5); surf(filter5); title('our filter') %Εκτυπώνουμε την κανονική εικόνα σε ένα figure(20). %I=imread('topio.jpg'); %I=imread('shapes.tiff'); I=imread('dice_06.jpg'); %I=rgb2gray(I); figure(20); imshow(i); %Εκτυπώνουμε την εικόνα με πέντε διαφορετικά φίλτρα. I1= imfilter(i,filter1); figure(1); imshow(i1); I2= imfilter(i,filter2); figure(2); imshow(i2); I3= imfilter(i,filter3); figure(3); imshow(i3); I4= imfilter(i,filter4); figure(4); imshow(i4); I5= imfilter(i,filter5); figure(5); imshow(i5); %Bλέπουμε και τον ανάστροφο του sodel filter (συγκρίνουμε fig4 - fig6) F6=Filter4'; I6= imfilter(i,f6); figure(6); imshow(i6); Όπως φαίνεται και στο παραπάνω script δοκιμάστηκαν διάφορες εικόνες. To αποτέλεσμα που πήραμε για την εικόνα dice_06. Jpg είναι το παρακάτω: ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 1

Figure 20 Αρχική εικόνα Figure 10 Οι μορφές των φίλτρων ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 2

Figure 1 To φίλτρο disc To φίλτρο Disk είναι ένα φίλτρο κυκλικό που λαμβάνει υπ όψιν του τα Μ.Ο. των τιμών στον τετραγωνικό πίνακα της πλευράς 2*ακτίνα+1. Προτεινόμενη ακτίνα είναι 5 Figure 2 Το φίλτρο Gaussian Το Gaussian φίλτρο επιστρέφει κυκλικά συμμετρική Gaussian χαμηλοπερατό φίλτρο του μεγέθους hsize με σταθερή απόκλιση σ. Το hsize μπορεί να είναι διάνυσμα που καθορίζει τα νούμερα των γραμμών και των στηλών. Η προτεινόμενη τιμή του hsize είναι [3 3] και της τυπικής απόκλισης 0,5 ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 3

Figure 3 Το φίλτρο Motion Το φίλτρο Motion προσεγγίζει μια συνέλιξη εικόνας, της γραμμικής κίνησης της κάμερας με len pixels, με γωνία θήτα μοιρών σε κατεύθυνση φοράς ρολογιού. Το φίλτρο γίνεται διάνυσμα για οριζόντιες και κάθετες κινήσεις. Προτεινώμενες τιμή len είναι 9 και θήτα είναι 0. Figure 4 Το φίλτρο sobel Το φίλτρο sobel είναι φίλτρο 3 by 3 που τονίζει τις οριζόντιες ακμές χρησιμοποιόντας το φαινόμενο της εξομάλυνσης προσεγγίζοντας μια κάθετη κλίση. Αν χρειαστεί να τονιστούν οι κάθετες ακμές παίρνουμε το h φίλτρο sobel ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 4

Figure 5 Το δικό μας φίλτρο Στο δικό μας φίλτρο κατασκευάσαμε έναν πίνακα 3Χ3 με τιμές 1/9 και μετατρέψαμε την αρχική εικόνα. figure 6 Το ανάστροφο του sobel ΑΣΚΗΣΗ 2 Σε αυτήν την άσκηση ζητήθηκε να συνταχτεί μια Function oriented_edges η οποία θα δέχεται μια εικόνα I, μια τιμή κατωφλίωσης (thresholding) thr, μια τιμή κατεύθυνσης a και μια γωνία da. Η function θα επιστρέφει έναν πίνακα λογικού αποτελέσματος με τιμή 1 όταν το pixel της εικόνας πληροί τις απαιτήσεις του χρήστη και τιμή 0 όταν δεν τις πληροί. Συντάχθηκε το παρακάτω script: clear all; clc; I=imread('shapes.tiff'); thr = 0.3; %η τιμή κατωφλίωσης που δίνει ο χρήστης a = 65; %η τιμή κατεύθυνσης σε μοίρες da = 5; %η γωνία απόκλισης σε μοίρες E= oriented_edges( I,thr,a,da ); % εισάγεται στην συνάρτηση figure(2) %ανοίγουμε ένα figure 2 imshow(e) %προβάλλεται το αποτέλεσμα του πίνακα Ε ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 5

Όπου η συνάρτηση Oriented_edges είναι η παρακάτω: function [ E ] = oriented_edges( I, thr, a, da ) Isize=size(I); if (length(isize)==3) I=rgb2gray(I); end I=im2double(I); a=deg2rad(a); da=deg2rad(da); Fg=fspecial('gaussian',[3 3],.5); Ig=imfilter(I,Fg); Fsx=fspecial('sobel'); Fsy=Fsx'; Iy=imfilter(Ig,Fsy); Ix=imfilter(Ig,Fsx); %Εάν η εικόνα έχει 3 επίπεδα είναι %RGB οπότε την μετατρέπουμε % ορίζεται το gausisian φίλτρο % γίνεται εξομάλυνση με αυτό %ορίζεται το sobel φίλτρο %και το ανάστροφό του (για τις %κάθετες ακμές) theta=atan(iy./ix); %βρίσκουμε την γωνία gradient της %εικόνας που εισήγαγε ο χρήστης Im = sqrt(ix.^2 + Iy.^2 ); %βρίσκουμε τις πλευρές της εικονας %σύμφωνα με το μέγεθος gradient E= (Im > thr) & ( (a-da) < theta < (a+da) ); %συγκρίνουμε το αποτέλεσμα %της εικόνας που επεξεργαστήκαμε %εάν είναι εντός των ορίων που %έδωσε ο χρήστης στο script και % καταχωρούμε 1 εάν είναι 0 εάν όχι end Για thr= 0.3, a=65 και da=5 πήραμε την παρακάτω εικόνα: ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 6

Για thr= 0.9, a=0 και da=5 πήραμε την παρακάτω εικόνα: Για thr= 2, a=40 και da=5 πήραμε την παρακάτω εικόνα: ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 7

ΑΣΚΗΣΗ 3 Σκοπός της άσκησης αυτής είναι να δημιουργήσουμε ένα Script το οποίο θα αναγνωρίζει τα ζάρια μέσα στην εικόνα, θα βρίσκει τα κέντρα τους και θα αναγνωρίζει τον αριθμό της ζαριάς. Για την υλοποίηση της άσκησης, συντάχθηκε το παρακάτω script: clear all; clc; Im=imread('dice_01.tiff'); Ed=im2double(Im); figure(1); imshow(ed); %εισάγουμε την εικόνα %την μετατρέπουμε σε double %εμφανίζουμε την εικόνα E=double(edge(Ed, 'sobel')); %βρίσκουμε τις ακμές με τον αλγόριθμο %sobel figure(2); imshow(e); %εμφανίζουμε την εικόνα filter=ones( 57,58 ); filter(3:54, 3:54)=0; %Μετρήσαμε το μέγεθος του ζαριού το οποίο είναι %κατά Μ.Ο. 57Χ58 pixel. Έτσι Δημιουργίσαμε ένα %φίλτρο στο μέγεθος αυτό %με 1 στην περίμετρο και 0 εσωτερικά I2=imfilter(E,filter); %Φιλτράρουμε την εικόνα με το παραπάνω φίλτρο I= (I2 > 150); %βάζουμε το κατάλληλο όριο threshold figure(3); imshow(i); %εμφανίζουμε την εικόνα S=regionprops(I,'centroid'); %Χρησιμοποιούμε την regionprops για να %βρούμε τα κέντρα των ζαριών centroids=cat(1,s.centroid); imshow(i); hold on; plot(centroids(:,1),centroids(:,2),'g*') %Απεικονίζουμε τα κέντρα των %ζαριών hold off ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 8

Η αρχική εικόνα που εισήγαμε είναι: Figure 1 Μετά την εύρεση των ακμών με την μέθοδο του sobel η εικόνα μας έγινε: figure 2 ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 9

Εφαρμόζοντας το φίλτρο στην εικόνα και το threshold η εικόνα μας γίνεται τελικά: Όπου με την regionprops παίρνουμε την τελική εικόνα που απεικονίζει τα κέντρα των ζαριών: Το τελευταίο βήμα της άσκησης ήταν να αναγνωριστεί και η ζαριά. Αυτό θα μπορούσε να επιτευχθεί μέσω της εύρεσης των γωνιών που έχει μέσα το ζάρι (άρα και αριθμών) μέσω της εντολής corner και της μεθόδου Harris που υπάρχει στο Matlab. Παρόλες τις προσπάθειές μας δεν καταφέραμε να την συντάξουμε σωστά ώστε να πάρουμε κάποιο σωστό αποτέλεσμα. ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 10

Δοκιμάσαμε το παραπάνω script και στις άλλες εικόνες για την σύγκριση των αποτελεσμάτων. Στις άλλες εικόνες υπήρχε η δυσκολία του φιλτραρίσματος που γινόταν με αποτέλεσμα να μην παίρνουμε σωστά αποτελέσματα όπως αυτά της πρώτης εικόνας. Θα έπρεπε λοιπόν πιθανόν να δοκιμαστούν άλλα φίλτρα. Στην εικόνα dice_04 χρησιμοποιώντας το ίδιο φίλτρο (sobel) και μεταβάλλοντας το δικό μας φίλτρο στα pixel του ζαριού (120Χ120 περίπου) καθώς επίσης και το threshold έγινε 950 (η εικόνα έχει χοντρές ακμές) το script μας έγινε ως ακολούθως: Im=imread('dice_04.jpg'); Isize=size(Im); if (length(isize)==3) Im=rgb2gray(Im); end Ed=im2double(Im); figure(1); imshow(ed); E=double(edge(Ed, 'sobel')); figure(2); imshow(e); filter=ones( 120,120 ); filter(10:110, 10:110)=0; I2=imfilter(E,filter); I= (I2 > 950); figure(3); imshow(i); S=regionprops(I,'centroid'); centroids=cat(1,s.centroid); imshow(i); hold on; plot(centroids(:,1),centroids(:,2),'g*') hold off Η εικόνα που εισήγαμε ήταν: ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 11

Μετά το φίλτρο η εικόνα έγινε: Και με την αναζήτηση του κέντρου πήραμε: ΔΗΜΟΠΟΥΛΟΣ ΑΝΔΡΕΑΣ ΧΑΡΚΙΟΛΑΚΗΣ ΜΙΧΑΛΗΣ 12