一个视频播放、状态标注、和累计状态时长统计的可视化视频标注工具,将最终结果保存为CSV和合成视频文件。本项目基于Python的cv2和Pillow库。
运行程序播放一个视频文件,在播放中可按下数字键 1 - 4 在当前时间点标记状态,并实时统计自第一次标记后处于各个标记状态的累计时间,按照规则生成统计文本,显示在视频画面的左上角。
统计信息实时记录到CSV文件,以 帧序号/标注组 格式存储。并支持调用函数将统计文本合成为视频文件,方便以后的视频加工处理。
| 按键 | 功能 |
|---|---|
| Space | 暂停/播放 |
| Esc/Q | 退出 |
| Left/Right | 向前/向后移动5秒 |
| PageUp/PageDown | 向前/向后移动60秒 |
| Home/End | 移动到开头/结尾 |
| 按键 | 标注 |
|---|---|
| 1 | 标注为“接管” |
| 2 | 标注为“自动” |
| 3 | 标注为“停车” |
| 4 | 标注为“结束” |
| Delete | 删除当前标注点 |
在本算法的需求背景中,实现了读取一个行车记录的视频文件,并通过按键 1 - 3 标注当前的驾驶接管状态,最终统计出 脱手(含 自动 + 停车)、接管、和 停车 占全部行程时长的比例。在行程结束后按下按键 4 标记统计状态结束,不再继续更新时间。
程序运行结束后,会生成一个仅包含统计信息文本的视频文件,和原视频的时间轴对应,便于日后拼接剪辑。
- Author: Shixian Li
- QQ: 11313213
- Email: lsx7@sina.com
- Github: https://github.com/znsoooo/VideoMarker
- License: MIT License. Copyright (c) 2025 Shixian Li (znsoooo). All rights reserved.