ROS Message Definitions Clause Samples

ROS Message Definitions. To keep a memory of which detections have been fused together, we define a CompositeDetectedPerson message (Fig.
ROS Message Definitions. As in the detection case, we tried to keep the message definitions for people tracking as generic as possible such that they can be re-used across a large vari- ety of different people tracking algorithms. In the following sections, we illustrate concrete implementations that we have experimented with during the project, all of which yield the following output. A TrackedPerson, according to our definition, possesses the following attributes: – track id [uint64]: An identifier of the tracked person, unique over time. – is matched [bool]: False if no matching detection was found close to the track’s predicted position. If false for too long, the track usually gets deleted. – is occluded [bool]: True if the person is physically occluded by another per- son or obstacle. False if the tracking algorithm cannot determine this. – detection id [uint64]: If is matched is true, the unique ID of the detection associated with the track in the current tracking cycle. Otherwise undefined. – pose [geometry msgs/PoseWithCovariance]: The position and orientation of the tracked person in metric 3D space, along with its uncertainty (expressed as a 6 6 covariance matrix). The pose is relative to the coordinate frame specified in the TrackedPersons message (see below). – twist [geometry msgs/TwistWithCovariance]: The linear and possibly angu- lar velocity of the track, along with their uncertainties. – age [duration]: The time span for which this track has existed in the system. The TrackedPersons message aggregates all TrackedPerson instances that are currently being tracked: – header [std msgs/Header]: The coordinate frame is usually a locally fixed frame that does not move with the robot, such as “▇▇▇▇”. The timestamp is copied from the incoming DetectedPersons message; this is important to synchronize DetectedPersons and TrackedPersons messages to be able to look up details about a DetectedPerson identified by its detection id. – tracks [array of TrackedPerson]: All persons that are being tracked in the current tracking cycle, including occluded and unmatched tracks. 10 People Detection, Tracking and Visualization on a Mobile Robot