2012-10-05 66 views
7

適當的出發點是目前有轉換在畫布視頻流轉換爲3D網格在JavaScript庫?什麼是在畫布上視頻轉換爲3D網格

一個示例情況是將攝像頭指向杯子並捕獲原始圖像,將以前的數據與新數據進行比較以生成視圖內對象的邊緣輪廓,理想情況下將其轉換爲最簡單的多邊形集合並顯示第二個畫布元素中計算的多邊形/模型。

我見過mrdoob三維JavaScript的一些優秀的工作目標文件將在畫布上繪製,但我正在尋找捕捉到的原始數據,並嘗試生成一個網格。目的是通過套接字將2個用戶之間的網格點發送給攝像機視圖中當前處於捕獲狀態的任何對象。

任何幫助表示讚賞。

+1

OBJ-文件已經在3D頂點信息。這在畫布上顯示非常簡單。你想從2D視頻生成3D網格?你將如何獲得對象的另一個物體側的深度信息/信息? - 通過圖像處理獲取物體的輪廓是可能的,但它只能獲得2D信息。 – Smamatti

+0

有一個稱爲視頻跟蹤有趣的應用程序,要求用戶輸入勾勒出物體的線條,但非實時雖然很聰明,在插值邊緣,同樣也有針對Kinect的,對於手勢跟蹤進行邊緣檢測的應用,所以我覺得在許多幀的過程中可以比較幀以辨別邊界和幾何的應用可能是如果可以檢測到某些消失線或者一組相關點的運動彼此不同的情況下可能導致我們達到三維座標的方向。更多的東西以我的方式學習 – MyStream

回答

3

這是一個相當複雜的問題。大多數算法需要2個圖像(立體視覺系統)才能識別和處理2d信息爲3d對象。這樣做與網絡攝像頭,並支持Javascript是一個相當大的挑戰:)

基本上,我認爲你將不得不結合一些計算機視覺技術(邊緣檢測,過濾,3d到2D映射,...)。

下面是一些信息,可能是有用的

計算機視覺JavaScript庫 - https://github.com/alex-m/seevee.js/wiki(端口一些衆所周知的OpenCV函數) - 可以讓攝像頭的圖像,3D處理很有用,等

輕量級3D庫 - https://github.com/mrdoob/three.js/

見這種方法http://www.eng.cam.ac.uk/news/stories/2009/3D_models/

6

這不是一個庫,但這裏正是你要尋找的技術的演示。

Webcam Mesh

+0

嗨@eyesyes,用於將視覺效果打破成3d渲染概念的攝像頭網格看起來很棒。我似乎無法運行它。 Chrome在版本22中死去以訪問和運行該示例。然而,它只是捕捉的一部分,我不確定它創建的網格是什麼,或者只有像素亮度才能很好地映射到3d對象。我也在尋找一個完整的解決方案,所以我還不能獎勵賞金。不過,我鼓勵大家檢查一下!它看起來很聰明 - 謝謝你! – MyStream

+0

雖然賞金在這裏獲得,問題仍然完全沒有答案,所以這是一個恥辱,它不可能與有彈性的誰問的問題和上面的回答實際上不符合要求的人匹配的答案,但我仍然認爲人們應該檢查它的興趣。 – MyStream