微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从视频采集卡以 60fps 的速度采集视频

如何解决从视频采集卡以 60fps 的速度采集视频

我正在尝试使用这段代码从我的 AverMedia Live Gamer Portable 2 Plus 采集卡读取视频流:

import cv2
import time
import numpy as np

FPS = 0

cv2.namedWindow("video")

capture = cv2.VideoCapture(0)
capture.set(cv2.CAP_PROP_FOURCC,cv2.VideoWriter.fourcc('m','j','p','g'))
capture.open(cv2.CAP_ANY);
capture.set(cv2.CAP_PROP_CONVERT_RGB,0);
capture.set(cv2.CAP_PROP_FRAME_WIDTH,1920)
capture.set(cv2.CAP_PROP_FRAME_HEIGHT,1080)
capture.set(cv2.CAP_PROP_FPS,60)

time.sleep(1)

last = time.time()

while cv2.waitKey(1):
    before = time.time()
    flag,frame = capture.read()
    Now = time.time()
    cv2.imshow("video",frame)
    print("cap.read() took: " + str(Now - before))
    if(Now - last >= 1):
        print(FPS)
        last = Now
        FPS = 0
    else:
        FPS += 1

capture.release()
cv2.destroyAllWindows()

我正确地获取了图像,但速度为 22-23 fps。有没有办法提高帧率?因为我用谷歌搜索了但我没有找到解决方案。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。