CCF BDCI人工智能比赛天气以及时间分类
文章较长完整代码关注【学姐带你玩AI】公众号,回复“天气”领取
来源:投稿
作者:livingbody
编辑:学姐
# 赛题背景
在自动驾驶场景中,天气和时间(黎明、早上、下午、黄昏、夜晚)会对传感器的精度造成影响,比如雨天和夜晚会对视觉传感器的精度造成很大的影响。此赛题旨在对拍摄的照片天气和时间进行分类,从而在不同的天气和时间使用不同的自动驾驶策略。

# 赛题任务
此赛题的数据集由云测数据提供。比赛数据集中包含3000张真实场景下行车记录仪采集的图片,其中训练集包含2600张带有天气和时间类别标签的图片,测试集包含400张不带有标签的图片。参赛者需基于Oneflow框架在训练集上进行训练,对测试集中照片的天气和时间进行分类。
# 数据简介
本赛题的数据集包含2600张人工标注的天气和时间标签。
天气类别:多云、晴天、雨天、雪天和雾天5个类别
时间:黎明、早上、下午、黄昏、夜晚5个类别

下午 多云

早上 雨天
# 数据说明
数据集包含anno和image两个文件夹,anno文件夹中包含2600个标签json文件,image文件夹中包含3000张行车记录仪拍摄的JPEG编码照片。图片标签将字典以json格式序列化进行保存:

# 提交要求
参赛者使用Oneflow框架对数据集进行训练后对测试集图片进行推理后:
1.将测试集图片的目标检测和识别结果以与训练集格式保持一致的json文件序列化保存,并上传至参赛平台由参赛平台自动评测返回结果。
2.在提交时的备注附上自己的模型github仓库链接
# 提交示例
{ “annotations”: [ { “filename”: “test_images\00008.jpg”, “period”: “Morning”, “weather”: “Cloudy” }] }
# 解题思路
总体上看,该任务可以分为2个:一个是预测时间、一个是预测天气。
具体如下:
预测时间、天气数据标签列表生成
数据集划分
数据均衡(数据很不均衡)
分别预测
合并预测结果
数据集准备
数据下载
数据解压缩
按时间制作标签
注意事项:虽然数据描述说时间** Period 为 黎明、早上、下午、黄昏、夜晚**,但是经过遍历发现只有4类。。。。。,故如下制作标签
数据集划分并数据均衡

按天气分制作标签
数据集划分并均衡

环境准备
飞桨图像识别套件PaddleClas是飞桨为工业界和学术界所准备的一个图像识别任务的工具集,助力使用者训练出更好的视觉模型和应用落地。此次计划使用端到端的PaddleClas图像分类套件来快速完成分类。此次使用PaddleClas框架完成比赛。
模型训练 and 评估
时间训练
以PaddleClas/ppcls/configs/ImageNet/VisionTransformer/ViT_small_patch16_224.yaml 为基础进行修改
天气训练
配置文件为:
** PaddleClas/ppcls/configs/ImageNet/VisionTransformer/ViT_base_patch16_224_weather.yaml**
预测
时间模型导出
开始预测
编辑 PaddleClas/deploy/python/predict_cls.py,按提交格式输出预测结果到文件。
天气模型导出
天气预测
合并并提交
最后一部分代码在公众号【学姐带你玩AI】,B站的编辑器卡的不行了,关注公众号查看全文把!
完整代码关注学姐回复“天气”领取