コンテンツへスキップ

Distance Calculation using Ultralytics YOLO11

距離計算とは?

Measuring the gap between two objects is known as distance calculation within a specified space. In the case of Ultralytics YOLO11, the bounding box centroid is employed to calculate the distance for bounding boxes highlighted by the user.



見るんだ: Distance Calculation using Ultralytics YOLO11

ビジュアル

Distance Calculation using Ultralytics YOLO11
Ultralytics YOLO11 Distance Calculation

距離計算の利点

  • Localization Precision: Enhances accurate spatial positioning in computer vision tasks.
  • Size Estimation: Allows estimation of object size for better contextual understanding.
距離計算
  • 任意の2つのバウンディングボックスをマウスの左クリックでクリックし、距離を計算する。

Distance Calculation using YOLO11 Example

import cv2

from ultralytics import solutions

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))

# Video writer
video_writer = cv2.VideoWriter("distance_calculation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# Init distance-calculation obj
distance = solutions.DistanceCalculation(model="yolo11n.pt", show=True)

# Process video
while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        print("Video frame is empty or video processing has been successfully completed.")
        break
    im0 = distance.calculate(im0)
    video_writer.write(im0)

cap.release()
video_writer.release()
cv2.destroyAllWindows()
  • マウス右クリックですべての描画点を削除
  • マウスの左クリックで点を描画できる
Distance is Estimate
Distance will be an estimate and may not be fully accurate, as it is calculated using 2-dimensional data, which lacks information about the object's depth.

論争 DistanceCalculation()

NameTypeDefault説明
modelstrNonePath to Ultralytics YOLO Model File
line_widthint2バウンディングボックスの線の太さ。
showboolFalseビデオストリームを表示するかどうかを制御するフラグ。

論争 model.track

議論タイプデフォルト説明
sourcestrNoneSpecifies the source directory for images or videos. Supports file paths and URLs.
persistboolFalseEnables persistent tracking of objects between frames, maintaining IDs across video sequences.
trackerstrbotsort.yamlSpecifies the tracking algorithm to use, e.g., bytetrack.yaml または botsort.yaml.
conffloat0.3Sets the confidence threshold for detections; lower values allow more objects to be tracked but may include false positives.
ioufloat0.5Sets the Intersection over Union (IoU) threshold for filtering overlapping detections.
classeslistNoneFilters results by class index. For example, classes=[0, 2, 3] only tracks the specified classes.
verboseboolTrueControls the display of tracking results, providing a visual output of tracked objects.

よくあるご質問

How do I calculate distances between objects using Ultralytics YOLO11?

オブジェクト間の距離を計算するには Ultralytics YOLO11検出されたオブジェクトのバウンディングボックスのセントロイドを特定する必要があります。この処理には DistanceCalculation class fromUltralytics' solutions モジュールを使って、モデルのトラッキング出力を使って距離を計算する。実装は 距離計算の例.

What are the advantages of using distance calculation with Ultralytics YOLO11?

Using distance calculation with Ultralytics YOLO11 offers several advantages:

  • ローカリゼーションの精度:オブジェクトの正確な空間位置決めを提供します。
  • サイズの推定:物理的なサイズを推定し、より良い文脈理解に貢献します。
  • シーン理解:3Dシーンの理解を強化し、自律走行や監視などのアプリケーションにおける意思決定の改善を支援する。

Can I perform distance calculation in real-time video streams with Ultralytics YOLO11?

Yes, you can perform distance calculation in real-time video streams with Ultralytics YOLO11. The process involves capturing video frames using オープンCV, running YOLO11 object detection, and using the DistanceCalculation クラスを使用して、連続するフレームのオブジェクト間の距離を計算します。詳細な実装については ビデオ・ストリームの例.

How do I delete points drawn during distance calculation using Ultralytics YOLO11?

To delete points drawn during distance calculation with Ultralytics YOLO11, you can use a right mouse click. This action will clear all the points you have drawn. For more details, refer to the note section under the distance calculation example.

What are the key arguments for initializing the DistanceCalculation class in Ultralytics YOLO11?

を初期化するための主要な引数である。 DistanceCalculation class in Ultralytics YOLO11 include:

  • model: Model file path.
  • show:ビデオストリームを表示するかどうかを示すフラグ。
  • line_width: Thickness of bounding box and the lines drawn on the image.

詳細なリストとデフォルト値については、DistanceCalculationの引数を参照してください。

📅 Created 10 months ago ✏️ Updated 1 day ago

コメント