我们是苏州大学未来科学与工程学院的数据科学队,在第五届全球校园人工智能算法精英大赛的算法挑战赛道中参赛。我们在道路病害目标检测赛道中取得了以下成绩:
- A榜:0.601(全球第五)
- B榜:0.415(全球第六)
- 区域赛:第Ⅰ赛区本科生组第一名
- 全国总决赛:本科生组第二名
我们采用了以下主要方法来提升算法的性能:
- 数据增广:通过对数据集进行描述性统计,我们发现部分道路病害实例数量较少。为了均衡实例分布,我们使用了数据增广方法。
- 数据增强:经过对比试验,我们发现一种基于直方图均衡化的去雾算法对模型的性能提升效果最好,因此我们选择了这种数据增强方法。
- 实验分析:我们进行了详细的实验分析,以优化算法的各个环节。
- 基于WBF的集成预测:我们采用了基于WBF(Weighted Boxes Fusion)的集成预测方法,通过集成多个异构的基模型,进一步提升了算法的性能。
- 我们采用了43个基于yolov8s和rtdetr-l训练出来的优秀模型进行集成预测
在我们的工作中,我们没有修改模型主干,仅使用了官方提供的2000张图片作为训练集,并且在训练模型时未调整任何参数。 使用到的43个pt文件由于太大不再给出,基本每一个pt的f1得分都在0.4左右。 如要复现,请自行根据代码逻辑修改代码,将装有若干pt文件的文件夹置于和maib.py相同文件夹下。
以下是我们的源代码文件及其功能说明:
utils/describe.ipynb
:用于对数据集进行统计分析。utils/augment.py
:用于数据增广。utils/dataset.py
:用于处理数据集。utils/f1.py
:用于根据两个txt文件夹计算F1得分。utils/search.py
:用于搜寻最佳conf和iou。utils/show_pe.py
:用于展示集成预测的效果图片。utils/show_single.py
:用于展示单个模型的预测效果图片。utils/yizhi.py
:用于根据置信度和iou指定不同类别之间的预测优先级。main.py
:包括了基于直方图均衡化的去雾算法、推理和集成预测三个部分。our_wbf.py
:使得WBF算法可以对不同模型的不同类别进行赋权,赋予的权重是一个矩阵。
请注意,以上文件是我们在比赛中使用的源代码文件。如有需要,您可以根据文件名和功能说明来查看和使用相应的代码文件。