IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> apollo7.0 初探------激光雷达感知测试 -> 正文阅读

[人工智能]apollo7.0 初探------激光雷达感知测试

之前一直有看过apollo的程序,一般都是参考某个模块直接去看代码,并没有完整的安装跑一下官方的程序,趁假期简单安装熟悉了一下基于cyber的apollo7.0, 准备后面完整的调试一下感知各个模块。

我用的笔记本环境:Ubuntu18.04 cuda10.2 nvidia-driver 470.103.01 ,GPU GTX 1650的,只有4个G显存,有点卡,勉强能跑起来, 主要就是参考apollo github官网的文档, 大部分没什么问题,简单说一下我遇到的需要注意的几个小问题。

1. 环境没什么问题,安装nvidia-driver,docker,nvidia-docker2

2. github下载安装包找到tag7.0, 有不到2GB. 网络不好的话,可以去gitee.

3. 创建docker 容器的时候会拉docker镜像,有十多个G, 最好可以科**学**上**网。

REPOSITORY           TAG                                                              IMAGE ID       CREATED         SIZE
apolloauto/apollo    dev-x86_64-18.04-20210914_1336                                   c8ecf0a3cd6b   7 months ago    13.7GB
apolloauto/apollo    smoke_volume-yolo_obstacle_detection_model-x86_64-latest         269c6b1dc031   9 months ago    80.1MB
apolloauto/apollo    map_volume-sunnyvale_big_loop-latest                             e7b1a71d5b9d   17 months ago   440MB
apolloauto/apollo    yolov4_volume-emergency_detection_model-x86_64-latest            e3e249ea7a8a   19 months ago   264MB
apolloauto/apollo    faster_rcnn_volume-traffic_light_detection_model-x86_64-latest   58537bb25841   19 months ago   170MB
apolloauto/apollo    data_volume-audio_model-x86_64-latest                            17cb2a72a392   20 months ago   194MB
apolloauto/apollo    map_volume-sunnyvale_with_two_offices-latest                     93a347cea6a0   2 years ago     509MB
apolloauto/apollo    map_volume-san_mateo-latest                                      48cd73de58ba   2 years ago     202MB
apolloauto/apollo    map_volume-sunnyvale_loop-latest                                 36dc0d1c2551   4 years ago     906MB

4. apollo 7.0有个zlib的bug, 进入容器编译build,zlib会报错,在之后已经修复好了,(参考: ZLIB: version bug fix (#14387) · ApolloAuto/apollo@5e0308b · GitHub)在下载后手动修改WORKSPACE添加如下

http_archive(
    name = "zlib",
    build_file = "@com_google_protobuf//:third_party/zlib.BUILD",
    sha256 = "629380c90a77b964d896ed37163f5c3a34f6e6d897311f1df2a7016355c45eff",
    strip_prefix = "zlib-1.2.11",
    urls = ["https://github.com/madler/zlib/archive/v1.2.11.tar.gz"],
)

5. build编译会产生20G,所以提前要准备至少25G空间,免得编译失败。

(05:23:19) INFO: Elapsed time: 587.447s, Critical Path: 55.92s
(05:23:19) INFO: 8582 processes: 6403 internal, 2179 local.
(05:23:19) INFO: Build completed successfully, 8582 total actions
==============================================
[ OK ] Done building apollo. Enjoy!
==============================================
[sun@in-dev-docker:/apollo]$ 

(base) sun@sun-Desktop:~/apollo-7.0.0$ du -h --max-depth=1
844K  ./docker
20G  ./.cache
3.9M  ./third_party
305M  ./docs
16K  ./data
4.6M  ./cyber
20K  ./.github
488K  ./scripts
28K  ./.teamcity
1.6G  ./modules
144K  ./tools
22G  .

6. 利用vscode debug调试 参考

开发者说|如何用VSCODE调试Apollo

bash apollo.sh build_dbg

这种编译方式会产生50多G文件,编译前请确保磁盘空间足够!!!我笔记本?i7-9750H满负荷编译了接近40分钟。

?下面命令不要随便执行,这是创建容器的,会把之前的容器删掉,不过再次build会比较快,因为有缓存

bash docker/scripts/dev_start.sh

创建一次容器,后面用就docker start xxx,然后./dev_into.sh 进入容器即可。

7. 用vscode attach running container后,修改launch.json 进行debug需要权限,用sudo vim launch.json修改即可.

8. 参考使用Dreamview调试Apollo激光雷达感知实践 跑了一下:Apolloicon-default.png?t=M3K6https://apollo.auto/document_cn.html?target=/Apollo-Homepage-Document/Apollo_Doc_CN_6_0/

?教程中少写了一步, 需要启动tranform模块,在camera感知里面写了。不然的话障碍物目标不再车辆周围,会固定显示在一个位置.

cyber_launch start /apollo/modules/transform/launch/static_transform.launch

担心笔记本全跑带不动,仅启动激光雷达部分,用下面命令:

mainboard -d modules/perception/production/dag/dag_streaming_perception_lidar.dag 

启动激光雷达模块会显示一些报错信息,没什么关系,程序一样可以跑起来

E0504 22:04:03.934579 17798 hdmap_common.cc:158] [map]lane[id = id: "11267dup0_1_-1"
]. sampled_right_width_[0.961276] is too small. It should be larger than half vehicle width[1.05].
E0504 22:04:03.934620 17798 hdmap_common.cc:158] [map]lane[id = id: "11267dup0_1_-1"
]. sampled_right_width_[0.976227] is too small. It should be larger than half vehicle width[1.05].
E0504 22:04:03.934665 17798 hdmap_common.cc:158] [map]lane[id = id: "11267dup0_1_-1"
]. sampled_right_width_[0.991181] is too small. It should be larger than half vehicle width[1.05].
E0504 22:04:03.934710 17798 hdmap_common.cc:158] [map]lane[id = id: "11267dup0_1_-1"
]. sampled_right_width_[1.00614] is too small. It should be larger than half vehicle width[1.05].
E0504 22:04:03.934754 17798 hdmap_common.cc:158] [map]lane[id = id: "11267dup0_1_-1"
]. sampled_right_width_[1.0211] is too small. It should be larger than half vehicle width[1.05].
E0504 22:04:03.934801 17798 hdmap_common.cc:158] [map]lane[id = id: "11267dup0_1_-1"
]. sampled_right_width_[1.03606] is too small. It should be larger than half vehicle width[1.05].

9. 启动dreamview观察检测结果,

可以切换到Layer Menu 下Map视图,查看鸟看障碍物信息。

在我笔记本显存4G一共占了2.3G吧。

bash scripts/bootstrap.sh

效果如下:

?

?10. 查看输出信息

tail -f /apollo/data/log/mainboard.INFO
?

如下可以看到障碍物输出消息在哪个文件,慢慢根据自己需求调试各个模块了。

?

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-05-06 11:03:14  更:2022-05-06 11:05:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 7:22:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码