波信号の1周期を検出する最良の方法は何ですか?波信号処理(期間)
誰かがそれを行う特定のアルゴリズムを持っていますか?あなたはそれを見つけた場所を知っていますか?
私はfftを知っていますが、私はそれが私に波の周期(時間の位置)を与える方法を知らない。
ピリオドで信号を分割してください!
私はパスカル、MATLABが欲しい...
波信号の1周期を検出する最良の方法は何ですか?波信号処理(期間)
誰かがそれを行う特定のアルゴリズムを持っていますか?あなたはそれを見つけた場所を知っていますか?
私はfftを知っていますが、私はそれが私に波の周期(時間の位置)を与える方法を知らない。
ピリオドで信号を分割してください!
私はパスカル、MATLABが欲しい...
これは、すべての最良の方法では、おそらくではなく、周期信号の 期間を見つけるために働くことができる一つの方法は、unwrap the phaseにあります。 acf見て
t = linspace(0, 20, 50);
sig = sin(t) + rand(size(t))*0.2;
% Hilbert transform to give an analytic signal.
% The complex argument will
% now be the instantaneous phase.
n = length(sig);
m = n/2+1;
U = fft(sig)/length(sig);
U((m+1):n) = 0;
cpx = ifft(U);
% Get the phase.
phase = arg(cpx);
% Unwrap the phase.
for i = 2:length(phase)
k = round((phase(i) - phase(i-1))/(2*pi));
phase(i) = phase(i) - k*2*pi;
end
% Fit a linear model.
lin_est = [t', repmat(1, length(t), 1)] \ phase';
% The frequency is the rate of change of the phase over time.
freq_est = lin_est(1)/2/pi
T_est = 1/freq_est
その他thingns、 fft:ここではMatlabの (実際オクターブ)コードがあります。
アルゴリズムはPitchmarker、matlabでアルゴリズムを検索しています – Carl
1つの期間を検出することによって、期間の長さを意味するのか、またはある時点の信号が同位相であるのかを意味しますか? – Owen
本当の質問はしていません。あなたのタグは無意味です。彼らは共通性が全くありません。ランダムに選択しましたか? –
あなたは実際に何をしたいですか?特定の時点での周波数の位相を検出しますか?振幅は?シグナルの中で最も優勢な周波数を探したいですか? FFTはこれらのいずれにも使用できますが、探しているものが実際に分かっている必要があります。時間内のポジションはどういう意味ですか?波の周期について話すときは意味がありません。 – boileau