APP下载

基于移动GIS的棉田病虫害服务发布系统

2017-07-21靳光才赵庆展周文杰许金霞

江苏农业科学 2017年10期
关键词:棉花病虫害服务

靳光才 赵庆展 周文杰 许金霞

摘要:针对棉田病虫害信息发布时效性差、服务形式单一、针对性不足等问题,基于移动地理信息系统(geographic information systems,简称GIS)技术研发了服务器/客户端(C/S)架构下的棉叶螨病虫害信息发布系统。服务端运用ArcGIS Server实现对病虫害专题的统一发布与管理。针对病虫害专题图和基础棉田信息进行交叉分析,然后使用ArcMap中的结构化查询语言(structured query language,简称SQL)语句筛选出虫害等级较高的区域,并提取对应的农户信息,最后采用JPush第三方推送平台,将监测及预警信息直接推送到特定农户。客户端基于Android平台,集成JPush开发包构建应用程序,通过注册信息可实现推送信息的订阅,随后可接收服务端推送的文本预警信息或专题图。结果表明,系统对服务的发布具有时效性高、针对性强等特点,可为农情信息发布提供参考。

关键词:移动GIS;棉花;病虫害;服务;推送

中图分类号: TP274+.2;S126文献标志码: A

文章编号:1002-1302(2017)10-0196-03

棉花是新疆重要的经济作物,棉田病虫害是造成棉花减产的主要原因之一。及时且准确地将病虫害的监测及预测等信息传递到植保部门及农户手中,快速采取科学的防治措施,是控制病虫害发展与蔓延、维护棉花可持续发展的关键环节。

近年来,计算机网络技术与地理信息系统相结合的网络地理信息系统(web geographic information system,简称 WebGIS),充分发挥了GIS强大的快速、实时空间信息获取分析能力与网络极为便捷的数据分享能力,极大提高了病虫害发布的及时性,再加上智能手机的快速普及,GIS在智能终端应用十分广泛,已成为野外信息采集及信息发布等主流的解决方案。潘洁等基于网络GIS,构建了森林病虫害监测系統,实现了病虫害监测的实时发布[1];陈万钧等基于Android系统,针对林业有害生物实现了病虫害灾情上报,以可视化数据形式发布病虫害预警等功能[2]。但还存在不足:基于WebGIS的信息发布模式虽然内容丰富、共享性强,但实际受众小、用户黏性低,并且由于缺少消息推送机制,导致用户查看信息存在滞后问题[3-4];移动GIS技术目前多用于信息采集,服务接收方面局限于文字或可视化的图表形式,消息内容单一,缺少个性化的信息服务[5-6]。

本研究充分运用移动GIS的经济、便捷及位置感知能力等特点,采用服务器/客户端(C/S)结构构建了棉田病虫害信息发布系统。服务端统筹管理,负责消息发布与针对病虫害严重区域个性化推送;客户端可实现对个性化服务的订阅与接收,基于位置对服务端发布的专题图在线浏览。系统通过消息推送提高了病虫害信息的时效性,个性化服务订阅充分发挥了信息的价值,为提升农情服务发布质量提供参考。

1棉田病虫害信息发布系统设计

1.1系统结构设计

如图1所示,棉田病虫害信息发布系统采用C/S结构。空间数据库存放病虫害发生数据及农户信息、基础棉田信息等。服务端一方面将病虫害监测及预测专题图运用ArcMap进行编辑处理,并发布到ArcGIS for Server上供客户端浏览;另一方面,针对病虫害专题图和基础地块地图进行交叉分析,并运用QueryLayer通过SQL语句筛选出病虫害发生严重区域的农户信息,同时编辑提醒消息,借助于极光推送平台JPush云推送到农户手机。

1.2系统流程设计

系统以精准而高效地发布虫害服务为目标,针对虫害信息专题图,一方面,使用ArcMap软件将它制作为专题图服务,通过ArcGIS Server发布出去,用户可在PC端通过浏览器或者手机APP中浏览专题图;另一方面,将虫害信息专题图与包含农户信息(别名)的棉田地块地图进行交叉分析,得到新的兼具两者的信息地图。然后使用SQL语句,根据病虫害等级,筛选出危害严重的区域并提取对应的标签,再通过JPush平台,依据别名向用户进行针对性地推送预警及专题图地址等相关信息。用户使用APP与JPush推送平台建立长连接,并在JPush平台注册个人标签加以区分,当推送消息的对象中包含此标签时,即可接收并在通知栏显示相应的消息,用户点击通知栏后,即可自动读取消息中内含的专题图地址,并自动跳转到专题图显示页面,读取服务端发布的病虫害专题图(图2)。

2系统详细设计

2.1服务端功能设计

2.1.1专题图制作及服务发布

病虫害专题图可以简单有效地显示病虫害的发生程度及具体分布,是目前主流农情的发布方式。为了便于在移动端显示,需要将栅格图片形式的专题图转换为矢量图,同时添加地理坐标,用户在移动端浏览专题图时可充分利用可定位性的特点,直接浏览当前位置的病虫害发生情况。

病虫害专题图往往通过不同颜色标注不同的等级,为了科学规范区分各个病虫害等级,首先对原有的专题图数据进行重分类、简化或合并某些类别,将栅格中相近的值归为一类,统一将病虫害严重情况分为5级。然后将栅格形式的专题图数据转为矢量数据,并进行配准,添加地理坐标。最后将准备好的矢量格式的病虫害专题图数据使用 ArcMap 制作为服务,通过ArcGIS for Server发布出去。

2.1.2病虫害严重区域筛选及推送信息提取

在实际生产过程中,农户一方面可通过专题图全面地了解、关注整个区域病虫害发生趋势。另一方面,用户更为关注自己农田的病虫害发生情况,因此向用户推送其农田所属区域病虫害状况非常必要。

为了提取病虫害发生严重区域所属的农户信息,将上述得到的矢量格式的病虫害专题图与基础农田数据进行交叉分析,得到新的数据层中既包含病虫害发生区域与等级数据,又包含所属农田的基本信息,其中,农田的基本信息中包括承包户的姓名、手机号等。然后针对新的数据层,使用SQL语句,设定病虫害的类型、等级等条件,筛选出需要向用户推送的数据,并导出所属承包户的基本信息,为信息推送作准备。

2.1.3消息精准推送

服务端的消息往往随机不定时更新,移动端获取服务端上的信息一般有2种方法:Pull(拉)和Push(推)。Pull方法即移动端每隔一段时间主动检查服务器上有没有信息,有则获取,无则等待至下个时间点。该方法时间间隔难以掌控,间隔若大容易产生消息滞后问题,间隔太小既浪费电源又消耗流量。Push方法则每有新消息,服务器将消息直接推送到移动端,该方案需通过注册机制在移动端和服务端之间建立一条长连接。

本系统采用国内较为成熟的极光推送平台JPush,通过JPush与移动端建立长连接。JPush平台支持3种灵活的推送方式,分别为广播推送:向所有的注册用户发送1条广播消息;标签推送:根据属性对用户设置标签分组,向群组用户发送;别名推送:绑定用户别名,向具体的单个用户推送。为实现精准推送,用户在移动端与JPush建立连接的同时设置别名,实现个性化的精确推送。

2.2移动端功能设计

移动端的核心功能在于能够准确地接收服务端推送的文本消息,从服务端加载并浏览发布的专题图服务。为了及时有效地接收服务端推送的信息,需要与服务端建立长连接,而实现精准的个性化推送则需要向服务端注册特定的标签。移动端接收推送的消息后,应能及时地从服务端加载专题图服务并合理地显示。

2.2.1用户注册与服务订阅

为了及时有效地接收服务端推送的消息,用户在打开APP后,自动与服务端的JPush平台建立长连接,并且通过JPush平台提供的应用程序接口(application programming interface,简称API),设置别名与标签、订阅服务内容。其中别名与基本农田信息中的用户手机号对应,每个用户都是唯一的,标签则是分组名称,如按照行政区域进行设置。服务端提取病虫害发生严重区域所属的农户信息后,可根据标签进行分组推送,或根据别名行更加针对性地推送,使得病虫害服务更为精确、实用。

2.2.2专题图信息浏览

服务端发布新的专题图后,可在JPush平台通过广播向所有用户发布通知,同时将服务地址内嵌在消息中。用户可在手机通知栏中接收消息,点击之后,APP可自动跳转至服务浏览界面。目前,专题图浏览多在浏览器中进行,此方法难以读取位置专题中的位置信息。系统采用ArcGIS runtime for Android sdk进行开发,可通过图层形式将专题图展示在界面中,并利用全球定位系统(global positioning system,简称GPS)读取当前位置的信息,方便用户查看当前位置的病虫害发生情况。此外,还可接收所注册的标签及别名所推送的文本信息。系统功能如图3所示。

2.3核心功能实现

系统开发环境为JDK 7.0+Android sdk4.0+ArcGIS runtime sdk for Android 10.2.7+Eclipse 6.0;开发平台操作系统为Windows 8;开发语言为Java;移动终端测试环境为魅蓝M1,系统为Android 4.4。

2.3.1病虫害服务制作与发布

专题图多为图片,即栅格格式,为了将专题图发布至网络使它便于在移动端显示,采用ArcMap 10.1中的可视化建模工具(model builder),建立如图4所示的处理模型。模型输入为病虫害专题图及研究区边界图,输出为矢量格式(shapfile)的病虫害专题图。首先使用ArcGIS中提供的重分类工具(reclass),根据实际生产需求,将病虫害按照要求划分为5个等级。然后使用栅格转矢量工具(raster to polygon)得到各个等级的矢量数据形式,使用裁剪工具(clip)截取研究区内的病虫害数据。最后,使用平滑多边形工具(smooth polygon)将多边形轮廓的尖角平滑化,提高制图质量。

使用ArcMap连接ArcGIS Server,将上述制作的专题图发布到ArcGIS Server上,值得注意的是,发布过程中需勾选mobile data access选项,否则无法在移动端正常加载。

2.3.2服务订阅与推送

为实现推送功能,移动端APP开发中集成了JPush for Android SDK 2.1.3,在JPush官网申请Appkey后即可免费使用。调用init(context)接口可实现与JPush平台建立TCP长连接,通过JPush Interface接口中设置标签及别名的方法进行个性化服务订阅,标签按照行政区设置,别名设定为用户手机号,与基本棉田数据信息中的承包户手机号对应。通过JPush Web端设定需要推送的标签或别名,通过JPush平台的JPush API,调用Push Engien在已建立连接的移动端中需找相匹配的进行推送。JPush結构如图5所示。

2.3.3病虫害服务精确推送及服务浏览

精确推送的前提是提取出病虫害发生严重区域所属的承包户信息。使用交叉分析(Intersect),输入病虫害矢量专题图和基本农田信息,输出的结果即可得到每块田的病虫害等级情况。处理过程如图6所示,结果如图7-a所示,同时,按照植保防治规范,将病虫害发生程度由轻到重分为1~5级,分别用白色、绿色、黄色、橙色、红色表示。

获得交叉分析结果后,根据实际生产需求,在ArcMap中可通过SQL语句,设定病虫害等级范围,筛选出病虫害发生严重区域(图7-b),并导出所属的承包户信息。最后,在JPush平台中,可编辑相关文本信息,设定上述提取的农户标签或别名,向移动端进行服务推送,已在JPush平台订阅了相关标签及别名的终端即可在通知栏顺利接收到推送消息(图8-a)。

为了更加便捷地显示服务端发布的专题图,移动端集成了ArcGIS runtime for Android,它提供了丰富的地图显示及移动、缩放API。采用MapView类作为地图显示的容器,使用ArcGISDynamicMapServiceLayer(http://192.168.1.4:6080/arcgis/rest/services/p1/MapServer)方式加载服务地址创建图层,加载到MapView中即可显示(图8-b)。专题图可定位到当前位置,浏览周围的病虫害状况。

2.3.4系统测试

2015年6—8月,在新疆生产建设兵团第八师125团进行了本系统测试试运行。实践表明,系统可准确提取出病虫害严重区域所属承包户信息,准确率在90%以

上;标签设置为连队信息,别名设置为用户的手机号,均可实现准确推送,可在3~5 s内完成;病虫害专题图清晰、准确,浏览过程中流畅无卡顿,并且可读取GPS位置,定位到当前点,位置误差在15 m内。

3结论

系统运用移动GIS技术,使用ArcGIS Server发布病虫害专题图服务,集成ArcGIS runtime for Android实现了专题图浏览。使用Model Builder建模及SQL实现了病虫害严重区域的农户信息提取,并借助JPush推送平台实现精准推送。在系统试用过程中,用户可第一时间在移动端浏览病虫害专题图服务,并接收推送的信息,时效性强、针对性高。今后可进一步集成服务端的专题图制作、发布、消息推送等功能,实现系统运行业务化、流程化。

[HS2*3][HT8.5H]参考文献:

[1]潘洁,廖振峰,张衡,等. 基于高光谱数据与网络GIS应用的森林病虫害监测系统研究[J]. 世界林业研究,2015,28(3):47-52.

[2]陈万钧,张维玲,钟建华,等. 基于Android系统的林业有害生物防治系统设计[J]. 广东农业科学,2013,40(18):181-185.

[3]刘小红,戴小鹏,刘海波,等. 基于WebGIS的水稻病虫害预警平台设计[J]. 农业灾害研究,2012,2(1):6-8.[HJ1.68mm]

[4]廖振峰,潘洁,张衡. 基于GIS的森林病虫害监测系统开发的研究进展[J]. 林业资源管理,2013,6(12):174-179.

[5]赵庆展,靳光才,周文杰,等. 基于移动GIS的棉田病虫害信息采集系统[J]. 农业工程学报,2015,31(4):183-190.

[6]贾桂霞,吴步梅,张文利. 基于Android的经济林病虫害防治移动服务平台的构建[J]. 兰州工业学院学报,2015,22(3):51-55.

[7]Werts J D,Mikhailova E A,Post C J,et al. An integrated WebGIS framework for volunteered geographic information and social media in soil and water conservation[J]. Environmental Management,2012,49(4):816-832.

[8]Wu A N,Yan X,Zhang X L. Geo-tagged mobile photo sharing in collaborative emergency management[C]. Proceedings of the 2011 Visual Information Communication International Symposium,USA:ACM Digital Library,2011.

[9]李文闖. 基于Android的移动GIS数据采集系统研究[D]. 北京:首都师范大学,2013.

[10]陶琼,高福宏,李忠环,等. 基于WebGIS的烟草病虫害监测预警防治技术体系的设计与构建[J]. 安徽农业科学,2013,41(5):2246-2247,2323.

[11]佚名. 极光推送官方文档[EB/OL].(2015-05-20)[2016-08-10]. http://docs.jiguang.cn.

[FQ)]

猜你喜欢

棉花病虫害服务
棉花是花吗?
春季葡萄苗病虫害咋样防治
夏季玉米主要病虫害有哪些
三招搞定花卉病虫害
棉花
服务在身边 健康每一天
服务在身边 健康每一天
服务在身边 健康每一天
第三讲 棉花肥害诊断及其防治
梨病虫害防治时间表