def tag_positions(tag_frames): pos_dict= {} for (key, val) in tag_frames.iteritems(): pos_dict[key] = dot(val.body.pose, val._bpose)[0:3,3] pos_array = zeros((len(tag_frames),3)) for t in _humans_tags(1.741): pos_array[t['HumansId']-1,:] = pos_dict[t['HumansName']] return pos_array
def tagsTest(self): def convert_to_array(tags): t = zeros((len(tags),3)) for tag in tags: t[tag['HumansId']-1,:] = tag["Position"][:] return t self.assertListsAlmostEqual(convert_to_array(_humans_tags(1.741)), [[ 0.2150135, -0.0386502, 0. ], [-0.0431768, -0.0386502, 0. ], [ 0.1152542, -0.0386502, 0.0531005], [ 0.1152542, -0.0386502, -0.0531005], [ 0. , -0.4340313, 0.0433509], [ 0. , -0.4221925, 0.050489 ], [ 0. , 0. , 0.076604 ], [ 0.0471811, 0.0637206, 0.1213477], [ 0.2150135, -0.0386502, 0. ], [-0.0431768, -0.0386502, 0. ], [ 0.1152542, -0.0386502, -0.0531005], [ 0.1152542, -0.0386502, 0.0531005], [ 0. , -0.4340313, -0.0433509], [ 0. , -0.4221925, -0.050489 ], [ 0. , 0. , -0.076604 ], [ 0.0471811, 0.0637206, -0.1213477], [ 0.2122279, 0. , 0. ], [ 0.1831532, 0.170618 , 0. ], [-0.0915766, 0.0525782, 0.2127595], [ 0. , -0.2816938, 0.0367351], [ 0. , -0.2668953, 0.0576271], [ 0. , -0.1899431, 0. ], [-0.0915766, 0.0525782, -0.2127595], [ 0. , -0.2816938, -0.0367351], [ 0. , -0.2668953, -0.0576271], [ 0. , -0.1899431, 0. ], [ 0.0915766, 0.241999 , 0. ], [ 0. , 0.2428695, 0. ]]) self.assertListsAlmostEqual(convert_to_array(_humans_tags(0.)), [[ 0. , -0. , 0. ], [-0. , -0. , 0. ], [ 0. , -0. , 0. ], [ 0. , -0. , -0. ], [ 0. , -0. , 0. ], [ 0. , -0. , 0. ], [ 0. , 0. , 0. ], [ 0. , 0. , 0. ], [ 0. , -0. , 0. ], [-0. , -0. , 0. ], [ 0. , -0. , -0. ], [ 0. , -0. , 0. ], [ 0. , -0. , -0. ], [ 0. , -0. , -0. ], [ 0. , 0. , 0. ], [ 0. , 0. , -0. ], [ 0. , 0. , 0. ], [ 0. , 0. , 0. ], [-0. , 0. , -0.0127], [ 0. , -0. , 0. ], [ 0. , -0. , 0. ], [ 0. , -0. , 0. ], [-0. , 0. , 0.0127], [ 0. , -0. , -0. ], [ 0. , -0. , -0. ], [ 0. , -0. , 0. ], [ 0. , 0. , 0. ], [ 0. , 0. , 0. ]])