很久以前就有人在研究如何用相机来测量距所拍摄物体的距离,立体相机便是其中历史最为悠久的一门技术。立体相机有使用胶卷的,也有连在计算机上使用的。这两种立体相机都有两个镜头(如图所示)。这两个镜头就跟人类的眼睛一样,利用双眼视差(左右眼看到的角度不同)来捕捉距离。

正如我们所知,人类对空间进行立体上的认知时,利用的是双眼视差原理(两眼捕捉到的图像有所偏差)。普通的立体相机利用的原理也跟它很相似。在此,我们来一边了解这个原理,一边思考立体相机的机制。

如下图,大家用双眼看物体时,左眼和右眼捕捉到的影像存在着微小的差异。这是因为左眼和右眼之间隔着几厘米的距离。凭借这段距离,人类就能获取捕捉物体立体影像时需要的信息。于是,从这两个有着微妙差距的位置中捕捉到的影像就在我们的大脑中得以合成,并作为立体影像被处理。

那么人类具体是如何感觉到纵深的呢?捕捉近处和远处的物体时,我们的眼睛里又发生了什么呢 ?

看近处的物体和看远处的物体时,两眼视线形成的角度(辐辏角)相差很大。离得远,角度就小;离得近,角度就大。大脑负责把眼睛的转动信息与影像进行合成,这样我们才能感觉到远近。

与此相对,立体相机中两个镜头的角度通常是固定的。根据左右镜头拍摄的图像的差距,就可以测算出所拍摄图像中的距离。首先,把用一个镜头拍摄下来的图像细分成一幅幅小图像。接下来利用图像处理的手法,调查一下分割好的图像相当于另一个镜头所拍摄图像的哪个部分。这样一来,就能知道图像某一部分会是另一个镜头中的哪一部分。虽然拍摄是在同一个地方,但镜头位置不同,所以会产生微小的偏差。对这个偏差进行几何学计算,就能算出图像中的距离。另外,对分割的图像分别地反复进行同样的操作,还能计算相机图像上任意一点的距离,从而制作出整体图像的距离分布模型。

立体相机是利用两个镜头来计算距离的。基本上,只要两个镜头里都有这个地方,就能对其进行测量。不过,如果两幅图像间重复的地方太多,或是有透明玻璃等无法拍摄出来的地方,就无法测量相机到这些地方的距离。另外,如果想提升测量的精确度,则需要基于两个镜头的距离关系,以及相机本身的规格来决定参数。

此外,也许是因为技术方面的成熟,近年很多汽车上配备的辅助功能(如快追尾时自动减速等)也应用了用立体相机测量距离这一测距方法。

【物联网】22.物联网开发之先进传感 - 立体相机相关推荐

  1. 【物联网】21.物联网开发之先进传感 - RGB-D 传感器

    之前的文章说过传感器的概念是"用来获取温度和湿度等纯数据的电子零件".温度传感器和加速度传感器等确实是用来获取简单数据的小零件,我们可以将其理解为构成智能手机等电子设备的一个要素. ...

  2. 单目全向立体相机的标定(一种新的相机形式)

    点云PCL免费知识星球,点云论文速读. 文章:Calibration Method of the Monocular Omnidirectional Stereo Camera 作者:Ryota Ka ...

  3. 视频教程-用Java从零开始开发一个物联网项目-物联网技术

    用Java从零开始开发一个物联网项目 多年的产品设计和开发经验,带领团队完成多个知名产品.历任多家大型公司的Java架构师,对知名框架的源码均有深入研究.拥有IT一线开发.教学10多年的实战经验,能充 ...

  4. 未来物联网全栈开发 --JavaScript or Python?

    版权声明:本文为博主杜锦阳原创文章,未经博主允许不得转载,如有侵权将依法追究其法律责任. 目录(?)[+] 先来说说 Javascript 再来说说 Python 未来谁是王者 未来物联网全栈开发 - ...

  5. 【华为出品】物联网全栈开发实战营第2期来啦!送海思开发板

    物联网一直在改变我们生活的方方面面.可穿戴设备有助于监控我们的偏好.习惯和健康状况.智能家居设备可提高家居的舒适度.安全性和便利性.城市利用连接的数字设备收集的海量数据(数十亿个)来改善城市规划.制造 ...

  6. 【华为云技术分享】LiteAI四大绝招,解锁物联网智能设备AI开发难关

    [摘要] IoT设备中嵌入AI能力实现产品的智能升级,已经是AIoT行业发展的重要通道,那怎样才能实现AIoT = AI + IoT呢?如何将AI模型塞到小小的IoT设备里,让它可以轻松运行起来呢?成 ...

  7. 物联网全栈开发实战系列文章汇总(共865篇,持续更新-2023.05.02)

    物联网全栈开发实战(共865篇) 文章目录 物联网全栈开发实战(共865篇) 1.Arduino单片机系列 1.1 Arduino开发实例(包含各类传感器驱动.通信实例.DIY实例,共114篇) 1. ...

  8. 探索最佳物联网全栈开发之道 | 附 PPT 下载

    作者 | 苏宓 责编 | 苏宓 微信公众号ID | csdn_iot 万物互联时代,随着国外的谷歌.微软,国内的阿里.华为.百度等诸多行业巨头纷纷入局,物联网迎来的新的浪潮,将更多的商机及机遇呈现出来 ...

  9. 一天掌握物联网全栈开发之道 | 附 PPT 下载

    万物互联时代,随着国外的谷歌.微软,国内的阿里.华为.百度等诸多行业巨头纷纷入局,物联网迎来的新的浪潮,将更多的商机及机遇呈现出来,无数创业者及开发者纷至沓来,希望从中可分一杯羹.然而在庞大的物联体系 ...

最新文章

  1. 金融数据分析(四)-------矩,偏度,峰度
  2. adapter调用notifyDataSetChanged刷新没有起作用的原因
  3. 互联网日报 | 3月6日 星期六 | 知乎在美递交IPO申请;钉钉“开工节”发放8千万红包;特斯拉中国大陆超充桩数量创新高...
  4. [Java] [Lock] [Synchronized VS ReentrantLock]
  5. ubuntu15.04 php版本,在ubuntu下安装php版本问题
  6. mysql 从服务器同步数据_MySQL 同一台服务器同步数据
  7. 如何进行动态的SQL环境搭建?
  8. IT已成为最疯狂的加班行业,没有之一
  9. Java UDP 客户端服务器程序示例
  10. 海南大学考研经验之(考研英语)
  11. 工作流:如何将Word尾注转换为普通文本格式
  12. 无限分类---重新排序+生成树型
  13. 齐博cms基础教程之认识齐博cms
  14. 零基础学习IT技术是有技巧的
  15. 易语言开发微信机器人插件
  16. Spring 集成与分片详解
  17. 微信页面触发返回按钮回到聊天界面
  18. android usb ftdi,android-Nexus7 USB主机FTDI设备未检测到
  19. 数学建模(1)-matlab之fprintf函数用法
  20. 两万条数据需要做个数据图_第3关:基于Excel对电商母婴数据进行分析

热门文章

  1. postman变量设置及脚本的使用
  2. 影像去雾软件(雾气消除)免费版
  3. 美术生都要膜拜的AI,照片迅速被画成艺术画
  4. C语言入门 | c语言基础知识
  5. 【原创】PHP扩展开发入门
  6. 地图数据的类型及编码方法
  7. android 高仿ios时间选择器,仿ios时间选择
  8. 锐龙r75800H和酷睿i71165G7 选哪个好
  9. 什么是signal(SIGCHLD, SIG_IGN)函数
  10. 一年中有12个月,每个月的天数是不一样的,其中有7个月为31天称为大月,分别为1,3,5,7,8,10,12月, 有4个月为30天,称为小月,分别为4,6,9,11月,还有二月较特殊,平年的二月有28