深度图像基础知识(一)

深度图像基础知识(一)深度图像(depthimage)也被称为距离影像(rangeimage),是指将从图像采集器到场景中各点的距离(深度)作为像素值的图像,它直接反映了景物可见表面的几何形状。深度图像经过坐标转换可以计算为点云数据,有规则及必要信息的点云数据也可以反算为深度图像数据。深度数据流所提供的图像帧中,每一个像素点代表的是在深度感应器的视野中,该特定的(x,y)坐标处物体到离摄像头平面最近的

大家好,又见面了,我是你们的朋友全栈君。

深度图像(depth image)也被称为距离影像(range image),是指将从图像采集器到场景中各点的距离(深度)作为像素值的图像,它直接反映了景物可见表面的几何形状。深度图像经过坐标转换可以计算为点云数据,有规则及必要信息的点云数据也可以反算为深度图像数据。

深度数据流所提供的图像帧中,每一个像素点代表的是在深度感应器的视野中,该特定的(x, y)坐标处物体到离摄像头平面最近的物体到该平面的距离(以毫米为单位)。

深度图像基础知识(一)

  Kinect中深度值最大为4096mm0值通常表示深度值不能确定,一般应该将0值过滤掉。微软建议在开发中使用1220mm~3810mm范围内的值。在进行其他深度图像处理之前,应该使用阈值方法过滤深度数据至1220mm-3810mm这一范围内。

因为记录距离信息的方式的差异性,所以在英文文献中对深度图像的表达呈现出很强的多样性。使用较多的表达式:range image。其中depth map、dense-depth map、depth image、range picture、3D image、surface height map都是等价的,除此之外的常用表达:dense-range image、depth aspect image、 2.5D image、 3Ddata、xyz maps、surface profiles等。

目前,深度图像的获取方法有激光雷达深度成像法、计算机立体视觉成像、坐标测量机法、莫尔条纹法、结构光法等等。针对深度图像的研究重点主要集中在以下几个方面:深度图像的分割技术、深度图像的边缘检测技术、基于不同视点的多幅深度图像的配准技术、基于深度数据的三维重建技术、基于深度图像的三维目标识别技术、深度数据的多分辨率建模和几何压缩技术等等。在PCL中深度图像与点云最主要的区别在于,其近邻的检索方式不同,并且可以相互转换。

深度图像是物体的三维表示形式,一般通过立体照相机或者TOF照相机获取。如果具备照相机的内标定参数,可将深度图像转换为点云。

TOF是Time of flight的简写,直译为飞行时间的意思。所谓飞行时间法3D成像,是通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光,通过探测光脉冲的飞行(往返)时间来得到目标物距离。这种技术跟3D激光传感器原理基本类似,只不过3D激光传感器是逐点扫描,而TOF相机则是同时得到整幅图像的深度信息。TOF相机与普通机器视觉成像过程也有类似之处,都是由光源、光学部件、传感器、控制电路以及处理电路等几部单元组成。与同属于非侵入式三维探测、适用领域非常类似的双目测量系统相比,TOF相机具有根本不同3D成像机理。双目立体测量通过左右立体像对匹配后,再经过三角测量法来进行立体探测,而TOF相机是通过入、反射光探测来获取的目标距离获取。

转载自:http://blog.csdn.net/sdau20104555/article/details/40740683

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/129883.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • pycharm如何执行高级撤销操作回到历史[通俗易懂]

    pycharm如何执行高级撤销操作回到历史[通俗易懂]今天写代码兴奋过头了,认为别人写得太麻烦,所以在看了这个人是要达成什么样的目标之后,把他的代码直接删了,然后自己重写,到后来发现有这样那样的问题,这个时候想参考原来的代码,可是为时已晚,已经是6,7个小时之前了,姑且不问能否一直使用低级撤销ctrl+z,就算可以,估计也要半个小时才能回到6,7个小时之前吧。这个时候,我悲从中来,悔恨自己在最开始的时候没有弄一个备份。但是,痛定思痛,发现了这一个撤销的高级操作,回退到历史,我以前在使用AndroidStudio的时候也有这个功能,所以试了试pycharm

  • servlet异步请求

    servlet异步请求1、什么是servlet异步请求Servlet3.0之前,一个普通Servlet的主要工作流程大致如下:(1)、Servlet接收到请求之后,可能需要对请求携带的数据进行一些预处理;(2)、调用业务接口的某些方法,以完成业务处理;(3)、根据处理的结果提交响应,Servlet线程结束。其中第二步处理业务逻辑时候很可以碰到比较耗时的任务,此时servlet主线程会阻塞等待完成业务处理,对于并发比较大的请求可能会产生性能瓶颈,则servlet3.0之后再此处做了调整,引入了…

  • QML入门教程:一、QML和QtQuick简介以及QML实例

    QML入门教程:一、QML和QtQuick简介以及QML实例从Qt4.7开始,Qt引入了一种声明式脚本语言,称为QML(QtMetaLanguage或者QtModelingLanguage),作为C++语言的一种替代。而QtQuick就是使用QML构建的一套类库。QML是一种基于JavaScript的声明式语言。在Qt5中,QML有了长足进步,并且同C++并列…

    2022年10月23日
  • SQL Server 数据库学习「建议收藏」

    SQL Server 数据库学习「建议收藏」一、认识数据库1、数据库的基本概念2、数据库常用对象3、数据库的组成数据库主要由文件和文件组组成。数据库中所有的数据和对象都被存储在文件中。二、创建数据库1、创建数据库对象资源管理器—数据库——右击——新建数据库三、操作数据表与视图1、创建数据表空值:表示数据未知。非空值:数据列不允许空值。(1)选择一个数据库——展开表——…

  • Java集合面试题_java是什么

    Java集合面试题_java是什么Java中的浅拷贝与深拷贝很多时候,我们期望去拷贝某个对象的副本。在Java中如果使用=赋值操作,其实际上会让两个引用变量指向同一个对象;而如果重新new一个新对象,再对各字段进行赋值操作时,将十分繁琐。为此在Java的Object类中,提供了一个clone方法,其可拷贝对象副本clone方法与Cloneable接口Cloneable接口的源码如下publicinterfaceCloneable{}注释第一段一个类实现了Cloneable接口,以向Object.c

    2022年10月13日
  • Java分布式面试题集合(收藏篇)

    Java分布式面试题集合(收藏篇)分布式分为分布式缓存(Redis)、分布式锁(Redis或Zookeeper)、分布式服务(Dubbo或SpringCloud)、分布式服务协调(Zookeeper)、分布式消息队…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号