Options for normalisation and smoothing

Hi all,

As in the title, I'm looking for some options to perform normalisation and smoothing on some Raman spectra. Specifically, I'd like to perform total area normalisation, and cubic spline smoothing (with a 0.65 smoothing parameter). I'm currently using Raman Tool Set for this, but would ideally like to find an option within Igor. I know there is an option under analysis/interpolate for smoothing, however this seems to give very different results compared to those I would expect when performing the same operation in Raman Tool Set. Additionally, I need to be able to perform these operations as a batch (i.e. normalise all spectra in a folder together).

Any help/suggestions would be greatly appreciated, thank you in advance!

Igor does have a spline smoothing option, confusingly part of the Interpolate dialog, or the `Interpolate2` operation. If your smoothing parameter is the estimated standard deviation of the Y data noise, then that corresponds to `Interpolate2/S=0.65 ...`

Hi John,

Thanks for the info, Raman Tool Set seems to implement this function based on the info in the help manual. The smoothing parameter seems to correlate to a "balance parameter", which from the link:

"specifies the balance between the smoothness of the cubic spline fit and the accuracy with which it fits the observations. balance parameter must fall within the range [0, 1]. If balance parameter is 0, the cubic spline fit is equivalent to a linear fit. If balance parameter is 1, the cubic spline fit interpolates between the data points."

Is there any direct equivalent that would be possible in Igor? Thanks again!

It's hard to understand that description...

The `Interpolate2` operation includes the /F flag. From the Interpolate2 documentation:

/F=f    f  is the smoothing factor used for the smoothing spline.
    f =0 is nearly identical to the cubic spline.
    f >0 gives increasing amounts of smoothing as f increases.
    See Smoothing Spline Parameters for details.
 

But that sounds backward from what your parameter does, as if ours is 1/yours.

You might want to look at the Smooth Curve Through Noise demo experiment. Select File->Example Experiments->Feature Demos->Smooth Curve Through Noise.

Smoothing splines are one of the options for baseline fitting in the baselines package. If you want a UI for interactively smoothing spectra with options for batch processing, you could select the entire wave and fit a smoothing spline 'baseline'.

See also the fast fitting package, which can also be used for efficient batch processing. Again the package is geared toward baseline fitting, but that's just terminology...

Thanks for your suggestions so far.

John, after some playing around your method works great for a single spectra, but unfortunately I couldn't figure out a way to carry out the smoothing as a batch process...

Tony, I had briefly tried out the Marquee Peaks package before, but somehow completely missed the option to shift right click and normalise all at once, that works great! I've also used the baselines package before, but never thought of applying it this way...

 

I'm able to get good results for batch normalisation and smoothing using both Marquee Peaks and Baselines, thank you both for your help and advice!