一种视频数据的采样方法、装置、电子设备及存储介质
未命名
09-24
阅读:59
评论:0
1.本发明涉及数据处理技术领域,尤其涉及一种视频数据的采样方法、 装置、电子设备及存储介质。
背景技术:
2.深度学习算法所关注的视频基础任务主要有识别、定位、分割这几 种。在不同的任务和视频数据集中,可以是以一个较短的视频片段做一 个训练样本,标记标签;也可以是含有一整条未被切分的长视频,每条 长视频中含有多个小的样本单元,训练时会为每个小样本单元匹配一段 长的输入,不同样本的输入之间有重叠。通常在真实场景下采集的数据 集都会有类别长尾问题或数据分布不均的问题,主流解决办法是重采样, 就是指使用上采样和下采样策略,使得重采样后的样本均衡分布。数据 分布不均时模型总是遇见头部类样本,便会在损失函数的监督下不断提 高头部类权重参数,丧失对尾部类的学习能力,重采样可以直接消除头 部类的主宰效应。但重采样方法采样不当容易引起过拟合。
3.对于上采样算法,深度学习领域对图片数据的处理主要有直接复制、 图像数据增强和生成数据增广三种思路。直接复制顾名思义就是选取部 分尾部类的样本完全复制扩充,这种方法和对损失函数引入类别权重的 方法本质上完全一致,都是同样的数据输入会被计算两次损失函数,这 种方法并没有给模型带来更多的信息增益,限制了模型的泛化能力。图 像数据增广是指通过加噪声、翻转、剪裁等图像处理的方式尽可能让数 据集信息多样化地呈现,但当基础模型本身能力不够强时不能很好的泛 化到增广后的数据域,相当于引入噪声。
4.下采样算法其下采样仅限于从已有的样本池中做筛选,然而为长视 频中的小样本单元处理输入,本身所设计到的流媒体采样过程却没有被 兼顾。现有方法所筛选出的样本片段在原视频中的分布就没有被考虑进 来,可能造成一定的数据冗余。
技术实现要素:
5.本发明提供了一种视频数据的采样方法、装置、电子设备及存储介质, 以解决视频中各类型数据分布不均的问题。
6.根据本发明的一方面,提供了一种视频数据的采样方法,该方法包括:
7.获取待采样视频;
8.根据预设窗口长度生成当前滑动窗口,根据所述当前滑动窗口对所述待 采样视频进行数据采样;
9.当满足采样条件时,确定所述当前滑动窗口所对应数据帧的数据类型, 根据各所述数据帧的数据类型进行相应的窗口滑动,得到下一滑动窗口,并 进行数据采样,其中,各所述数据类型中存在头部类时,窗口滑动的步长为 第一当前滑动步长,各所述数据类型中不存在头部类时,窗口滑动的步长为 第二当前滑动步长,所述第一当前滑动步长大于所述第二当前滑动步长;
10.将所述下一滑动窗口作为新的当前滑动窗口并在满足所述采样条件时 返回执行数据帧的数据类型的确定步骤。
11.根据本发明的另一方面,提供了一种视频数据的采样装置,该装置包 括:
12.视频获取模块,用于获取待采样视频;
13.采样模块,用于根据预设窗口长度生成当前滑动窗口,根据所述当前滑 动窗口对所述待采样视频进行数据采样;
14.窗口滑动模块,用于当满足采样条件时,确定所述当前滑动窗口所对应 数据帧的数据类型,根据各所述数据帧的数据类型进行相应的窗口滑动,得 到下一滑动窗口,并进行数据采样,其中,各所述数据类型中存在头部类时, 窗口滑动的步长为第一当前滑动步长,各所述数据类型中不存在头部类时, 窗口滑动的步长为第二当前滑动步长,所述第一当前滑动步长大于所述第二 当前滑动步长;
15.返回模块,用于将所述下一滑动窗口作为新的当前滑动窗口并在满足 所述采样条件时返回执行数据帧的数据类型的确定步骤。
16.根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
17.至少一个处理器;以及
18.与所述至少一个处理器通信连接的存储器;其中,
19.所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述 计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执 行本发明任一实施例所述的视频数据的采样方法。
20.根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算 机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时 实现本发明任一实施例所述的视频数据的采样方法。
21.本发明实施例的技术方案,通过获取待采样视频;根据预设窗口长度生 成当前滑动窗口,根据所述当前滑动窗口对所述待采样视频进行数据采样; 当满足采样条件时,确定所述当前滑动窗口所对应数据帧的数据类型,根据 各所述数据帧的数据类型进行相应的窗口滑动,得到下一滑动窗口,并进行 数据采样,其中,各所述数据类型中存在头部类时,窗口滑动的步长为第一 当前滑动步长,各所述数据类型中不存在头部类时,窗口滑动的步长为第二 当前滑动步长,第一当前滑动步长大于第二当前滑动步长;将所述下一滑动 窗口作为新的当前滑动窗口并在满足所述采样条件时返回执行数据帧的数据 类型的确定步骤。解决了视频中长尾问题和数据分布不均的问题,通过采用 滑动窗口对待采样视频进行数据采样,在采样后根据当前滑动窗口对应的各 数据帧的数据类型判断采用何种方式进行窗口滑动,在存在头部类时,采用 大步长进行窗口滑动,在不存在头部类时,采用小步长进行窗口滑动,针对 不同数据类型的数据帧采用不同步长进行窗口滑动及采样,降低长尾影响。 由于数据采样根据滑动窗口进行,因此可以通过不同的数据类型控制窗口滑 动,进而实现对数据采集频率的控制,通过控制滑动窗口的长度和滑动步长 实现数据上采样或下采样,使得采样后的数据均衡分布,并且采样过程不会 引入噪声,也不会造成数据冗余,提高数据处理效率和准确率,降低数据分 布不均所带来的影响。
22.应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键 或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下 的说明书而变得容易理
解。
附图说明
23.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述 中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅 是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性 劳动的前提下,还可以根据这些附图获得其他的附图。
24.图1是根据本发明实施例一提供的一种视频数据的采样方法的流程图;
25.图2是根据本发明实施例二提供的一种视频数据的采样方法的流程图;
26.图3是根据本发明实施例二提供的一种数据采样的实现示例图;
27.图4是根据本发明实施例二提供的一种采样结果比对展示图;
28.图5是根据本发明实施例三提供的一种视频数据的采样装置的结构示 意图;
29.图6是实现本发明实施例四提供的视频数据的采样方法的电子设备的 结构示意图。
具体实施方式
30.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明 实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述, 显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施 例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动 前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
31.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“目 标”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。 应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明 的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术 语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含, 例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限 于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这 些过程、方法、产品或设备固有的其它步骤或单元。
32.实施例一
33.图1为本发明实施例一提供了一种视频数据的采样方法的流程图,本 实施例可适用于视频中数据分布不均对数据进行采样的情况,该方法可以 由视频数据的采样装置来执行,该视频数据的采样装置可以采用硬件和/ 或软件的形式实现,该视频数据的采样装置可配置于计算机设备中。如图 1所示,该方法包括:
34.s101、获取待采样视频。
35.在本实施例中,待采样视频具体可以理解为具有采样需求的视频,待采 样视频可以由图像采集装置采集,例如,摄像机;待采样视频可以是在任意 环境下拍摄的视频,例如,在停车场安装的摄像头采集停车场的停车信息, 为自动化分配车位提供技术支持;或者,用户在室内安装摄像头采集动作, 以便智能家居设备根据用户动作为用户提供相应服务,等等。
36.本技术的视频数据采样方法可以对任意类型的视频数据进行采样,以包 含动作的视频数据为例,视频数据中的长尾分布现象会导致在进行动作预测 时,训练得到的模型精度较差,无法准确预测动作。其中,长尾分布是指深 度学习场景下的长尾分布,通常是指数据集类别中少数类占据了绝大多数样 本量,而占有极少样本数的类别,类别数却又很多。因此当画出一条样本数
‑ꢀ
类别的分布曲线时,就拖出了一条长尾巴。由于类别数众多,而少样本的类 又缺乏足够的样本支撑训练,就会导致模型分类精度不佳,或者倾向于分到 头部类。
37.s102、根据预设窗口长度生成当前滑动窗口,根据当前滑动窗口对待采 样视频进行数据采样。
38.在本实施例中,预设窗口长度具体可以理解为预先设定的滑动窗口的长 度,为算法每次处理的基本单元;当前滑动窗口具体可以理解为当前进行采 样的滑动窗口。滑动窗口由于需要进行滑动,因此,不同数据采样时刻的滑 动窗口的位置可能不同,每一数据采样时刻均具有与之对应的当前滑动窗口。。
39.具体的,预先设置窗口长度,预设窗口长度为模型预测任务所要求的每 个样本单元输入长度,根据实际工程应用需求预先设置。根据预设窗口长度 生成相应长度的当前滑动窗口,将当前滑动窗口的开始位置与待采样视频的 首帧数据帧对齐,根据当前滑动窗口的长度,即预设窗口长度在待采样视频 上截取数据帧,对截取到的数据帧进行数据采样。
40.s103、当满足采样条件时,确定当前滑动窗口所对应数据帧的数据类型, 根据各数据帧的数据类型进行相应的窗口滑动,得到下一滑动窗口,并进行 数据采样,其中,各数据类型中存在头部类时,窗口滑动的步长为第一当前 滑动步长,各数据类型中不存在头部类时,窗口滑动的步长为第二当前滑动 步长,第一当前滑动步长大于第二当前滑动步长。
41.在本实施例中,采样条件具体可以理解为判断是否对待采样视频进行采 样的条件,不满足采样条件时,此时结束对待采样视频的采样。数据类型具 体可以理解为数据帧的样本类型,例如,背景类、头部类和尾部类。其中, 背景类代表数据帧为无实际意义的背景片段;头部类代表数据帧为样本数量 较多的片段;尾部类代表数据帧为样本数量较少的片段。第一当前滑动步长 具体可以理解为滑动窗口在存在头部类数据帧时进行滑动时的步长;第二当 前滑动步长具体可以理解为滑动窗口在不存在头部类数据帧时进行滑动时的 步长,第一当前滑动窗口和第二当前滑动窗口的大小根据需求设置,第一当 前滑动步长大于第二当前滑动步长。
42.具体的,确定当前滑动窗口在待采样视频中对应的各数据帧,数据帧的 数量与当前滑动窗口的长度相关。确定每个数据帧的数据类型,通常待采样 视频中的各数据帧的数据类型预先标注,也可以通过算法或模型对数据帧进 行分析确定其对应的数据类型。在确定各数据帧的数据类型后,根据数据类 型采取相应的规则进行窗口滑动。当数据类型中包括头部类时,此时当前滑 动窗口中的各数据帧存在样本数量较多的数据帧,此时为减少高频数据帧的 采样,可以采用较大的第一当前滑动步长控制滑动窗口向前滑动,得到下一 滑动窗口;当数据类型中不包括头部类时,此时当前滑动窗口中的各数据帧 均为样本数量较少的数据帧,此时为增加低频数据帧的采样,可以采用较小 的第二当前滑动步长控制滑动窗口向前滑动,得到下一滑动窗口。在得到下 一滑动窗口后,对下一滑动窗口在待采样视频中对应的数据帧进行数据采样。 采样方式可以采用s102中的数据采样方式。在进行窗
口滑动时,还可以根据 各数据帧的数据类型调整滑动窗口的窗口长度。
43.s104、将下一滑动窗口作为新的当前滑动窗口,返回执行s103。
44.将下一滑动窗口作为新的当前滑动窗口,重新判断是否满足采样条件, 在满足采样条件的情况下,重复进行窗口滑动操作。
45.作为本实施例的一个可选实施例,本可选实施例进一步对采样条件进行 优化,采样条件包括:当前滑动窗口的末端不超过待采样视频中的最后一帧 数据帧。
46.判断当前滑动窗口的末端是否超过待采样视频中的最后一帧数据帧,即 判断待采样视频中是否存在数据帧未被执行采样处理。当当前滑动窗口中包 括待采样视频中的最后一帧数据帧,此时待采样视频中的所有数据帧均被采 样处理,结束对待采样视频的数据采样。当当前滑动窗口的末端不超过待采 样视频中的最后一帧数据帧,此时待采样视频中存在数据帧未被采样处理, 满足采样条件,重复执行确定当前滑动窗口所对应数据帧的数据类型,继续 进行窗口滑动,保证所有视频帧均被处理。
47.在本技术实施例中,判定当前滑动窗口末端是否超过最后一帧数据帧, 若否,继续向右滑动,得到下一滑动窗口,下一滑动窗口的末端如果超过最 后一帧数据帧,此时的下一滑动窗口对应的数据帧的数量小于预设窗口长度, 此时也可以放弃此滑动窗口的采样,也可以正常采样。如果按照相同的规则 进行采样,得到的数据帧的数量少于其他的当前滑动窗口(当前滑动窗口末 端未超过最后一帧数据帧)采样得到数据帧的数量,可以改变采样规则保证 采集的数据帧的数量一致。因此,在对滑动窗口进行数据采样时,可以先判 断滑动窗口内的数据帧的数量。
48.本发明实施例提供了一种视频数据的采样方法,通过获取待采样视频; 根据预设窗口长度生成当前滑动窗口,根据所述当前滑动窗口对所述待采 样视频进行数据采样;当满足采样条件时,确定所述当前滑动窗口所对应 数据帧的数据类型,根据各所述数据帧的数据类型进行相应的窗口滑动, 得到下一滑动窗口,并进行数据采样,其中,各所述数据类型中存在头部 类时,窗口滑动的步长为第一当前滑动步长,各所述数据类型中不存在头 部类时,窗口滑动的步长为第二当前滑动步长,第一当前滑动步长大于所 述第二当前滑动步长;将下一滑动窗口作为新的当前滑动窗口并在满足所 述采样条件时返回执行所述数据帧的数据类型的确定步骤。解决了视频中 长尾问题和数据分布不均的问题,通过采用滑动窗口对待采样视频进行数 据采样,在采样后根据当前滑动窗口对应的各数据帧的数据类型判断采用 何种方式进行窗口滑动,在存在头部类时,采用大步长的第一当前滑动步 长进行窗口滑动,在不存在头部类时,采用小步长的第二当前滑动步长进 行窗口滑动,针对不同数据类型的数据帧采用不同步长进行窗口滑动及采 样,降低长尾影响。由于数据采样根据滑动窗口进行,因此可以通过不同 的数据类型控制窗口滑动,进而实现对数据采集频率的控制,通过控制滑 动窗口的长度和滑动步长实现数据上采样或下采样,使得采样后的数据均 衡分布,并且采样过程不会引入噪声,也不会造成数据冗余,提高数据处 理效率和准确率,降低数据分布不均所带来的影响。
49.实施例二
50.图2为本发明实施例二提供的一种视频数据的采样方法的流程图,本实 施例在上述实施例的基础上进行细化,将所述根据所述当前滑动窗口对所述 待采样视频进行数据采样细化为:确定所述当前滑动窗口在所述待采样视频 中对应的数据帧;根据预设采样间
隔对各所述数据帧进行数据采样。如图2 所示,该方法包括:
51.s201、获取待采样视频。
52.s202、根据预设窗口长度生成当前滑动窗口。
53.s203、确定当前滑动窗口在待采样视频中对应的数据帧。
54.具体的,通常在第一次采样时,将当前滑动窗口的起始点与待采样视 频的第一帧数据帧对齐,若待采样视频在采样时不从第一帧数据帧开始, 则将当前滑动窗口的起始点与待采样视频开始进行采样的数据帧对齐。根 据预设窗口长度确定当前滑动窗口的结束点,将结束点与待采样视频中的 数据帧对齐,确定起始点和结束点对应的两帧数据帧之间的所有数据帧, 即当前滑动窗口在待采样视频中对应的数据帧。示例性的,预设窗口长度 为600帧,待采样视频包括10000帧的数据帧,以对待采样视频从第一帧 数据帧开始采样为例,当前滑动窗口在待采样视频中对应的数据帧则为第 1-600帧的数据帧。
55.s204、根据预设采样间隔对各数据帧进行数据采样。
56.在本实施例中,预设采样间隔具体可以理解为预先设置的采样间隔, 可以是以秒作为采样间隔进行采样,例如,每3s采样一次,也可以是以 帧作为采样间隔进行采样,例如,每10帧采样一次。
57.具体的,预先根据实际工程需求设置预设采样间隔,按照预设采样间 隔对各数据帧进行数据采样,采样过程可以是均匀采样,也可以是非均匀 采样。若采用非均匀采样的方式进行采样,则预设采样间隔可以是多个采 样间隔,依次按照预设采样间隔进行采样;或者将预设采样间隔作为起始 间隔,在此基础上调整采样间隔进行采样,例如,按照一定的步长依次在 当前的采样间隔上增加,实现对采样间隔的调整,如,预设采样间隔为2, 步长为1,则采样间隔依次为2、3、4、5
…
。
58.s205、当满足采样条件时,确定当前滑动窗口所对应数据帧的数据类 型。
59.作为本实施例的一个可选实施例,本可选实施例进一步优化包括了数 据类型包括背景类、头部类和尾部类。
60.s206、判断各数据帧的数据类型中是否存在头部类,若是,执行s207; 若否,执行s209。
61.判断当前滑动窗口所对应的各数据帧的数据类型中是否包含头部类, 其中,数据类型为头部类的数据帧可以在任意位置,第一帧、中间帧、最 后一帧均可以。如果各数据帧的数据类型中存在头部类,此时的当前滑动 窗口中的各数据帧存在样本数量较多的数据帧,执行s207-s208进行窗口 滑动;当数据类型中不包括头部类时,此时当前滑动窗口中的各数据帧均 为样本数量较少的数据帧,执行s209-s210进行窗口滑动。
62.s207、确定当前滑动窗口所对应结束帧。
63.确定当前滑动窗口的结束位置在待采样视频中对应的数据帧,将此数 据帧作为结束帧。确定结束帧的目的是为了确定下一滑动窗口的起始位置。
64.作为本实施例的一个可选实施例,本可选实施例进一步将确定当前滑动 窗口所对应结束帧,包括:
65.a、确定当前滑动窗口的窗口结束位置。
66.在本实施例中,窗口结束位置具体可以理解为当前滑动窗口的尾端在待 采样视频中对应的位置,例如,第600帧。
67.b、确定窗口结束位置在待采样视频中对应的目标数据帧。
68.在本实施例中,目标数据帧具体可以理解为窗口结束位置所对应的数据 帧,目标数据帧为待采样数据帧中的一帧数据帧。根据窗口结束位置确定当 前滑动窗口的尾端在待采样视频中对应的目标数据帧。例如窗口结束位置为 第600帧,则待采样视频中的第600帧数据帧为目标数据帧。
69.c、将目标数据帧确定为结束帧。
70.目标数据帧则为当前滑动窗口对应的结束帧。
71.s208、将结束帧的下一帧作为下一滑动窗口的起始帧,按照预设滑动 步长向右滑动,得到下一滑动窗口,预设滑动步长与当前滑动窗口的长度 之和等于第一当前滑动步长。
72.在本实施例中,预设滑动步长具体可以理解为滑动窗口在存在头部类 数据帧时进行滑动时的步长。预设滑动步长可以预先设置并存储,在进行 窗口滑动时,从相应的存储空间获取。预设滑动步长可以是0、600帧等。
73.需要知道的是,本技术中以数据帧按照时间顺序从左向右排列为例, 时间戳小的数据帧在左,时间戳大的数据帧在右,因此本技术实施例中的 向右滑动是指按照时间顺序向后发生的数据帧移动。
74.具体的,将结束帧的下一帧作为下一滑动窗口的起点,控制当前滑动窗 口向右滑动,得到下一滑动窗口。当预设滑动步长为0时,下一滑动窗口的 起始帧与当前滑动窗口的结束帧相邻,此时,下一滑动窗口相当于当前滑动 窗口滑动了预设窗口长度得到。当预设滑动步长大于0时,下一滑动窗口与 当前滑动窗口之间存在一定数据的数据帧未被采集到。例如,当前滑动窗口 的位置为1-600帧,预设滑动步长为10,将601帧作为下一滑动窗口的起始 帧,向右滑动10帧,则得到的下一滑动窗口的位置为611-1210帧。此时第601-610帧数据帧不在任意一个滑动窗口中,实现对头部类数据帧的粗采样。 由于数据帧的数据类型中存在头部类时,以当前滑动窗口的结束帧的下一帧 作为下一滑动窗口的起始帧,因此,第一当前滑动步长等于预设滑动步长与 所述当前滑动窗口的长度之和,即对当前滑动窗口中的任意数据帧均不再次 进行采样。
75.在本技术实施例中,根据各所述数据帧的数据类型进行相应的窗口滑动, 得到下一滑动窗口的实现方式还可以是:如果各所述数据帧的数据类型中存 在头部类,按照第一当前滑动步长向右滑动,得到下一滑动窗口。采用此种 方式进行窗口滑动时,若保证当前滑动窗口中的任意数据帧均不再次进行采 样,第一当前滑动步长需大于或等于当前滑动窗口的长度。
76.s209、确定第二当前滑动步长。
77.在本实施例中,第二当前滑动步长具体可以理解为滑动窗口在不存在 头部类数据帧时进行滑动时的步长。第二当前滑动步长同样可以预先设置 并存储,在进行窗口滑动时,从相应的存储空间获取。第二当前滑动步长 可以是100帧、200帧等,第二当前滑动步长通常小于当前滑动窗口的长 度。第二当前滑动步长与第一当前滑动步长可以动态调整。
78.s210、将当前滑动窗口按照第二当前滑动步长向右滑动,得到下一滑 动窗口。
79.将当前滑动窗口向右滑动第二当前滑动步长,得到下一滑动窗口。例 如,当前滑动窗口的位置为1-600帧,第二当前滑动步长为200,下一滑 动窗口的位置为第201-800帧。
80.s211、进行数据采样。
81.根据下一滑动窗口进行数据采样,采样方式与上述的数据采样方式相 同。
82.s212、将下一滑动窗口作为新的当前滑动窗口,执行s205。
83.作为本实施例的一个可选实施例,本可选实施例进一步优化包括了根 据采样后的各数据帧对神经网络模型进行训练。
84.在本实施例中,神经网络模型可以是任意类型的深度学习模型,可以 用于预测动作、预测类别等。采样后的各数据帧可形成序列并作为训练样 本,或者单独作为训练样本,用于神经网络模型的训练。在数据不均时可 以有效降低长尾影响,用较少的训练样本同时提升模型精度,从而实现提 升训练的质量和精度。
85.示例性的,图3为本发明实施例提供的一种数据采样的实现示例图, 图中待采样视频31中的数据帧包括三种数据类型,即背景类、头部类和 尾部类。通过不同的颜色对背景类和非背景类(头部类和尾部类)进行区 分,其中,头部类和尾部类进行标注(例如,动作预测时进行动作标注), 尾部带虚竖线的数据帧表示数据帧的数据类型为头部类。以当前滑动窗口 32a的起始位置为待采样视频31的第一帧数据帧为例,以预设窗口长度 =600帧,第一当前滑动步长=0帧,第二当前滑动步长=200帧为例,且第 一当前滑动步长与第二当前滑动步长不变。当前滑动窗口32a中的各数据 帧的数据类型不包括头部类,因此,在完成数据采样后,按照第二当前滑 动步长向右滑动200帧,得到下一滑动窗口32b并进行数据采样。将下一 滑动窗口32b作为新的当前滑动窗口32b,当前滑动窗口32b的末端不超 过待采样视频中的最后一帧数据帧,确定当前滑动窗口32b中各数据帧的 数据类型不包括头部类,向右滑动200帧,得到下一滑动窗口32c,并进 行数据采样。将下一滑动窗口32c作为新的当前滑动窗口32c,当前滑动 窗口32c的末端不超过待采样视频中的最后一帧数据帧,确定当前滑动窗 口32c中各数据帧的数据类型包括头部类,将当前滑动窗口32c的结束帧 的下一帧作为下一滑动窗口32d的起始帧,按照第一当前滑动步长向右滑 动0帧,得到下一滑动窗口32d。当前滑动窗口32c向右滑动600帧也可 以得到当前滑动窗口32d。按照上述方式依次向右滑动,得到第二滑动窗 口32e
…
。当前滑动窗口中包括待采样视频中的最后一帧数据帧时,当前 滑动窗口的窗口结束位置存在超过最后一帧数据帧的帧号的情况,可以直 接舍弃此当前滑动窗口,不进行数据采样,也可以进行数据采样。
86.示例性的,图4提供了一种采样结果比对展示图。如图4所示,横轴 为样本的第i类别,i=0,1,2
……
3500;纵轴为样本数量。曲线1为采样 前训练集各个类别的样本数分布,可以明显看到其为一个典型的长尾分布, 类别数多达三千余种,头部类的样本数上千,但尾部类却有两千余类样本 数只有个位数。曲线3为本技术所提供的视频数据的采样结果,与x轴的 交点更加靠前,因此保持了原训练集大体的分布,但长尾趋势有所减轻。 曲线2表示现有的普通阈值随机采样结果,尾部曲线与曲线1完全重叠, 头部类占比仍然较大。
87.本发明实施例提供了一种视频数据的采样方法,解决了视频中长尾问 题和数据分布不均的问题,通过采用滑动窗口对待采样视频进行数据采样, 在采样后根据当前滑动窗口对应的各数据帧的数据类型判断采用何种方 式进行窗口滑动,针对不同数据类型的数据帧采用不同步长进行窗口滑动 及采样,在存在头部类时,采用大步长进行窗口滑动,在不存在头部类时, 采用小步长进行窗口滑动,降低长尾影响。根据各数据帧的数据类型确定 滑动方式,并进行相应的窗口滑动,对头部类数据帧采用大步长实现下采 样效果,对
尾部类和背景类采用小步长实现下采样效果。滑动步长可以调 整,实现灵活采样。下采样效果还可以通过大窗口实现,同理,上采样效 果可以通过小窗口实现。通过控制滑动窗口的长度和滑动步长实现数据上 采样或下采样,使得采样后的数据均衡分布,并且采样过程不会引入噪声, 也不会造成数据冗余,提高数据处理效率和准确率,降低数据分布不均所 带来的影响。
88.实施例三
89.图5为本发明实施例三提供的一种视频数据的采样装置的结构示意图。 如图5所示,该装置包括:视频获取模块41、采样模块42、窗口滑动模 块43和返回模块44。
90.视频获取模块41,用于获取待采样视频;
91.采样模块42,用于根据预设窗口长度生成当前滑动窗口,根据所述当前 滑动窗口对所述待采样视频进行数据采样;
92.窗口滑动模块43,用于确定所述当前滑动窗口所对应数据帧的数据类型, 根据各所述数据帧的数据类型进行相应的窗口滑动,得到下一滑动窗口,并 进行数据采样,其中,各所述数据类型中存在头部类时,窗口滑动的步长为 第一当前滑动步长,各所述数据类型中不存在头部类时,窗口滑动的步长为 第二当前滑动步长,所述第一当前滑动步长大于所述第二当前滑动步长;
93.返回模块44,用于将所述下一滑动窗口作为新的当前滑动窗口并在满 足所述采样条件时返回执行数据帧的数据类型的确定步骤。
94.本发明实施例提供了一种视频数据的采样装置,解决了视频中长尾问 题和数据分布不均的问题,通过采用滑动窗口对待采样视频进行数据采样, 在采样后根据当前滑动窗口对应的各数据帧的数据类型判断采用何种方 式进行窗口滑动,针对不同数据类型的数据帧采用不同步长进行窗口滑动 及采样,在存在头部类时,采用大步长进行窗口滑动,在不存在头部类时, 采用小步长进行窗口滑动,降低长尾影响。由于数据采样根据滑动窗口进 行,因此可以通过不同的数据类型控制窗口滑动,进而实现对数据采集频 率的控制,通过控制滑动窗口的长度和滑动步长实现数据上采样或下采样, 使得采样后的数据均衡分布,并且采样过程不会引入噪声,也不会造成数 据冗余,提高数据处理效率和准确率,降低数据分布不均所带来的影响。
95.可选的,采样模块42包括:
96.数据帧确定单元,用于确定所述当前滑动窗口在所述待采样视频中对应 的数据帧;
97.数据采样单元,用于根据预设采样间隔对各所述数据帧进行数据采样。
98.可选的,所述采样条件包括:当前滑动窗口的末端不超过所述待采样 视频中的最后一帧数据帧。
99.可选的,窗口滑动模块43包括:
100.结束帧确定单元,用于如果各所述数据帧的数据类型中存在头部类,确 定所述当前滑动窗口所对应结束帧;
101.第一滑动单元,用于将所述结束帧的下一帧作为下一滑动窗口的起始 帧,按照预设滑动步长向右滑动,得到下一滑动窗口,所述预设滑动步长 与所述当前滑动窗口的长度之和等于第一当前滑动步长。
102.可选的,结束帧确定单元,具体用于确定所述当前滑动窗口的窗口结束 位置;确定所述窗口结束位置在所述待采样视频中对应的目标数据帧;将所 述目标数据帧确定为结束帧。
103.可选的,窗口滑动模块43包括:
104.步长确定单元,用于如果各所述数据帧的数据类型中不存在头部类,确 定第二当前滑动步长;
105.第二滑动单元,用于将所述当前滑动窗口按照所述第二当前滑动步长向 右滑动,得到下一滑动窗口。
106.可选的,该装置还包括:
107.训练模块,用于根据采样后的各数据帧对神经网络模型进行训练。
108.本发明实施例所提供的视频数据的采样装置可执行本发明任意实施例 所提供的视频数据的采样方法,具备执行方法相应的功能模块和有益效果。
109.实施例四
110.图6示出了可以用来实施本发明的实施例的电子设备60的结构示意图。 电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计 算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和 其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个 人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等) 和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们 的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发 明的实现。
111.如图6所示,电子设备60包括至少一个处理器61,以及与至少一个 处理器61通信连接的存储器,如只读存储器(rom)62、随机访问存储器 (ram)63等,其中,存储器存储有可被至少一个处理器执行的计算机程 序,处理器61可以根据存储在只读存储器(rom)62中的计算机程序或者 从存储单元68加载到随机访问存储器(ram)63中的计算机程序,来执行 各种适当的动作和处理。在ram 63中,还可存储电子设备60操作所需的 各种程序和数据。处理器61、rom 62以及ram 63通过总线64彼此相连。 输入/输出(i/o)接口65也连接至总线64。
112.电子设备60中的多个部件连接至i/o接口65,包括:输入单元66, 例如键盘、鼠标等;输出单元67,例如各种类型的显示器、扬声器等;存 储单元68,例如磁盘、光盘等;以及通信单元69,例如网卡、调制解调 器、无线通信收发机等。通信单元69允许电子设备60通过诸如因特网的 计算机网络和/或各种电信网络与其他设备交换信息/数据。
113.处理器61可以是各种具有处理和计算能力的通用和/或专用处理组件。 处理器61的一些示例包括但不限于中央处理单元(cpu)、图形处理单元 (gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型 算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制 器、微控制器等。处理器61执行上文所描述的各个方法和处理,例如视 频数据的采样方法。
114.在一些实施例中,视频数据的采样方法可被实现为计算机程序,其被 有形地包含于计算机可读存储介质,例如存储单元68。在一些实施例中, 计算机程序的部分或者全部可以经由rom 62和/或通信单元69而被载入 和/或安装到电子设备60上。当计算机程序加载到ram 63并由处理器61 执行时,可以执行上文描述的视频数据的采样方法的一个或多
个步骤。备 选地,在其他实施例中,处理器61可以通过其他任何适当的方式(例如, 借助于固件)而被配置为执行视频数据的采样方法。
115.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系 统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、 专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设 备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些 各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者 多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/ 或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储 系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将 数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出 装置。
116.用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的 任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或 其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使 流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机 器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且 部分地在远程机器上执行或完全在远程机器或服务器上执行。
117.在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可 以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装 置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限 于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设 备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是 机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多 个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只 读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光 纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、 或上述内容的任何合适组合。
118.为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技 术,该电子设备具有:用于向用户显示信息的显示装置(例如,crt(阴 极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例 如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供 给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供 给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、 或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触 觉输入)来接收来自用户的输入。
119.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如, 作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、 或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器 的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处 描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部 件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质 的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络 的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
120.计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并 且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有 客户端-服务器关系的计
算机程序来产生客户端和服务器的关系。服务器 可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的 一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大, 业务扩展性弱的缺陷。
121.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或 删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执 行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果, 本文在此不进行限制。
122.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术 人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、 子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和 改进等,均应包含在本发明保护范围之内。
技术特征:
1.一种视频数据的采样方法,其特征在于,包括:获取待采样视频;根据预设窗口长度生成当前滑动窗口,根据所述当前滑动窗口对所述待采样视频进行数据采样;当满足采样条件时,确定所述当前滑动窗口所对应数据帧的数据类型,根据各所述数据帧的数据类型进行相应的窗口滑动,得到下一滑动窗口,并进行数据采样,其中,各所述数据类型中存在头部类时,窗口滑动的步长为第一当前滑动步长,各所述数据类型中不存在头部类时,窗口滑动的步长为第二当前滑动步长,所述第一当前滑动步长大于所述第二当前滑动步长;将所述下一滑动窗口作为新的当前滑动窗口并在满足所述采样条件时返回执行数据帧的数据类型的确定步骤。2.根据权利要求1所述的方法,其特征在于,所述根据所述当前滑动窗口对所述待采样视频进行数据采样,包括:确定所述当前滑动窗口在所述待采样视频中对应的数据帧;根据预设采样间隔对各所述数据帧进行数据采样。3.根据权利要求1所述的方法,其特征在于,所述采样条件包括:当前滑动窗口的末端不超过所述待采样视频中的最后一帧数据帧。4.根据权利要求1所述的方法,其特征在于,所述根据各所述数据帧的数据类型进行相应的窗口滑动,得到下一滑动窗口,包括:如果各所述数据帧的数据类型中存在头部类,确定所述当前滑动窗口所对应结束帧;将所述结束帧的下一帧作为下一滑动窗口的起始帧,按照预设滑动步长向右滑动,得到下一滑动窗口,所述预设滑动步长与所述当前滑动窗口的长度之和等于第一当前滑动步长。5.根据权利要求4所述的方法,其特征在于,所述确定所述当前滑动窗口所对应结束帧,包括:确定所述当前滑动窗口的窗口结束位置;确定所述窗口结束位置在所述待采样视频中对应的目标数据帧;将所述目标数据帧确定为结束帧。6.根据权利要求1所述的方法,其特征在于,所述根据各所述数据帧的数据类型进行相应的窗口滑动,得到下一滑动窗口,包括:如果各所述数据帧的数据类型中不存在头部类,确定第二当前滑动步长;将所述当前滑动窗口按照所述第二当前滑动步长向右滑动,得到下一滑动窗口。7.根据权利要求1-6任一项所述的方法,其特征在于,还包括:根据采样后的各数据帧对神经网络模型进行训练。8.一种视频数据的采样装置,其特征在于,包括:视频获取模块,用于获取待采样视频;采样模块,用于根据预设窗口长度生成当前滑动窗口,根据所述当前滑动窗口对所述待采样视频进行数据采样;窗口滑动模块,用于当满足采样条件时,确定所述当前滑动窗口所对应数据帧的数据
类型,根据各所述数据帧的数据类型进行相应的窗口滑动,得到下一滑动窗口,并进行数据采样,其中,各所述数据类型中存在头部类时,窗口滑动的步长为第一当前滑动步长,各所述数据类型中不存在头部类时,窗口滑动的步长为第二当前滑动步长,所述第一当前滑动步长大于所述第二当前滑动步长;返回模块,用于将所述下一滑动窗口作为新的当前滑动窗口并在满足所述采样条件时返回执行数据帧的数据类型的确定步骤。9.一种电子设备,其特征在于,所述电子设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的视频数据的采样方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的视频数据的采样方法。
技术总结
本发明公开了一种视频数据的采样方法、装置、电子设备及存储介质,该方法包括:获取待采样视频;根据预设窗口长度生成当前滑动窗口,根据当前滑动窗口对待采样视频进行数据采样;当满足采样条件时,确定当前滑动窗口所对应数据帧的数据类型,根据各数据帧的数据类型进行相应的窗口滑动,得到下一滑动窗口,并进行数据采样,其中,各数据类型中存在头部类时,窗口滑动的步长为第一当前滑动步长,各数据类型中不存在头部类时,窗口滑动的步长为第二当前滑动步长,第一当前滑动步长大于所述第二当前滑动步长;将下一滑动窗口作为新的当前滑动窗口并在满足采样条件时返回执行数据帧的数据类型的确定步骤。解决了视频中长尾问题和数据分布不均的问题。布不均的问题。布不均的问题。
技术研发人员:周林 董超 乔宇 吕子钰
受保护的技术使用者:中国科学院深圳先进技术研究院
技术研发日:2022.03.18
技术公布日:2023/9/22
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:扫描建模方法与电子设备与流程 下一篇:一种水下原位图像的目标检测方法和系统