当前位置: 首页 > news >正文

[概述] 获取点云数据的仪器

这里所说的获取点云的仪器指的是可以获取场景中物体距离信息的相关设备,下面分别从测距原理以及适用场景来进行介绍。

一、三角测距法

三角测距原理

就是利用三角形的几何关系来测量物体的距离。想象一下,你站在一个地方,你的朋友站在另一个地方,你们两个都看着同一个物体,但是你们与物体的距离不同。现在,我们可以通过测量你们两个的角度以及你们之间的距离差,来计算出你们与物体的距离。

具体做法是这样的:我们先测量你们两个的角度,也就是你们分别从自己的位置看物体时所测量到的夹角。然后,我们再测量你们之间的距离差,也就是你们两个位置之间的直线距离。利用这些信息,我们可以运用一些公式,算出你们与物体之间的距离。

基于三角测距原理的仪器

双目相机和结构光相机都是利用三角测距原理进行距离测量的。前者通过测量视差,而后者通过光斑形变来计算物体到相机的距离。

双目相机

通过两个摄像头(左右眼)同时拍摄同一场景,利用视差(左右视图中对应点之间的像素位移)来计算物体距离。根据视差和相机的内外参数,可以使用三角测量原理计算出物体到相机的距离。这种方法适用于近距离和中距离的测量,能够提供较高的深度精度和分辨率。

结构光相机

使用投影器投射出编码的光条或光斑(一般是红外光),并通过相机捕捉光斑在物体表面的畸变,然后根据畸变信息进行距离计算。通过计算光斑的形变,可以获得物体表面的深度图像。这种方法也属于三角测距原理,通过解析光斑的形变来计算物体到相机的距离。结构光相机适用于中距离和远距离的测量,能够提供较高的测量精度和体积重建能力。

需要注意的是:

双目相机由于依靠左右相机视图的视差计算获得距离信息,会十分消耗资源,计算可能比较耗时。且对缺乏纹理或不具有明显颜色对比的场景时(比如墙壁),光照不均匀时,可能效果不是很好。

结构光相机由于会主动投影编码的光条或光斑,因此即使缺乏纹理的场景也有较好的测距效果,但是结构光相机可能不适用于对快速移动的物体进行测距

二、飞行时间法

飞行时间法测距原理

在飞行时间测距中,首先发送一个信号(可以是声波、激光脉冲、电磁波等)从测距器发射到目标物体上。这个信号会在目标物体上发生反射、散射或吸收。被反射或散射回来的信号再次被接收器接收。接收器接收到信号后,会记录下信号从发射到接收的时间差,即飞行时间。根据信号传播速度已知的特性,将测得的飞行时间与信号传播速度相乘,就可以得到目标物体与测距器之间的距离。

基于激光测距的仪器

激光雷达(Lidar)

利用激光束发射出去并接收返回的激光信号来获得目标物体的距离信息。激光雷达具有高精度、高速度和长测距等特点,因此在无人驾驶、机器人导航、环境感知等领域得到了广泛应用。

激光雷达主要由激光发射器、接收器、扫描机构和数据处理模块等组成。发射器会发射一个短脉冲的激光束,然后激光束会在目标物体上反射、散射或吸收部分能量,形成返回的激光信号。接收器会接收这些返回的激光信号,并记录下发射和接收之间的时间差(也就是飞行时间)。

为了获取更多的目标物体信息,激光雷达会利用扫描机构进行扫描,可以是旋转式的机构,也可以是多个激光束之间的切换。通过将激光束扫描到不同的方向上,激光雷达可以获取周围环境中的多个点的距离信息。扫描完成后,激光雷达会将所有的测距数据传输到数据处理模块进行处理和分析。

激光雷达的测距精度可以达到亚厘米级别,适用于远距离测量。它能够快速地获取周围环境中的三维点云数据,用于构建地图、障碍物检测、目标识别和姿态估计等应用。激光雷达还具有较高的抗干扰能力,能够在各种光照条件和恶劣环境中稳定工作。

毫米波雷达

毫米波雷达(Millimeter Wave Radar)是一种利用毫米波信号进行测距和目标检测的雷达系统。毫米波是高频电磁波,在波长为1至10毫米之间,频率为30至300 GHz之间。毫米波雷达主要由天线系统、发射器、接收器和信号处理模块等组成。发射器会发射一系列连续或脉冲的毫米波信号,然后这些信号会被目标物体所反射或散射,并被接收器接收回来。

毫米波雷达在目标检测和跟踪上有着广泛的应用,它能够提供实时的距离、速度和方位角等信息。相比于光学传感器,毫米波辐射对于雨、雪、雾等大气颗粒的影响较小,使得毫米波雷达在恶劣天气下比激光雷达的可靠性更高。但是就分辨率而言,还是激光雷达分辨率高。

超声波雷达

利用超声波的传播速度和回波时间来确定目标物体与雷达之间的距离

超声波雷达的工作原理是,通过发射器产生超声波脉冲,并将其传播到目标物体。当超声波脉冲遇到目标物体后,一部分能量被物体吸收,一部分被反射回来形成回波。接收器接收到这些回波信号,并测量发射和回波之间的时间差。由于声波在空气中的传播速度已知,通过将传播时间与传播速度相乘,可以计算目标物体与雷达之间的距离。

声波比毫米波的传输速度更慢,精度较差,不适合对快速移动的物体进行测距,在汽车上主要是作为倒车测距使用的。

三、其他

一些帮助理解的视频(来自于B站):

激光雷达测距原理讲解:21.激光雷达工作原理_哔哩哔哩_bilibili

各类激光雷达工作过程:各类激光雷达原理_哔哩哔哩_bilibili

激光雷达获取点云数据的过程:激光雷达点云采集原理以及在自动驾驶中的应用(中文字幕)_哔哩哔哩_bilibili

激光雷达、毫米波雷达在自动驾驶方面的发展:详解激光雷达(完整版)_哔哩哔哩_bilibili

相关文章:

[概述] 获取点云数据的仪器

这里所说的获取点云的仪器指的是可以获取场景中物体距离信息的相关设备,下面分别从测距原理以及适用场景来进行介绍。 一、三角测距法 三角测距原理 就是利用三角形的几何关系来测量物体的距离。想象一下,你站在一个地方,你的朋友站在另一…...

路由器基础(八):策略路由配置

在实际网络应用中,策略路由也是一种重要的技术手段。尽管 在考试并不注重策略路由,但是实际上应用较多,建议考生除了掌握基本的静态路由协议IP route-static, 动态路由协议RIP 、OSPF的基础配置外,还要掌握如何配置策略路由。…...

Java 零碎知识点

目录 [多线程]创建多线程的三种方式 [网络编程]一、重点概念1、TCP/IP网络模型2、IP 对象3、端口号4、协议UDP(User Datagram Protocol)TCP(Transmission Control Protocol) 二、UDP 通信三、TCP 通信 [前端][Vue]一、Vue3项目创建响应式函数父子通信父传子子传父 跨层组件通信…...

多模态论文阅读之BLIP

BLIP泛读 TitleMotivationContributionModel Title BLIP: Bootstrapping Language-Image Pre-training for Unified Vision-Language Understanding and Generation Motivation 模型角度:clip albef等要么采用encoder-base model 要么采用encoder-decoder model.…...

OpenCV实战——OpenCV.js介绍

OpenCV实战——OpenCV.js介绍 0. 前言1. OpenCV.js 简介2. 网页编写3. 调用 OpenCV.js 库4. 完整代码相关链接 0. 前言 本节介绍如何使用 JavaScript 通过 OpenCV 开发计算机视觉算法。在 OpenCV.js 之前,如果想要在 Web 上执行一些计算机视觉任务,必须…...

qt5工程打包成可执行exe程序

一、编译生成.exe 1.1、在release模式下编译生成.exe 1.2、建一个空白文件夹package,再将在release模式下生成的.exe文件复制到新建的文件夹中package。 1.3、打开QT5的命令行 1.4、用命令行进入新建文件夹package,使用windeployqt对生成的exe文件进行动…...

Qt之基于QCustomPlot绘制直方图(Histogram),叠加正态分布曲线

一.效果 二.原理 1.正态分布 高斯分布(Gaussian distribution),又名正态分布(Normal distribution),也称"常态分布",也就是说,在正常的状态下,一般的事物,都会符合这样的分布规律。 比如人的身高为一个随机变量,特别高的人比较少,特别矮的也很少,大部分都…...

232.用栈实现队列

原题链接:232.用栈实现队列 思路 主要是要注意栈和队列的数据结构的区别,一个是后进先出, 一个是先进先出 如果要用栈模拟队列的先进先出,那就得使用另一个辅助空间来存储栈的栈顶元素,然后把栈最底部的元素弹出&…...

C51--项目--感应开关盖垃圾桶

1、项目概述 功能描述: 检测靠近时,垃圾桶自动开盖并伴随滴一声,2s后关盖。 发生震动时,垃圾桶自动开盖并伴随滴一声,2s后关盖。 按下按键时,垃圾桶自动开盖并伴随滴一声,2s后关盖。 硬件说明…...

基于单片机设计的太阳能跟踪器

一、前言 随着对可再生能源的需求不断增长,太阳能作为一种清洁、可持续的能源形式,受到越来越多的关注和应用。太阳能光板通常固定在一个固定的角度上,这限制了它们对太阳光的接收效率。为了充分利用太阳能资源,提高太阳能光板的…...

【踩坑及思考】浏览器存储 cookie 最大值超过 4kb,或 http 头 cookie 超过限制值

背景 本地生产环境:超过最大值 cookie token 不存储;客户生产环境:打开系统空白,且控制台报 http 400 错误; 出现了两种现象 现象一:浏览器对大于 4kb 的 cookie 值不存储 导致用户名密码登录&#xff…...

竞赛选题 深度学习实现行人重识别 - python opencv yolo Reid

文章目录 0 前言1 课题背景2 效果展示3 行人检测4 行人重识别5 其他工具6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **基于深度学习的行人重识别算法研究与实现 ** 该项目较为新颖,适合作为竞赛课题方向&#xff0c…...

SpringCloud Gateway实现请求解密和响应加密

文章目录 前言正文一、项目简介二、核心代码2.1 自定义过滤器2.2 网关配置2.3 自定义配置类2.4 加密组件接口2.5 加密组件实现,AES算法2.6 启动类,校验支持的算法配置 三、请求报文示例四、测试结果4.1 网关项目启动时4.2 发生请求时 前言 本文环境使用比…...

IDEA创建Springboot多模块项目

一、创建父模块 File --> New --> Project ,选择 “ Spring Initalizr ” ,点击 Next Next Next --> Finish 二、创建子模块 右键根目录,New --> Module 选择 “ Spring Initializr ”,点击Next 此处注意T…...

React:JSX语法入门

JSX语法入门及代码 JSX是一种JavaScript的语法扩展,用于在React中描述用户界面的结构。它允许开发者使用类似HTML的语法来创建React元素,使得代码更具可读性和可维护性。JSX将HTML标签和JavaScript代码结合在一起,可以在其中使用JavaScript表…...

AI大模型架构师专家,你会问什么来测试我的水平,如何解答上述问题,学习路径是什么

0. 沈剑老师的大模型产品应用经验: 提示词三步骤: 假如我是xxx专家,你会问什么来测试我的水平;假如你是xxx专家,你会如何解答上述问题;假如你是xxx专家,上述问题的学习路径是什么;…...

Dev-C调试的基本方法2-1

在Dev-C中调试程序,首先需要在程序中设置断点,之后以调试的方式运行程序。 1 设置断点 当以调试的方式运行程序时,程序会在断点处停下来。点击要设置断点代码行号左侧部分,此时会有如图1所示的红点和绿色对勾,表示断…...

Linux 调试 (objdump/strace/strings)

目录 1. Linux 调试 (objdump/strace/strings)1.1. 查看系统 glibc 版本号1.2. 查看 so/bin 中的依赖1.3. 调试 bin 报错原因1.4. 查看 so/bin 中字符串 1. Linux 调试 (objdump/strace/strings) 1.1. 查看系统 glibc 版本号 1. 第一种 # ldd --version ldd (Ubuntu GLIBC 2.…...

CAS 单点登录详解

什么是CAS? - 简要介绍CAS(Central Authentication Service)的概念和作用。 - 强调CAS的主要目标是提供单点登录和单点登出功能。 CAS的工作原理 - 深入探讨CAS的工作原理,包括认证、票据、验证等核心概念。 - 详细解释CAS服务器和…...

tbh常用的绘图快捷键

1、Altb -> 笔刷 2、Alt/ -> 画笔 3、按住Shift 绘出的线条是直线 4、按住shiftalt 绘出来的线条是水平线或垂直线 5、alte ->橡皮擦 6、alts ->选择工具 7、altq -> 轮廓编辑器 以下操作都是在选中轮廓编辑器下操作的: 按住alt…...

Chapter03-Authentication vulnerabilities

文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...

边缘计算医疗风险自查APP开发方案

核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...

STM32+rt-thread判断是否联网

一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

ElasticSearch搜索引擎之倒排索引及其底层算法

文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...