-
-
Notifications
You must be signed in to change notification settings - Fork 16.3k
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
YOLOv5 segmentation model support #9052
Conversation
for more information, see https://pre-commit.ci
@AyushExel precommit shows utils.plots is duplicated (i.e. pasted twice). I'll fix so it matches master. I checked that it doesn't contain any new seg functions. |
@glenn-jocher I have sent you the trained weights files on slack. Once you add them to assets, we can update predict.py to get the weights for inference |
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
@AyushExel precommit is all green now! FYI PyCharm with Code -> Reformat will catch 90% of these issues before they get to precommit. precommit can push fixes for some problems but not all of them. |
@glenn-jocher ohh btw ignore segments/agumentations.py . All models are trained without albumentations installed so we'll probably end up removing that part from this PR.. before that I want to confirm if @Laughing-q has already made some progress on augmentation. |
@AyushExel looking good. I added a few questions to the TODO list above. Also replied in Slack regarding weights. EDIT: Haven't really had time to go through, just added a few questions based on a quick glance while resolving precommit. |
I think having train.py accept --deterministic should be the easiest way forward? segmentation uses interpolate with bilinear mode which is not deterministic on cuda.
I separated them just to future-proof the repo (was thinking of semantic seg, pose etc) as I don't know how similar or different NMS for other tasks will be. The current functions should be easy to merge. Its your call
Yeah we should remove that. I'll test with native dict and replace it |
resolved in 8b70e64
yes we should definitely merge as much common code as we can to avoid future multiple-maintenance.
Perfect. |
@glenn-jocher I was testing the segment training with the latest code, but I met this issue when doing val: Some other code I think can be updated:
|
I'm a little occupied today but I think I have a branch with image logging fix. I'll fix it by tomorrow |
@Laughing-q resolved now in latest PR. Bug was only on GPU so CI did not pick it up. @AyushExel we need a GPU CI runner |
@Laughing-q could you open a PR with your proposed changes? @AyushExel the GPU CI runner won't be easy, was looking around a bit. Jiri did this with a cloud K80's for lightning. Let's not worry about it right now but maybe add to our proposed feature list. |
@glenn-jocher yeah sure, done in there. |
update F.interpolate&&clean up
@Laughing-q thanks! Merged. |
for more information, see https://pre-commit.ci
@AyushExel @Laughing-q PR is merged. Thank you for your contributions to YOLOv5 🚀 and Vision AI ⭐ |
@glenn-jocher thanks for all the guidance on this and @Laughing-q for building the the initial segmentation models. This is a big step forward. |
This is really great! Cant wait to explore new possibilities with this. |
Usage:
TODO:
overlap-mask
by defaultnon_max_suppression_masks()
withnon_max_suppression()
?edict
dependency?🛠️ PR Summary
Made with ❤️ by Ultralytics Actions
🌟 Summary
Extended YOLOv5 object detection with segmentation capabilities.
📊 Key Changes
🎯 Purpose & Impact