Orienter / evaluation /eval_latex /eval2latex_performance_comparison.py
stereoid's picture
Add files using upload-large-folder tool
1da285f verified
Raw
History Blame Contribute Delete
1.65 kB
import argparse
import pandas as pd
IOU_THRESHOLD = 0.75
USE_METRICS = ['mAP', 'Precision','Recall','F1-Score']
NEW_METRICS = ['mAP\%', 'P\%','R\%','F1\%']
def process_df(df):
df = df[df['IoU'] >= IOU_THRESHOLD]
df = df[USE_METRICS]
df[USE_METRICS] = df[USE_METRICS] * 100
df.columns = NEW_METRICS
df = df.transpose()
df.columns = [round(x/100, 2) for x in range(int(IOU_THRESHOLD*100), 100, 5)]
return df
def my_format(x):
if x < 0.005:
return r'$\approx$0.0'
return f'{x:.2f}'
def main(args):
df_itb_app = pd.read_csv(args.itb_app)
df_sem_app = pd.read_csv(args.sem_app)
df_itb_genre = pd.read_csv(args.itb_genre)
df_sem_genre = pd.read_csv(args.sem_genre)
df_itb_app = process_df(df_itb_app)
df_sem_app = process_df(df_sem_app)
df_itb_genre = process_df(df_itb_genre)
df_sem_genre = process_df(df_sem_genre)
df = pd.concat([df_itb_app, df_itb_genre, df_sem_app, df_sem_genre], axis=1)
df.to_csv(args.output.replace('.tex', '.csv'))
df.insert(0, column = 'metric', value = NEW_METRICS)
df.insert(0, '', '')
df.to_latex(args.output, float_format=my_format, index=False)
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('-ia', '--itb_app', type=str, required=True)
parser.add_argument('-sa', '--sem_app', type=str, required=True)
parser.add_argument('-ig', '--itb_genre', type=str, required=True)
parser.add_argument('-sg', '--sem_genre', type=str, required=True)
parser.add_argument('-o', '--output', type=str, required=True)
args = parser.parse_args()
main(args)