本申请涉及人工智能领域,具体涉及计算机视觉、云服务、深度学习技术领域,尤其涉及用于识别视频的方法、装置、电子设备及计算机可读存储介质。
背景技术:
视觉搜索是以图像,视频等内容作为搜索的输入源,利用视觉识别相关技术,将输入的视觉内容识别检索,并返回相关图像、文字等多种形态结果的技术。随着视觉搜索的技术不断的发展,视觉搜索返回给用户的搜索结果由文字发展到图像,由图像发展到视频,不断更新迭代来满足不同用户的搜索需求。
现有通常对用户给定的待识别图像进行猜词处理,然后根据猜出的搜索关键词来搜索相应的视频,并将搜索出的视频作为识别结果反馈给用户。
技术实现要素:
本申请实施例提出了一种用于识别视频的方法、装置、电子设备及计算机可读存储介质。
第一方面,本申请实施例提出了一种用于识别视频的方法,包括:获取待识别图像;根据图像相似度筛选出与待识别图像相似的视频关键帧集,视频关键帧集中的多张视频关键帧按与待识别图像的图像相似度大小顺序排列;根据待识别图像的图像内容确定图像内容类别,并对视频关键帧集中多张视频关键帧的当前排列顺序按与图像内容类别的接近程度进行调整,得到调整后视频关键帧排序;分别确定与调整后视频关键帧排序中每个视频关键帧所属的匹配视频,得到匹配视频排序。
第二方面,本申请实施例提出了一种用于识别视频的装置,包括:
待识别图像获取单元,被配置成获取待识别图像;视频关键帧集确定单元,被配置成根据图像相似度筛选出与待识别图像相似的视频关键帧集,视频关键帧集中的多张视频关键帧按与待识别图像的图像相似度大小顺序排列;排序调整单元,被配置成根据待识别图像的图像内容确定图像内容类别,并对视频关键帧集中多张视频关键帧的当前排列顺序按与图像内容类别的接近程度进行调整,得到调整后视频关键帧排序;匹配视频确定单元,被配置成分别确定与调整后视频关键帧排序中每个视频关键帧所属的匹配视频,得到匹配视频排序。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,该指令被至少一个处理器执行,以使至少一个处理器执行时能够实现如第一方面中任一实现方式描述的用于识别视频的方法。
第四方面,本申请实施例提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行时能够实现如第一方面中任一实现方式描述的用于识别视频的方法。
本申请实施例提供的用于识别视频的方法、装置、电子设备及计算机可读存储介质,首先,获取待识别图像;然后,根据图像相似度筛选出与待识别图像相似的视频关键帧集,该视频关键帧集中的多张视频关键帧按与待识别图像的图像相似度大小顺序排列;接着,根据待识别图像的图像内容确定图像内容类别,并对视频关键帧集中多张视频关键帧的当前排列顺序按与图像内容类别的接近程度进行调整,得到调整后视频关键帧排序;最后,分别确定与调整后视频关键帧排序中每个视频关键帧所属的匹配视频,得到匹配视频排序。
本申请通过依次按照在视觉的图像相似度和图像内容所属类别来逐步提升筛选出的视频关键帧和其相似度排序的准确度,即通过两个不同角度的特征来共同用于判断哪些视频关键帧与待识别图像更加匹配,以使得基于调整后视频关键帧排序确定出的匹配视频与待识别图像的匹配度更高。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性系统架构;
图2为本申请实施例提供的一种用于识别视频的方法的流程图;
图3为本申请实施例提供的另一种用于识别视频的方法的流程图;
图4为本申请实施例提供的在一应用场景下的用于识别视频的方法的流程示意图;
图5为本申请实施例提供的一种用于识别视频的装置的结构框图;
图6为本申请实施例提供的一种适用于执用于识别视频的方法的电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于识别视频的方法、装置、电子设备及计算机可读存储介质的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103和服务器105上可以安装有各种用于实现两者之间进行信息通讯的应用,例如视频搜索类应用、以图搜图类应用、即时通讯类应用等。
终端设备101、102、103和服务器105可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等;当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中,其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块,在此不做具体限定。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器;服务器为软件时,可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块,在此不做具体限定。
服务器105通过内置的各种应用可以提供各种服务,以可以提供基于以图搜图原理的搜索用户给定图像对应的视频服务的视频搜索类应用为例,服务器105在运行该视频搜索类应用时可实现如下效果:首先,通过网络104从终端设备101、102、103中接收用户上传的待识别图像;然后,根据图像相似度筛选出与待识别图像相似的视频关键帧集,该视频关键帧集中的多张视频关键帧按与待识别图像的图像相似度大小顺序排列;接着,根据待识别图像的图像内容确定图像内容类别,并对视频关键帧集中多张视频关键帧的当前排列顺序按与图像内容类别的接近程度进行调整,得到调整后视频关键帧排序;最后,分别确定与调整后视频关键帧排序中每个视频关键帧所属的匹配视频,得到匹配视频排序。
需要指出的是,待识别图像除可以从终端设备101、102、103通过网络104获取到之外,也可以通过各种方式预先存储在服务器105本地。因此,当服务器105检测到本地已经存储有这些数据时(例如开始处理之前留存的待处理视频搜索任务),可选择直接从本地获取这些数据,在此种情况下,示例性系统架构100也可以不包括终端设备101、102、103和网络104。
由于匹配视频的确定需要基于大量的提取自视频的图像集合作为数据支撑,因此需要占用较多的运算资源和较强的运算能力,因此本申请后续各实施例所提供的用于识别视频的方法一般由拥有较强运算能力、较多运算资源的服务器105来执行,相应地,用于识别视频的装置一般也设置于服务器105中。但同时也需要指出的是,在终端设备101、102、103也具有满足要求的运算能力和运算资源时,终端设备101、102、103也可以通过其上安装的电子相册类应用完成上述本交由服务器105做的各项运算,进而输出与服务器105同样的结果。尤其是在同时存在多种具有不同运算能力的终端设备的情况下,但电子相册类应用判断所在的终端设备拥有较强的运算能力和剩余较多的运算资源时,可以让终端设备来执行上述运算,从而适当减轻服务器105的运算压力,相应的,用于识别视频的装置也可以设置于终端设备101、102、103中。在此种情况下,示例性系统架构100也可以不包括服务器105和网络104。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
请参考图2,图2为本申请实施例提供的一种用于识别视频的方法的流程图,其中流程200包括以下步骤:
步骤201:获取待识别图像;
本步骤旨在由用于识别视频的方法的执行主体(例如图1所示的服务器105)获取到待识别图像,该待识别图像既可以实时从用户控制的终端设备(例如图1所示的终端设备101、102、103)以接收的方式获取到,也可以自行从预先设定的网络存储空间中以下载的方式获取到,还可以从两用户之间传输的数据中截取到(已预先获取到了相应用户的授权),以通过对截取到的数据中包含的图像来进一步判断两用户之间所进行的信息交互内容,例如某一用户的喜好等等。
具体的,该待识别图像可以是单独的一帧图像,也可以是多帧图像构成的一个动图(例如gif文件),在用户仅能够获取到一个由多帧图像构成的动图时,还可以进一步要求用户提供指示其中哪张图像应为待识别图像的额外信息,例如指示gif文件在第2秒展示的图像为待识别图像。
步骤202:根据图像相似度筛选出与待识别图像相似的视频关键帧集;
在步骤201的基础上,本步骤旨在由上述执行主体在备选的视频关键帧集合(即由从不同的视频中提取出的关键帧构成的集合)中找到与待识别图像在视觉上相似的部分视频关键帧。其中,在相似的视频关键帧数量较多时可构成一个视频关键帧集,并设置其中的多张视频关键帧按与待识别图像的图像相似度大小进行顺序排列,例如视频关键帧集中按照图像相似度从大到小从左到右或从上到下排列相应的视频关键帧。
其中,视频关键帧可以包含视频封面帧和按照固定时间点从视频中提取出的一些视频帧,也可以指具有代表性的视频帧,可根据实际情况灵活选择,此处不做具体限定。
其中,两张图像的图像相似图是指两张图像在像素级别的色彩特征上的相似度,简单而言,对相同场景连续拍摄得到的两张图像理应拥有非常高的图像相似度。具体的,图像相似度的计算方式可采用多种方式,例如可两张图像置于相同颜色空间下求取其欧氏距离、余弦距离、汉明距离等,也可以使用样本图像和对样本图像之间的图像相似度的标注结果来训练得到一个能够输出与输入图像对的图像相似度的深度学习模型,还可以进一步的要求其输出预设数量的相似度较高的相似图像,例如可采用卷积神经网络或残差网络等网络来实现,此处不再一一赘述。
步骤203:确定待识别图像中图像内容所属的内容类别,并对视频关键帧集中多张视频关键帧的当前排列顺序按与内容类别的接近程度进行调整,得到调整后视频关键帧排序;
在步骤202的基础上,本步骤旨在由上述执行主体对上述仅按图像视觉特征的相似度排序得到的视频关键帧集中的各相似的视频关键帧,按其分别与待识别图像中图像内容所属的内容类别的接近程度进行重排序,以得到调整后视频关键帧排序。其中,待识别图像中图像内容所属的内容类别是指待识别图像的图像内容所应属的类别,例如待识别图像中是一张风景图,那么其应属于预先设定出的风景图类,若待识别图像的图像内容是一张电影票的相关内容,那么其应属于电影票类,类别的多少和上下层级可根据实际情况的需求自行设定和划分得到,此处不做赘述。
即待识别图像先后经过步骤202的视觉特征相似度排序和内容类别特征相似度排序,最终得到了在视觉特征上和内容类别上均与待识别图像相似的视频关键帧排序,从而通过多种能够影响相似度的特征提升了视频关键帧与待识别图像的相似程度。
待识别图像中图像内容所属的内容类别可通过多种方式进行识别,例如通过对待识别图像进行图像特征提取,然后再通过与每种预设种类的模板图像特征进行匹配,最后再根据匹配程度确定是否应属于该类别;也可以对待识别图像进行语义识别,以确定待识别图像的图像内容中包含的物体的种类,然后再根据每种物体的数量、所占面积最终确定出所属种类等;也可以使用样本图像和对样本图像应属种类的标注结果来训练得到一个能够输出与输入图像所属种类的深度学习模型,例如卷积神经网络、senet网络(一种用于图像处理的深度学习网络)等。
步骤204:分别确定与调整后视频关键帧排序中每个视频关键帧所属的匹配视频,得到匹配视频排序。
在步骤203的基础上,本步骤旨在由上述执行主体分别确定与调整后视频关键帧排序中每个视频关键帧所属的匹配视频,得到匹配视频排序,即与每张关键视频帧对应的匹配视频也将继承其在视频关键帧排序中的排序。
进一步的,在确定出与待识别图像对应的匹配视频排序之后,还可以将匹配视频排序返回给待识别图像的提供端,以便于提供端根据接收到的匹配视频排序来进一步筛选出与其期望一致的视频。
本申请实施例提供的用于识别视频的方法,通过依次按照在视觉的图像相似度和图像内容所属类别来逐步提升筛选出的视频关键帧和其相似度排序的准确度,即通过两个不同角度的特征来共同用于判断哪些视频关键帧与待识别图像更加匹配,以使得基于调整后视频关键帧排序确定出的匹配视频与待识别图像的匹配度更高。
在上一实施例的基础上,在用户传入的不直接传入待识别图像时,例如接收到用户传入的待识别视频,此时还可以从该待识别视频中提取待识别关键帧,并将该待识别关键帧作为该待识别图像继续进行后续处理;若在接收到用户传入的待识别视频的同时,还能够接收到用户传入的时间指示信息,还可以将该待识别视频中与该时间指示信息对应的目标视频帧作为该待识别图像继续进行后续处理。
请参考图3,图3为本申请实施例提供的另一种用于识别视频的方法的流程图,其中流程300包括以下步骤:
步骤301:获取待识别图像;
本步骤与流程200中的步骤201一致,相应解释说明请参见步骤201,此处不再赘述。
步骤302:将待识别图像输入预设的图像相似度计算模型;
步骤303:接收图像相似度计算模型输出的预设的视频关键帧集合中各视频关键帧分别与待识别图像之间的图像相似度;
步骤304:取图像相似度的大小在前设定数量的视频关键帧生成视频关键帧集;
步骤302-305旨在由上述执行主体通过预先训练好的图像相似度计算模型来输出多个与待识别图像在视觉特征上均具有较高相似度的视频关键帧,并最终得到按照相似度大小排序的视频关键帧集。
其中,该图像相似度计算模型可具体残差网络,并基于样本图像和任意两张样本图像之间的相似度标注结果完成对残差网络的训练。还可以进一步设定输出的数量为30、50、70等,即最终得到的视频关键帧集包含相似度大小排名前30、50、70的视频关键帧。
步骤305:利用预设的图像分类模型对待识别图像进行针对图像内容的语义识别操作,并根据得到的语义识别结果确定出内容类别;
本步骤旨在由上述执行主体利用预设的图像分类模型对待识别图像进行针对图像内容的语义识别操作,并根据得到的语义识别结果确定出内容类别。
其中,该图像分类模型可具体选用senet网络,并基于样本图像和对样本图像所包含的图像内容所属类别的标注结果训练得到,并借助senet网络其网络结构设计善用于处理图像方面的特性,来提升处理结果的准确性。
步骤306:对视频关键帧集中多张视频关键帧的当前排列顺序按与内容类别的接近程度进行调整,得到调整后视频关键帧排序;
步骤307:分别确定与调整后视频关键帧排序中每个视频关键帧所属的匹配视频,得到匹配视频排序。
以上步骤306-307与如图2所示的步骤203的后半部分和204一致,相同部分内容请参见上一实施例的相应部分,此处不再进行赘述。
在上一实施例的基础上,本步骤通过步骤302-步骤305针对流程200中步骤202给出了一种具体实现方式,借助基于实际场景下对图像相似度的定义训练出的图像相似度计算模型来输出与待识别图像在视觉特征上具有较高相似度的设定数量的视频关键帧,使得输出结果更加准确;步骤306针对流程200中步骤203中用于识别待识别图像所属种类的技术方案给出了一种具体实现方式,借助了基于实际场景下对图像内容应属哪个类别的定义训练出的图像分类模型来实现,尽可能的提升了种类识别结果的准确性。
为加深理解,本申请还结合一个具体应用场景,给出了一种具体的实现方案,请参见如图4所示的流程400,包括如下步骤:
步骤401:获取用户上传的待识别图像;
在实践中,用户可以构造一个包含或能够使服务器获取到待识别图像的查询(query)语句,例如该查询语句中包含待识别图像所处的网络地址或网络链接等。
步骤402:利用训练好的残差网络得到待识别图像的128维视觉特征;
本实施例中所使用的残差网络在标准的残差网络结构进行了改进,以通过改进后的残差网络输出维度数更少的视觉特征,从而基于维度数更少、更体现视觉差异的特征来进行后续相似图像的比对。具体的,标准的残差网络会输出一个1024维的特征,由于其中可能包含一些与判别图像相似度不相关的特征,且由于1024维特征在进行对比时进行难度大,因此本实施例在标准的残差网络的全连接层后增设了依次连接的两个卷积层和线性整流(relu,rectifiedlinearunit)层,以对原始的1024维特征进行降维处理。
步骤403:利用训练好的senet网络得到待识别图像的256维种类特征;
与步骤402的残差网络类似,本实施例中所使用的senet网络也进行了同样的改进,使其最终仅输出一个256维的用于表征其种类参数的特征。
举一个例子,中国福利彩票和猫眼电影票在视觉特征上很相似,大小基本相同,都是红色大标题,紧跟相似黑色小文字内容,背景为白色,因此在单纯基于视觉的128维特征上可能将其两者都作为相似图像,但如果能够识别到两者的种类,就可以发现两者应分别属于彩票类和电影票类,从而帮助提升与待识别图像的相似图像的相似程度。
步骤404:拼接128维视觉特征和256维种类特征,得到384维综合特征;
在步骤402和步骤403的基础上,本步骤旨在由上述执行主体拼接128维视觉特征和256维种类特征,得到一个同时包含视觉特征和种类特征的384维综合特征。
步骤405:利用gnoimi检索模型在视频封面集中寻找与待识别图像的384维综合特征的相似度排名前40的相似视频封面;
在步骤404的基础上,本步骤旨在由上述执行主体具体利用gnoimi检索模型在视频封面集中寻找与待识别图像的384维综合特征的相似度排名前40的相似视频封面。
相较于常规的检索模型,gnoimi检索模型提供了一种近似最近邻(approximatenearestneighbor)的检索方法,通过将全空间分割成很多小的子空间,在搜索的时候,通过某种方式,快速锁定在某一(几)子空间,然后在该(几个)子空间里做遍历,从而达到次线性的计算复杂度,进而实现检索效率的显著提升。
其中,视频封面集中是由视频数据中存储的各视频的封面构成,包括横版视频和竖版视频,同时为了增强视频封面与视频的关联性,还可以要求视频封面应为视频中的某一帧的图像,当视频封面不为视频中的任一帧的图像时,还可以增加其它提取自视频某个时间位置的图像作为视频封面的备选参考图像。
步骤406:将排名前40的相似视频封面对应的视频作为识别结果返回给用户。
流程400所给出的方案是一种将视觉特征和种类特征进行拼接,然后基于拼接后的综合特征再来进行相似图像匹配的方案,在实践中也可以折中的采用先使用视觉特征进行一次匹配得到视频关键帧集,然后再结合内容类别特征在视频关键帧集的基础上来修正相似程度排序结果的实现方式,例如在图像相似度通过预设的第一维度数特征进行比较得到的情况下,将该待识别图像的内容类别表达为预设的第二维度数特,然后将该视频关键帧集中的每张视频关键帧的第一维度数特征与其第二维度数特征进行拼接,得到拼接后特征,最后根据这些视频关键帧的拼接后特征与该待识别图像的拼接后特征计算得到综合特征相似度,进而得到按综合特征相似度从大到小排列的各视频关键帧。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种用于识别视频的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的用于识别视频的装置500可以包括:待识别图像获取单元501、视频关键帧集确定单元502、排序调整单元503和匹配视频确定单元504。其中,待识别图像获取单元501,被配置成获取待识别图像;视频关键帧集确定单元502,被配置成根据图像相似度筛选出与待识别图像相似的视频关键帧集,视频关键帧集中的多张视频关键帧按与待识别图像的图像相似度大小顺序排列;排序调整单元503,被配置成确定待识别图像中图像内容所属的内容类别,并对视频关键帧集中多张视频关键帧的当前排列顺序按与内容类别的接近程度进行调整,得到调整后视频关键帧排序;匹配视频确定单元504,被配置成分别确定与调整后视频关键帧排序中每个视频关键帧所属的匹配视频,得到匹配视频排序。
在本实施例中,用于识别视频的装置500中:待识别图像获取单元501、视频关键帧集确定单元502、排序调整单元503和匹配视频确定单元504的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201-204的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,视频关键帧集确定单元502可以被进一步配置成:
将待识别图像输入预设的图像相似度计算模型;
接收图像相似度计算模型输出的预设的视频关键帧集合中各视频关键帧分别与待识别图像之间的图像相似度;
取图像相似度的大小在前设定数量的视频关键帧生成视频关键帧集。
在本实施例的一些可选的实现方式中,图像相似度计算模型在全连接层后增设有依次连接的2个卷积层和1个线性整流层。
在本实施例的一些可选的实现方式中,排序调整单元503可以包括被配置成确定待识别图像中图像内容所属的内容类别的类别识别子单元,类别识别子单元可以被进一步配置成:
利用预设的图像分类模型对待识别图像进行针对图像内容的语义识别操作,并根据得到的语义识别结果确定出内容类别。
在本实施例的一些可选的实现方式中,图像分类模型在全连接层后增设有依次连接的2个卷积层和1个线性整流层。
在本实施例的一些可选的实现方式中,待识别图像获取单元501可以进一步被配置成:
响应于接收到传入的待识别视频,从待识别视频中提取待识别关键帧,并将待识别关键帧作为待识别图像。
在本实施例的一些可选的实现方式中,待识别图像获取单元501可以进一步被配置成:
响应于接收到传入的待识别视频和时间指示信息,将待识别视频中与时间指示信息对应的目标视频帧作为待识别图像。
在本实施例的一些可选的实现方式中,用于识别视频的装置500还可以包括:
特征表达单元,被配置成响应于图像相似度通过预设的第一维度数特征进行比较得到,将内容类别表达为预设的第二维度数特征;以及
排序调整单元包括被配置成对视频关键帧集中多张视频关键帧的当前排列顺序按与内容类别的接近程度进行调整,得到调整后视频关键帧排序的排序调整子单元,排序调整子单元包括:
特征拼接模块,被配置成将视频关键帧集中的每张视频关键帧的第一维度数特征与其第二维度数特征进行拼接,得到拼接后特征;
综合特征相似度计算及排序模块,被配置成根据视频关键帧的拼接后特征与待识别图像的拼接后特征计算得到综合特征相似度,得到按综合相似度从大到小排列的调整后视频关键帧排序。
在本实施例的一些可选的实现方式中,综合特征相似度计算及排序模块包括被配置成根据视频关键帧的拼接后特征与待识别图像的拼接后特征计算得到综合特征相似度的综合特征相似度计算子模块,综合特征相似度计算子模块被进一步配置成:
利用预设的检索模型计算得到视频关键帧和待识别图像各自的拼接后特征间的特征相似度,得到综合特征相似度。
本实施例作为对应于上述方法实施例的装置实施例存在,本申请实施例提供的用于识别视频的装置,通过依次按照在视觉的图像相似度和图像内容所属类别来逐步提升筛选出的视频关键帧和其相似度排序的准确度,即通过两个不同角度的特征来共同用于判断哪些视频关键帧与待识别图像更加匹配,以使得基于调整后视频关键帧排序确定出的匹配视频与待识别图像的匹配度更高。
根据本申请的实施例,本申请还提供了一种电子设备和一种计算机可读存储介质。
图6示出了一种适于用来实现本申请实施例的用于识别视频的方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图6所示,该电子设备包括:一个或多个处理器601、存储器602,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示gui的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图6中以一个处理器601为例。
存储器602即为本申请所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本申请所提供的用于识别视频的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的用于识别视频的方法。
存储器602作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的用于识别视频的方法对应的程序指令/模块(例如,附图5所示的待识别图像获取单元501、视频关键帧集确定单元502、排序调整单元503和匹配视频确定单元504)。处理器601通过运行存储在存储器602中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的用于识别视频的方法。
存储器602可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储该电子设备在执行用于识别视频的方法所创建的各类数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器602可选包括相对于处理器601远程设置的存储器,这些远程存储器可以通过网络连接至适用于执行用于识别视频的方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
适用于执行用于识别视频的方法的电子设备还可以包括:输入装置603和输出装置604。处理器601、存储器602、输入装置603和输出装置604可以通过总线或者其他方式连接,图6中以通过总线连接为例。
输入装置603可接收输入的数字或字符信息,以及产生适用于执行用于识别视频的方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置604可以包括显示设备、辅助照明装置(例如,led)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(lcd)、发光二极管(led)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用asic(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(pld)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决传统物理主机与虚拟专用服务器(vps,virtualprivateserver)服务中存在的管理难度大,业务扩展性弱的缺陷。
本申请实施例通过依次按照在视觉的图像相似度和图像内容所属类别来逐步提升筛选出的视频关键帧和其相似度排序的准确度,即通过两个不同角度的特征来共同用于判断哪些视频关键帧与待识别图像更加匹配,以使得基于调整后视频关键帧排序确定出的匹配视频与待识别图像的匹配度更高。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
1.一种用于识别视频的方法,包括:
获取待识别图像;
根据图像相似度筛选出与所述待识别图像相似的视频关键帧集,所述视频关键帧集中的多张视频关键帧按与所述待识别图像的图像相似度大小顺序排列;
确定所述待识别图像中图像内容所属的内容类别,并对所述视频关键帧集中多张视频关键帧的当前排列顺序按与所述内容类别的接近程度进行调整,得到调整后视频关键帧排序;
分别确定与所述调整后视频关键帧排序中每个视频关键帧所属的匹配视频,得到匹配视频排序。
2.根据权利要求1所述的方法,其中,所述根据图像相似度筛选出与所述待识别图像相似的视频关键帧集,包括:
将所述待识别图像输入预设的图像相似度计算模型;
接收所述图像相似度计算模型输出的预设的视频关键帧集合中各视频关键帧分别与所述待识别图像之间的图像相似度;
取所述图像相似度的大小在前设定数量的视频关键帧生成所述视频关键帧集。
3.根据权利要求2所述的方法,其中,所述图像相似度计算模型在全连接层后增设有依次连接的2个卷积层和1个线性整流层。
4.根据权利要求1所述的方法,其中,所述确定所述待识别图像中图像内容所属的内容类别,包括:
利用预设的图像分类模型对所述待识别图像进行针对图像内容的语义识别操作,并根据得到的语义识别结果确定出所述内容类别。
5.根据权利要求4所述的方法,其中,所述图像分类模型在全连接层后增设有依次连接的2个卷积层和1个线性整流层。
6.根据权利要求1所述的方法,其中,所述获取待识别图像包括:
响应于接收到传入的待识别视频,从所述待识别视频中提取待识别关键帧,并将所述待识别关键帧作为所述待识别图像。
7.根据权利要求1所述的方法,其中,所述获取待识别图像包括:
响应于接收到传入的待识别视频和时间指示信息,将所述待识别视频中与所述时间指示信息对应的目标视频帧作为所述待识别图像。
8.根据权利要求1至7任一项所述的方法,其中,响应于所述图像相似度通过预设的第一维度数特征进行比较得到,还包括:
将所述内容类别表达为预设的第二维度数特征;以及
所述对所述视频关键帧集中多张视频关键帧的当前排列顺序按与所述内容类别的接近程度进行调整,得到调整后视频关键帧排序,包括:
将所述视频关键帧集中的每张视频关键帧的第一维度数特征与其第二维度数特征进行拼接,得到拼接后特征;
根据所述视频关键帧的拼接后特征与所述待识别图像的拼接后特征计算得到综合特征相似度,得到按所述综合相似度从大到小排列的调整后视频关键帧排序。
9.根据权利要求8所述的方法,其中,所述根据所述视频关键帧的拼接后特征与所述待识别图像的拼接后特征计算得到综合特征相似度,包括:
利用预设的检索模型计算得到所述视频关键帧和所述待识别图像各自的拼接后特征间的特征相似度,得到所述综合特征相似度。
10.一种用于识别视频的装置,包括:
待识别图像获取单元,被配置成获取待识别图像;
视频关键帧集确定单元,被配置成根据图像相似度筛选出与所述待识别图像相似的视频关键帧集,所述视频关键帧集中的多张视频关键帧按与所述待识别图像的图像相似度大小顺序排列;
排序调整单元,被配置成确定所述待识别图像中图像内容所属的内容类别,并对所述视频关键帧集中多张视频关键帧的当前排列顺序按与所述内容类别的接近程度进行调整,得到调整后视频关键帧排序;
匹配视频确定单元,被配置成分别确定与所述调整后视频关键帧排序中每个视频关键帧所属的匹配视频,得到匹配视频排序。
11.根据权利要求10所述的装置,其中,所述视频关键帧集确定单元被进一步配置成:
将所述待识别图像输入预设的图像相似度计算模型;
接收所述图像相似度计算模型输出的预设的视频关键帧集合中各视频关键帧分别与所述待识别图像之间的图像相似度;
取所述图像相似度的大小在前设定数量的视频关键帧生成所述视频关键帧集。
12.根据权利要求11所述的装置,其中,所述图像相似度计算模型在全连接层后增设有依次连接的2个卷积层和1个线性整流层。
13.根据权利要求10所述的装置,其中,所述排序调整单元包括被配置成确定所述待识别图像中图像内容所属的内容类别的类别识别子单元,所述类别识别子单元被进一步配置成:
利用预设的图像分类模型对所述待识别图像进行针对图像内容的语义识别操作,并根据得到的语义识别结果确定出所述内容类别。
14.根据权利要求13所述的装置,其中,所述图像分类模型在全连接层后增设有依次连接的2个卷积层和1个线性整流层。
15.根据权利要求8所述的装置,所述待识别图像获取单元进一步被配置成:
响应于接收到传入的待识别视频,从所述待识别视频中提取待识别关键帧,并将所述待识别关键帧作为所述待识别图像。
16.根据权利要求8所述的装置,所述待识别图像获取单元进一步被配置成:
响应于接收到传入的待识别视频和时间指示信息,将所述待识别视频中与所述时间指示信息对应的目标视频帧作为所述待识别图像。
17.根据权利要求10至16任一项所述的装置,其中,还包括:
特征表达单元,被配置成响应于所述图像相似度通过预设的第一维度数特征进行比较得到,将所述内容类别表达为预设的第二维度数特征;以及
所述排序调整单元包括被配置成对所述视频关键帧集中多张视频关键帧的当前排列顺序按与所述内容类别的接近程度进行调整,得到调整后视频关键帧排序的排序调整子单元,所述排序调整子单元包括:
特征拼接模块,被配置成将所述视频关键帧集中的每张视频关键帧的第一维度数特征与其第二维度数特征进行拼接,得到拼接后特征;
综合特征相似度计算及排序模块,被配置成根据所述视频关键帧的拼接后特征与所述待识别图像的拼接后特征计算得到综合特征相似度,得到按所述综合相似度从大到小排列的调整后视频关键帧排序。
18.根据权利要求17所述的装置,其中,所述综合特征相似度计算及排序模块包括被配置成根据所述视频关键帧的拼接后特征与所述待识别图像的拼接后特征计算得到综合特征相似度的综合特征相似度计算子模块,所述综合特征相似度计算子模块被进一步配置成:
利用预设的检索模型计算得到所述视频关键帧和所述待识别图像各自的拼接后特征间的特征相似度,得到所述综合特征相似度。
19.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9中任一项所述的用于识别视频的方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-9中任一项所述的用于识别视频的方法。
技术总结