-
-
Notifications
You must be signed in to change notification settings - Fork 125
(feat) Parallel loading and execution models WIP #384
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?
(feat) Parallel loading and execution models WIP #384
Conversation
demensions for native part
|
All Contributors have signed the CLA. ✅ |
|
👋 Hello @pinball83, thank you for submitting a
For more guidance, please refer to our Contributing Guide. This is an automated message and an engineer will be with you shortly. Thanks for contributing to Ultralytics! ✨🚀 |
UltralyticsAssistant
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.
🔍 PR Review
Made with ❤️ by Ultralytics Actions
The Android platform view no longer loads a model when only the legacy modelPath/task parameters are passed, which will break existing apps; we should restore the single-model fallback in the initializer.
💬 Posted 1 inline comment
📋 Skipped 1 file (lock files, minified, images, etc.)
| initialized = true | ||
| } | ||
| } else { | ||
| Log.w(TAG, "No models provided in creationParams; skipping model load") |
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.
creationParams used to rely on modelPath/task for single-model loading. With this branch we now skip setModel entirely whenever models isn’t supplied, so every existing caller that still sends the legacy params will end up with a camera preview and no inference. We need to keep the old fallback (e.g. call setModel(...) here) so the API remains backwards compatible.
|
I have read the CLA Document and I sign the CLA |
Change log level from warning to error for missing or invalid models and stop the YOLO view to prevent starting inference.
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
|
@pinball83 is this PR ready for review? |
not yet actually, I need to test ios part application so I've been wait chance to get iphone, so now I have one after couple day I finalise PR |
|
Thanks for the update and for signing the CLA—please mark this PR as Draft while you finish iOS testing; when ready, add a brief device/OS and FPS/latency matrix to the PR description, consider splitting platform changes from example‑app updates to keep review focused, then tag me to begin review; see the Development Workflow for expectations. See the Development Workflow for expectations. |
This reverts commit daa49b6.
🛠️ PR Summary
Made with ❤️ by Ultralytics Actions
WARNING⚠️ this PR is very large, summary may not cover all changes.
🌟 Summary
Multi-model refactor enabling concurrent model loading/inference across Android and iOS, with unified overlays, improved streaming payloads, and example app updates to use multiple YOLO models. 🎛️📱
📊 Key Changes
setModels) in YOLOPlatformView/YOLOView with parallel inference, shared executor, model generation guards, and unified overlay rendering for DETECT/SEGMENT/POSE/OBB.modelName,viewBoundingBox, combined results aggregation, throttling/frequency controls, and resilience for event channel reconnection.modelsargs and addssetModels(initial support + first-model fallback), retains thresholds/UI controls syncing, and streaming setup.YOLOModelSpec, dynamic toggling, and updated YOLOView invocation; simplified overlays to use controller-provided models.🎯 Purpose & Impact