Wiki

  Show EOL distros: 

vision_visp: visp | visp_tracker

Package Summary

visp_tracker wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

vision_visp: visp | visp_auto_tracker | visp_bridge | visp_camera_calibration | visp_hand2eye_calibration | visp_tracker

Package Summary

visp_tracker wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

vision_visp: visp | visp_auto_tracker | visp_bridge | visp_camera_calibration | visp_hand2eye_calibration | visp_tracker

Package Summary

visp_tracker wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

vision_visp: visp_auto_tracker | visp_bridge | visp_camera_calibration | visp_hand2eye_calibration | visp_tracker

Package Summary

Wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

  • Maintainer status: maintained
  • Maintainer: Fabien Spindler <fabien.spindler AT inria DOT fr>
  • Author: Thomas Moulard <thomas.moulard AT gmail DOT com>
  • License: BSD
  • Source: git https://github.com/lagadic/vision_visp.git (branch: groovy)
vision_visp: visp_auto_tracker | visp_bridge | visp_camera_calibration | visp_hand2eye_calibration | visp_tracker

Package Summary

Wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

  • Maintainer status: maintained
  • Maintainer: Fabien Spindler <fabien.spindler AT inria DOT fr>
  • Author: Thomas Moulard <thomas.moulard AT gmail DOT com>
  • License: BSD
  • Source: git https://github.com/lagadic/vision_visp.git (branch: hydro)
vision_visp: visp_auto_tracker | visp_bridge | visp_camera_calibration | visp_hand2eye_calibration | visp_tracker

Package Summary

Wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

  • Maintainer status: maintained
  • Maintainer: Fabien Spindler <fabien.spindler AT inria DOT fr>
  • Author: Thomas Moulard <thomas.moulard AT gmail DOT com>
  • License: GPLv2
  • Source: git https://github.com/lagadic/vision_visp.git (branch: indigo)
vision_visp: visp_auto_tracker | visp_bridge | visp_camera_calibration | visp_hand2eye_calibration | visp_tracker

Package Summary

Wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

  • Maintainer status: maintained
  • Maintainer: Fabien Spindler <fabien.spindler AT inria DOT fr>
  • Author: Thomas Moulard <thomas.moulard AT gmail DOT com>
  • License: BSD
  • Source: git https://github.com/lagadic/vision_visp.git (branch: jade)
vision_visp: visp_auto_tracker | visp_bridge | visp_camera_calibration | visp_hand2eye_calibration | visp_tracker

Package Summary

Wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

  • Maintainer status: maintained
  • Maintainer: Fabien Spindler <fabien.spindler AT inria DOT fr>
  • Author: Thomas Moulard <thomas.moulard AT gmail DOT com>
  • License: GPLv2
  • Source: git https://github.com/lagadic/vision_visp.git (branch: kinetic)
vision_visp: visp_auto_tracker | visp_bridge | visp_camera_calibration | visp_hand2eye_calibration | visp_tracker

Package Summary

Wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

  • Maintainer status: maintained
  • Maintainer: Fabien Spindler <fabien.spindler AT inria DOT fr>
  • Author: Thomas Moulard <thomas.moulard AT gmail DOT com>
  • License: GPLv2
  • Source: git https://github.com/lagadic/vision_visp.git (branch: lunar)
vision_visp: visp_auto_tracker | visp_bridge | visp_camera_calibration | visp_hand2eye_calibration | visp_tracker

Package Summary

Wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

  • Maintainer status: maintained
  • Maintainer: Fabien Spindler <fabien.spindler AT inria DOT fr>
  • Author: Thomas Moulard <thomas.moulard AT gmail DOT com>
  • License: GPLv2
  • Source: git https://github.com/lagadic/vision_visp.git (branch: melodic)
vision_visp: visp_auto_tracker | visp_bridge | visp_camera_calibration | visp_hand2eye_calibration | visp_tracker

Package Summary

Wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package. This computer vision algorithm computes the pose (i.e. position and orientation) of an object in an image. It is fast enough to allow object online tracking using a camera.

  • Maintainer status: maintained
  • Maintainer: Fabien Spindler <fabien.spindler AT inria DOT fr>
  • Author: Thomas Moulard <thomas.moulard AT gmail DOT com>
  • License: GPLv2
  • Source: git https://github.com/lagadic/vision_visp.git (branch: noetic)

Overview

This package wraps an object tracker provided by the ViSP library. The tracker provides the tracked object position with respect to the camera. It requires the object 3d model and the object initial pose.

ViSP box tracking

The package is composed of one node called tracker that does the tracking and two additional nodes client (that allows to set the initial pose by user mouse click) and viewer that allows to visualize the result of the tracking.

The tracker node tries to track the object as fast as possible but needs to be initialized using the client. The viewer can be used to monitor the tracking result.

Use cases

Reference

Roadmap

The package implementation is finished. Minor changes in the API may happen in the future but impact should be limited.

These features would be valuable contribution to this package:

Installation

visp_tracker is part of vision_visp stack.

Features

This package objective is to provide the pose of an object (i.e. position and orientation) in a sequence of images knowing its 3d model and its initial pose. It also provides the pose covariance.

ROS API

Note: data is only published if there is at least one listener.

tracker

Main tracking node.

Subscribed Topics

~camera_prefix/camera_info (sensor_msgs/CameraInfo) ~camera_prefix/image_rect (sensor_msgs/Image) object_position_hint (geometry_msgs/TransformStamped)

Published Topics

object_position (geometry_msgs/PoseStamped) object_position_covariance (geometry_msgs/PoseWithCovarianceStamped) moving_edge_sites (visp_tracker/MovingEdgeSites) klt_points_positions (visp_tracker/KltPoints)

Services

init_tracker (visp_tracker/Init) tracking_meta_data (visp_tracker/TrackingMetaData)

Parameters

~camera_prefix (std_msgs/String) ~first_threshold (float64) ~lambda (float64) ~mask_size (int64) ~min_samplestep (float64) ~model_name (std_msgs/String) ~model_path (std_msgs/String) ~mu1 (float64) ~mu2 (float64) ~n_mask (int64) ~n_total_sample (int64) ~range (int64) ~sample_step (int64) ~strip (int64) ~threshold (float64) ~aberration (float64) ~init_aberration (float64) ~compensate_robot_motion (bool, default: false) ~world_frame_id (string, default: /odom)

Required tf Transforms

~world_frame_id<camera frame>

Provided tf Transforms

<camera frame>visp_tracker

client

Command line tool used to decide which object to track and what is its initial pose.

Parameters

~camera_prefix (std_msgs/String) ~tracker_prefix (std_msgs/String, default: tracker_mbt) ~model_path (std_msgs/String, default: $(find visp_tracker)/models) ~model_name (std_msgs/String)

viewer

Monitoring tool.

Parameters

~tracker_prefix (std_msgs/String, default: /tracker_mbt) ~image_transport (string, default: raw)

Nodelets

This package provides both nodes and nodelet versions of the tracker, client and viewer.

They are respectively named:

...and provide the same API than the equivalent nodes.

When the nodelet version is used, no-copy intraprocess publishing is used. See the nodelet documentation for more information.

An example launch file is also provided:

roslaunch visp_tracker tutorial-nodelet.launch

Note: even if a nodelet is available for the client and viewer, one should avoid running them in the same process than the vision pipeline to avoid crashing the whole pipeline if something goes wrong.

Launch file example

Here is a launch file which starts the tracker and client.

   1 <launch>
   2   <!-- you should first setup your camera grabbing/rectification nodes,
   3        see image_pipeline documentation. -->
   4 
   5   <!-- tracking node -->
   6   <node pkg="visp_tracker" type="tracker" name="tracker_mbt">
   7     <param name="camera_prefix" value="/wide_left/camera" />
   8   </node>
   9 
  10   <!-- starts the client while setting the camera input and the model
  11        which will be tracked -->
  12   <node pkg="visp_tracker" type="client" name="tracker_mbt_client">
  13     <param name="camera_prefix" value="/wide_left/camera" />
  14     <param name="model_name" value="laas-box" />
  15   </node>
  16 </launch>

   1 <launch>
   2   <!-- you should first setup your camera grabbing/rectification nodes,
   3        see image_pipeline documentation. -->
   4 
   5   <!-- tracking node -->
   6   <node pkg="visp_tracker" type="tracker" name="tracker_mbt">
   7     <param name="camera_prefix" value="/wide_left/camera" />
   8     <param name="tracker_type" value="mbt+klt" />
   9   </node>
  10 
  11   <!-- starts the client while setting the camera input and the model
  12        which will be tracked -->
  13   <node pkg="visp_tracker" type="visp_tracker_client" name="visp_tracker_mbt_client">
  14     <param name="camera_prefix" value="/wide_left/camera" />
  15     <param name="model_name" value="laas-box" />
  16     <param name="tracker_type" value="mbt+klt" />
  17   </node>
  18 </launch>

Report a bug

Use GitHub to report a bug or submit an enhancement.

Wiki: visp_tracker (last edited 2016-08-16 09:43:24 by FabienSpindler)