色谱 ›› 2021, Vol. 39 ›› Issue (6): 670-677.DOI: 10.3724/SP.J.1123.2020.11009

• 研究论文 • 上一篇    

基于无基底扣除的数据趋势累积谱峰检测算法

贾梦涵, 回朝妍, 张辉*(), 高宇, 佟美琪, 马仡男   

  1. 北京科技大学能源与环境工程学院, 北京 100083
  • 收稿日期:2020-11-09 出版日期:2021-06-08 发布日期:2021-04-13
  • 通讯作者: 张辉
  • 作者简介:* E-mail: zhanghui56@ustb.edu.cn.

Spectrum peak detection algorithm based on trend accumulation without base deduction

JIA Menghan, HUI Zhaoyan, ZHANG Hui*(), GAO Yu, TONG Meiqi, MA Yinan   

  1. School of Energy and Environmental Engineering, University of Science and Technology Beijing, Beijing 100083, China
  • Received:2020-11-09 Online:2021-06-08 Published:2021-04-13
  • Contact: ZHANG Hui

摘要:

谱峰的检测分析在色谱技术研究中具有十分重要的作用,但在色谱数据采集、传输的过程中,不同程度的噪声干扰给谱峰检测带来了极大的困难。目前传统的谱峰检测算法普遍通过基底扣除的方式对谱峰的形态进行预定义,将谱峰分为单峰、重叠峰等多个种类。针对不同种类的谱峰采用不同的检测方法,这就导致了传统的谱峰检测算法具有高复杂度、低自动化程度以及容易失真等缺点。因此,该文从另一个角度出发提出了一种新型的谱峰检测算法。该算法取消基底扣除以及谱峰分类这一步骤,直接在源数据曲线的基础上进行谱峰检测,主要分为离散差分、趋势累积以及遍历寻峰3个步骤。首先通过信号量表征数据升降趋势;然后进行数据趋势累积,根据累积总和定位谱峰,采用三点定位的方式,即峰起点、极值点和峰终点描述一个谱峰的位置;最后根据遍历排序的方式进行谱峰的筛选。此外,通过谱峰扣除的方式得到曲线基底部分。采用C语言设计编写了算法程序,并对多个动态比表面积分析仪测定的色谱图进行了检测分析,结果显示使用该算法可以精准区分谱峰部分与基底部分,受数据曲线毛刺、震荡等噪声干扰很小,谱峰的三点定位十分准确,且不受其复杂形态的影响,具有很强的普适性。与其他算法相比,该算法定位准确,结构清晰,具有较好的稳定性以及可靠性。该文报道了无基底扣除以及趋势累积等新型谱峰检测思想在吸脱附色谱曲线中的应用,证明了其在吸脱附色谱峰检测中的有效性和良好的应用前景。

关键词: 无基底扣除, 离散差分, 趋势累积, 遍历寻峰, 谱峰检测算法

Abstract:

The detection and analysis of spectral peaks play an important role in research on chromatography technology. However, in the process of collecting and transmitting chromatographic data, it is very difficult to detect spectral peaks owing to the interference of different levels of noise. Most of the traditional spectral peak detection algorithms follow three steps: spectral smoothing, baseline correction, and spectral peak recognition, which require high denoising and curve smoothing, and therefore increase the complexity of the algorithm. In addition, a traditional spectrum peak detection algorithm generally defines the shape of the spectrum peak by applying the base deduction method, and divides the spectrum peak into a single peak, overlapping peaks, and so on. Different detection methods are used for different types of spectral peaks, which lead to the shortcomings of traditional peak detection algorithms, such as high complexity, low automation, and susceptibility to distortion. Therefore, this study proposes a novel peak detection algorithm developed using a different point of view. The algorithm omits the base subtraction and spectral peak classification steps and instead detects spectral peaks directly based on the source data curve. In a traditional spectrum peak detection algorithm, the spectrum peak classification depends on determining a baseline. If the baseline is adjusted, the baseline will fit the spectrum peak more closely. At this time, the overlapping peaks can be regarded as two connected peaks. However, there is no so-called baseline in the source data curve, and therefore the proposed algorithm cannot classify the spectral peaks using the baseline approach. Instead, an obvious bulge or depression in the source curve is considered to be the spectral peak. This algorithm essentially performs three steps: discrete difference, trend accumulation, and searching for all peaks. First, the difference between adjacent data is obtained using a discrete difference process. The difference value is compared with 0, and either a 1 or -1 value is used to replace the difference value to reflect the data fluctuation trend. The signals representing the trend are accumulated, and the spectrum peak is located according to the sum of the accumulated signals. The algorithm uses three-point location; that is, the peak starting point, extreme point, and peak end point are used to describe the position of a spectral peak. Finally, according to the spectrum peaks obtained in the previous step, the magnitude of each peak is calculated, and the spectrum peaks are screened by a sorting method. In this manner, the algorithm skips the base subtraction part and obtains the spectrum peak directly. Therefore, to obtain the base part, the peak subtraction method is applied. This study used the C language to design and write the algorithm, and nitrogen adsorption and desorption chromatographic curves measured by several dynamic specific surface area analyzers were detected and analyzed. The results indicate that the proposed algorithm can accurately distinguish the peak part from the base part, and is robust to data curve burr, vibration, and other types of noise. The three-point location of the spectrum peak is very accurate and is not affected by its complex morphology. Therefore, it has strong universality. Compared with other algorithms, this algorithm has the advantages of accurate positioning, clear structure, and good stability and reliability. The application of the proposed peak detection methods such as base-free deduction and trend accumulation, in the adsorption and desorption chromatographic curve and has been proven effective in the determination of absorption and desorption chromatographic peaks.

Key words: no base deduction, discrete difference, trend accumulation, searching for peaks by traversing, peak detection algorithm

中图分类号: