How to calculate the RMS for every 441000 values of an acoustic signal of length 13,230,000 using MATLAB?
1 回表示 (過去 30 日間)
古いコメントを表示
Hello, I have 5 minutes recorded acoustic signal with 13,230,000 data points and I would like to know the root mean square (RMS) of every 441000 values (equivalent to 10 sec). Please, do I need a loop for this? Or is there some easier way to solve this?
Thanks in advance!
Kwaku
0 件のコメント
回答 (1 件)
Ameer Hamza
2020 年 10 月 13 日
編集済み: Ameer Hamza
2020 年 10 月 13 日
sig; % 13230000x1 signal
sig_part = reshape(sig, 441000, []); % partitioned signal, each column is a partition
rms_sig = rms(sig_part) % if you have signal processing toolbox
If you don't have the signal processing toobox, then replace the last line with
rms_sig = sqrt(mean(sig_part.^2))
2 件のコメント
参考
カテゴリ
Help Center および File Exchange で Acoustics, Noise and Vibration についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!