-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathabe697.html
364 lines (332 loc) · 13.1 KB
/
abe697.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"
/>
<title>ABE697 Presentation</title>
<link rel="stylesheet" href="revealjs/dist/reset.css" />
<link rel="stylesheet" href="revealjs/dist/reveal.css" />
<link rel="stylesheet" href="revealjs/dist/theme/dracula.css" />
<!-- Theme used for syntax highlighted code -->
<link rel="stylesheet" href="revealjs/plugin/highlight/monokai.css" />
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-notes="Something important">
<aside class="notes">
Hello, my name is Thirawat Bureetes. Welcome to my presenation on
Detecting Chemical Drift Damages on Water Hemp Using RGB Images from
Mobile Phone.
</aside>
<h3>
Detecting Chemical Drift Damages on Water Hemp Using RGB Images from
Mobile Phone
</h3>
<h4>Thirawat Bureetes</h4>
</section>
<section data-auto-animate>
<h2>What Is Chemical Drift?</h2>
<aside class="notes">Let's start with what is chemical drift.</aside>
</section>
<section data-auto-animate>
<aside class="notes">
Imagine that one day you see a sprayer working on nearby field. The
wind could blow some chemical droplets to your field. You might not
know what chemical is it. But you defenately don't want it on your
field.
</aside>
<h2>What Is Chemical Drift?</h2>
<p>
An unintentional movement of the pesticide or herbicide droplets
outside of the intended application area
</p>
</section>
<section data-auto-animate>
<aside class="notes">Those chemical could be harmful to crops.</aside>
<h2>What Does Chemical Drift Impact To Crops?</h2>
</section>
<section data-auto-animate>
<aside class="notes">
It could redude the yield or even kill the crops.
</aside>
<h2>What Does Chemical Drift Impact To Crops?</h2>
<ul>
<li>Reducing yield</li>
<li class="fragment" data-fragment-index="1">Kill the crops</li>
</ul>
</section>
<section data-auto-animate>
<h2>
What Can We Do?
<aside class="notes">What can we do then?</aside>
</h2>
</section>
<section data-auto-animate>
<aside class="notes">
We want to detect the sign of damages as soon as possible. As well
as the type of the chemical.
</aside>
<h2>What Can We Do?</h2>
<p>Detecting the sign of damange as early as possible</p>
</section>
<section data-auto-animate>
<aside class="notes">But how?</aside>
<h2>What Can We Do?</h2>
<p>Detecting the sign of damange as early as possible</p>
<br />
<h1>How?</h1>
</section>
<section data-auto-animate>
<aside class="notes">
We can teach machines to detect and identify the type of chemical by
scaning leaf images. With hyperspectral camera and multispectral
camera, it works. But these devices are expensive. This project aims
to do the same job with a camera on an inexpensive mobile phone.
</aside>
<h1>How?</h1>
<p>Leaf Images + Machine Learning</p>
<ul>
<li class="fragment" data-fragment-index="1">
Hyperspectral images
<span class="fragment" data-fragment-index="3">✔️</span>
<span class="fragment" data-fragment-index="4">💵</span>
</li>
<li class="fragment" data-fragment-index="2">
Multispectral images
<span class="fragment" data-fragment-index="3">✔️</span>
<span class="fragment" data-fragment-index="4">💵</span>
</li>
<li class="fragment" data-fragment-index="5">RGB images 🤳</li>
</ul>
</section>
<section data-auto-animate>
<h2>Materials</h2>
<aside class="notes">
The materials that we used in this project are
</aside>
</section>
<section data-auto-animate>
<aside class="notes">
First, a Sansung Galexy A14 which costs less than $200. The sample
plants for this study is water hemps. And we used 6 different type
of herbicide.
</aside>
<h2>Materials</h2>
<p>$199 Samsung Galexy A14</p>
<p class="fragment" data-fragment-index="1">Water hemps</p>
<p class="fragment" data-fragment-index="2">6 types of herbicide</p>
</section>
<section data-auto-animate>
<aside class="notes">
Each herbicide is applied to 16 water hemps. And there one group of
water hemps that has no herbicide treaments as a reference group.
</aside>
<h2>Materials</h2>
<p>$199 Samsung Galexy A14</p>
<p>16 x 7 = 112 Water hemps</p>
<p>6 types of herbicide</p>
</section>
<section data-auto-animate>
<aside class="notes">
These are 6 types of herbicide in this study.
</aside>
<p>6 types of herbicide</p>
<ul>
<li>2,4D</li>
<li>Dicamba</li>
<li>Atrazine</li>
<li>Flumioxazin</li>
<li>Mesotrione</li>
<li>Norflurazon</li>
</ul>
</section>
<section data-auto-animate>
<h2>Data Collection Method</h2>
<aside class="notes">Next question, how did we correct data?</aside>
</section>
<section data-auto-animate>
<aside class="notes">
We took images 4 days after applying herbicide treaments. We only
took one leaf image per one plant sample. The leaf we chose was the
youngest but already mature leaf.
</aside>
<h2>Data Collection Method</h2>
<p>4 days after applying herbicide</p>
<p>1 leaf per sample (top mature leaf)</p>
</section>
<section>
<aside class="notes">
These are examples of raw images from each treament group.
</aside>
<div class="r-hstack justify-center">
<div>
<img src="./img/raw/24d-11.jpg" alt="24-D" />
<h5>24-D</h5>
</div>
<div>
<img src="./img/raw/dicemba-4.jpg" alt="Dicamba" />
<h5>Dicamba</h5>
</div>
<div>
<img src="./img/raw/atrazine-13.jpg" alt="Atrazine" />
<h5>Atrazine</h5>
</div>
</div>
<div class="r-hstack justify-center">
<div>
<img src="./img/raw/flumioxazin-6.jpg" alt="Flumioxazin" />
<h5>Flumioxazin</h5>
</div>
<div>
<img src="./img/raw/mesotrione-12.jpg" alt="Mesotrione" />
<h5>Mesotrione</h5>
</div>
<div>
<img src="./img/raw/norflurazon-5.jpg" alt="Norflurazon" />
<h5>Norflurazon</h5>
</div>
</div>
</section>
<section data-auto-animate>
<h2>Feature Extraction</h2>
<aside class="notes">
The next step is to extract features for training machine learning
models. This is a raw images.
</aside>
<div data-id="pre-process" class="justify-center">
<img src="./img/raw/utc-12.jpg" alt="Raw" />
</div>
</section>
<!-- <section data-auto-animate>
<h2>Feature Extraction</h2>
<div data-id="pre-process" class="justify-center">
<img src="./img/utc-12.jpg" alt="Processed" />
</div>
</section> -->
<section data-auto-animate>
<aside class="notes">
This is a same image as shown previously but after removing
background and calibrating color. The leaf is devided into 3 zones:
base, mid, top. There are two groups of features: color and texture.
There are 396 features in total for each leaf sample.
</aside>
<div data-id="pre-process" class="justify-center">
<img src="./img/utc-12.jpg" alt="Processed" />
</div>
<p>3 sections: base, mid, and top</p>
<p class="fragment" data-fragment-index="1">
2 sets of features: color and texture
</p>
<h2 class="fragment" data-fragment-index="2">396 features</h2>
</section>
<section data-auto-animate>
<h2>ML Traning Method</h2>
<aside class="notes">It is time for training</aside>
</section>
<section data-auto-animate>
<aside class="notes">
Since there are only 16 samples from each herbicide treament which
is not a lot. The training method applies cross validation
technique. In each training round, 2 samples from each group are
randomly left out for validation. This cycle runs 5,000 times.
</aside>
<h2>ML Traning Method</h2>
<p>Cross Validation</p>
<p class="fragment" data-fragment-index="1">
Randomly select 2 leaves/group as validation samples
</p>
<p class="fragment" data-fragment-index="2">5,000 rounds</p>
</section>
<section>
<aside class="notes">
We tries on 5 classification models. We found that random forest has
the best outcome.
</aside>
<h2>Classification algorithms</h2>
<ul>
<li>Support vector machine</li>
<li>K-nearest neighbors</li>
<li>Gaussian naïve Bayes</li>
<li>Decision tree</li>
<li>
Random forest
<span class="fragment" data-fragment-index="1">👑</span>
</li>
</ul>
</section>
<section>
<h2>Result</h2>
<aside class="notes">This is the result.</aside>
</section>
<section>
<aside class="notes">
The horizontal labels are true labels and the verticle are pridicted
labels. Each cell represents the percentage of the prediction.
Ideally, we want to see 1 or close to 1 along the diagonal axis.
</aside>
<div class="justify-center">
<img src="./img/confusion.jpg" alt="result" />
</div>
</section>
<section data-auto-animate>
<h2>Key Findings</h2>
<aside class="notes">
From the confusion matrix, here is the highlight
</aside>
</section>
<section data-auto-animate>
<aside class="notes">
overall performance is 66%. It means the model can correctly
classify herbicide treaments about 2/3 of the trails. For 3
herbicide, the performance is even better than 80% which false
positive rate lower than 0.5%. For the remaining group, the model
can classify at 50% chance. However, if we only asks the model to if
the chemical is applied or not without indentify the type of
herbicide, the model can get the correct prediction 85% of the time.
</aside>
<h2>Key Findings</h2>
<p>Overall classification performance ~ 66%</p>
<p class="fragment" data-fragment-index="1">
Group F, M, and N performance > 80% , FN rate 0.5%
</p>
<p class="fragment" data-fragment-index="2">
The remaining groups performance ~ 50%
</p>
<p class="fragment" data-fragment-index="3">
Detecting herbicide rate is 85%
</p>
</section>
<section><h1>Thank you</h1></section>
</div>
</div>
<script src="revealjs/dist/reveal.js"></script>
<script src="revealjs/plugin/notes/notes.js"></script>
<script src="revealjs/plugin/markdown/markdown.js"></script>
<script src="revealjs/plugin/highlight/highlight.js"></script>
<!-- Audio slideshow plugin -->
<script src="https://cdn.jsdelivr.net/npm/reveal.js-plugins@latest/audio-slideshow/plugin.js"></script>
<script src="https://cdn.jsdelivr.net/npm/reveal.js-plugins@latest/audio-slideshow/recorder.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/RecordRTC/5.6.2/RecordRTC.js"></script>
<script>
// More info about initialization & config:
// - https://revealjs.com/initialization/
// - https://revealjs.com/config/
Reveal.initialize({
hash: true,
audio: {},
// Learn about plugins: https://revealjs.com/plugins/
plugins: [
RevealMarkdown,
RevealHighlight,
RevealNotes,
RevealAudioSlideshow,
RevealAudioRecorder,
],
});
</script>
</body>
</html>