本发明涉及无人机飞行控制技术领域,特别是涉及一种无人机自主飞行控制方法及系统。
背景技术:
随着输电线路的不断发展,对输电线路巡检的需求不断加大,无人机巡检的加入极大的提高了电力巡检的效率,但是目前无人机巡检的操作模式依然停留在巡检人员手动操作阶段,对操作人员要求的技术门槛较高。实现无人机的自主飞行可以极大的减轻巡检人员的劳动,便于无人机电力巡检的推广。
现有进行无人机自主飞行控制主要包括以下方案:
(1)基于激光雷达实现对障碍物进行检测,实现对周围环境的感知以达到无人机避障的目的,实现无人机在特定工作场景实现自主飞行控制;其优势在于精度高,距离远,但同时激光雷达对环境较为敏感,在室外环境下容易受到强光干扰,不仅影响无人机的飞行安全,还影响自主飞行控制精度。
(2)基于超声波模块的无人机避障技术,使用超声波模块检测无人机周围的障碍物,结合避障算法实现无人机的自主飞行;其优势在于硬件成本较低,且对处理器的计算能力要求不高,但是由于其采用超声波模块,对环境的温度依赖性较强,且障碍物识别效率低,不仅难以满足室外无人机高速飞行的要求,还影响自主飞行控制精度。
技术实现要素:
本发明的目的是提供一种无人机自主飞行控制方法及系统,满足室外无人机高速飞行的要求,提高自主飞行控制精度。
为实现上述目的,本发明提供了一种无人机自主飞行控制方法,所述方法包括:
确定样本数据集;所述样本数据集包括:各种障碍状况的输电线路航拍图像和各种障碍状况的输电线路航拍图像对应的实际的飞控指令;
将85%所述样本数据集作为训练集a,将15%所述样本数据集作为测试集b;
创建生成网络和分类判别网络;
根据所述训练集a和所述生成网络确定假样本;所述假样本包括:网络输出图片和网络输出图片对应的飞控指令;
将所述假样本和所述训练集a输入所述分类判别网络进行训练,获得所述分类判别网络的输出参数;
将所述测试集b中的各种障碍状况的输电线路航拍图像输入至已确定输出参数的分类判别网络,获得各种障碍状况的输电线路航拍图像对应的预测的飞控指令;
根据各种障碍状况的输电线路航拍图像对应的预测的飞控指令和所述测试集b中的各种障碍状况的输电线路航拍图像对应的实际的飞控指令确定准确率;
判断所述准确率是否大于或等于设定值,获得第一判断结果;如果所述第一判断结果表示所述准确率大于或等于设定值,则将已确定输出参数的分类判别网络输出至机载处理器,以使后期将摄像机采集的各种故障状况的输电线路航拍图像输入至机载处理器中分类判别网络直接输出飞控指令进行飞行控制;
如果所述第一判断结果表示所述准确率小于设定值,则更新样本数据集。
可选的,所述确定样本数据集,具体包括:
获取各种障碍状况的输电线路航拍图像;
对所述各种障碍状况的输电线路航拍图像进行处理,获得256x256规格的各种障碍状况的输电线路航拍图像;
对所述256x256规格的各种障碍状况的输电线路航拍图像进行飞行控制指令的分类标记,获得样本数据集。
可选的,所述根据所述训练集a和所述生成网络确定假样本,具体包括:
将所述训练集a输入至所述分类判别网络,确定所述分类判别网络初始参数;
从所述训练集a中选取一种障碍状况的输电线路航拍图像对应的实际的飞控指令,并输入至已确定初始参数的分类判别网络中,获得假图像;
获取第一随机噪声,将所述第一随机噪声和假图像输入至所述生成网络,确定所述生成网络参数;
获取第二随机噪声,将所述第二随机噪声输入至已确定参数的生成网络中,经过多个反卷积层进行训练,按标签分类生成网络输出图片;
确定假样本中网络输出图片对应的飞控指令。
可选的,所述更新样本数据集,具体包括:
根据所述假样本中的网络输出图片确定网络输出图片对应的is指标和fid指标;
根据所述训练集a中的各种障碍状况的输电线路航拍图像确定各种障碍状况的输电线路航拍图像对应的is指标和fid指标;
根据所述各种障碍状况的输电线路航拍图像对应的is指标和fid指标确定指标的平均值;
当所述网络输出图片对应的is指标和fid指标中最大指标大于85%所述平均值,且网络输出图片对应的is指标和fid指标的平均值大于75%所述平均值,则将所述假样本加入所述样本数据集,进行更新所述样本数据集。
可选的,所述飞控指令包括x,y,z三个坐标轴的移动方向以及航向角的角度信息。
本发明还提供一种无人机自主飞行控制系统,所述系统包括:
摄像机、机载处理器、云台、控制器和飞控;所述摄像机、所述云台、所述控制器和所述飞控均与所述机载处理器;
所述摄像机用于采集各种障碍状况的输电线路航拍图像;
所述云台上设置所述摄像机,所述云台用于带动所述摄像机转动;
所述控制器根据上述所述的无人机自主飞行控制方法确定带有输出参数的分类判别网络,并发送至所述记载处理器;
所述机载处理器将所述采集各种障碍状况的输电线路航拍图像输入到已确定输出参数的分类判别网络中,确定各种障碍状况的输电线路航拍图像对应的飞控指令,并发送至所述飞控;
所述飞控用于根据所述飞控指令控制飞机的飞行控制。
可选的,所述机载处理器通过串口与所述飞控连接,所述机载处理器通过rj45网口与所述摄像机连接,所述云台通过串口与所述机载处理器连接。
可选的,所述机载处理器基于ubuntu14.04的ros-indigo机器人操作系统运行。
可选的,所述所述机载处理器的型号为nvidiatx1。
可选的,所述飞控指令通过onboardsdk协议传输至所述飞控上进行飞机的飞行控制。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明首先创建生成网络和分类判别网络;根据所述训练集a和所述生成网络确定假样本;然后将所述假样本和所述训练集a输入所述分类判别网络进行训练,获得所述分类判别网络的输出参数;网络输出结果比场景指令标记向量多出一个维度,这一维度特征用于分类真假样本,训练生成网络的过程中可以将无指令标记的假样本与有指令标记的训练集a一同当做真实样本输入进生成网络获得分类判别网络的输出参数,进而提高了对分类判别网络参数确定的准确性,进一步的提高自主飞行控制精度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提高自主飞行控制方法流程图;
图2为本发明实施例提高自主飞行控制系统结构图;
其中,1、摄像机,2、机载处理器,3、云台,4、控制器,5、飞控。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种无人机自主飞行控制方法及系统,满足室外无人机高速飞行的要求,提高自主飞行控制精度。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明实施例提高自主飞行控制方法流程图,如图1所示,本发明提供一种无人机自主飞行控制方法,所述方法包括:
步骤s1:确定样本数据集;所述样本数据集包括:各种障碍状况的输电线路航拍图像和各种障碍状况的输电线路航拍图像对应的实际的飞控指令;
步骤s2:将85%所述样本数据集作为训练集a,将15%所述样本数据集作为测试集b;
步骤s3:创建生成网络和分类判别网络;所述生成网络包括多层反卷积层;所述分类判别网络包括多个三维卷积层和与之相连的多个全连接层;
步骤s4:根据所述训练集a和所述生成网络确定假样本;所述假样本包括:网络输出图片和网络输出图片对应的飞控指令;
步骤s5:将所述假样本和所述训练集a输入所述分类判别网络进行训练,获得所述分类判别网络的输出参数;
步骤s6:将所述测试集b中的各种障碍状况的输电线路航拍图像输入至已确定输出参数的分类判别网络,获得各种障碍状况的输电线路航拍图像对应的预测的飞控指令;
步骤s7:根据各种障碍状况的输电线路航拍图像对应的预测的飞控指令和所述测试集b中的各种障碍状况的输电线路航拍图像对应的实际的飞控指令确定准确率;
步骤s8:判断所述准确率是否大于或等于设定值获得第一判断结果;如果所述第一判断结果表示所述准确率大于或等于设定值,则执行步骤s9;如果所述第一判断结果表示所述准确率小于设定值,则更新样本数据集,并返回步骤s2;
步骤s9:将已确定输出参数的分类判别网络输出至机载处理器,以使后期将摄像机采集的各种故障状况的输电线路航拍图像输入至机载处理器中分类判别网络直接输出飞控指令进行飞行控制;所述飞控指令包括x,y,z三个坐标轴的移动方向以及航向角的角度信息。
下面对各个步骤进行详细论述:
步骤s1:所述确定样本数据集,具体包括:
获取各种障碍状况的输电线路航拍图像;
对所述各种障碍状况的输电线路航拍图像进行处理,获得256x256规格的各种障碍状况的输电线路航拍图像;
对所述256x256规格的各种障碍状况的输电线路航拍图像进行飞行控制指令的分类标记,获得样本数据集。
步骤s4:所述根据所述训练集a和所述生成网络确定假样本,具体包括:
将所述训练集a输入至所述分类判别网络,确定所述分类判别网络初始参数;
从所述训练集a中选取一种障碍状况的输电线路航拍图像对应的实际的飞控指令,并输入至已确定初始参数的分类判别网络中,获得假图像;
获取第一随机噪声,将所述第一随机噪声和假图像输入至所述生成网络,确定所述生成网络参数;
获取第二随机噪声,将所述第二随机噪声输入至已确定参数的生成网络中,经过多个反卷积层进行训练,按标签分类生成网络输出图片;
确定假样本中网络输出图片对应的飞控指令。
所述更新样本数据集,具体包括:
根据所述假样本中的网络输出图片确定网络输出图片对应的is指标和fid指标;
根据所述训练集a中的各种障碍状况的输电线路航拍图像确定各种障碍状况的输电线路航拍图像对应的is指标和fid指标;
根据所述各种障碍状况的输电线路航拍图像对应的is指标和fid指标确定指标的平均值;
当所述网络输出图片对应的is指标和fid指标中最大指标大于85%所述平均值,且网络输出图片对应的is指标和fid指标的平均值大于75%所述平均值,则将所述假样本加入所述样本数据集,进行更新所述样本数据集。
图2为本发明实施例提高自主飞行控制系统结构图,如图2所示,本发明还提供一种无人机自主飞行控制系统,所述系统包括:
摄像机1、机载处理器2、云台3、控制器4和飞控5;所述摄像机1、所述云台3、所述控制器4和所述飞控5均与所述机载处理器2;
所述摄像机1用于采集各种障碍状况的输电线路航拍图像;
所述云台3上设置所述摄像机1,所述云台3用于带动所述摄像机1转动;
所述控制器4根据上述的无人机自主飞行控制方法确定带有输出参数的分类判别网络,并发送至所述记载处理器;
所述机载处理器2将所述采集各种障碍状况的输电线路航拍图像输入到已确定输出参数的分类判别网络中,确定各种障碍状况的输电线路航拍图像对应的飞控指令,并通过onboardsdk协议传输至所述飞控5;
所述飞控5用于根据所述飞控指令控制飞机的飞行控制。
作为一种实施方式,本发明所述机载处理器2通过串口与所述飞控5连接,
所述机载处理器2通过rj45网口与所述摄像机1连接,所述云台3通过串口与所述机载处理器2连接。
作为一种实施方式,本发明所述机载处理器2基于ubuntu14.04的ros-indigo机器人操作系统运行;所述所述机载处理器2的型号为nvidiatx1。
本发明首先创建生成网络和分类判别网络;根据所述训练集a和所述生成网络确定假样本;然后将所述假样本和所述训练集a输入所述分类判别网络进行训练,获得所述分类判别网络的输出参数;网络输出结果比场景指令标记向量多出一个维度,这一维度特征用于分类真假样本,训练生成网络的过程中可以将无指令标记的假样本与有指令标记的训练集a一同当做真实样本输入进生成网络获得分类判别网络的输出参数,进而提高了对分类判别网络参数确定的准确性,进一步的提高自主飞行控制精度。
本发明当所述准确率小于设定值,则根据所述假样本中的网络输出图片确定网络输出图片对应的is指标和fid指标;根据所述训练集a中的各种障碍+状况的输电线路航拍图像确定各种障碍状况的输电线路航拍图像对应的is指标和fid指标;根据所述各种障碍状况的输电线路航拍图像对应的is指标和fid指标确定指标的平均值;当所述网络输出图片对应的is指标和fid指标中最大指标大于85%所述平均值,且网络输出图片对应的is指标和fid指标的平均值大于75%所述平均值,则将所述假样本加入所述样本数据集,进行更新所述样本数据集,对网络重新进行训练和更新以提高无人机自主飞行对外界场景变化的适应能力。反复学习,最终实现稳定自主飞行,执行相关飞行任务。
本发明的优势在于采用生成对抗网络框架强大的数据捕捉能力,使用航拍数据集对生成对抗网络中的分类判别网络进行训练,通过对抗学习模式提升判别网络的识别准确率,给出正确的飞行控制指令,实现无人机的自主飞行。同时借助生成对抗网络框架特有的对抗学习优势,可对无人机摄像机画面(即航拍训练数据)进行有效的数据扩充,实现生成对抗网络中判别网络的训练效果,更好的实现无人机自主飞行,同时也可以使得无人机更快适应应用环境的变化。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。