[IEEE 2010 2nd International Conference on Advanced Computing (ICoAC) - Chennai, India...
Transcript of [IEEE 2010 2nd International Conference on Advanced Computing (ICoAC) - Chennai, India...
978-1-61284-260-8/10/$26.00 © 2010 IEEE 60 ICoAC 2010
Person Tracking Using Kalman Filter in Wireless Sensor Network
*Vaidehi.V, *S.Vasuhi, *K. Sri Ganesh, *C. Theanammai, , *Naresh Babu N T, *N Uthiravel, **P. Balamuralidhar, **Grish Chandra
*Parallel Processing Lab, Department of Electronics Engineering,
*Madras Institute of Technology, Anna University,
**TCS, Bangalore, India, *[email protected],[email protected]
Abstract: Wireless Sensor Network (WSN) is an emerging
technology for person detection and tracking. This paper
proposes a scheme for detecting and tracking a person using
WSN. In an organization where employees possess unique
Radio Frequency Identification (RFID) tags, a WSN node
detects the presence of a person using a PIR sensor and the
identity of the person is obtained from the RFID tag. The
accuracy of tracking a person in a WSN is limited due to the
sensor’s detection capabilities. Also, the sensor packets may be
lost in the wireless medium. Moreover, the location information
in the sensor is not accurate indoors. This paper proposes a
multi-sensor and Kalman Filter (KF) based tracking scheme in
a WSN oblivious to localization errors, errors due to missing
events caused by failure of nodes etc. The accuracy of the
proposed tracking has been validated for different scenarios.
Key words: Wireless Sensor Network (WSN), person detection,
tracking, Kalman Filter (KF).
I. INTRODUCTION
A WSN provides the end user a better understanding of the environment in an intelligent way. Location detection and tracking of a moving person using WSN constitute a popular area of research. Due to the rapid development in sensor technology, of late, wireless multimedia sensor networks (WMSN) are used for tracking [1 10], home monitoring and environment monitoring [11]. Several solutions for person detection and tracking have been proposed in literature [1, 10, 12, 13]. The proposed solutions in the existing literature use sensors like acoustic, image and PIR sensors for person detection; tracking is achieved using techniques like particle filter, signatures, mobile agents and Kalman Filter (KF). Although PIR sensor senses the presence of an object, it fails to give the count of the number of objects, classify the type of object as human or non-human. Hence, in addition to the PIR sensor, another sensor is required to identify the person for tracking applications.
Generally, RFID technology is used in automated tracking and it provides the ability to read multiple tags simultaneously. RFID has basically three components, viz., a reader, an antenna and a tag. A typical reader contains a radio frequency module (a transmitter and a receiver), a control unit and an interface to forward the data, which is placed in a sensor node. RFIDs provide superior performance in industries and office buildings with many corridors and rooms, where real-time tracking is mandated. RFIDs have
good signal range and are cheaper, thus making deployment cost effective. In order to track a person using WSN in an indoor/outdoor environment, an RFID sensor is the best choice as a tag equipped with such a sensor is expected to be worn by every authenticated person in an organization.
The person may be detected by more than one sensor or
may not be sensed even by a single sensor. Hence, there is a need for logic to predict the missing events and the future position of a person based on the past dynamics. Kalman filter (KF) based target tracking in WSN is a topic of recent research [1, 4, 5]. Tracking a moving person in a WSN as proposed by Umeshbabu et al [1] uses Time Difference of Arrival (TDoA) for distance estimation and KF for track estimation.
This paper proposes a novel scheme for person tracking in WSN using the combination of PIR and RFID sensors [2]. Sensor nodes are spread throughout the area either randomly or uniformly, to detect and track objects. In general, an RFID sensor will be in sleep mode and becomes active upon the entry of a person into the coverage area. The node contains a PIR sensor, an RFID reader, a GPS (Global Positioning System) receiver, a timer and an ARM processor as shown in Fig.1. An RFID-Tag (RFID-T) which contains the unique employee Id is used for tracking the person. The timer provides the sensed timing information of the person and the GPS receiver provides the location of the deployed node. The RFID-T information is read by the RFID-Reader (RFID-R) and the sensor location information is obtained from the GPS-Receiver (GPS-R). RFID-R, GPS-R and PIR sensor are integrated with an ARM processor. The person is detected by the PIR sensor and the location of the sensor gives the current location of the person detected by that sensor. A KF [3] is used to predict the next position of the person using the current location coordinates and time information. The error in the sensor location measurement is filtered using the KF.
Sensor nodes are stationary and they identify the movement of the person who has a valid RFID tag within their coverage area. When several people are close to the sensor node, the RFID reader may not interpret the tag correctly. Hence, there might be an ambiguity in sensing the location of the person. Also, when more than one sensor detects the same RFID tag, there is an ambiguity in
978-1-61284-260-8/10/$26.00 © 2010 IEEE 61 ICoAC 2010
determining the location of the person. The KF based prediction scheme proposed in this paper overcomes the above mentioned problems.
Fig.1 Components of the sensor node
This paper is organized as follows: Section II deals with the Kalman Filter (KF) tracking model. Section III presents the person tracking application using Kalman filter in WSN, and section IV presents the simulation results. Section V draws the conclusion.
II. TRACKING KALMAN FILTER
Kalman filter is used for filtering the measurement noise, and predict the next position of the person using system model. The KF uses the current position of the person to predict his next position for a uniform sampling period. The sensor deployment may be uniform or random. The KF consists of two models namely system model [1] and measurement model.
A. System model:
This model provides the present state of the system at any time step,
1*
k k kX A X w
−= + (1)
A- Represents the state transition matrix.
1
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0*
0 0 0 1 0 0
0 0 0 0 1 0
0 0 0 0 0 1
p p
p p
p p
k
v v
v v
v vk k
x xT
y yT
Tz zw
x x
y y
z z−
= +
(2)
The state vector Xk has positional components in x, y & z coordinates represented as xp, yp & zp and their velocity counterparts, represented as xv, yv & zv respectively. wk is the process noise with covariance Q, where
'{ * }k k
Q E w w= (3)
and T is the sampling time duration.
When the person is in motion, his movement is modeled using Newtonian mechanics and the state vector is initialized. Any unexpected movement or deviation (maneuver) in this movement is modeled as a zero mean Gaussian system noise with covariance Q.
B. Measurement model:
*k k k
Z H X v= + (4)
where, k
Z - Actual measurement at time k
1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0
H
=
kX - State vector at time k
kv - Measurement noise whose covariance is Rc, where
'{ * }k kc
R E v v= (5)
kZ - Position of the sensor node which has detected the
presence of a target.
The measurement error is modeled as the deviation in measurement which is the maximum distance at which a person is being sensed by the RFID reader. The location measurement is obtained from the built-in GPS receiver present in the sensor node. If the GPS signal is not received indoors, the location of the sensor node is obtained using the triangulation method. When the WSN deployment scenario is known apriori, the location information is obtained using localization method. During localization, the sensor ID, its location in Latitude, Longitude and Altitude (LLA) coordinates or Cartesian coordinates x, y and z are saved in the database.
Kalman filter consists of two stages - viz. the time update and measurement update stage. The number of KF used for tracking depends on the number of persons being detected and tracked. The Kalman Filter time update equation for predicting the next position of the person for a given position at time t is given by:
C. Time update:
The predicted state vector is
/ 1 1/ 1*k k k k
X A X− − −
= (6)
The predicted error covariance is:
'
/ 1 1 / 1* *k k k k cP A P A Q− − −
= + (7)
Innovation (or) residual error is given by:
/ 1( )k k k
e Z HX−
= − (8)
978-1-61284-260-8/10/$26.00 © 2010 IEEE 62 ICoAC 2010
D. Measurement update:
Kalman gain is given by: ' ' 1
/ 1 / 1* [ ]k k k k k cK P H H P H R−
− −= + (9)
Filtered state vector is given by:
/ / 1 / 1( )k k k k k k k k
X X K Z H X− −
= + − (10)
Filter error covariance is given by:
/ / 1( )k k k k k
P I K H P−
= − (11)
Location information in the packet is sent to the KF and
the filter is used to estimate the next position of the person and minimize the error in the measurement. The KF state vector X is initialized using the person’s current position in x, y and z coordinates. Using successive positions of the same RFID tag, the distance travelled is obtained. Using this distance and time difference, the velocity of the person in x, y, z coordinates is initialized. Using the current position and velocity, the next position is predicted and the predicted error covariance is estimated. Using this information, the path followed by a person is obtained in terms of set of node ids. If the path is not in the set of predefined path, then, the time taken for the person to reach the privileged area/prohibited area is estimated.
For every packet having a specific “RFID Tag”, the error in the prediction is found. Using Kalman gain and error, filtered state vector and filtered error covariance values are obtained. Using these filtered values, the next position of the person is predicted. A person may change his direction, move with a different velocity or may be stationary for a long time. Additionally in WSN, packets get lost due to collisions and buffer limitations. In such cases, KF will be initialized with the available data.
A circular gate is formed around the predicted position with a RFID reader coverage distance as the radius of this gate. Sensors which are placed within this gate are triggered and expected to detect the person. Sometimes, due to random deployment of the sensors in the network and arbitrary movement of the person, for all the predicted position of KF, sensors may not be available in that location. This is considered to be a missed detection and the KF proceeds ahead to the next time step for estimating the next position of the person with its predicted value. As multiple sensors may detect an event, the mean distance between the sensor nodes is taken as the current position of the person. Due to a change in the person’s position, sensors outside the gate may detect this event and the KF predicts the next position of the person using the current measurement.
III. PERSON TRACKING USING KALMAN FILTER IN WSN
The sensors are deployed in the area of interest. During initialization phase, the sensor id, the location information, and connectivity details are sent to the server via a sink node. Thus node deployment details can be presented to the GUI.
A database is maintained in the authentication server for all the authenticated people working in the organization. The database contains the information such as employee name, id (RFID no), designation, access privileges and possible paths to reach the desired destination. The actual location of the nodes (which is stored in the database) and the location information obtained through initialization phase are compared to find the error in location measurement. When a person is in motion, the PIR sensor senses the presence of a person. The nodes in that path detect the movement of the person and send the packet to the sink. Each sensor’s deployment details in the database give the correct location of the sensor. The received packets in the sink also contain the location information. This redundancy is intentionally built-in to facilitate the design to minimize the measurement error and also provide upgradeability for random deployment. The sensor in WSN detects an event (person movement) and generates a packet in the following format.
Table.1 WSN Packet format
Sensor node id
Destination id
Xm Ym Zm Time RFID tag
No
Table.2 Database format
Emp. Name
Emp. ID (RFID
No) Designation
Access privileges
Possible paths
The WSN packet format used for person tracking is shown in Table 1. In this figure, xm, ym & zm fields represent the location of the sensor node. The “Time” field gives the time at which the event was sensed, which is obtained from the universal timer. The RFID Tag gives the identity of the person sensed by the node. The location information from the sensor and the RFID tag value are used to get the current location of the person. Using two different locations of the same RFID tag at two consecutive time instants, the velocity of the particular person wearing the tag is computed. Using this velocity information, Kalman filter predicts the next possible location of the person. For every authenticated person, the destination is known. The possible paths (limited to 3 for simplicity) to reach the destination are assumed to be known apriori. The path of the person as predicted by KF is compared with the possible paths already defined for him. For any deviation between the predefined paths and KF predicted path, the person is identified as an intruder and appropriate actions are to be taken as discussed in Semantic Intrusion detection using Complex Event Processing (CEP) [9].
A. Functions performed in the sensor node:
When a person is sensed by PIR, the corresponding RFID information is read in the RFID reader. The time consumed in person detection is saved. The time taken for person detection and RFID information are ported into the payload field of the sensor packet. Location of the sensor is obtained (through a GPS receiver or via localization procedure) [6, 7, 8]. The packet is generated with an
978-1-61284-260-8/10/$26.00 © 2010 IEEE 63 ICoAC 2010
appropriate sequence number and transmitted through zigbee protocol.
Fig.2 Kalman filter based tracking in WSN
The functional blocks needed for simulating the Kalman filter based tracking in WSN are shown in Fig.2.
KF based Tracking module consists of 5 steps:
1. Creation of sensor deployment scenario. 2. Generation of target(s) movements. 3. Finding the possible paths for the target movement (in
regular deployment-in door application). 4. Event generation (detection of target(s) movement by
sensor node(s)) 5. Predicting the future position(s) of the target(s).
Functions of the KF tracker:
1. Receive the WSN packets.
2. Extract the sensor ID (node ID), location, RFID tag value (person ID), and time from WSN packet.
3. Calculate velocity & direction of movement of the person using two successive WSN packets having same RFID.
4. Determine the expected location of the person using Kalman filter system model.
5. Determine the sensor nodes IDs in the expected location with an appropriate Gate size.
Time update stage
• Get the next packets having the same RFID. • Extract the source ID (sensor ID). • Check whether this source ID is contained in the
already predicted sensor ID’s Gate. • If not, determine the velocity and direction from the
present and next successive packet and call “Possible Intruder-known target ID”, marking this event for CEP (Complex Event Processing).
• If RFID tag is unknown, call “Intruder- unknown target ID” and mark this event for CEP.
Measurement update
• Extract the sensor ID and its location information (obtained through GPS/Localization algorithm) from WSN packet [8].
• Compare this location information with the already stored WSN deployment location information available in the database.
• Calculate the measurement error and the Kalman gain
• Perform measurement updates to minimize the error In this paper, WSN node deployment is considered to
be regular. However, it can also be done randomly. Nodes are considered to be equidistant from one another (or) in a grid like structure. For simulation studies, the deployment scenario with 100 nodes is considered as shown in Fig.3. The path taken by the person is considered to be a straight line as shown Fig 3. The initial velocity of the target is considered as 0.5m/s.
Every sensor has a sensing range of about 0.5m. Using the list of sensors used in detecting the movement of the person using RFID tag, it is possible to find the path taken by the person to reach the destination.
IV. RESULTS & DISCUSSION:
It is assumed that the sensors are deployed in the available paths connecting the different rooms of a building. A person is expected to move in any one of the existing paths in a floor. This movement can be modeled using Newtonian mechanics. The movement of a person may be straight line, circular or random. Different kinds of movement viz, slow, medium and fast are simulated as target traffic to generate samples at regular time intervals. These samples are also corrupted by noise.
0 20 40 60 80 1000
10
20
30
40
50
60
70
80
90
x (meters)
y (m
ete
rs)
* � Sensor node Red line� Filtered position by KF
Blue line� Predicted position by KF Green line�Measured position
Black line � Target’s true position Fig. 3 Node deployment and target movement
Fig 3 shows the simulation of a deployment scenario having 100 sensor nodes in a grid structure. The scenario depicts a person moving in a straight line. The simulation was carried out in Matlab.
Fig 3 presents the results of Kalman filter output for straight line path. Fig 4 presents the error plot for straight line movement.
978-1-61284-260-8/10/$26.00 © 2010 IEEE 64 ICoAC 2010
Fig 5 presents the Kalman Filter tracking results of circular movement of a person. Fig 6 presents the error plot for circular movement.
1 2 3 4 5 6 7 80
1
2
3
4
5
6
Time
Err
or
Ma
gn
itu
de
Error Plots
(xm-xp)
(ym-yp)
(zm-zp)
Fig 4 Error plot for Straight line movement
0 10 20 30 40 50 60 70 80 900
10
20
30
40
50
60
70
80
90
100
x (meters)
y (
me
ters
)
Fig 5 Kalman Filter output for Circular movement
0 2 4 6 8 10 12 140
0.5
1
1.5
2
2.5
3
3.5
4
4.5
Time
Err
or
Ma
gn
itu
de
Error Plots
(xm-xp)
(ym-yp)
(zm-zp)
Fig 6 Error plot for Circular movement
The Kalman Filter tracking results are compared with particle filter and the results shown in Fig 7 and Fig 8. It can be seen that the error in Kalman prediction is similar to particle filter based prediction.
0 10 20 30 40 50 60 70 80 90 1000
10
20
30
40
50
60
70
80
90
100
x (meters)
y (
mete
rs)
Fig 7 Kalman filter and Particle filter output for line movement
Blue Line� Actual path Red Line� Kalman filter output Green Line� Particle filter output
0 1 2 3 4 5 6 7 80
1
2
3
4
5
6
Time
Err
or
Magnitude
Error Plots
(xm-xp)
(ym-yp)
(zm-zp)
Fig 8 Error comparison plot of Kalman filter and particle filter
Red dot line --> Kalman filter x coordinate error Red line --> Particle filter x coordinate error Blue dot line --> Kalman filter y coordinate error Blue line -->Particle filter y coordinate error
V. CONCLUSION
This paper proposes a Kalman filter-based person tracking scheme in WSN which is a module in the person detection and tracking project. The movement of the person
978-1-61284-260-8/10/$26.00 © 2010 IEEE 65 ICoAC 2010
is detected by the PIR sensor and the position of the person is obtained using RFID reader. Kalman filter predicts the next position of the person. The proposed scheme has been validated using simulation studies. Research is in progress to integrate the RFID, PIR sensor data with an imaging sensor to detect and identify an intruder.
ACKNOWLEDGEMENT The authors acknowledge Tata Consultancy Services, Bangalore, for sponsoring this project.
REFERENCES
1. Umesh Babu S, Kumar C.S., Raja Kumar R.V., “Sensor
Networks for Tracking a Moving Object using Kalman
Filtering”, IEEE, International Conference on Industrial
Technology, (ICIT) 15-17 Dec. 2006 IEEE 1-4244-0726-5/06
pp-1077-1082.
2. Lionel M. Ni, Yunhao Liu, Yiu Cho Lau, Abhishek P.Patil,
“LANDMARC:Indoor Location Sensing Using Active RFID,
“Proceedings of the First IEEE International Conference on
Pervasive Computing and Communications, pp.407-415,
March 2003.
3. Blackman S. Multiple-Target Tracking with Radar
Applications. Norwood: Artech House. PP.26-27. 1986.
4. Qadi A. Object Tracking Using Sensor Networks
[EB/OL].http://cse.unl.edu/~sdas/WSNL/report.pdf. Ala Qadi's
Report on "Object Tracking Using Sensor Networks”
Computer science & Engineering, university of Nebraska –
Lincoln 2007.
5. Mahdy Nabaee, Ali Pooyafard, Ali Olfat “Enhanced Object
Tracking with Received Signal Strength using Kalman Filter”
International Symposium on Telecommunications, pp. 318–
323, 2008.
6. Global Positioning System Overview, Peter H. Dana,
Department of Geography, University of Texas at Austin, USA
2000.
7. http://www.colorado.edu/geography/gcraft/notes/gps/gps_f.ht
ml.
8. P.T.V.Bhuvaneswari, V.Vaidehi and M.Agnes Saranya, “An
Efficient Distance Estimation Algorithm for Indoor Sensor
Network”, International Journal of Computer Theory and
Engineering (IJCTE), International Association of Computer
Science and Information Technology (IACSIT) 2010.
9. R.Bharghavi, V.Vaidehi, P.T.V. Bhuvanes- wari,
Balamuralidhar and Grisih Chandra, "Complex Event
Processing for Object Tracking in Wireless Sensor Networks",
in International workshop on Optimization-based Data Mining
and Web Intelligence (ODMWI) IEEE/WIC/ACM, WI-IAT
2010, Aug 31-Sept3, 2010, Toronto, Canada.
10. Umesh Babu S, Kumar C.S., Raja Kumar R.V, “Modelling and
Simulation of a Sensor Network for Tracking a Moving
Object”, Third International Conference on Intelligent Sensing
and Information Processing (ICISIP), pp 201-206, 2005.
11. I.F.Akyildiz, W.Su, Y.Sankarasubramaniam, et al. A Survey
on sensor networks [J] IEEE Communications Magazine,
2002, 40(8): 102-114.
12. Yu-Chee Tseng, Sheng-Po Kuo, Hung-Wei Lee, and Chi-Fu
Huang,"Location Tracking in a Wireless Sensor Network by
Mobile Agents and Its Data Fusion Strategies" The Computer
Journal-2004, Vol. 47(4), pp. 448-460.
13. Nadeem Ahmed, Yifei Dong,Travis Bessell, Mark Rutten,
"Detection and Tracking Using Wireless Sensor Networks",
The 5th ACM Conference on Embedded Networked Sensor
Systems (SenSys'07), November 6–9, 2007, Sydney, Australia.