一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

目标区域的搜索方法及装置、电子设备、存储介质与流程

2021-11-22 13:16:00 来源:中国专利 TAG:


1.本发明涉及无人机领域,具体而言,涉及一种目标区域的搜索方法及装置、电子设备、存储介质。


背景技术:

2.目前,无人机的应用越来越广泛,尤其是在区域搜索领域,比如目标搜索、地图测绘和农药喷洒等领域。现有的区域搜索方法中也涉及对未知区域进行划分,化整为零再进行搜索;然而现有的未知区域划分采用的是随机分配的方式,随机划分区域不能分割出形状较好的多边形;也不会从无人机节能方面考虑,导致无人机在搜索过程中搜索耗能,且遍历区域有遗漏,不利于无人机搜索。因此,现有的无人机搜索方法存在耗时耗能等缺陷。
3.针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。


技术实现要素:

4.本发明实施例提供了一种目标区域的搜索方法及装置、电子设备、存储介质,以至少解决相关技术中无人机搜索过程存在耗能、效率低等技术问题。
5.第一方面,提供了一种目标区域的搜索方法,该方法包括:获取目标区域对应的多个顶点以及各顶点的顶点坐标,其中,所述目标区域的形状为多边形;判断所述目标区域是否包含凹顶点;若所述目标区域包含凹顶点,基于所述目标区域对应的各个顶点将所述目标区域划分为多个子区域,其中,每个子区域的形状为凸多边形;确定任一子区域对应的多个凸边形宽度中的第一最小宽度;根据多个子区域对应的多个第一最小宽度、无人机单位时间内的探测范围和所述多个子区域对应的多个面积生成所述无人机搜索路径;基于所述搜索路径对所述多个子区域进行搜索;其中,所述搜索路径包括所述无人机对任一子区域进行搜索的第一搜索路径,以及所述无人机遍历所述多个子区域的第二搜索路径。
6.第二方面,提供了一种目标区域的搜索装置,包括:获取模块,用于获取目标区域对应的多个顶点以及各顶点的顶点坐标,其中,所述目标区域的形状为多边形;判断模块,用于判断所述目标区域是否包含凹顶点;划分模块,用于若所述目标区域包含凹顶点,基于所述目标区域对应的各个顶点将所述目标区域划分为多个子区域,其中,每个子区域的形状为凸多边形;第一确定模块,用于确定任一子区域对应的多个凸边形宽度中的第一最小宽度;第一搜索模块,用于根据多个子区域对应的多个第一最小宽度、无人机单位时间内的探测范围和所述多个子区域对应的多个面积生成所述无人机搜索路径;基于所述搜索路径对所述多个子区域进行搜索;其中,所述搜索路径包括所述无人机对任一子区域进行搜索的第一搜索路径,以及所述无人机遍历所述多个子区域的第二搜索路径。
7.第三方面,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
8.第四方面,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所
述计算机程序被设置为运行时执行上述任一项装置实施例中的步骤。
9.通过本发明,获取未知区域(即目标区域)对应的多个顶点以及各顶点的顶点坐标,该未知区域的形状为多边形,或者近似为多边形;然后判断目标区域是否包含凹顶点;若目标区域包含凹顶点,基于目标区域对应的各个顶点将目标区域划分为多个子区域,其中,每个子区域的形状为凸多边形,从而将凹凸边形划分多个有规则的凸多边形;然后根据多个子区域对应的多个第一最小宽度、无人机单位时间内的探测范围和多个子区域对应的多个面积生成无人机搜索路径;基于搜索路径对多个子区域进行搜索;其中,搜索路径包括无人机对任一子区域进行搜索的第一搜索路径,以及无人机遍历多个子区域的第二搜索路径,以使无人机按照最节省的路线进行搜索,解决了相关技术中无人机搜索过程存在耗能、效率低等技术问题,提高了无人机搜索效率。
附图说明
10.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
11.图1是本发明实施例提供的一种目标区域的搜索方法应用于计算机终端的硬件结构框图;
12.图2是根据本发明实施例提供的一种目标区域的搜索方法的流程图;
13.图3是根据本发明实施例提供的一种凹多边形示例图;
14.图4是根据本发明实施例提供的一种凹变形凸分解的流程示意图;
15.图5是根据本发明实施例提供的一种基于极值点判断多边形正负的矢量示意图;
16.图6是根据本发明实施例提供的一种凹多边形凸分解的示意图;
17.图7是根据本发明实施例提供的一种凹变形凸分解的输出结果示例图;
18.图8是根据本发明实施例提供的一种计算无人机探测范围的示意图;
19.图9是根据本发明实施例提供的无人机转弯的一种示意图;
20.图10是根据本发明实施例提供的一种采用点边式计算最小宽度的示意图;
21.图11是根据本发明实施例提供的一种无人机搜索的起始点选取示意图;
22.图12是根据本发明实施例提供的一种掉头点和结束点的选取示意图;
23.图13是根据本发明实施例提供的另一种掉头点和结束点的选取示意图;
24.图14是根据本发明实施例提供的一种无人机搜索终点的示意图;
25.图15是根据本发明实施例提供的一种基于无人机搜索方向进行搜索的示意图;
26.图16是根据本发明实施例提供的一种无人机在凸边形中搜索路径示意图;
27.图17是根据本发明实施例提供的一种目标区域的搜索装置的结构框图;
28.图18是根据本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
29.下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
30.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
31.本技术实施例所提供的方法实施例可以在移动终端、服务器、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例提供的一种目标区域的搜索方法应用于计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)和用于存储数据的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
32.存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的目标区域的搜索方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器,也可以包括易失性存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
33.传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(network interface controller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(radio frequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。
34.下面以具体地实施例对本发明的技术方案以及本发明的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
35.图2是根据本发明实施例提供的一种目标区域的搜索方法的流程图,如图2所示,该流程包括如下步骤:
36.步骤s202,获取目标区域对应的多个顶点以及各顶点的顶点坐标,其中,目标区域的形状为多边形;
37.在本实施例中,可通过电子地图,比如第三方导航软件,获取未知区域的地理位置坐标。
38.本实施例可以实现未知区域的搜索任务,其中,未知区域,是指内部情况不知,但是形状大小是已知的;若未知区域的边界带有弧度,可将未知区域近似为多边形。
39.步骤s204,判断目标区域是否包含凹顶点;
40.优选地,选定目标区域的任一顶点为目标顶点,利用目标顶点为中心的矢量或者计算三角形的有符号面积判断目标顶点的凹凸性。例如,假设当前连续的三个顶点分别是p1,p2,p3。计算向量(p1,p2),(p1,p3)的叉乘,也就是计算三角形p1p2p3的面积,得到的结果如果大于0,则表示p2点在线段p1和p3的右侧,多边形的顶点是逆时针序列;然后依次计算下一个前后所组成向量的叉乘,如果在计算时,出现负值,则该顶点为凹顶点。
41.步骤s206,若目标区域包含凹顶点,基于目标区域对应的各个顶点将目标区域划分为多个子区域,其中,每个子区域的形状为凸多边形;
42.在一个可能的实现方式中,在判断目标区域是否包含凹顶点之后,若目标区域不包含凹顶点,目标区域为凸多边形;确定目标区域对应的多个凸边形宽度中的第二最小宽度;根据第二最小宽度、第一搜索路径以及探测范围,对目标区域进行搜索。在本实施例中,如果未知区域不含凹顶点,则未知区域为凸边形,则无需对凸边形进行区域划分,可通过无人机直接进行区域搜索。
43.在一个可能的实现方式中,若目标区域包含凹顶点,基于目标区域对应的各个顶点将目标区域划分为多个子区域包括:沿目标区域的预设方向,顺序将目标区域对应的各个顶点坐标存储至第一数组,其中,预设方向为目标区域的逆时针方向或顺时针方向;选定第一数组中的任一凹顶点为目标凹顶点,将目标凹顶点与第一数组中除目标凹顶点之外的顶点进行连线,得到多条线段;若多条线段中的任一目标线段在目标区域内或目标区域上,则将目标线段中除目标凹顶点的另一顶点,作为目标凹顶点的可见点,并将可见点存储至第二数组;根据第二数组中的凹顶点数和凸顶点数将目标区域划分为多个子区域。
44.在本实施例中,若未知区域为凹多边形,则对未知区域进行分割,分割成多个凸边形,比如梯形、三角形等。按照目标区域的逆时针方向或顺时针方向,确定目标区域的方向,以便后续顺序处理目标区域的各个顶点,不会出错,造成混乱。
45.首先,沿着之前确定的多边形的方向,顺序将目标区域的各个顶点以有序点列的坐标形式存入第一数组;然后,在第一数组中定位到一个凹点,优选地,按照顺序定位凹顶点;搜索该凹顶点(即上述目标凹顶点)的可见点(多边形中所有顶点与顶点p
i
连线形成的线段,若全部在多边形内部或者上面,这些顶点称为p
i
的可见点)。以图3为例,图3是根据本发明实施例提供的一种凹多边形示例图,若第一数组为[p1,p2,p3,p4,p5,p6,p7,p8,p9,p10],判断出第一个凹顶点为p3(即上述目标凹顶点),然后分别将顶点p1,p2,p4,p5,p6,p7,p8,p9,p10与p3相连,得到9条线段,若这些线段均在目标区域内或目标区域的各个边上,则该线段对应的除p3的另一个顶点即为p3的可见点,以此类推,最后得到p3的可见点为p1,p2,p4,p5,p9,p10,并将这些可见点存入备选点组(即上述第二数组),即[p1,p2,p4,p5,p9,p10]。
[0046]
进一步地,根据第二数组中的凹顶点数和凸顶点数将目标区域划分为多个子区域包括:统计第二数组中凹顶点的第一数量;若第一数量大于或等于2,利用目标凹顶点依次与第二数组中的凹顶点连线,得到多条第一射线;从多条第一射线中查找与预设射线之间夹角最小的目标第一射线;利用目标第一射线,将目标区域划分为两个子区域;其中,预设射线表示沿着预设方向,以目标凹顶点的前一相邻线段的反向延长线与目标凹顶点的后一相邻线段的正向延长线形成的夹角的夹角平分线;若第一数量为1,利用目标凹顶点和第二数组中的凹顶点之间的连线将目标区域划分为两个子区域;若第一数量为0,将目标凹顶点与第二数组中任一凸顶点进行连线,得到多条第二射线;从多条第二射线中查找与预设射线之间夹角最小的目标第二射线,利用目标第二射线将目标区域划分为两个子区域;若第一数量和第二数量均为0,则利用预设射线将目标区域划分为两个子区域。
[0047]
进一步地,根据第二数组中的凹顶点数和凸顶点数将目标区域划分为多个子区域,参见图4,图4是根据本发明实施例提供的一种凹变形凸分解的流程示意图,包括以下步骤:
[0048]
步骤s401,输入点列;多边形(即上述目标区域)以有序点列的坐标形式存入一个
数组(即上述第一数组);
[0049]
步骤s402,判断输入的多边形方向的正负性;如果为正,进入下一个步骤s404;否则,执行步骤s403,将数组中元素反向排列,存入另一个数组,即最后一个元素作为新数组的第一个元素,倒数第二个元素作为新数组的第二个元素,并依此类推;从而将多边形的各定点坐标按照逆时针或者顺时针方向依次存入数组。
[0050]
下面结合一具体实施例对多边形的正负性和凹凸点判断进行说明:
[0051]
参见图3,由输入点列的x,y标可以得到多边形的四个极值点,即x,y最大、最小点,以p1,p4,p8,p9四点为例,依据多边形的极值点必为多边形的凸点,任取四个极值点中一点设为p
i
,图5是根据本发明实施例提供的一种基于极值点判断多边形正负的矢量示意图,如图5所示,p
i
与其相临的前后两点p
i
‑1,p
i 1
组成的矢量为计算的值。设p
i
‑1,p
i
,p
i 1
的坐标为(x
i
‑1,y
i
‑1),(x
i
,y
i
),(x
i 1
,y
i 1
),由此可以计算得到矢量),由此可以计算得到矢量
[0052][0053]
利用上式(1)求出判别式的值,值为正,则多边形为逆时针方向;值为负,则多边形为顺时针方向。在确定多边形的正负后,式(1)可以用来判断点的凸凹性。多边形的方向为正时,有以下三种情况:
[0054]
1)为凸点;
[0055]
2)为凹点;
[0056]
3)不存在。
[0057]
进一步地,步骤s404,搜索凹点;从第一个点开始,搜索凹点;若没有凹点,则输入的多边形为凸多边形,算法结束;否则,进入下一个步骤s405。
[0058]
步骤s405,建立备选点组(即上述第二数组);
[0059]
步骤s406,判断备选点组有无凹点;
[0060]
步骤s407,若存在多个凹点(至少2个),先选定一个凹顶点(即上述目标凹顶点),则利用该凹顶点依次与第二数组中的凹顶点连线,得到多条第一射线;
[0061]
步骤s408,利用权函数,从多条第一射线中查找与夹角平分线之间夹角最小的射线(即上述第一射线);利用该射线,将目标区域划分为两个子区域;若第二数组中只存在一个凹点,则将这个凹点作为剖分点,即将该凹点与目标凹顶点连线,将目标区域划分为两个子区域;
[0062]
步骤s409,判断备选点组中有无凸点;若第二数组中不存在凹点,而是多个凸点,将目标凹顶点与第二数组中任一凸顶点进行连线,得到多条射线(即上述第二射线);从多条射线中查找与夹角平分线之间夹角最小的射线(即上述目标第二射线),利用该射线将目标区域划分为两个子区域;若第二数组中只有一个凸点,则将这个凸点作为剖分点;
[0063]
步骤s410,若第二数组为空,以凹点处反向延长线的夹角平分线作为剖分线。
[0064]
进一步地,对剖分产生的两个多边形按上述步骤s401~步骤s410递归地进行操
作,直到所有多边形全部为凸多边形。基于上述实施例,是从凹点向其可见点引线,将多边形一分为二,达到消除凹点的目的。
[0065]
如图3所示,以p3的可见点数组为例,第二数组[p1,p2,p4,p5,p9,p10]中,凹顶点的数量有2个,即p5和p10,以p3为起始点,分别与p5和p10连线,得到两条射线p3p5和p3p10(即上述第一射线),同时,确定p3对应的夹角平分线,将线段p2p3的正向延长线与p3p4的反向延长线形成的夹角的夹角平分线(即上述预设射线);接着,确定p3p5与夹角平分线之间的夹角1与p3p10与夹角平分线之间的夹角2,判断夹角1与夹角2的大小,基于图3可知,夹角1较小,则利用线段p3p5将目标区域划分为两个子区域,即多边形p1p2p3p5p6p7p8p9p10和多边形p3p4p5。
[0066]
下面结合一具体实施例对本发明实施例提供的区域划分做进一步地说明:
[0067]
本发明实施例提供的凹多边形凸分解,主要是从凹点向其可见点引线,将多边形一分为二。图6是根据本发明实施例提供的一种凹多边形凸分解的示意图,如图6所示,从凹点p
k
沿着其相临的两条边的延长线引出两条射线,其中,p
k
‑1p
k
是正向延长线,p
k
p
k 1
是反向延长线,将整个平面划分为四个区域,如图6所示,区域1,区域2,区域3及区域4;显然,若用来与凹点p
k
连线的可见点位于区域4内,则剖分后得到的多边形的形态要比另外两个区域的好;但是,在很多情况下,这样的可见点并不唯一,此时需要一个权函数来判断到底选择哪一个可见点进行剖分。从凹点p
k
引出的剖分线如果正好是矢量与夹角的平分线(其单位矢量记作),这时得到的两个多边形形态最好(考虑到了凸边形的面积和形状)。因此,将计算可见点和凹点的连线与之间的夹角,夹角最小的点即为最合适的点,由于p
k
为凹点,所以∠ap
k
b必定小于180
°
,从而其平分线单位矢量与(p
u
为p
k
在区域4内的任意一个可见点)的夹角(设为α)将小于90
°
,所以cosα在此区间为单调的。cosα为
[0068]
进一步地,计算出区域4内所有可见点对应的cosα值,最大值对应的点即为所求的点。
[0069]
基于上述实施例,以图3为例,通过图4提供的凹变形凸分解的流程示意图,输出图7,其中,图7是根据本发明实施例提供的一种凹变形凸分解的输出结果示例图。
[0070]
步骤s208,确定任一子区域对应的多个凸边形宽度中的第一最小宽度;
[0071]
本发明实施例中提供了一种可能的实现方式,确定任一子区域对应的多个凸边形宽度中的第一最小宽度包括:选定多个子区域中的任一子区域为第一子区域,确定第一子区域对应的各个顶点坐标;选定第一子区域的任一边作为目标边,计算第一子区域中除目标边的两个顶点之外的顶点到目标边的距离值;从目标边对应的多个距离值中选择数值最大的目标距离值;从第一子区域对应的多个目标距离值中选择数值最小的目标距离值,作为第一最小宽度。
[0072]
传感器探索范围如下:不考虑无人机姿态角变化,传感器高度h处的探测范围是一半径为r=h*tanθ的圆,如图8所示,图8是根据本发明实施例提供的一种计算无人机探测范围的示意图。
[0073]
与机器人覆盖搜索不同,无人机存在最小转弯半径约束,需要在待搜索区域外部
进行转弯飞行。这一段飞行相对搜索区域是没用的,如能减少搜索转弯次数,就可减少飞行路程、搜索时间和油耗。
[0074]
由于无人机的探测范围半径在飞行高度和探测器角度恒定时为定值,若搜索区域的宽度是l,转弯次数的计算方法是:
[0075]
n
turn
=|l/r 1/2|
‑1ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0076]
由此可见,计算出搜索区域的最小宽度(即上述第一最小宽度),即可保证搜索过程中拥有最少的转弯次数,节能无人机能量,其中,图9是根据本发明实施例提供的无人机转弯的一种示意图。
[0077]
在一个优选实施例中,在获取凸多边形的宽度时,本发明采取一种“点边式”算法。从凸多边形中选取一条边,计算除边的端点以为多边形所有顶点到选中边的距离,将最大距离记为这条边的跨度;重复上述步骤,直到遍历完所有凸多边形的边,并获取每条边所对应的跨度;比较每条边对应跨度的值,将最小的值作为凸多边形的宽度。
[0078]
根据上述思路实现凸多边形的宽度算法,具体步骤如下:
[0079]
步骤s501,将凸多边形v的逆时针顶点序列{ν1,ν2...ν
n
}输入算法;其中凸多边形的顶点个数为n,顶点v
i
(i∈[1,n 1])的坐标(x
i
,y
i
)用表示,同时将顶点序列的最后顶点设为第一个顶点,即(x
n 1
,y
n 1
)=(x1,y1);
[0080]
步骤s502,将i赋值为1,即i

1;
[0081]
步骤s503,将j赋值为1,即j

1;其中,j∈{v1,v2,
……
vn};
[0082]
步骤s504,由于不需要计算边v
i
v
i 1
的两个端点v
i
和v
i 1
与边v
i
v
i 1
的距离,所有当j≠i同时j≠i 1时(即除了顶点v
i
和v
i 1
),以下式计算顶点v
j
与边v
i
v
i 1
的距离的平方:
[0083]
步骤s505,判断j是否等于n;当j=n则执行步骤s406,当j≠n时,j

j 1执行步骤s504;
[0084]
步骤s506,找出边v
i
v
i 1
与剩下n

2个顶底的距离平方中的最大值其中,为边v
i
v
i 1
的跨度平方,并记录所对应的的顶点序号max_index
i

[0085]
步骤s507,如果i=n,则执行步骤s508,否则i

i 1,执行步骤s503;
[0086]
步骤s508,比较所有边所对应的跨度平方max_dis2,找出max_dis2中的最小值并开方,得到凸多边形的最小宽度,此时的边和顶点即为宽度所对应的边和顶点。输出凸多边形的最小宽度l
min
,和最小宽度所对应的边l
w
和顶点v
w
。图10是根据本发明实施例提供的一种采用点边式计算最小宽度的示意图,以图10中的多边形abcde为例。
[0087]
步骤s210,根据多个子区域对应的多个第一最小宽度、无人机单位时间内的探测范围和多个子区域对应的多个面积生成无人机搜索路径;基于搜索路径对多个子区域进行搜索;其中,搜索路径包括无人机对任一子区域进行搜索的第一搜索路径,以及无人机遍历多个子区域的第二搜索路径。
[0088]
本发明实施例中提供了一种可能的实现方式,根据多个子区域对应的多个第一最小宽度、无人机单位时间内的探测范围和多个子区域对应的多个面积生成无人机搜索路径;基于搜索路径对多个子区域进行搜索包括:根据无人机距离目标区域的垂直高度信息
及无人机的探测角度计算探测范围的探测面积;选定多个子区域的任一子区域为第二子区域,根据第二子区域的第一最小宽度和探测面积生成无人机在子区域中进行搜索的第一搜索路径;按照从与第二子区域相邻的子区域中选择面积最大的子区域作为待搜索的下一个子区域的搜索顺序,生成无人机遍历多个子区域的第二搜索路径;根据目标区域对应的多个第一搜索路径和第二搜索路径对多个子区域进行搜索。
[0089]
如图8所示,计算探测范围的面积,即计算图8中的阴影部分面积,基于探测范围半径r,利用公式圆面积s=2πr。
[0090]
优选地,若无人机飞行的转弯半径与探测范围对应的半径相同,根据第二子区域的第一最小宽度和探测面积生成无人机在子区域中进行搜索的第一搜索路径包括:以第二子区域的第一最小宽度对应的边作为直角坐标系的x轴,第二子区域的第一最小宽度对应的边的两顶点中任一顶点作为原点,构建直角坐标系;将第二子区域的第一最小宽度对应的边作为起始搜索边界,确定起始搜索边界与无人机的起始探测边界的交点的第一横坐标,以及确定起始搜索边界中除原点之外的顶点的第二横坐标;将第一横坐标和第二横坐标中横坐标较小的坐标点作为无人机搜索的起始点;确定搜索边界与无人机当前直线航路的交点的第三横坐标,确定搜索边界与无人机当前探测边界的第一边界的交点的第四横坐标,以及确定搜索边界与无人机当前探测边界的第二边界的交点的第五横坐标;将第三横坐标、第四横坐标和第五横坐标中横坐标较大的坐标点作为无人机搜索的掉头点;基于起始点和掉头点生成第一搜索路径。
[0091]
下面结合一具体实施例对本发明做进一步地说明:
[0092]
1)搜索起始点的选取
[0093]
设多边形顶点序列为v,可取最小宽度(即上述第一最小宽度)对应的边v
i
v
i 1
为x轴,该边一端点v
i
或v
i 1
为原点。需要说明的是,原点并不一定是搜索起始点,图11是根据本发明实施例提供的一种无人机搜索的起始点选取示意图,如图11所示,细实线表示搜索边界(即目标区域的起始搜索边界),粗实线表示平行航路(即上述无人机当前直线航路)以及在搜索区域外部的延长线,虚线表示无人机的传感器探测边界以及在搜索区域外部的延长线。若选择搜索区域顶点,即图11中起始点1作为搜索起始点,则会出现遗漏区域,若选择图11中起始点2作为搜索起始点就可以避免遗漏。因此,搜索起始点的选取方法为在第1条探测边界与搜索边界交点(即上述第一横坐标对应的交点)和搜索边界顶点(即上述第二横坐标对应的顶点)中,选择横坐标较小的点。
[0094]
2)转弯关键点的确定(即上述掉头点)
[0095]
当飞行方向为x轴正(负)方向时,搜索边界与当前直线航路的交点(即上述第三横坐标对应的交点)、与当前探测上边界的交点(即上述第四横坐标对应的交点)、与当前下边界的交点(即上述第五横坐标对应的交点),这3个点的横坐标最大(小值应该被选取为调头点或结束点的横坐标。需要注意的是,沿x轴正向(负向)飞行的结束点的横坐标最大(最小)不能大于(小于)航路与搜索边界交点的横坐标,同理沿x轴正向(负向)飞行的调头点的横坐标最小(最大)不能小于(大于)航路与搜索边界交点的横坐标,否则就取该交点的横坐标。
[0096]
例如,先假设最小转弯半径r与探测范围半径r相等,如图12所示,图12是根据本发明实施例提供的一种掉头点和结束点的选取示意图,搜索边界左侧为搜索区域内部,称开
始调头的点a为“掉头点”,掉头结束的点b为“结束点”。如图12所示,当搜索边界斜率较大时,若所有的调头点和结束点都处在边界上,就可能出现遗漏的情况,为了防止遗漏区域的产生,掉头点与结束点不能简单地在搜索边界上选取,如图13所示,图13是根据本发明实施例提供的另一种掉头点和结束点的选取示意图。
[0097]
3)搜索终点的确定
[0098]
优选地,图14是根据本发明实施例提供的一种无人机搜索终点的示意图,如图14所示,首先定义相对方向相同和相对方向相反:无人机在掉头点的行进方向(沿x轴正向取“ ”,负向取“-”)与其所处搜索边界的斜率符号相同,则称相对方向相同,否则称相对方向相反。
[0099]
根据搜索方向的不同分为4种情况(ⅰ~ⅳ)进行讨论,如图15所示,图15是根据本发明实施例提供的一种基于无人机搜索方向进行搜索的示意图,其中情况ⅱ和ⅲ中相对方向相同,掉头点在搜索边界上,结束点的横坐标应等于后一条探测边界(虚线)与搜索边界交点的横坐标(图15中竖直实线所示);情况ⅰ和ⅳ中相对方向相反,结束点在搜索边界上,掉头点的横坐标应等于前一条探测边界与搜索边界交点的横坐标。
[0100]
搜索终点本质是掉头点,只是不再进行转弯,搜索终点的确定方法为:当飞行方向为x轴正(负)向时,搜索边界与当前直线航路的交点、与当前探测上边界的交点、与当前下边界的交点,这3个点的横坐标最大(小)值应该被选取为搜索终点的横坐标。
[0101]
基于上述实施例,图16是根据本发明实施例提供的一种无人机在凸边形中搜索路径示意图,如图16所示,若图16中的凸多边形搜索完毕,无人机根据与该凸边形相邻的凸边形中,选择面积最大的凸边形进行下一个子区域的搜索。基于上述本发明实施例提供的无人机搜索方法,可以实现无人机喷洒农药;草原、荒野搜寻等应用。
[0102]
基于上文各个实施例提供的目标区域的搜索方法,基于同一发明构思,在本实施例中还提供了一种目标区域的搜索装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
[0103]
图17是根据本发明实施例提供的一种目标区域的搜索装置的结构框图,如图17所示,该装置包括:获取模块170,用于获取目标区域对应的多个顶点以及对应各顶点的顶点坐标,其中,目标区域的形状为多边形;判断模块172,连接至上述获取模块170,用于判断目标区域是否包含凹顶点;划分模块174,连接至上述判断模块172,用于若目标区域包含凹顶点,基于目标区域对应的各个顶点将目标区域划分为多个子区域,其中,每个子区域的形状为凸多边形;第一确定模块176,连接至上述划分模块174,用于确定任一子区域对应的多个凸边形宽度中的第一最小宽度;第一搜索模块178,连接至上述第一确定模块176,用于根据多个子区域对应的多个第一最小宽度、无人机单位时间内的探测范围和多个子区域对应的多个面积生成无人机搜索路径;基于搜索路径对多个子区域进行搜索;其中,搜索路径包括无人机对任一子区域进行搜索的第一搜索路径,以及无人机遍历多个子区域的第二搜索路径。
[0104]
可选的,上述装置还包括:第二确定模块,用于在判断目标区域是否包含凹顶点之后,若目标区域不包含凹顶点,目标区域为凸多边形;第三确定模块,用于确定目标区域对
应的多个凸边形宽度中的第二最小宽度;第二搜索模块,用于根据第二最小宽度、第一搜索路径以及探测范围,对目标区域进行搜索。
[0105]
可选的,划分模块174包括:第一存储单元,用于沿目标区域的预设方向,顺序将目标区域对应的各个顶点坐标存储至第一数组,其中,预设方向为目标区域的逆时针方向或顺时针方向;第一生成单元,用于选定第一数组中的任一凹顶点为目标凹顶点,将目标凹顶点与第一数组中除目标凹顶点之外的顶点进行连线,得到多条线段;第二存储单元,用于若多条线段中的任一目标线段在目标区域内或目标区域上,则将目标线段中除目标凹顶点的另一顶点,作为目标凹顶点的可见点,并将可见点存储至第二数组;划分单元,用于根据第二数组中的凹顶点数和凸顶点数将目标区域划分为多个子区域。
[0106]
可选的,划分单元包括:统计子单元,用于统计第二数组中凹顶点的第一数量;第一划分子单元,用于若第一数量大于或等于2,利用目标凹顶点依次与第二数组中的凹顶点连线,得到多条第一射线;从多条第一射线中查找与预设射线之间夹角最小的目标第一射线;利用目标第一射线,将目标区域划分为两个子区域;其中,预设射线表示沿着预设方向,以目标凹顶点的前一相邻线段的反向延长线与目标凹顶点的后一相邻线段的正向延长线形成的夹角的夹角平分线;第二划分子单元,用于若第一数量为1,利用目标凹顶点和第二数组中的凹顶点之间的连线将目标区域划分为两个子区域;第三划分子单元,用于若第一数量为0,将目标凹顶点与第二数组中任一凸顶点进行连线,得到多条第二射线;从多条第二射线中查找与预设射线之间夹角最小的目标第二射线,利用目标第二射线将目标区域划分为两个子区域;第四划分子单元,用于若第一数量和第二数量均为0,则利用预设射线将目标区域划分为两个子区域。
[0107]
可选的,第一确定模块176包括:第一确定单元,用于选定多个子区域中的任一子区域为第一子区域,确定第一子区域对应的各个顶点坐标;第一计算单元,用于选定第一子区域的任一边作为目标边,计算第一子区域中除目标边的两个顶点之外的顶点到目标边的距离值;从目标边对应的多个距离值中选择数值最大的目标距离值;第二确定单元,用于从第一子区域对应的多个目标距离值中选择数值最小的目标距离值,作为第一最小宽度。
[0108]
可选的,第一搜索模块178包括:第二计算单元,用于根据无人机距离目标区域的垂直高度信息及无人机的探测角度计算探测范围的探测面积;第二生成单元,用于选定多个子区域的任一子区域为第二子区域,根据第二子区域的第一最小宽度和探测面积生成无人机在子区域中进行搜索的第一搜索路径;第三生成单元,用于按照从与第二子区域相邻的子区域中选择面积最大的子区域作为待搜索的下一个子区域的搜索顺序,生成无人机遍历多个子区域的第二搜索路径;搜索单元,用于根据目标区域对应的多个第一搜索路径和第二搜索路径对多个子区域进行搜索。
[0109]
可选的,第二生成单元包括:构建子单元,用于当无人机飞行的转弯半径与探测范围对应的半径相同时,以第二子区域的第一最小宽度对应的边作为直角坐标系的x轴,第二子区域的第一最小宽度对应的边的两顶点中任一顶点作为原点,构建直角坐标系;第一确定子单元,用于将第二子区域的第一最小宽度对应的边作为起始搜索边界,确定起始搜索边界与无人机的起始探测边界的交点的第一横坐标,以及确定起始搜索边界中除原点之外的顶点的第二横坐标;将第一横坐标和第二横坐标中横坐标较小的坐标点作为无人机搜索的起始点;第二确定子单元,用于确定搜索边界与无人机当前直线航路的交点的第三横坐
标,确定搜索边界与无人机当前探测边界的第一边界的交点的第四横坐标,以及确定搜索边界与无人机当前探测边界的第二边界的交点的第五横坐标;将第三横坐标、第四横坐标和第五横坐标中横坐标较大的坐标点作为无人机搜索的掉头点;生成子单元,用于基于起始点和掉头点生成第一搜索路径。
[0110]
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
[0111]
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
[0112]
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
[0113]
s1,获取目标区域对应的多个顶点以及各顶点的顶点坐标,其中,所述目标区域的形状为多边形;
[0114]
s2,判断所述目标区域是否包含凹顶点;
[0115]
s3,若所述目标区域包含凹顶点,基于所述目标区域对应的各个顶点将所述目标区域划分为多个子区域,其中,每个子区域的形状为凸多边形;
[0116]
s4,确定任一子区域对应的多个凸边形宽度中的第一最小宽度;
[0117]
s5,根据多个子区域对应的多个第一最小宽度、无人机单位时间内的探测范围和所述多个子区域对应的多个面积生成所述无人机搜索路径;基于所述搜索路径对所述多个子区域进行搜索;其中,所述搜索路径包括所述无人机对任一子区域进行搜索的第一搜索路径,以及所述无人机遍历所述多个子区域的第二搜索路径。
[0118]
可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(read

only memory,简称为rom)、随机存取存储器(random access memory,简称为ram)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
[0119]
基于上述图2所示方法和图17所示装置的实施例,为了实现上述目的,本技术实施例还提供了一种电子设备,如图18所示,包括存储器182和处理器181,其中存储器182和处理器181均设置在总线183上存储器182存储有计算机程序,处理器181执行计算机程序时实现图2所示的目标区域的搜索方法。
[0120]
基于这样的理解,本技术的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个存储器(可以是cd

rom,u盘,移动硬盘等)中,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施场景所述的方法。
[0121]
可选地,该设备还可以连接用户接口、网络接口、摄像头、射频(radio frequency,rf)电路,传感器、音频电路、wi

fi模块等等。用户接口可以包括显示屏(display)、输入单元比如键盘(keyboard)等,可选用户接口还可以包括usb接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如蓝牙接口、wi

fi接口)等。
[0122]
本领域技术人员可以理解,本实施例提供的一种电子设备的结构并不构成对该实体设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0123]
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的
示例,本实施例在此不再赘述。
[0124]
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
[0125]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献