Non-Maximum Suppression (NMS) là một thuật toán quan trọng trong lĩnh vực thị giác máy tính, đặc biệt trong phát hiện đối tượng. Thuật toán này được áp dụng sau khi một mô hình phát hiện đối tượng (như YOLO, SSD hay Faster R-CNN) đã xác định một số hộp giới hạn cho cùng một đối tượng trong một bức ảnh. Mục tiêu của NMS là loại bỏ những hộp thừa để chỉ giữ lại hộp chính xác nhất cho mỗi đối tượng.
Quá trình NMS có thể được mô tả qua các bước chính sau đây:
Khi một mô hình phát hiện đối tượng được áp dụng vào hình ảnh, nó sẽ sản xuất một danh sách các hộp giới hạn (bounding boxes) và tương ứng với mỗi hộp là một giá trị độ tin cậy (confidence score). Mỗi hộp được mô tả bằng bốn tham số: toạ độ x, y, chiều rộng (width), và chiều cao (height).
Các hộp được sắp xếp theo độ tin cậy từ cao đến thấp. Hộp có độ tin cậy cao nhất sẽ được giữ lại và các hộp còn lại sẽ được xem xét so sánh.
Đối với mỗi hộp trong danh sách, NMS sẽ tính toán chỉ số Intersection over Union (IoU) giữa hộp đang được giữ lại và các hộp còn lại. IoU được tính bằng công thức:IoU=Area of overlapArea of union\text{IoU} = \frac{\text{Area of overlap}}{\text{Area of union}}IoU=Area of unionArea of overlap
Nếu giá trị IoU giữa hộp đã giữ lại và bất kỳ hộp nào khác vượt quá một ngưỡng xác định (thường là 0.5), hộp đó sẽ bị loại bỏ. Ngưỡng này có thể được điều chỉnh tùy thuộc vào yêu cầu cụ thể của ứng dụng.
Quá trình này tiếp tục cho đến khi không còn hộp nào để xem xét. Kết quả cuối cùng là danh sách các hộp được chọn, mỗi hộp đại diện cho một đối tượng duy nhất trong bức ảnh.
Để khắc phục một số nhược điểm của NMS, một số biến thể đã được phát triển:
NMS được ứng dụng rộng rãi trong nhiều lĩnh vực như:
Non-Maximum Suppression là một kỹ thuật quan trọng trong việc cải thiện hiệu suất của các mô hình phát hiện đối tượng. Việc hiểu rõ về NMS, cách thức hoạt động và ứng dụng của nó có thể giúp các nhà phát triển tối ưu hóa các hệ thống thị giác máy tính của mình, từ đó nâng cao độ chính xác và hiệu quả trong các nhiệm vụ thực tế. Việc lựa chọn và điều chỉnh ngưỡng IoU một cách hợp lý là rất quan trọng để đạt được kết quả tốt nhất.