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, Novembar
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. Predviđeno je i da će globalni vremenski obrasci početi varirati zbog klimatskih promjena, pa će bolesti usjeva postati ozbiljnije i raširenije. Stoga je važno razviti sisteme koji brzo i lako analiziraju usjeve i identifikuju određenu bolest kako bi se ograničilo dalje oštećenje usjeva.

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

Korak 1: Vrste bolesti pirinča

Vrste bolesti pirinča
Vrste bolesti pirinča

Pirinač je jedna od najpopularnijih osnovnih prehrambenih kultura 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 usjev 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 lista lišće prekriveno sa većim smeđim lezijama. Slično, lišće zahvaćeno štetočinom 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 zasnovanih na pravilima, koje se koriste u [1], oslanjaju se na fiksni skup pravila za segmentiranje lista u 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 nezaraženih regija. Pravila za izdvajanje obilježja 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 to što će zahtijevati nekoliko fiksnih pravila za svaku bolest što bi ga zauzvrat moglo učiniti osjetljivim na bučne podatke. Gornje slike pokazuju kako se stablo odlučivanja zasnovano na pravilima može koristiti za segmentiranje slike u dvije regije.

1. Santanu Phadikar i dr., „Klasifikacija bolesti pirinča pomoću tehnika odabira karakteristika i stvaranja pravila“, Računari i elektronika u poljoprivredi, vol. 90, januar 2013.

Korak 3: Prenesite učenje

Transfer Learning
Transfer Learning

Tehnika klasifikacije slika opisana u ovom Instructables koristi osnovnu strukturu CNN -a koja se sastoji od nekoliko konvolucionih slojeva, sloja za udruživanje i završnog potpuno povezanog sloja. Konvolucijski slojevi djeluju kao skup filtera koji izdvajaju značajke slike na visokom nivou. Maksimalno udruživanje jedna je od uobičajenih metoda koja se koristi u grupiranju 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 povezan sloj zajedno sa softmax aktivirajućom funkcijom koja određuje klasu slike.

Ali obučavanje prilagođenih CNN -ova od nule možda neće dati željene rezultate i može imati jako dugo vrijeme za obuku.

Da bismo naučili značajke slika za obuku, koristimo metodu koja se zove Transfer Learning pri čemu se „gornji“slojevi unaprijed obučenog 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 prethodno 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 konkatne slojeve. Ovdje možete saznati više o unutrašnjem 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, a to su Brown-Spot, Rice Hispa, Blast 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. Da 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 obuku.

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

Za različite aplikacije 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 je imao 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 je imao 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 je imao najveću tačnost testiranja od približno 72,1%, dok je AlexNet imao najmanju tačnost testiranja od približno 48,5%. Među manjim modelima orijentiranim na mobilne uređaje, 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 imao je značajno dobre rezultate pri klasifikaciji 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.

Testirali smo i preciznost 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 primijetili smo točnost od približno 80,81%, odnosno za izrezane slike riže hispe primijetili smo značajno povećanje tačnosti klasifikacije u odnosu na neobrezane testne uzorke. Stoga predlažemo da implementacije otkrivanja bolesti pirinča u stvarnom svijetu pomoću konvolutivnih neuronskih mreža moraju obrezati testne slike kako bi se uklonila pozadinska buka kako bi se poboljšala preciznost.

Preporučuje se: