CN114331917A - 一种设备调试的方法和控制器 - Google Patents
一种设备调试的方法和控制器 Download PDFInfo
- Publication number
- CN114331917A CN114331917A CN202210218143.4A CN202210218143A CN114331917A CN 114331917 A CN114331917 A CN 114331917A CN 202210218143 A CN202210218143 A CN 202210218143A CN 114331917 A CN114331917 A CN 114331917A
- Authority
- CN
- China
- Prior art keywords
- parameter value
- debugging
- test
- controller
- value combination
- 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.)
- Granted
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种设备调试的方法,包括:控制器接收调试模块信息和各调试参数及相应的参数取值范围;控制器对应每个调试模块,生成相应调试模块中各调试参数的多种参数取值组合;对应每个调试模块的每种参数取值组合,控制器在若干测试设备中选择当前测试设备,将相应的参数取值组合下发给当前测试设备,以对相应调试模块进行测试;控制器根据每个调试模块的所有参数取值组合的测试结果,确定对应每个调试模块的最佳参数取值组合。应用本申请,能够自动进行各种参数的综合调试,以选取合适的参数取值组合。
Description
技术领域
本申请涉及图像处理技术,特别涉及一种设备调试的方法和控制器。
背景技术
图像画质调试是指,通过大量调整现有图像算法设计的参数,使监控摄像机、相机和手机等多媒体开发板和设备的视频及图片,展现出专业的、完整的、正确的、最佳的图像效果。调试工程师调试图像画质最终主客观判断的标准一般是,实际输出与标杆预期输出间的接近程度。目前都是调试人员自己凭借对算法的了解和调试经验,按照一定规则调整参数,改变图像显示效果,并与标杆预期图像比较,进行主客观判断,最终给出调试过程中认为效果最好的参数组合。
随着ISP算法的改进和日益多样化的产品形态,图像调试工作越来越复杂和繁重。比如在各种光线、色温、多变场景下调试图像最佳效果,调试人员要经过无数次的参数调整,最终选择一组和标杆质量接近的参数组合。在调试过程中,调试涉及的模块多,参数量大,参数范围大,参数间还会相互影响,调试点有大量的参数组合,这些都使得图像画质调试的难度非常大,这就要求调试人员非常熟悉各个ISP图像算法,并且有非常丰富的调试经验,才能有明确的调试方向,同时,即便有经验丰富的调试人员,但也需要大量时间来进行调试,而且一旦ISP算法有改动,调试工程师需要重新做一次调试工作,因此目前的图像画质调试方式,对于调试人员要求很高,且需要占用大量的时间。进一步的,由于调试过程涉及的参数调整量很大,因此调试人员有可能无法观察所有参数组合,只能有取舍的得到可能最优的图像效果;同时,由调试人员判断的效果通常比较主观,而且由于图像量大,调试人员不可能记忆所有图像效果,且很多参数调节后也可能主观效果不明显,使得与标杆预期图像的对比更加困难,基于上述原因,目前的图像画质调试方式得出的最佳显示效果可能是比较局限的,也可能只是某个参数调整时的最佳效果,不一定是算法的最佳效果。
发明内容
本申请提供一种设备调试的方法和控制器,能够自动进行各种参数的综合调试,以选取合适的参数取值组合。
为实现上述目的,本申请采用如下技术方案:
一种设备调试的方法,包括:
控制器接收若干调试模块信息和相应调试模块中的各调试参数及相应的参数取值范围;
所述控制器对应每个调试模块,根据接收的相应调试模块中各调试参数的参数取值范围,生成相应调试模块中各调试参数的多种参数取值组合;
对应每个调试模块的每种参数取值组合,所述控制器在若干测试设备中选择一个测试设备作为当前测试设备,将相应的参数取值组合下发给所述当前测试设备,以对相应调试模块进行测试;
所述控制器根据每个调试模块的所有参数取值组合的测试结果,确定对应每个调试模块的最佳参数取值组合。
较佳地,所述控制器根据每个调试模块的所有参数取值组合的测试结果,确定对应每个调试模块的最佳参数取值组合,包括:
所述控制器将所述测试结果与标杆设备中对相同调试模块的处理结果进行比较,判断所述当前测试设备进行测试的参数取值组合是否可用。
较佳地,该方法进一步包括:根据可用的参数取值组合,更新相应调试模块中各调试参数的参数取值范围,或者,更新生成的所述多种参数取值组合。
较佳地,所述将相应的参数取值组合下发给所述当前测试设备包括:
所述控制器将所述当前测试设备对应的参数取值组合下发给与所述当前测试设备相连的设备服务器,以通过所述设备服务器生成所述当前测试设备的可执行命令并发送给所述当前测试设备;其中,所述可执行命令用于针对相应的参数取值组合进行对应调试模块的测试。
较佳地,所述控制器向连接多个测试设备的设备服务器下发所述参数取值组合时进一步通知该设备服务器在所述当前测试设备上进行测试处理,并反馈测试结果。
较佳地,所述标杆设备中对相同调试模块的处理结果是预先处理得到的,或者,是在所述当前测试设备进行测试时所述标杆设备进行处理得到的。
较佳地,判断所述当前测试设备进行测试的参数取值组合是否可用的方式包括:
计算所述测试结果与所述处理结果之间的相似度,并根据相似度结果确定所述当前测试设备进行测试的参数取值组合是否可用。
较佳地,所述生成相应调试模块中各调试参数的多种参数取值组合包括:生成相应调试模块对应的配置文件群;其中,所述配置文件群包括多个配置文件,每个配置文件中包括对应调试模块中各调试参数的一种参数取值组合;
所述将相应的参数取值组合下发给所述当前测试设备包括:将相应的参数取值组合所在的配置文件下发给所述当前测试设备。
较佳地,所述控制器选择一个测试设备时选择当前空闲的测试设备;
该方法进一步包括:所述控制器在向所述当前测试设备下发参数取值组合时,进一步将所述当前测试设备设置为非空闲;所述控制器在接收到所述测试结果后,将所述当前测试设备设置为空闲。
一种用于设备调试的控制器,包括:接口单元、处理单元和组合确定单元;
所述接口单元,用于接收若干调试模块信息和相应调试模块中各调试参数的参数取值范围;还用于下发参数取值组合和接收测试结果;
所述处理单元,用于根据所述接口单元接收的相应调试模块中各调试参数的参数取值范围,生成相应调试模块中各调试参数的多种参数取值组合;还用于对应每个调试模块的每种参数取值组合,所述控制器在若干测试设备中选择一个测试设备作为当前测试设备,将相应的参数取值组合通过所述接口单元下发给所述当前测试设备,以对相应调试模块进行测试;
所述组合确定单元,用于根据所述接口单元接收的每个调试模块的所有参数取值组合的测试结果,确定对应每个调试模块的最佳参数取值组合。
较佳地,该控制器所在的调试系统进一步包括若干设备服务器,每个所述设备服务器分别与若干所述测试设备和所述控制器连接;
所述接口单元,用于将所述当前测试设备对应的参数取值组合下发给与所述当前测试设备相连的设备服务器,以通过所述设备服务器生成所述当前测试设备的可执行命令并发送给所述当前测试设备;其中,可执行命令用于针对相应参数取值组合进行对应调试模块的测试。
由上述技术方案可见,本申请中,控制器接收若干调试模块信息和相应调试模块中的各调试参数及相应的参数取值范围;对应每个调试模块,根据各调试参数的参数取值范围,生成多种参数取值组合;对应每种参数取值组合,控制器选择一个测试设备作为当前测试设备,将相应的参数取值组合下发给当前测试设备,以对相应调试模块进行测试;控制器根据每个调试模块的所有参数组合的测试结果,确定对应每个调试模块的最佳参数取值组合。通过上述方式,可以利用控制器自动生成目标调试模块的各调试参数的多种参数取值组合,并选择测试设备完成相应参数取值组合的测试处理,利用测试结果选择最佳参数取值组合,从而能够自动进行各种参数的综合调试,以选取合适的参数取值组合。
附图说明
图1为本申请中设备调试方法的基本流程示意图;
图2为本申请实施例中调试系统架构的示意图;
图3为本申请实施例中图像画质调试方法的具体流程示意图;
图4a和图4b分别为EE模块中strength参数取10和取100的效果示意图;
图5为EE模块中边缘曝光抑制门限的最大值和最小值均设置在5以内的效果示意图;
图6a和图6b分别为EE模块中滤波器的矩阵大小为3x3和5x5时的图像效果示意图。
具体实施方式
为了使本申请的目的、技术手段和优点更加清楚明白,以下结合附图对本申请做进一步详细说明。
本申请提供一种调试系统,最基本地包括一个控制器和若干测试设备。基于该调试系统,本申请提供一种调试方法,本申请的调试方法和用于调试的控制器可以应用于多个领域,比如,图像画质调试,下面以图像画质调试为例对本申请进行说明,其中,为描述方便起见,从控制器和测试设备交互的角度进行描述。具体地,基本流程可以如图1所示,包括:
步骤101,控制器接收若干调试模块信息和相应调试模块中的各调试参数及相应的参数取值范围。
调试模块的信息可以是一个或多个调试模块的信息。对于每个调试模块,都有相应的调试参数以及各参数的取值范围。这些信息可以是测试人员进行设置后输入给控制器的。
步骤102,控制器对于每个调试模块,根据接收的相应调试模块中各调试参数的参数取值范围,生成相应调试模块中各调试参数的多种参数取值组合。
如前所述,调试模块可能有一个或多个,在每个调试模块中都包括一个或多个调试参数,当这些调试参数进行不同取值时,相应会体现出该调试模块的不同参数组合对于整个图像画质的影响。在生成多种参数取值组合时,根据步骤101中调试模块对应各调试参数的参数取值范围来确定各参数的具体取值,从而确定参数取值组合。通过本步骤的处理,可以自动生成需要测试的调试模块的多种参数取值组合,以在后续处理中针对各种参数取值组合进行相应测试。
其中,参数取值组合是通过批处理脚本,根据各个参数取值范围,在配置文件对应位置填入对应的参数值,不需要手工一个一个的改配置。
步骤103,对应每个调试模块的每种参数取值组合,控制器在若干测试设备中选择一个测试设备作为当前测试设备,将相应的参数取值组合下发给当前测试设备。
在步骤102的处理中,针对每个调试模块都生成了多种参数取值组合,对于每种参数取值组合,具体进行测试处理的操作相同,具体包括步骤103-104的处理。针对每种参数取值组合A,控制器选择一个测试设备进行参数取值组合A的图像画质测试,将进行该测试的设备称为当前测试设备,将参数取值组合A下发给对应的当前测试设备,以对相应调试模块进行测试。
控制器选择一个测试设备,可以采用通知和查询两种方式进行选择。
1.通知方式,测试设备空闲时会给设备服务器发一个信号,表示测试设备闲置中,设备服务器发送给控制器,控制器接收到后,就通过测试服务器向测试设备发送新的任务;
2.查询方式,控制器每隔一段时间查询一下设备列表,询问哪个测试设备处于空闲状态,处于空闲态的测试设备将其空闲态发送给控制器,并接收到控制器通过测试服务器下发的新的任务。其中,测试设备可以向控制器发送约定好的空闲标志表明自己处于空闲态。
另外,基于最基本的调试系统结构,控制器与一个或多个测试设备可以是直接连接的,例如通过SSH协议、串口或网络等。控制器在选择出当前测试设备后,可以将参数取值组合A直接发送给当前测试设备。或者,在最基本的调试系统结构的基础上,控制器和测试设备可以不是直接连接的,而是如图2所示的系统结构,控制器与一个或多个设备服务器相连,每个设备服务器与一个或多个测试设备相连。控制器在选择出当前测试设备后,将参数取值组合A发送给与当前测试设备相连的设备服务器,再由设备服务器将参数取值组合A发送给测试设备。
步骤104,当前测试设备按照对应的参数取值组合,对该测试设备中的相应调试模块进行测试生成相应参数取值组合的测试结果,并向控制器反馈测试结果。
当前测试设备对接收的参数取值组合A相应的调试模块进行测试,将该调试模块的各调试参数按照参数取值组合A进行赋值,得到测试结果,该测试结果是在参数取值组合A的条件下得到的,因此该测试结果对应于参数取值组合A。
当前测试设备将参数取值组合A对应的测试结果反馈给控制器。具体反馈方式需要适应于调试系统的具体结构。当调试系统为控制器与测试设备直接连接时,测试设备通过二者间的连接直接发送给控制器;当调试系统为图2所示的结构时,测试设备将测试结果先发送给与其相连的设备服务器,再由设备服务器将测试结果发送给控制器。
步骤105,控制器根据每个调试模块的所有参数取值组合的测试结果,确定对应每个调试模块的最佳参数取值组合。
通过上述103-104的处理,可以将每个调试模块的多种参数取值组合选择合适的测试设备(例如,空闲设备)进行测试,对应每个调试模块,得到该调试模块的每种参数取值组合的测试结果。本步骤中控制器根据对应每个调试模块接收的所有测试结果,选择出该调试模块对应的最佳参数取值组合。
至此,本申请中最基本的图像画质调试方法流程结束。另外,上述图1所示的处理中,步骤101、102、103和105的处理是控制器侧的处理,构成本申请中设备调试方法,步骤104的处理是为方便描述而给出的测试设备侧的具体处理。通过上述方式,能够自动生成调试模块的多种参数取值组合并自动完成测试,再利用这些测试结果选择最佳的参数取值组合。在此过程中,不需要测试人员对于各个调试模块的参数有非常深入的了解,可以通过参数取值范围的控制来实现各种需要进行比较的参数取值组合的测试,自动进行各种参数的综合调试。
最佳参数取值组合会配置到以后发布的所有同类型设备中,以使得设备取得更好的处理效果,另一方面,也能快速的取得较好的效果,不需要为了获得最佳参数取值组合而反复在参数的可选范围内调整参数取值组合。
在本申请实施例中,可以根据各个参数取值组合得到的测试结果,进一步缩小各个参数的取值范围,并根据缩小范围后的参数取值组合进行测试。例如,通过已调试得到的比较好的参数取值组合,例如,信噪比大于设定值,分析得到缩小范围后的参数取值组合。
下面通过一个具体实施例对本申请中的设备调试方法进行更加细致的描述。在具体实施例中,以图2所示的调试系统架构为例进行说明,如图2所示,控制器通过SSH与N个设备服务器相连,每个设备服务器通过串口或网络与测试设备相连。图3为具体实施例的方法流程示意图,其中仍以图像画质调试方法为例。如图3所示,该方法包括:
步骤301,控制器接收若干调试模块信息和相应调试模块中的各调试参数及相应的参数取值范围。
本实施例中,控制器主要完成一个控制程序的功能,可以是某台服务器或电脑等。测试设备通常是进行图像处理的产品,可以是不同开发阶段的产品,例如FPGA、SV板或产品板等。在一个图像画质调试系统中,多个测试设备可以是不同类型的板卡,例如测试设备1为FPGA、测试设备2为SV板、测试设备3为产品板等。
调试模块信息用于指示具体的调试模块有哪些,可以是指示一个或多个调试模块。对应每个调试模块,指示该调试模块的各调试参数及其参数取值范围。参数取值范围可以是取值区间,或者也可以是离散的取值数值。该参数取值范围可以由测试人员设定后发送给控制器,控制器接收相应的信息。在此基础上,当调试系统完成对某调试模块的部分参数取值组合的测试后,还可以根据测试结果更新该调试模块对应各调试参数的参数取值范围。
具体调试模块信息、参数及参数取值范围可以通过各种形式来承载,例如通过文件、消息或表格的形式等。本实施例中,通过一个列表记录调试模块信息,如表1所示,表1为调试模块信息表,用于指示包括调试模块EE、NR等;还可以通过与调试模块对应的另一个列表记录该调试模块的参数及参数取值范围,如表2所示,表2为对应EE调试模块的参数和参数取值范围表,用于指示EE调试模块中包括的参数以及各参数的取值范围。
表1
表2
其中:
EE:Edge Enhancement 边缘增强
NR:噪声
步骤302,控制器对应每个调试模块,根据接收的相应调试模块中各调试参数的参数取值范围,生成相应调试模块中各调试参数的多种参数取值组合。
本步骤对于每个调试模块的处理均相同,下面以对调试模块X的处理为例进行说明。
根据步骤301的处理,确定调试模块X的各调试参数以及每个调试参数的参数取值范围。其中,参数取值范围可以是包括该参数的所有可能取值,也可以仅包括该参数的部分可能取值。在生成各调试参数的多种参数取值组合时,可以是在各参数取值范围内生成所有参数取值组合,或者也可以在各参数取值范围内生成部分参数取值组合,例如可以按照设定的步长对各参数进行取值选择,再将选择出的各参数取值进行组合。如果参数取值范围能够覆盖所有参数的所有可选取值,同时生成的参数取值组合也包括各参数取值范围内的所有参数取值组合,那么进行的测试就是所有可能参数取值组合的测试,最终能够找到绝对意义上的最佳参数取值组合,但是这样的处理会需要更多的设备和资源进行全量参数取值组合的测试;如果参数取值范围未覆盖所有参数的所有可选取值,或者,生成的参数取值组合并不包括各个参数取值范围内的所有参数取值组合,那么最终找到的可能不是真正最佳的参数取值组合,但是能够节省进行测试的设备和资源,提高图像画质调试的速度。因此,具体各参数取值范围的设定以及按照什么样的规则生成多种参数取值组合,可以根据实际的设备处理能力、系统资源和图像画质调试需求来综合确定。
对于生成的各种参数取值组合,可以利用文件或表格等形式来保存。本实施例中以文件的形式进行保存。具体地,可以将每种参数取值组合保存为一个配置文件,例如config0.ini、config1.ini等;可以在配置文件的内容中保存参数取值组合,或者,还可以直接利用参数取值组合作为配置文件的名称,例如,Strength100-overshootthmax5-overshootthmin2-filter3x3.ini文件表示参数strength取值为100,参数overshootth_max取值为5,参数overshootth_min取值为2,参数filter取值为3x3。对应每种参数取值组合都生成一个配置文件,每个调试模块则对应一个配置文件群,除此之外还可以额外生成一个配置文件,用于记录相应调试模块需要测试的参数取值组合的个数,也就是配置文件群中的配置文件个数。
通过本步骤确定出需要进行测试的各种参数取值组合,可能对应一个或多个测试模块。接下来,针对每种参数取值组合进行测试,得到测试结果,并根据测试结果评估该参数取值组合是否可用。其中对于每个参数取值组合进行的测试和评估处理均相同,下面以其中一个参数取值组合为例进行说明,将该参数取值组合称为当前参数取值组合。
步骤303,对应当前参数取值组合,控制器在若干测试设备中选择一个测试设备作为当前测试设备。
本实施例中,在控制器侧保存各测试设备的当前忙闲状态。具体地,可以在控制器初始化时获取各测试设备的忙闲状态,在调试系统运行过程中,实时更新测试设备的状态。控制器对应当前参数取值组合A选择一个测试设备作为当前测试设备。通常可以选择一个当前空闲的测试设备作为当前测试设备,以提高资源利用率;同时,为在控制器中实时记录各测试设备的当前状态,可以在选择当前测试设备后,在控制器侧记录该当前测试设备的当前状态为忙。如果当前没有空闲的测试设备,控制器可以根据预设的规则选择,例如随机选择等。
步骤304,控制器将当前参数取值组合发送给与当前测试设备相连的设备服务器。
本实施例中,控制器和各个测试设备是通过设备服务器相连的,因此,当需要指示当前测试设备针对当前参数取值组合进行测试时,需要通过与该当前测试设备相连的设备服务器进行指示,也就是控制器将当前参数取值组合发送给与当前测试设备相连的设备服务器,并通知设备服务器指示当前测试设备进行相应测试。
本实施例中,参数取值组合是以配置文件的形式保存的,因此本步骤中将参数取值组合发送给设备服务器时可以直接将参数取值组合所在的配置文件发送给设备服务器,并向设备服务器指示出将相应配置文件发送给哪个测试设备,即指示哪个设备为当前测试设备。具体指示形式可以是通过消息来指示,或者也可以直接在配置文件中携带当前测试设备的信息。
在本实施例的具体实现时,控制器在选择出当前测试设备后,可以发出握手,当测试设备显示空闲正常且可连接,则可以建立通信,通过SSH或者网络下发配置文件。
步骤305,设备服务器根据当前参数取值组合生成当前测试设备的可执行命令,发送给当前测试设备和标杆设备。
设备服务器根据控制器的通知确定当前测试设备,接收携带当前参数组合的配置文件,解析该配置文件,生成发送给当前测试设备的可执行命令,该可执行命令用于指示当前测试设备按照当前参数组合进行测试处理,并反馈测试结果。
最简单地,可以在配置文件中直接写入当前测试设备的可执行命令,设备服务器在接收并解析配置文件后,提取当前测试设备的可执行命令转发给当前测试设备。或者,配置文件中也可以包括进行相关测试的指示信息,设备服务器根据该指示信息和当前参数取值组合,自行生成当前测试设备的可执行命令发送给当前测试设备。指示信息例如是,设备服务器解析控制器发来的配置文件,把配置文件变成一行一行的命令行发给测试设备去运行。
另外,为了对测试设备的测试结果进行评估,通常可以将测试结果与标杆预期图像进行对比,而为得到标杆预期图像,通常利用标杆设备中相同的调试模块进行处理,标杆设备得到标杆预期图像的处理可以是预先进行,也可以是与测试设备同步进行。本实施例中就是标杆设备与测试设备同步进行处理的,因此,设备服务器在将参数取值组合发送给当前测试设备的同时,还需要将该参数取值组合对应的调试模块信息发送给标杆设备。
步骤306,当前测试设备接收可执行命令,进行测试操作并向设备服务器反馈测试结果。
当前测试设备接收可执行命令后,初始化相应的调试模块,并分配资源,按照解析出的参数取值组合运行相应的调试模块,生成测试结果反馈给设备服务器。重新初始化设备,等待后续可执行命令输入。
步骤307,标杆设备根据设备服务器发送的信息确定调试模块,利用调试模块进行处理后得到处理结果,并反馈给设备服务器。
标杆设备接收设备服务器发送的信息,确定出调试模块,利用该调试模块进行处理,将处理结果反馈给设备服务器,用于对当前测试设备的测试结果进行评估。其中,处理结果可以是前述标杆预期图像。
步骤308,设备服务器将当前测试设备的测试结果和标杆设备的处理结果发送给控制器,并通知控制器当前测试设备和标杆设备已空闲。
步骤309,控制器评估当前参数取值组合是否可用。
根据当前测试设备反馈的测试结果进行评估,其中最简单地,可以直接对测试结果和预期结果进行相似度的计算,并根据相似度结果确定所述当前测试设备进行测试的参数取值组合是否可用。在本发明实施例中,测试结果优于预期结果则确定当前参数取值组合可用,否则确定当前参数取值组合不可用。例如,可以根据测试结果和对应预期结果计算图像全区域或部分区域的信噪比,当信噪比大于等于设定的预期信噪比时确定当前参数取值组合可用,当计算得到的信噪比小于设定的预期信噪比时确定当前参数取值组合不可用。
又例如,欧式距离(两个图像越接近,距离越小,数值越小)和余弦相似度等方法判定(越接近1的效果越好)相似度。其中,欧式距离方法可以设置阈值,当欧式距离小于设置的阈值,认为当前参数取值组合可用。
本实施例中,评估当前参数取值组合时还可以根据当前测试设备的测试结果与标杆设备的处理结果进行比较,若二者的相似度超过设定的阈值,则确定当前参数取值组合可用,否则,确定当前参数取值组合不可用。对于可用的参数取值组合,可以保留其配置文件到可用组,对于不可用的参数取值组合,将其配置文件存入废弃组。
至此,对于当前参数取值组合的调试处理结束。对于每个参数取值组合的处理都可以按照步骤303-309的处理进行。其中,对于不同参数取值组合,可以同步进行调试处理,例如,为不同的参数取值组合选择不同的测试设备,不同的测试设备按照各自的参数取值组合同步进行测试处理;或者,对于不同参数取值组合也可以顺次逐个进行调试处理,在上一个参数取值组合的调试结束后,再按照步骤303-309进行下一个参数取值组合的调试。
通过上述步骤303-309的处理对所有需要调试的参数取值组合进行测试处理,确定各个参数取值组合是否可用,接下来执行步骤310选择最佳参数取值组合。
步骤310,对应每个调试模块,在该调试模块对应的所有可用参数取值组合中,选择最佳参数取值组合。
在某调试模块对应的所有可用参数取值组合中选择最佳参数取值组合的方式可以是与参数取值组合的评估方式相对应的。例如若评估参数取值组合是否可用时,根据测试结果与标杆设备的处理结果的相似度来进行,那么可以在所有可用参数取值组合中选择测试结果与标杆设备的处理结果相似度最高的参数取值组合作为最佳参数取值组合。
至此,本实施例中的图像画质调试方法结束。在上面的实施例中,控制器通过设备服务器与测试设备相连,因此在发送参数取值组合的信息时通过设备服务器进行,可以由设备服务器来解析相应的参数取值组合信息,并生成测试设备可识别的可执行命令。如果调试系统中的控制器与各个测试设备直接相连,那么控制器在向测试设备发送相应的参数取值组合时,为简化测试设备的处理,可以由控制器直接生成测试设备的可执行命令,指示测试设备按照指定的参数取值组合对相应的调试模块进行测试,生成测试结果并反馈。利用上述本申请及其实施例的处理,可以自动实现对于调试模块中各种需要进行测试的参数取值组合的配置,遍历各种参数取值组合进行测试,不需要测试人员深入了解各个调试模块的算法原理,大大降低了对于调试人员和测试人员的要求,提高了测试效率。
下面给出一个具体的例子说明上述图像画质调试方法。
对于边缘增强(Edge Enhancement,EE)模块,针对这个模块调试的最优效果是,图像线条都比较清晰、无断线、无锯齿、无明显过曝、且最大限度不强化噪声。但是EE模块涉及的参数较多、参数范围也比较大、且所有参数调节都会互相影响,也会影响最终结果,下面举例几个比较常见和好理解的参数组合效果:
参数1):边缘强度strength参数,取值范围0-255。strength参数的数值越大边缘增强效果越明显,但随着勾边强度的加大,边缘锯齿和过曝现象越明显,且图像噪声也会被勾边放大。图4a和图4b分别为strength参数取10和取100的效果示意图,从效果看,虽然勾边强度大,图像轮廓清晰,但并非越大越好。
参数2):边缘曝光抑制门限overshootth_min和overshootth_max,可明显改善边缘增强导致的过曝显现。一般门限最小值overshootth_min为0到255,门限最大值overshootth_max为0到255,在具体取值时,只要最大值大于最小值即可。假定在边缘强度strength=100时,调节边缘曝光抑制门限为较小值,可以改善边缘和曝光现象;若门限最大值和最小值都设置在5以内,可见如图5所示的效果图,边缘平滑,锯齿减弱,基本无过曝,噪声平滑。
参数3):针对高频区域,通常会设计不同的滤波器filter,滤波器的矩阵较小时通常勾边较细致,滤波器的矩阵较大时通常勾边线条相对粗一些,如图6a所示为滤波器的矩阵大小为3x3时的图像效果示意图,如图6b所示为滤波器的矩阵大小为5x5时的图像效果示意图。
下面给出基于上述三个参数进行EE模块调试的处理流程:
1)调试工程师给出调试模块表(即前述表1)和参数范围表(即前述表2)。其中,关于表2的内容,相对较为简单地,可以直接按照接口参数范围给出,或者根据经验值给出一个较小的贴切范围。
2)控制器解析两个表格为config.ini文件群和一个总表configtable.ini。
其中,总表Configtable.ini,体现总的调试参数取值组合的总个数,具体内容可以包括:
“
Config0.ini : Strength100-overshootthmax5- overshootthmin2-filter3x3.ini
Config1.ini : Starength100-overshootthmax5- overshootthmin2-filter5x5.ini
Confign.ini : ……
…
”
Config.ini文件群中的每个配置文件体现一个参数取值组合的调试,该配置文件中可以包括对应于参数取值组合的测试设备需要配置的参数和各参数的参数值,且参数组合、参数值和可执行命令一一对应,例如Config0.ini文件可以包括:
“
Devide num 0 #第一组设备,控制器获得
Devide status 可设置约定值 #可与控制器建立连接端
Init mode EE #初始化模块
Strength 100 #模块参数值
Overshootthmax 5
Overshootthmin 2
Inputfile xx #调试指定场景图像
Outputfile xx #调试结果输出文件名,可与配置文件同名,扩展名改为指定图像格式。
”
接下来设备服务器解析Config0.ini为测试设备端的可执行命令。测试设备运行命令,结果返回给设备服务器,最后传给控制器。控制器进行图像相似度比较,最终给出此次config0.ini的分类,可用还是不可用,一次调试结束。
控制器自动读取configtable.ini的下一个配置文件config1.ini,直到所有config*.ini全部完成分类。且根据相似度给出最优的图像调试参数取值组合,本EE模块的调试结束。这里所说的最优的参数取值组合,例如根据设定标杆的算法,比如PSNR,那就是越大越好,或者大于设置阈值即可;欧式距离(两个图像越接近,距离越小,数值越小越好)和余弦相似度法(越接近1的效果越好)。如果有多组最优值,可以从中选出一组。
上述即为本申请中设备调试方法的具体实现。本申请中还提供一种设备调试的控制器,可以用于实施上述调试方法,该设备调试控制器最基本地包括接口单元、处理单元和组合确定单元。
其中,接口单元,用于接收若干调试模块信息和相应调试模块中各调试参数的参数取值范围;还用于下发参数取值组合和接收测试结果。处理单元,用于根据接口单元接收的相应调试模块中各调试参数的参数取值范围,生成相应调试模块中各调试参数的多种参数取值组合;还用于对应每个调试模块的每种参数取值组合,在若干测试设备中选择一个测试设备作为当前测试设备,将相应的参数取值组合通过接口单元下发给当前测试设备,以对相应调试模块进行测试。组合确定单元,用于根据接口单元接收的每个调试模块的所有参数取值组合的测试结果,确定对应每个调试模块的最佳参数取值组合。
上述本申请提供的控制器和若干测试设备构成设备调试系统。其中测试设备用于在被控制器选择为当前测试设备后,按照对应的参数取值组合,对该测试设备中的相应调试模块进行测试生成相应参数取值组合的测试结果,并向控制器反馈测试结果。
另外,设备调试系统还可以进一步包括若干设备服务器,每个设备服务器分别与若干测试设备和控制器连接;
基于该包括设备服务器的结构,控制器中的接口单元,用于将当前测试设备对应的参数取值组合下发给与当前测试设备相连的设备服务器,以通过设备服务器生成当前测试设备的可执行命令并发送给当前测试设备;
与当前测试设备相连的设备服务器,用于根据接收的参数取值组合,生成当前测试设备的可执行命令发送给当前测试设备;其中,可执行命令用于针对相应参数取值组合进行对应调试模块的测试;还用于接收当前测试设备的测试结果,并转发给控制器。
通过上述本申请中图像画质的调试方法和系统,在进行图像画质调试时,不需要调试人员和测试人员深入了解图像算法,降低对工程师调试经验的要求,且可以在算法间无差别给出最佳的调试参数组合值;同时,还能够提高调试效率,使调试人员有更多精力专注更多的算法模块调试。每次调试自动进行,节省调试和测试人员的时间,减少调试工程师和测试工程师工作量。测试效果转化为数字化管理,调试过程更不需调试和测试人员参与。最重要地,在整个项目周期的各个阶段均可复用上述图像画质的调试方法和系统。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (11)
1.一种设备调试的方法,其特征在于,包括:
控制器接收若干调试模块信息和相应调试模块中的各调试参数及相应的参数取值范围;
所述控制器对应每个调试模块,根据接收的相应调试模块中各调试参数的参数取值范围,生成相应调试模块中各调试参数的多种参数取值组合;
对应每个调试模块的每种参数取值组合,所述控制器在若干测试设备中选择一个测试设备作为当前测试设备,将相应的参数取值组合下发给所述当前测试设备,以对相应调试模块进行测试;
所述控制器根据每个调试模块的所有参数取值组合的测试结果,确定对应每个调试模块的最佳参数取值组合。
2.根据权利要求1所述的方法,其特征在于,所述控制器根据每个调试模块的所有参数取值组合的测试结果,确定对应每个调试模块的最佳参数取值组合,包括:
所述控制器将所述测试结果与标杆设备中对相同调试模块的处理结果进行比较,判断所述当前测试设备进行测试的参数取值组合是否可用。
3.根据权利要求2所述的方法,其特征在于,该方法进一步包括:根据可用的参数取值组合,更新相应调试模块中各调试参数的参数取值范围,或者,更新生成的所述多种参数取值组合。
4.根据权利要求1所述的方法,其特征在于,所述将相应的参数取值组合下发给所述当前测试设备包括:
所述控制器将所述当前测试设备对应的参数取值组合下发给与所述当前测试设备相连的设备服务器,以通过所述设备服务器生成所述当前测试设备的可执行命令并发送给所述当前测试设备;其中,所述可执行命令用于针对相应的参数取值组合进行对应调试模块的测试。
5.根据权利要求4所述的方法,其特征在于,所述控制器向连接多个测试设备的设备服务器下发所述参数取值组合时进一步通知该设备服务器在所述当前测试设备上进行测试处理,并反馈测试结果。
6.根据权利要求2所述的方法,其特征在于,所述标杆设备中对相同调试模块的处理结果是预先处理得到的,或者,是在所述当前测试设备进行测试时所述标杆设备进行处理得到的。
7.根据权利要求2所述的方法,其特征在于,判断所述当前测试设备进行测试的参数取值组合是否可用的方式包括:
计算所述测试结果与所述处理结果之间的相似度,并根据相似度结果确定所述当前测试设备进行测试的参数取值组合是否可用。
8.根据权利要求1或4所述的方法,其特征在于,所述生成相应调试模块中各调试参数的多种参数取值组合包括:生成相应调试模块对应的配置文件群;其中,所述配置文件群包括多个配置文件,每个配置文件中包括对应调试模块中各调试参数的一种参数取值组合;
所述将相应的参数取值组合下发给所述当前测试设备包括:将相应的参数取值组合所在的配置文件下发给所述当前测试设备。
9.根据权利要求1所述的方法,其特征在于,所述控制器选择一个测试设备时选择当前空闲的测试设备;
该方法进一步包括:所述控制器在向所述当前测试设备下发参数取值组合时,进一步将所述当前测试设备设置为非空闲;所述控制器在接收到所述测试结果后,将所述当前测试设备设置为空闲。
10.一种用于设备调试的控制器,其特征在于,包括:接口单元、处理单元和组合确定单元;
所述接口单元,用于接收若干调试模块信息和相应调试模块中各调试参数的参数取值范围;还用于下发参数取值组合和接收测试结果;
所述处理单元,用于根据所述接口单元接收的相应调试模块中各调试参数的参数取值范围,生成相应调试模块中各调试参数的多种参数取值组合;还用于对应每个调试模块的每种参数取值组合,在若干测试设备中选择一个测试设备作为当前测试设备,将相应的参数取值组合通过所述接口单元下发给所述当前测试设备,以对相应调试模块进行测试;
所述组合确定单元,用于根据所述接口单元接收的每个调试模块的所有参数取值组合的测试结果,确定对应每个调试模块的最佳参数取值组合。
11.根据权利要求10所述的控制器,其特征在于,该控制器所在的调试系统进一步包括若干设备服务器,每个所述设备服务器分别与若干所述测试设备和所述控制器连接;
所述接口单元,用于将所述当前测试设备对应的参数取值组合下发给与所述当前测试设备相连的设备服务器,以通过所述设备服务器生成所述当前测试设备的可执行命令并发送给所述当前测试设备;其中,可执行命令用于针对相应参数取值组合进行对应调试模块的测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210218143.4A CN114331917B (zh) | 2022-03-08 | 2022-03-08 | 一种设备调试的方法和控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210218143.4A CN114331917B (zh) | 2022-03-08 | 2022-03-08 | 一种设备调试的方法和控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114331917A true CN114331917A (zh) | 2022-04-12 |
CN114331917B CN114331917B (zh) | 2022-06-21 |
Family
ID=81033450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210218143.4A Active CN114331917B (zh) | 2022-03-08 | 2022-03-08 | 一种设备调试的方法和控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114331917B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030081274A1 (en) * | 2000-10-27 | 2003-05-01 | Fuji Photo Film Co., Ltd. | Test print producing method and photograph image printing method using the same |
CN105224599A (zh) * | 2015-08-31 | 2016-01-06 | 浪潮(北京)电子信息产业有限公司 | 一种数据库自动优化配置的方法及系统 |
JP2016085367A (ja) * | 2014-10-27 | 2016-05-19 | 株式会社沖データ | 画像形成装置及び画像形成方法 |
CN109359057A (zh) * | 2018-12-25 | 2019-02-19 | 上海创功通讯技术有限公司 | 一种应用测试方法及设备 |
CN110162481A (zh) * | 2019-05-31 | 2019-08-23 | 北京星网锐捷网络技术有限公司 | 一种软件测试方法、装置、设备以及存储介质 |
CN110941424A (zh) * | 2019-11-28 | 2020-03-31 | Oppo广东移动通信有限公司 | 编译参数优化方法、装置及电子设备 |
CN112214390A (zh) * | 2019-07-09 | 2021-01-12 | 腾讯科技(深圳)有限公司 | 一种测试用例生成方法、装置、系统、设备及介质 |
CN113392607A (zh) * | 2020-03-12 | 2021-09-14 | 华为技术有限公司 | 一种确定配置参数的方法及相关设备 |
-
2022
- 2022-03-08 CN CN202210218143.4A patent/CN114331917B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030081274A1 (en) * | 2000-10-27 | 2003-05-01 | Fuji Photo Film Co., Ltd. | Test print producing method and photograph image printing method using the same |
JP2016085367A (ja) * | 2014-10-27 | 2016-05-19 | 株式会社沖データ | 画像形成装置及び画像形成方法 |
CN105224599A (zh) * | 2015-08-31 | 2016-01-06 | 浪潮(北京)电子信息产业有限公司 | 一种数据库自动优化配置的方法及系统 |
CN109359057A (zh) * | 2018-12-25 | 2019-02-19 | 上海创功通讯技术有限公司 | 一种应用测试方法及设备 |
CN110162481A (zh) * | 2019-05-31 | 2019-08-23 | 北京星网锐捷网络技术有限公司 | 一种软件测试方法、装置、设备以及存储介质 |
CN112214390A (zh) * | 2019-07-09 | 2021-01-12 | 腾讯科技(深圳)有限公司 | 一种测试用例生成方法、装置、系统、设备及介质 |
CN110941424A (zh) * | 2019-11-28 | 2020-03-31 | Oppo广东移动通信有限公司 | 编译参数优化方法、装置及电子设备 |
CN113392607A (zh) * | 2020-03-12 | 2021-09-14 | 华为技术有限公司 | 一种确定配置参数的方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114331917B (zh) | 2022-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111190755B (zh) | 应用程序的功能异常处理方法及装置 | |
CN111639002B (zh) | 休眠功耗测试方法、系统、计算机设备和存储介质 | |
CN114331917B (zh) | 一种设备调试的方法和控制器 | |
CN106533823B (zh) | 一种自动化测试系统、方法及其可循环发送装置 | |
CN115049061A (zh) | 基于区块链的人工智能推理系统 | |
CN113010742A (zh) | 数据处理方法、装置、设备及介质 | |
CN113407469B (zh) | 一种参数配置方法及装置、存储介质及电子装置 | |
US8185337B1 (en) | System, method, and computer program product for testing and re-testing integrated circuits | |
EP3691261A1 (en) | Method and device for locating video service fault, and storage medium | |
CN116991677A (zh) | 时序异常检测方法、装置、终端设备以及存储介质 | |
CN111064864A (zh) | 设置畸变校正参数的方法、装置和内窥镜系统 | |
CN114301812B (zh) | 报文处理结果的监控方法、装置、设备以及存储介质 | |
CN113918459A (zh) | 一种用于脚本性能测试的自探测方法 | |
CN113595814B (zh) | 消息延迟检测方法、装置、电子设备及存储介质 | |
CN104754328B (zh) | 一种分布式视频质量诊断方法 | |
CN113923443A (zh) | 一种网络录像机测试方法、装置及计算机可读存储介质 | |
CN113691799A (zh) | 直播流交互控制方法及其相应的装置、设备、介质 | |
CN107360055B (zh) | 通信网络实时性测试方法和装置 | |
CN113570333B (zh) | 一种适用于集成的流程设计方法 | |
CN114020590A (zh) | 压测方法及装置、电子设备及存储介质 | |
CN116504267B (zh) | 一种音频信号通道的快速部署装置及方法 | |
CN115811464B (zh) | 基于多维整合数据的网络故障智能分析方法、装置和控制系统 | |
TWI802163B (zh) | 基於腳本的控制系統和控制方法 | |
CN115914039A (zh) | 一种网络性能监测装置及其监测方法 | |
CN115507050A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |