首页 / 专利分类库 / 电通信技术 / 算法调试方法、装置、设备及存储介质

算法调试方法、装置、设备及存储介质

申请号 CN202410138030.2 申请日 2024-01-30 公开(公告)号 CN118018609A 公开(公告)日 2024-05-10
申请人 深圳海星智驾科技有限公司; 发明人 贺刚;
摘要 本 申请 公开了一种 算法 调试方法、装置、设备及存储介质,涉及算法调试技术领域,该方法包括:通过待调试设备所连接的通讯网络连接所述待调试设备,所述待调试设备为需要算法调试的设备;获取所述待调试设备利用所述通讯网络共享的待调试算法;对所述待调试算法进行调试,获得目标算法;将所述目标算法基于所述通讯网络反馈至所述待调试设备,以完成所述待调试设备中算法的调试。在本申请中,利用可以共享待调试算法的通讯网络,获取待调试设备中需要调试的待调试算法,对待调试算法完成调试,获得目标算法后,再将调试好的目标算法反馈至待调试设备,避免在算 力 较低的待调试设备中调试待调试算法,因此提高了对算法的调试效率。
权利要求

1.一种算法调试方法,其特征在于,所述算法调试方法,包括:
通过待调试设备所连接的通讯网络连接所述待调试设备,所述待调试设备为需要算法调试的设备;
获取所述待调试设备利用所述通讯网络共享的待调试算法;
对所述待调试算法进行调试,获得目标算法;
将所述目标算法基于所述通讯网络反馈至所述待调试设备,以完成所述待调试设备中算法的调试。
2.如权利要求1所述的算法调试方法,其特征在于,所述对所述待调试算法进行调试,获得目标算法的步骤,包括:
调用预设工具链,基于所述工具链对所述待调试设备的功能节点与话题进分析,获得调试参考数据,并将所述调试参考数据进行展示;
获取用户基于所述调试参考数据修改的调试数据;
基于所述调试数据调试所述待调试算法,获得目标算法。
3.如权利要求2所述的算法调试方法,其特征在于,所述预设工具链包括可视化工具,所述基于所述工具链对所述待调试设备的功能节点与话题进分析,获得调试参考数据的步骤,包括:
运行所述待调试算法获得算法结果;
将所述算法结果转化为被所述可视化工具识别的展示话题;
基于所述可视化工具展示所述展示话题,所述展示话题为所述调试参考数据的一种。
4.如权利要求2所述的算法调试方法,其特征在于,所述预设工具链还包括话题回放工具,所述基于所述工具链对所述待调试设备的功能节点与话题进分析,获得调试参考数据的步骤,还包括:
基于所述话题回放工具获取所述待调试设备运行所述待调试算法的回放数据;
基于所述回放数据确定出现问题的场景信息;
基于所述场景信息对所述回放数据进行复盘,确定需要修改的问题点,所述问题点为所述调试参考数据的一种。
5.如权利要求4所述的算法调试方法,其特征在于,所述预设工具链还包括录制话题工具,所述基于所述工具链对所述待调试设备的功能节点与话题进分析,获得调试参考数据的步骤,还包括:
基于所述录制话题工具录制所述待调试设备运行所述待调试算法的运行数据;
按照所述运行数据的录制时间顺序保存所述运行数据,所述回放数据属于所述运行数据。
6.如权利要求1‑5任一项所述的算法调试方法,其特征在于,所述获取所述待调试设备利用所述通讯网络共享的待调试算法的步骤,包括:
获取所述待调试设备利用所述通讯网络共享的发布消息与订阅消息;
确定所述发布消息与所述订阅消息之间的关联关系;
基于所述关联关系获取所述通讯网络共享的待调试算法。
7.如权利要求6所述的算法调试方法,其特征在于,若所述通讯网络内还连接有外接其余设备,则所述确定所述发布消息与所述订阅消息之间的关联关系的步骤之后,还包括:
基于所述关联关系从所述通讯网络共享的待调试算法中筛选出所需调试的目标节点算法,并使所述外接其余设备获取对应的节点算法;
其中,若所述通讯网络内还连接所述外接其余设备,则所述待调试设备需将所述待调试算法按照发布消息与订阅消息划分为多个节点算法。
8.一种算法调试装置,其特征在于,所述算法调试装置包括:
连接模,用于通过待调试设备所连接的通讯网络连接所述待调试设备,所述待调试设备为需要算法调试的设备;
获取模块,用于获取所述待调试设备利用所述通讯网络共享的待调试算法;
调试模块,用于对所述待调试算法进行调试,获得目标算法;
反馈模块,用于将所述目标算法基于所述通讯网络反馈至所述待调试设备,以完成所述待调试设备中算法的调试。
9.一种算法调试设备,其特征在于,所述算法调试设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的算法调试程序,所述算法调试程序配置为实现如权利要求1至7中任一项所述的算法调试方法的步骤。
10.一种存储介质,其特征在于,存储介质上存储有实现算法调试方法的程序,实现算法调试方法的程序被处理器执行以实现如权利要求1至7中任一项所述算法调试方法的步骤。

说明书全文

算法调试方法、装置、设备及存储介质

技术领域

[0001] 本申请涉及算法调试技术领域,尤其涉及一种算法调试方法、装置、设备及存储介质。

背景技术

[0002] 高级辅助驾驶ADAS(Advanced Driving Assistance System)功能开发项目,一般实现预警类和控车类功能,以辅助用户避免行车过程中的危险,保障用户的行车安全。
[0003] 目前ADAS通常包括自动紧急制动、碰撞预警、车道偏离预警、自适应巡航以及车道居中保持等功能,为实现这些ADAS功能,对应的算法也会相对负责,且开发或调试这些算法需要的算也需要增加,若将车辆中控制芯片更换为高算力的芯片,会严重增加造车成本,为了不增加造车成本,通常会在现有的控制芯片中运行ADAS功能。但是,常用车辆中控制芯片的算力一般较低,而常用的在低算力芯片上调试算法需要通过SSH(ecure Shell,安全外壳协议)进行远程连接调试,且调试过程和硬件强绑定,需要将人跟着车走,导致调试效率低下。发明内容
[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] 图1为本申请实施例方案涉及的硬件运行环境的算法调试设备结构示意图;
[0043] 图2为本申请算法调试方法第一实施例的流程示意图;
[0044] 图3为本申请算法调试方法中多个外部设备连入通讯网络的拓扑示意图;
[0045] 图4为本申请算法调试方法第二实施例的流程示意图;
[0046] 图5为本申请算法调试方法中调用可视化工具链的示意图;
[0047] 图6为本申请算法调试方法中调用回访功能的示意图;
[0048] 图7为本申请算法调试方法中调用可视化工具的示意图;
[0049] 图8为本申请算法调试方法第三实施例的流程示意图;
[0050] 图9为本申请算法调试方法中多个外部设备的交互示意图;
[0051] 图10为本申请算法调试装置的结构配置示意图。
[0052] 本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0053] 应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0054] 参照图1,图1为本申请实施例方案涉及的硬件运行环境的算法调试设备结构示意图。
[0055] 如图1所示,该算法调试设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless‑FIdelity,WI‑FI)接口)。存储器1005可以是高速的随机存取存储器(Random Access Memory,RAM)存储器,也可以是稳定的非易失性存储器(Non‑Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
[0056] 本领域技术人员可以理解,图1中示出的结构并不构成对算法调试设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0057] 如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及算法调试程序。
[0058] 在图1所示的算法调试设备中,网络接口1004主要用于与其他设备进行数据通信;用户接口1003主要用于与用户进行数据交互;本申请算法调试设备中的处理器1001、存储器1005可以设置在算法调试设备中,所述算法调试设备通过处理器1001调用存储器1005中存储的算法调试程序,并执行本申请实施例提供的算法调试方法。
[0059] 本申请实施例提供了一种算法调试方法,参照图2,图2为本申请一种算法调试方法第一实施例的流程示意图。
[0060] 需要说明的是,本实施例的执行主体可以是所述算法调试设备,所述算法调试设备可以是个人电脑、智能手机、平板电脑等与待调试设备连接同一通讯网络的外部设备,还可以是其他可实现相同或相似功能的其他设备,本实施例对此不加以限制,在本实施例及下述各实施例中,以算法调试设备为例对本申请算法调试方法进行说明。
[0061] 在本实施例中,所述算法调试方法包括:
[0062] 步骤S10,通过待调试设备所连接的通讯网络连接所述待调试设备,所述待调试设备为需要算法调试的设备。
[0063] 其中,通讯网络可以是能够共享消息的局域网。
[0064] 其中,待调试设备为算力低下的控制设备,该控制设备可以是非自动驾驶车辆的整车控制设备或辅助控制设备,例如,具有高级辅助驾驶功能的控制设备等。
[0065] 需要说明的是,连接通讯网络可以选用对应的继承端口直接连接,也即,待调试算法的服务框架是统一的,且该服务框架提供参数配置、打印日志和保存日志等接口,以保证用户可以直接利用这些接口聚焦算法本身,以快开发和/或验证待调试算法,提升开发效率。其中,待调试算法可以是需要正在开发的算法,还可以已开发需要调试的算法。
[0066] 在具体实现中,连接待调试设备连接的通讯网络,利用服务框架的继承端口与待调试设备连接。
[0067] 步骤S20,获取所述待调试设备利用所述通讯网络共享的待调试算法。
[0068] 需要说明的是,通过通讯网络可以为待调试设备提供消息发布、消息订阅、服务请求和服务应答等功能;使待调试设备通过消息与服务与外部设备建立通讯关系,进而使待调试设备与各外部设备达到松耦合的节点关系,以实现用户在对待调试设备中的算法进行调式时,不需要用户前往现场进行调试,提高了调试的灵活性。
[0069] 需要说明的是,通讯网络共享的消息可以通过单播、多播、监听单播端口与监听多播端口实现,其中,监听单播端口和监听多播端口就是监听通讯网络内各个节点的发布和订阅关系,把通讯网络内节点分为单播组和多播组,从而消息实现局域网共享特点。其中,节点可以理解为待调试算法在待调试设备中运行时的运行节点,在待调试设备共享待调试算法时可以将待调试算法按照不同节点,共享至不同的外部设备。
[0070] 在具体实现中,调取与待调试设备之间或与其余外部设备之间的发布与订阅关系,确定自身属于单播组还是属于多播组,并利用对应的监听端口从局域网内获取待调试设备共享的待调试算法,以对该待调试算法进行调试。
[0071] 步骤S30,对所述待调试算法进行调试,获得目标算法。
[0072] 需要说明的是,将待调试设备中需要调试的待调试算法共享至连接通讯网络的外部设备中,以利用外部设备的算力与工具链对待调试算法进行可视化分析定位确定待调试算法的问题点,并对问题点进行调试,以减轻待调试设备算力较低的压力,使待调整设备中的算力可以专注于运行待调整算法。也即,待调试算法共享至算力较高的外部设备,在外部设备进行可视化调试,以提高对算法的调试效率。
[0073] 在具体实现中,若通讯网络中连接有多个外部设备,如图3所示,通过通讯网络(局域网)与发布与订阅关系待调试设备可以根据节点将待调试算法划分后,分布在不同的外部设备上,其中设备1、设备2和设备3各自的算法节点通过局域网实现消息互通,在外部设备对划分的待调试算法调试完成后,均通过通讯网络将调试后的目标算法共享至待调试设备,以实现待调试设备通过外力调试待调试算法,以提高算法调试的效率。
[0074] 在具体实现中,采用工具链对待调试设备运行待调试算法时的节点和话题进行分析、管理与保存,并展示分析结果,由用户根据展示的分析结果,确定调试待调试算法需要的参数,以根据该参数配置对待调试算法进行调试,获得复制到待调试设备中既可以直接运行的目标算法,并通过通讯网络的共享特点将目标算法反馈至待调试设备。
[0075] 步骤S40,将所述目标算法基于所述通讯网络反馈至所述待调试设备,以完成所述待调试设备中算法的调试。
[0076] 需要说明的是,利用通讯网络可以共享信息的特点将目标算法反馈至待调试设备,以实现待调试设备不能实现的功能。其中,共享的待调试算法、以及目标算法的文件格式均是相同的,以避免在通讯网络中连接有多个外部设备时,待调整设备可以根据运行节点的顺序接收目标算法,避免了在待调试设备中进行算法顺序的调整。
[0077] 在具体实现中,利用通讯网络与其余的外部设备互通消息,确定需要反馈目标算法的时间点,在该时间点将目标算法反馈至待调试设备,以使待调试设备可以获得已调试好的算法。
[0078] 本实施例提供一种算法调试方法,与现有技术中常用车辆中控制芯片的算力一般较低,而常用的在低算力芯片上调试算法的方法,需要调试过程和硬件强绑定走,导致调试效率低下相比,在本申请中,通过待调试设备所连接的通讯网络连接所述待调试设备,所述待调试设备为需要算法调试的设备;获取所述待调试设备利用所述通讯网络共享的待调试算法;对所述待调试算法进行调试,获得目标算法;将所述目标算法基于所述通讯网络反馈至所述待调试设备,以完成所述待调试设备中算法的调试。在本申请中,利用可以共享待调试算法的通讯网络,获取待调试设备中需要调试的待调试算法,对待调试算法完成调试,获得目标算法后,再将调试好的目标算法反馈至待调试设备,避免在算力较低的待调试设备中调试待调试算法,且由于与待调试设备是通过通讯网络连接的,所以在对待调试算法进行调试时,不需要与待调试设备硬绑定,通过通讯网络即可获取到共享的待调试算法,在待调试设备外将待调试算法调试好后再将调试好的目标算法反馈至待调试设备,避免因为待调试设备的算力较低,无法对待调整算法进行调整,因此提高了对算法的调试效率。
[0079] 参考图4,图4为本申请算法调试方法第二实施例的流程示意图。
[0080] 基于上述实施例,在本实施例中,所述对所述待调试算法进行调试,获得目标算法的步骤,包括:
[0081] 步骤S31,调用预设工具链,基于所述工具链对所述待调试设备的功能节点与话题进分析,获得调试参考数据,并将所述调试参考数据进行展示;
[0082] 步骤S32,获取用户基于所述调试参考数据修改的调试数据;
[0083] 步骤S33,基于所述调试数据调试所述待调试算法,获得目标算法。
[0084] 其中,预设工具链可以包括绘制节点图工具、话题显示工具、录制话题工具、话题回放工具、话题频率查询工具以及可视化工具等,具体不做限定。
[0085] 其中,预设工具链需要根据外部设备的不同设置不同的版本,虽然版本不同,但相同工具的功能是相同的。
[0086] 其中,参考数据可以包括功能节点的分析结果与分析过程。
[0087] 需要说明的是,利用工具链对待调试设备的功能节点进行分析可以理解为,利用工具链对待调试设备运行待调试算法时的节点进行分析,获取各节点的运行数据,并将该运行数据作为参考数据进行直观的展示,以使用户可以快速的通过参考数据确定算法问题点,以减少用户根据参考数据确定算法问题点的时间,提高对算法的调试效率。
[0088] 需要说明的是,利用工具链中的工具可以快速分析运行数据中各节点的话题,并将各节点的话题进行分析后进行展示,可以使用户可视化的从待调试算法中查找问题点,避免了用户通过文本或代码查找算法问题点,以减少用户根据参考数据确定算法问题点的时间,提高对算法的调试效率。
[0089] 在具体实现中,利用工具链中的工具对待调试设备运行待调试算法的运行数据进行分析,并将分析运行数据与分析过程进行展示,使用户可以根据展示的参考数据确定待调试算法的问题点,并根据问题点有针对性的输入调试数据,在获取到用户输入的调试数据根据调试数据调试待调试算法,以获得目标算法。
[0090] 在具体实现中,参考图5,其中,待调试设备为内部(板端),其特点为:算力低,没有可视化界面,需要通过远程SSH连接,需要通过linux指令进行相关操作;在内部(板端)上运行待调试算法节点和底盘以及传感器进行数据交互;外部设备称为外部(PC),其特点是算力高,配置高,硬盘存储容量大;内部(板端)和外部(PC)通过局域网连接,通过消息的局域网共享特点,实现消息互通,在外部(PC)端内配置有工具链,可以通过工具链中的录制话题工具对待调试设备运行待调试算法的过程进行录包,并该录包保存在本地;还可以通过外部(PC)的绘制节点图工具,查看节点关系图,判断系统是否正常运行;还可以通过在外部(PC)的话题显示工具,可以实时显示单个话题内容;还可以通过在外部(PC)的话题回放工具,可以回放数据包中的单个或多个话题;还可以通过在外部(PC)的话题频率查询工具,可以查看各个话题的频率等。
[0091] 可选地,所述预设工具链还包括录制话题工具,所述基于所述工具链对所述待调试设备的功能节点与话题进分析,获得调试参考数据的步骤,还包括:
[0092] 步骤S3a1,基于所述录制话题工具录制所述待调试设备运行所述待调试算法的运行数据;
[0093] 步骤S3a2,按照所述运行数据的录制时间顺序保存所述运行数据,所述回放数据属于所述运行数据。
[0094] 需要说明的是,利用录制话题工具可以录制待调试设备运行待调算法的过程,获得运行数据,并将运行数据按照录制的时间顺序保存在本地,以避免需要回访待调试设备运行待调试算法的运行时从待调试设备中拷贝。
[0095] 需要说明的是,由于录制话题工具可以录制待调整设备运行待调整算法的整个过程,可以保证每数据包之间的没有时间误差,且录制的数据包是按照时间顺序保存的,在后期回放数据时不需要对数据包做时间同步,以减少时间同步的步骤,进而提高对算法的调试效率。
[0096] 在具体实现中,调用工具链中的录制话题工具对待调试设备运行待调试算法的过程,获得运行数据,并按照录制时间顺序将运行数据保存至本地,以便在回放该运行数据时可以直接从本地调取。
[0097] 可选地,所述预设工具链还包括话题回放工具,所述基于所述工具链对所述待调试设备的功能节点与话题进分析,获得调试参考数据的步骤,还包括:
[0098] 步骤S3b1,基于所述话题回放工具获取所述待调试设备运行所述待调试算法的回放数据;
[0099] 步骤S3b2,基于所述回放数据确定出现问题的场景信息;
[0100] 步骤S3b3,基于所述场景信息对所述回放数据进行复盘,确定需要修改的问题点,所述问题点为所述调试参考数据的一种。
[0101] 需要说明的是,在需要回放运行数据,通过回放的运行数据确定待调试算法中需要修改的问题点时,可以调用话题回放工具,从运行数据中获取需要回放的回放数据,通过回放数据可以做到场景复现,快速定位算法问题点,修改问题点后,可重新部署,检查问题是否有解决,快速闭环问题。
[0102] 需要说明的是,通过录制话题工具与话题回放工具还可以在遇到问题时,利用录制话题工具快速录制数据包,在将该数据包交给开发人员,由开发人员远程定位并解决问题,从而提升开发、测试和问题闭环效率。
[0103] 在具体实现中,参考图6,内部(板端)上运行待调试算法节点,内部(板端)不与底盘以及传感器不进行数据交互时,可以调用话题回放工具,利用话题回放工具复现内部(板端)运行待调试算法的场景,以快速定位问题点,并将问题点进行展示,使对该算法进行调整或部署,并检查问题是否解决,若没有解决继续调试,直至解决该问题,获得调试数据。
[0104] 可选地,所述预设工具链包括可视化工具,所述基于所述工具链对所述待调试设备的功能节点与话题进分析,获得调试参考数据的步骤,包括:
[0105] 步骤S3c1,运行所述待调试算法获得算法结果;
[0106] 步骤S3c2,将所述算法结果转化为被所述可视化工具识别的展示话题;
[0107] 步骤S3c3,基于所述可视化工具展示所述展示话题,所述展示话题为所述调试参考数据的一种。
[0108] 需要说明的是,通过可视化工具可以算法转化为可以被可视化工具链识别的、类似图片的话题,以实现文本、直线、箭头、点、图像和多边形等可视化效果,使用户可以根据这些图形即可快速识别出对应的算法内容,以提高用户确定调试数据的效率。
[0109] 在具体实现中,参考图7,通过局域网共享的消息,订阅底盘、传感器和算法节点的消息,经过可视化工具处理后向用户展示标注有不同符号的表征算法的展示话题,以使用户可以根据该展示话题快速找到问题点。
[0110] 参考图8,图8为本申请算法调试方法第三实施例的流程示意图。
[0111] 基于上述实施例,在本实施例中,所述获取所述待调试设备利用所述通讯网络共享的待调试算法的步骤,包括:
[0112] 步骤S1,获取所述待调试设备利用所述通讯网络共享的发布消息与订阅消息;
[0113] 步骤S2,确定所述发布消息与所述订阅消息之间的关联关系;
[0114] 步骤S30a,基于所述关联关系获取所述通讯网络共享的待调试算法。
[0115] 其中,消息采用具有高效、低带宽和支持自定义等优点的google proto格式。
[0116] 需要说明的是,通过发布消息与订阅消息可以确定与待调试设备之间存在任务关系,通过订阅消息可以知道待调试设备需要向哪一个外部设备发布的待调试算法以及与待调试算法,也即,由于待调试设备可能会将需要调试的算法根据功能节点划分为多个待调试算法,通过获取发布消息定订阅消息之间的关联关系,可以精准的确定需要获取的待调试算法。
[0117] 在具体实现中,从通讯网络中获取待调试设备共享的发布消息与订阅消息,再确定订阅消息与发布消息之间的关联关系,也即,确定本设备订阅的消息,已根据该消息从通讯网络中获取该消息对应的待调试算法。
[0118] 或,若待调试设备主动发送待调试算法,则可以根据关联关系验证待调试设备是否发送错误。
[0119] 可选地,若所述通讯网络内还连接有外接其余设备,则所述确定所述发布消息与所述订阅消息之间的关联关系的步骤之后,还包括:
[0120] 步骤S30b,基于所述关联关系从所述通讯网络共享的待调试算法中筛选出所需调试的目标节点算法,并使所述外接其余设备获取对应的节点算法;
[0121] 其中,若所述通讯网络内还连接所述外接其余设备,则所述待调试设备需将所述待调试算法按照发布消息与订阅消息划分为多个节点算法。
[0122] 在具体实现中,若通讯网络中连接有多个外接其余设备,则待调试设备可以共享待调试算法的功能节点,外部设备可以根据自身的功能订阅可以处理的节点算法,以在待调试设备共享根据待调试算法划分的节点算法后,可以根据关联关系精准的获得需要在本地调试的目标节点算法。
[0123] 在具体实现中,参考图9,在通讯网络内连接有多个外部设备时,通讯网络可以通过多播将待调节设备的待调试算法或消息发送的外部设备中,具体地,待调试设备(Node2)与外部设备(Node1)分别加入通讯网络的多播组,待调试设备与外部设备分别监听对应的多播端口,以获取通讯网络中的信息,通过待调试设备向多端口发送消息至多播组,其中,消息包含IP和单播端口,由多播组将机,外部设备通过从多播组接收到该消息,并从该消息中获取待调试设备的IP和单播端口,再通过单播端口与外部设备的对应单播端口进行消息的交互,也即,待调试设备可以利用多播扩大共享消息的范围,在与外部设备连接交互后,有多播交互转换单播交互,可以提高消息的传递效率。
[0124] 本申请还提供一种算法调试装置,参考图10,算法调试装置包括:
[0125] 连接模块1001,用于通过待调试设备所连接的通讯网络连接所述待调试设备,所述待调试设备为需要算法调试的设备;
[0126] 获取模块1002,用于获取所述待调试设备利用所述通讯网络共享的待调试算法;
[0127] 调试模块1003,用于对所述待调试算法进行调试,获得目标算法;
[0128] 反馈模块1004,用于将所述目标算法基于所述通讯网络反馈至所述待调试设备,以完成所述待调试设备中算法的调试。
[0129] 可选地,调试模块1003,还用于调用预设工具链,基于所述工具链对所述待调试设备的功能节点与话题进分析,获得调试参考数据,并将所述调试参考数据进行展示;获取用户基于所述调试参考数据修改的调试数据;基于所述调试数据调试所述待调试算法,获得目标算法。
[0130] 可选地,所述预设工具链包括可视化工具;
[0131] 调试模块1003,还用于运行所述待调试算法获得算法结果;将所述算法结果转化为被所述可视化工具识别的展示话题;基于所述可视化工具展示所述展示话题,所述展示话题为所述调试参考数据的一种。
[0132] 可选地,所述预设工具链还包括话题回放工具;
[0133] 调试模块1003,还用于基于所述话题回放工具获取所述待调试设备运行所述待调试算法的回放数据;基于所述回放数据确定出现问题的场景信息;基于所述场景信息对所述回放数据进行复盘,确定需要修改的问题点,所述问题点为所述调试参考数据的一种。
[0134] 可选地,所述预设工具链还包括录制话题工具;
[0135] 调试模块1003,还用于基于所述录制话题工具录制所述待调试设备运行所述待调试算法的运行数据;按照所述运行数据的录制时间顺序保存所述运行数据,所述回放数据属于所述运行数据。
[0136] 可选地,获取模块1002,还用于获取所述待调试设备利用所述通讯网络共享的发布消息与订阅消息;确定所述发布消息与所述订阅消息之间的关联关系;基于所述关联关系获取所述通讯网络共享的待调试算法。
[0137] 可选地,若所述通讯网络内还连接有外接其余设备,则获取模块902,还用于基于所述关联关系从所述通讯网络共享的待调试算法中筛选出所需调试的目标节点算法,并使所述外接其余设备获取对应的节点算法;其中,若所述通讯网络内还连接所述外接其余设备,则所述待调试设备需将所述待调试算法按照发布消息与订阅消息划分为多个节点算法。
[0138] 本申请算法调试装置的具体实施方式与上述算法调试方法各实施例基本相同,在此不再赘述。
[0139] 本申请实施例提供了一种存储介质,且存储介质存储有一个或者一个以上程序,一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述任一项的算法调试方法的步骤。
[0140] 本申请存储介质具体实施方式与上述算法调试方法各实施例基本相同,在此不再赘述。
[0141] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个等”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0142] 上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
[0143] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器空调器,或者网络设备等)执行本申请各个实施例的方法。
[0144] 以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效机构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。
QQ群二维码
意见反馈