Figure 9. A resolution enhancement algorithm has been applied to the signal on the left to artificially improve the apparent resolution of the peaks. In the resulting signal, right, the component bands are narrowed so that the intensities and positions can be measured.
Here use can be made of resolution enhancement algorithms to artificially improve the apparent resolution of the peaks. One of the simplest such algorithims is based on the weighted sum of the original signal and the negative of its second derivative.
Here's how it works. The figure below shows, in Window 1, a computer-generated peak (with a Lorentzian shape) in red, superimposed on the negative of its second derivative in green). (Click on the figure to see a full-size figure).
The second derivative is amplified (by multiplying it by an adjustable constant) so that the negative sides of the inverted second derivative (from approximately X = 0 to 100 and from X = 150 to 250) are a mirror image of the sides of the original peak over those regions. In this way, when the original peak is added to the inverted second derivative, the two signals will approximately cancel out in the two side regions but will reinforce each other in the central region (from X = 100 to 150). The result, shown in Window 2, is a substantial (about 50%) reduction in the width, and a corresponding increase in height, of the peak. This works best with lorentzian-shaped peaks; with gaussian-shaped peaks, the resolution enhancement is less dramatic (only about 20%). Note that the basline of either side of the resolution-emhanced peak is not quite flat, because the cancellation of the original peak and the inverted second derivative is only approximate; the adjustable weighting factor k is selected to minimize this effect. An interesting property of this procedure is that it does not change the total peak area (that is, the area under the peaks) because the total area under the curve of the derivative of a peak-shaped signal is zero (the area under the negatives lobes cancels the area under the positive lobes).
|
The custom Matlab function enhance.m uses a slightly more advanced algorithm that extends the above approach by adding in a small amount of the 4th derivative of the signal:
This function has the form Enhancedsignal=enhance(signal,k2,k4,SmoothWidth), where "signal" is the original signal vector, the arguments k2 and k4 are 2nd and 4th derivative weighting factors, and SmoothWidth is the width of the built-in smooth. The resolution-enhanced signal is returned in the vector Enhancedsignal. Click on this link to inspect the code, or right-click to download for use within Matlab. The Interactive Resolution Enhancement for Matlab has sliders that allow you to adjust the resolution enhancement parameters (2nd derivative factor k2, 4th derivative factor k4, and the smooth width) while observing the effect on the signal output dynamically. It can handle signals of virtually any length, limited only by the memory in your computer. Requires Matlab 6.5. (If you have access to Matlab, you may download a set of Matlab resolution-enhancement m-files (16 Kbytes), ResolutionEnhancement.zip, so that you can experiment with all the variables at will and try out this technique on your own signals). Video Demonstration. This 15-second, 1.7 MByte video (ResEnhance3.wmv ) demonstrates the Matlab interactive resolution enhancement function InteractiveResEnhance.m. The signal consists of four overlapping, poorly-resolved Lorentzian bands. First, the 2nd derivative factor (Factor 1) is adjusted, then the 4th derivative factor (Factor 2) is adjusted, then the smooth width (Smooth) is adjusted, and finally the Factor 2 is tweeked again. |