looping through total size and calculating standard deviation of each frame.
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I want my loop to run from 1 to length of x. x contain total 67000 frames and I want that my code loop through each frame at a time and calculate the standard deviation of each frame from 1 to length of x.
folder = fullfile('C:\Users\vvb\Documents\datset\local');
ADS = audioDatastore(folder);
x=read(ADS);
[row,c]=size(x);
for j=1:x
totalframes(j)=j;
local=totalframes;
stdX=std(local);
end
So basically 'x' contains total 67000 frames and I want to loop through each frame of 'x' and calculate the standard deviation of each frame. I have written the above code but its not working.
0 commentaires
Réponses (1)
Ameer Hamza
le 12 Sep 2020
I don't have the audio toolbox, but something like this will work
folder = fullfile('C:\Users\vvb\Documents\datset\local');
ADS = audioDatastore(folder);
stdX = [];
while hasdata(ADS)
x = read(ADS);
stdX(end+1) = std(x);
end
2 commentaires
Ameer Hamza
le 12 Sep 2020
This code runs on all the frames in ADS. Is there any error? If you want to store all the signals too then try something like this
folder = fullfile('C:\Users\vvb\Documents\datset\local');
ADS = audioDatastore(folder);
x = {};
stdX = [];
while hasdata(ADS)
x{end+1} = read(ADS);
stdX(end+1) = std(x);
end
Voir également
Catégories
En savoir plus sur Multirate Signal Processing 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!