CN117348997A - 图像处理管道生成方法、装置、设备及介质 - Google Patents

图像处理管道生成方法、装置、设备及介质 Download PDF

Info

Publication number
CN117348997A
CN117348997A CN202311397023.6A CN202311397023A CN117348997A CN 117348997 A CN117348997 A CN 117348997A CN 202311397023 A CN202311397023 A CN 202311397023A CN 117348997 A CN117348997 A CN 117348997A
Authority
CN
China
Prior art keywords
image processing
algorithm
code
parameters
algorithms
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
Application number
CN202311397023.6A
Other languages
English (en)
Inventor
朱天阳
周严
储明帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zebred Network Technology Co Ltd
Original Assignee
Zebred Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zebred Network Technology Co Ltd filed Critical Zebred Network Technology Co Ltd
Priority to CN202311397023.6A priority Critical patent/CN117348997A/zh
Publication of CN117348997A publication Critical patent/CN117348997A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Image Processing (AREA)

Abstract

本申请提供一种图像处理管道生成方法、装置、设备及介质,可用于自动驾驶领域。在该方法中,通过获取到算法配置文件和设备硬件配置文件后,进行解析得到多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,以及设备硬件参数。进而根据多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,生成图像处理算法调用代码;再根据设备硬件参数,获取图像处理调度代码。最后根据图像处理算法调用代码和图像处理算法调度代码,生成图像处理管道。本方案通过确定出的多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,以及设备硬件参数,生成图像处理管道,无需人工生成,有效提高了生成效率。

Description

图像处理管道生成方法、装置、设备及介质
技术领域
本申请涉及自动驾驶领域,尤其涉及一种图像处理管道生成方法、装置、设备及介质。
背景技术
随着科技的发展,自动驾驶已经实现,在自动驾驶领域中,对获取的图像进行处理是非常重要的一个环节。通常对于图像的处理并不是一个算法就可以实现,需要多个算法进行组合形成图像处理管道,使用图像处理管道进行图像处理。
现有技术中,对于图像处理管道的生成,通常是由用户手工编写每个算法的代码,进而组合形成初始的图像处理管道。再根据运行图像处理管道的设备的硬件参数,对初始的图像处理管道进行优化,得到最终的图像处理管道。
综上所述,现有的图像处理管道生成方法由人工方式生成,生成效率较低。
发明内容
本申请实施例提供一种图像处理管道生成方法、装置、设备及介质,用于解决现有的图像处理管道生成方法由人工方式生成,生成效率较低的问题。
第一方面,本申请实施例提供一种图像处理管道生成方法,包括:
获取算法配置文件和设备硬件配置文件;
对所述算法配置文件和所述设备硬件配置文件进行解析,得到多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,以及设备硬件参数;
根据所述多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,生成图像处理算法调用代码;
根据所述设备硬件参数,获取图像处理调度代码;
根据所述图像处理算法调用代码和所述图像处理算法调度代码,生成图像处理管道。
在一种具体实施方式中,所述根据所述多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,生成图像处理算法调用代码,包括:
对于每个图像处理算法,根据所述图像处理算法的标识,获取所述标识对应的图像处理算法代码;
将所述图像处理算法的参数代入所述图像处理算法代码中,得到所述图像处理算法对应的图像处理算法子调用代码;
根据所述多个图像处理算法的执行顺序,对所述多个图像处理算法对应的图像处理算法子调用代码进行组合,得到所述图像处理算法调用代码。
在一种具体实施方式中,所述根据所述图像处理算法调用代码和所述图像处理算法调度代码,生成图像处理管道,包括:
根据所述图像处理算法调用代码和所述图像处理算法调度代码,编译生成图像处理代码库和图像处理头文件;
将所述图像处理代码库和所述图像处理头文件组合,得到所述图像处理管道。
在一种具体实施方式中,所述方法还包括:
对所述图像处理管道进行解析,得到测试参数;
将所述测试参数代入预设测试用例代码模型中,得到目标测试用例代码;
对所述目标测试用例代码进行编译,得到测试用例文件。
在一种具体实施方式中,所述对所述图像处理管道进行解析,得到测试参数,包括:
对所述图像处理管道中的图像处理代码库和图像处理头文件进行解析,得到所述测试参数,所述测试参数包括图像处理算法函数名。
在一种具体实施方式中,所述方法还包括:
运行所述测试用例文件对所述图像处理管道进行测试,得到测试结果。
第二方面,本申请实施例提供一种图像处理管道生成装置,包括:
获取模块,用于获取算法配置文件和设备硬件配置文件;
处理模块,用于:
对所述算法配置文件和所述设备硬件配置文件进行解析,得到多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,以及设备硬件参数;
根据所述多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,生成图像处理算法调用代码;
所述获取模块,还用于根据所述设备硬件参数,获取图像处理调度代码;
所述处理模块,还用于根据所述图像处理算法调用代码和所述图像处理算法调度代码,生成图像处理管道。
第三方面,本申请实施例提供一种电子设备,包括:
处理器,存储器,通信接口;
所述存储器用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行第一方面任一项所述的图像处理管道生成方法。
第四方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一项所述的图像处理管道生成方法。
第五方面,本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时用于实现第一方面任一项所述的图像处理管道生成方法。
本申请实施例提供的图像处理管道生成方法、装置、设备及介质,通过获取到算法配置文件和设备硬件配置文件后,进行解析得到多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,以及设备硬件参数。进而根据多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,生成图像处理算法调用代码;再根据设备硬件参数,获取图像处理调度代码。最后根据图像处理算法调用代码和图像处理算法调度代码,生成图像处理管道。本方案通过确定出的多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,以及设备硬件参数,生成图像处理管道,无需人工生成,有效提高了生成效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请提供的图像处理管道生成方法实施例一的流程示意图;
图1b为本申请提供的生成图像处理管道的流程示意图;
图2为本申请提供的图像处理管道生成方法实施例二的流程示意图;
图3a为本申请提供的图像处理管道生成方法实施例三的流程示意图;
图3b为本申请提供的生成测试用例文件的流程示意图;
图4为本申请提供的图像处理管道生成装置实施例的结构示意图;
图5为本申请提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在根据本实施例的启示下作出的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
随着科技的发展,自动驾驶已经得以实现,在车辆自动驾驶过程中,需要获取车辆周边的图形,进而进行处理,车辆才能根据处理结果进行行驶。通常对于图像的处理并不是一个算法就可以实现,需要多个算法进行组合形成图像处理管道,使用图像处理管道进行图像处理。
现有技术中,对于图像处理管道的生成,通常是由用户手工编写每个算法的代码,进而组合形成初始的图像处理管道。若直接使用初始的图像处理管道对图像进行处理,由于运行图像处理管道的设备的不同,不同的设备运行图像处理管道的效率也不相同,为了提高效率,一般需要根据运行图像处理管道的设备的硬件参数,对初始的图像处理管道进行优化,得到最终的图像处理管道。使用人工生成图像处理管道,会导致生成效率较低的问题,另外,成本也较高,难以移植。
针对现有技术中存在的问题,发明人在对图像处理管道生成方法进行研究的过程中发现,为了提高图像处理管道的生成效率,可由电子设备生成图像处理管道。获取算法配置文件和设备硬件配置文件,进而进行解析得到图像处理算法的标识、参数和执行顺序,以及设备硬件参数。进而根据解析得到的数据,确定图像处理算法调用代码和图像处理调度代码,进而即可生成图像处理管道,有效提高了生成效率。基于上述发明构思,设计了本申请中的图像处理管道生成方案。
本申请中图像处理管道生成方法的执行主体可以是计算机,还可以是服务器、终端设备等,本申请不对其进行限定,下面以计算机为例进行说明。
下面对本申请提供的图像处理管道生成方法的应用场景进行示例说明。
示例性的,在该应用场景中,用户需要构建车辆自动驾驶过程中需要运行的图像处理管道,用户可将算法配置文件和设备配置文件输入至计算机中。
计算机获取到算法配置文件和设备硬件配置文件后进行解析,得到多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,以及设备硬件参数。硬件设备的参数包括车辆中的中央处理器(Central Processing Unit,简称:CPU)和图形处理器(graphicsprocessing unit,简称:GPU)的参数。
进而根据多个图像处理算法的标识和参数、图像处理算法的执行顺序,生成图像处理算法调用代码;根据设备硬件参数,获取图像处理调度代码。
最后根据图像处理算法调用代码和图像处理算法调度代码,生成图像处理管道。进而计算机还可以将生成的图像处理管道发送至车辆,车辆在自动驾驶过程中,可获取图像处理管道进行图像处理。
需要说明的是,上述场景仅是本申请实施例提供的一种应用场景的示例,本申请实施例不对该场景中包括的各种设备的实际形态进行限定,也不对设备之间的交互方式进行限定,在方案的具体应用中,可以根据实际需求设定。
下面,通过具体实施例对本申请的技术方案进行详细说明。需要说明的是,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图1a为本申请提供的图像处理管道生成方法实施例一的流程示意图,本申请实施例对计算机根据获取的算法配置文件和设备硬件配置文件,生成图像处理管道的情况进行说明。本实施例中的方法可以通过软件、硬件或者软硬件结合的方式来实现。如图1a所示,该图像处理管道生成方法具体包括以下步骤:
S101:获取算法配置文件和设备硬件配置文件。
在需要进行生成图像处理通道时,用户将算法配置文件和设备硬件配置文件输入至计算机中。
在本步骤中,用户将算法配置文件和设备硬件配置文件输入至计算机。计算机即可获取到算法配置文件和设备硬件配置文件。
需要说明的是,计算机获取算法配置文件和设备硬件配置文件的方式可以是:终端设备中存储有算法配置文件和设备硬件配置文件,用户使用终端设备将算法配置文件和设备硬件配置文件发送至计算机,计算机可获取到这两个配置文件;还可以是:存储设备中存有算法配置文件和设备硬件配置文件,用户将存储设备与计算机连接,计算机可从存储设备中获取算法配置文件和设备硬件配置文件;还可以是:用户直接在计算机上编写算法配置文件和设备硬件配置文件,编写完成后,计算机即可获取到这两个配置文件。本申请实施例不对计算机获取算法配置文件和设备硬件配置文件的方式进行限定,可根据实际情况进行确定。
S102:对算法配置文件和设备硬件配置文件进行解析,得到多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,以及设备硬件参数。
在本步骤中,计算机获取到算法配置文件和设备硬件配置文件,对算法配置文件进行解析,得到多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,对设备硬件配置文件进行解析,得到设备硬件参数。
算法配置文件中的包括多个图像处理算法的参数和标识,每个图像处理算法的参数和标识是按照顺序分块放置的,对每个图像处理算法的参数和标识的分块顺序进行识别,即可确定出多个图像处理算法的执行顺序;每个图像处理算法的参数和标识是按照特定的格式进行存储的,比如键值对格式,按照这种特定的格式进行解析,得到每个图像处理算法的参数和标识。
示例性的存储的图像处理算法的标识格式为“算法标识=0001”,对此进行解析,可得到该图像处理算法的标识为0001。
设备硬件配置文件中的设备硬件参数是按照特定的格式进行存储的,比如键值对格式,按照这种特定的格式进行解析,得到设备硬件参数。
需要说明的是,设备硬件参数包括CPU的参数和GPU的参数,CPU的参数包括指令集名称、架构标识、型号等;GPU的参数包括版本号、标识等。本申请实施例不对设备硬件参数进行限定,可根据实际情况进行确定。
需要说明的是,图像处理算法可以是图像缩放算法、图像归一化算法、添加边框算法、图像通道分离算法、色彩空间转换算法、图像裁剪算法等,本申请实施例不对图像处理算法进行限定,可根据实际情况进行确定。
S103:根据多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,生成图像处理算法调用代码。
在本步骤中,计算机得到多个图像处理算法的标识和参数、多个图像处理算法的执行顺序、设备硬件参数后,可根据多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,生成图像处理算法调用代码。
可根据标识查找到对应的图像处理算法,进而将参数代入图像处理算法,再按照执行顺序对代入参数后的图像处理算法进行组合,得到图像处理算法调用代码。
需要说明的是,图像处理算法调用代码可以是领域专用语言(domain specificlanguage,简称:DSL)的代码。
S104:根据设备硬件参数,获取图像处理调度代码。
在本步骤中,在本步骤中,计算机得到多个图像处理算法的标识和参数、多个图像处理算法的执行顺序、设备硬件参数后,可根据设备硬件参数,获取图像处理调度代码。
由于计算机中存储有不同的设备硬件参数对应的图像处理调度代码,所以可根据设备硬件参数,获取到对应的图像处理调度代码。
图像处理调度代码是执行每个图像处理算法的代码,不同的图像处理调度代码,对于同一个图像处理算法,执行方式不同。图像处理调度代码是与设备硬件参数对应的,对于一个设备,使用该设备的设备硬件参数对应的图像处理调度代码执行图像处理方法,因为与各硬件适配,所以执行效率较高。
需要说明的是,步骤S103与步骤S104的执行顺序可以是先执行步骤S103,再执行步骤S104;还可以是先执行步骤S104,再执行步骤S103;还可以是步骤S103与步骤S104同时执行。本申请实施例不对步骤S103与步骤S104的执行顺序进行限定,可根据实际情况进行设置。
S105:根据图像处理算法调用代码和图像处理算法调度代码,生成图像处理管道。
在本步骤中,计算机得到图像处理算法调用代码和图像处理算法调度代码后,即可根据图像处理算法调用代码和图像处理算法调度代码,生成图像处理管道。
具体地,对图像处理算法调用代码和图像处理算法调度代码进行编译,生成图像处理代码库和图像处理头文件;进而将图像处理代码库和图像处理头文件组合,得到图像处理管道。
示例性的,图1b为本申请提供的生成图像处理管道的流程示意图,如图1b所示,对算法配置文件进行解析得到图像处理算法的标识、参数和顺序,进而可生成图像处理算法调用代码;对设备硬件配置文件进行解析得到设备硬件参数,进而根据设备硬件参数可获取到图像处理调度代码;最后根据图像处理算法调用代码和图像处理算法调度代码,生成图像处理管道。
本实施例提供的图像处理管道生成方法,通过获取到算法配置文件和设备硬件配置文件后,进行解析得到多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,以及设备硬件参数。进而根据多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,生成图像处理算法调用代码;再根据设备硬件参数,获取图像处理调度代码。最后根据图像处理算法调用代码和图像处理算法调度代码,生成图像处理管道。相较于现有技术中使用人工生成图像处理管道,本方案通过确定出的多个图像处理算法的标识和参数、多个图像处理算法的执行顺序,以及设备硬件参数,生成图像处理管道,无需人工生成,有效提高了生成效率。另外,生成的图像处理管道是与硬件匹配的,使得设备运行图像处理管道的效率更高。进行移植时也更加方便,无需用户重新编写图像处理管道,只需要用户输入新的设备硬件配置文件,即可得到新的图像处理管道进行移植。
图2为本申请提供的图像处理管道生成方法实施例二的流程示意图,在上述实施例的基础上,本申请实施例对计算机生成图像处理算法调用代码的情况进行说明。如图2所示,该图像处理管道生成方法具体包括以下步骤:
S201:对于每个图像处理算法,根据图像处理算法的标识,获取标识对应的图像处理算法代码。
在本步骤中,计算机得到多个图像处理算法的标识和参数、多个图像处理算法的执行顺序、设备硬件参数后,为了生成图像处理算法调用代码,需要对于每个图像处理算法,根据图像处理算法的标识,获取标识对应的图像处理算法代码。
由于计算机中存储了图像处理算法的标识与图像处理算法代码的对应关系,所以可以根据解析得到的标识,确定出对应的图像处理算法代码。
S202:将图像处理算法的参数代入图像处理算法代码中,得到图像处理算法对应的图像处理算法子调用代码。
在本步骤中,计算机得到该图像处理算法对应的图像处理算法代码后,由于该代码是通用代码,需要将该图像处理算法的参数代入图像处理算法代码中,得到该图像处理算法对应的图像处理算法子调用代码。由于图像处理算法的参数是根据实际应用场景进行设置的,所以该图像处理算法子调用代码能够和实际应用场景更加匹配。
S203:根据多个图像处理算法的执行顺序,对多个图像处理算法对应的图像处理算法子调用代码进行组合,得到图像处理算法调用代码。
在本步骤中,计算机得到每个图像处理算法对应的图像处理算法子调用代码后,根据多个图像处理算法的执行顺序,对这些图像处理算法对应的图像处理算法子调用代码组合,得到图像处理算法调用代码。
示例性的,共有5个图像处理算法,按照执行顺序排列为:A、C、D、B、E。A对应的图像处理算法子调用代码为甲,B对应的图像处理算法子调用代码为乙,C对应的图像处理算法子调用代码为丙,D对应的图像处理算法子调用代码为丁,E对应的图像处理算法子调用代码为戊;图像处理算法调用代码为:甲、丙、丁、乙、戊的顺序的组合。
本实施例提供的图像处理管道生成方法,通过多个图像处理算法的标识和参数,以及多个图像处理算法的执行顺序,生成图像处理算法调用代码,无需人工编写代码,有效提高了,生成图像处理算法调用代码的效率,同时也提高了生成图像处理通道的效率。
图3a为本申请提供的图像处理管道生成方法实施例三的流程示意图,在上述实施例的基础上,本申请实施例对计算机生成图像处理管道后,还可生成测试用例文件的情况进行说明。如图3a所示,测试用例文件生成方法具体包括以下步骤:
S301:对图像处理管道进行解析,得到测试参数。
计算机得到图像处理管道后,为了测试图像处理管道的处理效果,需要使用测试用例文件对图像处理管道进行测试。
在本步骤中,计算机对图像处理管道进行解析,得到测试参数。可对图像处理管道中的图像处理代码库和图像处理头文件进行解析,得到测试参数,测试参数包括图像处理算法函数名。
S302:将测试参数代入预设测试用例代码模型中,得到目标测试用例代码。
在本步骤中,计算机得到测试参数后,由于计算机中存储有预设测试用例代码模型,所以可将测试参数代入预设测试用例代码模型中,得到目标测试用例代码。
对于每个测试参数,可对该测试参数进行识别,确定参数类型,进而确定出参数类型对应的预设测试用例代码模型,将该测试参数代入至预设测试用例代码模型中,进而将代入测试参数的预设测试用例代码模型进行组合,得到目标测试用例代码。
示例性的,一个测试参数为函数名relize(A),表示对图像A进行缩放,对应的参数类型为缩放类型,进而确定出的预设测试用例代码模型中需要填入的部分为“test()”,带入后,可得到“test(relize(A))”。
需要说明的是,上述例子仅是对将测试参数代入预设测试用例代码模型的过程进行示例,本申请实施例不对测试参数、预设测试用例代码模型、参数类型进行限定,参数类型还可以是归一化类型、通道分离类型等,可根据实际情况进行确定。
S303:对目标测试用例代码进行编译,得到测试用例文件。
在本步骤中,计算机得到目标测试用例代码,对目标测试用例代码进行编译,即可得到测试用例文件。
示例性的,图3b为本申请提供的生成测试用例文件的流程示意图,如图3b所示,对图像处理管道进行解析得到测试参数;结合预设测试用例代码模型,也就是将测试参数代入预设测试用例代码模型中,得到目标测试用例代码;进而对目标测试用例代码进行编译,得到测试用例文件。
另外,在得到测试用例文件后,还可以运行测试用例文件对图像处理管道进行测试,得到测试结果。可使用计算机虚拟出与图像处理管道适配的硬件环境,进而运行测试用例文件,得到图像处理管道的处理准确性和性能。
本实施例提供的图像处理管道生成方法,通过对图像处理管道进行解析,得到测试参数后代入预设测试用例代码模型中,得到目标测试用例代码;进而进行编译得到测试用例文件。相较于现有技术中使用人工生成测试用例文件,本方案可根据图像处理管道和预设测试用例代码模型生成测试用例文件,有效提高了效率。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图4为本申请提供的图像处理管道生成装置实施例的结构示意图;如图4所示,该图像处理管道生成装置40包括:
获取模块41,用于获取算法配置文件和设备硬件配置文件;
处理模块42,用于:
对所述算法配置文件和所述设备硬件配置文件进行解析,得到多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,以及设备硬件参数;
根据所述多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,生成图像处理算法调用代码;
所述获取模块41,还用于根据所述设备硬件参数,获取图像处理调度代码;
所述处理模块42,还用于根据所述图像处理算法调用代码和所述图像处理算法调度代码,生成图像处理管道。
进一步地,所述处理模块42,具体用于:
将所述图像处理算法的参数代入所述图像处理算法代码中,得到所述图像处理算法对应的图像处理算法子调用代码;
根据所述多个图像处理算法的执行顺序,对所述多个图像处理算法对应的图像处理算法子调用代码进行组合,得到所述图像处理算法调用代码。
进一步地,所述处理模块42,具体还用于:
根据所述图像处理算法调用代码和所述图像处理算法调度代码,编译生成图像处理代码库和图像处理头文件;
将所述图像处理代码库和所述图像处理头文件组合,得到所述图像处理管道。
进一步地,所述处理模块42,还用于:
对所述图像处理管道进行解析,得到测试参数;
将所述测试参数代入预设测试用例代码模型中,得到目标测试用例代码;
对所述目标测试用例代码进行编译,得到测试用例文件。
进一步地,所述处理模块42,还用于对所述图像处理管道中的图像处理代码库和图像处理头文件进行解析,得到所述测试参数,所述测试参数包括图像处理算法函数名。
进一步地,所述处理模块42,还用于运行所述测试用例文件对所述图像处理管道进行测试,得到测试结果。
本实施例提供的图像处理管道生成装置,用于执行前述任一方法实施例中的技术方案,其实现原理和技术效果类似,在此不再赘述。
图5为本申请提供的一种电子设备的结构示意图。如图5所示,该电子设备50包括:
处理器51,存储器52,以及通信接口53;
所述存储器52用于存储所述处理器51的可执行指令;
其中,所述处理器51配置为经由执行所述可执行指令来执行前述任一方法实施例中的技术方案。
可选的,存储器52既可以是独立的,也可以跟处理器51集成在一起。
可选的,当所述存储器52是独立于处理器51之外的器件时,所述电子设备50还可以包括:
总线54,存储器52和通信接口53通过总线54与处理器51连接并完成相互间的通信,通信接口53用于和其他设备进行通信。
可选的,通信接口53具体可以通过收发器实现。通信接口用于实现数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(random access memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
总线54可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
上述的处理器可以是通用处理器,包括CPU、网络处理器(network processor,NP)等;还可以是数字信号处理器DSP、专用集成电路ASIC、现场可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
该电子设备用于执行前述任一方法实施例中的技术方案,其实现原理和技术效果类似,在此不再赘述。
本申请实施例还提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述任一方法实施例提供的技术方案。
本申请实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时用于实现前述任一方法实施例提供的技术方案。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或对其中部分或全部技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (10)

1.一种图像处理管道生成方法,其特征在于,包括:
获取算法配置文件和设备硬件配置文件;
对所述算法配置文件和所述设备硬件配置文件进行解析,得到多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,以及设备硬件参数;
根据所述多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,生成图像处理算法调用代码;
根据所述设备硬件参数,获取图像处理调度代码;
根据所述图像处理算法调用代码和所述图像处理算法调度代码,生成图像处理管道。
2.根据权利要求1所述的方法,其特征在于,所述根据所述多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,生成图像处理算法调用代码,包括:
对于每个图像处理算法,根据所述图像处理算法的标识,获取所述标识对应的图像处理算法代码;
将所述图像处理算法的参数代入所述图像处理算法代码中,得到所述图像处理算法对应的图像处理算法子调用代码;
根据所述多个图像处理算法的执行顺序,对所述多个图像处理算法对应的图像处理算法子调用代码进行组合,得到所述图像处理算法调用代码。
3.根据权利要求1所述的方法,其特征在于,所述根据所述图像处理算法调用代码和所述图像处理算法调度代码,生成图像处理管道,包括:
根据所述图像处理算法调用代码和所述图像处理算法调度代码,编译生成图像处理代码库和图像处理头文件;
将所述图像处理代码库和所述图像处理头文件组合,得到所述图像处理管道。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述图像处理管道进行解析,得到测试参数;
将所述测试参数代入预设测试用例代码模型中,得到目标测试用例代码;
对所述目标测试用例代码进行编译,得到测试用例文件。
5.根据权利要求4所述的方法,其特征在于,所述对所述图像处理管道进行解析,得到测试参数,包括:
对所述图像处理管道中的图像处理代码库和图像处理头文件进行解析,得到所述测试参数,所述测试参数包括图像处理算法函数名。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
运行所述测试用例文件对所述图像处理管道进行测试,得到测试结果。
7.一种图像处理管道生成装置,其特征在于,包括:
获取模块,用于获取算法配置文件和设备硬件配置文件;
处理模块,用于:
对所述算法配置文件和所述设备硬件配置文件进行解析,得到多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,以及设备硬件参数;
根据所述多个图像处理算法的标识和参数、所述多个图像处理算法的执行顺序,生成图像处理算法调用代码;
所述获取模块,还用于根据所述设备硬件参数,获取图像处理调度代码;
所述处理模块,还用于根据所述图像处理算法调用代码和所述图像处理算法调度代码,生成图像处理管道。
8.一种电子设备,其特征在于,包括:
处理器,存储器,通信接口;
所述存储器用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至6任一项所述的图像处理管道生成方法。
9.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一项所述的图像处理管道生成方法。
10.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时用于实现权利要求1至6任一项所述的图像处理管道生成方法。
CN202311397023.6A 2023-10-25 2023-10-25 图像处理管道生成方法、装置、设备及介质 Pending CN117348997A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311397023.6A CN117348997A (zh) 2023-10-25 2023-10-25 图像处理管道生成方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311397023.6A CN117348997A (zh) 2023-10-25 2023-10-25 图像处理管道生成方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN117348997A true CN117348997A (zh) 2024-01-05

Family

ID=89361088

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311397023.6A Pending CN117348997A (zh) 2023-10-25 2023-10-25 图像处理管道生成方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN117348997A (zh)

Similar Documents

Publication Publication Date Title
CN111428462B (zh) 通讯协议模板构建的方法及终端设备
CN108958736B (zh) 页面生成方法、装置、电子设备及计算机可读介质
JP7270764B2 (ja) 人工知能チップ検証
CN107609004B (zh) 应用程序埋点方法和装置、计算机设备和存储介质
CN113065656A (zh) 一种规则引擎配置方法、装置、服务器及可读存储介质
CN109086215B (zh) 一种嵌入式软件单元测试用例生成方法及系统
CN108491207B (zh) 表达式处理方法、装置、设备及计算机可读存储介质
CN109492181A (zh) 页面跳转方法、装置、计算机设备和存储介质
CN112729868A (zh) 一种车辆诊断方法、装置、设备及介质
CN111767056A (zh) 一种源码编译方法、可执行文件运行方法及终端设备
CN107797805B (zh) 一种代码封装方法、装置及计算机可读存储介质
CN114895935A (zh) 刷写车辆ecu的方法、装置、电子设备及存储介质
CN111240772A (zh) 一种基于区块链的数据处理方法、装置及存储介质
CN114201397A (zh) 一种接口测试建模方法、装置、电子设备和存储介质
CN116431127A (zh) 一种低代码开发方法、系统、设备和可读存储介质
CN117348997A (zh) 图像处理管道生成方法、装置、设备及介质
CN115755867A (zh) 一种车辆诊断方法及相关装置
CN115599401A (zh) 自定义模型的发布方法、装置、设备及介质
CN114756183A (zh) 数据打印方法、装置、设备及存储介质
CN114879630A (zh) 车辆故障诊断方法、装置、设备及可读存储介质
CN113806231A (zh) 一种代码覆盖率分析方法、装置、设备和介质
CN113448874A (zh) 一种单元测试脚本的生成方法及装置
CN111008018A (zh) 一种can信号解包处理方法及系统
CN111444057A (zh) 页面性能数据采集方法、装置及计算设备
CN115543227B (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