Opencv 是否有在GPU上实现且具有缩放/旋转不变性的检测器?
正如OpenCV 2.4.9.0中所知,这些特征检测器:Opencv 是否有在GPU上实现且具有缩放/旋转不变性的检测器?,opencv,computer-vision,feature-detection,feature-extraction,orb,Opencv,Computer Vision,Feature Detection,Feature Extraction,Orb,正如OpenCV 2.4.9.0中所知,这些特征检测器:SIFT、SURF、BRISK、FREAK、STAR、FAST、ORB 所有这些都在CPU上实现,但在GPU上只有FAST和ORB 众所周知,有些是缩放/旋转不变的,但有些不是: 它们是缩放不变和旋转不变: 筛选 冲浪 轻快 怪胎 明星 但它们不是缩放不变的,也不是旋转不变的: 快速 圆球 是否有在GPU上实现且具有缩放/旋转不变性的检测器 或者将添加到OpenCV 3.0中的GPU或OpenCL?实际上,SURF是Open
SIFT、SURF、BRISK、FREAK、STAR、FAST、ORB
FAST
和ORB
众所周知,有些是缩放/旋转不变的,但有些不是:
它们是缩放不变和旋转不变:
- 筛选
- 冲浪
- 轻快
- 怪胎
- 明星
- 快速
- 圆球
或者将添加到OpenCV 3.0中的GPU或OpenCL?实际上,SURF是OpenCV中唯一支持GPU的缩放/旋转不变特征检测器 在OpenCV 3.0中,和已经获得了OCL支持,而且,这两个(和)已经获得了CUDA支持 您的问题评论中已经提到了对的OCL/CUDA支持,但这只是对OpenCV的一种贡献,OpenCV的开发人员正是这样理解的: 新模块通常没有稳定的API,它们也不是 经过很好的测试。因此,它们不应该作为官方文件的一部分发布 OpenCV发行版,因为库保持二进制兼容性, 并努力提供良好的性能和稳定性 根据我以前的经验,OpenCV对SURF功能的实现比我的要弱得多。尝试一下,或者找到其他一些开源实现是合理的 p、 s:
据我所知,目前还没有GPU加速版。我最近与几位同事一起使用CUDA实现了AKAZE,如果您熟悉原始库,那么使用它应该没有问题,因为我们尊重API。您可以在此处找到当前版本:
您看过它吗(它已经有OCL版本了)@谢谢你!我没见过这个,小姐。遗憾的是没有异常/活泼。也许你也可以试试AKAZE。同样在3.0中,您不需要使用ocl版本的surf。这是我的默认设置-请参阅此链接。尽管使用
UMat
。@Kiran谢谢你。是的,这似乎是真的-在OpenCV 3.0中,SURF有3个版本:CPU、CUDA和OCL(如果可以,默认情况下会尝试使用)。而且AKAZE似乎比ORB更有效:但我没有发现任何关于在GPU(OCL/CUDA)上实现AKAZE的信息。