added CSV output of Tracking data
This commit is contained in:
@@ -2,6 +2,7 @@ import cv2
|
||||
import numpy as np
|
||||
import argparse
|
||||
import sys
|
||||
import csv
|
||||
|
||||
from util import image_crop, to_rect, bbox_add_position, bbox_center, bbox_round
|
||||
|
||||
@@ -301,6 +302,7 @@ if __name__ == '__main__':
|
||||
parser.add_argument("--track", action="store_true")
|
||||
parser.add_argument("--path", action="store_true")
|
||||
parser.add_argument("--loop", action="store_true")
|
||||
parser.add_argument("--name", default="Default")
|
||||
args = parser.parse_args()
|
||||
video = cv2.VideoCapture(args.filename)
|
||||
|
||||
@@ -337,6 +339,7 @@ if __name__ == '__main__':
|
||||
key_wait = -1
|
||||
dist_min = [(0, 0)]*len(tracker_list)
|
||||
dist_max = [(0, 0)]*len(tracker_list)
|
||||
result_data = [[] for i in range(len(tracker_list))]
|
||||
while True:
|
||||
# Start timer
|
||||
timer = cv2.getTickCount()
|
||||
@@ -355,6 +358,7 @@ if __name__ == '__main__':
|
||||
for ct in tracker_list:
|
||||
mean_distance = ct.process(image, image_anno)
|
||||
if mean_distance is not None:
|
||||
result_data[i].append({f'Distance': mean_distance})
|
||||
scale = ct_params.scale
|
||||
scaled_distance = (scale*mean_distance[0], scale*mean_distance[1])
|
||||
dist_min[i] = (min(scaled_distance[0], dist_min[i][0]), min(scaled_distance[1], dist_min[i][1]))
|
||||
@@ -383,3 +387,16 @@ if __name__ == '__main__':
|
||||
else:
|
||||
key_wait = -1
|
||||
|
||||
# writing to csv file
|
||||
i = 1
|
||||
for result in result_data:
|
||||
with open(f"{args.name}_{i}.csv", 'w') as csvfile:
|
||||
# creating a csv dict writer object
|
||||
writer = csv.DictWriter(csvfile, fieldnames=['Distance'])
|
||||
|
||||
# writing headers (field names)
|
||||
writer.writeheader()
|
||||
|
||||
# writing data rows
|
||||
writer.writerows(result)
|
||||
i += 1
|
||||
|
||||
Reference in New Issue
Block a user