Ultralytics YOLO27:

Ước tính tốc độ sử dụng Ultralytics YOLO26#

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

Ước tính tốc độ là quá trình tính toán tốc độ chuyển động của một đối tượng 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. Với Ultralytics YOLO26, giờ đây bạn có thể tính tốc độ của các đối tượng bằng cách sử dụng theo dõi đối tượng kết hợp với dữ liệu về khoảng cách và thời gian, rất cần thiết cho các tác vụ như giám sát giao thông và giám sát an ninh. Độ chính xác của việc ướ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, khiến đây 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à quy trình ra quyết định theo thời gian thực.



Watch: Speed Estimation using Ultralytics YOLO26
Khám phá blog của chúng tôi

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

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

  • Điều khiển giao thông hiệu quả: Ước tính tốc độ chính xác hỗ trợ quản lý luồng giao thông, nâng cao an toàn và giảm ùn tắc trên đường.
  • Điều hướng tự động chính xác: Trong các hệ thống tự động như xe tự lái, việc ước tính tốc độ đáng tin cậy đảm bảo phương tiện di chuyển 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 mối đe dọa tiềm ẩn, từ đó nâng cao hiệu quả của các biện pháp an ninh.

Ứng dụng thực tế#

Giao thông vận tảiGiao thông vận tải
Ước tính tốc độ trên đường bằng Ultralytics YOLO26Ước tính tốc độ trên cầu bằng Ultralytics YOLO26
Ước tính tốc độ trên đường bằng Ultralytics YOLO26Ước tính tốc độ trên cầu bằng Ultralytics YOLO26
Tốc độ chỉ là giá trị ước tính

Tốc độ chỉ mang tính ước tính và có thể không hoàn toàn chính xác. Ngoài ra, kết quả ước tính có thể thay đổi tùy theo thông số kỹ thuật của camera và các yếu tố liên quan.

Ước tính tốc độ với YOLO26#

Giải pháp SpeedEstimator theo dõi từng đối tượng qua các frame và chuyển đổi độ dịch chuyển theo pixel thành tốc độ bằng cách sử dụng tốc độ khung hình video (fps) và tỷ lệ theo thực tế (meter_per_pixel). Điều chỉnh meter_per_pixel cho phù hợp với thiết lập camera của bạn và sử dụng max_speed để giới hạn các giá trị ngoại lai từ những track bị nhiễu.

Ước tính tốc độ bằng Ultralytics YOLO
# Run a speed example
yolo solutions speed show=True

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

# Adjust meter per pixel value based on camera configuration
yolo solutions speed meter_per_pixel=0.05

Các argument của SpeedEstimator#

Dưới đây là bảng các tham số của SpeedEstimator:

Đối sốKiểuMặc địnhMô tả
modelstrNoneĐường dẫn đến file model Ultralytics YOLO.
fpsfloat30.0Số frame mỗi giây được dùng để tính tốc độ.
max_histint5Số điểm lịch sử tối đa cần tracking trên mỗi đối tượng để tính tốc độ/hướng.
meter_per_pixelfloat0.05Hệ số scale dùng để chuyển đổi khoảng cách pixel sang đơn vị thực tế.
max_speedint120Giới hạn tốc độ tối đa trong các lớp phủ trực quan (được dùng trong alert).
line_widthint2Độ dày đường kẻ cho các box, keypoint và số lượng mà solution vẽ.
verboseboolTrueBật log theo từng frame của solution, gồm kích thước input, số lượng class và tốc độ xử lý. Riêng lệnh tracking luôn ở chế độ im lặng.

Giải pháp SpeedEstimator cho phép sử dụng các tham số track:

Đối sốKiểuMặc địnhMô tả
trackerstr'botsort.yaml'Chỉ định thuật toán theo dõi cần sử dụng. Các tùy chọn tích hợp sẵn: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml.
conffloat0.25Thiết lập ngưỡng độ tin cậy cho các detection; 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 false positive.
ioufloat0.7Thiết lập ngưỡng Intersection over Union (IoU) để lọc các detection chồng lấn.
classeslistNoneLọc kết quả theo chỉ số class. Ví dụ, classes=[0, 2, 3] chỉ theo dõi các class được chỉ định.
devicestrNoneChỉ định thiết bị dùng cho inference (ví dụ: cpu, cuda:0 hoặc 0). Cho phép người dùng lựa chọn giữa CPU, một GPU cụ thể hoặc các thiết bị tính toán khác để thực thi model.
imgszint or tuple640Kích thước ảnh inference mục tiêu: một số nguyên cho ảnh vuông hoặc một cặp (height, width). Các hình dạng được điều chỉnh theo stride của model.
max_detint300Số lượng detection tối đa được giữ lại trên mỗi frame trước khi tracking, giới hạn các đối tượng mà một solution xử lý trong các scene đông đúc.
quantizeint or strNoneĐộ chính xác inference: 16 (FP16) hoặc 32/không thiết lập (FP32) đối với các model PyTorch và TorchScript; các định dạng khác tính toán ở độ chính xác mà artifact và runtime của chúng chọn. Thay thế cờ half đã bị loại bỏ.

Ngoài ra, các tùy chọn trực quan hóa sau đây cũng được hỗ trợ:

Đối sốKiểuMặc địnhMô tả
showboolFalseNếu True, hiển thị image hoặc video đã được annotate trong một cửa sổ. Hữu ích để nhận phản hồi trực quan ngay lập tức trong quá trình development hoặc testing.
show_confboolTrueHiển thị score confidence cho mỗi detection bên cạnh label. Cung cấp thông tin về mức độ chắc chắn của model đối với từng detection.
show_labelsboolTrueHiển thị label cho mỗi detection trong output trực quan. Cung cấp nhận biết tức thì về các object được phát hiện.

FAQ#

  • Ước tính tốc độ của đối tượng bằng Ultralytics YOLO26 kết hợp phát hiện đối tượng và theo dõi. Model phát hiện các đối tượng trong từng frame, theo dõi chúng qua các frame, rồi chuyển đổi khoảng cách di chuyển giữa các frame thành tốc độ bằng cách sử dụng tốc độ khung hình và tỷ lệ meter_per_pixel. Ví dụ Python ở trên chạy toàn bộ pipeline này — truyền video của bạn vào và điều chỉnh meter_per_pixel cho phù hợp với camera. Để biết thêm thông tin nền tảng, hãy tham khảo bài viết chính thức trên blog của chúng tôi.

  • Sử dụng Ultralytics YOLO26 để ướ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 độ phương tiện để phát hiện tình trạng chạy quá tốc độ và cải thiện an toàn đường bộ.
    • Giám sát theo 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 YOLO26 để giám sát hiệu quả luồng giao thông và tình trạng ùn tắc.
    • Khả năng mở rộng: Triển khai model trên nhiều cấu hình 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ó khả năng mở rộng cho những triển khai quy mô lớn.

    Để xem thêm các ứng dụng, hãy tham khảo các ưu điểm của việc ước tính tốc độ.

  • Có, YOLO26 có thể tích hợp với các framework AI khác như TensorFlow và PyTorch. Ultralytics hỗ trợ export model YOLO26 sang nhiều định dạng khác nhau như ONNX, TensorRTCoreML, đảm bảo khả năng tương tác liền mạch với các framework ML khác.

    Để export model YOLO26 sang định dạng ONNX:

    yolo export model=yolo26n.pt format=onnx

    Tìm hiểu thêm về việc export model trong hướng dẫn export của chúng tôi.

  • Độ chính xác của việc ước tính tốc độ bằng Ultralytics YOLO26 phụ thuộc vào nhiều 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, cũng như các biến số môi trường. Mặc dù bộ ước tính tốc độ cung cấp các kết quả ước tính đáng tin cậy, kết quả có thể không chính xác 100% do sự khác biệt về tốc độ xử lý frame và hiện tượng đối tượng bị che khuất.

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

    Để biết thêm các mẹo cải thiện độ chính xác, hãy xem phần Đối số SpeedEstimator.

Bình luận