0

一連の画像から yml ファイルに語彙 (クラスターの重心) があります。画像から新しい SURF 記述子を取得しました。この新しいキーポイント記述子が、語彙に対してどの程度離れているか、しきい値を使用して確認したいと思います。良い一致と悪い一致の両方を保存します。良い説明と悪い説明を取得したら、それらをキーポイントとして画像にマークする方法を教えてください。私はopencvにまったく慣れていません。誰かが提案やサンプルコードで私を助けてくれます.

そして、ここに私のサンプルコードがあります

  Mat dictionary;
  FileStorage fs("../bin/dictionary1.yml", FileStorage::READ);
  fs["vocabulary"] >> dictionary;
  fs.release();

  std::vector<KeyPoint> keypoints_1;
  detector.detect( img_1, keypoints_1 );
  SurfDescriptorExtractor surfDesc;
  Mat descriptors1;
  surfDesc.compute(img_1, keypoints_1, descriptors1);

私はこのようなことをしたいと思います

for all image descriptor
 for all vacabulary
   if(dist is less)
     goodmatch
     cvcolor=blue
   else 
     badmatch
     cvcolor=red
4

1 に答える 1