景区网站的建设公司申请网站空间就是申请域名
景区网站的建设公司,申请网站空间就是申请域名,怎么推广自己,东莞陈村网站制作小白必看#xff1a;PETRV2-BEV模型训练全流程详解
1. 学习目标与准备工作
1.1 你能学到什么
如果你是刚接触BEV#xff08;鸟瞰图#xff09;感知的新手#xff0c;这篇教程将手把手带你完成PETRV2模型的完整训练流程。学完本文#xff0c;你将掌握#xff1a;
如何…小白必看PETRV2-BEV模型训练全流程详解1. 学习目标与准备工作1.1 你能学到什么如果你是刚接触BEV鸟瞰图感知的新手这篇教程将手把手带你完成PETRV2模型的完整训练流程。学完本文你将掌握如何在星图AI平台快速搭建训练环境如何准备和处理自动驾驶数据集如何从零开始训练一个BEV感知模型如何监控训练过程并评估模型效果如何导出模型并查看实际检测效果不需要任何高深的数学基础只要会基本的Linux命令就能跟着做。1.2 需要提前准备的为了顺利跟着教程操作建议你先了解Linux基础命令cd、mkdir、python等Python基本语法深度学习训练的基本概念epoch、batch_size等不用担心理论不够我们会用最直白的方式解释每个步骤。1.3 使用的平台和工具我们使用星图AI算力平台的预置镜像训练PETRV2-BEV模型这个镜像已经帮你准备好了所有环境PaddlePaddle深度学习框架Paddle3D 3D感知工具库必要的Python依赖包CUDA和cuDNN加速环境用这个镜像的好处是不用自己折腾环境直接开始训练2. 环境准备与数据下载2.1 激活训练环境首先进入准备好的Python环境conda activate paddle3d_env这个环境里所有需要的软件包都装好了不用自己再安装。2.2 进入工作目录所有的训练脚本都在Paddle3D目录下cd /usr/local/Paddle3D这里包含了我们要用的所有工具脚本和配置文件。3. 下载模型权重和数据集3.1 获取预训练模型我们先下载一个已经训练好的模型权重这样训练起来更快wget -O /root/workspace/model.pdparams https://paddle3d.bj.bcebos.com/models/petr/petrv2_vovnet_gridmask_p4_800x320/model.pdparams这个权重文件大概1.2GB是用大规模数据预训练好的我们在这个基础上继续训练效果更好。3.2 下载训练数据我们使用nuScenes数据集的mini版本大小适中适合学习wget -O /root/workspace/v1.0-mini.tgz https://www.nuscenes.org/data/v1.0-mini.tgz mkdir -p /root/workspace/nuscenes tar -xf /root/workspace/v1.0-mini.tgz -C /root/workspace/nuscenes解压后你会看到一个包含各种传感器数据的文件夹这就是我们的训练材料。4. 完整训练流程详解4.1 准备数据标注模型训练需要特定格式的标注文件运行这个命令来生成cd /usr/local/Paddle3D rm /root/workspace/nuscenes/petr_nuscenes_annotation_* -f python3 tools/create_petr_nus_infos.py --dataset_root /root/workspace/nuscenes/ --save_dir /root/workspace/nuscenes/ --mode mini_val这个过程会把原始标注转换成模型能直接读取的格式生成两个.pkl文件。4.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: 0.2669 mATE: 0.7448 mASE: 0.4621 mAOE: 1.4553 mAVE: 0.2500 mAAE: 1.0000 NDS: 0.2878这些数字代表了模型在不同方面的检测能力mAP越高越好其他指标越低越好。现在的效果还有很大提升空间。4.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/ \ --epochs 100 \ --batch_size 2 \ --log_interval 10 \ --learning_rate 1e-4 \ --save_interval 5 \ --do_eval参数解释epochs 100总共训练100轮batch_size 2每次处理2个样本根据显卡内存调整learning_rate 1e-4学习率控制每次更新的步长save_interval 5每5轮保存一次模型do_eval训练过程中自动评估效果训练时间取决于你的显卡性能通常需要几个小时。4.4 实时查看训练进度训练过程中可以实时查看损失变化visualdl --logdir ./output/ --host 0.0.0.0然后通过端口转发在本地浏览器查看ssh -p 31264 -L 0.0.0.0:8888:localhost:8040 rootgpu-09rxs0pcu2.ssh.gpu.csdn.net在浏览器打开http://localhost:8888就能看到漂亮的曲线图包括损失下降情况和准确率提升情况。4.5 导出训练好的模型训练完成后把模型导出为部署格式rm -rf /root/workspace/nuscenes_release_model mkdir -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导出的模型可以直接用于推理速度更快。4.6 查看实际检测效果最后来看看模型的实际表现python tools/demo.py /root/workspace/nuscenes/ /root/workspace/nuscenes_release_model nuscenes程序会生成带检测框的图片你能看到模型识别出的车辆、行人等物体以及它们在鸟瞰图中的位置。5. 进阶内容在其他数据集上训练5.1 处理XTREME1数据集如果你想挑战更复杂的数据可以试试XTREME1数据集cd /usr/local/Paddle3D rm /root/workspace/xtreme1_nuscenes_data/petr_nuscenes_annotation_* -f python3 tools/create_petr_nus_infos_from_xtreme1.py /root/workspace/xtreme1_nuscenes_data/这个数据集包含更复杂的天气和路况训练难度更大。5.2 训练和导出训练命令和之前类似只是换了个配置文件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/ \ --epochs 100 \ --batch_size 2 \ --log_interval 10 \ --learning_rate 1e-4 \ --save_interval 5 \ --do_eval导出和演示的步骤也基本相同。6. PETRV2模型原理简单讲解6.1 什么是BEV感知BEVBirds Eye View就是像鸟一样从上方看路况。传统方法需要把多个摄像头的图像拼成一个顶视图而PETRV2直接用神经网络学习这种转换。6.2 PETRV2的创新点PETRV2的主要改进有两个时序建模不仅看当前帧还结合前面几帧的信息让模型理解物体的运动多任务学习一个模型同时完成3D检测、地图分割等多个任务这样既提高了准确性又降低了计算成本。6.3 工作流程简述输入6个摄像头的图像提取每张图片的特征把这些特征转换到鸟瞰图视角在鸟瞰图上检测物体和分割道路输出3D检测框和分割结果7. 总结与建议7.1 训练经验分享通过这个教程你应该已经成功训练了自己的BEV感知模型。一些实用建议第一次训练先用小数据集如mini版快速验证流程关注损失曲线如果长时间不下降可以调整学习率定期保存模型避免训练中断前功尽弃7.2 常见问题处理如果遇到问题可以检查数据路径是否正确显卡内存是否足够不够就减小batch_size依赖包版本是否兼容7.3 下一步学习方向想要进一步提升可以在完整数据集上训练追求更好的效果尝试不同的模型结构和参数学习模型部署到实际设备的方法获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。