You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit bcb37c2
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: docs/changelog.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,6 +11,8 @@ date_modified: 2026-10-16
11
11
12
12
- Transformed `sv.PolygonZone` anchors just outside the mask remain outside even when rounding would move a fractional coordinate onto the edge pixel. ([#2657](https://github.com/roboflow/supervision/pull/2657))
13
13
14
+
- `sv.Detections.from_ultralytics` now removes letterbox padding using the rounded content dimensions. Fractional padding no longer shifts or truncates segmentation masks when restoring the original image resolution. ([#2739](https://github.com/roboflow/supervision/pull/2739))
15
+
14
16
- `sv.Detections` indexed with a Python list of booleans, such as `detections[[c == 0 for c in detections.class_id]]`, now selects list-valued `data` with the same mask as its arrays. The list was read as positions, so `True` and `False` became the indices `1` and `0`: an all-`True` mask returned the second item for every row (`["cat", "dog", "bird"]` became `["dog", "dog", "dog"]`), any other mask failed with `ValueError: Length of list for key ... must be ...`, and a list of `np.bool_` values raised `TypeError`. Integer lists, slices and NumPy index arrays are unchanged. ([#2737](https://github.com/roboflow/supervision/pull/2737)) Integer-list selection allocates only for requested rows, avoiding quadratic position-array allocation when the smoother selects rows repeatedly.
15
17
16
18
- `sv.move_boxes` and `InferenceSlicer` translations no longer wrap integer coordinates when an offset crosses the input dtype's bounds. A `uint8` box at `[250, 0, 255, 10]` shifted by `[10, 0]` previously became `[4, 0, 9, 10]`; translations now promote integer results to `int64`, or `float64` when the result exceeds the `int64` range, while floating-point behavior is unchanged. ([#2734](https://github.com/roboflow/supervision/pull/2734))
0 commit comments