spectrochempy.despike

despike(dataset, size=9, delta=2, method='katsumoto')[source]

Remove spikes from the data.

The despike methods can be used to remove cosmic ray peaks from a spectrum.

The ‘katsumoto’ implementation (default) is based on the method is described in Katsumoto and Ozaki [2003]:

  • In the first step, the moving-average method is employed to detect the spike noise. The moving-average window should contain several data points along the abscissa that are larger than those of the spikes in the spectrum. If a window contains a spike, the value on the ordinate for the spike will show an anomalous deviation from the average for this window.

  • In the second step, each data point value identified as noise is replaced by the moving-averaged value.

  • In the third step, the moving-average process is applied to the new data set made by the second step.

  • In the fourth step, the spikes are identified by comparing the differences between the original spectra and the moving-averaged spectra calculated in the third step.

As a result, the proposed method realizes the reduction of convex spikes.

The ‘whitaker’ implementation is based on the method is described in Whitaker and Hayes [2018]:

  • The spikes are detected when the zscore of the difference between consecutive intensities is larger than the delta parameter.

  • The spike intensities are replaced by the average of the intensities in a window around the spike, excluding the points that are spikes.

Parameters:
  • dataset (NDDataset or a ndarray-like object) – Input object.

  • size (int, optional, default: 9) – Size of the moving average window (‘katsumoto’ method) or the size of the window around the spike to estimate the intensities (‘whitaker’ method).

  • delta (float, optional, default: 2) – Set the threshold for the detection of spikes.

  • method (str, optional, default: ‘katsumoto’) – The method to use. Can be ‘katsumoto’ or ‘whitaker’

Returns:

NDdataset – The despike dataset

Examples using spectrochempy.despike

Removing cosmic ray spikes from a Raman spectrum

Removing cosmic ray spikes from a Raman spectrum