diff --git a/docs/annotators.md b/docs/annotators.md index 3c2cc95f..75482f50 100644 --- a/docs/annotators.md +++ b/docs/annotators.md @@ -5,16 +5,16 @@ comments: true === "BoundingBox" ```python - import supervision as sv + import supervision as sv - image = ... - detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - bounding_box_annotator = sv.BoundingBoxAnnotator() - annotated_frame = bounding_box_annotator.annotate( + bounding_box_annotator = sv.BoundingBoxAnnotator() + annotated_frame = bounding_box_annotator.annotate( scene=image.copy(), detections=detections - ) + ) ```
@@ -26,16 +26,16 @@ comments: true === "RoundBox" ```python - import supervision as sv + import supervision as sv - image = ... - detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - round_box_annotator = sv.RoundBoxAnnotator() - annotated_frame = round_box_annotator.annotate( - scene=image.copy(), - detections=detections - ) + round_box_annotator = sv.RoundBoxAnnotator() + annotated_frame = round_box_annotator.annotate( + scene=image.copy(), + detections=detections + ) ```
@@ -54,9 +54,9 @@ comments: true corner_annotator = sv.BoxCornerAnnotator() annotated_frame = corner_annotator.annotate( - scene=image.copy(), - detections=detections - ) + scene=image.copy(), + detections=detections + ) ```
diff --git a/supervision/annotators/core.py b/supervision/annotators/core.py index 9ae81c95..7960d7ec 100644 --- a/supervision/annotators/core.py +++ b/supervision/annotators/core.py @@ -57,16 +57,16 @@ class BoundingBoxAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> bounding_box_annotator = sv.BoundingBoxAnnotator() - >>> annotated_frame = bounding_box_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + bounding_box_annotator = sv.BoundingBoxAnnotator() + annotated_frame = bounding_box_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![bounding-box-annotator-example](https://media.roboflow.com/ @@ -139,16 +139,16 @@ class MaskAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> mask_annotator = sv.MaskAnnotator() - >>> annotated_frame = mask_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + mask_annotator = sv.MaskAnnotator() + annotated_frame = mask_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![mask-annotator-example](https://media.roboflow.com/ @@ -222,16 +222,16 @@ class PolygonAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> polygon_annotator = sv.PolygonAnnotator() - >>> annotated_frame = polygon_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + polygon_annotator = sv.PolygonAnnotator() + annotated_frame = polygon_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![polygon-annotator-example](https://media.roboflow.com/ @@ -304,16 +304,16 @@ class ColorAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> color_annotator = sv.ColorAnnotator() - >>> annotated_frame = color_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + color_annotator = sv.ColorAnnotator() + annotated_frame = color_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![box-mask-annotator-example](https://media.roboflow.com/ @@ -394,16 +394,16 @@ class HaloAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> halo_annotator = sv.HaloAnnotator() - >>> annotated_frame = halo_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + halo_annotator = sv.HaloAnnotator() + annotated_frame = halo_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![halo-annotator-example](https://media.roboflow.com/ @@ -488,16 +488,16 @@ class EllipseAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> ellipse_annotator = sv.EllipseAnnotator() - >>> annotated_frame = ellipse_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + ellipse_annotator = sv.EllipseAnnotator() + annotated_frame = ellipse_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![ellipse-annotator-example](https://media.roboflow.com/ @@ -575,16 +575,16 @@ class BoxCornerAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> corner_annotator = sv.BoxCornerAnnotator() - >>> annotated_frame = corner_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + corner_annotator = sv.BoxCornerAnnotator() + annotated_frame = corner_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![box-corner-annotator-example](https://media.roboflow.com/ @@ -659,16 +659,16 @@ class CircleAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> circle_annotator = sv.CircleAnnotator() - >>> annotated_frame = circle_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + circle_annotator = sv.CircleAnnotator() + annotated_frame = circle_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` @@ -745,16 +745,16 @@ class DotAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> dot_annotator = sv.DotAnnotator() - >>> annotated_frame = dot_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + dot_annotator = sv.DotAnnotator() + annotated_frame = dot_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![dot-annotator-example](https://media.roboflow.com/ @@ -872,16 +872,16 @@ class LabelAnnotator: Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> label_annotator = sv.LabelAnnotator(text_position=sv.Position.CENTER) - >>> annotated_frame = label_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + label_annotator = sv.LabelAnnotator(text_position=sv.Position.CENTER) + annotated_frame = label_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![label-annotator-example](https://media.roboflow.com/ @@ -986,16 +986,16 @@ class BlurAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> blur_annotator = sv.BlurAnnotator() - >>> annotated_frame = circle_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + blur_annotator = sv.BlurAnnotator() + annotated_frame = circle_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![blur-annotator-example](https://media.roboflow.com/ @@ -1071,26 +1071,25 @@ class TraceAnnotator: Example: ```python - >>> import supervision as sv - >>> from ultralytics import YOLO + import supervision as sv + from ultralytics import YOLO - >>> model = YOLO('yolov8x.pt') + model = YOLO('yolov8x.pt') + trace_annotator = sv.TraceAnnotator() - >>> trace_annotator = sv.TraceAnnotator() + video_info = sv.VideoInfo.from_video_path(video_path='...') + frames_generator = sv.get_video_frames_generator(source_path='...') + tracker = sv.ByteTrack() - >>> video_info = sv.VideoInfo.from_video_path(video_path='...') - >>> frames_generator = sv.get_video_frames_generator(source_path='...') - >>> tracker = sv.ByteTrack() - - >>> with sv.VideoSink(target_path='...', video_info=video_info) as sink: - ... for frame in frames_generator: - ... result = model(frame)[0] - ... detections = sv.Detections.from_ultralytics(result) - ... detections = tracker.update_with_detections(detections) - ... annotated_frame = trace_annotator.annotate( - ... scene=frame.copy(), - ... detections=detections) - ... sink.write_frame(frame=annotated_frame) + with sv.VideoSink(target_path='...', video_info=video_info) as sink: + for frame in frames_generator: + result = model(frame)[0] + detections = sv.Detections.from_ultralytics(result) + detections = tracker.update_with_detections(detections) + annotated_frame = trace_annotator.annotate( + scene=frame.copy(), + detections=detections) + sink.write_frame(frame=annotated_frame) ``` ![trace-annotator-example](https://media.roboflow.com/ @@ -1167,24 +1166,24 @@ class HeatMapAnnotator: Example: ```python - >>> import supervision as sv - >>> from ultralytics import YOLO + import supervision as sv + from ultralytics import YOLO - >>> model = YOLO('yolov8x.pt') + model = YOLO('yolov8x.pt') - >>> heat_map_annotator = sv.HeatMapAnnotator() + heat_map_annotator = sv.HeatMapAnnotator() - >>> video_info = sv.VideoInfo.from_video_path(video_path='...') - >>> frames_generator = get_video_frames_generator(source_path='...') + video_info = sv.VideoInfo.from_video_path(video_path='...') + frames_generator = get_video_frames_generator(source_path='...') - >>> with sv.VideoSink(target_path='...', video_info=video_info) as sink: - ... for frame in frames_generator: - ... result = model(frame)[0] - ... detections = sv.Detections.from_ultralytics(result) - ... annotated_frame = heat_map_annotator.annotate( - ... scene=frame.copy(), - ... detections=detections) - ... sink.write_frame(frame=annotated_frame) + with sv.VideoSink(target_path='...', video_info=video_info) as sink: + for frame in frames_generator: + result = model(frame)[0] + detections = sv.Detections.from_ultralytics(result) + annotated_frame = heat_map_annotator.annotate( + scene=frame.copy(), + detections=detections) + sink.write_frame(frame=annotated_frame) ``` ![heatmap-annotator-example](https://media.roboflow.com/ @@ -1244,16 +1243,16 @@ class PixelateAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> pixelate_annotator = sv.PixelateAnnotator() - >>> annotated_frame = pixelate_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + pixelate_annotator = sv.PixelateAnnotator() + annotated_frame = pixelate_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![pixelate-annotator-example](https://media.roboflow.com/ @@ -1330,16 +1329,16 @@ class TriangleAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> triangle_annotator = sv.TriangleAnnotator() - >>> annotated_frame = triangle_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + triangle_annotator = sv.TriangleAnnotator() + annotated_frame = triangle_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![triangle-annotator-example](https://media.roboflow.com/ @@ -1423,16 +1422,16 @@ class RoundBoxAnnotator(BaseAnnotator): Example: ```python - >>> import supervision as sv + import supervision as sv - >>> image = ... - >>> detections = sv.Detections(...) + image = ... + detections = sv.Detections(...) - >>> round_box_annotator = sv.RoundBoxAnnotator() - >>> annotated_frame = round_box_annotator.annotate( - ... scene=image.copy(), - ... detections=detections - ... ) + round_box_annotator = sv.RoundBoxAnnotator() + annotated_frame = round_box_annotator.annotate( + scene=image.copy(), + detections=detections + ) ``` ![round-box-annotator-example](https://media.roboflow.com/