from:https://www.zhihu.com/question/39722446

两方面回答:(1)合成,(2)跟踪。

多图,流量党慎入。

  • 合成

  1.拼合全景视频
  当今全景视频的拍摄方案是采用多台同型号、同镜头配置的摄像机(如若干台GoPro Hero 4)安装在全景视频拍摄的支架上进行拍摄的,最先面临合成的问题是如何将多台摄像机的拍摄素材拼合并投影在一个球面上。
Δ 由特定支架绑定若干GoPro摄影机,可拍摄全景视频。(图片来源于网络,侵删)

  目前业内有若干主流软件可供拼合全景画面使用:
  (1)只能用于图片:PTGui、APG。
  (2)合成视频文件:AfterEffects、Nuke、AVP。
推荐流程:
  (1)简单镜头使用Autopano处理。
  (2)复杂的镜头用PTGui生成镜头配置,结合Autopano或Nuke拼合。
  (3)Nuke或Ae结合插件Skybox处理。
  (4)利用近期The Foundry公司在NAB发布的CARA VR for Nuke工具链作为解决方案,该方案在一定程度上超越了上述工具链,尤其是在处理立体(stereo)合成时具有一定优势。
拼合测试结果展示 (尺寸:4K LatLong)
Δ 由7台GoPro拍摄的全景视频展开图。

Δ 由于镜头7缺少特征且天花板特征十分接近,Autopano等自动软件无法完成,必须使用PTGui手动对齐。Δ 二号镜头拍摄的视频的制式有问题,autopano无法使用,使用PTGui及Nuke拼合。
Δ 在Nuke中投影的摄像机组合结构。

  2.在全景视频中的合成制作
  在电影视觉特效(VFX)的工业流程中,数字绘景师(Digital Matte Painter)与合成师(Compositor)对于处理球面投影的虚拟环境的工作可谓是驾轻就熟,因为这实在是太寻常了,几乎每个项目都会涉及。
  美国硅谷虚拟现实初创公司 Jaunt(官网: https://www.jauntvr.com/)请的VFX Supervisor——Nathalie Mathe就是做DMP出身的(个人Demo Reel: https://vimeo.com/66620381, 懂得科学上网手段的知友可见),应该算是最合适的人选了。
Δ Nathalie Mathe的个人CV截图。

  DMP处理全景视频的手段无异于传统VFX流程中利用球面投影绘制环境的方法,对此,答主不花过多时间讨论。重点谈谈合成师如何处理全景视频画面的合成工作。
  传统VFX工作流程中,CMP的基本工作包括 合成2D/3D元素进入画面、调色与匹配、遮罩与抠像、画面修补、跟踪与稳定、特殊效果等
(未完待续)

合成测试结果展示 (尺寸:4K LatLong)
Δ 原图。

Δ 进行了天空替换和调色。

  • 跟踪

  跟踪的部分分为2D Track与3D Track,前文已提及,它们均属于合成师的职能。
(未完待续)
答主需要先忙手头上的工作,点赞解锁更多回答内容。:)

  • 附录

  答主录制的 免费全景视频合成教程,不断更新中。希望能对相关从业者和业余爱好者有帮助,同时欢迎批评指正!待 The Foundry CARA VR工具链正式发布后,计划推出基于此流程的教程。(新浪微博@罗谢海_Rochelle,需要微信请知乎私信)
vrl_class01_VR全景视频合成教程01—在线播放—优酷网,视频高清在线观看 http://v.youku.com/v_show/id_XMTUzODU3MjY4OA==.html?from=y1.7-1.2 vrl_class02_VR全景视频合成教程02—在线播放—优酷网,视频高清在线观看 http://v.youku.com/v_show/id_XMTU1MjUxNjEzMg==.html?from=y1.7-1.2

发布于 2016-05-0913 条评论感谢

收藏 • 没有帮助 • 举报 • 禁止转载

AMD程序媛农企赛高
1 人赞同
关注AMD的小伙伴都知道Radeon Loom这个项目,这是AMD的开源360度实时视频拼接方案,今天就请跟随锐VR来了解一下关于Loom的更多细节。

首先,关于Radeon Loom的命名:从新石器时代的洞穴壁画到当代的IMAX及VR/AR体验,都可以看出来人们非常享受360度环境下的艺术体验,包括文艺复兴时期的壁画和内部绘制画作,19世纪的大风景画幕和环场影像以及最新兴起的沉浸式视觉体验。Loom这个单词的中文释义为“织布机”,织布机已经拥有数千年的历史,并且对艺术和史诗讲述类织锦画的创作至关重要,如阐述了11世纪诺曼征服的长达70米的贝叶挂毯。Radeon Loom的命名保留了这一意象,希望能够帮助数字时代的故事陈述者去编织和拼接下一部永恒的史诗。

关于Radeon Loom

正如现代机械织布机能够在无数的线轴上制作出美丽的图像一样,AMD的Radeon GPU同样可以处理成千上万的多线程任务,渲染出令人惊叹的数码画面。

1801年,法国人贾卡革新的提花织机引进了自动穿孔装置,使得现有的工厂织布机可生产更为复杂的图案,极大地提高了生产力,这对今天的时尚行业都影响巨大。Radeon Loom的目标本质上是与之一致的:为影视级VR视频体验提供创造性的动力,使高质量360度视频的创作过程更加简化和现代化,使内容创作者释放更多的精力在独特的内容革新上面。

我们的第一个目标,是使用户在使用高质量的360相机阵列拍摄影片的过程中,就能够通过Oculus Rift或HTCVive预览360度视频。反复设计后,我们想出了一些解决方案,其中一个如下图所示:

https://pic4.zhimg.com/v2-a81b746a0e2ab94354156e22de1879c7_b.png" data-rawwidth="1280" data-rawheight="720" class="origin_image zh-lightbox-thumb" width="1280" data-original="https://pic4.zhimg.com/v2-a81b746a0e2ab94354156e22de1879c7_r.png">

有些重要的细节不得不提。首先,我们使用了快速的工作站显卡,AMD FirePro™ W9100或Radeon™Pro WX系列,因为显卡速度越快,支持的镜头越多,分辨率也更高。其次,我们通过SDI影像撷取卡和DirectGMA软件从镜头中获取数据流,所以这些数据可以被直接传递到GPU存储缓冲区。最后,我们使用BlackMagic相机,通过HDMI输出同步锁相,并通过变流器将每一个信号转换成转播级SDI(串行数字接口)。

一旦这些数据通过DirectGMA进入GPU存储器,一组复杂的算法会将所有的图片缝合成为360度球形视频。当视频被缝合完成,就会通过SDI被输出到一台或多台PC,可通过头显直接观看并/或上传到互联网。

在为一套实时360视频装备设定位置时会产生一些问题,这一定要引起重视。360度拍摄中不可能有一位摄影助理帮你手持并操控相机,否则他也会出现在视频中。因此,你可能会想要定位拼接缝并/或在一定距离外通过PC查看拍摄的画面,比如在一堵墙或一块绿幕后。

为什么拼接很难

如果你看过一些高质量的360度视频,你可能会认为360度拼接已经是一个基本上被解决了的问题。然而,并不是的。但过去这几十年的算法先驱们所做出的成绩值得被肯定,因为他们的努力已经解决了很多关于全景和360度VR拼接的问题。

然而,诸如视差、相机和拼接缝的数量、传感器之间的曝光差异等问题必须要被解决。先来解释一下视差。简单来说,就是两个不同位置的镜头从不同角度拍摄同一个物体,就像你把一根指头竖起靠近鼻梁中央,分别遮住一只眼睛,用另一只眼睛去观看这根手指和其背景画面,你会发现不同眼睛看到的画面角度是不同的。

第二个问题是镜头数量越多越好,因为分辨率和光学性能会因此而提高(因为畸变会减少)。然而,这意味着需要更多的缝合处理。此外,当人和物体多次在缝合处穿行,视差问题会因为微小的角度差而反复出现。

第三个涉及的问题是每个镜头传感器都有不同的照明条件。比如,拍日落的时候会有一个面向西边落日的镜头,此时朝东的镜头拍摄区域的光线就相对比较暗。现有的成熟算法可以调节和协调图像之间的曝光变化,但要以损失光照、颜色精准度和整体的动态范围为代价。这一问题在弱光条件和有限的艺术表现形式下会更加突出。

拼接优化

我们在设计过程中遵循了一些简单优化指导,如“尽可能少的触碰每个像素”。以及,一旦“触碰”或读一个像素,尽可能多的在其之上进行操作。这说起来很容易,实际操作起来很难,因为数据量之庞大。通过使用DirectGMA(只适用于AMD FirePro™ and Radeon™ Pro显卡)我们不必在CPU和GPU存储器中复制数据,再循环往复。

另一个重要的优化是准备工作负载使GPU保持繁忙状态。我们能做到的是在像素组被处理时提前准备好流水线。

为了达到多镜头实时拼接的目标,我们尝试了多种实验。最终,我们选择并开发计算周期最少,品质最高的算法,然后优化算法的执行。当然,我们还选择了最有效的算法去优化了我们的大规模并行处理器和可扩展的FirePro™and Radeon™ GPU。

Radeon Loom Beta版本现已可获取

360度视频创作已经爆发,仅仅在2016年就有近百万的360度视频被上传至Facebook,YouTube等社交媒体网站上,并且有望在2025年形成115亿美金规模的产业。如上所述,镜头越多,最终的360度体验分辨率和品质越高。然而,拼接工作着实是一个巨大的挑战。

Radeon Loom通过GPU大量的并行处理革新了实时及线下360度视频拼接的过程。Radeon Loom使用AMDKhronos™ OpenVX™ 开源计算视觉架构,可实时拼接多至24个4k x2k镜头、离线拼接多至31个8K x4K镜头拍摄到的画面。如果你恰巧已经是一位360视频开发者,可点击Radeon Loom StitchingLibrary onhttp://GPUOpen.com 下载Radeon Loom的beta版本。

目前AMD中国团队正在和本地摄像机开发商合作,提供端到端的解决方案,届时会面向VR全景用户发布!

发布于 2017-01-10添加评论感谢

收藏 • 没有帮助 • 举报 • 作者保留权利

匿名用户
1 人赞同
嗯 我就看看谁回答 这东西做起来坑这么多属于重大商业机密 哪个创业者敢说投资人也是要疯
发布于 2016-02-26添加评论感谢
收藏•没有帮助•举报•作者保留权利
匿名用户
1 人赞同
这个东西我会做,而且做了好多年了,AE后期就可以合成,但是技巧属于商业机密,二属于个人核心竞争力,任何人都不会透露给你的
发布于 2016-02-263 条评论感谢
收藏•没有帮助•举报•作者保留权利
艺芊艺全景摄影师
全景视频的合成与全景图片的合成在方法上并无大的差别,只是在合成前多了一个视频帧同步的步骤而已。在难度上,因为拍摄方法的不同,全景视频合成要比全景图片合成难度要大些。

1. 方法: 不同于全景图片使用同一个相机拍摄,全景视频一般是采用多个相机拍摄的,比如GOPRO的推出的OMNI方案采用的是6个相机同时拍摄。由于6个相机的时钟都有微小的差别,即便同时开始录制,几分钟后各个视频帧就失去同步了。所有要在后期制作全景时,首先做一个视频帧同步的步骤,保证合成全景的视频帧是在同一时间拍摄的。
2. 难度: 全景视频(或图片)的合成其实是个数学问题:已知几张拍摄好的照片,推算出相机的内部参数(如焦距,光圈大小与感光芯片大小关系等)和拍摄位置。如果是同一台相机在同一位置拍摄,只是拍摄角度不同而已,那么这是最简单的情况,算出来的结果也是最精确的,所有一般全景摄影师,包括我自己都在采用这种方法。而全景视频采用了多台相机,就有多个未知的相机内部参数和拍摄位置,这个数学问题也更复杂,得到的结果误差也会更大。

发布于 2017-01-30添加评论感谢
收藏•没有帮助•举报•作者保留权利
匿名用户
全景视频+跟踪:坑比较多,要做好的话,大概需要4个方面专业,此外还需要天时地利,要做好确实不易
发布于 2016-03-231 条评论感谢
收藏•没有帮助•举报•作者保留权利
王XXkrpano
krpano可以制作全景交互及全景视频

全景视频的跟踪与合成方法相关推荐

  1. 一种全景视频的主观质量评价方法(译)

    A subjective visual quality assessment method of panoramic videos ICME 2017 abstract 与传统的2D视频不同,在头戴式 ...

  2. 在讨论全景视频的未来之前,我们先搞清楚全景视频是如何实现的

    也许就是这一两年之间,随着VR热潮的风起云涌,"全景"这个词汇被一次又一次地搬上了台面,再冠以"虚拟实景","3D实景","360 ...

  3. 视频目标跟踪从0到1,概念与方法

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 导读 从目标跟踪的应用场景,底层模型,组件,类型和具体算法几个方面 ...

  4. c4d跟踪特效合成视频教程 Master Motion Tracking with Cinema 4D

    c4d跟踪特效合成视频教程 Master Motion Tracking with Cinema 4D MP4 |视频:h264,1280×720 |音频:aac,48000 Hz 语言:英语+机译中 ...

  5. 全景视频如何下载 - 免费绿色纯净无广告的全景视频下载软件

    提到全景视频,可能有些同学比较陌生,全景视频是一种可以360度旋转一种视频展现方式,目前国内做的比较好全景视频网站有720yun, UToVR等网站. 如下图的一个全景视频,在视频播放中,你可以自己3 ...

  6. 一种用于360度全景视频超分的单帧多帧联合网络

    一种用于360度全景视频超分的单帧多帧联合网络 论文.代码地址:在公众号「3D视觉工坊」,后台回复「全景视频超分」,即可直接下载. 摘要和简介 球形视频,也称360度(全景)视频,它的捕获.存储和传输 ...

  7. 漫谈视频目标跟踪与分割

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本文整理记录了旷视研究院Detection组针对视频目标跟踪与分割问题的探讨和收获,并从喜闻乐见的图像 ...

  8. (译)360全景视频制作专题-介绍

    译者小序: 在虚拟现实全景拍摄这个领域已经研究有一年多时间了,其中接触和实验过各种类型的拍摄方法以及总结其中各类的优缺点.鉴于公司对于这一部分还没有对外的计划,所以我们自己研究的内容暂时不能作为一个公 ...

  9. 基于Open WebRTC Toolkit(OWT)的8K全景视频低延时直播系统

    photo from Ready Player One 随着5G技术的发展,其高带宽.超低延时的特性为高分辨率全景视频的实现带来了更多的可能.本文来自Open WebRTC Toolkit (OWT) ...

最新文章

  1. SAP S4HANA MRP LIVE
  2. 计算机连接到网络的接口,路由器与计算机连接的三种方式及设置介绍
  3. jQuery的preventDefault()
  4. Linux Capabilities 入门教程--基础实战篇
  5. c#中引用类型作为值参数和引用参数问题
  6. 实现服务器和客户端数据交互,Java Socket有妙招
  7. ros_readbagfile:未找到命令的解决方法
  8. ECMAScript 6学习总结(2)——ECMAScript 6常用方法总结
  9. 嵌入式电路设计(从电路到系统)
  10. php打水印汉字乱码,php 图片水印中文乱码解决方法
  11. win7服务器未能登入,Win7提示profile服务未能登录,无法在系统中创建怎么办
  12. 主板开启网络唤醒_网络唤醒bios详细设置图文教程 | 专业网吧维护
  13. TeamTalk 单服务端配置
  14. 身份证号正则验证及提取性别出生年月出生时间
  15. 99%用户不知道 搜索引擎这样用才有效率
  16. 股市投资必修课十九---DCF三要素经营存续期、现金创造力、经营周期定位
  17. 动态规划Dynamic programming笔记自用
  18. 入门vue+springboot项目
  19. 网页的首屏标准你了解多少?
  20. 【FPGA】串口以命令控制温度采集

热门文章

  1. Javascript Array对象
  2. mysql 5.5 type=innodb_mysql5.5.23TYPE=InnoDB语法错误_MySQL
  3. leetcode算法题--字符串的排列
  4. leetcode算法题--字符串相乘
  5. linux内核网络协议栈--监控和调优:发送数据(三十)
  6. php7.2 开启mcy扩展,phper必知必会(二)
  7. php 文件迭代对象,通过PHP中的stdClass对象进行迭代
  8. 孙鑫VC++课程中用到的函数一览
  9. 从头开始学习vue-router
  10. 在循环中删除list中的元素