图像中灭点的检测方法、检测模型训练方法和电子设备与流程

文档序号:20922270发布日期:2020-05-29 14:18阅读:381来源:国知局
图像中灭点的检测方法、检测模型训练方法和电子设备与流程

本公开实施例涉及机器视觉技术领域,具体涉及一种图像中灭点的检测方法、图像中灭点的检测模型训练方法、电子设备和非暂态计算机可读存储介质。



背景技术:

在透视投影中,一束平行于投影面的平行线的投影可以保持平行,而不平行于投影面的平行线的投影会聚集到一个点,这个点称为灭点(vanishingpoint)。目前,检测图像中灭点的多个方案中,一些方案需要对图像进行轮廓提取,而轮廓提取需要针对不同的光照、摄影机内参等图像特征选择不同的参数,此过程需要人工调整,普适性差;一些方案需要对图像进行霍夫变换,而霍夫变换需要依赖图像中的直线,若图像存在遮挡、扭曲、变形时效果不佳。

另外,目前检测图形中灭点的方案依赖图像中的直线等细节,忽略了图像中更高维度的全局信息。

上述对问题的发现过程的描述,仅用于辅助理解本公开的技术方案,并不代表承认上述内容是现有技术。



技术实现要素:

为了解决现有技术存在的至少一个问题,本公开的至少一个实施例提供了一种图像中灭点的检测方法、检测模型训练方法、电子设备和非暂态计算机可读存储介质。

第一方面,本公开实施例提出一种图像中灭点的检测方法,所述方法包括:

获取待检测图像;

对所述待检测图像进行预处理,得到预处理图像;

基于分割检测网络对所述预处理图像进行分割,得到多层图像分割结果;

基于所述多层图像分割结果,对所述预处理图像进行投影;

基于所述投影的极值确定灭点位置。

第二方面,本公开实施例还提出一种图像中灭点的检测模型训练方法,所述检测模型包括分割检测网络,所述方法包括:

获取样本图像,所述样本图像中标注有灭点位置;

对所述样本图像进行预处理,得到预处理图像;

基于分割检测网络对所述预处理图像进行分割,得到多层图像分割结果;

基于所述多层图像分割结果,对所述预处理图像进行投影;

基于所述投影的极值确定灭点位置;

基于确定的灭点位置和标注的灭点位置训练所述分割检测网络的参数。

在一些实施例中,本公开实施例还提出一种电子设备,包括:处理器和存储器;所述处理器通过调用所述存储器存储的程序或指令,用于执行如第一方面或第二方面所述方法的步骤。

在一些实施例中,本公开实施例还提出一种非暂态计算机可读存储介质,用于存储程序或指令,所述程序或指令使计算机执行如如第一方面或第二方面所述方法的步骤。

可见,本公开的至少一个实施例中,通过分割检测网络将图像进行分割,可得到多层图像分割结果,进而基于多层图像分割结果对图像进行投影,利用投影的极值确定灭点位置,即使图像中直线存在遮挡、扭曲等情况时,仍然可以得到灭点位置,适用更多场景。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。

图1是本公开实施例提供的一种智能驾驶车辆的示例性架构图;

图2是本公开实施例提供的一种智能驾驶系统的示例性框图;

图3是本公开实施例提供的一种灭点检测模块的示例性框图;

图4是本公开实施例提供的一种灭点检测模型训练模块的示例性框图;

图5是本公开实施例提供的一种电子设备的示例性框图;

图6是本公开实施例提供的一种图像中灭点的检测方法示例性流程图;

图7是本公开实施例提供的一种图像中灭点的检测模型训练方法示例性流程图;

图8是本公开实施例提供的一种分割网络的示例性结构图;

图9是本公开实施例提供的一种多层图像分割结果的示意图;

图10是本公开实施例提供的一种图像中灭点检测的流程示例图。

具体实施方式

为了能够更清楚地理解本公开的上述目的、特征和优点,下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。此处所描述的具体实施例仅仅用于解释本公开,而非对本公开的限定。基于所描述的本公开的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本公开保护的范围。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

本公开实施例提供了一种图像中灭点的检测方法、图像中灭点的检测模型训练方法、电子设备或存储介质,通过分割检测网络将图像进行分割,可得到多层图像分割结果,进而基于多层图像分割结果对图像进行投影,利用投影的极值确定灭点位置,即使图像中直线存在遮挡、扭曲等情况时,仍然可以得到灭点位置,适用更多场景,可以应用于智能驾驶车辆,还可以应用于电子设备。所述智能驾驶车辆搭载不同等级智能驾驶系统的车辆,智能驾驶系统例如包括:无人驾驶系统、辅助驾驶系统、驾驶辅助系统、高度自动驾驶系统、完全自动驾驶车辆等等。所述电子设备安装有智能驾驶系统,例如电子设备可用于测试智能驾驶算法,又例如电子设备可以为车载设备,在一些实施例中,电子设备还可以应用到其他领域。应当理解的是,本申请的方法的应用场景仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以将本申请应用于其他类似情景。以下为了能够更清楚无误的阐述,本公开实施例以智能驾驶车辆为例对所述图像中灭点的检测方法、图像中灭点的检测模型训练方法、电子设备或存储介质进行说明。

图1为本公开实施例提供的一种智能驾驶车辆的示例性整体架构图。如图1所示,智能驾驶车辆包括:传感器组、智能驾驶系统100、车辆底层执行系统以及其他可用于驱动车辆和控制车辆运行的部件,例如制动踏板、方向盘和油门踏板。

传感器组,用于采集车辆外界环境的数据和探测车辆的位置数据。传感器组例如包括但不限于摄像头、激光雷达、毫米波雷达、超声波雷达、gps(globalpositioningsystem,全球定位系统)和imu(inertialmeasurementunit,惯性测量单元)中的至少一个。

在一些实施例中,传感器组,还用于采集车辆的动力学数据,传感器组例如还包括但不限于车轮转速传感器、速度传感器、加速度传感器、方向盘转角传感器、前轮转角传感器中的至少一个。

智能驾驶系统100,用于获取传感器组的传感数据,其中,所述传感数据包括但不限于图像、视频、激光点云、毫米波、gps信息、车辆状态等。在一些实施例中,智能驾驶系统100基于所述传感数据进行环境感知和车辆定位,生成感知信息和车辆位姿;智能驾驶系统100基于所述感知信息和车辆位姿进行规划和决策,生成规划和决策信息;智能驾驶系统100基于规划和决策信息生成车辆控制指令,并下发给车辆底层执行系统。

在一些实施例中,智能驾驶系统100可以为软件系统、硬件系统或者软硬件结合的系统。例如,智能驾驶系统100是运行在操作系统上的软件系统,车载硬件系统是支持操作系统运行的硬件系统。

在一些实施例中,智能驾驶系统100可以与云端服务器进行交互。在一些实施例中,智能驾驶系统100与云端服务器通过无线通讯网络(例如包括但不限于gprs网络、zigbee网络、wifi网络、3g网络、4g网络、5g网络等无线通讯网络)进行交互。

在一些实施例中,云端服务器用于与车辆进行交互。其中,所述云端服务器可以向车辆发送环境信息、定位信息、控制信息及车辆智能驾驶过程中需要的其他信息。在一些实施例中,所述云端服务器可以接收来自车端的传感数据、车辆状态信息、车辆行驶信息以及车辆请求的相关信息。在一些实施例中,云端服务器可以基于用户设置或车辆请求对所述车辆进行远程控制。在一些实施例中,云端服务器可以是一个服务器,也可以是一个服务器群组。服务器群组可以是集中式的,也可以是分布式的。在一些实施例中,云端服务器可以是本地的或远程的。

车辆底层执行系统,用于接收车辆控制指令,并基于所述车辆控制指令控制车辆行驶。在一些实施例中,车辆底层执行系统包括但不限于:转向系统、制动系统和驱动系统。在一些实施例中,所述车辆底层执行系统还可包括底层控制器,用于解析车辆控制指令,并将其分别下发至转向系统、制动系统和驱动系统等对应系统。

在一些实施例中,智能驾驶车辆还可包括图1中未示出的车辆can总线,车辆can总线连接车辆底层执行系统。智能驾驶系统100与车辆底层执行系统之间的信息交互通过车辆can总线进行传递。

图2为本公开实施例提供的一种智能驾驶系统200的示例性框图。在一些实施例中,智能驾驶系统200可以实现为图1中的智能驾驶系统100或者智能驾驶系统100的一部分,用于控制车辆行驶。

如图2所示,智能驾驶系统200可划分为多个模块,例如可包括:感知模块201、规划模块202、控制模块203、灭点检测模块204以及其他一些可用于智能驾驶的模块。

感知模块201用于进行环境感知与定位。在一些实施例中,感知模块201用于获取传感器数据、v2x(vehicletox,车用无线通信)数据、高精度地图等数据并基于以上至少一种数据进行环境感知与定位,生成感知信息和定位信息。其中,感知信息可包括但不限于以下至少一个:障碍物信息、道路标志/标记、行人/车辆信息、可行驶区域。定位信息包括车辆位姿。

规划模块202用于进行路径规划和决策。在一些实施例中,规划模块202基于感知模块201生成的感知信息和定位信息,生成规划和决策信息。在一些实施例中,规划模块202还可以结合v2x数据、高精度地图等数据中的至少一种,生成规划和决策信息。其中,规划信息可包括但不限于规划路径等;决策信息可包括但不限于以下至少一种:行为(例如包括但不限于跟车、超车、停车、绕行等)、车辆航向、车辆速度、车辆的期望加速度、期望的方向盘转角等。

控制模块203用于基于规划和决策信息生成车辆底层执行系统的控制指令,并下发控制指令,以使车辆底层执行系统控制车辆行驶。其中,控制指令可包括但不限于:方向盘转向、横向控制指令、纵向控制指令等。

灭点检测模块204用于检测图像中灭点的位置。在一些实施例中,灭点检测模块204可基于分割检测网络将图像进行分割,得到多层图像分割结果。在一些实施例中,灭点检测模块204可基于多层图像分割结果对图像进行投影。在一些实施例中,灭点检测模块204可利用投影的极值确定灭点位置。

在一些实施例中,灭点检测模块204的功能可集成到感知模块201、规划模块202或控制模块203中,也可配置为与智能驾驶系统200相独立的模块,灭点检测模块204可以为软件模块、硬件模块或者软硬件结合的模块。例如,灭点检测模块204是运行在操作系统上的软件模块,车载硬件系统是支持操作系统运行的硬件系统。

图3为本公开实施例提供的一种灭点检测模块300的示例性框图。在一些实施例中,灭点检测模块300可以实现为图2中的灭点检测模块204或者灭点检测模块204的一部分。

如图3所示,灭点检测模块300可包括但不限于以下单元:获取单元301、预处理单元302、分割检测单元303、投影单元304和确定单元305。

获取单元301用于获取待检测图像。其中,待检测图像可以是视觉传感器采集的图像,并由视觉传感器发送。待检测图像也可以是仿真场景中的图像,其中,仿真场景用于测试智能驾驶系统的算法或其他功能算法,所述仿真场景例如为智能驾驶仿真场景,所述仿真场景例如为仿真引擎生成的仿真场景。在一些实施例中,仿真引擎可包括但不限于:虚幻引擎(unrealengine)、unity等。在一些实施例中,待检测图像可以为320×240的rgb图像,该尺寸的图像可以较好地平衡运行速度与运行精度。

预处理单元302用于对图像进行预处理,得到预处理图像,提高后续对图像处理的效率。在一些实施例中,预处理可包括固定尺寸裁剪和归一化。其中,固定尺寸裁剪便于图像尺寸适配分割检测单元303的输入尺寸,加快图像处理速度;归一化使图像对平移、旋转、缩放等仿射变换具有不变特性,提高后续图像处理的效率。

分割检测单元303用于分割预处理图像。在一些实施例中,分割检测单元303基于分割检测网络对所述预处理图像进行分割,得到多层图像分割结果。在一些实施例中,分割检测网络为神经网络,可预先训练得到。在一些实施例中,分割检测网络包括特征提取网络和分割网络,其中,特征提取网络用于提取预处理图像的特征;分割网络用语基于特征提取网络提取的特征分割所述预处理图像,得到多层图像分割结果。在一些实施例中,特征提取网络可采用resnet101,分割网络可采用编码-解码结构,在编码部分使用空洞卷积,在扩大感受野的同时不引入额外的尺寸开销,同时关注图像中的细节与大尺度宏观信息,分割网络的示例性结构如图8所示。在一些实施例中,分割网络包括聚焦损失(focalloss)函数、交叉熵损失(crossentropyloss)函数和距离损失(distanceloss)函数。其中,聚焦损失函数用于平衡正负样本的偏差;交叉熵损失函数用于评估分割误差;距离损失函数用于增强分割图像时层与层之间的关联性。

在一些实施例中,多层图像分割结果中“层”可以理解为图层(layer),属于目前图像处理软件中常用的概念;“层”也可以理解为区域,每一层表示图像中的一个区域。在一些实施例中,多层图像分割结果包括至少三层图像分割结果,所述至少三层图像分割结果包括天空层、左下层和右下层。在一些实施例中,天空层可基于天地线分割图像得到,其中,天地线可理解为天际线,也即城市轮廓线。例如,基于天地线可将图像分割为天空层和非天空层。在一些实施例中,左下层和右下层基于结构线分割图像得到,例如,基于结构线可将非天空层分割为左下层和右下层。所述结构线可以理解为图像中的边界线,所述边界线例如为车道线,所述边界线又例如为图像中车道的边线。在一些实施例中,多层图像分割结果如图8所示,天空层(sky)、左下层(leftbottom)和右下层(rightbottom)在没有距离损失函数的作用下,如图9中的low所示;在有距离损失函数的作用下,如图9中的high所示,可见,距离损失函数增强了分割图像时层与层之间的关联性,避免分割时过于分散,难以进行后续处理。

投影单元304用于对预处理图像进行投影。在一些实施例中,投影单元304基于预处理图像的多层图像分割结果,对所述预处理图像进行投影。在一些实施例中,投影单元304可基于多层图像分割结果,对所述预处理图像分别进行二值化处理,得到多层二值化图像。其中,二值化处理将图像上的像素点的灰度值设置为0或255,二值化处理的具体方式可以采用阈值法、动态阈值法等二值化常用的方式。在一些实施例中,投影单元304可将多层二值化图像分别进行水平投影和垂直投影。

确定单元305用于确定图像中的灭点位置。在一些实施例中,确定单元305基于投影单元304的投影极值确定灭点位置。在一些实施例中,确定单元305可分别确定水平投影和垂直投影的极值。在一些实施例中,确定单元305确定水平投影和垂直投影的极值的交点为灭点位置。

在一些实施例中,灭点检测模块300中各单元的划分仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如获取单元301、预处理单元302、分割检测单元303、投影单元304和确定单元305中的至少两个单元可以实现为一个单元;获取单元301、预处理单元302、分割检测单元303、投影单元304或确定单元305也可以划分为多个子单元。可以理解的是,各个单元或子单元能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能。

图4是本公开实施例提供的一种灭点检测模型训练模块的示例性框图,所述灭点检测模型的输入为图像,输出为带有灭点位置的图像,也即灭点检测模型可以实现图3所示的灭点检测模块的功能。灭点检测模型训练模块可应用于任意电子设备,所述电子设备可以独立于图3所示的灭点检测模块所应用的设备。对于特殊场景(例如黑白场景、夜间场景),可以基于灭点检测模型训练模块进行针对性训练,提升灭点检测的准确性。

如图4所示,灭点检测模型训练模块可包括但不限于:获取单元401、预处理单元402、分割检测单元403、投影单元404、确定单元405和训练单元406。

获取单元401用于获取样本图像。其中,样本图像中标注有灭点位置。在一些实施例中,样本图像由原始图像中标注灭点位置得到,所述原始图像中没有标注灭点位置。在一些实施例中,样本图像中标注的灭点位置基于所述样本图像中的车道线信息得到。在一些实施例中,获取单元401获取原始图像,旋转所述原始图像,得到旋转图像,使得旋转图像中弯道可以用二次函数表示,便于描述弯道的车道线,避免车道线方程无法确定。其中,旋转图像的角度例如为90度。在一些实施例中,获取单元401可检测旋转图像中的车道线;进而基于检测的车道线确定灭点位置。在一些实施例中,获取单元401基于检测的车道线两两之间的交点,确定灭点位置。在一些实施例中,获取单元401将所述灭点位置标注在所述原始图像中,得到样本图像。

在一些实施例中,样本图像中还标注有灭点位置的置信度。在一些实施例中,灭点位置的置信度基于所述样本图像中车道线数量和多条车道线两两之间的交点位置确定。

预处理单元402用于对样本图像进行预处理,得到预处理图像。在一些实施例中,预处理可包括随机裁剪、随机翻转、随机模糊和归一化。其中,随机翻转和随机模糊可增加样本多样性。

分割检测单元403用于分割预处理图像。在一些实施例中,分割检测单元403基于分割检测网络对所述预处理图像进行分割,得到多层图像分割结果。在一些实施例中,分割检测网络为神经网络,可预先训练得到。在一些实施例中,分割检测网络包括特征提取网络和分割网络,其中,特征提取网络用于提取预处理图像的特征;分割网络用语基于特征提取网络提取的特征分割所述预处理图像,得到多层图像分割结果。在一些实施例中,特征提取网络可采用resnet101,分割网络可采用编码-解码结构,在编码部分使用空洞卷积,分割网络的示例性结构如图8所示。在一些实施例中,分割网络包括聚焦损失(focalloss)函数、交叉熵损失(crossentropyloss)函数和距离损失(distanceloss)函数。其中,聚焦损失函数用于平衡正负样本的偏差;交叉熵损失函数用于评估分割误差;距离损失函数用于增强分割图像时层与层之间的关联性。

投影单元404用于对预处理图像进行投影。在一些实施例中,投影单元404基于预处理图像的多层图像分割结果,对所述预处理图像进行投影。在一些实施例中,投影单元404可基于多层图像分割结果,对所述预处理图像分别进行二值化处理,得到多层二值化图像。在一些实施例中,投影单元404可将多层二值化图像分别进行水平投影和垂直投影。

确定单元405用于确定图像中的灭点位置。在一些实施例中,确定单元405基于投影单元404的投影极值确定灭点位置。在一些实施例中,确定单元405可分别确定水平投影和垂直投影的极值。在一些实施例中,确定单元405确定水平投影和垂直投影的极值的交点为灭点位置。

训练单元406用于基于确定的灭点位置和标注的灭点位置训练所述分割检测网络的参数。在一些实施例中,训练单元406基于确定的灭点位置收敛到标注的灭点位置或训练次数达到设定的epoch值,停止训练。在一些实施例中,采用可变学习率,初始学习率为0.01,模型batchsize为128,使用8张nvidiav100进行训练。在一些实施例中,停止训练后,灭点检测模型可使用单张nvidiatitanx,单张图像耗时20ms,可以跑到40fps以上,达到实时的效果。

在一些实施例中,灭点检测模型训练模块中各单元的划分仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如获取单元401、预处理单元402、分割检测单元403、投影单元404、确定单元405和训练单元406中的至少两个单元可以实现为一个单元;获取单元401、预处理单元402、分割检测单元403、投影单元404、确定单元405或训练单元406也可以划分为多个子单元。可以理解的是,各个单元或子单元能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能。

图5是本公开实施例提供的一种电子设备的结构示意图。所述电子设备安装有智能驾驶系统,例如电子设备可用于测试智能驾驶算法,又例如电子设备可以为车载设备,所述车载设备可支持智能驾驶系统的运行。在一些实施例中,电子设备还可以应用到其他领域。

如图5所示,电子设备包括:至少一个处理器501、至少一个存储器502和至少一个通信接口503。电子设备中的各个组件通过总线系统504耦合在一起。通信接口503,用于与外部设备之间的信息传输。可理解地,总线系统504用于实现这些组件之间的连接通信。总线系统504除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但为了清楚说明起见,在图5中将各种总线都标为总线系统504。

可以理解,本实施例中的存储器502可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。

在一些实施方式中,存储器502存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作系统和应用程序。

其中,操作系统,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序,包含各种应用程序,例如媒体播放器(mediaplayer)、浏览器(browser)等,用于实现各种应用业务。实现本公开实施例提供的图像中灭点的检测方法或图像中灭点的检测模型训练方法的程序可以包含在应用程序中。

在本公开实施例中,处理器501通过调用存储器502存储的程序或指令,具体的,可以是应用程序中存储的程序或指令,处理器501用于执行本公开实施例提供的图像中灭点的检测方法或图像中灭点的检测模型训练方法各实施例的步骤。

本公开实施例提供的图像中灭点的检测方法或图像中灭点的检测模型训练方法可以应用于处理器501中,或者由处理器501实现。处理器501可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器501中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器501可以是通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

本公开实施例提供的图像中灭点的检测方法或图像中灭点的检测模型训练方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器502,处理器501读取存储器502中的信息,结合其硬件完成方法的步骤。

图6为本公开实施例提供的一种图像中灭点的检测方法的示例性流程图。该方法的执行主体为电子设备,所述电子设备安装有智能驾驶系统。在一些实施例中,所述电子设备用于测试智能驾驶算法。在一些实施例中,电子设备可以为车载设备,所述车载设备可支持智能驾驶系统的运行。为便于描述,以下实施例中以电子设备为执行主体说明图像中灭点的检测方法的流程。

如图6所示,在步骤601中,电子设备获取待检测图像。在一些实施例中,电子设备可获取视觉传感器发送的图像,电子设备也可获取仿真引擎生成的仿真场景中的图像。

在步骤602中,电子设备对待检测图像进行预处理,得到预处理图像。在一些实施例中,电子设备对待检测图像进行固定尺寸裁剪和归一化,得到预处理图像。

在步骤603中,电子设备基于分割检测网络对预处理图像进行分割,得到多层图像分割结果。在一些实施例中,电子设备基于分割检测网络中的特征提取网络提取预处理图像的特征,进而基于分割检测网络中的分割网络利用提取的特征分割预处理图像,得到多层图像分割结果。在一些实施例中,电子设备基于分割网络确定至少三层图像分割结果,其中,所述至少三层图像分割结果包括天空层、左下层和右下层。在一些实施例中,电子设备基于天地线分割预处理图像得到天空层和非天空层,并基于结构线可将非天空层分割为左下层和右下层。

在步骤604中,电子设备基于多层图像分割结果,对预处理图像进行投影。在一些实施例中。电子设备基于多层图像分割结果,对预处理图像分别进行二值化处理,得到多层二值化图像;进而将多层二值化图像分别进行水平投影和垂直投影。

在步骤605中,电子设备基于投影的极值确定灭点位置。在一些实施例中,电子设备分别确定水平投影和垂直投影的极值;进而确定极值的交点为灭点位置。

基于图6所示的灭点检测方法,图10提供了一种图像中灭点检测的流程示例图,图10中,电子设备获取待检测图像(rawimage),基于分割网络(segmentationnetwork)分割得到天空层、左下层和右下层的分割结果,分别进行二值化处理后进行水平投影和垂直投影,进而预测(projection)水平投影和垂直投影的极值的交点为灭点位置,输出的图像(outputimage)中标注灭点位置。

图7为本公开实施例提供的一种图像中灭点的检测模型训练方法的示例性流程图。该方法的执行主体为任意电子设备。在步骤701中,电子设备获取样本图像,所述样本图像中标注有灭点位置。在一些实施例中,电子设备基于所述样本图像中的车道线信息得到灭点位置。在一些实施例中,电子设备获取原始图像,旋转所述原始图像,得到旋转图像,进而检测旋转图像中的车道线,并基于检测的车道线确定灭点位置,将所述灭点位置标注在所述原始图像中,得到样本图像。在一些实施例中,电子设备还在样本图像中标注灭点位置的置信度。在一些实施例中,电子设备基于所述样本图像中车道线数量和多条车道线两两之间的交点位置确定灭点位置的置信度。

在步骤702中,电子设备对样本图像进行预处理,得到预处理图像。在一些实施例中,电子设备对样本图像进行随机裁剪、随机翻转、随机模糊和归一化,得到预处理图像。

在步骤703中,电子设备基于分割检测网络对预处理图像进行分割,得到多层图像分割结果。在一些实施例中,电子设备基于分割检测网络中的特征提取网络提取预处理图像的特征,进而基于分割检测网络中的分割网络利用提取的特征分割预处理图像,得到多层图像分割结果。在一些实施例中,电子设备基于分割网络确定至少三层图像分割结果,其中,所述至少三层图像分割结果包括天空层、左下层和右下层。在一些实施例中,电子设备基于天地线分割预处理图像得到天空层和非天空层,并基于结构线可将非天空层分割为左下层和右下层。

在步骤704中,电子设备基于多层图像分割结果,对预处理图像进行投影。在一些实施例中。电子设备基于多层图像分割结果,对预处理图像分别进行二值化处理,得到多层二值化图像;进而将多层二值化图像分别进行水平投影和垂直投影。

在步骤705中,电子设备基于投影的极值确定灭点位置。在一些实施例中,电子设备分别确定水平投影和垂直投影的极值;进而确定极值的交点为灭点位置。

在步骤706中,电子设备基于确定的灭点位置和标注的灭点位置训练所述分割检测网络的参数。在一些实施例中,电子设备基于确定的灭点位置收敛到标注的灭点位置或训练次数达到设定的epoch值,停止训练。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员能够理解,本公开实施例并不受所描述的动作顺序的限制,因为依据本公开实施例,某些步骤可以采用其他顺序或者同时进行。另外,本领域技术人员能够理解,说明书中所描述的实施例均属于可选实施例。

本公开实施例还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如图像中灭点的检测方法或图像中灭点的检测模型训练方法各实施例的步骤,为避免重复描述,在此不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本公开的范围之内并且形成不同的实施例。

本领域的技术人员能够理解,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

虽然结合附图描述了本公开的实施方式,但是本领域技术人员可以在不脱离本公开的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

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