Skip to content

refactor: migrate yolo_object_detection from ament_cmake to ament_python#56

Merged
kluge7 merged 20 commits intomainfrom
55-refactor-yolo_object_detection-to-use-ament_python
Apr 18, 2026
Merged

refactor: migrate yolo_object_detection from ament_cmake to ament_python#56
kluge7 merged 20 commits intomainfrom
55-refactor-yolo_object_detection-to-use-ament_python

Conversation

@ashishagain
Copy link
Copy Markdown
Contributor

  • Add setup.py and setup.cfg for Python package management
  • Update package.xml and removed CMakeLists.txt
  • Update launch file executable reference
  • followed the structure in vortex_image_segmentation

Resolves #55

gardeg and others added 2 commits March 5, 2026 13:48
- Add setup.py and setup.cfg for Python package management
- Update package.xml and removed CMakeLists.txt
- Update launch file executable reference
- followed the structure in vortex_image_segmentation

Resolves #55
@ashishagain ashishagain linked an issue Apr 12, 2026 that may be closed by this pull request
@codecov
Copy link
Copy Markdown

codecov bot commented Apr 12, 2026

Codecov Report

❌ Patch coverage is 0% with 405 lines in your changes missing coverage. Please review.
✅ Project coverage is 0.00%. Comparing base (45bef8c) to head (c4f1380).
⚠️ Report is 2 commits behind head on main.

Files with missing lines Patch % Lines
...lo_segmentation/yolo_segmentation/yolo_seg_node.py 0.00% 144 Missing ⚠️
...ng/camera_segmentation/src/camera_segmentation.cpp 0.00% 66 Missing ⚠️
...labeling/camera_segmentation/src/dataset_utils.cpp 0.00% 58 Missing ⚠️
ros/yolo_classify/yolo_classify/classifier_node.py 0.00% 49 Missing ⚠️
...object_detection/yolo_obb_object_detection_node.py 0.00% 20 Missing ⚠️
...os/yolo_segmentation/yolo_segmentation/yolo_seg.py 0.00% 18 Missing ⚠️
...olo_object_detection/yolo_object_detection_node.py 0.00% 17 Missing ⚠️
ros/yolo_classify/yolo_classify/yolo_utils.py 0.00% 13 Missing ⚠️
...tonefish_labeling/camera_segmentation/src/main.cpp 0.00% 6 Missing ⚠️
ros/yolo_classify/setup.py 0.00% 4 Missing ⚠️
... and 3 more
Additional details and impacted files
@@          Coverage Diff           @@
##            main     #56    +/-   ##
======================================
  Coverage   0.00%   0.00%            
======================================
  Files          3      15    +12     
  Lines        191     556   +365     
  Branches      17      61    +44     
======================================
- Misses       191     556   +365     
Flag Coverage Δ
unittests 0.00% <0.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
..._detection/yolo_obb_object_detection/yolo_utils.py 0.00% <ø> (ø)
...ject_detection/yolo_object_detection/yolo_utils.py 0.00% <ø> (ø)
ros/yolo_segmentation/setup.py 0.00% <0.00%> (ø)
ros/yolo_classify/setup.py 0.00% <0.00%> (ø)
ros/yolo_obb_object_detection/setup.py 0.00% <0.00%> (ø)
ros/yolo_object_detection/setup.py 0.00% <0.00%> (ø)
...tonefish_labeling/camera_segmentation/src/main.cpp 0.00% <0.00%> (ø)
ros/yolo_classify/yolo_classify/yolo_utils.py 0.00% <0.00%> (ø)
...olo_object_detection/yolo_object_detection_node.py 0.00% <0.00%> (ø)
...os/yolo_segmentation/yolo_segmentation/yolo_seg.py 0.00% <0.00%> (ø)
... and 5 more
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@ashishagain ashishagain requested a review from kluge7 April 12, 2026 14:35
…5-refactor-yolo_object_detection-to-use-ament_python
- Remove buildtool_depend from package.xml (rosdep incompatible)
- Standardize setup.cfg format (use underscores: script_dir, install_scripts)
- Align setup.py to use consistent 'from glob import glob' import style
- Fixes rosdep error: "Cannot locate rosdep definition for [ament_python]"

Aligned packages:
- vortex_yolo_classifiy
- yolo_object_detection
- yolo_obb_object_detection
- vortex_image_segmentation
Copy link
Copy Markdown
Contributor

@kluge7 kluge7 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

First round of review, good work so far, I havent tested it yet so will need to try that.

Comment thread unet_segmentation/model/unet-simple-320-240-l-5-e10-b16(1).pth Outdated
Comment thread ros_nodes/yolo_object_detection/resource/yolo_object_detection Outdated
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why do we just have an empty file here?

Comment thread ros_nodes/vortex_yolo_classifiy/resource/vortex_yolo_classifiy Outdated
Comment thread ros/yolo_classify/config/yolo_classify_params.yaml
Comment thread models_training/train.py Outdated
Comment thread models_training/train.py Outdated
Comment thread training/train.py
Comment thread models_training/train.py
Comment thread training/train.py
ashishagain and others added 10 commits April 16, 2026 14:15
- Removed obsolete setup.cfg files from vortex_image_segmentation and vortex_yolo_classifiy.
- Added .gitignore files to yolo_classify, yolo_obb_object_detection, yolo_object_detection, and yolo_segmentation to prevent model files from being pushed to git.
- Created README.md and configuration files for yolo_classify, detailing usage and parameters.
- Implemented classifier_node.launch.py for launching the YOLO classification node with device selection.
- Established package.xml and setup.py for yolo_classify, defining dependencies and entry points.
- Developed classifier_node.py for image classification using YOLO, including image subscription and result publishing.
- Introduced yolo_segmentation package with similar structure, including parameters, launch files, and node implementation for segmentation.
- Added yolo_seg.py for YOLO segmentation model handling and visualization.
- Enhanced yolo_seg_node.py to manage image input, segmentation processing, and output publishing.
…_python

- Updated configuration files for YOLO classification and object detection to use new parameter names and paths.
- Created new launch files for YOLO classification and object detection, ensuring proper parameter handling and node initialization.
- Refactored classifier_node and yolo_obb_object_detection_node to load parameters dynamically and improve model loading.
- Introduced yolo_utils for shared functionality between classification and object detection.
- Updated README and parameter files to reflect changes in topic names and configurations.
- Enhanced error handling for model loading and parameter validation.
kluge7
kluge7 previously approved these changes Apr 18, 2026
Copy link
Copy Markdown
Contributor

@kluge7 kluge7 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@kluge7 kluge7 merged commit 877ddaa into main Apr 18, 2026
3 of 4 checks passed
@kluge7 kluge7 deleted the 55-refactor-yolo_object_detection-to-use-ament_python branch April 18, 2026 10:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refactor yolo_object_detection to use ament_python

3 participants