Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Using the inference results of the YOLOv8-Human model, the same person is tracked between frames and identified as an individual.
The feature values of the tracked same person are averaged over any frame to create a stable value. The frequency of the number of frames for updating the feature value can be set by changing the following value of HumanModel.
let updateFrequency: Int = 120
From the first time a person is detected until the number of frames set by the update frequency is reached, the feature values for the frames up to that point are averaged, so there is a large fluctuation.
This tracking algorithm is very simple, so if person detection is lost for 15 frames, tracking will also be lost. I will consider changing to a better tracking method.
The tracking mode can be turned on/off with the tracking switch button.
🛠️ PR Summary
Made with ❤️ by Ultralytics Actions
🌟 Summary
This PR introduces significant enhancements and new features to the YOLO iOS app, improving object detection, tracking, and user interaction.
📊 Key Changes
PostProcessing.swift
,HumanModel.swift
, andTrackingModel.swift
to support post-processing of YOLOv8 model outputs, human feature extraction, and object tracking.yolov8l.mlpackage
,yolov8x.mlpackage
, etc.) from the project.BoundingBoxView.swift
to display additional information within bounding boxes (e.g., human features like weight, height).🎯 Purpose & Impact
Overall, these updates significantly enhance the app's capabilities, providing users with more detailed analyses and customizable detection options, thereby improving the user experience.