Dự án hệ thống báo động an ninh sử dụng Ultralytics YOLO11
Dự án Hệ thống báo động an ninh sử dụng Ultralytics YOLO11 tích hợp các khả năng thị giác máy tính tiên tiến để tăng cường các biện pháp an ninh. YOLO11, được phát triển bởi Ultralytics, cung cấp phát hiện đối tượng theo thời gian thực, cho phép hệ thống xác định và ứng phó với các mối đe dọa an ninh tiềm ẩn một cách nhanh chóng. Dự án này mang lại một số lợi thế:
- Phát hiện theo thời gian thực: Hiệu quả của YOLO11 cho phép Hệ thống báo động an ninh phát hiện và ứng phó với các sự cố an ninh trong thời gian thực, giảm thiểu thời gian ứng phó.
- Độ chính xác: YOLO11 nổi tiếng về độ chính xác trong việc phát hiện vật thể, giảm thiểu các kết quả dương tính giả và nâng cao độ tin cậy của hệ thống báo động an ninh.
- Khả năng tích hợp: Dự án có thể được tích hợp liền mạch với cơ sở hạ tầng an ninh hiện có, cung cấp một lớp giám sát thông minh được nâng cấp.
Xem: Hệ thống báo động an ninh với Ultralytics YOLO11 + Các giải pháp Phát Hiện Đối Tượng
Lưu ý
Cần tạo mật khẩu ứng dụng
- Điều hướng đến Trình tạo mật khẩu ứng dụng, chỉ định tên ứng dụng, chẳng hạn như "dự án bảo mật" và lấy mật khẩu gồm 16 chữ số. Sao chép mật khẩu này và dán vào vị trí được chỉ định
password
trường trong đoạn mã dưới đây.
Hệ thống Báo động An ninh sử dụng Ultralytics YOLO
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
# Video writer
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("security_output.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
from_email = "abc@gmail.com" # the sender email address
password = "---- ---- ---- ----" # 16-digits password generated via: https://myaccount.google.com/apppasswords
to_email = "xyz@gmail.com" # the receiver email address
# Initialize security alarm object
securityalarm = solutions.SecurityAlarm(
show=True, # display the output
model="yolo11n.pt", # i.e. yolo11s.pt, yolo11m.pt
records=1, # total detections count to send an email
)
securityalarm.authenticate(from_email, password, to_email) # authenticate the email server
# 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
results = securityalarm(im0)
# print(results) # access the output
video_writer.write(results.plot_im) # write the processed frame.
cap.release()
video_writer.release()
cv2.destroyAllWindows() # destroy all opened windows
Vậy là xong! Khi bạn thực thi mã, bạn sẽ nhận được một thông báo duy nhất trên email của mình nếu có bất kỳ đối tượng nào được phát hiện. Thông báo được gửi ngay lập tức, không lặp đi lặp lại. Tuy nhiên, bạn có thể tùy chỉnh mã để phù hợp với yêu cầu dự án của mình.
Mẫu Email Đã Nhận
SecurityAlarm
Các đối số
Đây là bảng với SecurityAlarm
các đối số:
Đối số | Loại | Mặc định | Mô tả |
---|---|---|---|
model |
str |
None |
Đường dẫn đến Tệp Mô hình Ultralytics YOLO. |
records |
int |
5 |
Tổng số lần phát hiện để kích hoạt email với hệ thống báo động an ninh. |
Hàm SecurityAlarm
giải pháp hỗ trợ nhiều loại track
tham số:
Đối số | Loại | Mặc định | Mô tả |
---|---|---|---|
tracker |
str |
'botsort.yaml' |
Chỉ định thuật toán theo dõi để sử dụng, ví dụ: bytetrack.yaml hoặc botsort.yaml . |
conf |
float |
0.3 |
Đặt ngưỡng tin cậy cho cá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ả. |
iou |
float |
0.5 |
Đặt ngưỡng Intersection over Union (IoU) để lọc các phát hiện trùng lặp. |
classes |
list |
None |
Lọ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. |
verbose |
bool |
True |
Kiểm soát việc hiển thị kết quả theo dõi, cung cấp đầu ra trực quan về các đối tượng được theo dõi. |
device |
str |
None |
Chỉ định thiết bị cho suy luận (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 mô hình. |
Hơn nữa, các cài đặt trực quan hóa sau đây có sẵn:
Đối số | Loại | Mặc định | Mô tả |
---|---|---|---|
show |
bool |
False |
Nếu True , hiển thị hình ảnh hoặc video đã chú thích trong một cửa sổ. Hữu ích để có phản hồi trực quan ngay lập tức trong quá trình phát triển hoặc thử nghiệm. |
line_width |
None or int |
None |
Chỉ định độ rộng đường của hộp giới hạn. Nếu None , độ rộng đường kẻ được tự động điều chỉnh dựa trên kích thước hình ảnh. Cung cấp tùy chỉnh trực quan để rõ ràng hơn. |
show_conf |
bool |
True |
Hiển thị điểm tin cậy cho mỗi lần phát hiện cùng với nhãn. Cung cấp cái nhìn sâu sắc về độ chắc chắn của mô hình cho mỗi lần phát hiện. |
show_labels |
bool |
True |
Hiển thị nhãn cho mỗi lần phát hiện trong đầu ra trực quan. Cung cấp sự hiểu biết ngay lập tức về các đối tượng được phát hiện. |
Cách thức hoạt động
Hệ thống báo động an ninh sử dụng theo dõi đối tượng để giám sát các nguồn cấp video và phát hiện các mối đe dọa an ninh tiềm ẩn. Khi hệ thống phát hiện các đối tượng vượt quá ngưỡng được chỉ định (được đặt bởi records
tham số), nó sẽ tự động gửi thông báo qua email kèm theo hình ảnh hiển thị các đối tượng được phát hiện.
Hệ thống tận dụng lớp SecurityAlarm cung cấp các phương thức để:
- Xử lý các khung hình và trích xuất các phát hiện đối tượng
- Chú thích khung hình bằng các hộp giới hạn xung quanh các đối tượng được phát hiện
- Gửi thông báo qua email khi vượt quá ngưỡng phát hiện
Việc triển khai này lý tưởng cho an ninh gia đình, giám sát bán lẻ và các ứng dụng giám sát khác, nơi thông báo ngay lập tức về các đối tượng được phát hiện là rất quan trọng.
Câu hỏi thường gặp
Ultralytics YOLO11 cải thiện độ chính xác của hệ thống báo động an ninh như thế nào?
Ultralytics YOLO11 tăng cường hệ thống báo động an ninh bằng cách cung cấp khả năng phát hiện đối tượng theo thời gian thực với độ chính xác cao. Các thuật toán tiên tiến của nó giảm đáng kể các cảnh báo sai, đảm bảo rằng hệ thống chỉ phản hồi với các mối đe dọa thực sự. Độ tin cậy tăng lên này có thể được tích hợp liền mạch với cơ sở hạ tầng an ninh hiện có, nâng cấp chất lượng giám sát tổng thể.
Tôi có thể tích hợp Ultralytics YOLO11 với cơ sở hạ tầng bảo mật hiện có của mình không?
Có, Ultralytics YOLO11 có thể được tích hợp liền mạch với cơ sở hạ tầng an ninh hiện có của bạn. Hệ thống hỗ trợ nhiều chế độ khác nhau và cung cấp sự linh hoạt để tùy chỉnh, cho phép bạn tăng cường thiết lập hiện có của mình bằng các khả năng phát hiện đối tượng nâng cao. Để biết hướng dẫn chi tiết về tích hợp YOLO11 vào các dự án của bạn, hãy truy cập phần tích hợp.
Yêu cầu về dung lượng lưu trữ để chạy Ultralytics YOLO11 là gì?
Việc chạy Ultralytics YOLO11 trên một thiết lập tiêu chuẩn thường đòi hỏi khoảng 5GB dung lượng đĩa trống. Điều này bao gồm không gian để lưu trữ mô hình YOLO11 và bất kỳ phụ thuộc bổ sung nào. Đối với các giải pháp dựa trên đám mây, Ultralytics HUB cung cấp khả năng quản lý dự án và xử lý tập dữ liệu hiệu quả, có thể tối ưu hóa nhu cầu lưu trữ. Tìm hiểu thêm về Gói Pro để biết các tính năng nâng cao bao gồm dung lượng lưu trữ mở rộng.
Điều gì làm cho Ultralytics YOLO11 khác biệt so với các mô hình phát hiện đối tượng khác như Faster R-CNN hoặc SSD?
Ultralytics YOLO11 cung cấp một lợi thế so với các mô hình như Faster R-CNN hoặc SSD với khả năng phát hiện theo thời gian thực và độ chính xác cao hơn. Kiến trúc độc đáo của nó cho phép xử lý hình ảnh nhanh hơn nhiều mà không ảnh hưởng đến độ chính xác, làm cho nó trở nên lý tưởng cho các ứng dụng nhạy cảm về thời gian như hệ thống báo động an ninh. Để so sánh toàn diện các mô hình phát hiện đối tượng, bạn có thể khám phá hướng dẫn của chúng tôi.
Làm thế nào để giảm tần suất báo động giả trong hệ thống an ninh của tôi bằng Ultralytics YOLO11?
Để giảm thiểu các kết quả dương tính giả, hãy đảm bảo mô hình Ultralytics YOLO11 của bạn được huấn luyện đầy đủ với một tập dữ liệu đa dạng và được chú thích tốt. Tinh chỉnh các siêu tham số và thường xuyên cập nhật mô hình với dữ liệu mới có thể cải thiện đáng kể độ chính xác phát hiện. Các kỹ thuật điều chỉnh siêu tham số chi tiết có thể được tìm thấy trong hướng dẫn điều chỉnh siêu tham số của chúng tôi.