Next Article in Journal
Research on Area of Uncertainty of Underwater Moving Target Based on Stochastic Maneuvering Motion Model
Previous Article in Journal
An Improvised Deep-Learning-Based Mask R-CNN Model for Laryngeal Cancer Detection Using CT Images
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Sensing and Detection of Traffic Signs Using CNNs: An Assessment on Their Performance

Department of Electronic Engineering, University of Rome “Tor Vergata”, via del Politecnico 1, 00133 Rome, Italy
*
Author to whom correspondence should be addressed.
Sensors 2022, 22(22), 8830; https://doi.org/10.3390/s22228830
Submission received: 14 September 2022 / Revised: 9 November 2022 / Accepted: 10 November 2022 / Published: 15 November 2022
(This article belongs to the Topic Applied Computing and Machine Intelligence (ACMI))

Abstract

:
Traffic sign detection systems constitute a key component in trending real-world applications such as autonomous driving and driver safety and assistance. In recent years, many learning systems have been used to help detect traffic signs more accurately, such as ResNet, Vgg, Squeeznet, and DenseNet, but which of these systems can perform better than the others is debatable. They must be examined carefully and under the same conditions. To check the system under the same conditions, you must first have the same database structure. Moreover, the practice of training under the same number of epochs should be the same. Other points to consider are the language in which the coding operation was performed as well as the method of calling the training system, which should be the same. As a result, under these conditions, it can be said that the comparison between different education systems has been done under equal conditions, and the result of this analogy will be valid. In this article, traffic sign detection was done using AlexNet and XresNet 50 training methods, which had not been used until now. Then, with the implementation of ResNet 18, 34, and 50, DenseNet 121, 169, and 201, Vgg 16_bn and Vgg19_bn, AlexNet, SqueezeNet1_0, and SqueezeNet1_1 training methods under completely the same conditions. The results are compared with each other, and finally, the best ones for use in detecting traffic signs are introduced. The experimental results showed that, considering parameters train loss, valid loss, accuracy, error rate and Time, three types of CNN learning models Vgg 16_bn, Vgg19_bn and, AlexNet performed better for the intended purpose. As a result, these three types of learning models can be considered for further studies.

1. Introduction

Deep learning (DL), or deep structured learning (DSL), is part of machine learning (ML), which is based on artificial neural networks (ANN). There are three different types of learning that can be used: supervised, semi-supervised, and unsupervised [1,2,3]. Moreover, for each of the named types, a novel research field consists of their hardware acceleration [4,5,6]. This means that there is a need for improved and efficient machine learning systems.
The architecture of DL, which has been applied to different fields such as computer vision, drug design, image processing, board game programs, medical image processing, driver identification, etc., such as deep neural networks (DNN), deep reinforcement learning (DRL), convolutional neural networks (CNN), etc. [7,8,9,10,11,12].
With the ongoing development of deep learning, computer vision has made significant progress and is now applicable to online situations. One of the current subtasks of computer vision is object recognition. It is widely used in intelligent transportation applications such as motorized and non-motorized vehicle detection, pedestrian detection, and self-driving cars. This study, which focuses on traffic sign recognition, is critical for creating highly accurate maps for driverless automobiles. Traffic signs are widely scattered in real traffic situations, and weather conditions, such as fog, rain, and snow, can also affect recognition accuracy. In this case, it is undoubtedly fatal for drivers and pedestrians. Therefore, it is especially important to enhance traffic sign detection performance in a variety of complicated situations [13].
Researchers’ contributions to convolutional neural networks have helped computer vision advance quickly in recent years. Prior to CIFAR [9], only small, low-resolution datasets could be used to train neural networks for classification tasks. Then, Alex et al. [9] presented AlexNet to accomplish the classification task in sizable datasets such as ImageNet [14]. AlexNet consists of convolutional and fully connected layers. Following that, scientists suggested networks with more layers, such as VGG [15], which somewhat increased the accuracy of networks. At a certain depth, the gradient will, however, diminish or disappear. In order to ensure that deeper network layers can obtain no fewer features than shallower network layers, He et al. [16] proposed ResNet, which uses cross-layer connections to fuse the input with the output of the residual blocks. This effectively prevents the phenomenon of insignificance or even the disappearance of deeper features. By modifying the depth, width, and input image resolution of the network model, the majority of the earlier networks enhance network performance. In order to combine the three factors, Tan et al. [17] introduced EfficientNet, which first constructed an ideal benchmark and then modified the benchmark network based on various scaling factors.
In deep learning, a CNN (or ConvNet) is one of the ANNs, most commonly applied to analyzing visual imagery [18]. It is a regularization of multilayer perceptrons. It usually means fully connected networks. It means that the neurons in one layer are fully connected to all the neurons in the next layer.
In CNNs, to make complex patterns, they make simpler patterns by assembling them, so in terms of connectivity and complexity, CNNs are on the lower extreme. Another important advantage in comparison with other image processing algorithms is preprocessing. This means that the filters learn to optimize through automated learning. This independence from prior knowledge and human intervention in feature extraction is a major advantage.
A very good example of DL is driver identification. Simply, according to claims, the Intelligent Transportation System (ITS) will transform travel by enhancing people’s safety, security, and comfort. Although some vehicles are automated, there are still serious security concerns that need careful investigation and cutting-edge solutions. The attacker can steal the vehicle thanks to ITS’s security flaws. Therefore, in order to create a safe and secure system and safeguard the vehicles from theft, the identification of drivers is necessary. A driver can be recognized in two ways: (1) by face recognition of the driver, and (2) based on driving behavior. Face recognition involves processing 2-D images for images and learning the features, both of which need a lot of processing power.
Traffic sign recognition has two varying approaches that have been utilized by researchers in recent years. One-stage networks, such as R-FCN [19], Faster R-CNN [20], Mask R-CNN [21], etc., and two-stage networks, such as YOLO [22] and SSD [23], improve the speed and accuracy of detection and classification. Both strategies have pros and cons and can be used differently. One-stage detectors, such as YOLO, are great for identifying small objects, but they struggle with large numbers of classes or classes that are identical to one another. When the traffic sign is too far away, blurry, or partially covered by other objects, the accuracy of the two-stage detectors drops dramatically [24,25,26].

2. Structure of Different CNN Models

The most important models of CNNs are ResNet, XRexNet, DenseNet, VGG, SqueezeNet, and AlexNet. ResNets are one of the powerful systems for deep learning that were presented by Kaiming He et al. [16]. He has achieved the training system with good performance. As a result, ResNet became one of the most widely used systems for computer vision tasks. The important idea of ResNet is to introduce residual blocks that include an “identity shortcut connection” that skips one or more layers, as shown in Figure 1.
This residual block changes the goal of the stacked layers from fitting the ideal weights and biases H(x) to fitting the output of the ResBlock, H(x) = F(x) + x [17].
The CNNs begin with an input, which is followed by four different stages, and each stage has similar patterns.
With increasing the size of the ResNet, the accuracy of the prediction and also the time of the training will increase. The architecture of a ResNet50 is shown in Figure 2.
Tong He [27] introduced XResNet with three different methods to improve the three separate convolutional steps that are presented in the ResNet structure. As shown in Figure 3 and Figure 4, ResNet-B moves the stride (2,2) to the second convolution and keeps a stride of 1 for the first layer [27]. ResNet-C removes the 7 × 7 convolution and replaces it with three consecutive 3 × 3 convolutions. Finally, ResNet-D replaces the 1 × 1 convolution of stride (2,2) with a (2,2) average pooling layer of stride (2,2) followed by a 1 × 1 convolution layer [28].
The designer presented a dense convolutional network (DenseNet), an architecture that distills the complexity of other CNN learners into a simple connectivity pattern, so that with this system, the maximum information will flow between layers in the network and all layers will be directly connected with each other. To preserve the feed-forward nature, each layer obtains additional inputs from all preceding layers and passes them on to all subsequent layers. Figure 5 shows this layout schematically. In contrast to ResNets, we never combine features through summation before they are passed into a layer; instead, we combine features by concatenating them. Hence, the layer has inputs consisting of the feature maps of all the preceding convolutional blocks. Its own feature maps are passed on to all subsequent layers. This introduces connections in an L-layer network instead of just an L-layer network, as in traditional architectures. Because of its dense connectivity pattern, we refer to our approach as “Dense Convolutional Network” (DenseNet) [28].
The AlexNet has eight layers with learnable parameters. The model consists of five layers with a combination of max pooling followed by three fully connected layers, and they use Relu activation in each of these layers except the output layer [9].
Ref. [9] found out that using the relu as an activation function accelerated the speed of the training process by almost six times. They also used the dropout layers to prevent their model from overfitting. Furthermore, the model is trained on the ImageNet dataset. The ImageNet dataset has almost 14 million images across a thousand classes.
The SqueezeNet [29] is a smaller CNN architecture that uses fewer parameters while maintaining competitive accuracy. Several strategies are employed on the CNN basis to design the SqueezeNet: (1) replace 3 × 3 filters with 1 × 1 filters, (2) decrease the number of input channels to 3 × 3 filters, and (3) downsample late in the network so that the convolution layers have large activation maps. The SqueezeNet is comprised mainly of Fire modules that are squeeze convolution layers with only 1 × 1 filters. These layers are then fed into an expand layer, which has a mix of 1 × 1 and 3 × 3 convolution filters, as shown in Figure 6.
VGG16 is a convolution neural network (CNN) architecture that was used to win the ILSVR (ImageNet) competition in 2014. It is regarded as one of the best vision model architectures available to date. Its structure is shown in Figure 7. The most unique thing about VGG16 is that instead of having a large number of hyper-parameters, they focused on having convolution layers of a 3 × 3 filter with a stride 1 and always used the same padding and maxpool layer of a 2 × 2 filter with a stride 2. It follows this arrangement of convolution and max pool layers consistently throughout the whole architecture. In the end, it has two FC (fully connected layers), followed by a softmax for output. The 16 in VGG16 refers to it 16 layers that have weights. This network is pretty large, and it has about 138 million (approximately) parameters [29].
The architecture of the FCN-VGG19, shown in Figure 8, is adapted from [29], which learns to combine high-level information with fine-level information using skips from the third and fourth pooling layers. The hidden layers are equipped with rectified linear units (ReLUs), and the number of channels for the convolutional layers increases with the depth of the network. During training, the input image is a fixed size of 224 × 224 pixels, while the receptive fields for all filters are 3 × 3 pixels throughout the whole network. This configuration allows the FCN (fully convolutional networks) to learn approximately 140 million parameters. Prediction is performed using upsampling layers with four channels for all classes [ncl] in the reference data. Upsampling layers are fused with 1 × 1 convolutions of the third and fourth pooling layers with the same channel dimension [x,y,ncl]. The final upsampling layer predicts fine details using fused information from the last convolutional layer, with the third and fourth pooling layers being upsampled at stride 8.
Table 1 shows a summary of the described CNN learning methods.
The last parameter that should be considered in the learning models is time complexity. The quantity of fundamental operations, such as multiplications and summations, that an algorithm performs determines its time complexity. Typically, the time complexity is stated as a function of the size n of the input. The size of the input, or n, which indicates how many items are taken into account for the input, must first be known in order to determine the time complexity. How many operations are made in relation to the amount of the input is the second parameter that affects time complexity (number of epochs). so the linear time complexity is O(2 × n) = O(n).
The following table compares the structure and different working conditions of each of the learning systems considered in this study.

3. Dataset

Traffic signs seen from a vehicle present themselves in various conditions that make it difficult to recognize them, such as different distances (low image resolution), lighting, vandalism, or even some obstacles, such as leaves on trees, which can compromise visibility. With this in mind, it is necessary to use a database with multiple images that can cover these different conditions during training [31].
The database used is called “The German Traffic Sign Recognition Benchmark”, or GTSRB, and was used for neural network competitions in 2011. It has 43 different classes of signs found in Germany and about 50,000 images in total. Due to its large number of images, it is possible to achieve very good results, but it also has some defects that will be discussed later [32].
The images for the model were loaded and prepared with fastai tools so that each class was divided between images and a label, which, in this case, is the name of the folder where the images of each class are located. Folders have been renamed from the original basis so that the results can be presented more clearly. In addition, the images were randomly divided into training images and validation images at a ratio of 4 training images to each validation image, resulting in approximately 40 thousand for training and 10 thousand for validation, and, finally, resized for training [31].

4. Models and Methods

The recognition model was trained several times by different types of CNN-learners, observing the accuracy at the end of the training, the amount of processing used, and the time to perform the training. Some examples of the employed dataset are shown in Figure 9. The learner models used in this article and whose results will be reviewed and compared, are ResNet 18, 34, and 50; DenseNet 121, 169, and 201; Vgg 16_bn and Vgg19_bn; SqueezeNet1_0 and SqueezeNet1_1; and AlexNet and XresNet50.
To find the most efficient way to train the model, some elements were changed: the size of each training batch, the number of training iterations (fine tuning), and the number of layers (for example, for the ResNet model), so that the loss rate (similar to Figure 10b) for training and validation at the end of training is as close as possible, indicating training with little overfitting or underfitting. In addition, the outcome of each learner system is displayed in a confusion matrix similar to Figure 10a. For each method of learning, there is a table that shows the result of train loss, valid loss, accuracy, error rate, and the desired time of training for each epoch.
The results can vary due to some other factors, the main ones being the random initialization of the values and the scrambling of the training data implemented by the fastai algorithm. However, it was possible to notice some patterns in the different trainings performed, where changing values considerably improved the result to the point of stagnation.

5. Result

The batch size, number of iterations, training model, and number of layers were changed while training the recognition model multiple times. Accuracy was measured at the end of each training cycle, along with the processing power and training time required. Large batches were shown to take less time, use more computer memory, but lose a significant amount of accuracy after training.
The best outcome was 16, whereas the largest batch value tested was 128, where lower values did not indicate greater accuracy, and longer training sessions did not result in any appreciable gains.

5.1. ResNet

5.1.1. ResNet 18

The first note that should be considered is that in the number of iterations, up to four iterations, the training loss rate decreases considerably; from 4 to 5, it presents a considerable increase, but again after iteration 5, it decreases again.
Table 2 and Figure 9 shown the results of the ResNet 18 CNN learner.
As shown in Figure 10a, after 10 iterations, only one of the ResNet 18 predictions had an error, and it was the single-curve-left sign predicted as the children’s warning sign. For the others, all the predictions were correct.

5.1.2. ResNet 34

The number of iterations in ResNet 34 is similar to ResNet 18, which has 10 iterations. Used in fine tuning, it was observed that up to 3 iterations the training loss rate decreased considerably; from 3 to 4, it presented an increase, but again after iteration 4, it totally decreased again. So as a very simple result, it can be concluded that, in this case compared with ResNet 18, the error tends to zero faster than in the other case. The results are shown in Table 3 and Figure 11.

5.1.3. ResNet 50

Among the ResNet learning models, ResNet 50 has the best performance because its train loss trend is completely downward. The results are shown in Table 4. The only place where there is some improvement in this process is in the last iteration, which has increased somewhat. Moreover, as shown in Figure 12a, only one error occurred in the detection of traffic signs.

5.2. Squeezenet

About the train loss of both SqueezeNet 1_0 and SqueezeNet 1_1, both of them have a downward trend, just as the accuracy has an upward trend. However, the problem starts when we examine the valid loss and error rate. As shown in Table 5 and Table 6, as well as Figure 13b and Figure 14b, a lot of fluctuation can be seen in these two parameters. As a result, these two cases are not suitable for this purpose because they had weak validation results. The proof of this claim can be seen in Figure 13a and Figure 14b. This is because the system errors in detecting traffic signs are very high.

5.3. VGG

One of the best methods studied so far is VGG. This issue can be seen further.

5.3.1. VGG16_bn

In the case of the VGG16_bn method, as shown in Table 7 and Figure 15, the train loss trend is completely downward, and the accuracy of the system reaches 100% in the last epoch. On the other hand, valid loss reached a very low number of 0.000127, and the error rate completely reached zero. As a result, this is one of the methods that has the ability to be introduced as the best method at the end.

5.3.2. VGG19_bn

Another method from the VGG group that was investigated is VGG19_bn. As shown in Table 8, the train loss in this method was 0.00004 in the last epoch, its accuracy reached 100 percent in the eighth epoch, and the error rate reached 0 in this epoch. The only negative point about this method compared to the previous one is that the time required for each epoch is a bit longer. Other data is shown in Figure 16.

5.4. XresNet 50

Another method that has been investigated is XresNet 50. This method is one of the most widely used for image classification. As shown in Table 9, in this method, the valid loss has reached 0.000869 in the last epoch. Moreover, by considering Figure 17a, a large error can be seen in the detection of traffic signs. Another important parameter, which is very important, is the accuracy, which reached 99.8852% in this method. As a result, if we compare with the previous methods, we realize that this model cannot be among the candidates for the best investigated methods.

5.5. Densenet

By looking at the results of the DenseNet group, it can be seen that this group is also one of the best for detecting traffic signs. As seen in Table 10, Table 11 and Table 12, train loss experiences a downward trend with low volatility in these models. Moreover, the error rate in DenseNet 121, 169, and 201 reaches 0.000128, 0.000255, and 0.000510, respectively. However, in the case of DenseNet 121, there is no error in detection. For example, one of these errors is shown in Figure 18. As shown in this figure, there is a traffic sign with a speed limit of 80 km/h, which is correctly recognized by model DenseNet 121, but by models DenseNet 169 and DenseNet 201, it is wrongly recognized as a speed limit of 60 km/h. The superiority of DenseNet 121 over DenseNet 169 and 201 is clearly evident in the parameters of the table. In DenseNet 169 and 201, an error in detecting traffic signs is also observed, as shown in Figure 19a, Figure 20a, and Figure 21a.

5.6. AlexNet

The last method that is examined in this article is AlexNet. A very positive point that can be seen in Table 13 of this method is the time required for each epoch. This time is only 12 min on average. On the other hand, if we have a tradeoff between the time required for each epoch, train loss, and accuracy, we realize that this system can be introduced as one of the best methods. The results are shown in Figure 22.
On the other hand, all the parameters of this system follow a completely uniform trend without fluctuations during different epochs, which is another reason for the goodness of this method.

6. Comparison

As shown in the above figures and tables, models SqueezeNet1_0 and SqueezeNet1_1 could not be used for this project because they did not learn correctly, and therefore they are not used in comparison. For the other methods, we use the last epoch of each learning model to compare them with each other.
As shown in the above table, and by considering that each iteration is equivalent to 1960 batches for training and 491 for validation, if maximum accuracy and minimum system error are important, the best results can be VGG16_bn and VGG19_bn. However, for these two models, the time required is the longest compared to other systems. But if less training time is desired with acceptable accuracy and error, AlexNet is the best option. As shown in Table 14, after ten epochs, the accuracy of the system is 0.998725 and the error rate is just 0.001275, very close to zero. Moreover, with these parameters, the time needed for the training for the last epoch is just about 13 min.

7. Conclusions

As a result, this article demonstrates that in the same situation, with the same data set structure and processor (Intel(R) Core(TM) i5-4300M CPU @ 2.60 GHz, 2.59 GHz), we can compare the mentioned models and find the best training model for a traffic sign detection system.
So, as shown in Table 14, the best system with acceptable error and accuracy and the shortest time required for training is the VGG19_bn model.
Two very important limitations that can be seen in the results are: (1) the speed of CNN learning systems and (2) the problem of classification with different positions. As for the second problem, when there is some tilt or rotation in the images, CNNs usually have trouble classifying them.
After further study and after finding the best method, in future studies this method can be examined online and on video in real time, exactly what is needed in driverless cars.
Each classifier relies on its own properties, which are determined by the specific classifier. The optimal parameter values depend on the scenario in which the classifier is to be applied. This study showed that it is not always possible to set the parameters accurately when applying classifiers to different data sets. If we study the future, firstly, we will work with different learning models similar XceptionV2, MobileNetV2, also we will likely do network searches to find different parameter values and then choose a parameter that is the best match. This maximizes accuracy because it is not guaranteed to find the absolute optimal value for a given classifier in a given data set, but it constitutes a good approximation.

Author Contributions

Conceptualization, H.F.G.; Data curation, H.F.G.; Investigation, L.C. and H.F.G.; Supervision, G.C.C. and M.R.; Validation, L.D.N. and R.F.; Writing—original draft, H.F.G.; Writing—review & editing, S.S. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Bengio, Y.; Courville, A.; Vincent, P. Representation learning: A review and new perspectives. IEEE Trans. Pattern Anal. Mach. Intell. 2013, 35, 1798–1828. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  2. Schmidhuber, J. Deep learning in neural networks: An overview. Neural Netw. 2015, 61, 85–117. [Google Scholar] [PubMed] [Green Version]
  3. Lecun, Y.; Bengio, Y.; Hinton, G. Deep learning. Nature 2015, 521, 436–444. [Google Scholar] [CrossRef] [PubMed]
  4. Cardarilli, G.C.; Di Nunzio, L.; Fazzolari, R.; Giardino, D.; Re, M.; Ricci, A.; Spanò, S. An FPGA-based multi-agent reinforcement learning timing synchronizer. Comput. Electr. Eng. 2022, 99, 107749. [Google Scholar] [CrossRef]
  5. Cardarilli, G.C.; Di Nunzio, L.; Fazzolari, R.; Giardino, D.; Nannarelli, A.; Re, M.; Spanò, S. A pseudo-softmax function for hardware-based high speed image classification. Sci. Rep. 2021, 11, 15307. [Google Scholar] [CrossRef] [PubMed]
  6. Cardarilli, G.C.; Di Nunzio, L.; Fazzolari, R.; Giardino, D.; Matta, M.; Re, M.; Spanò, S. Approximated computing for low power neural networks. Telkomnika Telecommun. Comput. Electron. Control 2019, 17, 1236–1241. [Google Scholar] [CrossRef]
  7. Hu, J.; Niu, H.; Carrasco, J.; Lennox, B.; Arvin, F. Voronoi-based multi-robot autonomous exploration in unknown environments via deep reinforcement learning. IEEE Trans. Veh. Technol. 2020, 69, 14413–14423. [Google Scholar] [CrossRef]
  8. Ciregan, D.; Meier, U.; Schmidhuber, J. Multi-column deep neural networks for image classification. In Proceedings of the 2012 IEEE Conference on Computer Vision and Pattern Recognition, Providence, RI, USA, 16–21 June 2012; pp. 3642–3649. [Google Scholar]
  9. Krizhevsky, A.; Sutskever, I.; Hinton, G.E. Imagenet classification with deep convolutional neural networks. Commun. ACM 2017, 60, 84–90. [Google Scholar] [CrossRef] [Green Version]
  10. Google’s AlphaGo AI Wins Three-Match Series against the World’s Best Go Player. TechCrunch. 25 May 2017. Available online: https://techcrunch.com/2017/05/24/alphago-beats-planets-best-human-go-player-ke-jie/ (accessed on 9 November 2022).
  11. Tang, Y.; Zhu, M.; Chen, Z.; Wu, C.; Chen, B.; Li, C.; Li, L. Seismic performance evaluation of recycled aggregate concrete-filled steel tubular columns with field strain detected via a novel mark-free vision method. In Structures; Elsevier: Amsterdam, The Netherlands, 2022; pp. 426–441. [Google Scholar]
  12. Tang, Y.; Li, L.; Wang, C.; Chen, M.; Feng, W.; Zou, X.; Huang, K. Real-time detection of surface deformation and strain in recycled aggregate concrete-filled steel tubular columns via four-ocular vision. Robot. Comput. -Integr. Manuf. 2019, 59, 36–46. [Google Scholar] [CrossRef]
  13. Wang, X.; Guo, J.; Yi, J.; Song, Y.; Xu, J.; Yan, W.; Fu, X. Real-time and efficient multi-scale traffic sign detection method for driverless cars. Sensors 2022, 22, 6930. [Google Scholar] [CrossRef] [PubMed]
  14. Deng, J. A large-scale hierarchical image database. In Proceedings of the 2009 IEEE Conference on Computer Vision and Pattern Recognition, Miami, FL, USA, 20–25 June 2009. [Google Scholar]
  15. Simonyan, K.; Zisserman, A. Very deep convolutional networks for large-scale image recognition. arXiv 2014, arXiv:1409.1556. [Google Scholar]
  16. He, K.; Zhang, X.; Ren, S.; Sun, J. Deep residual learning for image recognition. In Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Las Vegas, NV, USA, 27–30 June 2016; pp. 770–778. [Google Scholar]
  17. Tan, M.; Le, Q. Efficientnet: Rethinking model scaling for convolutional neural networks. In Proceedings of the 36th International Conference on Machine Learning, Beach, CA, USA, 10–15 June 2019; pp. 6105–6114. [Google Scholar]
  18. Valueva, M.; Nagornov, N.; Lyakhov, P.; Valuev, G.; Chervyakov, N. Application of the residue number system to reduce hardware costs of the convolutional neural network implementation. Math. Comput. Simul. 2020, 177, 232–243. [Google Scholar] [CrossRef]
  19. Dai, J.; Li, Y.; He, K.; Sun, J. Object Detection via Region-Based Fully Convolutional Networks. arXiv 2016, arXiv:1605.06409. [Google Scholar]
  20. Ren, S.; He, K.; Girshick, R.; Sun, J. Faster r-cnn: Towards real-time object detection with region proposal networks. Adv. Neural Inf. Process. Syst. 2015, 1, 91–99. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  21. He, K.; Gkioxari, G.; Dollár, P.; Girshick, R. Mask r-cnn. In Proceedings of the 2017 IEEE International Conference on Computer Vision (ICCV), Venice, Italy, 22–29 October 2017; pp. 2961–2969. [Google Scholar]
  22. Redmon, J.; Divvala, S.; Girshick, R.; Farhadi, A. You only look once: Unified, real-time object detection. In Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Las Vegas, NV, USA, 27–30 June 2016; pp. 779–788. [Google Scholar]
  23. Liu, W.; Anguelov, D.; Erhan, D.; Szegedy, C.; Reed, S.; Fu, C.-Y.; Berg, A.C. Ssd: Single shot multibox detector. In European Conference on Computer Vision; Springer: Cham, Switzerland, 2016; pp. 21–37. [Google Scholar]
  24. Lu, E.H.-C.; Gozdzikiewicz, M.; Chang, K.-H.; Ciou, J.-M. A hierarchical approach for traffic sign recognition based on shape detection and image classification. Sensors 2022, 22, 4768. [Google Scholar] [CrossRef] [PubMed]
  25. Chowdhary, C.L.; Reddy, G.T.; Parameshachari, B.D. Computer Vision and Recognition Systems: Research Innovations and Trends; CRC Press: Boca Raton, FL, USA, 2022. [Google Scholar]
  26. Ravi, C.; Tigga, A.; Reddy, G.T.; Hakak, S.; Alazab, M. Driver Identification Using Optimized Deep Learning Model in Smart Transportation. ACM Trans. Internet Technol. 2020. [Google Scholar] [CrossRef]
  27. He, T.; Zhang, Z.; Zhang, H.; Zhang, Z.; Xie, J.; Li, M. Bag of tricks for image classification with convolutional neural networks. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, Long Beach, CA, USA, 15–20 June 2019; pp. 558–567. [Google Scholar]
  28. Huang, G.; Liu, Z.; Van Der Maaten, L.; Weinberger, K.Q. Densely connected convolutional networks. In Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Honolulu, HI, USA, 21–26 July 2017; pp. 4700–4708. [Google Scholar]
  29. Wurm, M.; Stark, T.; Zhu, X.X.; Weigand, M.; Taubenböck, H. Semantic segmentation of slums in satellite images using transfer learning on fully convolutional neural networks. ISPRS J. Photogramm. Remote Sens. 2019, 150, 59–69. [Google Scholar] [CrossRef]
  30. Iandola, F.N.; Han, S.; Moskewicz, M.W.; Ashraf, K.; Dally, W.J.; Keutzer, K. SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5 MB model size. arXiv 2016, arXiv:1602.07360. [Google Scholar]
  31. Da Costa, L.J. Análise de Métodos de Detecção e Reconhecimento de Faces Utilizando Visão Computacional e Algoritmos de Aprendizado de Máquina. Colloq. Exactarum 2021, 13, 1–11, ISSN 2178-8332. [Google Scholar] [CrossRef]
  32. Stallkamp, J.; Schlipsing, M.; Salmen, J.; Igel, C. The German traffic sign recognition benchmark: A multi-class classification competition. In Proceedings of the International Joint Conference on Neural Networks, San Jose, CA, USA, 31 July–5 August 2011; pp. 1453–1460. [Google Scholar]
Figure 1. A residual block, as used in ResNets.
Figure 1. A residual block, as used in ResNets.
Sensors 22 08830 g001
Figure 2. ResNet50 architecture.
Figure 2. ResNet50 architecture.
Sensors 22 08830 g002
Figure 3. Three ResNet methods. ResNet-B modifies the downsampling block of Resnet. ResNet-C further modifies the input stem. On top of that, ResNet-D again modifies the downsampling block.
Figure 3. Three ResNet methods. ResNet-B modifies the downsampling block of Resnet. ResNet-C further modifies the input stem. On top of that, ResNet-D again modifies the downsampling block.
Sensors 22 08830 g003
Figure 4. Key aspects of the xResNet50 architecture.
Figure 4. Key aspects of the xResNet50 architecture.
Sensors 22 08830 g004
Figure 5. A 5-layer dense block with a growth rate of k = 4. Each layer takes all preceding feature-maps as input.
Figure 5. A 5-layer dense block with a growth rate of k = 4. Each layer takes all preceding feature-maps as input.
Sensors 22 08830 g005
Figure 6. Micro-architectural view: convolution filters organization in the fire modules [30].
Figure 6. Micro-architectural view: convolution filters organization in the fire modules [30].
Sensors 22 08830 g006
Figure 7. Architecture of VGG16 [17].
Figure 7. Architecture of VGG16 [17].
Sensors 22 08830 g007
Figure 8. Structure of VGG19 [16].
Figure 8. Structure of VGG19 [16].
Sensors 22 08830 g008
Figure 9. Some of the images from the dataset.
Figure 9. Some of the images from the dataset.
Sensors 22 08830 g009
Figure 10. (a) Confusion matrix and (b) loss rate during training with ResNet18.
Figure 10. (a) Confusion matrix and (b) loss rate during training with ResNet18.
Sensors 22 08830 g010aSensors 22 08830 g010b
Figure 11. (a) Confusion matrix and (b) loss rate during training with ResNet 34.
Figure 11. (a) Confusion matrix and (b) loss rate during training with ResNet 34.
Sensors 22 08830 g011
Figure 12. (a) Confusion matrix and (b) loss rate during training with ResNet 50.
Figure 12. (a) Confusion matrix and (b) loss rate during training with ResNet 50.
Sensors 22 08830 g012aSensors 22 08830 g012b
Figure 13. (a) Confusion matrix and (b) loss rate during training with SqueezeNet1_0.
Figure 13. (a) Confusion matrix and (b) loss rate during training with SqueezeNet1_0.
Sensors 22 08830 g013
Figure 14. (a) Confusion matrix and (b) loss rate during training with SqueezeNet1_1.
Figure 14. (a) Confusion matrix and (b) loss rate during training with SqueezeNet1_1.
Sensors 22 08830 g014aSensors 22 08830 g014b
Figure 15. (a) Confusion matrix and (b) loss rate during training with VGG16_bn.
Figure 15. (a) Confusion matrix and (b) loss rate during training with VGG16_bn.
Sensors 22 08830 g015
Figure 16. (a) Confusion matrix and (b) loss rate during training with VGG19_bn.
Figure 16. (a) Confusion matrix and (b) loss rate during training with VGG19_bn.
Sensors 22 08830 g016aSensors 22 08830 g016b
Figure 17. (a) Confusion matrix and (b) loss rate during training with XResNet5.
Figure 17. (a) Confusion matrix and (b) loss rate during training with XResNet5.
Sensors 22 08830 g017
Figure 18. Comparing the performance of one of the wrong diagnoses by model DenseNet 169 and DenseNet 201, which was correctly diagnosed by model DenseNet 121.
Figure 18. Comparing the performance of one of the wrong diagnoses by model DenseNet 169 and DenseNet 201, which was correctly diagnosed by model DenseNet 121.
Sensors 22 08830 g018
Figure 19. (a) Confusion matrix and (b) loss rate during training with DenseNet 121.
Figure 19. (a) Confusion matrix and (b) loss rate during training with DenseNet 121.
Sensors 22 08830 g019
Figure 20. (a) Confusion matrix and (b) loss rate during training with DenseNet 169.
Figure 20. (a) Confusion matrix and (b) loss rate during training with DenseNet 169.
Sensors 22 08830 g020aSensors 22 08830 g020b
Figure 21. (a) Confusion matrix and (b) loss rate during training with DenseNet 201.
Figure 21. (a) Confusion matrix and (b) loss rate during training with DenseNet 201.
Sensors 22 08830 g021
Figure 22. (a) Confusion matrix and (b) loss rate during training with AlexNet.
Figure 22. (a) Confusion matrix and (b) loss rate during training with AlexNet.
Sensors 22 08830 g022aSensors 22 08830 g022b
Table 1. Comparison of structure and input in different CNN learning models.
Table 1. Comparison of structure and input in different CNN learning models.
ModelSizeTop-1/Top-5 Error# LayerModel Description
AlexNet227 × 22741.00/18.0085 conv + fc layers
VGG 16224 × 22428.07/9.001613 Conv + 3 fc layers
VGG 19224 × 22427.30/9.331916 Conv +3fc layers
ResNet 50224 × 22422.85/6.715049 conv + 1 fc layers
ResNet 18224 × 22420.47/5.251817 conv + 1 fc layers
ResNet 32224 × 22421.53/5.603433 conv + 1 fc layers
XResNet 50 (C)224 × 224-501 conv 3 × 3, s = 2 +2 conv 3 × 3 +1 MaxPool 3 × 3, s = 2
DenseNet 121224 × 22425.35/7.831251 7 × 7 conv +
58 3 × 3 conv +
61 1 × 1 conv +
4 AvgPool
1 fc Layers
DenseNet 169224 × 22424.00/7.001697 × 7 stride 2 Conv Layer followed by a 3 × 3 stride-2 MaxPooling layer
DenseNet 201224 × 22422.8/6.432017 × 7 stride 2 Conv Layer followed by a 3 × 3 stride-2 MaxPooling layer
SqueezeNet 1-0227 × 22741.90/19.58181 Conv layer + 8 fire modules + 10 conv layer
SqueezeNet 1-1227 × 22741.81/19.38181 Conv layer + 8 fire modules + 10 conv layer
Table 2. Results of the ResNet 18.
Table 2. Results of the ResNet 18.
EpochTrain LossValid LossAccuracyError RateTime
00.8583370.4784020.8479790.15202142:37
00.1424880.0510000.9829100.01709046:55
10.0893760.0516600.9854610.01453951:24
20.0729990.0403650.9895420.01045851:32
30.0341410.0103210.9966840.00331652:10
40.0101820.0069040.9978320.00216852:41
50.0157260.0051600.9985970.00140351:56
60.0085860.0072430.9979590.00204151:01
70.0003520.0025780.9989800.00102051:11
80.0000500.0015680.9993620.00063851:17
90.0000530.0012470.9994900.00051052:05
Table 3. Results of the ResNet 34.
Table 3. Results of the ResNet 34.
EpochTrain LossValid LossAccuracyError RateTime
00.6568950.3454760.8900650.1099351:09:47
00.1185350.0364220.9894150.0105851:40:23
10.0520040.0372120.9908170.0091831:38:41
20.0453720.0156380.9959190.0040811:34:24
30.0248310.0120600.9973220.0026781:32:30
40.0257130.0066910.9982150.0017851:34:21
50.0188510.0064160.9983420.0016581:35:12
60.0048560.0029910.9991070.0008931:32:53
70.0012960.0007320.9997450.0002551:30:48
80.0013130.0004810.9996170.0003831:34:05
90.0000180.0002381.0000000.0000001:35:50
Table 4. Results of the ResNet 50.
Table 4. Results of the ResNet 50.
EpochTrain LossValid LossAccuracyError RateTime
00.4947440.2285290.9266680.0733322:04:54
00.0937740.0236910.9928580.0071422:43:09
10.0555010.0124570.9957910.0042092:40:10
20.0536810.0100730.9969390.0030612:38:37
30.0182220.0169500.9938780.0061222:38:05
40.0173930.0030130.9991070.0008932:35:11
50.0061290.0008810.9997450.0002552:28:34
60.0014460.0020660.9994900.0005102:32:31
70.0005520.0005780.9997450.0002553:00:53
80.0000330.0003180.9998720.0001283:02:22
90.0005360.0009640.9997450.0002553:18:05
Table 5. Results of the SqueezeNet 1-0.
Table 5. Results of the SqueezeNet 1-0.
EpochTrain LossValid LossAccuracyError RateTime
00.9148060.4711450.8416020.15839816:19
00.1858270.0667230.9802320.01976830:13
10.1141410.1357260.9853340.01466630:24
20.0816580.3770060.9808700.01913030:22
30.0393210.0652900.9922200.00778029:52
40.0431540.7056680.9940060.00599429:54
50.0137350.3141770.9934960.00650430:21
60.0084550.2498110.9963010.00369927:08
70.0115750.5124640.9973220.00267826:54
80.0025570.3979220.9977040.00229627:04
90.0021860.5927250.9965570.00344326:49
Table 6. Results of the SqueezeNet 1-1.
Table 6. Results of the SqueezeNet 1-1.
EpochTrain LossValid LossAccuracyError RateTime
01.0923000.6158390.7996430.20035708:38
00.2940470.1261060.9618670.03813317:22
10.1575630.0794830.9723250.02767516:59
20.1126920.2505550.9742380.02576217:01
30.0854730.0763840.9877570.01224317:31
40.0536190.0810550.9929860.00701416:57
50.0271140.0180420.9964290.00357116:51
60.0107960.2205870.9966840.00331616:51
70.0107870.0287960.9988520.00114817:09
80.0030920.3227570.9969390.00306117:06
90.0007270.0025510.9991070.00089316:32
Table 7. Results of the SqueezeNet1-1.
Table 7. Results of the SqueezeNet1-1.
EpochTrain LossValid LossAccuracyError RateTime
00.6246600.2829340.9075370.0924633:05:02
00.0746420.0238600.9924750.0075254:11:43
10.0546960.0151380.9963010.0036993:57:00
20.0221670.0207540.9957910.0042093:49:24
30.0210000.0216000.9960460.0039544:46:25
40.0027590.0051200.9991070.0008934:21:58
50.0040770.0049190.9987250.0012754:12:50
60.0003420.0022190.9992350.0007654:17:23
70.0003960.0005400.9998720.9991284:15:03
80.0000330.0002090.9998720.0001284:14:16
90.0000090.0001271.0000000.0000004:36:52
Table 8. Results of the VGG19_bn.
Table 8. Results of the VGG19_bn.
EpochTrain LossValid LossAccuracyError RateTime
00.7417790.3098150.9012880.0987125:19:59
00.0748200.0322930.9913280.0086726:03:03
10.0763970.0485560.9891600.0108405:50:49
20.0247360.0136080.9970670.0029336:41:47
30.0512800.0096620.9971940.0028066:51:02
40.0068180.0075190.9983420.0016585:49:44
50.0009930.0021350.9994900.0005105:40:14
60.0009860.0011200.9998720.0001285:45:10
70.0020160.0002110.9998720.0001285:28:46
80.0000200.0000311.0000000.0000005:29:33
90.0000040.0000021.0000000.0000005:25:54
Table 9. Results of the XResNet50.
Table 9. Results of the XResNet50.
EpochTrain LossValid LossAccuracyError RateTime
00.0118131.3755180.6037500.3962502:05:28
00.7381590.4659960.8668540.1331462:33:33
10.3724490.1826580.9455430.0544572:29:01
20.1643440.0760880.9752580.0247422:32:48
30.0870240.0386460.9863540.0136462:31:17
40.0651940.0221410.9931130.0068872:33:16
50.0437670.0109520.9968120.0031882:40:05
60.0156390.0099000.9978320.0021682:34:36
70.0048130.0058470.9983420.0012752:37:55
80.0018540.0055140.9987250.0012752:40:18
90.0008690.0042300.9988520.0011482:34:35
Table 10. Results of DenseNet 121.
Table 10. Results of DenseNet 121.
EpochTrain LossValid LossAccuracyError RateTime
00.3479870.1654320.9450330.0549672:11:49
00.0732930.0249910.9924750.0075252:28:01
10.0735580.0131930.9957910.0042092:25:48
20.0430900.0162010.9956640.0043362:22:41
30.0221920.0093090.9974490.0025512:17:25
40.0106020.0025260.9992350.0006382:15:31
50.0101230.0114390.9974490.0025512:12:21
60.0069230.0013620.9993620.0006382:11:33
70.0006900.0006710.9997450.0002552:13:32
80.0002070.0003680.9997450.0002550:22:54
90.0004080.0002530.9998720.0001282:29:03
Table 11. Results of the DenseNet 169.
Table 11. Results of the DenseNet 169.
EpochTrain LossValid LossAccuracyError RateTime
00.2889130.1203780.9603370.0396632:44:14
00.0595310.0219400.9922200.0077803:00:51
10.0575210.0227070.9932410.0067592:55:58
20.0584110.0144910.9956640.0043362:52:39
30.0310620.0032450.9991070.0008932:51:29
40.0153650.0070660.9989800.0010202:51:46
50.0048450.0017740.9996170.0003832:51:51
60.0004630.0008920.9998720.0001282:57:59
70.0008930.0010660.9996170.0003833:27:21
80.0006660.0015390.9997450.0002553:50:44
90.0002900.0013270.9997450.0002553:25:05
Table 12. Results of the DenseNet 201.
Table 12. Results of the DenseNet 201.
EpochTrain LossValid LossAccuracyError RateTime
00.2493250.1061390.9699020.0300983:35:21
00.0692670.0131290.9957910.0042094:01:31
10.0729910.0217940.9936230.0063773:35:10
20.0393060.0148050.9955360.0044643:52:20
30.0064080.0061500.9982150.0017853:51:30
40.0189310.0047010.9992350.0007653:52:36
50.0006360.0039690.9985970.0007653:54:19
60.0006360.0039690.9985970.0014033:54:19
70.0004840.1116070.9992350.0007653:52:54
80.0000130.0013830.9994900.0005103:53:46
90.0004500.0013250.9994900.0005103:58:08
Table 13. Results of the AlexNet.
Table 13. Results of the AlexNet.
EpochTrain LossValid LossAccuracyError RateTime
01.4425230.9156240.7053950.29460514:18
00.3650560.1769120.9475830.05241711:48
10.1868730.0717190.9801050.01989513:04
20.1097970.0512160.9829100.01709013:26
30.0874410.0246940.9924750.00752514:14
40.0615510.0306400.9905620.00943812:47
50.0317530.0170910.9947710.00522913:32
60.0087600.0100130.9970670.00293313:27
70.0031370.0061570.9984700.00153013:04
80.0012590.0054110.9984700.001530`13:16
90.0017170.0049100.9987250.00127513:02
Table 14. Comparison between different systems.
Table 14. Comparison between different systems.
Epoch Train LossValid LossAccuracyError RateTime
ResNet180.0000530.0012470.9994900.00051052:05
ResNet340.0000180.0002381.0000000.0000001:35:50
RedNet500.0005360.0009640.9997450.0002553:18:05
DenseNet 1210.0004080.0002530.9998720.0001282:29:03
DenseNet 1690.0002900.0013270.9997450.0002553:25:05
DenseNet 2010.0004500.0013250.9994900.0005103:58:08
VGG16_bn0.0000090.0001271.0000000.0000004:36:52
VGG19_bn0.0000040.0000021.0000000.0000005:25:54
XresNet500.0008690.0042300.9988520.0011482:34:35
AlexNet0.0017170.0049100.9987250.00127513:02
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Canese, L.; Cardarilli, G.C.; Di Nunzio, L.; Fazzolari, R.; Famil Ghadakchi, H.; Re, M.; Spanò, S. Sensing and Detection of Traffic Signs Using CNNs: An Assessment on Their Performance. Sensors 2022, 22, 8830. https://doi.org/10.3390/s22228830

AMA Style

Canese L, Cardarilli GC, Di Nunzio L, Fazzolari R, Famil Ghadakchi H, Re M, Spanò S. Sensing and Detection of Traffic Signs Using CNNs: An Assessment on Their Performance. Sensors. 2022; 22(22):8830. https://doi.org/10.3390/s22228830

Chicago/Turabian Style

Canese, Lorenzo, Gian Carlo Cardarilli, Luca Di Nunzio, Rocco Fazzolari, Hamed Famil Ghadakchi, Marco Re, and Sergio Spanò. 2022. "Sensing and Detection of Traffic Signs Using CNNs: An Assessment on Their Performance" Sensors 22, no. 22: 8830. https://doi.org/10.3390/s22228830

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop