I使用多线程进行图像细化和保存

IMage elaboration and saving using Multithreading

本文关键字:图像 细化 保存 多线程      更新时间:2023-10-16

我用C++编写了一个软件,使用openCV库处理来自相机的视频流。我想在处理视频帧时保存它,以便可以使用完全相同的视频作为输入离线运行代码多次。我想使用生产者/消费者模式来使用多线程。

我的想法是有一个生产者(帧抓取器)和两个消费者(一个用于处理图像,另一个用于将帧保存在文件中(作为视频))。

我没有多线程编程的经验,所以我在网上搜索了一些教程。我找到的所有教程都是关于一个生产者和一个消费者的,但我需要的略有不同:我需要的是一个生产者向两个消费者发送相同的图像,在两个消费者完成工作后,继续下一帧。关键是,生产者将有一个存储帧的队列,而消费者都需要从同一队列中读取同一元素一次。

你有什么建议吗?你认为我选择的款式适合我的需要吗?

谢谢。

生产者-消费者工作。在您的情况下,生产者可以"生产"两次,首先将其放入处理队列,然后将第二个副本放入保存队列。