立体视觉 StereoVision
双目相机
原理

相机标定
图像校正
立体匹配
- 匹配代价计算(Matching Cost Computation:CC)
- 代价聚合(Cost Aggregation:CA)
- 视差计算(Disparity Computation )
- 视差精化(Disparity Refinement ):对上一步得到的粗估计的视差图进行精确计算,策略有很多,例如plane fitting,BP,动态规划等。这里不再熬述。
全局匹配算法得到的结果比较准确,但是其运行时间比较长,不适合实时运行。主要的算法有图割(graph cuts)、信念传播(belief propagation)、动态规划(Dynamic Programming )等算法。
局部匹配算法基本原理是给定在一幅图像上的某一点,选取该像素点邻域内的一个子窗口,在另一幅图像中的一个区域内,根据某种相似性判断依据,寻找与子窗口图像最为相似的子图,而其匹配的子图中对应的像素点就为该像素的匹配点。通常方法有SAD、SSD、NCC等等。
视差计算 Disparity map
深度计算 Depth map
多视角立体视觉 MVS
三维重建

链接:https://www.zhihu.com/question/53565660/answer/475141180
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
针对初学者
书籍I Computer Vision for Visual Effects
书籍II Computer Vision Algorithms and Applications
针对具备一定基础的同学
三维重建的每个基础模块挑选了 1-2 篇代表性文献,强烈建议阅读以下相关的原著文献, 这些文献是经过时间检验非常经典的文献,这将大大提升你们的科研和工程能力。 这些文章包括:
Sift 特征点检测
[1] Distinctive Image Features from Scale-Invariant Keypoints
增量 SFM
[2] Photo Tourism Exploring Photo Collections in 3D
[3] Structure-from-Motion Revisited
稠密匹配&&多视角立体视觉
[4] Multi-View Stereo for Community Photo Collections
表面重建
[5] Reconstruction and Representation of 3D Objects with Radial Basis
纹理贴图
[6] Let it be color! Large-Scale Texturing of 3D Reconstructions
相关网站
我们也提供一些相关的网站,这些网站是一些比较著名的开源系统。
MVE: https://www.gcc.tu-darmstadt.de/home/proj/mve/index.en.jsp
Bundler: http://www.cs.cornell.edu/~snavely/bundler/
VisualSFM: http://ccwu.me/vsfm/
OpenMVG: https://openmvg.readthedocs.io/en/latest/software/SfM/SfM/
ColMap: https://demuc.de/colmap/
相关的开源代码
https://github.com/colmap/colmap
https://github.com/simonfuhrmann/mve
Ref:
https://www.bilibili.com/video/BV1pk4y167eE 小亮
https://www.zhihu.com/question/53565660
SFM - Structure from Motion, 用一个移动的单目相机拍的照片可以得到深度信息,也可以用来做三维重建
SLAM - 同时定位和建图,和SFM解决同样的问题,只是强调了同时,就是实时性
Image Rectification - 图像矫正是通过分别对两张图片用单应(homography)矩阵变换(可以通过标定获得)得到的
Ref:
- 立体视觉算法汇总|单目、双目、多目
- 立体匹配算法原理与应用-奥比中光 讲了各种代价函数,E2E 各种网络
立体视觉 StereoVision的更多相关文章
- OpenCV+OpenGL 双目立体视觉三维重建
0.绪论 这篇文章主要为了研究双目立体视觉的最终目标--三维重建,系统的介绍了三维重建的整体步骤.双目立体视觉的整体流程包括:图像获取,摄像机标定,特征提取(稠密匹配中这一步可以省略),立体匹配,三维 ...
- 基于HALCON的双目立体视觉系统实现
双目立体视觉是机器视觉的一种重要形式,它是基于视差原理并由多幅图像获取物体三维几何信息的方法.双目立体视觉系统一般由双摄像机从不同角度同时获得被测物的两幅数字图像,或由单摄像机在不同时刻从不同角度获得 ...
- Cesium左右立体视觉续篇——遗留问题(渲染错误)以及临时替代方案
遗留问题详细说明 已解决部分 立体视觉中的视差: 横向渲染压缩. 遗留问题 1.左右分屏中的部分地图切片未渲染 问题描述:如下图(图片为解决问题后的图片),红色区域会显示黑色,无法正常显示影像.2.相 ...
- 在CesiumVR基础上实现3D左右立体视觉
整体思路 在VR模块的基础上调整视差,使其随距离发生变化: 左右分屏时,需要将左右屏的横向进行1/2压缩:这是因为3D-TV在对左右格式影像进行合并时,会进行拉伸: 左屏幕的相机相对于原来的(右屏)相 ...
- [OpenCV实战]49 对极几何与立体视觉初探
本文主要介绍对极几何(Epipolar Geometry)与立体视觉(Stereo Vision)的相关知识.对极几何简单点来说,其目的就是描述是两幅视图之间的内部对应关系,用来对立体视觉进行建模,实 ...
- 立体视觉-opencv中立体匹配相关代码
三种匹配算法比较 BM算法: 该算法代码: view plaincopy to clipboardprint? CvStereoBMState *BMState = cvCreateStereoBMS ...
- OpenCV stereo matching 代码 matlab实现视差显示
转载请注明出处:http://blog.csdn.net/wangyaninglm/article/details/44151213, 来自:shiter编写程序的艺术 基础知识 计算机视觉是一门研究 ...
- 【腾讯Bugly干货分享】WebVR如此近-three.js的WebVR示例解析
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57c7ff1689a6c9121b1adb16 作者:苏晏烨 关于WebVR 最 ...
- Atitit 图像处理类库大总结attilax qc20
Atitit 图像处理类库大总结attilax qc20 1.1. 选择与组合不同的图像处理类库1 1.2. Halcon 貌似商业工具,功能强大.1 1.3. Openvc Openvc功能也是比 ...
- VR系统的分类
转载请声明转载地址:http://www.cnblogs.com/Rodolfo/,违者必究. 根据用户参与和沉浸感的程度,通常把虚拟现实分为4大类:桌面虚拟现实系统.沉浸式虚拟现实系统.增强虚拟现实 ...
随机推荐
- 让你的vscode搭载ChatGPT获得来自 AI 的编程指导
一直以来,VS Code 都是开发者心目中的生产力神器,它免费.开源且跨平台,被称为最好用的 IDE. 把 VS Code 和 ChatGPT 结合使用,用户将获得来自 AI 的编程指导,包括代码解释 ...
- IDEA新手使用教程之使用技巧总结【详解】
IDEA是一款功能强悍.非常好用的Java开发工具,近几年编程开发人员对IDEA情有独钟. 一.IDEA的下载 IDEA下载地址:https://www.jetbrains.com/idea/down ...
- AI驱动音乐创新,网易数帆X云音乐刷新MIREX世界纪录 网易数帆 网易数帆
在近期揭榜的2021国际音频检索评测大赛(MIREX)上,网易数帆易智语音团队携手网易云音乐音视频实验室,凭借生产级AI技术创新能力,在歌词识别和歌单识别两个赛道大幅打破世界纪录夺得冠军. MIREX ...
- UE Spline 样条网格体组件添加碰撞
最近做的一个功能是通过Spline 生成管道模型. 如下图所示: 遇到的一个问题是需要给生成的管路加上碰撞.其中需要两个重要的步骤: 设置SplineMeshComponent的碰撞预设 找到&quo ...
- PHP 使用非对称加密算法
加密的类型: 在日常设计及开发中,为确保数据传输和数据存储的安全,可通过特定的算法,将数据明文加密成复杂的密文.目前主流加密手段大致可分为单向加密和双向加密. 单向加密:通过对数据进行摘要计算生成密文 ...
- Django使用 DoesNotExist 异常和 Logger 来记录异常情况
代码不仅处理了特定的异常类型,还可以添加更多的调试信息来帮助诊断问题.可以使用 DoesNotExist 异常和 Logger 来记录异常情况. from django.core.exceptions ...
- C#实现单例模式的6种方法
介绍 单例模式是软件工程学中最富盛名的设计模式之一.从本质上看,单例模式只允许被其自身实例化一次,且向外部提供了一个访问该实例的接口.通常来说,单例对象进行实例化时一般不带参数,因为如果不同的实例化请 ...
- C#:利用“事务+乐观锁+version”解决并发下的数据一致性问题
本文重点介绍通过事务控制,利用数据库的乐观锁和时间戳,来解决并发(非高并发)环境下的脏读.幻读.不可重复读等问题,同时也能解决超卖等现象,对开发企业管理系统的朋友提供一个思路,为更突出主题思路,文涉及 ...
- BCLinux 8.2安装配置图解教程--龙蜥社区国产移动云系统
社区镜像下载地址:https://openanolis.cn/download 安装参考地址:https://www.osyunwei.com/archives/13017.html 1安装系统 界面 ...
- 【JavaWeb】封装一个MVC框架
框架参考自: https://www.bilibili.com/video/BV1gV411r7ct 在老师的基础上添加了 1.POST参数处理 2.Tomcat8版本下中文乱码处理 3.可声明请求方 ...