Nguyên tắc xuyên suốt:ML định vị vùng (ROI) — phép tính deterministic ra con số.
Model chỉ khoanh vùng; giá trị (EAT mL, Dice) là phép đếm/đo tường minh trên vùng đó → audit được, model không "đoán" ra số.
Đọc chuỗi CT → dựng volume 3D với giá trị Hounsfield Unit (HU) đúng. HU sai là sai toàn bộ downstream (mỡ nằm trong dải HU rất hẹp).
HU = pixel_lưu_trữ × RescaleSlope + RescaleIntercept
// air ≈ −1000, nước ≈ 0, mỡ ≈ −190…−30, cơ ≈ +40, xương/cản-quang > +300
Kiểm chứng độc lập: đọc 1 lát bằng pydicom, tự áp Rescale, so voxelwise với SimpleITK → bắt bug "rescale không áp". 200/200 volume đạt HU chuẩn (air = −1024 đồng nhất).
3Phase 1 · EAT — định vị ROI màng ngoài tim (silver) proxy
ImageCAS không có nhãn màng ngoài tim → tạo nhãn silver (bootstrap):
a
TotalSegmentator whole-heart
→
b
Convex hull từng lát
→
c
Dilation EDT ~3mm
→
d
ROI pericardium
Hạn chế đã biết: ROI ≈ 1.6× thể tích tim (hull bắc cầu qua lõm mạch lớn + dilation đồng nhất) → over-inclusive → EAT hơi cao. Đây là lý do EAT là proxy, cần gold label để chuẩn lâm sàng.
4Phase 1 · EAT — CÁCH TÍNH EAT (deterministic)
Trong ROI, đếm voxel có HU thuộc dải mỡ, nhân thể tích voxel:
V_voxel = sx · sy · sz (mm³, spacing của ảnh) N_mỡ = số voxel thỏa: (voxel ∈ ROI) và (−190 ≤ HU ≤ −30) EAT (mL) = N_mỡ × V_voxel ÷ 1000
Minh họa tính EAT (Case 107). A: lát CT (HU thật). B: ML định vị ROI màng ngoài tim (viền xanh). C: voxel mỡ (HU −190…−30) trong ROI được tô vàng — đây chính là N_mỡ được đếm. Công thức + kết quả (90.4 mL) ghi ở tiêu đề.