一个i(i<10)对应四个坐标值,需要用4*i大小的一维数组循环存储,或者用二维数组b[i][4]存储,i行4列。
一维存储方法(类似于opencv存储彩图的顺序)
for (int i = 0; i < viewMatches.size(); i++)//将匹配的特征点坐标赋给point,给数组赋值
{ index1 = viewMatches.at(i).queryIdx; index2 = viewMatches.at(i).trainIdx; point[4i+0] = keyPoints1.at(index1).pt.x;//u1 point[4i+1] = keyPoints1.at(index1).pt.y;//v1 point[4i+2] = keyPoints2.at(index2).pt.x;//u2 point[4i+3] = keyPoints2.at(index2).pt.y;//v2
}
二维存储方法
for (int i = 0; i < viewMatches.size(); i++)//将匹配的特征点坐标赋给point,给数组赋值
{ index1 = viewMatches.at(i).queryIdx; index2 = viewMatches.at(i).trainIdx; point[i][0] = keyPoints1.at(index1).pt.x;//u1 point[i][1] = keyPoints1.at(index1).pt.y;//v1 point[i][2] = keyPoints2.at(index2).pt.x;//u2 point[i][3] = keyPoints2.at(index2).pt.y;//v2
}