2026/3/27 17:46:19
网站建设
项目流程
张家港网站建设服务,直播网站建设需要什么,客厅设计说明200字,被墙的网站有哪些使用星图AI算力平台训练PETRV2-BEV模型一、背景介绍1.1 什么是BEV模型#xff1f;1.2 为什么选择PETRV2#xff1f;1.3 云端训练的必要性二、操作步骤2.1 创建算力实例步骤解析#xff1a;小贴士#xff1a;2.2 连接到容器环境2.3 准备训练环境为什么需要conda环境#xf…使用星图AI算力平台训练PETRV2-BEV模型一、背景介绍1.1 什么是BEV模型1.2 为什么选择PETRV21.3 云端训练的必要性二、操作步骤2.1 创建算力实例步骤解析小贴士2.2 连接到容器环境2.3 准备训练环境为什么需要conda环境2.4 下载模型和数据2.4.1 下载预训练权重2.4.2 下载nuscenes数据集2.5 训练流程详解2.5.1 数据预处理2.5.2 精度测试验证模型是否正常2.5.3 开始训练2.5.4 可视化训练过程2.5.5 模型导出与部署2.5.6 运行Demo验证2.6 进阶训练xtreme1数据集2.6.1、准备数据集2.6.2、测试精度一、背景介绍1.1 什么是BEV模型想象一下当自动驾驶汽车行驶在路上时它需要通过摄像头、雷达等传感器感知周围环境。这些传感器数据通常是2D图像而BEVBird’s Eye View鸟瞰图模型的神奇之处在于它能将这些不同视角的数据“翻译”成一个从上往下看的统一视图。就像你把不同角度拍摄的照片拼接成一张完整的俯视地图BEV模型让车辆能更直观地理解周围物体车辆、行人、障碍物的位置、大小和运动状态这对自动驾驶决策至关重要。1.2 为什么选择PETRV2PETRV2是PaddlePaddle 3D开发套件中的一个先进BEV感知模型。它有几个突出的优点多视角融合能有效融合来自多个摄像头的数据实时性能在保持高精度的同时推理速度快开源友好基于飞桨框架社区支持完善1.3 云端训练的必要性训练一个BEV模型通常需要高性能GPU至少一块理想情况是多块并行大量存储空间数据集往往几十GB稳定的训练环境训练可能持续数天对于个人开发者或小团队来说购买和维护这样的硬件成本很高。而云端算力平台提供了一个“随用随租”的解决方案——就像使用共享单车一样你需要的时候租用用完就释放既经济又灵活。星图AI算力平台https://ai.csdn.net/compute-power正是这样一个平台它提供了预置的深度学习环境按小时/天/月计费的GPU资源简单的SSH访问方式二、操作步骤2.1 创建算力实例步骤解析选择合适镜像我们在星图AI上预置了一个包含PETRV2环境的镜像购买时长 培训GPU配置及时长等待实例启动大约15分钟系统会自动配置好所有环境为什么需要15分钟系统需要从镜像仓库拉取约10GB的容器镜像配置GPU驱动和CUDA环境初始化存储空间和网络设置小贴士如果只是测试申请1小时就够了正式训练时根据数据集大小调整时长记得在不用时主动释放实例避免产生额外费用2.2 连接到容器环境# 从平台控制台复制SSH命令ssh-p[端口号]root[服务器地址]连接成功后的验证输入nvidia-smi查看GPU状态确认CUDA版本是否匹配检查磁盘空间是否充足2.3 准备训练环境为什么需要conda环境Conda是Python的环境管理工具它允许我们在同一台机器上创建多个独立的Python环境。这样不同项目可以使用不同版本的库避免版本冲突。# 激活预配置的环境conda activate paddle3d_env# 验证环境python --version pip list|greppaddle2.4 下载模型和数据2.4.1 下载预训练权重wget-O /root/workspace/model.pdparams https://paddle3d.bj.bcebos.com/models/petr/petrv2_vovnet_gridmask_p4_800x320/model.pdparams预训练权重的作用模型已经在大量数据上学习过基本特征可以加速训练收敛特别适合数据量较小的场景2.4.2 下载nuscenes数据集# 下载mini版数据集wget-O /root/workspace/v1.0-mini.tgz https://www.nuscenes.org/data/v1.0-mini.tgz# 解压到指定目录mkdir-p /root/workspace/nuscenestar-xf /root/workspace/v1.0-mini.tgz -C /root/workspace/nuscenes关于nuscenes数据集自动驾驶领域权威数据集包含1000个场景每个场景20秒提供相机、激光雷达、GPS/IMU等多传感器数据mini版包含10个场景适合快速验证2.5 训练流程详解2.5.1 数据预处理cd/usr/local/Paddle3D# 清理旧的标注文件rm/root/workspace/nuscenes/petr_nuscenes_annotation_* -f# 创建PETR格式的数据标注python3 tools/create_petr_nus_infos.py --dataset_root /root/workspace/nuscenes/ --save_dir /root/workspace/nuscenes/ --mode mini_val预处理的作用将原始数据转换为模型能理解的格式生成训练、验证、测试集的划分提取关键信息物体边界框、类别标签等2.5.2 精度测试验证模型是否正常python tools/evaluate.py\--config configs/petr/petrv2_vovnet_gridmask_p4_800x320_nuscene.yml\--model /root/workspace/model.pdparams\--dataset_root /root/workspace/nuscenes/关键指标解释mAP平均精度越高越好表示检测准确率mATE平均平移误差越低越好表示位置预测误差mASE平均尺度误差越低越好表示大小预测误差NDSNuScenes检测分数综合评分主要参考指标输出mAP:0.2669mATE:0.7448mASE:0.4621mAOE:1.4553mAVE:0.2500mAAE:1.0000NDS:0.2878Eval time:5.8s Per-class results: Object Class AP ATE ASE AOE AVE AAE car0.4460.6260.1681.7350.0001.000truck0.3810.5000.1991.1130.0001.000bus0.4070.6590.0642.7190.0001.000trailer0.0001.0001.0001.0001.0001.000construction_vehicle0.0001.0001.0001.0001.0001.000pedestrian0.3780.7370.2631.2590.0001.000motorcycle0.3560.7480.3141.4100.0001.000bicycle0.0630.7600.2361.8620.0001.000traffic_cone0.6370.4180.377nan nan nan barrier0.0001.0001.0001.000nan nan2.5.3 开始训练python tools/train.py\--config configs/petr/petrv2_vovnet_gridmask_p4_800x320_nuscene.yml\--model /root/workspace/model.pdparams\--dataset_root /root/workspace/nuscenes/\--epochs100\--batch_size2\--log_interval10\--learning_rate 1e-4\--save_interval5\--do_eval参数详解--epochs 100训练100轮--batch_size 2每次处理2个样本受限于GPU显存--learning_rate 1e-4学习率控制参数更新幅度--do_eval每轮结束后进行验证2.5.4 可视化训练过程# 启动VisualDL可视化工具visualdl --logdir ./output/ --host0.0.0.0端口转发技巧由于云服务器通常不直接开放Web端口我们需要通过SSH隧道进行访问ssh-p31264-L0.0.0.0:8888:localhost:8040 rootgpu-09rxs0pcu2.ssh.gpu.csdn.net这是什么原理将本地的8888端口映射到远程的8040端口访问本地http://localhost:8888实际上访问的是远程的VisualDL服务在VisualDL中你可以看到损失函数下降曲线验证指标变化趋势学习率调整情况2.5.5 模型导出与部署训练完成后我们需要将训练模型导出为推理格式# 创建导出目录rm-rf /root/workspace/nuscenes_release_modelmkdir-p /root/workspace/nuscenes_release_model# 导出模型python tools/export.py\--config configs/petr/petrv2_vovnet_gridmask_p4_800x320_nuscene.yml\--model output/best_model/model.pdparams\--save_dir /root/workspace/nuscenes_release_model导出文件说明model.pdmodel模型结构文件model.pdiparams模型权重文件model.pdiparams.info模型信息文件2.5.6 运行Demo验证python tools/demo.py /root/workspace/nuscenes/ /root/workspace/nuscenes_release_model nuscenesDemo功能加载测试数据使用导出的模型进行推理可视化检测结果2.6 进阶训练xtreme1数据集如果你有更多时间可以尝试更大的xtreme1数据集2.6.1、准备数据集# 数据预处理假设数据已上传到/root/workspace/xtreme1_nuscenes_data/cd/usr/local/Paddle3Drm/root/workspace/xtreme1_nuscenes_data/petr_nuscenes_annotation_* -f python3 tools/create_petr_nus_infos_from_xtreme1.py /root/workspace/xtreme1_nuscenes_data/2.6.2、测试精度python tools/evaluate.py\--config configs/petr/petrv2_vovnet_gridmask_p4_800x320.yml\--model /root/workspace/model.pdparams\--dataset_root /root/workspace/xtreme1_nuscenes_data/# 开始训练python tools/train.py\--config configs/petr/petrv2_vovnet_gridmask_p4_800x320.yml\--model /root/workspace/model.pdparams\--dataset_root /root/workspace/xtreme1_nuscenes_data/\--epochs100\--batch_size2\--log_interval10\--learning_rate 1e-4\--save_interval5\--do_eval