具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本公开实施例提供了一种车路协同中目标检测方法、装置和路测设备。
本公开的一个实施例中,提供了一种车路协同中目标检测方法,该方法包括:
对图像进行目标检测,得到图像中的候选目标区域、候选目标区域的置信度以及候选目标区域的被遮挡度;
基于候选目标区域间的交并比以及候选目标区域的被遮挡度,更新候选目标区域的置信度;
根据更新后的置信度,从候选目标区域中检测图像中的目标。
由于候选目标区域间的交并比能够反映各候选目标区域间的重合度,候选目标区域的被遮挡度能够反映候选目标区域被遮挡的程度,因此,根据上述交并比和遮挡度更新置信度,使得目标区域的置信度能够参考目标区域间的重叠情况,进而更新后候选目标区域的置信度更加趋向于实际情况,从而根据更新后的置信度对图像进行目标检测,能够提高目标检测的准确率。
以下对本公开实施例的执行主体进行说明。
本公开实施例的执行主体可以为集成有目标检测功能的电子设备,其中,上述电子设备可以是:台式机、笔记本电脑、服务器、图像采集设备等。其中,图像采集设备可以包括:摄像机、照相机、行车记录仪等。
本公开实施例提供的方案可以应用于对车路协同V2X的道路监控、车辆路径规划等应用场景下采集的图像进行目标检测。
另外,本公开实施例提供的方案还可以用于对其他场景下采集的图像进行目标检测。例如,上述其他场景可以是地铁站、商场、演唱会等人员高度密集的场景,针对这种场景进行图像采集,所采集的图像中往往也会人员密集,容易出现一些人员的面部被其他人员的面部遮挡的情况。上述场景还可以是博物馆入口处、银行大厅等人员较为密集的场景,针对这种场景进行图像采集,所采集的图像中可能会出现人员的面部被其他人员或者建筑物等遮挡的情况。
以上仅为本公开实施例的应用场景举例,并不对本公开构成限定。
上述目标可以是人脸、动物、车辆等等。
以下对本公开的实施例提供的车路协同中目标检测方法进行具体说明。
参见图1,图1为本公开的实施例提供的一种车路协同中目标检测方法的流程示意图,上述方法包括以下步骤S101-步骤S103。
步骤S101:对图像进行目标检测,得到图像中的候选目标区域、候选目标区域的置信度以及候选目标区域的被遮挡度。
上述图像可以是针对具体场景进行图像采集得到的。上述场景可以包括车辆行驶场景、停车场场景,这种情况下,上述目标为车辆;上述场景还可以包括地铁站、高铁站等公共空间场景,这种情况下,上述目标为人。
针对不同类型的目标,可以采用不同的检测算法实现目标检测,例如,人脸检测算法、车牌检测算法等。
候选目标区域是指:经目标检测认为可能存在目标的区域。以图2为例,图2中各矩形框围成的区域是对图像进行动物检测得到的候选目标区域。
候选目标区域的置信度反映:候选目标区域中存在目标的可能性大小。上述置信度可以以小数、百分数等表示。置信度的取值越大,表示候选目标区域中存在目标的可能性越高。
例如:在目标为人的情况下,当候选目标区域A的置信度大于候选目标区域B的置信度,表示候选目标区域A中存在人的可能性高于候选目标区域B中存在人的可能性。
候选目标区域的被遮挡度反映:候选目标区域被遮挡的程度。上述被遮挡度可以以小数、百分数等表示,还可以以被遮挡等级序号表示,被遮挡等级可以包括严重遮挡、中度遮挡、轻度遮挡等,被遮挡等级序号包括1、2、3等。
具体目标检测过程可以参见后续实施例,在此不进行详述。
步骤S102:基于候选目标区域间的交并比以及候选目标区域的被遮挡度,更新候选目标区域的置信度。
候选目标区域间的交并比用于描述两个候选目标区域之间的重合度。
具体的,可以计算两个候选目标区域间的重叠面积,得到第一面积,计算两个候选目标区域的面积之和,得到第二面积,然后计算第二面积与第一面积之差,得到第三面积,将第一面积与第三面积之间的比值确定为候选目标区域间的交并比。
例如:候选目标区域A的面积为48,候选目标区域B的面积为32,其中,候选目标区域A与候选目标区域B的重叠面积为16,也就是第一面积为16,候选目标区域A与候选目标区域B的总面积为(46+32)=80,也就是第二面积为80,计算第二面积与第一面积之差(80-16)=64,也就是第三面积为64,计算第一面积与第三面积之比得到16/64=0.25,0.25为候选目标区域间的交并比。
一种实现方式中,可以从各候选目标区域中选择一基准区域,计算各其他候选目标区域与基准区域的交并比,将计算得到的交并比确定为用于更新候选目标区域的置信度的交并比。例如:可以从各候选目标区域中选择置信度最大的区域,作为基准区域。
另一种实现方式中,还可以针对每一候选目标区域,从该候选目标区域与其他各候选目标区域间的交并比中选择一交并比,将所选择的交并比确定为用于更新该候选目标区域的置信度的交并比。例如:可以从上述多个交并比中选择最大交并比、平均交并比、中值交并比或最小交并比。
在更新候选目标区域的置信度时,可以根据候选目标区域间的交并比以及候选目标区域的被遮挡度,按照预设的第一权重和第二权重,计算调整系数,根据计算得到的调整系数,更新候选目标区域的置信度。
具体的,可以计算候选目标区域间的交并比与第一权重之间的乘积,并计算候选目标区域的被遮挡度与第二权重之间的乘积,将计算得到的两个乘积之和作为调整系数。
例如:候选目标区域间的交并比为80%,候选目标区域的被遮挡度为50%,预设的第一权重为0.8,预设的第二权重为0.2,计算候选目标区域间的交并比与第一权重之间的乘积为:0.8*80%=64%,计算候选目标区域的被遮挡度与第二权重之间的乘积为:0.2*50%=10%,计算得到的两个乘积之和为:64%+10%=74%,从而得到调整系数为74%。
在计算得到调整系数后,可以计算调整系数与候选目标区域的置信度之间的乘积,作为更新后的候选目标区域的置信度。
步骤S103:根据更新后的置信度,从候选目标区域中检测图像中的目标。
本公开的一个实施例中,可以选择更新后的置信度大于预设置信度阈值的候选目标区域,将所选择候选目标区域中的目标确定为图像中的目标。
上述预设置信度阈值可以由工作人员根据经验设定,例如:在置信度以百分数表示时,预设置信度阈值可以为90%,95%等。
以一个例子说明上述目标确定过程,假设更新后的各候选目标区域的置信度分别为:80%、70%、90%、95%,预设置信度阈值为85%,大于85%的更新后的置信度为90%、95%,其中,区域1更新后的置信度为90%,区域2更新后的置信度为95%,所以,区域1中的目标和区域2中的目标为图像中的目标。
这样,对于置信度大于预设置信度阈值的候选目标区域来说,这些候选目标区域中包含目标的可能性高于其他候选目标区域包含目标的可能性。所以,将置信度大于预设置信度阈值的候选目标区域中的目标确定为图像中的目标,所得到的目标准确度较高。
本公开的一个实施例中,还可以选择更新后的置信度最大的预设数量个候选目标区域,将所选择候选目标区域中的目标确定为图像中的目标。
上述预设数量可以由工作人员根据经验设定,例如:上述预设数量可以为1个、3个、5个等。
以一个例子说明上述目标确定过程。假设目标区域的置信度分别为:80%、70%、90%、95%,预设数量为3个,其中更新后的置信度最大的3个分别为95%、90%、80%;将更新后的置信度为95%、90%、80%的候选目标区域中的目标、确定为图像中的目标。
这样,对于置信度最大的预设数量个候选目标区域来说,这些候选目标区域中包含目标的可能性高于其他候选区域中包含目标的可能性。所以,将置信度最大的预设数量个候选目标区域中的目标确定为图像中的目标,所得到的目标的准确度较高。
由以上可见,应用本公开的实施例提供的方案进行目标检测时,首先根据候选目标区域间的交并比以及候选目标区域的被遮挡度,更新候选目标区域的置信度,然后基于更新后的置信度,从候选目标区域中检测图像中的目标。由于候选目标区域间的交并比能够反映各候选目标区域间的重合度,候选目标区域的被遮挡度能够反映候选目标区域被遮挡的程度,因此,根据上述交并比和被遮挡度更新置信度,使得目标区域的置信度能够参考目标区域间的重叠情况,进而更新后候选目标区域的置信度更加趋向于实际情况,从而根据更新后的置信度对图像进行目标检测,能够提高目标检测的准确率。
另外,由于在密集场景中,如人流量密集、车流量密集场景,目标发生遮挡的情况尤其严重。对于这些密集场景的图像来说,各候选目标区域的被遮挡度较高,使得候选目标区域内目标不完整,得到的候选目标区域的置信度的误差较大。通过候选目标区域的被遮挡度去更新候选目标区域的置信度,可以有效消除各候选目标区域被遮挡时对置信度的误差影响,使得更新后的置信度准确度高,进而检测得到准确的目标。因此,本公开实施例提供的方案能够更好的适应于密集场景中存在遮挡的情况,提升了目标检测的准确度。
为准确对候选目标区域的置信度进行更新,本公开的一个实施例中,可以循环从区域集中选择置信度最高的第一区域,根据区域集中其他区域与第一区域间的交并比以及其他区域的被遮挡度,更新其他区域的置信度,至此,完成一次置信度更新操作,循环执行上述操作,直至区域集中包括一个区域。可以称每一次置信度更新操作为一次循环。
上述区域集包括:候选目标区域中未被选择过的区域。具体的,在第一次循环开始时,区域集包括步骤S101中得到的各个候选目标区域;在每一次循环中,从区域集中选择第一区域后,区域集中不再包括被选择出的第一区域。
在第一次循环开始时,第一区域为:步骤S101中得到的各个候选目标区域中置信度最高的区域;在之后每一次循环时,第一区域为:上一次循环后得到的更新后各个区域中置信度最高的区域
上述其他区域是指:区域集中除了第一区域外的区域。如区域集包括:区域1、区域2、区域3,其中,区域1为第一区域,除了第一区域外的区域为区域2、区域3,那么区域2、区域3为其他区域。
在每次循环时,可以遍历区域集中各个区域,对各个区域的置信度从高到低进行排序,将置信度最高的区域确定为第一区域。另外,还可以将第一区域保存至预测集中,随着循环次数的增多,预测集中保存的第一区域的数量也增多。
以下结合具体示例对上述循环过程进行说明。
假设步骤S101中得到的各个候选目标区域为b1、b2、b3、……bn。
在第一次循环开始时,区域集B={b1、b2、b3、……、bn}。其中,各候选目标区域中置信度最高的区域为区域b1,所以将区域b1作为第一区域。区域集B中除了区域b1之外的区域为b2、b3、……、bn,所以{b2、b3、……、bn}为其他区域。
根据其他区域{b2、b3、……、bn}与区域b1间的交并比以及其他区域{b2、b3、……、bn}的被遮挡度,更新其他区域{b2、b3、……、bn}的置信度。并且可以将第一区域添加至预测集D中,添加后的预测集D={b1};
第二次循环开始时,由于区域b1已被选择过作为第一区域,那么区域集B中不包括区域b1,区域集B={b2、b3、……、bn}。其中,更新后的{b2、b3、……、bn}中置信度最高的区域为区域b2,所以将区域b2作为第一区域。区域集B中除了区域b2之外的区域为b3、……、bn,所以{b3、……、bn}为其他区域。
根据其他区域{b3、……、bn}与区域b2间的交并比以及其他区域{b3、……、bn}的被遮挡度,更新其他区域{b3、……、bn}的置信度。并且可以将第一区域添加至预测集D中,添加后的预测集D={b1,b2}。
第三次循环开始时,由于区域b1、区域b2已被选择过作为第一区域,那么区域集B={b3、……、bn}。其中,更新后的{b3、……、bn}中置信度最高的区域为区域b3,所以将区域b3作为第一区域。区域集B中除了区域b3之外的区域为b4、……、bn,所以{b4、……、bn}为其他区域。
根据其他区域{b4、……、bn}与区域b3间的交并比以及其他区域{b4、……、bn}的被遮挡度,更新其他区域{b4、……、bn}的置信度。并且可以将第一区域添加至预测集D中,添加后的预测集D={b1,b2,b3}。
按照类似的方式,直至区域集B中区域的数量为1,将区域集B中的唯一一个区域直接添加至预测集D中,循环结束,得到更新后的各区域的置信度。
这样,在每次循环时根据区域集中其他区域与第一区域间的交并比以及其他区域的被遮挡度,更新区域集中区域的置信度。其中,其他区域的被遮挡度反映其他区域的被遮挡的程度,在区域被遮挡时检测得到的区域地置信度的准确度低,通过引入其他区域的被遮挡度,能够使得更新后候选目标区域的置信度的准确度高;并且其他区域与第一区域间的交并比反映其他区域与第一区域间的重合度,且第一区域是置信度最高的区域,通过与置信度最高的区域之间的重合度,也能够有效调整其他区域的置信度。所以,在每次循环时根据上述交并比以及被遮挡度,能够有效更新其他区域的置信度。并且,通过循环迭代更新过程,能够进一步提高更新后的置信度的准确度。
本公开的一个实施例中,可以按照以下步骤A1-步骤A4更新其他区域的置信度。
步骤A1:计算区域集中其他区域与第一区域间的交并比。
具体的,首先计算其他区域与第一区域间的重叠面积,计算其他区域与第一区域的总面积;然后计算上述总面积与重叠面积之差,得到目标面积,最后将重叠面积与目标面积之间的比值确定为候选目标区域间的交并比。
步骤A2:根据交并比和预设的交并比阈值,确定第一置信度调节值。
上述预设的交并比阈值可以由工作人员根据经验设定,例如:交并比阈值可以为90%、95%等。
具体的,一种实施方式中,可以判断交并比是否小于预设的交并比阈值,若为是,确定第一置信度调节值为第一预设值,若为否,确定第一置信度调节值为第二预设值。
上述第一预设值和第二预设值均为工作人员根据经验设定的。
本公开的一个实施例中,还可以判断交并比是否小于预设的交并比阈值;若为是,确定第一置信度调节值为1;若为否,确定第一置信度调节值为:1与交并比之差。
例如:假设预设的交并比阈值为90%,当其他区域与第一区域间的交并比为95%时,交并比95%大于预设的交并比阈值90%,确定第一置信度调节值:1-95%=5%;当其他区域与第一区域间的交并比为50%时,交并比50%小于预设的交并比阈值90%,确定第一置信度调节值:1。
这样,当交并比小于预设的交并比阈值时,表示其他区域与第一区域间的重合度较小,说明其他区域中小部分图像内容被遮挡,检测得到的该其他区域的置信度的准确度高,在这种情况下,可以不对该其他区域的置信度进行调整。将第一置信度调节值设置为1,能够实现对区域的置信度不进行调整。当交并比不小于预设的交并比阈值时,表示其他区域与第一区域间的重合度较大,说明其他区域中大部分图像内容被遮挡,检测得到的该其他区域的置信度的准确度低,在这种情况下,需要对其他区域的置信度进行调整。将第一置信度调节值设置为1-交并比之差,可以使得调整后的置信度趋近于实际情况。
步骤A3:根据其他区域的被遮挡度,确定第二置信度调节值。
一种实施方式中,可以计算其他区域的被遮挡度以及预设的调节系数之间的乘积,作为第二置信度调节值。
上述预设的调节系数可以由工作人员根据经验设定,例如:预设的调节系数可以为1.2、1.5等。
本公开的一个实施例中,还可以按照以下表达式确定第二置信度调节值g(occ_pred):
g(occ_pred)=αocc_pred
其中,occ_pred为其他区域的被遮挡度,α为预设的常数,α>1。
因为α>1,所以第二置信度调节值g(occ_pred)是随着其他区域的被遮挡度增加而增加的。
由于区域的被遮挡度较高时,该区域的置信度的准确度低,所以需要对该区域的置信度进行大幅度调整,使得调整后的置信度趋近于实际情况。又由于第二置信度调节值g(occ_pred)是随着其他区域的被遮挡度增加而增加的,也就是其他区域的被遮挡度越高,第二置信度调节值越大,从而能够对该其他区域的置信度进行大幅度调整,使得调整后的其他区域的置信度趋近于实际情况。
步骤A4:采用第一置信度调节值和第二置信度调节值,调节其他区域的置信度。
本公开的一个实施例中,可以按照以下表达式,调节其他区域的置信度:
S’=S*T1*T2
其中,S’表示调节后的其他区域的置信度,S表示调节前的其他区域的置信度,T1表示第一置信度调节值,T2表示第二置信度调节值。
这样,由于调整后的置信度是第一置信度调节值、第二置信度调节值以及其他区域的置信度之间的乘积,又由于第一置信度调节值、第二置信度调节值从不同角度反映其他区域的被遮挡情况,因此,上述调整后的置信度参考了其他区域被遮挡的情况,使得调节后的置信度更加趋近于实际情况。
另一种实施方式中,还可以计算第一置信度调节值、第二置信度调节值以及其他区域的置信度之间的乘积,作为参考置信度,通过预设的置信度误差值调整上述参考置信度,得到调整后的参考置信度,作为其他区域调节后的置信度。
这样,由于第一置信度调节值是通过其他区域与第一区域间的交并比确定的,交并比反映其他区域与第一区域重合度,且第二置信度调节值是根据其他区域的被遮挡度确定的,被遮挡度反映其他区域的被遮挡程度,第一置信度调节值和第二置信度调节值从不同角度均能反映其他区域的被遮挡情况。所以采用第一置信度调节值、第二置信度调节值调节其他区域的置信度时,由于第一置信度调节值、第二置信度调节值从不同角度反映其他区域的被遮挡情况,采用第一置信度调节值和第二置信度调节值调节时,基于较为准确的其他区域的被遮挡情况对置信度进行调节,使得调节后的置信度更加趋近于实际情况。
以下以一个具体实现过程对上述循环更新置信度的方式进行说明。
假设,各候选目标区域为b1、b2、b3,预设的交并比阈值Nt为90%,各候选目标区域的置信度、被遮挡度如下表1所示。
表1
候选目标区域 |
置信度 |
被遮挡度 |
区域b1 |
Cv1 |
Co1 |
区域b2 |
Cv2 |
Co2 |
区域b3 |
Cv3 |
Co3 |
第一次循环开始时,区域集B={b1、b2、b3},其中,区域b1的置信度Cv1最高,区域b1为第一区域,区域b2、区域b3为其他区域。
针对区域b2,计算区域b2与区域b1之间的交并比,根据上述交并比与90%,确定第一置信度调节值。并根据区域b2的被遮挡度Co2,确定第二置信度调节值。根据第一置信度调节值和第二置信度调节值,调节区域b2的置信度Cv2,更新后的置信度为Cv21。
针对区域b3,计算区域b3与区域b1之间的交并比,根据上述交并比与90%,确定第一置信度调节值。并根据区域b3的被遮挡度Co3,确定第二置信度调节值。根据第一置信度调节值和第二置信度调节值,调节区域b3的置信度Cv3,更新后的置信度为Cv31。
第一次循环得到的更新后的各候选目标区域的置信度如下表2所示。
表2
第二次循环开始时,由于区域b1已被选择过,区域集B={b2、b3},其中,区域b2的置信度Cv21最高,区域b2为第一区域,区域b3为其他区域。
针对区域b3,计算区域b3与区域b2之间的交并比,根据上述交并比与90%,确定第一置信度调节值。并根据区域b3的被遮挡度Co3,确定第二置信度调节值。根据第一置信度调节值和第二置信度调节值,调节区域b3的置信度Cv31,更新后的置信度为Cv311。
由于区域b1、区域b3已被选择过,区域集B={b3},包含一个区域,循环结束。
最终得到的更新后的各候选目标区域的置信度如下表3所示。
表3
候选目标区域 |
置信度 |
区域b1 |
Cv1 |
区域b2 |
Cv21 |
区域b3 |
Cv311 |
本公开的一个实施例中,在上述步骤S101中可以针对不同的目标尺度,对图像进行目标检测,得到图像中不同尺度的候选目标区域、候选目标区域的置信度以及候选目标区域的被遮挡度。
目标尺度是指:目标的尺寸大小。
目标尺度可以是预先设定的尺度值,如目标尺度可以为16x16、32x32、64x64。
具体的,可以对图像进行多层特征提取,然后对不同的特征进行特征融合,得到不同尺度的特征。采用不同尺度的特征对图像进行目标检测,得到不同尺度的候选目标区域,并得到不同尺度的候选目标区域的置信度以及被遮挡度。
这样,由于不同尺度的候选目标区域包含的图像特征信息不同,通过得到图像中不同尺度的候选目标区域,丰富了候选目标区域在不同尺度上的特征信息。
本公开的一个实施例中,可以将图像输入预先训练得到的目标检测模型,获得目标检测模型输出的图像中的候选目标区域、候选目标区域的置信度以及候选目标区域的被遮挡度。
上述目标检测模型包括:用于检测图像中候选目标区域的目标检测层和用于预测候选目标区域被遮挡度的遮挡度预测层。
一种实现方式中,目标检测层除了检测图像中候选目标区域,还可以计算候选目标区域的置信度,在这种情况下,目标检测模型的网络结构可以如图3a所示,目标检测模型包括目标检测层和遮挡度预测层。
具体的,图像在输入至目标检测模型后,模型中的目标检测层检测图像中的候选目标区域,并计算候选目标区域的置信度,将检测结果传输至遮挡度预测层;遮挡度预测层预测各个候选目标区域被遮挡度,目标检测模型输出候选目标区域、候选目标区域的置信度以及被遮挡度。
由前述实施例得知,在对图像进行目标检测时,可以针对每一目标尺度,得到不同尺度的候选目标区域、候选目标区域的置信度以及候选目标区域的被遮挡度。在这种情况下,可以在上述网络模型的基础上增加FPN(Feature Pyramid Networks,特征金字塔网络),FPN用于得到各种不同尺度的候选目标区域、候选目标区域的置信度以及被遮挡度。
增加FPN后的网络模型的网络结构可以如图3b所示,图3b所示的网络结构包括骨干网络(Backbone)和FPN。
其中,骨干网络用于对图像进行特征提取,得到图像中不同层级的图像特征,并将不同层级的图像特征输入至FPN中。
例如:骨干网络为卷积神经网络时,卷积神经网络的每一层卷积层都可以对图像进行卷积操作,从而得到不同层级的图像特征。
FPN用于对不同层级的图像特征进行特征融合,得到不同尺度的图像特征,基于不同尺度的图像特征进行目标检测,得到不同尺度的候选目标区域,并得到候选目标区域的置信度以及被遮挡度,实现了对不同层级的图像特征进行分治处理。
在训练目标检测模型时,将样本图像作为训练样本,并以样本图像中的真实候选目标区域以及真实被遮挡度作为训练标注,对预设的神经网络模型进行训练,直至满足训练结束条件,得到训练完毕的目标检测模型。
上述预设的神经网络模型可以为CNN(Conv Neural Network,卷积神经网络)模型、RNN(Recurrent Neural Network,递归神经网络)模型、DNN(Deep Neural Network,深度神经网络)模型等。
具体的,样本图像在输入至预设的神经网络模型后,上述预设的神经网络模型对样本图像进行目标检测,得到样本图像的候选目标区域以及被遮挡度,计算候选目标区域与真实目标区域间的差异、以及候选目标区域的被遮挡度与真实被遮挡度间的差异,根据计算得到的差异调整神经网络模型的参数,不断迭代调整参数,直至满足预设的训练结束条件。
上述训练结束条件可以为训练次数到达预设次数、模型参数满足预设的模型参数收敛条件等。
由于目标检测模型通过大量训练样本训练得到,训练过程中,目标检测模型学习到了样本图像中目标区域的特征以及被遮挡的特征,因此,目标检测模型具有较强鲁棒性,从而采用目标检测模型对图像进行目标检测时,能够输出准确的候选目标区域、候选目标区域的置信度以及被遮挡度。
在上述步骤S101中,除了采用目标检测模型对图像进行目标检测之外,还可以将图像划分为多个区域,针对每一区域,提取该区域中的图像特征,根据图像特征确定区域中候选目标区域。
上述图像特征包括:纹理特征、颜色特征、边缘特征等。
在得到各候选目标区域后,根据各候选目标区域的图像特征,预测各候选目标的置信度。
并且,还可以根据各候选目标区域所属图层以及位置信息,计算各候选目标区域的被遮挡度。
具体的,可以根据候选目标区域所属图层以及位置间的相对关系,确定候选目标区域之间是否发生遮挡,计算被遮挡的面积与被遮挡的区域的面积之间的比值,作为候选目标区域的被遮挡度。
例如:当候选目标区域A位于前景图层、候选目标区域B位于背景图层,且候选目标区域A与候选目标区域B的位置信息之间发生重合,可以确定候选目标区域B被遮挡,计算候选目标区域B的被遮挡面积与候选目标区域B的面积之比,作为候选目标区域B的被遮挡度。
与上述车路协同中目标检测方法相对应,本公开的实施例还提供了一种车路协同中目标检测装置。
参见图4,图4为本公开的实施例提供的一种车路协同中目标检测装置的结构示意图,上述装置包括以下模块401-403。
信息获得模块401,用于对图像进行目标检测,得到所述图像中的候选目标区域、候选目标区域的置信度以及候选目标区域的被遮挡度;
置信度更新模块402,用于基于候选目标区域间的交并比以及候选目标区域的被遮挡度,更新候选目标区域的置信度;
目标检测模块403,用于根据更新后的置信度,从候选目标区域中检测所述图像中的目标。
由以上可见,应用本公开的实施例提供的方案进行目标检测时,首先根据候选目标区域间的交并比以及候选目标区域的被遮挡度,更新候选目标区域的置信度,然后基于更新后的置信度,从候选目标区域中检测图像中的目标。由于候选目标区域间的交并比能够反映各候选目标区域间的重合度,候选目标区域的被遮挡度能够反映候选目标区域被遮挡的程度,因此,根据上述交并比和被遮挡度更新置信度,使得目标区域的置信度能够参考目标区域间的重叠情况,进而更新后候选目标区域的置信度更加趋向于实际情况,从而根据更新后的置信度对图像进行目标检测,能够提高目标检测的准确率。
本公开的一个实施例中,所述置信度更新模块402具体用于循环从区域集中选择置信度最高的第一区域,根据区域集中其他区域与所述第一区域间的交并比以及其他区域的被遮挡度,更新其他区域的置信度,直至所述区域集中包括一个区域,其中,所述区域集包括:候选目标区域中未被选择过的区域。
这样,在每次循环时根据区域集中其他区域与第一区域间的交并比以及其他区域的被遮挡度,更新区域集中区域的置信度。其中,其他区域的被遮挡度反映其他区域的被遮挡的程度,在区域被遮挡时检测得到的区域地置信度的准确度低,通过引入其他区域的被遮挡度,能够使得更新后候选目标区域的置信度的准确度高;并且其他区域与第一区域间的交并比反映其他区域与第一区域间的重合度,且第一区域是置信度最高的区域,通过与置信度最高的区域之间的重合度,也能够有效调整其他区域的置信度。所以,在每次循环时根据上述交并比以及被遮挡度,能够有效更新其他区域的置信度。并且,通过循环迭代更新过程,能够进一步提高更新后的置信度的准确度。
本公开的一个实施例中,所述置信度更新模块402,包括:
交并比计算单元,用于计算区域集中其他区域与所述第一区域间的交并比;
第一调节值确定单元,用于根据所述交并比和预设的交并比阈值,确定第一置信度调节值;
第二调节值确定单元,用于根据其他区域的被遮挡度,确定第二置信度调节值;
置信度调节单元,用于采用所述第一置信度调节值和第二置信度调节值,调节其他区域的置信度。
这样,由于第一置信度调节值是通过其他区域与第一区域间的交并比确定的,交并比反映其他区域与第一区域重合度,且第二置信度调节值是根据其他区域的被遮挡度确定的,被遮挡度反映其他区域的被遮挡程度,第一置信度调节值和第二置信度调节值从不同角度均能反映其他区域的被遮挡情况。所以采用第一置信度调节值、第二置信度调节值调节其他区域的置信度时,由于第一置信度调节值、第二置信度调节值从不同角度反映其他区域的被遮挡情况,采用第一置信度调节值和第二置信度调节值调节时,基于较为准确的其他区域的被遮挡情况对置信度进行调节,使得调节后的置信度更加趋近于实际情况。
本公开的一个实施例中,所述第一调节值确定单元,具体用于判断所述交并比是否小于预设的交并比阈值;若为是,确定第一置信度调节值为1;若为否,确定所述第一置信度调节值为:1与所述交并比之差。
这样,当交并比小于预设的交并比阈值时,表示其他区域与第一区域间的重合度较小,说明其他区域中小部分图像内容被遮挡,检测得到的该其他区域的置信度的准确度高,在这种情况下,可以不对该其他区域的置信度进行调整。将第一置信度调节值设置为1,能够实现对区域的置信度不进行调整。当交并比不小于预设的交并比阈值时,表示其他区域与第一区域间的重合度较大,说明其他区域中大部分图像内容被遮挡,检测得到的该其他区域的置信度的准确度低,在这种情况下,需要对其他区域的置信度进行调整。将第一置信度调节值设置为1-交并比之差,可以使得调整后的置信度趋近于实际情况。
本公开的一个实施例中,所述第二调节值确定单元,具体用于按照以下表达式确定第二置信度调节值g(occ_pred):
g(occ_pred)=αocc_pred
其中,occ_pred为其他区域的被遮挡度,α为预设的常数,α>1。
由于区域的被遮挡度较高时,该区域的置信度的准确度低,所以需要对该区域的置信度进行大幅度调整,使得调整后的置信度趋近于实际情况。又由于第二置信度调节值g(occ_pred)是随着其他区域的被遮挡度增加而增加的,也就是其他区域的被遮挡度越高,第二置信度调节值越大,从而能够对该其他区域的置信度进行大幅度调整,使得调整后的其他区域的置信度趋近于实际情况。
本公开的一个实施例中,所述置信度调节单元,具体用于按照以下表达式,调节其他区域的置信度:
S’=S*T1*T2
其中,S’表示调节后的其他区域的置信度,S表示调节前的其他区域的置信度,T1表示所述第一置信度调节值,T2表示所述第二置信度调节值。
这样,由于调整后的置信度是第一置信度调节值、第二置信度调节值以及其他区域的置信度之间的乘积,又由于第一置信度调节值、第二置信度调节值从不同角度反映其他区域的被遮挡情况,因此,上述调整后的置信度参考了其他区域被遮挡的情况,使得调节后的置信度更加趋近于实际情况。
本公开的一个实施例中,所述目标检测模块403,具体用于选择更新后的置信度大于预设置信度阈值的候选目标区域,将所选择候选目标区域中的目标确定为所述图像中的目标;或选择更新后的置信度最大的预设数量个候选目标区域,将所选择候选目标区域中的目标确定为所述图像中的目标。
这样,对于置信度大于预设置信度阈值的候选目标区域来说,这些候选目标区域中包含目标的可能性高于其他候选目标区域包含目标的可能性。所以,将置信度大于预设置信度阈值的候选目标区域中的目标确定为图像中的目标,所得到的目标准确度较高;对于置信度最大的预设数量个候选目标区域来说,这些候选目标区域中包含目标的可能性高于其他候选区域中包含目标的可能性。所以,将置信度最大的预设数量个候选目标区域中的目标确定为图像中的目标,所得到的目标的准确度较高。
本公开的一个实施例中,所述信息获得模块401,具体用于针对不同的目标尺度,对图像进行目标检测,得到所述图像中不同尺度的候选目标区域、候选目标区域的置信度以及候选目标区域的被遮挡度。
这样,由于不同尺度的候选目标区域包含的图像特征信息不同,通过得到图像中不同尺度的候选目标区域,丰富了候选目标区域在不同尺度上的特征信息。
本公开的一个实施例中,所述信息获得模块401,具体用于将图像输入预先训练得到的目标检测模型,获得所述目标检测模型输出的所述图像中的候选目标区域、候选目标区域的置信度以及候选目标区域的被遮挡度,其中,所述目标检测模型包括:用于检测图像中候选目标区域的目标检测层和用于预测候选目标区域被遮挡度的遮挡度预测层。
这样,由于目标检测模型通过大量训练样本训练得到,训练过程中,目标检测模型学习到了样本图像中目标区域的特征以及被遮挡的特征,因此,目标检测模型具有较强鲁棒性,从而采用目标检测模型对图像进行目标检测时,能够输出准确的候选目标区域、候选目标区域的置信度以及被遮挡度。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
本公开的一个实施例中,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述方法实施例中任一车路协同中目标检测方法。
本公开的一个实施例中,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行前述方法实施例中任一车路协同中目标检测方法。
本公开的一个实施例中,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现前述方法实施例中任一车路协同中目标检测方法。
本公开的一个实施例中,提供了一种路侧设备,包括上述电子设备。
本公开的一个实施例中,提供了一种云控平台,包括上述电子设备。
图5示出了可以用来实施本公开的实施例的示例电子设备500的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图5所示,设备500包括计算单元501,其可以根据存储在只读存储器(ROM)502中的计算机程序或者从存储单元508加载到随机访问存储器(RAM)503中的计算机程序,来执行各种适当的动作和处理。在RAM 503中,还可存储设备500操作所需的各种程序和数据。计算单元501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
设备500中的多个部件连接至I/O接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理,例如车路协同中目标检测方法。例如,在一些实施例中,车路协同中目标检测方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由ROM 502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序加载到RAM 503并由计算单元501执行时,可以执行上文描述的车路协同中目标检测方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行车路协同中目标检测方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
可选的,路侧设备除了包括电子设备,还可以包括通信部件等,电子设备可以和通信部件一体集成,也可以分体设置。电子设备可以获取感知设备(如路侧相机)的数据,例如图片和视频等,从而进行图像视频处理和数据计算。可选的,电子设备自身也可以具备感知数据获取功能和通信功能,例如是AI相机,电子设备可以直接基于获取的感知数据进行图像视频处理和数据计算。
可选的,云控平台在云端执行处理,云控平台包括的电子设备可以获取感知设备(如路侧相机)的数据,例如图片和视频等,从而进行图像视频处理和数据计算;云控平台也可以称为车路协同管理平台、边缘计算平台、云计算平台、中心***、云端服务器等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。