Java 使用opencv中的sift进行计算。
/**
* 传入一张图片得到sift特征点
* @param mat
* @return
*/
public MatOfKeyPoint getFeaturePoints(Mat mat){
FeatureDetector fd = FeatureDetector.create(FeatureDetector.SIFT);
MatOfKeyPoint mkp =new MatOfKeyPoint();
fd.detect(mat, mkp);
return mkp;
}
/**
* 获取sift特征
* @param mat
* @return
*/
public Mat getFeature(Mat mat){
Mat desc = new Mat();
MatOfKeyPoint mkp = getFeaturePoints(mat);
DescriptorExtractor de = DescriptorExtractor.create(DescriptorExtractor.SIFT);
de.compute(mat,mkp,desc );//提取sift特征
return desc;
}原创地址:http://blog.csdn.net/yuexin2/article/details/46894023

本文介绍如何使用Java和OpenCV库实现SIFT算法提取图像特征点及描述符的过程。通过创建SIFT特征检测器,并利用该检测器检测输入图像的特征点,之后再提取这些关键点的SIFT描述符。
462

被折叠的 条评论
为什么被折叠?



