小编pie*_*pie的帖子

使用FAST检测更快地进行SURF描述?

对于我的硕士论文,我正在对SIFT SURF en FAST算法进行一些测试,以便在智能手机上进行徽标检测.

当我只是检测时间,描述匹配某些方法时,我得到以下结果.

对于SURF检测器和SURF描述符:

找到180个关键点

  • 1,994秒关键点计算时间(SURF)

  • 4,516秒描述时间(SURF)

  • 0.282秒匹配时间(SURF)

当我使用FAST探测器代替SURF探测器时

找到319个关键点

  • 0.023秒关键点计算时间(FAST)

  • 1.295秒描述时间(SURF)

  • 0.397秒匹配时间(SURF)

FAST探测器比SURF探测器快得多,甚至可以检测到几乎两倍的关键点快100倍.这些结果是可以预测的.

但下一步不是预测结果.对于319个FAST关键点然后使用180个SURF关键点,de SURF描述符的速度有多快?

据我所知,描述与检测算法无关......但这些结果并不像预测的那样.

有谁知道这是可能的吗?

这是代码:

    FeatureDetector detector = FeatureDetector.create(FeatureDetector.SURF);
    //FeatureDetector detector = FeatureDetector.create(FeatureDetector.FAST);
    Imgproc.cvtColor(image1, image1, Imgproc.COLOR_RGBA2RGB);
    Imgproc.cvtColor(image2, image2, Imgproc.COLOR_RGBA2RGB);

    DescriptorExtractor SurfExtractor = DescriptorExtractor
    .create(DescriptorExtractor.SURF);


    //extract keypoints
    long time= System.currentTimeMillis();
    detector.detect(image1, keypoints);
    Log.d("LOG!", "number of query Keypoints= " + keypoints.size());
    detector.detect(image2, logoKeypoints);
    Log.d("LOG!", "number of logo Keypoints= " + logoKeypoints.size());
    Log.d("LOG!", "keypoint calculation time elapsed" + (System.currentTimeMillis() -time));

    //Descript keypoints
    long time2 = System.currentTimeMillis();
    Mat …
Run Code Online (Sandbox Code Playgroud)

android opencv surf sift

7
推荐指数
1
解决办法
5048
查看次数

标签 统计

android ×1

opencv ×1

sift ×1

surf ×1