# Detection of Helminthosporium Leaf Blotch Disease Based on UAV Imagery
## 2 Materials and Methods
### Data Analysis
#### 2.3.2 Feature Extraction  
Finding good image features could significantly build a good foundation for the next step of classification [18]. The feature extraction strategy has a strong effect on the final performance of the classifier [19]. Unlike traditional feature extraction, _CNN_ is capable of automatically extracting effective  
Figure 4: Disease severity categories established to represent the wheat health state.  
Figure 5: The architecture of our convolutional neural networks (CNN) for Helminthosporium leaf blotch (HLB) disease classification. In the first module, batch normalization is performed to the input image. In the second module, feature extraction is applied to the normalized image. In this section, convolutional layer and max-pooling layer is abbreviated as C and P, respectively. C1:6@96 \(\times\) 96 means this is the first layer, and it is a convolutional layer composed of six feature maps, each of which is in size of 96 \(\times\) 96. In the third module, three fully connected layers are used for classification. In this section, fully connected layer is abbreviated as F. For example, F5:120 means this is a full connection layer. It is the fifth layer and has 120 neurons.  
features and overcoming the over fitting problem. This architecture strongly improves the performance of remote sensing imagery classification [7], object detection [20], and segmentation [21].  
The feature extraction module in _CNN_ architecture is a cascade of multiple stages. The input and output of each stage are sets of arrays called feature maps [22]. In each stage, the output represents a feature map extracted at all locations on input. In general, each stage is composed of two layers: convolutional and pooling.  
The convolutional layer is the core building block for _CNN_ that contains a set of learnable filters. With the trainable weights in each filters, updated with the training losses during backpropagation, the output of the convolutional layer effectively learns particular features of input arrays. Let \(x\) denote the input array with \(l_{x}\) feature maps, \(y\) denotes the output array with \(l_{y}\) feature maps, \(W_{ij}\) denotes a two-dimensional weight that associates the \(i\)th feature map in the input and the \(j\)th feature map in the output. The equation between \(x\) and \(y\) is denoted in (1), where * is the 2D discrete convolution operator and \(b_{j}\) is a trainable bias parameter.  
\[y_{j}=\sum_{i=1}^{l_{x}}W_{ij}*x_{i}+b_{j}\;(j=1,2,\ldots,l_{y}) \tag{1}\]  
After convolution, a non-linear activation function, which can be sigmoid, tanh or rectified linear function (ReLu) [23] applied in an element-wise manner. Although there are many types of activation functions, ReLu is widely used in _CNN_ algorithm. ReLu are easy to implement and meaningful for accelerating the convergence of the training process [19].  
Pooling operator computes the average value or selects the maximum value over a neibourhood on each feature map. This operator generates a smaller output feature map which is robust to some variations of the input feature map [22]. Max-pooling and average-pooling are the usual pooling types in _CNN_, while max-pooling generally performs better than average-pooling.