私はopenCV(Java)を使用しており、最適な一致のリストがあります。これが私のコードです:
final MatOfKeyPoint keyPoints1 = new MatOfKeyPoint();
final MatOfKeyPoint keyPoints2 = new MatOfKeyPoint();
...
MatOfDMatch matches = new MatOfDMatch();
...
List<DMatch> matchesList = matches.toList();
List<DMatch> bestMatches = new ArrayList<DMatch>();
for (int i = 0; i < matchesList.size(); i++)
{
Double dist = (double) matchesList.get(i).distance;
if (dist < threshold)
{
bestMatches.add(matches.toList().get(i));
}
}
トレイン記述子とクエリ記述子のインデックスを使用する必要があることはわかっていますが、その方法がわかりません。私はこれらのように試しましたがMatOfKeyPoint
、Javaの配列のようにアクセスできないため機能しません。
for(int i = 0; i < bestMatches.size(); i++)
{
keyPoints1[bestMatches.get(i).queryIdx].pt;
keyPoints2[bestMatches.get(i).trainIdx].pt;
}
ピクセル座標を見つけるにはどうすればよいですか?