Closed cdondrup closed 8 years ago
This failed due to #169 not being merged yet:
/var/lib/jenkins/workspace/pr-indigo-strands_perception_people/monitored_vcs/people_tracker_filter/src/filter.cpp:109:28: error: 'bayes_people_tracker::PeopleTracker' has no member named 'velocities'
pt_out.velocities.push_back(pt->velocities[i]);
Please retest after merge of #169
retest this please
:-( @cdondrup ?
Not sure what happened. I rebased now... Let's see if that works.
Builds now.
Closes #175
Needs #169 merged
Changes made to
bayes_people_tracker
:src
andinclude
to reflect the project name and therefore have the headers installed correctly.Changes made to
bayes_people_tracker_logging
:Changes made to
perception_people_launch
:with_map_filter
has been renamed towith_laser_filter
to reflect its functionality better.people_tracker_filter
is started by default. Using the map published on/map
.The
people_tracker_filter
works as described in issue #175 which means it filters the output of the tracker using a map. By default this is the map published on/map
. Hence, this node listens to all the topics published by thebayes_people_tracker
and filters out the tracks that are inside obstacles, unknown areas, or off the grid. Additionally, the filter can utilise its own map server and its own "no_people_map" which works similar to the old "no_go_map". Below is an example of a map I used for an experiment to only allow detections in the centre of our lab so I could stay in the black areas without interfeering and to prevent false positives from furniture:In this map, every track that would result in the person being inside the black areas, is filtered out and only the tracks where the person is inside the free space are left.
The results are publish on:
/people_tracker_filter/positions
->bayes_people_tracker/PeopleTracker
/people_tracker_filter/pose
->geometry_msgs/PoseStamped
: closest person that might be a different one that in the unfiltered results./people_tracker_filter/pose_array
->geometry_msgs/PoseArray
/people_tracker_filter/people
->people_msgs/People
/people_tracker_filter/marker_array
->visualization_msgs/MarkerArray
The filter is started by default when starting the people perception but like all the other components of the people perception pipeline, actually does not do any processing unless someone subscribes to one of its published topics. To start it with an especially created map, run:
The map is then publish under
/ppl_filter_map
._Note: Since this node only filters the results, a person that goes into a black area and then leaves it again will have the same uuid if they have been tracked in the mean time. This might mean that a person vanishes in a "no_peoplezone" and then re-appears.
I tested this on Linda and it will also work with the
people_tracker_emulator
in simulation.If I remember correctly, @lucasb-eyer @PDuckworth and @ferdianjovan voiced interest in this node, so please feel free to test it.