Khám phá Triệt tiêu không tối đa (NMS) để phát hiện đối tượng. Tìm hiểu cách nó tinh chỉnh kết quả, nâng cao độ chính xác và cung cấp năng lượng cho các ứng dụng AI như YOLO.
Triệt tiêu không cực đại (Non-Maximum Suppression - NMS) là một thuật toán hậu xử lý cơ bản được sử dụng trong thị giác máy tính, đặc biệt là trong các tác vụ phát hiện đối tượng. Mục đích chính của nó là làm sạch đầu ra của một mô hình phát hiện bằng cách lọc ra các khung giới hạn dư thừa và chồng chéo để đảm bảo rằng mỗi đối tượng chỉ được xác định một lần. Khi một mô hình phát hiện đối tượng, chẳng hạn như Ultralytics YOLO, đưa ra các dự đoán, nó thường tạo ra nhiều hộp ứng viên xung quanh cùng một đối tượng, mỗi hộp có một điểm tin cậy khác nhau. NMS chọn một cách thông minh hộp giới hạn tốt nhất duy nhất cho mỗi đối tượng và triệt tiêu, hoặc loại bỏ, tất cả các hộp chồng chéo khác được coi là không tối đa.
Thuật toán NMS hoạt động bằng cách lặp qua các hộp giới hạn được dự đoán và đưa ra quyết định dựa trên hai số liệu chính: điểm tin cậy và ngưỡng Intersection over Union (IoU). Quá trình này có thể được tóm tắt trong các bước sau:
Ngưỡng IoU là một siêu tham số quan trọng do người dùng xác định. Ngưỡng IoU thấp sẽ dẫn đến ít phát hiện hơn, vì nó sẽ loại bỏ các hộp có độ chồng chéo nhỏ, trong khi ngưỡng cao có thể cho phép nhiều lần phát hiện cho cùng một đối tượng. Tinh chỉnh ngưỡng này thường là một phần của việc tối ưu hóa hiệu suất của mô hình trên một bộ dữ liệu cụ thể.
NMS là một thành phần quan trọng trong nhiều ứng dụng AI thực tế dựa trên khả năng phát hiện đối tượng chính xác.
NMS đặc biệt là một bước hậu xử lý được áp dụng sau khi một mô hình phát hiện đối tượng đã tạo ra tập hợp ban đầu các bounding box tiềm năng. Nó không nên bị nhầm lẫn với kiến trúc phát hiện, chẳng hạn như sự khác biệt giữa các detector dựa trên anchor và các detector không dựa trên anchor. Các kiến trúc này xác định cách các box tiềm năng được đề xuất, trong khi NMS tinh chỉnh các đề xuất này.
Điều thú vị là, chi phí tính toán và các tắc nghẽn tiềm ẩn liên quan đến NMS đã thúc đẩy nghiên cứu về các trình phát hiện đối tượng không cần NMS. Các mô hình như YOLOv10 tích hợp các cơ chế trong quá trình huấn luyện để vốn dĩ tránh dự đoán các hộp dư thừa, nhằm giảm độ trễ suy luận và cho phép phát hiện đầu cuối thực sự. Điều này trái ngược với các phương pháp truyền thống như Ultralytics YOLOv8 hoặc YOLOv5, trong đó NMS vẫn là một phần tiêu chuẩn và thiết yếu của quy trình suy luận. Bạn có thể khám phá các so sánh kỹ thuật, chẳng hạn như YOLOv10 so với YOLOv8, trong tài liệu của chúng tôi. Các biến thể như Soft-NMS cung cấp các phương pháp thay thế làm giảm điểm số của các hộp chồng chéo thay vì loại bỏ chúng hoàn toàn.
NMS được tích hợp liền mạch trong hệ sinh thái Ultralytics. Các mô hình Ultralytics YOLO tự động áp dụng NMS trong quá trình dự đoán (predict
) và xác thực (val
) các chế độ, đảm bảo người dùng nhận được kết quả phát hiện rõ ràng và chính xác theo mặc định. Các tham số kiểm soát hành vi NMS (như ngưỡng IoU và ngưỡng tin cậy) thường có thể được điều chỉnh cho các nhu cầu ứng dụng cụ thể.
Các nền tảng như Ultralytics HUB tiếp tục trừu tượng hóa các chi tiết này, cho phép người dùng huấn luyện mô hình và triển khai chúng ở những nơi NMS được xử lý tự động như một phần của quy trình được tối ưu hóa. Sự tích hợp này đảm bảo rằng người dùng, bất kể chuyên môn kỹ thuật sâu rộng của họ về MLOps, đều có thể hưởng lợi từ kết quả phát hiện đối tượng hiện đại cho các tác vụ thị giác máy tính khác nhau. Chi tiết triển khai cụ thể trong framework Ultralytics có thể được khám phá trong tài liệu tham khảo về các tiện ích của Ultralytics. Để biết thêm định nghĩa, hãy xem Bảng chú giải thuật ngữ Ultralytics chính.