$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Het volgende protocol illustreert het proces van het opsporen en stappen opbouwen en inzetten van systemen voor het opstellen en inzetten van rijstbladziekten. De genomen stappen moeten achtereenvolgens worden gebruikt om de bevindingen uit dit artikel te repliceren.
Datasetvoorbereiding
Paddy leaves stage-dataset: Deze data was gebaseerd op PaddyNet4. De scène bestaat uit 560 beelden die zijn geclassificeerd onder vier verschillende ontwikkelingsfasen, namelijk: Fase 2, Fase 3, Fase 4 en Fase 5. De classificatie hangt af van de kleur en rijpheid van de rijstbladeren, die weer afhankelijk zijn van de stikstofconcentratie, naast andere factoren, en de ontwikkeling van de plant. De gepresenteerde dataset is belangrijk om het juiste stadium van de rijstplant te kennen (Figuur 1). PaddyNet is openbaar toegankelijk via de website van data.mendeley.com/datasets/. Paddy leaves ziekte-dataset: Deze dataset was beschikbaar als verschillende aparte publiek toegankelijke datasets op Kaggle en werd gecombineerd tot één uniforme dataset met in totaal 6.920 afbeeldingen, die elk behoorden tot een van de zes ziektetypen die op (Figuur 2) worden getoond. Behandeldataset: De dataset is kritisch ontwikkeld door informatie op te halen en te integreren van diverse openbaar beschikbare datasets en bevat gegevens over diverse beheerpraktijken van rijstziekten in vier groeifasen21. Het hoofddoel van deze dataset is het opstellen van aanbevelingen om de rijstziekte te voorkomen en te beheersen. De gegevens zijn een van de bronnen die essentieel zijn om ziekten in rijstplanten te bestrijden door het selecteren van het juiste soort pesticiden 19,22,23,24,25
Data-augmentatie
De data-uitbreiding werd gebruikt om de trainingsdataset te verbeteren en overfitting te verminderen. De augmentatiemethoden die in de huidige studie zijn toegepast zijn rotatie (tot 30), breedte- en hoogteverplaatsing (tot 20%), zoomen (tot 20%), schuif en horizontaal omdraaien. Het gebruik van deze augmentatiemethoden helpt het model de essentie van het model te verkrijgen en verbetert de generalisatie van het model wanneer het wordt getest op onzichtbare data. Data-augmentatie werd uitgevoerd op de trainingsdataset, terwijl de validatie- en testdatasets werden gelaten zoals ze waren om de eerlijke prestaties van het systeem te beoordelen. De omvang van de oorspronkelijke dataset moest worden uitgebreid met data omdat de omvang van de oorspronkelijke dataset vrij klein is, en de aanpak nodig was om de generalisatie te verbeteren en overfitting te minimaliseren door het model kennis te laten maken met verschillen in oriëntatie, schaal en positie van bladafbeeldingen.
Beeldvoorbewerking
De verzamelde stadia- en ziektegegevens werden door een aantal preprocessing-stappen gestuurd om de data consistent te maken en de prestaties van de modellen te verbeteren. Alle afbeeldingen uit beide datasets zijn geschaald naar 128 × 128 × 3 om een werkbare aansluiting in elke deep learning-architectuur te garanderen. De pixelwaarden werden geschaald naar het interval [0,1] om de convergentie tijdens het trainen te versnellen. Bovendien werden de labels van ziekten en hun stadia omgezet in cijfers om het model krachtiger te evalueren en te trainen. Deze preprocessingmethoden hielpen om features beter te extraheren, een betere classificatiegraad te krijgen en het model robuust te maken tegen verschillende omgevingscondities. De grootte van de gebruikte afbeelding, 128 × 128, werd gecompromitteerd door berekeningen en featureverlies. Concrete Kleinere beeldgrootte minimaliseert de trainingstijd en rekenkosten, en elimineert geen informatie (visuele kenmerken) om de ziekte en fase te classificeren bij gebruik van deep learning-modellen.
Datasetsplitsing
De verwerkte gegevens werden verdeeld in drie subsets (Tabel 1): Training Set (80%), Validatieset (10%), Test Set (10%). Om een onevenwichtige verdeling van klassen in alle drie de subsets te voorkomen, werd gestratificeerde willekeurige steekproeven gebruikt om ervoor te zorgen dat zowel de stagedataset (560 afbeeldingen) als de ziektedataset (6.920 afbeeldingen) een gelijke verdeling van klassen hadden. Er was geen datalek tussen de subsets.
Modeltraining
Bij de classificatie van de groeifase van rijstbladeren en ziekten werd de modeltrainingsmethode in twee stappen gebruikt.
Trapclassificatiemodel
De classificatiemethode van bladgroeistadium heeft vier klassen en een relatief lage datagrootte, waardoor de architectuur van het Convolutioneel Neural Netwerk (NN) niet erg werd uitgebreid maar als lichtgewicht werd beschouwd. Een eenvoudigere architectuur kan worden gebruikt om minder overfitting en rekenkracht te bieden, ten koste van hoge nauwkeurigheid bij classificatie met kleur- en textuurkenmerken. De nieuwe CNN-structuur zal drie convolutionele lagen hebben die gebruikmaken van de ReLU-activatiefuncties. De convolutionele lagen worden afgewisseld met de max-pooling lagen (2×2) om de ruimtelijke dimensies te verkleinen en de prominente kenmerken te identificeren. De feature maps ondergaan een convolutionele laag, waarna ze worden afgevlakt, en de volledig verbonden dichte laag met dropout-regularisatie wordt uitgevoerd om overfitting te ontmoedigen. Ten slotte wordt de multi-klasse classificatie van de vier groeistadia uitgevoerd met behulp van een softmax-uitvoerlaag. De Adam-optimizer, die een leersnelheid van 0,001 heeft en categorische kruisentropie als verliesfunctie, werd gebruikt om het model te trainen. Het aantal van de batch werd op 10 gezet en het model werd in 10 tijdperken getraind. Validatienauwkeurigheid en validatieverlies werden ook gebruikt om de prestaties van het model te monitoren, omdat deze worden gebruikt om ervoor te zorgen dat het model wordt gegeneraliseerd.
Ziekteclassificatiemodel gebaseerd op ensemble learning
Voor ziekteclassificatie werd een reeks deep learning-architecturen toegepast om de voorspellingsnauwkeurigheid te verbeteren. De initiële ontwikkeling van een aangepast CNN-model bestond uit vier lagen, namelijk drie convolutionele lagen, drie max-pooling-lagen, een dichte, volledig verbonden laag en dropout-regularisatie. MobileNetV2 maakt gebruik van diepte-separeerbare convoluties, omgekeerde residublokken en omgekeerde bottleneck met lineair residu. Het model heeft een kleine grootte van slechts 3,4 miljoen parameters en kan worden gebruikt in een omgeving met beperkte middelen. De modellen begonnen met ImageNet-activaties en de convolutionele lagen werden bevroren zodat de geleerde feature-representaties niet verloren gingen. De softmax-classificatielaag was gekoppeld aan een volledig verbonden laag met dropout-regularisatie. Alle modellen werden gedurende 20 epochs getraind met een batchgrootte van 32, en de optimizer en verlies waren identiek aan die van het CNN-model. In een poging om de classificatie te verbeteren, werd de gemiddelde stemensemble-leermethode gebruikt. De resultaten waren de gemiddelde kansen voorspeld door alle vijf modellen (CNN, VGG16, ResNet50, InceptionV3 en MobileNetV2) om de definitieve klassevoorspellingen te verkrijgen. Deze combinatietechniek was nuttig om bias in modellen te verminderen en generalisatie te verbeteren. Het laatste combinatiemodel was nauwkeuriger in classificaties. De reden dat de ensemblebenadering is gekozen, is dat het leren van de verschillende feature-representaties wordt geleerd met dezelfde dataset door de verschillende deep learning-modellen. Het ensemble vermindert ook modelbias en variantie en verhoogt de algehele voorspellingsproblemen en de algemene generalisatieprestaties in vergelijking met onafhankelijke modellen.
Voorspellingsstrategie
Bij het voorspellen van rijstbladziekte en het bijbehorende groeistadium werd de ensemble-gebaseerde classificatiemethode toegepast. De vijf deep learning-modellen (CNN, VGG16, ResNet50, InceptionV3 en MobileNetV2) werden onafhankelijk getraind om de ziekten te classificeren en samengevoegd met behulp van een gemiddelde stemensemblemethode. Deze procedure hield in dat de kansen van elke ziektecategorie van alle modellen en de gemiddelde kansverdeling werden voorspeld, wat precisie aan voorspelbaarheid toevoegt en bias in het model minimaliseert. De definitieve voorspelling werd genomen als de ziekteklasse met de hoogste gemiddelde waarschijnlijkheid. Verder werd een ander op CNN gebaseerd stadiumclassificatiemodel getraind en gebruikt om de groeifase van het rijstblad te voorspellen. Beide classificatiemodellen namen invoerbeelden van grootte 128x 128 op, normaliseerden vervolgens de pixelwaarden en gebruikten vervolgens de modellen om een inferentie te maken. De definitieve voorspellingen van zowel bladstadium als ziekte werden vervolgens gekoppeld aan een bestaande set behandelaanbevelingen om geldige behandeling te bieden om de ziekte te beheersen.
Voorbeelduitgang: "Bladstadium: 3, Ziekte: Toentungro"
Behandelingsaanbeveling
Om de classificatie van rijstbladziekten praktischer te maken, werd een behandelsysteem geïntegreerd in de toepassing gebaseerd op Streamlit. Het systeem neemt de voorspelde ziekte- en bladfase om specifieke behandelaanbevelingen te geven om ervoor te zorgen dat de ziekte succesvol wordt beheerd. Het model van ensemble-ziekteclassificatie (inclusief CNN, VGG16, ResNet50, InceptionV3 en MobileNetV2) classificeert de ziekte, terwijl het model voor het classificeren van het bladstadium een ander model is. Het gemodelleerde stadium van het blad en de ziekte wordt vergeleken met de behandelgegevens met aanbevolen doseringen (preventieve maatregelen en toepassing van pesticide).
Methodologisch kader en bijdrage
De methodologie van het gepresenteerde systeem is een pijplijn van meerfasen, die beeldclassificatie en besluitvormingsondersteuning combineert. Het kader bestaat uit vijf grote stappen, namelijk het promoten van beelden en augmentatie, het voorspellen van de bladgroeifase, het gebruik van deep learning-modellen die op de afbeeldingen zijn getraind om de ziekte te classificeren, het combineren van de voorspellingsresultaten om een ensemble-beslissing te verkrijgen, en het aanbevelen van de behandeling op basis van het type en de groeifase van een ziekte. De methodologische bijdrage van dit werk is gericht op de implementatie van vele voorspellingsmodellen en een behandelaanbevelingsmodule in één beslissingsondersteuningspijplijn. Het systeem is niet alleen gebaseerd op de classificatie van ziekten, maar ook op het opnemen van informatie over het stadium van plantengroei om behandelaanbevelingen te geven in een bepaald stadium. Het systeem is relevanter voor het proces van landbouwbesluitvorming in de echte wereld vanwege deze fasebewuste aanbevelingsstrategie. Het invoerbeeld wordt eerst voorbewerkt voordat het door het faseclassificatiemodel en ziekteclassificatiemodellen wordt gevoerd. De resultaten van het ziektemodel worden gemiddeld met behulp van een ensembletechniek, en de ziektevoorspelling en groeifase worden tot het einde doorgevoerd om correcte behandelaanbevelingen te verkrijgen op basis van de identificatie van relevante behandelgegevens in de behandeldatabase.
Validatiestrategie en overfittingpreventie
Om strenge validatie van de ontwikkelde modellen te bieden, werd de dataset opgesplitst in drie disjunctieve deelsets: trainingsset (80%), validatieset (10%) en testset (10%). De modellen werden getraind met de trainingsset, afgestemd met de validatieset en beoordeelden hun uiteindelijke prestaties uitsluitend met de testset. De testset bleef volledig onafhankelijk om een onpartijdige analyse van het model te kunnen uitvoeren. De volgende methoden werden gebruikt om te garanderen dat het model niet overfit en zijn generalisatievermogen te vergroten. Om het diversiteitsniveau in de dataset te vergroten, werden eerst data-augmentatiemethoden gebruikt (rotatie, zoomen, verschuiven, afschuiving en horizontaal omdraaien). Ten tweede werd dropout-regularisatie gebruikt in de volledig verbonden lagen van de CNN-modellen om overfitting te verminderen. Ten derde werden vooraf getrainde modellen (VGG16, ResNet50, InceptionV3 en MobileNetV2) overgedragen met behulp van de techniek van bevroren convolutionele lagen om de geleerde kenmerken te behouden en de kans op overfitting veroorzaakt door de kleine dataset te minimaliseren. Tot slot werden validatieverlies en nauwkeurigheid gebruikt om de prestaties van het model tijdens training te monitoren, zodat het model niet overfit is op de trainingsgegevens. Dit zijn de validatie- en regulariseringsschema's die ervoor zorgen dat het voorgestelde model zeer goed generaliseert naar onzichtbare data en goede prestaties levert.
Voorgesteld systeem
De voorgestelde is een deep learning-oplossing voor het beheer van rijstbladziekten, die de bladstadiumvoorspelling en classificatie van de ziekte omvat. Het begint met het voorbewerken van rijstbladafbeeldingen in termen van het aanpassen van grootte naar een gemeenschappelijke hoogte en de pixelwaarden. De bladgroeifase wordt voorspeld met behulp van een neuraal netwerk, en een gemiddelde stemtechniek wordt gebruikt om een ensemble van deep learning-modellen (CNN, VGG16, ResNet50, InceptionV3, MobileNetV2) te gebruiken om ziekten te classificeren. Het systeem gebruikt het voorspelde stadium en de ziekte om de juiste doseringen herbiciden of pesticiden voor te schrijven die in de behandeling worden gebruikt. De workflow van het voorgestelde systeem wordt weergegeven in (Figuur 3). De voorgaande subsecties (A tot en met I) leggen elk van de afzonderlijke elementen van deze pijplijn uit, daarom wordt hier niet meer beschreven. De op Streamlit gebaseerde applicatie die in deze studie is ontwikkeld, is een prototype beslissingsondersteuningstool bedoeld om de praktische toepasbaarheid van het voorgestelde model aan te tonen. Het systeem stelt gebruikers in staat om afbeeldingen van rijstbladeren te uploaden en ziektevoorspellingen, informatie over groeistadia en behandeladviezen te ontvangen. Grootschalige bruikbaarheidstests en veldimplementatie met boeren zullen worden uitgevoerd als onderdeel van toekomstig werk om de effectiviteit en bruikbaarheid van het systeem in de praktijk te evalueren.