Multi-View 3D Reconstruction with Geometry and Shading——Part-1
From PhDTheses Multi-View 3D Reconstruction with Geometry and Shading
计算机视觉的主要任务就是利用图像信息能智能理解周围的世界。
图像是传感器感知三维物体或场景的表面而产生的二维结果。而我们的目标是推测最能解释这些图像的物体的原始形状,是图像传感器工作过程的逆过程,换句话说,相机将三维世界转换到二维空间,而计算机视觉则要从二维空间图像获取物体或场景的三维信息。
由于种种因素,这是一个病态方程的求解。
第一,物体透射投影到图像的过程使得其原始三维场景失真,从而导致从单张图重构三维物体的原始结构变得不可能,除非是对简单的已知形状的物体,而这又是相当于添加了先验知识对物体结构的约束,并不适用大多数场合。
第二,多个物体同时排列出现在物体和相机的视场线上,也就是我们常说的遮挡,破坏了对我们最终理解物体和场景有价值的信息的获取过程。
类似于人类的视觉系统利用两只眼睛获取的信息来理解周围的世界,为了更好地实现重建并消除理解过程中的歧义,我们常常可以利用从不同视角同时拍摄到的多幅图像。最简单的方式就是利用我们常说的双目立体重建,通过分析两张图像来估计待构建的场景。相机的偏移以及我们两眼间的距离,可以让我们通过对射线在一张图像上形成的点与在另外一张图像上形成的与之对应的点之间的三角化推测出场景的三维位置。
显然,当我们利用多于两张关于场景的图像进行重建时,不仅能通过同时三角化多条射线来提高重建的精确度,还能通过核对冗余观察的一致性改善重建的完整度。这一过程就是我们所说的术语“多视图立体重建”。继续刚才与人类视觉系统的对比,尽管我们只有两只眼睛,但我们的脑袋是可以动的,能有效获得不止两张图像让我们的大脑去感知整个场景(虽然不是同步获取),这就有助于我们清除误解,使我们对世界的感知更加清晰明确。
除了立体视觉,人类视觉系统同时还会利用其它被动信息感知深度。我们暂时不管大脑中主动通过语义理解和先验知识解释得到的信息,例如经验会告诉我们,汽车在路面上行驶,并且限制它们的形状和尺寸,因为它们是我们已知的汽车。另外一个与立体重建互补的具体的有用信息是明暗信息。明暗信息是由于物体的形状、物体表面材料的性质以及照射在物体表面上的光的联合相互作用而产生,其中表面材料的性质指的是它的颜色和它反射光线的方式。明暗信息是帮助我们理解我们所生活的世界的最有力的线索之一。
基于光线的重建方法如阴影恢复形状(Shape from Shading, SfS)试图通过渲染过程的逆过程进行,从明暗信息中推导能解释它所展示出来的表现形式的物体的性质。考虑到颜色会影响物体的外表,基于明暗信息的重建方法在有纹理区域遇到了严惩的问题,因为将观测到的亮度分解成颜色和深度的过程会遇到歧义性问题。而另一方面,多视图立体严重依赖物体表面丰富的与众不同的纹理,因为这使得对同一个三维点在不同二维图像上的对应点的匹配更加容易、更加精确,且对于连续的三角化以及深度信息的提取也很有利。
相反,图像中弱纹理或者无纹理区域,也即是大片均匀由相同材料构成具有相同性质的区域,对立体重建而言是一个严重的问题,因为这样的区域特征匹配难度很大,尤其对于严重依赖特征点性质而进行的三角化过程,而与此同时这些区域又是基于明暗信息的重建方法大展身手的绝好应用场合。
综合考虑两种不同方法的优点和缺点,很自然地结合多视图立体和明暗信息以提高三维重建质量的重建方法就成为近期人们研究的热点。
Multi-View 3D Reconstruction with Geometry and Shading——Part-1的更多相关文章
- Multi-View 3D Reconstruction with Geometry and Shading——Part-2
From PhDTheses Multi-View 3D Reconstruction with Geometry and Shading 我们的主要目标是只利用图像中的信息而没有额外的限制或假设来得 ...
- [SLAM] 02. Some basic algorithms of 3D reconstruction
链接:http://www.zhihu.com/question/29885222/answer/100043031 三维重建 3D reconstruction的一个算法思路介绍,帮助理解 首先一切 ...
- Real-time 3D Reconstruction using Kinect
http://jiakaizhang.com/project/real-time-3d-reconstruction/ Real-time 3D Reconstruction using Kinect ...
- Camera Calibration and 3D Reconstruction
3D RECONSTRUCTION WITH OPENCV AND POINT CLOUD LIBRARY http://stackoverflow.com/questions/19205557/op ...
- Wordpress Calendar Event Multi View < 1.4.01 反射型xss漏洞(CVE-2021-24498)
简介 WordPress是Wordpress基金会的一套使用PHP语言开发的博客平台.该平台支持在PHP和MySQL的服务器上架设个人博客网站.WordPress 插件是WordPress开源的一个应 ...
- [SLAM] 02 Some algorithms of 3D reconstruction
链接:http://www.zhihu.com/question/29885222/answer/100043031 首先一切建立在相机模型 x = kPX 上 x,X分别代表图片和空间中的二维三 ...
- [读论文]Shading-aware multi view stereo
如何实现refine的? 几何误差和阴影误差如何加到一起? 为了解决什么问题? 弱纹理或无纹理:单纯的多视图立体算法在物体表面弱纹理或者无纹理区域重建完整度不够高,精度也不够高,因此结合阴影恢复形状来 ...
- GeoDesc: Learning Local Descriptors by Integrating Geometry Constraints
这篇论文提出了一种新的局部描述子学习方法,有一些点值得学习,记录下来以供参考.文章中涉及了一些3D reconstruction.structure from 的知识,不是很了解,所以理解可能有偏颇. ...
- Pushing state-of-the-art in 3D content understanding
Pushing state-of-the-art in 3D content understanding 2019-10-31 06:34:08 This blog is copied from: h ...
随机推荐
- 折腾Java设计模式之访问者模式
博客原文地址:折腾Java设计模式之访问者模式 访问者模式 Represent an operation to be performed on the elements of an object st ...
- Spring注解IOC/DI(4)
2019-03-08/11:10:17 演示:使用注解的方式完成注入对象中的效果 注解参考链接:https://www.cnblogs.com/szlbm/p/5512931.html Spring中 ...
- 基于html5 plus + Mui 移动App开发(一)
使用Html5 plus + Mui 进行移动App开发,有一段时间了,这几日得空,做个资讯App分享给大家. 今天主要分享主页实现,首先看下效果: 此界面主要分为:标题.内容分类列表.搜索及设置按钮 ...
- (办公)git入门
git版本库(分布式版本控制系统),可以记录每次文件的改动,是程序开发的好帮手. 1.创建版本库: repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文 ...
- nginx地址代理(2)
本章要讲的是服务器的代理: Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器, 一对一代理:就一个服务器监听 server { listen ...
- Docker + Sonarqube 环境搭建
Sonar概述 Sonar 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具. 一,postgres 数据库下载 docker pul ...
- Windows 组策略的生效规则
一般的继承与处理规则 若上层父OU的某个组策略项目被设定,但是其下层子OU未设定该项目,则下层子OU继承上层父OU的这个组策略项目设定值 若在下层子OU内的某个组策略项目被设定,则此设定值预设会覆盖由 ...
- selenium之元素定位-css
CSS定位方式和XPATH定位方式基本相同,只是CSS定位表达式有其自己的格式.CSS定位方式拥有比XPATH定位速度快,且比XPATH稳定的特性.下面详细介绍CSS定位方式的使用方法 被测网页的HT ...
- Web前端教程4-JQuery教程
目录 1. JQuery基础 1.1. 基本语法 1.2. JQ和JS的差异 1.3. JQ入口函数的写法 1.4. JQ核心函数 1.5. JQ对象 2. JQ静态和实例方法 2.1. JQ静态方法 ...
- 《Python 数据科学实践指南》读书笔记
文章提纲 全书总评 C01.Python 介绍 Python 版本 Python 解释器 Python 之禅 C02.Python 基础知识 基础知识 流程控制: 函数及异常 函数: 异常 字符串 获 ...