首页 / 专利库 / 电脑图像 / 计算机图形学 / 计算机生成图像 / 交通工具、道路线检测和驾驶控制方法及装置

交通工具、道路线检测和驾驶控制方法及装置

阅读:331发布:2024-02-24

专利汇可以提供交通工具、道路线检测和驾驶控制方法及装置专利检索,专利查询,专利分析的服务。并且本 申请 提供了一种交通工具、道路线检测和驾驶控制方法及装置。其中,道路线检测方法包括:获取成像模组所捕获的包含路面的图像;分别预测所述图像包括的多个 像素 中单个像素属于预定道路线类别的概率,得到道路线预测概率图;基于所述道路线预测概率图确定目标道路线的信息。本申请利用 计算机视觉 进行道路标识的识别,可以提高车辆自动和/或辅助驾驶的 精度 。,下面是交通工具、道路线检测和驾驶控制方法及装置专利的具体信息内容。

1.一种道路线检测方法,其特征在于,包括:
获取成像模组所捕获的包含路面的图像;
分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图;和
基于所述道路线预测概率图确定目标道路线的信息。
2.根据权利要求1所述的方法,其特征在于,所述分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图,包括:
将所述图像输入神经网络模型;和
基于所述神经网络模型分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率、并输出道路线预测概率图。
3.根据权利要求1或2所述的方法,其特征在于,所述基于所述道路线预测概率图确定目标道路线信息,包括
确定所述道路线预测概率图包含的像素的值大于或等于设定阈值的多个像素;
获取确定的多个像素的位置信息;和
基于确定的多个像素的位置信息确定至少一类道路线对应的拟合方程模型的参数信息。
4.一种驾驶控制方法,其特征在于,包括:
基于如权利要求1-3任一所述的方法确定目标道路线的信息;和
至少基于所述目标道路线的信息生成交通工具的控制指令和/或提示信息。
5.一种交通工具,其特征在于,包括:
成像模组,用于捕获包含路面的图像;
道路线确定装置,分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图,以及基于所述道路线预测概率图确定目标道路线的信息;

驾驶控制装置,至少基于目标道路线的信息生成交通工具的控制指令和/或提示信息。
6.一种道路线检测装置,其特征在于,包括:
图像获取模,用于获取成像模组所捕获的包含路面的图像;
道路线预测模块,用于分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图;和
道路线确定模块,用于基于所述道路线预测概率图确定目标道路线的信息。
7.一种驾驶控制装置,其特征在于,包括:
道路线检测模块,为如权利要求6所述的道路线检测装置;和
驾驶控制模块,用于至少基于所述目标道路线的信息生成交通工具的控制指令和/或提示信息。
8.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-3中任一所述的道路线检测方法,和/或,所述处理器执行所述程序时实现如权利要求4所述的一种驾驶控制方法。
9.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-3中任一所述的道路线检测方法,和/或,所述计算机程序被处理器执行时实现如权利要求4所述的一种驾驶控制方法。
10.一种计算机程序,其特征在于,包括可在处理器上运行的多个指令,所述多个指令被处理器执行时实现如权利要求1-3中任一所述的道路线检测方法,和/或,实现如权利要求4所述的一种驾驶控制方法。

说明书全文

交通工具、道路线检测和驾驶控制方法及装置

技术领域

[0001] 本申请涉及智能交通领域,特别地,涉及交通工具、道路线检测方法和装置、驾驶控制方法和装置、电子设备、计算机可读存储介质、以及计算机程序

背景技术

[0002] 确定道路线的技术在自动驾驶或辅助领域有重要应用,如车辆运动状态控制、提前预警、自动巡航等。基于雷达系统和高精度地图进行道路线的检测往往成本太高。而根据图像设备所形成的图像确定道路线,是计算机视觉以及利用计算机视觉进行自动驾驶或辅助驾驶的重要技术。发明内容
[0003] 本发明实施例提供一种道路线检测技术方案、驾驶控制技术方案以及一种交通工具。
[0004] 在一些实施例中,本申请提供了一种道路线检测方法,包括:获取成像模组所捕获的包含路面的图像,分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图,和基于所述道路线预测概率图确定目标道路线的信息。
[0005] 在一些实施例中,所述分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图,包括:将所述图像输入神经网络模型,基于所述神经网络模型分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,并输出道路线预测概率图。
[0006] 在一些实施例中,所述基于道路线预测概率图确定目标道路线信息,包括:确定所述道路线预测概率图包含的像素的值大于或等于设定阈值的多个像素,获取确定的多个像素的位置信息,和基于确定的多个像素的位置信息确定至少一类道路线对应的拟合方程模型的参数信息。
[0007] 在一些实施例中,预定道路线类别包括以下之一或多种组合:一类或多类车道线、停止线、一类或多类引导线;所述目标道路线的信息包括以下之一或多种组合:目标车道线组的信息、停止线的信息、目标引导线组的信息;所述目标车道线组包括至少一类车道线,所述目标引导线组包括至少一类引导线。
[0008] 在一些实施例中,目标车道线组包括:所述图像中包含的至少一类车道线;或者,所述图像中分布在车辆位置两侧的两类车道线或者四类车道线。
[0009] 在一些实施例中,目标引导线组包括:所述图像中分布在车辆位置两侧的两类引导线、以及位于所述两类引导线之间的至少一类引导线。
[0010] 在一些实施例中,目标道路线的信息包括:至少一类道路线的拟合方程的表示信息。
[0011] 在一些实施例中,图像输入神经网络模型之前,还包括:基于包括有道路线标签信息的训练图像集训练待训练的神经网络模型,得到所述神经网络模型。
[0012] 在一些实施例中,训练图像集包括多张包含有路面的训练用图像、以及与各种训练用图像分别对应的表示道路线标注信息的灰度图,以及基于包括有道路线标签信息的训练图像集训练初始神经网络模型,得到所述神经网络模型,包括:以多张训练用图像以及各训练用图像对应的灰度图作为所述待训练的神经网络模型的输入、并以相应的灰度图为监督信息来调节所述待训练的神经网络模型的网络参数,得到所述神经网络模型。
[0013] 在一些实施例中,训练初始神经网络模型之前,还包括:为所述训练用图像包括的至少一类道路线分别生成所述训练用图像所包括的各类道路线各自对应的表示相应类道路线标注信息的灰度图。
[0014] 在一些实施例中,获取确定的多个像素的位置信息,包括:获取确定的多个像素在所述图像的图像像素坐标系中的第一坐标信息。
[0015] 在一些实施例中,获取确定的多个像素在所述图像的图像像素坐标系中的第一坐标信息之后,还包括:确定所述图像像素坐标系和道路平面世界坐标系的转换矩阵,和基于所述转换矩阵将所述第一坐标信息转化为在所述道路平面世界坐标系中的第二坐标信息。
[0016] 在一些实施例中,确定所述图像像素坐标系和道路平面世界坐标系的转换矩阵,包括:基于成像模组的成像组件标定参数,确定所述转换矩阵。
[0017] 在一些实施例中,成像模组包括:至少一个成像组件,所述至少一个成像组件设置于交通工具中。
[0018] 在一些实施例中,至少一个成像组件包括至少一种摄像头,每种摄像头的数量为一个或多个。
[0019] 在一些实施例中,至少一个成像组件包括一长焦摄像头以及分别位于所述长焦摄像头两侧的两个广摄像头。
[0020] 在一些实施例中,本申请提供了一种驾驶控制方法,包括:基于上述方法确定目标道路线信息,以及至少基于所述目标道路线的信息生成交通工具的控制指令和/或提示信息。
[0021] 在一些实施例中,目标道路线的信息包括:目标车道线组的信息;以及至少基于所述目标道路线的信息生成交通工具的控制指令和/或提示信息,包括:基于所述目标车道线组的信息确定所述交通工具与其行驶的车道之间的相对位置信息;基于所述相对位置信息和所述交通工具的行驶参数,预测所述交通工具在行驶过程中是否会偏离其行驶的目标车道;和根据预测结果生成用于目标车道保持的控制指令和/或提示信息。
[0022] 在一些实施例中,目标道路线的信息包括:目标停止线的信息;所述至少基于所述目标道路线的信息生成交通工具的控制指令和/或提示信息,包括:响应于所述目标停止线的信息表示存在有停止线,确定所述交通工具与所述停止线的相对距离,和根据所述相对距离生成减速或停止控制指令和/或提示信息。
[0023] 在一些实施例中,目标道路线的信息包括:目标引导线组的信息;以及基于所述目标引导线组的信息和所述交通工具的行驶参数,生成用于转向和/或减速的控制指令和/或提示信息。
[0024] 在一些实施例中,本申请提供了一种交通工具,包括:成像模组,用于捕获包含路面的图像,道路线确定装置,分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图,以及基于所述道路线预测概率图确定目标道路线的信息,以及驾驶控制装置,至少基于目标道路线的信息生成交通工具的控制指令和/或提示信息。
[0025] 在一些实施例中,成像模组包括至少一个成像组件,所述至少一个成像组件设置于交通工具中。
[0026] 在一些实施例中,至少一个成像组件包括至少一种摄像头,每种摄像头的数量为一个或多个。
[0027] 在一些实施例中,至少一个成像组件包括一长焦摄像头以及分别位于所述长焦摄像头两侧的两个广角摄像头。
[0028] 在一些实施例中,本申请提供了一种道路线检测装置,包括:图像获取模,用于获取成像模组所捕获的包含路面的图像,道路线预测模块,用于分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图,以及道路线确定模块,用于基于所述道路线预测概率图确定目标道路线的信息。
[0029] 在一些实施例中,道路线预测模块包括神经网络单元,神经网络单元包括:输入层单元,用于输入所述图像,中间网络层单元,用分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,以及输出层单元,用于输出道路线预测概率图。
[0030] 在一些实施例中,道路线确定模块包括:像素点确定单元,用于确定所述道路线预测概率图包含的像素的值大于或等于设定阈值的多个像素,位置信息获取单元,用于获取确定的多个像素的位置信息,以及参数信息确定单元,用于基于确定的多个像素的位置信息确定至少一类道路线对应的拟合方程模型的参数信息。
[0031] 在一些实施例中,道路线检测装置还包括神经网络训练模块,用于基于包括有道路线标签信息的训练图像集训练待训练的所述神经网络单元。
[0032] 在一些实施例中,神经网络训练模块以多张训练用图像以及各训练用图像对应的灰度图作为所述待训练的神经网络模型的输入、并以相应的灰度图为监督信息来调节所述待训练的神经网络单元的中间网络层单元的网络参数。
[0033] 在一些实施例中,本申请提供了一种驾驶控制装置,包括:道路线检测模块,用于检测道路线,以及驾驶控制模块,用于至少基于所述目标道路线的信息生成交通工具的控制指令和/或提示信息。
[0034] 在一些实施例,所述目标道路线的信息包括:目标车道线组的信息;以及驾驶控制模块包括:相对位置确定单元,用于基于所述目标车道线组的信息确定所述交通工具与其行驶的车道之间的相对位置信息;行驶轨迹预测单元,用于基于所述相对位置信息和所述交通工具的行驶参数,预测所述交通工具在行驶过程中是否会偏离其行驶的目标车道;和第一生成单元,用于根据预测结果生成用于目标车道保持的控制指令和/或提示信息。
[0035] 在一些实施例中,目标道路线的信息包括:目标停止线的信息;以及驾驶控制模块包括:相对距离确定单元,用于响应于所述目标停止线的信息表示存在有停止线,确定所述交通工具与所述停止线的相对距离,和第二生成单元,用于根据所述相对距离生成减速或停止控制指令和/或提示信息。
[0036] 在一些实施例中,目标道路线的信息包括:目标引导线组的信息;以及驾驶控制模块包括:第三生成单元,用于基于所述目标引导线组的信息和所述交通工具的行驶参数,生成用于转向和/或减速的控制指令和/或提示信息。
[0037] 在一些实施例中,本申请提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序。其中,处理器执行所述计算机程序时实现道路线检测方法,和/或执行程序时实现驾驶控制方法。
[0038] 在一些实施例中,本申请提供了一种计算机可读存储介质,其上存储有计算机程序。其中,计算机程序被处理器执行时实现道路线检测方法,和/或,执行时实现驾驶控制方法。
[0039] 在一些实施例中,本申请提供了一种计算机程序,包括可在处理器上运行的多个指令。其中,多个指令被处理器执行时实现道路线检测方法,和/或,实现驾驶控制方法。
[0040] 本发明实施例,通过计算机视觉进行道路标识的识别,可以提高车辆自动和/或辅助驾驶的精度附图说明
[0041] 本申请将以示例性实施例的方式进一步描述,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
[0042] 图1a是根据本申请的一些实施例所示的一种交通系统的示意图;
[0043] 图1b是根据本申请的一些实施例所示的一种道路线的示意图;
[0044] 图1c是根据本申请的一些实施例所示的一种道路线的示意图;
[0045] 图2是根据本申请的一些实施例所示的一种示例性计算设备的示意图;
[0046] 图3是根据本申请的一些实施例所示的一种道路线检测方法的示例性流程图
[0047] 图4是根据本申请的一些实施例所示的一种得到道路线预测概率图的示例性流程图;
[0048] 图5是根据本申请的一些实施例所示的一种确定目标道路线信息的示例性流程图;
[0049] 图6a是根据本申请的一些实施例所示的一种得到神经网络模型的示例性流程图;
[0050] 图6b-6d是根据本申请的一些实施例所示的一种分割标签的示意图;
[0051] 图7是根据本申请的一些实施例所示的一种确定多个像素的位置信息的示例性流程图;
[0052] 图8是根据本申请的一些实施例所示的一种驾驶控制方法的示例性流程图;
[0053] 图9是根据本申请的一些实施例所示的一种交通工具的示例性模块图;
[0054] 图10是根据本申请的一些实施例所示的一种道路检测装置的示例性模块图;
[0055] 图11是根据本申请的一些实施例所示的一种神经网络单元的示例性模块图;
[0056] 图12是根据本申请的一些实施例所示的一种道路线确定模块的示例性模块图;
[0057] 图13是根据本申请的一些实施例所示的一种驾驶控制系统的示例性模块图;及[0058] 图14是根据本申请的一些实施例所示的一种驾驶控制模块的示例性模块图。

具体实施方式

[0059] 为了更清楚地说明本申请的实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
[0060] 如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。
[0061] 本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或下面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
[0062] 本申请的实施例可以应用于不同的交通系统,不同的交通系统包括但不限于陆地、面航行、航空、航天等中的一种或几种的组合。例如,人车、代步工具、汽车(例如,小型车、巴士、大型运输车等)、轨道交通(例如,火车、动车、高、地铁等)、船舶、飞机、飞船、卫星、热气球、无人驾驶的交通工具等。本申请的不同实施例应用场景包括但不限于运输业、仓储物流业、农业作业系统、城市公交系统、商业运营车辆等中的一种或几种的组合。应当理解的是,本申请的系统及方法的应用场景仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。例如,其他类似的有轨迹的行驶系统。
[0063] 本申请描述的“道路线”可以包括交通工具在行驶过程中可以或需要途经的路线、交通工具被允许行驶的区域的边界、交通工具在某些情形(比如某些特定的交通灯)下被禁止行驶的区域的边界线、或实际不存在的用于自动驾驶或辅助驾驶的虚拟道路标识等。例如,所述“道路线”可以是引导车辆右转或左转的引导线,所述引导线可以是帮助车辆在路口转弯的辅助线,可以是地面实际不存在的线条。又例如,所述“道路线”可以是标明某条车道边界的车道线,所述车道线可以是标记车辆行驶道路的线条,可以是现实道路上实际存在的线条,也可以是实际道路上不存在的线条。再例如。所述“道路线”可以是停止线,所述停止线可以是在路口前提示车辆需要减速或停车的线条,所述停止线可以是道路上实际存在的线条,也可以是实际道路上不存在的线条。“道路线”可以是实线、虚线、直线、折线、曲线等中的一种,或其中任意几种的组合。
[0064] 图1a是根据本申请的一些实施例所示的一种交通系统100的示意图。例如,交通系统100可以是一个为自动驾驶辅助驾驶提供服务的平台。智能交通服务系统100可以包括一个服务器110、一个或多个存储设备120、一个或多个网络130、一个或多个车辆客户端140和一个或多个道路标识150-1、150-2……150-N。服务器110可以包括一个处理引擎112。
[0065] 在一些实施例中,服务器110可以是一个单个的服务器或者一个服务器群组。所述服务器群可以是集中式的或分布式的(例如,服务器110可以是一个分布式的系统)。在一些实施例中,服务器110可以是本地的或远程的。例如,服务器110可以通过网络130访问存储在存储设备120和/或车辆客户端140中的信息和/或数据。再例如,服务器110可以直接连接到存储设备120和/或车辆客户端140以访问存储的信息和/或数据。在一些实施例中,服务器110可以在一个平台上实现。仅仅举个例子,所述云平台可以包括私有云、公共云、混合云、社区云、分布云、云之间、多重云等或上述举例的任意组合。在一些实施例中,服务器110可以在与本申请图2所示的计算设备上实现,包括计算设备200中的一个或多个部件。
[0066] 在一些实施例中,服务器110可以包括一个处理引擎112。处理引擎112可以处理与服务请求相关的信息和/或数据以执行本申请描述的一个或多个功能。例如,处理引擎112可以基于获取车辆客户端140采集的信息,并通过网络130发送至存储设备120,用于更新存储在其中的数据。在一些实施例中,处理引擎112可以包括一个或多个处理器(例如,单核处理器或多核处理器)。仅仅举个例子,处理引擎112可以包括一个或多个硬件处理器,例如中央处理器(CPU)、专用集成电路(ASIC)、专用指令集处理器(ASIP)、图像处理器(GPU)、物理运算处理器(PPU)、数字信号处理器(DSP)、现场可编辑阵列(FPGA)、可编辑逻辑器件(PLD)、控制器微控制器单元、精简指令集计算机(RISC)、微处理器等或上述举例的任意组合。
[0067] 存储设备120可以存储数据和/或指令。在一些实施例中,存储设备120可以存储从车辆客户端140获得的数据。在一些实施例中,存储设备120可以存储供服务器110执行或使用的数据和/或指令,服务器110可以通过执行或使用所述数据和/或指令以实现本申请描述的示例性方法。在一些实施例中,存储设备120可以包括大容量存储器、可移动存储器、挥发性读写存储器、只读存储器(ROM)等或上述举例的任意组合。在一些实施例中,存储设备120可以在一个云平台上实现。仅仅举个例子,所述云平台可以包括私有云、公共云、混合云、社区云、分布云、云之间、多重云等或上述举例的任意组合。
[0068] 在一些实施例中,存储设备120可以与网络130连接以实现与交通系统100中的一个或多个部件(例如,服务器110、车辆客户端140等)之间的通信。交通系统100的一个或多个部件可以通过网络130访问存储在存储设备120中的数据或指令。在一些实施例中,存储设备120可以直接与交通系统100的一个或多个部件(例如,服务器110、车辆客户端140等)连接或通信。在一些实施例中,存储设备120可以是服务器110的一部分。
[0069] 网络130可以促进信息和/或数据的交换。在一些实施例中,交通系统100中的一个或多个部件(例如,服务器110、存储设备120和车辆客户端140等)可以通过网络130向交通系统100中的其他部件发送信息和/或数据。例如,服务器110可以通过网络130从车辆客户端140获取/得到请求。在一些实施例中,网络130可以是有线网络或无线网络中的任意一种,或其组合。在一些实施例中,网络130可以包括一个或多个网络接入点。例如,网络130可能包括有线或无线网络接入点,如基站和/或互联网交换点130-1、130-2等等。通过接入点,交通系统100的一个或多个部件可能连接到网络130以交换数据和/或信息。
[0070] 车辆客户端140可以包括一个成像模组、一个道路线确定装置和一个驾驶控制装置等。在一些实施例中,车辆客户端可以包括一个车载电脑、一个车载抬头显示(HUD)、一个车载自动诊断系统(OBD)等或上述举例的任意组合。在一些实施例中,成像模组可以用于对车辆客户端140所在位置的周边环境进行摄像和/或拍照。例如,成像模组可以包括一个行车记录仪、一个车载照相机、一个车载摄像机、一个车载监控系统、一个倒车影像系统等或上述举例的任意组合。再例如,成像模组可以包括一个长焦摄像头以及分别位于所述长焦摄像头两侧的两个广角摄像头。在一些实施例中,车辆客户端140可以将摄像/拍照信息发送交通系统100中的一个或多个设备中。例如,车辆客户端140可以将拍摄的图片或影像发送至服务器110进行处理,或存储设备120中进行存储。
[0071] 道路标识150-1、150-2……150-N可以包括一种或多种道路线。在一些实施例中,车辆客户端140可以识别道路标识150-1、150-2……150-N,用于引导车辆进行自动和/或辅助驾驶。
[0072] 图1b是根据本申请的一些实施例所示的一种道路线的示意图。在一些实施例中,所述道路线可以是车道线。所述车道线可以包括用于划分分隔带的车道线A、用于划分同向车道的车道线B和/或用于划分对向车道的车道线C等或其任意组合。所述分隔带可以是沿道路纵向设置的分隔车行道用的带状设施,可以包括位于道路中央的中央分隔带和位于道路两侧的外侧分隔带等。在一些实施例中,车道线A可以是外侧分隔带所在的线条。在一些实施例中,当车辆所在车道是单车道时,车道线B在道路上可以是不存在的。当车辆所在车道是双车道或多车道时,车道线B的数量可以是一条、两条或者多条。在一些实施例中,车道线C可以是单个线条或者平行的两条线条。在一些实施例中,车道线C可以是中央分隔带所在的线条。
[0073] 图1c是根据本申请的一些实施例所示的一种道路线的示意图。在一些实施例中,所述道路线可以包括停止线和引导线。所述停止线可以包括用于提示车辆已经到达路口,需要进行减速或者停车的线条。所述路口为道路汇合的地方。在一些实施例中,停止线可以是位于路口的一根线条。如图所示,当所述路口为十字路口时,停止线可以是线条D1、D2、D3和D4。应当理解的是,所述路口还可以包括T形路口、Y形路口、X形路口等。在一些实施例中,停止线可以是在道路上不存的线条。例如,停止线可以是路口靠近车辆一侧的边缘所在的线条。
[0074] 所述引导线可以是用于帮助车辆在路口转弯的辅助线,可以是道路上不存在的线条。在一些实施例中,引导线可以是对车辆左转弯进行辅助的线条。在一些实施例中,当车辆需要从当前所在车道转入目标车道时,引导线可以包括线条E1、E2和E3。E1为当前车辆所在车道的左侧车道线到目标车道的左侧车道线延伸,E3为当前车辆所在车道的右侧车道线到目标车道的右侧车道线延伸,E2为E1和E3的中线。车辆沿引导线行驶可顺利完成转弯。
[0075] 应当注意的是,所述道路线可以是路面上实际存在的道路标识(例如,车道线和/或停止线),也可以是路面实际上不存在的但用于自动和/或辅助驾驶的虚拟的道路标识(例如,引导线)。所述道路线可以是直线、折线和/或曲线。例如,所述道路线可以是沿直行道路分隔车道的车道线。又例如,所述道路线可以是由车道减少(例如,由四车道变换成三车道)时分隔车道的车道线。再例如,所述道路线可以是引导车辆进行转弯的引导线。所述道路线可以是实线和/或虚线。例如,所述道路线可以是用于划分对向车道的车道线(例如,车道线C)和/或划分同向车道的车道线(例如,车道线B)。
[0076] 图2是根据本申请的一些实施例所示的一种示例性计算设备200的示意图。服务器110、存储设备120和车辆客户端140可以在计算设备200上实现。例如,处理引擎112可以在计算设备200上实现并被配置为实现本申请中所披露的功能。
[0077] 计算设备200可以包括用来实现本申请所描述的系统的任意部件。例如,处理引擎112可以在计算设备200上通过其硬件、软件程序、固件或其组合实现。为了方便起见图中仅绘制了一台计算机,但是本申请所描述的与交通系统100相关的计算功能可以以分布的方式、由一组相似的平台所实施,以分散系统的处理负荷。
[0078] 计算设备200可以包括与网络连接的通信端口250,用于实现数据通信。计算设备200可以包括一个处理器(例如,CPU)220,可以以一个或多个处理器的形式执行程序指令。
示例性的电脑平台可以包括一个内部总线210、不同形式的程序存储器和数据存储器包括,例如,硬盘270、和只读存储器(ROM)230或随机存储器(RAM)240,用于存储由计算机处理和/或传输的各种各样的数据文件。示例性的计算设备可以包括存储在只读存储器230、随机存储器240和/或其他类型的非暂时性存储介质中的由处理器220执行的程序指令。本申请的方法和/或流程可以以程序指令的方式实现。计算设备200也包括输入/输出部件260,用于支持电脑与其他部件之间的输入/输出。计算设备200也可以通过网络通讯接收本披露中的程序和数据。
[0079] 为理解方便,图2中仅示例性绘制了一个处理器。然而,需要注意的是,本申请中的计算设备200可以包括多个处理器,因此本申请中描述的由一个处理器实现的操作和/或方法也可以共同地或独立地由多个处理器实现。例如,如果在本申请中,计算设备200的处理器执行步骤1和步骤2,应当理解的是,步骤1和步骤2也可以由计算设备200的两个不同的处理器共同地或独立地执行(例如,第一处理器执行步骤1,第二处理器执行步骤2,或者第一和第二处理器共同地执行步骤1和步骤2)。
[0080] 图3是根据本申请的一些实施例所示的一种道路线检测方法300的示例性流程图。方法300可以由交通系统100中的一个或多个部件实施。例如,方法300可以是存储在存储设备120中的一串指令(例如,一个应用程序)。服务器110和/或车辆客户端140可以通过执行所述指令实施方法300。又例如,方法300可以被执行为存储在存储单元(只读存储器230或随机存储器240)中的一串指令(例如,一个应用程序)。处理器220(或服务器110中相应的模块或单元)可以执行所述指令以实施方法300。应当理解的是,方法300中的一个或多个步骤可以由一个或多个处理器共同地或独立地执行。方法300包括:
[0081] 在步骤310,获取成像模组所捕获的包含路面的图像。
[0082] 在一些实施例中,所述成像模组包括至少一个成像组件,所述至少一个成像组件设置于交通工具中。例如,所述成像组件可以包括一个行车记录仪、一个车载照相机、一个车载摄像机、一个车载监控系统、一个倒车影像系统等或上述举例的任意组合。在一些实施例中,所述成像组件可以设置在交通工具的正前方位、侧前方位、侧方位、侧后方位和/或正后方位。例如,所述成像设备可以设置在交通工具的正前方用来捕获行驶方向的图像,或设置在交通工具的两侧用来捕获行驶方向两侧的图像。在一些实施例中,所述成像组件可以包括至少一种摄像头。例如,所述摄像头可以包括长焦摄像头、广角摄像头、全景摄像头等。所述摄像头的数量可以是一个或多个。例如,所述成像组件可以包括一个长焦摄像头和一个广角摄像头,或所述成像组件可以包括两个或多个全景摄像头。在一些实施例中,所述成像组件可以包括一个长焦摄像头和分别位于长焦摄像头两侧的两个广角摄像头,其中,长焦摄像头可用来捕获驾驶方向前方更远距离的图像,广角摄像头可用来捕获驾驶方向两侧更广距离的图像。基于长焦摄像头和广角摄像头组合的方式进行道路线检测静态图像或动态视频图像的获取,可获得更广视野的信息,有利于提高检测的精度。在一些实施例中,例如,所述长焦摄像头设置在交通工具的正前方或者设置在交通工具的驾驶室内,用来捕获行驶方向正前方的道路路面图像。所述广角摄像头可以设置在交通工具的左前方和右前方或者设置在交通工具的驾驶室内,用来捕获行驶方向正前方两侧的道路录像图像。应当注意的是,所述成像组件包含的摄像头种类和摄像头个数可以是任意合适的种类和数量。例如,所述成像组件可以包括两个长焦摄像头和四个广角摄像头。长焦摄像头设置在交通工具的正前方和正后方,广角摄像头设置在交通工具的左前方、右前方、左后方、右后方。对于所述成像组件所包含的摄像头的种类和数量的改进和修改,均在本申请的保护范围之内。
[0083] 在步骤320,分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图。
[0084] 在一些实施例中,道路线类别可以包括道路线的分类。例如,如图1b所示,车辆行驶方向右侧的第一条车道线A可以是一个道路线类别(例如,类别A),车辆行驶方向左侧的第一条车道线B可以是另一个道路线类别(例如,类别B),车辆行驶方向左侧的第二条车道线C可以是第三个道路线类别(例如,类别C)。又例如,如图1c所示,车辆行驶方向前方的停止线D1可以是一个道路线类别(例如,类别D)。车辆行驶方向左侧的第一条引导线E1可以是一个道路线类别(例如,类别E),车辆行驶方向左侧的第一条引导线E3可以是一个道路线类别(例如,类别F),位于引导线E1和E2之间的引导线E2可以是一个道路线类别(例如,类别G)。应当注意的是,每一条道路线,都是一个独立的类别,每条道路线与其他道路线的类别都不相同。在一些实施例中,所述预定道路线的类别可以包括一类或多类车道线、一类或多类停止线、一类或多类引导线等或其任意组合。例如,所述预定道路线的类别可以包括车道线类别A和车道线类别B。又例如,所述预定道路线的类别可以包括车道线类别A、车道线类别B和停止线类别D。再例如,所述预定道路线的类别可以包括引导线类别E、引导线类别E和引导线类别F。
[0085] 在一些实施例中,基于所述图像中的多个像素的特性(例如,像素的像素值、像素的亮度、像素的灰度值等),预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率。在一些实施例中,可以将所述图像输入到神经网络模型,基于所述神经网络模型预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率。在一些实施例中,所述概率可以以概率图、表格、数字、表达式等方式中的一种或任意组合表示。例如,概率可以表示为0到1之间的数字,其中0表述不属于该类别道路线,1表述确定100%属于该类别道路线。在一些实施例中,所述神经网络可以输出道路线预测概率图。所述道路线预测概率图可以是,以所述图像包括的多个像素中单个像素属于预定道路线类别的概率,替代所述单个像素的像素值所得到的图像。例如,所述道路线预测概率图中不属于预定道路线类别的像素点的像素值为0,确定100%属于预定道路线类别的像素点的像素值为1,0和1之间的数字越大,表明确定属于预定道路线类别的概率越大。在一些实施例中,可以根据本申请图4所示的方法400预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率。
[0086] 在步骤330,基于所述道路线预测概率图确定目标道路线的信息。
[0087] 在一些实施例中,所述目标道路线的信息可以包括目标车道线组的信息、目标停止线组的信息、目标引导线组的信息或其任意组合。例如,所述目标道路线组的信息可以包括所述图像中属于一类车道线的像素的概率值。所述目标车道线组可以包括至少一类车道线,所述停止线组可以包括至少一类停止线,所述目标引导线组包括至少一类引导线。在一些实施例中,所述目标车道线组可以包括所述图像中包含的至少一类车道线。例如,所述目标车道线组可以包括车辆行驶方向的道路上和反方向行驶的道路上的所有车道线。在一些实施例中,所述目标车道线组可以包括所述图像中分布在车辆位置两侧的两类车道线或四类车道线。例如,所述目标车道线组可以包括车辆所在车道的两条车道线。在一些实施例中,所述引导线组可以包括所述图像中分布在车辆两侧的两类引导线以及位于两类引导线之间的至少一类引导线。例如,所述引导线组可以包括如图1c所示的引导线E1、E2和E3。
[0088] 在一些实施例中,所述目标道路线的信息可以包括至少一类道路线的拟合方程的表示信息。所述拟合方程的表示信息可以反映所述车辆客户端140所在的车辆与所述目标道路线(例如,车道线、停止线、引导线等)在真实世界的位置信息。所述位置信息可以包括车辆与车道线之间的距离、车辆是否偏离车道线、车辆是否处于引导线内、车辆是否偏移引导线、车辆与引导线之间的距离、车辆是否超过停止线、车辆与停止线之间的距离等。在一些实施例中,可以根据本申请图5所示的方法500确定目标道路线的信息。
[0089] 图4是根据本申请的一些实施例所示的得到道路线预测概率图的方法400的一种示例性流程图。方法400可以由交通系统100中的一个或多个部件实施。例如,方法400可以是存储在存储设备120中的一串指令(例如,一个应用程序)。服务器110和/或车辆客户端140可以通过执行所述指令实施方法400。又例如,方法400可以被执行为存储在存储单元(只读存储器230或随机存储器240)中的一串指令(例如,一个应用程序)。处理器220(或服务器110中相应的模块或单元)可以执行所述指令以实施方法400。应当理解的是,方法400中的一个或多个步骤可以由一个或多个处理器共同地或独立地执行。方法400包括:
[0090] 在步骤410,将图像输入神经网络模型。
[0091] 在一些实施例中,所述神经网络模型可以包括经过训练后用于获取道路线预测概率图的神经网络模型。在一些实施例中,可以根据本申请图6a所示的方法600训练神经网络模型。
[0092] 在步骤420,基于所述神经网络模型分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率。在一些实施例中,所述概率可以以概率图、表格、数字、表达式等方式中的一种或任意组合表示。例如,概率可以表示为0到1之间的数字,其中0表述不属于该类别道路线,1表述确定100%属于该类别道路线。
[0093] 在步骤430,输出道路线预测概率图。所述道路线预测概率图可以是以所述图像包括的多个像素中单个像素属于预定道路线类别的概率替代所述单个像素的像素值所得到的图像。例如,所述道路线预测概率图中不属于预定道路线类别的像素点的像素值为0,确定100%属于预定道路线类别的像素点的像素值为1。
[0094] 图5是根据本申请的一些实施例所示的确定目标道路线信息的方法500的一种示例性流程图。方法500可以由交通系统100中的一个或多个部件实施。例如,方法500可以是存储在存储设备120中的一串指令(例如,一个应用程序)。服务器110和/或车辆客户端140可以通过执行所述指令实施方法500。又例如,方法500可以被执行为存储在存储单元(只读存储器230或随机存储器240)中的一串指令(例如,一个应用程序)。处理器220(或服务器110中相应的模块或单元)可以执行所述指令以实施方法500。应当理解的是,方法500中的一个或多个步骤可以由一个或多个处理器共同地或独立地执行。方法500包括:
[0095] 在步骤510,确定道路线预测概率图包含的像素的值大于或等于设定阈值的多个像素。
[0096] 在一些实施例中,可以比较概率图中各个像素的像素值与设定阈值的大小,从概率图中包含的所有像素中筛选出概率值大于或等于设定阈值的多个像素。在一些实施例中,所述设定阈值可以是预先存储在交通系统100中的,和/或可以根据应用场景的变化而变化。例如,设定阈值可以是人工设置的,也可以是交通系统100通过机器学习自动设置的。在一些实施例中,所述像素的值可以代表像素属于预定道路线类别的概率。
[0097] 在步骤520,获取确定的多个像素的位置信息。
[0098] 在一些实施例中,所述位置信息可以包括所述像素点在图像中的像素坐标信息和/或所述像素点所对应的物体在真实世界的道路平面世界坐标信息。所述位置信息可用于确定所述像素在图像中的位置和/或所述对应的物体在真实世界中的真实位置。在一些实施例中,可以根据本申请图7所示的方法700确定所述多个像素的位置信息。
[0099] 在步骤530,基于确定的多个像素的位置信息确定至少一类道路线对应的拟合方程模型的参数信息。
[0100] 在一些实施例中,可以将所述多个像素点的位置信息(例如,道路平面世界坐标信息和/或图像像素平面坐标信息)进行拟合,确定所述至少一类道路线对应的拟合方程。示例性的拟合方法可以包括最小二乘法、随机样本一致性(Random Sample Consensus,简写为RANSAC)拟合法、拉格朗日插值法、顿插值法、牛顿迭代法、区间二分法、弦截法、雅克比迭代法和牛顿科特斯数值积分法等或任意组合。
[0101] 所述至少一类道路线可以包括车道线、停止线、引导线等或任意组合。所述方程的类型可以包括一次方程、二次方程、三次方程、指数方程、对数方程、幂方程、参数方程等或任意组合。在一些实施例中,可以基于不同应用场景确定所述方程的类型。例如,当所述道路线为停止线时,可以基于所述多个像素点的道路平面世界坐标,确定所述停止线的方程类型为一次方程。
[0102] 当所述多个像素点的平面世界坐标为(Hi,Gi)时,以所述道路线为车道线为例,可以通过公式1确定该车道线在道路路面坐标系中的方程:
[0103]
[0104] 其中,x和y分别是所述确定的多个像素对应的路面坐标,k、h、b和c是方程待拟合参数。可以将多个像素点的平面世界坐标(Hi,Gi)分别代入到公式1中进行拟合,确定方程待拟合参数k、h、b和c,确定所述车道线的拟合方程。在一些实施例中,道路中的车道线可以包括实线和/或虚线等。当所述车道线为虚线时,可以将虚线中的空白区域进行补充,确定所处车道线为相应实线的方程。
[0105] 以所述道路线为停止线为例,可以通过公式2确定所述停止线在道路路面坐标系中的方程:
[0106] y=kx+b   (公式2)
[0107] 其中,x,y是所述像素点的平面世界坐标,k、b是方程待拟合参数。可以将多个像素点的平面世界坐标(Hi,Gi)分别代入到公式2中进行拟合,确定方程待拟合参数k和b,确定所述停止线的拟合方程。
[0108] 以所述道路线为引导线为例,可以通过公式3确定所述引导线在道路路面坐标系中的方程:
[0109] y=ax2+bx+c   (方式3)
[0110] 其中,x,y是所述确定的多个像素点对应的路面坐标,a、b和c是方程待拟合参数。可以将多个像素点的平面世界坐标(Hi,Gi)分别代入到公式3中进行拟合,确定方程待拟合参数a、b和c,确定所述引导线的拟合方程。
[0111] 当所述多个像素点的图像像素平面坐标为(Xi,Yi)时,以所述目标线条为车道线为例,可以根据公式1确定所述车道线在图像中的方程。可以将多个像素点的图像坐标(Xi,Yi)分别代入公式1中,确定方程待拟合参数a、b和c,确定所述车道线在图像中的方程。
[0112] 以所述目标线条为停止线为例,可以通过公式2确定所述停止线在图像中的方程。可以将所述多个像素点的图像坐标(Xi,Yi)分别代入到公式2中进行拟合,确定方程待拟合参数k和b,确定所述停止线在图像中的方程。
[0113] 以所述目标线条为引导线为例,可以通过公式3确定所述引导线在图像中的方程。可以将所述多个像素点的图像坐标(Xi,Yi)分别代入到公式3中进行拟合,确定方程待拟合参数k和b,确定所述引导线在图像中的方程。
[0114] 应当理解的是,上述公式1、公式2和公式3仅仅作为示例,并不能限制所述目标线条的方程的类型。参数信息确定单元1230可以根据不同应用场景,根据不同拟合方法,拟合不同类型的方程。
[0115] 图6a是根据本申请的一些实施例所示的得到神经网络模型的方法600的一种示例性流程图。方法600可以由交通系统100中的一个或多个部件实施。例如,方法600可以是存储在存储设备120中的一串指令(例如,一个应用程序)。服务器110和/或车辆客户端140可以通过执行所述指令实施方法600。又例如,方法600可以被执行为存储在存储单元(只读存储器230或随机存储器240)中的一串指令(例如,一个应用程序)。处理器220(或服务器110中相应的模块或单元)可以执行所述指令以实施方法600。应当理解的是,方法600中的一个或多个步骤可以由一个或多个处理器共同地或独立地执行。方法600包括:
[0116] 在610,分别生成训练用图像所包括的各类道路线各自对应的表示相应类道路线标注信息的灰度图。
[0117] 在一些实施例中,所述训练用图像可以是成像模组获取的不同路面状况的原始图像。所述训练用图像还可以是成像模组获取的实时路面的视频中的一图像。在一些实施例中,所述灰度图可以是所述神经网络模型在进行训练时所使用的参考标准标签。在一些实施例中,所述灰度图可以是与对应原始图像相同大小的8位灰度图像。所述灰度图像中灰度为0的像素点不属于道路线,灰度大于0的像素点属于道路线。不同的灰度代表不同类的道路线。例如,如图6b所示,不同灰度的线条代表不同类的车道线。在一些实施例中,所述道路线标注信息可以是相应道路线在灰度图上的一系列有序的点对。在一些实施例中,可以对原始图像中的各类道路线进行标注以生成相应的灰度图。下面分别以道路线为车道线、停止线和引导线为例,对标注进行描述。
[0118] 以所述目标线条是车道线为例,可以标注训练图像上车辆的行驶方向上的车道线。在一些实施例中,可以采用平行法则,首先标记出地平线;然后确定竖直方向跨度最大的车道线(如果是弯道,可以确定最弯曲的车道线);根据该跨度最大的车道线,确定车辆行驶方向上与所述跨度最大的车道线在实际道路上平行的所有车道线;在所述所有车道线的每条车道线上标记若干个有序点对。在一些实施例中,可以根据所述每条车道线的若干有序点对保存在一个TXT文件,该TXT文件中行数与车道线的数量一致,每行包括每条车道线的若干点对。在一些实施例中,可以根据所述有序点对的TXT文件,生成与原始训练图像大小一样的灰度图。具体地,可以将有序点对通过三次样条插值形成车道线的灰度图。例如,有序点对的坐标分别表示为(x1,y1),(x2,y2),(x3,y3)…(xn,yn)。定义相邻两个有序点对的插值样条由公式4表示。
[0119]
[0120] 其中,0≤u≤1,1≤i≤n-1,i∈Z+。通过公式5、公式6、公式7、公式8和公式9计算ai,bi,ci,di,ei,fi,gi,hi,分别代入公式4得到车道线的分割标签。
[0121]
[0122]
[0123]
[0124]
[0125]
[0126] 图6b是根据本申请的一些实施例所示的一种分割标签的示意图,具体地,图6b中的分割标签表示了原始训练图像中的车道线,用于训练确定车道线的神经网络模型。
[0127] 以所述目标线条是停止线为例,可以标注训练图像上的停止线。当所述训练图像中存在停止线时,可以标记出停止线的两个端点。标注时,可以在被标注的停止线整个线段都位于路面上,且两个端点(起点和终点)都位于路面区域时标记停止线。还可以在可以显示停止线的路口的标注训练图像中标记停止线。当所述训练图像中没有实际的停止线(被遮挡或不存在)时,可以标记出路口分别靠近车辆一侧的边缘的两个端点,从而标记停止线。在一些实施例中,可以根据所述两个端点(例如,停止线的端点或路口边缘的两个端点,连接两个端点)生成与原始训练图像大小一样的灰度图,该灰度图表示停止线的分割标签。停止线的分割标签可以通过三次样条差值形成,具体形成过程可以参见本发明披露中车道线的分割标签形成过程的描述。
[0128] 图6c是根据本申请的一些实施例所示的一种分割标签的示意图,具体地,图6c中的分割标签表示了原始训练图像中的停止线,用于训练确定停止线的神经网络模型。
[0129] 以所述目标线条是引导线为例,可以标注训练图像上实际不存在的引导线。可以标注转弯路口处,从车辆转弯的出发车道(车辆的左右两车道)向目标车道的两条延伸线;还可以标注出目标车道的两条延伸线的中线。可以在显示转入路口路面的标注训练图像上标注引导线,引导线不能跨越障碍。可以只标记特定转向方向上的引导线,例如左转方向。
还可以在显示车辆转弯过程中的标注训练图像上标注,在显示转弯完成的标准训练图像中停止标注。在一些实施例中,可以在所述三条引导线(两条车道线的延伸线和一条延伸线的中)的每条引导线上标记若干个有序点对。在一些实施例中,可以把所述每条引导线的若干有序点对生成一个TXT文件,该TXT文件中行数为三行,每行包括每条引导线的若干有序点对。在一些实施例中,可以根据所述有序点对的TXT文件,生成与原始训练图像大小一样的灰度图,该灰度图表示引导线的分割标签。引导线的分割标签可以通过三次样条差值形成,具体形成过程可以参见本发明披露中车道线的分割标签形成过程的描述。
[0130] 图6d是根据本申请的一些实施例所示的一种分割标签的示意图,具体地,图6d中的分割标签表示了原始训练图像中的引导线,用于训练确定引导线的神经网络模型。
[0131] 在步骤620,以多张训练用图像以及各训练用图像对应的灰度图作为所述待训练的神经网络模型的输入。
[0132] 仅仅作为范例,所述神经网络模型的结构如下:
[0133] 1.输入层
[0134] 2.<=1卷积层1_1(3×3×64)
[0135] 3.<=2非线性响应ReLU层
[0136] 4.<=3卷积层1_2(3×3×64)
[0137] 5.<=4非线性响应ReLU层
[0138] 6.<=5池化层(3×3/2)
[0139] 7.<=6卷积层2_1(3×3×128)
[0140] 8.<=7非线性响应ReLU层
[0141] 9.<=8卷积层2_2(3×3×128)
[0142] 10.<=9非线性响应ReLU层
[0143] 11.<=10池化层(3×3/2)
[0144] 12.<=11卷积层3_1(3×3×256)
[0145] 13.<=12非线性响应ReLU层
[0146] 14.<=13卷积层3_2(3×3×256)
[0147] 15.<=14非线性响应ReLU层
[0148] 16.<=15卷积层3_3(3×3×256)
[0149] 17.<=16非线性响应ReLU层
[0150] 18.<=17池化层(3×3/2)
[0151] 19.<=18卷积层4_1(3×3×512)
[0152] 20.<=19非线性响应ReLU层
[0153] 21.<=20卷积层4_2(3×3×512)
[0154] 22.<=21非线性响应ReLU层
[0155] 23.<=22卷积层4_3(3×3×512)
[0156] 24.<=23非线性响应ReLU层
[0157] 25.<=24池化层(3×3/2)
[0158] 26.<=25卷积层5_1(3×3×512)
[0159] 27.<=26非线性响应ReLU层
[0160] 28.<=27卷积层5_2(3×3×512)
[0161] 29.<=28非线性响应ReLU层
[0162] 30.<=29卷积层5_3(3×3×512)
[0163] 31.<=30非线性响应ReLU层
[0164] 32.<=31线性差值层
[0165] 33.<=32损失层,进行损失函数的计算
[0166] ……
[0167] N.输出层
[0168] 其中,其中符号“.<=”前面的数字为当前层数,后面的数字为输入层数,例如,“2.<=1”可以表明当前层为第二层,输入为第一层。卷积层后面括号内为卷积层参数,例如,3×3×64,表明卷积核大小3×3,通道数为64。池化层后面括号内为池化层参数,例如,3×3/2表明池化核大小3×3,间隔为2。上述神经网络中,卷积层后的非线性响应单元可以包括纠正线性单元(Rectified Linear Units,简称:ReLU)。
[0169] 应该理解的是,上述神经网络仅仅作为示例,可以根据交通系统100不同性能或效率的要求,调整神经网络的结构。例如,可以调整所述卷积核的大小为5×5,通道数为128,间隔为4。类似的修改均在本披露的保护范围之内。
[0170] 在步骤630,以相应的灰度图为监督信息调节所述待训练的神经网络模型的网络参数。
[0171] 在一些实施例中,可以利用所述待训练的神经网络模型在训练中所输出的结果与灰度图做差,得到损失函数的值。在根据损失函数的值进行反向传播更新所述待训练的神经网络模型的网络参数,比如,超参数、学习速率等。
[0172] 在步骤640,得到所述神经网络模型。在一些实施例中,如果经过参数调整后所述待训练的神经网络模型的输出满足损失函数的条件,可以停止训练并获取所述神经网络。
[0173] 图7是根据本申请的一些实施例所示的确定多个像素的位置信息的方法700的一种示例性流程图。方法700可以由交通系统100中的一个或多个部件实施。例如,方法700可以是存储在存储设备120中的一串指令(例如,一个应用程序)。服务器110和/或车辆客户端140可以通过执行所述指令实施方法700。又例如,方法700可以被执行为存储在存储单元(只读存储器230或随机存储器240)中的一串指令(例如,一个应用程序)。处理器220(或服务器110中相应的模块或单元)可以执行所述指令以实施方法700。应当理解的是,方法700中的一个或多个步骤可以由一个或多个处理器共同地或独立地执行。方法700包括:
[0174] 在步骤710,获取确定的多个像素在所述图像的图像像素坐标系中的第一坐标信息。
[0175] 在一些实施例中,所述图像像素坐标系可以是在成像模组所捕获的包含一个道路路面的图像上建立起的平面坐标系。例如,所述图像的中心点可以作为平面坐标系X轴与Y轴的交点。所述第一坐标信息可以包括所述多个像素在所述图像像素坐标系上获得的图像坐标(Xi,Yi),其中,i代表第i个像素点。例如,所述多个像素点的所对应的图像坐标可以包括(X1,Y1),(X2,Y2),…,(Xi,Yi),i可以是大于或等于1的整数。所述图像坐标代表所述多个像素点在图像平面坐标系的位置。
[0176] 在步骤720,基于所述成像模组的成像组件标定参数,确定所述图像像素坐标系和道路平面世界坐标系的转换矩阵。
[0177] 在一些实施例中,所述成像组件标定参数可以包括内参数和外参数。内参数可以包括图像中心坐标、焦距、比例因子和镜头畸变等。外参数可以包括位置参数和方向参数等。所述转换矩阵可以将所述图像中的一个或多个像素的像素坐标转换为所述一个或多个像素对应的一个或多个物体在一个道路平面世界坐标系的道路平面坐标。所述转换矩阵可以包括单应变换矩阵、内参矩阵、旋转矩阵等或任意组合。在一些实施例中,所述道路平面世界坐标系可以以道路水平面为基准所建立起来的坐标系(例如,所述道路平面世界坐标系的坐标平面可以是水平面)。
[0178] 在步骤730,基于所述转换矩阵将所述第一坐标信息转化为在所述道路平面世界坐标系中的第二坐标信息。
[0179] 在一些实施例中,所述第二坐标信息可以包括所述多个像素在所述道路平面世界坐标系上获得的道路平面坐标(Hi,Gi)。其中,i代表第i个像素点。例如,可以基于和单应变换矩阵确定所述多个像素点的所对应的道路平面坐标,例如,(H1,G1),(H2,G2),…,(Hi,Gi),i可以是大于或等于1的整数。所述道路平面坐标代表所述多个像素点所对应的多个物体在道路平面世界坐标系的位置。
[0180] 图8是根据本申请的一些实施例所示的驾驶控制方法800的一种示例性流程图。方法800可以由交通系统100中的一个或多个部件实施。例如,方法800可以是存储在存储设备120中的一串指令(例如,一个应用程序)。服务器110和/或车辆客户端140可以通过执行所述指令实施方法800。又例如,方法800可以被执行为存储在存储单元(只读存储器230或随机存储器240)中的一串指令(例如,一个应用程序)。处理器220(或服务器110中相应的模块或单元)可以执行所述指令以实施方法800。应当理解的是,方法800中的一个或多个步骤可以由一个或多个处理器共同地或独立地执行。方法800包括:
[0181] 在步骤810,确定目标道路线的信息,所述目标道路线的信息包括目标车道线组的信息。
[0182] 在一些实施例中,可以基于方法300确定目标道路线的信息。所述目标道路线的信息可以包括目标车道线组的信息。例如,所述目标道路线的信息可以包括目标车道线组中每一类车道线的拟合方程的表示信息。
[0183] 在步骤820,基于所述目标车道线组的信息确定所述交通工具与其行驶的车道之间的相对位置信息。
[0184] 在一些实施例中,所述目标车道线组的信息可以反映所述交通工具与其行驶的车道之间的相对位置信息,例如,所述交通工具与所述各类车道之间的距离、所述交通工具是否偏离所述车道等。在一些实施例中,可以基于所述车道所在的车道线对应的拟合方程,确定所述交通工具与其行驶的车道之间的相对位置信息。
[0185] 在步骤830,基于所述相对位置信息和所述交通工具的行驶参数,预测所述交通工具在行驶过程中是否会偏离其行驶的目标车道。
[0186] 在一些实施例中,所述行驶参数可以包括速度、行驶方向、加速度、转向度、油门开度等或其任意组合。在一些实施例中,可以通过获取当前时刻所述交通工具与目标车道线之间的所述相对位置信息和所述交通工具的行驶参数,预测所述交通工具的行驶轨迹。例如,可以获取所述交通工具的当前速度与转向度,以及所述交通工具距离所述目标车道线的距离,预测所述交通工具的行驶轨迹(例如,所述交通工具将一直处于车道线内行驶或所述交通工具将与2秒内偏离车道线)。
[0187] 在步骤840,根据预测结果生成用于目标车道保持的控制指令和/或提示信息。
[0188] 在一些实施例中,响应于预测结果表明存在车道线及交通工具与其行驶的车道之间的相对位置信息,可以根据该结果生成行驶轨迹的控制指令和/或提示信息。
[0189] 在一些实施例中,所述目标道路线的信息也可以包括目标停止线组的信息(例如,目标停止线组中每一类停止线的拟合方程的表示信息),还可以包括目标引导线组的信息(例如,目标引导线组中每一类引导线的拟合方程的表示信息)。
[0190] 在一些实施例中,可以基于所述目标停止线组的信息确定所述交通工具与其行驶方向前方停止线之间的相对位置信息,例如,所述交通工具与所述停止线之间的距离、所述交通工具是否超过所述停止线等。在一些实施例中,可以基于所述停止线的拟合方程,确定所述交通工具与其行驶前方停止线之间的相对位置信息。
[0191] 在一些实施例中,还可以基于所述目标引导线组的信息确定所述交通工具与其转弯方向引导线之间的相对位置信息,例如,所述交通工具是否处于引导线内、所述交通工具是否偏移所述引导线等。在一些实施例中,可以基于所述引导线的拟合方程,确定所述交通工具与其转弯方向引导线之间的相对位置信息。
[0192] 在一些实施例中,还可以通过获取当前时刻所述交通工具与目标停止线之间的所述相对位置信息和所述交通工具的行驶参数(例如,速度和加速度),判定所述交通工具到达目标停止线的时间(例如,所述交通工具若以当前速度行驶将于5秒内到达目标停止线)。在一些实施例中,还可以通过获取当前时刻所述交通工具与目标引导线之间的所述相对位置信息和所述交通工具的行驶参数(例如,转向角和速度),预测所述交通工具的行驶轨迹(例如,所述交通工具以当前转向角和当前速度可顺利完成转弯)。
[0193] 在一些实施例中,响应于预测结果表明存在有停止线,以及交通工具与停止线的相对距离,可以根据该结果生成减速或停止的控制指令和/或提示信息;响应于预测结果表明不存在停止线,可以生成继续形式的控制指令和/或提示信息。
[0194] 在一些实施例中,响应于预测结果表明存在引导线,及交通工具与引导线之间的相对位置信息,可以根据该结果及交通工具的行驶参数,生成用于转向和/或减速的控制指令和/或提示信息。
[0195] 图9是根据本申请的一些实施例所示的一种交通工具900的示例性模块图。该交通工具900包括:
[0196] 成像模组910,用于捕获包含道路路面的图像。
[0197] 在一些实施例中,成像模组910可以包括至少一个设置于交通工具内部的成像组件。该至少一个成像组件包括至少一种摄像头,每种摄像头的数量为一个或多个。在一些实施例中,至少一个成像组件包括一个长焦摄像头以及分别位于该长焦摄像头两侧的两个广角摄像头。
[0198] 道路线确定装置920,用于分别预测道路路面图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图,以及基于所述道路线预测概率图确定目标道路线的信息。
[0199] 在一些实施例中,道路线类别可以包括道路线的分类。例如,如图1b所示,车辆行驶方向右侧的第一条车道线A可以是一个道路线类别(例如,类别A),车辆行驶方向左侧的第一条车道线B可以是另一个道路线类别(例如,类别B),车辆行驶方向左侧的第二条车道线C可以是第三个道路线类别(例如,类别C)。又例如,如图1c所示,车辆行驶方向前方的停止线D1可以是一个道路线类别(例如,类别D)。车辆行驶方向左侧的第一条引导线E1可以是一个道路线类别(例如,类别E),车辆行驶方向左侧的第一条引导线E3可以是一个道路线类别(例如,类别F),位于引导线E1和E2之间的引导线E2可以是一个道路线类别(例如,类别G)。应当注意的是,每一条道路线,都是一个独立的类别,每条道路线与其他道路线的类别都不相同。在一些实施例中,所述预定道路线的类别可以包括一类或多类车道线、一类或多类停止线、一类或多类引导线等或其任意组合。例如,所述预定道路线的类别可以包括车道线类别A和车道线类别B。又例如,所述预定道路线的类别可以包括车道线类别A、车道线类别B和停止线类别D。再例如,所述预定道路线的类别可以包括引导线类别E、引导线类别E和引导线类别F。
[0200] 在一些实施例中,基于所述图像中的多个像素的特性(例如,像素的像素值、像素的亮度、像素的灰度值等),预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率。在一些实施例中,可以将所述图像输入到神经网络模型,基于所述神经网络模型预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率。在一些实施例中,所述概率可以以概率图、表格、数字、表达式等方式中的一种或任意组合表示。例如,概率可以表示为0到1之间的数字,其中0表述不属于该类别道路线,1表述确定100%属于该类别道路线。在一些实施例中,所述神经网络可以输出道路线预测概率图。所述道路线预测概率图可以是以所述图像包括的多个像素中单个像素属于预定道路线类别的概率替代所述单个像素的像素值所得到的图像。例如,所述道路线预测概率图中不属于预定道路线类别的像素点的像素值为0,确定100%属于预定道路线类别的像素点的像素值为1。
[0201] 在一些实施例中,所述目标道路线的信息可以包括目标车道线组的信息、目标停止线组的信息、目标引导线组的信息或其任意组合。例如,所述目标道路线组的信息可以包括所述图像中属于一类车道线的像素的概率值。所述目标车道线组可以包括至少一类车道线,所述停止线组可以包括至少一类停止线,所述目标引导线组包括至少一类引导线。在一些实施例中,所述目标车道线组可以包括所述图像中包含的至少一类车道线。例如,所述目标车道线组可以包括车辆行驶方向的道路上和反方向行驶的道路上的所有车道线。在一些实施例中,所述目标车道线组可以包括所述图像中分布在车辆位置两侧的两类车道线或四类车道线。例如,所述目标车道线组可以包括车辆所在车道的两条车道线。在一些实施例中,所述引导线组可以包括所述图像中分布在车辆两侧的两类引导线以及位于两类引导线之间的至少一类引导线。例如,所述引导线组可以包括如图1c所示的引导线E1、E2和E3。
[0202] 在一些实施例中,所述目标道路线的信息可以包括至少一类道路线的拟合方程的表示信息。所述拟合方程的表示信息可以反映所述车辆客户端140所在的车辆与所述目标道路线(例如,车道线、停止线、引导线等)在真实世界的位置信息。所述位置信息可以包括车辆与车道线之间的距离、车辆是否偏离车道线、车辆是否处于引导线内、车辆是否偏移引导线、车辆与引导线之间的距离、车辆是否超过停止线、车辆与停止线之间的距离等。
[0203] 驾驶控制装置930,用于至少基于目标道路线的信息生成交通工具的控制指令和/或提示信息。
[0204] 在一些实施例中,目标道路线的信息可以反映交通工具与各类车道线之间的相对位置。驾驶控制装置930可以基于交通工具的行驶参数以及与各类车道线之间的相对位置,预测所述交通工具在行驶过程中是否会偏离其行驶的车道,进一步生成用于控制交通工具的控制指令和/或提示信息。该控制指令和/或提示信息可以包括是否减速、停止、继续行驶、转向等控制指令和/或提示信息。
[0205] 图10是根据本申请的一些实施例所示的一种道路线检测装置1000的示例性模块图。该道路线检测装置1000包括:
[0206] 图像获取模块1010,用于获取成像模组所捕获的包含道路路面的图像。
[0207] 道路线预测模块1020,用于分别预测所述图像包括的多个像素中单个像素属于预定道路线类别的概率,得到道路线预测概率图。
[0208] 在一些实施例中,预测多个像素中单个像素属于预定道路线类别的概率,可以将图像获取模块1010获取的道路路面图像作为输入,输入到神经网络模型中,预测概率图为神经网络模型的输出。在一些实施例中,该道路线预测模块1020可以包括一个神经网络单元。
[0209] 道路线确定模块1030,用于基于所述道路线预测概率图确定目标道路线的信息。
[0210] 在一些实施例中,所述目标道路线的信息可以包括目标车道线组的信息、目标停止线组的信息、目标引导线组的信息或其任意组合。
[0211] 神经网络训练模块1040,用于基于包括有道路线标签信息的训练图像集训练待训练的神经网络。
[0212] 在一些实施例中,该神经网络训练模块1040以多张训练用图像以及该多张训练用图像对应的灰度图作为待训练的神经网络模型的输入,并以相应的灰度图作为监督信息调节待训练的神经网络单元的中间网络层单元的网络参数,完成对神经网络的训练。
[0213] 在一些实施例中,所述训练用图像可以是成像模组获取的不同路面状况的原始图像。所述训练用图像还可以是成像模组获取的实时路面的视频中的一帧图像。在一些实施例中,所述灰度图可以是所述神经网络模型在进行训练时所使用的参考标准标签。
[0214] 图11是根据本申请的一些实施例所示的一种神经网络单元1100的示例性模块图。该神经网络单元1100包括:
[0215] 输入层单元1110,用于输入图像获取模块1010获取的道路路面的图像。中间网络层单元1120,用于分别预测道路路面图像中包括的多个像素中单个像素属于预定道路线类别的概率。输出层单元1130,用于输出道路线预测概率图。
[0216] 在一些实施例中,将道路路面图像输入到神经网络模型中,神经网络模型的输出是多个像素中单个像素属于预定道路线类别的概率。在一些实施例中,所述概率可以以概率图、表格、数字、表达式等方式中的一种或任意组合表示。例如,概率可以表示为0到1之间的数字,其中0表述不属于该类别道路线,1表述确定100%属于该类别道路线。
[0217] 图12是根据本申请的一些实施例所示的一种道路线确定模块1030的示例性模块图。该道路线确定模块1030包括:
[0218] 像素点确定单元1210,用于确定道路线预测概率图包含的像素的值大于或等于设定阈值的多个像素。
[0219] 在一些实施例中,可以比较概率图中各个像素的像素值与设定阈值的大小,从概率图中包含的所有像素中筛选出概率值大于或等于设定阈值的多个像素。在一些实施例中,所述设定阈值可以是预先存储在交通系统100中的,和/或可以根据应用场景的变化而变化。例如,设定阈值可以是人工设置的,也可以是交通系统100通过机器学习自动设置的。在一些实施例中,所述像素的值可以代表像素属于预定道路线类别的概率。
[0220] 位置信息获取单元1220,用于获取确定的多个像素的位置信息。
[0221] 在一些实施例中,所述位置信息可以包括所述像素点在图像中的像素坐标信息和/或所述像素点所对应的物体在真实世界的道路平面世界坐标信息。所述位置信息可用于确定所述像素在图像中的位置和/或所述对应的物体在真实世界中的真实位置。
[0222] 参数信息确定单元1230,用于基于确定的多个像素的位置信息确定至少一类道路线对应的拟合方程模型的参数信息。
[0223] 在一些实施例中,可以将所述多个像素点的位置信息(例如,道路平面世界坐标信息和/或图像像素平面坐标信息)进行拟合,确定所述至少一类道路线对应的拟合方程。示例性的拟合方法可以包括最小二乘法、随机样本一致性(Random Sample Consensus,简写为RANSAC)拟合法、拉格朗日插值法、牛顿插值法、牛顿迭代法、区间二分法、弦截法、雅克比迭代法和牛顿科特斯数值积分法等或任意组合。
[0224] 所述至少一类道路线可以包括车道线、停止线、引导线等或任意组合。所述方程的类型可以包括一次方程、二次方程、三次方程、指数方程、对数方程、幂方程、参数方程等或任意组合。在一些实施例中,可以基于不同应用场景确定所述方程的类型。例如,当所述道路线为停止线时,可以基于所述多个像素点的道路平面世界坐标,确定所述停止线的方程类型为一次方程。
[0225] 图13是根据本申请的一些实施例所示的一种驾驶控制系统930的示例性模块图。该驾驶控制系统930包括:
[0226] 道路线检测模块1310,用于检测获取的道路路面图像中的目标道路线信息。
[0227] 在一些实施例中,目标道路线的信息包括目标车道线组的信息、目标引导线组的信息、目标停车线组的信息等。道路线检测模块1310还可以基于目标道路线的信息,确定交通工具与目标道路线之间的相对位置信息,进而预测交通工具在行驶过程中是否偏离行驶的目标车道线、是否偏离目标引导线、是否遇到目标停车线等。
[0228] 驾驶控制模块1320,用于至少基于所述目标道路线的信息生成用于控制交通工具的控制指令和/或提示信息。
[0229] 在一些实施例中,驾驶控制模块1320可以基于交通工具与目标道路线之间的相对位置信息,生成用于控制交通工具的控制指令和/或提示信息。例如,基于所述相对位置信息和所述交通工具的行驶参数,预测所述交通工具在行驶过程中是否会偏离其行驶的目标车道,生成用于目标车道保持的控制指令和/或提示信息。又例如,目标停止线的信息表示存在有停止线,确定所述交通工具与所述停止线的相对距离,根据所述相对距离生成减速或停止控制指令和/或提示信息。再例如,基于所述目标引导线组的信息和所述交通工具的行驶参数,生成用于转向和/或减速的控制指令和/或提示信息。
[0230] 图14是根据本申请的一些实施例所示的一种驾驶控制模块1400的示例性模块图。该驾驶控制模块1400包括:
[0231] 相对位置确定单元1410,用于基于目标车道线组的信息确定交通工具与其行驶的车道之间的相对位置信息。
[0232] 在一些实施例中,所述目标车道线组的信息可以反映所述交通工具与其行驶的车道之间的相对位置信息,例如,所述交通工具与所述各类车道之间的距离、所述交通工具是否偏离所述车道等。在一些实施例中,可以基于所述车道所在的车道线对应的拟合方程,确定所述交通工具与其行驶的车道之间的相对位置信息。
[0233] 行驶轨迹预测单元1420,用于基于相对位置信息和交通工具的行驶参数,预测交通工具在行驶过程中是否会偏离其行驶的目标车道。
[0234] 在一些实施例中,所述行驶参数可以包括速度、行驶方向、加速度、转向度、油门开度等或其任意组合。在一些实施例中,可以通过获取当前时刻所述交通工具与目标车道线之间的所述相对位置信息和所述交通工具的行驶参数,预测所述交通工具的行驶轨迹。例如,可以获取所述交通工具的当前速度与转向度,以及所述交通工具距离所述目标车道线的距离,预测所述交通工具的行驶轨迹(例如,所述交通工具将一直处于车道线内行驶或所述交通工具将与2秒内偏离车道线)。在一些实施例中,还可以通过获取当前时刻所述交通工具与目标停止线之间的所述相对位置信息和所述交通工具的行驶参数(例如,速度和加速度),判定所述交通工具到达目标停止线的时间(例如,所述交通工具若以当前速度行驶将于5秒内到达目标停止线)。在一些实施例中,还可以通过获取当前时刻所述交通工具与目标引导线之间的所述相对位置信息和所述交通工具的行驶参数(例如,转向角和速度),预测所述交通工具的行驶轨迹(例如,所述交通工具以当前转向角和当前速度可顺利完成转弯)。
[0235] 第一生成单元1430,用于根据预测结果生成用于目标车道保持的控制指令和/或提示信息。
[0236] 在一些实施例中,根据预测结果存在车道线,及交通工具与其行驶的车道之间的相对位置信息,生成行驶轨迹的控制指令和/或提示信息。
[0237] 相对距离确定单元1440,用于响应于目标停止线的信息表示存在有停止线,确定交通工具与停止线的相对距离。
[0238] 在一些实施例中,可以根据交通工具的行驶参数及停止线的位置,确定交通工具与停车线在某一时刻的相对距离。
[0239] 第二生成单元1450,用于根据相对距离生成减速或停止控制指令和/或提示信息。
[0240] 在一些实施例中,根据交通工具与停止线之间的距离以及交通工具目前的行驶参数(例如,速度、位置等),可以确定交通工具需要减速的时刻以及减速的参数(例如,速度的大小、减速的时间、刹车的力度等),进而生成减速或停止控制指令和/或提示信息。
[0241] 第三生成单元1460,用于基于目标引导线组的信息和交通工具的行驶参数,生成用于转向和/或减速的控制指令和/或提示信息。
[0242] 在一些实施例中,预测结果表明存在目标引导线,根据目标引导线组的位置信息以及交通工具的行驶参数(例如,速度、位置等),确定交通工具转向和/或减速的信息(例如,何时转弯、转弯半径、转弯速度、何时减速、减速的大小等),进而生成转向和/或减速的控制指令和/或提示信息。
[0243] 在一些实施例中,本申请中的道路检测方法和/或驾驶控制方法可以是多个计算机指令,存储在一种电子设备的存储器中,并由该电子设备中的处理器执行。在一些实施例中,本申请中的道路检测方法和/或驾驶控制方法可以是一种或多种计算机程序,存储在计算机刻度存储介质中,被计算机的处理器执行。
[0244] 上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本申请的限定。虽然此处并没有明确说明,本领域技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
[0245] 同时,本申请使用了特定词语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
[0246] 此外,本领域技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本申请的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
[0247] 计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等等、或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质、或任何上述介质的组合。
[0248] 本申请各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
[0249] 此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
[0250] 同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或多个实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本申请对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈