Effacer les filtres
Effacer les filtres

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

24 vues (au cours des 30 derniers jours)
健気 大川
健気 大川 le 9 Juil 2021
Commenté : 健気 大川 le 12 Juil 2021
図のように波形があり、ピークの点から立ち下がる時の0点を取りたいです。条件として0点がない場合正と負で挟まれた点の負の点を取りたいです。どなたかお時間ある方助言をお願い致します。(今回の波形はあくまで例です)

Réponse acceptée

Atsushi Ueno
Atsushi Ueno le 9 Juil 2021
Modifié(e) : Atsushi Ueno le 9 Juil 2021
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 commentaire
健気 大川
健気 大川 le 12 Juil 2021
ありがとうございます。解決いたしました。

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!