Show Posts
|
Pages: 1 [2] 3 4 ... 6
|
18
|
Μαθήματα Κύκλου Ηλεκτρονικής & Υπολογιστών / Συστήματα Πολυμέσων / Re: [Πολυμέσα] Εργασία 2021-2022
|
on: March 07, 2022, 18:15:57 pm
|
Δεν το διατύπωσα σωστά, εννοώ ότι δεν έχουμε καθόλου loss γενικά στο επίπεδο 2 και ό.τι loss υπάρχει οφείλεται στο loss του 1ου επιπέδου. Αυτό, θεωρούμε ότι οφείλεται στο ότι το CurrFrmSTResd μπορεί να ανακτασκευαστεί πλήρως, εφόσον ο decoder έχει και τα CurrFrmExFull και τα b,N για κανει την πρόβλεψη. Η long term πρόβλεψη δημιουργεί loss αλλά αυτό φαίνεται στο 3ο παραδοτέο λόγω κβαντισμού των errors και υποδειγματοληψίας.
Τελικά και στο δικό μου level 2 δεν έχω πλέον θόρυβο - το λάθος που είχα είναι ότι έκανα 2 φορές τη διαδικασία του preprocessing (1 στην αρχή του level 2 coder και 1 γίνεται ήδη στον level 1 coder που καλεί ο level 2 coder εσωτερικά). Επίσης στο level 3 παράγω σήμα με κάποιον θόρυβο ο οποίος δεν ξέρω αν είναι ανεκτός στα πλαίσια της εργασίας. @perukas γενικά πόσο μπορεί να επηρεάζει τη βαθμολογία της εργασίας η ποιότητα του decoded ήχου;
|
|
|
20
|
Μαθήματα Κύκλου Ηλεκτρονικής & Υπολογιστών / Συστήματα Πολυμέσων / Re: [Πολυμέσα] Εργασία 2021-2022
|
on: March 05, 2022, 01:45:37 am
|
Μετά από αρκετές δοκιμές, στο επίπεδο 2 εμείς παίρνουμε το ίδιο ακριβώς σήμα με το σήμα εισόδου στο επίπεδο 2 (δηλαδή το ίδιο σήμα με την ΄έξοδο του επιπέδου 1. Αυτό θεωρούμε ότι είναι σωστό, εφόσον οι προβλέψεις γίνονται με τα ίδια ακριβώς b και N που είναι γνωστά στον decoder και τα σφάλματα της πρόβλεψης e δεν έχουν υποστεί κβαντισμό. Χάνουμε κάτι στο σκεπτικό; Άλλωστε από την έκφωνηση αναφέρεται ότι στην μεταβλητή CurrFrmExFull έχουμε τα σφάλματα χωρίς κβαντισμό και χωρίς κωδικοποίηση, επομένως δεν μπορούμε να βρούμε κάποιο σημείο στο οποίο να χάνεται πληροφορία.
Νομίζω θα συμφωνήσω σε αυτό που λες καθώς τόσο o encoder όσο και decoder χρησιμοποιούν κβαντισμένες εκδοχές των N και b. Ωστόσο εγώ έχω απώλειες στο level 2 καθώς ο ήχος έχει αρκετό θόρυβο. Στο level 1 δεν έχω απώλειες (η διαφορά των σημάτων είναι της τάξης του 10^(-3)).
|
|
|
24
|
Μαθήματα Κύκλου Ηλεκτρονικής & Υπολογιστών / Συστήματα Πολυμέσων / Re: [Πολυμέσα] Εργασία 2021-2022
|
on: February 24, 2022, 20:48:35 pm
|
Γενικά είναι λογικό το σήμα να είναι καθαρό στο level 1, εφόσον δεν έχει υποστεί "βαριά" επεξεργασια. Στο level 2 (και 3) είναι επίσης λογικό να υπάρχει κάποιο θόρυβος (λόγω παραδοχών της εργασίας αλλά και επειδή εκ των πραγμάτων, ο αλγόριθμος είναι lossy) (επίσης λόγω της μεγαλύτερης πολυπλοκότητας του level 2, είναι πιο εύκολο να γίνει κάποιο λάθος που μπορεί να παράγει ενθόρυβο σήμα, αλλά να μην καταλαβαίνεις αν υπάρχει λάθος ή όχι).
Ναι δεν ξέρω τι μπορεί να πάει λάθος ακόμη το ψάχνω. Γενικά η λογική που ακολουθώ και έστειλα παραπάνω (αν είναι κατανοητή βέβαια) έχει κάποιο λάθος;
|
|
|
25
|
Μαθήματα Κύκλου Ηλεκτρονικής & Υπολογιστών / Συστήματα Πολυμέσων / Re: [Πολυμέσα] Εργασία 2021-2022
|
on: February 24, 2022, 20:47:38 pm
|
Καλησπέρα, συγγνώμη για την καθυστέρηση (βέβαια, το νόημα του φόρουμε είναι η συζήτηση μεταξύ των συναδέλφων που υλοποιούν την εργασια). Σε πρώτη φάση τη 2η γραμμή μέσα στη for θα την έβαζα τελευταία.
Η αλήθεια είναι ότι το δοκίμασα και δεν έβγαλα κάτι καλύτερο - λογικό το βρίσκω αφού, αν δεν κάνω λάθος, η διαδικασία υπολογισμού του CurrFrmSTResd είναι ίδια και στις 2 συναρτήσεις.
|
|
|
27
|
Μαθήματα Κύκλου Ηλεκτρονικής & Υπολογιστών / Συστήματα Πολυμέσων / Re: [Πολυμέσα] Εργασία 2021-2022
|
on: February 23, 2022, 16:13:30 pm
|
Έχω κάποιο πρόβλημα με το level 2. Ενώ στο level 1 το decoded ακούγεται πολύ καλά σε σχέση με το αρχικό, στο level 2 ακούγεται πολύ χάλια. Η λογική μου στο level 2 είναι η εξής: - Σε επίπεδο encode/decode καλώ τις αντίστοιχες συναρτήσεις ως εξής (τα y και y_dec αφορούν σε 160 samples κάθε φορά): for (...) [LARc, Nc, bc, CurrFrmExFull, CurrFrmSTResd] = RPE_frame_SLT_coder(y(...), PrevFrmSTResd); PrevFrmSTResd = CurrFrmSTResd; [y_dec(...), CurrFrmSTResd] = RPE_frame_SLT_decoder(LARc, Nc, bc, CurrFrmExFull, PrevFrmSTResd); end- Στον encoder ακολουθώ τα εξής βήματα (συνοπτικά): - Pre-processing του σήματος s0.
- Εύρεση των συντελεστών LARc και της ακολουθίας d(n).
- Για κάθε subframe δημιουργώ την ακολουθία d'(n) με τα προηγούμενα 3 subframes (αναλόγως το τρέχων subframe παίρνω τα αντίστοιχα δείγματα από το προηγούμενο/τρέχων frame).
- Έπειτα βρίσκω τους συντελεστές N και b για το τρέχων subframe και τους κβαντίζω.
- Υπολογίζω την διαφορά e = d(n) - bc*d'(n-Nc) και την αποθηκεύω στο CurrFrmExFull.
- Τέλος, υπολογίζω το τρέχων subframe ως CurrFrmSTResd(...) = e + bq*d'(n-Nc), όπως ζητείται στην εκφώνηση.
- Στον decoder ακολουθώ τα εξής βήματα (συνοπτικά): - Για κάθε subframe κατασκευάζω την ακολουθία d'(n) με τα τρία προηγούμενα subframes, όπως και στον encoder.
- Υπολογίζω τα αποκβαντισμένα N' και b'.
- Υπολογίζω το τρέχων subframe ως CurrFrmSTResd(...) = e + b'*d'(n-N'), όπου e είναι το αντίστοιχο (με το τρέχων subframe) τμήμα της ακολουθίας διέγερσης CurrFrmExFull.
- Στη συνέχεια ακολουθώ τη διαδικασία του decoder του level 1, δηλαδή εύρεση των συντελεστών a από τα LARc, υπολογισμός του s'(n) εφαρμόζοντας το κατάλληλο φίλτρο στην CurrFrmSTResd και τέλος εφαρμογή του post proccessing.
Δεν ξέρω τι μπορεί να πάει λάθος και να βγαίνει τόσο χάλια η ποιότητα του ήχου.
|
|
|
|