我有一些浮点值出现在for循环中。现在我想将这些值存储在一个向量中以便进一步处理。我可以用opencv 2.4.9编写。这是代码
for(int i= 0; i < contours.size(); i++)
{
for(int j= 0; j < contours[i].size();j++)
{
boundry.x= contours[i][j].x;
boundry.y=contours[i][j].y ;
float distx = x_comp-boundry.x;
float disty = y_comp-boundry.y;
float dist=sqrt((distx*distx)+(disty*disty));
}
}
现在我必须将这些dist值存储在一个向量中以便进一步处理。请帮忙
答案 0 :(得分:1)
如果要使用这些值进行进一步处理,则应在for循环之外定义向量,否则不会保存数据。然后你可以使用一个简单的标准向量和push_back。
std::vector<float> distance;
for(int i= 0; i < contours.size(); i++)
{
for(int j= 0; j < contours[i].size();j++)
{
boundry.x= contours[i][j].x;
boundry.y= contours[i][j].y ;
float distx = x_comp-boundry.x;
float disty = y_comp-boundry.y;
float dist=sqrt((distx*distx)+(disty*disty));
distance.push_back(dist);
}
}