## 4 Results  
Initially, a thorough exploration of the CNN model architecture was conducted to determine the best model for image classification after various combinations of hyperparameters such as image size, batch size, convolutional layers, and nodes, as well as the number of dense nodes, were tested. All of the experiments were executed 10 times to compute the average value. The hardware specifications on which the experiments were conducted are processor: Intel(R) Core (TM) i7-8750H CPU @ 2.20 GHz 2.21 GHz; RAM: 8 GB; and system type: 64-bit operating system, x64-based processor. The frameworks Keras 2.8.0 and Sklearn 1.0.2 were used, as well as python language 3.9.7. To address the three-fold classification problem, various architectures of RGB-CNN algorithm were explored, which involve several batch sizes (8, 16, 32, and 64), image sizes (\(200\times 200\times 3\), \(250\times 250\times 3\), \(300\times 300\times 3\), and \(350\times 350\times 3\)), number of layers and nodes for convolutional layers (16-32-64, 16-32-64-128, 16-32-64-128, 16-32-64-128, 26-64-128-256, and 32-64-128), and number of nodes for dense layers (32-32, 64-64, 128-128, and 256-256). We used well-known performance metrics such as accuracy, loss, AUC with confidence interval, ROC curve, sensitivity, and specificity to evaluate the examined CNN architectures. AUC represents the model's ability to distinguish between the given classes, ranging between 0 and 1, and the higher the performance of the model, the better the differentiation. ROC (receiver operating characteristic) is the visual demonstration of AUC [8]. The experiment started with the default values for batch size, image size, convolutional layers and nodes, and dense nodes, which were 16, 200 \(\times\) 200, 16-32-64-128, and 128-128, respectively. It must be noted that all runs were conducted for 400 epochs with a drop rate of 0.2 to acquire satisfactory results. Table 2 collects the findings for the various batch sizes while leaving the remaining parameters at their default values. It emerges that the model performs better regarding the relevant metrics for a batch size of 32. Afterward, we examined different image sizes while keeping fixed values for convolutional and dense layers, considering that 32 is the best batch size. In Figure 3a, we can clearly distinguish the remarkable results extracted for 300 \(\times\) 300 in contrast to the rest of the structures. Thus, 300 \(\times\) 300 is the best combination for the corresponding dataset. In Figure 3b, the computed outcomes concerning the utilization of various combinations of convolutional layers are presented. The formation of 16-32-64-128 convolutional layers seems to have performed better in all metrics. Next, various numbers of nodes were examined, producing the results that are visually depicted in Figure 3. It is concluded that the best sequence is 128-128, wherein all metrics are considered. At this point, deep neural networks (such as CNNs) have made advances in large sample size applications. However, they are susceptible to overfitting and high-variance gradients when dealing with high-dimensional and low-sample size data. In our study, we explored a relatively small dataset; therefore, increasing the number of the image size (feature dimensionality) means that we increase the number of CNN network's parameters (its complexity), making it more prone to overfitting. In our experiments, we are attempting to determine the image size that provides the ideal balance between accuracy and complexity. Various architectures for our RGB model and each combination were executed for at least 10 runs so that a robust and reliable model was finally built. The ultimate architecture for RGB is 300 \(\times\) 300 for image size, 32 for batch size, 16-32-64-128 for convolutional layers, and 128-128 for dense layers.