使用python opencv在图像上写入实时时钟
我试图在图像上写实时时钟。我有使用while循环和cv2.putText()命令的简单运行代码。但这段代码的问题是,我得到的是时间值的覆盖数。 有人能帮我吗。提前感谢你的帮助使用python opencv在图像上写入实时时钟,python,opencv,Python,Opencv,我试图在图像上写实时时钟。我有使用while循环和cv2.putText()命令的简单运行代码。但这段代码的问题是,我得到的是时间值的覆盖数。 有人能帮我吗。提前感谢你的帮助 import cv2 import time I = cv2.imread('image.png') I = cv2.resize(I,(640,480)) I1 = I.copy() font1 = cv2.FONT_HERSHEY_SIMPLEX while 1: I1 = I t = time
import cv2
import time
I = cv2.imread('image.png')
I = cv2.resize(I,(640,480))
I1 = I.copy()
font1 = cv2.FONT_HERSHEY_SIMPLEX
while 1:
I1 = I
t = time.strftime('%H:%M:%S')
I1 = cv2.putText(I1,t,(0,480),font1,2,(255,255,255),5)
cv2.imshow('frame',I1)
k = cv2.waitKey(10)
if k == 27:
break
cv2.destroyAllWindows()
OpenCVcv2.putText()
将输入图像更改到位,为了防止这种行为,您可以尝试将输入图像作为copy()
传递,以便这些更改不会反映在原始图像本身中
while 1:
I1 = I
t = time.strftime('%H:%M:%S')
I1 = cv2.putText(I1.copy(),t,(50,50),font1,2,(255,0, 0),5)
cv2.imshow('frame',I1)
k = cv2.waitKey(10)
if k == 27:
break
但是,脚本中有一些多余的步骤,可以在不影响输出的情况下进行剥离,如下所示:
import cv2
import time
I = cv2.imread('image.png')
font1 = cv2.FONT_HERSHEY_SIMPLEX
while 1:
t = time.strftime('%H:%M:%S')
I1 = cv2.putText(I.copy(),t,(50,50),font1,2,(255,0, 0),5)
cv2.imshow('frame',I1)
k = cv2.waitKey(10)
if k == 27:
break
cv2.destroyAllWindows()