【自动驾驶】PETR 环境安装与测试

1.环境安装

该工程依赖MMCV, MMDetection, MMDetection3d,MMSegmentation

Install MMCV

pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/{cu_version}/{torch_version}/index.html

examples:

pip install mmcv-full==1.4.0 -f https://download.openmmlab.com/mmcv/dist/cu111/torch1.9.0/index.html

Install MMDetection

git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
git checkout v2.24.1 
sudo pip install -r requirements/build.txt
sudo python3 setup.py develop
cd ..

Install MMSegmentation.

sudo pip install mmsegmentation==0.20.2

Install MMDetection3D

git clone  https://github.com/open-mmlab/mmdetection3d.git
cd mmdetection3d
git checkout v0.17.1 
sudo pip install -r requirements/build.txt
sudo python3 setup.py develop
cd ..

Install PETR

git clone https://github.com/megvii-research/PETR.git
cd PETR
mkdir ckpts
mkdir data
ln -s {mmdetection3d_path} ./mmdetection3d
ln -s {nuscenes_path} ./data/nuscenes

examples

git clone https://github.com/megvii-research/PETR.git
cd PETR
mkdir ckpts ###pretrain weights
mkdir data ###dataset
ln -s ../mmdetection3d ./mmdetection3d
ln -s /data/Dataset/nuScenes ./data/nuscenes

问题

1.如果git 下载不了,就找到相应的版本翻墙下载,在放在目录,本地编译
2.中间有安装失败的情况就换个镜像源,清华,阿里,豆瓣都试试;遇到某个库安装失败,同样试试换个镜像源。

2.数据准备

先下载 nuScenes数据备用

目标检测数据

python tools/create_data.py nuscenes --root-path ./data/nuscenes --out-dir ./data/nuscenes --extra-tag nuscenes

分割数据

python tools/create_data.py nuscenes --root-path ./data/nuscenes --out-dir ./data/nuscenes --extra-tag nuscenes

问题

脚本运行出错:

  File "/opt/conda/envs/PETR/lib/python3.6/site-packages/shapely/geos.py", line 94, in <module>_lgeos = CDLL(os.path.join(sys.prefix, 'lib', 'libgeos_c.so'))File "/opt/conda/envs/PETR/lib/python3.6/ctypes/__init__.py", line 348, in __init__self._handle = _dlopen(self._name, mode)
OSError: /opt/conda/envs/PETR/lib/libgeos_c.so: cannot open shared object file: No such file or directory

解决

(PETR) root@0943aeca2165:/data/work/PETR/tools# find / -name libgeos*
/usr/share/doc/libgeos-dev
/usr/share/doc/libgeos-c1v5
/usr/share/doc/libgeos-3.5.0
/usr/lib/x86_64-linux-gnu/libgeos_c.so
/usr/lib/x86_64-linux-gnu/libgeos_c.so.1
/usr/lib/x86_64-linux-gnu/libgeos_c.a
/usr/lib/x86_64-linux-gnu/libgeos-3.5.0.so
/usr/lib/x86_64-linux-gnu/libgeos_c.so.1.9.0
/opt/conda/lib/python3.6/site-packages/shapely/.libs/libgeos--no-undefined-b94097bf.so
/opt/conda/lib/python3.6/site-packages/shapely/.libs/libgeos_c-a68605fd.so.1.13.1
/var/lib/dpkg/info/libgeos-dev.md5sums
/var/lib/dpkg/info/libgeos-3.5.0.list
/var/lib/dpkg/info/libgeos-3.5.0.symbols
/var/lib/dpkg/info/libgeos-c1v5.triggers
/var/lib/dpkg/info/libgeos-c1v5.shlibs
/var/lib/dpkg/info/libgeos-3.5.0.triggers
/var/lib/dpkg/info/libgeos-dev.list
/var/lib/dpkg/info/libgeos-c1v5.list
/var/lib/dpkg/info/libgeos-c1v5.md5sums
/var/lib/dpkg/info/libgeos-3.5.0.shlibs
/var/lib/dpkg/info/libgeos-3.5.0.md5sums
/var/lib/dpkg/info/libgeos-c1v5.symbols
(PETR) root@0943aeca2165:/data/work/PETR/tools# ln -s /usr/lib/x86_64-linux-gnu/libgeos_c.so  /opt/conda/envs/PETR/lib/libgeos_c.so

3.可视化测试

./tools/dist_test.sh projects/configs/petr/petr_vovnet_gridmask_p4_800x320.py ./ckpts/PETR-vov-p4-800x320/epoch24.pth 8 --out work_dirs/pp-nus/results_eval.pkl --format-only --eval-options 'jsonfile_prefix=work_dirs/pp-nus/results_eval'
python3 tools/visualize.py

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/132957.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小程序实现一个 倒计时组件

小程序实现一个 倒计时组件 需求背景 要做一个倒计时&#xff0c;可能是天级别&#xff0c;也可能是日级别&#xff0c;时级别&#xff0c;而且每个有效订单都要用&#xff0c;就做成组件了 效果图 需求分析 需要一个未来的时间戳&#xff0c;或者在服务度直接下发一个未来…

【视觉SLAM入门】7.3.后端优化 基于KF/EKF和基于BA图优化的后端,推导及举例分析

"时间倾诉我的故事" 1. 理论推导2. 主流解法3. 用EKF估计状态3.1. 基于EKF代表解法的感悟 4. 用BA法估计状态4.1 构建最小二乘问题4.2 求解BA推导4.3 H的稀疏结构4.4 根据H稀疏性求解4.5 鲁棒核函数4.6 编程注意 5.总结 引入&#xff1a; 前端里程计能给出一个短时间…

MySQL优化第二篇

MySQL优化第二篇 性能分析小表驱动大表慢查询日志日志分析工具mysqldumpslow Show Profile进行SQL分析&#xff08;重中之重&#xff09; 七种JOIN 1、inner join &#xff1a;可以简写为join&#xff0c;表示的是交集&#xff0c;也就是两张表的共同数据 sql语句&#xff1a…

用动态ip登录账号的风险高不高?

使用动态ip登录账号在一定程度上提供了额外的安全保障和匿名性&#xff0c;但与此同时也存在一些风险和风控挑战。本文将解密使用动态ip登录账号的真相&#xff0c;明确安全与风险的并存之道。 1、增强隐私保护&#xff1a; 使用动态ip登录账号可以隐藏您的真实IP地址&#xff…

21 Spring Boot整合Redis

目录 一、Redis简介 二、创建springboot整合redis工程 三、添加依赖 四、配置Yml 五、创建Redis配置类 六、创建Redis工具类&#xff0c;封装Redis的api 七、操作Redis 八、验证 一、Redis简介 简单来说 Redis 就是一个使用 C 语言开发的数据库&#xff0c;不过与传统…

无涯教程-JavaScript - OR函数

描述 如果任何参数为TRUE,则OR函数返回TRUE&#xff1b;如果所有参数为FALSE,则返回FALSE。 语法 OR (logical1, [logical2], ...) 争论 Argument描述Required/Optionallogical1 您要测试的1到255个条件可以是TRUE或FALSE。 您要测试的1到255个条件可以是TRUE或FALSE。 Req…

JDK API文档地址(中文和英文)

JDK1.6 JDK 1.6 中文手册 JDK1.8 Java 8 中文版 - 在线API手册 - 码工具 Java 官方文档 |官方教程|Java 官方文档 API中文手册|Java 官方文档参考文档_w3cschool 网上还有很多百度网盘中也有 JDK17 https://doc.qzxdp.cn/jdk/17/zh/api/index.html 英文文档 所有版本 …

Unity 性能优化之Shader分析处理函数ShaderUtil.HasProceduralInstancing: 深入解析与实用案例

Unity 性能优化之Shader分析处理函数ShaderUtil.HasProceduralInstancing: 深入解析与实用案例 点击封面跳转到Unity国际版下载页面 简介 在Unity中&#xff0c;性能优化是游戏开发过程中非常重要的一环。其中&#xff0c;Shader的优化对于游戏的性能提升起着至关重要的作用。…

学习视觉SLAM需要会些什么?

前言 SLAM是现阶段很多研究生的研究方向&#xff0c;我也是作为一个即将步入视觉SLAM的研究生&#xff0c;网上对于SLAM的介绍很多&#xff0c;但很少有人完整系统的告诉你学习视觉SLAM该有那些基础&#xff0c;那么此贴将告诉你学习SLAM你要有那些方面的基础。 文章目录 前言…

Java 华为真题-选修课

需求&#xff1a; 现有两门选修课&#xff0c;每门选修课都有一部分学生选修&#xff0c;每个学生都有选修课的成绩&#xff0c;需要你找出同时选修了两门选修课的学生&#xff0c;先按照班级进行划分&#xff0c;班级编号小的先输出&#xff0c;每个班级按照两门选修课成绩和的…

计算机网络TCP篇之流量控制

计算机网络TCP篇之流量控制 今天谈一谈我对于tcp流量控制的看法 在网络拓扑中如果发送方节点的发送速率大于接受方节点的接受速率&#xff0c;数据会不断在接受方的缓冲区累积&#xff0c;直到接受方的缓冲区满的时候&#xff0c;发送方继续发送数据&#xff0c;这时候接受方无…

文件上传漏洞~操作手册

目录 上传文件一般过滤方式 客服端校验 服务端校验 黑白名单机制 常规文件上传漏洞绕过 客户端绕过 1.游览器禁用JavaScript 2.正常burp suite抓包改包 服务端绕过 1.Content-Type绕过 2.黑名单绕过 1&#xff09;命名规则绕过 2&#xff09;大小写绕过 3&#x…

怎么用excel管理固定资产

在当今的数字时代&#xff0c;我们已经习惯了使用各种电子工具来提高我们的生产力。其中&#xff0c;Excel无疑是一个强大的工具&#xff0c;它不仅可以帮助我们处理数据&#xff0c;还可以用来进行复杂的计算和分析。然而&#xff0c;你可能不知道的是&#xff0c;Excel也可以…

优思学院|什么是精益项目管理?

正确地使用精益思想和技术是可以减少项目中的浪费、提高客户满意度&#xff0c;并提高项目的利润率。 在现实世界中&#xff0c;项目经理的工作充满了挑战。他们不仅需要专注于产品和团队&#xff0c;还必须确保客户的满意度。同时&#xff0c;他们还必须与矩阵组织打交道&…

异步FIFO设计

1 FIFO简介 FIFO的本质是RAM&#xff0c;具有先进先出的特性。 FIFO的基本使用原则&#xff1a;空时不能读&#xff0c;满时不能写 FIFO的两个重要参数&#xff1a;宽度和深度 FIFO的两种类型&#xff1a; 同步FIFO&#xff1a;读写时钟相同&#xff0c;通常用来做数据缓存…

本地录像视频文件如何推送到视频监控平台EasyCVR进行AI视频智能分析?

安防监控平台EasyCVR支持多协议、多类型设备接入&#xff0c;可以实现多现场的前端摄像头等设备统一集中接入与视频汇聚管理&#xff0c;并能进行视频高清监控、录像、云存储与磁盘阵列存储、检索与回放、级联共享等视频功能。视频汇聚平台既具备传统安防监控、视频监控的视频能…

【算法】前缀和与差分

大家好&#xff01;今天我们来学习前缀和与差分算法。 目录 1. 一维前缀和 1.1 定义 1.2 计算方法 1.3 作用 1.4 适用场景 1.5 模板题 1.6 总结 2. 二维前缀和 2.1 定义 2.2 计算方法 2.3 模板题 2.4 总结 3. 一维差分 3.1 定义 3.2 差分数组 3.3 差分标记 3…

什么是JavaScript中的严格模式(strict mode)?应用场景是什么?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 严格模式&#xff08;Strict Mode&#xff09;&#xff1a;⭐ 使用场景⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&…

SpringMVC多文件上传

文章目录 一、文件上传1.1 导入pom依赖1.2 配置文件上传解析器1.3 设置文件上传表单1.4 实现文件上传 二、文件下载三、多文件上传四、JRebel的使用 一、文件上传 1.1 导入pom依赖 <commons-fileupload.version>1.3.3</commons-fileupload.version><dependency…

高德地图实现-微信小程序地图导航

效果图&#xff1a; 一、准备阶段 1、在高德开放平台注册成为开发者2、申请开发者密钥&#xff08;key&#xff09;。3、下载并解压高德地图微信小程序SDK 高德开放平台&#xff1a; 注册账号(https://lbs.amap.com/)) 申请小程序应用的 key 应用管理(https://console.ama…