Đến nội dung chính
Thị giác máy tính

Image Segmentation: Semantic, Instance và Panoptic

Ba cách gán nhãn pixel và lựa chọn metric phù hợp với điều cần phân biệt.

Mức giải thích

Segmentation mô tả đối tượng và vùng ở mức pixel. Semantic, instance và panoptic khác nhau ở thông tin nhãn cần lưu, không đơn giản là ba mức chất lượng của cùng một đầu ra.

Mục tiêu học tập

  • Phân biệt class label và instance ID.
  • Chọn đúng dạng annotation cho một ứng dụng.
  • Tính IoU mask và hiểu giới hạn của điểm trung bình.

Cùng một cảnh, ba câu hỏi

Semantic cho mỗi pixel một class. Instance trả về mask và identity cục bộ cho từng object. Panoptic gán class và segment identity cho toàn cảnh; các stuff region không dùng identity theo cách tách từng object như thing.

Mask R-CNN thêm nhánh mask vào pipeline detection. Panoptic segmentation thống nhất mô tả thing và stuff, nhưng có nhiều kiến trúc khác nhau để tạo kết quả; không nhất thiết phải chạy ba mô hình nối tiếp.

Mask, loss và metric

Với tập pixel foreground P và G, IoU=∣P∩G∣/∣P∪G∣\mathrm{IoU}=|P\cap G|/|P\cup G|. Semantic segmentation thường học bằng loss trên pixel, có thể kết hợp các loss vùng. Mean IoU cần quy định tập lớp và cách xử lý lớp vắng.

Instance evaluation cần ghép mask với object thật; chỉ so tổng foreground không phát hiện lỗi gộp hai người thành một. Panoptic Quality đồng thời phản ánh chất lượng vùng ghép và các segment thừa/thiếu theo protocol.

Ví dụ chọn annotation

Mã minh họa bốn pixel foreground trong một mask nhỏ. Nó tính IoU nhị phân, không thực hiện instance matching, average precision hay Panoptic Quality. Tách evaluator theo tác vụ để tránh báo sai tên metric.

Workflow & kiến trúc

Cùng hai vật thể: semantic gán cùng một lớp cho cả hai; instance giữ hai ID; panoptic bổ sung lớp nền và giữ ID cho các thing. Các khối màu chỉ minh họa nhãn pixel.
01Chọn taxonomy
02Gán class / instance
03Học mask
04Đánh giá theo tác vụ
Workflow minh họa · Các bước cần được điều chỉnh theo bài toán thực tế.

Ứng dụng & giới hạn

  • Phân tích diện tích các vùng trong ảnh.
  • Tách từng vật thể cho đo hình dạng hoặc đếm.

Điểm mạnh

Cung cấp biên và diện tích chi tiết hơn bounding box.

Giới hạn cần nhớ

Gán nhãn tốn công; biên mờ, vật thể chồng lấp và taxonomy không nhất quán gây sai số.

Thử trong một project nhỏ

LEARN BY DOING

Vẽ một ảnh 5×5 có hai object chạm nhau. Viết ba đầu ra semantic, instance, panoptic; giải thích thông tin nào không thể khôi phục từ semantic mask.

PYTHON · VÍ DỤ MINH HỌA
prediction = {0, 1, 4, 5}
ground_truth = {0, 1, 5, 6}
intersection = len(prediction & ground_truth)
union = len(prediction | ground_truth)
iou = intersection / union
assert abs(iou - 3/5) < 1e-12
print({"intersection": intersection, "union": union, "iou": iou})

Pixel index giả định của một mask nhị phân; không phải kết quả thí nghiệm hoặc metric instance/panoptic.

Nguồn tham khảo

  1. He et al. — Mask R-CNN (2017)
  2. Kirillov et al. — Panoptic Segmentation (2019)

KEEP EXPLORING

Đọc tiếp để nối các ý tưởng.