Author Contributions
Conceptualization, J.R. and M.Y.; methodology, J.R., A.B.W. and M.Y.; software, A.M.A.-M., T.U. and S.W.; validation, J.R., A.B.W. and S.W.; formal analysis, J.R., A.B.W. and M.Y.; investigation, J.R., A.B.W., A.M.A.-M. and T.U.; resources, J.R.; data curation, J.R., A.B.W. and M.Y.; writing—original draft preparation, J.R., A.B.W. and S.W.; writing—review and editing, J.R.; visualization, A.M.A.-M., T.U. and S.W.; supervision, J.R. All authors have read and agreed to the published version of the manuscript.
Figure 1.
The workflow of the proposed study.
Figure 1.
The workflow of the proposed study.
Figure 2.
The original quick response code images with varying sizes are resized to 150 × 150 and 7 types of noises are mapped, each separately as one class.
Figure 2.
The original quick response code images with varying sizes are resized to 150 × 150 and 7 types of noises are mapped, each separately as one class.
Figure 3.
Gaussian noise probability distribution function and its quick response code image sample.
Figure 3.
Gaussian noise probability distribution function and its quick response code image sample.
Figure 4.
Salt and pepper probability distribution function and its quick response code image sample.
Figure 4.
Salt and pepper probability distribution function and its quick response code image sample.
Figure 5.
Speckle Gamma probability distribution function and its quick response code image sample.
Figure 5.
Speckle Gamma probability distribution function and its quick response code image sample.
Figure 6.
Poisson probability distribution function and its quick response code image sample.
Figure 6.
Poisson probability distribution function and its quick response code image sample.
Figure 7.
Sample of histogram density features of quick response code images.
Figure 7.
Sample of histogram density features of quick response code images.
Figure 8.
Performance curves of convolutional neural network model when trained without external feature extraction technique to classify 8 types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 8.
Performance curves of convolutional neural network model when trained without external feature extraction technique to classify 8 types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 9.
The confusion matrices for proposed classifiers when trained without external feature extraction technique to classify original quick response (QR) code and 7 different types of noisy QR code images. (a) convolutional neural network (CNN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 9.
The confusion matrices for proposed classifiers when trained without external feature extraction technique to classify original quick response (QR) code and 7 different types of noisy QR code images. (a) convolutional neural network (CNN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 10.
Performance curves of convolutional neural network model when trained without external feature extraction technique to classify 6 types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 10.
Performance curves of convolutional neural network model when trained without external feature extraction technique to classify 6 types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 11.
The confusion matrices for proposed classifiers when trained without external feature extraction technique to classify original quick response (QR) code and 5 different types of noisy QR code images. (a) convolutional neural network (CNN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 11.
The confusion matrices for proposed classifiers when trained without external feature extraction technique to classify original quick response (QR) code and 5 different types of noisy QR code images. (a) convolutional neural network (CNN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 12.
Performance curves of convolutional neural network model when trained without external feature extraction technique to classify 5 types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 12.
Performance curves of convolutional neural network model when trained without external feature extraction technique to classify 5 types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 13.
The confusion matrices for proposed classifiers when trained without external feature extraction technique to classify original quick response (QR) code and 3 different types of noisy QR code images. (a) convolutional neural network (CNN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 13.
The confusion matrices for proposed classifiers when trained without external feature extraction technique to classify original quick response (QR) code and 3 different types of noisy QR code images. (a) convolutional neural network (CNN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 14.
Histogram analysis of normal and noisy quick response (QR) code images where the x-axis represents the pixel number and the y-axis shows the value. (a) Normal QR codes; (b) Gaussian noisy QR codes; (c) Localvar noisy QR codes; (d) Pepper noisy QR codes; (e) Poisson; (f) Salt and pepper noisy QR codes; (g) Salt noisy QR codes and (h) Speckle noisy QR codes.
Figure 14.
Histogram analysis of normal and noisy quick response (QR) code images where the x-axis represents the pixel number and the y-axis shows the value. (a) Normal QR codes; (b) Gaussian noisy QR codes; (c) Localvar noisy QR codes; (d) Pepper noisy QR codes; (e) Poisson; (f) Salt and pepper noisy QR codes; (g) Salt noisy QR codes and (h) Speckle noisy QR codes.
Figure 15.
Performance curves of artificial neural network model when trained with features extraction through histogram density feature extraction technique to classify 8 types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 15.
Performance curves of artificial neural network model when trained with features extraction through histogram density feature extraction technique to classify 8 types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 16.
The confusion matrices for proposed classifiers when trained with features extraction through histogram density feature extraction technique to classify original quick response (QR) code and 7 different types of noisy QR code images. (a) artificial neural network (ANN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 16.
The confusion matrices for proposed classifiers when trained with features extraction through histogram density feature extraction technique to classify original quick response (QR) code and 7 different types of noisy QR code images. (a) artificial neural network (ANN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 17.
Performance curves of artificial neural network model when trained with features extraction through histogram density feature extraction technique to classify six types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 17.
Performance curves of artificial neural network model when trained with features extraction through histogram density feature extraction technique to classify six types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 18.
The confusion matrices for proposed classifiers when trained with features extraction through histogram density feature extraction technique to classify original quick response (QR) code and 5 different types of noisy QR code images. (a) artificial neural network (ANN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 18.
The confusion matrices for proposed classifiers when trained with features extraction through histogram density feature extraction technique to classify original quick response (QR) code and 5 different types of noisy QR code images. (a) artificial neural network (ANN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 19.
Performance curves of artificial neural network model when trained with features extraction through histogram density feature extraction technique to classify four types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 19.
Performance curves of artificial neural network model when trained with features extraction through histogram density feature extraction technique to classify four types of quick response code images: (a) accuracy curves for train and test sets; (b) loss curves for train and test sets.
Figure 20.
The confusion matrices for proposed classifiers when trained with features extraction through histogram density feature extraction technique to classify original quick response (QR) code and 3 different types of noisy QR code images. (a) artificial neural network (ANN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Figure 20.
The confusion matrices for proposed classifiers when trained with features extraction through histogram density feature extraction technique to classify original quick response (QR) code and 3 different types of noisy QR code images. (a) artificial neural network (ANN); (b) logistic regression (LG); and (c) support vector machine (SVM).
Table 1.
Quick response code image dataset information.
Table 1.
Quick response code image dataset information.
Label/Class | Number of Samples |
---|
Normal/Original QR code | 10,000 |
Gaussian | 10,000 |
Localvar | 10,000 |
Pepper | 10,000 |
Poisson | 10,000 |
Speckle | 10,000 |
Salt | 10,000 |
Salt and pepper | 10,000 |
Total | 80,000 |
Table 2.
Proposed convolutional neural network and its hypermetric values.
Table 2.
Proposed convolutional neural network and its hypermetric values.
Hyperparameter | Value |
---|
Optimizer | Adam |
Number of epochs | 100 |
Batch size | 120 |
Loss | Categorical cross-entropy |
Metrics | Accuracy |
Learning rate | 0.000001 |
Table 3.
Proposed logistic regression model and its hypermetric values.
Table 3.
Proposed logistic regression model and its hypermetric values.
Hyperparameter | Value |
---|
CV | 10 |
No. of jobs | −1 |
Random state | 1234 |
Max. iteration | 1000 and 400 (feature extracted data) |
Solver | Liblinear |
Class weight | Balanced |
Verbose | 1 |
Table 4.
Proposed support vector machine model and its hypermetric values.
Table 4.
Proposed support vector machine model and its hypermetric values.
Hyperparameter | Value |
---|
C | 1 |
Gamma | Auto |
Kernel | Poly and RBF (feature extracted data) |
Table 5.
Performance of various state-of-the-art deep learning models.
Table 5.
Performance of various state-of-the-art deep learning models.
Model/Network | Accuracy |
---|
VGG16 | 81.77 |
ResNet18 | 85.24 |
SqueezeNet | 81.26 |
MobileNetV2 | 84.52 |
DenseNet121 | 85.75 |
Table 6.
Performance comparison between convolutional neural network (CNN), logistic regression (LG), and support vector machine (SVM) when trained without external feature extraction technique to classify 8 types of quick response code images.
Table 6.
Performance comparison between convolutional neural network (CNN), logistic regression (LG), and support vector machine (SVM) when trained without external feature extraction technique to classify 8 types of quick response code images.
Model | Accuracy | Precision | Recall | F1-Score |
---|
CNN | 85.60% | 85.50% | 85.50% | 85.60% |
LG | 58.85% | 59.74% | 58.67% | 58.94% |
SVM | 69.74% | 71.91% | 69.64% | 70.62% |
Table 7.
Performance comparison between convolutional neural network (CNN), logistic regression (LG), and support vector machine (SVM) when trained without external feature extraction technique to classify 6 types of quick response code images.
Table 7.
Performance comparison between convolutional neural network (CNN), logistic regression (LG), and support vector machine (SVM) when trained without external feature extraction technique to classify 6 types of quick response code images.
Model | Accuracy | Precision | Recall | F1-Score |
---|
CNN | 97.70% | 97.70% | 97.70% | 97.70% |
LG | 77.48% | 77.24% | 77.36% | 77.29% |
SVM | 90.53% | 90.70% | 90.63% | 90.67% |
Table 8.
Performance comparison between convolutional neural network (CNN), logistic regression (LG), and support vector machine (SVM) when trained without external feature extraction technique to classify four types of quick response code images.
Table 8.
Performance comparison between convolutional neural network (CNN), logistic regression (LG), and support vector machine (SVM) when trained without external feature extraction technique to classify four types of quick response code images.
Model | Accuracy | Precision | Recall | F1-Score |
---|
CNN | 98.43% | 98.40% | 98.40% | 98.40% |
LG | 98.09% | 98.11% | 98.10% | 98.90% |
SVM | 98.91% | 98.91% | 98.91% | 98.90% |
Table 9.
Performance comparison between artificial neural network (ANN), logistic regression (LG), and support vector machine (SVM) when trained with features extraction through histogram density feature extraction technique to classify 8 types of quick response code images.
Table 9.
Performance comparison between artificial neural network (ANN), logistic regression (LG), and support vector machine (SVM) when trained with features extraction through histogram density feature extraction technique to classify 8 types of quick response code images.
Model | Accuracy | Precision | Recall | F1-Score |
---|
ANN | 87.85% | 87.80% | 87.30% | 87.50% |
LG | 87.44% | 87.37% | 87.31% | 87.34% |
SVM | 87.59% | 87.15% | 87.65% | 87.40% |
Table 10.
Performance comparison between artificial neural network (ANN), logistic regression (LG), and support vector machine (SVM) when trained with features extraction through histogram density feature extraction technique to classify six types of quick response code images.
Table 10.
Performance comparison between artificial neural network (ANN), logistic regression (LG), and support vector machine (SVM) when trained with features extraction through histogram density feature extraction technique to classify six types of quick response code images.
Model | Accuracy | Precision | Recall | F1-Score |
---|
ANN | 98.93% | 98.90% | 98.90% | 98.90% |
LG | 99.49% | 99.50% | 99.49% | 99.49% |
SVM | 100% | 100% | 100% | 100% |
Table 11.
Performance comparison between artificial neural network (ANN), logistic regression (LG), and support vector machine (SVM) when trained with features extraction through histogram density feature extraction technique to classify four types of quick response code images.
Table 11.
Performance comparison between artificial neural network (ANN), logistic regression (LG), and support vector machine (SVM) when trained with features extraction through histogram density feature extraction technique to classify four types of quick response code images.
Model | Accuracy | Precision | Recall | F1-Score |
---|
ANN | 98.77% | 98.80% | 98.80% | 98.80% |
LG | 99.88% | 99.87% | 99.87% | 99.87% |
SVM | 100% | 100% | 100% | 100% |
Table 12.
Comparative performance analysis of proposed convolutional neural network (CNN), artificial neural network (ANN), logistic regression (LG), and support vector machine (SVM) when trained with/without features extraction through histogram density feature extraction (HDFE) technique to classify 8-, 6-, and 4-types of quick response code images.
Table 12.
Comparative performance analysis of proposed convolutional neural network (CNN), artificial neural network (ANN), logistic regression (LG), and support vector machine (SVM) when trained with/without features extraction through histogram density feature extraction (HDFE) technique to classify 8-, 6-, and 4-types of quick response code images.
Classification Problem | Model | Accuracy |
---|
Without HDFE | With HDFE |
---|
8-class | CNN/ANN | 85.60% | 87.85% |
LG | 58.85% | 87.44% |
SVM | 69.74% | 87.59% |
6-class | CNN/ANN | 97.70% | 98.93% |
LG | 77.48% | 99.49% |
SVM | 90.53% | 100% |
4-class | CNN/ANN | 98.43% | 98.77% |
LG | 98.09% | 99.88% |
SVM | 98.91% | 100% |