2016-12-15 45 views
-1

我不确定这是否属于正确问题的标准,但我仍想给它一个镜头。图片分析:筛选/哈里斯/仿射/ RANSAC

我正在寻找一个库或函数,它采用[number_of_keypoints] [feature_0 ... feature_127]文件(或矩阵)形式的两个SIFT描述符 - 表示每个文件128个特征,并允许比较图像(我正在使用harris-affine alg。来提取它们:http://www.robots.ox.ac.uk/~vgg/research/affine/det_eval_files/extract_features2.tar.gz)。

我对能够找到相互最近的邻居的方法感兴趣,该方法可以接受邻域中的关键点数量和成功率。

E.g. 可以说我有两个关键点文件(由SIFT描述符描述)(image_1.sift,image_2.sift)。我想该方法接受:在附近,配合比,其中匹配比在伪代码装置的关键点的数目:

For each keypoint in image_1 
Pick 50 nearest neighbours from image_1 -> List<KeyPoints> neighbours_1 
    For each keypoint in image_2 
    Pick 50 nearest neighbours from image_2 -> List<KeyPoints> neighbours_2 
int numberOfMatches = 0; 
foreach(neighbour in neighbours_1) 
{ 
    if(neighbour == neighbours_2.Find(neighbour)) 
     numberOfMatches++; 
} 

的比率的匹配与数考虑的关键点的数目。 例如FindMutualKeypoints(image_1,image_2,50,0.7)

它可以是c#,java,python或matlab实现。我没有太多的图像分析定期的基础上,在我开始写自己的实现之前,我认为可能已经有一个了。我有一个问题,从我母语的翻译中找到正确的英语词汇(看起来像条款完全不同),这可能是我为什么找不到它的原因。

回答

0

我认为openCV是一条路。

这里是一个例子:link 它使用SURF描述符,但你也可以使用SIFT。

然后您可以打电话给FLANN匹配器,该匹配器还会提供有关匹配质量的信息。