本网页已闲置超过3分钟,按键盘任意键或点击空白处,即可回到网页

基于边缘人工智能的农作物病害检测系统

发布时间:2022-04-26
分享到:

基于边缘人工智能的农作物病害检测系统

发布时间:2022-04-26
分享到:

作物病害损害是农民关注的一个主要问题,该项目工作利用机器学习根据叶子照片确定作物中存在的疾病类型。首先,使用 Single Shot Detector,从现场捕获的视频源中实时单独检测树叶。从田间拍摄的树叶图像也可以作为该系统的输入。提出了一个卷积神经网络来对作物中存在的疾病类型进行分类,该网络使用 PlantVillage 数据集进行训练,所提出的混合网络在Kria KV-260上实现用于实时检测和识别。所以这个平台是为高级视觉应用开发而开发的,不需要复杂的硬件设计知识。KV260还提供了通过 Vitis AI 在软件级别区分我们的设计的好处。达到的疾病分类准确率在95.88%左右。为了对抗作物疾病造成的损失,基于机器学习的边缘人工智能系统可以检测疾病,帮助农民提高产量。

动机 - 为什么我们决定做这个项目?
农业对世界经济极为重要。如今,由于作物病害检测没有成功地整合到农民的收割过程中,大部分作物植被都失败了。每年,农民都在与疾病对他们的作物造成的损害作斗争。农民可以从这些疾病的早期发现和治疗中受益匪浅。很难在该领域找到能够检测任何类型植物病害的熟练专家。如果自动化系统能够通过手持设备或农业设备上的硬件实时识别作物病害和其他问题(如营养不良、杂草或昆虫损害),这对农民来说将是一个福音。

因此,需要一个能够在整个收成毁坏之前预测作物疾病的系统。机器学习可用于检测作物疾病并帮助农民识别疾病。本研究项目利用深度学习的概念,构建实时植物病害检测系统。该模型可以部署在 Kria KV260 等嵌入式平台上,以实时检测作物中存在的疾病。主要目的是有效地预测植物病害,因此农民可以在病害蔓延到作物之前采取有效措施。

因此,该项目的目标如下:

  • 收集印度作物的作物病害数据集(古吉拉特邦)
  • 开发用于作物病害检测和分类的机器学习 (ML) 模型。
  • 在 Kria KV 260 上移植 ML 模型

该项目的主要目标是有效检测植物上的叶子,然后准确识别叶子上存在的疾病类型。SSD模型用于识别植物叶片,基于卷积神经网络(CNN)的新架构用于识别叶片病害。SSD模型和提出的CNN模型相结合,创建了一个可以同时检测叶子和诊断疾病的混合模型。此外,该建议的混合模型部署在 Kria KV-260 上进行实时测试,以解决实时检测植物叶片病害的问题。下图描绘了用于叶片识别和疾病分类的拟议系统的框图。

结果:
所提出的系统在 PlantVillage 数据集的叶子图像以及从附近的真实番茄农场捕获的数据上进行了测试。通过将该系统应用于感染疾病的番茄叶片,测试了该模型在叶片检测和疾病识别方面的有效性。结果如下图所示:

从图中可以看出,该模型能够准确地从叶子中识别出疾病的类型——蜘蛛螨、早疫病、番茄花叶病毒和叶霉病。正如这些实时现场测试所证明的那样,建议的模型在所有情况下都表现良好,包括大气、背景、土壤和照明。

可能面临的问题:
1、在Ubuntu上安装Vitis
在 Ubuntu 上安装 Vitis 和 Vivado 非常累人。它们是安装 Vitis 的先决条件和必需的大量依赖项。没有此类适当的文档或链接可用于正确安装。此外,安装到设备中需要很长时间。在参考了一些死链接后,我们花了 12 个多小时才完成安装。

2、TensorFlow Frozen graph问题及其安装
为了获得最终的静态图,输入是.pb 和.ckpt 文件,它为我们提供了输出frozen_graph.pb。这是 TensorFlow 库的一个主要问题,如果没有此图,则无法进行进一步的处理。最终这条指令没有被执行:

freeze_graph --input_graph yolov2-tiny.pb --input_checkpoint yolov2-tiny.ckpt --output_graph freeze/frozen_graph.pb --output_node_names yolov2-tinyconvolutional9/BiasAdd --input_binary true

TensorFlow的安装问题

3.OpenCV错误
对于摄像头模块的实时接口和处理,open CV 是使用最广泛的 Python 库。没有这个,就不会发生摄像头接口,并且在 Linux 环境中安装它非常耗时。

4. 安装 Vitis AI
为了安装 Vitis AI,我们尝试 git clone KV-260 ml 加速库,但由于某些问题,克隆在某些时候卡住了。出于安装目的,我们需要创建一个用于安装 Vitis-AI 的 Docker。存在与索引包、GnuTLS 和早期 EOF 相关的错误。

5. 在 Kria Kv-260 上实现 YOLO v2-v3 期间的实时网络摄像头接口
在开始使用我们自己的模型之前,我们考虑过使用 YOLO 实现和检查硬件。然而,在实现 YOLO 预训练模型时,与 KV-260 进行实时摄像头接口的主要问题是该套件不支持实时网络摄像头接口。

总结了一下我们可能遇到的问题,项目到此就结束了。

如果您对此项目有任何想法、意见或问题,请在下方留言。

以上内容翻译自网络,原作者:Ruchi Gajjar,如涉及侵权,可联系删除。

加入微信技术交流群

技术交流,职业进阶

关注与非网服务号

获取电子工程师福利

加入电路城 QQ 交流群

与技术大牛交朋友

讨论