CN114898265A - 帧分类模型的训练方法、应用性能的测试方法及装置 - Google Patents

帧分类模型的训练方法、应用性能的测试方法及装置 Download PDF

Info

Publication number
CN114898265A
CN114898265A CN202210517696.XA CN202210517696A CN114898265A CN 114898265 A CN114898265 A CN 114898265A CN 202210517696 A CN202210517696 A CN 202210517696A CN 114898265 A CN114898265 A CN 114898265A
Authority
CN
China
Prior art keywords
frame
category
video
sequence
sample
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
CN202210517696.XA
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.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology 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 Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN202210517696.XA priority Critical patent/CN114898265A/zh
Publication of CN114898265A publication Critical patent/CN114898265A/zh
Pending legal-status Critical Current

Links

Images

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/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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
    • 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

Landscapes

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

Abstract

本申请提供了一种帧分类模型的训练方法、应用性能的测试方法、装置、电子设备、计算机可读存储介质及计算机程序产品,包括:获取样本视频;建立样本视频中的样本帧和预设的类别之间的对应关系;根据对应关系对初始模型进行训练,得到帧分类模型,帧分类模型用于识别视频中视频帧的类别。类别包括:关键片段之前的视频帧的第一类别;关键片段中的视频帧的的第二类别;关键片段之后的视频帧的第三类别,本申请将视频帧的分类和开始帧、结束帧的识别过程完全自动化,减少了人工识别的主观判断带来的干扰,因此,本申请自动化的识别过程相较于人工识别具有较高的识别效率,并且通过深度学习保证了分类的精度,在高分类精度下也提升了识别准确度。

Description

帧分类模型的训练方法、应用性能的测试方法及装置
技术领域
本申请属于计算机技术领域,特别是涉及一种帧分类模型的训练方法、应用性能的测试方法、装置、电子设备、计算机可读存储介质及计算机程序产品。
背景技术
对于应用客户端而言,启动、启播等关键页面的加载耗时是非常重要的性能指标,如何高效并且准确的计算启动、启播等关键页面的加载耗时,是一个客户端性能测试中的重要课题。
相关技术中,一种方式下可以对客户端执行过程进行录屏,并对录屏视频进行分帧,之后通过人工筛选确定启动、启播等关键页面的加载片段的起始帧和结束帧,从而得出耗时。
但是,目前方案中,依赖人工主观判断,准确性和效率较低。
发明内容
有鉴于此,本申请提供一种帧分类模型的训练方法、应用性能的测试方法、装置、电子设备、计算机可读存储介质及计算机程序产品,在一定程度上解决了目前方案中依赖人工主观判断,准确性和效率较低的问题。
依据本申请的第一方面,提供了一种帧分类模型的训练方法,其特征在于,所述方法包括:
获取样本视频;
建立所述样本视频中的样本帧和预设的类别之间的对应关系;
根据所述对应关系对初始模型进行训练,得到帧分类模型,所述帧分类模型用于识别视频中视频帧的类别;
其中,所述样本视频中具有关键片段,所述类别包括:用于表征处于所述关键片段的开始帧之前的样本帧的第一类别;用于表征从所述开始帧到所述关键片段的结束帧的前一帧之间的样本帧的第二类别;用于表征所述结束帧以及所述结束帧之后样本帧的第三类别。
依据本申请的第二方面,提供了一种应用性能的测试方法,其特征在于,所述方法包括:
响应于测试指令,对应用的运行过程进行录屏,得到录屏视频;
按照播放时序对所述录屏视频进行分帧处理,得到视频帧序列;
将所述视频帧序列中的视频帧输入帧分类模型,得到所述视频帧的类别;所述帧分类模型是根据所述的帧分类模型的训练方法所训练得到的;
根据所述视频帧序列中视频帧的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧;
根据所述开始帧和所述结束帧在所述视频帧序列中对应的时刻,确定关键片段的时长,并将所述时长作为所述应用的性能测试结果。
依据本申请的第三方面,提供了一种帧分类模型的训练装置,所述装置包括:
样本获取模块,用于获取样本视频;
建立模块,用于建立所述样本视频中的样本帧和预设的类别之间的对应关系;
训练模块,用于根据所述对应关系对初始模型进行训练,得到帧分类模型,所述帧分类模型用于识别样本视频中视频帧的类别;
其中,所述样本视频中具有关键片段:所述类别包括:用于表征处于所述关键片段的开始帧之前的样本帧的第一类别;用于表征从所述开始帧到所述关键片段的结束帧的前一帧之间的样本帧的第二类别;用于表征所述结束帧以及所述结束帧之后样本帧的第三类别。
依据本申请的第四方面,提供了一种应用性能的测试装置,所述装置包括:
录屏模块,用于响应于测试指令,对应用的运行过程进行录屏,得到录屏视频;
分帧模块,用于按照播放时序对所述录屏视频进行分帧处理,得到视频帧序列;
分类模块,用于将所述视频帧序列中的视频帧输入帧分类模型,得到所述视频帧的类别;所述帧分类模型是根据所述的帧分类模型的训练装置所训练得到的;
识别模块,用于根据所述视频帧序列中视频帧的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧;
时长检测模块,用于根据所述开始帧和所述结束帧在所述视频帧序列中对应的时刻,确定关键片段的时长,并将所述时长作为所述应用的性能测试结果。
第五方面,本申请实施例提供了一种电子设备,包括:
至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的方法。
第六方面,本申请实施例提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行上述的方法。
第七方面,本申请实施例提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述的方法。
针对在先技术,本申请具备如下优点:
本申请提供的一种应用性能的测试方法,包括:获取样本视频;建立样本视频中的样本帧和预设的类别之间的对应关系;根据对应关系对初始模型进行训练,得到帧分类模型,帧分类模型用于识别视频中视频帧的类别;其中,样本视频中具有关键片段,类别包括:用于表征处于关键片段的开始帧之前的样本帧的第一类别;用于表征从开始帧到关键片段的结束帧的前一帧之间的样本帧的第二类别;用于表征结束帧以及结束帧之后样本帧的第三类别。本申请可以基于训练得到的用于视频帧分类的帧分类模型,将视频帧的分类和开始帧、结束帧的识别过程完全自动化,减少了人工识别的主观判断带来的干扰,因此,本申请自动化的识别过程相较于人工识别具有较高的识别效率,并且视频帧的分类基于深度学习实现,通过深度学习保证了分类的精度,在高分类精度下也提升了识别准确度。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本申请实施例提供的一种帧分类模型的训练方法的步骤流程图;
图2是本申请实施例提供的一种帧分类模型的训练方法的子步骤流程图;
图3是本申请实施例提供的另一种帧分类模型的训练方法的子步骤流程图;
图4是本申请实施例提供的一种应用性能的测试方法的步骤流程图;
图5是本申请实施例提供的一种应用性能的测试方法的具体步骤流程图;
图6是本申请实施例提供的一种帧分类模型的输入输出架构图;
图7是本申请实施例提供的另一种帧分类模型的训练方法的子步骤流程图;
图8是本申请实施例提供的另一种应用性能的测试方法的具体步骤流程图;
图9是本申请实施例提供的另一种帧分类模型的输入输出架构图;
图10是本申请实施例提供的一种应用性能的测试方法的整体架构图;
图11是本申请实施例提供的一种帧分类模型的训练装置的框图;
图12是本申请实施例提供的一种应用性能的测试装置的框图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施例。虽然附图中显示了本申请的示例性实施例,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
图1是本申请实施例提供的一种帧分类模型的训练方法的步骤流程图,如图1所示,该方法可以包括:
步骤101、获取样本视频。
在本申请实施例中,对应用客户端的性能测试,关键是要确定应用客户端在运行过程中的关键页面的加载耗时,整个关键页面的加载过程即为关键片段,如,关键片段可以为点击应用客户端图标进行启动,到启动完成展示了应用主页面的过程、还可以为点击应用客户端中的视频,到播放该视频的第一帧画面的过程等。加载耗时的高低即可作为应用客户端的性能指标,加载耗时越低,应用客户端的性能越好,用户体验也就越好。
本申请实施例可以采用录屏的方式测试应用客户端的性能,具体的,可以采用帧分类模型对录屏视频的视频帧类别进行识别,从而基于视频帧的类别来确定关键片段的开始帧和结束帧。针对帧分类模型的训练,首先需要获取样本视频作为训练数据,样本视频具体可以是一些标注有关键片段的开始帧和结束帧的的录制视频,关键片段为反映应用的关键页面的加载过程的片段。
在一种实现方式中,由于应用的历史版本都会通过录屏进行应用的性能测试,测试完毕后历史录屏视频中即标注了开始帧和结束帧,因此可以将历史录屏视频作为训练数据。另一种实现方式中,样本视频可以从数据库中获取,或从互联网下载。本申请实施例对样本视频的获取方式不作限定。
步骤102、建立所述样本视频中的样本帧和预设的类别之间的对应关系。
其中,所述样本视频中具有关键片段,所述类别包括:用于表征处于所述关键片段的开始帧之前的样本帧的第一类别;用于表征从所述开始帧到所述关键片段的结束帧的前一帧之间的样本帧的第二类别;用于表征所述结束帧以及所述结束帧之后样本帧的第三类别。
在本申请实施例中,通过对用于性能测试的录屏视频进行特性分析,可以得到特性为:由于录屏视频中嵌有关键片段,因此基于录屏视频的播放时序,可以将录屏视频中的视频帧按照开始类别(第一类别,对应关键片段之前的视频帧)、加载类别(第二类别,对应关键片段中的视频帧)、结束类别(第三类别,对应关键片段之后视频帧)进行分类,使得后续可以基于录屏视频的播放时序,通过分析视频帧的类别的方式,来确定视频帧序列中用于性能测试的关键片段的开始帧和结束帧。
在该步骤中,基于上述划分的三个类别,可以按照样本视频中对开始帧和结束帧的标注,建立样本视频中的样本帧和所述类别之间的对应关系,例如,假设一个样本视频包括5个连续的样本帧{样本帧1、样本帧2、样本帧3、样本帧4、样本帧5},样本帧2为标注的开始帧,样本帧4为标注的结束帧,则按照上述三个类别的划分规则,可以在本地第一类别对应的目录中添加样本帧1;在第二类别对应的目录中添加样本帧2、样本帧3;在第三类别对应的目录中添加样本帧4、样本帧5,从而建立了的样本帧和类别之间的对应关系。
步骤103、根据所述对应关系对初始模型进行训练,得到帧分类模型,所述帧分类模型用于识别视频中视频帧的类别。
在本申请实施例中,可以将对应关系中的样本帧输入初始模型,并将对应关系中该样本帧对应的类别作为标注值,以跟初始模型的输出值结合进行损失值的计算损,后续根据损失值和预设损失函数,调整初始模型的参数,经过多轮迭代训练后,使得初始模型的输出精度达到预期要求,获得帧分类模型。
在获得训练好的帧分类模型后,后续可以利用帧分类模型对录屏视频的视频帧的类别进行识别,最后可以基于录屏视频的视频帧的播放时序,对视频帧的类别的变化情况进行分析,从而确定录屏视频中用于性能测试的关键片段的开始帧和结束帧。使得对录屏视频的开始帧、结束帧的识别都可以完全自动化实现,降低了人工参与,减少了人工识别的主观判断带来的干扰,并且视频帧的分类基于深度学习实现,通过深度学习保证了分类的精度,在高分类精度下也带来了开始帧、结束帧的识别精度的提升,从而保证关键片段的开始帧和结束帧的识别准确性。
另外,训练帧分类模型时,可以将训练数据划分为训练集和测试集,训练集用于训练模型,测试集可以对训练好的帧分类模型进行模型准确率的测试,模型准确率用来作为预测结果可参考性的依据。若模型准确率低于一定阈值(例如0.95),则需要提交模型至检查服务器进行复核,并将模型的输出结果提交给检查服务器,检查服务器可以极快地将输出结果和模型准确率显示在前端页面上,便于开发人员在前端页面进行查阅和调整,这样可以省去开发人员查看所有帧的时间,也能更快的提示复核人员找到关键帧。
可选的,在一种实现方式中,参照图2,步骤103具体可以包括:
子步骤1031、按照播放时序对所述样本视频进行分帧处理,得到第一样本帧序列。
在该步骤中,第一样本帧序列可以对样本视频进行分帧处理后得到,也可以是已经提前分帧好的序列帧,并与第一样本视频进行了绑定。每个第一样本帧序列都对应一个唯一的标识,按照样本视频的播放时序,样本帧的帧序号为1到总帧数的整数序列。
子步骤1032、建立所述第一样本帧序列中第一样本帧和所述类别之间的第一对应关系。
在本申请实施例中,类样本帧的类别可以包括:由处于开始帧之前的视频帧构成的第一类别、由所述开始帧到结束帧的前一帧之间的视频帧构成的第二类别、由所述结束帧之后视频帧构成的第三类别,基于这种划分关系,由于第一样本帧序列中的第一样本帧已标注有对应的类别,则可以建立每个第一样本帧序列中第一样本帧和类别之间的第一对应关系。
进一步的,针对离散型输入输出的帧分类模型,为了降低训练难度和数据处理量,每个第一样本帧序列中可以采样预设数量个视频帧,并对这预设数量个视频帧按照上述三个类别进行分类。
例如,一种采样方式为:每个第一样本帧序列中可以采样18个视频帧,这18个视频帧可以划分到三个类别中,则第一类别包括:开始帧之前的连续5帧。第二类别包括:开始帧、开始帧之后连续两帧、结束帧的前一帧、关键片段的中间帧、前半个关键片段的中间帧、后半个关键片段的中间帧。第三类别包括:结束帧和结束帧之后连续5帧,这种采样方式可以提高视频帧的分布均匀性,从而提升训练效果,本申请对具体的采样方式并不作限定。
子步骤1033、根据所述第一对应关系,通过将所述第一样本帧依次输入所述初始模型进行训练,得到所述帧分类模型。
在本申请实施例的一种实现方式中,可以按照离散型输入输出方式,进行帧分类模型的训练,训练好的帧分类模型也可以实现离散型的输入输出。
具体的,离散型的输入输出是指将每个视频帧单独输入帧分类模型,得到帧分类模型输出的该视频帧的类别,具体的训练方式可以包括:将单独的样本帧输入初始模型,并将该样本帧对应的类别作为标注值,以跟初始模型的输出值结合进行损失值的计算损,后续根据损失值和预设损失函数,调整初始模型的参数,经过多轮迭代训练后获得帧分类模型。
可选的,在另一种实现方式中,参照图3,步骤103具体可以包括:
子步骤1034、按照播放时序对所述样本视频进行分帧处理,得到第二样本帧序列。
在该步骤中,第二样本帧序列可以对样本视频进行分帧处理后得到,也可以是已经提前分帧好的序列帧,并与第二样本视频进行了绑定。每个第二样本帧序列都对应一个唯一的标识,按照样本视频的播放时序,样本帧的帧序号为1到总帧数的整数序列。
子步骤1035、建立样本帧组与所述类别之间的第二对应关系,所述样本帧组由所述第二样本帧序列中的预设数量个连续的第二样本帧构成。
在本申请实施例中,基于上述3个类别的划分关系,由于第二样本帧序列中的第二样本帧已标注有对应的类别,则可以建立每个第二样本帧序列中第二样本帧和类别之间的第二对应关系。
子步骤1036、根据所述第二对应关系,通过将所述样本帧组输入初始模型进行训练,得到所述帧分类模型,所述帧分类模型用于识别所述视频帧组的类别。
在本申请实施例的另一种实现方式中,可以按照连续时序型输入输出方式,进行帧分类模型的训练,训练好的帧分类模型也可以实现连续时序型的输入输出。
具体的,连续时序型的输入输出是指:每次将多个连续视频帧构成的视频帧组整体输入帧分类模型,得到帧分类模型输出的该视频帧组的类别,连续时序型输入输出方式可以通过帧分类模型中的长短期记忆人工神经网络(LSTM,Long Short-Term Memory),捕捉视频帧组中多个连续视频帧之间的时序关联和特征关联,从而得到更精准的输出结果,相较于离散型输入输出方式,连续时序型输入输出方式可以提取多个连续视频帧的时序特征,从而基于时序特征对一段序列的视频帧组进行分类预测,得到视频帧组最有可能属于的分类,进一步提升了分类的准确率。
长短期记忆人工神经网络是一种时间循环神经网络,是为了解决一般的循环神经网络存在的长期依赖问题而专门设计出来的,该网络可以通过学习连续视频帧之间的时序关联关系,使得输出的分类结果更加准确。
具体的训练方式可以包括:将视频帧组输入初始模型,并将该视频帧组对应的类别作为标注值,以跟初始模型的输出值结合进行损失值的计算损,后续根据损失值和预设损失函数,调整初始模型的参数,经过多轮迭代训练后获得帧分类模型。
图4是本申请实施例提供的一种应用性能的测试方法的步骤流程图,如图4所示,该方法可以包括:
步骤201、响应于测试指令,对应用的运行过程进行录屏,得到录屏视频。
本申请实施例可以采用录屏的方式,测试应用客户端的性能,具体的,本申请实施例可以通过编写自动化脚本自动运行应用客户端,且对应用客户端的运行过程进行录屏,得到录屏视频,并在确定了录屏视频中用于反映关键页面的加载过程的关键片段的开始帧和结束帧,即可由开始帧和结束帧确定关键片段的时长,并将该时长作为应用的性能测试结果。另外,本申请实施例的应用性能的测试方法可以应用于各个执行端,如,移动端、电视端、网页端等。
需要说明的是,自动化脚本可以为基于python语言(一种计算机编程语言)和Appium(一个开源,跨平台的自动化测试工具)/Selenium(一个用于Web应用程序测试的工具)框架开发的自动化脚本。另外,录屏得到的录屏视频可以上传至服务器或云端进行存储。
步骤202、按照播放时序对所述录屏视频进行分帧处理,得到视频帧序列。
在本申请实施例中,可以基于录屏视频的播放时序对录屏视频进行分帧处理,使得切分出的每一视频帧都与该视频帧在录屏视频中的播放时刻相对应,从而得到视频帧序列,视频帧序列反映了录屏视频的视频帧的时序。
具体的,可以采用分帧处理工具对录屏视频进行分帧处理,得到视频帧序列,一种实现方式中,分帧处理工具可以为FFmpeg多媒体处理工具(FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序)。在具体的分帧处理时,可以按照60fps(frames per second,每秒传输帧数)对录屏视频进行分帧处理。
步骤203、将所述视频帧序列中的视频帧输入帧分类模型,得到所述视频帧的类别。
其中,所述帧分类模型是根据上述帧分类模型的训练方法所训练得到的。
在本申请实施例中,为了达到处理逻辑的自动化,具体可以利用深度学习技术,将视频帧序列中的视频帧输入帧分类模型,通过提取视频帧的图像特征并进行分析,从而得到视频帧的类别,帧分类模型可以理解为是一个应用了深度学习技术的混合神经网络模型,帧分类模型可以在完全自动化的方式下,通过对大量样本数据的训练和学习,获得识别视频帧的类别的能力。
需要说明的是,本申请实施例的帧分类模型可以以单独的视频帧为输入,并输出单独的视频帧的类别,帧分类模型也可以以连续几个视频帧构成的视频帧组为输入,并输出视频帧组的整体的类别,本申请实施例对此不做限定。
具体的,基于深度学习的帧分类模型可以具体采用卷积神经网络的结构,该结构可以对输入视频帧的图像特征进行分析,得到对该图像特征对应的类别,从而实现对视频帧的分类,其中,图像特征可以以便于计算处理的特征向量的方式存在,并对视频帧的图像语义内容进行准确表达,图像特征可以由卷积神经网络中的卷积层通过对视频帧的卷积计算得到。
步骤204、根据所述视频帧序列中视频帧的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧。
可选的,类别包括:第一类别,用于表征处于所述关键片段的开始帧之前的视频帧;第二类别,用于表征从所述开始帧到所述关键片段的结束帧的前一帧之视频帧;第三类别,用于表征所述结束帧以及所述结束帧之后视频帧。
在本申请实施例的应用场景下,视频帧序列中的视频帧主要分为三种:关键片段的开始帧、关键片段的结束帧、其他帧。则基于视频帧序列的播放时序,则会存在关键片段的开始帧之前的视频帧,关键片段的开始帧和关键片段的结束帧之间的视频帧,关键片段的结束帧之后的视频帧的划分方式,可以看到,在录屏视频的播放时序上,因为关键片段的存在,视频帧的类别存在连续性和变化性,本申请实施例可以对处于录屏视频的播放时序上的视频帧的类别的变化情况进行分析,从而确定录屏视频中用于性能测试的关键片段的开始帧和结束帧。
步骤205、根据所述开始帧和所述结束帧在所述视频帧序列中对应的时刻,确定关键片段的时长,并将所述时长作为所述应用的性能测试结果。
在本申请实施例中,在确定了关键片段的开始帧和结束帧后,可以进一步计算开始帧和结束帧之间的视频帧的帧数,并将该帧数与相邻视频帧之间的时间间隔的乘积作为关键片段的时长,该时长可以作为应用的性能测试结果,用于反映应用客户端的关键页面的响应速度。
需要说明的是,在得到预测的开始帧和结束帧之后,还可以将开始帧和结束帧提交检查服务器进行复核,而预测结果复核后可加入训练数据集,通过更新的训练数据集继续优化帧分类模型的参数,从而建立一个闭环,可持续地优化模型。
本申请可以基于训练得到的用于视频帧分类的帧分类模型,将视频帧的分类和开始帧、结束帧的识别过程完全自动化,减少了人工识别的主观判断带来的干扰,因此,本申请自动化的识别过程相较于人工识别具有较高的识别效率,并且视频帧的分类基于深度学习实现,通过深度学习保证了分类的精度,在高分类精度下也提升了识别准确度。
图5是本申请实施例提供的一种应用性能的测试方法的具体步骤流程图,如图5所示,该方法可以包括:
步骤301、响应于测试指令,对应用的运行过程进行录屏,得到录屏视频。
该步骤可以参照上述步骤201,此处不再赘述。
步骤302、按照播放时序对所述录屏视频进行分帧处理,得到视频帧序列。
该步骤可以参照上述步骤202,此处不再赘述。
步骤303、将所述视频帧序列中的视频帧依次输入所述帧分类模型,得到每个所述视频帧的类别。
在本申请实施例中的一种实现方式中,参照图6,其示出了本申请实施例提供的一种帧分类模型的输入输出架构图,基于图6的帧分类模型的输入输出架构图,本申请实施例可以以离散的方式,将视频帧序列中的视频帧依次单独输入帧分类模型的卷积神经网络(CNN,Convolutional Neural Network),得到每个视频帧的类别,具体如图6中,示出了帧分类模型的卷积神经网络(CNN),其输入(input)是一个视频帧(a frame),输出(output)是该视频帧的类别:加载类别(loading,即第二类别)。另外,本申请实施例对视频帧的输入次序不做限定,可以从视频帧序列的一端开始,依次将视频帧输入帧分类模型,也可以以随机输入的方式将视频帧输入帧分类模型。
步骤304、根据所述视频帧序列中视频帧的次序,建立由所述视频帧的类别的标识构成的类别序列。
在本申请实施例中,帧分类模型输出的视频帧的类别为上述三种类别中的某一种,输出结束后,可以按照视频帧序列的时序,建立由视频帧的类别的标识构成的类别序列,且不同类别的标识不同。
例如,假设第一类别的标识为0;第二类别的标识为1;第三类别的标识为2;帧分类模型输出的类别序列则可以为例如[0,0,0,1,1,2]的形式。
步骤305、通过所述类别序列中相邻类别的标识的比较结果,确定所述类别序列中每个类别的标识的连续长度。
在本申请实施例中,针对于视频帧的三种类别的划分,可知视频帧的类别在时序上具有连续特性和由一种类别切换为另一种类别的特性,本申请实施例通过类别序列中相邻类别的标识的比较结果,可以确定类别序列中每个类别的标识的连续长度,以使得后续通过对类别的标识的连续长度的分析,确定关键片段的开始帧和结束帧。
具体的,从类别序列的一端开始,相邻类别的标识的每次比较会得到相邻类别的标识相同或相邻类别的标识不同的结果,通过对比较结果的统计,可以得到类别的连续长度,如,基于类别序列[0,0,0,1,1,2],前两次比较都是第一类别0相同的比较结果,基于第一类别0的初始长度为1,可以得出第一类别的连续长度为3;第三次比较是第一类别0与第二类别1不相同的比较结果,此时确定出现类别的切换,第四次比较是第二类别1相同的比较结果,基于切换后的第二类别1的初始长度为1,可以得出第二类别的连续长度为2,后续同理,直至所有比较完成,得出每个类别的标识的连续长度。
可选的,步骤305具体可以通过通过依次比较所述类别序列中相邻类别的标识,得到每次比较操作对应的第一结果的方式进行实现。
其中,所述第一结果包括:每次比较操作中参与比较的相邻类别中次序靠前的目标类别的标识、每次比较操作中第一计数器的值;所述第一计数器的初始值为0;所述第一计数器的值用于表征所述类别的标识的连续长度;在每次比较操作中,若相邻类别的标识相等,则所述第一计数器的值累加1;若相邻类别的标识不相等,则所述第一计数器的值重置为0。
在该步骤中,可以通过比较类别序列中相邻类别的标识的大小,得到由比较结果构成的二维比较结果序列,并由第一计数器来统计每次比较时相邻类别的标识相等的比较结果,从而通过第一计数器的值来反映类别的标识的连续长度,使得后续通过对二维比较结果序列来识别开始帧和结束帧。
具体的,本申请实施例可以设置一个第一计数器k(n-1),来对比较结果的累计状态进行记录,第一计数器的初始值为0,若类别序列用Cn=[C0,C1,…,Cn-1]表示,则可以对Cn进行循环遍历,比较所述类别序列中相邻类别的标识的大小,每次比较中,判断Cn-1和Cn-2是否相等。另外,在每次比较操作中,若相邻类别的标识相等(Cn-1=Cn-2),则所述第一计数器的值累加1,即k(n-1)=k(n-2)+2;若相邻类别的标识不相等(Cn-1≠Cn-2),则所述第一计数器的值重置为0。所有比较结束后,可以得到二维比较结果序列Rn,Rn中的每个比较结果记录有每次比较操作对应的次序、每次比较操作中参与比较的相邻类别中次序靠前的目标类别的标识、每次比较操作中第一计数器的值,如Rn=[[0,C0,k0],[1,C1,k1],…,[n-1,C(n-1),k(n-1)]]。
现通过一个具体示例说明二维比较结果序列Rn的得到过程:
假设第一类别的标识为0;第二类别的标识为1;第三类别的标识为2;假设视频帧序列包括6个视频帧[C0,C1,C2,C3,C4,C5],则帧分类模型输出的类别序列Cn=[C0=0,C1=0,C2=1,C3=1,C4=2,C5=2],k0=0。
则第一次比较n=0,C0=C1,使得k1=1;
第二次比较n=1,C1≠C2,使得k2=0;
第三次比较n=2,C2=C3,使得k3=1;
第四次比较n=3,C3≠C4,使得k4=0;
第五次比较n=4,C4=C5,使得k5=1;
完成比较后,得到Rn=[[0,0,0],[1,0,1],[2,1,0],[3,1,1],[4,2,0],[5,2,1]]。基于第一计数器k的值,可以得出第一类别0的连续长度为2、第二类别1的连续长度为2、第三类别2的连续长度为2。
步骤306、根据所述类别的标识的连续长度,从所述类别序列中,将所述第一类别切换至所述第二类别时的类别的标识所对应的视频帧作为所述开始帧,以及将所述第二类别切换至所述第三类别时的类别的标识所对应的视频帧作为所述结束帧。
在本申请实施例中,基于步骤305中得到的每个类别的标识的连续长度,可以确定在类别序列中发生类别切换时的类别的标识所处的位置,从而确定关键片段的开始帧和结束帧,整个过程可以基于数组中的比较操作自动实现,且具备较高的确定精度。如,基于类别序列[0,0,0,1,1,2]中标识的比较,可以得出第一类别0的连续长度为3,第二类别1的连续长度为2,第三类别2的连续长度为1,进而确定视频帧序列中的第四帧为开始帧,第六帧为结束帧。
可选的,参照图7,步骤306具体可以包括:
子步骤3061、根据所述第一结果中的目标类别的标识与所述第一类别的标识的比较结果,以及所述第一计数器的值,设定所述第二计数器的值。
在本申请实施例中,可以设置一个第二计数器Cstart作为开始帧的计数器,第二计数器Cstart的初始值为0,通过对二维比较结果序列Rn进行循环遍历,每次比较操作,对目标类别的标识与第一类别的标识的大小进行比较,并结合第一计数器的值,设定所述第二计数器Cstart的值,该过程旨在通过目标类别的标识与第一类别的标识的比较,确定类别序列中的第一类别是否切换至了第二类别,再结合第一计数器的值,判断发生切换时的类别对应的视频帧是否满足开始帧的条件,并在满足的情况下设定第二计数器的值,后续可通过第二计数器的值找到视频帧序列中的开始帧。
具体的,针对二维比较结果序列Rn的中的一个比较结果[比较次序,目标类别的标识C(n-1),第一计数器kn-1],每次比较中,判断比较结果中的目标类别的标识C(n-1)是否为0(0为第一类别的标识),若为0,则判断第一计数器kn-1的值是否大于第二计数器Cstart的值,若大于则设定Cstart=kn-1,并使得开始帧fstart=n-1。
子步骤3062、根据所述第一结果中的目标类别的标识与所述第二类别的标识的比较结果,以及所述第一计数器的值,设定所述第三计数器的值;所述第二计数器和所述第三计数器的初始值为0。
在本申请实施例中,同时还可以设置一个第三计数器Cloding作为结束帧的计数器,第三计数器Cloding的初始值为0,通过对二维比较结果序列Rn进行循环遍历,每次比较操作,对目标类别的标识与第二类别的标识的大小进行比较,并结合第一计数器的值,设定所述第三计数器Cloding的值,该过程旨在通过目标类别的标识与第二类别的标识的比较,确定类别序列中的第二类别是否切换至了第三类别,再结合第一计数器的值,判断发生切换时的类别对应的视频帧是否满足结束帧的条件,并在满足的情况下设定第三计数器的值,后续可通过第三计数器的值找到视频帧序列中的结束帧。
具体的,针对二维比较结果序列Rn的中的一个比较结果[比较次序,目标类别的标识C(n-1),第一计数器kn-1],每次比较中,判断比较结果中的目标类别的标识C(n-1)是否为1(1为第二类别的标识),若为1,则判断第一计数器kn-1的值是否大于第三计数器Cloding的值,若大于则设定第三计数器Cloding=kn-1,并使得结束帧fend=(n-1)+1。
子步骤3063、根据所述第二计数器的值,确定所述第一类别切换至所述第二类别时的类别的标识所对应的开始帧,以及根据所述第三计数器的值,确定所述第二类别切换至所述第三类别时的类别的标识所对应的结束帧。
在本申请实施例中,由于在设定了第二计数器Cstart=kn-1时,开始帧fstart=n-1;设定第三计数器Cloding=kn-1时,结束帧fend=(n-1)+1,因此,第一类别切换至第二类别时的类别为类别序列中第(n-1)个类别,开始帧为视频帧序列中第(n-1)个视频帧;第二类别切换至第三类别时的类别为类别序列中第(n-1)+1个类别,结束帧为视频帧序列中第(n-1)+1个视频帧。
现通过步骤305提供的具体示例继续说明开始帧和结束帧的得到过程:
Rn=[[0,0,0],[1,0,1],[2,1,0],[3,1,1],[4,2,0],[5,2,1]]。第二计数器Cstart和第三计数器Cloading初始值为0;
则第一次比较n=0,R0=[0,0,0],C0=0,Cstart=k0=0;
第二次比较n=1,R1=[1,0,1],C1=0,k1=1>Cstart;Cstart=k1=1;fstart=n=1;
第三次比较n=2,R2=[2,1,0],C2=1,Cloading=k2=0;
第四次比较n=3,R3=[3,1,1],C3=1,k3=1>Cloading;Cloading=k3=1;fend=3+1=4。
比较结束后,开始帧fstart为视频帧序列中的第二帧,结束帧fend为视频帧序列中的第五帧。可以看出,比较过程中在计数器的辅助帮助下,识别到了视频帧序列中触发关键页面的时刻,和关键页面完成响应的时刻,使得触发关键页面的时刻对应的视频帧可以作为关键片段的开始帧,关键页面完成响应的时刻对应的视频帧可以作为关键片段的结束帧。
需要说明的是,帧分类模型的准确率与训练效果相关,目前的训练方式只能使得帧分类模型的准确率尽可能高,并不能保证准确率达到100%,因此,在实际应用中会存在帧分类模型误判的情况,即帧分类模型输出的视频帧的类别出现错误,如,假设第一类别的标识为0;第二类别的标识为1;第三类别的标识为2;帧分类模型理想条件下输出的类别序列则可以为[0,0,0,1,1,2]的形式,但是在实际场景中,由于存在误判的情况,帧分类模型输出的类别序列可能为[0,1,0,1,1,2]的形式,可见序列中第二个类别为误判情况。
基于本申请实施例的开始帧、结束帧识别手段,即使在出现误判的情况下,也可通过序列中参数的比较和第一计数器的数值,准确识别每个类别的标识连续的长度,最后通过第二计数器的值反映开始帧真正所处的位置,以及通过第三计数器的值反映结束帧真正所处的位置,消除模型误判的影响。
步骤307、确定所述视频帧序列中所述开始帧和所述结束帧之间的视频帧的帧数。
在本申请实施例中,确定了视频帧序列中开始帧和结束帧之后,即可统计开始帧和结束帧之间的视频帧的帧数。
步骤308、将所述帧数与相邻视频帧之间的间隔时间的乘积,确定为所述关键片段的时长。
在该步骤中,将帧数与相邻视频帧之间的间隔时间的乘积,可以确定为关键片段的时长,相邻视频帧之间的间隔时间固定,可以直接从录制视频的相关参数中获取。
图8是本申请实施例提供的另一种应用性能的测试方法的具体步骤流程图,如图8所示,该方法可以包括:
步骤401、响应于测试指令,对应用的运行过程进行录屏,得到录屏视频。
该步骤可以参照上述步骤201,此处不再赘述。
步骤402、按照播放时序对所述录屏视频进行分帧处理,得到视频帧序列。
该步骤可以参照上述步骤202,此处不再赘述。
步骤403、建立由所述视频帧序列中的预设数量个连续视频帧构成的视频帧组。
在本申请实施例的另一种实现方式中,由于以离散的视频帧输入的方式,其预测结果可能也是不连续的,所以本申请实施例还提供了一种考虑相邻视频帧之间时序的帧分类模型的输入输出方式,这是在视频帧分类的基础上,考虑了视频帧虽然是离散的,但是视频帧帧之间具有时间序列关系的特点所作出的设计,这种设计可以提取视频帧的时序特征,从而基于时序特征对一段序列的视频帧组进行分类预测,得到视频帧组最有可能属于的分类,进一步提升了分类的准确率。
因此,在该步骤中,可以首先建立由视频帧序列中的预设数量个连续视频帧构成的视频帧组,如,可以以5个连续视频帧为一个视频帧组。假设有连续的a,b,c,d,e,f六个视频帧,则会有两个视频帧组,一个视频帧组包括a,b,c,d,e,另一个视频帧组包括b,c,d,e,f。
步骤404、将所述视频帧组输入所述帧分类模型,得到每个所述视频帧组的类别。
在本申请实施例中的一种实现方式中,参照图9,其示出了本申请实施例提供的另一种帧分类模型的输入输出架构图,基于图9的帧分类模型的输入输出架构图,帧分类模型可以包括卷积神经网络和长短期记忆人工神经网络,本申请实施例可以结合多个连续视频帧的时序特征的方式,将视频帧组(input:5frame,包含5个连续视频帧的视频帧组)先输入帧分类模型的卷积神经网络(CNN)分别进行特征提取,再将5个连续视频帧各自提取的特征进一步输入帧分类模型的长短期记忆人工神经网络(LSTM),得到每个所述视频帧组的类别(output:loading,即视频帧组为第二类别)。相较于离散型输入输出方式,连续时序型输入输出方式可以提取多个连续视频帧的时序特征,从而基于时序特征对一段序列的视频帧组进行分类预测,得到视频帧组最有可能属于的分类,进一步提升了分类的准确率。
步骤405、根据所述视频帧序列中视频帧组的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧。
在本申请实施例中,步骤405中基于视频帧组的类别,确定录屏视频中用于性能测试的关键片段的开始帧和结束帧的方式,具体可以参照上述步骤304-306的相关描述,此处不再赘述。
例如,将切分好的视频帧,按照5个一组的顺序,依次输入到神经网络中,可以得到视频帧组预测的分类结果(0代表第一类别,1代表第二类别,2代表第三类别)。
n为切分出的总帧数,帧序号为1到n的序列。因此预测过程输入的帧和输出过程如下:
输入第1,2,3,4,5帧为一组,输出分类,如:0。
输入第2,3,4,5,6帧为一组,输出分类,如:0。
……
输入第n-4,n-3,n-2,n-1,n帧为一组,输出分类。
最终得到n-4个组的分类序列,例如:[0,0,0,…1,1,1,…2,2,2]。
在获取分类序列后,可以进行后续的开始帧和结束帧的预测操作。
需要说明的是,虽然该实施例以视频帧组作为帧分类模型的输入,得到的也是视频帧组的类别,则根据各视频帧组的类别也可以构建得到类别序列,并最后确定开始帧所处的视频帧组,以及结束帧所处的视频帧组,一种情况下,开始帧具体可以为开始帧所处的视频帧组中的中间帧;结束帧具体可以为结束帧所处的视频帧组中的中间帧。另外,开始帧也可以为开始帧所处的视频帧组中的任一帧;结束帧也可以为结束帧所处的视频帧组中的任一帧,本申请实施例对此不做限定。
步骤406、确定所述视频帧序列中所述开始帧和所述结束帧之间的视频帧的帧数。
步骤407、将所述帧数与相邻视频帧之间的间隔时间的乘积,确定为所述关键片段的时长。
具体的,步骤406-407具体可以参照上述步骤307-308的相关描述,此处不再赘述。
最后参照图10,其示出了本申请实施例提供的一种应用性能的测试方法的整体架构图,可以看出,本申请整体存在两个分支:预测和训练。针对预测过程,依次执行步骤:
S1、开发自动化脚本,即自动录屏和识别关键帧的脚本;
步骤S2、执行自动化脚本;
步骤S3、对执行过程进行录屏;
步骤S4、得到录屏文件;
步骤S5、切分视频;
步骤S6、得到帧序列;
步骤S7、存储帧序列;
步骤S8、执行预测;
步骤S9、得到类别序列并存储;
步骤S10、根据类别序列预测关键帧(关键片段的开始帧和结束帧);
步骤S11、得到关键帧并存储;
步骤S12、判断模型准确率是否达到阈值;在模型准确率未达到阈值的情况下执行步骤S13、进行复核;在模型准确率未达到阈值的情况下以及复核结束的情况下执行步骤S14、得到最终的预测结果。
本申请实施例通过执行自动化脚本,在应用的运行过程中进行录屏,得到录制视频文件,之后通过对录制视频文件分帧得到序列帧,最后执行预测过程,识别关键帧,并且可以对帧分类模型的准确率具有一个判断,准确率达到要求,则无需复核,准确率未达到要求,则需复核,从而大大提升了关键帧识别的自动化程度和准确率。
针对训练过程,依次执行:
步骤S15、执行训练数据集构建脚本,该脚本可以自动化进行样本视频的切分、按照类别划分样本帧的动作;
步骤S16、存储训练数据集;
步骤S17、执行训练;
步骤S18、得到帧分类模型并存储;
步骤S19、评估模型准确率;
步骤S20、存储模型准确率;
步骤S21、判断模型准确率是否达到阈值;在模型准确率达到阈值的情况下执行步骤S22、获得最终模型;在模型准确率未达到阈值的情况下执行步骤S23、调整模型或重新训练。
针对预测过程中最终输出的准去的预测结果,还可以将预测结果添加至训练数据集中,以进一步完善训练数据集中的数据内容。
图11是本申请实施例提供的一种帧分类模型的训练装置的框图,如图11所示,该装置可以包括:
样本获取模块501,用于获取样本视频;
建立模块502,用于建立所述样本视频中的样本帧和预设的类别之间的对应关系;
训练模块503,用于根据所述对应关系对初始模型进行训练,得到帧分类模型,所述帧分类模型用于识别样本视频中视频帧的类别;
其中,所述样本视频中具有关键片段:所述类别包括:用于表征处于所述关键片段的开始帧之前的样本帧的第一类别;用于表征从所述开始帧到所述关键片段的结束帧的前一帧之间的样本帧的第二类别;用于表征所述结束帧以及所述结束帧之后样本帧的第三类别。
可选的,所述训练模块503,包括:
第一分帧子模块,用于按照播放时序对所述样本视频进行分帧处理,得到第一样本帧序列;
第一建立子模块,用于建立所述第一样本帧序列中第一样本帧和所述类别之间的第一对应关系;
第一训练子模块,用于根据所述第一对应关系,通过将所述第一样本帧依次输入所述初始模型进行训练,得到所述帧分类模型。
可选的,所述训练模块503,包括:
第二分帧子模块,用于按照播放时序对所述样本视频进行分帧处理,得到第二样本帧序列;
第二建立子模块,用于建立样本帧组与所述类别之间的第二对应关系,所述样本帧组由所述第二样本帧序列中的预设数量个连续的第二样本帧构成;
第二训练子模块,用于根据所述第二对应关系,通过将所述样本帧组输入初始模型进行训练,得到所述帧分类模型,所述帧分类模型用于识别所述视频帧组的类别。
综上所述,本申请实施例提供的帧分类模型的训练装置中,包括:获取样本视频;建立样本视频中的样本帧和预设的类别之间的对应关系;根据对应关系对初始模型进行训练,得到帧分类模型,帧分类模型用于识别视频中视频帧的类别;其中,样本视频中具有关键片段,类别包括:用于表征处于关键片段的开始帧之前的样本帧的第一类别;用于表征从开始帧到关键片段的结束帧的前一帧之间的样本帧的第二类别;用于表征结束帧以及结束帧之后样本帧的第三类别。本申请可以基于训练得到的用于视频帧分类的帧分类模型,将视频帧的分类和开始帧、结束帧的识别过程完全自动化,减少了人工识别的主观判断带来的干扰,并且视频帧的分类基于深度学习实现,通过深度学习保证了分类的精度,在高分类精度下也带来了开始帧、结束帧的识别精度的提升。
图12是本申请实施例提供的一种应用性能的测试装置的框图,如图12所示,该装置可以包括:
录屏模块601,用于响应于测试指令,对应用的运行过程进行录屏,得到录屏视频;
分帧模块602,用于按照播放时序对所述录屏视频进行分帧处理,得到视频帧序列;
分类模块603,用于将所述视频帧序列中的视频帧输入帧分类模型,得到所述视频帧的类别;所述帧分类模型是所述的帧分类模型的训练装置所训练得到的;
识别模块604,用于根据所述视频帧序列中视频帧的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧;
时长检测模块605,用于根据所述开始帧和所述结束帧在所述视频帧序列中对应的时刻,确定关键片段的时长,并将所述时长作为所述应用的性能测试结果。
可选的,所述类别包括:
第一类别,用于表征处于所述关键片段的开始帧之前的视频帧;
第二类别,用于表征从所述开始帧到所述关键片段的结束帧的前一帧之间的视频帧;
第三类别,用于表征所述结束帧以及所述结束帧之后视频帧。
可选的,所述识别模块604,包括:
第三建立子模块,用于根据所述视频帧序列中视频帧的次序,建立由所述视频帧的类别的标识构成的类别序列;
比较子模块,用于通过所述类别序列中相邻类别的标识的比较结果,确定所述类别序列中每个类别的标识的连续长度;
识别子模块,用于根据所述类别的标识的连续长度,从所述类别序列中,将所述第一类别切换至所述第二类别时的类别的标识所对应的视频帧作为所述开始帧,以及将所述第二类别切换至所述第三类别时的类别的标识所对应的视频帧作为所述结束帧。
可选的,所述比较子模块,包括:
比较单元,用于通过依次比较所述类别序列中相邻类别的标识,得到每次比较操作对应的第一结果;
其中,所述第一结果包括:每次比较操作中参与比较的相邻类别中次序靠前的目标类别的标识、每次比较操作中第一计数器的值;所述第一计数器的初始值为0;所述第一计数器的值用于表征所述类别的标识的连续长度;在每次比较操作中,若相邻类别的标识相等,则所述第一计数器的值累加1;若相邻类别的标识不相等,则所述第一计数器的值重置为0。
可选的,所述识别子模块,包括:
第一设定单元,用于根据所述第一结果中的目标类别的标识与所述第一类别的标识的比较结果,以及所述第一计数器的值,设定所述第二计数器的值;
第二设定单元,用于根据所述第一结果中的目标类别的标识与所述第二类别的标识的比较结果,以及所述第一计数器的值,设定所述第三计数器的值;所述第二计数器和所述第三计数器的初始值为0;
确定单元,用于根据所述第二计数器的值,确定所述第一类别切换至所述第二类别时的类别的标识所对应的开始帧,以及根据所述第三计数器的值,确定所述第二类别切换至所述第三类别时的类别的标识所对应的结束帧。
可选的,所述分类模块603,包括:
第一输入子模块,用于将所述视频帧序列中的视频帧依次输入所述帧分类模型,得到每个所述视频帧的类别。
可选的,所述分类模块603,包括:
第四建立子模块,用于建立由所述视频帧序列中的预设数量个连续视频帧构成的视频帧组;
第二输入子模块,用于将所述视频帧组输入所述帧分类模型,得到每个所述视频帧组的类别;
所述识别模块604,包括:
关键帧子模块,用于根据所述视频帧序列中视频帧组的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧。
综上所述,本申请实施例提供的应用性能的测试装置中,包括:响应于测试指令,对应用的运行过程进行录屏,得到录屏视频;按照播放时序对录屏视频进行分帧处理,得到视频帧序列;将视频帧序列中的视频帧输入帧分类模型,得到视频帧的类别;根据视频帧序列中视频帧的类别,确定录屏视频中用于性能测试的关键片段的开始帧和结束帧;根据开始帧和结束帧在视频帧序列中对应的时刻,确定关键片段的时长,并将时长作为应用的性能测试结果。本申请可以基于训练得到的用于视频帧分类的帧分类模型,将视频帧的分类和开始帧、结束帧的识别过程完全自动化,减少了人工识别的主观判断带来的干扰,并且视频帧的分类基于深度学习实现,通过深度学习保证了分类的精度,在高分类精度下也带来了开始帧、结束帧的识别精度的提升。
对于上述装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
优选的,本申请实施例还提供一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述实施例提供的方法,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行上述实施例提供的方法,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-OnlyMemory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
本申请实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述实施例提供的方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域技术人员易于想到的是:上述各个实施例的任意组合应用都是可行的,故上述各个实施例之间的任意组合都是本申请的实施方案,但是由于篇幅限制,本说明书在此就不一一详述了。
在此提供的应用性能的测试方法不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造具有本申请方案的系统所要求的结构是显而易见的。此外,本申请也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本申请的内容,并且上面对特定语言所做的描述是为了披露本申请的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个申请方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,申请方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的应用性能的测试方法中的一些或者全部部件的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (15)

1.一种帧分类模型的训练方法,其特征在于,所述方法包括:
获取样本视频;
建立所述样本视频中的样本帧和预设的类别之间的对应关系;
根据所述对应关系对初始模型进行训练,得到帧分类模型,所述帧分类模型用于识别视频中视频帧的类别;
其中,所述样本视频中具有关键片段,所述类别包括:用于表征处于所述关键片段的开始帧之前的样本帧的第一类别;用于表征从所述开始帧到所述关键片段的结束帧的前一帧之间的样本帧的第二类别;用于表征所述结束帧以及所述结束帧之后样本帧的第三类别。
2.根据权利要求1所述的方法,其特征在于,所述根据所述对应关系对初始模型进行训练,得到帧分类模型,包括:
按照播放时序对所述样本视频进行分帧处理,得到第一样本帧序列;
建立所述第一样本帧序列中第一样本帧和所述类别之间的第一对应关系;
根据所述第一对应关系,通过将所述第一样本帧依次输入所述初始模型进行训练,得到所述帧分类模型。
3.根据权利要求1所述的方法,其特征在于,所述根据所述对应关系对初始模型进行训练,得到帧分类模型,包括:
按照播放时序对所述样本视频进行分帧处理,得到第二样本帧序列;
建立样本帧组与所述类别之间的第二对应关系,所述样本帧组由所述第二样本帧序列中的预设数量个连续的第二样本帧构成;
根据所述第二对应关系,通过将所述样本帧组输入初始模型进行训练,得到所述帧分类模型,所述帧分类模型用于识别所述视频帧组的类别。
4.一种应用性能的测试方法,其特征在于,所述方法包括:
响应于测试指令,对应用的运行过程进行录屏,得到录屏视频;
按照播放时序对所述录屏视频进行分帧处理,得到视频帧序列;
将所述视频帧序列中的视频帧输入帧分类模型,得到所述视频帧的类别;所述帧分类模型是根据权利要求1-3任一项所述的帧分类模型的训练方法所训练得到的;
根据所述视频帧序列中视频帧的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧;
根据所述开始帧和所述结束帧在所述视频帧序列中对应的时刻,确定关键片段的时长,并将所述时长作为所述应用的性能测试结果。
5.根据权利要求4所述的方法,其特征在于,所述类别包括:
第一类别,用于表征处于所述关键片段的开始帧之前的视频帧;
第二类别,用于表征从所述开始帧到所述关键片段的结束帧的前一帧之间的视频帧;
第三类别,用于表征所述结束帧以及所述结束帧之后视频帧。
6.根据权利要求5所述的方法,其特征在于,所述根据所述视频帧序列中视频帧的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧,包括:
根据所述视频帧序列中视频帧的次序,建立由所述视频帧的类别的标识构成的类别序列;
通过所述类别序列中相邻类别的标识的比较结果,确定所述类别序列中每个类别的标识的连续长度;
根据所述类别的标识的连续长度,从所述类别序列中,将所述第一类别切换至所述第二类别时的类别的标识所对应的视频帧作为所述开始帧,以及将所述第二类别切换至所述第三类别时的类别的标识所对应的视频帧作为所述结束帧。
7.根据权利要求6所述的方法,其特征在于,所述通过所述类别序列中相邻类别的标识的比较结果,确定所述类别序列中每个类别的标识的连续长度,包括:
通过依次比较所述类别序列中相邻类别的标识,得到每次比较操作对应的第一结果;
其中,所述第一结果包括:每次比较操作中参与比较的相邻类别中次序靠前的目标类别的标识、每次比较操作中第一计数器的值;所述第一计数器的初始值为0;所述第一计数器的值用于表征所述类别的标识的连续长度;在每次比较操作中,若相邻类别的标识相等,则所述第一计数器的值累加1;若相邻类别的标识不相等,则所述第一计数器的值重置为0。
8.根据权利要求7所述的方法,其特征在于,所述根据所述类别的标识的连续长度,从所述类别序列中,将所述第一类别切换至所述第二类别时的类别的标识所对应的视频帧作为所述开始帧,以及将所述第二类别切换至所述第三类别时的类别的标识所对应的视频帧作为所述结束帧,包括:
根据所述第一结果中的目标类别的标识与所述第一类别的标识的比较结果,以及所述第一计数器的值,设定所述第二计数器的值;
根据所述第一结果中的目标类别的标识与所述第二类别的标识的比较结果,以及所述第一计数器的值,设定所述第三计数器的值;所述第二计数器和所述第三计数器的初始值为0;
根据所述第二计数器的值,确定所述第一类别切换至所述第二类别时的类别的标识所对应的开始帧,以及根据所述第三计数器的值,确定所述第二类别切换至所述第三类别时的类别的标识所对应的结束帧。
9.根据权利要求4所述的方法,其特征在于,所述将所述视频帧序列中的视频帧输入帧分类模型,得到所述视频帧的类别,包括:
将所述视频帧序列中的视频帧依次输入所述帧分类模型,得到每个所述视频帧的类别。
10.根据权利要求4所述的方法,其特征在于,所述将所述视频帧序列中的视频帧输入帧分类模型,得到所述视频帧的类别,包括:
建立由所述视频帧序列中的预设数量个连续视频帧构成的视频帧组;
将所述视频帧组输入所述帧分类模型,得到每个所述视频帧组的类别;
所述根据所述视频帧序列中视频帧的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧,包括:
根据所述视频帧序列中视频帧组的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧。
11.一种帧分类模型的训练装置,其特征在于,所述装置包括:
样本获取模块,用于获取样本视频;
建立模块,用于建立所述样本视频中的样本帧和预设的类别之间的对应关系;
训练模块,用于根据所述对应关系对初始模型进行训练,得到帧分类模型,所述帧分类模型用于识别样本视频中视频帧的类别;
其中,所述样本视频中具有关键片段:所述类别包括:用于表征处于所述关键片段的开始帧之前的样本帧的第一类别;用于表征从所述开始帧到所述关键片段的结束帧的前一帧之间的样本帧的第二类别;用于表征所述结束帧以及所述结束帧之后样本帧的第三类别。
12.一种应用性能的测试装置,其特征在于,所述装置包括:
录屏模块,用于响应于测试指令,对应用的运行过程进行录屏,得到录屏视频;
分帧模块,用于按照播放时序对所述录屏视频进行分帧处理,得到视频帧序列;
分类模块,用于将所述视频帧序列中的视频帧输入帧分类模型,得到所述视频帧的类别;所述帧分类模型是根据权利要求13所述的帧分类模型的训练装置所训练得到的;
识别模块,用于根据所述视频帧序列中视频帧的类别,确定所述录屏视频中用于性能测试的关键片段的开始帧和结束帧;
时长检测模块,用于根据所述开始帧和所述结束帧在所述视频帧序列中对应的时刻,确定关键片段的时长,并将所述时长作为所述应用的性能测试结果。
13.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10中任一项所述的方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-10中任一项所述的方法。
15.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现权利要求1-10中任一项所述的方法。
CN202210517696.XA 2022-05-12 2022-05-12 帧分类模型的训练方法、应用性能的测试方法及装置 Pending CN114898265A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210517696.XA CN114898265A (zh) 2022-05-12 2022-05-12 帧分类模型的训练方法、应用性能的测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210517696.XA CN114898265A (zh) 2022-05-12 2022-05-12 帧分类模型的训练方法、应用性能的测试方法及装置

Publications (1)

Publication Number Publication Date
CN114898265A true CN114898265A (zh) 2022-08-12

Family

ID=82722386

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210517696.XA Pending CN114898265A (zh) 2022-05-12 2022-05-12 帧分类模型的训练方法、应用性能的测试方法及装置

Country Status (1)

Country Link
CN (1) CN114898265A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116737991A (zh) * 2023-08-11 2023-09-12 陕西龙朔通信技术有限公司 网络视频监控数据处理方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110119757A (zh) * 2019-03-28 2019-08-13 北京奇艺世纪科技有限公司 模型训练方法、视频类别检测方法、装置、电子设备和计算机可读介质
CN110221979A (zh) * 2019-06-04 2019-09-10 广州虎牙信息科技有限公司 应用程序的性能测试方法、装置、设备及存储介质
CN110309786A (zh) * 2019-07-03 2019-10-08 华南农业大学 一种基于深度视频的哺乳母猪姿态转换识别方法
CN110909630A (zh) * 2019-11-06 2020-03-24 腾讯科技(深圳)有限公司 一种异常游戏视频检测方法和装置
CN111479130A (zh) * 2020-04-02 2020-07-31 腾讯科技(深圳)有限公司 一种视频定位方法、装置、电子设备和存储介质
CN112650885A (zh) * 2021-01-22 2021-04-13 百度在线网络技术(北京)有限公司 视频分类方法、装置、设备和介质
CN112699787A (zh) * 2020-12-30 2021-04-23 湖南快乐阳光互动娱乐传媒有限公司 一种广告插入时间点的检测方法及装置
CN113821657A (zh) * 2021-06-10 2021-12-21 腾讯科技(深圳)有限公司 基于人工智能的图像处理模型训练方法及图像处理方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110119757A (zh) * 2019-03-28 2019-08-13 北京奇艺世纪科技有限公司 模型训练方法、视频类别检测方法、装置、电子设备和计算机可读介质
CN110221979A (zh) * 2019-06-04 2019-09-10 广州虎牙信息科技有限公司 应用程序的性能测试方法、装置、设备及存储介质
CN110309786A (zh) * 2019-07-03 2019-10-08 华南农业大学 一种基于深度视频的哺乳母猪姿态转换识别方法
CN110909630A (zh) * 2019-11-06 2020-03-24 腾讯科技(深圳)有限公司 一种异常游戏视频检测方法和装置
CN111479130A (zh) * 2020-04-02 2020-07-31 腾讯科技(深圳)有限公司 一种视频定位方法、装置、电子设备和存储介质
CN112699787A (zh) * 2020-12-30 2021-04-23 湖南快乐阳光互动娱乐传媒有限公司 一种广告插入时间点的检测方法及装置
CN112650885A (zh) * 2021-01-22 2021-04-13 百度在线网络技术(北京)有限公司 视频分类方法、装置、设备和介质
CN113821657A (zh) * 2021-06-10 2021-12-21 腾讯科技(深圳)有限公司 基于人工智能的图像处理模型训练方法及图像处理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116737991A (zh) * 2023-08-11 2023-09-12 陕西龙朔通信技术有限公司 网络视频监控数据处理方法及系统
CN116737991B (zh) * 2023-08-11 2023-10-20 陕西龙朔通信技术有限公司 网络视频监控数据处理方法及系统

Similar Documents

Publication Publication Date Title
CN110198310B (zh) 一种网络行为反作弊方法、装置及存储介质
CN110191357A (zh) 视频片段精彩度评估、动态封面生成方法及装置
CN109460512B (zh) 推荐信息处理方法、装置、设备及存储介质
KR101827345B1 (ko) 다중 알고리즘 및 자기학습기능을 적용한 개인화 추천 시스템 및 추천 방법
EP4016375A1 (en) Video classification method, device and system
CN111767430B (zh) 视频资源推送方法、视频资源推送装置及存储介质
US10104428B2 (en) Video playing detection method and apparatus
EP3171593A1 (en) Testing system, testing method, computer program product, and non-transitory computer readable data carrier
CN109508406A (zh) 一种信息处理方法、装置及计算机可读存储介质
CN113852832B (zh) 视频处理方法、装置、设备和存储介质
CN102855309A (zh) 一种基于用户行为关联分析的信息推荐方法及装置
CN113407773A (zh) 一种短视频智能推荐方法、系统、电子设备及存储介质
CN112905451B (zh) 应用程序的自动化测试方法及装置
CN110059003B (zh) 自动化测试方法、装置、电子设备及可读存储介质
CN114898265A (zh) 帧分类模型的训练方法、应用性能的测试方法及装置
CN111611781B (zh) 数据标注方法、问答方法、装置及电子设备
CN114064445B (zh) 一种测试方法、装置、设备及计算机可读存储介质
CN108255891B (zh) 一种判别网页类型的方法及装置
EP4274236A1 (en) Live streaming auditing method and apparatus, server, and storage medium
CN115309661A (zh) 一种应用测试方法、装置、电子设备及可读存储介质
CN115883322A (zh) 互联网专线质差根因分析方法和装置
CN114842382A (zh) 一种生成视频的语义向量的方法、装置、设备及介质
CN113962216A (zh) 文本处理方法、装置、电子设备及可读存储介质
CN110730342B (zh) 一种视频质量分析方法、装置、服务器及终端
CN113628077A (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