Bỏ để qua phần nội dung

Ước tính tốc độ bằng cách sử dụng Ultralytics YOLO11 🚀

Ước tính tốc độ là gì?

Ước tính tốc độ là quá trình tính toán tốc độ di chuyển của một vật thể trong một bối cảnh nhất định, thường được sử dụng trong các ứng dụng thị giác máy tính . Sử dụng Ultralytics YOLO11, giờ đây bạn có thể tính toán tốc độ của vật thể bằng cách theo dõi vật thể cùng với dữ liệu khoảng cách và thời gian, rất quan trọng đối với các tác vụ như giao thông và giám sát. Độ chính xác của ước tính tốc độ ảnh hưởng trực tiếp đến hiệu quả và độ tin cậy của nhiều ứng dụng khác nhau, khiến nó trở thành một thành phần quan trọng trong sự phát triển của các hệ thống thông minh và các quy trình ra quyết định theo thời gian thực.



Xem: Ước tính tốc độ bằng cách sử dụng Ultralytics YOLO11

Kiểm tra blog của chúng tôi

Để có cái nhìn sâu sắc hơn về ước tính tốc độ, hãy xem bài đăng trên blog của chúng tôi: Ultralytics YOLO11 để ước tính tốc độ trong các dự án thị giác máy tính

Ưu điểm của ước tính tốc độ?

  • Kiểm soát giao thông hiệu quả: Ước tính tốc độ chính xác hỗ trợ quản lý lưu lượng giao thông, tăng cường an toàn và giảm tắc nghẽn trên đường.
  • Điều hướng tự động chính xác: Trong các hệ thống tự trị như xe tự lái, ước tính tốc độ đáng tin cậy đảm bảo điều hướng xe an toàn và chính xác.
  • Tăng cường an ninh giám sát: Ước tính tốc độ trong phân tích giám sát giúp xác định các hành vi bất thường hoặc các mối đe dọa tiềm ẩn, nâng cao hiệu quả của các biện pháp bảo mật.

Ứng dụng trong thế giới thực

Giao thông vận tảiGiao thông vận tải
Ước tính tốc độ trên đường bằng cách sử dụng Ultralytics YOLO11Ước tính tốc độ trên cầu bằng cách sử dụng Ultralytics YOLO11
Ước tính tốc độ trên đường bằng cách sử dụng Ultralytics YOLO11Ước tính tốc độ trên cầu bằng cách sử dụng Ultralytics YOLO11

Ước tính tốc độ sử dụng ví dụ YOLO11

# Run a speed example
yolo solutions speed show=True

# Pass a source video
yolo solutions speed source="path/to/video/file.mp4"

# Pass region coordinates
yolo solutions speed region=[(20, 400), (1080, 404), (1080, 360), (20, 360)]
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("speed_management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# Define speed region points
speed_region = [(20, 400), (1080, 404), (1080, 360), (20, 360)]

speed = solutions.SpeedEstimator(
    show=True,  # Display the output
    model="yolo11n-pose.pt",  # Path to the YOLO11 model file.
    region=speed_region,  # Pass region points
    # classes=[0, 2],  # If you want to estimate speed of specific classes.
    # line_width=2,  # Adjust the line width for bounding boxes and text display
)

# Process video
while cap.isOpened():
    success, im0 = cap.read()

    if success:
        out = speed.estimate_speed(im0)
        video_writer.write(im0)
        if cv2.waitKey(1) & 0xFF == ord("q"):
            break
        continue

    print("Video frame is empty or video processing has been successfully completed.")
    break

cap.release()
cv2.destroyAllWindows()
Tốc độ là ước tính

Tốc độ sẽ là ước tính và có thể không hoàn toàn chính xác. Ngoài ra, ước tính có thể thay đổi tùy thuộc vào GPU tốc độ.

Lập luận SpeedEstimator

TênKiểuMặc địnhSự miêu tả
modelstrNoneĐường dẫn đến Ultralytics YOLO Tệp mẫu
regionlist[(20, 400), (1260, 400)]Danh sách các điểm xác định khu vực đếm.
line_widthint2Độ dày dòng cho các hộp giới hạn.
showboolFalseGắn cờ để kiểm soát việc có hiển thị luồng video hay không.

Lập luận model.track

Lý lẽKiểuMặc địnhSự miêu tả
sourcestrNoneChỉ định thư mục nguồn cho hình ảnh hoặc video. Hỗ trợ đường dẫn tệp và URL.
persistboolFalseCho phép theo dõi liên tục các đối tượng giữa các khung hình, duy trì ID trên các chuỗi video.
trackerstrbotsort.yamlChỉ định thuật toán theo dõi để sử dụng, ví dụ: bytetrack.yaml hoặc botsort.yaml.
conffloat0.3Đặt ngưỡng tin cậy cho việc phát hiện; giá trị thấp hơn cho phép theo dõi nhiều đối tượng hơn nhưng có thể bao gồm các kết quả dương tính giả.
ioufloat0.5Đặt ngưỡng Giao điểm trên Liên hợp (IoU) để lọc các phát hiện chồng chéo.
classeslistNoneLọc kết quả theo chỉ số lớp. Ví dụ, classes=[0, 2, 3] chỉ theo dõi các lớp được chỉ định.
verboseboolTrueKiểm soát việc hiển thị kết quả theo dõi, cung cấp hình ảnh trực quan về các đối tượng được theo dõi.

FAQ

Làm thế nào để tôi ước tính tốc độ của vật thể bằng cách sử dụng Ultralytics YOLO11 là gì?

Ước tính tốc độ của vật thể với Ultralytics YOLO11 bao gồm việc kết hợp các kỹ thuật phát hiện và theo dõi đối tượng . Đầu tiên, bạn cần phát hiện các đối tượng trong mỗi khung hình bằng mô hình YOLO11. Sau đó, theo dõi các đối tượng này qua các khung hình để tính toán chuyển động của chúng theo thời gian. Cuối cùng, sử dụng khoảng cách mà đối tượng di chuyển giữa các khung hình và tốc độ khung hình để ước tính tốc độ của nó.

Ví dụ:

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video/file.mp4")
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 = cv2.VideoWriter("speed_estimation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# Initialize SpeedEstimator
speed_obj = solutions.SpeedEstimator(
    region=[(0, 360), (1280, 360)],
    model="yolo11n.pt",
    show=True,
)

while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        break
    im0 = speed_obj.estimate_speed(im0)
    video_writer.write(im0)

cap.release()
video_writer.release()
cv2.destroyAllWindows()

Để biết thêm chi tiết, hãy tham khảo bài đăng trên blog chính thức của chúng tôi.

Lợi ích của việc sử dụng là gì? Ultralytics YOLO11 để ước tính tốc độ trong quản lý giao thông?

Sử dụng Ultralytics YOLO11 dùng để ước tính tốc độ mang lại những lợi thế đáng kể trong quản lý giao thông:

  • Tăng cường an toàn: Ước tính chính xác tốc độ xe để phát hiện quá tốc độ và cải thiện an toàn đường bộ.
  • Giám sát thời gian thực : Tận dụng khả năng phát hiện đối tượng theo thời gian thực của YOLO11 để giám sát lưu lượng giao thông và tình trạng tắc nghẽn một cách hiệu quả.
  • Khả năng mở rộng: Triển khai mô hình trên các thiết lập phần cứng khác nhau, từ thiết bị biên đến máy chủ, đảm bảo các giải pháp linh hoạt và có thể mở rộng để triển khai quy mô lớn.

Để biết thêm các ứng dụng, hãy xem ưu điểm của ước tính tốc độ.

YOLO11 có thể tích hợp với các nền tảng AI khác như TensorFlow hoặc PyTorch không?

Có, YOLO11 có thể được tích hợp với các khuôn khổ AI khác như TensorFlow Và PyTorch . Ultralytics cung cấp hỗ trợ cho việc xuất các mô hình YOLO11 sang nhiều định dạng khác nhau như ONNX , TensorRT , Và CoreML , đảm bảo khả năng tương tác trơn tru với các khuôn khổ ML khác.

Để xuất mô hình YOLO11 sang ONNX định dạng:

yolo export --weights yolo11n.pt --include onnx

Tìm hiểu thêm về các mô hình xuất trong hướng dẫn của chúng tôi về xuất khẩu.

Độ chính xác của ước tính tốc độ sử dụng là bao nhiêu? Ultralytics YOLO11 là gì?

Độ chính xác của ước tính tốc độ sử dụng Ultralytics YOLO11 phụ thuộc vào một số yếu tố, bao gồm chất lượng theo dõi đối tượng, độ phân giải và tốc độ khung hình của video và các biến môi trường. Mặc dù trình ước tính tốc độ cung cấp các ước tính đáng tin cậy, nhưng nó có thể không chính xác 100% do sự khác biệt về tốc độ xử lý khung hình và sự che khuất đối tượng.

Lưu ý: Luôn xem xét biên độ sai số và xác thực các ước tính bằng dữ liệu sự thật cơ bản khi có thể.

Để biết thêm các mẹo cải thiện độ chính xác, hãy kiểm tra Lập luận SpeedEstimator phần.

Tại sao chọn Ultralytics YOLO11 so với các mô hình phát hiện đối tượng khác như TensorFlow API phát hiện đối tượng?

Ultralytics YOLO11 cung cấp một số lợi thế so với các mô hình phát hiện đối tượng khác, chẳng hạn như TensorFlow API phát hiện đối tượng:

  • Hiệu suất thời gian thực : YOLO11 được tối ưu hóa để phát hiện thời gian thực, mang lại tốc độ và độ chính xác cao.
  • Dễ sử dụng : Được thiết kế với giao diện thân thiện với người dùng, YOLO11 đơn giản hóa việc đào tạo và triển khai mô hình.
  • Tính linh hoạt: Hỗ trợ nhiều tác vụ, bao gồm phát hiện đối tượng, phân đoạn và ước tính tư thế.
  • Cộng đồng và hỗ trợ : YOLO11 được hỗ trợ bởi một cộng đồng năng động và tài liệu mở rộng, đảm bảo các nhà phát triển có đủ nguồn lực họ cần.

Để biết thêm thông tin về lợi ích của YOLO11, hãy khám phá trang mô hình chi tiết của chúng tôi.

📅 Được tạo cách đây 10 tháng ✏️ Đã cập nhật cách đây 7 ngày

Ý kiến