视频处理方法及装置、电子设备及计算机可读存储介质与流程

文档序号:30070255发布日期:2022-05-18 01:54阅读:58来源:国知局
视频处理方法及装置、电子设备及计算机可读存储介质与流程

1.本技术涉及计算机视觉技术领域,尤其涉及一种视频处理方法及装置、电子设备及计算机可读存储介质。


背景技术:

2.随着计算视觉技术的快速发展,各种具备不同功能的计算机视觉模型应运而生,例如,电子设备使用计算机视觉模型对视频进行处理,可确定视频中是否有越界事件发生。
3.由于在使用计算机视觉模型对视频进行处理之前,需要对计算机视觉模型进行测试,进而可依据测试结果确定计算机视觉模型的性能。因为判断视频中是否有越界事件发生的依据是目标对象是否穿越越界线,所以如何从视频中将越界线标注出来对测试计算机视觉模型的性能具有非常重要的意义。


技术实现要素:

4.本技术提供一种视频处理方法及装置、电子设备及计算机可读存储介质。
5.第一方面,提供了一种视频处理方法,所述方法包括:
6.获取测试视频;
7.对所述测试视频的各帧图像进行对象检测,得到所述各帧图像的对象的检测框;
8.从所述测试视频中确定与任一所述检测框相交的一条或多条的目标线段;
9.根据所述目标线段,以及与所述目标线段相交的所述检测框,确定所述对象的第一移动方向;
10.根据所述测试视频、所述目标线段和所述第一移动方向,生成测试用例。
11.结合本技术任一实施方式,所述根据所述目标线段,以及与所述目标线段相交的所述检测框,确定所述对象的第一移动方向,包括:
12.确定所述目标线段所在直线将相交的所述检测框划分的区域的面积;
13.根据至少两帧图像中的所述区域的面积,确定所述对象的第一移动方向。
14.结合本技术任一实施方式,确定所述目标线段所在直线将相交的所述检测框划分的区域的面积,包括:
15.在所述目标线段与所述检测框存在两个交点的情况下,确定所述目标线段将相交的所述检测框划分的区域的面积;
16.在所述目标线段与所述检测框存在一个交点的情况下,延长所述目标线段,使得延长后的所述目标线段与所述检测框存在两个交点;
17.确定延长后的所述目标线段将相交的所述检测框划分的区域的面积。
18.结合本技术任一实施方式,所述至少两帧图像包括第一图像和第二图像;所述第一图像中的所述检测框所包围的区域被所述目标线段所在的直线分为第一区域和第二区域,所述第二图像中的所述检测框所包围的区域被所述目标线段所在的直线分为第三区域和第四区域,且所述第一区域和所述第三区域均位于所述线段所在的直线的第一侧,所述
第二区域和所述第四区域位于所述目标线段所在的直线的第二侧,所述第一侧和所述第二侧不同;
19.所述确定所述目标线段所在直线将相交的所述检测框划分的区域的面积,包括:
20.确定所述第一区域的第一面积和所述第三区域的第二面积;
21.根据至少两帧图像中的所述区域的面积,确定所述对象的第一移动方向,包括:
22.在所述第一图像的时间早于所述第二图像的时间,且所述第一面积大于所述第二面积的情况下,确定所述第一移动方向为所述对象从所述第二侧向所述第一侧移动;
23.在所述第一图像的时间晚于所述第二图像的时间,且所述第一面积大于所述第二面积的情况下,确定所述第一移动方向为所述对象从所述第一侧向所述第二侧移动。
24.结合本技术任一实施方式,所述方法还包括:
25.获取用于检测越界事件的待测试模型;
26.将所述测试用例输入待测试模型,获取所述待测试模型输出的跨越检测结果。
27.结合本技术任一实施方式,所述跨越检测结果包括所述对象的第二移动方向;所述方法还包括:
28.依据所述第一移动方向和所述第二移动方向,得到移动方向测试结果;
29.依据所述移动方向测试结果,得到所述待测试模型的测试结果。
30.结合本技术任一实施方式,所述跨越检测结果包括所述对象跨越所述目标线段,所述方法还包括:
31.获取所述测试视频中包含所述对象跨越所述目标线段的一张或一张以上图像的第一图像帧序列号;
32.依据所述跨越检测结果,确定所述测试视频中包含所述对象跨越所述目标线段的一张或一张以上图像的第二图像帧序列号;
33.依据所述第一图像帧序列号和所述第二图像帧序列号的相似度,得到相似度结果;
34.依据所述相似度结果,得到所述待测试模型的测试结果。
35.结合本技术任一实施方式,所述将所述测试用例输入待测试模型,获取所述待测试模型输出的跨越检测结果,包括:
36.根据所述测试用例的信息,生成输入生成代码;所述测试用例的信息包括所述目标线段的坐标;所述输入生成代码用于指示待测试模型测试时需要的输入信息;
37.根据所述输入生成代码和所述测试用例,对待测试模型进行测试,得到所述跨越检测结果。
38.结合本技术任一实施方式,所述根据所述测试用例的信息,生成输入生成代码,包括:
39.获取所述待测试模型的信息;
40.根据所述待测试模型的信息,确定预先配置的所述待测试模型对应的代码模板;
41.根据所述代码模板和所述测试用例的信息,生成所述输入生成代码。
42.第二方面,提供了一种视频处理装置,所述装置包括:
43.获取单元,用于获取测试视频;
44.第一处理单元,用于对所述测试视频的各帧图像进行对象检测,得到所述各帧图
像的对象的检测框;
45.第二处理单元,用于从所述测试视频中确定与任一所述检测框相交的一条或多条的目标线段;
46.第三处理单元,用于根据所述目标线段,以及与所述目标线段相交的所述检测框,确定所述对象的第一移动方向;
47.第四处理单元,用于根据所述测试视频、所述目标线段和所述第一移动方向,生成测试用例。
48.结合本技术任一实施方式,所述第三处理单元,用于:
49.确定所述目标线段所在直线将相交的所述检测框划分的区域的面积;
50.根据至少两帧图像中的所述区域的面积,确定所述对象的第一移动方向。
51.结合本技术任一实施方式,所述第三处理单元,用于:
52.在所述目标线段与所述检测框存在两个交点的情况下,确定所述目标线段将相交的所述检测框划分的区域的面积;
53.在所述目标线段与所述检测框存在一个交点的情况下,延长所述目标线段,使得延长后的所述目标线段与所述检测框存在两个交点;
54.确定延长后的所述目标线段将相交的所述检测框划分的区域的面积。
55.结合本技术任一实施方式,所述至少两帧图像包括第一图像和第二图像;所述第一图像中的所述检测框所包围的区域被所述目标线段所在的直线分为第一区域和第二区域,所述第二图像中的所述检测框所包围的区域被所述目标线段所在的直线分为第三区域和第四区域,且所述第一区域和所述第三区域均位于所述线段所在的直线的第一侧,所述第二区域和所述第四区域位于所述目标线段所在的直线的第二侧,所述第一侧和所述第二侧不同;
56.所述第三处理单元,用于:
57.确定所述第一区域的第一面积和所述第三区域的第二面积;
58.根据至少两帧图像中的所述区域的面积,确定所述对象的第一移动方向,包括:
59.在所述第一图像的时间早于所述第二图像的时间,且所述第一面积大于所述第二面积的情况下,确定所述第一移动方向为所述对象从所述第二侧向所述第一侧移动;
60.在所述第一图像的时间晚于所述第二图像的时间,且所述第一面积大于所述第二面积的情况下,确定所述第一移动方向为所述对象从所述第一侧向所述第二侧移动。
61.结合本技术任一实施方式,所述获取单元,还用于获取用于检测越界事件的待测试模型;
62.所述第四处理单元,还用于将所述测试用例输入待测试模型,获取所述待测试模型输出的跨越检测结果。
63.结合本技术任一实施方式,所述跨越检测结果包括所述对象的第二移动方向;所述第四处理单元,还用于:
64.依据所述第一移动方向和所述第二移动方向,得到移动方向测试结果;
65.依据所述移动方向测试结果,得到所述待测试模型的测试结果。
66.结合本技术任一实施方式,所述跨越检测结果包括所述对象跨越所述目标线段,所述获取单元,还用于获取所述测试视频中包含所述对象跨越所述目标线段的一张或一张
以上图像的第一图像帧序列号;
67.所述第四处理单元,还用于:
68.依据所述跨越检测结果,确定所述测试视频中包含所述对象跨越所述目标线段的一张或一张以上图像的第二图像帧序列号;
69.依据所述第一图像帧序列号和所述第二图像帧序列号的相似度,得到相似度结果;
70.依据所述相似度结果,得到所述待测试模型的测试结果。
71.结合本技术任一实施方式,所述第四处理单元,用于:
72.根据所述测试用例的信息,生成输入生成代码;所述测试用例的信息包括所述目标线段的坐标;所述输入生成代码用于指示待测试模型测试时需要的输入信息;
73.根据所述输入生成代码和所述测试用例,对待测试模型进行测试,得到所述跨越检测结果。
74.结合本技术任一实施方式,所述第四处理单元,用于:
75.获取所述待测试模型的信息;
76.根据所述待测试模型的信息,确定预先配置的所述待测试模型对应的代码模板;
77.根据所述代码模板和所述测试用例的信息,生成所述输入生成代码。
78.第三方面,提供了一种电子设备,其特征在于,包括:处理器和存储器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,在所述处理器执行所述计算机指令的情况下,所述电子设备执行如上述第一方面及其任意一种可能实现的方式的方法。
79.第四方面,提供了另一种电子设备,包括:处理器、发送装置、输入装置、输出装置和存储器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,在所述处理器执行所述计算机指令的情况下,所述电子设备执行如上述第一方面及其任意一种可能实现的方式的方法。
80.第五方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令,在所述程序指令被处理器执行的情况下,使所述处理器执行如上述第一方面及其任意一种可能实现的方式的方法。
81.第六方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或指令,在所述计算机程序或指令在计算机上运行的情况下,使得所述计算机执行上述第一方面及其任一种可能的实现方式的方法。
82.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本技术。
83.本技术实施例中,视频处理装置在得到各帧图像的对象的检测框的情况下,从测试视频中确定任一检测框相交的一条或多条目标线段,可提高从测试视频中标注越界线的效率。根据目标线段和与目标线段相交的检测框,确定对象的第一移动方向,进而可根据测试视频、目标线段和第一移动方向,生成测试用例,从而降低生成测试用例的成本。
附图说明
84.为了更清楚地说明本技术实施例或背景技术中的技术方案,下面将对本技术实施
例或背景技术中所需要使用的附图进行说明。
85.此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本技术的实施例,并与说明书一起用于说明本技术的技术方案。
86.图1为本技术实施例提供的一种像素坐标系示意图;
87.图2为本技术实施例提供的一种视频处理方法的流程示意图;
88.图3为本技术实施例提供的一种目标线段示意图;
89.图4为本技术实施例提供的另一种目标线段示意图;
90.图5为本技术实施例提供的一种目标线段所在直线的两侧的示意图;
91.图6为本技术实施例提供的一种视频处理装置的结构示意图;
92.图7为本技术实施例提供的一种视频处理装置的硬件结构示意图。
具体实施方式
93.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
94.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
95.应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上,“至少两个(项)”是指两个或三个及三个以上,“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”可表示前后关联对象是一种“或”的关系,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。字符“/”还可表示数学运算中的除号,例如,a/b=a除以b;6/3=2。“以下至少一项(个)”或其类似表达。
96.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
97.随着计算视觉技术的快速发展,各种具备不同功能的计算机视觉模型应运而生,例如,人脸识别模型可用于进行人脸识别,物体检测模型可用于检测物体,动作监测模型可用于监测是否发生特定动作。
98.在一应用场景中,电子设备使用计算机视觉模型对视频进行处理,可确定视频中是否有越界事件发生,如:是否有人攀爬围栏。
99.由于在使用计算机视觉模型对视频进行处理之前,需要对计算机视觉模型进行测
试,进而可依据测试结果确定计算机视觉模型的性能。
100.因为判断视频中是否有越界事件发生的依据是目标对象是否穿越越界线,所以在使用视频测试计算机视觉模型的性能之前,需要从视频中将越界线标注出来。
101.近来一些技术采用人工标注的方式,从视频中将越界线标注出来,进而使用该视频测试计算机视觉模型。但该种方式的人力成本高,且标注效率低。基于此,本技术实施例公开了一种技术方案,以降低标注视频中的越界线的人力成本,并提高标注效率。
102.为表述方便,下文中出现的视频中的位置均指视频所包含的图像中的位置,图像中的位置均指图像的像素坐标下的位置。本技术实施例中的像素坐标系的横坐标用于表示像素点所在的列数,像素坐标系下的纵坐标用于表示像素点所在的行数。例如,在图1所示的图像中,以图像的左上角为坐标原点o、平行于图像的行的方向为x轴的方向、平行于图像的列的方向为y轴的方向,构建像素坐标系为xoy。横坐标和纵坐标的单位均为像素点。例如,图1中的像素点a
11
的坐标为(1,1),像素点a
23
的坐标为(3,2),像素点a
42
的坐标为(2,4),像素点a
34
的坐标为(4,3)。
103.本技术实施例的执行主体为视频处理装置,其中,视频处理装置可以是任意一种可执行本技术方法实施例所公开的技术方案的电子设备。可选的,视频处理装置可以是以下中的一种:手机、计算机、平板电脑、可穿戴智能设备。
104.应理解,本技术方法实施例还可以通过处理器执行计算机程序代码的方式实现。下面结合本技术实施例中的附图对本技术实施例进行描述。请参阅图2,图2是本技术实施例提供的一种视频处理方法的流程示意图。
105.201、获取测试视频。
106.本技术实施例中,测试视频可以是离线视频,也可以是在线视频。其中,离线视频可以是通过摄像头或移动智能设备采集获得的视频。在线视频可以是摄像头实时获得视频,例如,视频处理装置可与一个或一个以上摄像头之间具有通信连接,视频处理装置可将从摄像头获取的实时采集的视频作为测试视频。
107.在一种获取测试视频的实现方式中,视频处理装置将用户通过输入组件输入的视频作为测试视频。上述输入组件包括:键盘、鼠标、触控屏、触控板和音频输入器。
108.在另一种获取测试视频的实现方式中,视频处理装置接收终端发送的视频作为测试视频。上述终端可以是以下任意一种:手机、计算机、平板电脑、服务器。
109.202、对上述测试视频的各帧图像进行对象检测,得到上述各帧图像的对象的检测框。
110.本技术实施例中,对象检测用于检测图像中的对象的位置。例如,对象为人,那么对象检测用于检测人在图像中的位置。
111.本技术实施例中,检测框包括对象。可选的,检测框的形状可以是任意形状,本技术对检测框的形状不做限定。可选的,检测框的形状包括以下一种或一种以上:矩形、菱形、圆形、椭圆形、多边形。
112.在一种可能实现的方式中,对图像进行对象检测可通过卷积神经网络实现。通过将带有标注信息的图像作为训练数据,对卷积神经网络进行训练,使训练后的卷积神经网络可完成对图像的对象检测,其中,标注信息包括检测框的位置信息,该检测框包含对象。
113.在另一种可能实现的方式中,对象检测可通过以下中的一种算法实现:一阶段目
标检测算法(you only look once,yolo)、单张图像多目标检测算法(single shot multibox detector,ssd)、两阶段目标检测算法(faster-rcnn算法)。
114.203、从上述测试视频中确定与任一上述检测框相交的一条或多条的目标线段。
115.本技术实施例中,目标线段与检测框相交指,目标线段与检测框相交且存在一个、两个或两个以上交点。
116.由于目标线段与检测框相交,测试视频中存在对象跨越目标线段的事件,目标线段进而可作为越界线。
117.越界线是指视频中由两个点组成的一条虚拟线段,由线段的起始坐标和终止坐标组成,通常越界线触发警报的条件是感兴趣物体的检测框与越界线产生1个或1个以上的交点。
118.本步骤中,可以随机生成多条线段,从中确定出与任一上述检测框相交的一条或多条的目标线段。
119.204、根据上述目标线段,以及与上述目标线段相交的上述检测框,确定上述对象的第一移动方向。
120.本技术实施例中,对象的移动方向(包括上述第一移动方向和下文将要提及的第二移动方向),表征对象穿越目标线段的移动方向。
121.在一种可能实现的方式中,视频处理装置确定目标线段所在直线将相交的检测框划分的区域的面积。根据至少两帧图像中的区域的面积,确定对象的第一移动方向。
122.具体的,若视频处理装置根据至少两帧图像中的区域的面积,确定与目标线段所在直线相交的检测框中处于目标线段一侧的面积增大了,进而确定第一移动方向从目标线段的另一侧向该侧移动。
123.例如,图3所示为测试视频中的图像1。图像1的图像区域为矩形abcd所包围的区域,对象为车辆,对象的检测框为矩形ghkn。目标线段所在直线将图像分为四边形aefd所包围的区域和四边形ebcf所包围的区域。检测框所包围的区域被目标线段所在直线分为多边形hjmng所包围的区域和三角形jkm所包围的区域。
124.图4所示为测试视频中的图像2。图像2的图像区域为矩形opqr所包围的区域,对象为车辆,对象的检测框为矩形stuv。目标线段所在直线将图像分为四边形owzr所包围的区域和四边形wpqz所包围的区域。检测框所包围的区域被目标线段所在直线分为多边形stxyv所包围的区域和三角形xuy所包围的区域。
125.若多边形hjmng所包围的区域和多边形stxyv所包围的区域位于目标线段的第一侧,则三角形jkm所包围的区域和三角形xuy所包围的区域位于目标线段的第二侧,其中,第一侧和第二侧为目标线段的两侧。
126.如图3和图4所示,三角形jkm所包围的区域的面积比三角形xuy所包围的区域的面积小,若图像1的时间早于图像2的时间,则检测框中位于第一侧的面积增大了。此时,第一移动方向为从一侧向第二侧移动。
127.205、根据上述测试视频、上述目标线段和上述第一移动方向,生成测试用例。
128.本技术实施例中,测试用例包括标注数据,其中,标注数据包括目标线段在测试视频中的位置和第一移动方向。
129.本技术实施例中,视频处理装置在得到各帧图像的对象的检测框的情况下,从测
试视频中确定任一检测框相交的一条或多条目标线段,可提高从测试视频中标注越界线的效率。根据目标线段和与目标线段相交的检测框,确定对象的第一移动方向,进而可根据测试视频、目标线段和第一移动方向,生成测试用例,从而降低生成测试用例的成本。
130.作为另一种可选的实施方式,视频处理装置通过执行以下步骤确定目标线段所在直线将相交的检测框划分的区域的面积:
131.301、在上述目标线段与上述检测框存在两个交点的情况下,确定上述目标线段将相交的上述检测框划分的区域的面积。
132.若目标线段与检测框存在两个交点,目标线段将检测框分为两个区域。例如,在图3中,检测框被目标线段分为多边形hjmng所包围的区域和三角形jkm所包围的区域。又例如,在图4中,检测框被目标线段分为多边形stxyv所包围的区域和三角形xuy所包围的区域。
133.此时,视频处理装置分别确定目标线段所划分的两个区域的面积。
134.302、在上述目标线段与上述检测框存在一个交点的情况下,延长上述目标线段,使得延长后的上述目标线段与上述检测框存在两个交点。确定延长后的上述目标线段将相交的上述检测框划分的区域的面积。
135.若目标线段与检测框存在一个交点,通过延长目标线段使目标线段与检测框存在两个交点,此时检测框被目标线段的延长线分为两个区域。
136.例如,在图5中,对象为车辆,检测框为矩形stuv。目标线段与检测框的交点为x。通过延长目标线段,使目标线段的延长线与检测框相较于点y。此时,目标线段的延长线与检测框存在x和y两个交点。
137.此时,视频处理装置分别确定目标线段的延长线所划分的两个区域的面积。
138.作为另一种可选的实施方式,至少两帧图像包括第一图像和第二图像。例如,至少两帧图像包括第三帧图像、第四帧图像和第五帧图像。第一图像可以是第三帧图像、第二图像可以是第四帧图像;第一图像可以是第四帧图像、第二图像可以是第五帧图像;第一图像可以是第三帧图像、第二图像可以是第五帧图像。
139.本实施方式中,第一图像中的检测框所包围的区域被目标线段所在的直线分为第一区域和第二区域,第二图像中的检测框所包围的区域被目标线段所在的直线分为第三区域和第四区域,且第一区域和第三区域均位于目标线段所在的直线的第一侧,上述第二区域位于上述目标线段所在的直线的第二侧,第一侧和第二侧不同。
140.例如,在图3中,图像区域为矩形abcd所包围的区域,对象为车辆,检测框为矩形ghkn。目标线段所在的直线将图像分为四边形aefd所包围的区域和四边形ebcf所包围的区域。检测框所包围的区域被目标线段所在的直线分为多边形hjmng所包围的区域和三角形jkm所包围的区域。
141.若四边形aefd所包围的区域所在的那一侧为目标线段所在的直线的第一侧,四边形ebcf所包围的区域所在的那一侧为目标线段所在的直线的第二侧,则第一区域为多边形hjmng所包围的区域,第二区域为三角形jkm所包围的区域。
142.应理解,目标线段所在的直线在测试视频中的每张图像中的位置均相同,因此,目标线段所在的直线在每张图像中的第一侧均相同,目标线段所在的直线在每张图像中的第二侧也均相同。
143.在该种实施方式中,视频处理装置通过执行以下步骤确定目标线段所在直线将相交的检测框划分的区域的面积:
144.401、确定上述第一区域的第一面积和上述第三区域的第二面积。
145.在得到第二面积的情况下,视频处理装置通过执行以下步骤确定对象的第一移动方向:
146.402、在上述第一图像的时间早于上述第二图像的时间,且上述第一面积大于上述第二面积的情况下,确定上述第一移动方向为上述对象从上述第二侧向上述第一侧移动。
147.本技术实施例中,图像的时间表示图像的采集时间。第一图像的时间早于第二图像的时间,即第一图像的采集时间早于第二图像的采集时间。
148.此时,若第一面积大于第二面积,说明第一侧的面积由小变大了。也就是说,在采集第二图像至采集第一图像的过程中,对象从第二侧向第一侧移动,即第一移动方向为从第二侧向第一侧移动。
149.403、在上述第一图像的时间晚于上述第二图像的时间,且上述第一面积大于上述第二面积的情况下,确定上述第一移动方向为上述对象从上述第一侧向上述第二侧移动。
150.第一图像的时间晚于第二图像的时间,即第一图像的采集时间晚于第二图像的采集时间。此时,若第一面积大于第二面积,说明第一侧的面积由大变小了。也就是说,在采集第一图像至采集第二图像的过程中,对象从第一侧向第二侧移动,即第一移动方向为从第一侧向第二侧移动。
151.作为另一种可选的实施方式,视频处理装置还执行以下步骤:
152.501、获取用于检测越界事件的待测试模型。
153.本技术实施例中,待测试模型为用于检测视频中是否存在越界事件的计算机视觉模型。
154.在一种获取待测试模型的实现方式中,视频处理装置将用户通过输入组件输入的计算机视觉模型作为待测试模型。
155.在另一种获取待测试模型的实现方式中,视频处理装置接收终端发送的计算机视觉模型作为待测试模型。
156.502、将上述测试用例输入待测试模型,获取上述待测试模型输出的跨越检测结果。
157.本技术实施例中,跨越检测结果包括测试用例中存在越界事件,跨越检测结果或包括测试用例中不存在越界事件。
158.作为一种可选的实施方式,跨越检测结果包括对象的第二移动方向。第二移动方向为待测试模型输出的对象的移动方向。
159.视频处理装置在该种可选的实施方式中,还执行以下步骤:
160.601、依据上述第一移动方向和上述第二移动方向,得到移动方向测试结果。
161.在一种可能实现的方式中,视频处理装置在第一移动方向和第二移动方向相同的情况下,确定移动方向测试结果为移动方向准确;视频处理装置在第一移动方向和第二移动方向不同的情况下,确定移动方向测试结果为移动方向错误。
162.602、依据上述移动方向测试结果,得到上述待测试模型的测试结果。
163.在一种可能实现的方式中,视频处理装置将移动方向测试结果,作为待测试模型
的测试结果。
164.本技术实施例中,视频处理装置在得到测试用例的情况下,通过执行步骤501~步骤502,完成对待测试模型的测试,得到待测试模型的测试结果。
165.作为一种可选的实施方式,跨越检测结果包括对象跨越目标线段。
166.视频处理装置在该种可选的实施方式中,还执行以下步骤:
167.701、获取上述测试视频中包含上述对象跨越上述目标线段的一张或一张以上图像的第一图像帧序列号。
168.本技术实施例中,图像帧序列号(包括上述第一图像帧序列号和下文将要提及的第二图像帧序列号)为测试视频中包含对象跨越目标线段的图像的帧号。
169.例如,测试视频包括图像a,图像b,图像c和图像d,其中,图像a为第一帧图像,图像b为第二帧图像,图像c为第三帧图像,图像d为第四帧图像。
170.若图像a和图像b包含对象跨越目标线段,图像c和图像d均不包含对象跨越目标线段,那么图像帧序列号为第一帧图像和第二帧图像。若图像b包含对象跨越目标线段,图像a、图像c和图像d不包含对象跨越目标线段,那么图像帧序列号为第二帧图像。
171.702、依据上述跨越检测结果,确定上述测试视频中包含上述对象跨越上述目标线段的一张或一张以上图像的第二图像帧序列号。
172.本实施方式中,跨越检测结果还包括第二图像帧序列号,即待测试模型在对测试视频进行处理的过程中,若确定测试视频中包含对象跨越目标线段,待测试模型还将确定包含对象跨越目标线段的图像,进而得到第二图像帧序列号。
173.703、依据上述第一图像帧序列号和上述第二图像帧序列号的相似度,得到相似度结果。
174.本技术实施例中,第一图像帧序列号和第二图像帧序列号的相似度可以中的一种:第一图像帧序列号和第二图像帧序列号中相同帧号的数量、第一图像帧序列号和第二图像帧序列号中相同帧号的数量与第一图像帧序列号中帧号的数量的比值、第一图像帧序列号和第二图像帧序列号中不同帧号的数量、第一图像帧序列号和第二图像帧序列号中不同帧号的数量与第二图像帧序列号中帧号的数量的比值、第一图像帧序列号与第二图像帧序列号的欧式距离、第一图像帧序列号与第二图像帧序列号的马氏距离。
175.例如,第一图像帧序列号包括:第五帧图像、第六帧图像、第七帧图像,第二图像帧序列号包括:第六帧图像、第七帧图像、第八帧图像、第九帧图像。此时,第一图像帧序列号与第二图像帧序列号中相同帧号为第六帧图像和第七帧图像,第一图像帧序列号与第二图像帧序列号中不同帧号为第五帧图像、第八帧图像和第九帧图像。
176.第一图像帧序列号和第二图像帧序列号中相同帧号的数量为2,第一图像帧序列号和第二图像帧序列号中不同帧号的数量3,第一图像帧序列号和第二图像帧序列号中不同帧号的数量与第一图像帧序列号中帧号的数量的比值为2/3,第一图像帧序列号和第二图像帧序列号中不同帧号的数量与第二图像帧序列号中帧号的数量的比值为3/4。
177.704、依据上述相似度结果,得到上述待测试模型的测试结果。
178.在一种可能实现的方式中,视频处理装置将穿越测试结果和相似度结果作为待测试模型的测试结果。
179.在另一种可能实现的方式中,视频处理装置依据穿越测试结果和相似度结果得到
待测试模型的测试结果,使测试结果包括穿越测试结果和相似度结果。
180.本技术实施例中,第一图像序列号可视为标注数据,第二图像序列号为待测试模型的检测结果。因此,视频处理装置依据第一图像序列号和第二图像序列号的相似度,可确定待测试模型的检测结果的准确度。
181.作为一种可选的实施方式,视频处理装置在执行步骤502的过程中执行以下步骤:
182.801、根据上述测试用例的信息,生成输入生成代码。
183.本技术实施例中,测试用例的信息包括目标线段在测试视频中的坐标。输入生成代码用于指示待测试模型测试时需要的输入信息。
184.802、根据上述输入生成代码和上述测试用例,对待测试模型进行测试,得到上述跨越检测结果。
185.视频处理装置在对待测试模型进行测试时,通过加载输入生成代码,确定待测试模型测试时需要的输入信息,并以待测试模型测试时需要的输入信息为依据,使用测试用例对待测试模型进行测试,得到跨越检测结果。
186.例如,待测试模型测试时需要的输入信息包括:越界线的坐标(即上述目标线段的坐标)。测试视频的处理装置在测试待测试模型时,使用待测试模型对测试视频进行处理,以确定是否有对象跨越目标线段。如果有,则确定存在越界事件,如果没有,则确定不存在越界事件。
187.又例如,待测试模型测试时需要的输入信息包括:对象的移动方向(即上述第一移动方向)。测试视频的处理装置在测试待测试模型时,使用待测试模型对测试视频进行处理,以确定待测试模型检测出的第二移动方向与第一移动方向是否相同,进而完成待测试模型检测对象的移动方向的性能。
188.本技术实施例中,测试视频的处理装置根据生成代码和测试用例,对待测试模型进行测试,可在从测试视频中确定一条或多条目标线段的情况下,将测试视频作为待测试模型的测试用例,测试待测试模型检测越界事件的性能。而且由于通过加载输入生成代码即可完成对待测试模型的测试,可提高测试待测试模型的效率。
189.作为一种可选的实施方式,视频处理装置在执行步骤801的过程中执行以下步骤:
190.901、获取上述待测试模型的信息。
191.本技术实施例中,待测试模型的信息包括待测试模型所能检测的事件的规则信息。例如,待测试模型可用于对象是否跨越界线。判断对象跨越界线的依据是,判断目标线段所在直线是否与检测框相交。此时,违章停车的规则信息包括目标线段的坐标。
192.902、根据上述待测试模型的信息,确定预先配置的上述待测试模型对应的代码模板。
193.本技术实施例中,代码模板用于生成输入生成代码。不同的代码模板用于生成用于测试不同待测试模型的输入生成代码。例如,代码模板a用于生成信息为目标线段的坐标的输入生成代码。
194.可选的,视频处理装置的数据库中包括至少一个预先配置的代码模板。视频处理装置根据待测试模型的信息,确定与待测试模型对应的代码模板。
195.903、根据上述代码模板和上述测试用例的信息,生成上述输入生成代码。
196.基于本技术实施例提供的技术方案,本技术实施例还提供了一种可能的应用场
景。
197.随着计算机视觉技术的发展,计算机视觉模型的功能越来越强大,计算视觉模型的应用也越来越广。因此,如何从众多计算机视觉模型中选取性能较好的计算视觉模型具有非常重要的意义。
198.在使用计算机视觉模型执行任务(如事件检测)之前,可通过使用测试数据对计算视觉模型进行测试确定计算机视觉模型的性能,其中,测试数据为携带标注信息的数据。
199.基于本技术实施例公开的技术方案,可完成对测试视频的标注,得到测试视频的标注信息。
200.例如(例2),企业a想要挑选几个在检测是否有人穿越围栏方面性能较好的计算机视觉模型。在通过测试计算视觉模型得到计算机视觉模型检测越界事件的性能之前,需要将监控摄像头采集到的多个测试视频中的越界线的位置标注出来。
201.由于测试视频的数量较多,且测试视频的播放时长较长,企业a采用本技术实施例公开的技术方案对测试视频进行处理,可从测试视频中确定一条或一条以上越界线(即上述一条或一条以上目标线段)。
202.具体的,企业a可使用服务器对测试视频进行处理,从测试视频中确定一条或一条以上越界线的位置。
203.在得到测试视频的标注信息(即一条或一条以上越界线的位置)后,还可基于本技术实施例公开的技术方案完成对计算机视觉模型的测试,从而可依据测试结果确定计算机视觉模型的性能。
204.例如,在例2中,服务器可依据测试视频的编号、待测试模型的编号、一条或一条以上越界线的位置以及目标对象(即人),生成测试指令。服务器进而可依据测试指令完成对待测试模型的测试,得到测试结果。企业a进而可依据该测试结果,确定待测试模型检测越界事件的性能。
205.本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
206.上述详细阐述了本技术实施例的方法,下面提供了本技术实施例的装置。
207.请参阅图6,图6为本技术实施例提供的一种视频处理装置的结构示意图,该视频处理装置1包括:获取单元11、第一处理单元12、第二处理单元13、第三处理单元14、第四处理单元15,其中:
208.获取单元11,用于获取测试视频;
209.第一处理单元12,用于对所述测试视频的各帧图像进行对象检测,得到所述各帧图像的对象的检测框;
210.第二处理单元13,用于从所述测试视频中确定与任一所述检测框相交的一条或多条的目标线段;
211.第三处理单元14,用于根据所述目标线段,以及与所述目标线段相交的所述检测框,确定所述对象的第一移动方向;
212.第四处理单元15,用于根据所述测试视频、所述目标线段和所述第一移动方向,生成测试用例。
213.结合本技术任一实施方式,所述第三处理单元14,用于:
214.确定所述目标线段所在直线将相交的所述检测框划分的区域的面积;
215.根据至少两帧图像中的所述区域的面积,确定所述对象的第一移动方向。
216.结合本技术任一实施方式,所述第三处理单元14,用于:
217.在所述目标线段与所述检测框存在两个交点的情况下,确定所述目标线段将相交的所述检测框划分的区域的面积;
218.在所述目标线段与所述检测框存在一个交点的情况下,延长所述目标线段,使得延长后的所述目标线段与所述检测框存在两个交点;
219.确定延长后的所述目标线段将相交的所述检测框划分的区域的面积。
220.结合本技术任一实施方式,所述至少两帧图像包括第一图像和第二图像;所述第一图像中的所述检测框所包围的区域被所述目标线段所在的直线分为第一区域和第二区域,所述第二图像中的所述检测框所包围的区域被所述目标线段所在的直线分为第三区域和第四区域,且所述第一区域和所述第三区域均位于所述线段所在的直线的第一侧,所述第二区域和所述第四区域位于所述目标线段所在的直线的第二侧,所述第一侧和所述第二侧不同;
221.所述第三处理单元14,用于:
222.确定所述第一区域的第一面积和所述第三区域的第二面积;
223.根据至少两帧图像中的所述区域的面积,确定所述对象的第一移动方向,包括:
224.在所述第一图像的时间早于所述第二图像的时间,且所述第一面积大于所述第二面积的情况下,确定所述第一移动方向为所述对象从所述第二侧向所述第一侧移动;
225.在所述第一图像的时间晚于所述第二图像的时间,且所述第一面积大于所述第二面积的情况下,确定所述第一移动方向为所述对象从所述第一侧向所述第二侧移动。
226.结合本技术任一实施方式,所述获取单元11,还用于获取用于检测越界事件的待测试模型;
227.所述第四处理单元15,还用于将所述测试用例输入待测试模型,获取所述待测试模型输出的跨越检测结果。
228.结合本技术任一实施方式,所述跨越检测结果包括所述对象的第二移动方向;所述第四处理单元15,还用于:
229.依据所述第一移动方向和所述第二移动方向,得到移动方向测试结果;
230.依据所述移动方向测试结果,得到所述待测试模型的测试结果。
231.结合本技术任一实施方式,所述跨越检测结果包括所述对象跨越所述目标线段,所述获取单元11,还用于获取所述测试视频中包含所述对象跨越所述目标线段的一张或一张以上图像的第一图像帧序列号;
232.所述第四处理单元15,还用于:
233.依据所述跨越检测结果,确定所述测试视频中包含所述对象跨越所述目标线段的一张或一张以上图像的第二图像帧序列号;
234.依据所述第一图像帧序列号和所述第二图像帧序列号的相似度,得到相似度结果;
235.依据所述相似度结果,得到所述待测试模型的测试结果。
236.结合本技术任一实施方式,所述第四处理单元15,用于:
237.根据所述测试用例的信息,生成输入生成代码;所述测试用例的信息包括所述目标线段的坐标;所述输入生成代码用于指示待测试模型测试时需要的输入信息;
238.根据所述输入生成代码和所述测试用例,对待测试模型进行测试,得到所述跨越检测结果。
239.结合本技术任一实施方式,所述第四处理单元15,用于:
240.获取所述待测试模型的信息;
241.根据所述待测试模型的信息,确定预先配置的所述待测试模型对应的代码模板;
242.根据所述代码模板和所述测试用例的信息,生成所述输入生成代码。
243.本技术实施例中,视频处理装置在得到各帧图像的对象的检测框的情况下,从测试视频中确定任一检测框相交的一条或多条目标线段,可提高从测试视频中标注越界线的效率。根据目标线段和与目标线段相交的检测框,确定对象的第一移动方向,进而可根据测试视频、目标线段和第一移动方向,生成测试用例,从而降低生成测试用例的成本。
244.在一些实施例中,本技术实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
245.图7为本技术实施例提供的一种视频处理装置的硬件结构示意图。该视频处理装置2包括处理器21,存储器22,输入装置23,输出装置24。该处理器21、存储器22、输入装置23和输出装置24通过连接器相耦合,该连接器包括各类接口、传输线或总线等等,本技术实施例对此不作限定。应当理解,本技术的各个实施例中,耦合是指通过特定方式的相互联系,包括直接相连或者通过其他设备间接相连,例如可以通过各类接口、传输线、总线等相连。
246.处理器21可以是一个或多个图形处理器(graphics processing unit,gpu),在处理器21是一个gpu的情况下,该gpu可以是单核gpu,也可以是多核gpu。可选的,处理器21可以是多个gpu构成的处理器组,多个处理器之间通过一个或多个总线彼此耦合。可选的,该处理器还可以为其他类型的处理器等等,本技术实施例不作限定。
247.存储器22可用于存储计算机程序指令,以及用于执行本技术方案的程序代码在内的各类计算机程序代码。可选地,存储器包括但不限于是随机存储记忆体(random access memory,ram)、只读存储器(read-only memory,rom)、可擦除可编程只读存储器(erasable programmable read only memory,eprom)、或便携式只读存储器(compact disc read-only memory,cd-rom),该存储器用于相关指令及数据。
248.输入装置23用于输入数据和/或信号,以及输出装置24用于输出数据和/或信号。输入装置23和输出装置24可以是独立的器件,也可以是一个整体的器件。
249.可理解,本技术实施例中,存储器22不仅可用于存储相关指令,还可用于存储相关数据,如该存储器22可用于存储通过输入装置23获取的测试视频,又或者该存储器22还可用于存储通过处理器21得到的测试用例等等,本技术实施例对于该存储器中具体所存储的数据不作限定。
250.可以理解的是,图7仅仅示出了一种视频处理装置的简化设计。在实际应用中,视频处理装置还可以分别包含必要的其他元件,包含但不限于任意数量的输入/输出装置、处理器、存储器等,而所有可以实现本技术实施例的视频处理装置都在本技术的保护范围之
内。
251.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
252.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。所属领域的技术人员还可以清楚地了解到,本技术各个实施例描述各有侧重,为描述的方便和简洁,相同或类似的部分在不同实施例中可能没有赘述,因此,在某一实施例未描述或未详细描述的部分可以参见其他实施例的记载。
253.在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
254.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
255.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
256.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字通用光盘(digital versatile disc,dvd))、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
257.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:只读存储器(read-only memory,rom)或随机存取存储器(random access memory,ram)、磁碟或者光盘
等各种可存储程序代码的介质。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1