`
grunt1223
  • 浏览: 419592 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

视觉特征抽取算法——SURF

阅读更多
目前公司PF系统(违禁图片机器审核)运营尚存在一些问题,主要包括:

1.C++&opencv,第三方依赖较重,缺乏相应的C++工程师,维护成本较大
2.图片识别引擎与对比算分机制接近黑盒,内部机制不易理解,例如像提高某张高危图片的激励(权重)因子等等
3.针对公司特定业务的修改较为困难,例如增加对三维仿射的稳定性、增加图像签名缓存、特征匹配可视化等等

在隐网项目的过程中,积累了关于相关算法的经验;项目结束后,打算花业余时间实现JAVA版本的图片识别引擎,目前有一些进展,分享给各位。

违禁图片审核与我之前分享的《基于图像签名和局部敏感哈希的相似图片检索》有所不同,主要是业务上的区别:

1.图片审核讲究是召回率(查全率),因为违禁是不惜一切代价必须去除的,由于必须经过人工审核的复查,因此对准确率的要求则不是十分严格;而图片搜索讲究的是准确率,由于互联网海量图片的存在,对召回率则没有过多的要求。
2.图片审核的图库数量级一般在10000 – 100000;而图片检索的量级至少在百万以上。前者可以使用视觉分词(bag of words)与配合级联聚类(Kmeans Hierarchy Cluster)提升效果,后者使用mpeg-7边缘直方图签名以提高检索效率。

整个过程类似于搜索引擎的步骤,包括feature extraction、build、query、TF-IDF以及PageRanking,可参考下面系列图:









这次分享主要集中在图像特征抽取上,之后的分享会逐步进入到索引构建、查询以及评分规则上。基于SURF的特征抽取主要包括以下几个步骤:
1. 积分图像计算
2. 快速海森矩阵检测
1) 海森矩阵计算
2) 尺度空间构建
3) 兴趣点检测及精确定位
3. 兴趣点描述
1) 方向分配
2) 64位描述符生成

具体流程图如下:



论文中匹配的效果:





使用测试图库,在自己机器上使用JAVA实现的效果:










  • 大小: 40.9 KB
  • 大小: 30.5 KB
  • 大小: 41.2 KB
  • 大小: 47.5 KB
  • 大小: 15.6 KB
  • 大小: 107.8 KB
  • 大小: 86 KB
  • 大小: 76.5 KB
  • 大小: 59.1 KB
1
3
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics