Opencv 密集筛子比筛子更适合做一袋字吗?

Opencv 密集筛子比筛子更适合做一袋字吗?,opencv,computer-vision,classification,feature-extraction,Opencv,Computer Vision,Classification,Feature Extraction,我正在使用OpenCV实现一个单词袋图像分类器。最初,我测试了在SURF关键点中提取的SURF描述符。我听说稠密的SIFT(或PHOW)描述符可以更好地用于我的目的,所以我也尝试了它们 令我惊讶的是,他们的表现非常糟糕,实际上差了近10倍。我可能做错了什么?我正在使用OpenCV中的DenseFeatureDetector获取关键点。我从9层图像中提取了大约5000个描述符,并将它们聚类成500个簇 我应该试试VLFeat库中的PHOW描述符吗?此外,我不能在OpenCV的SVM实现中使用卡方核

我正在使用OpenCV实现一个单词袋图像分类器。最初,我测试了在SURF关键点中提取的SURF描述符。我听说稠密的SIFT(或PHOW)描述符可以更好地用于我的目的,所以我也尝试了它们

令我惊讶的是,他们的表现非常糟糕,实际上差了近10倍。我可能做错了什么?我正在使用OpenCV中的DenseFeatureDetector获取关键点。我从9层图像中提取了大约5000个描述符,并将它们聚类成500个簇

我应该试试VLFeat库中的PHOW描述符吗?此外,我不能在OpenCV的SVM实现中使用卡方核,这是许多文章推荐的。这对分类器质量至关重要吗?我应该尝试另一个库吗


另一个问题是尺度不变性,我怀疑它会受到密集特征提取的影响。我说得对吗?

这取决于问题。你应该尝试不同的技巧,以便知道什么是解决问题的最佳技巧。通常,当您需要对任何类型的场景进行分类时,使用PHOW非常有用。 你应该知道,PHOW和密集筛有点不同。几年前我使用了vlfeat PHOW,看到代码,它只是调用了不同大小的密集筛选,以及一些平滑。这可能是一个线索,可以是不变的规模。 在我的实验中,我也使用了libsvm,结果是直方图相交对我来说是最好的。默认情况下,libsvm和OpenCV SVM(基于libsvm)中不包含卡方和直方图相交核。你是决定是否应该尝试它们的人。我可以告诉你,RBF核实现了接近90%的精度,惠特直方图相交93%,卡方检验91%。但这些结果是在我的具体实验中得到的。您应该从带有自动调谐参数的RBF开始,看看它是否足够

总结这一切取决于你的具体实验。但是如果你使用稠密的SIFT,也许你可以尝试增加集群的数量,并用不同的尺度调用稠密的SIFT(我推荐你使用PHOW方法)

编辑:我在看OpenCV DenseSift,也许你可以从

m_detector=new DenseFeatureDetector(4, 4, 1.5);
知道H vlfeat PHOW使用[4 6 8 10]作为箱子尺寸