如何解决如何通过读取原始视频的时间戳位置来计算时间?
我正在尝试计算任何一辆车穿过第一条和第二条线所花费的时间。视频以 30 FPS 的速度拍摄。
为此,我跟踪帧上的对象,我使用一个计时器,当汽车越过第一条线时开始计数,并在越过第二条线时停止。但是这种方法的问题在于计时器会测量我处理视频(检测和跟踪对象)所花费的时间。它不会根据原始录制视频中的位置测量汽车的时间戳。所以计算不准确。
这些位置必须反映记录时间戳的实际位置,以便准确计算所用时间。
我的问题是:如何读取原始视频中这些位置的实际时间戳?计算“花费的时间”。
假设 2 行定义为 line = [(860,800),(860,200)]
和 line1 = [(1120,(1120,200)]
这是我写的代码:
time_for_speed = []
if intersect(p0,p1,line[0],line[1]):
time_start = np.round(time.time(),3)
time_test.update({id: time_start})
elif intersect(p0,line1[0],line1[1]):
if id in time_test:
time_taken = np.round(time.time(),3) - time_test.get(id)
time_for_speed.append(time_taken)
speed = (0.68 / time_taken) * 3.6
df3 = pd.DataFrame([[id,speed]],columns=["TrackingID","Speed"])
df4 = df4.append(df3,ignore_index=True)
del time_test[id]
print("estimated speed {:.1f} kph".format(speed))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。