How to get the input unit back with the spectrogram function
조회 수: 6 (최근 30일)
이전 댓글 표시
Hello,
I have a signal (acceleration) in witch I want to know how much of a certain frequency is excited. For that I use spectrogram and I want to extract, at a point in time and frequency, the level of excitation in acceleration unit.
If I take sig as a signal then abs( fft(sig) )*2/window gives me the rigth amplitude (window is the size of the window). I tested it with sig = 300*cos(2*pi*f*t) and it indeed gave me 300 at the frequency f. So it works fine with fft.
But when I use it on the 's' output of spectrogram it dont give me that at all.
Any ideas to recover my acceleration unit from the spectrogram ?
Thx
댓글 수: 2
Mathieu NOE
2021년 5월 11일
hello
sometimes it's not so easy to understand how things are scaled inside matlab's functions
that's why I ended up rebuilding the spectrogram with fft so I know the amplitude of the spectrum matches the input signal
FYI I use hanning window and the corresponding corrrection factor
답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Time-Frequency Analysis에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
