-
Notifications
You must be signed in to change notification settings - Fork 0
24 yolo node for instance segmentation #32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
…e callback and use threshold parameter
…og to gitignore for ros2 building
…es to requirements
…with different names and ids
…t downloads. This allows for simple gitignore for all datasets
…ferences in output from models
- Reorder Dockerfile to create the non-root user before copying source code. - Add `chown` to workspace files to ensure the non-root user has write access. - Remove redundant `--user` flag in run.sh to rely on the image's configured user.
for more information, see https://pre-commit.ci
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
vortex_image_segmentation/vortex_image_segmentation/yolo_seg.py
Outdated
Show resolved
Hide resolved
vortex_image_segmentation/vortex_image_segmentation/yolo_seg_node.py
Outdated
Show resolved
Hide resolved
…or-instance-segmentation
…it where the launch file changed from loading working dir params to loading params from share dir
…node-for-instance-segmentation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #32 +/- ##
=====================================
Coverage 0 0.00%
=====================================
Files 0 3 +3
Lines 0 161 +161
Branches 0 14 +14
=====================================
- Misses 0 161 +161
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
vortex_image_segmentation/vortex_image_segmentation/yolo_seg_node.py
Outdated
Show resolved
Hide resolved
vortex_image_segmentation/vortex_image_segmentation/yolo_seg_node.py
Outdated
Show resolved
Hide resolved
vortex_image_segmentation/vortex_image_segmentation/yolo_seg_node.py
Outdated
Show resolved
Hide resolved
jorgenfj
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good job.
Future improvements: Support different image operations, like resizing and scaling.
Also add a short README for the seg node
| pkg_share = get_package_share_directory('vortex_image_segmentation') | ||
| yolo_params = os.path.join(pkg_share, 'params', 'yolo_params.yaml') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ehh, actually. 🤓
We don't need the intermediate pkg_share variable here
| compile: True | ||
| retina_masks: False # We dont need high res masks |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Me no understand...
Explain these parameters 🧙
| node_params = self.load_node_params() | ||
| self.input_topic: str = node_params.input_topic | ||
| self.output_bbox_topic: str = node_params.output_bbox_topic | ||
| self.output_mask_topic: str = node_params.output_mask_topic | ||
| self.debug_topic: str = node_params.debug_topic | ||
| self.pub_bbox: bool = node_params.pub_bbox | ||
| self.pub_mask: bool = node_params.pub_mask | ||
| self.pub_debug: bool = node_params.pub_debug |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could just keep the struct as the only member variable
| self.debug_publisher: Optional[Publisher] = None | ||
| self.bbox_pub: Optional[Publisher] = None | ||
| self.mask_pub: Optional[Publisher] = None |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove this. Just guard with if whenever we use the publishers
| # compile=self.params.compile, | ||
| ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ahh yes.. Important param
| self.publish_bboxes_and_confidences(result, msg.header) | ||
| self.publish_masks(result, msg.header) | ||
| self.publish_debug_image(result, msg.header) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Prefer guarding outside the function instead of inside the function call
| if getattr(self, "mask_pub", None) is None: | ||
| return |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These can be removed if we guard outside the function
| *.swo | ||
| node_modules/ | ||
| bags/ | ||
| rosbags/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not ignore both?
| data/ | ||
| rosbags/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not ignore both?
Issue
Changes
Additional info
Testing