1.本发明涉及图像处理技术领域,尤其涉及一种花屏生成方法及装置、花屏检测模型的训练方法及装置。
背景技术:2.因为在视频播放中会出现花屏现象,且测试人员手动检测花屏图像的检测过程会比较繁琐,所以为了提高用户的播放体验,一般通过基于机器学习的花屏检测模型对视频播放中的花屏现象进行检测,以便于在产生花屏现象时及时采取补救措施。花屏检测模型非常依赖数据集,因此需要大量的花屏图像样本来进行训练,而花屏现象的出现又具有一定的偶然性,因此收集大量的花屏图像较为困难,进而无法实现快速地获取用以训练花屏检测模型所需的大量花屏图像样本。
3.因此,本发明提供了一种花屏生成方法及装置、花屏检测模型的训练方法及装置,用以生成大量的花屏图像,并根据大量的花屏图像来训练花屏检测模型。
技术实现要素:4.本发明实施例提供了一种花屏生成方法及装置、花屏检测模型的训练方法及装置,并通过获取大量的花屏图像来训练花屏检测模型,有利于提高所述花屏检测模型检测结果的准确度。
5.第一方面,本发明提供一种花屏生成方法,包括:获取视频播放数据,对所述视频播放数据进行格式转换,得到第一压缩数据;修改所述第一压缩数据的分辨率,并获取第一视频数据;或者丢掉所述第一压缩数据中的关键帧,并获得第二视频数据;根据所述第一视频数据或者所述第二视频数据生成样本花屏图像。
6.其有益效果在于:本发明通过修改所述分辨率或者丢掉所述关键帧对所述第一压缩数据进行处理来获取所述样本花屏图像的方式,操作比较简单,实现起来不复杂,且因为所述分辨率和所述关键帧对所述样本花屏图像的生成的概率影响比较大,所述通过修改所述分辨率和丢失所述关键帧来获取所述样本花屏图像的效率比较高。
7.可选地,所述修改所述第一压缩数据的分辨率,并获取第一视频数据,包括:增大所述第一压缩数据的分辨率,得到第二压缩数据,并对所述第二压缩数据进行转码,得到所述第一视频数据。其有益效果在于:当所述第一压缩数据的分辨率增大时,且所述分辨率增大的程度越大,所生成的所述样本花屏图像的花屏程度越大,即越有利于花屏的生成。
8.可选地,所述丢掉所述第一压缩数据中的关键帧,并获得第二视频数据,包括:确定所述第一压缩数据中的关键帧时间,丢掉在所述关键帧时间的预设范围内的数据帧,并获得第二视频数据。其有益效果在于:因为所述关键帧包含了第一压缩数据相关视频的全部信息,所述是对于所述第一压缩数据进行编码或解码影响非常大的数据帧,所述当丢掉所述关键帧的时候,所述第二视频数据生成花屏的概率非常大,即非常有利于所述样本花屏图像的获取。
9.可选地,所述根据所述第一视频数据或者所述第二视频数据生成样本花屏图像,包括:播放所述第一视频数据或者所述第二视频数据,在所述第一视频数据或者所述第二视频数据所播放的画面中截取视频截图,生成所述样本花屏图像。其有益效果在于:通过对第一视频数据或者所述第二视频数据的播放画面进行截取,可以很便利的获取所述样本花屏图像。
10.可选地,所述根据所述第一视频数据或者所述第二视频数据生成所述样本花屏图像,包括:根据所述第一视频数据或者所述第二视频数据生成备选花屏图像;若所述备选花屏图像符合预设的花屏图像条件,则将所述备选花屏图像选定为所述样本花屏图像。其有益效果在于:通过预先设定花屏图像条件,可以很容易的将符合条件的所述样本花屏图像筛选出来。
11.进一步可选地,所述若所述备选花屏图像符合预设的花屏图像条件,则将所述备选花屏图像选定为所述样本花屏图像,包括:对所述第一压缩数据进行转码,得到第三视频数据;根据所述第三视频数据生成所述备选花屏图像对应的原始视频图像;比对所述原始视频图像与所述备选花屏图像;若所述原始视频图像与所述备选花屏图像之间的相似度小于预定阈值,则将所述备选花屏图像选定为所述目标花屏图像。其有益效果在于:因为机器判断会存在一定的误差,所以只有将所述备选花屏图像与所述原始视频图像进行比较,才能获取最准确的判断结果。
12.第二方面,本发明提供一种花屏检测模型的训练方法,包括:获取所述原始视频图像和如第一方面中任一实施例所述的样本花屏图像,并建立数据集,将所述数据集分为训练集和验证集;对所述训练集中的图像进行归一化预处理;获取神经网络训练模型,将所述训练集中的图像输入到所述神经网络训练模型中进行训练;通过损失函数计算所述训练集中的图像的训练损失,并将所述训练损失进行反向传播对所述神经网络训练模型进行迭代更新,并当所述神经网络训练模型在验证集上的验证结果符合预设要求时,训练结束,得到训练好的花屏检测模型。
13.其有益效果在于:本发明通过将所述原始视频图像和如第一方面任意实施例所述的样本花屏图像建立成数据集,使得所述神经网络训练模型能够获取足够的训练样本图像,使得所述花屏检测模型的检测结果更加准确。
14.可选地,所述对所述训练集中的图像进行归一化预处理,包括:对所述训练集中的图像进行旋转处理、缩放处理、剪切处理中的至少一种。其有益效果在于:通过对所述训练集中的图像进行旋转处理、缩放处理或剪切处理,可以增强所述神经网络训练模型的训练效果,提高所述花屏检测模型检测的准确度。
15.第三方面,本发明提供一种花屏检测装置,该装置包括执行上述第一方面的任意一种可能的设计的方法的模块/单元。这些模块/单元可以通过硬件实现,也可以通过硬件执行相应的软件实现。
16.第四方面,本发明提供一种花屏检测模型的训练装置,该装置包括执行上述第二方面的任意一种可能的设计的方法的模块/单元。这些模块/单元可以通过硬件实现,也可以通过硬件执行相应的软件实现。
17.关于上述第三方面至第四方面的有益效果可以参见上述第一方面或第二方面中的描述。
附图说明
18.图1为本技术实施例提供的一种花屏生成方法的流程图;
19.图2为本技术实施例提供的一种花屏检测模型的训练方法;
20.图3为本技术实施例提供的一种花屏检测装置示意图;
21.图4为本技术实施例提供的一种花屏检测模型的训练装置示意图。
具体实施方式
22.下面结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。其中,在本技术实施例的描述中,以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本技术的限制。如在本技术的说明书和所附权利要求书中所使用的那样,单数表达形式“一种”、“该”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本技术以下各实施例中,“至少一个”、“一个或多个”是指一个或两个以上(包含两个)。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b的情况,其中a、b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
23.在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。术语“连接”包括直接连接和间接连接,除非另外说明。“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
24.在本技术实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本技术实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
25.本技术实施例提供了一种花屏生成方法,其流程如图1所示,具体步骤如下:
26.s101,获取视频播放数据,对所述视频播放数据进行格式转换,得到第一压缩数据。
27.在本步骤中,可以通过终端设备获取视频播放数据,所述终端设备可以是智能手机、平板电脑和便携式计算机中的一种或多种,当然也可以是台式计算机等等,所述视频播放数据的来源可以是服务器。所述终端设备通过网络获取所述服务器中的所述视频播放数据,所述网络可以包括各种连接类型,例如有线通信链路、无线通信链路等等。其中所述终端设备、所述网络和所述服务器的数目可以根据实际需要来设定,例如所述终端设备也可以通过所述网络在由多个服务器组成的服务器集群中获取所述视频播放数据。
28.s102,修改所述第一压缩数据的分辨率,并获取第一视频数据;或者丢掉所述第一压缩数据中的关键帧,并获得第二视频数据。
29.s103,根据所述第一视频数据或者所述第二视频数据生成样本花屏图像。
30.在s102和s103中,用户可以使用所述终端设备通过所述网络与所述服务器交互,以接收或发送消息等,所述服务器可以是提供各种服务的服务器。例如用户利用终端设备获取视频播放数据,对所述视频播放数据进行格式转换,得到第一压缩数据;修改所述第一压缩数据的分辨率,并获取第一视频数据;或者丢掉所述第一压缩数据中的关键帧,并获得第二视频数据;根据所述第一视频数据或者所述第二视频数据生成样本花屏图像。进而可以实现快速地生成花屏检测模型进行训练时所需要的大量花屏图像样本,以提高生成花屏图像的效率。
31.需要说明的是,本技术实施例所提供的花屏图像的生成方法一般由终端设备执行,相应地,花屏图像的生成装置一般设置于终端设备中。但是,在本技术的其它实施例中,服务器也可以与终端设备具有相似的功能,从而执行本技术实施例所提供的花屏图像的生成方法的方案。例如,用户利用终端设备(也可以是终端设备或)向服务器上传视频播放数据,对所述视频播放数据进行格式转换,得到第一压缩数据,服务器修改所述第一压缩数据的分辨率,并获取第一视频数据;或者丢掉所述第一压缩数据中的关键帧,并获得第二视频数据;对第二视频压缩数据进行转码,得到第二视频数据;根据所述第一视频数据或者所述第二视频数据生成样本花屏图像,服务器将生成的所述样本花屏图像推送至终端设备。
32.在一种可能的实施林中,所述修改所述第一压缩数据的分辨率,并获取第一视频数据,包括:增大所述第一压缩数据的分辨率,得到第二压缩数据,并对所述第二压缩数据进行转码,得到所述第一视频数据。在本实施例中,当所述第一压缩数据的分辨率增大时,且所述分辨率增大的程度越大,所生成的所述样本花屏图像的花屏程度越大,即越有利于花屏的生成。
33.在又一种可能的实施例中,所述丢掉所述第一压缩数据中的关键帧,并获得第二视频数据,包括:确定所述第一压缩数据中的关键帧时间,丢掉在所述关键帧时间的预设范围内的数据帧,并获得第二视频数据。在本实施例中,因为所述关键帧包含了第一压缩数据相关视频的全部信息,所述是对于所述第一压缩数据进行编码或解码影响非常大的数据帧,所述当丢掉所述关键帧的时候,所述第二视频数据生成花屏的概率非常大,即非常有利于所述样本花屏图像的获取。
34.在还一种可能的实施例中,所述根据所述第一视频数据或者所述第二视频数据生成样本花屏图像,包括:播放所述第一视频数据或者所述第二视频数据,在所述第一视频数据或者所述第二视频数据所播放的画面中截取视频截图,生成所述样本花屏图像。在本实施例中,通过对第一视频数据或者所述第二视频数据的播放画面进行截取,可以很便利的获取所述样本花屏图像。
35.在再一种可能的实施例中,所述根据所述第一视频数据或者所述第二视频数据生成所述样本花屏图像,包括:根据所述第一视频数据或者所述第二视频数据生成备选花屏图像;若所述备选花屏图像符合预设的花屏图像条件,则将所述备选花屏图像选定为所述样本花屏图像。在本实施例中,通过预先设定花屏图像条件,可以很容易的将符合条件的所述样本花屏图像筛选出来。
36.进一步地,所述若所述备选花屏图像符合预设的花屏图像条件,则将所述备选花屏图像选定为所述样本花屏图像,包括:对所述第一压缩数据进行转码,得到第三视频数
据;根据所述第三视频数据生成所述备选花屏图像对应的原始视频图像;比对所述原始视频图像与所述备选花屏图像;若所述原始视频图像与所述备选花屏图像之间的相似度小于预定阈值,则将所述备选花屏图像选定为所述目标花屏图像。在本实施例中,因为机器判断会存在一定的误差,所以只有将所述备选花屏图像与所述原始视频图像进行比较,才能获取最准确的判断结果。
37.本技术实施例提供一种花屏检测模型的训练方法,其流程如图2所示,具体步骤如下:
38.s201,获取所述原始视频图像和如上述任一实施例中所述的样本花屏图像,并建立数据集,将所述数据集分为训练集和验证集。
39.s202,对所述训练集中的图像进行归一化预处理。
40.s203,获取神经网络训练模型,将所述训练集中的图像输入到所述神经网络训练模型中进行训练。
41.s204,通过损失函数计算所述训练集中的图像的训练损失,并将所述训练损失进行反向传播对所述神经网络训练模型进行迭代更新,并当所述神经网络训练模型在验证集上的验证结果符合预设要求时,训练结束,得到训练好的花屏检测模型。
42.示例性地,当获取到所述原始视频图像和所述样本花屏图像时,可以给所述数据集中的图像进行分类,例如分为正常图像和花屏图像,分别给所述正常图像和所述花屏图像并加入“正常”和“花屏”的标签,并分别在所述训练集和所述验证集中放入数量合适的正常图像和花屏图像,来进行神经网络训练模型的训练,直到所述神经网络训练模型在验证集上的验证结果符合预设要求时,训练结束,得到训练好的花屏检测模型。
43.本技术实施例通过将所述原始视频图像和如上述任意实施例中所述的样本花屏图像建立成数据集,使得所述神经网络训练模型能够获取足够的训练样本图像,使得所述花屏检测模型的检测结果更加准确。
44.在一种可能的实施例中,所述对所述训练集中的图像进行归一化预处理,包括:对所述训练集中的图像进行旋转处理、缩放处理、剪切处理中的至少一种。在本实施例中,通过对所述训练集中的图像进行旋转处理、缩放处理或剪切处理,可以增强所述神经网络训练模型的训练效果,提高所述花屏检测模型检测的准确度。
45.本技术实施例提供了一种花屏检测装置,如图3所示,所述装置300包括获取模块301、转换模块302、处理模块303以及生成模块304。
46.所述获取模块301用于获取视频播放数据。所述转换模块302用于对所述视频播放数据进行格式转换,得到第一压缩数据。所述处理模块303用于修改所述第一压缩数据的分辨率,并获取第一视频数据;或者丢掉所述第一压缩数据中的关键帧,并获得第二视频数据。所述生成模块304用于根据所述第一视频数据或者所述第二视频数据生成样本花屏图像。
47.在本实施例中,所述获取模块301、所述转换模块302、所述处理模块303和所述生成模块304可以通过硬件实现,也可以通过硬件执行相应的软件实现。
48.示例性地,本技术实施例所提供的所述花屏检测装置300可以设置于上述任意实施例所提到的所述终端设备中。所述获取模块301可以通过终端设备获取视频播放数据,所述终端设备可以是智能手机、平板电脑和便携式计算机中的一种或多种,当然也可以是台
式计算机等等,所述视频播放数据的来源可以是服务器。所述终端设备通过网络获取所述服务器中的所述视频播放数据,所述网络可以包括各种连接类型,例如有线通信链路、无线通信链路等等。其中所述终端设备、所述网络和所述服务器的数目可以根据实际需要来设定,例如所述终端设备也可以通过所述网络在由多个服务器组成的服务器集群中获取所述视频播放数据。用户可以使用所述终端设备通过所述网络与所述服务器交互,以接收或发送消息等,所述服务器可以是提供各种服务的服务器。
49.例如所述获取模块301通过终端设备获取视频播放数据,所述转换模块302对所述视频播放数据进行格式转换,得到第一压缩数据;所述处理模块303修改所述第一压缩数据的分辨率,并获取第一视频数据;或者丢掉所述第一压缩数据中的关键帧,并获得第二视频数据;所述生成模块304根据所述第一视频数据或者所述第二视频数据生成样本花屏图像。进而可以实现快速地生成花屏检测模型进行训练时所需要的大量花屏图像样本,以提高生成花屏图像的效率。
50.但是,在本技术的其它实施例中,服务器也可以与终端设备具有相似的功能,从而执行本技术实施例所提供的花屏图像的生成方法的方案。例如,用户利用终端设备(也可以是终端设备或)向服务器上传视频播放数据,所述获取模块301获取该视频播放数据,所述转换模块302对所述视频播放数据进行格式转换,得到第一压缩数据,所述处理模块303修改所述第一压缩数据的分辨率,并获取第一视频数据;或者丢掉所述第一压缩数据中的关键帧,并获得第二视频数据;对第二视频压缩数据进行转码,得到第二视频数据;所述生成模块304根据所述第一视频数据或者所述第二视频数据生成样本花屏图像,服务器将生成的所述样本花屏图像推送至终端设备。
51.在一种可能的实施例中,所述处理模块303修改所述第一压缩数据的分辨率,并获取第一视频数据,包括:所述处理模块303增大所述第一压缩数据的分辨率,得到第二压缩数据,并对所述第二压缩数据进行转码,得到所述第一视频数据。示例性地,当所述第一压缩数据的分辨率增大时,且所述分辨率增大的程度越大,所生成的所述样本花屏图像的花屏程度越大,即越有利于花屏的生成。
52.在又一种可能的实施例中,所述处理模块303丢掉所述第一压缩数据中的关键帧,并获得第二视频数据,包括:所述处理模块303确定所述第一压缩数据中的关键帧时间,丢掉在所述关键帧时间的预设范围内的数据帧,并获得第二视频数据。
53.示例性地,因为所述关键帧包含了第一压缩数据相关视频的全部信息,所述是对于所述第一压缩数据进行编码或解码影响非常大的数据帧,所述当所述处理模块303丢掉所述关键帧的时候,所述第二视频数据生成花屏的概率非常大,即非常有利于所述样本花屏图像的获取。
54.在还一种可能的实施例,所述生成模块304根据所述第一视频数据或者所述第二视频数据生成样本花屏图像,包括:播放所述第一视频数据或者所述第二视频数据,所述生成模块304在所述第一视频数据或者所述第二视频数据所播放的画面中截取视频截图,生成所述样本花屏图像。在本实施例中,通过所述生成模块304对第一视频数据或者所述第二视频数据的播放画面进行截取,可以很便利的获取所述样本花屏图像。
55.在再一种可能的实施例中,所述生成模块304根据所述第一视频数据或者所述第二视频数据生成所述样本花屏图像,包括:所述生成模块304根据所述第一视频数据或者所
述第二视频数据生成备选花屏图像;若所述备选花屏图像符合预设的花屏图像条件,则将所述备选花屏图像选定为所述样本花屏图像。在本实施例中,通过预先设定花屏图像条件,可以很容易的将符合条件的所述样本花屏图像筛选出来。
56.进一步地,所述若所述备选花屏图像符合预设的花屏图像条件,则将所述备选花屏图像选定为所述样本花屏图像,包括:所述生成模块304对所述第一压缩数据进行转码,得到第三视频数据;根据所述第三视频数据生成所述备选花屏图像对应的原始视频图像;比对所述原始视频图像与所述备选花屏图像;若所述原始视频图像与所述备选花屏图像之间的相似度小于预定阈值,则将所述备选花屏图像选定为所述目标花屏图像。在本实施例中,因为机器判断会存在一定的误差,所以只有将所述备选花屏图像与所述原始视频图像进行比较,才能获取最准确的判断结果。
57.本技术实施例提供了一种花屏检测模型的训练装置400,如图4所示,所述装置400包括:获取模块401、预处理模块402、训练模块403和验证模块404。
58.所述获取模块401用于获取所述原始视频图像和如上述任一实施例中所述的样本花屏图像,并建立数据集,将所述数据集分为训练集和验证集。所述预处理模块402用于对所述训练集中的图像进行归一化预处理。所述训练模块403用于获取神经网络训练模型,将所述训练集中的图像输入到所述神经网络训练模型中进行训练。所述验证模块404用于通过损失函数计算所述训练集中的图像的训练损失,并将所述训练损失进行反向传播对所述神经网络训练模型进行迭代更新,并当所述神经网络训练模型在验证集上的验证结果符合预设要求时,训练结束,得到训练好的花屏检测模型。
59.示例性地,当所述获取模块401获取到所述原始视频图像和所述样本花屏图像,可以给所述数据集中的图像进行分类,例如分为正常图像和花屏图像,分别给所述正常图像和所述花屏图像并加入“正常”和“花屏”的标签,并分别在所述训练集和所述验证集中放入数量合适的正常图像和花屏图像,来进行神经网络训练模型的训练,直到所述神经网络训练模型在验证集上的验证结果符合预设要求时,训练结束,得到训练好的花屏检测模型。
60.在本实施例中,所述获取模块401、所述预处理模块402、所述训练模块403和所述验证模块404可以通过硬件实现,也可以通过硬件执行相应的软件实现。
61.在一种可能的实施例中,所述预处理模块402对所述训练集中的图像进行归一化预处理,包括:所述预处理模块402对所述训练集中的图像进行旋转处理、缩放处理、剪切处理中的至少一种。在本实施例中:通过对所述训练集中的图像进行旋转处理、缩放处理或剪切处理,可以增强所述神经网络训练模型的训练效果,提高所述花屏检测模型检测的准确度。
62.当然为了提高所述花屏检测模型的准确度,在本技术的实施例还可以在所述验证模块404采用神经网络训练模型学习率逐渐降低的方式,对所述神经网络训练模型进行迭代更新,因为所述神经网络训练模型每更新一次都会得到更加接近所述花屏检测模型的模型,所述通过学习率逐渐缩减的方式对所述神经训练网络模型进行迭代更新,可以更快地得到训练好的花屏检测模型。
63.以上所述,仅为本技术实施例的具体实施方式,但本技术实施例的保护范围并不局限于此,任何在本技术实施例揭露的技术范围内的变化或替换,都应涵盖在本技术实施例的保护范围之内。因此,本技术实施例的保护范围应以该权利要求的保护范围为准。