-
Notifications
You must be signed in to change notification settings - Fork 0
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
110 - Implement traffic light detection #148
Conversation
…b.com/UNA-AuxMe/paf23 into 110-implement-traffic-light-detection
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
Simulation results
|
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.
Nice Implementation
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.
Nice work!
Fix failed checks! |
Linter error fixed (came from main-branch). |
* Add publisher * Publish segmented traffic lights * Implement TrafficLightNode * Add TrafficLightState msg. WIP * Add publisher * Publish segmented traffic lights * Implement TrafficLightNode * Add TrafficLightState msg. WIP * Added side view classification * Finish traffic light node * Add manual control launch file * Make linter happy * Add documentation * Add missing traffic light detection model * Fix color issues in rviz * Limit simulator's max. RAM usage to prevent system crash * fix: Linter fixes for other team's code
Description
Extended the VisionNode to publish the cut out traffic lights and implemented a new traffic light detection node which uses them to recognize the traffic light state via a small neural network.
The node can publish the states UNKNOWN, GREEN, YELLOW, RED which are int8 enums as a ROS message.
The neural network has been extended to recognize side-facing traffic lights as a first measure of filtering those out. Additionally, a bounding box was laid over the source image, as the correct traffic light is towards the center of the image.
It was necessary to switch from 'yolov8x-seg' to yolo 'rtdetr-x' as the traffic lights were detected too late (had to be almost in the intersection to see them properly). Lack of segmentation wasn't an issue, cutting out by the bounding box of the recognized object was perfectly fine in this case.
Fixes #110
Type of change
Please delete options that are not relevant.
Does this PR introduce a breaking change?
No
Most important changes
Checklist: