我一直在编写代码,其中每次迭代absdiff()必须占用2帧;cp>>frame1;cp>>frame2;absdiff(frame1,frame2,out)frame1正在获取0,2,4,6,8,10,....
frame2正在获取1,3,5,7,9,11,....
我没有得到frame1,frame2的所有组合。
让我们拨打此流程-1

但是,我需要将frame1设为0、1、2、3、4、5、6 ...
frame2为1,2,3,4,5,6,7,......
所以,我用

 cp.set(CV_CAP_PROPS_POS_FRAMES,cp.get(CV_CAP_PROPS_POS_FRAMES)-1);

将下一个帧号设置为frame2的帧,而不是frame2 + 1。现在,我得到了所需的输出。
我正在获取frame1,frame2的所有组合。
让我们致电此流程2
但是,处理速度PROCESS-2几乎是PROCESS-1的1/5
所以,我猜想设置VideoCapture属性,即下一帧位置会导致速度降低。我错了吗?如果没有,还有其他方法可以获取所需的输出吗?

最佳答案

你没看错以这种方式重新定位视频非常慢。您最好按顺序阅读框架并自己处理配对。

09-06 13:05