垃圾图片过滤方法及装置与流程

文档序号:12597354阅读:503来源:国知局
垃圾图片过滤方法及装置与流程
本申请涉及计算机领域,尤其涉及一种垃圾图片过滤方法及装置。
背景技术
:随着信息时代的发展以及大数据时代的萌芽,各种通讯工具应运而生,包括:即时通讯工具、电子邮箱等等。由于通讯工具账号的廉价和发送消息成本的低廉,使得在各通讯工具中充斥着大量的垃圾消息。初期,垃圾消息多以文本形式为主,随着文本形式的垃圾消息的拦截技术的发展与完善,近些年又出现了大量的图片形式的垃圾消息(包含垃圾图片的消息)。由于现有图片处理技术的不足,图片内容理解算法的欠缺,图像算法计算速度慢无法做到实时拦截,导致垃圾图片相对于文本更难以识别。因此,如何在大量数据面前,做到有效识别消息中的垃圾图片并进行拦截是目前各类通讯工具亟待解决的问题。现有的垃圾图片过滤方法主要应用在电子邮件系统中,过滤垃圾邮件中垃圾图片的方法主要包括以下几类:一类是提取图片的指定特征,例如SIFT(Scale-invariantfeaturetransform,尺度不变特征变换)、SURF(图片的一种特征)、Haar(图片的一种特征)等,利用该指定特征训练获得分类器,使用该分类器进行垃圾图片的识别及过滤。另一类是基于图片中文本区域特征进行过滤,或采用OCR(OpticalCharacterRecognition,光学字符识别)技术。上述现有的垃圾图片过滤方法存在至少如下问题:众所周知,提取图片的所述指定特征(SIFT、SURF、Haar等)以及根据所述指定特征利用分类器进行分类的过程均非常耗时,对于一个图片的识别时间至少需要100ms以上。所述基于图片中文本区域特征进行 过滤,或采用图片关键字识别技术相比第一类识别技术更耗时,既要计算文本位置,又要对文本进行提取分类。因此,现有的垃圾图片识别技术均比较耗时,无法进行实时垃圾图片的过滤,也就无法实现即时通讯工具中垃圾图片的过滤。技术实现要素:本申请解决的技术问题之一是,提供一种垃圾图片过滤方法及装置,实现快速识别并过滤垃圾图片。本申请解决的技术问题之一是,提供一种快速图片过滤方法及装置,实现快速识别并过滤特定图片。根据本申请一方面的一个实施例,提供了一种垃圾图片过滤方法,包括:接收用户发送的包含图片的消息;提取所述用户的指定特征;所述用户的指定特征为预先确定的、用于识别所述用户是否是发送垃圾图片的用户的部分特征;根据提取的所述用户的指定特征利用预先训练获得的用户过滤模型确定所述用户的得分;判断所述用户的得分是否大于预设得分阈值;在所述用户的得分大于预设得分阈值情况下,计算所述图片的色彩直方图和/或感知哈希值;利用所述图片的色彩直方图和/或感知哈希值识别所述图片是否为垃圾图片;若识别所述图片为垃圾图片,则过滤掉包含所述垃圾图片的消息,以实现垃圾图片的过滤。根据本申请另一方面的一个实施例,提供了一种垃圾图片过滤装置,包括:接收单元,用于接收用户发送的包含图片的消息;提取单元,提取所述用户的指定特征;所述用户的指定特征为预先确定的、用于识别所述用户是否是发送垃圾图片的用户的部分特征;用户得分确定单元,用于根据提取的所述用户的指定特征利用预先训练获得的用户过滤模型确定所述用户的得分;一层过滤单元,用于判断所述用户的得分是否大于预设得分阈值;计算单元,用于在所述用户的得分大于预设得分阈值情况下,计算所述图片的色彩直方图和/或感知哈希值;二层识别单元,用于利用所述图片的色彩直方图和/或感知哈希值识别所述图片是否为垃圾图片;过滤单元,用于在识别所述图片为垃圾图片情况下,过滤掉包含所述垃圾图片的消息,以实现垃圾图片的过滤。根据本申请另一方面的一个实施例,提供了一种快速图片过滤方法,包括:接收用户发送的包含图片的消息;提取所述用户的指定特征;所述用户的指定特征为预先确定的、用于识别所述用户是否是发送特定图片的用户的部分特征;根据提取的所述用户的指定特征利用预先训练获得的用户过滤模型确定所述用户的得分;根据用户的得分与预设得分阈值的比较结果,决定是否过滤所述消息中的图片。根据本申请另一方面的一个实施例,提供了一种快速图片过滤装置,包括:接收单元,用于接收用户发送的包含图片的消息;提取单元,用于提取所述用户的指定特征;所述用户的指定特征为预先确定的、用于识别所述用户是否是发送特定图片的用户的部分特征;用户得分确定单元,用于根据提取的所述用户的指定特征利用预先训练获得的用户过滤模型确定所述用户的得分;过滤单元,用于根据用户的得分与预设得分阈值的比较结果,决定是否过滤所述消息中的图片。本申请实施例所述的垃圾图片过滤方法及装置通过提取发送包含图片的消息的用户的指定特征,该用户的指定特征为非图片维度的特征, 利用该用户的指定特征确定用户的得分,得分大于预设得分阈值,则说明该用户发送垃圾图片的可能性较大,即认为接收的该用户的包含图片的消息有可能为垃圾图片,从而实现垃圾图片的第一层过滤。该第一层过滤中使用的为非图片维度用户的指定特征,有效降低垃圾图片过滤的耗时。本申请实施例对第一层过滤出的疑似垃圾图片采用色彩直方图和/或感知哈希值进行第二层过滤,从而识别出垃圾图片,并对该垃圾图片进行过滤。整个垃圾图片过滤过程不但保证了垃圾图片识别的准确率及召回率,而且大大降低了垃圾图片识别操作的耗时,使得该方法能够达到大图片量的垃圾图片实时过滤。因此,本方法适用于即时通讯系统等对垃圾图片过滤效率要求较高的场景。本申请实施例所述的快速图片过滤方法及装置在接收到用户发送的包含图片的消息后,通过非图片维度的用户的指定特征来识别用户发送特定图片的得分,通过该得分与预设得分阈值的比对结果来识别该用户发送的该消息中的图片是否为特定图片,从而在确定是特定图片的情况下可以过滤掉该特定图片。提取非图片维度的用户的指定特征提取操作简单且耗时短,有效保证了垃圾图片过滤效率,实现特定图片的快速过滤。本领域普通技术人员将了解,虽然下面的详细说明将参考图示实施例、附图进行,但本申请并不仅限于这些实施例。而是,本申请的范围是广泛的,且意在仅通过后附的权利要求限定本申请的范围。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1是根据本申请一个实施例的垃圾图片过滤方法的流程图。图2是根据本申请一个实施例的垃圾图片的第三层过滤方法的流程图。图3是根据本申请一个实施例的垃圾图片过滤装置的结构示意图。图4是根据本申请一个实施例的快速图片过滤方法的流程图。图5是根据本申请一个实施例的快速图片过滤装置的结构示意图。本领域普通技术人员将了解,虽然下面的详细说明将参考图示实施例、附图进行,但本申请并不仅限于这些实施例。而是,本申请的范围是广泛的,且意在仅通过后附的权利要求限定本申请的范围。具体实施方式在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。所述计算机设备包括用户设备与网络设备。其中,所述用户设备包括但不限于电脑、智能手机、PDA等;所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(CloudComputing)的由大量计算机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述计算机设备可单独运行来实现本申请,也可接入网络并通过与网络中的其他计算机设备的交互操作来实现本申请。其中,所述计算机设备所处的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。需要说明的是,所述用户设备、网络设备和网络等仅为举例,其他现有的或今后可能出现的计算机设备或网络如可适用于本申请,也应包含在本申请保护范围以内,并以引用方式包含于此。后面所讨论的方法(其中一些通过流程图示出)可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或者其任意组合来实施。当用软件、固件、中间件或微代码来实施时,用以实施必要任务的程序代码或代码段可以被存储在机器或计算机可读介质(比如存储介质)中。(一个或多个)处理器可以实施必要的任务。这里所公开的具体结构和功能细节仅仅是代表性的,并且是用于描述本申请的示例性实施例的目的。但是本申请可以通过许多替换形式来具体实现,并且不应当被解释成仅仅受限于这里所阐述的实施例。应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中一个或更多所列出的相关联项目的任意和所有组合。应当理解的是,当一个单元被称为“连接”或“耦合”到另一单元时,其可以直接连接或耦合到所述另一单元,或者可以存在中间单元。与此相对,当一个单元被称为“直接连接”或“直接耦合”到另一单元时,则不存在中间单元。应当按照类似的方式来解释被用于描述单元之间的关系的其他词语(例如“处于...之间”相比于“直接处于...之间”,“与...邻近”相比于“与...直接邻近”等等)。这里所使用的术语仅仅是为了描述具体实施例而不意图限制示例性实施例。除非上下文明确地另有所指,否则这里所使用的单数形式“一个”、“一项”还意图包括复数。还应当理解的是,这里所使用的术语“包括”和/或“包含”规定所陈述的特征、整数、步骤、操作、单元和/或组件的存在,而不排除存在或添加一个或更多其他特征、整数、步骤、操作、单元、组件和/或其组合。还应当提到的是,在一些替换实现方式中,所提到的功能/动作可以按照不同于附图中标示的顺序发生。举例来说,取决于所涉及的功能/动作,相继示出的两幅图实际上可以基本上同时执行或者有时可以按照相反的顺序来执行。下面结合附图对本申请的技术方案作进一步详细描述。图1是根据本申请一个实施例的垃圾图片过滤方法的流程图,该方法可用于任何需要进行垃圾图片过滤的场景,包括各通讯工具中,尤其适用于即时通讯工具中垃圾图片的过滤。该方法主要包括如下步骤:S110、接收用户发送的包含图片的消息;S120、提取所述用户的指定特征;S130、根据提取的所述用户的指定特征利用预先训练获得的用户过滤模型确定所述用户的得分;S140、判断所述用户的得分是否大于预设得分阈值;S150、在所述用户的得分大于预设得分阈值情况下,计算所述图片的色彩直方图和/或感知哈希值;S160、利用所述图片的色彩直方图和/或感知哈希值识别所述图片是否为垃圾图片;S170、若识别所述图片为垃圾图片,则过滤掉包含所述垃圾图片的消息,以实现垃圾图片的过滤。为进一步理解本申请,下面对上述各步骤做进一步详细介绍。步骤S110所述的接收用户发送的包含图片的消息,可以在接收到消息后,识别该消息中是否包含图片,若包含图片,则确定接收的消息为包含图片的消息。其中识别消息中是否包含图片的方法可采用已有技术实现,本申请实施例对此不做具体限制。步骤S120中所述的用户的指定特征是预先确定的用于识别所述用户是否发垃圾图片的用户的部分特征,即为用户的诸多特征中对于识别用户是否发送垃圾图片的影响权重较高的特征。该用户的指定特征是非图片维度的特征。由于大部分情况下,发送包含垃圾图片的消息的都是固定的一些用户(对应垃圾账号),通过汇总该部分用户的一些特征,后续通过该特征可识别出用户发送垃圾图片的概率。由于用户的特征有很多,以即时通讯系统中用户的特征为例,其包括如下用户特征:用户ID、用户名、邮箱、用户姓名、用户地址、所在城市、所在省份、所在国家、邮编、电话、注册时间、评价总分、生日、激活状态、注册ip、注册省份、注册城市、会员等级、注册来源、电话号码、性别、是否开店、开店时间、是否实名认证、好评数、差评数、好友数等等。还包括如下用户行为特征:最近一次登陆时间、最近一次登陆地点、最近一次购买时间、最近一次发布编辑商品时间、发送消息ip、发送消息所在地、发送消息时间、最近一天发送总消息数、最近一周总消息数、最近一个月评价每天消息数、总登录次数、用户1天内添加好友数、用户7天内添加好友数、用户1个月内添加好友数、用户当天聊天uv、用户1天内被加黑名单次数、用户7天内被加黑名单次数、用户一个月内被加黑名单次数、用户1天内发送图片数、用户7天内发送图片数、用户1个月内发送图片数、用户历史被处罚次数、用户最近一个月是否被处罚、用户最近一个月是否发过垃圾文本、用户一个月内是否发过垃圾图片等等。因此,需要从诸多的用户特征及用户行为特征中确定出哪些特征对于识别所述用户是否发垃圾图片更有帮助,也就是确定出垃圾图片过滤过程中需要提取的用户的指定特征。本申请实施例可利用特征选择算法Relief确定所述用户的指定特征。即,使用Relief算法从用户的诸多特征中选择出指定特征,以减少特征运算的耗时。本申请实施例对Relief算法不做赘述。例如,利用Relief算法所确定的即时通讯系统中用户的指定特征如下表中所示:特征Code特征说明特征值UserProvice用户登录地省份根据省份编号,intUserCity用户登录城市根据城市编号,intUserRegist注册地根据城市编号,intLastLoginCity上一次登录城市根据城市编号,intTotalLoginNum总登录次数intUserStar用户星级intUserFriendsNum用户好友数intUserFriendsDayNum用户当天添加好友数intUserType用户标示int,1代表卖家,2代表买家UserUv用户当天聊天uvlongUserPv用户当天发送消息数longUserMsgNumMonth最近一个月平均每天消息数longUserAddBlackNumWeek最近一个星期被加黑名单次数long也就是在执行本步骤S120前,预先确定所述用户的指定特征。可以理解的是,针对不同场景,所需获取的用户的指定特征不同。步骤S130中所述的用户过滤模型是基于用户的指定特征训练获得,用于在输入用户的指定特征情况下输出用户得分,该得分用于评价用户发送垃圾图片的概率。也就是,本申请实施例需要预先训练获得用户过滤模型,在训练该用户过滤模型时,先收集训练样本,所收集的训练样本中垃圾图片和正常图片的比例为1∶1。然后,提取训练样本的所述用户的指定特征进行分类训练,例如,输入Liblinear进行分类训练,获得用户过滤模型。该用户过滤模型可在输入用户的指定特征情况下输出用户的得分。通过判断该得分是否大于预设得分阈值,来识别所述用户发送的消息中包含的图片是否为垃圾图片,其中,若所述用户的得分大于预设得分阈值,则认为该用户发送的消息中包含的图片为垃圾图片,否则认为该消息中包含的图片为正常图片。例如,针对即时通讯系统中接收用户发送的包含图片的消息,在提取用户的指定特征后,利用预先训练的用户过滤模型确定用户的得分为0.92分,而预设得分阈值为0.9分,则说明该用户发送垃圾图片的概率较高,所接收的消息中包含的图片有可能为垃圾图片。可以理解的是,对于用户的得分低于预设得分阈值的消息判定为正常消息(所包含的图片为正常图片),对于正常消息进行放行。本申请实施例在对消息执行上述的初次垃圾图片过滤时,使用的用户的指定特征为非图片维度的特征,非图片维度的特征提取操作耗时大大降低,有效保证了垃圾图片过滤效率。为进一步提高垃圾图片的识别准确率及召回率,本申请实施例对于初次过滤出的有可能为垃圾图片的消息执行后续的第二层过滤。本申请实施例提供的第二层过滤方法为利用色彩直方图和/或感知哈希值来过滤。步骤S140即为判断所述用户的得分是否大于预设得分阈值,所述预设得分阈值为预先设置的值,例如可以设置为0.9。用户的得分大于预设得分阈值说明该用户发送垃圾图片的概率较高,则该用户发送的消息中包含的图片为垃圾图片的概率较高,则可执行后续的垃圾图片的第二层过滤。步骤S150是在所述用户的得分大于预设得分阈值情况下,计算所述图片的色彩直方图和/或感知哈希值(PHASH值),计算图片的色彩直方图和感知哈希值的方法可采用已有技术实现,本实施例不再赘述。图1中所示为同时利用所述图片的色彩直方图和感知哈希值确定所述图片是否为垃圾图片,实际应用中可采用其中任一种。可以理解的是,若所述用户的得分小于或等于所述预设得分阈值,则确定所述图片为正常图片,放行所述消息。步骤S160所述利用所述图片的色彩直方图识别所述图片是否为垃圾图片的方法包括:判断所述图片的色彩直方图与预先建立的垃圾图片色彩直方图库中的垃圾图片的色彩直方图的相近度是否达到预设色彩直方图阈值,在所述垃圾图片色彩直方图库中存在至少一个色彩直方图与所述图片的色彩直方图的相近度达到预设色彩直方图阈值情况下,识别所述图片为垃圾图片。也就是,本申请实施例预先建立一垃圾图片色彩直方图库,可以基于训练用户过滤模型时收集的垃圾图片建立此垃圾图片色彩直方图库,即,计算每一垃圾图片的色彩直方图,将每一垃圾图片的色彩直方图存入垃圾图片色彩直方图库中。判断所述图片的色彩直方图与预先建立的垃圾图片色彩直方图库中的垃圾图片的色彩直方图的相近度,即为,计算所述图片的色彩直方图与垃圾图片色彩直方图库中每一色彩直方图的巴氏距离(BashiDis),在所述垃圾图片色彩直方图库中存在至少一个垃圾图片的色彩直方图与所述图片的色彩直方图的相近度达到预设色彩直方图阈值的情况下,即认为所述图片为垃圾图片。所述预设色彩直方图阈值例如可以设置为0.99。另外,可记录所述垃圾图片色彩直方图库中与所述图片的色彩直方图的相近度达到预设色彩直方图阈值的色彩直方图对应的垃圾图片。所述利用所述图片的感知哈希值识别所述图片是否为垃圾图片的方法包括:判断所述图片的感知哈希值与预先建立的垃圾图片感知哈希值库中 的垃圾图片的感知哈希值的相近度是否达到预设感知哈希值阈值的垃圾图片的感知哈希值,在所述垃圾图片感知哈希值库中存在至少一个感知哈希值与所述图片的感知哈希值的相近度达到预设感知哈希值阈值情况下,识别所述图片为垃圾图片。也就是,本申请实施例预先建立一垃圾图片感知哈希值库,可以基于训练用户过滤模型时收集的垃圾图片建立此垃圾图片感知哈希值库,即,计算每一垃圾图片的感知哈希值,将每一垃圾图片的感知哈希值存入垃圾图片感知哈希值库中。判断所述图片的感知哈希值与预先建立的垃圾图片感知哈希值库中的垃圾图片的感知哈希值的相近度,即为,计算所述图片的感知哈希值与垃圾图片感知哈希值库中每一感知哈希值的汉明距离(HanmingDis),在所述垃圾图片感知哈希值库中存在至少一个垃圾图片的感知哈希值与所述图片的感知哈希值的相近度达到预设感知哈希值阈值的情况下,即认为所述图片为垃圾图片。所述预设感知哈希值阈值例如可以设置为0.99。另外,可记录所述垃圾图片感知哈希值库中与所述图片的感知哈希值的相近度达到预设感知哈希值阈值的感知哈希值对应的垃圾图片。可以理解的是,单独使用色彩直方图或感知哈希值均可对初次过滤出的疑似垃圾图片进行垃圾图片的进一步确认。但对初次过滤出的疑似垃圾图片同时采用色彩直方图和感知哈希值两种方法进行垃圾图片的确认,在其中任一种方法识别出所述图片为垃圾图片时,即可确定该图片为垃圾图片,这样可避免单一方法在垃圾图片识别中存在的漏洞,提高垃圾图片识别的准确性及召回率。另外,本实施例提供的第二层过滤方法只需针对初次过滤出的疑似垃圾图片计算色彩直方图或感知哈希值,而不是所有接收的消息中的图片,因此大大降低了垃圾图片识别的耗时。步骤S170为在识别出图片为垃圾图片的情况下,过滤掉包含该垃圾图片的消息以实现垃圾图片的过滤。在同时利用识别所述图片的色彩直方图和感知哈希值确定所述图片是否为垃圾图片情况下,若两种方法均识别所述图片非垃圾图片则对上 述消息放行。可选地,为进一步提高垃圾图片召回率及准确率,本申请实施例可在第二层过滤后对过滤出的垃圾图片进行第三层过滤,即在前面的过滤操作基础上进行再次垃圾图片过滤,以进一步对过滤出的垃圾图片进行垃圾图片的确认。针对采用色彩直方图方法或感知哈希值方法识别出的垃圾图片,所述第三层过滤方法如图2中所示,包括如下步骤:S210、确定与所述图片的色彩直方图(或感知哈希值)的相近度达到所述预设色彩直方图阈值(或感知哈希值阈值)的垃圾图片中一个待确定点的指定特征向量与所述图片中所有点的指定特征向量的欧氏距离中第一近似点距离和第二近似点距离。S220、计算所述第一近似点距离与所述第二近似点距离的比值。S230、判断所述第一近似点距离与所述第二近似点距离的比值是否小于预设比值阈值。S240、若小于预设比值阈值,则将所述待确定点作为一个关键点;否则执行步骤S250、放弃该待确定点。S260、依照上述方法确定出所述垃圾图片的所有关键点,并判断所述关键点的个数是否达到预设数量阈值。若达到预设数量阈值,则进入步骤S270、确定所述图片为垃圾图片。否则,进入步骤S280、确定所述图片为正常图片。假设,在所述垃圾图片色彩直方图库中与所述图片的色彩直方图的相近度达到预设色彩直方图阈值的色彩直方图对应的垃圾图片有若干个,且在上述步骤S150中已经记录对应的垃圾图片。以其中一个垃圾图片为例,计算所述垃圾图片的surf和所述图片(接收的消息中包含的图片)的surf,提取该垃圾图片中一个点作为待确定点,计算该待确定点的surf与所述图片的所有点的surf的欧式距离,从中选择距离最近的第一近似点距离和距离第二近的第二近似点距离,并计算第一近似点距离与第二近似点距离的比值,若该比值小于预设比值阈值,则将该待确定点作为一个关键点,说明该待确定点与所述图片相近。依照上述方法确定出 该垃圾图片的所有关键点,并判断关键点个数是否达到预设数量阈值,例如预设数量阈值为10,在关键点个数大于10情况下,说明该垃圾图片与所述图片中相近点较多,则认为两个图片是相近(或相同)的图片,即可认为所述图片是垃圾图片。第三层过滤过程中所述的指定特征向量包括但不限于:SIFT、SURF、Haar等等。虽然在第三层过滤中同样需要提取较为耗时的图片的指定特征向量,但由于经过初次过滤以及第二层过滤的两层过滤操作,过滤出的疑似垃圾图片数量有限,针对经过两层过滤操作后过滤出的疑似垃圾图片进行指定特征向量的提取及比对,与现有技术中针对接收的消息中的所有图片进行指定特征向量的提取与比对相比,耗时大大降低。可以理解的是,该第三层过滤方法还可采用已有的其他任一种垃圾图片过滤方法,例如已有的采用CNN(卷积神经网络)提取特征训练分类器,利用该分类器进行垃圾图片过滤的方法。本申请实施例提供的上述垃圾图片过滤方法,使用非图片维度的用户的指定特征用于垃圾图片的初次过滤,并对初次过滤出的疑似垃圾图片采用色彩直方图和/或感知哈希值进行第二层过滤,从而识别出垃圾图片,并对该垃圾图片进行过滤。另外,根据不同应用场景对垃圾图片召回率的要求的不同,还可进一步对第二层过滤出的疑似垃圾图片进行第三层过滤。整个垃圾图片过滤过程不但保证了垃圾图片识别的准确率及召回率,而且大大降低了垃圾图片识别操作的耗时,使得该方法能够达到大图片量的垃圾图片实时过滤。因此,本方法适用于即时通讯系统等对垃圾图片过滤效率要求较高的场景。经发明人实验发现,本申请的垃圾图片过滤方法对于一个垃圾图片采用三层过滤过程耗时在50ms以下,与现有技术的100ms相比大大提高了垃圾图片的过滤效率。本申请实施例还提供一种与上述垃圾图片过滤方法对应的垃圾图片过滤装置,该装置的结构示意图如图3中所示,主要包括如下单元:接收单元310,用于接收用户发送的包含图片的消息。提取单元320,提取所述用户的指定特征;所述用户的指定特征为预 先确定的、用于识别所述用户是否是发送垃圾图片的用户的部分特征。其中,预先确定所述用户的指定特征为利用特征选择算法Relief确定。用户得分确定单元330,用于根据提取的所述用户的指定特征利用预先训练获得的用户过滤模型确定所述用户的得分。一层过滤单元340,用于判断所述用户的得分是否大于预设得分阈值。上述提取单元320、用户得分确定单元330以及一层过滤单元340共同实现垃圾图片的初次过滤,也就是第一层过滤。计算单元350,用于在所述用户的得分大于预设得分阈值情况下,计算所述图片的色彩直方图和/或感知哈希值。二层识别单元360,用于利用所述图片的色彩直方图和/或感知哈希值识别所述图片是否为垃圾图片。过滤单元370,用于在识别所述图片为垃圾图片情况下,过滤掉包含所述垃圾图片的消息,以实现垃圾图片的过滤。该计算单元350、二层识别单元360以及过滤单元370共同实现垃圾图片的第二层过滤。一种实施例所述二层识别单元360被配置为:判断所述图片的色彩直方图与预先建立的垃圾图片色彩直方图库中的垃圾图片的色彩直方图的相近度;在所述垃圾图片色彩直方图库中存在至少一个色彩直方图与所述图片的色彩直方图的相近度达到预设色彩直方图阈值情况下,识别所述图片为垃圾图片。另一种实施例所述二层识别单元360被配置为:判断所述图片的感知哈希值与预先建立的垃圾图片感知哈希值库中的垃圾图片的感知哈希值的相近度;在所述垃圾图片感知哈希值库中存在至少一个感知哈希值与所述图片的感知哈希值的相近度达到预设感知哈希值阈值情况下,识别所述图片为垃圾图片在所述二层识别单元360同时利用所述图片的色彩直方图和感知哈 希值识别所述图片是否为垃圾图片情况下,所述二层识别单元360被配置为:利用色彩直方图和感知哈希值中至少一种识别出所述图片为垃圾图片,则识别所述图片为垃圾图片。所述装置还包括:三层过滤单元370,用于在所述二层识别单元360识别所述图片为垃圾图片情况下,对识别出的垃圾图片进行再次垃圾图片过滤。所述三层过滤单元370被配置为:确定与所述图片的色彩直方图/感知哈希值的相近度达到所述预设色彩直方图阈值/感知哈希值阈值的色彩直方图/感知哈希值对应的垃圾图片中一个待确定点的指定特征向量与所述图片中所有点的指定特征向量的欧氏距离中第一近似点距离和第二近似点距离;计算所述第一近似点距离与所述第二近似点距离的比值;判断所述第一近似点距离与所述第二近似点距离的比值是否小于预设比值阈值;若小于预设比值阈值,则将所述待确定点作为一个关键点;依照上述方法确定出所述垃圾图片的所有关键点,判断所述关键点的个数是否达到预设数量阈值;若达到预设数量阈值,则确定所述图片为垃圾图片。综上所述,本申请实施例的垃圾图片过滤方法通过提取发送包含图片的消息的用户的指定特征,该用户的指定特征为非图片维度的特征,利用该用户的指定特征确定用户的得分,得分大于预设得分阈值,则说明该用户发送垃圾图片的可能性较大,即认为接收的该用户的包含图片的消息有可能为垃圾图片,从而实现垃圾图片的第一层过滤。该第一层过滤中使用的为非图片维度用户的指定特征,有效降低垃圾图片过滤的耗时。本申请实施例对第一层过滤出的疑似垃圾图片采用色彩直方图和/或感知哈希值进行第二层过滤,从而识别出垃圾图片,并对该垃圾图片进行过滤。整个垃圾图片过滤过程不但保证了垃圾图片识别的准确率及召回率,而且大大降低了垃圾图片识别操作的耗时,使得该方法能够达 到大图片量的垃圾图片实时过滤。因此,本方法适用于即时通讯系统等对垃圾图片过滤效率要求较高的场景。如图4中所示为本申请另一实施例的一种快速图片过滤方法流程图,该方法用于实现特定图片的快速过滤,该特定图片可以为垃圾图片、特定格式类型的图片、特定色彩属性的图片、包含特定对象的图片、或者具有其他共同属性的图片等等。该方法主要包括如下步骤:S410、接收用户发送的包含图片的消息。其中,对于接收的消息,可使用已有技术识别该消息中是否包含图片,若包含图片,则执行本申请实施例以下的步骤,若不包含图片,则按已有技术实现消息的处理,本申请实施例不做具体限制。S420、提取所述用户的指定特征。所述用户的指定特征为预先确定的、用于识别所述用户是否是发送特定图片的用户的部分特征。即为用户的诸多特征中对于识别用户是否发送特定图片的影响权重较高的特征。该用户的指定特征是非图片维度的特征。由于大部分情况下,发送包含特定图片的消息的都是固定的一些用户,通过汇总该部分用户的一些特征,后续通过该特征可识别出用户发送特定图片的概率。因此,本申请实施例需要从诸多的用户特征中确定出哪些特征对于识别所述用户是否发特定图片更有帮助,也就是确定出特定图片过滤过程中需要提取的用户的指定特征。本申请实施例可利用特征选择算法Relief确定所述用户的指定特征。即,使用Relief算法从用户的诸多特征中选择出指定特征,以减少特征运算的耗时。本申请实施例对Relief算法不做赘述。也就是在执行本步骤S420前,预先确定所述用户的指定特征。可以理解的是,针对不同场景,所需获取的用户的指定特征不同。例如,若所述特定图片为垃圾图片情况下,所确定的用户的指定特征包括:特征1、特征2、特征3及特征4;而若所述特定图片为包含同一建筑物的图片情况下,所确定的用户的指定特征包括:特征1、特征3、特征5、特征6以及特征7。可见针对特定图片的图片,所需获取的用户的指定特征亦不 同。S430、根据提取的所述用户的指定特征利用预先训练获得的用户过滤模型确定所述用户的得分。所述的用户过滤模型是基于用户的指定特征训练获得,用于在输入用户的指定特征情况下输出用户得分,该得分用于评价用户发送特定图片的概率。也就是,本申请实施例需要预先训练获得用户过滤模型,在训练该用户过滤模型时,先收集训练样本,所收集的训练样本中特定图片和非特定图片的比例为1∶1。然后,提取训练样本的所述用户的指定特征进行分类训练,例如,输入Liblinear进行分类训练,获得用户过滤模型。该用户过滤模型可在输入用户的指定特征情况下输出用户的得分。本申请实施例将提取的用户的指定特征输入预先训练获得的用户过滤模型,从而得到发送所述包含图片的消息的用户的得分。S440、判断所述用户的得分是否大于预设得分阈值。通过判断用户的得分是否大于预设得分阈值,来识别所述用户发送的消息中包含的图片是否为特定图片。其中,若所述用户的得分大于预设得分阈值,则认为该用户发送的消息中包含的图片为特定图片,进入步骤S450。否则,认为该消息中包含的图片为非特定图片,对于非特定图片可以按照已有技术处理,本实施例对此不做具体限制。例如,针对即时通讯系统中接收用户发送的包含图片的消息,在提取用户的指定特征后,利用预先训练的用户过滤模型确定用户的得分为0.92分,而预设得分阈值为0.9分,则说明该用户发送特定图片的概率较高,所接收的消息中包含的图片有可能为特定图片。S450、过滤掉消息中的特定图片,或者过滤掉该包含特定图片的消息。本申请实施例还提供一种与上述快速图片过滤方法对应的快速图片的过滤装置,如图5中所示为所述装置结构示意图,该装置主要包括如下单元:接收单元510,用于接收用户发送的包含图片的消息。提取单元520,用于提取所述用户的指定特征;所述用户的指定特征为预先确定的、用于识别所述用户是否是发送特定图片的用户的部分特征;预先确定所述用户的指定特征为利用特征选择算法Relief确定。用户得分确定单元530,用于根据提取的所述用户的指定特征利用预先训练获得的用户过滤模型确定所述用户的得分。过滤单元540,用于根据用户的得分与预设得分阈值的比较结果,决定是否过滤所述消息中的图片。本申请实施例的快速图片过滤方法及装置在接收到用户发送的包含图片的消息后,通过非图片维度的用户的指定特征来识别用户发送特定图片的得分,通过该得分与预设得分阈值的比对结果来识别该用户发送的该消息中的图片是否为特定图片,从而在确定是特定图片的情况下可以过滤掉该特定图片。提取非图片维度的用户的指定特征提取操作简单且耗时短,有效保证了垃圾图片过滤效率,实现特定图片的快速过滤。需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置 运行基于前述根据本申请的多个实施例的方法和/或技术方案。对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1