一种红火蚁蚁巢被河流、公路分隔开的判断方法与流程

allin2022-07-12  255



1.本发明涉及病虫害防护技术领域,具体涉及一种红火蚁蚁巢被河流、公路分隔开的判断方法。


背景技术:

2.红火蚁被列为全球100种最具破坏力的入侵生物之一,对人体、农林业、公共安全和地区生态多样性都具有危害。红火蚁是一种严重威胁人类安全、公共设施、农林生产和生物多样性的重大入侵害虫,属于一种杂食性的土栖蚁类,在国际上被列为极具破坏性和攻击性的入侵生物之一。鉴于此,我国各地政府对红火蚁疫情监测高度重视,在未发现红火蚁之前对辖区内草坪、绿化带、苗木场、公园、废旧物回收站等高危区域进行大范围普查、监测,在发现红火蚁之后及时制定、实施防控或根除方案。而红火蚁发生面积是评估蚁情等级及严重程度的重要依据之一。现有技术中,如《广东省农业厅红火蚁发生点、监测区范围划定和管理办法》(以下简称《办法》)第三条:根据红火蚁发生分布情况及传播情况,结合地理环境,红火蚁有效蚁巢外缘10米范围划定为一个发生点,两个发生点有效蚁巢外缘距离在40米以内,视为同一个发生点。若遇河流、公路等情况,可根据实际适当调整。红火蚁发生区有明显蚁巢的,1个活蚁巢面积计算方法:以该蚁巢外缘10米为半径,其圆的面积为该发生点红火蚁发生面积。如果2个及2个以上活蚁巢外缘距离在40米以内,视为同一个发生点,只计算一个蚁巢的发生面积即可。
3.《办法》中提到:“两个发生点有效蚁巢外缘距离在40米以内,视为同一个发生点。若遇河流、公路等情况,可根据实际适当调整。”因此,即使一些河流、公路的宽度不足40米,河流、公路两侧的红火蚁蚁巢也应该作为独立发生点进行红火蚁发生面积的计算。公路主要指国道、省道、县道、乡道、专用道路分隔开的蚁巢,即被以上道路分隔的蚁巢外缘距离小于40米,仍按独立发生点进行发生面积计算。而类似乡间农作道路等非水泥、沥青、混凝土等硬化道路分隔开的蚁巢,按蚁巢外缘距离是否在40米范围进行发生点的判断与发生面积计算。
4.现有的河流、公路的方向多样,被河流、公路分隔形成的区域不规则、无规律;存在一个红火蚁监测团队监测的区域内有多条河流、公路的情况;存在公路、河流两侧由不同红火蚁监测团队进行监测的情况;存在公路、河流两侧的红火蚁监测时间不同步的情况。
5.现实中一个地区的红火蚁蚁巢点因为数量众多,该地区内的蚁巢点监测采集通常需要多个监测团队在多天甚至多个月来完成。在计算红火蚁发生面积的有效蚁巢点前,需要额外安排人力进行统筹,通过人工的方式标注出外缘距离在40米以内但被河流、公路分隔开的蚁巢点。工作量繁杂巨大的同时易遗漏、出错。


技术实现要素:

6.本发明针对现有技术的不足,提出一种可识别河流、国道、省道、县道、乡道和专用道路场景的红火蚁蚁巢被河流、公路分隔开的判断方法,具体技术方案如下:
7.一种红火蚁蚁巢被河流、公路分隔开的判断方法,具体步骤为:
8.s1:选取地理位置提供商提供的开放平台p;
9.s2:分别选取开放平台p上河流、国道、省道、县道、乡道和专用道路在所提供地图上标注颜色的rgb值,并放入集合u
rgb
中;
10.s3:把所有新采集的蚁巢点作为待处理点放入集合uta中;
11.s4:判断集合uta是否为空,如果为空转到s27,否则转到s5;
12.s5:从集合uta中取点a;
13.s6:把与点a距离小于外缘距离的待处理点放入集合utb,该外缘距离具体为两个及两个以上活蚁巢视为同一个发生点的距离;
14.s7:把与点a距离小于外缘距离且在边集e中没有与其构建边的已处理点放入集合utb;
15.s8:判断集合utb是否为空,如果为空转到s25,否则转到s9;
16.s9:通过开放平台p的api返回一张静态地图图片m,调用api接口提供如下参数:
17.图片中心点为点a的经纬度;缩放级别设置为大于0的整数z;宽度为2*d像素,长度为2*d像素,d是大于0的整数;
18.s10:设定图片m的左上角为坐标原点(0,0),建立图片m的像素坐标系;
19.s11:a是图片中心点,所以a在像素坐标系中的坐标(xa,ya)值为xa=d,ya=d;
20.s12:对集合utb中的任意一点b,计算其在像素坐标系中的坐标(xb,yb);
21.s13:判断集合utb是否为空,如果为空转到s25,否则转到s14;
22.s14:从集合utb中取点b;
23.s15:在边集e中加入边ab,其属性“状态”值设置为“有效”,该边集e具体为e是蚁巢点的边集,e中每条边的两个蚁巢点,之间的距离小于外缘距离;
24.s16:计算从点a到点b的x轴坐标步进值s
x
,y轴坐标步进值sy;
25.s17:设置变量vi的值为0;
26.s18:变量vi的值自加1;
27.s19:根据步进值计算从点a向b点靠近vi倍步进值的像素点j的坐标(xj,yj);
28.s20:判断点j是否还在边ab上,如果是转到s21,否则转到s24;
29.s21:从图片m中返回点j(xj,yj)的rgb值k;
30.s22:判断k是否在集合u
rgb
中,如果在转到s23,否则转到s18;
31.s23:更改边ab的属性“状态”值为“无效”;
32.s24:从集合utb中移除点b,转到s13;
33.s25:更改点a的状态为“已处理”;
34.s26:从集合uta中移除点a,转到s4;
35.s27:方法结束,边集e中的属性“状态”值是“有效”的边,是后续红火蚁发生面积的有效蚁巢点计算的有效边。
36.作为优化:所述s12:对utb中的任意一点b,计算其在像素坐标系中的坐标(xb,yb)具体为,
37.s1201:把点a的经纬度转换为高斯平面直角坐标(xa
gp
,ya
gp
);
38.s1202:把点b的经纬度转换为高斯平面直角坐标(xb
gp
,yb
gp
);
39.s1203:基于a(xa
gp
,ya
gp
)、b(xb
gp
,yb
gp
)的值,以及a在像素坐标系中的坐标(xa,ya)值,计算得出b在像素坐标系中的坐标(xb,yb)值。
40.作为优化:所述s16:计算从点a到点b的x轴坐标步进值s
x
,y轴坐标步进值sy具体为;
41.s1601:设置变量v
step
是从点a向点b在边ab上所取判断点的坐标步进值;
42.s1602:判断xa减去xb的绝对值是否大于ya减去yb的绝对值,如果是转到s1603,否则转到s1604;
43.s1603:设置x轴坐标步进值s
x
=v
step
,设置y轴坐标步进值sy=|ya-yb|/(|xa-xb|/v
step
),转到s1607;
44.s1604:判断ya减去yb的绝对值是否大于xa减去xb的绝对值,如果是转到s1605,否则转到s1606;
45.s1605:设置x轴坐标步进值s
x
=|xa-xb|/(|ya-yb|/v
step
),设置y轴坐标步进值sy=v
step
,转到s1607;
46.s1606:设置x轴坐标步进值s
x
=v
step
,设置y轴坐标步进值sy=v
step

47.s1607:结束。
48.本发明的有益效果为:采用地理位置数据和蚁巢点位置数据结合,快速准确的识别和标注蚁巢点,高效快速,并且位置精准,给红蚁的防治,提供有效的数据支撑。
附图说明
49.图1本发明流程图第一部分;
50.图2本发明流程图第二部分;
51.图3为本发明中计算点b其在像素坐标系中的坐标(xb,yb)流程图;
52.图4为本发明中x轴坐标步进值s
x
、y轴坐标步进值sy计算流程图。
具体实施方式
53.下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
54.如图1、图2、图3和图4所示:一种红火蚁蚁巢被河流、公路分隔开的判断方法,方法中的名词定义如下:
55.令dist是2个及2个以上活蚁巢视为同一个发生点的外缘距离。
56.令e是蚁巢点的边集,e中每条边的两个端点(蚁巢点)之间的距离小于dist,属性“状态”的值缺省为“有效”,值“无效”表示两个端点之间的距离小于dist,但之间被河流或公路分隔开。
57.待处理点:指还未进行河流、公路分隔判断的蚁巢点。
58.已处理点:指已经进行河流、公路分隔判断的蚁巢点。
59.进一步的,待处理点、已处理点通过蚁巢点属性“状态”进行标识区分,其值为“已处理”表示已处理点,值为“未处理”表示未处理点。新采集的蚁巢点属性“状态”缺省值为“待处理”。
60.lbs:基于位置的服务(location based services,lbs)。
61.具体步骤为:
62.s1:选取lbs服务提供商提供的开放平台p。
63.s2:分别选取开放平台p上河流、国道、省道、县道、乡道、专用道路在所提供地图上标注颜色的rgb值,并放入集合urgb中。
64.s3:把所有新采集的蚁巢点作为待处理点放入集合uta中。
65.s4:判断集合uta是否为空,如果为空转到s27,否则转到s5。
66.s5:从集合uta中取点a。
67.s6:把与点a距离小于dist的待处理点放入集合utb。
68.s7:把与点a距离小于dist的且在边集e中没有与其构建边的已处理点放入集合utb。
69.s8:判断集合utb是否为空,如果为空转到s25,否则转到s9。
70.s9:通过开放平台p的api返回一张静态地图图片m,调用api接口提供如下参数:
71.图片中心点为点a的经纬度;缩放级别设置为大于0的整数z;宽度为2*d像素,长度为2*d像素,d是大于0的整数。
72.s10:设定图片m的左上角为坐标原点(0,0),建立图片m的像素坐标系。
73.s11:a是图片中心点,所以a在像素坐标系中的坐标(xa,ya)值为xa=d,ya=d。
74.s12:对utb中的任意一点b,计算其在像素坐标系中的坐标(xb,yb)。
75.过程如下:
76.s1201:把点a的经纬度转换为高斯平面直角坐标(xagp,yagp)。
77.s1202:把点b的经纬度转换为高斯平面直角坐标(xbgp,ybgp)。
78.s1203:基于a(xagp,yagp)、b(xbgp,ybgp)的值,以及a在像素坐标系中的坐标(xa,ya)值,计算得出b在像素坐标系中的坐标(xb,yb)值。
79.s13:判断集合utb是否为空,如果为空转到s25,否则转到s14。
80.s14:从集合utb中取点b。
81.s15:在边集e中加入边ab,其属性“状态”值设置为“有效”。
82.s16:计算从点a到点b的x轴坐标步进值sx,y轴坐标步进值sy。
83.过程如下:
84.s1601:设置变量vstep是从点a向点b在边ab上所取判断点的坐标步进值。
85.s1602:判断xa减去xb的绝对值是否大于ya减去yb的绝对值,如果是转到s1603,否则转到s1604。
86.s1603:设置x轴坐标步进值sx=vstep,设置y轴坐标步进值sy=|ya-yb|/(|xa-xb|/vstep)。转到s1607。
87.s1604:判断ya减去yb的绝对值是否大于xa减去xb的绝对值,如果是转到s1605,否则转到s1606。
88.s1605:设置x轴坐标步进值sx=|xa-xb|/(|ya-yb|/vstep),设置y轴坐标步进值sy=vstep。转到s1607。
89.s1606:设置x轴坐标步进值sx=vstep,设置y轴坐标步进值sy=vstep。
90.s1607:结束。
91.s17:设置变量vi的值为0。
92.s18:变量vi的值自加1。
93.s19:根据步进值计算从点a向b点靠近vi倍步进值的像素点j的坐标(xj,yj)。
94.s20:判断点j是否还在边ab上,如果是转到s21,否则转到s24。
95.s21:从图片m中返回点j(xj,yj)的rgb值k。
96.s22:判断k是否在集合urgb中,如果在转到s23,否则转到s18;
97.s23:更改边ab的属性“状态”值为“无效”。
98.s24:从utb中移除点b。转到s13。
99.s25:更改点a的状态为“已处理”。
100.s26:从uta中移除点a。转到s4。
101.s27:方法结束,边集e中的属性“状态”值是“有效”的边,是后续红火蚁发生面积的有效蚁巢点计算的有效边。
转载请注明原文地址: https://www.8miu.com/read-158.html

最新回复(0)