如何,我可以使用 OpenCV 获得一个缓冲区或图像数组“Mat”吗?
我的意思是:有一组图像,想要拿起并放入一个数组中
我怎样才能做到这一点?就像 C++ 普通数组样式一样?
Mat images[2];
images[0] = imread(...);
images[1] = imread(..);
提前致谢。
只需将 cvMat 对象数组声明为-
Mat image_array[10]; // array of 10 images
现在根据数组的索引将图像读入其中
image_array[0]=imread("/home/me/Pictures/img1.png",1);
image_array[1]=imread("/home/me/Pictures/img2.png",1);
......
......
image_array[9]=imread("/home/me/Pictures/img9.png",1);
我必须实现类似的东西,我不需要查看图像,我只想从中提取一些数据,但我还是要添加 imread。这是代码:
Mat mat[10];enter code here
char c[n]; //n is the size of chars in the directory of images
for(int i=1;i<=10;i++)
{
sprintf(c,"/directory to images/%d.jpg",i);
mat[i] = imread(c);
imshow("mat",mat[i]);
waitKey(0);
}
这将显示数组中的第一个图像,您必须按任意键才能转到下一个图像。希望这可以帮助