虛擬視點視頻的實時合成(real-time view synthesis )是否已經能夠實現?

更新,為了更準確地描述問題特地找了一個視頻:

虛擬視點視頻的實時合成(realtime virtual view synthesis)

所以這個技術前幾年就實現了,只是還有些局限。

如果有人發現類似效果的軟體或開源代碼希望能分享出來,以便減少重複性工作。

票數前兩位的答案列出的是更先進的技術,比如需要扣取圖像、重構3D模型,輸入方面通常會用到深度相機等普通相機之外的設備,當然效果也更好。雖然對我的問題來說有些複雜或不完全適用,還是十分感謝了!

----------------------------------------------------------------

以多個不同角度安裝的攝像頭拍攝到的圖像可以合成一個新的視角(virtual viewpoint )下的圖像,而且這個新的視角可以由用戶操縱(manipulable),效果相當於從不同角度觀察被拍攝物體或場景(如下圖),從而獲得動態視差(motion parallax)。

請問這樣的視點合成(view synthesis)方法是否已經能夠實現實時處理?

如果可以的話,有哪些可參考的文章或應用?如果不可以,主要的障礙和難點是什麼?


拿去,不謝。

http://research.microsoft.com/en-us/um/redmond/projects/fvv/

去年SIGGRAPH 2015的paper

視頻:

http://research.microsoft.com/en-us/um/redmond/projects/fvv/fvv.mp4

體育轉播用replay technologies 的 freeD

再添加個:

holoportation


沒看論文,根據視頻簡要分析,此技術包含四個步驟

第一步是生成depth map,視頻中作者沒有用kinect等depth sensor,而是多個攝像頭來計算深度,multiview stereo演算法很多也不難實現,能做到實時的有經典的微軟的patchmatch stereo,還有globalpatch collider,2k解析度大概titan上跑5ms以內。

第二步是depthmap降噪,因為是連續幀,用一些簡單的形態學運算加上幀之間的濾波即可實現非常好的效果。

第三步是facial tracking 並計算view point,人臉追蹤opencv 的adaptive boost兩行代碼直接可以跑,根據人臉的大小和在camera的位置計算人眼與屏幕的相對位置只是一個投影公式轉換。

但實際上facial tracking抖動很厲害,特別是識別出來臉大小也會抖動,所以濾波不好寫,但其實看視頻感覺作者並沒有處理好這個問題。

第四步根據viewpoint把depthmap 的每個像素按照投影關係渲染出來,opencl里一個displacement演算法 shader搞定,不過30行代碼

就這樣


看了一下好像只有@Botao Amber Hu的回答是和問題相關的,我再補充一點。

微軟的是錄播的,如果不用專門的伺服器去處理,一個frame的畫面都需要30分鐘左右才能處理出來,如果拍攝一個30秒的視頻,按24幀算,需要超過2個星期的時間才能處理出來。

微軟這套系統花的時間比較久是為了讓畫面效果最到最好,其中使用了三套不同的三維重建技術,具體可以看論文了解。他們這套系統還處在試驗階段,但是也都是算在Hololens的生態系統底下的技術布局。

Replay Technologies的技術也是因為處理速度的限制,只能在直播下展示一個frame的效果,也就是類似bullet time effect的效果,其實是一個很聰明的辦法繞過了處理速度的限制。Intel買這家公司也是因為他們需要使用大量的處理器,而剛好Intel希望在這方面的業務上有更多的發展。

但就目前技術看來,基於多目相機的三維重建在處理速度上還有有較大的局限性,所以這個技術路徑離實時的建模還是有一些距離的。


這個技術我們前幾年就實現了,簡單的說整個流程涉及:視頻接入、視頻同步、圖像拼接融合、各視點下圖像變形、實時視頻同步渲染。

---------------------------------------------

經過@森sen同學提醒,仔細推敲後認識到提問者說的是view morphing,而非視頻拼接。前者在不同視點不同角度對應二維圖像有區別,後者是同一幅拼接圖。


現在基本沒有做到實時的,freeD據說也是以色列的幾個老鐵來圈錢的,除了扣籃的那個視頻沒有看到其他demo。

這個方向開始很久了,現在IBR的stat-of-art就是13年的這篇論文:

Depth Synthesis and Local Warps for Plausible Image-based Navigation

之前我們在復現了一下,除了極其耗時間,感覺還是可以用過的(排除經典的圖形學障礙場景)

目前deep learning也開始涉足這一領域:

https://www.cs.cornell.edu/~snavely/publications/papers/deepstereo_cvpr2016.pdf

作者之一就是bundler的作者,效果不錯,youtube上有演示的demo,當然也十分耗時


我基於光流法實現過一個簡單的view synthesis,單機cpu計算,解析度1280x720,生成一個中間view需要0.2~0.3s;我見到目前絕大多數做法都是基於3D建模和depth image,而這些方法沒有專門硬體加速的話是沒辦法實時的。


華為和htc 的手機不都有後置雙鏡頭?


推薦閱讀:

如何看待微軟 HoloLens 團隊大批人員跳槽 perceptiveIO?
opencv如何精準定位十字?
如何開始學慣用fpga進行圖像處理?
請問研究生入門機器視覺C++應該自學到什麼水平?
機器視覺新手應該如何學習?

TAG:圖像處理 | MATLAB | 計算機視覺 |