前 言:作为当前先进的深度学习目标检测算法YOLOv5,已经集合了大量的trick,但是还是有提高和改进的空间,针对具体应用场景下的检测难点,可以不同的改进方法。此后的系列文章,将重点对YOLOv5的如何改进进行详细的介绍,目的是为了给那些搞科研的同学需要创新点或者搞工程项目的朋友需要达到更好的效果提供自己的微薄帮助和参考。
解决问题:YOLOv5默认采用K-Means算法聚类COCO数据集生成的锚框,并采用遗传算法在训练过程中调整锚框,但是K-Means在聚类时,从其算法的原理可知,K-Means正式聚类之前首先需要完成的就是初始化k个簇中心。同时,也正是因为这个原因,使得K-Means聚类算法存在着一个巨大的缺陷——收敛情况严重依赖于簇中心的初始化状况,采用K-Means++可以有效缓解这一问题,从而一定程度上能够提高检测精度和效果。
完整代码和教程百度云盘如下:
链接:https://pan.baidu.com/s/16t3SjHh5faLpLMNGzTFxUQ
提取码:关注后私信
原 理:
k-means++是k-means聚类算法的一种改进版本,主要用于数据聚类。它的原理如下:
- 首先从数据集中随机选取一个点作为第一个