波形のゼロ点を抽出する方法

24 次查看(过去 30 天)
健気 大川
健気 大川 2021-7-9
図のように波形があり、ピークの点から立ち下がる時の0点を取りたいです。条件として0点がない場合正と負で挟まれた点の負の点を取りたいです。どなたかお時間ある方助言をお願い致します。(今回の波形はあくまで例です)

采纳的回答

Atsushi Ueno
Atsushi Ueno 2021-7-9
编辑:Atsushi Ueno 2021-7-9
csvファイルから読み込んだ値に対してのゼロクロス検出。また、閾値変更方法について。 - MATLAB Answers - MATLAB Central (mathworks.com) を参考にして「ピークの点から立ち下がる時の0点」のインデックスをindexに格納しました。
t = 0:0.001:0.1;
y = sin(t*pi*180/3.0); % 今回の波形はあくまで例です
plot(t,y,'o');
hold on;
line(t,zeros(size(t))); % y=0の線を引く
index = find(y(1:end-1) > 0 & y(2:end) <= 0) + 1 % 0点がない場合正と負で挟まれた点の負の点
index = 1×3
18 52 85
plot(t(index), y(index),'o','MarkerSize',10); % ピークの点から立ち下がる時の0点を大きなマーカでプロット
  1 个评论
健気 大川
健気 大川 2021-7-12
ありがとうございます。解決いたしました。

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 記述統計 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!