码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 三维重建一种实现算法


             三维重建通常分为基于图像,深度学习,nerf的三维重建方法,本文介绍一种基于slam位姿的用open3d实现的三维重建实现方式。

            硬件配置是一个rgbd相机加2d雷达,加广角相机同时装在同一个小车上,每个相机经过内外参相机标定,以保证相对位置关系的准确性。

            具体算法步骤如下,用orbslam3,获取关键帧位姿,并保存关键帧对应的rgbd图,具体要修改orbslam3的track线程的关键帧生成处,增加保存rgbd图的接口,另外要修改位姿输出保存部分,把所有子图的关键帧位姿都同步保存下来。

           先手推小车进行建图操作,以室内环境为准,走遍所有房间,得到所有的位姿轨迹文件和对应的rgb图和深度图。

           安装open3d软件包,编写python代码,open3d读入之前orbslam3生成的所有位姿文件和rgbd图,同时读入之前标定的相机内外参数,利用open3d自带的mesh功能完成表面重建,内部具体是planeopt算法。完成mesh后基本得到重建结果,可以用于展示。

            纹理贴图部分可以用opengl在上位机实现,主要是通过视场方向和光线追踪把纹理图贴到对应三角面片上。

            需要注意的问题,用orbslam3时只用前端即可,优化后的效果可能会影响位姿间的关系,导致重建结果不平整,另外orbslam3有多地图处理,跟踪丢失就建图,要把所有子图位姿都保存下来。

     

  • 相关阅读:
    Vue快速入门、Vue常用命令、Vue生命周期、Element快速入门、Element布局、Element组件
    如何骚操作通过科目一斩获高分,python带你了解~
    [Golang] cgo 调用 .so 捕获异常问题
    K最邻近法KNN分类算法(单点分类预测)
    (六)Selenium自动化测试实战—unittest框架
    务实java虚拟机——常量池详解
    04. 组合总和
    Cadence导入IBIS模型用于仿真
    「中间件」rabbitmq 消息队列基础知识
    算法训练Day39 | LeetCode62. 不同路径;LeetCode63.不同路径II
  • 原文地址:https://blog.csdn.net/weixin_43802726/article/details/138136138
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号