第一章:课程介绍与环境搭建
大家好,我是你们这门课的主讲。做自动驾驶仿真这些年,我踩过不少坑,也积累了一些经验。今天咱们就从最基础的环境搭建开始聊起。
说实话,CARLA这个仿真器,我第一次接触时也觉得挺复杂的。但用顺手之后,你会发现它真的强大。咱们这门课的目标很明确——让你能熟练地用CARLA做轨迹回放和数据录制。说白了,就是让你能驾驭这个工具,而不是被它折腾。
本章核心目标:完成CARLA 0.9.14的安装与编译,配置好Python API环境,为后续所有实战内容打下基础。
1.1 CARLA仿真器概述
CARLA是什么?简单说,它是一个开源的自动驾驶仿真平台。我2019年第一次用它做项目时,版本才0.8.x,功能远没现在这么完善。但即便如此,它已经能帮我解决很多真实路测解决不了的问题。
它的核心优势有三点:
- 开源免费——不像某些商业软件,动辄几十万授权费
- 灵活可扩展——你可以自定义传感器、地图、车辆模型
- 社区活跃——遇到问题,基本都能在GitHub上找到答案
我个人习惯把CARLA看作一个「虚拟试验场」。你想想看,在真实道路上测试自动驾驶算法,成本高、风险大、场景覆盖有限。但在CARLA里,你可以模拟各种极端天气、复杂交通流、甚至传感器故障。嗯,这就是它的价值所在。
1.2 课程目标与学习路径
咱们这门课一共30章,从环境搭建到高级应用,层层递进。我把它分成三个阶段:
| 阶段 | 章节 | 核心内容 |
|---|---|---|
| 基础篇 | 1-10章 | 环境搭建、API基础、车辆控制、传感器配置 |
| 进阶篇 | 11-20章 | 轨迹回放、数据录制、场景构建、多车协同 |
| 实战篇 | 21-30章 | 完整项目实战、性能优化、部署技巧 |
你可能会问:「我零基础能跟上吗?」我的回答是:只要你懂Python基础,就没问题。我在项目中带过不少新人,他们最怕的就是环境搭不起来。所以咱们第一章就把这个坎迈过去。
学习建议:每章结束后,花15分钟做个小练习。别光看不动手,仿真这东西,动手才是王道。
1.3 Windows/Linux双系统环境搭建
说到环境搭建,我得先吐槽一句:CARLA在Windows上虽然能用,但性能和稳定性确实不如Linux。我个人强烈建议用Ubuntu 20.04或22.04。如果你只有Windows机器,也别慌——装个双系统或者WSL2都能搞定。
这里我给出两种方案:
方案一:原生Ubuntu(推荐)
- 下载Ubuntu 20.04 LTS镜像
- 制作启动U盘(推荐用Rufus或balenaEtcher)
- 安装时选择「与Windows共存」——这样就是双系统了
- 安装完成后,更新系统:
sudo apt update && sudo apt upgrade -y
方案二:Windows + WSL2
- 启用WSL2功能(PowerShell管理员运行:
wsl --install) - 安装Ubuntu 20.04发行版
- 配置WSL2的GPU加速(需要Windows 11或Windows 10 21H2+)
注意:WSL2下运行CARLA,图形界面性能会打折扣。如果你要做实时渲染或高帧率录制,还是建议用原生Linux。
我曾经帮一个学员远程调试环境,他用的WSL2,结果CARLA启动后画面卡成PPT。折腾了两小时,最后换了双系统,问题秒解。所以,别在环境上省事,该装双系统就装。
1.4 CARLA 0.9.14安装与编译
好,现在咱们进入正题。CARLA 0.9.14是目前比较稳定的版本,我推荐大家用这个版本。为什么不是最新的?因为新版本往往有兼容性问题,咱们做课程,稳定第一。
安装方式有两种:
方式一:直接下载预编译包(省事)
# 下载CARLA 0.9.14
wget https://carla-releases.s3.eu-west-3.amazonaws.com/Linux/CARLA_0.9.14.tar.gz
# 解压
tar -xzf CARLA_0.9.14.tar.gz
# 进入目录
cd CARLA_0.9.14
# 启动CARLA
./CarlaUE4.sh
这种方式最快,5分钟就能跑起来。但缺点是不能修改源码。
方式二:源码编译(灵活)
如果你需要自定义功能,比如修改传感器模型、添加新地图,那就得走源码编译。嗯,这个过程稍微复杂点,但值得。
# 克隆源码
git clone https://github.com/carla-simulator/carla.git
cd carla
git checkout 0.9.14
# 安装依赖
sudo apt-get install build-essential clang-8 lld-8 g++-7 cmake ninja-build libvulkan1 python python-pip python3 python3-pip libpng16-dev libtiff5-dev libjpeg-dev tzdata sed curl unzip autoconf libtool rsync
# 编译CARLA
make setup
make launch
编译时间取决于你的机器配置。我自己的机器是i7-12700 + 32GB内存 + RTX 3060,大概需要40分钟。如果你用笔记本,可能得1-2小时。趁这个时间,泡杯咖啡,看看文档,不亏。
小技巧:编译时加上-j4参数可以加速,比如make launch -j4。但别设太大,否则CPU会过热降频,反而更慢。
1.5 Python API环境配置
CARLA装好了,接下来配置Python API。这是咱们后续所有课程的基础。
首先,确认你的Python版本:
python3 --version
建议用Python 3.8或3.9。3.10以上版本可能会有兼容性问题,我踩过这个坑。
然后安装CARLA的Python包:
# 进入CARLA目录
cd CARLA_0.9.14/PythonAPI/carla/dist
# 安装carla包
pip3 install carla-0.9.14-cp38-cp38-linux_x86_64.whl
注意:whl文件名中的cp38表示Python 3.8版本。如果你用的是Python 3.9,就选cp39的版本。
安装完成后,验证一下:
python3 -c "import carla; print(carla.__version__)"
如果输出0.9.14,恭喜你,环境配置成功!
常见问题:如果提示No module named 'carla',多半是Python版本不匹配,或者whl文件路径不对。检查一下,重新安装即可。
1.6 知识体系总览
为了让你更直观地理解本章的知识结构,我画了一张图:
这张图把本章的五个核心模块串起来了。从概述到实战,每一步都是环环相扣的。你跟着这个节奏走,不会迷路。
1.7 本章小结
好,咱们来捋一捋今天的内容:
- 了解了CARLA是什么,以及它为什么值得学
- 明确了课程的三阶段学习路径
- 掌握了双系统环境的搭建方法
- 完成了CARLA 0.9.14的安装(两种方式)
- 配置好了Python API环境
说实话,环境搭建这一步最磨人。但只要你按我的步骤来,应该不会出大问题。如果卡住了,别硬扛——去CARLA的GitHub Issues里搜一搜,或者问问社区。我当年就是这么过来的。
课后练习:启动CARLA,运行PythonAPI/examples/automatic_control.py,看看车辆能不能自动行驶。如果能,说明环境完全OK。
下一章,咱们开始玩真的——用Python控制CARLA里的车辆。到时候你会看到,一行代码就能让车动起来,那种感觉,嗯,挺爽的。