CN116450207A - 自动驾驶感知处理方法、装置、电子设备及存储介质 - Google Patents
自动驾驶感知处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116450207A CN116450207A CN202310704496.XA CN202310704496A CN116450207A CN 116450207 A CN116450207 A CN 116450207A CN 202310704496 A CN202310704496 A CN 202310704496A CN 116450207 A CN116450207 A CN 116450207A
- Authority
- CN
- China
- Prior art keywords
- processing
- perception
- image
- execution
- module
- 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.)
- Pending
Links
- 230000008447 perception Effects 0.000 title claims abstract description 147
- 238000003672 processing method Methods 0.000 title claims abstract description 24
- 238000012545 processing Methods 0.000 claims abstract description 207
- 230000006870 function Effects 0.000 claims abstract description 124
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000011156 evaluation Methods 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 9
- 238000004458 analytical method Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 description 15
- 238000001514 detection method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D21/00—Measuring or testing not otherwise provided for
- G01D21/02—Measuring two or more variables by means not covered by a single other subclass
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0043—Signal treatments, identification of variables or parameters, parameter estimation or state estimation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Image Processing (AREA)
Abstract
本申请实施例公开了一种自动驾驶感知处理方法、装置、电子设备及存储介质,该方法包括:获取感知处理的配置文件;解析所述配置文件,获得待执行感知处理的多个功能模块、每个所述功能模块对应的执行线程标识以及所述多个功能模块的执行顺序,所述功能模块由经过编译的程序段实现;根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果。本申请实施例通过配置文件可以灵活的进行不同感知模式的切换,不需要投入额外的人力支持,提高了感知处理的灵活性。
Description
技术领域
本申请实施例涉及自动驾驶技术领域,特别是涉及一种自动驾驶感知处理方法、装置、电子设备及存储介质。
背景技术
在自动驾驶技术中,需要对周围环境进行大量的感知处理,感知的对象包括但不限于:行驶车辆、路面车道线、红绿灯、交通标志、行人等等。各种不同的感知对象往往需要不同的模型来完成处理以期获得更高的精度,当感知的对象增加时,需要运行的模型数量也会相应增加。
模型的工程化集成多个模型后,很难整体上进行多模式切换,显得过于笨重,并且每次适配相应技术方案时,都需要重新进行工程化集成,需要投入额外的人力支持,感知处理的灵活性较差。
发明内容
本申请实施例提供一种自动驾驶感知处理方法、装置、电子设备及存储介质,有助于提高感知处理的灵活性。
为了解决上述问题,第一方面,本申请实施例提供了一种自动驾驶感知处理方法,包括:
获取感知处理的配置文件;
解析所述配置文件,获得待执行感知处理的多个功能模块、每个所述功能模块对应的执行线程标识以及所述多个功能模块的执行顺序,所述功能模块由经过编译的程序段实现;
根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果。
第二方面,本申请实施例提供了一种自动驾驶感知处理装置,包括:
配置文件获取模块,用于获取感知处理的配置文件;
配置文件解析模块,用于解析所述配置文件,获得待执行感知处理的多个功能模块、每个所述功能模块对应的执行线程标识以及所述多个功能模块的执行顺序,所述功能模块由经过编译的程序段实现;
感知处理模块,用于根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果。
第三方面,本申请实施例还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请实施例所述的自动驾驶感知处理方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时本申请实施例公开的自动驾驶感知处理方法。
本申请实施例提供的自动驾驶感知处理方法、装置、电子设备及存储介质,通过获取感知处理的配置文件,解析配置文件,获得待执行感知处理的多个功能模块、每个功能模块对应的执行线程标识以及多个功能模块的执行顺序,根据执行顺序,通过执行线程标识对应的执行线程调用多个功能模块对待处理图像进行处理,获得处理结果,由于可以通过功能模块来实现不同的功能,并进行了编译,在不同的感知处理场景中,只需要通过配置文件来配置所需使用的功能模块以及功能模块的执行顺序、执行线程标识,就可以基于配置文件实现特定感知处理场景的感知处理,通过配置文件可以灵活的进行不同感知模式的切换,而不需要投入额外的人力支持,提高了感知处理的灵活性。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种自动驾驶感知处理方法的流程图;
图2是本申请实施例提供的另一种自动驾驶感知处理方法的流程图;
图3是本申请实施例提供的另一种自动驾驶感知处理方法的流程图;
图4是本申请实施例中自动驾驶感知处理方法的系统框架图;
图5是本申请实施例提供的一种自动驾驶感知处理装置的结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本申请实施例提供的一种自动驾驶感知处理方法的流程图,该自动驾驶感知处理方法可以应用于车辆、计算机等电子设备中,如图1所示,该方法包括如下步骤:
步骤110,获取感知处理的配置文件。
其中,配置文件中包括感知处理的多个功能模块(Forward)、每个功能模块对应的执行线程标识以及多个功能模块的执行顺序。不同的功能模块可以串联或并联来实现具体的功能。
可以将实现具体功能的程序段经过编译后封装为功能模块,每个功能 模块可以实现一个具体的功能,例如,一个功能模块实现的具体功能可以是图像格式转换、图像尺寸处理或感知网络等。针对特定场景的感知处理,可以预先在配置文件中来配置需要用到的功能模块以及各功能模块的执行顺序,还可以配置各功能模块的执行线程标识,以通过具体的执行线程来执行对应的功能模块,也就是通过配置文件来组织各功能模块的计算流程。各功能模块的执行顺序包括各功能模块的连接关系(串联或并联)。
配置文件可以是YAML文件。YAML 是一种可读性非常高,与程序语言数据结构非常接近,具备丰富的表达能力和可扩展性,并且易于使用的数据标记语言。YAML是YAML Ain'ta Markup Language(YAML不是一种标记语言)的递归缩写,强调的是数据本身,而不是以标记语言为重点。
本申请实施例将传统的进行感知处理的整体代码进行了拆分,将实现某一具体功能的代码作为一个单独的模块,并对每个拆分出的模块进行单独编译,得到功能模块,当然,除了拆分的这种方式,也可以单独为具体的功能开发独立的功能模块,例如,功能模块可以是图像文件的解码功能模块、图像的格式转换功能模块、图像尺寸处理功能模块、各种感知对象的感知处理功能模块等等。通过由功能模块来实现具体的小功能,在进行具体的感知处理或者进行评测场景的评测时,可以配置对应的配置文件,在配置文件中配置进行感知处理所需要的多个功能模块、各功能模块对应的执行线程标识以及多个功能模块的执行顺序,还可以配置各功能模块执行时所需要的线程数,即一个功能模块可以对应多个执行线程标识,该功能模块由多个执行线程配合来执行。其中,图像文件的解码功能模块用于对待处理图像的图像文件进行解码,获得待处理图像;图像的格式转换功能模块用于对待处理图像进行格式转换,如将YUV格式的像素转化为BGR格式的像素;图像尺寸处理功能模块用于对待处理图像进行尺寸的缩放处理;各种感知对象的感知处理功能模块分别用于对特定的感知对象进行感知。
本申请实施例提供的自动驾驶感知处理方法的系统模块框架,将感知处理流程与具体的功能模块进行了解耦,通过配置文件来组织计算和处理流程。由于本申请实施例提供的自动驾驶感知处理方法的系统模块框架将功能实现和流程调度设计的足够解耦、足够灵活,在感知场景变化时,可以对配置文件进行更新,这样可以基于更新后的配置文件来重新组织感知处理流程,可以适应不同场景的感知处理。
步骤120,解析所述配置文件,获得待执行感知处理的多个功能模块、每个所述功能模块对应的执行线程标识以及所述多个功能模块的执行顺序,所述功能模块由经过编译的程序段实现。
解析配置文件,从配置文件中获得待执行感知处理的多个功能模块、每个功能模块对应的执行线程标识以及多个功能模块的执行顺序。在通过解析配置文件获得功能模块以及执行顺序后,可以根据执行顺序组织各功能模块,得到感知处理流程,进而进行感知处理,实现了功能模块和感知处理流程的解耦。
通过配置文件,各功能模块的程序段只需要通过一次编译,即可支持多模式切换,以适应不同的感知场景,即对应不同的感知场景,可以在对应每个感知场景的配置文件中配置所需要的多个功能模块、每个功能模块的执行线程标识以及多个功能模块的执行顺序等信息。在编译的可执行文件或库中,实际上并没有保存实际的一个感知处理流程,而是通过功能模块来封装一个个的实际功能和组织功能模块的框架调度功能。只有读取了对应场景下的配置文件后,才会根据配置文件中使用到的功能模块以及执行顺序在初始化时组织成实际运行时需要的感知处理流程。
步骤130,根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果。
按照多个功能模块的执行顺序,依次调用各个功能模块来对待处理图像进行感知处理,在执行每个功能模块时,使用与该功能模块对应的执行线程标识所对应的执行线程来进行执行,也就是,按照多个功能模块的执行顺序,在执行第一个功能模块时,使用第一个功能模块对应的执行线程标识所对应的执行线程来调用第一个功能模块对待处理图像进行处理,之后执行第二个功能模块,使用第二个功能模块对应的执行线程标识所对应的执行线程来调用第二个功能模块来对第一个功能模块处理后的待处理图像进行处理,之后执行第三个功能模块,按照同样的方式来对前一个功能模块(或者前面一定数量的功能模块)处理后的待处理图像进行处理,直至所有功能模块执行完成,获得处理结果。
本申请实施例提供的自动驾驶感知处理方法,通过获取感知处理的配置文件,解析配置文件,获得待执行感知处理的多个功能模块、每个功能模块对应的执行线程标识以及多个功能模块的执行顺序,根据执行顺序,通过执行线程标识对应的执行线程调用多个功能模块对待处理图像进行处理,获得处理结果,由于可以通过功能模块来实现不同的功能,并进行了编译,在不同的感知处理场景中,只需要通过配置文件来配置所需使用的功能模块以及功能模块的执行顺序、执行线程标识,就可以基于配置文件实现特定感知处理场景的感知处理,通过配置文件可以灵活的进行不同感知模式的切换,而不需要投入额外的人力支持,提高了感知处理的灵活性。
图2是本申请实施例提供的另一种自动驾驶感知处理方法的流程图,该自动驾驶感知处理方法可以应用于车辆、计算机等电子设备中,如图2所示,该方法包括如下步骤:
步骤210,获取感知处理的配置文件。
步骤220,解析所述配置文件,获得待执行感知处理的多个功能模块、每个所述功能模块对应的执行线程标识以及所述多个功能模块的执行顺序,所述功能模块由经过编译的程序段实现。
在基于评测场景进行评测时,可以通过改变配置文件中不同功能模块(Forward)的执行顺序、不同功能模块的执行线程(包括控制具体线程标识和线程数)、不同模型(功能模块)的执行的GPU(Graphic Processing Unit,图形处理器)、BPU(Branch ProcessingUnit,分支处理单元)或FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)等,进行实际工程环境下模型调度调整和优化。上述的修改并不需要重新编译可执行文件或库,而是通过改变配置文件,在解析配置文件时完成配置文件中功能模块的调度和分配。
步骤230,根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果。
步骤240,在调用所述功能模块对所述待处理图像进行感知处理时,获得所述功能模块的处理时耗。
每个功能模块在声明时,可以声明一系列的宏,宏可以开启统计时耗的功能,这样在调用每个功能模块对待处理图像进行感知处理时,功能模块可以自动获取到该功能模块的处理时耗。
通过在每个功能模块中声明的宏可以自动在该功能模块执行时统计该功能模块的处理时耗,无需在每个功能模块中手动编写时间统计的代码。
步骤250,根据各所述功能模块的处理时耗,确定多个所述功能模块的评测结果。
根据所需要的评测指标,来对各功能模块的处理时耗进行统计,得到进行感知处理的多个功能模块的评测结果。在进行评测时,可以获得每个功能模块的处理时耗,每个功能模块的处理时耗作为该功能模块的评测结果;还可以对该评测场景下所有功能模块的处理时耗进行统计或比较,获得整体评测场景下所有功能模块的综合评测结果。
在本申请的一个实施例中,所述根据各所述功能模块的处理时耗,确定多个所述功能模块的评测结果,包括:将各所述功能模块的处理时耗中的平均时耗、最大时耗、最小时耗、最大的预设数量的处理时耗,以及各所述功能模块的处理时耗中的至少一种确定为所述评测结果。
可以对各功能模块的处理时耗求取平均值,得到各功能模块的处理时耗的平均时耗;还可以统计各功能模块的处理时耗中最大的处理时耗,作为最大时耗;还可以统计各功能模块的处理时耗中最小的处理时耗,作为最小时耗;还可以统计各功能模块中处理时耗最大的预设数量的处理时耗,例如Top99或Top90的处理时耗。将上述各个统计结果以及各功能模块的处理时耗中的至少一种确定为感知处理的多个功能模块的评测结果。通过改变配置文件中的配置,并获取评测结果,进而通过评测结果可以选择感知处理时耗满足目标条件(在合理范围内,尽可能小)的配置进行感知处理的应用。
通过将平均时耗、最大时耗、最小时耗、最大的预设数量的处理时耗以及各功能模块的处理时耗中的至少一种确定为评测结果,可以对各功能模块以及感知处理的整体流程进行评测,获得各功能模块以及整体流程的评测结果,可以低成本的适配不同的评测场景。
本实施例提供的自动驾驶感知处理方法,通过在调用功能模块对待处理图像进行感知处理时,获得功能模块的处理时耗,根据各功能模块的处理时耗,确定多个功能模块的评测结果,通过配置文件可以灵活配置不同评测场景所需的功能模块,从而可以低成本(投入)支持不同评测场景完成流程指标评测,而且可以支持实际工程环境下调优和指标评测,解决了现有技术中针对单个感知模型的评测方式,可以灵活地对单个感知模型(包括至少一个功能模块)或者整体的感知处理流程进行评测。
图3是本申请实施例提供的另一种自动驾驶感知处理方法的流程图,该自动驾驶感知处理方法可以应用于车辆、计算机等电子设备中,如图3所示,该方法包括如下步骤:
步骤310,获取感知处理的配置文件。
步骤320,解析所述配置文件,获得待执行感知处理的多个功能模块、每个所述功能模块对应的执行线程标识以及所述多个功能模块的执行顺序,所述功能模块由经过编译的程序段实现。
步骤330,根据所述执行顺序,构建多个所述功能模块的有向图。
根据多个功能模块的执行顺序,建立功能模块之间的有向边,有向边的方向为从执行顺序中的前一个功能模块指向后一个功能模块,建立具有连接关系的各功能模块之间的有向边后,各功能模块和功能模块之间的有向边组成多个功能模块之间的有向图(Pipeline)。
其中,所述有向图可以包括图像处理子有向图和模型推理子有向图,所述有向图的方向由所述图像处理子有向图指向所述模型推理子有向图;所述图像处理子有向图包括多个所述功能模块,所述模型推理子有向图包括多个所述功能模块,在所述模型推理子有向图中,至少一个所述功能模块组成感知模型。图像处理子有向图用于对待处理图像进行处理,以便输入到模型推理子有向图中,例如,图像处理子有向图可以对待处理图像进行格式转换、图像尺寸处理等。模型推理子有向图用于对图像处理子有向图处理后的待处理图像进行感知处理,识别各个感知对象。感知对象例如可以是行驶车辆、路面车道线、红绿灯、交通标志、行人等等。
所述图像处理子有向图可以包括对摄像头实时采集的图像进行处理的第一子有向图和/或对已有的图像文件进行处理的第二子有向图。第一子有向图中可以包括图像采集功能模块、格式转换功能模块、图像尺寸处理功能模块(例如,可以通过下采样来降低图像尺寸,以适应不同感知模型的输入);第一子有向图的指向为从图像采集功能模块到格式转换功能模块,再到图像尺寸处理功能模块;处理过程为调用图像采集功能模块采集待处理图像(YUV格式),然后调用格式转换功能模块对待处理图像进行格式转换(将YUV格式转化为BGR格式),之后调用图像尺寸处理功能模块对格式转换后的待处理图像进行尺寸的缩放处理。第二子有向图中可以包括解码功能模块、格式转换功能模块、图像尺寸处理功能模块(例如,可以通过下采样来降低图像尺寸,以适应不同感知模型的输入);第二子有向图的指向为从解码功能模块到格式转换功能模块,再到图像尺寸处理功能模块;处理过程为调用解码功能模块对待处理图像的图像文件进行解码,获得待处理图像,然后调用格式转换功能模块对待处理图像进行格式转换(将YUV格式转化为BGR格式),之后调用图像尺寸处理功能模块对格式转换后的待处理图像进行尺寸的缩放处理。其中,图像尺寸处理功能模块对于输入图像尺寸的不同和输出图像尺寸的不同可以分别作为一个图像尺寸处理功能模块,不同的图像尺寸处理功能模块可以通过对应的功能模块标识来进行区分,在配置文件中配置所需要使用的具体的图像尺寸处理功能模块的功能模块标识来区分不同的图像尺寸处理功能模块。
图4是本申请实施例中自动驾驶感知处理方法的系统框架图,如图4所示,有向图包括图像处理子有向图410和模型推理子有向图420;图像处理子有向图410包括对摄像头实时采集的图像进行处理的第一子有向图411和/或对已有的图像文件进行处理的第二子有向图412;模型推理子有向图420包括模型输入功能模块、检测模型(Detect Model)功能模块(可以包括多个功能模块)、车道模型(Lane Model)功能模块、目标滤波(TargetFilter)功能模块、行驶车辆模型(Traffic Model)功能模块、非机动车模型(Non-VehicleModel)功能模块、标志模型(Sign Model)功能模块等。其中,模型输入功能模块用于对第一子有向图处理后的待处理图像进行进一步处理,例如将图像像素转换为BGR格式的像素或者进一步处理图像尺寸,以适应检测模型或车道模型的输入;检测模型功能模块可以由多个功能模块(Forwards)来实现检测模型的功能,用于对图像进行感知对象的检测处理,例如提取图像特征等;车道模型功能模块可以由多个功能模块(Forwards)来实现车道模型的功能,以实现对车道的识别;目标滤波功能模块用于对检测模型功能模块和车道模型功能模块处理后的待处理图像进行滤波处理;行驶车辆模型功能模块用于基于处理后的待处理图像来识别行驶车辆;非机动车模型功能模块用于基于处理后的待处理图像来识别非机动车;标志模型功能模块用于基于处理后的待处理图像来识别交通标志(如直行、左转、右转等)。
如图4所示,实现了一切皆模块的设计框架,不仅算法模型封装成独立的功能模块,包括图像输入、图像处理也封装成独立的功能模块。子有向图中的图像处理、模型计算(上述各个模型功能模块)都会通过一个功能模块(Forward)或者若干个功能模块来完成具体的功能实现。不仅不同Forward能够串联或并联在一起,而且不同子有向图(Module)之间也能完成串联或并联。
步骤340,根据所述有向图,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得所述处理结果。
按照有向图,依次调用各个功能模块来对待处理图像进行感知处理,在执行每个功能模块时,使用与该功能模块对应的执行线程标识所对应的执行线程来进行执行。
本实施例提供的自动驾驶感知处理方法,通过在解析配置文件获得多个功能模块的执行顺序后,根据执行顺序构建多个功能模块的有向图,根据有向图,通过执行线程标识对应的执行线程调用功能模块对待处理图像进行感知处理,获得处理结果,实现了通过对配置文件的解析来组织各个功能模块,构建对应的有向图,这样在编译的可执行文件或库中,并不需要保存整个感知处理流程,节省了存储空间,提高了感知处理的灵活性。
在上述技术方案的基础上,所述配置文件中还包括功能模块对应的感知模型版本;
所述根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果,包括:
在根据所述执行顺序,依次通过所述执行线程调用对应的功能模块对待处理图像进行感知处理时,若所述功能模块具有所述感知模型版本,则在调用所述功能模块时,获取所述感知模型版本所对应的感知模型文件,并调用所述感知模型文件对待处理图像进行处理,获得处理结果。
在由一个或多个功能模块组成感知模型时,由于需求不同或者是基于使用场景需要进行升级,感知模型可以有多个版本,不同版本的感知模型可以使用不同版本的功能模块,也就是功能模块是对应感知模型版本的功能模块,具有同一功能的多个功能模块可以应用在不同感知模型版本的感知模型中,具有同一功能的多个功能模块可以使用对应感知模型版本的感知模型来实现该功能模块的功能,所以在配置文件中还可以配置功能模块所对应的感知模型版本,以控制使用不同感知模型版本的功能模块来实现对应感知模型版本的感知模型的功能。
在根据多个功能模块的执行顺序,依次通过对应的执行线程调用功能模块对待处理图像进行感知处理时,若一个功能模块配置了感知模型版本,则在调用该功能模块时,获取该感知模型版本和该功能模块所对应的感知模型文件,并调用该感知模型文件来对待处理图像进行处理,根据执行顺序调用所有的功能模块对待处理图像进行处理后,获得处理结果。
通过感知模型版本和配置文件两部分可以共同进行感知模型的版本控制,感知模型版本侧重于控制感知模型的更新和迭代,用以区分不同版本的感知模型,配置文件侧重于控制感知处理流程的组织,用以实现使用具体感知模型版本的感知模型来进行感知处理,这样感知模型的更新和感知处理流程的升级都可以独立完成,也就是在感知模型更新时,可以通过开发实现更新后的感知模板版本的功能模块,并在该功能模块中通过感知模型版本来区分不同版本,而在需要对感知处理流程进行升级时,可以在原有的配置文件的基础上来修改组织各功能模块,可以修改功能模块的感知模型版本,或者将一个功能模块更新为其他功能模块等,这样不需要修改整个感知处理流程的整体代码,提高了版本控制的灵活性。
图5是本申请实施例提供的一种自动驾驶感知处理装置的结构框图,如图5所示,所述装置包括:
配置文件获取模块510,用于获取感知处理的配置文件;
配置文件解析模块520,用于解析所述配置文件,获得待执行感知处理的多个功能模块、每个所述功能模块对应的执行线程标识以及所述多个功能模块的执行顺序,所述功能模块由经过编译的程序段实现;
感知处理模块530,用于根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果。
可选的,所述装置还包括:
处理时耗获取模块,用于在调用所述功能模块对所述待处理图像进行感知处理时,获得所述功能模块的处理时耗;
评测结果确定模块,用于根据各所述功能模块的处理时耗,确定多个所述功能模块的评测结果。
可选的,所述评测结果确定模块具体用于:
将各所述功能模块的处理时耗中的平均时耗、最大时耗、最小时耗、最大的预设数量的处理时耗,以及各所述功能模块的处理时耗中的至少一种确定为所述评测结果。
可选的,所述感知处理模块包括:
有向图构建单元,用于根据所述执行顺序,构建多个所述功能模块的有向图;
感知处理单元,用于根据所述有向图,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得所述处理结果。
可选的,所述有向图包括图像处理子有向图和模型推理子有向图,所述有向图的方向由所述图像处理子有向图指向所述模型推理子有向图;
所述图像处理子有向图包括多个所述功能模块,所述模型推理子有向图包括多个所述功能模块,在所述模型推理子有向图中,至少一个所述功能模块组成感知模型。
可选的,所述图像处理子有向图包括对摄像头实时采集的图像进行处理的第一子有向图和/或对已有的图像文件进行处理的第二子有向图。
可选的,所述配置文件中还包括功能模块对应的感知模型版本;
所述感知处理模块具体用于:
在根据所述执行顺序,依次通过所述执行线程调用对应的功能模块对待处理图像进行感知处理时,若所述功能模块具有所述感知模型版本,则在调用所述功能模块时,获取所述感知模型版本所对应的感知模型文件,并调用所述感知模型文件对待处理图像进行处理,获得处理结果。
本申请实施例提供的自动驾驶感知处理装置,用于实现本申请实施例所述的自动驾驶感知处理方法的各步骤,装置的各模块的具体实施方式参见相应步骤,此处不再赘述。
本申请实施例提供的自动驾驶感知处理装置,通过获取感知处理的配置文件,解析配置文件,获得待执行感知处理的多个功能模块、每个功能模块对应的执行线程标识以及多个功能模块的执行顺序,根据执行顺序,通过执行线程标识对应的执行线程调用多个功能模块对待处理图像进行处理,获得处理结果,由于可以通过功能模块来实现不同的功能,并进行了编译,在不同的感知处理场景中,只需要通过配置文件来配置所需使用的功能模块以及功能模块的执行顺序、执行线程标识,就可以基于配置文件实现特定感知处理场景的感知处理,通过配置文件可以灵活的进行不同感知模式的切换,而不需要投入额外的人力支持,提高了感知处理的灵活性。
相应的,本申请实施例还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本申请实施例所述的自动驾驶感知处理方法。所述电子设备可以为计算机、车辆等。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例所述的自动驾驶感知处理方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本申请实施例提供的一种自动驾驶感知处理方法、装置、电子设备及存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
Claims (10)
1.一种自动驾驶感知处理方法,其特征在于,包括:
获取感知处理的配置文件;
解析所述配置文件,获得待执行感知处理的多个功能模块、每个所述功能模块对应的执行线程标识以及所述多个功能模块的执行顺序,所述功能模块由经过编译的程序段实现;
根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果。
2.根据权利要求1所述的方法,其特征在于,还包括:
在调用所述功能模块对所述待处理图像进行感知处理时,获得所述功能模块的处理时耗;
根据各所述功能模块的处理时耗,确定多个所述功能模块的评测结果。
3.根据权利要求2所述的方法,其特征在于,所述根据各所述功能模块的处理时耗,确定多个所述功能模块的评测结果,包括:
将各所述功能模块的处理时耗中的平均时耗、最大时耗、最小时耗、最大的预设数量的处理时耗,以及各所述功能模块的处理时耗中的至少一种确定为所述评测结果。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果,包括:
根据所述执行顺序,构建多个所述功能模块的有向图;
根据所述有向图,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得所述处理结果。
5.根据权利要求4所述的方法,其特征在于,所述有向图包括图像处理子有向图和模型推理子有向图,所述有向图的方向由所述图像处理子有向图指向所述模型推理子有向图;
所述图像处理子有向图包括多个所述功能模块,所述模型推理子有向图包括多个所述功能模块,在所述模型推理子有向图中,至少一个所述功能模块组成感知模型。
6.根据权利要求5所述的方法,其特征在于,所述图像处理子有向图包括对摄像头实时采集的图像进行处理的第一子有向图和/或对已有的图像文件进行处理的第二子有向图。
7.根据权利要求5所述的方法,其特征在于,所述配置文件中还包括功能模块对应的感知模型版本;
所述根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果,包括:
在根据所述执行顺序,依次通过所述执行线程调用对应的功能模块对待处理图像进行感知处理时,若所述功能模块具有所述感知模型版本,则在调用所述功能模块时,获取所述感知模型版本所对应的感知模型文件,并调用所述感知模型文件对待处理图像进行处理,获得处理结果。
8.一种自动驾驶感知处理装置,其特征在于,包括:
配置文件获取模块,用于获取感知处理的配置文件;
配置文件解析模块,用于解析所述配置文件,获得待执行感知处理的多个功能模块、每个所述功能模块对应的执行线程标识以及所述多个功能模块的执行顺序,所述功能模块由经过编译的程序段实现;
感知处理模块,用于根据所述执行顺序,通过所述执行线程标识对应的执行线程调用多个所述功能模块对待处理图像进行感知处理,获得处理结果。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任意一项所述的自动驾驶感知处理方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至7任意一项所述的自动驾驶感知处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310704496.XA CN116450207A (zh) | 2023-06-14 | 2023-06-14 | 自动驾驶感知处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310704496.XA CN116450207A (zh) | 2023-06-14 | 2023-06-14 | 自动驾驶感知处理方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116450207A true CN116450207A (zh) | 2023-07-18 |
Family
ID=87130553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310704496.XA Pending CN116450207A (zh) | 2023-06-14 | 2023-06-14 | 自动驾驶感知处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116450207A (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960570A (zh) * | 2017-12-14 | 2019-07-02 | 北京图森未来科技有限公司 | 一种多模块调度方法、装置和系统 |
CN111587407A (zh) * | 2017-11-10 | 2020-08-25 | 辉达公司 | 用于安全且可靠的自主车辆的系统和方法 |
US20210382720A1 (en) * | 2020-06-03 | 2021-12-09 | Intel Corporation | Hierarchical thread scheduling |
CN113885971A (zh) * | 2021-09-27 | 2022-01-04 | 中汽创智科技有限公司 | 一种基于自适应平台系统的状态管理方法及装置 |
CN115035494A (zh) * | 2022-07-04 | 2022-09-09 | 小米汽车科技有限公司 | 图像处理方法、装置、车辆、存储介质及芯片 |
CN115640059A (zh) * | 2022-12-14 | 2023-01-24 | 清华大学 | 自动驾驶操作系统、电子设备及存储介质 |
CN115907009A (zh) * | 2023-02-10 | 2023-04-04 | 北京百度网讯科技有限公司 | 一种自动驾驶感知模型的迁移方法、装置、设备和介质 |
US20230133867A1 (en) * | 2021-10-29 | 2023-05-04 | Gm Cruise Holdings Llc | Domain adaptation of autonomous vehicle sensor data |
WO2023077020A1 (en) * | 2021-10-29 | 2023-05-04 | Atieva, Inc. | Data collection policy management for vehicle sensor data |
US20230146364A1 (en) * | 2020-06-30 | 2023-05-11 | Huawei Technologies Co., Ltd. | Process running method and apparatus |
CN116137563A (zh) * | 2023-02-14 | 2023-05-19 | 南京地平线集成电路有限公司 | 感知处理模块的分时复用方法、装置、电子设备和介质 |
-
2023
- 2023-06-14 CN CN202310704496.XA patent/CN116450207A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111587407A (zh) * | 2017-11-10 | 2020-08-25 | 辉达公司 | 用于安全且可靠的自主车辆的系统和方法 |
CN109960570A (zh) * | 2017-12-14 | 2019-07-02 | 北京图森未来科技有限公司 | 一种多模块调度方法、装置和系统 |
US20210382720A1 (en) * | 2020-06-03 | 2021-12-09 | Intel Corporation | Hierarchical thread scheduling |
US20230146364A1 (en) * | 2020-06-30 | 2023-05-11 | Huawei Technologies Co., Ltd. | Process running method and apparatus |
CN113885971A (zh) * | 2021-09-27 | 2022-01-04 | 中汽创智科技有限公司 | 一种基于自适应平台系统的状态管理方法及装置 |
US20230133867A1 (en) * | 2021-10-29 | 2023-05-04 | Gm Cruise Holdings Llc | Domain adaptation of autonomous vehicle sensor data |
WO2023077020A1 (en) * | 2021-10-29 | 2023-05-04 | Atieva, Inc. | Data collection policy management for vehicle sensor data |
CN115035494A (zh) * | 2022-07-04 | 2022-09-09 | 小米汽车科技有限公司 | 图像处理方法、装置、车辆、存储介质及芯片 |
CN115640059A (zh) * | 2022-12-14 | 2023-01-24 | 清华大学 | 自动驾驶操作系统、电子设备及存储介质 |
CN115907009A (zh) * | 2023-02-10 | 2023-04-04 | 北京百度网讯科技有限公司 | 一种自动驾驶感知模型的迁移方法、装置、设备和介质 |
CN116137563A (zh) * | 2023-02-14 | 2023-05-19 | 南京地平线集成电路有限公司 | 感知处理模块的分时复用方法、装置、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111104903B (zh) | 一种深度感知交通场景多目标检测方法和系统 | |
CN110310229A (zh) | 图像处理方法、图像处理装置、终端设备及可读存储介质 | |
CN113888557A (zh) | 一种基于rgb-d特征融合的场景语义分割方法及系统 | |
Hmida et al. | Hardware implementation and validation of a traffic road sign detection and identification system | |
CN109740553B (zh) | 一种基于识别的图像语义分割数据筛选方法及系统 | |
US11017270B2 (en) | Method and apparatus for image processing for vehicle | |
CN112712005B (zh) | 识别模型的训练方法、目标识别方法及终端设备 | |
CN113283509A (zh) | 一种自动标注标签的方法、电子设备及存储介质 | |
CN114549369A (zh) | 数据修复方法、装置、计算机及可读存储介质 | |
CN113609980A (zh) | 一种用于自动驾驶车辆的车道线感知方法及装置 | |
CN114495060A (zh) | 一种道路交通标线识别方法及装置 | |
CN114444653A (zh) | 一种数据增广对深度学习模型性能影响评估方法及系统 | |
CN117173523B (zh) | 一种基于频率感知的伪装目标检测方法及系统 | |
CN116450207A (zh) | 自动驾驶感知处理方法、装置、电子设备及存储介质 | |
CN116935288A (zh) | 基于大语言模型控制的视频自动分析方法、装置及介质 | |
CN114898583A (zh) | 信号灯控制方案确定方法及智能交通设备的数据处理方法 | |
CN114419018A (zh) | 图像采样方法、系统、设备及介质 | |
CN115797469A (zh) | 信号灯图像处理方法、装置、设备及存储介质 | |
CN110148077B (zh) | 一种加速elbp-ip核的方法及mr智能眼镜 | |
CN113221604A (zh) | 目标识别方法、装置、存储介质及电子设备 | |
CN117830744A (zh) | 目标识别模型的训练方法、装置、车辆及存储介质 | |
CN114495061B (zh) | 一种道路交通标志牌识别方法及装置 | |
CN116912889B (zh) | 行人重识别方法及装置 | |
CN116468889B (zh) | 一种基于多分支特征提取的全景分割方法及系统 | |
CN116437120B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20230718 |