Optimizing golf ball detection by applying channel pruning to a YOLOv3-Tiny detector
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
This thesis presents an approach to golf ball detection using a channel pruned YOLOv3- Tiny detector. Object detection is a challenging task, influenced not only by the appearance of objects but also by the surrounding environment. In the case of golf ball detection, the object can vary in size, color, and texture, and may be partially or fully occluded by other objects in the scene. Additionally, environmental factors such as lighting conditions and background clutter can further complicate the task. In addition, the fast motion of the golf ball adds another level of difficulty to the detection process. The proposed approach utilizes channel pruning to reduce the size and computational complexity of the YOLOv3-Tiny detector while maintaining high detection effectiveness. In this thesis, we propose an approach to improve the effectiveness and efficiency of golf ball detection using YOLOv3-Tiny. We apply channel pruning, which involves removing unimportant channels from the network, to reduce the size of the model and speed up inference. We begin by training YOLOv3-Tiny using sparse training, where we consider the scaling factor for each batch normalization layer in the architecture of the model. These scaling factors represent the importance of each channel, and we use the L1-regularization process to keep them small during training. After training, we prune channels with small values and evaluate the pruned model. This approach leads to a more efficient and effective golf ball detection model. We also present a new definition for pruning convolutional neural networks, which considers two aspects. Firstly, it considers the maximum amount of pruning that can be performed while maintaining a certain level of predictive effectiveness. Secondly, it determines the maximum level of predictive effectiveness that can be achieved while keeping a specific amount of pruning. This approach allows us to fine tune the pruning process to balance efficiency and effectiveness. The proposed method for golf ball detection using channel pruning in YOLOv3- Tiny offers several advantages. Firstly, it does not require adding any extra coefficient or parameter to the model for sparse training, as the parameters in the batch normalization layer are used as representatives of the importance of channels. Secondly, by incorporating two thresholds in the pruning section, the architecture of the model is preserved and overpruning is avoided. Furthermore, the flexibility of setting these two parameters to different values according to the specific application and desired effectiveness and efficiency limits adds to the method’s versatility. Finally, the proposed approach can be extended to other object detection problems, making it a promising technique with a wide range of applications. In our evaluation, we conducted experiments on two different platforms, GPU and CPU, to observe the effect of pruning on both. We also tested our model on different image sizes. Our results showed a significant improvement in the parameter size for both platforms. In particular, we observed a remarkable improvement in CPU inference time. Our pruned model achieved a 91% reduction in the number of parameters, which significantly reduced the memory usage of the model. Moreover, our pruned model outperformed the unpruned model trained with sparse training by 1.7% in terms of F1 score. These results demonstrate the effectiveness of our proposed approach in improving the effectiveness and efficiency of golf ball detection using YOLOv3-Tiny.