Human Posture Estimation using Visual Information

时间:2022-09-19 11:36:31

Abstract:Human-robot cooperation is one of the central research issues in robotics.All kinds of sensors will be used since the robot should understand human’s intention.This article will focus on the human posture estimation by using Microsoft Kinect.The visual Information from Kinect can be acquired and used to extract the human skeletal information and further,calculate the human posture.The experiment results have been compared with a Qualisys system,which has been proved quite precisely.

Keywords:Human Posture Estimation;Kinect;Skeletal tracking;ROS

1.Introduction

A robot could provide physical assistance to an assembly line worker or transport an object from its initial position to its specified destination[1].A common task is the joint manipulation of a rigid object under environmental constraints.In this paper,a simple task has been suggested and accomplished by the human-robot team.The task here is to move a heavy desk from an initial position to the desired position.Furthermore,we aim at satisfying the comfort of human position.In this situation,a real-time estimation of the human posture needs to be implemented and we used the Kinect sensor in the Robot Operation System(ROS).

2.Experiment Approach

In this experiment,arm posture are tracked and measured in a bulky object(desk)manipulation task.In this specific manipulation task,the situation is depicted in Fig.1.

Figure 1 Comfortable arm posture for a cooperative task

If we consider moving a bulky object(desk),here we define a vector of two parameters as follows to represent the arm posture.The twist angle β(Figure 2)is the angel between arm and the vertical line of the object rim and it shows the intention of the human’s direction.During the movement of the object,a positive β means the desk should go right and contrarily a negative β implies a opposite direction.

The distance d between wrist and shoulder,is defined from the aspect of human comfort.No matter the distance is longer or shorter than the normal comfortable one,robot should give some reactions to make sure that human is in a comfortable situation.

Figure2 Coordinate system and parameter definition

We will define the angle β by using the coordinates of right hand and shoulder.Firstly,the coordinate system are defined as follows.

The twist angle β is calculated as:

And the distance d:

Where xshoulder and yhoulder are the x,y coordinates of human’s shoulder and xhand and yhand are the x,y coordinates of human’s right hand.

When we get these two values,the vector[β,d]T will be used as our human posture definition.Humans are assumed to conduct the task using an optimized arm posture.But the comfortable posture is not the same for everyone.In this work,a comfortable posture has been defined as a vector of zero degree and 50 centimeter:

3.Experiment Environment

In the past,human posture recognition has been based on video-based techniques.Unlikely to the traditional way,Kinect sensor will be used here to capture the human posture.Kinect is a line of motion sensing input devices by Microsoft for Xbox 360 and Windows PCs[10].Based on the high capability of skeleton tracking,it has been used to gesture extracting and analyzing.For the Kinect,the input data are streams of vectors of twenty body-joint positions obtained by standard Application Programming Interface(API)of the Kinect Software Development Kit(SDK)[3].20 joints of human body captured by Kinect sensor is shown below.

Figure 3 Twenty body joints positions[5]and Skeleton tracking by Kinect

Consider the further experiment in real Robot,all the experiment was done in Robot Operation System(ROS).The Robot Operating System is a set of software libraries and tools that can build robot applications.It is open source and provides lots of hardware abstraction,device drivers,libraries,visualizers,message-passing,package management,and more[6].As the eyes of the Robot,the OpenNI of Kinect can been also ported to ROS.

4.Results

Different tests have been accomplished and the results are compared to the Qualisys system,which are used as a ground truth.

The first one is continuously variable twist angle β with a constant wrist-shoulder distance.

Figure 4 Variation of twist angle in slow and quick move

According to Fig.4,we can see that the twist angle has been changed from minus 90 degree to 90 degree with a relative constant wrist shoulder distance.The blue line comes from the results of Kinect and the red one represent the homologous data from Qualisys paring to the good performance of twist angel,the wrist shoulder distance by Kinect contains a really high noise and there is a quite obvious absolute error in the distance calculation by Kinect.

A contrary test is with a constant twist angle but different distance.

Figure 5 Variation of distance

As we can see from the Fig.5,the noise problem of Kinect by distance calculation turns better,but the absolute error is still there.So a compensation of distance should be given when we use the Kinect to track the arm posture.

The last test is a combine of rotation and translation.The Fig.13 shows that the performance of angle and distance tracking seems better than the previous experiments.When the twist angle is over 90 degree,the results by Kinect is limited because of the limitation of angle calculate equation.Considering that over 90 degree is the extreme cases of the comfortable arm posture,this results can be accepted.

Figure 6 Variation of twist angle and distance

5.Conclusion

From the figures of the results we can see that Kinect can be used as Visual inputs of Robot,but the noise of arm posture tracking by Kinect is regardless,particularly by the measurement of the distance.Moreover,the accuracy of Kinect is affected by many factors.For example,the lighting conditions,the measurement range of the device[2],the Obstacles between the human and Kinect.In this experiment we also found that the Kinect has a low performance when people or human joint are directly perpendicular to the Kinect front plane.Nevertheless,Kinect can be used as a precise sensor.Except of the low cost of Kinect,it is also unrestricted of the experiment sites compared to Qualisys.

In future work,it will be important to do the data filtering due to the high noise of Kinect,especially in the distance tracking.The noise model has been studied by using fuzzy inference[4].Additionally we have to concern about the human motion constraints.Moreover,the skeleton tracking algorithm can be optimized,which play a key role in the human posture tracking experiment.

References

[1]Martin Lawitzky,Alexander Moertl,Sandra Hirche.Load Sharing in Human-Robot Cooperative Manipulation.

[2]Mark A.Livingston,Jay Sebastian,Zhuming Ai,Jonathan W.Decker.Performance Measurements for the Microsoft Kinect Skeleton.

[3]Marc Gowing,Amin Ahmadi,Francois Destelle,David Monaghan,Noel O’Connor,Kieran Moran,et al.Kinect vs.Low-cost Inertial Sensing For Gesture Recognition.In:The 20th Anniversary International Conference on MultiMedia Modeling,2013

[4]Stylianos Asteriadis,Anargyros Chatzitofis,Dimitrios Zarpalas,et al.Estimating human motion from multiple Kinect Sensors

[5]Tracking Users with Kinect Skeletal Tracking.Available:http:///en-us/library/jj131025.aspx

[6]ROS.Available:http:///.

上一篇:一种智能防雨装置 下一篇:浅析校园网组网建设