Skip to content
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

Why is the infer time of the same yolov3 model different under YOLOv3 detect.py and YOLOv5 detect.py? #1881

Closed
1 task done
Forever518 opened this issue Dec 30, 2021 · 5 comments
Labels
question Further information is requested Stale

Comments

@Forever518
Copy link

Search before asking

Question

I have trained a YOLOv3 model with COCO dataset and I got different inference time when I used detect.py of YOLOv3 and YOLOv5. The V100 detection time per image under YOLOv3 is about 9ms but under YOLOv5 it's about 13ms+. So I wonder what's the difference between the validation or detection of YOLOv3 and YOLOv5?

Additional

BTW I found the YOLOv5 code can be used to train YOLOv3 when config yolov3.yaml. However the yolov3 model got higher performance than the one trained under YOLOv3 code where I have seen some training tricks from v4 and v5. What are the training optimizations of YOLOv5 or YOLOv4 that this YOLOv3 code has not implemented yet?

@Forever518 Forever518 added the question Further information is requested label Dec 30, 2021
@github-actions
Copy link

github-actions bot commented Dec 30, 2021

👋 Hello @Forever518, thank you for your interest in YOLOv3 🚀! Please visit our ⭐️ Tutorials to get started, where you can find quickstart guides for simple tasks like Custom Data Training all the way to advanced concepts like Hyperparameter Evolution.

If this is a 🐛 Bug Report, please provide screenshots and minimum viable code to reproduce your issue, otherwise we can not help you.

If this is a custom training ❓ Question, please provide as much information as possible, including dataset images, training logs, screenshots, and a public link to online W&B logging if available.

For business inquiries or professional support requests please visit https://ultralytics.com or email Glenn Jocher at glenn.jocher@ultralytics.com.

Requirements

Python>=3.6.0 with all requirements.txt installed including PyTorch>=1.7. To get started:

$ git clone https://github.com/ultralytics/yolov3
$ cd yolov3
$ pip install -r requirements.txt

Environments

YOLOv3 may be run in any of the following up-to-date verified environments (with all dependencies including CUDA/CUDNN, Python and PyTorch preinstalled):

Status

CI CPU testing

If this badge is green, all YOLOv3 GitHub Actions Continuous Integration (CI) tests are currently passing. CI tests verify correct operation of YOLOv3 training (train.py), validation (val.py), inference (detect.py) and export (export.py) on MacOS, Windows, and Ubuntu every 24 hours and on every commit.

@glenn-jocher
Copy link
Member

@Forever518 you are not correct, yolov3.pt inference times between this repo and ultralytics/yolov3 are identical:

Screen Shot 2021-12-30 at 8 40 31 AM

@Forever518
Copy link
Author

Forever518 commented Dec 31, 2021

Ohh I find I didn't update my local repo......So what are the remaining differences between this yolov3 repo and the yolov5 repo after merging YOLOv5 v6.0 compatibility update #1857? @glenn-jocher

@github-actions
Copy link

github-actions bot commented Feb 3, 2022

👋 Hello, this issue has been automatically marked as stale because it has not had recent activity. Please note it will be closed if no further activity occurs.

Access additional YOLOv3 🚀 resources:

Access additional Ultralytics ⚡ resources:

Feel free to inform us of any other issues you discover or feature requests that come to mind in the future. Pull Requests (PRs) are also always welcomed!

Thank you for your contributions to YOLOv3 🚀 and Vision AI ⭐!

@github-actions github-actions bot added the Stale label Feb 3, 2022
@github-actions github-actions bot closed this as completed Feb 8, 2022
@glenn-jocher
Copy link
Member

@Forever518 the remaining differences between the YOLOv3 repo and the YOLOv5 repo are mainly related to the architecture design and specific optimizations implemented in YOLOv5, such as different anchor box priors, model scaling, and training strategies. The YOLOv5 model brings in improvements and optimizations developed through experience working on v4 and v5. Feel free to explore the YOLOv5 codebase to learn more about the advancements and optimizations not present in the YOLOv3 codebase.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested Stale
Projects
None yet
Development

No branches or pull requests

2 participants