截取一段程序,便于观察帧率是怎样计算的。【记性不好,留着备用】
if __name__ == '__main__':
# 打开视频
CAPTURE = cv2.VideoCapture('video.mp4')
fourcc = cv2.VideoWriter_fourcc(*'MJPG')
outfile = cv2.VideoWriter('output.avi', fourcc, 25., (1280, 368))
# 循环处理每一帧
while CAPTURE.isOpened():
_, frame = CAPTURE.read()
prevTime = time.time()
origin = np.copy(frame)
frame = show_lane(frame)
curTime = time.time()
sec = curTime - prevTime
print(sec)
fps = 1/(sec)
s = "FPS : "+ str(fps)
cv2.putText(frame, s, (10, 50), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 2)
output = np.concatenate((origin, frame), axis=1)
outfile.write(output)
cv2.imshow('video', output)
# 处理退出
if cv2.waitKey(1) == ord('q'):
cv2.destroyAllWindows()
break
CAPTURE.release()
cv2.destroyAllWindows()
提取出来,就是这个样子。
prevTime = time.time()
...
...
...
curTime = time.time()
sec = curTime - prevTime
print(sec)
fps = 1/(sec)
s = "FPS : "+ str(fps)
cv2.putText(frame, s, (10, 50), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 2)