我有一个场景,我必须在for循环中显示图像数量。请查看代码。
我想分别分析所有检测到的霍夫线。所以我试图提取图像中每条检测到的线条。 所以我会得到与检测到的行数一样多的图像。
for ( int i = 0;i<lines.size();i++)
{
Vec4i draw = lines[i];
line(vMat[i],Point(draw[0],draw[1]),Point(draw[2],draw[3]),Scalar(0,0,255),1,CV_AA);
imshow("Lines",vMat[i]);
}
由于名称“Lines”,我只获得最后检测到的线条图像。
是否有可能在imshow中添加迭代器信息?
我尝试使用字符串数组。但concatenating带字符串的整数(向量索引)似乎很难(添加'boost'库等等)。
我的问题有什么简单的选择吗?
谢谢, KARTHIK
答案 0 :(得分:1)
是否有可能在imshow中添加迭代器信息?
imshow( “线”,VMAT [I]);
您可以考虑添加2行:
{
std::stringstream ss;
ss << "Lines[" << i << "] ";
imshow(ss.str().c_str(), vMat[i]);
}
我通常会添加大括号以释放'ss'标签,并清理字符串流。