A Novel Human Motion Tracking Approach Based on a Wireless Sensor Network

This paper proposes a human motion tracking approach for a daily life surveillance in a distributed wireless sensor network using ultrasonic range sensors. Because the human target often moves with high nonlinearity, the proposed approach applies the unscented Kalman filter (UKF) technique. A novel sensor node selection scheme at each time step considering both the tracking accuracy and the energy cost is presented. Experimental results in a real human motion tracking system show that the proposed approach can perform better tracking accuracy compared to the most recent human motion tracking scheme in the real testbed implementation.


Introduction
Human motion tracking is receiving increasing attention from researchers of different fields of study nowadays. The interest is motivated by a wide range of applications, such as wireless healthcare, surveillance, and human-computer interaction. A complete model of human consists of both the movements and the shape of the body. Many of the available systems consider the two modeling processes as separate even if they are very close. In our study, the movement of the body is the target.
Most of the human motion tracking systems are based on vision sensors. Recently, there has been a significant amount of work in tracking people trajectory across multiple image views. Some of the proposed approaches present systems that are capable of segmenting, detecting, and tracking people using multiple synchronized surveillance cameras located far from each other. But they try to hand off image-based tracking from camera to camera without recovering real-world coordinates [1]. Some other work has to deal with large video sequences involved when the image capture time interval is short [2]. The most recent work on vision-based people tracking systems develop wireless sensor networks with low-resolution camera to predict the trajectory of human movement [3]. However, most vision-based approaches to moving object detection are computationally intensive and costly expensive [4]. They often involve intensive real-time computations, such as image matching, background subtraction, and overlapping identification [4]. In fact, in many cases, due to the availability of prior knowledge on target motion kinematics, the intensive and expensive imaging detector array appears inefficient and unnecessary. For example, a video image consisting of 100 × 100 pixels with 8-bit gray level contains 80 kbits of data, while the position and velocity can be represented by only a few bits [5].
Instead of the centralized processing tracking system based on vision, a promising alternative system named distributed wireless sensor network (WSN) has been quickly developed recently. It consists of many low-cost, spatially dispersed position sensor nodes. Each node can compute and process information that it received and transfer the information among the sensor nodes that are placed within its communication range or to its leader node. Although there are many applications on WSN on target tracking problems [5][6][7][8][9][10], few papers can be found on human motion tracking in real-time systems [11]. We will develop such a system by WSN in this paper.
From our point of view, human tracking with multiple sensors is an intrinsic multisensor data fusion problem. Multisensor data fusion is such a process through which we combine readings from different sensor nodes, remove inconsistencies, and pull all the information together into one coherent structure. Although some work of multisensor data fusion in WSN has been proposed [6], the tracking accuracy is still limited because of the high nonlinearity property of the human target. In this paper, a UKF filter is employed to estimate the velocity and position of the human trajectory in WSN. UKF filter has the ability to switch between a high process noise (or alternatively, higher order or turn) model in the presence of maneuvers and a low process noise model in the absence of maneuvers. This point gives the UKF filter its advantage over simpler estimators like the Kalman filter and EKF. Compared to the existing work based on EKF [6], the proposed algorithm can give more accurate estimation by using multiple models for human motion in a realtime tracking system developed in this paper.
The layout of the paper is as follows. Section 2 presents the multiple models for human motion tracking. Section 3 presents the UKF estimator for our application. Section 4 proposes the sensor node selection method for our framework. Section 5 presents the simulation results and experimental results. Conclusions and future work are drawn in Section 6.

Problem Formulation
In this section, we formulate the human motion tracking as a distributed multisensor data fusion problem. We consider the human moving in a 2D Cartesian coordinate system. The target state includes the human velocity, the human position in the coordinate, and the turn rate when the trajectory is along a curve. We can build up the system models as follows.

Coordinated Turn Model.
In order to describe the human's more complex trajectory, such as turn left or turn right, here we apply the coordinated turn model similar to that in [5]: x ( + 1) = F (x ( )) + Gv ( ) , where is the assumed unknown constant turn rate and v( ) is the process noise. Although the actual turn rate is not exactly a constant, we can assume that it is not changed in a very short-time interval. For convenience, we assume that v is a zero mean Gaussian white noise with variance Q( ).

System Observation Model.
In order to build up the estimation scheme using UKF, the sensor observation model is needed. If sensor is used, ( ) is applied to denote the kth measurement of the target at time step . The measurement model is given by where ℎ is a (generally nonlinear) measurement function depending on sensor 's measurement characteristic and parameters (e.g., its location). ( ) is a variable representing measurement noise in sensor . It is independent and assumed to be zero-mean Gaussian distribution white noise. The covariance of ( ) is ( ).

UKF Filter-Based Human Tracking
Based on the above coordinated constant turn model and the system observation model, the unscented Kalman filter is applied to estimate the system state variable which includes the target's position coordinate and velocity. Given the estimatex( | ) of x( ) and its estimation error covariance P( | ), in order to avoid the linearization involved in the EKF, the UKF works by generating a set of points whose sample mean and sample covariance arê x( | ) and covariance P( | ), respectively. The nonlinear function is applied to each of these points in turn to yield a transformed sample, and the predicted mean and covariance are calculated from the transformed samples. The samples are deterministically chosen so that they capture specific information about the Gaussian distribution.
For highly nonlinear systems, the UKF has advantages over the EKF. It avoids the linearization that causes substantial errors in the EKF for nonlinear systems and possible singular points in Jacobian matrices. The basic UKF algorithm (one cycle) can be seen in [12]. The following is the details of UKF.

Form Weighted Samples.
The n-dimensional random variable x( ) with meanx( | ) and covariance P( | ) is approximated by 2 + 1 weighted samples or sigma points selected by the algorithm International Journal of Distributed Sensor Networks 3 where ∈ , (√( + )P( | )) is the th row or column of the matrix square root of ( + )P( | ), and is the weight that is associated with the th point. In theory, can be any number (positive or negative) providing that ( + ) ̸ = 0.

Prediction.
Given the set of samples generated by (3), the prediction procedure is as follows.
(a) Each sigma point is instantiated through the process model to yield a set of transformed samples (b) The predicted mean is computed aŝ (c) The predicted covariance is computed as It is also clear that the predicted measurement is simply: The difference between the measurement and the predicted observation, named the innovation, can be written as The covariance of this quantity is 3.3. Calculate the Kalman Filter Gain. Use the following equation 3.4. Update. We update the estimation using the following equations:

Sensor Node Selection
In this section, the sensor selection method under the UKF filter will be presented. It is assumed that each sensor is able to detect the target and determine its range, and the locations of all the sensors are known. One of the approaches simply selects the nodes closest to the predicted target location as estimated by the tracker [13]. The drawback of the "closest" node approach is that it only roughly selects the sensor nodes and does not consider its contribution to the tracking accuracy and the energy consumption quantitatively and simultaneously. In this paper, we propose an adaptive sensor selection scheme similar to [14] but under UKF filter framework. It jointly selects the next tasking sensor and determines the sampling interval at the same time based on both of the prediction of the tracking accuracy and tracking energy cost.

Tracking Accuracy.
Various measures can be defined based on the state estimation to stand for the tracking accuracy, such as the trace and the determinant of the covariance matrix, Fisher information defined on the Fisher information matrix which is the inverse of the state estimation covariance, eigenvalues of the difference between the desired and the predicted covariance matrix of the state, and entropy of the state estimation distribution. In this paper, based on the constant velocity model and the angular coordinated turn model, the tracking accuracy is reflected by tracking error ( ) at time step which is defined as the trace of the covariance matrix ( | ), that is, Given a predefined threshold 0 ( ), the tracking accuracy at time step is considered to be satisfactory if otherwise it is considered to be unsatisfactory.

Energy Model.
Energy consumption is used as the tracking cost. We consider the following energy model. If current sensor selects sensor as the next tasking sensor, then the total energy consumed by sensor in transmission is where and are decided by the specifications of the transceivers used by the nodes, is the distance between sensor and sensor , is the number of bits sent, and depends on the channel characteristics and is assumed to be time invariant. Energy consumed in receiving is where is decided by the specification of the receiver of sensor . The energy spent in sensing/processing data of bits by sensor is Therefore, the total energy consumption is ( , ) = ( , ) + ( ) + ( ) .

Adaptive Sensor Selection Scheme.
Suppose that the current time step is and the current tasking sensor is the sensor which receives state estimation̂( − 1 | − 1) and estimation covariance matrix ( − 1 | − 1) of the time step − 1 from its parent tasking sensor. It first updates the state estimation by incorporating its new measurement ( ) using the UKF algorithm described in Section 2. Then, it uses the sensor scheduling algorithm to select the next tasking sensor and the next sampling interval Δ such that the sensor can undertake the sensing task at the time +1 = + Δ . We suppose that Δ should be in the range [ min , max ], where min and max are the minimal and maximal sampling intervals, respectively. If sensor is selected with the sampling interval Δ , its associated predicted objective function is defined as where Φ ( ) is the predicted tracking accuracy according to the UKF algorithm, ( , ) is the corresponding predicted cost given by (17), the averaged energy consumption over the period. ∈ [0, 1] is the weighting parameter used to balance the tracking accuracy and the energy consumption. The sensors are scheduled in the following two tracking methods.
(1) After prediction, none of the sensors can achieve the satisfactory tracking accuracy using any sampling interval in min and max . In this case, Δ is set to the minimal sampling interval min , and the sensor is selected by where is the candidate sensors that can be selected by sensor . Generally in (19), ̸ = 0. The purpose of this mode is to drive the tracking accuracy to be satisfactory as soon as possible with consideration of the energy consumption.
(2) After prediction, at least one sensor can achieve the satisfactory tracking accuracy. In this case, the optimal ( * , Δ * ) is selected by where * is the set of sensors that can achieve the satisfactory tracking accuracy. Equation (20) utilizes the objective  function in (18) with = 0. The basic idea of this mode is that when the predicted tracking accuracy is satisfactory, the sensors and the sampling interval are selected according to the energy efficiency. For simplification, we suppose that the sampling interval is selected from predefined values { } 1 , where 1 = min , = max , and 1 < 2 if 1 < 2 . In addition, the set { } 1 is selected such that its values can evenly divide the interval [ min , max ] into − 1 subintervals.

Experimental Results
Our testbed is shown in Figure 1. All the hardwares in the testbed are supplied by Crossbow Technology. The testbed consists of the following hardwares: MicaZ (processor with on-board ZigBee radio), MDA100CA, MIB510 (USB programmer), and SRF02 (active ultrasonic sensor with I2C bus). Figure 2 shows the MicaZ mote, which operates from the 2400 MHz to 2483.5 MHz band, and uses the Chipcon CC2420, IEEE 802.15.4 compliant, and ZigBee ready radio frequency transceiver integrated with an Atmega128L microcontroller. It has an integrated radio communication transceiver working at 2.4 GHz frequency with a transmission data rate of 250 Kbps and indoor transmission range of 20 to 30 meters. It runs TinyOS and is programmed on nesC.
The MDA100CA series sensor boards have a precision thermistor, a light sensor/photocell, and from general prototyping area. The prototyping area supports connection to all eight channels of the mote's analog to digital converter (ADC 0 to 7), both USART serial ports, and the I2C digital communications bus. The prototyping area also has 45 unconnected holes that are used for breadboard of circuitry. See Figure 3.   The MIB510 interface board (see Figure 4) is a multipurpose interface board used with the MicaZ. It supplies power to the devices through an external power adapter option, and provides an interface for a RS-232 mote serial port and reprogramming port. The MIB510 has an on-board in-system processor (ISP) to program the motes. Code is downloaded to the ISP through the RS-232 serial port. The ISP programs the code into the mote. The ISP and the mote share the same serial port. The ISP runs at a fixed baud rate of 115.2 kbaud. The ISP continually monitors incoming serial packets for a special multibyte pattern. Once this pattern is detected, it disables the mote's serial RX and TX (two legs), then takes control of the serial port.
The SRF02 (see Figure 5) is a single transducer ultrasonic range sensor. It features both I2C and a serial interfaces. I2C interface is used in this project. We use only 8 sensors in the testbed. New commands in the SRF02 include the ability to send an ultrasonic burst on its own without a reception cycle and the ability to perform a reception cycle without the preceding burst. SRF02's minimum measurement range is around 15 cm (6 inches). This sensor has a detection angle of 15 degrees and a maximum range of 6 m. The developed target tracking system, see Figures 1 and 6, is made up of 8 ultrasonic sensor nodes. These 8 ultrasonic sensors arelocated along the edge of the area, respectively, with coordinates (200, 0), (250, 170), (50, 300), (0, 110), (100, 0), (250, 60), (150, 300), and (0, 230). The orientations of the sensors (clockwise from the positive -axis) are, respectively, 65 ∘ , 90 ∘ , 50 ∘ , 75 ∘ , 100 ∘ , 110 ∘ , 90 ∘ , and 120 ∘ such that the sound waves are not reflected from nearby walls/obstacles. Each node is allocated with an ID number and an XY coordinate. Their locations are shown in Figure 1 to cover a monitoring area of 2.5 m × 3.0 m. The tracking target is a human. A MicaZ mote will be attached to each sensor node.
On the base station, a laptop is connected to the network through a MicaZ mote for receiving data packets via USB connection. Figure 6 shows the tracking system deployed in the testbed. Upon receiving an initial time synchronizing beacon from processing mote, all sensor nodes will initialize their starting time for sensor nodes. These sensor nodes will broadcast their sensor readings with one sensor reading at a time to the processing mote to avoid sensors' interference. The processing mote will also program the default measurement for each sensor.
The real-time data is collected from a human who is moving around within the sensor coverage area of the testbed.  The sensor selection scheme is performed during the data collection process. In order to simplify the sensor selection algorithm, we selected one sensor at each time step in the experiments. The data collected is run by UKF filter-based tracking approach proposed in Section 2, and we compared the experimental results with the method in [13]. Figure 7 to Figure 10 shows the comparison of the result with UKF and EKF, respectively. We can see that the result from UKF is better than the results from EKF in the real testbed.
International Journal of Distributed Sensor Networks

Conclusions
This paper presents a UKF filter-based adaptive sensor scheduling scheme for human tracking in wireless sensor networks. It uses cheap range sensor nodes in wireless sensor networks by jointly selecting the next tasking sensor and determining the sampling interval based on predicted tracking accuracy and tracking cost under the UKF filter frame. Simulation results show that the new scheme can achieve significant energy efficiency without degrading the tracking accuracy. There are still many issues remaining for future study. Multistep, multisensor selection based adaptive sensor scheduling and sensor scheduling for multitarget tracking are both challenging problems for further investigations.