枝叶检测训练系统和方法与流程

文档序号:15743929发布日期:2018-10-23 22:45阅读:239来源:国知局

本公开涉及训练和测试枝叶检测系统(例如车辆使用的枝叶检测系统)的系统以及方法。



背景技术:

机动车辆和其他车辆为商业、政府和私人实体提供了运输的重要部分。目前正在开发和部署自主车辆和驾驶辅助系统,以提供安全功能、减少所需的用户输入量甚至完全消除用户的参与。例如,一些驾驶辅助系统(例如碰撞避免系统)可以在人类驾驶时监视车辆的驾驶、位置和速度以及其他对象。当系统检测到即将发生撞击或碰撞时,碰撞避免系统可以介入并实施制动、转向车辆或执行其他避免或安全操纵。作为另一个示例,自主车辆可以在较少或没有用户输入的情况下驾驶、导航和/或停放车辆。由于障碍避免是自动驾驶或辅助驾驶的关键部分,因此正确检测和分类检测到的对象或表面是非常重要的。在某些情况下,如果检测到的障碍物是枝叶,则确定枝叶类型并预测由特定枝叶呈现给车辆的危险是很重要的。例如,大型树干比小型植物或灌木对车辆更危险。



技术实现要素:

根据本发明,提供一种方法,该方法包含:

接收与多个车载传感器相关联的数据;

通过枝叶检测训练系统基于接收到的数据来定义多个感兴趣区域(Regions of Interest,ROI);

对每个ROI实施标记,其中标记对与ROI相关联的枝叶类型进行分类;以及

通过枝叶检测训练系统基于ROI和相关的标记来训练机器学习算法。

根据本发明的一个实施例,其中多个车载传感器包括激光雷达传感器、雷达传感器、超声波传感器和摄像机中的至少一个。

根据本发明的一个实施例,该方法还包含预处理接收到的数据,其中接收到的数据的预处理包括以下中的至少一个:消除来自数据的噪声、执行数据的登记、地理参考数据以及消除异常值。

根据本发明的一个实施例,该方法还包含使用从安装到车辆的至少一个传感器接收到的实际数据在车辆中测试机器学习算法。

根据本发明的一个实施例,该方法还包含通过自动驾驶系统在车辆中实施机器学习算法,其中机器学习算法基于从安装到车辆的至少一个传感器接收到的数据对车辆附近的枝叶进行分类。

根据本发明的一个实施例,其中机器学习算法是深度神经网络。

根据本发明的一个实施例,其中实施于每个ROI的标记包括非植被、危险植被、非危险植被和未知植被中的一种。

根据本发明的一个实施例,其中与多个车载传感器相关联的接收到的数据包括计算机生成的图像数据、计算机生成的雷达数据、计算机生成的激光雷达数据以及计算机生成的超声数据中的至少一个。

根据本发明的一个实施例,其中与多个车载传感器相关联的接收到的数据包括在邻近车辆的不同位置处的不同类型的枝叶的随机生成。

根据本发明的一个实施例,其中与多个车载传感器相关联的接收到的数据包括虚拟数据。

根据本发明的一个实施例,该方法还包含将机器学习算法结合到车辆中的枝叶检测系统中。

根据本发明,提供一种方法,该方法包含:

接收与多个车载传感器相关联的数据;

预处理接收到的数据,其中接收到的数据的预处理包括以下中的至少一个:消除来自数据的噪声、执行数据的登记、地理参考数据以及消除异常值;

通过枝叶检测训练系统基于预处理的数据定义多个感兴趣区域(ROI);

对每个ROI实施标记,其中标记对与ROI相关联的枝叶类型进行分类;以及

通过枝叶检测训练系统基于ROI和相关的标记来训练机器学习算法。

根据本发明的一个实施例,其中多个车载传感器包括激光雷达传感器、雷达传感器、超声波传感器和摄像机中的至少一个。

根据本发明的一个实施例,该方法还包含使用从安装到车辆的至少一个传感器接收到的实际数据在车辆中测试机器学习算法。

根据本发明的一个实施例,其中实施于每个ROI的标记包括非植被、危险植被、非危险植被和未知植被中的一种。

根据本发明的一个实施例,其中机器学习算法是深度神经网络。

根据本发明,提供一种装置,该装置包含:

通信管理器,该通信管理器被配置为接收与多个车载传感器相关联的数据;

感兴趣区域模块,该感兴趣区域模块被配置为基于接收到的数据定义多个感兴趣区域(ROI);

数据标记模块,该数据标记模块被配置为对每个ROI进行标记,其中标记对与ROI相关联的枝叶类型进行分类;以及

训练管理器,该训练管理器被配置为基于ROI和相关的标记来训练机器学习算法。

根据本发明的一个实施例,该装置还包含测试模块,测试模块被配置为使用从安装到车辆的至少一个传感器接收到的实际数据在车辆中测试机器学习算法。

根据本发明的一个实施例,其中机器学习算法是深度神经网络。

根据本发明的一个实施例,其中实施于每个ROI的标记包括非植被、危险植被、非危险植被和未知植被中的一种。

附图说明

参考以下附图来描述本公开的非限制性和非穷举性实施例,其中除非另有说明,否则贯穿各附图的相同的附图标记指代相同的部分。

图1是示出车辆控制系统的实施例的框图;

图2是示出了枝叶检测训练系统的实施例的框图;

图3示出了具有安装到车辆的多个传感器的车辆的实施例;

图4示出了车辆附近的枝叶的示例视图;

图5示出了用于训练和测试枝叶检测系统的方法的实施例。

具体实施方式

在下面的公开中,参考形成其一部分的附图,并且其中通过图示的方式示出了其中可以实施本公开的具体实施方式。应该理解的是可以利用其他实施方式并且可以进行结构改变而不偏离本公开的范围。说明书中对“一个实施例”,“实施例”,“示例实施例”等的引用指示所描述的实施例可以包括特定特征、结构或特点,但是每个实施例可能不一定包括特定特征、结构或特点。而且,这样的短语不一定是指相同的实施例。此外,当结合实施例描述特定特征、结构或特点时,认为结合其它实施例影响这种特征、结构或特点是在本领域技术人员的知识范围内,无论是有没有明确描述。

本文公开的系统、设备和方法的实现可以包含或利用包括计算机硬件(诸如例如如本文所讨论的一个或多个处理器和系统存储器)的专用或通用计算机。在本公开的范围内的实施方式还可以包括用于携带或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可以被通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是计算机存储介质(设备)。携带计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,本公开的实现可以包含至少两种截然不同的计算机可读介质:计算机存储介质(设备)和传输介质。

计算机存储介质(设备)包括随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、只读光盘驱动器(CD-ROM)、例如基于RAM的固态驱动器(solid state drives,“SSDs”)、闪存、相变存储器(phase-change memory,“PCM”)、其他存储器类型、其他光盘存储器、磁盘存储器或其他磁性存储设备或可用于以计算机可执行指令或数据结构的形式存储期望的程序代码方法的任何其他介质,并且该任何其他介质可以通过通用或专用计算机访问。

这里公开的设备、系统和方法的实施可以通过计算机网络进行通信。“网络”被定义为能够在计算机系统和/或模块和/或其他电子设备之间传输电子数据的一个或多个数据链路。当信息通过网络或其他通信连接(硬连线、无线连接或者硬连线或无线连接的结合)传输或提供给计算机时,计算机将连接正确地视为传输媒介。传输介质可以包括网络和/或数据链路,网络和/或数据链路可以用于以计算机可执行指令或数据结构的形式携带期望的程序代码方法并且网络和/或数据链路可以由通用或专用计算机访问。上述的组合也应该包括在计算机可读介质的范围内。

计算机可执行指令包含例如当在处理器处执行时使通用计算机、专用计算机或专用处理设备执行特定功能或功能组的指令和数据。计算机可执行指令可以是例如二进制文件、诸如汇编语言的中间格式指令或者甚至是源代码。尽管以结构特征和/或方法动作专用的语言来描述主题,但应理解的是,所附权利要求中限定的主题不一定限于在此描述的所描述的特征或动作。相反,所描述的特征和行为被公开为实施权利要求的示例形式。

本领域技术人员将认识到的是本公开可以在具有许多类型的计算机系统配置的网络计算环境中实践,包括车内计算机、个人计算机、台式计算机、便携式计算机、消息处理器、手持设备、多处理器系统、基于微处理器或可编程消费性电子产品、网络PC(personal computer)、小型计算机、大型计算机、移动电话,PDA(personal digital assistant,掌上电脑)、平板电脑、寻呼机、路由器、交换机、各种存储设备等。本发明还可以在分布式系统环境中实施,其中本地和远程计算机系统都通过网络连接(通过硬连线数据链路、无线数据链路或通过硬连线和无线数据链路的组合)执行任务。在分布式系统环境中,程序模块可以位于本地和远程内存存储设备中。

此外,在适当的情况下,本文描述的功能可以在以下中的一个或多个中执行:硬件、软件、固件、数字部件或模拟部件。例如,一个或多个专用集成电路(Application Specific Integrated Circuit,ASIC)可以被编程以执行这里描述的一个或多个系统和过程。整个说明书和权利要求中使用了某些术语来指代特定的系统部件。如本领域技术人员将认识到的,部件可以用不同的名称来引用。本文不打算区分名称不同但功能相同的部件。

应该注意的是这里讨论的传感器实施例可以包含计算机硬件、软件、固件或其任何组合以执行其功能的至少一部分。例如,传感器可以包括被配置为在一个或多个处理器中执行的计算机代码,并且可以包括由计算机代码控制的硬件逻辑/电路。这些示例设备在本文中被提供用于说明的目的,而不旨在限制。如相关领域的技术人员所知,本公开的实施例可以在其他类型的设备中实现。

本公开的至少一些实施例针对包含存储在任何计算机可用介质上的这种逻辑(例如,以软件的形式)的计算机程序产品。这种软件当在一个或多个数据处理设备中执行时使设备如本文所述进行操作。

图1是示出包括障碍物检测系统104的车辆内的车辆控制系统100的实施例的框图。自动驾驶/辅助系统102可以用于自动化或控制车辆的操作或向人类驾驶员提供帮助。例如,自动驾驶/辅助系统102可以控制车辆的制动、转向、安全带张力、加速度、灯光、警报、驾驶员通知、无线电、车辆锁或任何其他辅助系统中的一个或多个。在另一个示例中,自动驾驶/辅助系统102可能不能够提供驾驶的任何控制(例如,转向、加速或制动),但可以提供帮助人类驾驶员安全驾驶的通知和警报。

车辆控制系统100包括障碍物检测系统104,障碍物检测系统104与车辆控制系统中的各种部件相互作用以检测和响应位于车辆附近(例如,在车辆的路径中)的潜在(或可能)障碍物。在一个实施例中,障碍物检测系统104检测车辆附近(例如车辆前方或车辆后方)的枝叶。如本文所用,“枝叶”是指叶子、草、植物、花、矮树丛、灌木、树枝等。尽管障碍物检测系统104在图1中被示为单独的部件,但在替代实施例中,障碍物检测系统104可以结合到自动驾驶/辅助系统102或任何其他车辆部件中。

车辆控制系统100还包括用于检测附近对象(或障碍物)的存在或确定母车辆(例如,包括车辆控制系统100的车辆)的位置的一个或多个传感器系统/设备。例如,车辆控制系统100可以包括一个或多个雷达系统106、一个或多个激光雷达(LIDAR)系统108、一个或多个摄像机系统110、全球定位系统(Global Positioning System,GPS)112和/或超声系统114。一个或多个摄像机系统110可以包括安装到车辆(例如,车辆的后部)的后向摄像机、前向摄像机和侧向摄像机。摄像机系统110还可以包括捕捉车辆内乘客和其他对象的图像的一个或多个内部摄像机。车辆控制系统100可以包括用于存储用于导航和安全的相关或有用数据(例如地图数据、驾驶历史或其他数据)的数据存储器116。车辆控制系统100还可以包括用于与移动或无线网络、其他车辆、基础设施或任何其他通信系统进行无线通信的收发器118。

车辆控制系统100可以包括车辆控制致动器120,车辆控制致动器120控制车辆驾驶的各个方面(诸如电动马达、开关或其它致动器)以控制制动、加速、转向、安全带张紧、门锁等。车辆控制系统100还可以包括一个或多个显示器122、扬声器124或其他设备,以便可以给人类驾驶员或乘客提供通知。显示器122可以包括可以由车辆的驾驶员或乘客看到的抬头显示器、仪表板显示器或指示器、显示屏或任何其他视觉指示器。扬声器124可以包括车辆的音响系统的一个或多个扬声器,或者可以包括专用于驾驶员或乘客通知的扬声器。

应该理解的是图1的实施例仅作为示例给出。在不脱离本公开的范围的情况下,其它实施例可以包括更少或附加的部件。另外,所示部件可以被组合或被包括在其他部件中而没有限制。

在一个实施例中,自动驾驶/辅助系统102被配置为控制母车辆的驾驶或导航。例如,自动驾驶/辅助系统102可以控制车辆控制致动器120以在道路的路径上、停车场、车道或其他位置行驶。例如,自动驾驶/辅助系统102可以基于由部件106-118中的任何部件提供的信息或感知数据来确定路径。路径也可以基于操纵车辆的路线来确定,以避免或减轻与另一车辆或对象的潜在碰撞。传感器系统/设备106-110和114可以用于获得实时传感器数据,使得自动驾驶/辅助系统102可以实时帮助驾驶员或驾驶车辆。

图2是示出枝叶检测训练系统200的实施例的框图。如图2所示,枝叶检测训练系统200包括通信管理器202、处理器204和存储器206。通信管理器202允许枝叶检测训练系统200与其他系统(诸如自动驾驶/辅助系统102)和提供虚拟训练数据的数据源通信。如本文所讨论的,处理器204执行实施由枝叶检测训练系统200提供的功能的各种指令。存储器206存储这些指令以及由处理器204和包含在枝叶检测训练系统200中的其他模块和部件使用的其他数据。

另外,枝叶检测训练系统200包括接收和管理与多个车辆传感器相关联的数据的车辆传感器数据管理器208。如本文所讨论的,接收到的数据可以包括来自一个或多个实际车辆的实际传感器数据。另外,接收到的数据可以包括为了训练和测试枝叶检测系统的目的而创建的虚拟数据。在一些实施例中,虚拟数据包括计算机生成的图像数据、计算机生成的雷达数据、计算机生成的激光雷达数据或计算机生成的超声数据。车辆传感器数据管理器208还可以识别和管理接收到的数据内的对象级别数据或原始级别数据。感兴趣区域模块210从接收到的数据中识别一个或多个感兴趣区域(ROI)。数据标记模块212帮助标记每个ROI并存储与每个ROI相关联的标记有关的数据。如本文所讨论的,可以标记每个ROI以对存在于ROI中的枝叶的类型(如果有的话)分类。例如,数据可以被归类为非植被、危险植被、非危险植被或未知植被。

枝叶检测训练系统200还包括允许一个或多个用户与枝叶检测训练系统200交互的用户界面模块214。例如,一个或多个用户可以辅助标记每个ROI。训练管理器216辅助机器学习算法218(例如深度神经网络、卷积神经网络、深度置信网络、循环网络等)的训练。测试模块220对机器学习算法218执行各种测试以确定机器学习算法218在车辆传感器数据中检测枝叶的准确性和一致性。

图3示出了具有安装到车辆的多个传感器的车辆302的实施例。车辆302包括任何数量的传感器,诸如本文讨论的各种类型的传感器。在图3的具体示例中,车辆302包括激光雷达传感器304和310、前向摄像头306、后向摄像头312以及雷达传感器308和314。车辆302可以具有安装在多个车辆位置中的任何数量的附加传感器(未示出)。例如,车辆302的特定实施例还可以包括其他类型的传感器,例如超声波传感器。在图3的示例中,传感器304-314安装在车辆302的前部和后部附近。在替代实施例中,可以将任何数量的传感器安装在车辆的不同位置,例如在车辆的侧面、车辆的车顶或任何其他安装位置。

图4示出了车辆附近的区域400的示例视图,该区域400包含可使用本文所述类型的一个或多个车载传感器来检测的枝叶。区域400包括可由车辆的传感器检测的固体对象和枝叶。具体而言,枝叶包括矮树丛402,草404和其他灌木406。在一些情况下,车辆接触或碾过枝叶是可接受的,因为对车辆或人员的损害可能较少。区域400中示出的固体对象包括路缘408和杆410,路缘408和杆410可以导致对车辆、乘客或对象本身的损害或伤害。如本文所讨论的,可以捕获或生成传感器数据(例如,虚拟数据),该数据模拟区域400中示出的固体对象和/或枝叶的至少一部分。该捕获或生成的传感器数据如下面更详细讨论的用于训练和测试枝叶检测系统。在一些实施例中,所生成的传感器数据包括在车辆附近的随机位置中的枝叶物品的随机类型。

图5示出了用于训练和测试枝叶检测系统的方法500的实施例。最初,枝叶检测训练系统(例如,枝叶检测训练系统200)接收502与多个车辆传感器(例如激光雷达(LIDAR)传感器、雷达传感器、超声波传感器或摄像机)相关联的数据。接收到的数据可以是安装在实际车辆上的由传感器捕获的实际数据。或者,接收到的数据可以是已经产生的用于模拟传感器输出数据来用于训练和测试枝叶检测系统的虚拟数据。接收到的数据可以被称为“训练数据”,例如用于训练和测试枝叶检测系统。在一些实施例中,方法500预处理接收到的数据以消除噪声、记录来自不同传感器的数据、执行地理参考等。

枝叶检测训练系统定义504预处理的数据,诸如已经去噪、地理参考并且没有异常值的数据。在一些实施例中,数据的预处理包括以下中的一个或多个:从每个感测模态(例如,每个实际或模拟车辆传感器)接收数据、分析数据以消除(或减少)噪声、对数据执行记录、地理参考数据、消除异常值等。这个数据表示例如图4所示的示例视图的至少一部分。随着枝叶检测训练系统从预处理数据中识别506一个或多个感兴趣区域(ROI),方法500继续。ROI可以包括一个或多个枝叶物品或代表车辆潜在障碍物的其他对象。在一些实施例中,使用已知的聚类和/或数据分段技术来识别对象和相关的ROI。在一些实施例中,可以使用诸如分层、基于密度、子空间等的聚类方法来获得ROI。另外,可以使用诸如基于直方图、区域生长、马尔可夫随机场(Markov Random field)等的方法的分割方法来获得ROI。ROI的使用有助于降低分析数据的计算成本,因为计算仅限于可能包含枝叶物品或其他对象的特定ROI。

枝叶检测训练系统然后标记508每个ROI。标记每个ROI包括将每个枝叶对象分类为:危险植被、非危险植被、未知植被或非植被。危险植被分类器对应于如果发生碰撞时枝叶(或植被)可能对车辆造成即时伤害的情况。危险植被的一个示例是大树干。非危险植被分类器对应于即使车辆与植被碰撞植被也不太可能对车辆的完整性造成任何伤害的情况。非危险植被的示例包括草和小矮树丛。未知植被分类器对应于难以评估对车辆伤害程度的情况。未知植被的示例包括茂密的树枝或高大且茂密的矮树丛。非植被分类器对应于不是植被或枝叶的所有物品或对象,例如行人、杆、墙壁、路缘等。在一些实施例中,标记每个ROI由人类用户执行。在其他实施例中,标记每个ROI由计算系统自动执行或由具有人类用户验证的计算系统执行。

随着枝叶检测训练系统使用来自每个ROI和对应标记的数据训练510机器学习算法,方法500继续。在一些实施例中,机器学习算法是深度神经网络、卷积神经网络、深度置信网络、递归网络、自动编码器或任何其他机器学习算法。如上所述,所得到的机器学习算法在分类枝叶物品中是有用的。

机器学习算法在实际车辆中被测试512以基于从一个或多个车辆传感器接收到的数据来识别和分类枝叶。在一些实施例中,机器学习算法的测试包括确认机器学习算法是否准确识别所有枝叶物品并且准确地分类枝叶物品的用户输入。

如果测试不成功514,则该方法返回到502并且继续接收用于进一步训练机器学习算法的附加数据。如果测试成功514,则在一个或多个生产车辆中实施516机器学习算法。例如,机器学习算法可以被结合到车辆中的枝叶检测系统或障碍物检测系统中。基于所识别的枝叶物品及其相关分类,自动驾驶/辅助系统可以确定在车辆运行期间遇到(或碾过)枝叶物品的潜在危险。

尽管在此描述了本公开的各种实施例,但应该理解的是它们仅作为示例呈现,而不是限制。对于相关领域的技术人员来说显而易见的是,在不脱离本公开的精神和范围的情况下,可以在其中进行形式和细节上的各种改变。因此,本公开的广度和范围不应被任何所描述的示例性实施例限制,而应仅根据下面的权利要求及其等同物来限定。这里的描述是为了说明和描述的目的而呈现的。这并不是穷尽性的或将本公开限制为所公开的确切形式。鉴于所公开的教导,许多修改和变化是可能的。此外,应该注意的是,可以以期望的任何组合来使用这里讨论的任何或全部替代实施方式,以形成本公开的另外的混合实现。

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