EURASIP Journal on Applied Signal Processing 2005:8, 1221–1228 c ○ 2005 Hindawi Publishing Corporation Clipped Input RLS Applied to Vehicle Tracking

A new variation to the RLS algorithm is presented. In the clipped RLS algorithm (CRLS), proposed in updating the filter weights and computation of the inverse correlation matrix, the input signal is quantized into three levels. The convergence of the CRLS algorithm to the optimum Wiener weights is proved. The computational complexity and signal estimation error is lower than that of the RLS algorithm. The CRLS algorithm is used in the estimation of a noisy chirp signal and in vehicles tracking. Simulation results in chirp signal detection shows that this algorithm yields considerable error reduction and less computation time in comparison to the conventional RLS algorithm. In the presence of strong noise, also using the proposed algorithm in tracking of 59 vehicles shows an average of % reduction in prediction error variance relative to conventional RLS algorithm.


INTRODUCTION
The subject of adaptive signal processing has been one of the fastest growing fields of research in recent years. The recursive least square (RLS) and the least mean square (LMS) are two adaptive filtering algorithms [1]. The adaptive RLS and LMS are kinds of data-driven algorithms. Fast convergence of the RLS has given rise to the development of the algorithms based on it [2,3,4,5].
The work on reducing the amount of computations and numerical instability of the RLS algorithm is continuing. For example, in [6], the computational complexity of the inverse correlation matrix is reduced by presentation of a pseudoinversion technique. The numerical instability of the RLS algorithm is an issue that has been studied in [7]. Also reduction of computational complexity of the RLS is done by joining LMS to RLS because LMS has better performance in terms of tracking property in noisy environment and is simply realized [8,9].
The current work is based on borrowing the idea of simplifications performed on the LMS algorithm in order to reduce the RLS algorithm computations while increasing its performance. Reduction of the complexity of the LMS has received attention in the area of adaptive filter [10,11,12,13]. The sign and clipped data algorithms are the most important ones [10,12,13,14,15].
The works reported in the above references have been done for increasing the real-time performance of the LMS algorithm using the sign of the input data and/or error during updating the filter weights. In the same manner, in the clipped RLS algorithm proposed in updating the filter weights, and computation of the inverse correlation matrix, the input signal is quantized into three levels of −1, 0, +1.
In Section 2, the RLS algorithm is described and in Section 3 the proposed CRLS algorithm is presented. Section 4 describes the use of the CRLS algorithm in two applications, noise canceling and vehicle tracking. The final section concludes the paper.

THE RLS ALGORITHM
The RLS filter is an adaptive, time-update version of the Wiener filter. This algorithm is used for finding the system transfer function, noise cancellation, finding the inverse system function, and prediction. Its purpose is to minimize the weighted sum of the squared errors. The error function in the time domain is obtained from where e k is the error signal, e k = d k − X T k W k and W k = [W 1 , . . . , W L ] T is the weight vector of the RLS filter with input signal X k = [x 1 , . . . , x L ] T , and λ is the forgetting factor 0 ≤ λ ≤ 1. The filter weights are obtained from the following equations: where R k is the input autocorrelation function and P k is the cross correlation vector between the input signal and the desired signal: R k and P k can be written as For computing R −1 k , (A.1) is used. With the correlation matrix R k assumed to be positive definite and therefore nonsingular, we apply the matrix inversion lemma, presented in Appendix A, to the recursive (4).
We first use the following definitions: Substituting in (A.2), we obtain If we define substituting (7) in (6) and simplifiying yields After substitution of (8) in (2) and using (4) and Equation (7) can be written as Also (9) can be written as

CRLS: THE CLIPPED INPUT RLS ALGORITHM
Here we propose a new variation to the RLS algorithm, CRLS, in order to simplify its implementation. We quantize the input signal into a three-level signal as shown in Figure 1.
It should be noted that the adaptive filter contains two steps: filtering process and adaptation process. The filtering operation is performed with the unclipped signal and the adaptation operation is performed with the clipped one. Since the CRLS algorithm clips the input signal in the presence of strong noise, it also clips the noise. This means that it is robust against noise, so its performance in this regard can be expected to be better than the conventional RLS. The weight update equation can be written as Equation (6) can be written as where X k is the clipped input signal vector whose ith component is x n (i) = msgn(x n (i), δ), where msgn{·} is the modified sign function defined as It should be noted that the implementation of such an adaptive filter has potentially greater throughput because when the tap input signal x n (i) is less than the specified threshold, δ, x n (i) is equal to zero. This means that some of the time-consuming operations for weight update and inverse correlation computation, that is, (12) and (13), are omitted. Convergence of the mean of the weight vector for CRLS is proved in the next subsection. It is shown that the mean of the weight vector converges to the optimum weight vector of the Wiener filter.

The convergence of CRLS
The weight update formula of the CRLS can be expanded as With independence assumption between X k e k and R −1 k and also between W k and X k X T k and using (B.11), we have where α = 2/π exp(−δ 2 /2σ 2 v ) and σ x is standard deviation of input signal; also According to Eleftheriou and Falconer's theorem [16], Using (18) in (17) yields If λ < 1 and for large k, then or From (16) and (21), we conclude that In the limit, Thus from (22) and (21) we have After simplification of (26), we obtain This strongly proves the convergence of our proposed algorithm.

Computational complexity of CRLS
The proposed algorithm has less computational complexity relative to the RLS algorithm. If we assume that the input signal has a Gaussian distribution with zero mean and standard deviation σ x , then the probability that the signal falls in the interval between [−δσ x δσ x ] is equal to where the input probability distribution function is N(µ x , σ x ), and P(−δσ x < x < δσ x ), in addition to being the probability of the occurrence of the signal in the interval [−δσ x δσ x ], is the reduction of the amount of computations of CRLS relative to RLS. This amount shows the reduction of the number of floating-point operations in one iteration that is shown in Table 1, where L is the length of input buffer. The reason is that the signal falls with a probability of P(−δσ x < x < δσ x )   between the two thresholds and in this interval, the CRLS algorithm has no weight update. The amount of computation reduction of CRLS compared to the RLS is shown in Table 2 for several different thresholds. It is interesting to note that regarding (28) for δ = 0.699, the computational complexity of the weight update formula can be reduced to about 51.55% without any noticeable change in signal estimation and noticeable reduction in the weighted sum of squared error (Figure 3).

EXPLOITING THE CRLS IN TWO APPLICATIONS
In this section, the CRLS algorithm is used for noise reduction and vehicle tracking and the results are compared to those of the RLS algorithm.

Applying the CRLS algorithm to vehicle tracking
Tracking moving objects is performed by predicting the next position coordinates or features [17,18,19,20]. Tracking the vehicles in roads has a notable role in the analysis of traffic scenes. Generally in tracking the vehicles, the feature points or models in the consecutive frames are tracked; in other words, in the first place, vehicles are detected and then are followed in consecutive frames [17,21,22,23,24].
The CRLS algorithm due to its lower computational complexity and lower error (Figure 3) relative to the RLS is suitable as a good predictor for vehicle tracking.
A trajectory predictor is used for increasing the tracking precision thereby reducing the size of search area for the desired location in the image, avoiding missing vehicles due to the existence of similar objects around it. After the detection of moving blobs, similar blobs in consecutive frames are found and the most similar blobs are attributed to each other. Finding locations are applied to a CRLS predictor in order that after the convergence for each blob, it can help in attribution of similar blobs.
The CRLS predictor corrects the improper attribution of blobs due to their similarity. After the arrival of each vehicle to the scene, it is labeled and tracked in the interest area inside the scene. The position of the centers of gravity of the two similar blobs is obtained in two frames and is given to a CRLS predictor to predict the next position. As an example, the tracked trajectories by the CRLS algorithm are shown in Figure 4.
Fifty nine vehicles were tracked in sequences with length of about 70 frames at normal congestion in junctions of highway to highway and highway to square as shown in Figure 5. The prediction error variances of 59 vehicles are depicted in Figure 6.
An average of 3.06% reduction in prediction error variance of CRLS relative to RLS was obtained in vehicle tracking.

CONCLUSIONS
In this work, we proposed a new algorithm for updating the adaptive filter weights. The proposed algorithm, clipped RLS, uses a three-level quantization (+1, 0, −1) scheme which involves the threshold clipping of the input signal in the filter weight-update formula and inverse correlation data calculation. Also, the convergence of the proposed algorithm to the optimum Wiener weights was proved. This algorithm was used in the estimation of a noisy chirp signal and in vehicle tracking in the traffic scene.
It is interesting to note that the computational complexity of the weight update formula can be reduced to about 51.55% without any noticeable change in signal estimation.
The simulation results in chirp signal detection showed that the proposed algorithm yields considerable error reduction and less computation time in comparison to the conventional RLS algorithm. Also using the proposed algorithm in tracking of 59 vehicles in highways showed an average of 3.06% reduction in prediction error variance.

Lemma 1. Let A and B be two positive-definite M×M matrices related by
where D is another positive-definite N × M matrix and C is an M × N matrix. According to the matrix inversion lemma, we may express the inversion of matrix A as follows: The proof of this lemma appeared in [1].

B. EXPECTATION OF QUANTIZE VARIABLE THEOREM
Theorem 1. If two random variables u and v both have a Gaussian distribution N(0, σ u ), N(0, σ v ), respectively, and Proof. We define a random variable z = u/σ u − ρ/σ v v. Now we have With regard to the assumption of the theorem, Therefore z and v are uncorrelated. Also, it is apparent that z and v are uncorrelated. Now we have E{z v} = E{z}E{ v} = E{z} × 0 = 0, On the other hand, The distribution function v v is also Gaussian with distribution N(0, σ v ); hence (B.7) After simplification, we will have (B.8) Now regarding (B.5) and (B.8), we have (B.9) With regard to E{uv} = ρσ u σ v in (B.9), we have E{uv}. (B.10) If α = (2/π) exp(−δ 2 /2σ 2 v ), then (B.10) can be written as