## 3 Experiment and Results  
### Datasets  
The dataset used in this study was composed of images that depicted buses in various positions, orientations, perspectives, and environmental conditions. The data collection process was conducted meticulously to ensure high-quality data. The images were collected using a mobile phone camera, as well as from the internet. The purpose of this dataset was to aid people with visual impairment in identifying nearby buses, and as such, it was focused on bus detection. The dataset contained three main classes: bus, door, and route. Figure 6 provides an example of an image in the dataset, which shows a bus during daylight conditions. The image contains one instance of a bus, two instances of doors, and one instance of a route. Each image in the dataset was labeled with bounding boxes that indicated the location and area of each instance. This labeling information was then utilized by the model to conduct object detection within the images. To elaborate further on the nature of the dataset, it is worth noting that it was a labeled dataset, which means that each image was annotated with bounding boxes that precisely identified the locations of the buses, doors, and routes present within the images. The dataset contained a variety of environmental conditions, which included different lighting conditions, weather conditions, and backgrounds. Furthermore, the dataset contained instances of buses with different colors, shapes, and sizes, which made it a diverse dataset that could be used to train object detection models that were robust and adaptable to various real-world scenarios. The dataset consisted of 1602 images, with 75% used as the training set, which was a total of 1202 images, 20% used as the validation set, which was a total of 320 images, and 5% used as the testing set, which was a total of 80 images. The images were labeled using the roboflow.com website with YOLOv5 PyTorch output format, which is.txt, with a total of 5148 annotations and an average of 3.2 annotations per image. The annotation details per class were 1745 instances for bus, 2254 instances for door, and 1149 instances for route. Figure 7 presents a graph that shows the number of annotations per class in the dataset. Figure 5: The structure of the Improved-YOLOv5. Figure 7b shows the distribution of the bounding boxes in the dataset, by visualizing the location and size of each bounding box. This helps in understanding the distribution of the bounding boxes in the dataset and ensures that there is enough variation in the position and size of objects for the model to recognize. Figure 7c,d, show the statistical distribution of the position and size of the bounding boxes, which shows how the distribution of the bounding boxes is spread across the dataset. This graph helps in determining whether the bounding boxes have an even distribution or whether there are parts of the dataset that are heavier. This is important to ensure that the model will not have problems detecting objects in the image, because all objects vary in size and position. Figure 6: Example image of the dataset. Figure 7: Visualization of the dataset. (**a**) Number of annotations per class. (**b**) Visualization of the location and size of each bounding box. (**c**) The statistical distribution of the bounding box position. (**d**) The statistical distribution of the bounding box sizes. This study used the default data augmentation techniques from the YOLOv5 model, including HSV-Hue augmentation, image translation, image scale, image flip left-right, and image mosaic, as part of the model training process. This technique helped to expand the amount of data used during the training process, strengthened the model to perform better object detection in images and reduce the risk of overfitting, and strengthened the model to perform object detection in different environments. All images in the dataset were also preprocessed by auto-orienting and resizing to a size of 640 \(\times\) 640, with an average image size of 0.41 MP.