Redes neuronales convolucionales aplicadas a la viticultura

Clasificar una hoja

Capture o seleccione una imagen y obtenga la clasificación foliar.

CNN operativa · 3 clases
Clasificación foliar mediante red neuronal convolucional Analiza fotografías de hojas de vid y las clasifica como mildiu, oídio o sana. Es una herramienta de apoyo y no sustituye la evaluación agronómica especializada.
MobileNetV2TensorFlow/KerasFlask
Modo postest activoEl cronometraje operativo se registrará automáticamente.
Entrada de imagen

Analizar una hoja

Use la cámara del dispositivo o seleccione una fotografía existente.

1 Imagen
Hoja enfocada
Buena iluminación
Hoja visible
Evite sombras fuertes
Cronometraje de investigación activoSe registrarán preparación, tiempo operativo y, si usa cámara, captura y flujo completo.
Cámara

Tomar fotografía

Centre la hoja y capture cuando se encuentre enfocada.

Captura: 0.0 s
Preparación

Encuadre de la hoja

Ajuste el recorte para concentrar el análisis en el área foliar.

Preparación: 0.0 s
Imagen seleccionada
Registro de investigación

Control del postest

Administre H001–H092 y conserve el pareo con el pretest.

Códigos permitidos: H001 a H092.
Avance registrado0 / 92

La predicción y los tiempos se guardarán automáticamente.

Captura media—
Preparación—
Técnico CNN—
Flujo completo—
Exportar CSV para SPSS
Actívelo cuando vaya a medir el postest oficial.El sistema añadirá código Hxxx, cronometraje operativo y guardado persistente.
Qué registra

Datos listos para SPSS

01
Clase predichaMildiu, oídio o sana.
02
Acierto / errorSe obtiene al cruzar con la referencia agronómica.
03
Tiempo operativoDato principal para el indicador de eficiencia.
04
FP / VNSe calcula sobre las hojas cuya referencia es sana.
Persistencia local

Registros guardados

Vista rápida de las clasificaciones almacenadas en SQLite.

CódigoPredicciónConfianzaOperativoTécnicoOrigen
Todavía no hay registros de postest guardados.
Función complementaria

Analizar una carpeta completa

Clasifique múltiples fotografías de forma secuencial para una revisión técnica rápida.

Automático

Seleccione una carpeta de imágenes

Admite fotografías de resoluciones diferentes; el modelo las prepara internamente a 224 × 224.

Detectadas0
Procesadas0
Tiempo técnico medio—
EstadoListo

Solución tecnológica

Clasificación foliar con MobileNetV2

El sistema combina visión por computador, transferencia de aprendizaje y una aplicación web para clasificar hojas de vid en tres categorías: mildiu, oídio y sana.

Deep Learning Flask Visión por computador
Cómo funciona

Flujo de la solución

Desde la fotografía hasta la respuesta final mostrada al usuario.

Cliente–servidor
1. ImagenCámara o archivo
2. PreparaciónRecorte, RGB y 224×224
3. MobileNetV2Extracción de patrones
4. SoftmaxProbabilidad por clase
5. ResultadoMildiu · Oídio · Sana
Validación interna97.24%422 aciertos de 434 imágenes
Prueba técnica pública95.00%114 aciertos de 120 imágenes
Postest local96.74%89 aciertos de 92 registros
Entrada del modelo224×224RGB · 3 canales
Categorías3Mildiu · Oídio · Sana
Preparación de datos

Dataset NGLD v5 y depuración

Archivos seleccionados inicialmente2,626
Duplicados exactos retirados333
Dataset final2,293 imágenes
Entrenamiento1,739 imágenes
Validación434 imágenes
Prueba técnica120 imágenes · 40 por clase
También se revisó similitud visual con dHash y los grupos de imágenes similares se mantuvieron dentro de un mismo subconjunto para reducir fuga de información.
Desbalance de clases

Pesos de clase, no “balanceo” por eliminación

No se descartaron imágenes para igualar las cantidades. Durante el entrenamiento se asignó mayor importancia a los errores de la clase menos representada.

Mildiu0.782
Oídio2.013
Sana0.816
Peso de claseN / (k × nᵢ)
El peso más alto para oídio compensa su menor representación sin duplicar ni eliminar artificialmente observaciones.
Entrenamiento

Transferencia de aprendizaje y fine-tuning

01
Base preentrenadaMobileNetV2 con pesos de ImageNet y clasificador original retirado.
02
Cabezal de clasificaciónGlobal Average Pooling + Dropout 0.30 + Dense de 3 neuronas Softmax.
03
Primera etapaBase congelada, Adam 0.001 y detención temprana; mejor estado restaurado.
04
Fine-tuningÚltimas ~30 capas habilitadas, BatchNormalization congelada y Adam 1×10⁻⁵.
Generalización

Aumento de datos

Las transformaciones se aplicaron únicamente al conjunto de entrenamiento para aumentar la variabilidad visual sin alterar validación ni prueba.

Volteo horizontal y vertical
Rotación 0.08
Zoom 0.10
Contraste 0.10
Las 92 fotografías locales del estudio no formaron parte del entrenamiento ni se utilizaron para modificar el modelo después de observar sus resultados.
Evaluación de uso local

Resultados descriptivos del postest

Resultados sobre las mismas 92 unidades utilizadas en la comparación pretest–postest.

92 registros
Nivel de acierto96.74%89 de 92 clasificaciones correctas
F1 macro95.67%Métrica técnica complementaria
Tiempo operativo promedio7.879 sIntervalo real de uso registrado
Tasa de falsos positivos1.96%1 FP entre 51 hojas sanas
Matriz de confusión del postest

Comportamiento por clase

Las filas son las clases de referencia y las columnas las clases predichas.

Pred. sanaPred. oídioPred. mildiu
Ref. sana5010
Ref. oídio0231
Ref. mildiu0116
Arquitectura del producto

Aplicación web cliente–servidor

El navegador gestiona la interacción y el recorte; Flask recibe la imagen y coordina la inferencia; TensorFlow/Keras ejecuta MobileNetV2 y devuelve la predicción al cliente.

Cliente webHTML · CSS · JavaScript · Cropper.js
Servidor FlaskRutas, validación y API
Modelo IATensorFlow/Keras · MobileNetV2
La separación entre interfaz, servidor y servicio de inferencia facilita mantener la lógica del modelo aislada de la presentación y permite ampliar la solución sin modificar el clasificador entrenado.
MobileNetV2

Analizando la hoja

Preparando la imagen y ejecutando la red neuronal.