CN115965927A - 一种路面信息提取方法、装置、电子设备及可读存储介质 - Google Patents
一种路面信息提取方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN115965927A CN115965927A CN202310253691.5A CN202310253691A CN115965927A CN 115965927 A CN115965927 A CN 115965927A CN 202310253691 A CN202310253691 A CN 202310253691A CN 115965927 A CN115965927 A CN 115965927A
- Authority
- CN
- China
- Prior art keywords
- target
- pixel
- category
- contour
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
本申请的实施例公开了一种路面信息提取方法、装置、电子设备及可读存储介质,涉及自动驾驶技术领域,为节省计算资源而发明。所述方法,包括:确定路面图像对应的特征图;针对特征图上的每个像素序列,在每一像素序列中查找属于同一目标类别的像素点;在像素序列中定位该目标类别下的目标物所对应的轮廓识别片段;确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖;如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,得到关联片段集;根据关联片段集中的各轮廓识别片段的端点,确定目标类别下的目标物的轮廓。
Description
技术领域
本申请涉及自动驾驶技术领域,尤其涉及一种路面信息提取方法、装置、电子设备及可读存储介质。
背景技术
对于目前市面上常见的主流自动驾驶方案,环境感知是实现其他技术的基础,其中,路面信息检测的准确性成为自动驾驶车辆能否安全可靠行驶的前提和关键。
现有的路面信息检测中,针对前视、环视或BEV场景做了语义分割,并没有对语义分割之后的信息做进一步的后处理。而且,语义分割只是在像素级别上的信息分类,并没有反映其在真实世界坐标系下的信息针对前视、环视或BEV场景做了语义分割,并没有对语义分割之后的信息做进一步的后处理。而且,语义分割只是在像素级别上的信息分类,并没有反映其在真实世界坐标系下的信息。
具体地,语义分割的结果是一个不规则的图形,甚至有空洞,难以用一个测量方式去描述结果;在提取目标物轮廓时在二值图上进行的,一般将语义分割图做成多个单一类的二值图像再提取轮廓,从一个图像中提取一个目标物轮廓,对于需要提取多个目标物的轮廓的情况,则需要对每个图像都进行重复运算,占用较多的计算资源且算法复杂度较高;受语义分割网络精度的影响,感兴趣目标会出现丢失的情况,普通方法未考虑对这种情形的补偿,鲁棒性不够。此外语义分割并不是每次都能输出较好的结果,存在误检的情况,这使得在自车行使过程中感兴趣目标信息输出不稳定。
发明内容
有鉴于此,本申请实施例提供一种路面信息提取方法、装置、电子设备及可读存储介质,至少解决现有技术中存在的占用较多的计算资源的问题。
第一方面,本申请实施例提供一种路面信息提取方法,包括:基于预设的语义分割模型,确定路面图像对应的特征图;其中,所述特征图包括像素点所属的类别;针对所述特征图上的每个像素序列,遍历像素点所属的类别,以在每一像素序列中查找属于同一目标类别的像素点;其中,所述目标类别的数量为一个或多个;基于属于同一目标类别的像素点在所述像素序列中的分布情况,在所述像素序列中定位该目标类别下的目标物所对应的轮廓识别片段;其中,每个所述目标类别包括一个或多个所述目标物;确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖;如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,得到关联片段集;根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓。
根据本申请实施例的一种具体实现方式,所述基于属于同一目标类别的像素点在所述像素序列中的分布情况,在所述像素序列中定位该目标类别下的目标物所对应的轮廓识别片段,包括:针对所述特征图上的第一像素序列,当第一次查找到第一像素点的类别为第一目标类别时,将所述第一像素点作为第一端点; 按照预设规则,确定第二端点,以使所述第一端点和所述第二端点标识所述第一目标类别下的目标物所对应的第一轮廓识别片段。
根据本申请实施例的一种具体实现方式,所述按照预设规则,确定第二端点,包括:在属于同一目标类别的像素点在所述像素序列中,在所述第一像素点之后的n个像素点的类别为第一目标类别,第n+1个像素点的类别不为第一目标类别的情况下,依次判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别;如果预设个数的像素点的类别均不是第一目标类别,则将第n个像素点作为所述第二端点;如果第n+1个之后的第m个像素点的类别为第一目标类别,则判断第m+1个像素点是否为第一目标类别;如果不是,则继续判断第m+1个之后的预设个数的像素点的类别是否为第一目标类别,直到确定所述第二端点;其中,m小于等于预设个数。
根据本申请实施例的一种具体实现方式,在依次判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别之前,所述按照预设规则,确定第二端点,还包括:判断该像素点是否为该像素序列的终点;如果是,则将该像素点作为所述第二端点。
根据本申请实施例的一种具体实现方式,所述特征图包括第二像素序列,所述第二像素序列与所述第一像素序列相邻;所述确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖,包括:确定所述第二像素序列中是否包括所述第一目标类别下的目标物所对应的第二轮廓识别片段;如果存在,则确定在像素序列的延伸方向上,所述第一轮廓识别片段的两个端点的坐标形成的范围和所述第二轮廓识别片段的坐标形成的范围,是否有交集。
根据本申请实施例的一种具体实现方式,所述如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,包括:如果有交集,则将所述第一轮廓识别片段和所述第二轮廓识别片段相关联。
根据本申请实施例的一种具体实现方式,根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓所对应的凸多边形;根据所述目标类别下的目标物的轮廓所对应的凸多边形,确定所述目标类别下的目标物的轮廓对应的最小外接矩形;其中,所述最小外接矩形为能够包裹所述凸多边形的最小矩形。
根据本申请实施例的一种具体实现方式,所述根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓所对应的凸多边形,包括:根据所述关联片段集中的各轮廓识别片段的端点以及预设的凸包算法,确定所述目标类别下的目标物的轮廓所对应的凸多边形。
根据本申请实施例的一种具体实现方式,所述根据所述目标类别下的目标物的轮廓所对应的凸多边形,确定所述目标类别下的目标物的轮廓对应的最小外接矩形,包括:根据所述目标类别下的目标物的轮廓所对应的凸多边形以及预设的旋转卡壳算法,确定所述目标类别下的目标物的轮廓对应的最小外接矩形。
根据本申请实施例的一种具体实现方式,所述目标物为多个;所述根据所述目标类别下的目标物的轮廓所对应的凸多边形,确定所述目标类别下的目标物的轮廓对应的最小外接矩形,包括:根据前一时刻所述目标类别下的各所述目标物的轮廓所对应的凸多边形,计算前一时刻的各所述目标物对应的各最小外接矩形;根据前一时刻的各所述目标物对应的各最小外接矩形以及预设的卡尔曼滤波预测算法,预测当前时刻的各所述目标物对应的各最小外接矩形;根据当前时刻各所述目标物的轮廓对应的凸多边形,计算当前时刻的各所述目标物对应的各最小外接矩形;根据预测的当前时刻的各最小外接矩形、计算的当前时刻的各最小外接矩形以及预设的卡尔曼滤波更新算法,确定第一目标物对应的新的第一最小外接矩形。
根据本申请实施例的一种具体实现方式,所述根据预测的当前时刻的各最小外接矩形、计算的当前时刻的各最小外接矩形以及预设的卡尔曼滤波更新算法,确定第一目标物对应的新的第一最小外接矩形,包括:根据预测的当前时刻的各最小外接矩形和计算的当前时刻的各最小外接矩形,在预测的当前时刻的各最小外接矩形中,确定与计算的所述第一目标物对应的第一最小外接矩形相匹配的预测的第二最小外接矩形;根据计算的所述第一最小外接矩形、预测的所述第二最小外接矩形以及预设的卡尔曼滤波更新算法,确定所述第一目标物对应的新的第一最小外接矩形。
根据本申请实施例的一种具体实现方式,所述路面图像中包括车身的坐标系原点对应的像素点;所述方法还包括:根据确定的目标物对应的最小外接矩形以及预设的转换关系,确定目标物对应的最小外接矩形在车身的坐标系中的坐标。
根据本申请实施例的一种具体实现方式,所述方法还包括:根据各目标物对应的各最小外接矩形在车身的坐标系中的坐标,确定各目标物的长、宽、与车身的距离以及各目标物的中心和相对车身的方向角。
第二方面,本申请实施例提供一种路面信息提取装置,包括:第一确定模块,用于基于预设的语义分割模型,确定路面图像对应的特征图;其中,所述特征图包括像素点所属的类别;遍历模块,用于针对所述特征图上的每个像素序列,遍历像素点所属的类别,以在每一像素序列中查找属于同一目标类别的像素点;其中,所述目标类别的数量为一个或多个;定位模块,用于基于属于同一目标类别的像素点在所述像素序列中的分布情况,在所述像素序列中定位该目标类别下的目标物所对应的轮廓识别片段;其中,每个所述目标类别包括一个或多个所述目标物;第二确定模块,用于确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖;关联模块,用于如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,得到关联片段集;第三确定模块,用于根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓。
根据本申请实施例的一种具体实现方式,所述定位模块,包括:查找子模块,用于针对所述特征图上的第一像素序列,当第一次查找到第一像素点的类别为第一目标类别时,将所述第一像素点作为第一端点; 确定子模块,用于按照预设规则,确定第二端点,以使所述第一端点和所述第二端点标识所述第一目标类别下的目标物所对应的第一轮廓识别片段。
根据本申请实施例的一种具体实现方式,所述确定子模块,具体用于:在属于同一目标类别的像素点在所述像素序列中,在所述第一像素点之后的n个像素点的类别为第一目标类别,第n+1个像素点的类别不为第一目标类别的情况下,依次判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别;如果预设个数的像素点的类别均不是第一目标类别,则将第n个像素点作为所述第二端点;如果第n+1个之后的第m个像素点的类别为第一目标类别,则判断第m+1个像素点是否为第一目标类别;如果不是,则继续判断第m+1个之后的预设个数的像素点的类别是否为第一目标类别,直到确定所述第二端点;其中,m小于等于预设个数。
根据本申请实施例的一种具体实现方式,所述确定子模块,具体还用于:在依次判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别之前,判断该像素点是否为该像素序列的终点;如果是,则将该像素点作为所述第二端点。
根据本申请实施例的一种具体实现方式,所述特征图包括第二像素序列,所述第二像素序列与所述第一像素序列相邻;所述第二确定模块,包括:第一确定子模块,用于确定所述第二像素序列中是否包括所述第一目标类别下的目标物所对应的第二轮廓识别片段;第二确定子模块,用于如果存在,则确定在像素序列的延伸方向上,所述第一轮廓识别片段的两个端点的坐标形成的范围和所述第二轮廓识别片段的坐标形成的范围,是否有交集。
根据本申请实施例的一种具体实现方式,所述第二确定子模块,具体用于:如果有交集,则将所述第一轮廓识别片段和所述第二轮廓识别片段相关联。
根据本申请实施例的一种具体实现方式,所述装置还包括:第四确定模块,用于根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓所对应的凸多边形;第五确定模块,用于根据所述目标类别下的目标物的轮廓所对应的凸多边形,确定所述目标类别下的目标物的轮廓对应的最小外接矩形;其中,所述最小外接矩形为能够包裹所述凸多边形的最小矩形。
根据本申请实施例的一种具体实现方式,所述第四确定模块,具体用于:根据所述关联片段集中的各轮廓识别片段的端点以及预设的凸包算法,确定所述目标类别下的目标物的轮廓所对应的凸多边形。
根据本申请实施例的一种具体实现方式,所述第五确定模块,具体用于:根据所述目标类别下的目标物的轮廓所对应的凸多边形以及预设的旋转卡壳算法,确定所述目标类别下的目标物的轮廓对应的最小外接矩形。
根据本申请实施例的一种具体实现方式,所述目标物为多个;所述第五确定模块,包括:第一计算子模块,用于根据前一时刻所述目标类别下的各所述目标物的轮廓所对应的凸多边形,计算前一时刻的各所述目标物对应的各最小外接矩形;预测子模块,用于根据前一时刻的各所述目标物对应的各最小外接矩形以及预设的卡尔曼滤波预测算法,预测当前时刻的各所述目标物对应的各最小外接矩形;第二计算子模块,用于根据当前时刻各所述目标物的轮廓对应的凸多边形,计算当前时刻的各所述目标物对应的各最小外接矩形;第三计算子模块,用于根据预测的当前时刻的各最小外接矩形、计算的当前时刻的各最小外接矩形以及预设的卡尔曼滤波更新算法,确定第一目标物对应的新的第一最小外接矩形。
根据本申请实施例的一种具体实现方式,所述第三计算子模块,具体用于:根据预测的当前时刻的各最小外接矩形和计算的当前时刻的各最小外接矩形,在预测的当前时刻的各最小外接矩形中,确定与计算的所述第一目标物对应的第一最小外接矩形相匹配的预测的第二最小外接矩形;根据计算的所述第一最小外接矩形、预测的所述第二最小外接矩形以及预设的卡尔曼滤波更新算法,确定所述第一目标物对应的新的第一最小外接矩形。
根据本申请实施例的一种具体实现方式,所述路面图像中包括车身的坐标系原点对应的像素点;所述装置还包括:第六确定模块,用于根据确定的目标物对应的最小外接矩形以及预设的转换关系,确定目标物对应的最小外接矩形在车身的坐标系中的坐标。
根据本申请实施例的一种具体实现方式,所述装置还包括:第七确定模块,用于根据各目标物对应的各最小外接矩形在车身的坐标系中的坐标,确定各目标物的长、宽、与车身的距离以及各目标物的中心和相对车身的方向角。
第三方面,本申请实施例提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实现方式所述的路面信息提取方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述任一实现方式所述的路面信息提取方法。
本实施例的路面信息提取方法、装置、电子设备及可读存储介质,基于预设的语义分割模型,确定路面图像对应的特征图,针对特征图上的每个像素序列,遍历像素点所属的类别,以在每一像素序列中查找属于同一目标类别的像素点,基于属于同一目标类别的像素点在像素序列中的分布情况,在像素序列中定位该目标类别下的目标物所对应的轮廓识别片段,确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖,如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,得到关联片段集,根据关联片段集中的各轮廓识别片段的端点,确定目标类别下的目标物的轮廓,在目标类别的数量为一个或多个,每个目标类别包括一个或多个目标物的情况下,通过一次遍历,即可确定所有的目标类别及类别包括的目标物的轮廓,从而能够节省计算资源。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请一实施例提供的路面信息提取方法的流程示意图;
图2为本申请一具体实施例提供的凸包算法的示意图;
图3为本申请一具体实施例提供的旋转卡壳算法的示意图;
图4为本申请又一具体实施例提供的旋转卡壳算法的示意图;
图5a-图5h为本申请一具体实施例提供的匈牙利算法的示意图;
图6为本申请一实施例提供的路面信息提取装置的结构示意图;
图7为本申请一实施例提供的电子设备的结构示意图。
具体实施方式
下面结合附图对本申请实施例进行详细描述。应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
为使本领域技术人员更好地理解本申请实施例的技术构思、实施方案和有益效果,下面通过具体实施例进行详细说明。
本申请一实施例提供的一种路面信息提取方法,能够节省计算资源。
图1为本申请一实施例提供的路面信息提取方法的流程示意图,如图1所示,本实施例的路面信息提取方法,可以包括:
S101、基于预设的语义分割模型,确定路面图像对应的特征图。
本实施例中,特征图包括像素点所属的类别。
路面图像可为前视的图像、环视的图像或鸟瞰图(BEV,Bird's Eye View)。
在一些例子中,路面图像为由汽车四路环视相机拍摄的图像拼接得到的俯视图。
可以将BEV图像进行预处理,首先缩放至神经网络的输入尺寸,采用线性插值方式缩放。输入图像每个像素归一化。将像素排列方式由H_W_C转成C_H_W,其中C是通道,H是图像高,W是图像宽。
经过预处理的图像输入神经网络,得到多通道特征图。具体地,可以采用轻量版语义分割模型BiSeNet v2,由于该模型在实时性和准确性上都非常优秀,这样,能够满足汽车驾驶领域,对实时性和准确性的要求。
在得到多通道特征图后,可以使用将多通道特征图合并成单通道特征图,具体公式如下:
其中,表示像素位置的集合,表示像素值,像素值也是该像素属于这个通道(类别)的概率,是通道的集合,和一样。
整个公式表示不同通道的相同像素位置,得到最大像素值对应的通道序号的集合。语义分割的本质是像素分类,特征图的通道序号就类别序号。所有通道的同一个像素位置,若第0个通道的像素最大,那么该像素属于第0类。合并之后特征图上每个像素是整型的数字表示类别。
S102、针对特征图上的每个像素序列,遍历像素点所属的类别,以在每一像素序列中查找属于同一目标类别的像素点。
本实施例中,目标类别的数量为一个或多个,如果目标类别的数量为一个时,特征图包括一种目标类别;如果目标类别的数量为多个时,特征图包括多种目标类别,如猫是一个目标类别,树是一个目标类别,在特征图上包括猫对应的像素点和树对应的像素点。
对于特征图上的每个像素序列,遍历每个像素序列上的像素点所属的类别,以在每一像素序列中查找属于同一目标类别的像素点。
像素序列可为特征图中的像素行或像素列。如遍历每个像素行上的像素点所属的类别。
在一些例子中,对于特征图,可以从下到上、由左向右遍历特征图中的每行像素点。
S103、基于属于同一目标类别的像素点在像素序列中的分布情况,在像素序列中定位该目标类别下的目标物所对应的轮廓识别片段。
本实施例中,每个目标类别包括一个或多个目标物。
属于同一目标类别的像素点在像素序列中的分布情况,可包括同一目标类别的像素点在像素序列中连续分布,也可包括两个属于同一目标类别的像素点之间分布有其它类别的像素点。
轮廓识别片段为目标物的部分轮廓或全部轮廓。如目标物为猫,则在像素序列中能够定位猫所对应的轮廓识别片段。
该目标类别下的不同目标物的轮廓识别片段不同。
S104、确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖。
在相邻两个像素序列中,确定属于同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖,如像素序列为像素行,则像素序列的延伸方向为像素行所在的方向。
S105、如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,得到关联片段集。
如果相邻的两个像素序列中存在交叠覆盖,则将存在交叠覆盖的轮廓识别片段相关联,得到关联片段集,可以理解的是,关联片段集包括存在关联关系的轮廓识别片段。
一个关联片段集对应一个目标物。
S106、根据关联片段集中的各轮廓识别片段的端点,确定目标类别下的目标物的轮廓。
可以将关联片段集中的各轮廓识别片段的端点,确定为目标类别下的目标物的轮廓,从而实现路面信息的提取。
本实施例,基于预设的语义分割模型,确定路面图像对应的特征图,针对特征图上的每个像素序列,遍历像素点所属的类别,以在每一像素序列中查找属于同一目标类别的像素点,基于属于同一目标类别的像素点在像素序列中的分布情况,在像素序列中定位该目标类别下的目标物所对应的轮廓识别片段,确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖,如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,得到关联片段集,根据关联片段集中的各轮廓识别片段的端点,确定目标类别下的目标物的轮廓,在目标类别的数量为一个或多个,每个目标类别包括一个或多个目标物的情况下,通过一次遍历,即可确定所有的目标类别及类别包括的目标物的轮廓,从而能够节省计算资源。
本申请又一实施例,与上述实施例基本相同,不同之处在于,本实施例的基于属于同一目标类别的像素点在所述像素序列中的分布情况,在所述像素序列中定位该目标类别下的目标物所对应的轮廓识别片段(S103),可以包括:
S103a、针对特征图上的第一像素序列,当第一次查找到第一像素点的类别为第一目标类别时,将第一像素点作为第一端点。
针对特征图上的一个像素序列,按照一个方向依次确定像素点的类别是否为第一目标类别,在第一次查找到第一像素点的类别为第一目标类别时,将第一像素点作为第一端点。
S103b、按照预设规则,确定第二端点。
针对特征图上的该一个像素序列,确定与第一个端点对应的第二个端点,使第一端点和第二端点标识第一目标类别下的目标物所对应的第一轮廓识别片段即用第一端点和第二端点描述第一轮廓识别片段。
在一些例子中,按照预设规则,确定第二端点(S103b),可以包括:
A1、在属于同一目标类别的像素点在像素序列中,在第一像素点之后的n个像素点的类别为第一目标类别,第n+1个像素点的类别不为第一目标类别的情况下,依次判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别。
在属于同一目标类别的像素点在像素序列中,查找像素点是否为第一目标类别的过程中,在第一像素点之后的n个像素点的类别为第一目标类别,也就是说,第一像素点之后的n个像素点的类别与第一像素点的类别相同都是第一目标类别,且第n+1个像素点的类别不为第一目标类别的情况下,再继续向后判断预设个数的像素点,是否为第一目标类别。
A2、如果预设个数的像素点的类别均不是第一目标类别,则将第n个像素点作为第二端点。
在预设个数的像素点的类别均不是第一目标类别,即第n+1个像素点以及之后的预设个数的像素点的类别都不是第一目标类别,这样的情况下,将前面的第n个像素点作为另一个端点。
A3、如果第n+1个之后的第m个像素点的类别为第一目标类别,则判断第m+1个像素点是否为第一目标类别;如果不是,则继续判断第m+1个之后的预设个数的像素点的类别是否为第一目标类别,直到确定第二端点;其中,m小于等于预设个数。
如预设个数为10,那么在判断第n+1个像素点之后的第5个像素点的类别为第一目标类别,则判断第6个像素点的类别是否为第一目标类别,如果不是,则继续判断第6个之后的预设个数的像素点的类别是否为第一目标类别。
如果第6个像素点的类别是第一目标类别,则按照上述过程继续判断之后的像素点,直到确定另一个端点。
在又一些例子中,在依次判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别之前,按照预设规则,确定第二端点(S103b),还可以包括:
A4、判断该像素点是否为该像素序列的终点。
在判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别之前,判断第n+1个之后的像素点是否为该像素序列的终点即该像素点之后没有像素点存在。
A5、如果是,则将该像素点作为所述第二端点。
本实施例中,在判断像素点为该像素序列的终点的情况下,将该像素序列的终点作为第二端点,如果不是终点,则继续上述实施例的流程。
为了便于确定目标物的轮廓,本申请又一实施例,与上述实施例基本相同,不同之处在于,本实施例的特征图包括第二像素序列,第二像素序列与第一像素序列相邻。
在特征图上包括第一像素序列和第二像素序列,且二者相邻。
本实施例中,确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖(S104),可以包括:
S104a、确定第二像素序列中是否包括第一目标类别下的目标物所对应的第二轮廓识别片段。
第一像素序列包括第一目标类别下的目标物所对应的第一轮廓识别片段,在这样的情况下,确定与第一像素序列相邻的第二像素序列是否也包括第一目标类别下的目标物所对应的轮廓识别片段即第二轮廓识别片段。
S104b、如果存在,则确定在像素序列的延伸方向上,第一轮廓识别片段的两个端点的坐标形成的范围和第二轮廓识别片段的坐标形成的范围,是否有交集。
如果第二像素序列中包括第一目标类别下的目标物所对应的第二轮廓识别片段,则确定在像素序列的延伸方向上,第一轮廓识别片段的两个端点的坐标形成的范围和第二轮廓识别片段的坐标形成的范围,是否有交集。
可选地,如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联(S105),可以包括:
S105a、如果有交集,则将第一轮廓识别片段和第二轮廓识别片段相关联。
如果第一轮廓识别片段的两个端点的坐标形成的范围和第二轮廓识别片段的坐标形成的范围有交集,则认为第一轮廓识别片段和第二轮廓识别片段属于同一目标物的轮廓,因此,将第一轮廓识别片段和第二轮廓识别片段相关联。
第一轮廓识别片段和第二轮廓识别片段相关联,具体地,第一轮廓识别片段的两个端点的坐标和第一轮廓识别片段所属类别存入第一预设单元,同样第二轮廓识别片段的两个端点的坐标和第二轮廓识别片段所属类别存入第二预设单元,当第一轮廓识别片段和第二轮廓识别片段有交集,则将第一轮廓识别片段的标识存入第二预设单元,或者将第二轮廓识别片段的标识存入第一预设单元。
本申请一具体实施例,确定目标物的轮廓的方法包括:
step1: 由下向上由左向右遍历语义分割图。
如果碰到像素值为目标物的标记值,则生成一个最小单元,将该坐标的行坐标和纵坐标存储到该最小单元中,同时为该最小单元赋序号,并继续扫描。
step2: 如果碰到一行的终止值,直接将该点存储到step1中生成的最小单元的终止坐标中。如果碰到像素值不是目标物的标记值,再向后扫描10个像素,依然不再是目标物的标记值, 则将前像素的纵坐标存储至step1中生成的最小单元的终止点坐标中。如果向后扫描10像素的过程中发现有目标物的标记值,则认为发现空洞,记录该点,重复step2。
其中向后扫描10个像素为经验值,为了穿过空洞。
step3: 遍历上一行获取的最小单元,判断其与step2中获得的完整的Sect是否有交集。
判断有交集的方式是比较两个最小单元的起始点纵坐标和终止点纵坐标是否有重叠。如果有重叠,则认为两个最小单元属于同一个轮廓,则更新两个最小单元中记录与自身有交集的其他最小单元序号。
step4: 遍历语义分割图完成后,根据每个最小单元中存储的与其有交集的其他最小单元的序号,使用深度优先算法(DFS)遍历所有最小单元。生成最小单元组成的所有目标物的轮廓坐标和其面积。
S107、根据关联片段集中的各轮廓识别片段的端点,确定目标类别下的目标物的轮廓所对应的凸多边形。
根据关联片段集中的各轮廓识别片段的端点,可以确定各端点围成的面积,为了减小噪声和误检,将相关联片段集中的各轮廓识别片段的端点对应的面积小于预定阈值的关联片段集删除。
根据未删除的关联片段集中的各轮廓识别片段的端点,确定目标类别下的目标物的轮廓所对应的凸多边形。
在一些例子中,根据关联片段集中的各轮廓识别片段的端点,确定目标类别下的目标物的轮廓所对应的凸多边形(S107),可以包括:
S107a、根据关联片段集中的各轮廓识别片段的端点以及预设的凸包算法,确定目标类别下的目标物的轮廓所对应的凸多边形。
参见图2,使用凸包算法获取目标轮廓坐标的最外层凸多边形,并能以逆时针顺序获取凸多边形各个顶点,具体过程如下:
(1)把所有点放到二维坐标系中,则纵坐标最小的点一定在凸包上,若有多个点的纵坐标最小,取横坐标最小的那一个,设该点为;
(2)把二维坐标系平移到以为原点;
(3)计算各个点相对于的角度,按从小到大的顺序对各个点排序。当相同时,距离比较近的排在前面。最终获得的点集。其中和一定在凸包上;
(4)将和压入栈,将点暂时入栈,当前栈顶是,将下一个点作为当前点;
(5)经过和栈顶点作一条直线,判断当前点在直线的左侧还是右侧,若在右侧执行步骤(6),若在左侧执行步骤(7);
(6)若在右侧,则栈顶点不属于凸包出栈,并压入当前点,进入下一点,再执行步骤(5);
(7)若在左侧,则栈顶点是凸包上的点,将当前点压入栈,执行步骤(8);
(8)判断当前点是不是点集中最后点。若是则算法结束。若不是,则进入下一点,再进入步骤(5)。
S108、根据目标类别下的目标物的轮廓所对应的凸多边形,确定目标类别下的目标物的轮廓对应的最小外接矩形。
本实施例中,最小外接矩形为能够包裹凸多边形的最小矩形。
在一些例子中,根据所述目标类别下的目标物的轮廓所对应的凸多边形,确定目标类别下的目标物的轮廓对应的最小外接矩形(S108),可以包括:
S108a、根据目标类别下的目标物的轮廓所对应的凸多边形以及预设的旋转卡壳算法,确定目标类别下的目标物的轮廓对应的最小外接矩形。
参见图3和图4,凸包得到的是逆时针的凸多边形的顶点坐标点集,使用旋转卡壳算法对凸包的点集处理,得到能包裹凸多边形的最小面积的最小外接矩形,具体过程如下:
(1)使用两组平行线包裹凸多边形,组间垂直,平行线与顶点相切或边重合;
(2)旋转卡壳认为最小面积最小外接矩形的某一边一定与凸多边形某一边重合;
(3)以最小外接矩形点集的和下一点组成一个基准向量,以为基准点,按顺序与剩余顶点组成向量;
(4)求两个向量组成的平行四边形面积,两向量叉积的模就是面积。面积由小到大再到小。当第一次由大到小时,大的面积对应的向量的其他点就是基准向量垂直方向上的最远点L;
(5)同样是两个向量,点积由小到大再到小。当第一次由大到小时,大的点积对应的向量的其他点就是基准向量水平方向上的最右点r,最右点在基准向量上的投影点就是最小外接矩形的右下角坐标。在最远点平行于基准向量上的投影点就是右上角坐标;
(6)从最右点继续,点积第一次由小到大时,小的点积对应的向量的其他点就是基准向量水平方向上的最左点。最左点在基准向量上的投影点就是最小外接矩形的左下角坐标。在最远点平行于基准向量上的投影点就是左上角坐标;
(7)求取两组平行线组成的矩形面积;
(8)按逆时针顺序以不同的边作为底边重复(3)(4)(5)(6)(7),求取面积。当面积最小时就是最小面积最小外接矩形,此时四个角坐标就是矩形的四个顶点。
为了避免目标物被误检或漏检,以及降低因相机标定造成误差,并且使车辆在行驶过程中,目标物的信息输出更加稳定,希望通过历史信息来提高当前目标的精度,在一些例子中,目标物为多个;根据目标类别下的目标物的轮廓所对应的凸多边形,确定目标类别下的目标物的轮廓对应的最小外接矩形(S108),可以包括:
S108b、根据前一时刻目标类别下的各目标物的轮廓所对应的凸多边形,计算前一时刻的各目标物对应的各最小外接矩形。
在目标物为多个的情况下,根据前一时刻目标类别下的各目标物的轮廓所对应的凸多边形,计算前一时刻的各目标物对应的各最小外接矩形,这样,得到多个最小外接矩形。
S108c、根据前一时刻的各目标物对应的各最小外接矩形以及预设的卡尔曼滤波预测算法,预测当前时刻的各目标物对应的各最小外接矩形。
根据前一时刻的各目标物对应的各最小外接矩形,使用卡尔曼滤波预测算法,能够预测当前时刻的各目标物对应的各最小外接矩形。
S108d、根据当前时刻各目标物的轮廓对应的凸多边形,计算当前时刻的各目标物对应的各最小外接矩形。
S108e、根据预测的当前时刻的各最小外接矩形、计算的当前时刻的各最小外接矩形以及预设的卡尔曼滤波更新算法,确定第一目标物对应的新的第一最小外接矩形。
在一些例子中,根据预测的当前时刻的各最小外接矩形、计算的当前时刻的各最小外接矩形以及预设的卡尔曼滤波更新算法,确定第一目标物对应的新的第一最小外接矩形(S108e),可以包括:
B1、根据预测的当前时刻的各最小外接矩形和计算的当前时刻的各最小外接矩形,在预测的当前时刻的各最小外接矩形中,确定与计算的所述第一目标物对应的第一最小外接矩形相匹配的预测的第二最小外接矩形。
B2、根据计算的所述第一最小外接矩形、预测的第二最小外接矩形以及预设的卡尔曼滤波更新算法,确定第一目标物对应的新的第一最小外接矩形。
下面以一具体实施例,对确定第一目标物对应的融合的最小外接矩形进行说明。
由于存在感兴趣目标被误检或漏检的情况,同时也存在因相机标定造成误差的情况,希望通过历史信息来提高当前目标的精度。可以基于目标的最小外接矩形,使用卡尔曼滤波预测矩形框在下一帧的位置,使用匈牙利算法关联预测矩形框与检测矩形框,再使用卡尔曼滤波更新得到最终的目标矩形框信息。
使用卡尔曼滤波预测的最小外接矩形:
表示时刻的卡尔曼滤波器输出的矩形框状态信息(矩形框四个顶点在BEV图中的坐标);是状态转移矩阵,表示系统从时刻到时刻的状态变化;表示时刻的系统的预测状态;是时刻系统的协方差矩阵;表示时刻系统的协方差矩阵。
卡尔曼滤波的更新过程需要关联上一帧的预测框和当前帧的检测框,实际上检测框的关联是一个优化问题,我们需要做的是让上一帧的检测框与当前帧的同序号的检测框尽可能的重合。
其中和都表示n阶矩阵。表示关联矩阵,第个检测框与第个预测框关联成功设为1。因为已经与关联了,所以与无法再关联,的第行只有第个元素是1,其他皆为0。因此矩阵每行每列有且只有一个元素是1,其他都是0。表示损失矩阵,第个检测框与第个预测框匹配程度,使用1减目标之间的交并比(Intersection Over Union, IOU)作为匹配度,即,这里采用两个矩形框做IOU计算,矩阵元素越大匹配程度越低,没有相交的两个目标元素直接设1。整个公式就是调整,然后左乘,使最小。当最小时,得到最佳的匹配关系。即找到最合适第个检测框与第个预测框相关联。
匈牙利算法是一种很好的解决分配问题的算法,其解上述方程的过程如下:
step1: 构建损失矩阵,遍历矩阵的行数据,对每一行减去该行中的最小元素,使得每行的最小元素为0;
step2: 遍历矩阵的列数据,对每一列减去该列中的最小元素,使得每列的最小元素为0;
step3: 尝试用尽可能少的线,画过矩阵的行或者列,使其经过矩阵中的所有0元素;
step4: 统计step3中用到的直线的条数,如果其等于矩阵的行数列数中的最小值,则认为找到了一组最佳匹配,即找到了上一帧框与当前帧框最好的匹配。如果发现step3中用到的直线条数比矩阵的行数列数中的最小值还小,则继续执行下一步;
step5: 从step3中画过线的矩阵中找寻剩余元素的最小值,在没被画线的每一行元素减去该最小值,在被画线的每一列元素加上该最小值。执行step3,重新画线;
具体举例如下,我们有损失矩阵如图5a中的矩阵。遍历每行,依次找到每行的最小值为2,4,9,8。根据step1所述,得到图5b中的矩阵。遍历每列,找到每列的最小值为0,0,3,1。根据step2所述,得到图5c中的矩阵。如图5d根据step3尝试画线,发现线条数小于矩阵的行列数,依据step5所述,寻找图5e中矩阵被画线以外的元素的最小值为1,将图5e中矩阵的第0-2行减去1,得到图5f矩阵。将图5f中矩阵的第0-1列加上1,得到矩阵图5g。根据step3,重新尝试画线。根据step4,发现线的数量为4,与矩阵的行列数相等,得到一组最佳匹配。如图5h即行0-列3,行1-列1,行2-列0,行3-列2匹配。
根据上述的匈牙利算法,我们可以得到与卡尔曼滤波预测的目标检测框相匹配的测量检测框。在卡尔曼更新阶段,使用如下公式进行更新:
是卡尔曼增益;是时刻直接测量得到的真实的矩形框状态;H是观测矩阵,表示预测量转换到检测量的维度上;是最终输出的融合状态;是最终输出的当前系统变量间的协方差矩阵。整个过程就是预测的矩形框和观测的矩形框融合成最合适的边界框。
对于协方差矩阵,可在确定卡尔曼增益的时候使用。
可以理解的是,上述方法也适用于多个目标类别的目标物,使得到的每个目标类别的目标物的最小外接矩形也更加准确。
为了便于获得目标物与车辆的相关信息,在一些例子中,路面图像中包括车身的坐标系原点对应的像素点;所述方法还可以包括:
S109、根据确定的目标物对应的最小外接矩形以及预设的转换关系,确定目标物对应的最小外接矩形在车身的坐标系中的坐标。
路面图像中包括车身的坐标系原点对应的像素点,这样,各个目标物对应的最小外接矩形的坐标通过一定的转换关系,能够转换到车身坐标系下的坐标。
如输入的BEV图可以认为是虚拟一个在车顶上的相机从空中拍摄得到的图像。我们关心的其实是车外物体相对自车的位置关系。因此,如果我们以车辆自身为观测者,认为车辆后轴中心在地面的投影为自车坐标系的原点,那么,由BEV图像的特性可知,像素坐标系和自车坐标系存在一个线性变换关系,可以用一个转换矩阵H来表示两者之间的变换。在已知鸟瞰图中像素与真实距离之间的比例关系scale以及车辆坐标系在鸟瞰图坐标系下的像素坐标carCoord_u,carCoord_v的情况下,两者之间的变换矩阵如下:
上式中,scale为BEV像素和物理坐标的比例关系,Coord_u为车后轴中心在鸟瞰图中的u坐标,Coord_v为车后轴中心在鸟瞰图中的v坐标。
在前述实施例中,得到所有路面感兴趣物体的最小外接矩形在BEV坐标系下的坐标。假设矩形框从左到右从上到下四个点分别为,,,。根据上述的变换矩阵,可以将BEV坐标系下的最小外接矩形的坐标投影到车身坐标系下的坐标为:,,,。
为了获得每帧图像中各目标物与车辆的相关信息,在一些例子中,所述方法还包括:
S110、根据各目标物对应的各最小外接矩形在车身的坐标系中的坐标,确定各目标物的长、宽、与车身的距离以及各目标物的中心和相对车身的方向角。
最小外接矩形的长边长根据如下公式计算:
最小外接矩形的短边长,根据如下公式计算:
最小外接矩形的中心,根据如下公式计算:
当时,表示目标在自车前方,时,表示目标在自车右侧。
最小外接矩形距自车距离,根据如下公式计算:
车辆坐标系下,目标物在自车坐标系下的方向角,根据如下公式计算:
本申请一实施例提供的一种路面信息提取装置,能够节省计算资源。
图6为本申请一实施例提供的路面信息提取装置的结构示意图,如图6所示,本实施例的路面信息提取装置,包括:第一确定模块11,用于基于预设的语义分割模型,确定路面图像对应的特征图;其中,所述特征图包括像素点所属的类别;遍历模块12,用于针对所述特征图上的每个像素序列,遍历像素点所属的类别,以在每一像素序列中查找属于同一目标类别的像素点;其中,所述目标类别的数量为一个或多个;定位模块13,用于基于属于同一目标类别的像素点在所述像素序列中的分布情况,在所述像素序列中定位该目标类别下的目标物所对应的轮廓识别片段;其中,每个所述目标类别包括一个或多个所述目标物;第二确定模块14,用于确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖;关联模块15,用于如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,得到关联片段集;第三确定模块16,用于根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓。
本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本实施例的装置,基于预设的语义分割模型,确定路面图像对应的特征图,针对特征图上的每个像素序列,遍历像素点所属的类别,以在每一像素序列中查找属于同一目标类别的像素点,基于属于同一目标类别的像素点在像素序列中的分布情况,在像素序列中定位该目标类别下的目标物所对应的轮廓识别片段,确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖,如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,得到关联片段集,根据关联片段集中的各轮廓识别片段的端点,确定目标类别下的目标物的轮廓,在目标类别的数量为一个或多个,每个目标类别包括一个或多个目标物的情况下,通过一次遍历,即可确定所有的目标类别及类别包括的目标物的轮廓,从而能够节省计算资源。
作为一可选实施方式,所述定位模块,包括:查找子模块,用于针对所述特征图上的第一像素序列,当第一次查找到第一像素点的类别为第一目标类别时,将所述第一像素点作为第一端点; 确定子模块,用于按照预设规则,确定第二端点,以使所述第一端点和所述第二端点标识所述第一目标类别下的目标物所对应的第一轮廓识别片段。
作为一可选实施方式,所述确定子模块,具体用于:在属于同一目标类别的像素点在所述像素序列中,在所述第一像素点之后的n个像素点的类别为第一目标类别,第n+1个像素点的类别不为第一目标类别的情况下,依次判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别;如果预设个数的像素点的类别均不是第一目标类别,则将第n个像素点作为所述第二端点;如果第n+1个之后的第m个像素点的类别为第一目标类别,则判断第m+1个像素点是否为第一目标类别;如果不是,则继续判断第m+1个之后的预设个数的像素点的类别是否为第一目标类别,直到确定所述第二端点;其中,m小于等于预设个数。
作为一可选实施方式,所述确定子模块,具体还用于:在依次判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别之前,判断该像素点是否为该像素序列的终点;如果是,则将该像素点作为所述第二端点。
作为一可选实施方式,所述特征图包括第二像素序列,所述第二像素序列与所述第一像素序列相邻;所述第二确定模块,包括:第一确定子模块,用于确定所述第二像素序列中是否包括所述第一目标类别下的目标物所对应的第二轮廓识别片段;第二确定子模块,用于如果存在,则确定在像素序列的延伸方向上,所述第一轮廓识别片段的两个端点的坐标形成的范围和所述第二轮廓识别片段的坐标形成的范围,是否有交集。
作为一可选实施方式,所述第二确定子模块,具体用于:如果有交集,则将所述第一轮廓识别片段和所述第二轮廓识别片段相关联。
作为一可选实施方式,所述装置还包括:第四确定模块,用于根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓所对应的凸多边形;第五确定模块,用于根据所述目标类别下的目标物的轮廓所对应的凸多边形,确定所述目标类别下的目标物的轮廓对应的最小外接矩形;其中,所述最小外接矩形为能够包裹所述凸多边形的最小矩形。
作为一可选实施方式,所述第四确定模块,具体用于:根据所述关联片段集中的各轮廓识别片段的端点以及预设的凸包算法,确定所述目标类别下的目标物的轮廓所对应的凸多边形。
作为一可选实施方式,所述第五确定模块,具体用于:根据所述目标类别下的目标物的轮廓所对应的凸多边形以及预设的旋转卡壳算法,确定所述目标类别下的目标物的轮廓对应的最小外接矩形。
作为一可选实施方式,所述目标物为多个;所述第五确定模块,包括:第一计算子模块,用于根据前一时刻所述目标类别下的各所述目标物的轮廓所对应的凸多边形,计算前一时刻的各所述目标物对应的各最小外接矩形;预测子模块,用于根据前一时刻的各所述目标物对应的各最小外接矩形以及预设的卡尔曼滤波预测算法,预测当前时刻的各所述目标物对应的各最小外接矩形;第二计算子模块,用于根据当前时刻各所述目标物的轮廓对应的凸多边形,计算当前时刻的各所述目标物对应的各最小外接矩形;第三计算子模块,用于根据预测的当前时刻的各最小外接矩形、计算的当前时刻的各最小外接矩形以及预设的卡尔曼滤波更新算法,确定第一目标物对应的新的第一最小外接矩形。
作为一可选实施方式,所述第三计算子模块,具体用于:根据预测的当前时刻的各最小外接矩形和计算的当前时刻的各最小外接矩形,在预测的当前时刻的各最小外接矩形中,确定与计算的所述第一目标物对应的第一最小外接矩形相匹配的预测的第二最小外接矩形;根据计算的所述第一最小外接矩形、预测的所述第二最小外接矩形以及预设的卡尔曼滤波更新算法,确定所述第一目标物对应的新的第一最小外接矩形。
作为一可选实施方式,所述路面图像中包括车身的坐标系原点对应的像素点;所述装置还包括:第六确定模块,用于根据确定的目标物对应的最小外接矩形以及预设的转换关系,确定目标物对应的最小外接矩形在车身的坐标系中的坐标。
作为一可选实施方式,所述装置还包括:第七确定模块,用于根据各目标物对应的各最小外接矩形在车身的坐标系中的坐标,确定各目标物的长、宽、与车身的距离以及各目标物的中心和相对车身的方向角。
上述实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图7为本申请一实施例提供的电子设备的结构示意图,如图7所示,可以包括:壳体71、处理器72、存储器73、电路板74和电源电路75,其中,电路板74安置在壳体71围成的空间内部,处理器72和存储器73设置在电路板74上;电源电路75,用于为上述电子设备的各个电路或器件供电;存储器73用于存储可执行程序代码;处理器72通过读取存储器73中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述实施例提供的任一种路面信息提取方法,因此也能实现相应的有益技术效果,前文已经进行了详细说明,此处不再赘述。
上述电子设备以多种形式存在,包括但不限于:
(1) 移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通 信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2) 超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能, 一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3) 便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、 视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4) 服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5) 其他具有数据交互功能的电子设备。
相应的,本申请的实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述实施例提供的任一种路面信息提取方法,因此也能实现相应的技术效果,前文已经进行了详细说明,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
为了描述的方便,描述以上装置是以功能分为各种单元/模块分别描述。当然,在实施本申请时可以把各单元/模块的功能在同一个或多个软件和/或硬件中实现。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (16)
1.一种路面信息提取方法,其特征在于,包括:
基于预设的语义分割模型,确定路面图像对应的特征图;其中,所述特征图包括像素点所属的类别;
针对所述特征图上的每个像素序列,遍历像素点所属的类别,以在每一像素序列中查找属于同一目标类别的像素点;其中,所述目标类别的数量为一个或多个;
基于属于同一目标类别的像素点在所述像素序列中的分布情况,在所述像素序列中定位该目标类别下的目标物所对应的轮廓识别片段;其中,每个所述目标类别包括一个或多个所述目标物;
确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖;
如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,得到关联片段集;
根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓。
2.根据权利要求1所述的方法,其特征在于,所述基于属于同一目标类别的像素点在所述像素序列中的分布情况,在所述像素序列中定位该目标类别下的目标物所对应的轮廓识别片段,包括:
针对所述特征图上的第一像素序列,当第一次查找到第一像素点的类别为第一目标类别时,将所述第一像素点作为第一端点;
按照预设规则,确定第二端点,以使所述第一端点和所述第二端点标识所述第一目标类别下的目标物所对应的第一轮廓识别片段。
3.根据权利要求2所述的方法,其特征在于,所述按照预设规则,确定第二端点,包括:
在属于同一目标类别的像素点在所述像素序列中,在所述第一像素点之后的n个像素点的类别为第一目标类别,第n+1个像素点的类别不为第一目标类别的情况下,依次判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别;
如果预设个数的像素点的类别均不是第一目标类别,则将第n个像素点作为所述第二端点;
如果第n+1个之后的第m个像素点的类别为第一目标类别,则判断第m+1个像素点是否为第一目标类别;如果不是,则继续判断第m+1个之后的预设个数的像素点的类别是否为第一目标类别,直到确定所述第二端点;其中,m小于等于预设个数。
4.根据权利要求3所述的方法,其特征在于,在依次判断第n+1个之后的预设个数的像素点的类别是否为第一目标类别之前,所述按照预设规则,确定第二端点,还包括:
判断该像素点是否为该像素序列的终点;
如果是,则将该像素点作为所述第二端点。
5. 根据权利要求2所述的方法,其特征在于, 所述特征图包括第二像素序列,所述第二像素序列与所述第一像素序列相邻;
所述确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖,包括:
确定所述第二像素序列中是否包括所述第一目标类别下的目标物所对应的第二轮廓识别片段;
如果存在,则确定在像素序列的延伸方向上,所述第一轮廓识别片段的两个端点的坐标形成的范围和所述第二轮廓识别片段的坐标形成的范围,是否有交集。
6.根据权利要求5所述的方法,其特征在于,所述如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,包括:
如果有交集,则将所述第一轮廓识别片段和所述第二轮廓识别片段相关联。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓所对应的凸多边形;
根据所述目标类别下的目标物的轮廓所对应的凸多边形,确定所述目标类别下的目标物的轮廓对应的最小外接矩形;其中,所述最小外接矩形为能够包裹所述凸多边形的最小矩形。
8.根据权利要求7所述的方法,其特征在于,所述根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓所对应的凸多边形,包括:
根据所述关联片段集中的各轮廓识别片段的端点以及预设的凸包算法,确定所述目标类别下的目标物的轮廓所对应的凸多边形。
9.根据权利要求7所述的方法,其特征在于,所述根据所述目标类别下的目标物的轮廓所对应的凸多边形,确定所述目标类别下的目标物的轮廓对应的最小外接矩形,包括:
根据所述目标类别下的目标物的轮廓所对应的凸多边形以及预设的旋转卡壳算法,确定所述目标类别下的目标物的轮廓对应的最小外接矩形。
10.根据权利要求7所述的方法,其特征在于,所述目标物为多个;所述根据所述目标类别下的目标物的轮廓所对应的凸多边形,确定所述目标类别下的目标物的轮廓对应的最小外接矩形,包括:
根据前一时刻所述目标类别下的各所述目标物的轮廓所对应的凸多边形,计算前一时刻的各所述目标物对应的各最小外接矩形;
根据前一时刻的各所述目标物对应的各最小外接矩形以及预设的卡尔曼滤波预测算法,预测当前时刻的各所述目标物对应的各最小外接矩形;
根据当前时刻各所述目标物的轮廓对应的凸多边形,计算当前时刻的各所述目标物对应的各最小外接矩形;
根据预测的当前时刻的各最小外接矩形、计算的当前时刻的各最小外接矩形以及预设的卡尔曼滤波更新算法,确定第一目标物对应的新的第一最小外接矩形。
11.根据权利要求10所述的方法,其特征在于,所述根据预测的当前时刻的各最小外接矩形、计算的当前时刻的各最小外接矩形以及预设的卡尔曼滤波更新算法,确定第一目标物对应的新的第一最小外接矩形,包括:
根据预测的当前时刻的各最小外接矩形和计算的当前时刻的各最小外接矩形,在预测的当前时刻的各最小外接矩形中,确定与计算的所述第一目标物对应的第一最小外接矩形相匹配的预测的第二最小外接矩形;
根据计算的所述第一最小外接矩形、预测的所述第二最小外接矩形以及预设的卡尔曼滤波更新算法,确定所述第一目标物对应的新的第一最小外接矩形。
12.根据权利要求7所述的方法,其特征在于,所述路面图像中包括车身的坐标系原点对应的像素点;所述方法还包括:
根据确定的目标物对应的最小外接矩形以及预设的转换关系,确定目标物对应的最小外接矩形在车身的坐标系中的坐标。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
根据各目标物对应的各最小外接矩形在车身的坐标系中的坐标,确定各目标物的长、宽、与车身的距离以及各目标物的中心和相对车身的方向角。
14.一种路面信息提取装置,其特征在于,包括:
第一确定模块,用于基于预设的语义分割模型,确定路面图像对应的特征图;其中,所述特征图包括像素点所属的类别;
遍历模块,用于针对所述特征图上的每个像素序列,遍历像素点所属的类别,以在每一像素序列中查找属于同一目标类别的像素点;其中,所述目标类别的数量为一个或多个;
定位模块,用于基于属于同一目标类别的像素点在所述像素序列中的分布情况,在所述像素序列中定位该目标类别下的目标物所对应的轮廓识别片段;其中,每个所述目标类别包括一个或多个所述目标物;
第二确定模块,用于确定相邻两个像素序列中,同一目标类别下的目标物所对应的轮廓识别片段,在像素序列的延伸方向上是否存在交叠覆盖;
关联模块,用于如果存在,则将各相邻像素序列中,存在交叠覆盖的轮廓识别片段相关联,得到关联片段集;
第三确定模块,用于根据所述关联片段集中的各轮廓识别片段的端点,确定所述目标类别下的目标物的轮廓。
15.一种电子设备,其特征在于,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述权利要求1-13任一项所述的路面信息提取方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述权利要求1-13任一项所述的路面信息提取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310253691.5A CN115965927B (zh) | 2023-03-16 | 2023-03-16 | 一种路面信息提取方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310253691.5A CN115965927B (zh) | 2023-03-16 | 2023-03-16 | 一种路面信息提取方法、装置、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115965927A true CN115965927A (zh) | 2023-04-14 |
CN115965927B CN115965927B (zh) | 2023-06-13 |
Family
ID=85905186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310253691.5A Active CN115965927B (zh) | 2023-03-16 | 2023-03-16 | 一种路面信息提取方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115965927B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110176017A (zh) * | 2019-03-01 | 2019-08-27 | 北京纵目安驰智能科技有限公司 | 一种基于目标检测的边缘检测模型、方法和存储介质 |
CN111768373A (zh) * | 2020-06-18 | 2020-10-13 | 北京交通大学 | 基于深度学习的层级式路面标记破损检测方法 |
CN113240009A (zh) * | 2021-05-14 | 2021-08-10 | 广州极飞科技股份有限公司 | 一种点云数据标注方法、装置、存储介质及电子设备 |
CN113255578A (zh) * | 2021-06-18 | 2021-08-13 | 湖北亿咖通科技有限公司 | 交通标识的识别方法及装置、电子设备和存储介质 |
US20210406561A1 (en) * | 2019-03-12 | 2021-12-30 | Zhejiang Dahua Technology Co., Ltd. | Systems and methods for lane detection |
CN113989305A (zh) * | 2021-12-27 | 2022-01-28 | 城云科技(中国)有限公司 | 目标语义分割方法及应用其的街道目标异常检测方法 |
CN114926817A (zh) * | 2022-05-20 | 2022-08-19 | 远峰科技股份有限公司 | 识别车位的方法、装置、电子设备和计算机可读存储介质 |
EP4068220A1 (en) * | 2021-03-30 | 2022-10-05 | Canon Kabushiki Kaisha | Image processing device, image processing method, moving device, and storage medium |
CN115239794A (zh) * | 2022-09-23 | 2022-10-25 | 长沙海信智能系统研究院有限公司 | 道路积水面积检测方法、装置及电子设备 |
CN115249355A (zh) * | 2022-09-22 | 2022-10-28 | 杭州枕石智能科技有限公司 | 目标关联方法、设备及计算机可读存储介质 |
CN115620250A (zh) * | 2022-08-01 | 2023-01-17 | 北京晓智若余智能科技有限公司 | 路面要素重建方法、装置、电子设备及存储介质 |
CN115661522A (zh) * | 2022-10-24 | 2023-01-31 | 重庆长安汽车股份有限公司 | 一种基于视觉语义矢量的车辆导引方法、系统、设备和介质 |
-
2023
- 2023-03-16 CN CN202310253691.5A patent/CN115965927B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110176017A (zh) * | 2019-03-01 | 2019-08-27 | 北京纵目安驰智能科技有限公司 | 一种基于目标检测的边缘检测模型、方法和存储介质 |
US20210406561A1 (en) * | 2019-03-12 | 2021-12-30 | Zhejiang Dahua Technology Co., Ltd. | Systems and methods for lane detection |
CN111768373A (zh) * | 2020-06-18 | 2020-10-13 | 北京交通大学 | 基于深度学习的层级式路面标记破损检测方法 |
EP4068220A1 (en) * | 2021-03-30 | 2022-10-05 | Canon Kabushiki Kaisha | Image processing device, image processing method, moving device, and storage medium |
CN113240009A (zh) * | 2021-05-14 | 2021-08-10 | 广州极飞科技股份有限公司 | 一种点云数据标注方法、装置、存储介质及电子设备 |
CN113255578A (zh) * | 2021-06-18 | 2021-08-13 | 湖北亿咖通科技有限公司 | 交通标识的识别方法及装置、电子设备和存储介质 |
CN113989305A (zh) * | 2021-12-27 | 2022-01-28 | 城云科技(中国)有限公司 | 目标语义分割方法及应用其的街道目标异常检测方法 |
CN114926817A (zh) * | 2022-05-20 | 2022-08-19 | 远峰科技股份有限公司 | 识别车位的方法、装置、电子设备和计算机可读存储介质 |
CN115620250A (zh) * | 2022-08-01 | 2023-01-17 | 北京晓智若余智能科技有限公司 | 路面要素重建方法、装置、电子设备及存储介质 |
CN115249355A (zh) * | 2022-09-22 | 2022-10-28 | 杭州枕石智能科技有限公司 | 目标关联方法、设备及计算机可读存储介质 |
CN115239794A (zh) * | 2022-09-23 | 2022-10-25 | 长沙海信智能系统研究院有限公司 | 道路积水面积检测方法、装置及电子设备 |
CN115661522A (zh) * | 2022-10-24 | 2023-01-31 | 重庆长安汽车股份有限公司 | 一种基于视觉语义矢量的车辆导引方法、系统、设备和介质 |
Non-Patent Citations (4)
Title |
---|
LATEEF F等: "Survey on semantic segmentation using deep learning techniques", 《NEUROCOMPUTING》 * |
周岳勇;程江华;刘通;王洋;陈明辉;: "高分辨率SAR图像道路提取综述", 计算机科学, no. 01 * |
蒋应锋;张桦;薛彦兵;周冕;徐光平;高赞;: "一种新的多尺度深度学习图像语义理解方法研究", 光电子・激光, no. 02 * |
郑宝玉;王雨;吴锦雯;周全;: "基于深度卷积神经网络的弱监督图像语义分割", 南京邮电大学学报(自然科学版), no. 05 * |
Also Published As
Publication number | Publication date |
---|---|
CN115965927B (zh) | 2023-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110427905B (zh) | 行人跟踪方法、装置以及终端 | |
CN111145214A (zh) | 目标跟踪方法、装置、终端设备及介质 | |
WO2018090771A1 (zh) | 一种车牌识别方法及装置 | |
JP2018037053A (ja) | 車線境界線を検出する方法、装置、およびデバイス | |
CN110491132B (zh) | 基于视频帧图片分析的车辆违停检测方法及装置 | |
CN110502982A (zh) | 一种检测高速公路中障碍物的方法、装置及计算机设备 | |
CN111811525B (zh) | 一种基于遥感图像和浮动车轨迹的路网生成方法及系统 | |
CN111433780A (zh) | 车道线检测方法、设备、计算机可读存储介质 | |
CN111382625A (zh) | 道路标识识别方法、装置及电子设备 | |
CN113221750A (zh) | 车辆追踪方法、装置、设备及存储介质 | |
CN110667474A (zh) | 通用障碍物检测方法、装置与自动驾驶系统 | |
CN112328880A (zh) | 地理区域聚类方法、装置、存储介质和电子设备 | |
CN115599119A (zh) | 一种无人机的避障系统 | |
CN114168768A (zh) | 图像检索方法及相关设备 | |
CN112150538A (zh) | 一种在三维地图构建过程中车辆位姿的确定方法和装置 | |
CN111488751A (zh) | 二维码图像处理方法、装置、电子设备及存储介质 | |
CN111709377B (zh) | 特征提取方法、目标重识别方法、装置及电子设备 | |
CN112560856A (zh) | 车牌检测识别方法、装置、设备及存储介质 | |
CN115965927A (zh) | 一种路面信息提取方法、装置、电子设备及可读存储介质 | |
CN116486130A (zh) | 障碍物识别的方法、装置、自移动设备及存储介质 | |
CN115661444A (zh) | 图像处理方法、装置、设备、存储介质及产品 | |
CN107844749B (zh) | 路面检测方法及装置、电子设备、存储介质 | |
CN114842198A (zh) | 车辆智能定损方法、装置、设备及存储介质 | |
CN114898321A (zh) | 道路可行驶区域检测方法、装置、设备、介质及系统 | |
CN115131240A (zh) | 一种用于三维点云数据的目标识别方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |