【OpenREALM学习笔记:14】单目视觉SLAM方法在UAV影像上重建三维地形的思考

news2024/9/22 11:38:16

最近在学习SLAM技术与测绘三维影像重建的相关知识,结合自己的感受,撰写一下对于单目视觉SLAM利用无人机影像重建三维地形的一些看法。

1. 单目视觉SLAM系统在三维地形重建中所面临的挑战有哪些?

单目视觉SLAM众所周知的一个问题是:深度的不确定性。为了能够使单目传感器能够估计自身的深度及其位置,必须使相机必须具有良好的运动(特别是平移),并能够观察到部分或者完全相同的场景(即场景具有一定的重叠率),这也是摄影测量学中对于影像拍摄的要求。

因此,利用其他传感器所产生的数据进行辅助观测就成为了一种比较常见的补充手段,比如惯性测量数据。目前,各类型无人机都配备了IMU这类惯性测量设备,能够为单目SLAM系统提供更为充足的观测数据,有助于解决单目SLAM中遇到的深度估计模糊问题。

2. 哪一种类型的视觉SLAM系统更加适合无人机影像三维地形生成?

一般来说,SLAM能够生成稀疏或者稠密的点云地图。
稠密地图能够提供更为丰富的场景信息,但是也增加了外点产生的机率。而稀疏地图能够保持点云数量在一定数量之下,更加适合构建网格(mesh)的构建。

从跟踪方式的来说,直接法包含了对应像素的强度信息,可以直接在点云地图中使用;所懈怠的颜色通道信息也能够生成带颜色的点云。而间接法采用的是特征描述子对图像进行抽象,无法存储关于强度的信息。因此,如果仅只是做表面重建,而不是点云地图,间接法更具优势。

此外,视觉传感器的类型也是这一问题需要考虑的因素,这里直接说结论了:全局快门的相机要比卷帘快门的相机更适合直接法SLAM系统,而带有卷帘快门相机的无人机来说,使用基于特征的SLAM系统可能会更好。

3. 间接法(比如ORB-SLAM3)和间接法(比如DSO、LDSO等)所生成的点云与真值相比,精度如何?如何对其进行评价?

首先,评估点云的最佳方式就是要求数据集中具有使用激光扫描仪采集的真实点云数据,并使用RMSE评估。但如果没有此类数据,可以使用SFM等替代技术构建非直接测量的伪真值数据;再使用MPPE等方法进行评估,以补偿构造的伪真值中的稀疏性。

其次,视觉传感器的类型和标定同样影响了结果的精度。全局快门的传感器由于没有引入伪影,所以建议大家首选。对于直接法的SLAM系统来说,正确的光度校准也是除几何校准外,必须要考虑的问题。

最后,就是SLAM系统的初始化参数同样可以影响点云地图的精度。

4. 如何采集无人机影像才能保证系统的稳定?

从这一点来看,我们可以借鉴摄影测量的相关知识,比如进行航迹的规划,采用一种蛇形方式进行影像的获取,并且设定好相关参数,保证一定的航向重叠与旁向重叠。如下图:
在这里插入图片描述
同时,我们还需要注意在大范围旋转或者地面缺少可靠特征时,视觉SLAM系统容易失去对自身位置的跟踪,也就是进入LOST的状态。

参考文献:《Evaluation of Monocular Visual SLAM Methods on UAV Imagery to Reconstruct 3D Terrain》

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

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

相关文章

C# 委托函数 delegate

在C#中,委托(Delegate)是一种特殊的类型,它可以持有对方法的引用。 委托是实现事件的基础。事件本质上是多播委托,允许多个方法被触发 委托允许你将方法作为参数传递给其他方法,或者将方法作为返回值从方法…

feed流(投喂)

1、拉模式: 优缺点:节省空间,只存一份,赵六在需要的时候直接去读。延迟高,耗时长。如果关注的人多的话,就会一次性拉取的很大,造成拥塞。 2、推模式 优缺点:延迟低,耗时少…

嵌入式C++、STM32、树莓派4B、OpenCV、TensorFlow/Keras深度学习:基于边缘计算的实时异常行为识别

1. 项目概述 随着物联网和人工智能技术的发展,智能家居安全系统越来越受到人们的关注。本项目旨在设计并实现一套基于边缘计算的智能家居安全系统,利用STM32微控制器和树莓派等边缘设备,实时分析摄像头数据,识别异常行为(如入侵、跌倒等),并及时发出警报,提高家庭安全性。 系…

内存卡损坏读不出怎么修复?内存卡数据恢复的7个方法请收好!

当面对内存卡损坏、无法读取数据的困扰时,许多人会感到焦虑和困惑。尤其是当这些卡中存储着珍贵的照片、视频或文件时,这种困扰更显得令人不安。您是否也曾因内存卡损坏而无法显示照片或遭遇需要格式化的提示而感到困扰?在我们日常的生活中&a…

power bi文本,截取及查找函数

power bi文本,截取及查找函数 1. 文本函数1.concatenate函数2. exact 函数3. find函数4. search函数 2. 截取函数1. fixed 函数2. 大小写转换3. trim函数4.rept函数5. replace 函数6. substitute函数 3. 查找匹配函数1 contains函数2. treatas 函数3. ContainsString函数4. Con…

GPT模型为什么能生成有意义的文本

GPT模型的底层,其实是谷歌团队推出的Transformer模型。但是在GPT-3出现之前,大家一直对它没有多少了解。直到它的参数数量突破1750亿个的时候,它才建立起一个庞大的神经网络,这个神经网络最突出的特点是大数据、大模型和大计算。其…

宠物经济纵深观察:口红效应显著,呈可持续发展态势

七月以来,全国各地陆续开启高温模式。和人一样,“毛孩子们”同样也难耐高温,由此,围绕猫猫狗狗的“宠物经济”迅速升温,宠物冰垫、宠物饮水机、宠物烘干机......一系列宠物单品掀起夏日消费热潮。 就在几天前&#xf…

mysql的主从复制和读写分离:

mysql的主从复制和读写分离: 主从复制 面试必问:主从复制的原理 主从复制的模式: 1、mysql的默认模式: 异步模式 主库在更新完事务之后会立即把结果返回给从服务器,并不关心从库是否接受到,以及从库是…

汽车研发项目管理系统排行榜:五大热门汽车项目管理系统推荐

汽车研发项目管理软件在汽车制造行业中扮演着至关重要的角色,本文介绍了五款在汽车及零部件领域专业的项目管理软件。 一、 奥博思 PowerProject 企业级项目管理系统 奥博思 PowerProject 项目管理系统(支持项目管理、项目集管理、项目组合管理三位一体…

LLM之RAG理论(十二)| RAG和Graph RAG对比

最近Graph RAG非常火,它来自微软的一篇论文《From Local to Global: A Graph RAG Approach to Query-Focused Summarization》,论文地址:https://arxiv.org/pdf/2404.16130。本文将对RAG 和 Graph RAG在架构和成本方面做简要分析。 一、RAG …

家里灰尘多又不想打扫。教你一招,省时省事,除尘很轻松

出差半个月前,我住在新装修的房子里两周。在新餐桌上铺了一块桌布,结果一周后布上就积了一层灰尘。而且,那些夜里,我经常听到妻子剧烈咳嗽,令人担心。她有中度肺部疾病,平时非常注意卫生,每天都…

mysql高阶语句:

mysql高阶语句: 高级语法的查询语句: select * from 表名 where limitsdistinct 去重查询like 模糊查询 排序语法:关键字排序 升序和降序 默认的排序方式就是升序 升序:ASC 配合order by语法 select * from 表名…

大模型应用—大模型赋能搜索

大模型赋能搜索 AI正在改变搜索体验,使其对我们来说更加智能、个性化和高效。 你可能会想,“但是谷歌已经足够好了!”首先,谷歌的搜索相关性和个性化是有代价的,那么跨不同媒体类型的搜索呢?对于最相关的信息格式,甚至是自动化某些任务,比如抓取网站、索引内容和搜索…

因为很会用工具,拿下了很多客户!

作为一名想要得到更多业绩的打工人,能提高工作效率的工具一定要拥有! 今天,就给大家分享一个职场必备的提效神器,一起来看看它都有哪些功能吧! 1、多渠道客源 它可以从多个渠道去获取你想要的客户资源,无…

CSS画边框线带有渐变线和流光边框实例

流光边框css流光边框动画效果_哔哩哔哩_bilibili流光边框css流光边框动画效果_哔哩哔哩_bilibili纯CSS写一个动态流水灯边框的效果~_哔哩哔哩_bilibili荧光边框CSS 动画发光渐变边框特效_哔哩哔哩_bilibili [data-v-25d37a3a] .flow-dialog-custom {background-col…

简单使用SpringMVC写一个图书管理系统的登入功能和图书展示功能

准备好前端的代码 这里已经准备好了前端的代码,这里仅仅简单的介绍登入功能,和展示图书列表的功能。 如图: 如上图所示,这里的前端代码还是比较多的,在这里我介绍,login.html还有book_list.html这两个。 l…

springboot智慧草莓基地管理系统--论文源码调试讲解

3 系统分析 当用户确定开发一款程序时,是需要遵循下面的顺序进行工作,概括为:系统分析-->系统设计-->系统开发-->系统测试,无论这个过程是否有变更或者迭代,都是按照这样的顺序开展工作的。系统分析就是分析…

golang 基础 泛型编程

(一) 示例1 package _caseimport "fmt"// 定义用户类型的结构体 type user struct {ID int64Name stringAge uint8 }// 定义地址类型的结构体 type address struct {ID intProvince stringCity string }// 集合转列表函数&#…

83. UE5 RPG 实现属性值的设置

在前面,我们实现了角色升级相关的功能,在PlayerState上记录了角色的等级和经验值,并在变动时,通过委托广播的形式向外广播,然后在UI上,通过监听委托的变动,进行修改等级和经验值。 在这一篇里&a…

GoogleCTF2023 Writeup

GoogleCTF2023 Writeup Misc NPC Crypto LEAST COMMON GENOMINATOR? Web UNDER-CONSTRUCTION NPC A friend handed me this map and told me that it will lead me to the flag. It is confusing me and I don’t know how to read it, can you help me out? Attach…