A ROS package for real-time object detection in camera images using YOLO (V3) on GPU and CPU.
Darknet_ros is a ROS package that integrates the YOLO (You Only Look Once) object detection system for real-time object detection in camera images within robotic applications. It allows robots to identify and locate objects from pre-trained classes (like those from VOC and COCO datasets) or custom-trained models, publishing detection results as ROS messages. The package solves the need for efficient, real-time perception in autonomous systems by providing a performant, GPU-accelerated detection pipeline.
Robotics researchers, engineers, and developers building autonomous systems, drones, or robots that require real-time visual perception and object detection capabilities within the ROS framework.
Developers choose Darknet_ros because it offers a seamless integration of the state-of-the-art YOLO detector into ROS, with support for both GPU and CPU, pre-trained models for quick deployment, and the flexibility to train custom detectors. Its real-time performance and ROS-native interface make it a practical choice for robotics projects needing reliable object detection.
YOLO ROS: Real-Time Object Detection 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.
Leverages CUDA for GPU acceleration, making detection up to 500 times faster than CPU, enabling true real-time performance on compatible hardware as noted in the README.
Publishes bounding boxes, detection images, and object counts as standard ROS topics and actions, facilitating seamless integration into robotic pipelines without extra wrappers.
Includes weights for VOC and COCO datasets out of the box, and supports custom-trained YOLO networks by placing weights and cfg files in designated directories.
CMake build system automatically detects CUDA availability, switching between GPU and CPU versions without manual intervention, simplifying deployment across different setups.
Build process may fail with 'unsupported gpu architecture' errors, requiring users to manually edit CMakeLists.txt to specify their GPU's compute capability.
Based on YOLO V3, which is outdated compared to newer versions with better accuracy and efficiency, limiting access to recent advances in object detection.
Disclaimed as research code that changes often, leading to potential instability, breaking changes, and lack of production-ready reliability for long-term projects.