如何实现refine的?

几何误差和阴影误差如何加到一起?

为了解决什么问题?

弱纹理或无纹理:单纯的多视图立体算法在物体表面弱纹理或者无纹理区域重建完整度不够高,精度也不够高,因此结合阴影恢复形状来重建物体表面的高频细节。

物体表面具有随空间变化的反照率的区域:使用双三次模型完成光滑表面面片的表达,从而隐式保证了模型对空间变化反照率区域的有效性。

能量方程权重因子:利用图像梯度,在梯度大的区域纹理丰富使用几何约束,梯度小的区域表面平坦均匀使用明暗阴影约束。

同样是利用图片中的阴影信息,是否有考虑到Photometric Stereo和Shape from Shading的异同点……

解决方案?

图像坐标系中的一点与世界坐标系中的三维点之间的关系

x=K[RX+t]

根据这个公式可以得到参考视角图像与相邻图像像素之间的单应关系。

TODO

空间中的点一定能对应到图像中的某一个像素上吗?

是否准确?

怎么选择?设置阈值吗?设置的标准又该怎么确定?

还是说直接扔进去迭代更新就可以了?为什么?

然后利用空间点在参考视角图像中的坐标处的图像梯度构造几何误差项,将所有相邻图像中所有像素点间的误差值相加。

Bidirectional Reflectance Distribution Function根据入射方向的辐照度估计出射方向的辐射度。周围环境光照的球谐函数模型R=a·ΣBh

基函数的系数可以由前一次产生的几何形状进行估计,第一次估计时使用多视图立体产生的初始几何形状。对其取log然后计算梯度,可以得到一个将albedo和shading分离的方程。

前次几何形状求得的反照率的值如何映射到图像坐标系中?

每次映射的位置不同有无影响?

如果表面反照度是局部恒常的,图像亮度梯度只与表面法向量的变化有关,给定光照模型,表面法向量只能按照模型假设在特定方向上改变,而与反照度的实际值无关。

仍然是针对图像中的每一个像素点的梯度值进行计算,估计值与真实值之间的误差构成阴影误差项。

两个误差项使用的都是L1范数的形式,对不满足假设的外点而言更加鲁棒。由于对数域的值相对小很多,使用图像亮度梯度的模的倒数对明暗信息误差项进行放大保证两项相对均衡。

达到了什么样的效果?

在重建精度和完整度上有一定的改进,运行时间也有所提升。

[读论文]Shading-aware multi view stereo的更多相关文章

  1. 读论文系列:Deep transfer learning person re-identification

    读论文系列:Deep transfer learning person re-identification arxiv 2016 by Mengyue Geng, Yaowei Wang, Tao X ...

  2. [学习笔记]编译sensetime发表的Single View Stereo Matching(SVS)遇到的问题

    最近在研究用深度学习预测图像深度信息的方法,一开始用的是2017年CVPR上Godard大神的monodepth,代码在这里.这篇文章介绍了利用双目的consistency训练网络以对单张图像进行深度 ...

  3. (读论文)推荐系统之ctr预估-NFM模型解析

    本系列的第六篇,一起读论文~ 本人才疏学浅,不足之处欢迎大家指出和交流. 今天要分享的是另一个Deep模型NFM(串行结构).NFM也是用FM+DNN来对问题建模的,相比于之前提到的Wide& ...

  4. Wordpress Calendar Event Multi View < 1.4.01 反射型xss漏洞(CVE-2021-24498)

    简介 WordPress是Wordpress基金会的一套使用PHP语言开发的博客平台.该平台支持在PHP和MySQL的服务器上架设个人博客网站.WordPress 插件是WordPress开源的一个应 ...

  5. Deep Learning 28:读论文“Multi Column Deep Neural Network for Traffic Sign Classification”-------MCDNN 简单理解

    读这篇论文“ Multi Column Deep Neural Network for Traffic Sign Classification”是为了更加理解,论文“Multi-column Deep ...

  6. Deep Learning 24:读论文“Batch-normalized Maxout Network in Network”——mnist错误率为0.24%

    读本篇论文“Batch-normalized Maxout Network in Network”的原因在它的mnist错误率为0.24%,世界排名第4.并且代码是用matlab写的,本人还没装caf ...

  7. 读论文系列:Object Detection SPP-net

    本文为您解读SPP-net: Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition Motivat ...

  8. 读论文系列:Object Detection NIPS2015 Faster RCNN

    转载请注明作者:梦里茶 Faster RCNN在Fast RCNN上更进一步,将Region Proposal也用神经网络来做,如果说Fast RCNN的最大贡献是ROI pooling layer和 ...

  9. 读论文Machine Learning for Improved Diagnosis and Prognosis in Healthcare

    Deep Learning的基本思想 假设我们有一个系统S,它有n层(S1,…Sn),它的输入是I,输出是O,形象地表示为: I =>S1=>S2=>…..=>Sn => ...

随机推荐

  1. forEach()和for/in循环的缺点与for-of循环

    以数组为例,JavaScript 提供多种遍历语法.最原始的写法就是for循环. for (var index = 0; index < myArray.length; index++) { c ...

  2. Linux常见指令大全

    转载自https://www.cnblogs.com/caozy/p/9261224.html 前言 本文特点 授之以渔:了解命令学习方法.用途:不再死记硬背,拒绝漫无目的: 准确无误:所有命令执行通 ...

  3. 你不知道的JavaScript(上)this和对象原型(三)

    第四章  混核对象“类” 1.理论 面向对象编程强调的是数据和操作数据的行为本质上是互相关联的.实例化,继承,多态性 javascript中只有对象,并不存在可以被实例化的“类”.一个对象并不会被复制 ...

  4. tomcat启动内存溢出三种解决方案:java.lang.OutOfMemoryError:PermGen space解决办法

    问题: 严重: Error waiting for multi-thread deployment of WAR files to completejava.util.concurrent.Execu ...

  5. 学习python这么久,有没有考虑发布一个属于自己的模块?

    ​ 1. 为什么需要对项目分发打包? 平常我们习惯了使用 pip 来安装一些第三方模块,这个安装过程之所以简单,是因为模块开发者为我们默默地为我们做了所有繁杂的工作,而这个过程就是 打包. 打包,就是 ...

  6. python 正则表达式re使用模块(match()、search()和compile())

    摘录 python核心编程 python的re模块允许多线程共享一个已编译的正则表达式对象,也支持命名子组.下表是常见的正则表达式属性: 函数/方法 描述 仅仅是re模块函数 compile(patt ...

  7. C# List集合 GroupBy分组

    var grpBalance = listBalance.GroupBy(m => new { m.MerChantId, m.Name}).Distinct().Select(t => ...

  8. Mapbox轨迹回放

        轨迹回放是webgis中的常见功能,是一种被客户喜闻乐见的GIS动画.     动画是一种短时间内不停重绘达到不断运动的效果.本文中轨迹回放就是事先计算好所需要的点,后面再进行播放.      ...

  9. 如何在windows下安装linux双系统

    首先是看这篇博客,讲得很详细,但是有一点小小的区别,这里把整个过程回顾一下. https://www.cnblogs.com/masbay/p/10745170.html 第一步,刻盘,将一个u盘刻录 ...

  10. C语言基于NIOSII的软件开发及流水灯设计

    一.Quartus II 12.1 (32-Bit)进行硬件设计 1.所需要的系统元器件组成 2.系统电路图 二.Nios II 12.1 Software Build Tools for Eclip ...