Coefficients Daubechies used as filter low-pass.
The extensive use of insecticides in modern agriculture has raised serious public concern regarding the environment and food safety, and considerable efforts have been devoted to the development of highly sensitive detection methods (Bachmann et al., 2000; Istamboulie et al., 2007). Biosensors have been described for many years (Andreescu and Marty, 2006a) as good candidates to replace or complement conventional analytical methods, as they can provide real-time qualitative information about the composition of a sample with minimum treatment. In recent years, biosensors have played an important role in the determination of pesticides, because the compounds used in its composition have anticholinergic properties and therefore strongly inhibit cholinesterase enzymes. Evaluation of cholinesterase activity is the crucial factor in the construction of biosensors, however, in the case of multi-component samples (more common in reality) is absolutely essential include appropriate data processing tools to find relationships between the biosensor responses and the measured data. In most cases, it is necessary a first data pretreatment step in order to explore and validate these obtained information (Ehrentreich, 2002).
Many applications related with the use of biosensor responses entail data interpretation problem related to: (1) noisy records due to temperature changes; (2) data acquisition noise present in records, (3) presence of interference signals in the biosensor response mainly contaminated by signals coming for the electrochemical equipment i.e. potentiostats, magnetic stirrings and thermostats (Cai and Harrington, 1998; Zanchettin and Ludermir, 2007): (4) according with the inhibition method the responses can be slow which implies signals with information in low frequencies and a large number of samples per essay (Arduini et al., 2010).
In this way, different data processing strategies have been proposed in order to achieve better interpretation models and discard irrelevant content coming from original data. During the last decade, Wavelet Transform (WT) has been widely employed in signal processing analysis were denoising and compression is an important step in the data mining process. WT has been proved to be fast and reliable than traditional methods such as Fourier Transform (FT) and Savitzky-Golay (SG) (Alsberg et al., 1997; Cai and Harrington, 1998; Gorry, 1990).
Wavelet transform is a well localized in both the time and frequency domain. Therefore it may decompose a signal retaining the information of both domains. Unlike the more traditional filtering methodologies, wavelet transforms have the ability to preserve the temporal locality of sharp transitions within time domain signals (Alsberg et al., 1997). This property makes WT useful to represent different features of the signal, especially non-linearities or discontinuities.
Since 90´s decade, WT has attracted interest in fields of chemistry for signal processing. Analytical techniques such as chromatography, infrared spectroscopy, mass spectrometry, nuclear magnetic resonance spectroscopy, ultraviolet-visible spectroscopy and electroanalysis, have also been benefited from the properties of wavelet processing for data processing tasks mainly related to compression, noise removal, base-line correction, zero crossing, regression and multi-resolution of overlapping signals (Leung et al., 1998a; Leung et al., 1998b; Nie et al., 2001).
The viability of the use of wavelet analysis in electrochemical applications has been reported since two decade ago. Bos and Hoogendam proposed the use of WT to minimized the effect of noise and base-line drift to determine peak intensities in flow-injection analysis (Bos and Hoogendam, 1992). In that work, obtained results indicate that wavelet analysis applied to peak shapes (with appropriate signal-to-noise ratio), may improve the detection limit obtained with traditional signal processing methods in which the peak heights and peak areas are determined. In this sense, Morlet wavelet function was utilized to transform the FIA signal into a two dimensional time-frequency form.
One of the first reports related to the analysis of electrochemical signals was presented by Zou and Mo (1997), they employed wavelet multi-frequency channel decomposition (WMCD) in records coming from linear scan voltametry, in order to extract useful information from voltamograms with high levels of noise. Selecting optimal wavelet basis and frequency scales the absolute values of the peak have relative errors less than 2% (Zou and Mo, 1997). Other interesting work developed by Aballe et al. (1999), used wavelet transform to analyse the electrochemical noise and its fluctuations in order to establish either the rate or the mechanism of a corrosion process (Aballe et al., 1999). This kind of analysis allowed obtaining complementary information about these parameters where other techniques do not work properly.
Since the wavelet analysis is carried out by a digital system, we assumed that the analysis is in time-discrete and depends of discrete parameters, such as rate of acquire analogical signal, numbers of operations per second and resolution of the data. These parameters are not taken into account when the wavelet transforms are performed by personal computer and specialized mathematician software, but when the implementations are oriented towards specific applications or/and the necessity to work with out a computer (digital robust system) hardware implementation emerges as an interesting alternative.
With the advancement of the microelectronics, new trends are oriented to develop wavelet transforms implemented in portable systems with high accuracy, low-cost, short-time response and easy programmed to be a suitable option in electrochemistry calibrations (Alonso et al., 2010).
In the last decade, different works of implementations of discrete wavelet transforms (DWTs) based on Digital Signal Processors (DSPs), Field Programmable Gate-Array (FPGA) and CMOS technology were reported such as an alternative of implementation of wavelet transforms into dedicated systems. The first dedicated devices used to compute the DWT were the DSPs, which have high process-computing power, high speed and normally the manufactures proved full support. DSPs provide some special hardware units, such as Multiply-Acumulate (MAC) to improve the performance of discrete wavelet transform Nevertheless, these devices use to be expensive, not compatible with other hardware and with the possibility to use only one processing core; so tasks must be programmed sequentially.
One of the first authors to report the use of these devices were Bahoura et al. (Bahoura M. et al.,1997), they develop an algorithm based on wavelet transform suitable for real time implementation. This algorithm was implemented in a SPROC-1400 device with a 50 MHz frequency clock and was used to detect ECG arrhythmia characteristics (Bahoura et al., 1997). An application related to DWT and the JPEG2000 image compression standard was described by Gnavi et al. (2002). The authors developed wavelet engines on a DSP platform, based on the so-called lifting scheme. Using this approach, authors presented a performance comparison between traditional convolution and lifting scheme, proving that the later were faster and computationally less demanding (Gnavi et al., 2002). After this work, Jichang et al (2003), described an algorithm to be implementable in DSP TMS3320C3X using the instruction parallel multiply-accumulate with circular addressing programmed in assemble language program (Jichang et al., 2003).
All the works mentioned have been implemented successfully integer discrete wavelet transforms but do not develop algorithms that compute the floating point DWT, when floating point representation of DWT coefficients is required. In this sense, although it is possible to implement floating-point operations on DSP fixed point architectures, the main disadvantage of this approach is related to the time-consuming transfer data to and from memory (Smith, 1997).
In order to provide flexibility for the DWT implementation based on wavelet filter length and decomposition structure, implementations based on FPGA were proposed. The first recorded work, describing a real-time application of discrete wavelet transform for audio and video compression is reported by Motra et al. (2004). In this work, the reported architecture was programmed in Verilog-HDI in a FPGA and supports higher hardware utilization and the latter scheme speed up the clock rate of DWT (Motra et al., 2004). Another similar work is presented by Zhang and Hu. Here the authors proposed a DWT algorithm based on pyramidal structural data coding and it was programmed in VHDL language (Zhang and Hu, 2004). Latest work related to this topic is presented by Knowles who reported approach of simple modular and recursive hardware implementation of DWT using basic units: input delay, filter, register bank, and control unit. The implementation based on VLSI performs both high- and low- pass filter with just one set of multipliers (Knowles, 2008).
This brief overview of works illustrates the recent trends of DWT implementation, carried out by different research groups. On the one hand, DSP implementations have been widely used because of its easy way to programming and its high precision computing. Nevertheless, disadvantages such as non standardized compiler languages and high hardware costs have promoted in recent years the use of FPGA devices.On the other hand, FPGA implementations have advantages to allow preserving parallel architecture using programmable gates on a single chip, and the source code can be modified by the user with relative simplicity. A well known disadvantage of these systems, is the need to coupled with other periphericals, becoming difficult to construct a cheap specific system (Shahbahrami et al., 2010).
Recently, the development of low-cost programmable devices has created a new family of microcontrollers with high simplicity and flexibility of programming and wide hardware compatibility. These devices called dsPIC® (from Microchip®) combines the best features of both microcontrollers and DSPs in a single core. These new features combined with high process speed promise to be the key to new implementation strategies of the DWT on a dedicated device.
In this chapter, we will attempt to describe the nature of discrete wavelet transform to build our implementation model in any low-cost dsPIC chip for denoising and compression biosensor responses. The knowledge needed to reach our main goal will be summarized along different sections to give the reader comprehensive and specialized information of the practical use of implemented discrete wavelet transform such as data pre-treatment tool.
2. Fundamentals of Wavelet Transform
In the 80’s decade, Morlet et al. (Morlet et al., 1982) described the concept
In figure 1, a variety of mother wavelets are shown. The more common wavelets are; Haar wavelet, Mexican Hat, Morlet, Daubechies. The main idea of wavelet transform is the overlapping of a wavelet mother over any signal see figure 2(b).
2.1. Discrete Wavelet Transform
Croisier et al. (Croisier et al., 1976) created a technique to analyze digital signals by the decomposition of them. In the same year Crochiere et al. (Crochiere et al., 1977) reported a similar work to code audio signals. This technique was named sub-band coding. Vetterli and Le Gall, improved the analysis of sub-bands decreasing the redundant data from pyramidal algorithm (Vetterli and Le Gall, 1989).
Mallat presented a multi-resolution representation for analyzing images. The decomposition was defined as an orthogonal multi-resolution representation called wavelet representation. It was computed by a pyramidal algorithm which was based on convolutions with quadrate mirror filters. The analysis was applied to image compression, and texture discrimination (Mallat, 1989).
According with (Tim, 1991) the discrete wavelet transform is an orthogonal function which can be applied to an infinite group of data. Functionally, it is like the discrete Fourier Transform, which is based on a orthogonal function to apply the transformation. A signal passed twice through the transformation which is unchanged, and the input signal is assumed to be a set of discrete-time samples. Both transforms are convolutions.
Whereas the transform function of DFT is a sinusoid. The wavelet basis is a set of functions which are defined by a recursive function.
Eq. (3) is orthogonal to its translations and to its dilations; the range of the summation is determined by the specified number of nonzero coefficients N. The number of nonzero coefficients is arbitrary, and will be referred to as the order of the wavelet. The value of the coefficients is, not arbitrary and it is determined by specific constraints of normalization and orthogonality. These parameters are; area under the wavelet curve, normalization.
Which means the above sum is zero for all coefficients no equal to zero, and the sum squares of all coefficients is two. Another important equation which can be derivated from the above conditions is:
One way to solve eq. (3) is to construct a matrix of coefficients values. This is a square NxN matriz where N is the number of nonzero coefficients. The matrix always has the eigenvalue equal to 1, and its corresponding (normalized) eigenvector contains, as its components, the value of the
This class of wavelet functions is constrained, by definition, to be zero outside of a small interval. This is what makes the wavelet transform able to operate on a finite set of data.(Addison, 2002) The wavelet functions which are normally used to perform transforms consist of sets of a well-chosen coefficients resulting in a function with a discernible shape. Two of these functions are Harr and Daubechies wavelets see figure 1(a).
2.2. Discrete Wavelet Transform DWT algorithm
The Mallat algorithm also know as pyramid algorithm (Mallat, 1989) is a computational efficient method of implementing the wavelet transform, and is used as a basis for hardware implementations (Motra et al., 2004; Zhang and Hu, 2004; Zhilu et al., 2002).
The pyramid algorithm operates on a finite set of input data, where N is not necessary to be a power of two as we will explain in section 2.2.1. The value of the number of input points will be named as the
And the other half is produced by the
Since most of information is in the
Each step of retransforming the
The algorithm developed allows the implementation of a DWT and it is described as follows: we suppose that have an input sequence of 10 samples of size, with the values of low-pass coefficients we compute the eq (7). The calculation for the first value of the low-pass output in a first level is carried out by the matching the coefficients in the initial input sequence sample, after the low-pass coefficients are positioned two index positions and matching again with the input sequence, applying the eq. (7) again we will have the second value of the low-pass output for the first level. We repeat this until match the last sample of the input sequence with the first coefficient of the low-pass filter. At the end we will have a half input signal expressed by low-pass output, we need to do the same with high-pass coefficients to get the high-pass output. As we have described before, we can keep just the low-pass signal which has the most representative information of the total signal. For more decomposition levels we have to rename the low-pass output as input signal and repeat the complete algorithm. A scheme of this algorithm is presented in figure 3. It is important notice that before matching the coefficients and the input signal we have to add some values (number of coefficients -1) at the beginning and at the end of the sequence to avoid the bound effects.
We can establish that successive dilations represent lower and lower frequency information by halves. It also clears that high rates of compression may require large block sizes of the input, so that more dilations can be made, and so that lower frequencies can be represented in the decomposition.
It must be notice that in some applications a pre compression level test can be done to establish the best rate of compression-reconstructions level for a specific application (Moreno-Baron et al., 2006).
2.2.1. Boundary effects
The boundary effect is present when DWT is applying to a set of discrete data, and takes place when the wavelet function is positioning at the beginning and/or end of the stream data. When the convolution is in process with the first sample of the input data and no samples have been defined to avoid boundary effects, the result of the convolution are unpredictable due to the operation can be performed with data which are not in memory space giving as a result either an over load of memory or the modification of the output signal. In this sense, if there is more than one decomposition level, the reconstruction will be inaccuracy.
There are many ways to avoid the boundary effects, these approximations include: (a) make the convolution equal to zero at the beginning and the end of the transformation, this solves the problem of the load memory errors but makes an inaccuracy transform. (b) another way to avoid the boundary effect is adding to the input data N-1 samples, where N is the number of coefficients of wavelet function, with non zero values. The main disadvantage is in the implementation of DWT the value of these non zeros coefficients must be calculated a priori according with the noise of the signals. This technique is no able for signals with different noise rates. (c) the most usual technique to avoid the boundary effect is by the reflection of the last samples of the input data, due to the added samples are from the same signal the accuracy of the reconstruction signal is not compromised. The reflection scheme can be seen in figure4.
2.3. Implementing the wavelet transform in a digital system
The implementation of digital wavelet transform involves some tasks which must be carried out before implementation. (1) Identify if the application needs; filtering, decomposition and/or reconstruction due to some applications do not need all the previous features of a wavelet transform, more features applied involve more hardware resources, memory, speed, large number of variable etc. (2) set the decomposition level needed to satisfied pre-treatment conditions, this can be done by a previous test of decomposition-reconstruction analysis. (3) Chose the type and number of filter coefficients. This can be done by the simplicity of implementation and/or by the order of filtering.
As we describe previously, in many chemical applications the signals from biosensors have high frequency noise, and imply a large number of samples, for this, we can use the wavelet transform to denoise and compress biosensor signals.
The design of the implementation of the Discrete Wavelet Transform (DWT) can be carried out as follows.
Compute and simulate the filter coefficients, one option can be Matlab® from Mathworks® software which includes toolbox with the most known wavelets and some practical algorithms to compute them. To denoise and compress, it is necessary calculate the coefficients for low-pass filter, the number of coefficients is correlated with the value of noise, this value should be measured before by an analysis of rate signal-noise. The level of the decomposition should be set by the previous compress-reconstruction analysis.
Confirms the function of the filter and level of decomposition with one real signal by simulation software.
Chose the language programming to write the code of DWT that can be after implemented in a programmable device, one of the best options is C code which can work with the IEEE754 format and it is supported by several dedicated devices.
Define fixed memory for the constants values of wavelet coefficients, level of decomposition and reserve data memory for two arrays, the first one has the same size of input data plus 2*length filter coefficients, second one has half size of input data plus 2*length filter coefficients (temporal array).
Develop a normalization function due the some application are based on concentrations of compounds which means the value of the data are represented in scientific format, for computation tasks is recommended rescale values from 0 to 1 see eq. (8).
Reflect the input sequence at the beginning and at the end of the input array.
Compute the convolution based on figure 3 and storage the result in the temporal array.
Rename the temporal array as input data and the input data as temporal array.
Repeat step 6 and compute the convolution again and storage the result in the temporal array.
Repeat steps 6,7,8, 9 until reach the level of compression set.
2.3.1. DsPIC30F6014 microcontroller
The dsPIC® microcontrollers are 16-bit Digital Signal Controllers (DSC) from Microchip®. They preserve the compatibility from classical PIC microcontrollers. They have some special characteristics such as 144 Kbytes of program memory; a large size of memory which makes possible implemented mathematical tools. The dsPICs can execute more than 30 millions instruction per second (30 MIPS) one of the fastest microcontroller from Microchip®. dsPICs have an optimized C compiler and 8-K of random access memory (RAM) and 4-K of read only memory (ROM).
3. Denoising and compression of biosensor based on screen-printed electrodes response using DWT
During years, the large interest in inhibition biosensors has been focused on the kind of responses and the quantitative relationships obtained using immobilized enzyme. A variety of linear, non-linear, logarithmic responds between inhibition percentage and either inhibition concentration or incubation time were reported (Evtugyn et al., 1999; Fennouh et al., 1997; Hart et al., 1997). Concerning biosensors based on acetylcholinesterase inhibition, a theoretical model was reported based on diffusion limited inhibitor transport, taking into account the heterogeneous nature of enzyme inhibition that results from immobilization at the transducer surface (Zhang et al., 2001) :
3.1. Biosensor preparation
The biosensor was constructed as follows: Screen-printed three-electrode system with Cobalt-phthalocyanine-modified carbon as working electrode, graphite as counter electrode and Ag/AgCl as a reference electrode were fabricated using a DEK248 screen-printing system (Weymounth, UK). The biosensor based on the genetically-modified enzyme (B394) was mixed with polymer polyvinyl alcohol (PVA) in a rate of percentage of 30/70 (v/v). The enzyme was immobilized directly on the working electrode surface by entrapment in PVA-AWP polymer. For this purpose, the homogeneous mixture of B394, and PVA-AWP polymer was prepared and 3µL were carefully applied on the graphite working electrode surface. The final enzyme amount deposited on each electrode was 1mIU. The electrodes were exposed 5 h under a neon lamp (15 W) at 4°C to carry out photopolymerization and were ready to use after drying for 48 h (Andreescu and Marty, 2006b; Andreescu et al., 2002; Cortina et al., 2008; Silva Nunes et al., 2004; Valdés-Ramírez et al., 2009).
The mechanism of inhibition of AChE by organophosphate compounds is well known, it can be summarized by the following reactions (Charpentier et al., 2000):
with E = Enzyme, PX = Organophosphate insecticide, X = Leaving group.
The inhibitor phosphorylates the active-site, and the inhibition can be considered as irreversible in the first 30 min. This scheme can be simplified with the bimolecular rate constant ki = k2/Kd. However, the immobilization of the enzyme on the electrode surface does not allow the calculation by direct equations of all the constant rates involved in an enzyme-catalyzed reaction (Walsh et al., 2010).
The reactions that take place in an acetylcholinesterase-based sensor are described in scheme 1 (Silva Nunes et al., 2004).
The flow of electrons is proportional to the rate of acetylthiocholine hydrolysis, which decreases upon phosphorylation by OP of a serine present in the enzyme active site. As can be noticed in the previous scheme, the mediator Co-PC transforms the ionic current into flow of electrons, the main advantage of Co-PC allows the oxidation-reduction using low voltages, (100mV) and giving a more stable and higher signal compared with other mediators (Shaidarova et al., 2004). The use of Cobalt-phthalocyanine involves higher current signals but also high levels of noise.
Inhibition protocol is described as follows: the biosensor is vertically inserted into an analytical cell containing phosphate buffer (10mL) under constant magnetic stirring at constant temperature (30°C). ATChCl solution (final concentration in the cell 1 mM) is added in the cell and the signal obtained at steady-state current was recorded. This step is repeated to ensure the stability of the biosensor. Inhibition is measured after addition at the steady-state step a known concentration of pesticide solution, as described in fig. 5.
From figure 5 we can see that to detect the pesticide, the part of the signal which has the analytical information is the signal generated by the addition of pesticide (the slope) to analyze
The analog signal is acquired by the Analog/Digital converter peripheral of the dsPIC30F6014 microcontroller which computes the DWT and sends the digital data to a PC by RS232 interface to storage the inhibition curves. The protocol of the acquisition is shown in figure 6(a).
The DWT was implemented by Daubechies (Db) coefficients which were used such as banks of filters. Daubechies filters are recommended for discrete applications (Addison, 2002; Tim, 1991). The calculus of the Db coefficients and the level of decomposition were computed a priori in Matlab®.
4. Obtained results
The recorded signals correspond to inhibitions carried out as follows: the activity of biosensors is tested two times to prove the stability, after, when the activity has reached the
A total of 105 voltamograms (with 800 samples each one) were digitalized sequentially (with acquisition rate of 1Hz), sending to PC via rs232 interface and storaged in the dsPIC memory (see Figure 7). The input vector was reflected in both sides to avoid the boundary effects, then, the vector was filtered by the Db filter, this was the first decomposition level, and the low-pass output was named as input vector for the next decomposition level. The algorithm repeats the above mentioned process until gets the decomposition level after the compressed signal is also sent it to a PC via rs232-interface.
A priori test was made to optimize the level of the composition and the order of wavelet used in the implementation, the test consisted in the use of different orders of Daubechies and different levels of compression to determine the ratio of similarity of the signal constructed from low-pass outputs. The Daubechies 4 and a 4th level (see figure 8) of compression were used to fixed parameters in the hardware implementation.
Daubechies coefficients were computed in Matlab® and saved in the dsPIC mamory as constant vector. The values of Daubichies coefficients are shown in table 1.
The time needed to compute the DWT by the dsPIC6014 was 68.87ms. The total time is the time to acquire a complete signal (1 sample/second) plus the time to perform the DWT.
The analysis of the slopes was made in Matlab® by the function
The values of the slopes (
The response of the biosensor toward each pesticide was different as it is dependent on the sensitivity of the enzyme to the inhibitor. The limit of detection (LOD) was defined according to (Armbruster et al., 1994): considering the standard deviation of the slope σ observed in absence of inhibitor, the LOD corresponds to the lowest pesticide concentration inducing a slope increase equivalent to 3σ. In the same manner, the limit of quantification (LOQ) was defined as the pesticide concentration inducing a response equal to 10σ. In this case, the response considered for calculating the LOD was 3x10-4 nA/sec. The values of LOD and LOQ obtained for the used bio-sensor are summarized in table 2.
|Correlation coefficient||LOD (M)|
In this wok a novel processing tool based on DWT is presented. DWT was implemented in a low-cost dedicated system able to analyse voltammeric signals.. The main advantages of this implementation are related to the simplicity that can be modified characteristics such as the compaction level and the choice of wavelet coefficients for specific applications. The algorithm described in this work, can be implemented in any digital system with out disadvantages of fixing the size of input data to power of two, the resolution of the data was solved by the supporting of the dsPIC® programming language which supports IEEE754 format.
A complete case study of signal treatment in electrochemical analysis has been shown in detail. Based on its results, it is possible to observe that the implementation of DWT was achieved successfully employing as a pre-treatment tool to denoise and compress voltamograms. The use of genetically modified enzyme allow to achieve low detections limits and performing inhibitions in short time without incubation stage. In this sense, the proposed methodology is well suited for in-situ applications.
The authors greatly acknowledge the PCP Franco-Mexicain J100.116/2009, CONACyT-MAE for financial support through the project “Détection sélective et sensible d'organophosphorés par des biocapteurs utilisant des enzymes génétiquement modifiées” and the Consejo Nacional de Ciencia y Tecnología (CONACYT, México), for the scholarship granted to Gustavo Alonso.