📅  最后修改于: 2023-12-03 15:41:34.038000             🧑  作者: Mango
在视频中添加时间戳是一个常见的需求,在OpenCV中可以通过简单的代码实现。本文将介绍如何在Python OpenCV中添加时间戳。
使用OpenCV添加时间戳,我们需要安装和导入OpenCV库。可以通过pip安装,这里提供的是Windows系统的安装方式:
pip install opencv-python-headless
在Python代码中导入OpenCV:
import cv2
接下来,我们需要从文件中读取视频。可以使用OpenCV的VideoCapture类来读取。
VIDEO_PATH = "path/to/video.avi"
cap = cv2.VideoCapture(VIDEO_PATH)
在帧上添加时间戳的基本思路是,获取当前时间并将其转换为字符串,然后将其绘制在帧上。
以下代码段演示了如何从当前时间戳生成字符串,从视频中读取帧并在其上绘制时间戳。
while cap.isOpened():
ret, frame = cap.read()
if not ret:
break
# 获取当前时间并将其转换为字符串
current_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S.%f")
# 在帧上绘制时间戳
cv2.putText(frame, current_time, (10, 50), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 255), 2)
# 显示帧
cv2.imshow("Video", frame)
以下是一个完整的使用OpenCV添加时间戳的Python程序。
import cv2
from datetime import datetime
VIDEO_PATH = "path/to/video.avi"
cap = cv2.VideoCapture(VIDEO_PATH)
while cap.isOpened():
ret, frame = cap.read()
if not ret:
break
# 获取当前时间并将其转换为字符串
current_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S.%f")
# 在帧上绘制时间戳
cv2.putText(frame, current_time, (10, 50), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 255), 2)
# 显示帧
cv2.imshow("Video", frame)
# 按 q 键退出显示
if cv2.waitKey(1) & 0xFF == ord("q"):
break
cap.release()
cv2.destroyAllWindows()