点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

来源:https://blog.csdn.net/rs_lys/article/details/107102968

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

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

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

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

精度不行

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

精度很高

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

做过双目研究的伙伴们,肯定是经常和精度打交道的,大部分人也肯定知道,双目立体视觉的精度主要看的是深度方向的精度!深度图是很多双目设备的输出数据,通过深度图以及相机参数,可以算出三维点云的空间坐标,公式如下:

可知深度DDD的角色感很强,把深度估计准了,那三维点也就准了。(什么,相机标定也不准?当我没说!)

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

我们再来看一个经典公式:

这可再熟悉不过了,DDD是深度,BBB是基线,fff是焦距(像素单位),ddd是视差。咱们一分为二看这个公式,右边分母部分是像素视差值,和算法相关;分子部分是系统硬件参数,和硬件相关。

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

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

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

1 算法因素

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

假设视差偏差为ΔdΔdΔd,则计算视差偏差ΔdΔdΔd下的深度偏差ΔDΔDΔD

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

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

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

2 硬件因素

上面分析算法对精度的影响,所以固定了硬件参数BBB和fff。现在我们来分析视差精度恒定的情况下,硬件参数如何影响精度。还是基于上面三个公式,但是做一些修改,把公式(1)代入到(3)中,如下:

同样,我们把DDD恒定,也就是在同一个深度距离下评判精度,因为视差精度恒定(也就是视差估计算法定了,精度差不多固定了),因此ΔdΔdΔd也恒定。不难发现,BBB和fff对DDD有相同的影响关系,BBB越大、fff越大,ΔDΔDΔD越小。说明:

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

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

另一个需要说明的是,fff是焦距的像素单位,它和焦距的空间尺寸和像素大小有关,设焦距的空间尺寸为f0f_0f0,像素大小为sss,则fff的计算公式为:

显然,sss越小,fff越大。我们知道sss的大小是相机传感器尺寸决定的,而焦距是镜头决定的。所以选相机的时候要了解第三个知识:

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

3 深度范围

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

对上一节的公式(3)再多做一步推导:

这里讨论深度范围,所以假设BBB、fff和ΔdΔdΔd都恒定。显然可以发现,DDD越小,ΔDΔDΔD越小。所以我们得出第四个结论:

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

4 总结

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

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

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

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

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

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

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

1、选高精度视差估计算法

2、在应用场景允许、结构稳定性满足需求的情况下,尽可能延长基线

3、在视场范围、景深满足需求的情况下,尽可能选择长焦镜头

4、在算力允许的情况下,选择高分辨率相机(本质上应该是像素尺寸小的相机,有的相机提高了分辨率,只是提升了视域,但像素尺寸不变,那精度也不变)

5、测量距离适当拉近(这点往往是场景需求决定的)

备注:本文作者松博在哔哩哔哩做的立体匹配直播视频:

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉优质源码即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

整理不易,请给工坊点赞和在看

教你如何提高双目立体视觉系统的精度相关推荐

  1. github 视觉测量_教你如何提高双目立体视觉系统的精度

    作者:李迎松 来源:公众号 @3D视觉工坊 链接:教你如何提高双目立体视觉系统的精度 开源代码免费获取,欢迎关注作者的GitHub:https://github.com/ethan-li-coding ...

  2. 双目视觉焦距_教你如何提高双目立体视觉系统的精度

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

  3. 双目估计方法_教你提高双目立体视觉系统的精度!

    这里开源了一些经典的立体匹配算法,你可能会感兴趣: https://github.com/ethan-li-coding​github.com 双目立体视觉(Binocular Stereo Visi ...

  4. 双目视觉焦距_教你提高双目立体视觉系统的精度!

    这里开源了一些经典的立体匹配算法,你可能会感兴趣:https://github.com/ethan-li-coding​github.com 双目立体视觉(Binocular Stereo Visio ...

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

    开源代码免费获取,欢迎关注我的GitHub: https://github.com/ethan-li-coding 双目立体视觉(Binocular Stereo Vision)是机器视觉的一种重要形 ...

  6. 一文详解双目立体视觉系统的精度提升方法!

    作者丨李迎松@知乎 来源丨https://zhuanlan.zhihu.com/p/160946661 编辑丨3D视觉工坊 双目立体视觉(Binocular Stereo Vision)是机器视觉的一 ...

  7. 双目立体视觉系统”机器之眼“之扬帆起航篇

    双目立体视觉系统"机器之眼"之扬帆起航篇 好久不见,你还好吗?!!! 久违了,不能等太久,一休哥与大家再次相见,相约双目立体视觉系统! 双目立体视觉(Binocular Stere ...

  8. 科研教育「双目视觉技术」首选!维视MV-VS220双目立体视觉系统开发平台

    NO.1产品背景 在最近大热的自动驾驶赛道,大疆采用新的技术路线--双目立体视觉.具体来说,它就是模拟人的视觉系统,通过两个临近摄像头所拍摄到的画面的视差,来还原出三维立体结构.不需要对海量数据进行标 ...

  9. 3D双目立体视觉系统机器人应用实例

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:新机器视觉  1.应用背景 随着自动化程度越来越高,机器 ...

最新文章

  1. client中周期性边界_HFSS中周期性边界条件的设置
  2. spring cloud API网关
  3. 全志 添加外挂RTC Hym8563
  4. 说说FATFS文件系统(转)
  5. keil MDK编译器警告和错误详解
  6. Iterator作用
  7. go 是常驻内存吗_图解 Go 内存分配器
  8. centos下编译lnmp环境
  9. canvas drawImage方法不显示图片的解决方案
  10. Angular 学习笔记——$interpolateProvide
  11. C#万年历dll插件
  12. cad抛物线曲线lisp_AutoCAD上精确实现抛物线和双曲线
  13. 方差及常见分布的方差计算与推导
  14. 热插拔48块硬盘服务器,24块前置热插拔硬盘设计
  15. provision文件路径
  16. 什么是迭代计算机编程,什么是递归?什么是迭代?
  17. ArcGIS JS API实现地图场景视频融合
  18. Java学习---Day16_IO流基础篇
  19. Clk Gating的verilog写法及简析-基础小知识(六)
  20. 苹果xr如何关机_iPhone如何进入DFU模式

热门文章

  1. 多个servlet配制方法
  2. dedecms发布文章提示标题不能为空怎么办
  3. Linux命令初识一
  4. 直面问题,咱谈焦虑、谈烦恼、谈如何成长
  5. 陌陌安全开源了 Java 静态代码安全审计插件
  6. 网传京东某程序员因压力太大,在商品页面置入骂人代码!京东辟谣:不关我们的事,外部商家干的!...
  7. 面试官:啥是集群策略啊?
  8. 我有点不喜欢分布式中的TCC模式了
  9. 最终一致性,一致只会迟到,但绝不会缺席
  10. 微服务场景下的数据一致性解决方案