stft(短時間フーリエ変換)で自動生成される図の作成方法
조회 수: 56 (최근 30일)
이전 댓글 표시
ライブエディターで
stft (短時間フーリエ変換)を実行すると図が出てきますが同じ図を作成することが出来ません。
やってみたコマンド
[x]=stft(M);
XA=abs(x/L) :フーリエ変換で得られた複素数を絶対値に、LはLength of signal
for i
for j
Xd=mag2db(XA)
end
end
image(Xd)
댓글 수: 0
채택된 답변
Hernia Baby
2023년 1월 27일
% edit stft
で中身が見れます。例を見てみましょう。
% EXAMPLE 4:
% Compute and display the STFT of a set of intermittent sinusoid
% signals.
データの用意
clc,clear,close all;
silence = zeros(1,1500);
fs = 1e3;
t = (0:1000-1)/fs;
yStep = [sin(2*pi*50*t) silence sin(2*pi*100*t) silence sin(2*pi*150*t)].';
t = seconds((0:length(yStep)-1)/fs).';
xTable = timetable(t,yStep);
出力数なし
stft(xTable);
出力ありで再現
[S,F,T] = stft(xTable);
smag = mag2db(abs(S));
pcolor(seconds(T),F,smag)
xlabel('Time (s)')
ylabel('Frequency (Hz)')
shading flat
colorbar
clim(max(smag(:)) + [-60 0])
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!