surround360的开源资料地址:
https://github.com/facebook/Surround360
下载好代码和测试数据集,配置好环境,关于环境配置可以参考这篇博客,写的挺详细:
http://blog.csdn.net/sunyolanda_cs/article/details/52448399
运行代码的说明可以参考这篇博客:
http://blog.csdn.net/sunyolanda_cs/article/details/52448606
跑一下程序看看效果。代码跑一遍还是比较慢的,如果顺利的话,会生成如下两张左右眼视差图:


从结果来看,天空、地面和中间融合的很好,用VR眼镜看的话,视差没有什么错误,色彩也很一致,几乎看不到任何不适的地方。这一切需要 以下几个保障:

  • surround360严苛的硬件保证极大减轻了算法的负担。硬件的要求见上一篇博客 《 Facebook Surround360 学习笔记–(3)硬件设计要点》。
  • Surround360关闭了所有相机的自动颜色校正、自动曝光等功能。并且使用专用的颜色板在光照可控的环境下用所有相机进行拍摄并建立了颜色校正矩阵,从而保证拍摄的原始图片色彩一致性非常高。
  • 如果两张待融合的图片色彩差别较大,拼接算法会选择它认为更接近场景的一种颜色,从而避免产生ghosting。

但是,如果自己设计硬件,采用不同的设计方案,可能因为一些原因比如:硬件制造精度达不到,相机数目不同,相机的品牌不同(毕竟不是谁都能随随便便买十几个Point Gray玩)等,很难得到和surround360一样高质量的结果。

如果使用自己的设备,产生色彩/视差不一致问题,如何改进呢?下面给出几种可能的解决方案。

1、配置选择

在跑python 脚本 ‘run_all.py’ 之前, 需要做一些配置选择:

  • 计算 rectify。用来做几何光束平叉,将侧面相机拍摄的所有图片校正到同一个水平线上。
  • 勾选 “enable_render_coloradjust”。勾选后,需要跑两次代码,第一次跑完后会生成一个名字为 brightnessadjust.txt的文件,其中存储的是对每个相机做的一个色彩微调。第二次再跑代码的时候,就会把上次的微调结果加入到当前的图片中。

2、光流计算

  • 在计算光流时,通常图像的分辨率越高,光流计算结果越准确。surround360 最大输出可以达到8k。
    在6k分辨率下:
    eqr_width=6300,eqr_height=3072。
    在8k分辨率下:
    eqr_width=8400,eqr_height=4096。

  • 光照强度对光流计算影响也非常大,如果拍摄的图片曝光过度或者曝光不足,或者图片中包含很多的噪声,光流计算可能会出现问题。

  • 色彩不一致也会影响光流计算,所以需要使能 enable_render_coloradjust。

Facebook Surround360 学习笔记--(4)色彩/视差不一致问题相关推荐

  1. Facebook Surround360 学习笔记--(2)算法原理

    本篇从宏观上介绍surround360的算法流程和每个步骤的原理,主要参考surround360官方网页(见参考)上的介绍. Surround360开源项目包含了从相机阵列的硬件设计到图像拼接的软件算 ...

  2. Facebook Surround360 学习笔记--(1)系统简介

    Facebook Surround 360是Facebook2016年7月发布的开源360°三维全景视频拍摄系统,主要功能是为VR拍摄3D全景视频素材.它长这个样子: 看起来酷炫的很,当然功能也很强大 ...

  3. Facebook Surround360 学习笔记--(3)硬件设计要点

    如果自己想模仿surround360设计一款3D360°的设备,硬件选择有什么要注意的吗? 圆盘设计有要求吗? 回答:有要求,圆盘半径r,侧面相机数目n,侧面相机视场角之间要满足如下的约束关系才能产生 ...

  4. Photoshop学习笔记之色彩学的概念与常识

    色彩的种类 丰富多样的颜色可以分成两个大类:无彩色系和有彩色系. 1.无彩色系 无彩色系是指白色.黑色和由白色黑色调合形成的各种深浅不同的灰色.无彩色按照一定的变化规律,可以排成一个系列,由白色渐变到 ...

  5. UE4 Material 101学习笔记——08-12 凹凸和视差贴图/纹理压缩/布料/体积冰/摇曳树叶

    UE4 Material 101学习笔记--08-12 凹凸和视差贴图/纹理压缩/布料/体积冰/摇曳树叶 Lec08 凹凸和视差贴图 Bump Offset and Parallax Occlusio ...

  6. UE4 Material 101学习笔记——30-37 植物叶片(透光/mask/面片隐藏/法线调整/AO/渐隐/世界空间色彩/随风舞动)

    UE4 Material 101学习笔记--30-37 植物叶片(透光/mask/面片隐藏/法线调整/AO/渐隐/世界空间色彩/随风舞动) Lec30 叶子透光 Foliage Translucenc ...

  7. 前端HTML5+CSS3学习笔记

    HTML5+CSS3学习笔记 ==CSS第一天== 一.css简介 二.css语法规范 三.css代码风格 四.css选择器的作用 五.css基础选择器 1.标签选择器: 2.类选择器 3.多类名选择 ...

  8. RN学习笔记01:概述、特点与环境搭建

    RN学习笔记01:概述.特点与环境搭建 一.RN概述 React Native(简称RN)是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的JS框架 Reac ...

  9. AI学习笔记(九)从零开始训练神经网络、深度学习开源框架

    AI学习笔记之从零开始训练神经网络.深度学习开源框架 从零开始训练神经网络 构建网络的基本框架 启动训练网络并测试数据 深度学习开源框架 深度学习框架 组件--张量 组件--基于张量的各种操作 组件- ...

最新文章

  1. PointNet++:(1)网络完成的任务分析
  2. org.springframework.data.mapping.PropertyReferenceException: No property xxxx found for type Xxxx
  3. 产品观,来自微信张小龙的
  4. 系统中常用操作基类(SSH项目中)非常非常经典的部分
  5. Kafka MirrorMaker 跨集群同步工具
  6. 第八天- linux目录结构详细介绍
  7. 我身上的银屑病(尝试自我治疗中)
  8. php入门和常用类的使用,php入门教程之常用数据类型和基本语法
  9. 【UI/UX】浅谈Spin框
  10. linux中 centos6 文件误删如何恢复
  11. jQuery如何创建元素
  12. 学生信息管理系统(c++源代码实现)
  13. 服务器设计笔记(1)-----消息的封装
  14. 学历学籍管理系统-MVC和工厂模式实现学籍查询与录入
  15. python access violation_Python x64下ctypes动态链接库出现access violation的原因分析
  16. Python爬取网易云音乐热歌榜(爬虫)
  17. 刷单会入刑了你知道吗?四招教你迅速识别刷单!
  18. 做短视频怎么赚钱,盈利模式包括哪些模式,如何做短视频自媒体赚钱
  19. electron-vue更新依赖
  20. CSS之标签选择器、ID选择器、类选择器

热门文章

  1. 杭电4510—小Q系列故事—为什么时光不能倒流
  2. 一篇文章让你了解大数据
  3. 2017面向对象程序设计(Java)第十五周学习总结
  4. cs231n学习笔记——图像分类
  5. 深圳创业公司宇初网络推出国内首家验证码广告平台,用广告代替验证码
  6. 如何在上传的图片上写字
  7. 用 Electron 打造 Win/Mac 应用,从「代码」到可下载的「安装包」,可能比你想得麻烦一点... 1
  8. “体面人”俞敏洪,要步罗永浩的后尘了?
  9. k8s重新生成token
  10. Oracle ERP财务系统——固定资产