目前公司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
分享到:
相关推荐
《图像检索实例(VC)——图像特征抽取与比较》 图像检索是计算机视觉领域中的一个重要研究方向,其主要目标是从大量的图像数据中快速找到与查询图像相似或匹配的图像。在这个实例中,我们关注的是使用VC(Visual ...
模式识别,特别是人脸识别,是计算机视觉领域中的一个重要研究方向,其目标是通过分析和理解图像中的脸部特征来识别人的身份。这一技术广泛应用于安全监控、移动设备解锁、社交媒体标记等功能。在这一领域,特征提取...
- **特征点检测**:使用稳健的特征检测算法(如SIFT或SURF)在每张图像上检测出关键特征点。 - **特征匹配**:通过比较特征点的描述符来确定哪些点是对应点。 - **匹配优化**:使用RANSAC等算法来剔除错误匹配,...
- **局部特征描述子**:如SIFT(尺度不变特征变换)、SURF(加速稳健特征)等,这些描述子能够在图像的局部区域中找到独特的模式,即使图像发生平移、旋转或缩放也能保持不变性。 ### 图像处理 图像处理是指对图像...
在这个场景中,我们看到两个C++源文件——letter_recog.cpp和RF_recog.cpp,它们可能包含了实现随机森林算法并应用于字母识别的代码。下面我们将深入探讨随机森林的概念、其工作原理以及在字母识别中的应用。 **...
SIFT(尺度不变特征变换)、SURF(加速稳健特征)和HOG(方向梯度直方图)等是常用特征提取算法。 六、图像编码与压缩 图像数据量庞大,因此需要进行编码和压缩来减少存储空间和传输时间。无损压缩保留了所有原始...
《MATLAB代码实现图像特征提取——ImageFARMER-rewrite深度解析》 在计算机视觉领域,图像特征提取是一项至关重要的任务,它为图像识别、分类和检索提供了基础。本文将详细探讨ImageFARMER-rewrite,这是一个基于...
特征提取是从图像中抽取出有意义的信息,如色彩、纹理、形状等;模型训练是通过机器学习算法,让计算机学习这些特征与类别之间的关系;预测则是用训练好的模型对新图像进行分类。 二、Python图像处理库 在Python中...