# Multi-Classifier Feature Fusion-Based Road Detection for Connected Autonomous Vehicles
## 4 Proposed TLFC-RD Method
### Two-Level Fusion of Classifiers for Road Detection
#### 4.5.1 LeNet-5  
Generally, LeNet-5 is a gradient-based learning CNN that is applied to extract feature maps from a feature vector \((FV)\). Except for the input and output layer, the LeNet-5 has six layers: three convolutional layers, two polling layers and one fully connected layer. The training of the parameters is reduced by minimizing the number of neurons in the fully connected layer. The process of LeNet-5 is as follows:  
1. The convolutional layer is generally used to accomplish the feature extraction. In this layer, the input matrix is convolved with the convolution kernel. Let the feature vector be \(FV=\left\{FV_{i,j}\left|i=1,2,\ldots I,\ j=1,2,\ldots,I\right\}\right\}\), where \(I\) represents the number of input images and \(J\) represents the amount of data in the respective \(FV\). Moreover, the convolutional kernel is represented as \(W=\left\{w_{u,v}\left|u=0,1,2,\ldots CKS,\ v=0,1,2,\ldots CKS\right\}\right\}\), where the convolutional kernel's size is denoted as \(CKS\). Equation (12) expresses the convolutional layer output \((cl_{i,j})\), \[cl_{i,j}=\left\{f\bigg{(}\sum_{u=0}^{CKS-1}\sum_{v=0}^{CSK-1}w_{u,v}FV_{i+u,j+ v}+ot\bigg{)}\right\}\] (12) where the offset term considered in each convolution is \(ot\) and the activation function is denoted as \(f(\cdot)\).
2. There are five different activation functions that are widely used: Gaussian, Rectified Linear Unit (ReLU), Softplus, Tanh and Sigmoid. In these activation functions, the ReLU does not have a gradient saturation issue as it is faster than the saturating nonlinear functions. Therefore, the ReLU is considered in the CNN.
3. Next, the pooling layer is used to accomplish the feature selection to minimize the dimensions of the data, whereas the main features of the data are preserved at the same time. In the local accepted domain, the mean, random and larger values are extracted using the mean, random and maximum pooling in the pooling layer. The output of the pooling layer \((pl)\) is expressed in Equation (13): \[pl_{n}^{In}=pool\left(pl_{n}^{In-1}\right)\] (13) where \(ln\) represents the layer number and \(pl_{n}^{In-1}\) represents the former layer's result.  
In general, the fully connected layer is considered as the final layer of the CNN. The ReLU function is used in each neuron that is linked with the previous layer's neuron. The local data are integrated into this layer and can be used to differentiate the classes. The output of the fully connected layer is expressed in Equation (14): \[fcl_{n}^{ln}=f\Big{(}w^{ln}.fcl_{n}^{ln-1}+ot^{ln}\Big{)}\] (14)
5. Further, multiple classifications are accomplished by using the output layer or softmax layer. Here, the softmax layer maps the output of the previous layer to \((0,1)\). Each result is related to the classification probability and its sum is 1. Next, the output is chosen based on the classification of higher probability values. Equation (15) provides the output of the output layer \(\Big{(}ol_{n}^{ln}\Big{)}\). \[ol_{n}^{ln}=softmax\Big{(}w^{ln}.ol_{n}^{ln-1}+ot^{ln}\Big{)}\] (15)