私は、128 次元記述子との特徴マッチングを実行するコードに取り組んでいます。
画像のすべての記述子は std::vector に格納されます。ここで InterestPoint には記述子ベクトルであるメンバー *double desc が含まれます。
次に、Flann マトリックスでこの構造を使用して、後で近似最近傍フィーチャ マッチングを実行します。これを次のように初期化します。
std::vector<InterestPoint> ip1;
//processing for building vector containing interest points
flann::Matrix<double> input(new double[ip1.size()*128], ip1.size(), 128);
この flann::Matrix を ip1 ベクトルのすべての要素の *double desc メンバーで満たすにはどうすればよいですか? これは私が試したものです:
for(size_t i = 0; i < ip1.size(); i++)
{
for(size_t j = 0; j < 128; j++)
{
input[i][j] = ip1[i].ivec[j];
}
}
コンパイルしましたが、うまくいきませんでした。flann は、演算子 [] を使用して、flann::Matrix のすべての行にアクセスする方法を提供します。したがって、Matrix クラスは行優先です。
前もって感謝します、