3D相机获取点云信息的几种方法

news2024/11/24 8:07:58

在计算机中, 图像由一个个像素点组成。图像数据存储在每一个像素点中,每一个像素点包含了被测物体的信息。除了常见的RGB信息或者灰度信息以外,还可以包含深度信息和坐标等其它信息。在某个坐标系下的点的数据集又被称为点云。点云里的每一个点包含了丰富的信息,包括三维坐标X,Y,Z、颜色、分类值、强度值、时间等等。通过高精度的点云数据可以还原现实世界。


大多数点云数据是由3D扫描设备产生的,例如激光雷达(2D/3D)、RGB双目、3D结构光相机、tof相机(time-of-flight camera)等。这些设备用自动化的方式测量在物体表面的大量的点的信息,然后用某种数据文件输出点云数据。这些点云数据就是扫描设备所采集到的。

激光雷达是一种集激光扫描与定位定姿系统于一身的测量装备,激光雷达系统包括激光器和一个接收系统。激光器产生并发射一束光脉冲,打在物体上并反射回来,最终被接收器所接收。接收器准确地测量光脉冲从发射到被反射回的传播时间。鉴于光速是已知的,传播时间即可被转换为对距离的测量。结合激光器的高度,激光扫描角度,就可以准确地计算出每一个地面光斑的三维坐标X,Y,Z,如图所示。

RGB双目指的是目前大家都在热点研究的,仅依靠双相机的视差获取深度信息的方式。RGB双目相机因为非常依赖纯图像特征匹配,所以在光照较暗或者过度曝光的情况下效果都非常差,另外如果被测场景本身缺乏纹理,也很难进行特征提取和匹配。


根据几何原理:


可以得出坐标信息。


虽然由视差计算深度的公式很简洁,但视差d本身的计算却比较困难。我们需要确切地知道左眼图像某个像素出现在右眼图像的哪一个位置(即对应关系),这件事亦属于“人类觉得容易而计算机觉得困难”的事务。当我们想计算每个像素的深度时,其计算量与精度都将成为问题,而且只有在图像纹理变化丰富的地方才能计算视差。由于计算量的原因,双目深度估计仍需要使用GPU或FPGA来计算。


结构光利用相位信息进行三维重建,主要包括解相位和展开相位,利用展开的相位计算深度信息。解相位,也称为相位提取,主要包括相移法,傅里叶变换解相,卷积法解相。这些方法所提取的是相对相位,即相位主值,都是折叠相位,是被折叠在[-pi,pi]之间的,需要相位展开才能得到真实的相位。从大的分类上说,主要有时间相位展开和空间相位展开。


利用结构光技术的重建过程中,又分为两类,一类是有参考平面,一类是没有参考平面。

有参考平面的系统中,只要求出参考平面和被测物体的相对相位差,利用PMP(相位测量轮廓法)方法即可求得深度信息。如下图:


如果利用Gray编码加相移算法与多频外差原理展开得到的是像素点位置的绝对相位值,则利用下面的方法进行求解深度信息。


一个 ccd 只可以确定一条空间直线,需要确定投影仪的灰度线平面,共同匹配出的点的三维坐标。采集的图像解相后,可根据 CCD的绝对相位值可以求得投影仪对应的绝对相位值为:

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

以上为对几种点云信息获取方式的介绍。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/102434.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Windows取证——数据恢复(Fat32文件系统和NTFS文件系统)

目录 一、磁盘存储结构 (一)分区表 1.MBR 分区表(主引导记录Master Boot Record , mbr) 小实验:将磁盘改为活动分区 2.GPT 分区表(全局唯一标识分区表GUID PartITion Table,gpt …

《SpringBoot篇》24.SpringBoot整合Freemarker超详细教程

陈老老老板🦸👨‍💻本文专栏:SpringBoot篇(主要讲一些与springboot整合相关的内容)👨‍💻本文简述:本文讲一下SpringBoot整合Freemarker的整合教程超详细教程。&#x1f…

SPL 和 SQL 能不能融合在一起?

文章目录SPL 和 SQL 能不能融合在一起?SPL资料SPL 和 SQL 能不能融合在一起? SQL和SPL都是面向结构化数据的通用处理技术。SQL普及率高受众广,很多用户天生就会用SQL查询数据,如果数据引擎支持SQL就会很容易上手,而且…

【MySQL】数据库约束与聚合查询和联合查询等进阶操作知识汇总

目录1.数据库约束:1.1 约束的类型:1.2 unique:1.3 primary key:1.3.1 分布式系统下,自增主键如何生成唯一id:1.4 foreign key:1.4.1 逻辑删除:2.表的设计/数据库的设计:2.1 数据库是如何设计的?3.进阶插入操作:4.进阶查询:4.1 聚合查询:4.2 group by 列名:4.3 联合查询/多表查…

2508. 添加边使所有节点度数都为偶数 c++

给你一个有 n 个节点的 无向 图,节点编号为 1 到 n 。再给你整数 n 和一个二维整数数组 edges ,其中 edges[i] [ai, bi] 表示节点 ai 和 bi 之间有一条边。图不一定连通。 你可以给图中添加 至多 两条额外的边(也可以一条边都不添加&#x…

C51——定时器控制寄存器

定时器的本质原理: 每经过一个一起周期,就加1 在寄存器里加 当我们想要操作寄存器的时候 就要找到TCON 当它开始数数的时候,会有天花板,会有溢出。 那我们怎么知道他溢出了?有TF0,当TF0 出现变化的时…

【剧前爆米花--爪哇岛寻宝】

作者:困了电视剧 专栏:《JavaSE语法与底层详解》 文章分布:这是一篇关于接口的文章,在本篇文章中我会将接口常用的一些实例进行讲解,以及部分方法在重写中的思想。 目录 Comparable和Comparator接口使用 Object类 t…

JDBC的简单使用与封装

目录 1、JDBC 2、JDBC的常用接口 1.Driver接口 2.Connection接口 3.Statement接口 4.ResultSet接口 3、JDBC的基本使用 1)、简单的增删查改 Ⅰ、查 Ⅱ、增 Ⅲ、改 Ⅳ、删 2)简单封装 1、JDBC 我们先了解JDBC是什么,JDBC的全称是Java数…

2018年全国职业技能大赛中职组“网络安全”赛项—基础题(解析)

2018年全国职业技能大赛中职组“网络安全”赛项—基础题(解析) 任务一、nmap 1、nmap sP -n 192.168.100.133 //进行ping扫描 1.1、nmap -Pn -n 192.168.100.133 //目标禁用 绕过ping 扫描 2、nmap -A -n ip // 对ip进行综合性扫描 3、nmap -O -n…

TiDB-学习笔记

编写这个笔记,希望能记录下学习TiDB时候的知识点。 目录 第一章 1.事务 1.1 SQL-92标准: 1.2 事务的隔离级别 2.在TiDB学习 SQL 语句 第二章 第三章 第一章 1.事务 事务的特性(ACID) atomicity原子性、consistency一致性、i…

网上花店网页代码 html静态花店网页设计制作 dw静态鲜花网页成品模板素材网页 web前端网页设计与制作 div静态网页设计

常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他等网页设计题目, A…

全志V853 在 NPU 转换 YOLO V3 模型

NPU 转换 YOLO V3 模型 YOLO 全称是 You Only Look Once(你只需看一次),从名称上也能看出这种算法速度快的优势,因此在许多边缘设备上,YOLO 算法的使用十分广泛。YOLOV3 是华盛顿大学研究生 Joseph Redmon 所开发&…

matlab学习笔记(九)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 matlab学习笔记(九)一、信号采样二、信号重建一、信号采样 信号的采样原理图如下图所示: 其数学模型表示为: 其中的f(t)为原…

11、Mysql高级之SQL优化

11、Mysql高级之SQL优化 文章目录11、Mysql高级之SQL优化0 SQL优化1 大批量插入数据2 优化insert语句3 优化order by语句3.1 环境准备3.2 两种排序方式3.3 Filesort 的优化4 优化group by 语句5 优化嵌套查询6 优化OR条件7 优化分页查询7.1 优化思路一7.2 优化思路二8 使用SQL提…

【Budibase】搭建低代码开发平台

Budibase介绍 Budibase 是一套开源的低代码开发平台,支持一键数据库及API 接入,支持简单的 JS 关联前后端数据,有细致的权限访问管理,对移动端有良好的支持。它主打企业流程自动化,有完善的自动化流程设计&#xff0c…

NETDMIS5.0界面介绍

1.启动界面介绍 双击桌面快捷方式,打开NET.DMISS启动界面如下图,包含三个菜单是文件、设置语言、帮助。 2.工作界面介绍 默认测量界面包括主菜单,工具条,节点程序界面(显示测量过程),CAD视窗…

(免费分享)基于ssm简易网盘系统

开发工具:IDEA,mysql5.7 Tomcat8.0,jdk1.8 package cn.tangtj.clouddisk.web;import cn.tangtj.clouddisk.entity.User; import cn.tangtj.clouddisk.utils.UserUtil; import org.apache.logging.log4j.LogManager; import org.apache.loggi…

嵌入式应用开发|Linux文件I/O常用的四种访问方式

在Linux系统中&#xff0c;一切都可以看成"文件"<通常包含&#xff1a;普通文件、驱动文件、网络通信文件等等>&#xff0c;系统中所有的操作都可以通过文件I/O实现&#xff0c;因此&#xff0c;掌握文件常用接口很有必要。 0.前言 屏幕前的你如果懂得main函数…

SAP S4 如何快速配置一家公司

之前配置公司采用的方法是copy的方式来配置&#xff0c;后来在做其他配置的时候发现&#xff0c;copy的方法会把很多不需要的配置也copy进来了。所就我从新定义了一个公司来进行学习研究。配置一定空的公司很简单&#xff0c;只需要三步&#xff1a; 1 定义和分配公司 • 公司…

Java中的异常、IO与NIO面试题

✅作者简介&#xff1a;热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏&#xff1a;Java面试题…