How to find are under the curve for a random signal.
9 ビュー (過去 30 日間)
古いコメントを表示
Karl Rueth
2017 年 11 月 8 日
コメント済み: Star Strider
2017 年 11 月 10 日
I have this random signal, is it possible that I find the are under the curve ?
Thanks for any help provided.

0 件のコメント
採用された回答
Kaushik Lakshminarasimhan
2017 年 11 月 8 日
If samples are all uniformly spaced in time, you just need to take the sum of all elements.
area_under_signal = sum(my_signal)
Note that this number will be proportional, but not exactly equal to the actual area. If you need the exact number, you need to multiply by the temporal resolution of your signal, dt.
area_under_signal = sum(my_signal)*dt
2 件のコメント
Kaushik Lakshminarasimhan
2017 年 11 月 10 日
Of course, you need to define it before using. You should know the temporal resolution of your signal (how frequently you sample the signal). For example, if you have a vector of time points t at which you store your EMG signal x, then you can calculate dt and then use it to compute area:
dt = median(diff(t)); %median is just to take care of rounding errors
auc = sum(x)*dt;
その他の回答 (1 件)
M
2017 年 11 月 8 日
Try with this function
trapz
which does trapezoidal numerical integration.
1 件のコメント
Star Strider
2017 年 11 月 10 日
The trapz (or cumtrapz) functions are the appropriate functions for this problem.
参考
カテゴリ
Help Center および File Exchange で Signal Processing Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!