news 2026/8/25 5:22:56

Carla仿真系列:10_Carla 双目障碍物测距,视差图还原真实距离

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Carla仿真系列:10_Carla 双目障碍物测距,视差图还原真实距离

第9期做了单目测距——只有一路相机,靠"推断"距离。这期升级到双目相机——用两个相机模拟人眼的视差,通过三角测量直接算出距离,精度比单目高一个量级。

1 为什么双目能测距

人眼为什么能判断远近?因为两只眼睛看到的角度不同。

左眼看到的角度 ╲ ╲ 物体 右眼看到的角度 ╱ 两眼的角度差 = 视差 物体越近 → 视差越大 物体越远 → 视差越小

双目相机模仿这个原理:两个相机相隔一定距离(基线),同时拍下左右两幅图,通过匹配对应点、计算视差,就能算出距离。

2 双目相机配置

在 Carla 的 Tesla 上添加左右两个相机,通过修改ros_bridge_ws/src/carla-ros-bridge/carla_spawn_objects/config/objects.json文件添加相机模拟真实双目系统:

{"type":"sensor.camera.rgb","id":"rgb_stereo_left","spawn_point":{"x":2.4,"y":0.2,"z":1.0,"roll":0.0,"pitch":0.0,"yaw":0.0},"image_size_x":640,"image_size_y":480,"fov":90.0},{"type":"sensor.camera.rgb","id":"rgb_stereo_right","spawn_point":{"x":2.4,"y":-0.2,"z":1.0,"roll":0.0,"pitch":0.0,"yaw":0.0},"image_size_x":640,"image_size_y":480,"fov":90.0}

关键参数:

参数说明
基线0.4m左右相机X方向距离(y相差0.4)
FOV90°保证共同视野
高度1.0m前挡风玻璃位置

3 双目测距原理

3.1 三角测量公式

距离 Z = (f × B) / d f = 相机焦距(内参) B = 双目基线(0.4m) d = 视差(左右图像对应点的水平差)

物体越近 → 视差d越大 → 距离Z越小(反向关系)

3.2 完整流程

左右相机同时拍摄 ↓ 立体矫正:两幅图像对齐(极线约束) ↓ 立体匹配:找左右图像中的对应点 ↓ 计算视差 d → 视差图 ↓ 深度公式:Z = f·B/d → 深度图 ↓ 反投影 → 3D 点云

3.3 输出结果

输出说明
矫正后的左右图对齐后的立体图像对
视差图每个像素的视差值(颜色越亮=越近)
深度图每个像素的真实距离
3D点云从深度图反投影出三维坐标

4 启动流程

# 终端1-2:启动环境 + Carla UE4# 终端3:启动 ROS Bridge(此时会自动加载双目相机配置)cdcarla_simbashros_bridge.sh# 终端4:双目测距cd/opt/carla_ws/sim_workspace/stereo_distance python stereo_distance_py2.py

运行后可以看到视差图、深度图、矫正后的左右图,以及双目生成的点云。

生成的点云:

5 双目 vs 单目 vs 激光雷达

方案精度成本优点缺点
单目便宜靠推断,误差大
双目中高主动测距,精度不错需要标定、弱纹理匹配差
激光雷达最准

双目的定位:成本适中、精度够用,是"纯视觉方案"里的主流测距方式——很多视觉方案的自动驾驶车都用双目。

10_实现双目障碍物测距

6 下一期

下期主要介绍怎么在carla仿真环境中搭建一个上帝视角可视化监控,整个地图的所有NPC和自车的运动情况实时查看。

7 往期回顾

  • Carla仿真系列:9_Carla 单目障碍物测距,四种方法原理与实测
  • Carla仿真系列:8_相机与激光雷达融合,点云投影到图像
  • Carla仿真系列:7_BEV + 语义分割融合,一张鸟瞰图看懂整个场景
  • Carla仿真系列:6_实时图像语义分割,SegFormer 和 YOLOPv2 实测对比
  • Carla仿真系列:5_Carla 四路相机标定与BEV环视拼接
  • Carla仿真系列:4_在 Carla 的 Tesla 上装 4 路摄像头,并创建网格为环视拼接做准备
  • Carla仿真系列:3_Carla 仿真中跑通 YOLOv8 实时目标检测
  • Carla仿真系列:2_Carla 仿真中批量添加 NPC,让场景动起来
  • Carla仿真系列:1_Carla + ROS 仿真环境从零搭建,跑通完整数据流

如果本文对你有帮助,欢迎点赞、关注、收藏
遇到问题可以评论区留言交流,也欢迎转发给需要的朋友。
开源项目地址放在个人主页简介中,欢迎前往查看。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/25 5:20:50

第18章:FastAPI异步数据库访问与连接池

1. 项目背景 业务场景 第 16 章的任务协作 API 中,数据库访问用的是同步 SQLAlchemy def 端点。当并发量上去后,性能瓶颈暴露了: 订单查询接口在 500 并发下 P95 延迟达到 4200ms,其中 80% 的时间在等待数据库连接。数据库连接…

作者头像 李华
网站建设 2026/8/25 5:20:09

从被动审核到主动风控:构建下一代视频内容安全体系

1. 从“救火队”到“防火墙”:视频内容安全范式的根本性转变如果你在2015年之前从事过视频平台的内容审核工作,那你大概率体验过什么叫“人海战术”和“事后诸葛亮”。那时候,我们面对的是海量的UGC(用户生成内容)&…

作者头像 李华
网站建设 2026/8/25 5:19:37

简历优化全攻略:提升求职成功率的实用技巧

1. 简历问题概述作为职场人士的第一张名片,简历质量直接决定了求职成功率。根据我多年担任面试官和职业咨询师的经验,90%的求职者都会在简历制作上犯各种错误。这些问题看似微小,却可能让你与心仪的工作失之交臂。2. 常见简历问题解析2.1 基础…

作者头像 李华
网站建设 2026/8/25 5:19:22

Java全栈开发工程师面试核心要点与实战策略

1. Java全栈开发工程师面试全景解析作为一位经历过数十场技术面试的Java全栈开发者,我深刻理解面试过程中的技术考察重点与应对策略。全栈开发岗位的特殊性在于,它要求候选人不仅要精通后端Java技术栈,还需要对前端开发、数据库设计、系统架构…

作者头像 李华
网站建设 2026/8/25 5:18:48

腾讯云直播音频审核实战:三种开启方式与避坑指南

1. 项目概述:为什么直播音频审核是刚需?做直播的朋友,尤其是游戏、秀场、电商带货这类UGC内容密集的领域,应该都遇到过类似的头疼事:主播一个不留神说了句不该说的,或者连麦的观众突然“口吐芬芳”&#xf…

作者头像 李华
网站建设 2026/8/25 5:16:57

2026固原工程建筑材料检测排名 TOP5 CMA 资质提供钢材检测、水泥检测、砂石检测 全覆盖联系方式推荐.txt

固原市区及周边建材检测机构星罗棋布,资质水平却参差不齐。建筑总包单位、建材生产厂家、市政工程项目与装修建设企业选材验收时,稍有不慎便会碰上无资质机构出具的检测报告,这类报告根本无法用于工程报审与竣工验收备案。小编实地走访、逐一…

作者头像 李华