自动驾驶通过红路灯路口卡停

1. 通过红绿灯路口时"卡停止"了,为什么?怎么处理?

这是自动驾驶测试里非常常见的问题,面试里一般是在考你:

  • 能不能快速定位问题
  • 是否理解模块链路
  • 有没有现场处理思路

自动驾驶通过红绿灯,大致链路:

感知 → 红绿灯识别 → 定位 → Prediction → Planning → Control

"卡停止"通常说明 Planning 一直认为"不能走"。

常见原因:

(1)红绿灯状态识别错误

比如:

  • 绿灯识别成红灯
  • 红灯状态没刷新
  • TrafficLight 感知丢帧

表现:

  • UI 上灯状态异常
  • perception topic 数据不更新
  • 车一直停在 stop line 前

排查:

复制代码
cyber_monitor

查看:

  • /apollo/perception/traffic_light
  • /apollo/planning

或者直接:

复制代码
grep traffic_light planning.INFO

解决:

  • 调整交通灯 ROI
  • 检查地图 stop_line 对齐
  • 检查相机标定
  • 检查红绿灯配置文件

stop_line 和 signal boundary,这个其实就属于现场调参。

(2)停止线(stop_line)位置不对

如果停止线:

  • 离路口太远
  • 压到车身前面
  • 和车道不匹配

Planning 会认为:

"还没到允许通行区域"。

结果:

车一直刹停。

解决:

重新检查:

复制代码
signal {
 stop_line {

里的坐标。

尤其:

  • lane overlap
  • junction overlap
  • stop_line 朝向

是否正确。

(3)定位漂移

Localization 漂移后:

系统认为:

  • 车没到停止线
  • 或车已经越线

Planning 会异常。

现象:

  • RViz 里车飘
  • 车道匹配偏移
  • 红灯逻辑异常

解决:

  • 重启 localization
  • 检查 GNSS/IMU
  • 检查地图匹配
(4)障碍物误检导致 Planning 不敢走

有时并不是红绿灯问题。

而是:

感知误识别:

  • 行人
  • 锥桶
  • 静态障碍

Planning 一直 yield。

可以看:

复制代码
grep pedestrian planning.INFO

或者 Dreamview 障碍物显示。

总结

我会先判断是感知、定位还是规划问题。

第一看 traffic light topic 是否正常;

第二看 stop_line 和 HDMap overlap 是否匹配;

第三检查 localization 是否漂移;

第四检查是否存在障碍物误检导致 planning 一直 yield。

现场会结合 Dreamview、日志和 topic 数据快速定位,再决定是调参、修地图还是重启模块。

相关推荐
爱学堂IT分享5 小时前
DeepSeek+SpringAI实战AI家庭医生应用(10章) 完整版
人工智能
QXWZ_IA5 小时前
千寻位置支持哪些卫星系统?北斗GPS多星座解析
人工智能·科技·智能硬件·rtk
小淮AI5 小时前
一个国际家庭在武汉的择校笔记:两份外籍人员子女学校的课程方案比较
大数据·人工智能
deepdata_cn5 小时前
如何从0到1学习AI向量基础
人工智能·向量
H0311169856 小时前
择校参考:枫叶教育 vs 大连美国国际学校,外籍子女学校怎么选
人工智能
刘海东刘海东6 小时前
一条新的人工智能道路(刘海东)一、二、三章
人工智能
xyz_CDragon6 小时前
从 RTL 到 GDSII:人与 AI 协作,用开源 EDA 工具链完成 SHA-256 芯片的 SoC 集成与签核全流程(附完整流程+代码)
人工智能·开源·芯片设计·开源 eda·caravel
咕咕AI学堂6 小时前
检索引擎深度对比:Elasticsearch vs Milvus vs Redis 在 RAG 中的定位
人工智能
Java牛马6 小时前
AI Agent 技术栈梳理(Skill / 蒸馏 / MCP / Harness)
人工智能·ai agent·蒸馏·skill·mcp·harness
IT_陈寒7 小时前
Vue的computed属性把我坑惨了,原来我一直用错姿势
前端·人工智能·后端