Sadržaj:

Kako otkriti biljne bolesti pomoću strojnog učenja: 6 koraka
Kako otkriti biljne bolesti pomoću strojnog učenja: 6 koraka

Video: Kako otkriti biljne bolesti pomoću strojnog učenja: 6 koraka

Video: Kako otkriti biljne bolesti pomoću strojnog učenja: 6 koraka
Video: KAKO UNIŠTITI KOREN DRVETA, PANJ U ZEMLJI 2024, Srpanj
Anonim
Kako otkriti biljne bolesti pomoću strojnog učenja
Kako otkriti biljne bolesti pomoću strojnog učenja

Proces otkrivanja i prepoznavanja oboljelih biljaka oduvijek je bio ručan i dosadan proces koji od ljudi zahtijeva vizualni pregled biljnog tijela što često može dovesti do pogrešne dijagnoze. Također je predviđeno kako će globalni vremenski obrasci početi varirati zbog klimatskih promjena, bolesti usjeva vjerojatno će postati ozbiljnije i raširenije. Stoga je važno razviti sustave koji brzo i jednostavno analiziraju usjeve i identificiraju određenu bolest kako bi se ograničila daljnja oštećenja usjeva.

U ovom Instructableu istražit ćemo koncept strojnog učenja poznat kao "Transfer Learning" kako bismo klasificirali slike oboljelih biljaka riže. Ista se metoda može prenamijeniti za bilo koji drugi problem klasifikacije slika.

Korak 1: Vrste bolesti riže

Vrste bolesti riže
Vrste bolesti riže

Riža je jedna od najpopularnijih osnovnih namirnica koja se uzgaja uglavnom u Aziji, Africi i Južnoj Americi, ali je osjetljiva na razne štetočine i bolesti. Fizičke karakteristike, poput obezbojenja lišća, mogu se koristiti za identifikaciju nekoliko bolesti koje mogu utjecati na urod riže. Na primjer, u slučaju smeđe mrlje, gljivične bolesti koja zahvaća zaštitni omotač lišća, lišće je prekriveno s nekoliko malih ovalnih smeđih mrlja sa sivim središtima, dok je u slučaju lista s lišćem prekriveno s većim smeđim lezijama. Slično, lišće zahvaćeno štetnikom Rice Hispa može se prepoznati po dugim tragovima koji se razvijaju na površini lista.

Korak 2: Kako su prethodne metode otkrivale bolesti?

Kako su prethodne metode otkrivale bolesti?
Kako su prethodne metode otkrivale bolesti?

Prethodne metode za automatsko klasificiranje slika oboljelih biljaka, poput klasifikatora temeljenih na pravilima, koje se koriste u [1], oslanjaju se na fiksni skup pravila za segmentiranje lista na zahvaćena i neoštećena područja. Neka pravila za izdvajanje značajki uključuju promatranje promjene srednje vrijednosti i standardne devijacije između boje zahvaćenih i neoštećenih regija. Pravila za izdvajanje značajki oblika uključuju pojedinačno postavljanje nekoliko primitivnih oblika na zahvaćeno područje i identificiranje oblika koji pokriva najveću površinu zahvaćenog područja. Nakon što se značajke izdvoje iz slika, skup fiksnih pravila koristi se za klasifikaciju slika ovisno o bolesti koja je možda zahvatila biljku. Glavni nedostatak takvog klasifikatora je taj što će zahtijevati nekoliko fiksnih pravila za svaku bolest što bi ga pak moglo učiniti osjetljivim na bučne podatke. Gornje slike pokazuju kako se stablo odlučivanja temeljeno na pravilima može koristiti za segmentiranje slike u dvije regije.

1. Santanu Phadikar i sur., “Klasifikacija bolesti riže pomoću tehnika odabira značajki i stvaranja pravila”, Računala i elektronika u poljoprivredi, sv. 90, siječanj 2013.

Korak 3: Prijenos učenja

Prijenosno učenje
Prijenosno učenje

Tehnika klasifikacije slika opisana u ovom Instructables koristi osnovnu strukturu CNN -a koja se sastoji od nekoliko konvolucijskih slojeva, sloja za združivanje i završnog potpuno povezanog sloja. Konvolucijski slojevi djeluju kao skup filtera koji izdvajaju značajke slike na visokoj razini. Maksimalno udruživanje jedna je od uobičajenih metoda koja se koristi u skupljanju slojeva za smanjenje prostorne veličine izdvojenih značajki čime se smanjuje računalna snaga potrebna za izračunavanje težina za svaki sloj. Konačno, izdvojeni podaci prolaze kroz potpuno povezani sloj zajedno s softmax aktivacijskom funkcijom koja određuje klasu slike.

No, obučavanje prilagođenih CNN -ova ispočetka možda neće dati željene rezultate i može imati jako dugo vrijeme za obuku.

Kako bismo naučili značajke slika za vježbanje, koristimo metodu koja se naziva Transfer Learning, pri čemu se 'gornji' slojevi prethodno uvježbanog modela uklanjaju i zamjenjuju slojevima koji mogu naučiti značajke koje su specifične za skup podataka za obuku. Prijenosno učenje smanjuje vrijeme treninga u usporedbi s modelima koji koriste nasumično inicijalizirane utege. Naša metoda koristi šest različitih unaprijed obučenih modela, i to AlexNet, GoogLeNet, ResNet-50, Inception-v3, ShuffleNet i MobileNet-v2.

Slika prikazuje GoogLeNet arhitekturu gdje se plava koristi za konvolucijske slojeve, crvena za skupljanje slojeva, žuta za slojeve softmax i zelena za slojeve sa konkatom. Ovdje možete saznati više o unutarnjem radu CNN -a.

Skup podataka o rižinoj bolesti sastoji se od slika lišća zdravih i oboljelih biljaka riže. Slike se mogu kategorizirati u četiri različite klase, naime Brown-Spot, Rice Hispa, Leaf-Blast i Healthy. Skup podataka sastoji se od 2092 različite slike, a svaka klasa sadrži 523 slike. Svaka se slika sastoji od jednog zdravog ili bolesnog lista postavljenog na bijelu podlogu.

Skup slikovnih podataka podijelili smo na skupove slika za obuku, provjeru valjanosti i testiranje. Kako bismo spriječili prekomjerno prilagođavanje, povećavamo slike za vježbanje skaliranjem i okretanjem slika za vježbanje kako bismo povećali ukupan broj uzoraka za trening.

Kod i ovisnosti su otvorenog koda i mogu se pronaći ovdje: GitHub kod

Za različite primjene klasifikacije slika možemo jednostavno promijeniti skup podataka za obuku.

Korak 4: Obuka modela

Obuka modela
Obuka modela
Obuka modela
Obuka modela
Obuka modela
Obuka modela

Ovisno o veličini memorije koja je potrebna svakom modelu, unaprijed obučeni modeli kategorizirani su u veće i manje modele. Manji modeli troše manje od 15 MB i stoga su prikladniji za mobilne aplikacije.

Među većim modelima, Inception-v3 imao je najduže vrijeme treninga od približno 140 minuta, dok je AlexNet imao najkraće vrijeme treninga od približno 18 minuta. Među manjim modelima orijentiranim na mobilne uređaje, MobileNet-v2 imao je najduže vrijeme treninga od približno 73 minute, dok je ShuffleNet imao najkraće vrijeme treninga od približno 38 minuta.

Korak 5: Testiranje modela

Testiranje modela
Testiranje modela
Testiranje modela
Testiranje modela
Testiranje modela
Testiranje modela

Među većim modelima, Inception-v3 imao je najveću točnost testiranja od približno 72,1%, dok je AlexNet imao najmanju točnost testiranja od približno 48,5%. Među manjim mobilno orijentiranim modelima MobileNet-v2 imao je najveću točnost testiranja od 62,5%, dok je ShuffleNet imao najmanju točnost testiranja od 58,1%.

MobileNet-v2 značajno se pokazao uspješnim pri klasificiranju slika smeđe pjegavosti, listanja i zdravog lišća, dok je napravio nekoliko pogrešnih klasifikacija za Rice Hispa s točnošću od samo 46,15%.

Inception-v3 pokazao je slične rezultate klasifikacije kao MobileNet-v2.

Korak 6: Dodatni testovi

Dodatni testovi
Dodatni testovi
Dodatni testovi
Dodatni testovi

Gornja slika prikazuje kako model MobileNet-v2 pogrešno klasificira sliku lista trave na bijeloj podlozi kao Rice Hispa.

Također smo testirali točnost MobileNet-v2 na izrezanim slikama riže hispe, pri čemu je bijela pozadina svedena na minimum tako da list zauzima maksimalnu površinu unutar slike. Za izrezane slike riže hispe opazili smo točnost od približno 80,81%, tj. Za izrezane slike riže hispe primijetili smo značajno povećanje točnosti klasifikacije u odnosu na neobrezane testne uzorke. Stoga predlažemo da stvarne implementacije otkrivanja bolesti riže pomoću konvolucijskih neuronskih mreža moraju obrezati testne slike kako bi se uklonila pozadinska buka kako bi se poboljšala točnost.

Preporučeni: