Sommario:
- Passaggio 1: tipi di malattie del riso
- Passaggio 2: in che modo i metodi precedenti hanno rilevato le malattie?
- Passaggio 3: trasferire l'apprendimento
- Passaggio 4: addestrare il modello
- Passaggio 5: test del modello
- Passaggio 6: test aggiuntivi
Video: Come rilevare le malattie delle piante utilizzando l'apprendimento automatico: 6 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Il processo di rilevamento e riconoscimento delle piante malate è sempre stato un processo manuale e noioso che richiede all'uomo di ispezionare visivamente il corpo della pianta, il che spesso può portare a una diagnosi errata. È stato anche previsto che, poiché i modelli meteorologici globali iniziano a variare a causa dei cambiamenti climatici, è probabile che le malattie delle colture diventino più gravi e diffuse. Pertanto, è importante sviluppare sistemi che analizzino rapidamente e facilmente le colture e identifichino una particolare malattia al fine di limitare ulteriori danni alle colture.
In questo Instructable, esploreremo un concetto di machine learning noto come "Transfer Learning" per classificare le immagini delle piante di riso malate. Lo stesso metodo può essere riproposto per qualsiasi altro problema di classificazione delle immagini.
Passaggio 1: tipi di malattie del riso
Il riso è una delle colture alimentari di base più popolari coltivate principalmente in Asia, Africa e Sud America, ma è suscettibile a una varietà di parassiti e malattie. Le caratteristiche fisiche come la decolorazione delle foglie possono essere utilizzate per identificare diverse malattie che possono colpire il raccolto di riso. Ad esempio, nel caso del Brown-Spot, una malattia fungina che colpisce la guaina protettiva delle foglie, le foglie sono ricoperte da numerose piccole macchie marroni ovali con centro grigio mentre, nel caso del Leaf-Blast, le foglie sono ricoperte con lesioni marroni più grandi. Allo stesso modo, le foglie colpite dal parassita del riso Hispa possono essere identificate dalle lunghe tracce che si sviluppano sulla superficie della foglia.
Passaggio 2: in che modo i metodi precedenti hanno rilevato le malattie?
I metodi precedenti per classificare automaticamente le immagini delle piante malate come i classificatori basati su regole usati in [1], si basano su un insieme fisso di regole per segmentare la foglia in regioni colpite e non colpite. Alcune delle regole per estrarre le caratteristiche implicano l'osservazione del cambiamento nella media e nella deviazione standard tra il colore delle regioni interessate e non interessate. Le regole per estrarre le caratteristiche della forma implicano il posizionamento individuale di diverse forme primitive sopra l'area interessata e l'identificazione della forma che copre l'area massima dell'area interessata. Una volta estratte le caratteristiche dalle immagini, viene utilizzata una serie di regole fisse per classificare le immagini in base alla malattia che può aver colpito la pianta. Il principale svantaggio di tale classificatore è che richiederà diverse regole fisse per ciascuna malattia che a sua volta potrebbe renderlo suscettibile di dati rumorosi. Le immagini sopra mostrano come un albero decisionale basato su regole può essere utilizzato per segmentare l'immagine in due regioni.
1. Santanu Phadikar et al., "Classificazione delle malattie del riso utilizzando tecniche di selezione delle caratteristiche e generazione di regole", Computer ed elettronica in agricoltura, vol. 90, gennaio 2013.
Passaggio 3: trasferire l'apprendimento
La tecnica di classificazione delle immagini descritta in questo Instructables utilizza la struttura di base di una CNN che consiste in diversi livelli convoluzionali, un livello di pooling e un livello finale completamente connesso. I livelli convoluzionali agiscono come un insieme di filtri che estraggono le caratteristiche di alto livello dell'immagine. Il Max-pooling è uno dei metodi comuni utilizzati nei livelli di pooling per ridurre la dimensione spaziale delle feature estratte, riducendo così la potenza di calcolo richiesta per calcolare i pesi per ogni livello. Infine, i dati estratti vengono passati attraverso un livello completamente connesso insieme a una funzione di attivazione softmax che determina la classe dell'immagine.
Ma la formazione di CNN personalizzate da zero potrebbe non produrre i risultati desiderati e potrebbe richiedere un tempo di formazione molto lungo.
Per apprendere le caratteristiche delle immagini di addestramento, utilizziamo un metodo chiamato Transfer Learning in cui i livelli "superiori" di un modello pre-addestrato vengono rimossi e sostituiti con livelli che possono apprendere le caratteristiche specifiche del set di dati di addestramento. L'apprendimento del trasferimento riduce il tempo di addestramento rispetto ai modelli che utilizzano pesi inizializzati casualmente. Il nostro metodo utilizza sei diversi modelli pre-addestrati, ovvero AlexNet, GoogLeNet, ResNet-50, Inception-v3, ShuffleNet e MobileNet-v2.
L'immagine mostra l'architettura di GoogLeNet in cui il blu viene utilizzato per i livelli convoluzionali, il rosso per i livelli di raggruppamento, il giallo per i livelli softmax e il verde per i livelli concatenati. Puoi saperne di più sul funzionamento interno di una CNN qui.
Il set di dati sulla malattia del riso è costituito da immagini di foglie di piante di riso sane e malate. Le immagini possono essere classificate in quattro diverse classi: Brown-Spot, Rice Hispa, Leaf-Blast e Healthy. Il set di dati è costituito da 2092 immagini diverse con ogni classe contenente 523 immagini. Ogni immagine è costituita da una singola foglia sana o malata posta su uno sfondo bianco.
Dividiamo il set di dati dell'immagine in set di immagini di addestramento, convalida e test. Per evitare l'overfitting, aumentiamo le immagini di addestramento ridimensionando e capovolgendo le immagini di addestramento per aumentare il numero totale di campioni di addestramento.
Il codice e le dipendenze sono open-source e possono essere trovati qui: Codice GitHub
Per diverse applicazioni di classificazione delle immagini, possiamo semplicemente modificare il set di dati dell'immagine di addestramento.
Passaggio 4: addestrare il modello
A seconda della dimensione della memoria richiesta da ciascun modello, i modelli pre-addestrati sono classificati in modelli più grandi e più piccoli. I modelli più piccoli consumano meno di 15 MB e quindi sono più adatti per le applicazioni mobili.
Tra i modelli più grandi, Inception-v3 ha avuto il tempo di formazione più lungo di circa 140 minuti, mentre AlexNet ha avuto il tempo di formazione più breve di circa 18 minuti. Tra i modelli più piccoli orientati ai dispositivi mobili, MobileNet-v2 ha avuto il tempo di formazione più lungo di circa 73 minuti, mentre ShuffleNet ha avuto il tempo di formazione più breve di circa 38 minuti.
Passaggio 5: test del modello
Tra i modelli più grandi, Inception-v3 ha avuto la più alta precisione di test di circa il 72,1%, mentre AlexNet ha avuto la più bassa precisione di test di circa il 48,5%. Tra i modelli più piccoli orientati ai dispositivi mobili, MobileNet-v2 ha avuto la più alta precisione di test del 62,5% mentre ShuffleNet ha avuto la più bassa precisione di test del 58,1%.
MobileNet-v2 si è comportato molto bene durante la classificazione delle immagini di Brown-Spot, Leaf-Blast e foglie sane, mentre effettuava diverse classificazioni errate per Rice Hispa con una precisione di solo il 46,15%.
Inception-v3 ha mostrato risultati di classificazione simili a MobileNet-v2.
Passaggio 6: test aggiuntivi
L'immagine sopra mostra come il modello MobileNet-v2 classifica erroneamente l'immagine di una foglia d'erba su uno sfondo bianco come Rice Hispa.
Abbiamo anche testato l'accuratezza di MobileNet-v2 su immagini ritagliate di Rice Hispa in cui lo sfondo bianco è stato ridotto al minimo in modo che la foglia occupi un'area massima all'interno dell'immagine. Per le immagini ritagliate di Rice Hispa, abbiamo osservato un'accuratezza di circa l'80,81%, ovvero per le immagini ritagliate di Rice Hispa, abbiamo osservato un aumento significativo dell'accuratezza della classificazione rispetto ai campioni di prova non ritagliati. Quindi, proponiamo che le implementazioni del mondo reale del rilevamento della malattia del riso utilizzando reti neurali convoluzionali debbano ritagliare le immagini di prova per rimuovere il rumore di fondo al fine di migliorare la precisione.
Consigliato:
Sistema di irrigazione automatico delle piante utilizzando un Micro:bit: 8 passaggi (con immagini)
Sistema di irrigazione automatico delle piante utilizzando un Micro: bit: in questo Instructable, ti mostrerò come costruire un sistema di irrigazione automatico delle piante utilizzando un Micro: bit e alcuni altri piccoli componenti elettronici. Il Micro: bit utilizza un sensore di umidità per monitorare il livello di umidità nel terreno della pianta e
UWaiPi - Sistema di irrigazione automatico delle piante a tempo: 11 passaggi (con immagini)
UWaiPi - Sistema di irrigazione automatico delle piante a tempo: ciao! Vi siete dimenticati di innaffiare le vostre piante oggi mattina? Stai pianificando una vacanza ma stai pensando a chi annaffierà le piante? Bene, se le tue risposte sono Sì, allora ho una soluzione per il tuo problema. Sono davvero felice di presentarti uWaiPi
Alimentatore automatico per piante WiFi con serbatoio - Impostazione coltivazione indoor/outdoor - Piante acquatiche automaticamente con monitoraggio remoto: 21 passaggi
Wi-Fi Automatic Plant Feeder With Reservoir - Configurazione coltivazione indoor/outdoor - Innaffiare le piante automaticamente con monitoraggio remoto: In questo tutorial dimostreremo come configurare un sistema di alimentazione piante interno/esterno personalizzato che irriga automaticamente le piante e può essere monitorato da remoto utilizzando la piattaforma Adosia
Rilevamento delle malattie delle piante con Qualcomm Dragonboard 410c: 4 passaggi
Rilevazione di malattie delle piante con Qualcomm Dragonboard 410c: Ciao a tutti, partecipiamo al concorso Inventing the Future con Dragonboard 410c sponsorizzato da Embarcados, Linaro e Baita.AVoID Project (Agro View Disease)Il nostro obiettivo è creare un sistema integrato in grado di catturare immagini, elaborare e rileva la posizione
Vaccinarsi o no? un progetto sull'osservazione dell'immunità di gregge attraverso la simulazione delle malattie: 15 passaggi
Vaccinarsi o no? un progetto sull'osservazione dell'immunità di gregge attraverso la simulazione delle malattie: panoramica del progetto: il nostro progetto esplora l'immunità di gregge e spera di incoraggiare le persone a farsi vaccinare per ridurre i tassi di infezione nelle nostre comunità. Il nostro programma simula come una malattia infetta una popolazione con diverse percentuali di vaccinat