-
Notifications
You must be signed in to change notification settings - Fork 107
Tips and Tricks
To update to the latest version:
roscd open_ptrack/..
git pull
cd ~/workspace/ros/catkin
catkin_make --pkg opt_msgs
catkin_make --pkg opt_msgs
catkin_make --force-cmake
Now you've got the latest code!
N.B.: Two --pkg opt_msgs
commands are included above, as sometimes this must be performed twice for all interdependent submodules to compile completely.
N.B. 2: To update OpenPTrack without losing local tracking.yaml
and detection.yaml
configuration changes, from ~/open_ptrack/detection
and ~/open_ptrack/tracking
, before you run the command git pull
above:
git stash save
git pull
Then, after updating your OpenPTrack version per the directions above:
git stash apply
It is important to merge any conflicts manually, in order to ensure that any new parameters or settings in configuration files are retained from the latest source without overwriting local parameters.
ROS has many layers. Simply using Ctrl-c
in a sensor window will often not stop a detection node entirely. Rather than rebooting to ensure a clean start, one may simply:
pkill -f ros; pkill -f nodelet; pkill -f XnSensor
-
realtime parametric modification:
rosrun rqt_reconfigure rqt_reconfigure
-
record detection and tracking messages:
rosbag record -b0 /tf /detector/detections /tracker/tracks
-
record a given Kinect sensor:
roslaunch opt_calibration sensor_<kinect_name>.launch rosbag record -b0 /tf <kinect_name>/depth_registered/image_raw <kinect_name>/depth_registered/camera_info <kinect_name>/rgb/image_raw <kinect_name>/rgb/camera_info <kinect_name>/depth_registered/disparity
-
record a given Swiss Ranger:
rosbag record -b0 /tf <swissranger_name>/confidence/image_raw <swissranger_name>/camera_info <swissranger_name>/pointcloud2_raw
-
playback a
rosbag
recording:rosbag play <filename>.bag
-
view all topics being published:
rostopic list
-
view info of any rosbag:
rosbag info <bag_name>
-
fps of a given topic:
rostopic hz /Kinect1/rgb/image_rect_color
-
view tracking broadcast / json data:
roslaunch opt_utils udp_listener.launch
-
inspect each sensor’s detection:
rostopic hz /<camera_name>/ground_based_people_detector_<camera_name>/detections
N.B.: It is also possible to subscribe to a detections
topic, and then the Rviz view is correlated with a sensor by color. See Multi-camera Detection Visualization (below).
In order to make the debugging process easier for a multi-node system, visualizing the detections coming from every sensor is made possible with the ROS visualizer in the master node, or any PC in the network by running rosrun rviz rviz
, then loading the appropriate Rviz
file, as already done for tracking information. It is possible to visualize:
- markers showing the current detection positions from every camera;
- detection trajectories for every camera.
N.B.: Detections coming from different cameras are shown with different colors.
In more detail (see the image below as a reference):
- Press
Add
, then selectMarkerArray
, and pressOK
. Then, select/write in theMarker Topic
field:/detector/markers_array
. To inspect only the detections/markers coming from a specific camera, enlarge theNamespaces
menu and then select only the camera/cameras of interest. - Press
Add
, then selectPointCloud2
, and pressOK
. Then, select/write in theTopic
field:/detector/history
. Please note that the length of these trajectories depends on thedetection_history_size
parameter in the following file: https://github.com/OpenPTrack/open_ptrack/blob/master/tracking/conf/tracker_multicamera.yaml.
The network (extrinsic) calibration information is stored in this file:
~/workspace/ros/catkin/open_ptrack/opt_calibration/conf/camera_poses.yaml
You can save a copy of this file with the name you prefer and use these instructions to restore it:
-
substitute this file with the calibration file you want to restore:
~/workspace/ros/catkin/open_ptrack/opt_calibration/conf/camera_poses.yaml
-
repeat [Step 2] (https://github.com/OpenPTrack/open_ptrack/wiki/Camera-Network-Calibration#2-create-files-for-multi-sensor-people-tracking) of the network calibration guide.
Now the old calibration has been restored.
N.B.: This process does not restore the [calibration refinement procedure] (https://github.com/OpenPTrack/open_ptrack/wiki/Camera-Network-Calibration#6-perform-multi-imager-calibration-refinement---optional) results. Thus, it should be repeated.
If you are working with OpenPTrack v2, use this wiki instead.
- Time Synchronization
- Pre-Calibration Configuration
- Intrinsic Calibration
- Camera Network Calibration
- Person Tracking
- Object Tracking
- World Coordinate Settings
- Tips and Tricks
- Tested Hardware
- Network Configuration
- Imager Mounting and Placement
- Calibration in Practice
- Quick Start Example
- Imager Settings
- Manual Ground Plane
- Calibration Refinement
How to receive tracking data in:
Notes on contributing to OPT.