【技术流派】教你提高双目立体视觉系统的精度!

article/2025/10/9 18:29:59

开源代码免费获取,欢迎关注我的GitHub: https://github.com/ethan-li-coding

双目立体视觉(Binocular Stereo Vision)是机器视觉的一种重要形式,它是基于视差原理并利用成像设备从不同的位置获取被测物体的两幅图像,通过计算图像对应点间的位置偏差,来获取物体三维几何信息的方法1

精度,是双目立体视觉至关重要的指标。

双目立体视觉系统,不谈精度几许,未免显得业余!

精度不行

“来,小同志往边上让一让,下一个!”

精度很高

“小伙子你们设备多少钱!能打个折不!”

做过双目研究的伙伴们,肯定是经常和精度打交道的,大部分人也肯定知道,双目立体视觉的精度主要看的是深度方向的精度!深度图是很多双目设备的输出数据,通过深度图以及相机参数,可以算出三维点云的空间坐标,公式如下:
在这里插入图片描述
可知深度 D D D的角色感很强,把深度估计准了,那三维点也就准了。(什么,相机标定也不准?当我没说!)

所以,如何让深度精度更高?

我们再来看一个经典公式:
在这里插入图片描述
这可再熟悉不过了, D D D是深度, B B B是基线, f f f是焦距(像素单位), d d d是视差。咱们一分为二看这个公式,右边分母部分是像素视差值,和算法相关;分子部分是系统硬件参数,和硬件相关。

可知深度精度是由算法和硬件综合决定。

研发:“哥们,你们硬件做的不行啊!”
硬件:“屁,是你们算法不行!”
老板:“都是废物!”

对各参数不太清楚的同学可以看下图:

1 算法因素

咱们先分析算法对精度的影响。那么硬件参数 B B B f f f就假设是已知且恒定的了。

假设视差偏差为 Δ d Δd Δd,则计算视差偏差 Δ d Δd Δd下的深度偏差 Δ D ΔD ΔD
在这里插入图片描述

B B B f f f已知且恒定,如果我们把 D D D也恒定,也就是在同一个深度距离下评判精度,由公式(1)可知 d d d也就恒定。此时容易发现, Δ d Δd Δd越小, Δ D ΔD ΔD越小。说明:

(一)视差偏差越小,深度偏差越小;换言之,算法的视差精度越高,深度精度越高,深度精度和视差精度成正比

所以更高精度的视差估计算法,自然能带来更高的深度精度。

2 硬件因素

上面分析算法对精度的影响,所以固定了硬件参数 B B B f f f。现在我们来分析视差精度恒定的情况下,硬件参数如何影响精度。还是基于上面三个公式,但是做一些修改,把公式(1)代入到(3)中,如下:
在这里插入图片描述
同样,我们把 D D D恒定,也就是在同一个深度距离下评判精度,因为视差精度恒定(也就是视差估计算法定了,精度差不多固定了),因此 Δ d Δd Δd也恒定。不难发现, B B B f f f D D D有相同的影响关系, B B B越大、 f f f越大, Δ D ΔD ΔD越小。说明:

(二)基线越大、焦距(像素单位)越长,深度精度越高。深度精度和基线、焦距成正比。

从公式中我们看到,影响 Δ D ΔD ΔD的实际是基线和焦距的乘积,所以若两个一起增大,那深度精度必然增大,若一个增大一个减小,那么深度精度可能增大也可能减小。

另一个需要说明的是, f f f是焦距的像素单位,它和焦距的空间尺寸和像素大小有关,设焦距的空间尺寸为 f 0 f_0 f0,像素大小为 s s s,则 f f f的计算公式为:
在这里插入图片描述
显然, s s s越小, f f f越大。我们知道 s s s的大小是相机传感器尺寸决定的,而焦距是镜头决定的。所以选相机的时候要了解第三个知识:

(三)像素大小越小,同样的物理尺寸焦距有更长的像素尺寸焦距,深度精度就越高。

3 深度范围

上面我们分析了算法参数和硬件参数对深度精度的影响,但还有一个重要的因素,它即非硬件相关也非算法相关,它就是深度本身的大小,也即深度范围。简单的说,目标离镜头的距离不同,精度是不一样的。

对上一节的公式(3)再多做一步推导:
在这里插入图片描述
这里讨论深度范围,所以假设 B B B f f f Δ d Δd Δd都恒定。显然可以发现, D D D越小, Δ D ΔD ΔD越小。所以我们得出第四个结论:

(四)测量目标离系统越近,深度精度越高。

4 总结

我想大家其实在实际应用中都会有一些直观的理解,比如(1)算法越好,精度越高,明摆着嘛!(2)相机分辨率越高,精度越高,这不废话嘛!(3)基线越长,精度越高,显而易见嘛!

本文的目的就是通过公式推导来严格证明,以让大家更加清晰的明白各因素影响精度的本质,从而更科学的指导双目系统的设计。再来汇总一下上面的四条结论:

  • (一)视差偏差越小,深度偏差越小;换言之,算法的视差精度越高,深度精度越高,深度精度和视差精度成正比
  • (二)基线越大、焦距(像素单位)越长,深度精度越高。深度精度和基线、焦距成正比。
  • (三)像素大小越小,同样的物理尺寸焦距有更长的像素尺寸焦距,深度精度就越高。
  • (四)测量目标离系统越近,深度精度越高。

所以同学们你们现在知道怎么设计双目系统能提高精度了吗?

  • (1)选高精度视差估计算法
  • (2)在应用场景允许、结构稳定性满足需求的情况下,尽可能延长基线
  • (3)在视场范围、景深满足需求的情况下,尽可能选择长焦镜头
  • (4)在算力允许的情况下,选择高分辨率相机(本质上应该是像素尺寸小的相机,有的相机提高了分辨率,只是提升了视域,但像素尺寸不变,那精度也不变)
  • (5)测量距离适当拉近(这点往往是场景需求决定的)

博主简介:
Ethan Li 李迎松(知乎:李迎松)
武汉大学 摄影测量与遥感专业博士

主方向立体匹配、三维重建

2019年获测绘科技进步一等奖(省部级)

爱三维,爱分享,爱开源
GitHub: https://github.com/ethan-li-coding
邮箱:ethan.li.whu@gmail.com

个人微信:

欢迎交流!

关注博主不迷路,感谢!
博客主页:https://ethanli.blog.csdn.net


  1. 双目立体视觉-百度百科 ↩︎


http://chatgpt.dhexx.cn/article/Q5L3kRFW.shtml

相关文章

来聊聊双目视觉的基础知识(视察深度、标定、立体匹配)

点击上方“AI算法修炼营”,选择“星标”公众号 精选作品,第一时间送达 1 双目视觉的视差与深度 人类具有一双眼睛,对同一目标可以形成视差,因而能清晰地感知到三维世界。因此,计算机的一双眼睛通常用双目视觉来实现&am…

双目视觉(三)立体匹配算法

系列文章: 双目视觉(一)双目视觉系统双目视觉(二)双目匹配的困难和评判标准双目视觉(三)立体匹配算法双目视觉(四)匹配代价双目视觉(五)立体匹配…

双目视觉 1 双目视觉的原理

首先我们讲解一下双目视觉中,我们只有两张二维的图片,我们的目的就是通过这两张二位的图片来构建出一个三维的模型,这就要求我们要通过两张图,推算出来一个图片没有展示出来的深度。深度的计算的原理如下 图片中C1和C2分别对应着我…

单目视觉>双目视觉>RGBD比较

目前,视觉SLAM(SLAM是“Simultaneous Localization And Mapping”的缩写,可译为同步定位与建图)可分为单目、双目(多目)、RGBD这三类,另还有鱼眼、全景等特殊相机,但目前在研究和产品中还属于少数。从实现难…

双目视觉原理(万字总结,包含Halcon代码)

双目视觉原理 1. 双目视觉的视差与深度1.1 总览2. 视差原理 2. 双目相机的坐标系2.1 针孔相机的模型2.2 四大坐标系1 像素坐标系(单位:像素(pixel))2 图像坐标系(单位:mm)3 相机坐标…

来聊聊双目视觉的基础知识(视觉深度、标定、立体匹配)

点击上方“3D视觉工坊”,选择“星标” 干货第一时间送达 1 双目视觉的视差与深度 人类具有一双眼睛,对同一目标可以形成视差,因而能清晰地感知到三维世界。因此,计算机的一双眼睛通常用双目视觉来实现,双目视觉就是通过…

单目视觉技术、双目视觉技术、多目视觉技术

计算机视觉、人工智能 视觉的研究过程:感知、认知、和控制 车载摄像头的要求: 看得远:提供了更充足的反应时间,直接提升了安全性。需要长焦距(D大,欲保持其他地方不变,就需要F增大)…

【双目视觉】双目立体匹配

一、双目立体匹配算法 在opencv中用的比较多的双目立体匹配算法有两种:BM和SGBM。SGBM是BM立体匹配算法的优化版,属于半全局匹配,相对于BM花的时间要更多,但效果优于BM。本文使用的是SGBM半全局匹配方式。 步骤: 1.打…

双目视觉原理及流程概述

双目原理 双目视觉是利用视差原理的一种视觉方法。 如图所示为空间中一点P在左右相机中的成像点Pleft=(Xleft,Yleft),Pright=(Xright,Yright)。将两相机固定在同一平面上,则点P在Y方向的坐标是相同的,即Yleft = Yright =Y。根据三角原理,可得: 视差被定义为相同点在左…

双目视觉(一)双目视觉系统

系列文章: 双目视觉(一)双目视觉系统双目视觉(二)双目匹配的困难和评判标准双目视觉(三)立体匹配算法双目视觉(四)匹配代价双目视觉(五)立体匹配…

双目视觉简介

hi 小伙伴们,人啊,很容易有惰性,很久不跟新了,不做笔记了,如今“良心发现”,毕业之后第一次更新博客。当然还是学习,整合分享给更多的人! 相信关注我博客和微信公众号的人很多都是做…

机器视觉——双目视觉的基础知识(视差深度、标定、立体匹配)

1、双目视觉的视差与深度 人类具有一双眼睛,对同一目标可以形成视差,因而能清晰地感知到三维世界。因此,计算机的一双眼睛通常用双目视觉来实现,双目视觉就是通过两个摄像头获得图像信息,计算出视差,从而使…

双目立体视觉(一) 基本原理和步骤

目录 一、双目立体视觉系统的四个基本步骤 二、各步骤原理 1、相机标定 2、立体校正 3、立体匹配 一、双目立体视觉系统的四个基本步骤 相机标定主要包含两部分内容: 单相机的内参标定和双目相机的外参标定,前者可以获得每个相机的焦距、光心、畸变系数等参数…

长连接和短链接的区别

长连接意味着进行一次数据传输后,不关闭连接,长期保持连通状态。如果两个应用程序之间有新的数据需要传输,则直接复用这个连接,无需再建立一个新的连接。就像下图这样。 它的优势是在多次通信中可以省去连接建立和关闭连接的开销…

springboot 实现长链接转短链接

实现结果: 转换短链接api: 接口:http://127.0.0.1/api?urlurlencode(要缩短的网址) 例如:http://127.0.0.1/api?urlhttp%3a%2f%2fwww.baidu.com 返回:http://127.0.0.1/baidu 访问短链接即可还原原url;…

长链接与短链接

1、Http协议 1.1 HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠的传递…

长连接与短链接

短链接:客户端每次请求成功后,将关闭链接 长连接:客户端请求成功后,并不会立即关闭链接,适用于客户端请求较为频繁的情况 ———————————————————————————————————— 1. HTTP协议与TC…

如何实现 长链接变 短 链接?

短链接,通俗来说,就是将长的 URL 网址,通过程序计算等方式,转换为简短的网址字符串。 大家经常会收到一些莫名的营销短信,里面有一个非常短的链接让你跳转。新浪微博因为限制字数,所以也会经常见到这种看着…

微信:长链接转短链接

前言 微信复制出来的链接太长,想转短连接如何做? 将一条长链接转成短链接。 主要使用场景: 开发者用于生成二维码的原链接(商品、支付二维码等)太长导致扫码速度和成功率下降,将原长链接通过此接口转成短…

长链接 转换成 短链接

文章目录 参考来源思路方法一方法二 参考来源 豆瓣 短链接生成的算法原理 思路 方法一 一般会想到用哈希,这里可以用MD5码获取哈希值,但时MD5生成的串挺长的,这类要考虑怎么把它变短。 做法如下: 方法二 很好想的思路&…