Way to filter out a portion of a time domain signal when its amplitude drops below a certain value?
조회 수: 1 (최근 30일)
이전 댓글 표시
Is there any way to filter a time domain signal such that portions of the signal, where the amplitude drops below a certain level, are ignored?
In the attached image, the real parts of two complex signals are plotted against time. I essentially need to ignore the portions of the signal where the amplitude of the peaks are less than 1E-7 and the troughs are greater than -1E-7 since they are causing phase jumps when I subsequently unwrap the complex signal.
Many Thanks.
댓글 수: 2
jgg
2016년 2월 28일
If your signal is s couldn't you just do:
incl_idx = (abs(s) < 1e-7);
s = s(incl_idx);
Then you get a new, truncated signal. For instance:
s = rand(1000,1);
inclu_idx = (s < 0.5);
s = s(inclu_idx );
John BG
2016년 2월 29일
do you really mean 'clipping' what you really want to do to this signal?
holding x>1e-7 right on 1e-7 as long as signal above 1e-7 and anything below -1e-7 remains -1e-7 while signal below threshold?
If you really remove the samples out of [-1e-7 1e7] you will shrink the signal.
if so, clipping so low may cause more phase jumps than without clipping.
Why don't you hang the data in a file so readers can use the sample directly?
John
답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Digital Filter Analysis에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!