Tartalomjegyzék:

Hogyan lehet felismerni a növényi betegségeket a gépi tanulás segítségével: 6 lépés
Hogyan lehet felismerni a növényi betegségeket a gépi tanulás segítségével: 6 lépés

Videó: Hogyan lehet felismerni a növényi betegségeket a gépi tanulás segítségével: 6 lépés

Videó: Hogyan lehet felismerni a növényi betegségeket a gépi tanulás segítségével: 6 lépés
Videó: How Computer Vision Works 2024, Július
Anonim
Hogyan lehet felismerni a növényi betegségeket a gépi tanulás segítségével
Hogyan lehet felismerni a növényi betegségeket a gépi tanulás segítségével

A beteg növények észlelésének és felismerésének folyamata mindig kézi és unalmas folyamat volt, amely megköveteli az emberektől, hogy szemrevételezzék a növény testét, ami gyakran téves diagnózishoz vezethet. Azt is megjósolták, hogy mivel a globális időjárási szokások változni kezdenek az éghajlatváltozás miatt, a növénybetegségek valószínűleg súlyosabbá válnak és elterjednek. Ezért fontos olyan rendszerek kifejlesztése, amelyek gyorsan és egyszerűen elemzik a növényeket, és azonosítják az adott betegséget a további terméskárok korlátozása érdekében.

Ebben az utasításban a „Transfer Learning” néven ismert gépi tanulási koncepciót fogjuk megvizsgálni a beteg rizsnövények képeinek osztályozására. Ugyanez a módszer más képosztályozási problémák esetén is alkalmazható.

1. lépés: A rizsbetegségek típusai

A rizsbetegségek típusai
A rizsbetegségek típusai

A rizs az egyik legnépszerűbb élelmiszernövény, amelyet elsősorban Ázsiában, Afrikában és Dél -Amerikában termesztenek, de számos kártevőre és betegségre érzékeny. A fizikai jellemzők, például a levelek színtelenítése számos betegség azonosítására használhatók, amelyek befolyásolhatják a rizsnövényt. Például a Barna-folt, gombás betegség, amely a levelek védőburkolatát érinti, a leveleket több apró ovális barna folt borítja, szürke központtal, míg a Leaf-Blast esetében a levelek nagyobb barna elváltozásokkal. Hasonlóképpen, a Rice Hispa kártevő által érintett leveleket a levél felszínén kialakuló hosszú nyomvonalak alapján lehet azonosítani.

2. lépés: Hogyan észlelték a korábbi módszerek a betegségeket?

Hogyan azonosították a korábbi módszerek a betegségeket?
Hogyan azonosították a korábbi módszerek a betegségeket?

A korábbi módszerek a beteg növényképek automatikus osztályozására, mint például a [1] -ben használt szabályalapú osztályozók, rögzített szabálykészletre támaszkodnak a levél érintett és nem érintett régiókra való szegmentálására. A jellemzők kinyerésére vonatkozó szabályok egy része magában foglalja az érintett és a nem érintett régiók színe közötti átlag és szórás változásának megfigyelését. Az alakzat jellemzőinek kinyerésére vonatkozó szabályok magukban foglalják, hogy egyes primitív formákat külön helyeznek el az érintett területre, és azonosítják azt az alakzatot, amely lefedi az érintett terület maximális területét. Miután a képeket kinyerjük, rögzített szabályokat használunk a képek osztályozására a növényt érintő betegségtől függően. Az ilyen osztályozó fő hátránya, hogy minden betegségre vonatkozóan több rögzített szabályra lesz szükség, ami viszont érzékenyebbé teheti a zajos adatokat. A fenti képek azt mutatják be, hogyan lehet szabályalapú döntési fát használni a kép két régióra történő szegmentálására.

1. Santanu Phadikar és mtsai., „A rizsbetegségek osztályozása a funkciók kiválasztásával és a szabályalkotó technikákkal,” Computers and Electronics in Agriculture, vol. 90., 2013. jan.

3. lépés: Transzfer tanulás

Transzfer tanulás
Transzfer tanulás

Az ebben az utasításban leírt képosztályozási technika a CNN alapszerkezetét használja, amely több konvolúciós rétegből, egy gyűjtő rétegből és egy utolsó, teljesen összekapcsolt rétegből áll. A konvolúciós rétegek szűrőkészletként működnek, amelyek kiemelik a kép magas szintű jellemzőit. A max-pooling az egyik leggyakoribb módszer, amelyet a rétegek összevonásakor használnak a kivont elemek térbeli méretének csökkentésére, ezáltal csökkentve az egyes rétegek súlyának kiszámításához szükséges számítási teljesítményt. Végül a kinyert adatok átjutnak egy teljesen összekapcsolt rétegen, egy softmax aktiváló funkcióval együtt, amely meghatározza a kép osztályát.

Előfordulhat azonban, hogy az egyéni CNN -ek nulláról történő kiképzése nem hozza meg a kívánt eredményt, és nagyon hosszú képzési idővel járhat.

Az oktatóképek jellemzőinek megismerése érdekében az Transfer Learning nevű módszert használjuk, amelyben az előre betanított modell „felső” rétegeit eltávolítják, és olyan rétegekkel helyettesítik, amelyek megtanulhatják az oktatási adatkészletre jellemző jellemzőket. A transzfer tanulás csökkenti az edzési időt, összehasonlítva a véletlenszerűen inicializált súlyokat használó modellekkel. Módszerünk hat különböző, előre betanított modellt használ, nevezetesen: AlexNet, GoogLeNet, ResNet-50, Inception-v3, ShuffleNet és MobileNet-v2.

A képen a GoogLeNet architektúra látható, ahol a kéket a konvolúciós rétegekhez, a vöröset a rétegek gyűjtéséhez, a sárgát a softmax rétegekhez és a zöldet a konkat rétegekhez használják. Itt többet megtudhat a CNN belső működéséről.

A rizsbetegség -adatkészlet egészséges és beteg rizsnövények leveleinek képeiből áll. A képeket négy különböző osztályba sorolhatjuk: barna folt, rizs hispa, levélfúvás és egészséges. Az adatkészlet 2092 különböző képből áll, mindegyik osztály 523 képet tartalmaz. Minden kép egyetlen egészséges vagy beteg levélből áll, fehér háttér előtt.

A képadatokat képzési, érvényesítési és tesztelési képkészletekre osztottuk. A túltöltés elkerülése érdekében az edzésképeket méretezéssel és felforgatással növeljük, hogy növeljük az edzésminták teljes számát.

A kód és a függőségek nyílt forráskódúak, és itt találhatók: GitHub Code

Különböző képosztályozási alkalmazások esetén egyszerűen megváltoztathatjuk a képzési adatkészletet.

4. lépés: A modell betanítása

A modell képzése
A modell képzése
A modell képzése
A modell képzése
A modell képzése
A modell képzése

Az egyes modellek által megkövetelt memória méretétől függően az előre betanított modelleket nagyobb és kisebb modellekbe sorolják. A kisebb modellek kevesebb mint 15 MB -ot fogyasztanak, és ezért jobban megfelelnek a mobil alkalmazásokhoz.

A nagyobb modellek közül az Inception-v3 volt a leghosszabb, körülbelül 140 perces edzési idő, míg az AlexNet a legrövidebb, körülbelül 18 perces edzési időt. A kisebb mobil-orientált modellek közül a MobileNet-v2 volt a leghosszabb, körülbelül 73 perces edzési idő, míg a ShuffleNet a legrövidebb, körülbelül 38 perces.

5. lépés: A modell tesztelése

A modell tesztelése
A modell tesztelése
A modell tesztelése
A modell tesztelése
A modell tesztelése
A modell tesztelése

A nagyobb modellek közül az Inception-v3 tesztelési pontossága volt a legmagasabb, körülbelül 72,1%, míg az AlexNet esetében a legalacsonyabb, körülbelül 48,5%. A kisebb mobil-orientált modellek közül a MobileNet-v2 tesztelési pontossága volt a legmagasabb, 62,5%, míg a ShuffleNet esetében a legalacsonyabb, 58,1%.

A MobileNet-v2 szignifikánsan jól teljesített a Brown-Spot, Leaf-Blast és Healthy levelek képeinek osztályozásakor, miközben számos téves osztályozást végzett a Rice Hispa esetében, mindössze 46,15%-os pontossággal.

Az Inception-v3 hasonló osztályozási eredményeket mutatott, mint a MobileNet-v2.

6. lépés: További vizsgálatok

További tesztek
További tesztek
További tesztek
További tesztek

A fenti kép azt mutatja, hogy a MobileNet-v2 modell hogyan minősíti rosszul a fűlevél képét fehér alapon Rice Hispa-ként.

A MobileNet-v2 pontosságát teszteltük a Rice Hispa kivágott képein is, ahol a fehér hátteret minimálisra csökkentettük, hogy a levél maximális területet foglaljon el a képen belül. A Rice Hispa kivágott képei esetében körülbelül 80,81% pontosságot figyeltünk meg, azaz a Rice Hispa kivágott képei esetében a besorolási pontosság jelentős növekedését figyeltük meg a kivágott vizsgálati mintákhoz képest. Ezért azt javasoljuk, hogy a rizsbetegségek felderítésének valós megvalósításai konvolúciós ideghálózatok segítségével vágják le a tesztképeket a háttérzaj eltávolítása érdekében a pontosság javítása érdekében.

Ajánlott: