基于大数据平台的农作物病虫监测预警系统的研究
2020-07-27刘心怡阳小牙梁振京
刘心怡,乐 毅,阳小牙,梁振京
(1.安徽农业大学 安徽省北斗精准农业信息工程实验室,安徽 合肥 230036;2.安徽农业大学 植物保护学院,安徽 合肥 230036)
随着互联网技术以及大数据的发展,合理使用互联网和数字化技术开发农作物病虫预警系统是当今信息化社会的发展趋势[1],通过计算机技术提高监测预警能力,是加速发展植物保护事业必然使用的方式[2]。建立病虫害监测预警系统是植物保护工作所面临的长期任务,是各项工作的基础。我国是一个农业大国,农作物病虫害高发。近年来,由于气象因素变化、耕种方式不适宜、各类农作物病虫抗耐药性增长,多种农作物病虫害发病率显著增加,这将使植物保护的相关工作人员的工作更加繁杂并对其提出更高的工作要求。现有农作物病虫监测预警系统的数据大多由县级植保站工作人员收集、统计、上报,上报填写格式没有统一规范,造成病虫害的监测预警工作难以及时、顺利地完成[3]。
最近几年,国内外农作物病虫害研究发展迅速[4]。Magarey 等通过web网页将气候与地理信息数据结合的NAPPFAST虫害预警系统,对病虫害风险图谱提出了实用的想法[5]。Dreves 等关于针对入侵害虫的 IPM 方案[6]。农作物的病虫害研究工作是人民健康安全的基础,与经济发展及社会安定密切相关,同时也影响着社会稳定和政府形象。
考虑到发展需要及各方面因素,对原系统进行了改进升级,开发出预警系统运行的新模式。基于大数据平台的安徽省农作物病虫监测预警系统于2019年上线使用,实现了对小麦、水稻、棉花、玉米、油菜等主要作物病虫害数字化监测预警,全省主要农作物的病虫数据上报统一标准,查询起来更方便,监测数据实时共享。该系统通过大数据平台实现了预报可视化、监测数字化,通过视频监控直观形象地查看到试验田的农作物生长状态、实时天气情况、病虫害的实际情况;通过可视化页面,可以清晰地了解全省各种农作物数据及生长分布情况,各县级、市级植保站数据上报时间和数据种类;通过直观的图表可以得到初步病虫预警的信息,预测过程更加清晰便捷。只有不断探索丰富农作物病虫害预警的方式,结合新型的方法,才能提高病虫监测预警的能力[7]。
1 系统的总体框架
基于大数据平台的安徽省农作物病虫监测预警系统的目标是打破我省植保行业的信息壁垒,结合政府监管、植保工作者的推动,实现资源共享、监管透明、信息准确、预警及时。系统建立了安徽省农作物主要病虫监测预警基础数据库,运用行政区划、生态区划数据融合技术,解决了安徽主要农作物病虫监测数据时空局限和各植保站点间数据不均衡、缺失等问题,支撑了全省病虫监测数据实时共享等功能[8]。建立了集农作物病虫数据上报及查询、动态预测、大数据展示等多种功能为一体的综合服务平台。基于大数据平台的安徽省农作物病虫监测预警系统的主要功能模块如图1所示。
图1 系统主要功能模块
系统采用B/S模式,用mysql数据库和ThinkPHP5.0的后台框架及数据可视化工具echarts呈现出丰富图表类型,将系统的重点数据合理分析处理并通过大数据平台展示,使得整个分析过程中数据的可读性更高,预警更加及时。系统的整体架构如图2所示。
图2 系统的整体架构图
2 平台关键技术
2.1 数据的统一存储和编码标准化
农作物病虫监测预警系统中的数据需要整合,主要原因是早期数据标准很难完全统一,具有相同意义的数据在人工填写过程中出现差异,导致源数据在存储到数据库时就出现差错。为了实现系统统一快捷的信息上报和查询服务,以及后期数据处理的精准和监测预警的目的,必须要为各个植保站工作人员填写的源数据制定统一标准,并在存储到系统数据库之前自动校验标准性。这就需要实现对用户的合理分类和编码标准化,以及制定统一的数据标准。
为了实现用户的合理分类和编码标准化,依据国家统计局统计的区划和城乡划分代码,对全省植保站进行区域划分和编码设计。将全省监管部门以及市县植保站划分为3个层级,分别编号,并统一命名。第一、二位数字表示省级监管部门和植保总站(省植保站:340000000)属于最高权限;第三、四位数字表示市级植保站(合肥市植保站:340100000),其工作是汇总确认县级上报的数据,并将数据上报给省站,属于第二层级;第五、六位数字表示区/县级监管部门(肥东县植保站:340122000),主要负责从基层试验田记录收取农作物病虫数据,根据上级要求填写系统中的逐次数据上报和周报数据上报,是整个系统数据来源的基石,属于第三层级。做好编码标准化是实现病虫害数据上报、数据存储、整合、预测管理等功能的基础。
2.2 周报数据自动汇总
病虫监测预警系统的重要功能模块之一是周报上报,也是大数据平台的主要数据来源。根据安徽省常见农作物,系统将作物类型分为水稻、小麦、玉米、棉花、油菜、大豆、花生。周报病虫数据的上报是根据农作物生长周期同步进行的,每周填写一份报表,每份报表对应一个植保站的一种作物类型的数据,该数据包括不同的病虫类型。周报数据上报方式为逐层上报、逐层汇总模式。首先各县站将农作物发生的各类病虫数据在周报表上填写,向市级上报,然后各市站对其下辖的各县级植保站上报的数据信息汇总核查,核查无误之后向省级上报,最后省站再对各市站上报数据信息进行再次汇总,得到安徽省农作物病虫害的周报表。
早期周报数据是由工作人员手动填写,人工计算汇总、填写汇总表。在2019年上线的新版系统中,通过后台自动计算汇总,避免了手动计算带来的差错。系统中周报数据需要上报的项目如图3所示。
图3 水稻周报表示例
由于上报的数据比较繁杂,升级改进过的系统通过后台代码快速进行复杂的计算,自动将县级的周报数据汇总成市级周报,市级植保站确认之后,系统可以汇总各市的周报数据生成省报表。既节约了各省市级植保站的工作量,又提高了准确率。部分需要计算汇总数据如下:
(1)同期相比。该数值是根据上年同一时间、同一作物的同一病虫名称的平均发生数量计算得来,同期相比Ti的计算公式如下,其中P为评价发生数量,i为年份。
(1)
(2)平均发生数量。县站自行填报,市站省站由县级数据自动汇总,平均发生数量Pi汇总公式如下,其中N为各市县平均发生数量,s为各市县种植面积,需要注意的是,未上报对应病虫害的市县种植面积不带入计算。
(2)
(3)累计发生面积。病害、单代次害虫为该病虫发生高峰期时的最大发生面积数值;多代次害虫为各个发生代次、各个发生峰次(迁飞性害虫)发生面积的累加数值。累计发生面积为当年的新增面积逐次自动累加的结果。
(4)累计防治面积。同理可得,通过逐次累加本年度已上报的本周防治面积数据之和,且累计防治面积≥本周防治面积。
其次为了精准的数据库存储和高效的查询,将两张数据表里的数据通过“批次号”与作物类型从数据库里关联。批次号的设置结合植保站编号和时间,设置为15位,其中前9位为植保站编号,10-13位是上报数据的年份,14、15位是上报数据的周数。
图4 周报批次号解析
2.3 多视图可视化的大数据平台
数据可视化是对大量数据集进行可视化,基于可视化算法将大型复杂的数据序列通过系统平台打造成静态或动态图像图表的方式呈现给用户[9],使之能够更加清晰明确地传送信息。应用数据可视化技术可以实现数据展示和对数据的统计分析,能有效揭示数据更深层的关系。该平台利用多视图可视化技术,结合不同数据可视化技术的优势,制定了不同模块的可视化主题。通过多视图多主题功能,综合全面地提高病虫害信息的展示能力。主要使用的是ajax支持下的Echars技术。Echarts是林峰可视化团队发布的用于生成各类可视化图表的报表技术,相对于传统的通过文档表格展示数据而言,使用Echarts技术可以将数据以柱状图、扇形图、折线图、地图与各类图形结合等各类直观性更强的可视化图表呈现,该类图表外形美观、可读性强、形式丰富,获得了越来越多用户的支持和喜爱[10]。安徽省农作物病虫监测预警系统大数据平台,既可直观反应安徽省各市植保站已上传的病虫数据数量,又能根据已上传的数据对病虫害起到预警作用。
安徽省农作物病虫监测预警系统的大数据平台分为7个板块:各市上传数据统计、实时数据统计、作物类型统计、近期高发病害同期相比统计、作物病虫实时监控、实时上传记录、地图实时数据上报展示。前端的HTML5/CSS3框架结合后台使用ThinkPHP V5.0,采用了全新的架构思想,大数据平台页面如图5所示。
(1)各市上传数据统计。该部分的柱状图统计的是各市级植保站上报的周报数据量总和,系统数据库中有从2006年至今的周报数据。从柱状图可以看出上传周报数据量较多的城市有合肥、芜湖、马鞍山、安庆、宣城等,这些城市的主要农作物为水稻,属于安徽省的水稻优势产区,其中安庆市已经上传了18 423份周报数据;柱状图中数据量比较多的城市还有亳州、阜阳、蚌埠、宿州,这些城市地理位置大多位于安徽北方,主要种植小麦,是小麦的主要产区。
图5 大数据平台页面
(2)实时数据统计。这部分统计数据是安徽省植保系统自2006年来上报的总数据量,以及本年度、本月、上周、本周上传的数据量。通过病虫害数据上报量的对比,可以分析出当前年份或月份农作物病虫实际发生情况。由总数据量和今年上报数据量作对比,直观看出今年病虫数据上报较少,农作物病虫发生率较低,安徽省今年小麦、水稻病虫实际发生率的确较低。
(3)作物类型数据量统计。利用扇形图展示各种农作物数据量之间的比例关系,可以直观清晰地了解安徽省农作物种植情况。水稻作为安徽省主要农作物,在扇形图中占据了大部分面积,其次是小麦,在安徽省的种植面积也比较大;玉米、棉花、油菜、大豆花生的种植面积相对较少。
(4)地图实时数据上报。展示位居中间板块,该板块结合地图和航线图,航线直接在地图上显示,表示数据传输上报方向。当某市向省级上报数据的时候,该市与合肥市省站之间的航线会呈现高亮,并显示箭头指向,实时展示数据传输。配合右下角实时上传记录详情,可不间断进行滚动播放,精确明细,不用登录系统,直接通过大数据平台就可以了解哪些市县正在上报数据。
(5)近期高发病虫同期对比。通过分析周报数据中的同期相比,利用数据分析,从几十种病虫类型中,筛选出近一个月发病率远远高于上年的数据。展现方式为扇形比例图,显示了近一个月高发的病虫名称,给植保相关工作人员一定的提醒作用。
(6)作物病虫预警实时监控。视频监控功能可以观看实验园区的实时监控,可对农作物的生长情况、病虫发生趋势、实际天气情况进行实时监测与管理,及时应对异常情况。因为项目需要展示实时视频流信息,直接在Web端上接入萤石云平台的视频流,使用ckplayer播放器加载视频,萤石云是一种简易视频接入方式,不需要学习复杂的流媒体知识。选择一个设备标准流地址,即可接入视频。
3 结 语
该系统已于2019年3月初步开发完成并投入使用,实现了对小麦、水稻、玉米、棉花、油菜等作物病虫数字化监测预警,对提升安徽省农业病虫害监测与防控能力、保障我省粮食安全发挥了重要作用。每年的春、夏为安徽农作物病虫高发期,也是本系统使用的关键时期,经过植保人员和系统研发人员的一致努力,系统运行稳定,数据上报规范。本年度上传周报数据接近4 000份,逐次数据接近两万条,大数据平台预警的精准度较之前的系统也有所提升。
改进后的数据的规范表达、统一存储,解决了以往县级植保站数据填报随意、格式不规范、查找困难等问题。目前,该平台已在安徽近一百个市级、县植保站使用,反馈较好,规范了省、市、县植保站的工作。结合大数据平台清晰明了的版面,较好地促进了我省植保站监管与预警工作的开展,政府部门可随时掌握全省农作物病虫害数据上报情况,也可以通过视频清晰地查看到实验,也提供了全面、准确的数据支持,实现了植保站管理信息化,促进了植保预警事业的发展。