如何把连续采集到的图像连续保存到内存中然后用opencv处理?

例如工业相机连续采集到的图像,我想暂时保存三张,即,假设现在已经保存了一二三,三张图像,当第四张图像采集的时候,第一张图像自动销毁,第五张图像采集到的时候,第二张自动销毁... 例如工业相机连续采集到的图像,我想暂时保存三张,即,假设现在已经保存了 一二三,三张图像,当第四张图像采集的时候,第一张图像自动销毁,第五张图像采集到的时候,第二张自动销毁,以此类推。听说用数组会比较麻烦,是不是要用堆栈?可否贴上具体例子和代码?谢谢。 展开
 我来答
追风之叶子
推荐于2016-08-08 · TA获得超过153个赞
知道答主
回答量:106
采纳率:0%
帮助的人:60.7万
展开全部
  如果你是用C++这个问题很好解决,包含头文件#include<vector>。然后用vector<Mat>即可。
追问
请问有没有具体的代码呢?我是vc++新手,自己凭空写代码还是写不出来。^_^
追答
#include<...>
#include<vector>

using namespace std;
using namespace cv;
using namespace ...;

int main()
{
    vector<Mat> images;
    Mat img1=imread("...\\lena.jpg")
    Mat img2=imread("...\\*.jpg");
    Mat img3=imread("...\\*.jpg");
    Mat img4=imread("...\\*.jpg");
    
    images.push_back(img1);
    images.push_back(img2);
    images.push_back(img3);
    images.push_back(img4);
    
    return 0;
}

大概是这样吧,vector是一种模板类,相比较数组而言,优势在于可变长度,可以保存任意类型的数据类型。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式