非常に単純なタスクを実行したいのですが、エラーのために理解できません。次のコードを使用して、検出された機能の内容をベクターに保存してtxtファイルに保存したい
Ptr<FeatureDetector> feature_detector = FeatureDetector::create("SIFT");
vector<KeyPoint> keypoints;
feature_detector->detect(img, keypoints);
for(unsigned int i = 0; i < keypoints.size(); i++)
{
ofstream outf("vector.txt", ios::app);
outf<<"value at "<< i << " = " << keypoints.at<KeyPoint>(i)<<endl;
}
しかし、次のエラーが表示されます。
std :: vector <_Ty> :: at':関数呼び出しに引数リストがありません。'&std :: vector <_Ty> :: at'を使用して、メンバーへのポインターを作成します
構文を確認しましたが、何も問題が見つかりませんでした。
編集:これの前に、私はマトリックスの内容を印刷したいと思っていました、そしてこのフォーマットはそれのために完全に働きました、これは私がマトリックスの内容を印刷するために使用したコードです:
for(int x = 0;x < dst.rows ; x++)
{
for( int y = 0; y < dst.cols; y++)
{
ofstream outf("Sample.txt", ios::app);
outf<<"value at "<< x << " " << y << " = " << dst.at<float>(x,y)<<endl;
}
}
ここで、dstはfloatデータ型で構成される行列です。