# A Two-Stage Automatic Container Code Recognition Method Considering Environmental Interference
## 2 Literature Review
### Ccr  
Previous work on CCR typically needs to segment characters in the container code image firstly and then recognizes each segmented character (2018). This paper focuses on summarizing previous CCR. The existing CCR algorithms include TM-based, SVM-based, and DL-based (deep learning).  
TM-based methods recognize each character by measuring the similarity between characters and templates. [PERSON] et al. (2017) and [PERSON] et al. (2019) use the LeNet algorithm and TM algorithm to recognize container characters, but the recognition accuracy of the former is only 91.9%, and the recognition time of the latter is as long as 1800 ms. TM-based methods are simple and fast, but they can only be used to recognize characters of single font and fixed size, with no rotation or broken areas, which has a poor recognition effect for blurred, skewed, and incomplete container characters.  
Some researchers regard container characters as different classes, and train SVM to classify the characters and identify the characters. [PERSON] et al. (2019) use a single SVM for CCR. [PERSON] et al. (2014) and [PERSON] (2019) train two SVMs to identify the numbers and letters of the container code, respectively. In summary, using the SVM-based method, the accuracy rate can be about 95%, but its recognition time is long, and SVM requires a large amount of training data.  
DL-based CCR is more robust, and it can recognize container code characters in a variety of complex environments, including tilt and deformation. [PERSON] et al. (2018) use two LeNet networks to identify letters and numbers, respectively, with an accuracy of 95.41%. [PERSON] et al. (2019) train a BP neural network to recognize the segmented characters. [PERSON] et al. (2019) and [PERSON] et al. (2019) propose a CCR model based on CRNN (Convolutional Recurrent Neural Network).  
However, these DL-based CCR methods have slow recognition speed and unsatisfactory recognition accuracy. On the one hand, the existing target detection model is complex,and the number of algorithm parameters is large. On the other hand, the output of CCL has a great influence on the recognition results of CCR. The poor locating effect in the CCL stage eventually leads to the low accuracy of CCR.  
To address these deficiencies, some researchers choose to train a single deep learning model to directly identify container characters to avoid errors and missed detections caused by inaccurate area locating and thereby improve CCR accuracy [29]. [PERSON] et al. [7] present the BLS (Broad Learning System) for CCR, in which the recognition time only needs 20 ms for one frame, and it has a certain resistance to various complex situations.  
In order to further improve the speed of the CCR algorithm, researchers have made lightweight improvements to neural networks. [PERSON] et al. [15] use a lightweight CRNN network for character recognition. [PERSON] et al. [23] modified the SAR feature-extraction module to MobileNetv3 for CCR. Experimental results show that this lightweight neural network can greatly improve the recognition speed under the premise of ensuring recognition accuracy.