【3D reconstruction 学习笔记】

三维重建 3D reconstruction

  • 1. 相机几何
    • 针孔相机
    • 摄像机几何
  • 2. 相机标定
    • 线性方程组的解
    • 齐次线性方程组的解
    • 非线性方程组的最小二乘解
    • 透镜相机标定
    • 带畸变的相机标定
  • 3. 单视图重建
    • 2D平面上的变换
    • 3D空间上的变换
    • 单视测量
      • 无穷远点 无穷远线 无穷远平面
      • 影消点 影消线
      • 单视重构
  • 4. 三维重建与极几何
  • 5. 双目立体视觉重建
  • 6. 多视图重建
  • 7. SFM 系统设计
  • 8. SLAM系统设计

学习笔记第二部链接:https://blog.csdn.net/qq_35200351/article/details/136947058
课程链接 B站搜索:北邮教授鲁鹏15小时把计算机视觉3D三维重建讲的如此透彻

1. 相机几何

针孔相机

在这里插入图片描述
摄像机模型
对焦

在这里插入图片描述

在这里插入图片描述
三维到二维的映射关系

摄像机几何

焦距:相机的焦距 不是透镜的
在这里插入图片描述
坐标系转换:相机坐标系<=>像素坐标系
其他:图像坐标系
不是线性变换
在这里插入图片描述
齐次坐标
欧式空间(2d) 一 一对应齐次空间 (3d),反过来不是
在这里插入图片描述
转换为线性变换了
在这里插入图片描述
摄像机的投影矩阵
在这里插入图片描述
制造工艺造成摄像机偏移
在这里插入图片描述
相机坐标系下的相机模型
K有几个自由度,5DOF
在这里插入图片描述
再复习一遍:
在这里插入图片描述
在这里插入图片描述

2. 相机标定

线性方程组的解

在这里插入图片描述
在这里插入图片描述

齐次线性方程组的解

在这里插入图片描述
在这里插入图片描述

非线性方程组的最小二乘解

在这里插入图片描述

透镜相机标定

求解摄像机内参 外参数矩阵,描述了三维世界到二维像素的映射关系
标定目标
在这里插入图片描述

在这里插入图片描述
m不是真实的投影矩阵,差一个放大系数
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

带畸变的相机标定

在这里插入图片描述

3. 单视图重建

2D平面上的变换

等距变换
相似变换
仿射变换
透视变换

3D空间上的变换

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

单视测量

无穷远点 无穷远线 无穷远平面

在这里插入图片描述
在这里插入图片描述
2D平面上的无穷远点
在这里插入图片描述
2维平面中的无穷远线
在这里插入图片描述
3D空间中的面
在这里插入图片描述
3D空间中的无穷远平面
在这里插入图片描述

影消点 影消线

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
影消点 影消线 是一个确定的点 线
在这里插入图片描述
在这里插入图片描述
影消线与平面法向量
在这里插入图片描述
在这里插入图片描述

单视重构

在这里插入图片描述

4. 三维重建与极几何

在这里插入图片描述

5. 双目立体视觉重建

6. 多视图重建

7. SFM 系统设计

8. SLAM系统设计

第二部链接:https://blog.csdn.net/qq_35200351/article/details/136947058
课程链接 B站搜索:北邮教授鲁鹏15小时把计算机视觉3D三维重建讲的如此透彻

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AJAX踩坑指南(知识点补充)

JWT JSON Web Token是目前最为流行的跨域认证解决方案 如何获取&#xff1a;在使用JWT身份验证中&#xff0c;当用户使用其凭据成功登录时&#xff0c;将返回JSON Web Token(令牌&#xff09; Token本质就是一个包含了信息的字符串 如何获取Token:登录成功之后&#xff0c;服务…

K8s+Nacos实现应用的优雅上下线【生产实践】

文章目录 前言一、环境描述二、模拟请求报错三、配置优雅上下线1.修改nacos配置2.修改depolyment配置3.重新apply deployment后测试4.整体(下单)测试流程验证是否生效 四、期间遇到的问题 前言 我们在使用k8s部署应用的时候&#xff0c;虽然k8s是使用滚动升级的&#xff0c;先…

处理登录失效后提示多个错误

问题: 我的场景是后端规定&#xff0c;即使登录失效返回的code仍是200&#xff0c;然后data的code是999什么的&#xff1b; 原本代码&#xff1a; 修改版代码&#xff1a; 通过节 const NotLoginEvent () > {router.replace("/login");localStorage.clear();M…

队列——数据结构——day5

队列 队列(queue)是只允许在一端进行插入操作&#xff0c;而在另一端进行删除操作的线性表。 队列是一种先进先出(First In First Out)的线性表&#xff0c;简称FIFO。允许插入的一端称为队尾&#xff0c;允许删除的一端称为队头。假设队列是q(a1,a2,……,an),那么a1就是队头元…

银行数字人民币系统应用架构设计

2019年10月&#xff0c;01区块链联合数字资产研究院发布了《人民币3.0&#xff1a;中国央行数字货币运行框架与技术解析》&#xff0c;从数字货币界定和人民币发展历程出发&#xff0c;区分了央行数字货币与比特币、移动支付等的区别&#xff0c;全面介绍了央行数字货币的发展历…

C#,图论与图算法,有向图(Direct Graph)广度优先遍历(BFS,Breadth First Search)算法与源程序

1 图的广度优先遍历 图的广度优先遍历(或搜索)类似于树的广度优先遍历(参见本文的方法2)。这里唯一需要注意的是,与树不同,图可能包含循环,因此我们可能再次来到同一个节点。为了避免多次处理节点,我们使用布尔访问数组。为简单起见,假设所有顶点都可以从起始顶点到达…

ChatGPT智能聊天系统源码v2.7.6全开源Vue前后端+后端PHP

测试环境:Linux系统CentOS7.6、宝塔、PHP7.4、MySQL5.6,根目录public,伪静态thinkPHP,开启ssl证书 具有文章改写、广告营销文案、编程助手、办公达人、知心好友、家庭助手、出行助手、社交平台内容、视频脚本创作、AI绘画、思维导图等功能 ai通道:文心一言、MiniMax、智…

GraalVM详细安装及打包springboot、java、javafx使用教程(打包springboot2篇)

前言 在当前多元化开发环境下&#xff0c;Java作为一种广泛应用的编程语言&#xff0c;其应用部署效率与灵活性的重要性日益凸显。Spring Boot框架以其简洁的配置和强大的功能深受开发者喜爱&#xff0c;而JavaFX则为开发者提供了构建丰富桌面客户端应用的能力。然而&#xff…

Linux设备驱动开发 - 三色LED呼吸灯分析

By: fulinux E-mail: fulinux@sina.com Blog: https://blog.csdn.net/fulinus 喜欢的盆友欢迎点赞和订阅! 你的喜欢就是我写作的动力! 目录 展锐UIS7885呼吸灯介绍呼吸灯调试方法亮蓝灯亮红灯亮绿灯展锐UIS7885呼吸灯DTS配置ump9620 PMIC驱动ump9620中的LED呼吸灯驱动LED的tr…

python--容器、列表

1.python官方内置的容器 list: set: tuple: dict: 弱数据类语言通通没有数组&#xff0c;因为数组指的是 类型固定、大小固定、连续的内存空间。 2.链表&#xff1a; 非连续内存空间 python用的是双向链表 单向链表&#xff1a;优点&#xff1a;不浪费内存&#xf…

代码随想录day28(1)二叉树:二叉搜索树中的插入操作(leetcode701)

题目要求&#xff1a;给定二叉搜索树&#xff08;BST&#xff09;的根节点和要插入树中的值&#xff0c;将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据保证&#xff0c;新值和原始二叉搜索树中的任意节点值都不同。 思路&#xff1a;对于二叉搜索树来说&…

如何使用ospf (enps) 简单实践ospf协议

1. OSPF的基本概念 OSPF&#xff08;Open Shortest Path First&#xff0c;开放式最短路径优先&#xff09;是一种广泛应用于TCP/IP网络中的内部网关协议&#xff08;Interior Gateway Protocol, IGP&#xff09;&#xff0c;主要用于在同一自治系统&#xff08;Autonomous Sys…

SpringBoot项目集成XXL-job

文章目录 首先引入依赖配置信息配置类定义定时任务执行方法配置任务执行器配置任务执行计划 在集成 XXL-job 前,首先确保部署了 XXL-job 的 admin 服务, 如果还没有部署的话请参照 Docker安装部署XXL-Job 将 XXL-job 部署起来. 此时, XXL-job 已经部署好了, 下来一步一步的来集…

【Python 滑块不同的操作】对滑块进行处理,列如切割、还原、去除、无脑识别距离等等

文章日期&#xff1a;2024.03.23 使用工具&#xff1a;Python 类型&#xff1a;图片滑块验证的处理&#xff08;不限于识别距离&#xff09; 使用场景&#xff1a;&#xff1f; 文章全程已做去敏处理&#xff01;&#xff01;&#xff01; 【需要做的可联系我】 AES解密处理&a…

BGP4+简介

定义 BGP是一种用于自治系统AS&#xff08;Autonomous System&#xff09;之间的动态路由协议&#xff0c;常用版本是BGP-4&#xff0c;BGP-4只能传递IPv4路由。针对IPv6的BGP4扩展&#xff0c;通常称为BGP4。 目的 BGP4用于在AS之间传递路由信息&#xff0c;并不是所有情况…

Python爬取歌曲宝音乐:轻松下载Jay的歌

歌曲宝是一个不用付费就能听jay的歌曲&#xff0c;但是每次都只能播放一首不方便&#xff0c;于是今天想把它下载下来&#xff0c;本地循环播放&#xff0c;它所用到的接口是某我的还不错哈 获取搜索接口 分析html请求接口&#xff0c;获取到的数据是直接渲染好的HTML内容&…

lvs+keepalived+nginx实现高可用

主机&#xff1a;192.168.199.132 备机&#xff1a;192.168.199.133 真实服务器1&#xff1a;192.168.199.134 真实服务器2&#xff1a;192.168.199.135 问题&#xff1a; 防火墙没关 132配置ipvsadm进行dr模式 132配置keepalived.conf 133配置ipvsadm进行dr模式 133配置ke…

【测试开发学习历程】计算机编程语言

前言&#xff1a; 学习完数据库&#xff0c;我们便要进入到编程语言的内容当中了。 这里先对编程语言写出大致的分类&#xff0c; 在这之后&#xff0c;我们会以Python为重点&#xff0c; 开始测试开发为重点的编程语言学习。 目录 1 计算机编程语言的发展 2 语言的分类…

高蛋白的猫粮品牌有哪些?

亲爱的猫友们&#xff0c;你们是否也在寻找一款高蛋白的猫粮&#xff0c;希望给自家的小猫咪提供最好的营养呢&#xff1f;&#x1f431; 在市面上&#xff0c;高蛋白的猫粮品牌确实不少&#xff0c;但要说到真正让人信赖的&#xff0c;福派斯鲜肉无谷猫粮无疑是一个不错的选择…

如何自己构建 Ollama 模型

如何自己构建 Ollama 模型 0. 引言1. 下载原始模型2. 创建 Modelfile 文件3. 构建 Ollama 模型4. 运行自构建的 Ollama 模型 0. 引言 针对模型新出的大模型&#xff0c;可能 Ollama Models Library 不提供&#xff0c;或者会在今后的某个时点提供。还有可能 Ollama Models Lib…