Facebook Surround360 学习笔记--(3)硬件设计要点
来源:互联网 发布:html5手机端模板 知乎 编辑:程序博客网 时间:2024/05/23 12:18
如果自己想模仿surround360设计一款3D360°的设备,硬件选择有什么要注意的吗?
- 圆盘设计有要求吗?
回答:有要求,圆盘半径r,侧面相机数目n,侧面相机视场角之间要满足如下的约束关系才能产生较好的3D效果:
i = r * sin(FOV/2 - 360/n)
其中:
r近似为相机圆环中心到某个相机镜头的距离,单位是厘米。也就是配置文件里对应的camera_ring_radius。r的具体测量如下图中蓝色线条长度:
FOV 是侧面相机镜头经过畸变校正后的水平视场角。镜头的水平视场角和对角线视场角定义见下图:
n 是侧面相机的数目。
i = IPD/2。其中IPD是内瞳距。要产生正常的立体视觉,IPD要至少大于6.4cm(普通人眼的间距)。因此i >= 3.2cm。否则渲染出来的结果可能会产生黑色的带状区域。
我们以surround360为例,n=14, r=15cm,侧面相机水平视场角为90°,经过桶型畸变校正后水平视场角变为77°,带入公式可得i=3.32cm > 3.2cm,所以满足设计需求。 - 相机如何选择?
从前面两篇博客中我们了解到,相机必须要具有全局快门,这样才能全局同步拍摄。另外相机必须能够连续可靠地运行几个小时而不过热。surround360最早试过使用消费级相机GoPro,但是发现同时使用十几个相机同步拍摄时,很难控制每个相机都曝光一致,这样无法保证相机之间的颜色完全一致。最后的方案中surround360用的相机是死贵死贵的工业相机pointGray。 - 机架精度有什么要求?
机架精度越高越好,前面介绍系统时反复强调过要保证硬件机架具有非常高的精度。相机和固定相机的机架必须稳固连接,保证在长时间的使用过程中不会产生错位。另外要注意的就是相机机架设计制作必须简单,方便复制、修理、替换元件。 因为使用过程中相机可能会工作不正常或者坏掉,太复杂的结构不仅更换难度大,而且可能在拆装过程中造成机架变形甚至损坏机架,从而极大影响拼接结果。
总之,能用硬件来做的尽量用硬件来做, 从而避免算法研发过程中陷入不断调试却始终无法得到满意结果的坑。
阅读全文
0 0
- Facebook Surround360 学习笔记--(3)硬件设计要点
- Facebook Surround360 学习笔记--(3)硬件设计要点
- Facebook Surround360 学习笔记--(1)系统简介
- Facebook Surround360 学习笔记--(2)算法原理
- Facebook Surround360 学习笔记--(4)色彩/视差不一致问题
- Facebook Surround360 学习笔记--(1)系统简介
- Facebook Surround360 学习笔记--(2)算法原理
- Facebook Surround360 学习笔记--(4)色彩/视差不一致问题
- 硬件设计检查要点
- facebook Surround360编译与环境配置
- 驱动设计硬件基础学习笔记
- W5100硬件设计和调试要点
- facebook pop 学习笔记
- FACEBOOK SURROUND360 源码解析 第一篇 源码环境搭建
- FACEBOOK SURROUND360 源码解析 第二篇 源码编译
- STM32硬件设计笔记
- ISD9160学习笔记07_硬件设计经验分享
- Android硬件编程NFC学习笔记(3)
- 关于自定义的时间类型,,,前后台展示的不同格式
- 让studio编译速度飞起来
- 交叉编译zlib
- 嵌入式操作系统uC/OS-II的定时器Timer使用及分析
- 项目不受SVN版本控制
- Facebook Surround360 学习笔记--(3)硬件设计要点
- Git入门
- Python练习
- Storm Kafka Integration (0.10.x+)官方文档翻译:storm与kafka整合
- HTML基础
- 挂载移动硬盘
- 补全缺失的64位dll,0xc000007b
- redis——通过redis实现服务器崩溃等数据恢复
- 剑指offer——二叉搜索树的第k个结点(一般)