필터 지우기
필터 지우기

Extracting multiple envelopes from a signal

조회 수: 4 (최근 30일)
First Last
First Last 2017년 8월 11일
편집: Cedric 2017년 10월 20일
I have a signal which when observed carefully shows a three individual sinusoidal signals (figures attached). I want these three individual signals to be extracted in terms of amplitude, frequency and phase. Please help!
  댓글 수: 2
John BG
John BG 2017년 8월 11일
would you please be so kind to supply the signal?
in a .mat file
thanks in advance, awaiting answer
First Last
First Last 2017년 8월 11일
Sure! Here is the .mat file. Thanks!

댓글을 달려면 로그인하십시오.

채택된 답변

Cedric
Cedric 2017년 10월 17일
Quick cheap trick gets 2/3. Was going to bed, no time for more but that could be a starting point.
function main
load( 'MultipleSignalEnvelope', 'ITDc0' ) ;
plot( ITDc0, 'b.' ) ;
grid on ;
hold on ;
t = 1 : numel( ITDc0 ) ;
A = 1.2 ;
P = fminsearch( @objective, zeros(3,1) ) ;
plot( A*sin((t+P)/360*2*pi).' ) ;
function mindif = objective( P )
mindif = sum( min( abs( ITDc0-A*sin((t+P)./360*2*pi )))) ;
end
end
%
  댓글 수: 9
First Last
First Last 2017년 10월 20일
Do you think we can use the same logic for Amplitude too?
Cedric
Cedric 2017년 10월 20일
편집: Cedric 2017년 10월 20일
You will have to try. Define P as a vector with 6 components instead of 3, the first three being amplitudes and the next three being "phases". In the objective function, replace A with P(1:3) and P with P(4:6). Also, update the initial conditions. Instead of zeros(3,1), try to start e.g.. with three unit amplitudes and three null phases: [ones(3,1);zeros(3,1)].
Note that you could use FMINCON and define constraints, e.g. upper and lower bounds for the amplitude and phases.
Also note that you'd better try to see if you could get help from someone with experience in digital signal processing, because this approach is just a quick trick. If you reword your question in a new thread and nobody answers, you may be able to hire someone for not that much on sites that market freelancers.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Image Analyst
Image Analyst 2017년 8월 11일
편집: Image Analyst 2017년 8월 11일
Look at the fft.
  댓글 수: 10
Image Analyst
Image Analyst 2017년 10월 17일
Well that's a change from what you said before. Too bad, that would have been so easy. I don't know how to solve it without spending way more time on it than I allow myself to spend on questions here, so . . . good luck.
First Last
First Last 2017년 10월 17일
I am sorry, I miss understood your earlier comments. It should be autonomous.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Matched Filter and Ambiguity Function에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by