Bỏ qua nội dung

Đếm đối tượng ở các vùng khác nhau bằng cách sử dụng Ultralytics YOLO 🚀

Đếm đối tượng theo vùng là gì?

Đếm đối tượng trong các vùng với Ultralytics YOLOv8 liên quan đến việc xác định chính xác số lượng đối tượng trong các khu vực được chỉ định bằng cách sử dụng tầm nhìn máy tính tiên tiến. Phương pháp này có giá trị để tối ưu hóa quy trình, tăng cường bảo mật và cải thiện hiệu quả trong nhiều ứng dụng khác nhau.



Đồng hồ: Đếm đối tượng ở các vùng khác nhau bằng cách sử dụng Ultralytics YOLO11 | Ultralytics Giải pháp 🚀

Ưu điểm của việc đếm đối tượng theo vùng?

  • Độ chính xác và độ chuẩn xác: Việc đếm đối tượng trong các khu vực có công nghệ thị giác máy tính tiên tiến đảm bảo số đếm chính xác và chuẩn xác, giảm thiểu các lỗi thường gặp khi đếm thủ công.
  • Cải thiện hiệu quả: Việc đếm đối tượng tự động giúp tăng cường hiệu quả hoạt động, cung cấp kết quả theo thời gian thực và hợp lý hóa quy trình trên nhiều ứng dụng khác nhau.
  • Tính linh hoạt và ứng dụng: Tính linh hoạt của việc đếm đối tượng ở nhiều khu vực giúp nó có thể áp dụng trong nhiều lĩnh vực, từ sản xuất và giám sát đến giám sát giao thông, góp phần vào tính hữu ích và hiệu quả rộng rãi của nó.

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

Bán lẻ Phố chợ
Đếm người ở các khu vực khác nhau bằng cách sử dụng Ultralytics YOLOv8 Đếm đám đông ở các khu vực khác nhau bằng cách sử dụng Ultralytics YOLOv8
Đếm người ở các khu vực khác nhau bằng cách sử dụng Ultralytics YOLOv8 Đếm đám đông ở các khu vực khác nhau bằng cách sử dụng Ultralytics YOLOv8

Ví dụ đếm vùng

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

# Define region points
# region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)] # Pass region as list

# pass region as dictionary
region_points = {
    "region-01": [(50, 50), (250, 50), (250, 250), (50, 250)],
    "region-02": [(640, 640), (780, 640), (780, 720), (640, 720)],
}

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

# Init Object Counter
region = solutions.RegionCounter(
    show=True,
    region=region_points,
    model="yolo11n.pt",
)

# 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 = region.count(im0)
    video_writer.write(im0)

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

Ultralytics Mã ví dụ

Các Ultralytics module đếm vùng có sẵn trong phần ví dụ của chúng tôi. Bạn có thể khám phá ví dụ này để tùy chỉnh mã và sửa đổi cho phù hợp với trường hợp sử dụng cụ thể của bạn.

Lý lẽ RegionCounter

Đây là một bảng với RegionCounter lập luận:

Tên Kiểu Mặc định Sự miêu tả
model str None Đường dẫn đến Ultralytics YOLO Tệp mẫu
region list [(20, 400), (1260, 400)] Danh sách các điểm xác định vùng đếm.
line_width int 2 Độ dày của đường cho hộp giới hạn.
show bool False Đánh dấu để kiểm soát việc hiển thị luồng video hay không.

CÂU HỎI THƯỜNG GẶP

Đếm đối tượng trong các vùng được chỉ định bằng cách sử dụng Ultralytics YOLOv8 ?

Đếm đối tượng trong các khu vực được chỉ định với Ultralytics YOLOv8 liên quan đến việc phát hiện và đếm số lượng đối tượng trong các khu vực được xác định bằng cách sử dụng thị giác máy tính tiên tiến. Phương pháp chính xác này nâng cao hiệu quả và độ chính xác trong nhiều ứng dụng khác nhau như sản xuất, giám sát và giám sát giao thông.

Làm thế nào để tôi chạy tập lệnh đếm đối tượng với Ultralytics YOLOv8 ?

Thực hiện theo các bước sau để chạy đếm đối tượng trong Ultralytics YOLOv8 :

  1. Sao chép Ultralytics kho lưu trữ và điều hướng đến thư mục:

    git clone https://github.com/ultralytics/ultralytics
    cd ultralytics/examples/YOLOv8-Region-Counter
    
  2. Thực hiện tập lệnh đếm vùng:

    python yolov8_region_counter.py --source "path/to/video.mp4" --save-img
    

Để biết thêm tùy chọn, hãy truy cập phần Đếm vùng chạy .

Tại sao tôi nên sử dụng Ultralytics YOLOv8 để đếm đối tượng theo vùng?

Sử dụng Ultralytics YOLOv8 để đếm đối tượng trong các khu vực mang lại một số lợi thế:

  • Độ chính xác và độ chuẩn xác: Giảm thiểu các lỗi thường gặp khi đếm thủ công.
  • Cải thiện hiệu quả: Cung cấp kết quả theo thời gian thực và hợp lý hóa quy trình.
  • Tính linh hoạt và ứng dụng: Áp dụng cho nhiều lĩnh vực khác nhau, nâng cao tiện ích của nó.

Khám phá những lợi ích sâu hơn trong phần Ưu điểm .

Có thể điều chỉnh các vùng đã xác định trong khi phát lại video không?

Vâng, với Ultralytics YOLOv8 , các vùng có thể được di chuyển tương tác trong khi phát lại video. Chỉ cần nhấp và kéo bằng nút chuột trái để định vị lại vùng. Tính năng này tăng cường tính linh hoạt cho các môi trường động. Tìm hiểu thêm trong phần mẹo về các vùng có thể di chuyển .

Một số ứng dụng thực tế của việc đếm đối tượng theo vùng là gì?

Đếm đối tượng với Ultralytics YOLOv8 có thể áp dụng vào nhiều tình huống thực tế:

  • Bán lẻ: Đếm số người để phân tích lưu lượng đi bộ.
  • Phố chợ: Quản lý mật độ đám đông.

Khám phá thêm các ví dụ trong phần Ứng dụng thực tế .

📅 Được tạo ra cách đây 1 năm ✏️ Đã cập nhật cách đây 13 ngày

Bình luận