IoU, GIoU, DIoU, CIoU là gì?

IoU( Intersection over Union) là độ đo tỉ lệ phần giao và hội của hai hình chữ nhật được xác định bằng công thức:

IoU equation

Trong đó:
Màu xanh lá là phần hội của A và B
Màu xanh dương là phần giao của A và B

Khi hai hình chữ nhật A và B không có phần hội độ thì bất kể khoảng cách giữa A và B là bao xa thì IoU vẫn luôn bằng zero. Do đó người ta đề xuất độ đo GIoU(General Intersection over Union) nhằm khắc phục nhược điểm này.

GIoU khắc phục nhược điểm này bằng cách bổ sung tham số mới là diện tích của hình chữ nhật nhỏ nhất (C) bao phủ cả A và B. Công thức tính như sau:

GIoU equation

GIoU đã có khả năng đánh giá khi hai hình chữ nhật không có phần hội tuy nhiên khi sử dụng GIoU làm hàm mất mát:

GIoU loss function

Ta có thể thấy nếu A và B ở một số vị trí đặc biệt hàm lỗi có xu hướng tối thiểu hóa diện tích của C trước khi hội tụ. Do đó người ta tiếp tục đề xuất thêm độ đo mới gọi là DIoU (distance intersection over union).

Đúng như tên gọi DIoU không sử dụng diện tích mà sử dụng khoảng cách Euclid giữa hai tâm của A và B chuẩn hóa với đường chéo của C. Do đó hàm mất mát DIoU hội tụ nhanh hơn so với GIoU. Công thức hàm mất mát DIoU:

DIoU loss function

Ngoài ra tác giả còn đề xuất thêm độ đo CIoU (complete intersection over union) độ đo này tương tự DIoU tuy nhiên nó bổ sung thêm tham số là tỉ lệ giữa A và B là α và υ. Hàm mất mát CIoU được tính như sau:

CIoU loss function

Trong đó α là tham số cân bằng tỉ lệ giữa A và B, khi IoU(A,B) < 0.5 thì α = 0; nếu IoU(A,B) >= 0.5 thì α được tính bằng công thức:

trong đó υ giúp đo lường tính nhất quán tỉ lệ giữa chiều rộng và chiều cao giữa A và B được tính bằng công thức:

Kết luận

CIoU loss là hàm lỗi tối ưu nhất tuy nhiên độ phức tạp cũng cao nhất, để lựa chọn phương pháp hiệu quả vẫn cần đánh giá bằng thực nghiệm.

Tài liệu tham khảo

Leave a Reply