added CSV output of Tracking data

This commit is contained in:
2024-07-09 08:59:03 +02:00
parent 1a879c2820
commit a6bb1bf3f8
3 changed files with 259 additions and 0 deletions
+17
View File
@@ -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