[go: nahoru, domu]

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

supervision-0.19.0 release #991

Merged
merged 437 commits into from
Mar 15, 2024
Merged

supervision-0.19.0 release #991

merged 437 commits into from
Mar 15, 2024

Conversation

SkalskiP
Copy link
Collaborator
@SkalskiP SkalskiP commented Mar 12, 2024

πŸ“… Timeline

supervision-0.19.0 release is around the corner. Here is the timeline:

  • 14 Mar 2024 08:00 PM CEST (UTC +2) / 23 Jan 2024 11:00 AM PDT (UTC -7) - merge develop into main - closing list supervision-0.19.0 features
  • 15 Mar 2023 11:00 AM CEST (UTC +2) / 24 Jan 2023 02:00 AM PDT (UTC -7) - release supervision-0.19.0

πŸͺ΅ Changelog

πŸ§‘β€πŸ³ Cookbooks

Supervision Cookbooks - A curated open-source collection crafted by the community, offering practical examples, comprehensive guides, and walkthroughs for leveraging Supervision alongside diverse Computer Vision models. (#860)

πŸš€ Added

  • sv.CSVSink allowing for the straightforward saving of image, video, or stream inference results in a .csv file. (#818)
import supervision as sv
from ultralytics import YOLO

model = YOLO(<SOURCE_MODEL_PATH>)
csv_sink = sv.CSVSink(<RESULT_CSV_FILE_PATH>)
frames_generator = sv.get_video_frames_generator(<SOURCE_VIDEO_PATH>)

with csv_sink:
    for frame in frames_generator:
        result = model(frame)[0]
        detections = sv.Detections.from_ultralytics(result)
        csv_sink.append(detections, custom_data={<CUSTOM_LABEL>:<CUSTOM_DATA>})
traffic_csv_2.mp4
  • sv.JSONSink allowing for the straightforward saving of image, video, or stream inference results in a .json file. (#819)
import supervision as sv
from ultralytics import YOLO

model = YOLO(<SOURCE_MODEL_PATH>)
json_sink = sv.JSONSink(<RESULT_JSON_FILE_PATH>)
frames_generator = sv.get_video_frames_generator(<SOURCE_VIDEO_PATH>)

with json_sink:
    for frame in frames_generator:
        result = model(frame)[0]
        detections = sv.Detections.from_ultralytics(result)
        json_sink.append(detections, custom_data={<CUSTOM_LABEL>:<CUSTOM_DATA>})
import cv2
import supervision as sv
from inference import get_model

image = cv2.imread(<SOURCE_IMAGE_PATH>)
model = get_model(model_id="yolov8n-640")

result = model.infer(image)[0]
detections = sv.Detections.from_inference(result)

crop_annotator = sv.CropAnnotator()
annotated_frame = crop_annotator.annotate(
    scene=image.copy(),
    detections=detections
)
test-5-optimized.mp4

🌱 Changed

  • sv.ByteTrack.reset allowing users to clear trackers state, enabling the processing of multiple video files in sequence. (#827)
  • sv.LineZoneAnnotator allowing to hide in/out count using display_in_count and display_out_count properties. (#802)
  • sv.ByteTrack input arguments and docstrings updated to improve readability and ease of use. (#787)

Warning

The track_buffer, track_thresh, and match_thresh parameters in sv.ByterTrack are deprecated and will be removed in supervision-0.23.0. Use lost_track_buffer, track_activation_threshold, and minimum_matching_threshold instead.

  • sv.PolygonZone to now accept a list of specific box anchors that must be in zone for a detection to be counted. (#910)

Warning

The triggering_position parameter in sv.PolygonZone is deprecated and will be removed in supervision-0.23.0. Use triggering_anchors instead.

  • Annotators adding support for Pillow images. All supervision Annotators can now accept an image as either a numpy array or a Pillow Image. They automatically detect its type, draw annotations, and return the output in the same format as the input. (#875)

πŸ› οΈ Fixed

πŸ† Contributors

@onuralpszr (Onuralp SEZER), @LinasKo (Linas Kondrackis), @LeviVasconcelos (Levi Vasconcelos), @AdonaiVera (Adonai Vera), @xaristeidou (Christoforos Aristeidou), @Kadermiyanyedi (Kader Miyanyedi), @NickHerrig (Nick Herrig), @PacificDou (Shuyang Dou), @iamhatesz (Tomasz Wrona), @capjamesg (James Gallagher), @sansyo, @SkalskiP (Piotr Skalski)

NickHerrig and others added 30 commits February 8, 2024 12:18
…-css-update

cookbooks page HTML optimisation + CSS update
Bumps [ipywidgets](https://github.com/jupyter-widgets/ipywidgets) from 8.1.1 to 8.1.2.
- [Release notes](https://github.com/jupyter-widgets/ipywidgets/releases)
- [Commits](jupyter-widgets/ipywidgets@8.1.1...8.1.2)

---
updated-dependencies:
- dependency-name: ipywidgets
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [nbconvert](https://github.com/jupyter/nbconvert) from 7.14.2 to 7.16.0.
- [Release notes](https://github.com/jupyter/nbconvert/releases)
- [Changelog](https://github.com/jupyter/nbconvert/blob/main/CHANGELOG.md)
- [Commits](jupyter/nbconvert@v7.14.2...v7.16.0)

---
updated-dependencies:
- dependency-name: nbconvert
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
⬆️ Bump ipywidgets from 8.1.1 to 8.1.2
⬆️ Bump nbconvert from 7.14.2 to 7.16.0
[Cookbooks] - Improved functionality of cookbook cards
pre-commit-ci bot and others added 28 commits March 12, 2024 20:30
updates:
- [github.com/PyCQA/bandit: 1.7.7 β†’ 1.7.8](PyCQA/bandit@1.7.7...1.7.8)
- [github.com/astral-sh/ruff-pre-commit: v0.2.2 β†’ v0.3.2](astral-sh/ruff-pre-commit@v0.2.2...v0.3.2)
chore(pre_commit): ⬆ pre_commit autoupdate
…n_object_is_not_subscriptable

Fix for #993 TypeError: 'ImageDetectionPrediction' object is not subscriptable
fix: 🐞 update PolygonZone test and update traffic-analysis depricated codes are updated
ci: πŸ‘· update ruff config and group lint
Signed-off-by: Onuralp SEZER <thunderbirdtr@gmail.com>
Add occupancy analytics cookbook
Add `sv.CropAnnotator` which annotates a cropped part of detections
Signed-off-by: Onuralp SEZER <thunderbirdtr@gmail.com>
Bumps [notebook](https://github.com/jupyter/notebook) from 7.1.1 to 7.1.2.
- [Release notes](https://github.com/jupyter/notebook/releases)
- [Changelog](https://github.com/jupyter/notebook/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jupyter/notebook/compare/@jupyter-notebook/tree@7.1.1...@jupyter-notebook/tree@7.1.2)

---
updated-dependencies:
- dependency-name: notebook
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
⬆️ Bump notebook from 7.1.1 to 7.1.2
doc: πŸ“š json and csv example code syntax fix
`supervision-0.19.0` release changelog
@SkalskiP SkalskiP merged commit 55f93a8 into main Mar 15, 2024
11 checks passed
SkalskiP added a commit that referenced this pull request Mar 15, 2024
Merge pull request #991 from roboflow/develop
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.

None yet