From c1fe7d640c9685fd3591101b390cc346f02e8eeb Mon Sep 17 00:00:00 2001 From: Heeji Han Date: Sun, 18 Jan 2026 18:15:04 +0000 Subject: [PATCH] [fix] add no-scale option for class-wise mac calculation --- .../metrics/compute_overall_kmac_per_px.py | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/scripts/metrics/compute_overall_kmac_per_px.py b/scripts/metrics/compute_overall_kmac_per_px.py index 87fee6c..499433e 100644 --- a/scripts/metrics/compute_overall_kmac_per_px.py +++ b/scripts/metrics/compute_overall_kmac_per_px.py @@ -222,6 +222,13 @@ def generate_csv_classwise_video_gmac(dataset_name, result_path, list_of_classwi help="exclude Cactus sequence for FCM eval", ) + parser.add_argument( + "--add-non-scale", + action="store_true", + default=False, + help="Add non-scale option using ns_Traffic/ns_BQTerrace with original GT", + ) + args = parser.parse_args() assert args.dataset_name.lower() in Path(args.result_path).name.lower() @@ -253,10 +260,21 @@ def generate_csv_classwise_video_gmac(dataset_name, result_path, list_of_classwi if "Cactus_1920x1080_50" in class_ab["CLASS-AB"]: class_ab["CLASS-AB"].remove("Cactus_1920x1080_50") + sfu_classes = [class_ab, class_c, class_d] + + if args.dataset_name == "SFU" and args.add_non_scale: + class_ab_star = { + "CLASS-AB*": [ + "ns_Traffic", + "ns_BQTerrace", + ] + } + sfu_classes.append(class_ab_star) + output_df = generate_csv_classwise_video_gmac( args.dataset_name, args.result_path, - [class_ab, class_c, class_d], + sfu_classes, ) elif args.dataset_name == "OIV6": oiv6 = ["detection", "segmentation"]