我有一系列名称为"alpha-beta-0", "alpha-beta-1",......."alpha-beta-20"的图像。我必须读取这些图像,并在处理后将输出作为一个图像。
如何在OpenCV和c++中做到这一点
您可以使用通用的cv::VideoCapture
类,它能够将定期命名的图像加载为视频序列(参见文档)。
cv::VideoCapture cap("alpha-beta-%d");
cv::Mat img;
while (cap.read(img)) {
// process image
}
您需要编写如下代码:
for(int i = 0; i <= 20 ; i++)
{
std::stringstream str;
str << "alpha-beta" << i;
cv::Mat img = cv::imread(str.str());
//// process and show output ...
}