小白0基础怎么快速写一篇激光SLAM论文

news2024/12/24 2:13:38

大家好呀,我是一个SLAM方向的在读博士,深知SLAM学习过程一路走来的坎坷,也十分感谢各位大佬的优质文章和源码。如有不对的地方欢迎指出,欢迎各位大佬交流讨论,一起进步。博主创建了一个科研互助群Q:951026257,欢迎大家加入讨论。

一、确定框架

我们都是站在巨人的肩膀上(狗头),自己从零开始写代码工作量巨大切效果不好保证,那么最简单的方法就是找大佬们的开源代码用起来。目前主流的激光SLAM框架可以分为两种批量增量优化LOAM系列,与增量系列Fast-lio。其中批量优化适用于全局优化及定位,增量优化适用与局部精确定位与建图,根据自己的课题需求选择合适的框架往往会事半功倍。博主列出常用的框架

批量:LeGO-LOAM   LIO-SAM   KISS-ICP

增量:FAST-LIO   Point-LIO   R3Live++

当你确定好使用框架后,配置环境运行代码,代码成功运行后不要急。多找几个数据集跑一下,改一下参数看看如何影响最终效果,对代码和原论文思路进一步熟悉,这有利于找到问题导向和创新点。(现有的方法都是不完美的,运行测试多了自然就发现其缺陷在哪里,如何改进)

二、问题导向

1.确定研究领域和主题

选择一个你感兴趣且熟悉的研究领域。阅读相关领域的文献,找出当前研究的热点和争议点。

2.识别研究空白

查找已有研究中未被解决的问题或存在的争议。通过阅读最新的期刊文章、综述和会议论文,确定哪些问题仍然没有得到充分的研究。

3.提出研究问题

确定你想要回答的具体问题。这些问题应该是明确的、具体的,并且具有可研究性。问题可以是因果关系、描述现象、比较不同情况或解决特定问题。

4.设定问题目标

根据研究问题,确定你论文的目标是什么,即你希望通过研究达到什么目的。

三、阅读源码

这一步是非常重要的,完全决定了你能否最终改出一篇论文,刚开始阅读源码是十分困难的,因为SLAM的代码量很大且一般用C++去写。可以选择经典的框架去读源码学习,因为经典框架网上一般有代码解析。阅读源码虽然不用做到知道每一行的意思,但代码执行逻辑和一个函数的作用,以及和论文中原理如何匹配是必须知道的。博主的阅读习惯如下。

  1. 代码文件结构
  2. 代码逻辑框架
  3. 具体函数作用
  4. 针对重要模块清楚每一行意思

四、找创新点

通过第二步你清楚了要解决什么问题,这一步就是该怎么解决问题,并且解决的方法要具有创新性,这也是很多同学发不出论文的原因。创新点如何来,最简单的回答就是多看论文,可以找一些综述去读。最后选择方便自己实现的创新点。当然如果不要求分区也完全可以用A+B创新的模式。现在SLAM比较容易发论文也可以与深度学习结合,难度会大大降低。

五、将创新点改进代码

这一步也难倒了很多人,并且改进去可能效果还不如原来的好,建议一个一个改,确定效果提升了再改下一个创新点。这一部分只能下硬功夫了,从小创新点改起,慢慢提升能力后改大创新点。可以借助ChatGPT的帮助,但ChatGPT给的代码往往看起来逻辑对但是直接用不了。每次改动千万记得代码备份!

六、做实验

SLAM方向对实验的要求还是挺高的,有条件的用自己数据集,没条件的用公用数据集例如kitti。实验部分一般为:

  1. 实验设置介绍:数据集、设备、参数设置
  2. 精度消融实验:自己跟自己比,验证你的创新点有没有用
  3. 精度对比实验:和其他算法在不同数据集上对比
  4. 时间或计算效率

七、选择期刊

切记一定先选择期刊再写论文,因为每个期刊的格式要求和页数是不一样的,比如RAL不允许超过8页。选完期刊,下载这个期刊的几篇与你相关的论文,看看他们怎么写,你才能更好的书写论文。

八、写论文

建议先从实验写起,因为这是你最熟悉的一部分,你的创新思路哪些最重要在消融实验中体现。写完实验你会对你的思路和创新点有更系统的认识。

最后写introduction 和摘要,大部分审稿人只是和你的大方向相关其实不太明白你具体小方向的理论,introduction是审稿人唯一了解你论文为什么研究这个、研究意义是什么,有什么难点的内容。想快速入门SLAM的同学私聊博主哦。

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

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

相关文章

视频翻译保留原音色pyvideotrans+clone-voice

剪映的视频翻译时长限制5分钟以内,需要积分2700首次有减免大概21.6元(1秒9积分/1元100积分) • 视频翻译配音工具pyvideotrans 将视频从一种语言翻译为另一种语言,并添加配音 打包链接:夸克网盘分享 升级补丁&#…

三、基础语法1(30小时精通C++和外挂实战)

三、基础语法1(30小时精通C和外挂实战) 1,开发环境的搭建2,cin和cout3、4,函数重载5,使用IDA分析exe6.1,默认参数6.2,默认参数的本质汇编7,externC1作用8,ext…

防御和进攻编程

防御性编程是许多程序员都听说过的一个术语,对于某些程序,防御性编程是必不可少的。对于其他程序,它可能偶尔使用一下。除此之外,还有攻击性编程。 在本文中,我们将首先研究“正常编程”。我们首先研究它,…

android(安卓)最简单明了解释版本控制之MinSdkVersion、CompileSdkVersion、TargetSdkVersion

1、先明白几个概念 (1)平台版本(Android SDK版本号) 平台版本也就是我们平时说的安卓8、安卓9、安卓10 (2)API级别(API Level) Android 平台提供的框架 API 被称作“API 级别” …

Mongodb的通配符索引

学习mongodb,体会mongodb的每一个使用细节,欢迎阅读威赞的文章。这是威赞发布的第95篇mongodb技术文章,欢迎浏览本专栏威赞发布的其他文章。如果您认为我的文章对您有帮助或者解决您的问题,欢迎在文章下面点个赞,或者关…

Blender 4.2 安装GIS插件步骤

Blender 4 更新以后插件安装变得复杂,插件界面的安装按钮不显示,界面布局改变,怎么安装插件: 1. 在线安装: “编辑”(Edit)>进入偏好设置(Preferences setting)>…

文件粉碎销毁 硬盘粉碎销毁 废弃的文件如何销毁

废弃的文件可以采用多种方法进行销毁,具体取决于文件的敏感性和数量。以下是一些常见的废弃文件销毁方法: 1. 机械粉碎:这是一种常见的方法,尤其适用于含有敏感信息的文件。可以使用碎纸机将文件切碎,对于小批量的资料…

Python新手如何制作植物大战僵尸?这篇文章教会你!

引言 《植物大战僵尸》是一款非常受欢迎的塔防游戏,玩家需要种植各种植物来抵御僵尸的进攻。在这篇文章中,我们将使用Python编写一个简化版的植物大战僵尸游戏,以展示如何使用Python创建游戏。 游戏规则 玩家将种植不同类型的植物来防御僵尸…

微软“蓝屏”事件:对全球IT基础设施韧性与安全性的深刻反思

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 非常期待和您一起在这个小…

【ai】windows ollama安装qwen

可以直接github下载,或者官方网站下载:参考大神的介绍当前最新0.28安装windows的预览版本,出现一个服务? 直接跑会TLS超时? 配置代理 export https_proxy=http://192.168.50.65:7890 export http_proxy

JavaWeb笔记_Session

Session概述 Session是一种在服务端记录用户会话信息的技术 Session的创建和获取 /*** HttpServletRequest对象中的方法:* public HttpSession getSession()* 如果当前服务端没有session,那就在服务端新建一个session对象* 如果在服务端有这个session,那么就直…

【C++】类和对象之继承

目录 继承的概念和定义 继承的概念 继承的定义 继承的定义格式 继承关系和访问限定符 继承基类成员访问方式的变化 访问权限实例 基类和派生类对象赋值转换 继承中的作用域 派生类的默认成员函数 继承与友元 继承与静态成员 复杂的菱形继承及菱形虚拟继承 继承的…

别再只知道埋头苦学python了!!学了python后月入1w不在话下,不准你还不知道!!!

在Python接单的过程中,掌握一些技巧、注意相关事项以及选择合适的接单平台是非常重要的 一、Python接单要注意哪些 报酬问题:在接单前,务必明确客户所说的报酬是税前还是税后,以避免后期产生纠纷。时间管理:不要与客户…

nacos get changed dataId error, code: 403

nacos get changed dataId error, code: 403问题解决 问题出现原因:解决办法:需要在运行项目的配置添加权限账号和密码,重启服务 问题出现原因: 由于nacosserver开启了权限验证,项目启动时出现异常 nacos.core.auth.caching.ena…

Java基础06:变量,常量,作用域(狂神说Java)

一.变量 有了static,即类变量,就可以不用new了可以直接调用,类变量之后再细讲 二.常量 三.变量的命名规范

权限(linux)

权限就是文件权限(linux万物皆文件) 本文主要涉及文件/文件夹权限 涉及指令: shell: kernal : linux内核 shell : 外壳 shell可以方便交互与操作 bash是一个具体的shell su su 切换用户 su -root 变…

AppInventor导入导出项目以及打包apk安装包

AppInventor导入导出项目以及打包apk安装包 1.概述 当项目开发好了之后,如果想将项目分享给其他人,或者导入其他人开发的项目怎么办那。 如果给其他人安装你的项目,如何安装那? 2.自带导出和导入功能 导出项目,在P…

【网络】tcp_socket

tcp_socket 一、tcp_server与udp_server一样的部分二、listen接口(监听)三、accept接收套接字1、为什么还要多一个套接字(明明已经有了个socket套接字文件了,为什么要多一个accept套接字文件?)2、底层拿到新…

基于VMware(虚拟机) 创建 Ubunton 24.04

目录 1. 设置网络 1. 在安装ubuntu时设置网络 2.在配置文件中修改 2.设置 root 密码 3. 防火墙设置 1 安装防火墙 2 开启和关闭防火墙 3 开放端口和服务规则 4 关闭端口和删除服务规则 5 查看防火墙状态 4. 换源 1. 在创建的时切换源 2.修改源配置 1、Ubuntu24.04 …

MBR60200PT-ASEMI无人机专用MBR60200PT

编辑:ll MBR60200PT-ASEMI无人机专用MBR60200PT 型号:MBR60200PT 品牌:ASEMI 封装:TO-247 批号:最新 恢复时间:35ns 最大平均正向电流(IF):60A 最大循环峰值反向…