Update distance-calculation solution (#16907)
Co-authored-by: UltralyticsAssistant <web@ultralytics.com>
This commit is contained in:
parent
1052cf41f8
commit
8e3846d377
6 changed files with 41 additions and 106 deletions
|
|
@ -43,12 +43,9 @@ Measuring the gap between two objects is known as distance calculation within a
|
|||
```python
|
||||
import cv2
|
||||
|
||||
from ultralytics import YOLO, solutions
|
||||
from ultralytics import solutions
|
||||
|
||||
model = YOLO("yolo11n.pt")
|
||||
names = model.model.names
|
||||
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
cap = cv2.VideoCapture("Path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
||||
|
|
@ -56,16 +53,14 @@ Measuring the gap between two objects is known as distance calculation within a
|
|||
video_writer = cv2.VideoWriter("distance_calculation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
|
||||
|
||||
# Init distance-calculation obj
|
||||
dist_obj = solutions.DistanceCalculation(names=names, view_img=True)
|
||||
distance = solutions.DistanceCalculation(model="yolo11n.pt", show=True)
|
||||
|
||||
while cap.isOpened():
|
||||
success, im0 = cap.read()
|
||||
if not success:
|
||||
print("Video frame is empty or video processing has been successfully completed.")
|
||||
break
|
||||
|
||||
tracks = model.track(im0, persist=True, show=False)
|
||||
im0 = dist_obj.start_process(im0, tracks)
|
||||
im0 = distance.calculate(im0)
|
||||
video_writer.write(im0)
|
||||
|
||||
cap.release()
|
||||
|
|
@ -84,13 +79,11 @@ Measuring the gap between two objects is known as distance calculation within a
|
|||
|
||||
### Arguments `DistanceCalculation()`
|
||||
|
||||
| `Name` | `Type` | `Default` | Description |
|
||||
| ---------------- | ------- | --------------- | --------------------------------------------------------- |
|
||||
| `names` | `dict` | `None` | Dictionary of classes names. |
|
||||
| `view_img` | `bool` | `False` | Flag to indicate if the video stream should be displayed. |
|
||||
| `line_thickness` | `int` | `2` | Thickness of the lines drawn on the image. |
|
||||
| `line_color` | `tuple` | `(255, 255, 0)` | Color of the lines drawn on the image (BGR format). |
|
||||
| `centroid_color` | `tuple` | `(255, 0, 255)` | Color of the centroids drawn (BGR format). |
|
||||
| `Name` | `Type` | `Default` | Description |
|
||||
| ------------ | ------ | --------- | ---------------------------------------------------- |
|
||||
| `model` | `str` | `None` | Path to Ultralytics YOLO Model File |
|
||||
| `line_width` | `int` | `2` | Line thickness for bounding boxes. |
|
||||
| `show` | `bool` | `False` | Flag to control whether to display the video stream. |
|
||||
|
||||
### Arguments `model.track`
|
||||
|
||||
|
|
@ -122,10 +115,8 @@ To delete points drawn during distance calculation with Ultralytics YOLO11, you
|
|||
|
||||
The key arguments for initializing the `DistanceCalculation` class in Ultralytics YOLO11 include:
|
||||
|
||||
- `names`: Dictionary mapping class indices to class names.
|
||||
- `view_img`: Flag to indicate if the video stream should be displayed.
|
||||
- `line_thickness`: Thickness of the lines drawn on the image.
|
||||
- `line_color`: Color of the lines drawn on the image (BGR format).
|
||||
- `centroid_color`: Color of the centroids (BGR format).
|
||||
- `model`: Model file path.
|
||||
- `show`: Flag to indicate if the video stream should be displayed.
|
||||
- `line_width`: Thickness of bounding box and the lines drawn on the image.
|
||||
|
||||
For an exhaustive list and default values, see the [arguments of DistanceCalculation](#arguments-distancecalculation).
|
||||
|
|
|
|||
|
|
@ -222,6 +222,7 @@ A heatmap generated with [Ultralytics YOLO11](https://github.com/ultralytics/ult
|
|||
|
||||
| Name | Type | Default | Description |
|
||||
| ------------ | ------ | ------------------ | ----------------------------------------------------------------- |
|
||||
| `model` | `str` | `None` | Path to Ultralytics YOLO Model File |
|
||||
| `colormap` | `int` | `cv2.COLORMAP_JET` | Colormap to use for the heatmap. |
|
||||
| `show` | `bool` | `False` | Whether to display the image with the heatmap overlay. |
|
||||
| `show_in` | `bool` | `True` | Whether to display the count of objects entering the region. |
|
||||
|
|
|
|||
|
|
@ -106,6 +106,7 @@ Monitoring workouts through pose estimation with [Ultralytics YOLO11](https://gi
|
|||
| `show` | `bool` | `False` | Flag to display the image. |
|
||||
| `up_angle` | `float` | `145.0` | Angle threshold for the 'up' pose. |
|
||||
| `down_angle` | `float` | `90.0` | Angle threshold for the 'down' pose. |
|
||||
| `model` | `str` | `None` | Path to Ultralytics YOLO Pose Model File |
|
||||
|
||||
### Arguments `model.predict`
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue