相机+激光雷达重绘3D场景

article/2025/9/17 8:11:17

640?wx_fmt=jpeg


将激光雷达与相机结合,再通过深度学习的方式获得场景的3D模型——Ouster首席执行官在博客中介绍了相机OS-1,并装有激光雷达。LiveVideoStack对原文进行了摘译。


文 / Angus Pacala. Ouster 

译 / 王月美

技术审校 / 田栋

原文 https://medium.com/ouster/the-camera-is-in-the-lidar-6fcf77e7dfa6


很明显,当Ouster三年前开始开发OS-1时,相机的深度学习研究就超过了激光雷达研究。激光雷达数据具有突出的独特优势,——简举二例,如空间信息丰富、环境光照不敏感,——然而它缺乏类似于传统相机图像的原始(高)分辨率和高效的阵列存储结构,因而3D点云在神经网络学习或处理中迄今缺乏高效快速的硬件算法及实现。


考虑到两种传感模式之间的权衡,我们从一开始就将激光雷达和相机的优势集中在一个设备中。今天,我们发布了固件升级并更新到了我们的开源驱动程序中来实现这一目标。我们的OS-1激光雷达现在可以实时的输出固定分辨率的深度图像、信号图像和环境图像,而所有这些都不需要摄像头的参与。数据层在空间上完全相关,具有零时间失配或快门效应,并且每个像素具有16位和线性光响应。


让我们一探究竟:


640?wx_fmt=png


同时从OS-1输出的实时图像层。你从上到下看到的是环境、强度、范围和点云——这些所有来自我们的激光雷达。请注意,环境图像捕获了多云的天空和树木及车辆的阴影。


相比大多数数码单反相机,OS-1的光学系统具有更大的光圈,并且我们开发的光子计数ASIC具有极低的光敏度,因此即使在低光照条件下也能够收集环境图像。OS-1捕获近红外信号和环境数据,因此数据非常类似于相同场景的可见光图像,这使得数据具有自然的外观,且为摄像机开发的算法很好地转换为数据提供了更高的可能性。未来,我们将努力从这些环境图像中去除固定模式噪声,但与此同时我们希望可以让客户获得数据!


另外,还更新了我们的开源驱动程序,将这些数据层输出为固定分辨率的360°全景帧,以便客户能够立即开始使用新的功能。而且,我们将提供基于VTK构建的新的跨平台可视化工具,用于查看、记录 、并在Linux,Mac和Windows上并排播放图像和点云。传感器输出的数据不需要后期处理即可实现此功能——该神奇之处是在于硬件,而驱动程序只是将流数据包组装成图像帧。


640?wx_fmt=gif


我们的新开源可视化工具。完整未经编辑的视频:https://www.youtube.com/watch?v=LcnbOCBMiQM


获得早期访问更新权的客户已经被打动了,我们鼓励任何对OS-1感兴趣的人在线观看我们未经编辑的视频,或者下载我们的原始数据并使用可视化工具自行播放。


固件更新页面:https://www.ouster.io/downloads


Github和样本数据:www.github.com/ouster-LIDAR


这不是噱头


我们已经看到多家激光雷达公司推出激光雷达/相机融合解决方案。通过将一个单独的相机与一个激光雷达联合安装,执行伪劣的外部校准,并为最终无用的产品推出了新闻稿。但是,我们没有这样做。为了证明这一点,我们想要分享一些证明OS-1传感器数据有多么强大的例子,这将让我们回到深度学习。


由于传感器在每个像素处输出具有深度,信号和环境数据的固定分辨率图像帧,因此我们能够将这些图像直接馈送到最初为相机开发的深度学习算法中去。我们在矢量中编码深度,强度和环境信息,这很像彩色图像的网络将编码输入层的红色,绿色和蓝色通道。当然,我们训练过的网络已经非常适用于新的激光雷达数据类型。


作为一个示例,我们训练了每像素语义分类器,以识别来自旧金山周围的一系列深度和强度帧中的可驾驶道路,车辆,行人和骑自行车的人。我们能够在NVIDIA GTX 1060上实时运行生成的网络,并取得了可喜的成果,特别是考虑到其实这是我们尝试的第一个实现。请查阅:


640?wx_fmt=gif


完整视频: https://www.youtube.com/watch?v=JxR9MasA9Yc


因为每个像素都提供了所有的数据,所以我们能够无缝地将2D掩码转换为3D帧,以进行额外的实时处理,如边界框估计和跟踪。


640?wx_fmt=gif


在其他情况下,我们选择将深度,信号和环境图像分开,并将它们独立地传递到同一网络中去。例如,我们从DeTone等人的SuperPoint项目中获取了预先训练好的网络,并直接在我们的强度和深度图像上运行它。网络在大量通用RGB图像上进行训练,且从未见过深度/激光雷达数据,但强度和深度图像的结果却令人惊叹:


640?wx_fmt=gif


完整视频: https://www.youtube.com/watch?v=igsJxrbaejw


仔细检查后,很明显地发现,网络正在拾取每个图像中的不同关键点。任何从事激光雷达和视觉测距的人都会掌握这个结果中所体现的冗余的价值。激光雷达测距仪只在隧道和高速公路等几何均匀的环境中使用,而视觉测距仪则在无纹理和光线不足的环境中使用。而OS-1的相机/激光雷达融合将为这个长期存在的问题提供多模式解决方案。


以上这些结果令我们相信,融合的激光雷达和相机数据远远超过其各部分的单纯总和,我们期望未来激光雷达和相机之间能够有进一步融合。



640?wx_fmt=jpeg


http://chatgpt.dhexx.cn/article/7C9cG8xw.shtml

相关文章

2020年亚太杯数学建模竞赛赛题

https://download.csdn.net/download/Suger_Lover/46133529https://download.csdn.net/download/Suger_Lover/46133529https://download.csdn.net/download/Suger_Lover/46133529

PSpice仿真之建模-以半导体激光器为例

PSpice仿真之建模 第一篇原创博客,来点干货~最近应同学之托,解决一个PSpice建模问题,在解决过程中遇到很多问题,于是想写下来,后来者少走弯路哈。这里以半导体激光器为例,讲PSpice的建模。 PSpice是啥&am…

如何保证三维激光扫描的测量精度?

非接触式扫描是三维扫描技术中的一个重要分支,具有检测速度快、零接触等优势,可以将复杂、不规则的物体三维点云数据采集到电脑中,并快速构建出三维模型。如今,三维激光扫描测量技术在文物、建筑等行业都有了成功的应用案例。 在…

激光雷达应用案例|仓储3D体积量方测量

在物流、仓储等工业行业中,获取物品体积数量、掌握物品出入库情况对生产库存管理具有重要意义。 以煤炭仓储及生产领域煤炭体积测量为例,为了解煤炭出入库情况,通常依靠人力手持全站仪进行人工煤炭体积监测。然而这一传统解决方案始终面对着技…

数学建模——光盘的数据容量

1、背景和问题 (1)20世纪80年代出现激光唱片(CD)与激光视盘(LD),统称为光盘。 (2)20世纪90年代出现数字视频光盘(DVD)。 (3&#x…

管网三维激光扫描建模_BIM建模_可视化平台_吉优赛维数字孪生

这几年我国的能源领域已经得到了飞速的发展基础,基础建设也得到了长效的发展,那么现在在石油天然气的运输过程当中,是否已经做到了没有任何的后患之忧了呢?实际上现在的传统人工管理方式还是存在很大程度上的安全盲区的&#xff0…

LaserMaker激光建模软件V1.6.40 更新说明

尊敬的LaserMaker用户,LaserMaker进行了版本更新,新版本为V1.6.40,欢迎您下载使用 LaserMakerV1.6.40下载地址:LaserMaker 新增功能 1.打断线段 橡皮擦工具下新增打断线段功能,同一图案分别设置不同加工工艺更方便…

自制三维激光扫描建模

看图片就是我做的东西,很炫酷是不是。 好吧,开玩笑,这是电影普罗米修斯的截图。 当初看这个电影的时候就感觉这东西好眩酷,我能不能做出来。最近借着帮做毕业设计的机会我也做了一个。 就是这个丑丑的东西啦~ 首先感谢来自CSK的…

Ansys Zemax | 使用 OpticStudio 进行闪光激光雷达系统建模(上)

前言 在消费类电子产品领域,工程师可利用激光雷达实现众多功能,如面部识别和3D映射等。尽管激光雷达系统的应用非常广泛而且截然不同,但是 “闪光激光雷达” 解决方案通常都适用于在使用固态光学元件的目标场景中生成可检测的点阵列。凭借具…

复杂建筑物三维激光扫描与室内外精细建模的科普解析

如今,随着科技的进步,复杂建筑物的三维激光扫描与室内外精细建模成为了现实。本文将通过简洁易懂的方式,介绍这一技术的原理、应用和操作过程,并引用可靠数据和研究成果进行支持,以确保准确性和可信度。 第一部分&…

真实多模激光的建模

作者:Daniel Asoubar(LightTrans) 相关文件:Tutorial_101.01,Snippet_028 需求:VirtualLab™5.11.1-基本工具箱 许可证:CC-BY-SA 3.0 摘要 1). 这个案例展示了如何在VirtualLab中对一个真…

nohup启动jar_nohup命令详解

nohup命令详解 在我们想要把SpringBoot微服务工程部署到远程服务器时,会通过java -jar springboot.jar的方式启动SpringBoot微服务。但是当我们把运行这个命令的SSH客户端退出登录就会导致SpringBoot进程也一起停止了,然后当然就没法访问我们启动的项目了…

Linux-nohup命令详解

场景 今天在linux上部署wdt程序,在SSH客户端执行./start-dishi.sh,启动成功,在关闭SSH客户端后,运行的程序也同时终止了,怎样才能保证在推出SSH客户端后程序能一直执行呢?通过网上查找资料,发现需要使用nohup命令。 …

c语言连续生成不同随机数_C语言连续生成多个随机数(可限制范围)

生成随机数 在现实中我们经常用到随机数,可怎么实现呢,且听小乔慢慢道来。 在C语言中,我们一般使用 头文件中的 rand() 函数来生成随机数 int void rand() 可是却发现生成的数字都一样。 这是因为rand() 函数产生的随机数是伪随机数&#xff…

c语言不用随机数种子,C语言的随机数与随机种子

引言: 在实际编程中,我们经常会用到随机数这个概念,其实也是一个伪随机数,实际上并不是一个真正的随机数,但是也足够我们使用了。在C语言中,编写一些关于游戏之类的程序时就需要用到随机数了。同时C语言也提…

C 语言随机数

1. 随机数概述 编写程序过程中,我们经常需要产生一些随机数。随机数在程序中分为两种: 真随机数:完全没有规则,无法预测接下来要产生的数。 伪随机数:通过一些预先设定好的规则产生不能简单预测的数。 当然&#xff0…

产生瑞利分布的随机数 C语言实现

瑞利分布的概率密度函数为 瑞丽分布的均值为,方差为 首先使用逆变换法产生参数的指数分布的随机变量,其概率密度函数为 然后通过变换,产生瑞丽分布的随机变量x,具体的方法如下: (1)产生均匀分布的随机数 &#xff…

产生(a,b)区间上均匀分布的随机数 C语言实现

uniform.h文件 #ifndef UNIFORM_H_ #define UNIFORM_H_/* 函数功能: 产生(a,b)区间上均匀分布的随机数组 输入参数说明: a 给定区间的下限 b 给定区间的上线 seed 长整型指针变量, *seed 为伪随机数的种子 */ doubl…

洛谷:明明的随机数,C语言

题目描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的…

产生正态分布(高斯分布)随机数 C语言实现

正态分布的概率密度函数如下 通常使用表示均值为,方差为 产生正太分布的方法如下: 设为(0,1)上n个相互独立的均匀分布的随机数,由于,. 根据中心极限定理可知,当n趋向于无穷时 的分布近似于正态分布&…