视觉SLAM整理 (1)
来源:互联网 发布:淘宝卖龙年限定 编辑:程序博客网 时间:2024/06/05 15:06
一、三个坐标系(世界坐标、相机坐标、图像坐标)
1、一个定则(右手定则):
注:图片来源http://www.zybang.com/question/35583619443d2163d5dd731826c47f1a.html
2、三个坐标系图解:
注:图片来源http://blog.sina.com.cn/s/blog_b364631a0101imw1.html
3、两个变换
- 刚体变换(世界坐标【x,y,z】->相机坐标【Xc,Xc,Xc】)
透视变换 (相机坐标->图像坐标【Xu,Xv】)
注:图片来源http://blog.sina.com.cn/s/blog_b364631a0101imw1.html
- 公式:
- Xu = Xc * f / Zc
- Xv = Yc * f / Zc
- 推倒过程:
- 将xz面、yz面分开看
- 公式:
二、线性回归
概念:当Ax = B无解时,需要通过最小化误差的平方和(即最小二乘)找最优解
三、OpenCV图像配准:没有ICP算法?
内容:匹配两帧之间的特征点( ∈R3 )
1、一个最终目的:
- 最小化对应点的变化误差(即)
Min∑i=1n=||q−(Rp+t)||2 - 最终计算出相机位姿
2、两个方法:
- 直接法
- 特征法
|2017.2.10.23.04
3、匹配流程
1. 读取图片(包括RGB和DEP)-> imread
2. 构造特征点提取器和描述子提取器(SIFT)-> cv::FeatureDetector\DescriptorExtractor::create
3. 提取关键点detect(rgb,cv::KeyPoint)
4.计算描述子compute(rgb,cv::KeyPoint,cv::Mat)
5.匹配描述子 vector< cv::DMatch > matches;
cv::FlannBasedMatcher matcher;
matcher.match( desp1, desp2, matches );
6. 筛选匹配关系->去掉距离太远的匹配
|2017.2.19.11.21
四、视觉里程计(visual odometry)
1、概念:匹配两帧->估计运动->累加运动
2、流程:
- 计算两帧的关键点和特征描述子
- 匹配两帧的关键点和特征描述子(PnP)
- 如果inliers太少,则丢弃该帧,否则融合点云
- 重复第一步
0 0
- 视觉SLAM整理 (1)
- 视觉SLAM整理(1)
- 视觉SLAM整理(2)数学篇
- 视觉SLAM(一) 视觉SLAM漫谈
- 【视觉 SLAM 1】 视觉SLAM- RGBD 加 语义分割 1 (需要RGBD相机)
- 《视觉SLAM十四讲》学习系列(1)—经典视觉SLAM框架
- 双目视觉SLAM讲解1
- 视觉SLAM漫谈(一)
- (转)视觉SLAM漫谈
- 视觉SLAM漫谈(一)
- 视觉SLAM综述(上)
- 视觉SLAM综述(下)
- 视觉SLAM
- 视觉SLAM
- 半闲居士视觉SLAM十四讲笔记(2)初识 SLAM- part 1 基础理论
- SLAM(二)视觉SLAM
- 视觉SLAM实战(一):RGB-D SLAM V2
- 视觉SLAM实战(一):RGB-D SLAM V2
- 跟小博老师一起学Servlet ——Servlet案例
- 【Java并发编程实战】-----“J.U.C”:Phaser
- 正则表达式学习
- 进制转换方法
- 【Java并发编程实战】-----“J.U.C”:Exchanger
- 视觉SLAM整理 (1)
- 高并发服务端分布式系统设计概要(上)
- (@WhiteTaken)设计模式学习——工厂方法模式
- 【Java并发编程实战】-----“J.U.C”:CAS操作
- 使用 HTTP/2 加速 Node.js 应用
- 【Java并发编程实战】-----“J.U.C”:CLH队列锁
- redis for windows 开箱即用
- 学习总结
- N皇后问题(总结性)