gpt4 book ai didi

c++ - OpenCV VideoCapture 有时会返回空白帧

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:14:33 24 4
gpt4 key购买 nike

我正在使用以下代码在 MS VC++ 2012 中使用 openCV3 从 USB 网络摄像头捕获视频帧。但问题是有时我能够以 30 fps 的速度显示捕获的帧,但有时我会得到黑色帧非常低帧率(或高延迟)。换句话说,程序是随机运行的。你知道我怎么解决这个问题吗?我尝试了 stackoverflow 或其他一些地方建议的不同解决方案,但没有一个解决了问题。

VideoCapture v(1);
v.set(CV_CAP_PROP_FRAME_WIDTH, 720);
v.set(CV_CAP_PROP_FRAME_HEIGHT, 480);
if(!v.isOpened()){
cout << "Error opening video stream or file" << endl;
return;
}

Mat Image;
namedWindow("win",1);

while(1){
v >> Image;
imshow("win", Image);
}

最佳答案

试试这个:

while(1){
v >> Image;
imshow("win", Image);
char c=waitKey(10);//add a 10ms delay per frame to sync with cam fps
if(c=='b')
{
break;//break when b is pressed
}
}

关于c++ - OpenCV VideoCapture 有时会返回空白帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35586051/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com