Learning Social Affordance Grammar from Videos: Transferring Human Interactions to Human-Robot Interactions

03/01/2017 ∙ by Tianmin Shu, et al. ∙ Indiana University Bloomington FUDAN University 0

In this paper, we present a general framework for learning social affordance grammar as a spatiotemporal AND-OR graph (ST-AOG) from RGB-D videos of human interactions, and transfer the grammar to humanoids to enable a real-time motion inference for human-robot interaction (HRI). Based on Gibbs sampling, our weakly supervised grammar learning can automatically construct a hierarchical representation of an interaction with long-term joint sub-tasks of both agents and short term atomic actions of individual agents. Based on a new RGB-D video dataset with rich instances of human interactions, our experiments of Baxter simulation, human evaluation, and real Baxter test demonstrate that the model learned from limited training data successfully generates human-like behaviors in unseen scenarios and outperforms both baselines.



There are no comments yet.


page 1

page 7

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

With the recent progress in robotics, robots now have been able to perform many complex tasks for humans. As a result, it is inevitable that the robots will interact with humans in various social situations, such as service robots taking care of elderly people, robot co-workers collaborating with humans in a workplace, or simply a robot navigating through human crowds. Similar to human social interactions, human-robot interactions (HRI) must also follow certain social etiquette or social norms, in order to make humans comfortable.

Conventional robot task planing only consider the effectiveness and efficiency of performing specific tasks, such as manufacturing, cleaning, and other activities that do not consider human values or preference. However, as J. J. Gibson pointed out, “The richest and most elaborate affordances of the environment are provided by … other people.” [1]. A robot should reason the intention and feeling of humans who are near it and only perform socially appropriate actions while trying to achieve its own goal.

Therefore, in this paper, we focus on learning social affordances in human daily activities, namely action possibilities following basic social norms, from human interaction videos. More specifically, we are interested in the following three general types of human-robot interactions that we believe are most dominant interactions for robots: i) social etiquette, e.g., greeting, ii) collaboration, e.g., handing over objects, and iii) helping, e.g., pulling up a person who falls down. In addition, we also aim at developing a real-time motion inference to enable natural human-robot interactions by transferring the social affordance grammar.

To this end, we propose a new representation for social affordances, i.e., social affordance grammar as a spatiotemporal AND-OR graph (ST-AOG), which encodes both important latent sub-goals for a complex interaction and the fine grained motion grounding such as human body gestures and facing directions. We learn the grammar from RGB-D videos of human interactions as Fig. 1 depicts. Our grammar model also enables short-term motion generation (e.g., raising an arm) for each agent independently while providing long-term spatiotemporal relations between two agents as sub-goals to achieve for both of them (e.g., holding the right hand of each other), which simultaneously maximizes the flexibly of our motion inference (single agent action) and grasps the most important aspects of the intended human-robot interactions (sub-goals in joint tasks).

Fig. 1: The framework of our approach.


  1. A general framework for weakly supervised learning of social affordance grammar as a ST-AOG from videos;

  2. A real-time motion inference based on the ST-AOG for transferring human interactions to HRI.

Ii Related Work

Affordances. In the existing affordance research, the domain is usually limited to object affordances [2, 3, 4, 5, 6, 7, 8, 9], e.g., possible manipulations of objects, and indoor scene affordances [10, 11], e.g., walkable or standable surface, where social interactions are not considered. [12] is the first to propose a social affordance representation for HRI. However, it could only synthesize human skeletons rather than control a real robot, and did not have the ability to generalize the interactions to unseen scenarios. We are also interested in learning social affordance knowledge, but emphasize on transferring such knowledge to a humanoid in a more flexible setting.

Structural representation of human activities. In recent years, several structural representations of human activities for the recognition purposes have been proposed for human action recognition [13, 14, 15, 16] and for group activity recognition [17, 18, 19, 20, 21, 22, 23]. There also have been studies of robot learning of grammar models [24, 25, 26], but they were not aimed for HRI.

Social norms learning for robots. Although there are previous works on learning social norms from human demonstrations aimed for robot planning, they mostly focused on relatively simple social scenarios, such as navigation [27, 28]. On the contrary, we are learning social affordances as a type of social norm knowledge for much more complex interactions, which involve the whole body movements.

Iii Framework Overview

The framework of our approach illustrated in Fig. 1 can be outlined as follows:

Human videos. We collect RGB-D videos of human interactions, where human skeletons were extracted by Kinect. We use the noisy skeletons of these interactions as the input for the affordance learning.

Social affordance grammar learning. Based on the skeletons from human interaction videos, we design a Gibbs sampling based weakly supervised learning method to construct a ST-AOG grammar as the representation of social affordances for each interaction category.

Real-Time motion inference. For transferring human interactions to human-robot interactions, we propose a real-time motion inference algorithm by sampling parse graphs as hierarchical plans from the learned ST-AOG and generate human-like motion accordingly for a humanoid to interact with a human agent.

Iv Representation

Fig. 2: Social affordance grammar as a ST-AOG.
Fig. 3: (a) The joint angles of the arm of a Baxter robot (from http://sdk.rethinkrobotics.com/wiki/Arms), which are directly mapped to a human’s arm (b). The additional angles (e.g., ) can be either computed by inverse kinematics or set to a constant value.
Fig. 4: A sequence of parse graphs in a shaking hands interaction, which yields the temporal parsing of joint sub-tasks and atomic actions depicted by the colored bars (colors indicate the labels of joint sub-tasks or atomic actions).

We represent the social affordance knowledge as stochastic context sensitive grammar using a spatiotemporal AND-OR graph (ST-AOG), as shown in Fig. 2

. The key idea is to model the joint planning of two agents on top of independent action modeling of individual agents. Following the Theory of Mind (ToM) framework, a ST-AOG defines the grammar of possible robotic actions (agent 2) at a specific moment given the observation of agent 1’s actions as the belief, the joint sub-tasks as sub-goals, and the interaction category as the overall goal.

We first define a few dictionaries for the grammar model encoding the key elements in the social affordances. We constrain the human-robot interactions in a set of categories . Dictionaries of arm motion attributes and relation attributes are specified and shared across all types of interactions. Also, for each category , there are dictionaries of latent joint sub-tasks , latent atomic actions of agent , , where are shared by different joint sub-tasks within . Note that joint sub-tasks and atomic actions are not predefined labels but rather latent symbolic concepts mined from human activity videos, which boosts the flexibility of our model and requires much less human annotation efforts.

There are several types of nodes in our ST-AOG: An AND node defines a production rule that forms a composition of nodes; an OR node indicates stochastic switching among lower-level nodes; the motion leaf nodes show the observation of agents’ motion and their spatiotemporal relations; attribute leaf nodes provide semantics for the agent motion and spatiotemporal relations, which can greatly improve the robot’s behavior. In our model, we consider four arm motion attributes, i.e., moving left/right arm, static left/right arm, and the relation attributes include approaching and holding between two agents’ hands (possibly an object).

The edges

in the graph represent decomposition relations between nodes. At the top level, a given interaction category leads to a selection of joint sub-tasks as the sub-goal to achieve for the given moment. A joint sub-task further leads to the atomic action selection of two agents and can also be bundled with relation attributes. An atomic action encodes a consistent arm motion pattern, which may imply some arm motion attributes of agent 2 for the purpose of motion inference. Some of the nodes in the dashed box are connected representing the “followed by” relations between joint sub-tasks or atomic actions with certain transition probabilities.

The motion grounding is designed for motion transfer from a human to a humanoid, which entails social etiquette such as proper standing distances and body gestures. As shown in Fig. 3, the pose of a human arm at time can be conveniently mapped to a robot arm by four degrees:

. The wrist angles are not considered due to the unreliable hand gesture estimation from Kinect. Thus, in an interaction whose length is

, there is a sequence of joint angles, i.e., for agent ’s limb , where stands for left arm and indicates right arm. Similarly the hand trajectories are also considered in order to have a precise control of the robot’s hands. We model the spatiotemporal relations with agent 2’s the relative facing directions, , and relative base positions (in the top-down view), , by setting the facing directions and base joint positions of agent 1 as references respectively. We also consider the distances between two agents’ hands, ( is the limb of agent 1 and is the limb of agent 2) for the relations. The distances between agent 2’s hands and an object can be included if an object is involved. For an interaction instance, we then define the action grounding of agent to be , and the relation grounding of both agents to be , where , , and . Hence, the overall motion grounding is .

Finally, the ST-AOG of interactions is denoted by . At any time , we use a sub-graph of the ST-AOG, i.e., a parse graph , to represent the actions of individual agents (, ) as well as their joint sub-tasks () in an interaction . Note that the attributes are implicitly included in the parse graphs since they are bundled with labels of and .

For an interaction in , we may construct a sequence of parse graphs to explain it, which gives us three label sequences: , and . By merging the consecutive moments with the same label of joint sub-tasks or atomic actions, we obtain three types of temporal parsing, i.e., , , and for the joint sub-tasks and the atomic actions of two agents respectively, each of which specifies a series of consecutive time intervals where the joint sub-task or the atomic action remains the same in each interval. Hence, in , , , and for agent , , in . Fig. 4 shows an example of the temporal parsing from the parse graph sequence. Note the numbers of time intervals of these three types of temporal parsing, i.e., , , and , may be different. Such flexible temporal parsing allows us to model long-term temporal dependencies among atomic actions and joint sub-tasks.

V Probabilistic Model

We propose a probabilistic model for our social affordance grammar model.

Given the motion grounding,

, the posterior probability of a parse graph sequence

is defined as


Conditioned on the temporal parsing of atomic actions and joint sub-tasks, the likelihood terms model the arm motion and the relations respectively, whereas the parsing prior models the temporal dependencies and the concurrency among joint sub-tasks and atomic actions. We introduce these three terms in the following subsections.

V-a Arm Motion Likelihood

First, we define three types of basic potentials that are repeatedly used in the likelihood terms:

1) Orientation potential . This potential is a von Mises distribution of the orientation variable . If has multiple angular variables, e.g., the four joint angles , then the potential is the product of the von Mises distributions of these individual angular variables.

2) Three-dimensional motion potential . Assuming that spherical coordinate of is , the potential is characterized by three distributions, i.e., , where the first one is a Weibull distribution and the remaining are von Mises distributions.

3) Two-dimensional position potential

. We fit a bivariate Gaussian distribution for

in this potential.

For joint angles and hand positions in an atomic action, we are interested in their final statuses and change during the atomic action. Thus, for the limb of agent in the interval assigned with atomic action such that , , the arm motion likelihood


where and are the starting and ending moments of . Assuming independence between the arms, the arm motion likelihood for agent in is


and the arm motion likelihood for the entire interaction is


Finally, the overall arm motion likelihood is the product of two agents’ arm motion likelihood, i.e.,


V-B Relation Likelihood

Relation likelihood models the spatiotemporal patterns hidden in facing directions , base positions , and the distances between two agents’ hands during a joint sub-task. In a interval with the same joint sub-task label such that , , the relation likelihood is


where starts at and ends at .

Hence, the overall relation likelihood can be written as


V-C Parsing Prior

The prior of a sequence of parse graphs is defined by the following terms:


where the duration priors follow log-normal distributions and the remaining priors follow multinomial distributions.

Vi Learning

The proposed ST-AOG can be learned in a weakly supervised manner, where we only specify the generic dictionaries of attributes and the sizes of the dictionaries of joint sub-tasks and atomic actions for each interaction. Given training instances, , of an interaction category, where is the motion grounding of instance , the goal of learning is to find the optimal parsing graph sequence, , for each instance by maximizing the posterior probability defined in (1); then the ST-AOG is easily constructed based on the parse graphs.

It is intractable to search for the optimal parsing of atomic actions and joint sub-tasks simultaneously, which will take an exponential amount of time. Instead, we first 1) parse atomic actions for each agent independently and then 2) parse joint sub-tasks. Based on the likelihood distributions from the parsing results, we may 3) further obtain the implied attributes for each type of joint sub-tasks and atomic actions. We introduce the details in the rest of this section.

Fig. 5: The curves show how the joint angles of agent 2’s two arms change in an shaking hands interaction. The black dashed indicate the interval proposals from the detected turning points.
Fig. 6: The learned ST-AOG for the Shake Hands interaction (the motion grounding is not drawn in this figure due to the space limit). The numbers under AND nodes are the labels of joint sub-tasks or atomic actions. The edges between the atomic actions show the “followed by” temporal relations and their colors indicate which atomic actions are the edges’ starting point. Similarly, the joint sub-tasks are also connected by edges representing the temporal dependencies between them. There is an example of each atomic actions from our training data, where the skeletons are overlaid with colors from light to dark to reflect the temporal order. The attributes that are not bundled to any atomic action or joint sub-task are not shown here.

Vi-a Atomic Action Parsing

We expect the motion in an atomic action to be consistent. Since the arm motion is characterized by joint angles and hand positions, the velocities of joints and hand movements should remain the same in an atomic action. Following this intuition, we propose the time intervals for the atomic actions of an agent by detecting the turning points of the sequences of joint angles (see Fig. 5), which will naturally yields time intervals of atomic actions. To make the angles directly comparable, they are all normalized to the range of .

To detect such turning points, we introduce a entropy function for a sequence , i.e., , where is the location of interest and is the window size. To compute , we first count the histogram of the changes between consecutive elements, i.e., in the sub-sequence , and then is set to be the entropy of the histogram. By sliding windows with different sizes (), we may detect multiple locations with entropy that is higher than a given threshold. By non-maximum suppression, the turning points are robustly detected.

After obtaining the time intervals, we assign optimal atomic action labels to each interval by Gibbs sampling. At each iteration, we choose an interval and sample a new label for it based on the following probability:


Here, is the likelihood in (3), and based on the parsing prior in (8), the labeling prior is computed as


where and are the preceding and following atomic action labels in the adjacent intervals of . If either of them is absent, the corresponding probability is then set to be 1. For each new label assignment, the parameters of the related likelihood and prior distributions should be re-estimated. To ensure the distinctness between adjacent intervals, can not be the same labels of the adjacent intervals.

Therefore, after randomly assigning labels for the intervals as initialization, we conduct multiple sweeps, where in each sweep, we enumerate each interval and sample a new label for it based on (9). The sampling stops when the labeling does not change after the last sweep (convergence). In practice, the sampling can converge within sweeps coupled with a simulated annealing.

Vi-B Joint Sub-Task Parsing

The joint sub-task parsing is achieved using a similar approach as atomic action parsing. We first propose the time intervals by detecting turning points based on the normalized sequences of , , and . Then the labeling can also be optimized by a Gibbs sampling, where at each iteration, we sample a new joint sub-task label for an interval by


where is defined in (6

) and the prior probability is derived from (

8) as


Similar to (9), and in the above prior probability are the preceding and following intervals’ joint sub-task labels. The corresponding transition probability is assumed to be 1 if either of the adjacent interval does not exist. We also constrain to be different from the and if they exist.

Vi-C Constructing ST-AOG

After the previous two Gibbs sampling processes, the parameters of our probabilistic model are all estimated based on the parse graph sequences . The ST-AOG of category is then constructed by the following three steps:

Initialization. We start form a “complete” graph, where each non-leaf node is connected to all related lower level nodes (e.g., all joint sub-tasks, all atomic actions of the corresponding agent, etc.), except attribute leaf nodes.

Edge removal. Any edge between two joint sub-task nodes or two atomic action nodes is removed if it has a transition probability lower than a threshold (0.05). For each joint sub-task node, remove the edges connecting the OR node of agent to the atomic actions whose concurrency priors under the joint sub-task are lower than 0.1. Note that we use these thresholds for all interactions.

Attributes bundling. Motion attributes: For each type of atomic action of agent , a moving attribute is bundled to a limb if the mean of the corresponding hand movement distribution specified in (2) is lower than a threshold (we use 0.2 m in practice); otherwise, a static attribute is bundled to the limb instead. Relation attributes: A type of joint sub-task will be associated with a holding attribute between a pair of hands (or a hand and an object) if the mean final hand distance is lower than 0.15 m and the mean hand distance’s change is lower than 0.1 m according to the corresponding distributions in (6). If only the mean final hand distance meets the standard, an approaching will be attached. For the case of multiple qualifying pairs for a hand, the one with the shortest mean distance is selected.

Fig. 6 is a learned ST-AOG for Shake Hands interactions. It can be seen that our learning algorithm indeed mines the critical elements of the interactions and clearly represents their relations through the structure of the ST-AOG.

Vii Real-Time Motion Inference

If we replace agent 2 with a humanoid, we can therefore design a real-time motion inference enabling human-robot interaction based on the learned ST-AOG by sampling parse graphs and controlling the robot’s motion accordingly.

For this, we propose two levels of inference procedures: 1) robot motion generation given the parse graphs, which is essentially transferring the socially appropriate motion from agent 2 in the grammar model to a humanoid; 2) parse graph sampling given the observation of the human agent’s actions and the relation between the human agent and the robot according to the learned social affordance grammar.

1:The initial motion of two agents in , i.e.,
2:Infer by maximizing the posterior probability in (1)
6:      Infer current atomic action of agent 1 by
7:     for all  that are compatible with  do
10:           Sample a new robot status at , i.e., , , and , as introduced in Sec. VII-A
12:          Compute the posterior probability
13:     end for
14:      Choose the and the corresponding new robot status that yield highest posterior probability to execute and update and accordingly
Algorithm 1 Parse Graph Sampling

Vii-a Robot Motion Generation

As shown in Fig. 3, we may use the motion grounding of agent 2 for the robot by joint mapping. The robot motion can be generated by sampling agent 2’s base position , facing direction (i.e., base orientation of the robot) , joint angles , and hand positions (i.e., end effector positions) at each time based on the motion history of agent 2, , and the spatiotemporal relations, , upon as well as the agent 1’s motion, , and parse graphs, , upon .

Since the arm motion is relative to the base position in our motion grounding, we first sample and w.r.t. the relative position and facing direction likelihood in (6), the likelihood probabilities of which must be higher than a threshold ( for and for ). To avoid jitter, we remain the previous base position and rotation if they still meet the criteria at .

Then we update the joint angles for each robot arm. Without the loss of generality, let us consider a single arm . According to the atomic action , we may sample desired joint angles and hand position w.r.t the corresponding likelihood terms in (2). Since we do not model the wrist orientations, the desired , ,

are always set to be 0 if the robot arm has these degrees of freedom (Fig. 


a). If current joint sub-task entails an “approaching” or “holding” attribute for this limb, the desired hand position is set to the position of the target hand or object indicated by the attribute instead. To enforce the mechanical limits and collision avoidance, we minimize a loss function to compute the final joint angels

for the robot arm:


where is the end effector position of based on the forward kinematics of the robot arm ; is the joint angle space that follows the mechanical design (angle ranges and speed limits of arm joints) and the collision avoidance constraints, and , , are weights for the three types of loss respectively. By assigning different weights, we can design three control modes that are directly related to the attributes in ST-AOG:

1) Hand moving mode: if “approaching” or “holding” attributes are present in the current joint sub-task, we may use a larger to ensure an accurate hand position;

2) Static mode: if the first case does not hold and the atomic action has a “static” attribute for the limb, then should be much larger than and ;

3) Motion mimicking mode: if none of the above two cases hold, we emphasize on joint angle loss (i.e., a large ) to mimic the human arm motion.

In practice, we set the large weight to be and the other two may range from to .

Vii-B Parse Graph Sampling

The Parse graph sampling algorithm is sketched in Alg. 1. The basic idea is to first recognize the action of agent 1. Then following the ST-AOG, we may enumerate all possible joint sub-tasks and atomic actions of agent 2 that are compatible with agent 1’s atomic action, and sample a new robot status for each of them. Finally, we choose the one with the highest posterior probability to execute. Note that the facing direction of an agent is approximated by his or her moving direction (if not static) or the pointing direction of feet (if static).

Category Scenario 1 Scenario 2 Scenario 3 Scenario 4 Total
Shake Hands 19 10 0 0 29
High Five 18 7 0 23 48
Pull Up 21 16 9 0 46
Wave Hands 0 28 0 18 46
Hand Over 34 6 8 7 55
TABLE I: A summary of our new dataset (numbers of instances).
Fig. 7: Qualitative results of our Baxter simulation.
Fig. 8: Qualitative results of the real Baxter test.
Method Shake Hands High Five Pull Up Wave Hands Hand Over
B1 0.939 0.832 0.748 0.866 0.867
B2 0.970 0.892 0.939 0.930 0.948
Ours 0.779 0.739 0.678 0.551 0.727
TABLE II: Mean joint angle difference (in radius degree) between the simulated Baxter and the ground truth skeletons.
Source Shake Hands High Five Pull Up Wave Hands Hand Over
Q1 B1 3.22 1.30 2.13 1.09 2.75 0.91 2.59 1.20 2.19 1.12
B2 2.14 0.56 3.07 1.22 2.11 0.94 2.47 0.69 1.48 0.52
Ours 4.45 0.61 4.79 0.41 4.53 0.61 4.82 0.52 4.63 0.53
Q2 B1 2.89 0.99 2.38 0.96 2.75 0.55 2.00 1.17 2.45 0.71
B2 2.14 0.83 2.93 0.80 2.32 1.00 1.60 0.69 1.82 0.63
Ours 4.20 0.75 4.17 0.62 4.25 0.79 4.65 0.72 3.97 0.61
TABLE III: Human subjects’ ratings of Baxter simulation generated by the three methods based on the two criteria.

Viii Experiments

Dataset. There are two existing RGB-D video datasets for human-human interactions [29, 12], where the instances within the same category are very similar. To enrich the activities, we collected and compiled a new RGB-D video dataset on top of [12] using Kinect v2 as summarized in Table I, where Wave Hands is a new category and the instances in scenario 1 of the other categories are from [12]. For Pull Up, the first 3 scenarios are: A2 (agent 2) stands while A1 (agent 1) is sitting 1) on the floor or 2) in a chair; 3) A1 sits in a chair and A2 approaches. For the other categories, the four scenarios stand for: 1) both stand; 2) A1 stands and A2 approaches; 3) A1 sits and A2 stands nearby; 4) A1 sits and A2 approaches. In the experiments, we only use three fourths of the videos in scenario 1 (for Wave Hands, it is scenario 2) as training data, and the remaining instances are used for testing. We plan to release the dataset.

Baselines. We compare our approach with two baselines adopted from related methods, extending these method further to handle our problem. The first one (B1) uses the method proposed in [12] to synthesize human skeletons to interact with the given human agent, from which we compute the desired base positions, joint angles and hand positions for the optimization method defined in (13). Since [12] only models the end positions of the limbs explicitly and do not specify multiple modes as ours do, we use it with the weights of hand moving mode. The second baseline (B2) uses our base positions and orientations but solve the inverse kinematics for the two arms using an off-the-shelf planner, i.e., RRT-connect [30] in MoveIt! based on the desired hand positions from our approach.

Viii-a Experiment 1: Baxter Simulation

We first implement a Baxter simulation and compare the simulated robot behaviors generated from ours and the two baselines. For each testing instance, we give the first two frames of skeletons of two agents as the initialization; we then update the human skeleton and infer the new robot status accordingly at a rate of 5 fps in real-time. For Hand Over, we assume that the cup will stay in the human agent’s hand unless the robot hand is close to the center of the cup ( 10 cm) for at least 0.4 s. Note that the planner in B2 is extremely slow (it may take more than 10 s to obtain a new plan), so we compute B2’s simulations in an offline fashion and visualize them at 5 fps. Ours and B1 can be run in real-time.

Fig. 7 shows a simulation example for each interaction. More results are included in the video attachment. From the simulation results, we can see that the robot behaviors (standing positions, facing directions and arm gestures) generated by ours are more realistic than the ones from baselines. Also, thanks to the learned social grammar, the robot can adapt itself to unseen situations. E.g., human agents are standing in the training data for “High Five”, but the robot can still perform the interaction well when the human agent is sitting.

We also compare the mean joint angle difference between the robot and the ground truth (GT) human skeletons (i.e., agent 2) captured from Kinect as reported in Table II, which is one of the two common metrics of motion similarity [31] (the other one, i.e., comparing the end-effector positions, is not suitable in our case since humans and robots have different arm lengths). Although the robot has a different structure than humans’, ours can still generate arm gestures that are significantly closer to the GT skeletons than the ones by baselines are.

Viii-B Experiment 2: Human Evaluation

To evaluate the quality of our human-robot interactions, we showed the simulation videos of three methods to 12 human subjects (UCLA students) who did not know that videos were from different methods. Subjects first watched two RGB videos of human interactions per category. Then for each testing instance, we randomly selected one method’s simulation to a subject. The subjects only watched the assigned videos once and rated them based on two criteria: i) whether the purpose of the interaction is achieved (Q1), and ii) whether the robot’s behavior looks natural (Q2). The ratings range from 1 (total failure/awkward) to 5 (successful/human-like).

The mean ratings and the standard deviations are summarized in Table 

III. Our approach outperforms the baselines for both criteria and has smaller standard deviations, which manifests its advantages on accurately achieving critical latent goals (e.g., holding hands) while keeping human-like motion. The rigid representation and failing to learn explicit hand relations affect B1’s ability to adapt the robot to various scenarios. It also appears that only using a simple IK (B2) is probably insufficient: its optimization is only based on the current target position, which often generate a very long path and may lead to an awkward gesture. This makes the future target positions hard to reach as the target (e.g., a human hand) is constantly moving.

Viii-C Experiment 3: Real Baxter Test

We test our approach on a Baxter research robot with a mobility base. A Kinect sensor is mounted on the top of the Baxter’s head to detect and track human skeletons. To compensate the noise from Kinect, we further take advantage of the pressure sensors on the ReFlex TakkTile Hand (our Baxter’s right hand) to detect holding relations between the agents’ hands. Although the arm movement is notably slower than the simulation due to the mechanical limits, the interactions are generally successful and reasonably natural.

Since we only need joints on the upper body, the estimation of which is relatively reliable, the noisy Kinect skeletons usually do not greatly affect the control. In practice, temporal smoothing of the skeleton sequences is also helpful.

Ix Conclusions

We propose a general framework of learning social affordance grammar as a ST-AOG from human interaction videos and transferring such knowledge to human-robot interactions in unseen scenarios by a real-time motion inference based on the learned grammar. The experimental results demonstrate the effectiveness of our approach and its advantages over baselines. In the future, it is possible to integrate a language model into the system to achieve verbal communications between robots and humans. In addition, human intention inference can also be added to the system.


This work was funded by DARPA MSEE project FA 8650-11-1-7149 and ONR MURI project N00014-16-1-2007.


  • [1] J. J. Gibson, The ecological approach to visual perception.   Boston: Houghton Mifflin, 1979.
  • [2] L. Montesano, M. Lopes, A. Bernardino, and J. Santos-Victor, “Learning object affordances: From sensory-motor coordination to imitation,” IEEE Transactions on Robotics, vol. 24, no. 1, pp. 15–26, 2008.
  • [3] H. Kjellström, J. Romero, and D. Kragic, “Visual object-action recognition: Inferring object affordances from human demonstration,” Computer Vision and Image Understanding, vol. 115, no. 1, pp. 81–90, 2011.
  • [4] B. Moldovan, P. Moreno, M. van Otterlo, J. Santos-Victor, and L. D. Raedt, “Learning relational affordance models for robots in multi-object manipulation tasks,” in ICRA, 2012.
  • [5] Y. Zhu, A. Fathi, and L. Fei-Fei, “Reasoning about object affordances in a knowledge base representation,” in ECCV, 2014.
  • [6] H. Koppula and A. Saxena, “Physically-grounded spatio-temporal object affordances,” in ECCV, 2014.
  • [7] A. Pieropan, C. H. Ek, and H. Kjellström, “Recognizing object affordances in terms of spatio-temporal object-object relationships,” in Humanoids, 2014.
  • [8] W. Sheng, J. Du, Q. Cheng, G. Li, C. Zhu, M. Liu, and G. Xu, “Robot semantic mapping through human activity recognition: A wearable sensing and computing approach,” Robotics and Autonomous Systems, vol. 68, pp. 47–58, 2015.
  • [9] Y. Zhu, Y. Zhao, and S.-C. Zhu, “Understanding tools: Task-oriented object modeling, learning and recognition,” in CVPR, 2015.
  • [10] A. Gupta, S. Satkin, A. A. Efros, and M. Hebert, “From 3d scene geometry to human workspace,” in CVPR, 2011.
  • [11] Y. Jiang, H. Koppula, and A. Saxena, “Hallucinated humans as the hidden context for labeling 3d scenes,” in CVPR, 2013.
  • [12] T. Shu, M. S. Ryoo, and S.-C. Zhu, “Learning social affordance for human-robot interaction,” in IJCAI, 2016.
  • [13] A. Gupta, P. Srinivasan, J. Shi, and L. S. Davis, “Understanding videos, constructing plots learning a visually grounded storyline model from annotated videos,” in CVPR, 2009.
  • [14] W. Brendel and S. Todorovic, “Learning spatiotemporal graphs of human activities,” in ICCV, 2011.
  • [15] M. Pei, Z. Si, B. Yao, and S.-C. Zhu, “Video event parsing and learning with goal and intent prediction,” Computer Vision and Image Understanding, vol. 117, no. 10, pp. 1369–1383, 2013.
  • [16] T. Lan, Y. Zhu, A. R. Zamir, and S. Savarese, “Action recognition by hierarchical mid-level action elements,” in ICCV, 2015.
  • [17] M. S. Ryoo and J. K. Aggarwal, “Stochastic representation and recognition of high-level group activities,” International Journal of Computer Vision, vol. 93, no. 2, pp. 183–200, 2011.
  • [18] T. Lan, Y. Wang, W. Yang, S. N. Robinovitch, and G. Mori, “Discriminative latent models for recognizing contextual group activities,” IEEE TPAMI, vol. 34, no. 8, pp. 1549–1562, 2012.
  • [19] M. R. Amer, D. Xie, M. Zhao, S. Todorovic, and S.-C. Zhu, “Cost-sensitive top-down/bottom-up inference for multiscale activity recognition,” in ECCV, 2012.
  • [20] W. Choi and S. Savarese, “Understanding collective activities of people from videos,” IEEE TPAMI, vol. 36, no. 6, pp. 1242–1257, 2014.
  • [21] T. Lan, T.-C. Chen, and S. Savarese, “A hierarchical representation for future action prediction,” in ECCV, 2014.
  • [22] T. Shu, D. Xie, B. Rothrock, S. Todorovic, and S.-C. Zhu, “Joint inference of groups, events and human roles in aerial videos,” in CVPR, 2015.
  • [23]

    Z. Deng, A. Vahdat, H. Hu, and G. Mori, “Structure inference machines: Recurrent neural networks for analyzing relations in group activity recognition,” in

    CVPR, 2016.
  • [24]

    K. Lee, Y. Su, T.-K. Kim, and Y. Demiris, “A syntactic approach to robot imitation learning using probabilistic activity grammars,”

    Robotics and Autonomous Systems, vol. 61, no. 12, pp. 1323–1334, 2013.
  • [25] Y. Yang, Y. Li, C. Fermuller, and Y. Aloimonos, “Robot learning manipulation action plans by “watching” unconstrained videos from the world wide web,” in AAAI, 2015.
  • [26] C. Xiong, N. Shukla, W. Xiong, and S.-C. Zhu, “Robot learning with a spatial, temporal, and causal and-or graph,” in ICRA, 2016.
  • [27] M. Luber, L. Spinello, J. Silva, and K. O. Arras, “Socially-aware robot navigation: A learning approach socially-aware robot navigation: A learning approach socially-aware robot navigaion: A learning approach,” in IROS, 2012.
  • [28]

    B. Okal and K. O. Arras, “Learning socially normative robot navigation behaviors with bayesian inverse reinforcement learning,” in

    ICRA, 2016.
  • [29] K. Yun, J. Honorio, D. Chattopadhyay, T. L. Berg, and D. Samaras, “Two-person interaction detection using body-pose features and multiple instance learning,” in CVPR Workshops, 2012.
  • [30] J. J. Kuffner and S. M. LaValle, “Rrt-connect: An efficient approach to single-query path planning,” in ICRA, 2000.
  • [31] M. Alibeigi, S. Rabiee, and M. N. Ahmadabadi, “Inverse kinematics based human mimicking system using skeletal tracking technology,” JIRS, vol. 85, pp. 27–45, 2017.