Replace elements in a complex matrix
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I'm using the signal processing toolbox. When I plot:
spectrogram(a,2^7,(2^7)-1,2^7,250e3)
I see some things in 'a' the figure I want to replace with background noise. For this I made variable 'x' that is a 65x12374 complex double matrix using this code:
x=spectrogram(a,2^7,(2^7)-1,2^7,250e3)
Now I used the marker on the figure of the spectrogram of 'a' to find the indexes for the parts I want to replace and wrote this:
x(-91.95:-94.27)=x(-100:(-94.27--91.95))
I get the error: Warning: Integer operands are required for colon operator when used as index Subscript indices must either be real positive integers or logicals.
The idea is to fill the content between those indexes with the content of some other part of the spectrogram. Then, I would want to turn back 'x' into a normal double matrix to get a new "original signal clean from what I covered.
0 commentaires
Réponses (1)
Chaitral Date
le 19 Juin 2017
Modifié(e) : Chaitral Date
le 19 Juin 2017
For linear indexing, you must use integers. If you want to find out values of x that are between the range -100 to (-94.27--91.95), you can use the below command,
>> x(-100<=x & x<=(-94.27--91.95))
To replace these values from their respective places, you have to use similar technique.
0 commentaires
Voir également
Catégories
En savoir plus sur Time-Frequency Analysis dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!