Περιεχόμενο
Το MATLAB είναι ένα εργαλείο προγραμματισμού που μπορεί να χρησιμοποιηθεί για την λεπτομερή ανάλυση και επεξεργασία των σημάτων. Μια κοινή λειτουργία επεξεργασίας σημάτων σε μία ή περισσότερες διαστάσεις είναι η αφαίρεση του θορύβου υψηλής συχνότητας. Ένα φίλτρο χαμηλής διέλευσης, εξ ορισμού, έχει σχεδιαστεί για να αφαιρεί συχνότητες πάνω από μια ορισμένη τιμή από ένα σήμα. Η χρήση της λειτουργίας φίλτρου2 () στο MATLAB είναι ένας τρόπος για την υλοποίηση ενός τέτοιου φίλτρου.
Οδηγίες
Η λειτουργία φίλτρου2 () της MATLAB σας επιτρέπει να εφαρμόσετε ένα φίλτρο χαμηλής διέλευσης (Hemera Technologies / AbleStock.com / Getty Images)-
Εισαγάγετε τα δεδομένα σας σε MATLAB. Συχνά, τα σήματα που πρέπει να φιλτραριστούν αποθηκεύονται σε δυαδική μορφή, απαιτώντας να εισαχθεί μια λειτουργία I / O χαμηλού επιπέδου, όπως fread (). Ωστόσο, το MATLAB περιλαμβάνει εισαγωγείς εικόνων για τις πιο κοινές μορφές.
my_data = fread (file_handle, n_samples, τύπος δεδομένων); my_image = imread ('my_image_file.tif', 'TIFF');
-
Μετατρέψτε τα δεδομένα σε μια δισδιάστατη διάταξη πριν την επεξεργαστείτε με τη λειτουργία φίλτρου2 (). Μπορείτε να το κάνετε αυτό μετατρέποντας μια μονοδιάστατη δυαδική συστοιχία σε έναν πίνακα μέσω της λειτουργίας reshape () ή επιλέγοντας μια εικόνα από μια σειρά. Χρησιμοποιήστε τη λειτουργία squeeze () για να καταργήσετε τις ιδιότητες του singleton επιλέγοντας ένα τμήμα ενός πίνακα με περισσότερες από δύο διαστάσεις.
my_image = αναμόρφωση (my_data, πλάτος, ύψος); my_other_image = συμπίεση (my_image_series (:,: image_number));
-
Σχεδιάστε το φίλτρο και αποθηκεύστε το αποτέλεσμα σε μια δισδιάστατη συστοιχία H. Γενικά, ένα φίλτρο χαμηλής διέλευσης χρησιμοποιεί ένα "παράθυρο γκαουσιανής" που μπορεί να δημιουργηθεί με τη συνάρτηση fspecial (). Τα φίλτρα μπορούν επίσης να σχεδιαστούν με την ειδική λειτουργία επεξεργασίας σημάτων (). Μπορείτε να δείτε την απόκριση συχνότητας του παραθύρου φίλτρου χρησιμοποιώντας τη λειτουργία wvtool (). Στον κώδικα του παραδείγματος, το Η είναι ένας πίνακας 24x24 που περιέχει ένα Gaussian παράθυρο τυπικής απόκλισης 10.
H = fspecial ('Gaussian', [24 24], 10). wvtool (Η);
-
Εκτελέστε το φιλτράρισμα χρησιμοποιώντας τον αλγόριθμο διδιάστατου συνέλιξης που εφαρμόζεται μέσω του φίλτρου2 (). Από προεπιλογή, το αποτέλεσμα του φίλτρου2 () έχει τις ίδιες διαστάσεις με το σύνολο δεδομένων εισόδου.
my_filtered_data = φίλτρο2 (my_data, H);