Stack for image recognition packages based on ROS2.
This repository provides a set of packages designed for image recognition and camera control using ROS2. Each package is designed with a focus on modularity, lifecycle management, and real-time control over image streams.
To use the packages in this repository, make sure you have the following installed:
Component | Version/Distribution | Notes |
---|---|---|
OpenCV | 4.2 or higher | Required for image processing and camera interfacing |
ROS2 | Foxy or Humble | Recommended ROS2 distributions |
Python | 3.8 or higher | Required for Python scripts |
Setuptools | 58.2.0 | Required for Python scripts |
Requirements might vary depending on the package. Please refer to each package's README for more details.
Component | Version |
---|---|
OS | Ubuntu 22.04 |
ROS | Humble Hawksbill |
OpenCV | 4.10.0 |
Category | Package | Description | Documentation |
---|---|---|---|
- | image_recognition_msgs |
Custom message definitions for image_recognition package and camera control. |
Link to docs |
Image Projection | usb_camera |
V4L2 USB Camera Node with lifecycle management. | Link to docs |
Image Projection | pan_tilt_camera |
Advanced V4L2 USB Camera Node with lifecycle management and pan-tilt control via ROS topics. | Link to docs |
Image Projection | image_to_ros2_topic |
Publishes static image files (JPG, PNG etc) to ROS2 topics with configurable parameters. | Link to docs |
Image Projection | video_to_ros2_topic |
Publishes static video files (MP4, AVI etc) to ROS2 topics with configurable parameters. | Link to docs |
Image Recognition | yolo_detection |
Real-time image detection using YOLO, with GPU support and dynamic parameter configuration. | Link to docs |
Image Recognition | yolo_segmentation |
Real-time image segmentation using YOLO, with GPU support and dynamic parameter configuration. | Link to docs |
I welcome all contributions! Whether it's bug reports, feature suggestions, or pull requests, your input helps me to improve. If you're interested in contributing, please check out my contributing guidelines or submit an issue.
This project is licensed under the Apache 2.0 License. Feel free to use and distribute it according to the terms of the license.
If you have any questions or feedback, don't hesitate to reach out! You can contact me at menggu1234@naver.com.