How do I use the FPS argument in cv2.VideoWriter?

自作多情 提交于 2021-02-10 12:12:38

问题


Ok, so I am making a video. I want to know exactly how to use the FPS argument. It is a float, so I assumed it was what interval do I want between each frame. Can you give an example? I just want to know how the video would change with varying FPS argument values., because my video I made is way too fast now. Thanks!


回答1:


It really is just that - frames per second. In other words, how many frames do you want to display every second?

Here is an example:

writer = cv2.VideoWriter(filename="my_video.avi",  #Provide a file to write the video to
fourcc=cv2.cv.CV_FOURCC('i','Y', 'U', 'V'),            #Use whichever codec works for you...
fps=15,                                        #How many frames do you want to display per second in your video?
frameSize=(width, height))                     #The size of the frames you are writing

Example usage:

while True:
    flag, frame = capture.read()
    cv2.imshow("Camera", frame)
    key_pressed = cv2.waitKey(10)
    if key_pressed == 27:                           #Escape key
        break
    writer.write(frame)
cv2.destroyAllWindows()

Thus, you will have a video file that consists of all the still frames that your camera captured stitched together as a single video. The number of frames that are displayed per second will be as you set with the fps parameter. (If your video is too fast, I recommend setting a lower fps)

I wrote this code off the top of my head, so I haven't tested it, but it should work. Let me know if you have any questions or problems. I hope this helps you!



来源:https://stackoverflow.com/questions/13906361/how-do-i-use-the-fps-argument-in-cv2-videowriter

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!