- added scaling
- show min and max deviation
This commit is contained in:
+15
-2
@@ -311,9 +311,15 @@ if __name__ == '__main__':
|
|||||||
# Parse command line args
|
# Parse command line args
|
||||||
parser = argparse.ArgumentParser(description="Gearbox Tracker")
|
parser = argparse.ArgumentParser(description="Gearbox Tracker")
|
||||||
parser.add_argument("filename")
|
parser.add_argument("filename")
|
||||||
|
parser.add_argument("--scale")
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
video = cv2.VideoCapture(args.filename)
|
video = cv2.VideoCapture(args.filename)
|
||||||
|
|
||||||
|
# Parse scale
|
||||||
|
scale = 1.0
|
||||||
|
if args.scale is not None:
|
||||||
|
scale = np.float32(args.scale)
|
||||||
|
|
||||||
# Let's go
|
# Let's go
|
||||||
colors = [(255, 0, 0), (0, 255, 0), (0, 0, 255), (255, 0, 255), (0, 255, 255), (255, 255, 255)]
|
colors = [(255, 0, 0), (0, 255, 0), (0, 0, 255), (255, 0, 255), (0, 255, 255), (255, 255, 255)]
|
||||||
tracker_count = 0
|
tracker_count = 0
|
||||||
@@ -337,6 +343,8 @@ if __name__ == '__main__':
|
|||||||
print('Cannot read video file')
|
print('Cannot read video file')
|
||||||
|
|
||||||
key_wait = -1
|
key_wait = -1
|
||||||
|
dist_min = [[0, 0]]*len(tracker_list)
|
||||||
|
dist_max = [[0, 0]]*len(tracker_list)
|
||||||
while True:
|
while True:
|
||||||
# Start timer
|
# Start timer
|
||||||
timer = cv2.getTickCount()
|
timer = cv2.getTickCount()
|
||||||
@@ -348,8 +356,13 @@ if __name__ == '__main__':
|
|||||||
for ct in tracker_list:
|
for ct in tracker_list:
|
||||||
mean_distance = ct.process(image, image_anno)
|
mean_distance = ct.process(image, image_anno)
|
||||||
if mean_distance is not None:
|
if mean_distance is not None:
|
||||||
cv2.putText(image_anno, f"Distance [{i}] : ({mean_distance[0]:+05.2f}, {mean_distance[1]:+05.2f})",
|
scaled_distance = (scale*mean_distance[0], scale*mean_distance[1])
|
||||||
(20, 20 + 20 * i), cv2.FONT_HERSHEY_SIMPLEX, 0.5, ct.color, 1)
|
dist_min[i][0] = min(scaled_distance[0], dist_min[i][0])
|
||||||
|
dist_min[i][1] = min(scaled_distance[1], dist_min[i][1])
|
||||||
|
dist_max[i][0] = max(scaled_distance[0], dist_max[i][0])
|
||||||
|
dist_max[i][1] = max(scaled_distance[1], dist_max[i][1])
|
||||||
|
cv2.putText(image_anno, f"Distance [{i}] : ({scaled_distance[0]:+05.2f}, {scaled_distance[1]:+05.2f}), Min: ({dist_min[i][0]:+05.2f}, {dist_min[i][1]:+05.2f}), Max: ({dist_max[i][0]:+05.2f}, {dist_max[i][1]:+05.2f})",
|
||||||
|
(20, 20 + 20 * i), cv2.FONT_HERSHEY_SIMPLEX, 0.8, ct.color, 2)
|
||||||
i += 1
|
i += 1
|
||||||
|
|
||||||
# Calculate Frames per second (FPS)
|
# Calculate Frames per second (FPS)
|
||||||
|
|||||||
Reference in New Issue
Block a user