THMMY.gr

Μαθήματα Κύκλου Ηλεκτρονικής & Υπολογιστών => Συστήματα Πολυμέσων => Topic started by: leukosaraphs! on October 01, 2019, 01:01:54 am



Title: [Πολυμέσα] Εργασία 2019-2020
Post by: leukosaraphs! on October 01, 2019, 01:01:54 am
Οποιαδήποτε απορία σχετικά με την εργασία. Stay on topic!


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: tuboflo on December 08, 2019, 03:53:07 am
Ποτε και που θα ανεβει η εργασια γνωριζουμε?


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: KG8 on December 08, 2019, 14:07:33 pm
Ποτε και που θα ανεβει η εργασια γνωριζουμε?

Η εργασία είναι έτοιμη, θα την ανεβάσει στο elearning. Έχει φτιάξει το μάθημα αλλά δεν έχει ανοίξει τις εγγραφές...


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: ntinara on December 13, 2019, 19:24:26 pm
το μαθημα φτιαχτηκε κι η εργασια ανεβηκε! :)


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: TheoProt on December 15, 2019, 01:56:19 am
Για τις περιπτώσεις του subsampling θα βάλουμε απλά μηδενικά στις θέσεις του πίνακα που δεν θέλουμε δείγματα Cr & Cb ή πρέπει να διώξουμε τελείως αυτές τις θέσεις και ουσιαστικά να καταλήξουμε σε πίνακες μικρότερου μεγέθους για τις συνιστώσες Cr & Cb ; Επίσης, είπε κάτι για τον τρόπο της υποδειγματοληψίας, δηλαδή να κάνουμε υποδειγματοληψία βασισμένοι σε κάποια σχέση μεταξύ των δειγμάτων πυο κρατάμε ή απλά να "διώχνουμε" πχ κάθε δεύτερο στοιχείο του πίνακα ;


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: leukosaraphs! on December 15, 2019, 12:31:59 pm
Για τις περιπτώσεις του subsampling θα βάλουμε απλά μηδενικά στις θέσεις του πίνακα που δεν θέλουμε δείγματα Cr & Cb ή πρέπει να διώξουμε τελείως αυτές τις θέσεις και ουσιαστικά να καταλήξουμε σε πίνακες μικρότερου μεγέθους για τις συνιστώσες Cr & Cb ; Επίσης, είπε κάτι για τον τρόπο της υποδειγματοληψίας, δηλαδή να κάνουμε υποδειγματοληψία βασισμένοι σε κάποια σχέση μεταξύ των δειγμάτων πυο κρατάμε ή απλά να "διώχνουμε" πχ κάθε δεύτερο στοιχείο του πίνακα ;

στην λογικη της μειωσης της εντροπιας (με αντικτυπο χασιμο πληροφοριας), εγω πεταξα σε καθε περιπτωση τα στοιχεια που μου ελεγε το sub-sampling. "μικρυνα" δηλαδη τους πινακες.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on December 17, 2019, 04:52:01 am

Όταν γράφει

 '' Η αντίστροφή συνάρτηση της παραπάνω είναι :
1 function imageRGB = convert2rgb(imageY, imageCr, imageCb, subimg)
όπου τα ορίσµατα έχουν γενικά την ίδια σηµασία, ωστόσο τώρα ϑα πρέπει να γίνει υπερδειγµατοληψία, προκειµένου η ανακατασκευασµένη εικόνα imageRGB να έχει ίδια διάσταση µε την
αρχική.  ''

τι ακριβώς εννοεί? Απλά οτι θα προστεθούν 3 στήλες μια για κάθε συνιστώσα R,G,B ? Ή οτι θα πρεπει αν πχ κοψαμε 4 γραμμές για να έχουμε πολλαπλάσιο του 8 να τις ανακατασκευάσουμε (γιατι αυτο το τελευταιο δεν νομιζω οτι εχει λογικη ή οτι γίνεται κάπως). Επίσης για το κομμάτι της μετατροπής, χρησιμοοποιούμε τον πίνακα της σελίδας 32 στις σημειώσεις, έχει πει κατι σχετικά με αυτό? Γιατί εγω όταν τον χρησιμοποιώ δεν παίρνω καλή ποιοτητα χρωμάτων με την ανακατασκευή σε RGB αν και οι ακμές είναι οκ.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: MrRobot on December 17, 2019, 13:02:43 pm
Στην περίπτωση που το διάνυσμα subimg δεν είναι το [4 4 4] πρέπει να έχεις κάνει υποδειγματοληψία στην εικόνα, εξηγεί το πως στις σημειώσεις του μαθήματος. Για παράδειγμα αν είχες μια εικόνα διαστάσεων 400x400 και πίνακα υποδειγματοληψίας [4 2 0] σημαίναι ότι η convert2ycbcr θα επιστρέψει έναν πίνακα Y μεγέθους 400χ400, έναν Cr μεγέθους 200χ200 και έναν Cb μεγέθους 200χ200. Επομένως για να γυσίσεις στην αρχική σου εικόνα (RGB) πρέπει να πας να συμπληρώσεις τις τιμές των pixels που λείπουν στην YCbCr κάνοντας υπερδειγματοληψία. Μας είπε ότι μπορούμε να εφαρμόσουμε όποια μέθοδο θέλουμε, η πιό απλή είναι αυτή του κοντινότερου γείτονα.

Όσον αφορά τον πίνακα της μετατροπής χρησιμοποίησα αυτόν που έχει η wikipedia, είναι αρκετά κοντα σε αυτόν των σημειώσεων καί είχα πολύ καλά αποτελέσματα.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: TheoProt on December 17, 2019, 15:04:06 pm
Στην περίπτωση που το διάνυσμα subimg δεν είναι το [4 4 4] πρέπει να έχεις κάνει υποδειγματοληψία στην εικόνα, εξηγεί το πως στις σημειώσεις του μαθήματος. Για παράδειγμα αν είχες μια εικόνα διαστάσεων 400x400 και πίνακα υποδειγματοληψίας [4 2 0] σημαίναι ότι η convert2ycbcr θα επιστρέψει έναν πίνακα Y μεγέθους 400χ400, έναν Cr μεγέθους 100χ100 και έναν Cb μεγέθους 200χ200. Επομένως για να γυσίσεις στην αρχική σου εικόνα (RGB) πρέπει να πας να συμπληρώσεις τις τιμές των pixels που λείπουν στην YCbCr κάνοντας υπερδειγματοληψία. Μας είπε ότι μπορούμε να εφαρμόσουμε όποια μέθοδο θέλουμε, η πιό απλή είναι αυτή του κοντινότερου γείτονα.

Όσον αφορά τον πίνακα της μετατροπής χρησιμοποίησα αυτόν που έχει η wikipedia, είναι αρκετά κοντα σε αυτόν των σημειώσεων καί είχα πολύ καλά αποτελέσματα.
Οι πίνακες Cr και Cb και στις δυο περιπτώσεις υποδειγματοληψίας δεν πρέπει να εχουν το ίδιο μέγεθος ; Σύμφωνα με τον τρόπο υποδειγματοληψίας που έχει στη σελίδα 39 των σημειώσεων.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: MrRobot on December 17, 2019, 15:19:05 pm
Ναι, είχα κάνει λάθος και τις δύο διαστάσεις στην αρχή, και το διόρθωσα μόνο μία φορά. Τώρα το έφτιαξα.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on December 17, 2019, 16:07:21 pm
Δεν εχει κανας αλλος αυτο το θεμα με τα χρωματα?


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: MrRobot on December 17, 2019, 16:48:10 pm
Το είχα και εγώ αυτό το θέμα, δεν θυμαμαι ακριβώς τι έκανα και το έλυσα  :(, αν θυμηθώ θα το γράψω εδώ. Το λάθος γίνεται στο πράσινο, το οποιο ειναι το μοναδικό χρώμα που χρειάζεται και τον πίνακα Cb και τον Cr. Οπότε κάτι χάνεται στη σύνθεση των χρωμάτων του πράσινου.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: leukosaraphs! on December 17, 2019, 18:05:17 pm
Δεν εχει κανας αλλος αυτο το θεμα με τα χρωματα?

όταν κάνεις τις πράξεις χρησιμοποιείς όλο το πράσινο, κόκκινο και μπλε, σαν πίνακες? ή παίρνεις το κάθε pixel (χρωματικό) χωριστά?
εγώ αυτό το λάθος είχα.
sent from mTHMMY (https://play.google.com/store/apps/details?id=gr.thmmy.mthmmy) 


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on December 17, 2019, 18:10:41 pm
όταν κάνεις τις πράξεις χρησιμοποιείς όλο το πράσινο, κόκκινο και μπλε, σαν πίνακες? ή παίρνεις το κάθε pixel (χρωματικό) χωριστά?
εγώ αυτό το λάθος είχα.
sent from mTHMMY (https://play.google.com/store/apps/details?id=gr.thmmy.mthmmy) 

Δεν καταλαβα ακριβως.. Χωρίζω την RGB εικόνα σε τρία κανάλια R, G, B. Μετασχηματίζω σε YCrCb με βάση τους τύπους , δημιουργούνται τρεις πίνακες Y,Cr,Cb. Διαγράφω ό.τι δεν θέλουμε με βάση τον πίνακα δειγματοληψίας. Στη συνέχεια αντίστοιχα μετατρέπω τα κανάλια Y,Cr,Cb σε R,G,B τα οποία στο τέλος ενώνω σε έναν ενιαίο πίνακα mxmx3.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: leukosaraphs! on December 17, 2019, 19:35:53 pm
Δεν καταλαβα ακριβως.. Χωρίζω την RGB εικόνα σε τρία κανάλια R, G, B. Μετασχηματίζω σε YCrCb με βάση τους τύπους , δημιουργούνται τρεις πίνακες Y,Cr,Cb. Διαγράφω ό.τι δεν θέλουμε με βάση τον πίνακα δειγματοληψίας. Στη συνέχεια αντίστοιχα μετατρέπω τα κανάλια Y,Cr,Cb σε R,G,B τα οποία στο τέλος ενώνω σε έναν ενιαίο πίνακα mxmx3.

Παμε ξανα γιατι δεν το εξηγησα καλα. Ο μετασχηματισμος δεν λεει οτι θα παρεις ολο το R [496x496], ολο το G και ολο το B. Ο μετασχηματισμος θελει σε καθε επαναληψη να παιρνεις το pixel σαν χρωμα πχ [R(1,1) G(1,1) B(1,1)] * T' για την πρωτη επαναληψη κοκ για τις αλλες. Εγω αυτο το λαθος εκανα και εβγαζα αυτο ακριβως το μωβ στην εικονα.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on December 17, 2019, 20:23:50 pm
Μα εχω την ενυπωση οτι αυτο γινεται ουτως η αλλως οταν χρησιμοποιεις ολον τον πινακα . Για παραδειγμα :

red=rand(4,4);
green=rand(4,4);
 blue=rand(4,4);
 image=cat(3,red,green,blue);
image_transformed=red*2+blue*3+green*4;

Αν τρέξω αυτό είναι το ιδιο αποτελεσμα σαν να εκανα image_transformed(1,1)=red(1,1)*2+green(1,1)*4+blue(1,1)*3 κ.ο.κ

Εκτός αν πάλι κάτι δεν πιάνω, σορυ


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: leukosaraphs! on December 17, 2019, 21:09:31 pm
Μα εχω την ενυπωση οτι αυτο γινεται ουτως η αλλως οταν χρησιμοποιεις ολον τον πινακα . Για παραδειγμα :

red=rand(4,4);
green=rand(4,4);
 blue=rand(4,4);
 image=cat(3,red,green,blue);
image_transformed=red*2+blue*3+green*4;

Αν τρέξω αυτό είναι το ιδιο αποτελεσμα σαν να εκανα image_transformed(1,1)=red(1,1)*2+green(1,1)*4+blue(1,1)*3 κ.ο.κ

Εκτός αν πάλι κάτι δεν πιάνω, σορυ

το imageY(1,1)   = red(1,1) * T(1,1) + green(1,1) * T(1,2) + blue(1,1) * T(1,3)
το imageCb(1,1) = red(1,1) * T(2,1) + green(1,1) * T(2,2) + blue(1,1) * T(2,3)
το imageCr(1,1)  = red(1,1) * T(3,1) + green(1,1) * T(3,2) + blue(1,1) * T(3,3)

εγω νομιζω οτι αυτο που κανεις εσυ δεν θα παραξει το παραπανω αποτελεσμα. Αν ομως το ετρεξες και το κανει, τοτε μαλλον κατι αλλο θα ειναι.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: TheoProt on December 18, 2019, 05:24:21 am
Ρε παιδιά τους πίνακες των εικόνων τους επεξεργάζεστε με class "uint8" ή "double" ; Ρωτάω γιατί εχω διαφορετικά αποτέλεσματα στην ανακατασκευή των εικόνων για τις δύο περιπτώσεις. Παίρνω σωστά αποτελέσματα όταν τις χρησιμοποιώ σαν "double" αλλά αυτό έχει πρόβλημα μετά στον κβαντιστή καθώς οι τιμές των πινάκων για τον κβαντιστή είναι στην κλίμακα 0-255. Χρησιμοποιώ τον πίνακα από τις σημειώσεις για την αλλάγη από RGB σε YCrCb και αντίστροφα.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: TheoProt on December 18, 2019, 06:58:29 am
Δεν εχει κανας αλλος αυτο το θεμα με τα χρωματα?
Το πρόβλημα είναι ότι παίρνει λανθασμένες τιμές η συνιστώσα Cb. Αν κάνεις την αλλαγή : img2_down = im2double(img2_down) και χρησιμοποιήσεις την εικόνα με τύπο των τιμών για κάθε pixel "double" τότε λειτουργεί μια χαρά. Με αυτήν την αλλαγή θα δεις ότι οι τιμές της συνιστώσας Cb είναι αρνητικές και αν τις πολλαπλασιάσεις με 255 παίρνεις ουσιαστικά την τιμή στην κλίμακα που μας δίνεται η εικόνα αλλά < 0, πράγμα που δεν συμβαδίζει με τον τύπο uint8 στον οποίο μας δίνεται η εικόνα.  Βέβαια όπως έγραψα και παραπάνω ο τύπος double εμφανίζει πρόβλημα στον κβαντιστή. Όποιος το έλυσε αυτό το θέμα, ας μας πει πώς!


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on December 19, 2019, 14:11:44 pm
Το πρόβλημα είναι ότι παίρνει λανθασμένες τιμές η συνιστώσα Cb. Αν κάνεις την αλλαγή : img2_down = im2double(img2_down) και χρησιμοποιήσεις την εικόνα με τύπο των τιμών για κάθε pixel "double" τότε λειτουργεί μια χαρά. Με αυτήν την αλλαγή θα δεις ότι οι τιμές της συνιστώσας Cb είναι αρνητικές και αν τις πολλαπλασιάσεις με 255 παίρνεις ουσιαστικά την τιμή στην κλίμακα που μας δίνεται η εικόνα αλλά < 0, πράγμα που δεν συμβαδίζει με τον τύπο uint8 στον οποίο μας δίνεται η εικόνα.  Βέβαια όπως έγραψα και παραπάνω ο τύπος double εμφανίζει πρόβλημα στον κβαντιστή. Όποιος το έλυσε αυτό το θέμα, ας μας πει πώς!
'

Ίσως δοκίμασε τους τυπους απο wikipedia που προσθαφαιρουν την τιμή 128 στις συνιστώσες CbCr . Χωρίς  typecasting σε double στη συνάρτηση για μετατροπή σε YCbCr. Και κάνε το typecasting στη συναρτηση που το ξαναγυρνάς σε RGB προκειμένου αρχικά να πάρεις τις σωστές τιμές και εκ νεου typecasting σε uint προκειμένου να έχεις τους πίνακες σε σωστή μορφή για εικόνα.  Εγω ετσι το προσεγγισα τελος παντων. Θέλει να παρακολουθείς τι τιμές παίρνουν οι πίνακες μεταπηδώντας από τη μια συνάρτηση στην άλλη γενικά, με ταλαιπώρησε περισσότερο από οσο περίμενα και μου κανει εντυπωση που δεν εσκασε σε καναν αλλον αυτο το θεμα


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: TheoProt on December 19, 2019, 14:24:48 pm
'

Ίσως δοκίμασε τους τυπους απο wikipedia που προσθαφαιρουν την τιμή 128 στις συνιστώσες CbCr . Χωρίς  typecasting σε double στη συνάρτηση για μετατροπή σε YCbCr. Και κάνε το typecasting στη συναρτηση που το ξαναγυρνάς σε RGB προκειμένου αρχικά να πάρεις τις σωστές τιμές και εκ νεου typecasting σε uint προκειμένου να έχεις τους πίνακες σε σωστή μορφή για εικόνα.  Εγω ετσι το προσεγγισα τελος παντων. Θέλει να παρακολουθείς τι τιμές παίρνουν οι πίνακες μεταπηδώντας από τη μια συνάρτηση στην άλλη γενικά, με ταλαιπώρησε περισσότερο από οσο περίμενα και μου κανει εντυπωση που δεν εσκασε σε καναν αλλον αυτο το θεμα
Έκανα αυτό ακριβώς για πολλές ώρες και έβγαλα άκρη δουλεύοντας τις τιμές των πινάκων ως double (όχι με την im2double).


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on December 22, 2019, 00:45:44 am
Για αποριες που μπορουμε να στειλουμε mail  ?


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: thanosthehuge on December 22, 2019, 19:04:17 pm
Νομίζω είπε να στέλνουμε emails εδώ: kokirits@mug.ee.auth.gr

Στη Huffman κωδικοποίηση, πως ξέρουμε αν θα χρησιμοποιήσουμε τον luminance ή τον chrominance πίνακα για την αντιστοίχιση των συμβόλων σε code words??


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on December 23, 2019, 04:53:57 am
Σωστός, κι εγώ δεν το επισασα αυτο, πρεπει να προσδιοριζεται καπως στην huffenc.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: leukosaraphs! on December 23, 2019, 10:31:23 am
Έχετε δίκιο ότι δεν υπάρχει τρόπος να ξέρουμε τι block επεξεργαζόμαστε κάθε φορά.
Χρειάζεται ένα έξτρα όρισμα, το οποίο να καθορίζει τι είδους block έχεις.
sent from mTHMMY (https://play.google.com/store/apps/details?id=gr.thmmy.mthmmy) 


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: thanosthehuge on December 24, 2019, 16:58:50 pm
Στο demo1 κατάλαβατε αν πρέπει να κάνουμε και RLE και huffman κωδικοποίηση, ή σταματάμε στο dct και quantizing??


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: MrRobot on December 24, 2019, 19:35:10 pm
Σταματάς στα δεύτερα


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on December 31, 2019, 15:12:57 pm
Την εντροπία πως την υπολογιζουμε ??


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: Godat on December 31, 2019, 20:42:02 pm
To qScale στον κβαντισμό τι είναι, τι τιμές παίρνει; Και τον αλγόριθμο RLE πρέπει να τον υλοποιήσουμε εμείς;


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: TheoProt on December 31, 2019, 20:56:33 pm
To qScale στον κβαντισμό τι είναι, τι τιμές παίρνει; Και τον αλγόριθμο RLE πρέπει να τον υλοποιήσουμε εμείς;
Το qScale παίρνει πραγματικές τιμές (είναι ένας αριθμός) όπως λέει και η εκφώνηση στο πρώτο κομμάτι. Και την κωδικοποίηση RLE ναι εμείς την υλοποιούμε.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on January 01, 2020, 23:33:52 pm
Eπίσης κάποια ιδέα για αυτό?? Tι εννοει ο ποιητης?

Τροποποιήστε τους πίνακες κβαντισµού, ώστε να
µηδενιστούν οι 20, 40, 50, 60 και 63 πλεόν υψίσυχνοι όροι των dctBlock για qScale = 1.

Για το κομματι υπολογισμου της εντροπίας ελπίζω να μην θελει να υπολογισουμε την πιθανοτητα εμφανισης του καθε αριθμου και μετα την εφαρμογη του τυπου με τον λογαριθμο..


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: KG8 on January 03, 2020, 16:47:14 pm
Έχει απαντήσει σε κανέναν ο διδακτορικός; Του έχω στείλει τρεις φορές και τίποτα.  >:(  >:(


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: MrRobot on January 03, 2020, 18:21:08 pm
Ουτε σε εμένα απάντησε. Νταξει, διδακτορικό στον ντέλο κάνει, αναμενόμενο νομίζω


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on January 05, 2020, 02:00:46 am
H εντροπία σάς βγαίνει μεγαλύτερη για τον πίνακα με τα μήκη διαδρομής ή για τους κβαντισμένους dct ?


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: thanosthehuge on January 05, 2020, 17:15:32 pm
Την εντροπία την υπολογίζετε με την εντολή της Matlab entropy() ??
Επίσης, την υπολογίζετε για κάθε συνιστώσα του χρώματος ξεχωριστά? Δηλαδή συνολικά εν τέλει θέλει 3 εντροπίες για το R, G και B, άλλες 3 για τα Y, Cb, Cr του ερωτήματος β) και άλλες 3 για τα Y, Cb, Cr του ερωτήματος γ) ??


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on January 05, 2020, 21:06:25 pm
εγω τις υπολογισα ξεχωριστα για καθε καναλι και οχι με τον τυπο entropy γιατι απο οτι ειδα εφαρμοζεται μονο σε μεταβλητες τυπου uint με ακριβεια αλλα με τον Σpilogpi. Για τον πινακα run symbols τις υπολογισα ολες μαζι παντως, εφτιαξα εναν μεγαλο πινακα δηλαδη που περιεχει συνεχομενα και τα y και τα cb και τα cr


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on January 08, 2020, 18:23:37 pm
Στην εντροπια για τον πινακα με τα μηκη διαδρομης, χρησιμοποιουμε την πραγματικη τιμή ή την κατηγορία της τιμής κατα Huffman?


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: TheoProt on January 10, 2020, 19:33:26 pm
Στην κωδικοποίηση Huffman των DC coefficients, των DIFF δηλαδή, τι εννοεί στο πρότυπο όταν λέει: " When DIFF is positive, the SSSS low-order bits of DIFF are appended.";  Έστω ότι έχω για παράδειγμα να κωδικοποιήσω τη διαφορά DIFF = -5, το SSSS = 3 = 0011(δυαδικό). Ποια είναι τώρα τα 3 low-order bits της DIFF που πρέπει να προσθέσω στο code word '100' που αντιστοιχεί στην κατηγορία 3 ;


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: 00128419 on January 15, 2020, 23:28:12 pm
Έχει αναφέρει τίποτα ο Ντελο για την προθεσμία παράδοσης της εργασίας; Είναι η ημέρα εξέτασης του μαθήματος;


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: KG8 on January 16, 2020, 13:58:29 pm
Έχει αναφέρει τίποτα ο Ντελο για την προθεσμία παράδοσης της εργασίας; Είναι η ημέρα εξέτασης του μαθήματος;

Ναι η ημέρα εξέτασης είναι.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on January 20, 2020, 01:31:31 am
Που την ανεβαζουμε?


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: 00128419 on January 24, 2020, 17:30:34 pm
Eπίσης κάποια ιδέα για αυτό?? Tι εννοει ο ποιητης?

Τροποποιήστε τους πίνακες κβαντισµού, ώστε να
µηδενιστούν οι 20, 40, 50, 60 και 63 πλεόν υψίσυχνοι όροι των dctBlock για qScale = 1.


Τελικά κατάλαβε κανείς τι ακριβώς θέλει να κάνουμε για αυτό το ερώτημα; Επίσης όσον αφορά την εντροπία, η built-in συνάρτηση entropy() δίνει τελικά σωστό αποτέλεσμα μόνο για την αρχική RGB εικόνα που είναι τύπου uint8; Για τα dct blocks και τις ακολουθίες runsymbols που είναι double πρέπει εμείς να υλοποιήσουμε δικές μας συναρτήσεις που να την υπολογίζουν;


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: KG8 on January 24, 2020, 18:49:38 pm
Τελικά κατάλαβε κανείς τι ακριβώς θέλει να κάνουμε για αυτό το ερώτημα; Επίσης όσον αφορά την εντροπία, η built-in συνάρτηση entropy() δίνει τελικά σωστό αποτέλεσμα μόνο για την αρχική RGB εικόνα που είναι τύπου uint8; Για τα dct blocks και τις ακολουθίες runsymbols που είναι double πρέπει εμείς να υλοποιήσουμε δικές μας συναρτήσεις που να την υπολογίζουν;

Για το πρώτο που ρωτάς, εγώ αυτό που έχω σκεφτεί είναι να βάλω τιμή 99 στον πίνακα κβαντισμού σε όσες θέσεις ζητάει κάθε φορά, για να μηδενιστούν έτσι οι όροι. Για την εντροπία είχε πει να μη χρησιμοποιήσουμε την entropy() αλλά να τα υπολογίσουμε όλα εμείς.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: tuboflo on January 27, 2020, 16:07:38 pm
Σχετικά με τον μηδενσιμο των υψισυχνων ορων των DCT block πως ακριβως πρεπει να γινει? η τιμη 99 που αναφερεις δεν ειναι η μεγαλυτερη τιμη του πινακα κβαντισμου ωστε να ειμαστε σιγουροι οτι μηδενιζει τον αντιστοιχο ορο. Μηπως πρεπει να θεσουμε μια μεγαλύτερη τιμη?


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: KG8 on January 27, 2020, 19:40:32 pm
Σχετικά με τον μηδενσιμο των υψισυχνων ορων των DCT block πως ακριβως πρεπει να γινει? η τιμη 99 που αναφερεις δεν ειναι η μεγαλυτερη τιμη του πινακα κβαντισμου ωστε να ειμαστε σιγουροι οτι μηδενιζει τον αντιστοιχο ορο. Μηπως πρεπει να θεσουμε μια μεγαλύτερη τιμη?

Ναι ισχύει αυτό. Απλά είδα ότι στους πίνακες για τη χρωματικότητα οι υψίσυχνοι όροι έχουν τιμή 99 και υπέθεσα ότι είναι για αυτό το λόγο. Μπορεί καλύτερα να θέλει τη μέγιστη τιμή που μπορούν να πάρουν.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: 00128419 on January 27, 2020, 20:31:08 pm
Σχετικά με τον μηδενσιμο των υψισυχνων ορων των DCT block πως ακριβως πρεπει να γινει? η τιμη 99 που αναφερεις δεν ειναι η μεγαλυτερη τιμη του πινακα κβαντισμου ωστε να ειμαστε σιγουροι οτι μηδενιζει τον αντιστοιχο ορο. Μηπως πρεπει να θεσουμε μια μεγαλύτερη τιμη?

Εγώ βρήκα τα μέγιστα στοιχεία των πινάκων dct για τα Y και τα CbCr και έφτιαξα καινούργιους πίνακες με βάση αυτά, ανάλογα με το πόσα μηδέν AC ζητούσε κάθε φορά.

Έχει ασχοληθεί κανείς με το 3ο παραδοτέο? Τι πρέπει να κάνουμε με την κωδικοποιημένη ακολουθία Huffman, απλά την μετατρέπουμε σε byte και την κολλάμε μετά το SOS marker? Στην αποκωδικοποίηση παίρνουμε όλη την ακολουθία την ξανακάνουμε bits και ψάχνουμε πίνακες Huffman για τα νούμερα?

Το pdf που έχει ανεβάσει στο elearning δεν εξηγεί σχεδόν καθόλου το συγκεκριμένο κομμάτι



Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: reservoir dog on February 03, 2020, 18:26:34 pm
Που την ανεβαζουμε?


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: KG8 on February 05, 2020, 15:13:52 pm
Μπορεί κάποιος που έχει κάνει το 3ο κομμάτι να εξηγήσει πως γράφει το entropy coded segment, γιατί το πρότυπο λέει ελάχιστα πράγματα;


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: 00128419 on February 05, 2020, 16:14:23 pm
Μπορεί κάποιος που έχει κάνει το 3ο κομμάτι να εξηγήσει πως γράφει το entropy coded segment, γιατί το πρότυπο λέει ελάχιστα πράγματα;

Διαιρείς το bitstream σου σε 8άδες και το μετατρέπεις σε bytes. Αν σου μείνουν κάποια σύμβολα στο τέλος που δεν δημιουργούν 8άδα συμπληρώνεις με 1 μέχρι να κλείσεις την 8άδα. Αφού σχηματίσεις την ακολουθία με τα bytes όπου έχεις byte=255 (ή FF δεκαεξαδικό), βάζεις ένα 0 ακριβώς μετά από αυτό έτσι ώστε το συγεκριμένο byte να μην διαβαστεί ώς header


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: KG8 on February 05, 2020, 16:56:12 pm
Διαιρείς το bitstream σου σε 8άδες και το μετατρέπεις σε bytes. Αν σου μείνουν κάποια σύμβολα στο τέλος που δεν δημιουργούν 8άδα συμπληρώνεις με 1 μέχρι να κλείσεις την 8άδα. Αφού σχηματίσεις την ακολουθία με τα bytes όπου έχεις byte=255 (ή FF δεκαεξαδικό), βάζεις ένα 0 ακριβώς μετά από αυτό έτσι ώστε το συγεκριμένο byte να μην διαβαστεί ώς header

Bitstream εννοείς τα Huffman stream για όλα τα μπλοκ που αποτελούν το scan, όχι καθενός μπλοκ ε;


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: 00128419 on February 05, 2020, 16:57:55 pm
Bitstream εννοείς τα Huffman stream για όλα τα μπλοκ που αποτελούν το scan, όχι καθενός μπλοκ ε;

Ναι, όλα μαζί τα παίρνεις ως μια συνεχόμενη ακολουθία


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: YsoSerious on February 05, 2020, 17:10:42 pm
Τους πίνακες F1, F2, K3 κλπ για την ωδικοποίηση Huffman πρέπει να τους περάσουμε manually στο matlab ή μπορούμε να τους βρούμε κάπου;


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: tuboflo on February 05, 2020, 18:19:19 pm
Εγώ βρήκα τα μέγιστα στοιχεία των πινάκων dct για τα Y και τα CbCr και έφτιαξα καινούργιους πίνακες με βάση αυτά, ανάλογα με το πόσα μηδέν AC ζητούσε κάθε φορά.

Έχει ασχοληθεί κανείς με το 3ο παραδοτέο? Τι πρέπει να κάνουμε με την κωδικοποιημένη ακολουθία Huffman, απλά την μετατρέπουμε σε byte και την κολλάμε μετά το SOS marker? Στην αποκωδικοποίηση παίρνουμε όλη την ακολουθία την ξανακάνουμε bits και ψάχνουμε πίνακες Huffman για τα νούμερα?

Το pdf που έχει ανεβάσει στο elearning δεν εξηγεί σχεδόν καθόλου το συγκεκριμένο κομμάτι



Δηλαδή ουσιαστικά άλλαζεις τους πινακες κβαντισμου για καθε block 8x8? Μηπως πιο σωστη λυση ειναι να θεσουμε στους αντισοιχους ορους που θελουμε να μηδενισουμε καθε φορα μια πολυ υψηλη τιμη (πχ 2000) στις αντιστοιχες θεσεις του πινακα κβαντισμου?


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: 00128419 on February 05, 2020, 18:28:46 pm
Δηλαδή ουσιαστικά άλλαζεις τους πινακες κβαντισμου για καθε block 8x8? Μηπως πιο σωστη λυση ειναι να θεσουμε στους αντισοιχους ορους που θελουμε να μηδενισουμε καθε φορα μια πολυ υψηλη τιμη (πχ 2000) στις αντιστοιχες θεσεις του πινακα κβαντισμου?

Αυτό που γράφεις ακριβώς έκανα. Ίσως δεν το διατύπωσα σωστά πριν. Έτσι κι αλλιώς η μαξ τιμή που μπορούν να πάρουν οι AC συντελεστές για 8 bit είναι 1024 οπότε, μπορείς να βάλεις μια τιμή λίγο μεγαλύτερη από αυτό για να εξασφαλίσεις τον μηδενισμό τον όρων


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: KG8 on February 05, 2020, 18:44:46 pm
Ναι, όλα μαζί τα παίρνεις ως μια συνεχόμενη ακολουθία

Ωραία θενξ!


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: Nick Mour on February 08, 2020, 04:19:33 am
Νομίζω είπε να στέλνουμε emails εδώ: kokirits@mug.ee.auth.gr

Στη Huffman κωδικοποίηση, πως ξέρουμε αν θα χρησιμοποιήσουμε τον luminance ή τον chrominance πίνακα για την αντιστοίχιση των συμβόλων σε code words??
Σωστός, κι εγώ δεν το επισασα αυτο, πρεπει να προσδιοριζεται καπως στην huffenc.
Έχετε δίκιο ότι δεν υπάρχει τρόπος να ξέρουμε τι block επεξεργαζόμαστε κάθε φορά.
Χρειάζεται ένα έξτρα όρισμα, το οποίο να καθορίζει τι είδους block έχεις.
sent from mTHMMY (https://play.google.com/store/apps/details?id=gr.thmmy.mthmmy) 
Παιδιά αυτο είναι όντως λάθος της εκφώνησης έτσι ? Ρωτήσατε μήπως τον Ντελο για επιβεβαίωση ?


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: KG8 on February 08, 2020, 11:21:24 am
Παιδιά αυτο είναι όντως λάθος της εκφώνησης έτσι ? Ρωτήσατε μήπως τον Ντελο για επιβεβαίωση ?


Ο διδακτορικός είπε αν μπορούμε, να μην πειράξουμε κανένα όρισμα από τις συναρτήσεις γιατί θέλει να τα διορθώσει αυτόματα. Ένας τρόπος είναι να έχεις global μεταβλητή για να ξέρει η συνάρτηση τι έιδους μπλοκ επεξεργάζεται.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: Nick Mour on February 08, 2020, 14:23:38 pm
Ο διδακτορικός είπε αν μπορούμε, να μην πειράξουμε κανένα όρισμα από τις συναρτήσεις γιατί θέλει να τα διορθώσει αυτόματα. Ένας τρόπος είναι να έχεις global μεταβλητή για να ξέρει η συνάρτηση τι έιδους μπλοκ επεξεργάζεται.
Ok ευχαριστώ !


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: laoudik on February 09, 2020, 21:17:23 pm
Παδιά είπε αν κρατάει το βαθμό της εργασίας και για τις επόμενες εξεταστικές;


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: Pampouks on February 09, 2020, 22:47:50 pm
Παδιά είπε αν κρατάει το βαθμό της εργασίας και για τις επόμενες εξεταστικές;
Συνήθως πάει ο βαθμός μέχρι να ξαναβάλει εργασία


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: zoodoo on February 10, 2020, 01:33:39 am
Παιδία αν θέλετε μια μικρή παράταση στείλτε ένα μειλ στον Ντελο. Εγώ έχω στείλει ήδη.


Title: Re: [Πολυμέσα] Εργασία 2019-2020
Post by: ntinara on February 11, 2020, 14:49:43 pm
ο ντελοπουλος είπε ότι θα είχαμε παράταση μιας μέρας αλλά στο e-learning δεν άλλαξε την προθεσμία
sent from mTHMMY (https://play.google.com/store/apps/details?id=gr.thmmy.mthmmy)