score oplabels2d × labels2d → tableimport fullseye as fs; fs.ledger.seg_confusion_table(labels_pred, labels_true, *, background: 'int' = 0) -> 'Dict[str, object]' (実装を直接呼ぶなら import segeval; segeval.seg_confusion_table(labels_pred, labels_true, *, background: 'int' = 0) -> 'Dict[str, object]'、台帳から引くなら opssegmentation.get("seg_confusion_table"))ラベル対応の分割表(行 = 真、列 = 予測)と、最大重なりによる対応・対応の一意性の印。
table[i, j] = 真のラベル labels_true[i] と予測のラベル labels_pred[j] を同時に持つ画素数。
対応は 最大重なり: 真 i の相手 = 背景でない列のうち table[i, :] が最大の列(pred_of_true、ラベル値、無ければ −1)、
予測 j の相手 = 背景でない行のうち最大の行(true_of_pred)。mutual_true[i] = 真 i の相手が真 i を選び返す、
mutual_pred[j] も同様。claims[j] = 予測 j を相手に選んだ真の数。unique_matching = 背景でない行・列がすべて相互に
選び合う(= 1 対 1 の全単射)。背景の行・列は表には残り、対応からは外す。
Hungarian(総和最大の割当)でなく argmax なので、1 つの大きな予測を複数の真が選ぶことがある —— それが claims ≥ 2 の印。
返り値: table、labels_true / labels_pred(行・列のラベル値)、row_sums / col_sums、pred_of_true /
true_of_pred、mutual_true / mutual_pred、claims、unique_matching、n_true / n_pred(背景を除く個数)、n。
py -3.11 examples/gallery_seg_measures.pytable を入力に取れる)score)seg_dice_jaccard · seg_boundary_f · seg_hausdorff · seg_mean_surface_distance · seg_under_over_segmentation · seg_object_counts_match · seg_score_card
Provenance: segeval.py — SEGMENTATION operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.