无人驾驶 如何使用立体视觉实现距离估计 (无人驾驶如何改变未来出行)

文章编号:36867 资讯动态 2024-11-30 无人驾驶 感知技术 计算机视觉

双语原文链接: Pseudo-LiDAR — Stereo Vision for Self-Driving Cars


无人驾驶:如何使用立体视觉实现距离估计? 在自动化系统中,和计算机视觉已经疯狂地流行起来,无处不在。计算机视觉领域在过去十年中发展迅速,尤其是是障碍物检测方面。

障碍物检测,如YOLO或RetinaNet,提供2D的标注框,该标注框指明了障碍物在图像中的位置。

为了获取每个障碍物的距离,工程师将相机与激光雷达(光探测和测距)传感器融合,使用激光返回深度信息。利用传感器融合技术将计算机视觉和激光雷达的输出融合在一起。

使用激光雷达这种方式存在价格昂贵的问题。而对此,工程师使用的一个有用的技巧是:对齐两个像机,并使用几何原理来计算每个障碍物的距离。我们称这种新设置为 伪激光雷达。

无人驾驶:如何使用立体视觉实现距离估计?

伪激光雷达利用几何原理构造深度图,并将其与物体探测相结合,以获得三维的距离。

如何利用立体视觉实现距离估计?

以下5步伪代码用于获取距离:

1.校准2台照相机(内部和外部校准)

先建立视差图,再建立深度图

然后,深度图将与障碍检测结合在一起,我们将估算边界框像素的深度。本文结尾处有更多内容。

开始吧!

1.内部和外部校准

每个摄像机都需要校准。校准意味着将具有[X,Y,Z]坐标的3D点(世界上)转换为具有[X,Y]坐标的2D像素。

当今的相机使用针孔相机模型。这个想法是使用针孔让少量光线穿过相机,从而获得清晰的图像。

无人驾驶:如何使用立体视觉实现距离估计?

如果图像中间没有障碍物,那么每条光线都会通过,图像会变得模糊。它还使我们能够确定用于变焦和更好清晰度的焦距f。

无人驾驶:如何使用立体视觉实现距离估计?

要校准相机,我们需要将世界坐标转换为通过相机坐标的像素坐标。

无人驾驶:如何使用立体视觉实现距离估计?

固有参数是我们称为K的矩阵。

无人驾驶:如何使用立体视觉实现距离估计?

过相机校准可以找到K矩阵。

通常,我们使用棋盘格和自动来执行它。 当我们这样做时,我们告诉算法棋盘上的一个点(例如:0,0,0)对应于图像中的一个像素(例如:545、343)。

无人驾驶:如何使用立体视觉实现距离估计?

为此,我们必须使用相机拍摄棋盘格的图像,并且在经过一些图像和某些点之后,校准算法将通过最小化最小二乘方损失来确定相机的校准矩阵。

通常,必须进行校准才能消除图像失真。 针孔摄像头模型包括变形,即“ GoPro效果”。 为了获得校正的图像,必须进行校准。 变形可以是径向的或切向的。 校准有助于使图像不失真。

无人驾驶:如何使用立体视觉实现距离估计?

以下是相机校准返回的矩阵:

无人驾驶:如何使用立体视觉实现距离估计?

每一个计算机视觉工程师都必须了解和掌握摄像机的标定。这是最基本、最重要的要求。我们习惯于在线处理图像,从不接触硬件,这是个错误。

-尝试运行OpenCV进行摄像机校准。

在相机校准过程中,我们有两个公式可以将世界上的点O设为像素空间:

World到相机的转换

无人驾驶:如何使用立体视觉实现距离估计?

无人驾驶:如何使用立体视觉实现距离估计?

当您进行数学运算时,您将得出以下等式:

无人驾驶:如何使用立体视觉实现距离估计?

如果您查看矩阵尺寸,则不匹配。

无人驾驶:如何使用立体视觉实现距离估计?

因此,我们需要将O_world从[X Y Z]修改为[X Y Z 1]。

2.极线几何--立体视觉

我们的眼睛就像两个相机。因为它们从不同的角度看同一幅图像,它们可以比对两种视角之间的差异,并计算出距离估计。

下面是立体相机设置的示例。你会在大多数自动驾驶汽车上发现类似的东西。

无人驾驶:如何使用立体视觉实现距离估计?

立体相机如何估算深度

假设你有两个相机,一左一右。这两个相机在相同的Y轴和Z轴上对齐。基本上,唯一的区别就是它们X值不一样

现在,看看下面的描述。

无人驾驶:如何使用立体视觉实现距离估计?

我们的目标是估算出O点(代表图像中的任何像素)的Z值,即深度距离。

现在从鸟瞰的角度来考虑这个问题。

无人驾驶:如何使用立体视觉实现距离估计?

立体相机鸟瞰图说明:

无人驾驶:如何使用立体视觉实现距离估计?

? 我们得到 Z = X*f / xL.

无人驾驶:如何使用立体视觉实现距离估计?

右相机方程:

? 我们获得 Z = (X — b)*f/xR.

放在一起,我们可以找到正确的视差 d =xL -- xR和目标正确的 XYZ 坐标。

3. 视差与深度图

视差是什么?视差是一个三维点从两个不同的相机角度在图像中位置的差异。

无人驾驶:如何使用立体视觉实现距离估计?

? 由立体视觉我们可以估计任何物体的深度。假设我们做了正确的矩阵校准。它甚至能够计算一个深度映射或者视差映射。

无人驾驶:如何使用立体视觉实现距离估计?

为什么是“基线几何”?要计算视差,我们必须从左图像中找到每个像素,并将其与右图像中的每个像素进行匹配。 这称为立体对应问题。

为了解决这个问题--

无人驾驶:如何使用立体视觉实现距离估计?

这是因为两个相机是沿着同一轴对齐的。

以下是基线搜索的工作原理:

无人驾驶:如何使用立体视觉实现距离估计? 基线搜索

应用:建立伪激光雷达

现在,是时候将这些应用到真实世界的场景中,看看我们如何用立体视觉来估计物体的深度。

无人驾驶:如何使用立体视觉实现距离估计?

每一幅图像都有外部参数 R 和 t,事先通过校准确定(步骤1)。

视差

对于每一幅图像,我们可以计算相对于另一幅图像的视差图。我们将做如下操作:

我们将获得左右图像的视差图。

为了帮助您更好地理解差异的含义, 我在 Stack Overflow 上找到了一个很棒的解释 。

无人驾驶:如何使用立体视觉实现距离估计?

从视差到深度图

? 我们有两个视差图,这基本上告诉我们,两幅图像之间的像素位移是多少。

对于每个摄像机,都有一个投影矩阵 P_left 和 P_right。为了估计深度,我们需要估计K, R 和 t。

无人驾驶:如何使用立体视觉实现距离估计?

世界坐标系到相机坐标系的转换

cv2.decomposeProjectionMatrix()的OpenCV函数可以做到这一点,并从 P 中得到 K、R 和 t;对于每个相机,现在是时候生成深度图了。深度图将使用其他图像和视差图告诉我们图像中每个像素的距离。

无人驾驶:如何使用立体视觉实现距离估计?

我们对每个像素进行计算。

无人驾驶:如何使用立体视觉实现距离估计?

估计障碍物的深度

针对每个相机,我们都有一个深度图! 现在,假设我们将其与障碍检测(例如YOLO)结合在一起。 对于每个障碍,这种算法都会返回带有4个数字的边界框:[x1; y1; x2; y2]。 这些数字表示框的左上角和右下角的坐标。

例如,我们可以在左边的图像上运行这个算法,然后使用左边的深度图。

无人驾驶:如何使用立体视觉实现距离估计?

真不可思议!我们刚刚构建了伪激光雷达!

借助立体视觉,我们不仅知道图像中的障碍物,而且知道它们与我们的距离! 这个障碍距离我们28.927米!

立体视觉是一种使用简单的几何图形和一个额外的摄像机将2D障碍物检测转换为3D障碍物检测的技术。如今,大多数新兴的edge平台都考虑了立体视觉,比如新的OpenCV AI Kit或对Raspberry和Nvidia Jetson卡的集成。

在成本方面,与使用LiDAR相比,它保持相对便宜,并且仍具有出色的性能。我们称它为伪激光雷达,因为它可以取代激光雷达的功能。检测障碍物,对障碍物进行分类,并在3D中进行定位。

无人驾驶:如何使用立体视觉实现距离估计?


AI研习社是AI学术青年和AI开发者技术交流的在线社区。我们与高校、学术机构和产业界合作,通过提供学习、实战和求职服务,为AI学术青年和开发者的交流互助和职业发展打造一站式平台,致力成为中国最大的科技创新人才聚集地。

如果,你也是位热爱分享的AI爱好者。欢迎与译站一起,学习新知,分享成长。

无人驾驶:如何使用立体视觉实现距离估计?

版权文章,未经授权禁止转载。详情见 转载须知 。

无人驾驶:如何使用立体视觉实现距离估计?


本文地址: https://www.gpxz.com/article/99949b76837d5dd00850.html
全局中部横幅
全局中部横幅
智能CRM管理系统,

客户关系管理(CRM)帮零售品牌管理客户关系,用营销自动化软件、智能运营系统,提高销售和利润率。有赞帮助60万+品牌,赋能228万销售和导购,在线管理5.6亿客户关系。免费试用全渠道CRM管理系统。

上海谦格琳网络科技有限公司

上海谦格琳网络科技有限公司www.btncy.com经营范围含:湿度调节器、包钢加固、动植物种苗、电车、有色金属合金制品、纺织辅料、实验室家具、三轮车、光学、复印机(依法须经批准的项目,经相关部门批准后方可开展经营活动)。

开云网页版在线登录·官方平台入口

开云网页版在线登录(帝吧:www.ad0561.com)开云网页版在线登录主营销售酒精测试仪,酒精检测仪,酒精测试仪品牌,酒精测试仪价格,酒精测试仪原理,酒精度测试仪,警用酒精测试仪,酒精浓度检测仪,便携式酒精检测仪,酒精浓度检测器等系列产品,云开平台登录销售管理为一体的高新技术型企业,云开app官方入口为事业机关、通信行业、金融机构等企事业单位提供客户在使用过程中的解决方案。

深圳市福荣鑫精密机械有限公司

【深圳福荣鑫精密机械】专业生产精密设备零部件,零部件生产解决方案,专业航空,军工精密五金零部件加工,铝合金/钛合金等金属切削加工,CNC精密切削加工,专业金属车铣磨钳加工,非金属材质加工生产,精密自动化设备零件生产加工

丹东电磁阀厂

丹东电磁阀厂专业生产各种电磁阀,是石油化工、钢铁、环保、水处理、食品、汽车、制药、电站等行业重点配套厂家;我厂设备精良,技术力量雄厚,拥有全套的检测设备,能自主进行电磁阀的开发研究工作。

铸铁镶铜方闸门

特航泵阀集团有限公司是一家专业生产铸铁镶铜方闸门,铸铁镶铜圆闸门,启闭机,刀型闸阀,通风蝶阀,渠道闸门,拍门,全焊接球阀,盲板阀,分料阀,防爆泄爆阀的厂家。为广大用户和需求者提供优秀的铸铁镶铜方闸门,铸铁镶铜圆闸门,启闭机,刀型闸阀,通风蝶阀,渠道闸门,拍门,全焊接球阀,盲板阀,分料阀,防爆泄爆阀产品和相关技术资料。

上海印刷厂

上海印刷工厂是一家专业提供各类高端印刷品、画册印刷、样本印刷、产品宣传册印刷、产品包装礼盒印刷、专业从事印刷二十余年。公司立足上海周边,服务全球,为客户提供设计印刷一条龙服务!

代理记账报税

君林集团成立于2006年,创建了以财税服务为核心,拓展延伸到企业工商综合服务、财务顾问、税务筹划、创客空间、香港开户、金融服务、深港车牌、新能源网约车等在内的一站式多元化发展集团公司。咨询热线:400-138-6366。

德菲(上海)化学科技有限公司

德国DFE化学有限公司在表面技术业务领域,特别是对金属表面处理行业提供强大技术和品牌。它的核心业务是高度发达的添加剂,在钢铁酸洗过程显著提高质量和效益。

途途课堂

途途课堂为6-15岁学生提供小学至初中的在线课程,采用双师模式结合直播授课与辅导。利用大数据和人工智能,不断优化课程内容,提升学习效率,致力于普及优质教育。名师出高徒,向上有途途。

岩棉板厂家,玻璃棉板厂家,橡塑保温板厂家

大城县创节能科技有限公司专业生产岩棉板,岩棉复合板,岩棉管,玻璃棉板,玻璃棉卷毡,玻璃棉保温管,橡塑板,橡塑管,聚氨酯板,聚氨酯瓦壳,聚氨酯保温管,等保温材料,厂家直销价格便宜,欢迎新客户拨打厂家咨询电话.


全局底部横幅