一种无人机飞行路径生成方法及系统技术方案

技术编号:29984480 阅读:23 留言:0更新日期:2021-09-08 10:23
本发明专利技术提供了一种无人机飞行路径生成方法及系统,无人机上升至第一定位坐标后,通过以LiDAR获取到的点云数据得到全节点集合,进而对全节点集合进行划分得到多个局部节点集合,并在多个局部节点集合中计算筛选出多个中心点计算多个中心点之间的连接序列,无人机根据连接序列进行飞行移动。由此,实现了对计划拍摄的全体目标区域的依据多个关键点划分为多个节点的集合,计算得到最优化的无人机飞行路径,使得生成路径经过了所有的关键目标点。使得生成路径经过了所有的关键目标点。使得生成路径经过了所有的关键目标点。

【技术实现步骤摘要】
一种无人机飞行路径生成方法及系统


[0001]本公开属于无人机技术、计算机图形学
,具体涉及一种无人机飞行路径生成方法及系统。

技术介绍

[0002]随着机械制造工艺的日益进步,无人机的生产技术日益发达,同时使得无人机在社会多个领域得到了广泛的运用,尤其是在空中监测和图像获取的方面,无人机技术有着不可替代的优势。在高空拍摄区域图像或者建筑物全方位图像的过程中,由于目标区域的范围大小或者建筑物的结构形状的复杂程度各有不同,无人机在飞行拍摄的过程中,需要计算无人机在飞行过程中对应拍摄目标的不同运动轨迹。在公开号CN107943072A的公开中,提供了一种无人机飞行路径生成方法、装置、存储介质及设备,可以根据地标的关键视角集合生成至少一个有序关键视角子集,并根据总体代价函数的求解结果选择局部飞行路径和全局飞行路径生成无人机飞行路径,然而,该方法并不能保证对整体的目标拍摄范围进行全面的遍历,不能确保生成路径经过了所有的关键目标点。由此,需要新的方法及系统,将无人机计划拍摄的全体目标区域划分为多个节点的集合,再将多个节点的集合进行划分,从而得到最优化的无人机飞行路径。

技术实现思路

[0003]本专利技术的目的在于提出一种无人机飞行路径生成方法及系统,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
[0004]在无人机的飞行拍摄过程中,由于目标区域的范围大小或者建筑物的结构形状的复杂程度各有不同,无人机需要将计划拍摄的全体目标区域划分为多个节点的集合,进而划分计算出最优化的飞行路径。
[0005]本专利技术提供了一种无人机飞行路径生成方法及系统,无人机上升至第一定位坐标后,通过以LiDAR获取到的点云数据得到全节点集合,进而对全节点集合进行划分得到多个局部节点集合,并在多个局部节点集合中计算筛选出多个中心点计算多个中心点之间的连接序列,无人机根据连接序列进行飞行移动。由此,实现了对计划拍摄的全体目标区域的依据多个关键点划分为多个节点的集合,计算得到最优化的无人机飞行路径,使得生成路径经过了所有的关键目标点。
[0006]为了实现上述目的,根据本公开的一方面,提供一种无人机飞行路径生成方法,所述方法包括以下步骤:S100,无人机开始上升,直至上升至第一定位坐标;S200,无人机通过以LiDAR获取到的点云数据得到全节点集合;S300,对全节点集合进行划分得到多个局部节点集合;S400,在多个局部节点集合中计算筛选出多个中心点,并根据各个中心点计算中心点之间的连接序列;
S500,无人机按连接序列进行飞行移动。
[0007]进一步地,在S100中,无人机开始上升,直至上升至第一定位坐标的方法为:无人机到达目标建筑物的位置后,从地面开始上升,同时以LiDAR获取目标建筑物的点云数据中的各个点的集合作为集合Pset,当无人机在匀速上升的过程中若集合Pset中采集到元素的数量不增加的时候,定义该时刻无人机通过卫星定位获取的经度、维度、高程的三维坐标为第一定位坐标,无人机在第一定位坐标停止上升。
[0008]进一步地,在S200中,无人机通过以LiDAR获取到的点云数据得到全节点集合的方法为:无人机在停止上升后,将Pset中的元素清空,并重新以LiDAR获取目标建筑物的点云数据中的各个点加入集合Pset,记集合Pset中元素的总数为n、元素的序号以变量i表示,i∈[1,n],集合Pset中序号为i的元素为Loc_i,集合Pset中序号为i的元素的三维坐标为(a_i,b_i,c_i),Loc_i=(a_i,b_i,c_i),根据第一定位坐标记为Loc_be,记Loc_be通过卫星定位获得的经度、维度、高程的三维坐标为(a,b,c),集合Pset即为全节点集合。
[0009]进一步地,在S300中,对全节点集合进行划分得到多个局部节点集合的方法为:对全节点集合Pset进行划分的程序的具体过程如下:S301,开始程序;创建一个字典记为Tmap,所述字典指数据结构中元素的集合,所述字典可包括多个键值对,所述键值对由一个键记作key和一个值记作value构成;令字典Tmap为空;转到S302;S302,创建数组Darr,令数组Darr为空;创建数组Dset,令数组Dset为空,数组Dset具有有序性;转到S303;S303,令i的数值为1;转到S304;S304,在字典Tmap中创建一个以序号i为key的键记作key(i),且设置该键key(i)对应的值为一个空数组记作value(i);在字典Tmap中将一个键key(i)对应一个值即为数组value(i)记作Tmap的一个键值对记作<key(i),value(i)>,记Tmap中序号i的键值对为Tmap(i),有Tmap(i)=<key(i),value(i)>,则有value(i)的数组长度为n

1;转到S305;S305,将键值对Tmap(i)在其value(i)数组中加入Pset中的每一个元素的序号,然后在value(i)数组中删除序号i;转到S3060;S3060,获取集合Pset中序号为i的点记为Loc_i,有Loc_ i =(a_i,b_i,c_ i);创建空数组darr;转到S3061;S3061,设置变量j,令j的数值为1;设置变量m,令m的数值为value(i)数组中元素的数量;转到S3062;S3062,获取value(i)数组中第j个元素记为v;转到S3063;S3063,根据v,获取集合Pset中序号为v的点记为Loc_v,有Loc_ v =(a_ v,b_ v,c_ v);转到S3064;S3064,计算Loc_i的三维坐标与Loc_v的三维坐标之间的欧氏距离记为d(i,v);将d(i,v)加入数组darr中;转到S3065;S3065,判断数组darr中元素的数量是否大于或等于value(i)数组中元素的数量,若是则将数组darr加入数组Dset中作为数组Dset中的第i个元素并转到S3067,若否则转到S3066;S3066,令j的数值增加1;转到S3062;
S3067,计算获取darr数组中元素的算术平均数记为darr_avg;将darr_avg加入数组Darr中;转到S307;S307,判断数组Darr中元素的数量是否大于或等于n,若是则转到S3072,若否则转到S3071;S3071,令i的数值增加1;转到S304;S3072,计算获取Darr数组中元素的算术平均数记为d_avg;将d_avg存储至常量池;转到S3080;S3080, 令i的数值为1;转到S3081;S3081,通过i获取Tmap(i)进而获取数组value(i);通过i获取数组Dset中的第i个元素记作数组Dset(i);转到S3082;S3082,将数组value(i)中的各个元素对应数组Dset(i)中的同样序号的元素;转到S3083;S3083,在常量池中调用d_avg;计算筛选出在数组Dset(i)中数值大于d_avg的所有元素的序本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种无人机飞行路径生成方法,其特征在于,所述方法包括以下步骤:S100,无人机开始上升,直至上升至第一定位坐标;S200,无人机通过以LiDAR获取到的点云数据得到全节点集合;S300,对全节点集合进行划分得到多个局部节点集合;S400,在多个局部节点集合中计算筛选出多个中心点,并根据各个中心点计算中心点之间的连接序列;S500,无人机按连接序列进行飞行移动。2.根据权利要求1所述的一种无人机飞行路径生成方法,其特征在于,在S100中,无人机开始上升,直至上升至第一定位坐标的方法为:无人机到达目标建筑物的位置后,从地面开始上升,同时以LiDAR获取目标建筑物的点云数据中的各个点的集合作为集合Pset,当无人机在匀速上升的过程中若集合Pset中采集到元素的数量不增加的时候,定义该时刻无人机通过卫星定位获取的经度、维度、高程的三维坐标为第一定位坐标,无人机在第一定位坐标停止上升。3.根据权利要求2所述的一种无人机飞行路径生成方法,其特征在于,在S200中,无人机通过以LiDAR获取到的点云数据得到全节点集合的方法为:无人机在停止上升后,将Pset中的元素清空,并重新以LiDAR获取目标建筑物的点云数据中的各个点加入集合Pset,记集合Pset中元素的总数为n、元素的序号以变量i表示,i∈[1,n],集合Pset中序号为i的元素为Loc_i,集合Pset中序号为i的元素的三维坐标为(a_i,b_i,c_i),Loc_i=(a_i,b_i,c_i),根据第一定位坐标记为Loc_be,记Loc_be通过卫星定位获得的经度、维度、高程的三维坐标为(a,b,c),集合Pset即为全节点集合。4.根据权利要求3所述的一种无人机飞行路径生成方法,其特征在于,在S300中,对全节点集合进行划分得到多个局部节点集合的方法为:对全节点集合Pset进行划分的程序的具体过程如下:S301,开始程序;创建一个字典记为Tmap,所述字典指数据结构中元素的集合,所述字典可包括多个键值对,所述键值对由一个键记作key和一个值记作value构成;令字典Tmap为空;转到S302;S302,创建数组Darr,令数组Darr为空;创建数组Dset,令数组Dset为空,数组Dset具有有序性;转到S303;S303,令i的数值为1;转到S304;S304,在字典Tmap中创建一个以序号i为key的键记作key(i),且设置该键key(i)对应的值为一个空数组记作value(i);在字典Tmap中将一个键key(i)对应一个值即为数组value(i)记作Tmap的一个键值对记作<key(i),value(i)>,记Tmap中序号i的键值对为Tmap(i),有Tmap(i)=<key(i),value(i)>,则有value(i)的数组长度为n

1;转到S305;S305,将键值对Tmap(i)在其value(i)数组中加入Pset中的每一个元素的序号,然后在value(i)数组中删除序号i;转到S3060;S3060,获取集合Pset中序号为i的点记为Loc_i,有Loc_i =(a_i,b_i,c_i);创建空数组darr;转到S3061;S3061,设置变量j,令j的数值为1;设置变量m,令m的数值为value(i)数组中元素的数量;转到S3062;
S3062,获取value(i)数组中第j个元素记为v;转到S3063;S3063,根据v,获取集合Pset中序号为v的点记为Loc_v,有Loc_v =(a_v,b_v,c_v);转到S3064;S3064,计算Loc_i的三维坐标与Loc_v的三维坐标之间的欧氏距离记为d(i,v);将d(i,v)加入数组darr中;转到S3065;S3065,判断数组darr中元素的数量是否大于或等于value(i)数组中元素的数量,若是则将数组darr加入数组Dset中作为数组Dset中的第i个元素并转到S3067,若否则转到S3066;S3066,令j的数值增加1;转到S3062;S3067,计算获取darr数组中元素的算术平均数记为darr_avg;将darr_avg加入数组Darr中;转到S307;S307,判断数组Darr中元素的数量是否大于或等于n,若是则转到S3072,若否则转到S3071;S3071,令i的数值增加1;转到S304;S3072,计算获取Darr数组中元素的算术平均数记为d_avg;将d_avg存储至常量池;转到S3080;S3080, 令i的数值为1;转到S3081;S3081,通过i获取Tmap(i)进而获取数组value(i);通过i获取数组Dset中的第i个元素记作数组Dset(i);转到S3082;S3082,将数组value(i)中的各个元素对应数组Dset(i)中的同样序号的元素;转到S3083;S3083,在常量池中调用d_avg;计算筛选出在数组Dset(i)中数值大于d_avg的所有元素的序号作为筛选集合;转到S3084;S3084...

【专利技术属性】
技术研发人员:颜佳蒋勇王玉萍李宝章李方悦王拥军姜海龙赵振
申请(专利权)人:深圳奥雅设计股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1