灯头位置确定方法、装置、存储介质、程序、路侧设备与流程

文档序号:24875975发布日期:2021-04-30 12:51阅读:126来源:国知局
灯头位置确定方法、装置、存储介质、程序、路侧设备与流程

本申请涉及图像处理技术中的智能交通技术、无人驾驶技术,尤其涉及一种灯头位置确定方法、装置、存储介质、程序、路侧设备。



背景技术:

信号灯在生活中随处可见,在信号灯中包括多个灯头。比如红绿灯中包括三个灯头。

在一些应用场景中需要采集信号灯的状态信息,比如采集信号灯的灯色。一种实施方式中,可以采集包括信号灯的图像,再根据采集的图像确定信号灯的状态。

当基于图像确定信号灯的状态时,需要预先确定信号灯在图像中的位置,再进行识别。但是实际过程中,无论是架设设备发生的热胀冷缩,还是安装元件老化松动都会导致图像采集设备发生微小移动,进而根据预先确定的位置无法获取完整的信号灯,也就无法得到准确的信号灯状态。



技术实现要素:

本申请提供了一种灯头位置确定方法、装置、存储介质、程序、路侧设备,用于根据拍摄的包括信号灯的图像确定信号灯灯头位置。

根据本申请的第一方面,提供了一种灯头位置的确定方法,包括:

针对采集到的多帧包括信号灯的图像,确定每一所述图像中的各圆形,并确定每一所述圆形的圆心;

根据各圆心,确定各圆心中每两个圆心间的圆心间距;

根据各圆心间距确定圆心数量,并根据所述圆心数量和各圆心,确定所述图像中信号灯的灯头位置。

根据本申请的第二方面,提供了一种灯头位置的确定装置,包括:

圆心确定单元,用于针对采集到的多帧包括信号灯的图像,确定每一所述图像中的各圆形,并确定每一所述圆形的圆心;

间距确定单元,用于根据各圆心,确定各圆心中每两个圆心间的圆心间距;

数量确定单元,用于根据各圆心间距确定圆心数量;

位置确定单元,用于根据所述圆心数量和各圆心,确定所述图像中信号灯的灯头位置。

根据本申请的第三方面,提供了一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面所述的灯头位置的确定方法。

根据本申请的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如第一方面所述的灯头位置的确定方法。

根据本申请的第五方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如第一方面所述的灯头位置的确定方法。

根据本申请的第六方面,提供了一种路侧设备,包括:如第三方面所述的电子设备。

本申请提供的灯头位置确定方法、装置、存储介质、程序、路侧设备,包括:针对采集到的多帧包括信号灯的图像,确定每一图像中的各圆形,并确定每一圆形的圆心;根据各圆心,确定各圆心中每两个圆心间的圆心间距;根据各圆心间距确定圆心数量,并根据圆心数量和各圆心,确定图像中信号灯的灯头位置。这种实施方式中,可以通过在图像中识别圆形的方式,确定灯头位置,从而避免图像采集装置或信号灯位置发生变化,导致无法基于预设标注信息获取完整的信号灯,且本申请提供的方案只需要在图像中识别圆形就可以实现,这种方式耗时少,所需算力少。

应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本申请的限定。其中:

图1a为本申请另一示例性实施例示出的应用场景图;

图1b为本申请一示例性实施例示出的通过图像采集装置采集的图像示意图;

图1c为本申请一示例性实施例示出的信号灯;

图1d为本申请另一示例性实施例示出的信号灯;

图2为本申请一示例性实施例示出的灯头位置的确定方法的流程示意图;

图3为本申请一示例性实施例示出的圆心示意图;

图4为本申请另一示例性实施例示出的灯头位置的确定方法的流程示意图;

图5a为本申请一示例性实施例示出的确定预设指定区域的示意图;

图5b为本申请一示例性实施例示出的连通区域的示意图;

图5c为本申请一示例性实施例示出的灯头位置确定方式示意图;

图6为本申请一示例性实施例示出的灯头位置的确定装置的结构图;

图7为本申请另一示例性实施例示出的灯头位置的确定装置的结构图;

图8是用来实现本申请实施例的灯头位置的确定方法的电子设备的框图。

具体实施方式

以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

在很多应用场景中都设置有信号灯,通过信号灯能够起到引导的作用。在一些实施例中,需要采集信号灯的状态信息,比如,需要识别识别信号灯的灯色,从而更便于实现引导功能。比如,在智能交通领域,通过识别信号灯灯色,可以进行闯红灯检测等业务,还可以向远处的车辆广播当前信号灯的状态,以便这些车辆提前进行路径规划。

但是,基于图像确定信号灯的状态时,需要预先确定信号灯在图像中的位置,再进行识别。在这一识别过程中,若架设设备发生热胀冷缩,或安装元件老化松动,都会导致图像采集设备发生移动,进而导致无法基于预先标定的位置,在采集图像中获取完整的信号灯,进而无法得到准确的信号灯状态。

一种实施方式中,可以在信号灯附近设置图像采集装置,从而使用图像采集装置拍摄信号灯的图像,图像采集装置可以是摄像机,可以通过摄像机采集连续的包括信号灯的图像。

进一步的,图像采集装置可以将拍摄的图像发送给用于采集信号灯状态的服务器,基于需求,电子设备可以根据接收的图像进行处理。

图1a为本申请另一示例性实施例示出的应用场景图。

如图1a所示,可以在道路旁设置路侧设备11,路侧设备11与图像采集装置12连接,图像采集装置12可以拍摄到信号灯13的图像。

图1b为本申请一示例性实施例示出的通过图像采集装置采集的图像示意图。

图像采集装置12可以采集如图1b中14所示的图像,并将图像14发送给路侧设备11,或者服务器。

可以预先标注信号灯所在区域,路侧设备11或者服务器可以根据预先标注的信号灯位置对接收的图像14进行裁剪处理,得到如15所示出的仅包括信号灯的图像,并基于需求对该剪裁后的图像进行处理。

图1c为本申请一示例性实施例示出的信号灯;图1d为本申请另一示例性实施例示出的信号灯。

如图1c、1d所示,无论是哪种形态的信号灯,都具有圆形的灯头边框。而对信号灯图像进行处理时,主要是识别信号灯中的灯头状态,因此,本申请提供的方法,通过在连续多帧图像中识别圆形,并基于识别结果确定图像中的灯头位置,这种方式能够避免信号灯的标记位置出现偏差,导致无法获取信号灯状态的问题。

本申请提供一种灯头位置确定方法、装置、存储介质、程序、路侧设备,应用于图像处理领域中的智能交通技术、无人驾驶技术,用于根据拍摄的包括信号灯的图像确定信号灯灯头位置。

图2为本申请一示例性实施例示出的灯头位置的确定方法的流程示意图。

如图2所示,本申请一示例性实施例示出的灯头位置的确定方法,包括:

步骤201,针对采集到的多帧包括信号灯的图像,确定每一图像中的各圆形,并确定每一圆形的圆心。

本申请提供的方法可以由具备计算能力的电子设备来执行,该电子设备能够接收到图像采集装置采集的包括信号灯的图像。

其中,该电子设备还可以基于需求对接收的图像进行处理,比如,可以执行识别信号灯状态,或者提取信号灯灯色的方案。

具体的,电子设备在对接收的图像进行处理时,可以基于预先标定的位置信息,提取图像中包括的信号灯,进而对信号灯进行识别。若图像采集装置的位置存在偏移,或者设置信号灯的设备存在偏移,都会导致基于预先标定的位置信息无法提取到完整的信号灯。

进一步的,电子设备在基于采集的图像进行处理时,还可以根据这些图像确定图像中的灯头位置。

实际应用时,电子设备可以对采集的多帧包括信号灯的图像进行处理,比如,可以设定图像数量n,可以对采集的连续n帧图像进行处理。

其中,电子设备每接收到一帧图像,就可以确定该图像中的各圆形,并确定每一圆形的圆心。电子设备还可以将确定的圆心存储到预设列表里,比如,可以预先设置一个圆心列表,该圆心列表中可以存储与每帧图像对应的圆心。

具体的,可以通过坐标的方式记录圆心,比如,在列表中记录有图像标识p1,还可以记录p1对应的圆心(x1,y1)、(x2,y2)、(x3,y3)。其中的x1、y1、x2、y2、x3、y3可以是图像中的像素坐标值。

进一步的,电子设备可以利用霍夫变换算法,在图像中确定圆形。还可以根据确定的圆形确定圆心。

霍夫变换是一种特征检测(featureextraction)算法,霍夫变换是用来辨别找出物件中的特征,例如:圆形。

由于信号灯的灯头为圆形,因此,利用霍夫变换识别圆形的方式,能够在一帧图像中确定出符合灯头样式的圆形位置。

实际应用时,若处理的图像帧数达到预设帧数,则可以执行步骤202,否则,继续对接收的图像帧执行步骤201。比如,预设帧数为n,当得到n帧图像的圆心后,可以执行步骤202。

步骤202,根据各圆心,确定各圆心中每两个圆心间的圆心间距。

实际应用时,针对各个图像中识别出的各圆心,可以确定这些圆心中,每两个圆心间的圆心间距。

图3为本申请一示例性实施例示出的圆心示意图。

如图3所示,针对每幅图像都可以确定出至少一个圆心31,由于这些图像是同一图像采集装置采集的,因此,可以将确定出的圆心31映射到同一幅图像中,如图3所示,并确定各个圆心之间的间距32,如图中圆心之间的连线距离。

间距32为示意性的两个圆心之间的连线,针对每两个圆心,都可以根据圆心的位置确定出连线距离。

步骤203,根据各圆心间距确定圆心数量,并根据圆心数量和各圆心,确定图像中信号灯的灯头位置。

其中,圆心数量是指电子设备根据多帧图像确定出的圆心数量,比如,圆心数量为3,则可以认为电子设备根据多帧图像确定图像中存在三个圆形,若圆形数量为2,则可以认为电子设备根据多帧图像确定图像中存在两个圆形。

具体的,电子设备在识别不同图像中的同一圆形时,识别的位置也可能存在差别,进而得到的圆心也存在差别。

进一步的,不同图像中同一圆形的位置识别结果即使存在差别,也应当是相近的。比如,针对灯头1对应的圆形,在第一幅图像中可以识别出对应的圆心c1,在第二幅图像中可以识别出对应的圆心c2。c1与c2应当距离较近。再例如,针对灯头2对应的圆形,在第一幅图像中可以识别出对应的圆心c3,c3与c1距离应当较远。

因此,可以根据识别的各个圆心之间的距离,确定圆心数量。比如,若识别结果中,两个圆心间距较近,则可以认为这两个圆心属于同一个圆形。若识别结果中,两个圆心间距较远,则可以认为这两个圆心不属于同一个圆形。

实际应用时,可以设置预设距离,若圆心间距小于预设距离,则可以认为该圆心间距对应的两个圆心实际上是同一个圆心。基于此,电子设备可以确定出识别结果中的圆心数量。

其中,电子设备可以根据圆心数量和识别的各个圆心,确定各个图像中信号灯的灯头位置。

例如,若确定的圆心数量与信号灯的灯头数量一致,则可以直接根据各圆心,确定灯头位置。若确定的圆心数量与灯头数量不符,则可以删除确定的圆心,再根据新接收的图像确定圆心,从而基于新确定的圆心和已有的圆心,重新确定图像中信号灯的灯头位置。

具体的,若确定的圆心数量与信号灯的灯头数量一致,则可以根据各个圆心,确定出图像中信号灯的灯头位置。比如,若识别结果中,有三个圆心实际是同一圆心,则可以根据这三个圆心确定图像中的一个灯头位置。比如,可以计算这三个圆心位置的均值,得到灯头位置。

本申请提供的灯头位置的确定方法,包括:针对采集到的多帧包括信号灯的图像,确定每一图像中的各圆形,并确定每一圆形的圆心;根据各圆心,确定各圆心中每两个圆心间的圆心间距;根据各圆心间距确定圆心数量,并根据圆心数量和各圆心,确定图像中信号灯的灯头位置。这种实施方式中,可以通过在图像中识别圆形的方式,确定灯头位置,从而避免图像采集装置或信号灯位置发生变化,导致无法基于预设标注信息获取完整的信号灯,且本申请提供的方案只需要在图像中识别圆形就可以实现,这种方式耗时少,所需算力少。

图4为本申请另一示例性实施例示出的灯头位置的确定方法的流程示意图。

如图4所示,本申请提供的灯头位置的确定方法,包括:

步骤401,根据信号灯灯框位置,在采集到的多帧包括信号灯的图像中确定预设指定区域。

本申请提供的方法可以由具备计算能力的电子设备来执行,该电子设备能够接收到图像采集装置采集的包括信号灯的图像。

其中,该电子设备还可以基于需求对接收的图像进行处理,比如,可以执行识别信号灯状态,或者提取信号灯灯色的方案。

具体的,本申请提供的方法中,预先在历史图像中标注有信号灯灯框位置。例如,可以通过图像采集装置采集一幅包括信号灯的历史图像,用户可以在该历史图像中标注信号灯灯框。若图像采集装置与红绿灯的位置不变,那么基于该信号灯灯框位置能够在图像采集装置采集的其他图像中,裁剪出信号灯。

进一步的,若由于热胀冷缩或螺栓发生松动等原因,造成图像采集装置与红绿灯的相对位置发生改变,则电子设备无法根据预先标注的信号灯灯框位置从采集的图像中,裁剪出完整的信号灯。

因此,本申请提供的方法中,电子设备可以根据信号灯灯框位置,在采集到的多帧包括信号灯的图像中确定预设指定区域。具体可以在信号灯灯框位置的基础上,在上下左右各个方向进行扩张,得到预设指定区域。

图5a为本申请一示例性实施例示出的确定预设指定区域的示意图。

如图5a所示,可以在图像51中确定预先标注的信号灯灯框位置52,电子设备可以对灯框位置52进行扩张,得到预设指定区域53。

步骤402,针对采集到的多帧包括信号灯的图像,在每一图像的预设指定区域内确定各圆形,并确定每一圆形的圆心。

电子设备对采集的图像进行处理时,具体可以在每一图像的预设指定区域内确定各圆形。

这种实施方式中,可以缩小电子设备需要处理的图像的尺寸,从而减小电子设备的数据处理量。而且,这种实施方式,还可以避免图像中除信号灯的区域存在的圆形影响识别结果。

实际应用时,具体在预设指定区域中确定圆形及圆心的方式,与步骤201相似,不再赘述。

步骤403,根据各圆心,确定各圆心中每两个圆心间的圆心间距。

步骤403与步骤202的实现方式、原理类似,不再赘述。

步骤404,构建包括各个圆心的图,其中,图中包括圆心间距信息。

一种实施方式中,电子设备可以构建包括各圆心的图,每两个圆心间的间距与确定的圆心间距一致。比如,在图像中确定出圆心c1和c2,那么在构建的图中也包括这两个圆心c1和c2。

具体的,在构建的图中,c1与c2之间的间距与确定的c1、c2之间的圆心间距一致。

另一种实施方式中,还可以根据各个圆心的位置信息,构建该图。比如,可以根据图像采集装置采集的图像尺寸,构建一空白图像,再在该空白图像中标注识别的各个圆心。具体可以根据各个圆心的像素坐标,在空白图像中进行标注。

步骤405,在图中确定连通区域,并根据连通区域的数量确定圆心数量;其中,连通区域表征圆心位置聚集区域。

进一步的,电子设备可以在构建的途中确定连通区域,连通区域能够表征圆心位置聚集区域。

实际应用时,若干个圆心聚集在小范围的区域中,则电子设备可以确定这个小范围区域为一个连通区域。若在多帧图像中确定的部分圆心聚集在同一个小范围内,则可以认为这些圆心实际上属于图像中同一个圆形的圆心,只是由于算法或计算误差,导致这些圆心没有完全重叠。

因此,可以认为一个圆心位置的聚集区域代表实际存在的一个圆心,可以直接将连通区域的数量确定为圆心数量。

可以认为预设指定区域中实际存在的圆心数量,就是电子设备在预设指定区域中识别出的圆形数量,也就是灯头数量。这种实施方式中,可以通过在图像的预设指定区域中确定圆心的方式,确定当前识别的灯头数量。进而可以基于确定的灯头数量识别图像中的灯头位置。

其中,可以基于以下规则确定连通区域,在连通区域中的任一圆心都具有至少一个临近圆心,圆心与临近圆心之间的圆心间距小于预设值。

具体的,可以设置一预设值,该预设值用于确定连通区域。在连通区域中,针对任一圆心都存在另一个与该圆心临近的圆心。

图5b为本申请一示例性实施例示出的连通区域的示意图。

如图5b所示,在构建的图中,可以确定出两个连通区域54、55。每个连通区域中都集中聚集了圆心,通过这种方式能够确定出图像中实际圆心的数量,进而确定出灯头数量。

步骤406,若圆心数量与灯头数量一致,或者圆心数量比灯头数量少1且圆心数量大于1,则根据各个连通区域中包括的圆心,确定图像中信号灯的灯头位置。

在一种可选的实施方式中,预先设置有图像中包括的信号灯的灯头数量。比如,可以标记该信号灯共包括3个灯头,或者标记该信号灯共包括2个灯头。

若电子设备确定图像中包括的圆心数量与预设的灯头数量一致,则可以直接根据各个连通区域中包括的圆心,确定图像中信号灯的灯头位置。

这种实施方式中,图像的预设指定区域中的圆心数量与灯头数量一致,也就是图像中的预设指定区域中的圆形数量与预设灯头数量一致,因此,可以认为电子设备在图像中识别到了各个灯头。因此,可以直接根据各个连通区域中包括的圆心确定灯头位置。

比如,电子设备可以直接根据连通区域内的圆心位置确定平均位置,进而得到灯头的中心位置。

在另一种实施方式中,信号灯的灯头数量一般为3个或2个,若圆心数量比灯头数量少1,而且圆心数量大于1,则说明在信号灯的灯头数量为3个时,电子设备在图像的指定区域中识别到了两个灯头,此时,电子设备可以直接根据各个连通区域中包括的圆心确定灯头位置。

实际应用时,若电子设备识别出了三个灯头中两端的两个灯头,而三个灯头位于一条直线,则电子设备可以根据这两个灯头的位置确定信号灯中的各个灯头位置。

其中,在根据各个连通区域中包括的圆心,确定图像中信号灯的灯头位置时,电子设备还可以获取初始圆心位置。初始圆心位置是指预先标注的灯头中心位置,比如,可以在本实施例提供的方法最开始的时候,确定的圆心位置。例如,电子设备可以根据预先标注的信号灯灯框位置,确定初始圆心位置。

具体的,电子设备还可以根据各个连通区域中包括的圆心确定与每个连通区域对应目标圆心位置。比如,电子设备可以计算一个连通区域内各个圆心的平均位置,并将其作为该连通区域的目标圆心位置。

进一步的,电子设备可以比对目标圆心位置与初始圆心位置,从而确定识别出的目标圆心位置是否与灯头中心位置相符。

实际应用时,针对每个连通区域,电子设备都可以确定出对应的目标圆心位置。电子设备可以确定各个目标圆心位置在第一方向的间距,还可以确定各个目标圆心位置在第二方向的间距。第一方向与第二方向相互垂直。

第二方向可以是灯头的排列方向,第一方向与第二方向垂直。比如,灯头若是横向排列的,则第二方向是横向,第一方向是纵向。

其中,若在第一方向确定的各个间距小于第一间距阈值,且根据初始圆心位置,确定在第二方向确定的各个间距符合预设条件,则可以直接将目标圆心位置确定为信号灯的灯头圆心位置。

若各个目标圆心位置在第一方向确定的各个间距小于第一间距阈值,则可以说明目标圆心位置在一条直线上。若根据初始圆心位置,确定在第二方向确定的各个间距符合预设条件,则可以认为各个目标圆心位置在第二方向的各个间距与初始圆心位置一致,因此,可以认为目标圆心位置就是灯头的圆心位置。

这种实施方式中,可以确保识别出的目标圆心位置在符合信号灯的灯头位置时,才被确定为灯头的圆心位置,避免确定的结果不准确。

图5c为本申请一示例性实施例示出的灯头位置确定方式示意图。

如图5c所示,在图中确定了三个连通区域56、57、58,每个连通区域中都包括若干个圆心。可以根据每个连通区域中的圆心,确定对应的目标圆心位置。

比如,连通区域56对应的目标圆心位置为561,连通区域57对应的目标圆心位置为571,连通区域58对应的目标圆心位置为581。

可以确定这三个目标圆心位置在第一方向的各个间距,以及在第二方向的各个间距。比如,横向为第一方向、纵向为第二方向。以561、571为例,电子设备可以确定出第一方向的间距591、第二方向的间距592。

若确定出的第一方向的各个间距均小于第一间距阈值,且根据初始圆心位置确定第二方向的各个间距均符合预设条件,则可以将目标圆心位置为561、目标圆心位置为571、目标圆心位置为581直接作为灯头圆心位置。

具体的,电子设备可以根据获取的初始圆心位置,确定初始圆心位置在第二方向上的标准间距信息。第二方向可以是灯头的排列方向,比如,灯头是纵向排列的,则第二方向是纵向。

进一步的,电子设备可以根据每个初始圆心位置,确定初始圆心的标准间距信息,比如,三个灯头之间,每两个灯头在第二方向上的标准间距信息。

实际应用时,电子设备还可以根据各个目标圆心位置,确定第二方向的识别间距信息。比如,若存在三个目标圆心位置,则可以确定每两个目标圆心位置在第二方向上的识别间距信息。

其中,若识别间距信息与标准间距信息之间的差距小于第二间距阈值,则确定目标圆心位置在第二方向的间距符合预设条件。具体可以计算对应的识别间距信息与标准间距信息之间的差距,比如,一个识别间距信息是最上端目标圆心位置与中间目标圆心位置之间的间距,一个标准间距信息是最上端初始圆心位置与中间初始圆心位置之间的间距,则可以确定这两个间距之间的差距。

具体的,若各个识别间距信息与其对应的标准间距信息之间的差距均小于第二间距阈值,则可以认为目标圆心位置符合预设条件。

这种实施方式中,能够在目标圆心位置之间的距离与初始圆心之间的间距相似时,电子设备才会将目标圆心位置确定为灯头的中心,从而使最终确定的结果更加准确。

进一步的,在一种可选的实施方式中,若灯头数量为3,则标准间距信息包括标准小间距和标准大间距。标准小间距是指中间的灯头与两侧的灯头之间的距离,标准大间距是指两端灯头之间的距离。

实际应用时,若圆心数量与灯头数量一致,即圆心数量为3,则识别间距信息包括:识别小间距、识别大间距。识别小间距是指目标圆心间间距较小的值,若圆心数量为3,则可以确定出两个识别小间距。

若标准小间距与识别小间距之间的差距小于第二间距阈值,且标准大间距与识别大间距之间的差距小于第二间距阈值,则确定目标圆心位置在第二方向的间距符合预设条件。

这种实施方式中,可以在识别的目标圆心数量与灯头数量一致的情况下,根据圆心间距确定识别结果是否与灯头位置相符,并只有在目标圆心位置与灯头位置相符的情况下,才将目标圆心位置确定为灯头位置,从而使识别的结果较为准确。

实际应用时,在一种可选的实施方式中,若灯头数量为3,则标准间距信息包括标准小间距和标准大间距。标准小间距是指中间的灯头与两侧的灯头之间的距离,标准大间距是指两端灯头之间的距离。

实际应用时,若圆心数量为2,则只可以得到一个识别间距信息。若标准大间距与识别间距之间的差距小于第二间距阈值,则确定目标圆心位置在第二方向的间距符合预设条件。

这种实施方式中,可以在识别的目标圆心数量与灯头数量不一致的情况下,根据圆心间距确定识别结果是否与灯头位置相符,并只有在目标圆心位置与灯头位置相符的情况下,才将目标圆心位置确定为灯头位置,从而使识别的结果较为准确。

其中,若在目标圆心数量为2,灯头数量为3,在将目标圆心位置确定为图像中信号灯的灯头圆心位置之后,还可以根据当前的两个目标圆心位置确定第三个灯头的位置。

具体的,若所述圆心数量与所述灯头数量不一致,且所述圆心数量不符合比所述灯头数量少1且所述大于1的条件,则本申请提供的方法还包括步骤407。

步骤407,若圆心数量与灯头数量不一致,且圆心数量不符合比灯头数量少1且大于1的条件,则按照圆心的确定顺序删除确定时间最早的圆心,并采集包括信号灯的新图像,确定新图像中的各圆形,并确定圆形的圆心。

步骤407之后,再执行步骤403。

进一步的,若圆心数量不满足与灯头数量一致的条件,也不满足比灯头数量少1且大于1的条件,则电子设备可以删除部分圆心。并根据新采集的图像,重新确定圆心。

实际应用时,若圆心数量不满足与灯头数量一致的条件,也不满足比灯头数量少1且大于1的条件,则可以认为当前识别的圆心中存在信号灯灯头以外的中心,因此,可以删除部分圆心。例如,可以删除最早接收的图像对应的圆心。

这种实施方式中,可以在识别灯头位置失败的情况下,结合已有数据和新采集的图像,重新确定灯头位置,进而可以找到符合信号灯灯头位置的目标圆心位置。

步骤408,获取初始圆心位置。

在一种可选的实施方式中,电子设备还可以获取初始圆心位置。初始圆心位置是指预先标注的灯头中心位置,比如,可以在本实施例提供的方法最开始的时候,确定的圆心位置。例如,电子设备可以根据预先标注的信号灯灯框位置,确定初始圆心位置。

步骤409,根据确定的灯头位置与初始圆心位置,确定灯头位置的偏移信息。

其中,电子设备在确定出灯头位置后,可以比对确定的灯头位置与初始圆心位置,从而确定灯头位置的偏移信息。

具体的,电子设备可以根据灯头位置和初始圆心位置的像素坐标值,计算二者之间的差距。若存在多个灯头,则可以计算对应的灯头位置和初始圆心位置之间的差距,得到多个位置差距。电子设备可以确定多个位置差距之间的平均值,确定灯头位置的偏移信息。

这种实施方式中,电子设备可以确定出灯头的偏移信息,进而在基于预先标注的信号灯灯框对采集的图像进行处理时,可以根据该偏移信息在图像中获取完整的信号灯。

在上述任一种实施方式中,可以预先在历史图像中标注信号灯灯框位置,电子设备可以根据信号灯灯框位置、预设灯头数量,确定初始圆心位置。

其中,可以根据信号灯灯框位置、预设灯头数量,确定各个灯头的中心位置,也就是初始圆心位置。比如,在历史图像中标注的信号灯灯框位置(x1,y1,x2,y2),预先标注的灯头数量为3,则可以确定出三个灯头对应的初始圆心位置(light_1_center_x,light_1_center_y)、(light_2_center_x,light_2_center_y)、(light_3_center_x,light_3_center_y)。

这种实施方式中,电子设备无需存储各个灯头的坐标位置,只需要在获取初始圆心位置时,利用预先标注的信号灯灯框位置确定该初始圆心位置,从而可以节约存储空间。

图6为本申请一示例性实施例示出的灯头位置的确定装置的结构图。

如图6所示,本申请提供的灯头位置的确定装置600,包括:

圆心确定单元610,用于针对采集到的多帧包括信号灯的图像,确定每一所述图像中的各圆形,并确定每一所述圆形的圆心;

间距确定单元620,用于根据各圆心,确定各圆心中每两个圆心间的圆心间距;

数量确定单元630,用于根据各圆心间距确定圆心数量;

位置确定单元640,用于根据所述圆心数量和各圆心,确定所述图像中信号灯的灯头位置。

本申请提供的灯头位置的确定装置,包括:圆心确定单元,用于针对采集到的多帧包括信号灯的图像,确定每一图像中的各圆形,并确定每一圆形的圆心;间距确定单元,用于根据各圆心,确定各圆心中每两个圆心间的圆心间距;数量确定单元,用于根据各圆心间距确定圆心数量;位置确定单元,用于根据圆心数量和各圆心,确定图像中信号灯的灯头位置。这种实施方式中,可以通过在图像中识别圆形的方式,确定灯头位置,从而避免图像采集装置或信号灯位置发生变化,导致无法基于预设标注信息获取完整的信号灯,且本申请提供的方案只需要在图像中识别圆形就可以实现,这种方式耗时少,所需算力少。

图7为本申请另一示例性实施例示出的灯头位置的确定装置的结构图。

如图7所示,本申请提供的灯头位置的确定装置700,其中,预先在历史图像中标注有信号灯灯框位置;

所述装置还包括区域指定单元750,用于在圆心确定单元710针对采集到的多帧包括信号灯的图像,确定每一所述图像中的各圆形之前:

根据所述信号灯灯框位置,在采集到的多帧包括信号灯的图像中确定预设指定区域;

所述圆心确定单元710具体用于:

在每一所述图像的所述预设指定区域内确定各圆形。

其中,数量确定单元730,包括:

构建模块731,用于根据所述圆心间距构建包括与各个圆心的图;

数量确定模块732,用于在所述图中确定连通区域,并根据所述连通区域的数量确定所述圆心数量;

其中,所述连通区域表征圆心位置聚集区域。

其中,在所述连通区域中的任一圆心都具有至少一个临近圆心,所述圆心与所述临近圆心之间的圆心间距小于预设值。

其中,预先设置有所述信号灯的灯头数量;

位置确定单元740,具体用于:

若所述圆心数量与所述灯头数量一致,或者所述圆心数量比所述灯头数量少1且所述圆心数量大于1,则根据各个所述连通区域中包括的圆心,确定所述图像中信号灯的灯头位置。

其中,所述位置确定单元740,包括:

获取模块741,用于获取初始圆心位置;

目标确定模块742,用于根据各个所述连通区域中包括的圆心确定与每个所述连通区域对应目标圆心位置;

判断模块743,用于若各个所述目标圆心位置在第一方向的间距小于第一间距阈值,且根据所述初始圆心位置确定各个所述目标圆心位置在第二方向的间距符合预设条件,则将所述目标圆心位置确定为所述图像中信号灯的灯头圆心位置;

其中,所述第一方向与所述第二方向互相垂直。

其中,判断模块743具体用于:

根据所述初始圆心位置确定第二方向的标准间距信息;

根据各个所述目标圆心位置,确定第二方向的识别间距信息;

若所述识别间距信息与所述标准间距信息之间的差距小于第二间距阈值,则确定所述目标圆心位置在第二方向的间距符合预设条件。

其中,所述灯头数量为3,所述标准间距信息包括:标准小间距、标准大间距;

若所述圆心数量与所述灯头数量一致,则所述识别间距信息包括:识别小间距、识别大间距;

所述判断模块743具体用于:

若所述标准小间距与所述识别小间距之间的差距小于所述第二间距阈值,且所述标准大间距与所述识别大间距之间的差距小于所述第二间距阈值,则确定所述目标圆心位置在第二方向的间距符合预设条件。

其中,所述灯头数量为3,所述标准间距信息包括:标准小间距、标准大间距;

所述判断模块743具体用于:若所述圆心数量为2,则若所述标准大间距与所述识别间距之间的差距小于所述第二间距阈值,则确定所述目标圆心位置在第二方向的间距符合预设条件。

其中,若所述圆心数量与所述灯头数量不一致,且所述圆心数量不符合比所述灯头数量少1且所述大于1的条件,则所述装置还包括:

删除单元760,用于按照圆心的确定顺序删除确定时间最早的圆心,并采集包括信号灯的新图像;

所述圆心确定单元710还用于确定所述新图像中的各圆形,并确定所述圆形的圆心;

所述间距确定单元720还用于:针对已有的所述圆心,执行所述根据各圆心,确定各圆心中每两个圆心间的圆心间距的步骤。

其中,位置确定单元740具体用于:

根据各所述圆心的位置对所述圆心进行聚类,得到与所述圆心数量一致的类别;

根据每类圆心,确定所述图像中的信号灯的灯头位置。

其中,所述装置还包括:

偏移确定单元770,用于:

获取初始圆心位置;

根据确定的所述灯头位置与所述初始圆心位置,确定灯头位置的偏移信息。

其中,预先在历史图像中标注有信号灯灯框位置;

所述获取模块741和/或所述偏移确定单元770具体用于:

根据所述信号灯灯框位置、预设灯头数量,确定所述初始圆心位置。

其中,圆心确定单元710具体用于:

基于霍夫变换在所述图像中确定圆形。

一种可选的实施方式中,本申请还提供一种计算机程序产品,包括计算机程序,计算机程序储存在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。

本申请还提供一种路侧设备,包括如下所示出的电子设备。

根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。

图8示出了可以用来实施本申请的实施例的示例电子设备800的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。

如图8所示,电子设备800包括计算单元801,其可以根据存储在只读存储器(rom)802中的计算机程序或者从存储单元808加载到随机访问存储器(ram)803中的计算机程序,来执行各种适当的动作和处理。在ram803中,还可存储设备800操作所需的各种程序和数据。计算单元801、rom802以及ram803通过总线804彼此相连。输入/输出(i/o)接口805也连接至总线804。

设备800中的多个部件连接至i/o接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如灯头位置的确定方法。例如,在一些实施例中,灯头位置的确定方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由rom802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到ram803并由计算单元801执行时,可以执行上文描述的灯头位置的确定方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行灯头位置的确定方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务("virtualprivateserver",或简称"vps")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1