-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Vectorize line zone #1228
Vectorize line zone #1228
Conversation
Hi @tc360950, What's the best way to test this? Is there a Colab we can use? |
I did some basic verification with this code: https://colab.research.google.com/drive/1rA0wXfaPlGnGKzn6wVA_x01jcX9Dr8Gu?usp=sharing I see no regressions, after testing with @tc360950, if you have a better test, let us know 😉 |
Hey @tc360950, I've submitted some review comments. The changes are very small - if you can finish by Tuesday, there's a very high chance we'd include this in the next release! 🚀 |
I actually went a little further - I've pasted the vectorized version into a notebook and compared results to the old implementation after every frame: |
This is awesome. A very high quality contribution. Thank you very much! |
Description
This is a follow-up to 1205.
In this PR I've vectorized LineZone to achieve better performance.
As previously all three approaches (the one from
develop
, the one from 1205, and the one from this PR)have been run on Yolov8m + ByteTrack + LineZone run 10 times on market square video.
This time I've also checked what happens when all detections are duplicated X times (resulting in a larger number of tracked objects).
The total time each LineZone version takes to compute on all frames is (seconds):
develop
develop
As you can see the one from previous PR always "wins" but I find the difference small enough, especially if you find this version more readable.
Type of change
Please delete options that are not relevant.