我想保存帧以便在其上写入时间戳,或者图像以时间戳作为其名称保存。我尝试通过 cv2.putText()
函数中的 time.time()
函数添加时间戳,它只是将 time.time()
写在每一帧而不是时间戳。
我试图通过 cv2.putText()
函数中的 time.time()
函数添加时间戳,但它只是写入 time.time()
在每一帧而不是时间戳。
我还尝试使用 time.time()
代替 cv2.imwrite()
函数的图像名称,并且它也不添加时间戳。
font = cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(frame,'time.time()',(10,500), font, 4,(255,255,255),2,cv2.CV_AA).
cv2.imwrite('str(time.time())'+str(i)+'.jpg',frame)
`
The issue is resolved by putting str(time.time()).``
最佳答案
目前您在引号中包含了 time.time()
,因此它确实将文本设置为名为“time.time()”的字符串。要显示 time.time()
的实际值,请删除引号。从文档中,cv2.putText()
接受 str
作为第二个参数。这是定义
cv2.putText(img, text, org, fontFace, fontScale, color[, thickness[, lineType[, bottomLeftOrigin]]])
所以在你的情况下,你可以像这样将 time.time()
的值转换为 str
类型
cv2.putText(frame, str(time.time()), (10,500), font, 4, (255,255,255), 2, cv2.CV_AA)
与cv2.imwrite()
类似,您可以将值转换为str
类型来获取时间戳,而不是文字字符串
cv2.imwrite(str(time.time()) + '_' + str(i) + '.jpg', frame)
关于python - 保存带有时间戳的视频帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56281117/