aihot  2017-05-02 11:26:27  OpenCV |   查看评论   

 OpenCV学习笔记(五十三)——新版本2.4.2简介&FREAK和ORB特征描述子效果对比features2d






 

OpenCV 2.4.2简介

OpenCV从未放慢自己前进的步法,就在7月4日,最新版的2.4.2又放出来了。与之同时放出的还有两个网站和,前者作为一个正式的全新的官方用户网站,简单浏览了一下,应该是一个对应之前维基百科上的那个网站,是一个介绍性的新闻网站,对开发者的意义可能不是太大;后面这个网站就厉害了,是一个类似google讨论组一样的交流区,大家可以在上面提问,留言,解答,我也刚刚注册了个用户,刚成立没几天已经有60多个问题了,应该还是很活跃的一个讨论区。

还是老样子,介绍一下新版本的更新以及改动:

现在支持iOS操作系统!开发iphone的朋友们,你们也可以用OpenCV了,是不是内牛满面。

添加了一个新的特征点描述算法FREAK,这也是今年的CVPR的一个新算法,也是一个2值的特征,文章里说是根据人视网膜的原理,挺玄乎的,据说是效果比ORB和SURF都好,我要试试看。

对GPU的模块进一步优化,对个别算法的性能有较大提升。

还修正了2.4.1的50多个bug。

介绍就这么多,感觉亮点就是网站的建设和这个FREAK特征,其他的还得慢慢摸索啊

FREAK和ORB特征描述子效果对比

ORB就是BRIEF的改进,BRIEF太简单了,就不介绍了,有兴趣的朋友自己看paper吧。ORB的paper我读下来,感觉改进主要有以下几点:用FAST作为特征点提取的算法,更快了,添加了特征点的主方向,这样就具有了旋转不变性。最后一点其实我也想到了,当时看BRIEF的时候就想应该可以优化,就是ORB采用贪婪穷举的方法得到了相关性较低的随机点对,还有一个改进就是对于随机点对,受噪声的影响很大BRIEF的办法就是对原图像滤波,降低噪声的影响,ORB不在使用像素点的直接比较,而是选择该像素为中心的一个小patch作为比较对象,提高了抗噪能力

FREAK我只是大致看了下,理解可能不到位,我的理解是这个算法是基于人眼视网膜细胞的分布,中间密集,四周稀疏,从而在图像中构建很多的区域,当然越靠近中心的区域采样更密集,四周区域采样稀疏,随机对比各区域的像素得到一组2值特征,这个算法也关注了尺度和方向的问题,都有对应的解决办法,还根据了人眼看事物时眼睛不停的转动,设计了一种级联的搜索器,总而言之,我感觉这个算法也是受ORB和BRISK这种2值特征的启发下的一种改进吧。

下面就利用OpenCV对其进行一下对比,值得说明的是,在2.4.2中,FREAK给出了pattern的训练

对比实验效果如下:(上图为ORB,下图为FREAK)

OpenCV学习笔记(五十三)——新版本2.4.2简介&FREAK和ORB特征描述子效果对比features2d

OpenCV学习笔记(五十三)——新版本2.4.2简介&FREAK和ORB特征描述子效果对比features2d

经过筛选之后的特征点如下图:(上图为ORB,下图为FREAK)

OpenCV学习笔记(五十三)——新版本2.4.2简介&FREAK和ORB特征描述子效果对比features2d

OpenCV学习笔记(五十三)——新版本2.4.2简介&FREAK和ORB特征描述子效果对比features2d


当然,我这里只是个简单的测试,其实并不能完全反应实际的性能,因为我这里FREAK的特征点位置的检测用的是SURF,而ORB用的是FAST。但从我这里的比较效果来看,ORB要好很多。下面让我来对比一下算法的运行时间:

 

  ORB FREAK detection FREAK extraction
debug 0.317s 0.301s 0.167s
release 0.094s 0.162s 0.085s
 

除特别注明外,本站所有文章均为 赢咖4注册 原创,转载请注明出处来自OpenCV学习笔记(五十三)——新版本2.4.2简介&FREAK和ORB特征描述子效果对比features

留言与评论(共有 0 条评论)
   
验证码:
[lianlun]1[/lianlun]