1.本公开的各实现方式涉及计算机领域,更具体地,涉及用于对象检测的方法、设备和计算机存储介质。
背景技术:
2.目前,随着计算机视觉技术的发展,对象检测技术被广泛应用于安防、监控、智能交通等诸多方面。为了提高处理的实时性,一些方案利用嵌入式边缘计算设备来执行对象检测,例如,对画面中的行人进行检测、计数或跟踪等。然而,由于嵌入式边缘计算设备的计算能力相对有限,因此,如何提高对象检测的效率成为当前关注的焦点。
技术实现要素:
3.本公开的实施例提供了一种对象检测的方案。
4.在本公开的第一方面,提供了一种用于对象检测的方法。该方法包括:确定由图像捕获装置捕获的第一图像中的第一组候选框,第一组候选框指示第一图像中可能包括的对象;基于第一组候选框,确定目标区域;从由图像捕获装置后续捕获的第二图像中,确定与目标区域对应的子图像;以及从子图像中检测至少一个对象。
5.在本公开的第二方面中,提供了一种用于对象检测的装置。该装置包括:第一候选框确定模块,被配置为确定由图像捕获装置捕获的第一图像中的第一组候选框,第一组候选框指示第一图像中可能包括的对象;目标区域确定模块,被配置为基于第一组候选框,确定目标区域;子图像确定模块,被配置为从由图像捕获装置后续捕获的第二图像中,确定与目标区域对应的子图像;以及对象检测模块,被配置为从子图像中检测至少一个对象。
6.在本公开的第三方面,提供了一种电子设备,包括:存储器和处理器;其中存储器用于存储一条或多条计算机指令,其中一条或多条计算机指令被处理器执行以实现根据本公开的第一方面的方法。
7.在本公开的第四方面,提供了一种计算机可读存储介质,其上存储有一条或多条计算机指令,其中一条或多条计算机指令被处理器执行实现根据本公开的第一方面的方法。
8.根据本公开的各种实施例,在后续对象检测过程中可以利用具有更小尺寸的子图像来进行对象检测,从而提高对象检测的效率。这样的方法能够降低对于设备计算能力的需求,具有更好的普适性。
附图说明
9.结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标注表示相同或相似的元素,其中:
10.图1示出了本公开的多个实施例能够在其中实现的示例环境的示意图;
11.图2示出了根据本公开的一些实施例的对象检测的示意图;
12.图3示出了根据本公开的一些实施例的对象检测的示例过程的流程图;
13.图4示出了根据本公开的一些实施例的确定可行驶区域的装置的示意性结构框图;以及
14.图5示出了能够实施本公开的多个实施例的计算设备的框图。
具体实施方式
15.下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
16.在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
17.在计算视觉领域,应用于嵌入式边缘计算设备的传统对象检测方法主要包括以下类别:
18.(1)基于深度学习的逐帧检测的方法。一方面,由于嵌入式边缘计算设备的计算能力无法支持利用高复杂度模型进行实时检测。因此,这种方法难以达到实时性和检测精度的平衡。
19.(2)基于简单裁切的方法。传统的基于裁切的方法充分利用视频输入的时序连续性以提升检测精度。然而,在该方法中,由于图像中出现对象(例如,行人)的区域随机性较强,可能出现多个包含对象的区域,此时,需要对所有包含对象的区域进行检测,可能导致耗时比使用大模型检测整张图片更多。
20.(3)基于目标跟踪的方法。传统的基于目标跟踪的方法整体思路为对视频中的某帧使用目标检测算法后,得到行人的检测框;将所有检测框输入目标跟踪算法,由目标跟踪算法逐帧给出后续视频帧的行人检测结果。然而,这样的方法检测精度较低。
21.(4)基于图像差分的方法。传统的基于图像差分的方法涉及先验的对象像素值判定,因此易受到光照、天气等因素的影响,在强光照的正午或弱光照的傍晚会出现较多漏检情况。此外,该方法计算帧间差分的过程易受到视频图像分辨率的影响,在高分辨率下计算帧间差分耗时较长。
22.因此,如何在保证检测实时性的同时提高对象检测的准确度成为了当前关注的焦点。
23.根据本公开的实施例,提供了一种对象检测的方案。在本公开的实施例中,首先,确定由图像捕获装置捕获的第一图像中的第一组候选框,其中第一组候选框指示第一图像中可能包括的对象。随后,基于第一组候选框来确定目标区域,并从由图像捕获装置后续捕获的第二图像中确定与目标区域对应的子图像。相应地,从子图像中检测至少一个对象。根据本公开的事实,在后续对象检测过程中可以利用具有更小尺寸的子图像来进行对象检测,从而提高对象检测的效率。
24.示例环境
25.首先参见图1,其示意性示出了其中可以实施根据本公开的示例性实现方式的环境100的示意图。如图1所示,环境100可以包括图像捕获设备120,其被配置为捕获目标区域的一个或多个图像110。
26.在一些实现中,图像捕获设备120例如可以是高架摄像头,例如可以被安装在铁塔130,以用于安防监控的用途。应当理解,图像捕获设备120也可以以其他适当的方式被安装。
27.如图1所示,图像捕获设备120还可以耦合到计算设备140。在一些实现中,计算设备140例如可以包括嵌入式边缘计算设备,其被配置为获取由图像捕获设备120捕获的图像110,并执行对象检测方法以从图像110检测一个或多个对象150。
28.在一些实现中,对象150例如可以包括行人、动物、交通工具等等适当的对象。计算设备140可以确定对象在图像110中的对应位置。例如,计算设备140可以生成一个或多个候选框,以指示该区域可能包括对象。
29.在一些实现中,由计算设备140所确定的对象检测信息(例如,候选框)可以被进一步用于对象的计数、目标对象的识别、或者对象的跟踪等方面。关于对象检测的详细过程在将下文参考图2至图3详细描述。
30.示例原理
31.图2示出了根据本公开实施例的对象检测的示意图200。如图1所示,计算设备140中可以部署有第一识别模型215和第二识别模型235。在一些实现中,第一识别模型215和第二识别模型235例如可以包括适当的机器学习模型,以用于从输入图像中检测对象。
32.在一些实现中,第一识别模型215和第二识别模型235例如可以具有不同的性能。例如,第一识别模型215的模型复杂度可以高于第二识别模型235。以深度神经网络作为示例,第一识别模型215例如可以具有更加复杂的输入特征,具有更多的层数等,以使得第一识别模型215能够处理分辨率更高的图像,以输出更为准确的检测结果。应当理解,在计算设备140的计算能力固定的情况下,第一识别模型215需要的耗时可能高于第二识别模型235。
33.如图2所示,计算设备140可以利用第一识别模型215来处理图像捕获装置120在第一时刻捕获的第一图像210
‑
1,从而确定第一图像210
‑
1中的第一组候选框220。第一组候选框220例如可以指示第一图像210
‑
1中可能包括对象的区域。
34.在一些实现中,第一识别模型215所确定的第一组候选框220中的每个候选框的置信度高于预定第一置信度阈值。例如,第一识别模型215可以将全部候选框中置信度高于0.15的候选框确定作为第一组候选框220。
35.在一些实现中,在第一图像210
‑
1提供至第一识别模型215之前,计算设备140还可以对第一图像210
‑
1进行预处理。具体地,计算设备140可以调整第一图像210
‑
1,以适配第一识别模型215。示例性地,计算设备140可以对第一图像210
‑
1进行裁剪或缩放等操作,以适配第一识别模型215。
36.例如,第一识别模型215可以为efficientdet
‑
d2模型,该模型需要在特征提取部分将输入图像下采样至原始大小的1/128,因此,为了提高模型处理的准确度,计算设备210可以处理第一图像210
‑
1以使得其分辨率为128的倍数。示例性地,如果第一图像210
‑
1的分辨率为1024*512,则计算设备140可以首先将1920
×
1080分辨率的第一图像210
‑
1等比例缩
小至1024
×
576,随后从缩小后图像的顶部和底部各裁切32像素,将图像分辨率变为1024
×
512。基于这样的方式,计算设备140可以保证第一识别模型215的输入图像为128的倍数。另一方面,在实际操作中,对象出现在图像顶部和底部的概率较小,因此进行该裁切操作不会影响最终检测精度。
37.应当理解,还可以利用其他适当的模型来作为第一识别模型215,例如,efficientdet
‑
d3/d4、fasterrcnn等。本公开不旨在对于第一识别模型215的具体类型进行限定。
38.附加地,计算设备140可以利用第一识别模型215处理经调整的第一图像,以确定第一组候选框220。在一些实现中,计算设备140可以进一步基于第一识别模型215所确定的第一组候选框220来确定一个具有预定尺寸的目标区域225。
39.在一些实现中,与传统地将所有候选框直接确定作为裁剪区域不同,计算设备140可以基于第一组候选框220来确定单个具有目标尺寸的目标区域225。
40.在一些实现中,计算设备140可以基于第一组候选框220的位置来确定第一组候选框220中的目标候选框,其中该目标候选框的临近候选框的数目高于预定阈值。临近候选框表示与目标候选框的距离小于预定阈值的候选框。
41.在一些实现中,计算设备140可以基于两个候选框中心点的距离来确定两个候选框之间的距离。相应地,计算设备140可以确定第一组候选框220中每两个候选框之间的距离,并将距离小于预定阈值的候选框确定作为临近候选框。
42.计算设备140由此可以确定第一组候选框220中每个候选框的临近候选框的数目,并且将其中数目大于预定阈值的候选框确定作为目标候选框。例如,计算设备140可以将具有最多临近候选框的候选框确定作为目标候选框。当有多个临近候选框时,计算设备140例如可以随机地选择其中一个以作为目标候选框。
43.附加地,计算设备140可以基于目标候选框的位置,确定具有预定尺寸的目标区域225。示例性地,计算设备140可以基于目标候选框的中心点的位置,并以该位置作为目标区域的中心,以确定具有预定尺寸的目标区域225。例如,如果目标候选框的中心点为(x,y)且目标区域225的大小为(w,h),则目标候选框的四个顶点可以表示为(x
‑
w,y
‑
h),(x
‑
w,y h),(x w,y
‑
h)和(x w,y h),从而可以确定目标区域225的范围。
44.在一些实现中,计算设备140还可以例如利用遍历图像的方法来确定目标区域225。示例性地,计算设备140可以基于第一组候选框220的位置来确定具有预定尺寸的目标区域225,使得目标区域覆盖第一组候选框中的至少一个候选框,其中至少一个候选框的第一候选框数目与第一组候选框的第二候选框数目的比大于预定阈值。
45.例如,计算设备140例如可以以预定尺寸的区域作为滑窗来遍历图像,以确定不同区域所覆盖的候选框的数目。此处,覆盖可以指示候选框的中心点位于该区域中,或者指示候选框的四个顶点均位于该区域中。
46.示例性地,计算设备140可以通过滑窗的方式确定目标区域225,以使得该目标区域225能够覆盖第一组候选框220中超过预定比例的候选框。
47.基于这样的方式,可以确定具有小于原图像尺寸的目标区域。应当理解,一般而言,对象在图像中可能出现的区域相对较为集中。
48.在一些实现中,图像捕获装置120与可捕获的对象的距离大于预定阈值。例如,图
像捕获装置120可以是用于检测行人的铁塔高架摄像装置,这使得该摄像装置所捕获的图像中行人可能出现的区域较为集中。
49.如图2所示,计算设备140可以获取图像捕获装置120在第二时刻所捕获的第二图像210
‑
2,其中第二时刻晚于第一时刻。在一些实现中,第一图像210
‑
1和第二图像210
‑
2是由图像捕获设备120所捕获的视频中的相邻图像帧。
50.对于第二图像210
‑
2,计算设备140可以首先确定与目标区域225对应的子图像230,并将该子图像230提供至第二识别模型235,以用于检测该子图像230中的第一对象。
51.在一些实现中,第二识别模型235例如可以确定子图像230中与第一对象相关联的第二组候选框240。第二识别模型235例如可以为efficientdet
‑
d0检测模型,其例如被训练用于处理256*256大小的图像。应当理解,第二识别模型235还可以采用其他适当的模型,例如yolo v3/v4模型等。本公开不旨在对于第二识别模型235的具体类型进行限定。
52.在一些实现中,由第二识别模型235所确定的第二组候选框240的置信度例如可以高于第二置信度阈值。考虑到子图像中干扰较少,为了提高第二识别模型235的处理速度,第二置信度阈值例如可以被设置为低于与第以识别模型215相关联的第一置信度阈值。
53.由于第二识别模型235是具有较低模型复杂度的模型,其可以被计算设备140高效地执行。并且,由于第二识别模型235所处理的图像尺寸相对较小,其可以在保证实时性的同时,提高对象检测的准确度。另一方面,由于对象在图像中的分布相对较为集中,所确定的子图像将能够覆盖大部分的对象,能够满足大部分场景下的应用需要。
54.在一些实现中,计算设备140可以利用第一组候选框220和第二组候选框240之间的匹配来进行对象追踪。示例性地,计算设备140可以基于第一组候选框220和第二组候选框240之间的匹配,确定第一对象在第二时刻的追踪信息,其中追踪信息包括以下中的至少一项:位置、运动方向或运动速率。
55.示例性地,计算设备140例如可以确定第一组候选框220中的第一候选框与第二组候选框240中的第二候选框是对应于相同对象,相应地,计算设备140可以基于第一候选框与第二候选框之间位置的差异来确定该对象的在第二时刻的位置、运动方法和运动速率等。
56.在一些实现中,为了保证处理效率和对象检测性能之间的平衡,计算设备140还可以周期性地利用第一识别模型215来处理完整的输入图像,而对于中间帧则使用第二识别模型235来处理与目标区域所对应的子图像。
57.如图2所示,计算设备140例如可以利用第二识别模型215继续处理预定数目(例如,一个或多个)的图像(例如,图像帧)。例如,计算设备140例如还可以利用第二识别模型235来处理由图像捕获设备120所捕获的图像210
‑
3中与目标区域225所对应的子图像245,并输出该子图像245中的一组候选框250。
58.对于由图像捕获设备120在第三时刻捕获的第三图像210
‑
4,计算设备140可以利用第一识别模型215根据参考第一图像210
‑
1所讨论的过程进行处理,以用于确定一组候选框255。在一些实现中,第三时刻比第一时刻晚预定的时间间隔。
59.应当理解,该组候选框255例如可以进一步用于确定新的目标区域,并用于计算设备140利用第二识别模型235处理后续图像的过程。
60.在一些场景中,对于第一组候选框220,所确定的目标区域225可能无法覆盖其中
的部分候选框,这使得第二识别模型235可能也无法检测到与该部分候选框对应的对象。
61.在一些实现中,计算设备140可以利用由第一识别模型235先前处理第四图像的对象检测结果,来估计这些对象的运动信息。示例性地,计算设备140可以获取由第一识别模型基于第四图像所确定的第三组候选框,第四图像是由图像捕获设备在第四时刻所捕获的,第四时刻比第一时刻早预定的时间间隔。
62.附加地,计算设备140可以基于第三组候选框与第一组候选框之间的匹配,确定第三对象在第一时刻的运动信息,第三对象与第一组候选框在目标区域外的预定候选框相关联。例如,计算设备140可以确定第三组候选框中的第三候选框与第一组候选框220中的第四候选框指示相同的第三对象,则计算设备140可以根据第三候选框与第四候选框之间的距离,并基于第一时刻与第四时刻之间的时间间隔来确定第三对象的运动信息,例如,运动方向和运动速率。
63.附加地,计算设备140还可以基于第一图像210
‑
1中的预定候选框和运动信息,确定第三对象在第二时刻的追踪信息。例如,计算设备140可以基于所确定的运动方向和运动速率,来推算第三对象在第二时刻的位置、运动方向和运动速率。
64.基于这样的方式,虽然第二识别模型235在子图像230可能无法检测到第三对象,但是本公开的实施例能够基于第一识别模型的在先检测结果来推算第三对象的追踪信息,从而保证了对象检测的完整性。
65.示例过程
66.以下将结合图3来对象检测的示例过程。图3示出了根据本公开的一些实施例的对象检测的示例过程300的流程图。过程300例如可以由图1中的计算设备140来实施。
67.如图3所示,在框302,计算设备140确定由图像捕获装置在第一时刻捕获的第一图像中的第一组候选框,第一组候选框指示第一图像中可能包括对象的区域。
68.在框304,计算设备140基于第一组候选框,确定具有预定尺寸的目标区域。
69.在框306,计算设备140从由图像捕获装置在第二时刻捕获的第二图像中,确定与目标区域对应的子图像,第二时刻晚于第一时刻。
70.在框308,计算设备140从子图像中检测第一对象。
71.在一些实现中,检测第一对象包括:确定子图像中与第一对象相关联的第二组候选框,其中第一组候选框是由第一识别模型确定的,第二组候选框是由第二识别模型所确定的,第二识别模型的模型复杂度低于第一识别模型。
72.在一些实现中,确定由图像捕获装置捕获的第一图像中的第一组候选框包括:调整第一图像,以适配第一识别模型;以及利用第一识别模型处理经调整的第一图像,以确定第一组候选框。
73.在一些实现中,第一识别模型基于第一置信度阈值来确定第一组候选框,第二识别模型基于第二置信度阈值来确定第二组候选框,第一置信度阈值低于第二置信度阈值。
74.在一些实现中,过程300还包括:基于第一组候选框和第二组候选框之间的匹配,确定第一对象在第二时刻的追踪信息,追踪信息包括以下中的至少一项:位置、运动方向或运动速率。
75.在一些实现中,过程300还包括:用第一识别模型处理由图像捕获设备在第三时刻捕获的第三图像,以检测第三图像中包括的第二对象,其中第三时刻比第一时刻晚预定的
时间间隔,图像捕获设备在第一时刻与第二时刻之间所捕获的至少一个图像的、与目标区域对应的子图像被提供至第二识别模型,以进行对象检测。
76.在一些实现中,过程300还包括:获取由第一识别模型基于第四图像所确定的第三组候选框,第四图像是由图像捕获设备在第四时刻所捕获的,第四时刻比第一时刻早预定的时间间隔;基于第三组候选框与第一组候选框之间的匹配,确定第三对象在第一时刻的运动信息,第三对象与第一组候选框在目标区域外的预定候选框相关联;以及基于第一图像中的预定候选框和运动信息,确定第三对象在第二时刻的追踪信息。
77.在一些实现中,确定目标区域包括:基于第一组候选框的位置,确定第一组候选框中的目标候选框,目标候选框的临近候选框的数目高于预定阈值,临近候选框与目标候选框的距离小于预定阈值;以及基于目标候选框的位置,确定具有预定尺寸的目标区域。
78.在一些实现中,确定目标区域包括:基于第一组候选框的位置,确定具有预定尺寸的目标区域,使得目标区域覆盖第一组候选框中的至少一个候选框,其中至少一个候选框的第一候选框数目与第一组候选框的第二候选框数目的比大于预定阈值。
79.在一些实现中,图像捕获装置与可捕获的对象的距离大于预定阈值。
80.在一些实现中,第一图像和第二图像是由图像捕获装置捕获的相邻视频帧。
81.根据以上所讨论的方案,本公开的事实能够在后续对象检测过程中可以利用具有更小尺寸的子图像来进行对象检测,从而在保证检测实时性的同时提供对象检测的准确性。
82.示例装置和设备
83.本公开的实施例还提供了用于实现上述方法或过程的相应装置。图4示出了根据本公开的一些实施例的对象检测的装置400的示意性结构框图。
84.如图4所示,装置400可以包括第一候选框确定单元410,被配置为确定由图像捕获装置在第一时刻捕获的第一图像中的第一组候选框,第一组候选框指示第一图像中可能包括对象的区域。
85.装置400还包括目标区域确定单元420,被配置为基于第一组候选框,确定具有预定尺寸的目标区域。
86.装置400还包括子图像确定单元430,被配置为从由图像捕获装置在第二时刻捕获的第二图像中,确定与目标区域对应的子图像,第二时刻晚于第一时刻。
87.装置400还包括对象检测单元440,被配置为从子图像中检测第一对象。
88.在一些实现中,对象检测单元440包括:第二候选框确定单元,被配置为确定子图像中与第一对象相关联的第二组候选框,其中第一组候选框是由第一识别模型确定的,第二组候选框是由第二识别模型所确定的,第二识别模型的模型复杂度低于第一识别模型。
89.在一些实现中,第一候选框确定单元410包括:调整单元,被配置为调整第一图像,以适配第一识别模型;以及处理单元,被配置为利用第一识别模型处理经调整的第一图像,以确定第一组候选框。
90.在一些实现中,第一识别模型基于第一置信度阈值来确定第一组候选框,第二识别模型基于第二置信度阈值来确定第二组候选框,第一置信度阈值低于第二置信度阈值。
91.在一些实现中,装置400还包括:第一追踪模块,被配置为基于第一组候选框和第二组候选框之间的匹配,确定第一对象在第二时刻的追踪信息,追踪信息包括以下中的至
少一项:位置、运动方向或运动速率。
92.在一些实现中,装置400还包括:用第一识别模型处理由图像捕获设备在第三时刻捕获的第三图像,以检测第三图像中包括的第二对象,其中第三时刻比第一时刻晚预定的时间间隔,图像捕获设备在第一时刻与第二时刻之间所捕获的至少一个图像的、与目标区域对应的子图像被提供至第二识别模型,以进行对象检测。
93.在一些实现中,过程300还包括:第三候选框获取单元,被配置为获取由第一识别模型基于第四图像所确定的第三组候选框,第四图像是由图像捕获设备在第四时刻所捕获的,第四时刻比第一时刻早预定的时间间隔;匹配单元,被配置为基于第三组候选框与第一组候选框之间的匹配,确定第三对象在第一时刻的运动信息,第三对象与第一组候选框在目标区域外的预定候选框相关联;以及第二追踪单元,被配置为基于第一图像中的预定候选框和运动信息,确定第三对象在第二时刻的追踪信息。
94.在一些实现中,目标区域确定单元420包括:目标候选框确定,被配置为基于第一组候选框的位置,确定第一组候选框中的目标候选框,目标候选框的临近候选框的数目高于预定阈值,临近候选框与目标候选框的距离小于预定阈值;扩展单元,被配置为以及基于目标候选框的位置,确定具有预定尺寸的目标区域。
95.在一些实现中,目标区域确定单元420包括:裁剪单元,被配置为基于第一组候选框的位置,确定具有预定尺寸的目标区域,使得目标区域覆盖第一组候选框中的至少一个候选框,其中至少一个候选框的第一候选框数目与第一组候选框的第二候选框数目的比大于预定阈值。
96.在一些实现中,图像捕获装置与可捕获的对象的距离大于预定阈值。
97.在一些实现中,第一图像和第二图像是由图像捕获装置捕获的相邻视频帧。
98.装置400中所包括的单元可以利用各种方式来实现,包括软件、硬件、固件或其任意组合。在一些实施例中,一个或多个单元可以使用软件和/或固件来实现,例如存储在存储介质上的机器可执行指令。除了机器可执行指令之外或者作为替代,装置400中的部分或者全部单元可以至少部分地由一个或多个硬件逻辑组件来实现。作为示例而非限制,可以使用的示范类型的硬件逻辑组件包括现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准品(assp)、片上系统(soc)、复杂可编程逻辑器件(cpld),等等。
99.图5示出了其中可以实施本公开的一个或多个实施例的计算设备/服务器500的框图。应当理解,图5所示出的计算设备/服务器500仅仅是示例性的,而不应当构成对本文所描述的实施例的功能和范围的任何限制。
100.如图5所示,计算设备/服务器500是通用计算设备的形式。计算设备/服务器500的组件可以包括但不限于一个或多个处理器或处理单元510、存储器520、存储设备530、一个或多个通信单元540、一个或多个输入设备550以及一个或多个输出设备560。处理单元510可以是实际或虚拟处理器并且能够根据存储器520中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高计算设备/服务器500的并行处理能力。
101.计算设备/服务器500通常包括多个计算机存储介质。这样的介质可以是计算设备/服务器500可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器520可以是易失性存储器(例如寄存器、高速缓存、随机访问存储
器(ram))、非易失性存储器(例如,只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、闪存)或它们的某种组合。存储设备530可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如闪存驱动、磁盘或者任何其他介质,其可以能够用于存储信息和/或数据(例如用于训练的训练数据)并且可以在计算设备/服务器500内被访问。
102.计算设备/服务器500可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图5中示出,可以提供用于从可拆卸、非易失性磁盘(例如“软盘”)进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。存储器520可以包括计算机程序产品525,其具有一个或多个程序模块,这些程序模块被配置为执行本公开的各种实施例的各种方法或动作。
103.通信单元540实现通过通信介质与其他计算设备进行通信。附加地,计算设备/服务器500的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,计算设备/服务器500可以使用与一个或多个其他服务器、网络个人计算机(pc)或者另一个网络节点的逻辑连接来在联网环境中进行操作。
104.输入设备550可以是一个或多个输入设备,例如鼠标、键盘、追踪球等。输出设备560可以是一个或多个输出设备,例如显示器、扬声器、打印机等。计算设备/服务器500还可以根据需要通过通信单元540与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与计算设备/服务器500交互的设备进行通信,或者与使得计算设备/服务器500与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(i/o)接口(未示出)来执行。
105.根据本公开的示例性实现方式,提供了一种计算机可读存储介质,其上存储有一条或多条计算机指令,其中一条或多条计算机指令被处理器执行以实现上文描述的方法。
106.这里参照根据本公开实现的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
107.这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
108.也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
109.附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现
规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
110.以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各实现。
111.示例实现方式
112.ts 1.一种对象检测的方法,包括:
113.确定由图像捕获装置在第一时刻捕获的第一图像中的第一组候选框,所述第一组候选框指示所述第一图像中可能包括对象的区域;
114.基于所述第一组候选框,确定具有预定尺寸的目标区域;
115.从由所述图像捕获装置在第二时刻捕获的第二图像中,确定与所述目标区域对应的子图像,所述第二时刻晚于所述第一时刻;以及
116.从所述子图像中检测第一对象。
117.ts 2.根据ts 1所述的方法,其中检测所述第一对象包括:确定所述子图像中与所述第一对象相关联的第二组候选框,
118.其中所述第一组候选框是由第一识别模型确定的,所述第二组候选框是由第二识别模型所确定的,所述第二识别模型的模型复杂度低于所述第一识别模型。
119.ts 3.根据ts 2所述的方法,其中确定由图像捕获装置捕获的第一图像中的第一组候选框包括:
120.调整所述第一图像,以适配所述第一识别模型;以及
121.利用所述第一识别模型处理经调整的所述第一图像,以确定所述第一组候选框。
122.ts 4.根据ts 2所述的方法,其中第一识别模型基于第一置信度阈值来确定所述第一组候选框,所述第二识别模型基于第二置信度阈值来确定第二组候选框,所述第一置信度阈值低于所述第二置信度阈值。
123.ts 5.根据ts 2所述的方法,还包括:
124.基于所述第一组候选框和所述第二组候选框之间的匹配,确定所述第一对象在所述第二时刻的追踪信息,所述追踪信息包括以下中的至少一项:位置、运动方向或运动速率。
125.ts 6.根据ts 2所述的方法,还包括:
126.用所述第一识别模型处理由所述图像捕获设备在第三时刻捕获的第三图像,以检测所述第三图像中包括的第二对象,其中所述第三时刻比所述第一时刻晚预定的时间间隔,所述图像捕获设备在所述第一时刻与所述第二时刻之间所捕获的至少一个图像的、与所述目标区域对应的子图像被提供至所述第二识别模型,以进行对象检测。
127.ts 7.根据ts 2所述的方法,还包括:
128.获取由所述第一识别模型基于第四图像所确定的第三组候选框,所述第四图像是由所述图像捕获设备在第四时刻所捕获的,所述第四时刻比所述第一时刻早预定的时间间隔;
129.基于所述第三组候选框与所述第一组候选框之间的匹配,确定第三对象在所述第一时刻的运动信息,所述第三对象与第一组候选框在所述目标区域外的预定候选框相关联;以及
130.基于所述第一图像中的所述预定候选框和所述运动信息,确定所述第三对象在所述第二时刻的追踪信息。
131.ts 8.根据ts 1所述的方法,其中确定所述目标区域包括:
132.基于第一组候选框的位置,确定所述第一组候选框中的目标候选框,所述目标候选框的临近候选框的数目高于预定阈值,所述临近候选框与所述目标候选框的距离小于预定阈值;以及
133.基于所述目标候选框的位置,确定具有所述预定尺寸的所述目标区域。
134.ts 9.根据ts 1所述的方法,其中确定所述目标区域包括:
135.基于第一组候选框的位置,确定具有所述预定尺寸的所述目标区域,使得所述目标区域覆盖所述第一组候选框中的至少一个候选框,其中所述至少一个候选框的第一候选框数目与所述第一组候选框的第二候选框数目的比大于预定阈值。
136.ts 10.根据ts 1所述的方法,其中所述图像捕获装置与可捕获的对象的距离大于预定阈值。
137.ts 11.根据ts 1所述的方法,其中所述第一图像和所述第二图像是由所述图像捕获装置捕获的相邻视频帧。
138.ts 12.一种对象检测的装置,包括:
139.第一候选框确定模块,被配置为确定由图像捕获装置在第一时刻捕获的第一图像中的第一组候选框,所述第一组候选框指示所述第一图像中可能包括对象的区域;
140.目标区域确定模块,被配置为基于所述第一组候选框,确定目标区域;
141.子图像确定模块,被配置为从由所述图像捕获装置在第二时刻捕获的第二图像中,确定与所述目标区域对应的子图像,所述第二时刻晚于所述第一时刻;以及
142.对象检测模块,被配置为从所述子图像中检测第一对象。
143.ts 13.一种电子设备,包括:
144.存储器和处理器;
145.其中所述存储器用于存储一条或多条计算机指令,其中所述一条或多条计算机指令被所述处理器执行以实现根据ts 1至11中任一项所述的方法。
146.ts 14.一种计算机可读存储介质,其上存储有一条或多条计算机指令,其中所述一条或多条计算机指令被处理器执行以实现根据ts 1至11中任一项所述的方法。
技术特征:
1.一种对象检测的方法,包括:确定由图像捕获装置在第一时刻捕获的第一图像中的第一组候选框,所述第一组候选框指示所述第一图像中可能包括对象的区域;基于所述第一组候选框,确定具有预定尺寸的目标区域;从由所述图像捕获装置在第二时刻捕获的第二图像中,确定与所述目标区域对应的子图像,所述第二时刻晚于所述第一时刻;以及从所述子图像中检测第一对象。2.根据权利要求1所述的方法,其中检测所述第一对象包括:确定所述子图像中与所述第一对象相关联的第二组候选框,其中所述第一组候选框是由第一识别模型确定的,所述第二组候选框是由第二识别模型所确定的,所述第二识别模型的模型复杂度低于所述第一识别模型。3.根据权利要求2所述的方法,其中确定由图像捕获装置捕获的第一图像中的第一组候选框包括:调整所述第一图像,以适配所述第一识别模型;以及利用所述第一识别模型处理经调整的所述第一图像,以确定所述第一组候选框。4.根据权利要求2所述的方法,其中第一识别模型基于第一置信度阈值来确定所述第一组候选框,所述第二识别模型基于第二置信度阈值来确定第二组候选框,所述第一置信度阈值低于所述第二置信度阈值。5.根据权利要求2所述的方法,还包括:基于所述第一组候选框和所述第二组候选框之间的匹配,确定所述第一对象在所述第二时刻的追踪信息,所述追踪信息包括以下中的至少一项:位置、运动方向或运动速率。6.根据权利要求1所述的方法,其中确定所述目标区域包括:基于第一组候选框的位置,确定所述第一组候选框中的目标候选框,所述目标候选框的临近候选框的数目高于预定阈值,所述临近候选框与所述目标候选框的距离小于预定阈值;以及基于所述目标候选框的位置,确定具有所述预定尺寸的所述目标区域。7.根据权利要求1所述的方法,其中确定所述目标区域包括:基于第一组候选框的位置,确定具有所述预定尺寸的所述目标区域,使得所述目标区域覆盖所述第一组候选框中的至少一个候选框,其中所述至少一个候选框的第一候选框数目与所述第一组候选框的第二候选框数目的比大于预定阈值。8.根据权利要求1所述的方法,其中所述第一图像和所述第二图像是由所述图像捕获装置捕获的相邻视频帧。9.一种电子设备,包括:存储器和处理器;其中所述存储器用于存储一条或多条计算机指令,其中所述一条或多条计算机指令被所述处理器执行以实现根据权利要求1至8中任一项所述的方法。10.一种计算机可读存储介质,其上存储有一条或多条计算机指令,其中所述一条或多条计算机指令被处理器执行以实现根据权利要求1至8中任一项所述的方法。
技术总结
根据本公开的实施例,提供了一种对象检测的方法、装置、设备和存储介质。在此提出的方法包括:确定由图像捕获装置捕获的第一图像中的第一组候选框,第一组候选框指示第一图像中可能包括的对象;基于第一组候选框,确定目标区域;从由图像捕获装置后续捕获的第二图像中,确定与目标区域对应的子图像;以及从子图像中检测至少一个对象。根据本公开的事实,在后续对象检测过程中可以利用具有更小尺寸的子图像来进行对象检测,从而提高对象检测的效率。从而提高对象检测的效率。从而提高对象检测的效率。
技术研发人员:徐一涛 刘宁 车正平 唐剑
受保护的技术使用者:北京嘀嘀无限科技发展有限公司
技术研发日:2021.03.16
技术公布日:2021/6/24
转载请注明原文地址:https://doc.8miu.com/read-250077.html