我有6个USB摄像头,接到PC机上,我使用opencv和qt,能全部同时打开,并imshow
显示出图像,并保持30fps的帧率,
我每个USB摄像头使用了1个线程去读取摄像头数据,然后显示出来。
我想将采集的图片一张一张无损的保存在本地png格式,但是当我在读取的线程中imwrite保存的时候,就会降低帧率(摄像头保持30FPS,PC的读取帧率降低)
我改变了思路,我创建了6个队列,每一个线程去获取图片,然后扔到对应的队列里面,然后创建6个线程去读取队列并保存。
我发现帧率还是降低的,并不能保证满帧率,
因为PC机是4核8线程,即使加了很多线程,都是在轮询执行,保存图片的线程占用了读取图片线程的时间。
有没有大佬有好的解决办法呢,我想30fps不丢帧的保存下来摄像头拍摄的图片,并且图片需要无损的方式。
离线