Spaces:
Sleeping
Sleeping
Commit ·
29d2e28
1
Parent(s): 946449e
feat: update knowledge base
Browse files- src/streamlit_app.py +63 -14
src/streamlit_app.py
CHANGED
|
@@ -8,21 +8,36 @@ SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__))
|
|
| 8 |
MODEL_PATH = os.path.join(SCRIPT_DIR, "best.pt")
|
| 9 |
|
| 10 |
SYMPTOM_QUESTIONS = {
|
| 11 |
-
"G1": "Daun
|
| 12 |
"G2": "Pada pagi hari, dapat ditemukan cairan bakteri terlihat seperti butiran air pada bagian terinfeksi",
|
| 13 |
"G3": "Gejala terlihat seperti anak panah terdapat di antara urat daun",
|
| 14 |
-
"G4": "Daun
|
| 15 |
"G5": "Luka pada daun terlihat transparan bila dihadapkan cahaya matahari",
|
| 16 |
"G6": "Daun berbentuk belah ketupat",
|
| 17 |
"G7": "Pada daun bagian tengah berwarna abu-abu atau berwarna putih dengan bagian tepi berwarna kecoklatan",
|
| 18 |
"G8": "Infeksi pada malai/leher berwarna abu-abu",
|
| 19 |
-
"G9": "Tanaman kerdil dan
|
|
|
|
| 20 |
"G10": "Bercak cokelat pada daun, pelepah, dan bulir gabah",
|
| 21 |
"G11": "Bercak daun sering menutupi permukaan daun, menyebabkan daun menjadi layu",
|
| 22 |
"G12": "Bercak cokelat pada batang/leher malai",
|
| 23 |
"G13": "Terdapat bercak berbentuk oval berwarna abu-abu kehijauan pada pelepah (tulang daun)",
|
| 24 |
"G14": "Batang tanaman padi menjadi rapuh dan mudah rebah/jatuh",
|
| 25 |
-
"G15": "Bibit yang sakit menjadi layu dan akhirnya mati"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 26 |
}
|
| 27 |
|
| 28 |
YOLO_PROMPTS = {
|
|
@@ -31,9 +46,10 @@ YOLO_PROMPTS = {
|
|
| 31 |
"blast": ["G6", "G7", "G8"],
|
| 32 |
"tungro": ["G9"],
|
| 33 |
"brown_spot": ["G10", "G11", "G12"],
|
| 34 |
-
"downy_mildew": [],
|
| 35 |
-
"dead_heart": [],
|
| 36 |
-
"hispa": [],
|
|
|
|
| 37 |
"normal": []
|
| 38 |
}
|
| 39 |
|
|
@@ -86,23 +102,56 @@ PRODUCTION_RULES = [
|
|
| 86 |
"yolo_class": "brown_spot",
|
| 87 |
"disease": "Bercak Daun Coklat (Brown Spot)",
|
| 88 |
"symptoms": ["G10", "G11", "G12"],
|
| 89 |
-
"source": "Literatur
|
| 90 |
"solutions": [
|
| 91 |
-
"
|
| 92 |
-
"
|
| 93 |
-
"Gunakan varietas yang tahan (cara paling praktis)."
|
| 94 |
]
|
| 95 |
},
|
| 96 |
{
|
| 97 |
-
"yolo_class": None,
|
| 98 |
"disease": "Hawar Pelepah (Sheath Blight)",
|
| 99 |
"symptoms": ["G13", "G14", "G15"],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 100 |
"source": "Literatur 3",
|
| 101 |
"solutions": [
|
| 102 |
-
"
|
| 103 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 104 |
]
|
| 105 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 106 |
]
|
| 107 |
|
| 108 |
@st.cache_resource
|
|
|
|
| 8 |
MODEL_PATH = os.path.join(SCRIPT_DIR, "best.pt")
|
| 9 |
|
| 10 |
SYMPTOM_QUESTIONS = {
|
| 11 |
+
"G1": "Daun berwarna putih kecoklatan memanjang seperti mengering pada bagian tepi daun",
|
| 12 |
"G2": "Pada pagi hari, dapat ditemukan cairan bakteri terlihat seperti butiran air pada bagian terinfeksi",
|
| 13 |
"G3": "Gejala terlihat seperti anak panah terdapat di antara urat daun",
|
| 14 |
+
"G4": "Daun berwarna kuning kecoklatan",
|
| 15 |
"G5": "Luka pada daun terlihat transparan bila dihadapkan cahaya matahari",
|
| 16 |
"G6": "Daun berbentuk belah ketupat",
|
| 17 |
"G7": "Pada daun bagian tengah berwarna abu-abu atau berwarna putih dengan bagian tepi berwarna kecoklatan",
|
| 18 |
"G8": "Infeksi pada malai/leher berwarna abu-abu",
|
| 19 |
+
"G9": "Tanaman kerdil dan gejala pada daun terjadi perubahan warna dari hijau menjadi jingga atau kemerahan",
|
| 20 |
+
|
| 21 |
"G10": "Bercak cokelat pada daun, pelepah, dan bulir gabah",
|
| 22 |
"G11": "Bercak daun sering menutupi permukaan daun, menyebabkan daun menjadi layu",
|
| 23 |
"G12": "Bercak cokelat pada batang/leher malai",
|
| 24 |
"G13": "Terdapat bercak berbentuk oval berwarna abu-abu kehijauan pada pelepah (tulang daun)",
|
| 25 |
"G14": "Batang tanaman padi menjadi rapuh dan mudah rebah/jatuh",
|
| 26 |
+
"G15": "Bibit yang sakit menjadi layu dan akhirnya mati",
|
| 27 |
+
|
| 28 |
+
"G20": "Daun menebal, tekstur kasar/berbintil (warty), serta kaku dan tegak",
|
| 29 |
+
"G21": "Daun bagian atas melintir (twisted) atau mengeriting",
|
| 30 |
+
"G22": "Tanaman kerdil dengan anakan berlebihan membentuk gumpalan padat",
|
| 31 |
+
"G23": "Malai gagal keluar atau mengalami deformasi (melengkung/membesar)",
|
| 32 |
+
|
| 33 |
+
"G24": "Pucuk tengah (pupus) mengering dan berwarna coklat kemerahan",
|
| 34 |
+
"G25": "Pucuk yang kering mudah dicabut dari pangkalnya dengan tangan",
|
| 35 |
+
"G26": "Terdapat lubang gerekan kecil pada pangkal batang atau kotoran ulat",
|
| 36 |
+
|
| 37 |
+
"G27": "Terdapat garis-garis putih transparan sejajar tulang daun (akibat Imago)",
|
| 38 |
+
"G28": "Permukaan atas daun terkelupas/dikikis menyisakan kulit ari bawah",
|
| 39 |
+
"G29": "Terdapat lepuhan/kantung putih tidak beraturan pada daun (akibat Larva)",
|
| 40 |
+
"G30": "Hamparan sawah tampak memutih seperti terbakar (hopperburn)"
|
| 41 |
}
|
| 42 |
|
| 43 |
YOLO_PROMPTS = {
|
|
|
|
| 46 |
"blast": ["G6", "G7", "G8"],
|
| 47 |
"tungro": ["G9"],
|
| 48 |
"brown_spot": ["G10", "G11", "G12"],
|
| 49 |
+
"downy_mildew": ["G20", "G21", "G22", "G23"],
|
| 50 |
+
"dead_heart": ["G24", "G25", "G26"],
|
| 51 |
+
"hispa": ["G27", "G28", "G29", "G30"],
|
| 52 |
+
"bacterial_panicle_blight": [],
|
| 53 |
"normal": []
|
| 54 |
}
|
| 55 |
|
|
|
|
| 102 |
"yolo_class": "brown_spot",
|
| 103 |
"disease": "Bercak Daun Coklat (Brown Spot)",
|
| 104 |
"symptoms": ["G10", "G11", "G12"],
|
| 105 |
+
"source": "Literatur 2",
|
| 106 |
"solutions": [
|
| 107 |
+
"Hindari aplikasi pupuk nitrogen yang terlalu banyak.",
|
| 108 |
+
"Ada beberapa fungisida yang efektif tetapi secara ekonomi tidak direkomendasikan."
|
|
|
|
| 109 |
]
|
| 110 |
},
|
| 111 |
{
|
| 112 |
+
"yolo_class": None,
|
| 113 |
"disease": "Hawar Pelepah (Sheath Blight)",
|
| 114 |
"symptoms": ["G13", "G14", "G15"],
|
| 115 |
+
"source": "Literatur 2",
|
| 116 |
+
"solutions": [
|
| 117 |
+
"Berikan pupuk Kalium (K) dan bahan organik (kompos jerami) untuk menyehatkan tanah.",
|
| 118 |
+
"Lakukan perlakuan benih (seed treatment) dengan fungisida sebelum semai.",
|
| 119 |
+
"Gunakan varietas yang tahan (cara paling praktis)."
|
| 120 |
+
]
|
| 121 |
+
},
|
| 122 |
+
{
|
| 123 |
+
"yolo_class": "downy_mildew",
|
| 124 |
+
"disease": "Downy Mildew (Embun Bulu)",
|
| 125 |
+
"symptoms": ["G20", "G21", "G22", "G23"],
|
| 126 |
"source": "Literatur 3",
|
| 127 |
"solutions": [
|
| 128 |
+
"Perbaiki drainase lahan (permukaan dan bawah tanah) agar lahan tidak tergenang >24 jam.",
|
| 129 |
+
"Bersihkan gulma rumput-rumputan di sekitar sawah yang menjadi inang alternatif jamur.",
|
| 130 |
+
"Gunakan benih yang bersih dan bebas dari sisa tanaman sakit sebelumnya."
|
| 131 |
+
]
|
| 132 |
+
},
|
| 133 |
+
{
|
| 134 |
+
"yolo_class": "dead_heart",
|
| 135 |
+
"disease": "Dead Heart / Sundep (Penggerek Batang)",
|
| 136 |
+
"symptoms": ["G24", "G25", "G26"],
|
| 137 |
+
"source": "Literatur 4",
|
| 138 |
+
"solutions": [
|
| 139 |
+
"Kumpulkan dan musnahkan kelompok telur yang ditemukan pada persemaian secara manual.",
|
| 140 |
+
"Potong jerami serendah mungkin saat panen untuk mematikan larva yang bersembunyi di pangkal batang.",
|
| 141 |
+
"Lakukan tanam serempak untuk memutus siklus hidup hama."
|
| 142 |
]
|
| 143 |
},
|
| 144 |
+
{
|
| 145 |
+
"yolo_class": "hispa",
|
| 146 |
+
"disease": "Rice Hispa (Hama Putih)",
|
| 147 |
+
"symptoms": ["G27", "G28", "G29", "G30"],
|
| 148 |
+
"source": "Literatur 5",
|
| 149 |
+
"solutions": [
|
| 150 |
+
"Pangkas ujung daun bibit sebelum pindah tanam untuk membuang telur hama yang menempel.",
|
| 151 |
+
"Lakukan penyapuan (sweeping) dengan jaring serangga pada pagi hari untuk menangkap kumbang dewasa.",
|
| 152 |
+
"Bersihkan gulma di sekitar sawah dan hindari jarak tanam yang terlalu rapat."
|
| 153 |
+
]
|
| 154 |
+
}
|
| 155 |
]
|
| 156 |
|
| 157 |
@st.cache_resource
|