为什么mser关键点上的sift.compute()比sift关键点上的慢

5t7ly7z5  于 2021-09-13  发布在  Java
关注(0)|答案(1)|浏览(416)

在1080x1080图像上测试opencv中sift提取器的性能会产生一些意外结果:

img = cv.imread("myImage.jpg", 0)  # gray
mser = cv.MSER_create()
sift = cv.SIFT_create()

kp = sift.detect(img)   # len(kp) == 5804
des = sift.compute(img, kp)  # time: 0.22s

kp = mser.detect(img)   # len(kp) == 2511
des = sift.compute(img, kp)  # time: 1.62s

为什么 sift.compute() mser检测到的关键点比sift检测到的关键点慢?请注意,mser检测到的关键点比sift少。

2ic8powd

2ic8powd1#

我已经绘制了关键点,这表明mser关键点比sift关键点覆盖的区域更大。这可以解释为什么速度较慢。
mser:

筛选:

相关问题