import pandas as pd import os import sys target_dir = str(sys.argv[1]) full_list = os.listdir(target_dir) csv_list = [file for file in full_list if file.startswith('cam')] csv_list = sorted(csv_list) #csv_list = [cam1.csv,cam2.csv] #print(csv_list) d1 = pd.read_csv(os.path.join(target_dir,csv_list[0])) d2 = pd.read_csv(os.path.join(target_dir,csv_list[1])) d2['x'] = 1920 - d2['x'] df_conc = pd.concat([d1,d2]) df_conc.sort_values(by='frame') df_conc.drop_duplicates(['frame']) #print(df_conc) df_global = pd.DataFrame(index=range(0,int(df_conc['frame'].iloc[-1])+1), columns=['x','y','z','frame']) df_global['frame'] = list(range(1, int(df_conc['frame'].iloc[-1]+2))) df_global = df_global.astype({'frame':'int'}) #print(df_global) df_global = pd.concat([df_global,df_conc]) df_global=df_global.sort_values(by = ['frame']) df_global = df_global.drop_duplicates(['frame'], keep='last') df_global = df_global.reset_index(drop=True) df_global = df_global.interpolate() df_global = df_global.interpolate(method='values') #print(df_global) df_global['x'] = 10 * ((df_global['x'] - df_global['x'].min()) / (df_global['x'].max() - df_global['x'].min())) - 5 df_global['y'] = 10 * ((df_global['y'] - df_global['y'].min()) / (df_global['y'].max() - df_global['y'].min())) - 5 df_global['z'] = 2.7 * ((df_global['z'] - df_global['z'].min()) / (df_global['z'].max() - df_global['z'].min())) + 0.3 #print(df_global) df_global = df_global.fillna(0) df_summary = df_global[df_global['frame']% 30 == 1] #print(df_summary) df_global.to_csv(os.path.join(target_dir,'coordinate.csv')) df_summary.to_csv(os.path.join(target_dir,'coordinate_summary.csv'))