Matlab 的icoshift工具,是我最近用下来感觉挺顺手的光谱数据对齐小神器,适合那种 1D NMR 或者类似的谱图数据。

核心是它用FFT搞定区间相关移位,对一堆谱图统一快速对齐,效率比不少文献里提的方法都要快,不用下采样也能跑全分辨率,挺适合玩大数据量的。

对了,它还能用NaN填充缺失值,避免在段落边界出现那些让人头疼的伪影,这点在调光谱时蛮实用的。更方便的是,程序本身就带了演示文件,直接拿真实 NMR 数据试手,直观。

算法思路不复杂,界面清爽,你只要装好MATLAB 2014b或更新版本,直接开跑。还有完整的文档,基本看一遍就能上手。

如果你手上也有批量谱图数据要对齐,强烈建议你试试。想深入研究的话,可以看看它的原始论文(J. Magn. Reson. 2010)讲得蛮清楚的。

顺手附几个相关的 FFT 工具链接,对你也有:

如果你是做代谢组学或者常用 MATLAB 光谱数据,这工具真不妨一试。