ROS 2 packages for visual servoing and tracking using the ViSP library.
vision_visp is a ROS 2 stack that provides interfaces to the ViSP (Visual Servoing Platform) library for robotics vision applications. It enables visual servoing, model-based tracking, and camera calibration within the ROS 2 ecosystem, solving the problem of integrating advanced computer vision algorithms into robotic systems. The stack includes tools for tracking objects, calibrating cameras, and estimating hand-eye transformations.
Robotics engineers and researchers working on vision-based control systems, particularly those using ROS 2 and needing visual servoing, object tracking, or camera calibration capabilities.
Developers choose vision_visp because it bridges the powerful, academic-grade ViSP library with ROS 2, offering reliable tracking, calibration, and servoing tools without requiring custom integration. Its automated recovery and marker-based initialization provide robustness for real-world robotics applications.
ViSP stack for ROS
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides direct bridges between ROS 2 image/geometry messages and ViSP representations, enabling easy deployment in ROS 2-based robotic systems without custom message handling.
Includes visp_auto_tracker with automated marker-based initialization (e.g., AprilTag) and recovery mechanisms for robust tracking in dynamic environments, as highlighted in the README.
Offers visp_camera_calibration and visp_handeye_calibration for accurate camera intrinsic and hand-eye transformation estimation, leveraging ViSP's proven algorithms.
Leverages ViSP's well-tested visual servoing and tracking libraries, providing reliable, research-backed performance for production robotics.
Requires separate installation of both ROS 2 and ViSP, with potential build issues like needing VISP_DIR, making setup non-trivial and error-prone for newcomers.
Focuses on traditional model-based tracking and servoing, lacking built-in support for modern data-driven or deep learning methods, which may limit flexibility in some applications.
Creates vendor lock-in to ViSP's API and development cycle, making it difficult to switch to alternative vision libraries without significant rework.