Spectral or peak alignment

48 次查看(过去 30 天)
Hello: I have two spectra, Spectrum A and Spectrum B. Spectrum A is the reference spectrum and spectrum B is one I just collected. I'm trying to match spectrum B with the reference spectrum A. However, I realized that the peaks in B are a bit shifted.
My question is how do I correctly align B to the reference A using matlab?
How do I correct for the peak shifts in my spectrum so that they align correctly to the reference spectrum using matlab or any other program or algorithm?
Thank you.
  2 个评论
dpb
dpb 2017-7-9
'Pends on what kind of shift you're talking about...is it simply a phase shift of the whole spectrum or a shrinkage/expansion?
Attach at least figure; data would be better...
Curious Mind
Curious Mind 2017-7-9
I just attached a figure. Thank you.

请先登录,再进行评论。

采纳的回答

Kateryna Artyushkova
Maybe this will work: https://www.mathworks.com/matlabcentral/fileexchange/15392-shifts-set-of-spectra-to-a-new-maximum-position?s_tid=prof_contriblnk

更多回答(2 个)

Star Strider
Star Strider 2017-7-9
One option is to use the Signal Processing Toolbox alignsignals (link) function. That is not its intended use, but it could work. (It is relatively recent. The documentation does not say when it was introduced.)
  14 个评论
Curious Mind
Curious Mind 2017-7-10
@Image Analyst:
I really appreciate the information. I think I'm gonna leave the data the way it is. Thank you so much.

请先登录,再进行评论。


Image Analyst
Image Analyst 2017-7-9
Look up xcorr in the help and see this entry "Find a Signal in a Measurement". It says "You receive some data and would like to know if it matches a longer stream you have measured. Cross-correlation allows you to make that determination, even when the data are corrupted by noise."
and then it gives an example. Try it.

类别

Help CenterFile Exchange 中查找有关 Parametric Spectral Estimation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by