基于RT-thread的小麦病虫害检测系统的研究与应用

2023-10-17 09:59朱晓智韩媛媛郭腾佐李洪瑛
河南科技 2023年18期
关键词:上云外设卷积

朱晓智 张 蕾 韩媛媛 郭腾佐 李洪瑛

(衡水学院数学与计算机学院,河北 衡水 053000)

0 引言

我国已有五千多年的小麦种植史,是世界上小麦种植面积及产量最大的国家。小麦在我国居民饮食结构中占据着重要地位,是日常生活中最常食用的粮食作物,尤其是在我国北方,小麦所占比例更重。目前,我国小麦种植区主要位于北方。北方小麦种植具有种植面积大、生产现代化的特征。而病虫害问题会对北方小麦产量造成严重影响,等发现小麦发病时,往往都为时已晚,给农业生产带来不可估量的损失。

随着人工智能技术的快速发展,各种检测系统也层出不穷。本研究设计的小麦病虫害检测系统是基于RT-thread 的实时操作系统,能实时监测农业作物健康状况,并将数据上云,用户可在手机端或电脑端实时查看农作物健康情况数据,具有较高的实用价值[1]。

1 小麦病虫害检测系统总体设计

该系统的软硬件均采用模块化设计,硬件系统以高性能STM32H750XBH6 为核心主控板,由神经网络模型模块、数据上云显示模块、系统外设模块、RT-thread 模块组成,采用神经网络对小麦病虫害进行识别。神经网络模型模块采用的是卷积神经网络,并使用大量数据集对模型进行训练,对其进行编译评估,并保存模型,从而生成移动端tflite 模型文件。通过对采集到的图片和模型文件进行对比,可准确识别出小麦的健康情况。该系统可部署在多种恶劣环境中,为适应环境,其采用的是防水防风沙材质,并由多种能源进行持续供能。该系统采用OneNET 物联网云平台来实现数据的上行,并使用OneNET view 组件实现对数据的二维显示。在获取特征集识别到的小麦健康状况的基础上,通过调用数据库,给出该健康状况下的解决方案。

2 检测系统设计

2.1 整体设计

该系统以STM32H750XBH6 为核心主控板,由神经网络模块、数据上云显示模块、系统外设模块、RT-thread 模块组成。在神经网络模块中,运用python Numpy 工具和tensorflow 神经网络框架来搭建卷积神经网络模型,通过恢复keras 模型来预测推理得到的移动端tflite 模型文件。通过RT-AK 套件将模型文件部署到嵌入式中,数据上云显示模块中的项目采用OneNET 物联网云平台来实现数据上行,并使用OneNET view 组件对数据进行二维显示。系统外设模块由图像获取显示部分组成。神经网络模型模块如图1所示。

图1 神经网络模块

2.2 模块设计

2.2.1 主控模块硬件设计。以STM32H750XBH6 为系统的主控模块,STM32H750XBH6 是一款超低功耗、高性能的微控制器,采用Cortex-M7内核,主频高达480 MHz,支持各种第三方软件包和SDK 扩展功能,采用2 个USB Type-C 接口、4 路UART,支持“BT4.2+WiFi 单频+FM”,并采用博通BCM43438A1 方案。相较于其他类型的STM32 单片机,STM32H750XBH6 使用层次化系统安全架构,在保障应用和系统安全的基础上,也能满足各种外设系统的功能。主控板整体结构如图2所示。

图2 主控板整体结构

2.2.2 系统外设模块。系统外设模块由gc0328摄像头和ili9488显示屏组成,摄像头模块通过FPC 线连接到ART-Pi 多媒体扩展板的Camera FPC 接口上,并将摄像头模块拍摄到的画面在ART-Pi 多媒体扩展板屏幕上显示。系统外设模块如图3所示。

图3 系统外设模块

2.2.3 数据上云显示模块。系统将数据上云显示模块连接到OneNET 网络平台,从而完成设备的接入与连接。将系统外设模块采集到的信息经网络上传到云端,管理员通过网络或本地查询记录,能随时随地查询系统页面。该系统还使用OneNET view 组件对数据进行结构化处理。数据上云显示模块如图4所示[2]。

图4 数据上云显示模块

2.2.4 RT-thread 模块。RT-thread 为嵌入式实时多线程操作系统,物联网操作系统以操作系统内核(如RTOS、Linux 等)为基础,包括文件系统、图形库等中间件组件的软件平台。实际上,RTthread 是一个IoT OS,基本属性之一是支持多任务。在RT-thread 系统中,通过线程来完成任务。RTthread 系统主要由C 语言进行编写。RT-thread 模块如图5所示。

图5 RT-thread模块

RT-thread 可使用在线软件包管理工具。本研究用到OneNET、as608、fal、littlefs、easvflash 等软件包。配合系统配置工具,可实现快速直观的模块化裁剪,并无缝导入丰富的软件功能包,从而实现类似Android 的图形界面及触摸滑动效果、智能语音交互效果等功能。相较于Linux 操作系统,RTthread 具有体积小、成本低、功耗低、启动快速等优点。此外,RT-thread 还具有实时性高、占用资源小等特点,适合应用于各种资源受限(如成本、功耗限制等)的场合中。与RTOS(如FreeRTOS、uC∕oS)相比,RT-thread 不仅是一个实时内核,还具有丰富的中间层组件。RT-thread结构如图6所示[3]。

图6 RT-thread结构

通过对RT-thread 实时操作系统进行软件开发,调用RT-AK的AI套件,可将事先训练好的深度AI学习模型一键部署到RT-thread实时操作系统的开发项目中,部署好后,可生成神经网络模型文件。根据生成的神经网络模型文件,调用模型量化代码。

2.2.5 神经网络模型模块。利用python Numpy 工具和tensorflow 框架构建神经网络模型。对训练集进行训练,导入训练集,定义标签处理。对构建的神经网络进行卷积操作,利用tensorflow框架对模型进行三层卷积操作,并定义输出变量。在完成数据集定义和卷积层构建后,对模型进行训练,原则上,训练次数要定义准确,否则容易出现过拟合的现象。在此次训练中,将训练次数定义为100 次,并保存训练好的模型文件.h5[3]。通过tensorflow 完成图像的构建,并导入预测图片文件,对比预测准确度数值,模型达到结果预测。模型精度代码如下。

模型精度如图7所示。

图7 模型精度曲线

Loss曲线代码如下。

Loss曲线模型如图8所示。

图8 loss曲线模型

由图7、图8 可知,构建的卷积神经网络模型输出结果的精确度较高,预期效果良好。

将转换成的移动端tflite 模型文件部署到嵌入式系统中,通过卷积网络构建已生成的模型文件(.h5 文件)。在部署到嵌入式前,要转换成.tflite 文件,先将模型恢复成keras 模型,并预测模型大小,再进行模型推理,从而生成.tflite 模型文件。详细技术代码如下。

3 结语

在实际运行中,本研究设计的系统能实时快速地获取小麦的健康状态,从而检测出小麦病虫害情况,并通过OneNET 模块将数据上传到云平台,对数据进行存储。数据采集端是基于RT-thread 物联网操作系统进行设计的,相对裸机系统,本研究设计的系统具有较强的稳定性和抗干扰能力,能在一定程度上满足客户对小麦病虫害检测系统安全性的要求,并有效节省人力物力。

猜你喜欢
上云外设卷积
高速公路视频上云架构及视频智能分析
高速公路视频上云工程建设浅析
基于3D-Winograd的快速卷积算法设计及FPGA实现
从滤波器理解卷积
自然资源应用系统“上云”研究与探讨
基于傅里叶域卷积表示的目标跟踪算法
企业上云成数字化转型必经之路
一种基于卷积神经网络的性别识别方法
Microchip推出具备双ADC外设的全新器件,扩展其低成本8位PIC®单片机产品线
外设天地行情