CN117475340A - 视频数据处理方法、装置、计算机设备和存储介质 - Google Patents

视频数据处理方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN117475340A
CN117475340A CN202210824612.7A CN202210824612A CN117475340A CN 117475340 A CN117475340 A CN 117475340A CN 202210824612 A CN202210824612 A CN 202210824612A CN 117475340 A CN117475340 A CN 117475340A
Authority
CN
China
Prior art keywords
video
feature
representation data
query
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210824612.7A
Other languages
English (en)
Inventor
郭卉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Beijing Co Ltd
Original Assignee
Tencent Technology Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Beijing Co Ltd filed Critical Tencent Technology Beijing Co Ltd
Priority to CN202210824612.7A priority Critical patent/CN117475340A/zh
Publication of CN117475340A publication Critical patent/CN117475340A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/48Matching video sequences

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种视频数据处理方法、装置、计算机设备和存储介质,可应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景。该方法包括:基于预先设定的目标抽帧率对查询视频进行抽帧处理得到查询视频的至少一个视频图像;调用视频分类模型对查询视频的至少一个视频图像进行处理,得到每个视频图像的第一特征表示数据以及查询视频的分类结果;基于第一特征表示数据以及查询视频的分类结果确定与查询视频匹配的目标视频。采用本申请,可提高视频排重的准确性与全面性。

Description

视频数据处理方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种视频数据处理方法、视频数据处理装置、计算机设备和计算机可读存储介质。
背景技术
随着互联网的发展,影视、亲子、教育、美食、萌宠等各类视频呈现爆发性增长,互联网中的视频来源广泛,数量巨大,且传播速度快,丰富了人们的娱乐生活。但与此同时,各个平台上也产生了大量的相似视频,给视频分类、视频排重以及视频内容的版权管理带来了极大的挑战。
为了从海量视频中准确地识别出相似视频,通常将待处理视频进行特征提取,得到一定数量的视频图像的图像特征,将每个图像特征与视频数据库中的视频图像的图像特征进行对比,若两个视频有足够多的图像特征重复出现,则可判断视频相似。然而,对视频进行特征提取时可能会损失一部分关键的视频信息,导致得到的图像特征无法准确地表征视频内容,从而降低视频排重的准确性。因此,如何提高视频排重的准确性是有待解决的技术问题。
发明内容
本申请提供了一种视频数据处理方法、装置、计算机设备和存储介质,可提高视频排重的准确性与全面性。
一方面,本申请提供了一种视频数据处理方法,包括:
基于预先设定的目标抽帧率对查询视频进行抽帧处理得到查询视频的至少一个视频图像;
调用视频分类模型对查询视频的至少一个视频图像进行处理,得到每个视频图像的第一特征表示数据以及查询视频的分类结果;
基于第一特征表示数据以及查询视频的分类结果确定与查询视频匹配的目标视频。
一方面,本申请提供了一种视频数据处理装置,包括:
模型处理单元,用于基于预先设定的目标抽帧率对查询视频进行抽帧处理得到查询视频的至少一个视频图像;调用视频分类模型对查询视频的至少一个视频图像进行处理,得到每个视频图像的第一特征表示数据以及查询视频的分类结果;
分类检索单元,用于基于第一特征表示数据以及查询视频的分类结果确定与查询视频匹配的目标视频。
一方面,本申请提供了一种计算机设备,包括处理器,适于实现一条或多条计算机程序;以及计算机存储介质,计算机存储介质存储有一条或多条计算机程序,一条或多条计算机程序由该处理器加载并实现本申请提供的视频数据处理方法。
一方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时使该处理器实现本申请提供的视频数据处理方法。
一方面,本申请提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备实现本申请提供的视频数据处理方法。
本申请采用的视频分类模型包括特征提取模块和分类模块,通过调用特征提取模块可得到查询视频的各个视频图像的第一特征表示数据;分类模块可对第一特征表示数据进行统计池化处理和特征交叉处理,得到第三特征表示数据;根据查询视频的分类结果可确定视频特征筛选条件,在视频特征库中,查找与各个视频图像的第一特征表示数据满足视频特征筛选条件的第二特征表示数据。
可见,本申请通过预先设定的目标抽帧率对查询视频进行抽帧处理,得到查询视频的多个视频图像,调用视频分类模型对查询视频的多个视频图像进行处理,可得到能够更准确表征视频图像的多个第一特征表示数据,以及该查询视频的分类结果,以提高视频分类的准确性,并且,可在同一模型下实现特征提取和视频分类,提高了模型的利用率,节省了资源;根据查询视频的多个第一特征表示数据和查询视频的分类结果,可确定与查询视频匹配的目标视频,从而视频排重的准确性和全面性。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种视频数据处理系统的结构示意图;
图2a为本申请实施例提供的一种视频数据处理方法的流程示意图;
图2b为本申请实施例提供的一种视频分类模型的结构与应用示意图;
图3为本申请实施例提供的另一种视频数据处理方法的流程示意图;
图4为本申请实施例提供的一种视频分类模型的训练方法的流程示意图;
图5为本申请实施例提供的一种视频数据处理装置的结构示意图;
图6为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了便于理解,首先对本申请涉及到的名词进行说明。
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
深度神经网络(Deep Neutral Networks,DNN)是深度学习的基础,DNN内部的神经网络层可以分为三类,输入层,隐藏层和输出层。一般来说第一层是输入层,最后一层是输出层,而中间的层数都是隐藏层,层与层之间是全连接的。DNN中的反向传播(back-propagation)指的是计算神经网络参数梯度的方法。总的来说,反向传播依据微积分中的链式法则,沿着从输出层到输入层的顺序,依次计算并存储目标函数有关神经网络各层的中间变量以及参数的梯度,从而可以求得DNN的损失函数。通过损失函数,可以调整网络中的参数,实现对网络的优化。
图像识别,是指利用计算机对图像进行处理、分析和理解,以识别各种不同模式的目标和对象的技术,是应用深度学习算法的一种实践应用。图像的传统识别流程分为四个步骤:图像采集、图像预处理、特征提取、图像识别。在本申请中,采用的是类别级别的图像识别,即不考虑识别对象的特定实例,仅考虑识别对象的类别(如人、猫、狗、鸟等)进行的识别,并确定出识别对象所属的类别。
向量映射(embedding)是一种分布式表示方法,即把原始输入数据分布地表示成一系列特征的线性组合,即能够将大型稀疏向量映射到保留语义关系的低维空间,同时,embedding向量的性质是能使距离相近的向量对应的物体有相近的含义。基于上述特点,embedding被广泛应用于深度学习领域中。在图像识别领域,使用embedding对视频的图像进行表征,能够提升对视频的图像的表征效果。
随着互联网的发展以及各类视频平台的出现,互联网上的涌现了各种类型的视频,其中包括了原创视频和相似视频,例如用户通过使用其他用户的原创视频直接上传至平台,或者二次修剪、图像增强、图像风格变换等处理后再次上传到平台而产生的相似视频,可认定为该相似视频对原创视频造成侵权。重复内容的新增视频为平台的审核与管理工作带来了大量的冗余,也给视频原创者的版权保护工作带来了巨大风险,因此需要通过筛选出具有重复内容的相似视频,来对新增视频进行消重,从而保证视频审核的高效性和视频原创者的版权安全性。
在视频侵权识别中,常需要针对视频的类别进行特殊的处理逻辑,如在某动漫视频网站,需要对动漫类型的视频侵权重点检测,检测对象除了直接复制动漫上传类型的视频外,还有经过二次裁剪修剪、图像增强、图像风格变换等处理后的相似视频也需要识别出来,而对其他如用户直播、讲课类共享资源等视频由于画面变化主要在人脸、手部动作、黑板文字变化等更细粒度特征的变化,需要在应用中针对该类视频设置额外的处理逻辑(如更严格的相似度阈值控制等)提升检索准确率。而现有的视频排重采用图像embedding排重的方法,当两个视频有足够多的图像embedding重复出现,即可以认为某个视频构成侵权;然而要针对视频类别设计不同的排重逻辑需要引入视频分类,若单独训练一个视频分类模型加入到现有排重框架,将使得模型推理所需要的图形处理器(Graphics ProcessingUnit,GPU)资源翻倍不利于大规模应用的扩展。如何在现有的图像embedding排重模型和方案上,以最少资源消耗学习到视频分类并在排重中应用是一个难点。
通常对视频的分类方法包括:对查询视频均匀抽帧产生定长图像;对定长图像提取特征;对提取得到的特征进行特征联合处理,再进行均值池化,经过一层全连接层进行分类。其中,定长均匀抽帧是对任意时长的视频均进行等间隔抽帧(如共抽取10帧,对10秒视频为每秒抽1帧,对100秒视频为每10秒抽一帧)。
在上述的视频分类方法中,存在以下不足:对查询视频采取的是定长抽帧的方式,容易损失中间帧信息,因此对长视频,以及视频中的变速的子视频段不友好,不能满足多种业务场景的需求;均值池化为对多帧embedding特征对应位置求取平均值得到多帧聚合的信息,视频中短时间出现的画面信息容易丢失;全连接层作为分类层的非线性效果较差,对特征的进一步抽象能力不足,易导致对查询视频的分类的准确性不够高。
为解决上述问题,本申请提供了一种视频数据处理方法,可应用于视频分类和视频排重,该方法基于统计的支持变长序列抽取视频元素的视频表征方法,能够实现由变长序列产生视频embedding;同时,该方法可进行相似度程度度量的视频无监督学习,实现在未标注的情况下进行视频相似度度量。
基于上述分析,本申请实施例提供了一种视频数据处理系统,用于对海量视频进行分类和排重。例如但不限于,本申请实施例提供的视频数据处理方法可应用于如图1所示的视频数据处理系统。图1为一种视频数据处理系统的结构示意图。如图1所示,该视频数据处理系统可包括但不限于:一个或多个终端110,一个或多个服务器120。终端110与服务器120之间通过有线网络或无限网络建立通信连接,并进行数据交互。需要说明的是,图1所示的设备数量和形态用于举例,并不构成对本申请实施例的限定。
本申请实施例中,终端110可包括但不限于智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端、智能家电、智能语音交互设备、飞行器等智能设备。
应用于本申请,终端110可用于确定查询视频,以及将查询视频发送至服务器120进行视频分类与排重。例如,终端110可作为视频版权所有方的管理终端,向服务器120发送原创视频作为查询视频,请求进行视频排重,服务器120可对该原创视频进行视频排重,查询视频库中该原创视频的相似视频,以进行视频版权管理。
本申请实施例中,视频数据处理系统中的服务器120可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务以及大数据和人工智能平台等基础云计算服务的云服务器。
应用于本申请,服务器120可用于调用视频分类模型对查询视频的至少一个视频图像进行处理,得到每个视频图像的第一特征表示数据以及查询视频的分类结果,其中,至少一个视频图像是基于目标抽帧率对查询视频进行抽帧处理得到的;服务器120还可用于基于分类结果确定视频特征筛选条件;基于视频特征筛选条件、第一特征表示数据以及视频特征库确定与查询视频匹配的目标视频,其中,视频特征库包括视频库中各个视频的至少一个视频图像的特征表示数据。
上述视频数据处理方法中的查询视频、查询视频的视频图像以及视频数据处理过程中产生的第一特征表示数据、分类结果、视频特征筛选条件和目标视频可以是存储云数据库中,当执行视频数据处理方法时,视频数据处理设备从云数据库获取上述数据;或者,视频数据处理方法中产生的其他数据也可以是存储在区块链中的。其中,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。由于区块链的上述特性使得存储在区块链上的数据不可篡改,保证了数据的安全性。
以上对本申请实施例提供的视频数据处理方法进行了简要介绍,下面对该视频数据处理方法的具体实现方式进行详细阐述。
本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
可以理解的是,在本申请的具体实施方式中,涉及到查询视频、查询视频的视频图像等相关的数据,当本申请以上实施例运用到具体产品或技术中时,相关数据均需要获得相关对象的许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
基于如图1所示的视频数据处理系统,本申请实施例提出了一种视频数据处理方法,可应用于视频数据处理装置。请参阅图2a,图2a为本申请实施例提供的一种视频数据处理方法的流程示意图。如图2a所示,视频数据处理方法包括但不限于以下步骤:
S201:基于预先设定的目标抽帧率对查询视频进行抽帧处理得到查询视频的至少一个视频图像。
在本申请中,目标抽帧率表示预设的对查询视频每秒抽帧的数量。示例性的,假设目标抽帧率为每秒抽3帧,若查询视频的时长为20秒,则对查询视频按每秒3帧的目标抽帧率进行抽帧,得到60帧视频图像;随机生成一个比总帧数(60)小的数值,如50,作为该查询视频的不定长抽帧数量,然后从60帧视频图像中均匀地抽取50帧图像作为该查询视频的视频图像。
其中,本申请对不同的查询视频的目标抽帧率是相同的,基于目标抽帧率对不同时长的查询视频进行抽帧处理可以得到每个查询视频的视频图像,而不同时长的查询视频的视频图像的数量是不同的,如时长较长的查询视频能够抽帧得到比时长较短的查询视频更多数量的视频图像,从而使得时长较长的查询视频的视频内容能保留更多的中间帧信息。
S202:调用视频分类模型对查询视频的至少一个视频图像进行处理,得到每个视频图像的第一特征表示数据以及查询视频的分类结果。
其中,分类结果可以是通过视频分类模型对查询视频的视频图像进行分类,得到的查询视频的分类标签,如游戏、动漫、讲课等。可选地,视频分类模型可根据查询视频的视频图像的主要内容对查询视频进行分类,则查询视频的分类结果可以为:美食、游戏、汽车、萌宠、运动、动漫等类别,如查询视频的视频图像中主要内容是动漫,则可将该查询视频的分类标签记为动漫,则该查询视频的分类结果为动漫。可选地,视频分类模型还可结合查询视频的视频图像中的静态图像特征和运动特征等特征进行分类,如视频图像中的主体对象、场景及主体对象和场景之间关系等静态图像特征,多帧视频图像之间的帧间运动等运动特征;如查询视频的查询图像中的主体对象为人物在黑板或显示器前进行活动,则该查询视频的分类结果可以为用户直播或讲课类视频等。
可选地,上述查询视频可以是用户上传至服务器的视频。例如,查询视频是用户实时上传的视频。查询视频可以是一个完整视频,也可以是完整视频中的片段。例如,可以在终端设备所显示的操作界面上展现视频上传的入口,用户可以选择要上传的视频,终端设备可以将该视频上传到指定服务器;服务器接收到对该视频后,可以将该视频作为上述查询视频。需要说明的是,本申请实施例对视频的格式不作限定。
在一种实现方式中,视频分类模型包括特征提取模块以及分类模块,调用视频分类模型后,特征提取模块可对查询视频的多个视频图像进行特征提取处理,得到每个视频图像的第一特征表示数据;分类模块对查询视频的第一特征表示数据进行统计池化以及特征交叉处理,得到第三特征表示数据;分类模块对得到的第三特征表示数据进行分类处理,得到查询视频的分类结果。
其中,池化(pooling)操作是对卷积得到的结果进一步处理,是将平面内某一位置及其相邻位置的特征值进行统计汇总,并将汇总后的结果作为这一位置在该平面内的值输出;统计池化(statistics pooling)是将输入序列所有帧的卷积输出取均值和标准差,再将二者拼接起来,得到句子级别的特征表达。
在一种实现方式中,视频分类模型中的分类模块可包括池化层和特征交叉层。池化层可用于对视频图像的第一特征表示数据进行统计池化处理,得到均值特征表示数据和方差特征表示数据,将上述两个特征表示数据进行拼接处理,则得到第四特征表示数据。特征交叉层用于对第四特征表示数据进行特征交叉处理,得到第三特征表示数据。可选地,特征交叉层可以是由全连接层和整流线性单元(Rectified Linear Unit,ReLU)构成的多层感知器(Multilayer Perceptron,MLP),能够对第四特征表示数据引入非线性的特征交叉信息,对第四特征表示数据的embedding表征空间的信息进行二次抽取,从而可以获取更多特征内的可区分类别的辨别性差异,使得生成的第三特征表示数据融合了特征交叉信息,以及为后续分类提供丰富的非线性信息,实现更好的分类效果。
S203:基于第一特征表示数据以及查询视频的分类结果确定与查询视频匹配的目标视频。
其中,针对视频库中的各个视频,首先基于目标抽帧率对每个视频进行抽帧处理,得到每个视频的视频图像,通过调用视频分类模型对各个视频的至少一个视频图像进行处理,得到每个视频的每个视频图像的特征表示数据并存储于视频特征库中。目标视频可以有一个或多个,表示该视频与查询视频互为相似视频或相同视频。
可选地,当查找到与查询视频匹配的目标视频后,可以根据不同业务场景的需要,对目标视频或查询视频进行处理。示例性的,可对视频库进行消重,并将消重后的视频库推送给视频审核服务端,使得审核服务端对于内容重复的不同视频,仅需要审核一次即可,降低了视频审核的冗余;此外,本实施例还可以将相似视频推送给视频版权管理服务端,对相似视频进行校对,从而维护视频原创者的版权安全。
在一种实现方式中,本申请中的视频分类模型的结构与应用可以如图2b所示,视频分类模型包括特征提取模块与分类模块。对任一查询视频进行抽帧处理后得到多个视频图像,查询视频的长度是任意的,如每个视频基于相同的目标抽帧率,如每隔3秒抽取一帧,则视频抽取得到的帧数随着视频时长的变化而变化。特征提取模块可包括深度神经网络和全连接层,能够对帧数不定的视频图像提取到各帧的图像特征;分类模块可包括池化层、特征交叉层和分类层,其中,池化层能够对查询视频的多帧特征进行统计池化,产生定长的池化特征向量;特征交叉层是由全连接层和线性整流单元ReLU构成的多层感知器,能够使池化特征向量的特征内部产生更多的信息交叉得到特征交叉向量;分类层可基于特征交叉向量进行分类,池化层与特征交叉层使得特征交叉向量具有了提供丰富的非线性信息,从而使得特征交叉向量对视频图像的表征更加准确,提高了视频分类的准确性,也为视频排重提供了更准确的依据。
如图2b所示,本申请实施例提供的视频数据处理方法可应用于视频排重。进行视频排重时,首先利用视频分类模型对查询视频进行分类,然后根据不同的分类采用不同的参数配置(如视频筛选条件和匹配条件等);根据配置的参数以及视频分类模块的特征提取模块输出的图像特征,与视频库中候选视频的图像特征进行视频排重判断。其中,对不同分类的查询视频,有不同的参数设置,可分成如图2b中所示的各个排重分支。
在一种实现方式中,可根据视频的分类结果设置对应的视频特征筛选条件,并基于视频特征筛选条件、第一特征表示数据以及视频特征库确定与查询视频匹配的目标视频,其中,视频特征库包括视频库中各个视频的至少一个视频图像的特征表示数据。根据不同的业务场景的需求,灵活地设置不同的视频特征筛选条件,以提高视频排重的准确性。
可选地,视频特征筛选条件可以是欧式距离阈值。欧氏距离是衡量的是多维空间中两个点之间的绝对距离。示例性的,针对人物类别的视频,由于视频图像中的人脸轮廓都相似,仅人脸上的五官分布、面部表情等不一样,为了避免误判需要更严格的阈值。
在一种实现方式中,视频特征筛选条件包括相似度达到与分类结果对应的目标相似度阈值,则确定目标视频的具体方式可以是:获取视频特征库包括的各个特征表示数据与第一特征表示数据之间的相似度;针对视频特征库包括的任一特征表示数据,若任一特征表示数据与第一特征表示数据之间的相似度达到目标相似度阈值,则确定任一特征表示数据与第一特征表示数据满足视频特征筛选条件;将任一特征表示数据作为第二特征表示数据。
在一种实现方式中,可基于上述第二特征表示数据从视频库中确定至少一个候选视频。确定每个候选视频与查询视频之间的匹配时长后,将对应的匹配时长满足匹配条件的候选视频作为与查询视频匹配的目标视频。
在一种实现方式中,上述匹配条件包括匹配时长达到对应的时长阈值,本申请实施例可基于第二特征表示数据从视频库中确定至少一个候选视频,通过确定每个候选视频与查询视频之间的匹配时长,将对应的匹配时长满足匹配条件的候选视频作为与查询视频匹配的目标视频。
在一种实现方式中,可获取目标候选视频的至少一个视频图像中,对应的特征表示数据满足视频特征筛选条件的视频图像的第一数量,其中目标候选视频为至少一个候选视频中的任意一个;获取查询视频的至少一个视频图像中,对应的第一特征表示数据满足视频特征筛选条件的视频图像的第二数量。将第一数量和第二数量中的较小值作为目标候选视频与查询视频之间的匹配时长。其中,对应的时长阈值是基于匹配控制系数以及第三数量确定的,第三数量为查询视频的至少一个视频图像的数量与目标候选视频的至少一个视频图像的数量之间的较小值。
示例性的,假设查询视频的分类结果对应的视频特征筛选条件为欧式距离阈值,且值为0.5;对于上述的每一个第一特征表示数据,从视频特征库中查找到了与各个第一特征表示数据满足视频特征筛选条件的特征数据,将查找到的特征数据对应的视频作为候选视频。假设查询视频的视频图像共有10帧,则一共有10个第一特征表示数据,一个候选视频共有30个视频图像,即该候选视频有30个特征表示数据;假设查询视频的10个视频图像中,有X1个与该候选视频的30个视频图像中的X2个满足匹配条件,即用X1表示该候选视频中满足视频特征筛选条件的第一数量,用X2将查询视频中满足视频特征筛选条件的视频图像的第二数量,若满足公式:min(X1,X2)>0.5×min(10,30)时,即表明该候选视频满足匹配条件,该候选视频为查询视频的相似视频。
在一种实现方式中,可以针对不同的分类设置不同的视频排重流程。例如对于人脸分类,由于视频间差异通常是细粒度的,可以在确定匹配时长后,添加一个精匹配过程来对候选视频进行二次过滤,如根据视频的分类采用其他更准确的图像特征来设定时长阈值,并对候选视频进行新特征下的匹配时长计算。例如,视频的类别为人体时,可采用视频的人体特征,即检测出该视频特有的人物并计算人物的特征向量,并在候选视频中进行该人物的特征向量检测,若候选视频中包括的人物的特征向量的匹配时长符合设定的时长阈值,则可确定该候选视频为目标视频。
可见,本申请通过调用视频分类模型对查询视频的多个视频图像进行处理,可得到能够更准确表征视频图像的多个第一特征表示数据,以及该查询视频的分类结果,使得可在同一模型下实现特征提取和视频分类,提高了模型的利用率,节省了资源;基于查询视频的分类结果,能够确定与查询视频的特征相匹配的视频特征筛选条件,对不同分类的查询视频,可以采取不同的视频筛选条件,例如对视频内容有更细粒度特征的变化选择更严格的筛选条件,从而提高的筛选的准确率;根据视频特征筛选条件和查询视频的多个第一特征表示数据,可从视频特征库中查找与第一特征表示数据的相似度达到与分类结果对应的目标相似度阈值的第二特征向量;根据第二特征向量所属的候选视频,若候选视频与查询视频的匹配时长满足匹配条件,则可确定该候选视频为与查询视频匹配的目标视频,其中,匹配条件是基于查询视频的分类结果确定的,能够保证目标视频与查询视频的匹配程度,从而提高视频分类和视频排重的准确性和全面性。
请参阅图3,图3为本申请实施例提供的另一种视频数据处理方法的流程示意图,可应用于视频数据处理装置。如图3所示,视频数据处理方法包括但不限于以下步骤:
S301:基于视频库中各个视频的特征表示数据、各个视频的视频标识信息、图像标识信息以及特征标识信息,建立视频特征库。
在本申请中,通过调用视频分类模型,对视频库中各个视频的至少一个视频图像进行处理,可得到各个视频的至少一个视频图像的特征表示数据;按照预设顺序,生成各个视频的每个视频图像的图像标识信息以及每个视频图像的特征表示数据的特征标识信息。建立各个视频的视频标识信息、图像标识信息以及特征标识信息之间的关联关系;基于各个视频的至少一个视频图像的特征表示数据以及关联关系建立视频特征库;其中,关联关系用于确定视频特征库包括的各个特征表示数据对应的视频。
表1视频特征库中的关联关系表示意表格
示例性的,例如表1所示的视频特征库中的关联关系示意表格,假设视频1(视频标识信息为:video_id=1)共有20个视频图像,每个视频图像分别对应的图像标识信息可以表示为image_id=1~20,并按照预设顺序,将每个视频图像对应的特征表示数据(特征标识信息为em_id=1~20)存储起来;对视频2(视频标识信息为:video_id=2)的30个视频图像分别对应的图像标识信息可以表示为image_id=21~50,并按照预设顺序,将视频2的每个视频图像对应的特征表示数据(特征标识信息为em_id=21~50)存储于视频1对应的特征表示数据之后。此外,将image_id=1~20、em_id=1~20以及video_id=1关联,建立关联关系;将image_id=21~50、em_id=21~50与video_id=2关联,建立关联关系。
S302:调用视频分类模型中的特征提取模块,对查询视频的至少一个视频图像进行特征提取处理,得到每个视频图像的第一特征表示数据。
S303:调用视频分类模型中的分类模块对至少一个视频图像的第一特征表示数据进行统计池化处理以及特征交叉处理,得到第三特征表示数据;对第三特征表示数据进行分类处理,得到查询视频的分类结果。
在本申请中,分类模块包括池化层以及特征交叉层,调用池化层对至少一个视频图像的第一特征表示数据进行统计池化处理,得到均值特征表示数据以及方差特征表示数据;调用池化层对均值特征表示数据以及方差特征表示数据进行拼接处理,可得到第四特征表示数据;调用特征交叉层对第四特征表示数据进行特征交叉处理,可得到第三特征表示数据。其中,特征交叉层可以是由全连接层和整流线性单元(Rectified Linear Unit,ReLU)构成的多层感知器(Multilayer Perceptron,MLP),能够对第四特征表示数据引入非线性的特征交叉信息,对第四特征表示数据的embedding表征空间的信息进行二次抽取,从而可以获取更多特征内的可区分类别的辨别性差异,使得生成的第三特征表示数据融合了特征交叉信息,以及为后续分类提供丰富的非线性信息,实现更好的分类效果。
S304:基于分类结果确定视频特征筛选条件。
在本申请中,可根据视频的分类设置对应的视频特征筛选条件,根据不同的业务场景的需求,灵活地设置不同的视频特征筛选条件,以提高视频排重的准确性。可选地,视频特征筛选条件可以是欧式距离阈值。欧氏距离是衡量的是多维空间中两个点之间的绝对距离。
S305:从视频特征库中获取与第一特征表示数据满足视频特征筛选条件的第二特征表示数据。
在本申请中,视频特征筛选条件包括相似度达到与分类结果对应的目标相似度阈值,则可获取视频特征库包括的各个特征表示数据与第一特征表示数据之间的相似度,针对视频特征库包括的任一特征表示数据,若任一特征表示数据与第一特征表示数据之间的相似度达到目标相似度阈值,则确定任一特征表示数据与第一特征表示数据满足视频特征筛选条件,则可将任一特征表示数据作为第二特征表示数据。
S306:基于第二特征表示数据从视频库中确定与查询视频匹配的目标视频。
在本申请中,可基于第二特征表示数据从视频库中确定至少一个候选视频,根据确定的每个候选视频与查询视频之间的匹配时长,将对应的匹配时长满足匹配条件的候选视频作为与查询视频匹配的目标视频。
在一种实现方式中,匹配条件包括匹配时长达到对应的时长阈值,则上述确定每个候选视频与查询视频之间的匹配时长具体可以为:获取目标候选视频的至少一个视频图像中,对应的特征表示数据满足视频特征筛选条件的视频图像的第一数量,其中目标候选视频为至少一个候选视频中的任意一个;获取查询视频的至少一个视频图像中,对应的第一特征表示数据满足视频特征筛选条件的视频图像的第二数量。将第一数量和第二数量中的较小值作为目标候选视频与查询视频之间的匹配时长。其中,对应的时长阈值是基于匹配控制系数以及第三数量确定的,第三数量为查询视频的至少一个视频图像的数量与目标候选视频的至少一个视频图像的数量之间的较小值。
可见,本申请提供的一种视频数据处理方法针对现有基于图像embedding的排重识别框架,引入了一种基于序列embedding特征的视频分类方法,对查询视频进行抽帧处理,得到该查询视频的多个视频图像,调用视频分类模型进行处理,得到该查询视频的多个第一特征表示数据以及查询视频分类结果。其中,视频分类模型利用embedding模型的底层结构进行特征抽取从而可节省提取的机器资源,通过针对embedding信息聚合的分类模块产生视频分类;对不同时长视频的特征进行统计池化处理,产生固定长度的特征交叉向量,根据该特征交叉向量产生视频分类,能够实现不等长图像embedding的统一映射及视频分类学习,从而能够提高视频分类和视频排重的全面性和准确性。
请参阅图4,图4为本申请实施例提供的一种视频分类模型的训练方法的流程示意图。如图4所示,该训练方法包括但不限于以下步骤:
S401:获取第一训练数据集,第一训练数据集包括多个样本视频对中每个样本视频对对应的训练三元组。
其中,任一样本视频对对应的训练三元组包括任一样本视频对以及负样本视频,负样本视频是基于多个样本视频对中除任一样本视频对之外的其他样本视频对包括的样本视频,与任一样本视频对包括的样本视频之间的距离确定的。任一训练三元组中包括的正样本视频和负样本视频分别为正样本视频和负样本视频基于相同的目标抽帧率进行抽帧处理后得到的视频图像。示例性的,假设目标抽帧率为每秒抽3帧,若训练视频的时长为20秒,则对训练视频按每秒3帧的目标抽帧率进行抽帧,得到60帧视频图像;随机生成一个比总帧数(60)小的数值,如50,作为该查询视频的不定长抽帧数量,即第一神经网络每次处理的帧长度(Frame Length,FL),然后从60帧视频图像中均匀地抽取50帧图像作为该训练视频的视频图像。
S402:利用第一训练数据集对第一神经网络进行训练,得到特征提取模块。
表2第一神经网络结构表
如表2所示,第一神经网络可以是基于残差神经网络(Residual Network,ResNet)ResNet-101的网络结构。其中,ResNet-101是一种神经卷积网络,容易优化,并且能够通过增加相当的深度来提高准确率,其内部的残差块(block)使用了跳跃连接,缓解了在深度神经网络中增加深度带来的梯度消失问题。在本身中采用的ResNet-101可包括多个卷积层和一个池化层。
在一种实现方式中,可将上述池化层输出的像素为1×2048的向量作为第一训练数据集中任一样本视频的特征表示数据。
在一种实现方式中,为了降低特征表示数据的维度,可以在如表2所示的结构后添加一个全连接层,对池化层输出的像素为1×2048的向量进行处理,得到像素为1×128的向量,并将该向量作为第一训练数据集中任一样本视频的特征表示数据。
可选地,针对任一样本视频对中的正样本视频,可计算该正样本视频与第一训练数据集中除该样本视频对的其他样本视频对中随机选择一个样本视频,并分别计算每个样本视频的视频图像与正样本视频的视频图像之间的欧式距离,按照欧式距离从小到大进行排序,取前a个样本视频作为该正样本视频的负样本视频,分别与该正样本视频所属的样本视频对构成训练三元组。假设第一训练数据集中共有M个样本对,将每b个样本对分为一个批次(batch),则一共由c个批次,每1个批次进行一次模型前向计算并进行模型参数更新;当c个批次均完成模型参数更新后,则该模型参数完成了一次迭代(epoch);对第一神经网络需要进行K次迭代的训练,或者在连续10次迭代的模型训练中,10个周期的三元损失函数(Triplet Loss)的平均值没有下降,则完成对第一神经网络的模型训练,得到特征提取模块。其中,a、M、b、c、K为任意正整数,且b小于M,c与M、b之间满足公式:c=Mb
其中,模型前向计算是指,将第一神经网络中的模型参数进行初始化,可选地,可采用方差为0.01,均值为0的高斯分布进行初始化;将第一神经网络中的模型参数设置为需要学习的状态;在训练过程中,第一神经网络对输入的每一个视频图像进行前向计算,得到每个视频图像的特征表示数据,并根据每个训练三元组的特征表示数据,基于三元损失函数计算三元损失参数。
可选地,针对每一批次的模型训练,可根据每个批次中的训练三元组的特征表示数据计算三元组损失。对任一训练三元组,将正样本视频的特征表示数据命名为向量a(anchor),将该正样本视频所属样本视频对的另一正样本视频的特征表示数据命名为向量p(positive),以及将该训练三元组中的负样本视频的特征表示数据命名为向量n(negative),则可根据下列公式,求得该训练三元组的三元组损失L(a,p,n):
L(a,p,n)=max(‖xa-xp‖-‖xa-xn‖+α,0)
其中,‖xa-xp‖表示向量a与向量p之间的距离,‖xa-xn‖表示向量a与向量n之间的距离;α表示间隔(margin)参数。例如令α=10,则上述三元组损失表示使向量a与向量n之间的距离比向量a与向量p之间的距离大于10,即拉大正样本视频与负样本视频之间的差距,从而提高特征表示数据对视频图像的表征准确性和鲁棒性。在每一批次的训练完成得到三元组的三元损失后,对三元损失进行梯度后向计算,得到第一神经网络的模型参数的更新值,并根基得到的更新值,对模型参数进行调整。可选地,可采取0.005的学习率,得到一批次的三元组损失,并计算得到损失梯度后,可根据学习率更新第一神经网络的模型参数。
S403:获取第二训练数据集,第二训练数据集包括多个样本视频以及参考分类。
其中,第二训练数据集包括了多个视频样本和每个视频样本的参考分类,其中,参考分类可以是视频样本的类别标签。对每个视频样本基于目标抽帧率进行抽帧处理,得到多个视频图像,并建立每个视频图像与对应的类别标签的关联关系。视频样本的类别标签可以是美食、旅游、游戏、汽车、财经、萌宠、运动、音乐、动漫、科技等类别,也可以是人物、狗、猫、鸟等类别,本申请对此不作限定。其中,不同的视频样本所使用的目标抽帧率是相同的,则不同时长的视频样本进行抽帧处理后可得到不同数量的视频图像,从而使得不同长度的视频样本都能保留较多的中间帧信息。
S404:利用特征提取模块以及第二训练数据集对第二神经网络进行训练,得到分类模块。
在本申请中,将第二神经网络的模型参数进行初始化,示例性的,可采用方差为0.01,均值为0的高斯分布进行初始化。假设第二训练数据集中共有N个视频,将每b个视频分为一个批次(batch),共分成c个批次,将每个批次的视频输入第二神经网络进行前向计算并更新模型参数,当完成c个批次的更新即完成了一次迭代(epoch),对第二神经网络的训练需要完成M次迭代。其中,N、c、b、M为任意正整数,且b小于N,c与N、b之间满足公式:c=Nb
具体地,对于每个批次中b个视频中的任意一个视频,随机生成一个小于预设最大帧数(如30)且大于预设最小帧数(如20)的帧数(FL),基于FL对该视频进行均匀抽帧,得到FL个视频图像,将得到的每个视频图像输入第二神经网络进行模型训练。每个batch进行一次模型前向计算并调整模型参数。对第二神经网络需要进行K(K为任意正整数)次迭代,或者在连续10次迭代中的平均损失参数没有下降,则完成对第二神经网络的训练,得到分类模块。
其中,模型前向计算是指,将第二神经网络中特征交叉层和分类层的模型参数设置为学习状态,在对神经网络的训练过程中,基于分类层得到的样本视频的分类结果,计算分类交叉熵损失参数,并基于分类交叉熵损失参数调整模型参数。分类损失函数是采样多分类的交叉熵损失函数(Cross Entropy Loss),则每个批次的分类损失为N个视频样本的分类损失L的平均值,可按照下列公式计算:
其中,对任一视频样本i,pic表示视频样本i属于c类别的预测概率,yic表示视频样本i的分类标签是否为c,若为c,则yic=1,否则yic=0;N为一个批次中视频样本的数量。求得分类损失后,对分类损失进行梯度后向计算,得到模型参数的更新值,并根据更新值对模型参数进行调整,最终得到分类模块。可选地,可采用0.005的学习率,每隔10次迭代降为原本的0.1倍。
可选地,第二神经网络支持训练样本视频的定长输入和不定长输入。示例性的,定长输入,是指上述FL在训练过程中为固定值,假设每次处理FL=9(每次处理3秒,每秒采样3帧),则第二神经网络的输入为9×128的二位特征矩阵特征,其中9代表帧数,1×128为特征提取模块包括全连接层时输出的长度。不定长输入,是指每个视频可按照同样的抽帧率进行抽帧,得到的帧数是不同的,即上述FL在训练过程中是随着训练视频的抽帧帧数随机改变的,则第二神经网络的输入为FL×128的特征向量。
可选地,第二神经网络包括池化层、特征交叉层和分类层,如表3所示。其中,池化层对视频图像的特征表示数据进行统计池化处理,得到均值特征表示数据以及方差特征表示数据;对均值特征表示数据以及方差特征表示数据进行拼接处理,得到第四特征表示数据。示例性的,若第二神经网络采取的输入方式为不定长输入,则在上述输入的FL×128的二维特征矩阵中,沿着特征维度(128维),对每个特征维度的所有值(如FL=9,则128个特征维度,每个维度有9个数值)计算均值和方差,生成1×128的均值向量,用mean表示,以及1×128的方差向量,用std表示;将均值向量与方差向量进行拼接,得到的向量[mean,std]为1×256的向量,即池化层输出的第四特征表示数据。
表3第二神经网络结构表
统计池化可以降低持续出现图像的特征表征(即同一视频场景的图像维度特征)对全局的影响,保留更多的不相同的表征(前后场景不相同情况的特征),如一段10秒的视频里,前8秒是同一个人在镜前化妆,后2秒是最终化妆效果,此时如果采用平均池化或最大值池化,则会因为前8秒信息过长,导致最后2秒的信息容易被忽略,而采用均值、方差的统计池化方法,除了能保证均值的特征被保留以外,由后2秒产生的大方差特征也能保留下来,从而能够实现视频图像相同表征的去除、不同表征的保留。因此,第二数据网络能够对定长的输入或不定长的输入,均生成相同长度的向量,即第四特征表示数据,该定长向量由向量的维度确定,而与输入的视频的长度无关,从而使得模型能够兼容视频的定长输入和不定长输入。
可选地,第二神经网络中的特征交叉层可对第四特征表示数据进行特征交叉处理,得到第三特征表示数据。其中,特征交叉层可以是由全连接层和整流线性单元构成的多层感知器,能够对第四特征表示数据引入非线性的特征交叉信息,对第四特征表示数据的embedding表征空间的信息进行二次抽取,从而可以获取更多特征内的可区分类别的辨别性差异,使得生成的第三特征表示数据融合了特征交叉信息,以及为后续分类提供丰富的非线性信息,实现更好的分类效果。示例性的,对上述池化层输出1×256的定长统计特征输入特征交叉层,若采用1层MLP,则能够得到1×1024维的中间特征交叉信息,即第三特征表示数据。其中,表3中采用了1个MLP层,可选地,还可以采用多个MLP层的堆叠,MLP层数越多,特征交叉的维度越高,可以捕捉到的信息越多,但训练的难度较大,通常情况下,可使用1至3层MLP。
可选地,第二神经网络的分类层可以是全连接层,用于对特征交叉层输出的第三特征表示数据进行分类,从而得到视频的分类结果。
可见,本申请实施例中的视频分类模型的分类模块是基于统计池化和特征交叉的处理网络,能够实现变长视频的分类信息提取的同时,还能够对变速视频或关键信息分布不均匀(如用于分类的关键片段占原视频的时长长短不一)的视频进行分类处理,提高了视频分类的处理效果。
S405:基于特征提取模块以及分类模块生成视频分类模型。
在本申请中,通过模型训练分别得到了特征提取模块和分类模块,将特征提取模块和分类模块进行组合,使得特征提取模块的输出可作为分类模块的输入,从而得到视频分类模型。
通过本申请实施例提供的视频分类模型训练方法,对不同的视频样本采取相同的目标抽帧率,使得不同时长的视频样本能够得到不同数量的视频图像,视频分类模型支持输入视频样本的不同数量的视频图像,即能够输入变长的视频图像,并基于统计池化和特征交叉提取视频图像的特征,能够实现由数量不定的视频图像序列产生视频embedding,从而保留视频样本更多的中间帧信息,使得视频分类模型生成的视频样本的表征更加准确;同时,视频分类模型利用embedding模型的底层结构进行特征抽取,可节省特征提取的机器资源;对不同时长视频的特征进行统计池化处理,产生固定长度的特征交叉向量,根据该特征交叉向量产生视频分类,能够实现不等长图像embedding的统一映射及视频分类学习,提升了视频分类的处理效果。
请参阅图5,图5为本申请实施例提供的一种视频数据处理装置的结构示意图。视频数据处理装置包括模型处理单元510和分类检索单元520。其中:
模型处理单元510,用于基于预先设定的目标抽帧率对查询视频进行抽帧处理得到查询视频的至少一个视频图像;调用视频分类模型对查询视频的至少一个视频图像进行处理,得到每个视频图像的第一特征表示数据以及查询视频的分类结果。
分类检索单元520,用于基于第一特征表示数据以及查询视频的分类结果确定与查询视频匹配的目标视频。
在一种实现方式中,不同的查询视频使用的预先设定的目标抽帧率相同。
在一种实现方式中,分类检索单元520,还用于基于分类结果确定视频特征筛选条件;基于视频特征筛选条件、第一特征表示数据以及视频特征库确定与查询视频匹配的目标视频,视频特征库包括视频库中各个视频的至少一个视频图像的特征表示数据。
在一种实现方式中,分类检索单元520,还用于从视频特征库中获取与第一特征表示数据满足视频特征筛选条件的第二特征表示数据;基于第二特征表示数据从视频库中确定与查询视频匹配的目标视频。
在一种实现方式中,视频特征筛选条件包括相似度达到与分类结果对应的目标相似度阈值;分类检索单元520,还用于获取视频特征库包括的各个特征表示数据与第一特征表示数据之间的相似度;针对视频特征库包括的任一特征表示数据,若任一特征表示数据与第一特征表示数据之间的相似度达到目标相似度阈值,则确定任一特征表示数据与第一特征表示数据满足视频特征筛选条件;将任一特征表示数据作为第二特征表示数据。
在一种实现方式中,分类检索单元520,还用于基于第二特征表示数据从视频库中确定至少一个候选视频;确定每个候选视频与查询视频之间的匹配时长;将对应的匹配时长满足匹配条件的候选视频作为与查询视频匹配的目标视频。
在一种实现方式中,匹配条件包括匹配时长达到对应的时长阈值;分类检索单元520,还用于获取目标候选视频的至少一个视频图像中,对应的特征表示数据满足视频特征筛选条件的视频图像的第一数量,目标候选视频为至少一个候选视频中的任意一个;获取查询视频的至少一个视频图像中,对应的第一特征表示数据满足视频特征筛选条件的视频图像的第二数量;将第一数量和第二数量中的较小值作为目标候选视频与查询视频之间的匹配时长;其中,对应的时长阈值是基于匹配控制系数以及第三数量确定的,第三数量为查询视频的至少一个视频图像的数量与目标候选视频的至少一个视频图像的数量之间的较小值。
在一种实现方式中,视频分类模型包括特征提取模块以及分类模块;模型处理单元510,还用于调用特征提取模块对查询视频的至少一个视频图像进行特征提取处理,得到每个视频图像的第一特征表示数据;调用分类模块对至少一个视频图像的第一特征表示数据进行统计池化处理以及特征交叉处理,得到第三特征表示数据;调用分类模块对第三特征表示数据进行分类处理,得到查询视频的分类结果。
在一种实现方式中,分类模块包括池化层以及特征交叉层;模型处理单元510,还用于调用池化层对至少一个视频图像的第一特征表示数据进行统计池化处理,得到均值特征表示数据以及方差特征表示数据;调用池化层对均值特征表示数据以及方差特征表示数据进行拼接处理,得到第四特征表示数据;调用特征交叉层对第四特征表示数据进行特征交叉处理,得到第三特征表示数据。
在一种实现方式中,模型处理单元510,还用于调用视频分类模型的特征提取模块对视频库中各个视频的至少一个视频图像进行处理,得到各个视频的至少一个视频图像的特征表示数据;按照预设顺序生成各个视频的每个视频图像的图像标识信息以及每个视频图像的特征表示数据的特征标识信息;建立各个视频的视频标识信息、图像标识信息以及特征标识信息之间的关联关系;基于各个视频的至少一个视频图像的特征表示数据以及关联关系建立视频特征库;其中,关联关系用于确定视频特征库包括的各个特征表示数据对应的视频。
在一种实现方式中,模型处理单元510,还用于获取第一训练数据集,第一训练数据集包括多个样本视频对中每个样本视频对对应的训练三元组;其中,任一样本视频对对应的训练三元组包括任一样本视频对以及负样本视频,负样本视频是基于多个样本视频对中除任一样本视频对之外的其他样本视频对包括的样本视频,与任一样本视频对包括的样本视频之间的距离确定的;利用第一训练数据集对第一神经网络进行训练,得到特征提取模块;获取第二训练数据集,第二训练数据集包括多个样本视频以及参考分类;利用特征提取模块以及第二训练数据集对第二神经网络进行训练,得到分类模块;基于特征提取模块以及分类模块生成视频分类模型。
根据本申请的一个实施例,图5所示的视频数据处理装置中的各个单元可以分别或全部合并为一个或若干个单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个子单元,可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,视频数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
可以理解的是,本申请实施例所描述的视频数据处理装置的各功能单元的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
请参阅图6,图6为本申请实施例提供的一种计算机设备的结构示意图。如图6所示,计算机设备可以包括:处理器610,网络接口620和存储器630。其中,其中,处理器610、网络接口620及存储器630可通过总线或其他方式连接,本申请实施例以通过总线连接为例。
其中,处理器610(或称CPU(Central Processing Unit,中央处理器))是计算机设备的计算核心以及控制核心,其可以解析计算机设备内的各类指令以及处理计算机设备的各类数据,例如:CPU可以用于解析向计算机设备所发送的开关机指令,并控制计算机设备进行开关机操作;再如:CPU可以在计算机设备内部结构之间传输各类交互数据,等等。网络接口620可选的可以包括标准的有线接口、无线接口(如Wi-Fi、移动通信接口等),受处理器610的控制用于收发数据。存储器630(Memory)是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器630既可以包括计算机设备的内置存储器,当然也可以包括计算机设备所支持的扩展存储器。存储器630提供存储空间,该存储空间存储了计算机设备的操作系统,可包括但不限于:Android系统、iOS系统、Windows Phone系统等等,本申请对此并不作限定。
在一种实现方式中,处理器610通过运行存储器630中的可执行程序代码,执行如下操作:
基于预先设定的目标抽帧率对查询视频进行抽帧处理得到查询视频的至少一个视频图像;
调用视频分类模型对查询视频的至少一个视频图像进行处理,得到每个视频图像的第一特征表示数据以及查询视频的分类结果;
基于第一特征表示数据以及查询视频的分类结果确定与查询视频匹配的目标视频。
在一种实现方式中,不同的查询视频使用的预先设定的目标抽帧率相同。
在一种实现方式中,处理器610通过运行存储器630中的可执行程序代码,还可以执行如下操作:基于分类结果确定视频特征筛选条件;基于视频特征筛选条件、第一特征表示数据以及视频特征库确定与查询视频匹配的目标视频,视频特征库包括视频库中各个视频的至少一个视频图像的特征表示数据。
在一种实现方式中,处理器610通过运行存储器630中的可执行程序代码,还可以执行如下操作:从视频特征库中获取与第一特征表示数据满足视频特征筛选条件的第二特征表示数据;基于第二特征表示数据从视频库中确定与查询视频匹配的目标视频。
在一种实现方式中,视频特征筛选条件包括相似度达到与分类结果对应的目标相似度阈值;处理器610通过运行存储器630中的可执行程序代码,还可以执行如下操作:获取视频特征库包括的各个特征表示数据与第一特征表示数据之间的相似度;针对视频特征库包括的任一特征表示数据,若任一特征表示数据与第一特征表示数据之间的相似度达到目标相似度阈值,则确定任一特征表示数据与第一特征表示数据满足视频特征筛选条件;将任一特征表示数据作为第二特征表示数据。
在一种实现方式中,处理器610通过运行存储器630中的可执行程序代码,还可以执行如下操作:基于第二特征表示数据从视频库中确定至少一个候选视频;确定每个候选视频与查询视频之间的匹配时长;将对应的匹配时长满足匹配条件的候选视频作为与查询视频匹配的目标视频。
在一种实现方式中,匹配条件包括匹配时长达到对应的时长阈值;处理器610通过运行存储器630中的可执行程序代码,还可以执行如下操作:获取目标候选视频的至少一个视频图像中,对应的特征表示数据满足视频特征筛选条件的视频图像的第一数量,目标候选视频为至少一个候选视频中的任意一个;获取查询视频的至少一个视频图像中,对应的第一特征表示数据满足视频特征筛选条件的视频图像的第二数量;将第一数量和第二数量中的较小值作为目标候选视频与查询视频之间的匹配时长;其中,对应的时长阈值是基于匹配控制系数以及第三数量确定的,第三数量为查询视频的至少一个视频图像的数量与目标候选视频的至少一个视频图像的数量之间的较小值。
在一种实现方式中,视频分类模型包括特征提取模块以及分类模块;处理器610通过运行存储器630中的可执行程序代码,还可以执行如下操作:调用特征提取模块对查询视频的至少一个视频图像进行特征提取处理,得到每个视频图像的第一特征表示数据;调用分类模块对至少一个视频图像的第一特征表示数据进行统计池化处理以及特征交叉处理,得到第三特征表示数据;调用分类模块对第三特征表示数据进行分类处理,得到查询视频的分类结果。
在一种实现方式中,分类模块包括池化层以及特征交叉层;处理器610通过运行存储器630中的可执行程序代码,还可以执行如下操作:调用池化层对至少一个视频图像的第一特征表示数据进行统计池化处理,得到均值特征表示数据以及方差特征表示数据;调用池化层对均值特征表示数据以及方差特征表示数据进行拼接处理,得到第四特征表示数据;调用特征交叉层对第四特征表示数据进行特征交叉处理,得到第三特征表示数据。
在一种实现方式中,处理器610通过运行存储器630中的可执行程序代码,还可以执行如下操作:调用视频分类模型的特征提取模块对视频库中各个视频的至少一个视频图像进行处理,得到各个视频的至少一个视频图像的特征表示数据;按照预设顺序生成各个视频的每个视频图像的图像标识信息以及每个视频图像的特征表示数据的特征标识信息;建立各个视频的视频标识信息、图像标识信息以及特征标识信息之间的关联关系;基于各个视频的至少一个视频图像的特征表示数据以及关联关系建立视频特征库;其中,关联关系用于确定视频特征库包括的各个特征表示数据对应的视频。
在一种实现方式中,处理器610通过运行存储器630中的可执行程序代码,还可以执行如下操作:获取第一训练数据集,第一训练数据集包括多个样本视频对中每个样本视频对对应的训练三元组;其中,任一样本视频对对应的训练三元组包括任一样本视频对以及负样本视频,负样本视频是基于多个样本视频对中除任一样本视频对之外的其他样本视频对包括的样本视频,与任一样本视频对包括的样本视频之间的距离确定的;利用第一训练数据集对第一神经网络进行训练,得到特征提取模块;获取第二训练数据集,第二训练数据集包括多个样本视频以及参考分类;利用特征提取模块以及第二训练数据集对第二神经网络进行训练,得到分类模块;基于特征提取模块以及分类模块生成视频分类模型。
可见,本申请通过调用视频分类模型对查询视频的多个视频图像进行处理,可得到能够更准确表征视频图像的多个第一特征表示数据,以及该查询视频的分类结果,使得可在同一模型下实现特征提取和视频分类,提高了模型的利用率,节省了资源;基于查询视频的分类结果,能够确定与查询视频的特征相匹配的视频特征筛选条件,对不同分类的查询视频,可以采取不同的视频筛选条件,例如对视频内容有更细粒度特征的变化选择更严格的筛选条件,从而提高的筛选的准确率;根据视频特征筛选条件和查询视频的多个第一特征表示数据,可从视频特征库中查找与第一特征表示数据的相似度达到与分类结果对应的目标相似度阈值的第二特征向量;根据第二特征向量所属的候选视频,若候选视频与查询视频的匹配时长满足匹配条件,则可确定该候选视频为与查询视频匹配的目标视频,其中,匹配条件是基于查询视频的分类结果确定的,能够保证目标视频与查询视频的匹配程度,从而提高视频分类和视频排重的准确性和全面性。
本申请提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前文图2a、图3和图4对应实施例中对上述视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程视频数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程视频数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程视频数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程视频数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (15)

1.一种视频数据处理方法,其特征在于,所述方法包括:
基于预先设定的目标抽帧率对查询视频进行抽帧处理得到查询视频的至少一个视频图像;
调用视频分类模型对所述查询视频的至少一个视频图像进行处理,得到每个视频图像的第一特征表示数据以及所述查询视频的分类结果;
基于所述第一特征表示数据以及所述查询视频的分类结果确定与所述查询视频匹配的目标视频。
2.根据权利要求1所述的方法,其特征在于,不同的查询视频使用的预先设定的目标抽帧率相同。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
基于所述分类结果确定视频特征筛选条件;
基于所述视频特征筛选条件、所述第一特征表示数据以及视频特征库确定与所述查询视频匹配的目标视频,所述视频特征库包括视频库中各个视频的至少一个视频图像的特征表示数据。
4.根据权利要求3所述的方法,其特征在于,所述基于所述视频特征筛选条件、所述第一特征表示数据以及视频特征库确定与所述查询视频匹配的目标视频,包括:
从视频特征库中获取与所述第一特征表示数据满足所述视频特征筛选条件的第二特征表示数据;
基于所述第二特征表示数据从所述视频库中确定与所述查询视频匹配的目标视频。
5.根据权利要求4所述的方法,其特征在于,所述视频特征筛选条件包括相似度达到与所述分类结果对应的目标相似度阈值;所述从视频特征库中获取与所述第一特征表示数据满足所述视频特征筛选条件的第二特征表示数据,包括:
获取视频特征库包括的各个特征表示数据与所述第一特征表示数据之间的相似度;
针对所述视频特征库包括的任一特征表示数据,若所述任一特征表示数据与所述第一特征表示数据之间的相似度达到所述目标相似度阈值,则确定所述任一特征表示数据与所述第一特征表示数据满足所述视频特征筛选条件;
将所述任一特征表示数据作为第二特征表示数据。
6.根据权利要求4或5所述的方法,其特征在于,所述基于所述第二特征表示数据确定与所述查询视频匹配的目标视频,包括:
基于所述第二特征表示数据从所述视频库中确定至少一个候选视频;
确定每个候选视频与所述查询视频之间的匹配时长;
将对应的匹配时长满足匹配条件的候选视频作为与所述查询视频匹配的目标视频。
7.根据权利要求6所述的方法,其特征在于,所述匹配条件包括匹配时长达到对应的时长阈值;所述确定每个候选视频与所述查询视频之间的匹配时长,包括:
获取目标候选视频的至少一个视频图像中,对应的特征表示数据满足所述视频特征筛选条件的视频图像的第一数量,所述目标候选视频为所述至少一个候选视频中的任意一个;
获取所述查询视频的至少一个视频图像中,对应的第一特征表示数据满足所述视频特征筛选条件的视频图像的第二数量;
将所述第一数量和所述第二数量中的较小值作为所述目标候选视频与所述查询视频之间的匹配时长;
其中,所述对应的时长阈值是基于匹配控制系数以及第三数量确定的,所述第三数量为所述查询视频的至少一个视频图像的数量与所述目标候选视频的至少一个视频图像的数量之间的较小值。
8.根据权利要求1或2所述的方法,其特征在于,所述视频分类模型包括特征提取模块以及分类模块,所述调用视频分类模型对查询视频的至少一个视频图像进行处理,得到每个视频图像的第一特征表示数据以及所述查询视频的分类结果,包括:
调用所述特征提取模块对查询视频的至少一个视频图像进行特征提取处理,得到每个视频图像的第一特征表示数据;
调用所述分类模块对所述至少一个视频图像的第一特征表示数据进行统计池化处理以及特征交叉处理,得到第三特征表示数据;
调用所述分类模块对所述第三特征表示数据进行分类处理,得到所述查询视频的分类结果。
9.根据权利要求8所述的方法,其特征在于,所述分类模块包括池化层以及特征交叉层,所述调用所述分类模块对所述每个视频图像的第一特征表示数据进行统计池化处理以及特征交叉处理,得到第三特征表示数据,包括:
调用所述池化层对所述至少一个视频图像的第一特征表示数据进行统计池化处理,得到均值特征表示数据以及方差特征表示数据;
调用所述池化层对所述均值特征表示数据以及所述方差特征表示数据进行拼接处理,得到第四特征表示数据;
调用所述特征交叉层对所述第四特征表示数据进行特征交叉处理,得到第三特征表示数据。
10.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
调用视频分类模型的特征提取模块对视频库中各个视频的至少一个视频图像进行处理,得到所述各个视频的至少一个视频图像的特征表示数据;
按照预设顺序生成所述各个视频的每个视频图像的图像标识信息以及所述每个视频图像的特征表示数据的特征标识信息;
建立所述各个视频的视频标识信息、图像标识信息以及特征标识信息之间的关联关系;
基于所述各个视频的至少一个视频图像的特征表示数据以及所述关联关系建立视频特征库;其中,所述关联关系用于确定所述视频特征库包括的各个特征表示数据对应的视频。
11.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
获取第一训练数据集,所述第一训练数据集包括多个样本视频对中每个样本视频对对应的训练三元组;其中,任一样本视频对对应的训练三元组包括所述任一样本视频对以及负样本视频,所述负样本视频是基于所述多个样本视频对中除所述任一样本视频对之外的其他样本视频对包括的样本视频,与所述任一样本视频对包括的样本视频之间的距离确定的;
利用所述第一训练数据集对第一神经网络进行训练,得到特征提取模块;
获取第二训练数据集,所述第二训练数据集包括多个样本视频以及参考分类;
利用所述特征提取模块以及所述第二训练数据集对第二神经网络进行训练,得到分类模块;
基于所述特征提取模块以及所述分类模块生成视频分类模型。
12.一种视频数据处理装置,其特征在于,包括:
模型处理单元,用于基于预先设定的目标抽帧率对查询视频进行抽帧处理得到查询视频的至少一个视频图像;调用视频分类模型对所述查询视频的至少一个视频图像进行处理,得到每个视频图像的第一特征表示数据以及所述查询视频的分类结果;
分类检索单元,用于基于所述第一特征表示数据以及所述查询视频的分类结果确定与所述查询视频匹配的目标视频。
13.一种计算机设备,其特征在于,
处理器,适于实现一条或多条计算机程序;以及,
计算机存储介质,所述计算机存储介质存储由一条或多条计算机程序,所述一条或多条计算机程序由所述处理器加载并实现如权利要求1-11任一项所述的视频数据处理方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序,所述计算机程序被处理器执行时用于实现如权利要求1-11任一项所述的视频数据处理方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机存储介质中,所述计算机程序被处理器执行时用于实现如权利要求1-11任一项所述的视频数据处理方法。
CN202210824612.7A 2022-07-14 2022-07-14 视频数据处理方法、装置、计算机设备和存储介质 Pending CN117475340A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210824612.7A CN117475340A (zh) 2022-07-14 2022-07-14 视频数据处理方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210824612.7A CN117475340A (zh) 2022-07-14 2022-07-14 视频数据处理方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN117475340A true CN117475340A (zh) 2024-01-30

Family

ID=89631634

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210824612.7A Pending CN117475340A (zh) 2022-07-14 2022-07-14 视频数据处理方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN117475340A (zh)

Similar Documents

Publication Publication Date Title
CN108170755B (zh) 基于三元组深度网络的跨模态哈希检索方法
CN110188829B (zh) 神经网络的训练方法、目标识别的方法及相关产品
CN112396106B (zh) 内容识别方法、内容识别模型训练方法及存储介质
CN112418292B (zh) 一种图像质量评价的方法、装置、计算机设备及存储介质
CN112215171B (zh) 目标检测方法、装置、设备及计算机可读存储介质
CN112395979B (zh) 基于图像的健康状态识别方法、装置、设备及存储介质
CN112990390B (zh) 一种图像识别模型的训练方法、图像识别的方法及装置
CN113434716B (zh) 一种跨模态信息检索方法和装置
CN114282059A (zh) 视频检索的方法、装置、设备及存储介质
CN116978011B (zh) 一种用于智能目标识别的图像语义通信方法及系统
CN113515669A (zh) 基于人工智能的数据处理方法和相关设备
CN113641797A (zh) 数据处理方法、装置、设备、存储介质及计算机程序产品
CN114219971A (zh) 一种数据处理方法、设备以及计算机可读存储介质
CN115100717A (zh) 特征提取模型的训练方法、卡通对象的识别方法及装置
CN113128526B (zh) 图像识别方法、装置、电子设备和计算机可读存储介质
CN111783734B (zh) 原版视频识别方法及装置
CN112667864B (zh) 图对齐方法、装置、电子设备及存储介质
CN115168609A (zh) 一种文本匹配方法、装置、计算机设备和存储介质
CN113408282B (zh) 主题模型训练和主题预测方法、装置、设备及存储介质
CN115546554A (zh) 敏感图像的识别方法、装置、设备和计算机可读存储介质
CN117009577A (zh) 一种视频数据处理方法、装置、设备及可读存储介质
CN113590854A (zh) 一种数据处理方法、设备以及计算机可读存储介质
CN117475340A (zh) 视频数据处理方法、装置、计算机设备和存储介质
CN112966150A (zh) 一种视频内容抽取的方法、装置、计算机设备及存储介质
CN113240071A (zh) 图神经网络处理方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination