  This article describes the design and development of a system for remote
indoor 3D monitoring using an undetermined number of Microsoft(R) Kinect
sensors. In the proposed client-server system, the Kinect cameras can be
connected to different computers, addressing this way the hardware limitation
of one sensor per USB controller. The reason behind this limitation is the high
bandwidth needed by the sensor, which becomes also an issue for the distributed
system TCP/IP communications. Since traffic volume is too high, 3D data has to
be compressed before it can be sent over the network. The solution consists in
selfcoding the Kinect data into RGB images and then using a standard multimedia
codec to compress color maps. Information from different sources is collected
into a central client computer, where point clouds are transformed to
reconstruct the scene in 3D. An algorithm is proposed to merge the skeletons
detected locally by each Kinect conveniently, so that monitoring of people is
robust to self and inter-user occlusions. Final skeletons are labeled and
trajectories of every joint can be saved for event reconstruction or further
analysis.
