自动驾驶—CARLA仿真(21)manual_control_carsim demo

📌 测试用例

PythonAPI/examples/manual_control_carsim.py

功能完备的手动驾驶控制客户端(Manual Control Client),提供:

  • 完整的车辆手动控制(油门、刹车、转向、灯光等)
  • 多传感器支持(RGB、深度、语义分割、LiDAR、雷达、DVS)
  • 高级仿真功能(天气切换、地图图层控制、录制/回放)
  • 实时 HUD 信息显示

适用于 交互式驾驶测试、传感器调试、教学演示、数据采集

manual_control_carsim.py与manual_control.py 基本一致,不同点在于该测试用例支持carsim 物理仿真,以实现更真实地模拟车辆

PythonAPI/examples/manual_control_chrono.py功能如manual_control_carsim.py,不过manual_control_chrono.py用例支持 三种物理引擎:

  1. PhysX(默认)
  2. CarSim(商用高保真)
  3. Chrono(开源多体动力学)
  • Ctrl + K:切换 CarSim
  • Ctrl + O:切换 Chrono

通过键盘控制操作不太灵活:

carla_manual_control_carsim


🔑 主要模块解析

1. World 类:仿真世界管理器
  • 核心职责
    • 管理主车(Player)的生成与重生(Backspace 键)
    • 初始化并管理 5 类传感器
      • CollisionSensor(碰撞检测)
      • LaneInvasionSensor(车道入侵)
      • GnssSensor(GPS 定位)
      • IMUSensor(惯性测量)
      • RadarSensor(毫米波雷达可视化)
    • 控制 天气预设C/Shift+C
    • 管理 地图图层 (建筑、植被、路灯等,V/B 键)

✅ 是整个仿真环境的"中枢控制器"。


2. KeyboardControl 类:全功能车辆控制
  • 基础控制

    按键 功能
    W/S 油门/刹车
    A/D 左/右转向
    Q 切换倒挡
    Space 手刹
    M + ,/. 手动换挡
  • 灯光系统

    • L:位置灯 → 近光灯 → 雾灯 → 关闭
    • Shift+L:开启远光灯
    • Z/X:左/右转向灯
    • I:车内灯
    • 自动灯光:刹车时亮刹车灯,倒车时亮倒车灯
  • 高级功能

    • Ctrl+W:启用 60 km/h 定速巡航
    • P:切换自动驾驶(Autopilot)
    • Backspace:重生车辆(保留传感器配置)

✅ 实现了 真实车辆的完整人机交互逻辑


3. HUD 类:专业级抬头显示器

实时显示 15+ 项关键信息

  • 性能指标:服务器/客户端 FPS
  • 车辆状态:速度、航向角、加速度、陀螺仪
  • 定位数据:GNSS 坐标、高度、罗盘方向
  • 控制参数:油门/刹车/转向量(进度条可视化)
  • 环境感知
    • 碰撞历史强度曲线(200 帧)
    • 周围车辆列表(距离排序,最远 200 米)

💡 通过 颜色编码 直观展示车辆状态(如红色=急刹,绿色=加速)。


4. 传感器系统(CameraManager)

支持 9 种传感器模式 ,通过 ````` 或 N 键切换:

传感器类型 特性
RGB 摄像头 支持畸变模拟(色差、晕影)
深度摄像头 3 种深度着色模式(Raw/Gray/Logarithmic)
语义分割 CityScapes 调色板
LiDAR 点云投影为 2D 图像
DVS 动态视觉传感器(事件相机)
  • 5 种预设视角Tab 键切换):
    1. 车后跟随(第三人称)
    2. 车内视角
    3. 侧前方
    4. 高空俯视
    5. 左侧后视镜

✅ 提供 多模态感知数据 的实时可视化。


5. 雷达可视化(RadarSensor)
  • 创新实现

    python 复制代码
    self.debug.draw_point(radar_data.transform.location + fw_vec, color=carla.Color(r,g,b))
  • 速度着色

    • 红色:远离车辆(正速度)
    • 蓝色:接近车辆(负速度)
    • 绿色:横向移动(零径向速度)
  • 动态点云:每个点存活 0.06 秒,形成运动轨迹

📡 这是 CARLA 唯一官方提供的雷达可视化方案


6. 录制与回放系统
  • 图像录制R 键保存传感器图像到 _out/
  • 仿真录制Ctrl+R 录制完整仿真到 manual_recording.log
  • 回放控制
    • Ctrl+P:启动回放
    • Ctrl+ +/-:调整回放起点(±1/10 秒)

✅ 支持 实验可复现性数据集生成


7. 地图图层控制
  • 11 类图层

    python 复制代码
    [Buildings, Foliage, ParkedVehicles, StreetLights, Walls, ...]
  • 操作方式

    • V / Shift+V:切换图层类型
    • B / Shift+B:加载/卸载当前图层

🌆 允许 动态调整场景复杂度(如关闭建筑物简化测试)。


✅ 总结

该脚本是 CARLA 最全面的手动驾驶示例,集成了:

  1. 车辆动力学控制(标准 + 灯光系统)
  2. 多传感器融合(视觉、激光雷达、雷达、DVS)
  3. 环境动态调控(天气、地图图层)
  4. 数据记录与回放
  5. 实时状态监控
相关推荐
童话名剑14 小时前
训练词嵌入(吴恩达深度学习笔记)
人工智能·深度学习·word2vec·词嵌入·负采样·嵌入矩阵·glove算法
桂花很香,旭很美14 小时前
智能体技术架构:从分类、选型到落地
人工智能·架构
HelloWorld__来都来了15 小时前
2026.1.30 本周学术科研热点TOP5
人工智能·科研
aihuangwu15 小时前
豆包图表怎么导出
人工智能·ai·deepseek·ds随心转
YMWM_16 小时前
深度学习中模型的推理和训练
人工智能·深度学习
中二病码农不会遇见C++学姐16 小时前
文明6-mod制作-游戏素材AI生成记录
人工智能·游戏
九尾狐ai16 小时前
从九尾狐AI案例拆解企业AI培训的技术实现与降本增效架构
人工智能
2501_9481201516 小时前
基于RFID技术的固定资产管理软件系统的设计与开发
人工智能·区块链
(; ̄ェ ̄)。16 小时前
机器学习入门(十五)集成学习,Bagging,Boosting,Voting,Stacking,随机森林,Adaboost
人工智能·机器学习·集成学习
杀生丸学AI16 小时前
【物理重建】PPISP :辐射场重建中光度变化的物理合理补偿与控制
人工智能·大模型·aigc·三维重建·世界模型·逆渲染