Sistema de identificación de plagas y enfermedades de cultivos basado en aprendizaje profundo

1. Introducción

Hoy, me gustaría presentarles un proyecto de diseño de graduación para ayudar a los estudiantes anteriores a completar un sistema de identificación de enfermedades y plagas de cultivos basado en el aprendizaje profundo .

ABSTRACTO

El diagnóstico oportuno y preciso de las enfermedades de las plantas juega un papel importante en la prevención de la pérdida de producción agrícola y la pérdida o reducción de productos agrícolas. Para resolver este tipo de problemas, se pueden utilizar métodos basados ​​en aprendizaje automático. En los últimos años, el aprendizaje profundo, especialmente utilizado en el procesamiento de imágenes, ha abierto muchas aplicaciones nuevas para la agricultura de precisión. En este estudio, utilizamos nueve enfoques diferentes con potentes arquitecturas de redes neuronales profundas para evaluar los resultados de rendimiento de la detección de enfermedades de las plantas. Se emplean métodos de aprendizaje por transferencia y extracción profunda de características para adaptar estos modelos de aprendizaje profundo al problema en cuestión. En este trabajo, consideramos utilizar el modelo profundo preprocesado para la extracción de características y un mayor ajuste. Las características obtenidas mediante la extracción profunda de características se clasifican por los métodos de máquina de vectores de soporte (SVM), máquina de aprendizaje extremo (ELM) y k-vecino más cercano (KNN). Los datos utilizados en los experimentos incluyeron imágenes de enfermedades y plagas reales de Turquía. Se calcularon la precisión, la sensibilidad, la especificidad y las puntuaciones f1 para la evaluación del rendimiento. Los resultados de la evaluación muestran que la extracción profunda de características y la clasificación SVM/ELM superan el aprendizaje de transferencia. Además, la capa fc6 de los modelos AlexNet, VGG16 y VGG19 arrojó mejores puntajes de precisión en comparación con las otras capas.

Palabras clave : detección de plagas de plantas, red neuronal convolucional , arquitectura de aprendizaje profundo, extracción de características, método clasificador

Introducción

En las plantas, los signos de enfermedad suelen aparecer en hojas, frutos, yemas y brotes jóvenes. Esta situación puede provocar que la fruta se desperdicie (caiga) o se dañe. Además, estas enfermedades conducen a la propagación de nuevas infecciones y enfermedades, como las condiciones estacionales. Por lo tanto, es muy importante identificar la enfermedad con anticipación y tomar las medidas preventivas necesarias antes de que la enfermedad se propague a otros árboles. Por lo tanto, combatir las plagas y enfermedades de las plantas es el tema más importante en la agricultura[1-3]

Existen muchos tipos de enfermedades que afectan a las plantas, cada una de las cuales puede causar pérdidas económicas, sociales y ecológicas. En este contexto, el diagnóstico oportuno y preciso de las enfermedades de las plantas juega un papel importante en la prevención de la pérdida de rendimiento y cantidad de productos agrícolas. La detección de enfermedades de las plantas generalmente se realiza manualmente. Estos procesos son llevados a cabo por especialistas como botánicos e ingenieros agrónomos, primero mediante inspección visual y luego en un laboratorio. Estos métodos tradicionales a menudo requieren mucho tiempo y son procedimientos complicados [1,3]. Por estas razones, la identificación automática de enfermedades basada en el procesamiento de imágenes y el aprendizaje automático se ha vuelto muy importante. El diagnóstico automatizado de enfermedades de las plantas mediante inspección visual puede ser de gran ayuda para los usuarios que tienen poco o ningún conocimiento del producto que se está cultivando.

Hay muchos estudios en la literatura con respecto a la detección de enfermedades de las plantas. En la última década, estos estudios a menudo se basan en el proceso de clasificación, utilizando características como el color, la forma, la textura, etc. [4-7,9,9,10]. Las principales desventajas de los métodos basados ​​en estas propiedades son:

• Rendimiento muy bajo cuando se usa solo, aunque se han realizado intentos para mejorar el rendimiento mediante combinaciones de varios métodos.

• Requiere el uso de un enfoque segmentado, lo que significa que la planta debe separarse de sus raíces para extraer características geométricas y similares.

• Utilice conjuntos de datos que contengan imágenes que sean difíciles de obtener en la vida real

Por estas razones, dichos sistemas y métodos no se pueden utilizar en la vida real. En los últimos años, las redes neuronales convolucionales profundas (CNN) han logrado un progreso notable en los campos de los objetos visuales y el aprendizaje automático. Para estas regiones, una de las mayores ventajas del modelo y método mejorados es que la extracción de características se puede realizar sin métodos de segmentación . Por lo tanto, estos métodos y modelos se pueden aplicar fácilmente en aplicaciones prácticas.

Como herramienta básica de aprendizaje profundo, CNN ha logrado un éxito notable en varias investigaciones sobre la detección de enfermedades de las plantas. Amara y otros [11] utilizaron la arquitectura LeNet como una red neuronal convolucional para clasificar conjuntos de datos de imágenes, incluida la capacidad de comparar hojas de plátano sanas y enfermas. Estos se evalúan con modelos profundos ajustados por aprendizaje de transferencia. Mohanty y otros utilizaron un conjunto de datos de 54 306 imágenes de hojas de plantas sanas y enfermas. Su rendimiento se evaluó utilizando modelos profundos de AlexNet y GoogleNet basados ​​en CNN para identificar 14 especies de cultivos y 26 enfermedades. Fujita y otros han desarrollado un nuevo sistema práctico de detección de enfermedades de las plantas que consta de siete tipos de enfermedades. Usando un sistema de clasificación basado en CNN, lograron una precisión promedio del 82,3 % bajo una estrategia de validación cruzada cuádruple. Sladojevic y otros propusieron un nuevo método para identificar 13 tipos diferentes de enfermedades de las plantas utilizando redes convolucionales profundas. Fuentes y otros desarrollan un potente detector basado en aprendizaje profundo que puede identificar nueve plagas y enfermedades diferentes del tomate en tiempo real

En este artículo se propone un sistema de detección de plagas en plantas basado en redes neuronales profundas. En este estudio, utilizamos un conjunto de datos de imágenes de plagas y enfermedades de plantas reales de Turquía. En primer lugar, usamos este conjunto de datos para la extracción profunda de funciones basada en arquitecturas de aprendizaje profundo: AlexNet, VGG16, VGG19, GoogleNet, ResNet50, ResNet101, InceptionV3, InceptionResNetV2 y SqueezeNet. Las características profundas obtenidas por estos modelos se clasifican utilizando SVM, ELM y KNN. Luego, ajustamos utilizando un modelo de aprendizaje profundo basado en el aprendizaje por transferencia. Eliminamos las últimas tres capas de la arquitectura y luego agregamos nuevas capas, empleando CNN preentrenadas para resolver este problema. Finalmente, evaluamos los resultados de rendimiento utilizando métodos de transferencia de aprendizaje y extracción de características profundas. Las principales contribuciones del método de clasificación de enfermedades de las plantas propuesto en este trabajo son las siguientes:

• La clasificación de plagas y enfermedades de plantas usando imágenes es problemática para el aprendizaje automático. Para clasificar estas imágenes, en la literatura se han propuesto varios métodos. Actualmente, los métodos de aprendizaje profundo son un fenómeno del aprendizaje automático y se han propuesto varias redes de aprendizaje profundo en la literatura de aprendizaje supervisado. En este documento, se estudiaron nueve redes de aprendizaje profundo de uso común para enfermedades de plantas y plagas de insectos (AlexNet, GoogleNet, VGG16, VGG19, ResNet50, ResNet101, InceptionV3, Inception ResNetV2 y SqueezeNet) utilizando aprendizaje de transferencia y extracción de características profundas, y se estudiaron las se compararon los resultados Discusión general

• Este trabajo propone una nueva arquitectura de clasificación utilizando redes de aprendizaje profundo precondicionadas y clasificadores tradicionales. También se utilizan nueve redes de aprendizaje profundo para la extracción de características. Se pueden extraer características de diferentes tamaños utilizando estas redes. La fase de clasificación utiliza clasificadores tradicionales SVM, ELM y KNN para 10 veces de validación cruzada. Los resultados muestran que esta arquitectura logra una mayor precisión de clasificación que las redes basadas en el aprendizaje por transferencia.

• La arquitectura propuesta tiene menor complejidad computacional que los modelos basados ​​en aprendizaje por transferencia. Esto se demuestra mediante cálculos de tiempos de ejecución.

• En la literatura, los estudios a menudo se realizan utilizando imágenes sintéticas de plagas de plantas. En este estudio, utilizamos un conjunto de datos que consiste en imágenes de plagas y enfermedades de plantas reales en 1965, divididas en 8 grupos. Probado en este conjunto de datos, los resultados demuestran claramente que el método se puede utilizar para aplicaciones prácticas.

La organización de la investigación es la siguiente. El enfoque propuesto se da en detalle en la Sección 2, mientras que la arquitectura propuesta se da en la Sección 3. La Sección IV presenta el trabajo experimental y los resultados. Finalmente, en la Sección 5, se discuten los resultados y se presentan las contribuciones del estudio.

2. Materiales y métodos

Esta sección detalla los antecedentes teóricos de este documento, los algoritmos relacionados, los conjuntos de datos y los métodos recomendados bajo los subtítulos correspondientes.

2.1. Aprendizaje profundo y modelos de CNN preentrenados

El aprendizaje profundo es una forma de técnica de aprendizaje automático que utiliza un modelo computacional que consta de múltiples capas de procesamiento para aprender las características de los datos [16]. Debido a los logros notablemente altos del aprendizaje profundo en áreas como la clasificación y el reconocimiento, ha aumentado el interés en este tema. En los últimos años, estos métodos se han aplicado en muchos campos, como el reconocimiento de voz, el reconocimiento de objetos visuales y la detección de objetos. Aunque los primeros estudios en deep learning tienen una larga historia, la principal razón de su éxito en los últimos años es la generación de big data y ordenadores más rápidos y con memoria a gran escala.

Este estudio evalúa el rendimiento del problema de reconocimiento de enfermedades de las plantas probando diferentes enfoques de las nueve arquitecturas de redes neuronales profundas más potentes. Estas arquitecturas de aprendizaje profundo se entrenan en un subconjunto de la base de datos de ImageNet. La arquitectura AlexNet es un algoritmo de aprendizaje profundo con 25 capas y puede entrenar pesos en 8 capas [19]. La arquitectura de GoogleNet se basa en el método en la red, usando módulos arquitectónicos para usar múltiples convoluciones en paralelo para extraer varios puntos característicos [20, 21]. La red VGG propuesta por Oxford Visual Geometry Group (VGG) es una arquitectura homogénea para lograr mejores resultados en la competencia ILSVRC-2014 [22]. La red ResNet fue desarrollada por He y otros para entrenar redes más profundas [23]. La arquitectura se basa en módulos de microarquitectura, que es diferente de las arquitecturas de red continua tradicionales como VGGNet y AlexNet. La red Inception es un modelo de red neuronal convolucional propuesto por Szegedy et al [21]. La red consta de una gran cantidad de pasos de convolución y agrupación máxima. En la etapa final, tiene una red neuronal completamente conectada. La red InceptionResNetV2 [24] se basa en una estructura de red basada en inction y conexiones residuales. InceptionResNetV2 funciona de manera casi idéntica a la arquitectura Inception, pero esta arquitectura logra aceleraciones significativas en el entrenamiento utilizando conexiones residuales [25]. SqueezeNet es una arquitectura inteligente desarrollada por Landola et al., que logra una precisión de nivel AlexNet en ImageNet con 50 veces menos parámetros [26]. La Tabla 1 detalla las características de estas arquitecturas

2.2. Clasificadores

En este documento, los métodos de clasificación tradicionales, como SVM, ELM y KNN, se utilizan para extraer características profundas de capas específicas de modelos de aprendizaje profundo preentrenados para construir modelos de clasificación de características profundas.

2.2.1. K-vecino más cercano (KNN)

El clasificador KNN utiliza un método de aprendizaje supervisado. Este método es ampliamente utilizado en campos como el aprendizaje automático, el procesamiento de imágenes y la estimación estadística. Este método es un algoritmo que clasifica los datos de aprendizaje existentes cuando se ingresan nuevos datos. El principio de este enfoque es asignar nuevas entradas de datos a los conglomerados más cercanos en el conjunto de muestras previamente establecido. La distancia entre estos dos puntos de datos se calcula utilizando varias funciones de distancia. Las funciones más famosas son la distancia euclidiana, la distancia de Minkowski y la distancia de Manhattan. Además, la mayor ventaja de este método es que la aplicación es simple y fácil de entender [27,28]

2.2.2. Máquina de vectores de soporte (SVM)

SVM es un método desarrollado por Vapnik basado en la teoría del aprendizaje estadístico [29]. El objetivo del método de la máquina de vectores de soporte es tener una función discriminante lineal con el mayor valor marginal que pueda separar las clases. Los datos de aprendizaje más cercanos al hiperplano se denominan vectores de soporte. Las máquinas de vectores de soporte pueden clasificar conjuntos de datos como linealmente diferenciables e indistinguibles [30]. Este clasificador se ha aplicado con éxito para resolver problemas en muchos campos, como el reconocimiento de imágenes y objetos, el reconocimiento de voz, el reconocimiento de huellas dactilares y el reconocimiento de escritura [29-31].

2.2.3. Máquina de aprendizaje extremo (ELM)

ELM es un algoritmo de aprendizaje para redes feed-forward de una sola capa oculta (SLFN) propuesto por Huang et al. En ELM, los pesos de salida se calculan utilizando el método de mínimos cuadrados, mientras que los pesos de las capas ocultas se generan aleatoriamente [33]. El modelo ELM se muestra en la fórmula (1).

2.3. conjunto de datos

El conjunto de datos utilizado para probar el rendimiento del método incluía imágenes de enfermedades comunes de las plantas en las regiones de Malatya, Bingöl y Elazığ de Turquía (Fig. 1). Estas imágenes fueron adquiridas con una cámara Nikon 7200d. Cada imagen en este conjunto de datos consta de una resolución de 4000 × 6000 y una imagen en color de tres canales (RGB). La Tabla 2 enumera los nombres y números de enfermedades de las plantas y plagas de insectos en este conjunto de datos

Como se puede ver en la Tabla 2, el conjunto de datos contiene un total de 1965 imágenes pertenecientes a 8 enfermedades de plantas diferentes. El conjunto de datos fue obtenido por académicos en el campo de la protección de plantas en la Universidad de Bingöl y la Facultad de Agricultura de la Universidad de İnönü en Turquía. Estas imágenes fueron adquiridas en diferentes días durante el día. Además, las imágenes de la enfermedad usan muchos árboles diferentes.

3. Método propuesto

En este estudio, aplicamos la extracción profunda de características de cada capa completamente conectada y transferimos el aprendizaje basado en una arquitectura de aprendizaje profundo previamente entrenada. El esquema del estudio propuesto se muestra en las Figuras 2 y 3. El aprendizaje de transferencia y la extracción profunda de características se detallan en las siguientes subsecciones

3.1. Transferencia de aprendizaje

El aprendizaje por transferencia es un método de aprendizaje automático que se reutiliza como punto de partida para resolver diferentes problemas utilizando el conocimiento obtenido de los modelos desarrollados en la resolución de problemas. Este estudio utiliza un modelo de CNN preentrenado basado en el aprendizaje de transferencia para ajustarlo. La razón para usar modelos de CNN preentrenados es que son más rápidos y fáciles que entrenar modelos de CNN con pesos inicializados aleatoriamente [35]. Además, el proceso de ajuste fino se basa en transferir nuevas capas en lugar de las últimas tres capas de la red preentrenada a nuestra tarea de clasificación, como se muestra en la Figura 2.

3.2. Extracción profunda de características

La extracción profunda de características se basa en la extracción de características aprendidas de redes neuronales convolucionales preacondicionadas. Estas funciones se utilizan para entrenar un clasificador de aprendizaje automático. En otras palabras, el método se basa en extraer características profundas de capas completamente conectadas de una red preentrenada. Este estudio extrae características profundas efectivas de un cierto nivel de modelos de aprendizaje profundo, a saber, GoogleNet, ResNet50, ResNet101, InceptionV3, InceptionResNetV2 y SqueezeNet y pool5-drop_7x7_s1, fc1000, fc1000, predicciones, predicciones y pool10. Además, se obtuvieron vectores de características de 1024, 1000, 1000, 1000, 1000 y 4096 de estas capas de los modelos GoogleNet, ResNet50, ResNet101, InceptionV3, InceptionResNetV2 y SqueezeNet, respectivamente. Las características profundas obtenidas se clasifican utilizando clasificadores tradicionales SVM, ELM y KNN, como se muestra en la Figura 3.

En este estudio, los clasificadores SVM, ELM y KNN tradicionales se utilizan en la etapa de clasificación, y las características profundas de los modelos AlexNet, VGG16 y VGG19 se obtienen de estas tres capas, respectivamente, y el rendimiento se calcula utilizando el método del clasificador. . Luego se compara el rendimiento de cada capa para determinar las características profundas de la mejor capa. Además, se obtienen 4096 vectores de características de las capas fc6 y fc7 de los modelos AlexNet, VGG16 y VGG19, y 1000 vectores de características de la capa fc8 de estos modelos.

2 esquema de diseño

Este sistema se basa en la tecnología python, utiliza UML para modelar, adopta el aprendizaje profundo, la combinación del marco Django para el diseño y la base de datos Mysql para almacenar datos.

Las funciones de este sistema incluyen principalmente:

  1. Registro de usuario, inicio de sesión,
  2. mantenimiento de información,
  3. Identificación de imagen
  4. Identificación de plagas
  5. aprendizaje profundo
  6. detección de imagen
  7. Detección de objetivos

3 tecnologías clave del sistema

Desarrollar con python, django, mysql, aprendizaje profundo

4 herramientas de desarrollo

Las herramientas de desarrollo incluyen principalmente: Pycharm, Python3.8, Django3, mysql5.7, Navicat, etc.

Visualización de 5 códigos

import os
import sys
from pathlib import Path

from django.core.wsgi import get_wsgi_application

# This allows easy placement of apps within the interior
# booksys directory.
ROOT_DIR = Path(__file__).resolve(strict=True).parent.parent
sys.path.append(str(ROOT_DIR / "booksys"))
# We defer to a DJANGO_SETTINGS_MODULE already in the environment. This breaks
# if running multiple sites in the same mod_wsgi process. To fix this, use
# mod_wsgi daemon mode with each site in its own daemon process, or use
# os.environ["DJANGO_SETTINGS_MODULE"] = "config.settings.production"
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config.settings.production")

# This application object is used by any WSGI server configured to use this
# file. This includes Django's development server, if the WSGI_APPLICATION
# setting points here.
application = get_wsgi_application()
# Apply WSGI middleware here.
# from helloworld.wsgi import HelloWorldApplication
# application = HelloWorldApplication(application)

6 Descripción de la función del sistema

Demostración de función de proyecto

inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/qq_42135426/article/details/128499822
Recomendado
Clasificación