掌桥专利:专业的专利平台
掌桥专利
首页

一种无人机城市巡检系统及方法

文献发布时间:2023-06-19 18:35:48


一种无人机城市巡检系统及方法

技术领域

本发明涉及无人机遥感领域,具体而言,涉及一种无人机城市巡检系统及方法。

背景技术

在现有技术中,由于城市巡查的目标过多,城市地形较为复杂,城市治理传统的工作方式依赖于大量的人力、物力,导致造成大量的人力、物力以及资源的浪费,执法人员现场巡查导致工作效率十分低下,灵活度不高,不能满足智能化以及实时化,阻碍城市治理。

发明内容

本发明要解决的技术问题是,城市巡查的目标过多,城市地形较为复杂,城市治理传统的工作方式依赖于大量的人力、物力,导致造成大量的人力、物力以及资源的浪费,执法人员现场巡查导致工作效率十分低下,灵活度不高,不能满足智能化以及实时化,阻碍城市治理。

为解决上述问题,本发明提供一种无人机城市巡检系统,包括:

存储管理模块,用于将目标数据集上传并保存至底层存储单元,所述底层存储单元还保存目标检测模型和无人机飞行路径;

分布式缓存模块,用于将所述目标数据集缓存至分布式缓存单元;

分布式训练模块,用于读取所述目标数据集,对所述目标检测模型进行分布式训练,得到训练完成的所述目标检测模型;

路径规划模块,用于计算、规划所述无人机飞行路径,控制无人机按照所述无人机飞行路径进行巡航;

目标检测模块,用于使用所述目标检测模型对特定检测目标进行检测。

可选的,所述分布式训练模块包括:深度学习框架,所述分布式训练模块还用于,通过所述深度学习框架对所述目标数据集进行读取,利用所述深度学习框架对所述目标检测模型进行分布式训练。

可选的,所述系统还包括硬件设施模块,所述分布式训练模块包括模型并行训练单元和数据并行训练单元,所述模型并行训练单元用于,构建深度学习框架的镜像,所述硬件设施模块包括至少一个节点,在所述每个所述节点上设置至少一个所述深度学习框架的镜像,通过所述深度学习框架的镜像对所述目标数据集进行处理,得到所述目标检测模型;

所述数据并行训练单元用于,将所述目标数据集进行拆分,得到目标数据集分块,通过所述深度学习框架,对所述目标数据集分块进行处理,得到所述目标检测模型。

可选的,所述分布式缓存模块还用于:当需要训练目标检测模型时,将所述目标数据集从所述底层存储单元中读出并缓存至所述分布式缓存单元中,所述分布式缓存单元用于使所述目标数据集与所述深度学习框架位于相同节点上。

可选的,所述分布式训练模块还用于,根据所述目标检测模型是否满足预设标准,判断是否完成所述分布式训练,若所述目标检测模型满足所述预设标准,则判断所述分布式训练完成。

可选的,所述目标数据集还包括测试数据集,所述分布式训练模块还用于,输入所述测试数据集,对所述目标检测模型进行测试;

当所述目标检测模型对所述测试数据集进行处理后得到的标注数据与所述测试数据集中的所述标注数据之间的准确率超过准确率阈值时,判断满足所述预设标准。

可选的,所述路径规划模块还用于,采用栅格法对所述特定检测目标所在的城市进行三维建模,根据飞行路径成本函数获取飞行路径成本代价值;

其中,所述采用栅格法对所述特定检测目标所在的城市进行三维建模,包括,将所述特定检测目标所在的城市的三维环境划分为第一预设数量的长、宽、高相同的正方体,对每个正方体赋予参数,所述参数包括飞行风险、是否存在障碍物和人群密度;

所述根据飞行路径成本函数获取飞行路径成本代价值,包括,所述飞行路径成本函数包括目标函数和约束函数,所述目标函数用于获取所述无人机飞行路径的总长度和飞行风险代价,所述约束函数用于获取无人机的偏航角约束和俯仰角约束。

可选的,所述路径规划模块包括路径规划算法库,所述路径规划算法库用于获取飞行路径,所述路径规划算法库包括遗传算法、粒子群算法、蚁群算法、Cross-entropyMethod、Q-Learning算法和深度强化学习算法中的多种算法,所述遗传算法还包括轮盘赌算法;

其中,所述遗传算法包括:随机产生第二预设数量的飞行路径,根据所述飞行路径成本函数获取每条飞行路径的适应度值;将所述适应度值输入所述轮盘赌算法,输出得到新一轮的飞行路径的集合,通过将所述新一轮的飞行路径的集合中的任意两条所述预设飞行路径中的所述路径点进行交换,后随机改变预设飞行路径中所述路径点的坐标,

其中,将所述根据所述飞行路径成本函数获取每条飞行路径的适应度值,将所述适应度值输入所述轮盘赌算法,输出得到新一轮的飞行路径的集合,通过将所述新一轮的飞行路径的集合中的任意两条所述预设飞行路径中的所述路径点进行交换,后随机改变预设飞行路径中所述路径点的坐标,作为一个循环,判断是否达到第一预设循环次数,若达到第一预设循环次数,则将所述计算完成的适应度值最高的飞行路径作为目标飞行路径;

所述粒子群算法包括:获取第三预设数量的飞行路径,一条所述预设飞行路径对应一个粒子,根据所述成本函数获取每个所述粒子的适应度值,利用种群更新公式进行更新,其中,将所述根据所述成本函数获取每个所述粒子的适应度值,利用种群更新公式进行更新,作为一个循环,判断是否达到第二预设循环次数,若达到第二预设循环次数,则将所述适应度值最高的所述粒子对应的预设飞行路径作为目标飞行路径;

所述蚁群算法包括:在所述蚁群算法中设置第四预设数量的蚂蚁,将所述特定检测目标所在城市的三维建模分割为预定个数的相同体积的正方体,根据每个所述正方体的连接信息获取所述正方体的中心与其他正方体的中心之间的距离和所述正方体的信息素浓度;

根据所述蚂蚁进行爬行,获取蚂蚁爬行路径,根据所述蚂蚁爬行路径,获取、更新所述正方体的信息素浓度,所述蚂蚁根据预设规则和待选的所述正方体的信息素浓度,从待选的所述正方体中选择一个正方体作为下一个经过的正方体,所述蚂蚁从起点爬行至终点作为一个爬行循环,蚂蚁进行第一预设次数的循环后,将包含所述正方体的信息素浓度最高的所述蚂蚁爬行路径作为所述目标飞行路径;

所述Cross-entropy Method包括:根据无人机当前的所述飞行路径成本代价值和已存在的所述路径点的坐标,获得向量state,根据无人机选择所述路径点的动作,获得向量action;根据所述路径点的数目和所述飞行路径成本代价值,获得参数k,根据公式:k·state=action,计算出k值矩阵,根据所述k值矩阵,根据预设标准,对所述k值矩阵进行采样,得到k值组,所述k值组包括第五预设数量的k值,根据所述k值组获取下一步动作的回报值,判断所述下一步动作的回报值是否超过回报值阈值,将所述下一步动作的回报值超过所述回报值阈值的k值组成筛选完成的新的K值组,

其中,将所述根据预设标准,对所述k值矩阵进行采样,得到k值组,所述k值组包括第五预设数量的k值,根据所述k值组获取下一步动作的回报值,判断所述下一步动作的回报值是否超过回报值阈值,将所述下一步动作的回报值超过所述回报值阈值的k值组成筛选完成的新的K值组,作为一个筛选循环,选择所述筛选完成的新的k值组,进行所述筛选循环,当所述筛选完成的新的k值组开始收敛时,得到所述目标飞行路径;

所述Q-Learning算法包括:初始化Q_table;将无人机所述飞行路径成本代价值和路径点的集合作为状态s,将无人机选择所述路径点作为动作a,将无人机选择所述路径点后所述飞行路径成本代价值的增量的倒数为奖励r,执行所述动作a,得到所述状态s和所述奖励r,判断所述状态s是否存在于Q_table中,若不存在,则将所述状态s加入至所述Q_table中,按照预设更新标准对所述Q_table进行更新,若存在,则按照预设更新标准对所述Q_table进行更新,当达到终点后,得到更新完成的所述Q_table,

其中将所述按照预设更新标准对所述Q_table进行更新,当达到终点后,得到更新完成的所述Q_table,作为一个更新循环,将所述Q_table进行第二预设次数的更新循环,当所述Q_table收敛时,得到更新完成后的Q_table,使用所述更新完成后的Q_table进行在线路径规划;

所述深度强化学习算法包括:将无人机所述飞行路径成本代价值和路径点的集合作为所述状态S

可选的,所述目标检测模块包括目标检测算法库,所述目标检测算法库包含针对预设目标使用的所述目标数据集和所述目标检测模型,所述目标检测模型用于对城市中所述预设目标进行快速检测,所述预设目标包括:排污口、垃圾堆放、在建道路、共享单车和占道经营;

其中,用于排污口的所述目标检测模型包括:获取设置排污口的常规区域,在检测图像中寻找所述常规区域,将所述常规区域剪裁至预设大小后,输入所述目标检测模型对排污口进行检测;

用于垃圾堆放的所述目标检测模型包括:使用可形变卷积网络对垃圾堆放进行检测;

用于在建道路的所述目标检测模型包括:使用旋转目标的YOLO V5s模型对在建道路进行检测;所述YOLO V5s模型在训练过程中,使用第一训练数据集对所述YOLO V5s模型进行训练,所述第一训练数据集包括遥感图像,冻结所述YOLO V5s模型的预设部分的权重,使用第二训练数据集对所述YOLO V5s模型进行训练,得到训练完成的YOLO V5s模型,所述第二训练数据集包括无人机图像;

用于共享单车的所述目标检测模型包括:使用所述YOLO V5s模型选择Diou-NMS对共享单车进行检测;

在所述YOLO V5s模型增加弱小目标检测层,所述弱小目标检测层用于使所述YOLOV5s模型检测弱小目标更加敏感;

在所述YOLO V5s模型增加目标计数器,所述目标计数器用于记录所述目标的数量;

用于占道经营的所述目标检测模型包括:将所述检测图像缩放至原图像的固定倍数,所述固定倍数为三种预设倍率,所述检测图像按照所述三种预设倍率依次缩放,得到六张检测图像,将所述六张检测图像进行水平翻转后,将所述六张检测图像输入所述目标检测模型对占道经营进行检测,后使用非极大值抑制进行处理,得到检测结果。

本发明的无人机城市巡检系统,为城市目标检测提供了一套完整的无人机城市巡检系统,实现了对城市众多目标智能化检测,提高了城市目标检测的效率,根据需要实时改变检测目标,根据需要实时对飞行路径进行规划,提高工作效率,城市治理更加完善。

第二方面,本发明还提供一种无人机城市巡检方法,包括:将目标数据集上传并保存至底层存储单元,所述底层存储单元还用于保存目标检测模型和无人机飞行路径;后将所述目标数据集缓存至分布式缓存单元;读取所述目标数据集,对所述目标检测模型进行分布式训练,得到训练完成的所述目标检测模型;计算、规划无人机飞行路径,控制无人机按照所述无人机飞行路径进行巡航;使用所述目标检测模型对特定检测目标进行检测。

本发明所述的无人机城市巡检方法,为城市目标检测提供了一套完整的无人机城市巡检方法,实现了对城市众多目标智能化检测,提高了城市目标检测的效率,根据需要实时改变检测目标,根据需要实时对飞行路径进行规划,提高工作效率,城市治理更加完善。

附图说明

图1为本发明实施例中无人机城市巡检系统示意图;

图2为本发明实施例中无人机城市巡检系统示意图;

图3为本发明实施例中遗传算法流程图;

图4为本发明实施例中粒子群算法流程图;

图5为本发明实施例中蚁群算法流程图;

图6为本发明实施例中强化学习算法流程图;

图7为本发明实施例中无人机城市巡检方法流程图;

图8为本发明实施例中无人机城市巡检方法流程图;

图9为本发明实施例中无人机城市巡检方法流程图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

结合图1所示,本实施例提供一种无人机城市巡检系统,包括:

存储管理模块,用于将目标数据集上传并保存至底层存储单元,所述底层存储单元还保存目标检测模型和无人机飞行路径;

分布式缓存模块,用于将所述目标数据集缓存至分布式缓存单元;

分布式训练模块,用于读取所述目标数据集,对所述目标检测模型进行分布式训练,得到训练完成的所述目标检测模型;

路径规划模块,用于计算、规划所述无人机飞行路径;

目标检测模块,用于使用所述目标检测模型对特定检测目标进行检测。

其中,存储管理模块用于,将用户根据检测目标制作的目标数据集上传并保存至底层存储单元,底层存储单元还用于保存与检测目标对应的目标检测模型和海量的无人机数据,所述无人机数据包括图片、原始视频、经识别处理后的结果视频和无人机轨迹飞行数据。

其中,分布式缓存模块用于,当需要对检测目标进行检测时,分布式缓存模块将目标数据集从底层存储单元提取出来,并在分布式缓存单元中进行缓存,分布式缓存单元用于应对所述系统对检测目标识别的实时性要求较高的功能需求,为存储数据提供内存,实现针对无人机数据更快、更高效的数据处理。

其中,分布式训练模块用于,读取在分布式缓存单元中缓存的目标数据集,将目标数据集输入分布式训练模块,对检测模型进行训练,当训练完成时,得到与检测目标对应的检测模型。

其中,路径规划模块用于,在无人机执行任务前,针对无人机飞行路径做路径规划,在无人机执行任务时,针对无人机当前飞行路径做路径规划。

其中,目标检测模块用于,使用与检测目标对应的检测模型,对所述检测目标进行识别,最终得到标注有检测目标的检测数据。

本发明所述的无人机城市巡检系统,为城市目标检测提供了一套完整的无人机城市巡检系统,实现了对城市众多目标智能化检测,提高了城市目标检测的效率,当需要改变检测目标时,根据需要实时改变检测目标,当需要改变无人机飞行路径时,根据需要实时对飞行路径进行规划,提高工作效率,城市治理更加完善。

本申请实施例中,结合图2所示,所述分布式训练模块包括:深度学习框架,所述分布式训练模块还用于,通过所述深度学习框架对所述目标数据集进行读取,利用所述深度学习框架对所述目标检测模型进行分布式训练。

在本实施例中,深度学习框架用于实现分布式训练模块的分布式训练功能,深度学习框架读取缓存在分布式缓存单元的目标数据集,对检测模型进行训练,深度学习框架可以是多种、不同版本。

本申请的一个实施例中,深度学习框架可以采用Tensorflow或Pytorch,或其他现有技术中具有相同或相似功能的框架或软件,读取目标数据集后,对检测模型进行模型并行训练。

本实施例的无人机城市巡检系统,通过分布式训练模块中的深度学习框架对检测模型进行训练,由于可以支持不同版本的深度学习框架,方便更好的针对检测模型进行训练。

本申请实施例中,结合图2所示,所述系统还包括硬件设施模块,所述分布式训练模块包括模型并行训练单元和数据并行训练单元,所述模型并行训练单元用于,构建深度学习框架的镜像,所述硬件设施模块包括至少一个节点,在所述每个所述节点上设置至少一个所述深度学习框架的镜像,通过所述深度学习框架的镜像对所述目标数据集进行处理,得到所述目标检测模型;

所述数据并行训练单元用于,将所述目标数据集进行拆分,得到目标数据集分块,通过所述深度学习框架,对所述目标数据集分块进行处理,得到所述目标检测模型。

在本实施例中,模型并行训练单元用于,针对深度学习框架构建与深度学习框架相同的镜像,安装在硬件设施模块的节点上,硬件设施模块具有多个节点,每个节点上可以安装多个深度学习框架的镜像,避免与环境产生冲突,进行多节点并行训练;

数据并行训练单元用于,将目标数据集进行切分成为目标数据集分块,每个目标数据集分块具有相同的数据量,每个节点上的深度学习框架针对目标数据集分块进行并行化训练,训练每个目标数据集分块,都是训练相同的模型参数和相同的计算任务,只是处理的数据不同,最后所有节点将所有目标数据集分块处理完成后,得到最终的目标检测模型。

本实施例的无人机城市巡检系统,通过分布式训练模块,构建深度学习框架的镜像,并将其镜像安装在服务器集群的节点上,相当于多个深度学习框架对目标数据集进行并行化训练,提升了检测模型的训练速度,同时通过将目标数据集进行拆分,来缩小每个节点训练的工作量,减少对检测模型的训练时间,提升目标检测准备工作的效率。

本申请实施例中,所述分布式缓存模块还用于:当需要训练目标检测模型时,将所述目标数据集从所述底层存储单元中读出并缓存至所述分布式缓存单元中,所述分布式缓存单元用于使所述目标数据集与所述深度学习框架位于相同节点上。

在本实施例中,所述分布式缓存模块用于,当需要训练目标检测模型时,目标数据集存储于底层存储单元中,将目标数据集从底层存储单元调用出来,缓存至分布式缓存单元中,由于分布式缓存单元位于离深度学习框架更近的位置上,所以深度学习框架对目标数据集的调用速度会很快,进而提升训练数据的可访问性和I/O速度,提升对检测模型的训练效率。

本申请的一个实施例中,分布式缓存单元可以采用Alluxio分布式缓存单元对目标数据集进行缓存,底层存储单元还包括Ceph存储、Hbase存储、HDFS存储,其中,Ceph存储用于储存无人机检测到的图像数据、视频数据,Hbase存储用于存储无人机飞行轨迹数据,HDFS存储可以用于存储检测目标对应的目标数据集,对于上述数据的搜索与分析,可以采用ES单元(Elastic Search,弹性搜索单元)作为各类数据的元数据归档与管理解决方案,同时可提供包括模糊查询在内的各类查询方式。

所述ES单元是一个分布式的搜索和分析引擎,可提供近实时的搜索和分析功能,适用于包括文本、数字、地理空间、结构化和非结构化数据等在内的所有类型数据;同时,基于ES单元可实现多种类型的数据检索功能,满足各类数据检索需要;一般在ES单元中使用索引来存储特定字段的多条记录,在集群中会将索引划分为多个分片,从而将索引均匀的分布在ES单元集群的各个节点上;所述ES单元在索引构建的过程中会根据数据量的大小和集群节点的数量来设计合适的索引分片,索引分片N的计算公式为:

其中D为索引业务数据量大小,N

针对历史飞行任务查询,需要在ES单元中创建无人机飞行任务索引并归档所有飞行任务的元数据,包括飞行任务的时间字段、空间范围字段、飞手字段、轨迹存储路径字段等信息。

本实施例的无人机城市巡检系统,通过将目标数据集提前缓存至分布式缓存单元中,提升训练数据的可访问性和I/O速度,提升对检测模型的训练效率,通过这种索引分片设置方式有效地提高了数据写入和查询的性能,通过无人机飞行任务相关的各类元数据的归档及索引构建,可应对无人机综合应用系统中历史飞行任务的各类查询,包括时空查询、关键字查询和模糊查询,且检索效率较高。

本申请实施例中,所述分布式训练模块还用于,根据所述目标检测模型是否满足预设标准,判断是否完成所述分布式训练,若所述目标检测模型满足所述预设标准,则判断所述分布式训练完成。

在本实施例中,分布式训练模块判断检测模型的训练情况,判断检测模型的训练情况是否符合预设标准,若检测模型的训练情况满足预设标准,则判断分布式训练完成,若检测模型的训练情况不满足预设标准,则继续进行分布式训练。

本实施例的无人机城市巡检系统,通过根据预设标准判断分布式训练的状态,保证每个检测模型都能有效的对检测目标进行检测。

本申请实施例中,所述目标数据集还包括测试数据集,所述分布式训练模块还用于,输入所述测试数据集,对所述目标检测模型进行测试;当所述目标检测模型对所述测试数据集进行处理后得到的标注数据与所述测试数据集中的所述标注数据之间的准确率超过准确率阈值时,判断满足所述预设标准。

在本实施例中,用户需要收集特定目标的数据集,对检测模型进行训练,目标数据集的格式需满足下面的条件,目标数据集包括图像文件夹、标注文件夹,图像文件夹中包括测试数据集,标注文件夹包括测试标签集,与图像文件夹对应,文件夹中包含图像的标注内容;

此外,标注文件夹还包括classes.txt文件,里面标记了待检测目标的具体类别;

当分布式训练模块判断是否完成分布式训练时,需要将测试数据集输入目标检测模型,测试目标检测模型的准确度,当目标检测模型的准确率大于或等于准确率阈值时,判断分布式训练完成。

本实施例的无人机城市巡检系统,分布式训练模块采用测试数据集对训练后的目标检测模型进行测试,判断目标检测模型对于目标的检测准确率是否达到要求,保证目标检测模型对每个目标的检测,都能有较高的准确率。

本申请实施例中,所述路径规划模块还用于,采用栅格法对所述特定检测目标所在的城市进行三维建模,根据飞行路径成本函数获取飞行路径成本代价值;

其中,所述采用栅格法对所述特定检测目标所在的城市进行三维建模,包括,将所述特定检测目标所在的城市的三维环境划分为第一预设数量的长、宽、高相同的正方体,对每个正方体赋予参数,所述参数包括飞行风险、是否存在障碍物和人群密度;

所述根据飞行路径成本函数获取飞行路径成本代价值,包括,所述飞行路径成本函数包括目标函数和约束函数,所述目标函数用于获取所述无人机飞行路径的总长度和飞行风险代价,所述约束函数用于获取无人机的偏航角约束和俯仰角约束。

在本实施例中,路径规划模块使用栅格法对城市真实环境进行三维建模,并根据目标函数和约束函数获取成本函数,成本函数作为优化目标函数;

其中,使用栅格法建模包括,将三维环境划分为长、宽、高统一的正方体组合,并对每个正方体赋予参数;其中,“∞”代表该正方体所对应的空间中存在障碍物,“0”代表该正方体所对应的空间中没有障碍物,且人群密度为0,用最小外包立方体对城市环境中的障碍物进行有效的建模、表示;

其中,飞行路径成本函数(F)由目标函数(J)和约束函数(C)组成,J中考虑无人机飞行路径的总长度和飞行风险代价,C中考虑无人机的偏航角约束、俯仰角约束,航线长度项的表示为:

其中,(x

将城市三维空间按高度划分,则在高度k的风险矩阵为:

在高度k无人机飞行经过的路径矩阵为:

即如果无人机经过某个正方体,l值为1,否则为0;

将风险矩阵与路径矩阵相乘,便得到无人机飞行路径上的风险代价值:

可以得到J:

J=J

无人机在第i个航点处的偏航角表示为:

设定一个阈值θ

航偏角约束项定义为:

俯仰角约束项的定义为:

其中,β

可得到C:

C=Con

综上,可得到F:

D=J+C

由此获取成本函数。

本实施例的无人机城市巡检系统,路径规划模块通过栅格法对检测目标所在城市进行建模,以及获取成本函数和成本代价值,便于进行无人机飞行路径的规划,使所述系统更加智能化。

本申请实施例中,所述路径规划模块包括路径规划算法库,所述路径规划算法库用于获取飞行路径,所述路径规划算法库包括遗传算法、粒子群算法、蚁群算法、Cross-entropy Method、Q-Learning算法和深度强化学习算法中的多种算法,所述遗传算法还包括轮盘赌算法;

其中,所述遗传算法包括:随机产生第二预设数量的飞行路径,根据所述飞行路径成本函数获取每条飞行路径的适应度值;将所述适应度值输入所述轮盘赌算法,输出得到新一轮的飞行路径的集合,通过将所述新一轮的飞行路径的集合中的任意两条所述预设飞行路径中的所述路径点进行交换,后随机改变预设飞行路径中所述路径点的坐标,

其中,将所述根据所述飞行路径成本函数获取每条飞行路径的适应度值,将所述适应度值输入所述轮盘赌算法,输出得到新一轮的飞行路径的集合,通过将所述新一轮的飞行路径的集合中的任意两条所述预设飞行路径中的所述路径点进行交换,后随机改变预设飞行路径中所述路径点的坐标,作为一个循环,判断是否达到第一预设循环次数,若达到第一预设循环次数,则将所述计算完成的适应度值最高的飞行路径作为目标飞行路径;

所述粒子群算法包括:获取第三预设数量的飞行路径,一条所述预设飞行路径对应一个粒子,根据所述成本函数获取每个所述粒子的适应度值,利用种群更新公式进行更新,其中,将所述根据所述成本函数获取每个所述粒子的适应度值,利用种群更新公式进行更新,作为一个循环,判断是否达到第二预设循环次数,若达到第二预设循环次数,则将所述适应度值最高的所述粒子对应的预设飞行路径作为目标飞行路径;

所述蚁群算法包括:在所述蚁群算法中设置第四预设数量的蚂蚁,将所述特定检测目标所在城市的三维建模分割为预定个数的相同体积的正方体,根据每个所述正方体的连接信息获取所述正方体的中心与其他正方体的中心之间的距离和所述正方体的信息素浓度;

根据所述蚂蚁进行爬行,获取蚂蚁爬行路径,根据所述蚂蚁爬行路径,获取、更新所述正方体的信息素浓度,所述蚂蚁根据预设规则和待选的所述正方体的信息素浓度,从待选的所述正方体中选择一个正方体作为下一个经过的正方体,所述蚂蚁从起点爬行至终点作为一个爬行循环,蚂蚁进行第一预设次数的循环后,将包含所述正方体的信息素浓度最高的所述蚂蚁爬行路径作为所述目标飞行路径;

所述Cross-entropy Method包括:根据无人机当前的所述飞行路径成本代价值和已存在的所述路径点的坐标,获得向量state,根据无人机选择所述路径点的动作,获得向量action;根据所述路径点的数目和所述飞行路径成本代价值,获得参数k,根据公式:k·state=action,计算出k值矩阵,根据所述k值矩阵,根据预设标准,对所述k值矩阵进行采样,得到k值组,所述k值组包括第五预设数量的k值,根据所述k值组获取下一步动作的回报值,判断所述下一步动作的回报值是否超过回报值阈值,将所述下一步动作的回报值超过所述回报值阈值的k值组成筛选完成的新的K值组,

其中,将所述根据预设标准,对所述k值矩阵进行采样,得到k值组,所述k值组包括第五预设数量的k值,根据所述k值组获取下一步动作的回报值,判断所述下一步动作的回报值是否超过回报值阈值,将所述下一步动作的回报值超过所述回报值阈值的k值组成筛选完成的新的K值组,作为一个筛选循环,选择所述筛选完成的新的k值组,进行所述筛选循环,当所述筛选完成的新的k值组开始收敛时,得到所述目标飞行路径;

所述Q-Learning算法包括:初始化Q_table;将无人机所述飞行路径成本代价值和路径点的集合作为状态s,将无人机选择所述路径点作为动作a,将无人机选择所述路径点后所述飞行路径成本代价值的增量的倒数为奖励r,执行所述动作a,得到所述状态s和所述奖励r,判断所述状态s是否存在于Q_table中,若不存在,则将所述状态s加入至所述Q_table中,按照预设更新标准对所述Q_table进行更新,若存在,则按照预设更新标准对所述Q_table进行更新,当达到终点后,得到更新完成的所述Q_table,

其中将所述按照预设更新标准对所述Q_table进行更新,当达到终点后,得到更新完成的所述Q_table,作为一个更新循环,将所述Q_table进行第二预设次数的更新循环,当所述Q_table收敛时,得到更新完成后的Q_table,使用所述更新完成后的Q_table进行在线路径规划;

所述深度强化学习算法包括:将无人机所述飞行路径成本代价值和路径点的集合作为所述状态S

在本实施例中,遗传算法、粒子群算法、蚁群算法和Cross-entropy Method为离线路径规划算法,Q-Learning算法和深度强化学习算法为在线路径规划算法;

其中,结合图3所示,遗传算法包括:

步骤一:随机产生一组个体,即一组路径集合;

步骤二:按照成本函数进行评价,得到每个个体的适应度值,即每条路径的适应度值;

步骤三:根据轮盘赌算法的规则,按照适应度大小对种群进行选择,淘汰部分个体,即丢掉部分路径;

步骤四:将任意两条预设飞行路径中的路径点进行交换,得到目标飞行路径;

步骤五:随机改变预设飞行路径中路径点的坐标;

结合图4所示,粒子群算法包括:

步骤一:将种群以随机的方式进行初始化,确定每个粒子的最初位置和初始速度;

步骤二:每个粒子按照自己的路径点生成一条光滑的三维路径;

步骤三:根据所述成本函数计算每个粒子的适应度值;

步骤四:根据上一代的结果更新种群,更新公式为:

x

v

其中,x

步骤五:达到迭代次数后,停止执行,选择适应度值最高的粒子所对应的路径作为目标飞行路径。

结合图5所示,蚁群算法包括:

步骤一:定义起点和终点,设置蚂蚁个数;

步骤二:每个蚂蚁根据各点之间路径上的信息素浓度决定下一个经过点,下式为蚂蚁在点i访问下一个点j时的选择概率的计算公式为:

式中,τ

步骤三:当所有蚂蚁完成一次“巡游”之后,更新路径上的信息素浓度,所述更新信息素浓度的计算公式为:

τ

式中,

步骤四:重复步骤二、步骤三,得到一条最优路径作为目标飞行路径;

其中,在根据各点之间路径上的信息素浓度决定下一个经过点时,采用概率选择,增加算法的随机性,不易陷入局部最优的情况。

Cross-entropy Method包括:根据无人机当前的成本代价值和已存在的路径点的坐标,获得向量state,所述向量state的维度大小为(1,3*路径点数目+成本代价值),根据无人机选择路径点的动作,获得向量action,所述向量action的维度大小为(6,1),根据路径点的数目和成本代价值,获得参数k,所述参数的维度大小为(3*路径点数目+成本代价值,6),根据公式:k·state=action,计算出k值矩阵,根据所述k值矩阵,获取无人机的所述目标飞行路径;

结合Cross-entropy Method包括:

步骤一:假定参数k属于正态分布,设置均值向量μ和方差向量σ

步骤二:以均值向量μ和方差向量σ

步骤三:计算由n组参数k1、k2、…kn计算得到的下一步动作的回报值r;

步骤四:选择回报值最高的m组(m<n)参数,计算这组参数的均值和方差,并对μ和σ

步骤五:判断是否收敛,否则继续执行。

结合图6所示,Q-Learning算法包括:

步骤一:初始化Q_table,列代表无人机从所在位置前往下一个位置的6个方向,所述六个方向包括上、下、左、右、前和后,行代表智能体agent的状态;

步骤二:按照贪心策略算法选择下一步的动作a并执行,得到状态s;

步骤三:检验所述状态s是否存在于Q_table中,不存在则加上;

检测是否到达了终点,如果是则返回成功,如果不是则根据奖励规则返回r,奖励规则如下:

步骤四:更新Q_table;

Q(s,a)←Q(s,a)+lr[r+γmax

式中,Q(s,a)是动作价值函数,即一张表;lr为学习率,r是状态s时采取动作a的奖励,γ是折扣率,max

步骤五:判断是否返回成功,如果没有则从步骤二继续循环迭代。

将无人机所述飞行路径成本代价值和路径点的集合作为所述状态S

深度强化学习算法包括:

步骤一:使用“栅格法”生成多组三维虚拟网格,来模拟城市三维环境,包括障碍物、起点和终点;

步骤二:构建一个卷积神经网络,该网络输入数据的规格是步骤一中,三维虚拟网格的长、宽、高,输出为无人机下一步的指定动作的Q值Q(s,a,θ

步骤三:获取损失函数,求解参数θ

L

式中,r+γmaxQ(s′,a′,θ

步骤四:进行随机梯度下降,训练上述网络,当权重参数达到收敛时,停止训练;

其中,可以采用采用mini-batch的方式进行随机梯度下降。

本实施例的无人机城市巡检系统,路径规划模块通过采用不同的算法进行路径规划,同时还可以根据实际需求进行指定,使无人机飞行更加灵活,无人机飞行更加智能化。

本申请实施例中,所述目标检测模块包括目标检测算法库,所述目标检测算法库包含针对预设目标使用的所述目标数据集和所述目标检测模型,所述目标检测模型用于对城市中所述预设目标进行快速检测,所述预设目标包括:排污口、垃圾堆放、在建道路、共享单车和占道经营;

其中,用于排污口的所述目标检测模型包括:获取设置排污口的常规区域,在检测图像中寻找所述常规区域,将所述常规区域剪裁至预设大小后,输入所述目标检测模型对排污口进行检测;

用于垃圾堆放的所述目标检测模型包括:使用可形变卷积网络对垃圾堆放进行检测;

用于在建道路的所述目标检测模型包括:使用旋转目标的YOLO V5s模型对在建道路进行检测;所述YOLO V5s模型在训练过程中,使用第一训练数据集对所述YOLO V5s模型进行训练,所述第一训练数据集包括遥感图像,冻结所述YOLO V5s模型的预设部分的权重,使用第二训练数据集对所述YOLO V5s模型进行训练,得到训练完成的YOLO V5s模型,所述第二训练数据集包括无人机图像;

用于共享单车的所述目标检测模型包括:使用所述YOLO V5s模型选择Diou-NMS对共享单车进行检测;

在所述YOLO V5s模型增加弱小目标检测层,所述弱小目标检测层用于使所述YOLOV5s模型检测弱小目标更加敏感;

在所述YOLO V5s模型增加目标计数器,所述目标计数器用于记录所述目标的数量;

用于占道经营的所述目标检测模型包括:将所述检测图像缩放至原图像的固定倍数,所述固定倍数为三种预设倍率,所述检测图像按照所述三种预设倍率依次缩放,得到六张检测图像,将所述六张检测图像进行水平翻转后,将所述六张检测图像输入所述目标检测模型对占道经营进行检测,后使用非极大值抑制进行处理,得到检测结果。

在本实施例中,目标检测模块包括目标检测算法库,目标检测算法库包含针对预设目标使用的目标数据集和检测模型,所述预设目标为城市目标检测中的常见目标,方便检测模型用于对城市中预设目标进行快速检测,预设目标包括:排污口、垃圾堆放、在建道路、共享单车和占道经营;

其中,针对用于排污口的所述目标检测模型的优化包括:由于排污口样本较少,则使用数据增强的方法扩充样本,使用生成对抗网络生成同类但不同形态的排污口,然后使用一种基于语义分割和数据融合的方法将排污口粘贴到合理的位置,通过这种方法来显著增强排污口的数量和多样性;

针对用于垃圾堆放的所述目标检测模型的优化包括:由于垃圾堆放通常形状不规则、外观不显眼、边界模糊,则使用可形变卷积网络对无人机影像中的垃圾堆放进行提取,通过对预定义的锚框的额外偏移回归量来预测垃圾堆放目标的边界框。

针对用于在建道路的所述目标检测模型的优化包括:

由于在建道路的形状不规则,大多呈现为倾斜分布状态,则使用旋转目标的YOLOV5s模型对在建道路目标进行检测;

由于无人机视角下的在建道路数据集规模较小,为了提高检测模型的泛化性能,保证在真实城市环境下的检测能力,收集使用同样俯视视角下的遥感图像对旋转目标的YOLOV5s模型进行预训练,再使用无人机视角下的在建道路图像运用迁移学习的方法,用预训练的权重初始化网络,冻结部分初始权重,其余权重用于计算损失并由优化器更新,从而使模型更快收敛;

使用定向边界框来对检测目标进行标注,定向边界框的角度范围为±90°;

在YOLO V5s的网络中对四个CSP模块中分支的卷积层去掉,将输入特征图与另一个分支的输出特征图直接相连,减少网络权重参数的数量和体积。

针对用于共享单车的所述目标检测模型的优化包括:由于城市街景中无人机视角下的共享单车目标尺寸小、分辨率低,则增加针对于弱小检测目标的检测头,使得对弱小目标特征更加敏感;

在检测模型的输出框添加一个目标计数器,统计区域内检测出的共享单车数量,以便工作人员后续处理;

由于共享单车往往集中停放,目标重叠遮挡,则将检测图像经过放大/缩小、翻转变换后输入到模型中,将得到的结果进行融合;把YOLO V5s中的NMS方法替换为Diou-NMS,当NMS对预测框进行过滤时,先过滤掉置信度低的检测框,再计算置信度最高检测框与其它检测框之间的iou值,将iou值低于阈值的低置信度检测框删除;Diou-NMS在NMS的基础上,增加了两个检测框的中心距离条件的限制,Diou-NMS的计算公式为:

式中,si是分类置信度,ε是NMS阈值,M为最高置信度的检测框,Bi是遍历各个框与M重叠情况;

NMS在过滤预测框时,会将距离过近的两个预测框中删除一个,这就导致重叠遮挡的目标不能被同时检测,召回率低,使用Diou-NMS可以提升重叠目标的检测召回率;

针对用于占道经营的所述目标检测模型的优化包括:由于多数占道经营的摊位载体不同、商品不同,导致占道经营检测的目标在形态、大小上有巨大的差异,则使用在VisDrone数据集上训练得到的检测模型作为预训练模型进行初始化,然后将输入层替换为无人机占道经营数据集进行训练;

由于占道经营检测任务中目标尺度变化过大,则将输入图像依次放缩为原图像的1.3倍、1倍、0.7倍,再将得到的图像进行水平翻转,将得到的6张图像输入到检测模型中进行预测,最后使用NMS进行结果融合,得到最后的检测结果。

本发明所述的无人机城市巡检系统,对城市目标检测中常见的目标对应的检测模型进行优化,并保存在目标检测模块中,提升检测模型的鲁棒性,使检测预设目标时可以快速准确的识别、标注检测目标,提升城市检测的效率。

结合图7所示,本发明还提供一种无人机城市巡检方法,包括:

S1:将目标数据集上传并保存至底层存储单元,所述底层存储单元还用于保存目标检测模型和无人机飞行路径;

S2:后将所述目标数据集缓存至分布式缓存单元;

S3:读取所述目标数据集,对所述目标检测模型进行分布式训练,得到训练完成的所述目标检测模型;

S4:计算、规划无人机飞行路径,控制无人机按照所述无人机飞行路径进行巡航;

S5:使用所述目标检测模型对特定检测目标进行检测;

结合图8所示,S3包括:

S31:通过所述深度学习框架对所述目标数据集进行读取,利用所述深度学习框架对所述目标检测模型进行分布式训练;

S32:输入所述测试数据集,对所述目标检测模型进行测试;

S33:判断检测模型对测试数据集进行处理后得到的标注数据相对于测试数据集中的标注数据的准确率与准确率阈值的大小;

S33:当所述目标检测模型对所述测试数据集进行处理后得到的标注数据与所述测试数据集中的所述标注数据之间的准确率超过准确率阈值时,判断满足所述预设标准;

S34:根据所述目标检测模型是否满足预设标准,判断是否完成所述分布式训练,若所述目标检测模型满足所述预设标准,则判断所述分布式训练完成;

结合图9所示,S4包括:

S41:对所述检测目标所在的城市进行三维建模;

S42:计算、规划无人机飞行路径;

S43:控制无人机按照所述无人机飞行路径进行巡航。

本发明所述的无人机城市巡检方法,为城市目标检测提供了一套完整的无人机城市巡检方法,实现了对城市众多目标智能化检测,提高了城市目标检测的效率,当需要改变检测目标时,根据需要实时改变检测目标,当需要改变无人机飞行路径时,根据需要实时对飞行路径进行规划,提高工作效率,城市治理更加完善。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

技术分类

06120115629005