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

Segmentation #38

Closed
wants to merge 22 commits into from
Closed

Segmentation #38

wants to merge 22 commits into from

Conversation

john-rocky
Copy link
Contributor

@john-rocky john-rocky commented Jul 3, 2024

Segmentation feature has been added.
If you add a segment model and select seg in the task, you can view the segment mask in real time.

🛠️ PR Summary

Made with ❤️ by Ultralytics Actions

🌟 Summary

This PR introduces several enhancements and new features to the YOLO iOS app, including updates to the build configuration, addition of support for Swift code formatting, and new functionalities for various YOLO models.

📊 Key Changes

  • CI/CD Workflow Update:
    • Changed CI environment from ubuntu-latest to macos-latest.
    • Added Swift formatting support in GitHub Actions.
  • Project Configuration:
    • Added new Swift files: PostProcessing.swift, HumanModel.swift, TrackingModel.swift, PostProcessSegment.swift.
    • Updated build and marketing versions, and configuration parameters for the Xcode project.
    • Adjusted storyboard files for interface improvements and landscape support.
  • App Delegate & UI Enhancements:
    • Improved UI elements like labels, sliders, segmented controls, etc., for better user experience.
    • Implemented handling for various device orientations.
  • Bounding Box and Mask Processing:
    • Enhanced functionality for displaying bounding boxes and masks.
    • Implement changes to visualize and manage bounding boxes effectively.
  • Introduction of New Models:
    • Supported new YOLO models for human detection and segmentation.
  • Performance Improvements:
    • Implemented optimizations for inference and mask processing.
    • Improved FPS display and performance tracking.

🎯 Purpose & Impact

  • Better Build and Formatting:
    • Moving to macos-latest in CI ensures better compatibility with iOS-related tasks. Swift code formatting improves code consistency.
  • Enhanced User Interface:
    • Supports landscape mode and improves the responsiveness of the app.
    • Tracks user interaction and dynamically adjusts settings.
  • Addition of Advanced Models:
    • Supports human detection and tracking, expanding the app's capabilities.
    • Allows for advanced segmentation of detected objects.
  • Improved Performance:
    • Reduces latency and improves frame processing speed, leading to a smoother user experience.
    • Displays real-time performance metrics such as FPS, aiding in monitoring and debugging.
  • Robust and Scalable App:
    • New model support makes the application versatile for various detection tasks.
    • Better configuration and handling of resources ensure a more scalable and maintainable codebase.

These updates collectively aim to make the YOLO iOS app more robust, user-friendly, and versatile for a broader range of object detection and tracking purposes. 🚀📱✨

@john-rocky
Copy link
Contributor Author

Changed the colors of the segment mask and detection box to the same Ultralytics color palette as the Python version.
Also removed the central focus square.

@ultralytics ultralytics deleted a comment from pderrenger Jul 24, 2024
@pderrenger
Copy link
Member

@john-rocky thank you for sharing your update! It's great to see the alignment of the segment mask and detection box colors with the Ultralytics color palette. This consistency will definitely enhance the user experience.

If you encounter any issues or have further questions, please ensure you're using the latest version of the Ultralytics packages. This helps us ensure that any bugs or issues are addressed with the most recent fixes and improvements.

If you need any additional guidance or run into any challenges, feel free to ask. We're here to help! 😊

Keep up the great work!

Copy link
Member

@ambitious-octopus ambitious-octopus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @john-rocky , this is the next one to close. Here we need to resolve conflicts and remove all references to YOLO Human. We also need to sync this branch with main and as with the other PRs add references to the model and fix the package versions in the .storyboard files. We also need to remove the .png files and consequently the Contents.json file.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@john-rocky keep references here!

@john-rocky
Copy link
Contributor Author

@ambitious-octopus
I created a new seg branch to merge segmentation into main.
I removed the human feature and aligned the reference to the model and the version to main.
#58

Copy link
Member

@ambitious-octopus ambitious-octopus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@john-rocky Can we close this PR in favor of PR #58, which resolves the merge conflicts? In the future, please try to keep everything consolidated in a single PR. Thanks!

@john-rocky
Copy link
Contributor Author

@ambitious-octopus
This PR is closed.
It would have been time-consuming and complicated to keep only the segmentation feature and remove the other features, so for this time only I created a simple version in a separate branch that simply added the feature.
From now on, I will add only one feature per branch, so that they can be integrated with one PR.

@john-rocky john-rocky closed this Aug 21, 2024
Copy link
Member

@ambitious-octopus ambitious-octopus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@john-rocky Thanks for that, closed in favor of #58!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants