4444import pandas as pd
4545import utils
4646
47- from compute_overall_map import compute_overall_mAP
48- from compute_overall_miou import compute_overall_mIoU
49- from compute_overall_mot import compute_overall_mota
47+ from compute_per_class_mAP import compute_per_class_mAP
48+ from compute_per_class_mIoU import compute_per_class_mIoU
49+ from compute_per_class_mota import compute_per_class_mota
5050from curve_fitting import convert_to_monotonic_points_SFU
5151
5252from compressai_vision .datasets import get_seq_info
@@ -102,18 +102,18 @@ def df_append(df1, df2):
102102 return out
103103
104104
105- def generate_classwise_df (result_df , classes : dict ):
106- classwise = pd .DataFrame (columns = result_df .columns )
107- classwise .drop (columns = ["fps" , "num_of_coded_frame" ], inplace = True )
105+ def generate_class_df (result_df , classes : dict ):
106+ class_data = pd .DataFrame (columns = result_df .columns )
107+ class_data .drop (columns = ["fps" , "num_of_coded_frame" ], inplace = True )
108108
109109 for tag , item in classes .items ():
110- output = compute_class_wise_results (result_df , tag , item )
111- classwise_df = df_append (classwise , output )
110+ output = compute_per_class_results (result_df , tag , item )
111+ classwise_df = df_append (class_data , output )
112112
113113 return classwise_df
114114
115115
116- def compute_class_wise_results (result_df , name , sequences ):
116+ def compute_per_class_results (result_df , name , sequences ):
117117 samples = None
118118 num_points = prev_num_points = - 1
119119 output = pd .DataFrame (columns = result_df .columns )
@@ -168,7 +168,7 @@ def compute_class_wise_results(result_df, name, sequences):
168168def generate_csv_classwise_video_map (
169169 result_path ,
170170 dataset_path ,
171- dict_of_classwise_seq ,
171+ dict_of_class_seq ,
172172 metric = "AP" ,
173173 gt_folder = "annotations" ,
174174 nb_operation_points : int = 4 ,
@@ -177,7 +177,7 @@ def generate_csv_classwise_video_map(
177177 dataset_prefix : str = None ,
178178):
179179 seq_list = []
180- [seq_list .extend (sequences ) for sequences in dict_of_classwise_seq .values ()]
180+ [seq_list .extend (sequences ) for sequences in dict_of_class_seq .values ()]
181181
182182 opts_metrics = {"AP" : 0 , "AP50" : 1 , "AP75" : 2 , "APS" : 3 , "APM" : 4 , "APL" : 5 }
183183 results_df = read_df_rec (result_path , dataset_prefix , seq_list , nb_operation_points )
@@ -192,14 +192,14 @@ def generate_csv_classwise_video_map(
192192 ## drop columns
193193 output_df .drop (columns = ["fps" , "num_of_coded_frame" ], inplace = True )
194194
195- for classwise_name , classwise_seqs in dict_of_classwise_seq .items ():
195+ for class_name , class_seqs in dict_of_class_seq .items ():
196196 class_wise_maps = []
197197 for q in range (nb_operation_points ):
198198 items = utils .search_items (
199199 result_path ,
200200 dataset_path ,
201201 q ,
202- classwise_seqs ,
202+ class_seqs ,
203203 BaseEvaluator .get_coco_eval_info_name ,
204204 by_name = True ,
205205 gt_folder = gt_folder ,
@@ -212,15 +212,15 @@ def generate_csv_classwise_video_map(
212212 ), "No evaluation information found in provided result directories..."
213213
214214 if not skip_classwise :
215- summary = compute_overall_mAP (
216- dict_of_classwise_seq [ classwise_name ], items
215+ summary = compute_per_class_mAP (
216+ dict_of_class_seq [ class_name ], items
217217 )
218218 maps = summary .values [0 ][opts_metrics [metric ]]
219219 class_wise_maps .append (maps )
220220
221221 if not skip_classwise and nb_operation_points > 0 :
222- class_wise_results_df = generate_classwise_df (
223- results_df , {classwise_name : classwise_seqs }
222+ class_wise_results_df = generate_class_df (
223+ results_df , {class_name : class_seqs }
224224 )
225225 class_wise_results_df ["end_accuracy" ] = class_wise_maps
226226
@@ -232,12 +232,12 @@ def generate_csv_classwise_video_map(
232232def generate_csv_classwise_video_mota (
233233 result_path ,
234234 dataset_path ,
235- dict_of_classwise_seq ,
235+ dict_of_class_seq ,
236236 nb_operation_points : int = 4 ,
237237 dataset_prefix : str = None ,
238238):
239239 seq_list = []
240- [seq_list .extend (sequences ) for sequences in dict_of_classwise_seq .values ()]
240+ [seq_list .extend (sequences ) for sequences in dict_of_class_seq .values ()]
241241
242242 results_df = read_df_rec (result_path , dataset_prefix , seq_list , nb_operation_points )
243243 results_df = results_df .sort_values (by = ["Dataset" , "qp" ], ascending = [True , True ])
@@ -249,29 +249,29 @@ def generate_csv_classwise_video_mota(
249249 ## drop columns
250250 output_df .drop (columns = ["fps" , "num_of_coded_frame" ], inplace = True )
251251
252- for classwise_name , classwise_seqs in dict_of_classwise_seq .items ():
252+ for class_name , class_seqs in dict_of_class_seq .items ():
253253 class_wise_motas = []
254254 for q in range (nb_operation_points ):
255255 items = utils .search_items (
256256 result_path ,
257257 dataset_path ,
258258 q ,
259- classwise_seqs ,
259+ class_seqs ,
260260 BaseEvaluator .get_jde_eval_info_name ,
261261 )
262262
263263 assert (
264264 len (items ) > 0
265265 ), "Nothing relevant information found from given directories..."
266266
267- summary , _ = compute_overall_mota ( classwise_name , items )
267+ summary , _ = compute_per_class_mota ( class_name , items )
268268
269269 mota = summary .values [- 1 ][13 ] * 100.0
270270 class_wise_motas .append (mota )
271271
272272 if nb_operation_points > 0 :
273- class_wise_results_df = generate_classwise_df (
274- results_df , {classwise_name : classwise_seqs }
273+ class_wise_results_df = generate_class_df (
274+ results_df , {class_name : class_seqs }
275275 )
276276
277277 class_wise_results_df ["end_accuracy" ] = class_wise_motas
@@ -284,12 +284,11 @@ def generate_csv_classwise_video_mota(
284284def generate_csv_classwise_video_miou (
285285 result_path ,
286286 dataset_path ,
287- dict_of_classwise_seq ,
287+ dict_of_class_seq ,
288288 nb_operation_points : int = 4 ,
289- dataset_prefix : str = None ,
290289):
291290 seq_list = []
292- [seq_list .extend (sequences ) for sequences in dict_of_classwise_seq .values ()]
291+ [seq_list .extend (sequences ) for sequences in dict_of_class_seq .values ()]
293292
294293 results_df = read_df_rec (result_path , "" , seq_list , nb_operation_points )
295294
@@ -303,14 +302,14 @@ def generate_csv_classwise_video_miou(
303302 ## drop columns
304303 output_df .drop (columns = ["fps" , "num_of_coded_frame" ], inplace = True )
305304
306- for classwise_name , classwise_seqs in dict_of_classwise_seq .items ():
305+ for class_name , class_seqs in dict_of_class_seq .items ():
307306 class_wise_mious = []
308307 for q in range (nb_operation_points ):
309308 items = utils .search_items (
310309 result_path ,
311310 dataset_path ,
312311 q ,
313- classwise_seqs ,
312+ class_seqs ,
314313 BaseEvaluator .get_miou_eval_info_name ,
315314 by_name = True ,
316315 pandaset_flag = True ,
@@ -320,16 +319,16 @@ def generate_csv_classwise_video_miou(
320319 len (items ) > 0
321320 ), "Nothing relevant information found from given directories..."
322321
323- miou = compute_overall_mIoU ( classwise_name , items )
322+ miou = compute_per_class_mIoU ( class_name , items )
324323 class_wise_mious .append (miou )
325324
326325 matched_seq_names = []
327326 for seq_info in items :
328327 name , _ , _ = get_seq_info (seq_info [utils .SEQ_INFO_KEY ])
329328 matched_seq_names .append (name )
330329
331- class_wise_results_df = generate_classwise_df (
332- results_df , {classwise_name : classwise_seqs }
330+ class_wise_results_df = generate_class_df (
331+ results_df , {class_name : class_seqs }
333332 )
334333
335334 class_wise_results_df ["end_accuracy" ] = class_wise_mious
0 commit comments