基于英特尔开发套件的实时AI图像处理技术的茶叶病害监测物联网系统

openlab_96bf3613 更新于 17天前

作者:浙江大学 刘兆隆

文章指导:罗雯,李翊玮

项目背

随着茶叶产业的快速发展,茶叶的品质和安全性日益受到人们的关注。茶叶植株在生长过程中容易受到各种病虫害的侵害,这不仅会影响茶叶的产量,还会严重影响茶叶的品质。传统的茶叶病虫害诊断主要依赖于农民的经验判断,这种方法不仅效率低,而且准确性差。随着人工智能和图像识别技术的迅速发展,开发一种快速、准确的茶叶病虫害诊断方法成为了当务之急。 

项目解决的主要问

本项目开发了一种基于英特尔开发套件 - AlxBoard的计算机视觉和深度学习技术的茶叶病虫害监测物联网系统。系统预装了英特尔OpenVINO™工具套件,通过连接摄像头实时捕捉茶叶叶片的图像,并利用预先训练好的深度学习模型对图像进行分析,实现对茶叶病虫害的自动识别和分类。

系统还包括一个前端展示界面,能够实时显示视频流、预测结果和相关参数,为用户提供直观的操作和监测体验。本系统可以作为边缘计算引擎,为病虫害监测提供强大支持。通过这个系统,不仅可以提高茶叶病虫害诊断的效率和准确性,还能为茶叶种植者提供科学的决策依据,从而提高茶叶的产量和品质,促进茶叶产业的可持续发展。本项目开源代码库:Htreys/Tea_AIoT-System (github.com)

功能描

1)算法描

本项目采用基于深度学习的卷积神经网络(CNN)模型进行茶叶病虫害的识别和分类。首先,通过摄像头实时捕捉茶叶叶片的图像,并将图像进行预处理,包括缩放、裁剪和归一化等操作,以满足模型输入的要求。接着,将预处理后的图像输入到预先训练好的CNN模型中,模型通过多层卷积、池化和全连接层对图像特征进行提取和学习,最后通过Softmax层输出每个类别的概率分布,从而实现对茶叶病虫害的自动识别和分类。为了提高模型的识别准确性,我在训练阶段采用了大量标注好的茶叶病虫害图像数据进行监督学习,并通过数据增强、模型正则化等技术防止过拟合,确保模型具有良好的泛化能力。 数据集:https://data.mendeley.com/datasets/j32xdt2ff5/2

2)工程展示页面功能描

工程展示界面是一个基于Vue.js框架开发的前端应用,主要包括以下功能:

1. 实时视频流展示:界面中嵌入了一个视频播放器,能够实时显示从摄像头捕捉到的茶叶叶片图像,为用户提供直观的监测体验。

2. 预测结果展示:在视频流的下方,展示了深度学习模型对当前帧图像的预测结果,包括病虫害的类别和相应的置信度,帮助用户快速了解茶叶的健康状况。

3. 参数展示:在界面的右侧,展示了一些相关的参数和设置选项,如摄像头的分辨率、帧率等,用户可以根据需要进行调整。

4. 历史记录:界面还提供了一个历史记录功能,用户可以查看过去一段时间内的监测结果和相关参数,方便进行数据分析和回溯。

5. 报警与通知:当系统检测到严重的病虫害时,会通过界面弹窗或发送邮件等方式及时通知用户,帮助用户采取相应的防治措施。 通过这个展示界面,用户可以实时监控茶叶的健康状况,快速识别和处理病虫害问题,提高茶叶的产量和品质。

3OpenVINO™开发工具功能描

在本项目中,Intel的OpenVINO™工具套件提供了显著的赋能和助力,极大地增强了项目的性能和效率。以下是OpenVINO™在项目中的关键贡献:

优化的深度学习模型性能: OpenVINO™工具套件专为加速深度学习推理而设计,使得在AlxBoard上运行的深度学习模型得到了显著的性能提升。这意味着更快的图像处理和病虫害识别速度,对于本项目实现实时监测来说至关重要。

模型优化和转换: 本项目利用了OpenVINO™提供了强大的模型优化工具,把训练好的深度学习模型转换为优化的格式,以适应边缘计算的需求。实现了减少模型的大小,同时保持高精度,从而使模型更适合在资源受限的环境中运行,也提高了效率。

提高资源利用率: OpenVINO™通过优化计算任务的分配,充分利用AlxBoard的处理能力,提高了整体的资源利用率。这包括对CPU和GPU的高效使用,确保了系统的高性能运行。

实时数据处理和分析: 利用OpenVINO™的高效推理能力,项目能够实现对捕获的茶叶图像的实时处理和分析,及时检测并报告病虫害情况。

提升系统的可靠性和稳定性: OpenVINO™的高效和优化的运算不仅提高了性能,也增强了系统的可靠性和稳定性,这对于长时间运行的监测系统来说至关重要。

开发选

本系统采用了英特尔开发者套件 - AIxBoard™爱克斯板,搭载11代英特尔赛扬处理器N5105 2.0-2.9GHz (Jasper Lake)其芯片组带了一颗GPU(iGPU),借助OpenVINO工具,能实现CPU+iGPU异构计算推理,为高效识别茶叶病害提供了有力的硬件保障。

系统支持:Ubuntu20.04 LTS

AlxBoard对本项目的支

高效的处理能力: AlxBoard搭载的高性能处理器为本项目采用的深度学习模型的实时运算提供了强大的计算支持。这确保了图像处理和病虫害识别的高效率和准确性。

稳定的长期运行: AlxBoard的低功耗设计使得系统能够在田间环境中长时间稳定运行,提高了监测的连续性和可靠性。

灵活的网络连接: AlxBoard提供的多种网络连接选项,包括Wi-Fi和蓝牙,为数据的远程传输和实时监控提供了便利。

易于集成和扩展: AlxBoard的设计易于与其他传感器和设备集成,为项目的未来扩展提供了可能性。

支持先进的AI功能: AlxBoard支持的AI和机器学习功能为项目的核心部分——智能病虫害识别提供了技术保障。

技术细节

1)技术栈描

1. 深度学习框架: TensorFlow和Keras

用于构建和训练深度学习模型,进行茶叶病虫害的分类识别。

2. 编程语言: Python

用于编写深度学习模型、数据预处理、模型训练和结果预测的脚本。

3. 前端框架: Vue.js

用于构建用户界面,展示实时监测的视频流和模型的预测结果。

4. 后端框架: Flask

用于搭建服务端,处理前端发送的来的视频数据帧,并调用深度学习模型进行预测,并将结果返回给前端。

5. 数据库: SQLite(或其他轻量级数据库)

用于存储历史监测数据,为用户提供数据分析的基础。

6. 消息传递协议: MQTT

用于实现设备间的通信,将监测数据发送到服务器,也可用于实现报警机制。

2)技术设

1. 深度学习模型设计:

使用卷积神经网络(CNN)进行图像分类。

采用数据增强技术来增加训练数据的多样性,提高模型的泛化能力。

使用迁移学习,基于预训练的大型网络(如ResNet或VGG)进行微调,提高训练效率和模型性能。

英特尔提供的开发板性能,可以加速深度学习模型的处理速度,提高系统的响应效率。

2. 数据预处理:

对采集到的茶叶图像进行裁剪、缩放和归一化等预处理操作,使其符合模型输入的要求。

3. 实时监测与预测:

利用摄像头实时捕捉茶叶图像,并将图像发送到服务器。

服务器接收图像数据,调用深度学习模型进行预测,并将结果返回给前端展示。

4. 前端展示:

使用Vue.js构建单页面应用(SPA),实时展示视频流和预测结果。

提供用户友好的界面,展示实时监测的视频流、模型的预测结果以及相关参数设置。

5. 后端服务:

使用Flask搭建后端服务器,处理前端的请求,调用深度学习模型进行预测,并管理数据库。

提供RESTful API,供前端调用。

6. 数据库设计:

存储历史监测数据,包括图像、预测结果和时间戳等信息。

提供数据查询接口,供用户进行数据分析。

7. 通信与报警:

使用MQTT协议实现设备间的通信。

当检测到严重的病虫害时,通过MQTT协议发送报警消息,及时通知用户。 通过这套技术栈和技术设计,项目实现了茶叶病虫害的实时监测和分类识别,提供了直观的前端展示界面,并具备数据存储和分析的能力,为用户提供了一个全面、高效、易用的病虫害监测解决方案。

3)项目架构

创新

1. 模型通用性:本项目开发的深度学习模型不仅仅局限于茶叶病虫害的识别,其强大的特征提取能力使其具有较高的通用性。通过重新训练或微调,该模型可以轻松适应其他植物、果实的病虫害识别,甚至可以用于判断果实的成熟度,拓宽了模型的应用范围。

2. 实时监测与快速响应:借助于摄像头和深度学习模型的结合,本项目实现了对茶叶病虫害的实时监测,并能在检测到病虫害时立即进行分类和通知,大大减少了人工检测的时间和精力,提高了病虫害处理的效率。

3. 易于推广的解决方案:本项目提供了一个完整的病虫害监测解决方案,包括数据采集、模型训练和结果展示等环节。这套方案可以作为一个模板,根据不同植物和应用场景的需要进行定制和优化,快速推广到其他领域。

4. 前端可视化展示:通过构建前端可视化界面,用户可以直观地看到实时监测的视频流、模型的预测结果以及相关参数设置,提升了用户体验,同时也使得系统的操作更加直观和便捷。

5. 数据的积累与分析:系统不仅仅提供实时监测的功能,还能够记录历史数据,为用户提供数据分析的基础。通过对历史数据的分析,用户可以更好地了解病虫害的发生规律,为制定科学的防治措施提供依据。

6. 灵活的报警机制:系统提供了灵活的报警机制,当检测到严重的病虫害时,系统可以通过多种方式及时通知用户,帮助用户迅速采取措施,减少病虫害带来的损失。 通过这些创新点,本项目不仅提高了病虫害监测的效率和准确性,还具有良好的推广前景和应用价值,有望在智慧农业、园艺等领域发挥重要作用。

效果展示及描

展示页面效果图:

1. 实时视频流展示区域

视频播放器的位置显著,用户能够轻松查看实时图像。

视频可以提供非常直观的用户体验。

2. 预测结果区域

“bird eye spot”旁边的百分比数值(78.766%)清晰展示了模型对于当前图像的预测结果和置信度,对于用户了解茶叶病害情况很有帮助。

3. 参数展示区域

提供了调整摄像头设置的滑块(如分辨率和帧率),这让用户可以根据需要调整,非常贴心。

显示计时器,可能是表示从监测开始到当前的时间,这样的实时数据对于监控来说非常有用。

4. 病害识别指标条

以条形图的形式展示各种病害的发生次数,用户可以一目了然地看出哪种病害的发生的可能性最高,并及时做出决策来杜绝病害。

5. 整体风格和布局

界面风格统一,蓝黑色基调符合工业和技术应用的通常设计。

布局合理,各功能区的分布均衡,遵循了“F”形阅读规律。

6. 界面风格

确保了界面的响应性,以便在不同尺寸的屏幕和设备上都有良好的显示效果。

考虑用户操作的流程,确保从用户角度出发,简化操作步骤,提升用户体验。

随着本项目的圆满完成,我深感欣慰和感激。首先,我要特别感谢Intel公司,他们的先进技术和工具,特别是英特尔开发套件和OpenVINO™工具套件,为本项目提供了强大的技术支持和赋能。Intel的创新产品和解决方案不仅加速了我们的开发进程,也极大地提高了系统的性能和效率。

我还要感谢杭州映云科技有限公司(EMQ,他们提供的高效、可靠的消息中间件技术对于实现项目中的数据通信和处理至关重要。EMQ的软件确保了系统的稳定和可靠运行。

最重要的是,我要向我的导师霍梅梅老师表达最深的敬意和感激。霍老师不仅在技术上给予了我巨大的帮助,更在研究过程中提供了宝贵的指导和建议。她的专业知识、耐心指导和不懈支持是我能够顺利完成这个项目的关键。

0个评论