专栏首页绿盟科技研究通讯创新沙盒inky的一大关键技术分析:Logo识别技术

创新沙盒inky的一大关键技术分析:Logo识别技术

一、前言

Logo识别技术是现实生活中应用很广的一个领域,比如一张照片中是否出现了Adidas或者Nike的商标Logo,或者一个杯子上是否出现了星巴克或者可口可乐的商标Logo。学术上早在2013年开始就已经陆续使用深度学习做相关的研究,而业界Logo识别已经开始商业化,包括谷歌,百度,阿里等公司都在AI开放平台开放了API给大家提供Logo识别的使用接口。在安全领域Logo识别技术的应用也很广泛,例如敏感信息挖掘,垃圾邮件过滤等方面都有涉及Logo识别相关的应用。2020年RSA创新沙盒中inky公司在恶意邮件识别系统中也用到了这一关键技术。

实际上Logo识别技术和目标检测(Object Detection)技术是非常相关的,关于目标检测学术上研究的时间已经超过20年。随着深度学习技术的发展,现在主要的目标检测算法已经从早期的传统图像算法转到了深度神经网络方法。现在主流的目标检测方法包括RCNN,FRCNN,SSD,YOLO等,这些算法在神经网络结构上不断创新,从two stage到one stage,算法已经在业界的得到了应用验证。而Logo识别技术能够利用Detection技术进行实现,但是又和普通目标检测有所区别,因为Logo的种类可能比较多而且Logo相比普通目标检测中背景和物体的关系不大。因此Logo识别技术算是一种特殊的目标检测算法的应用。本文希望通过对目标检测技术的介绍出发,然后介绍Logo识别技术的方法,向读者介绍其原理及应用。

二、目标检测

目标检测的任务是希望在图像中找到目标对象,并且能包括目标的具体位置。由于图像在形成过程中收到光照、遮挡、目标物体位置、形状以及数量等不确定因素的干扰,传统基于图像的目标检测算法能有一定作用,但是效果不够好。在深度学习发展之后,主要流行两种目标检测算法,一种是以RCNN为代表的早期two stage算法,另一种是以SSD为代表的的one stage算法。

Two stage算法包括两个stage,第一个stage需要生成proposal信息,第二个stage需要利用proposal信息进行进一步目标检测。RCNN,FRCNN以及后续改进算法RFCN等都属于two stage算法。在FRCNN算法中首次提出使用CNN网络完成对proposal的提取,后续的方法大多借鉴了FRCNN的方式,首先通过一个神经网络的卷积层来提取共享特征,然后用一个RoI Pooling Layer在feature map上提取每个RoI的feature map,每个RoI的feature map都会由下一个阶段处理,第二个阶段一般由全连接网络完成每一个RoI的分类和回归预测。

One stage算法会直接在神经网络中提取特征并用来检测目标所属分类及位置,算法主要通过overFeat网络将分类、定位、检测等过程融合在一个网络中,SSD以及YOLO都是典型的one stage算法,后续的改进方法例如DSSD、YOLOv3等算法一方面在提升算法性能,另一方面在提升算法效果和加速训练。一个图像经过YOLO算法处理之后会得到检测目标的分类和位置,这个e2e网络在网络结构上和two stage算法的FRCNN等有一些区别。首先YOLO不需要求解region proposal信息,而FRCNN网络一般使用RPN作为proposal提取网络,其次YOLO将检测问题当做回归问题进行求解,而不是像two stage算法将检测问题拆解为分类和回归,其网络结构如下。

网络中的卷积层用于提取特征,全连接层用于预测图像所属分类概率以及图像位置。

在全连接输出层的处理上,YOLO是将图像分为S*S个方形格子,每个格子检测该格子中的物体。如果物体的中心位置落在某个格子,该格子检测这个物体。每个格子都会输出一些bounding box信息以及一些物体所属分类的概率。Bouding box是用来获取物体位置的信息,其主要包括x,y,w,h,confidence。其中x和y是格子预测物体的bounding box中心的坐标,w和h是图像的夸夸难度和高度,confidence是bounding box是否包含物体以及位置的准确度。

最后YOLO选择使用均方和误差作为loss函数的优化模型参数。

也就是说YOLO的loss函数有三部分构成,分别是坐标误差、IoU误差、以及分类误差。

One stage模型和two stage模型相比往往具备预测速度更快的特点,并且背景误检率比较低。而two stage方法在识别目标位置的精度上更好,召回率一般更高。

三、Logo识别

在Logo识别中,实际上主要工作在于能够检测出图像中是否包含Logo或者其位置信息。这和Detection的任务目标是一致的,不过在实际应用场景下面临更多的复杂问题。

例如,对于Logo训练数据的类别不平衡问题,某些小众的Logo在数据集中的数量很少。针对针对这一问题,可以通过合成数据的方式进行缓解,比如选择特定的Logo以及抽样的图片,在图片中合成特定的Logo作为训练数据加入数据集的方式可以增加少量Logo所属分类引发的数据不均衡问题。此外,Logo识别可能面对的Logo种类很多,因此选择使用softmax进行分类时可能效果会随着Logo数量的增加而降低。因此可以考虑使用多层网络进行Logo的识别,首先利用YOLO模型检测Logo可能的位置,然后使用image-similarity network模型对Logo进行检测找到Logo所属的精确分类,该2-layer网络结构如下图。

Layer1是YOLOv2网络,其主要作用在于识别Logo提取bounding box,由于Logo识别中更注重对图像全局信息的检测,因此选择使用YOLO算法更合适。Layer2是image-similarity network模型,通过CNN提取到图像特征之后经过归一化层和全连接层得到特征向量。网络随着同种Logo间loss降低,不同Logo间loss增加的方式逐渐收敛,最后使用cosin distance进行相似度检索。

经过Logo识别算法对图像进行检测识别之后,效果如下图所示。图像中出现的Logo的类别和位置都会识别出来。

四、总结

随着深度学习的发展,目标检测技术在学术届和业界都取得了很大的突破。越来越多商业化的AI平台都集成了目标检测相关的技术,Logo识别就是一个具备商业价值的落地应用场景。在安全领域目标检测算法并不常见,但是对于商标违规侵权以及资产核查等场景具备应用空间,可以作为威胁情报助力企业数据搜集挖掘和品牌维权。利用Logo识别技术可以快速精准的监测企业数据信息,避免投入大量人力成本和时间成本。

关于天枢实验室

天枢实验室聚焦安全数据、AI攻防等方面研究,以期在“数据智能”领域获得突破。

内容编辑:天枢实验室 张胜军 责任编辑:肖晴

本文分享自微信公众号 - 绿盟科技研究通讯(nsfocus_research),作者:天枢实验室

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-03-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 基于MCU/MPU的物联网设备固件防护方法

    物联网设备进入了千家万户,其安全问题也逐渐被重视起来。作为网络安全厂商,我们在物联网安全方面做了许多研究,今年成立了“格物实验室”,专门研究物联网的安全方案,其...

    绿盟科技研究通讯
  • 机器学习在网络安全中的正确打开方式,你学废了吗?

    机器学习模型被越来越多地应用到网络安全领域,如:恶意软件检测、恶意脚本检测、加密流量监控、钓鱼邮件检测等等,机器学习在网络安全中的应用看似越来越广,但实际应用到...

    绿盟科技研究通讯
  • 机器学习在网络安全中的正确打开方式,你学废了吗?

    机器学习模型被越来越多地应用到网络安全领域,如:恶意软件检测、恶意脚本检测、加密流量监控、钓鱼邮件检测等等,机器学习在网络安全中的应用看似越来越广,但实际应用到...

    绿盟科技研究通讯
  • 提供智能服务?先迈过数字信任这个坎

    埃森哲战略最新发布的《全球消费者动态调研》指出,企业如果不能提供个性化的购物体验,41%的中国消费者会感到失望。但在订购用以了解和预测其需求的智能服务时,超过半...

    企鹅号小编
  • tcplayer 源码改造第一弹 -> 自定义加密

    在代码中定位videoSource,可定位到如下相似代码,下面的代码中加注释的即为笔者新增的参数

    大洼X
  • Ionic 开发之 Ionic Storage 详解

    Ionic Storage 是一款基于 localForage 用于 Ionic 应用程序的简单 “键-值” 存储模块,支持 SQLite 开箱即用。该工具可以...

    semlinker
  • 完整案例分析再加知识整合——艾特工厂方法模式,超详细的

    泰斗贤若如
  • 去掉CSDN使用MarkDown编辑器插入图片自动添加的水印

    版权声明:本文为耕耘实录原创文章,各大自媒体平台同步更新。欢迎转载,转载请注明出处,谢谢。

    耕耘实录
  • RFID技术|门禁卡破解|IC卡破解学习过程

    安全不仅仅包含网络上的安全,在我们实际生活中也同样存在很多个安全相关的事物,可以说跟科技扯上关系的事物都会有安全问题,无线,蓝牙,手机,无人机,汽车。真正有问题...

    安恒网络空间安全讲武堂
  • Gradle Plugin Publish

    用户3004328

扫码关注云+社区

领取腾讯云代金券