# Improved Defect Detection Using Adaptive Leaky NLMS Filter in Guided-Wave Testing of Pipelines
## 1 Introduction
Adaptive filters have been applied in a variety of industries such as communications radar, ultrasonic and medical. The basic concept of adaptive noise cancellers was introduced by [PERSON] et al. in 1975 [12]. Their work developed the already existing Wiener filter model in order to utilize the residual signal for adaptive update of the filter weights. Many of the derived algorithms, as well as applications, were explained in his work, including canceling periodic interference in electrocardiography and speech signals. Using the same principles, [PERSON] et al. [13] proposed an adaptive noise-canceling method for the removal of background noise where the closest sensor to the abdomen of a pregnant patient is used as the reference signal, with the maternal signal captured by a sensor in a different position. By using this configuration, they were able to extract the wanted Fetal signal which was obscured by the signal received from the maternal heart rate. In 2003 [14], [PERSON] implemented the adaptive linear enhancer (ALE) algorithm to increase the SNR by using the delayed version of the same signal as the input to the adaptive filter. [PERSON] et al. [15] reviewed different adaption algorithms, such as the least mean square (LMS), normalized-LMS (NLMS), leaky-LMS and recursive least square (RLS), where it was reported all of these approaches are capable of enhancing the SNR. In communications and speech analysis, one of the common uses of an adaptive noise canceller (ANC) is for echo cancellation [16; 17], which can be generated by hybrid transformers while transmitting data, or from the multipath mitigation of the signals to the microphone. In radar technology [18; 19], adaptive filters are widely used for multipath cancellation, clutter rejection, and spatial noise reduction by using adaptive beamforming. In ultrasonic testing, [PERSON] et al. [20] used adaptive filters in order to increase the SNR in ultrasonic non-destructive testing (NDT) of highly scattered materials. In 2010, [PERSON] et al. [21], tested this configuration for clutter rejection and detection of small targets in ultrasonic backscattered signals. Both researchers reported that adaptive filtering is a robust method of filtering the random ultrasonic grain noise created by the structure. It was reported that if the ultrasonic beam is moved less than a beam width away from the position, the echo from a structural feature is closely related while the grain noise varies. The results were evaluated experimentally using NLMS where an improvement of 5-10 dB was observed with fixed parameters. In guided-wave testing, the noise is time varying. While the excited wave mode is non-dispersive and axisymmetric, the flexural waves change in time. Therefore, when observing the signal from different points of the pipe the axisymmetric waves will have similar characteristics, while the flexural waves will be variable. In this paper, instead of removing the noise from the single time-domain signal received from the propagation routine, a novel method is proposed to utilize adaptive filtering using the signals received from separate rings to remove the flexural wave modes in the tests. The leaky NLMS method is used for updating the filter weights in each iteration. The NLMS method reduces the amplification of gradient noise and also provides a faster rate of convergence than the LMS algorithm [10; 22]; therefore, it is more suited for guided-wave applications with time-varying noise. Furthermore, the introduction of a leakage factor in the update function for the filter weights limits the divergence of the filter weights. Leakage methods were initially introduced to decrease performance degradation caused by limited-precision hardware [23]. The process is equivalent to the introduction of a white noise sequence to the input signal [22]. In the context of this paper, the main reason for applying a leakage factor was to allow faster adaption of the filter weights to the existing noise of each iteration.