為什麼 Kinect 之後,這些大廠家沒有及時跟進,推出自己的體感識別設備?
Kinect 有兩個關鍵技術,實時三維場景重建和實時人體骨架提取,兩者缺一不可。你要自己做體感設備,這兩個技術問題都必須要解決。前者只能告訴你東西的遠近,後者會告訴你哪些東西是頭,哪些是身體,哪些是四肢等。
跟進或者模仿也有不同的形式,一種形式和我們的山寨手機的路子相似,去買核心的晶元,自己做一下外圍的東西包裝一下,另一種是把所有的「輪子」都重新造一遍。前一種難度比較低,但現在即使是前一種的模仿也不多見,為什麼?實時三維重建的技術可以通過購買PrimeSense的晶元實現,但實時人體骨架提取是微軟獨家的,而且它不賣晶元。所以你想要做類似的體感設備,必須自己去把這個「輪子」造出來。
不幸的是,實時人體骨架識別這個「輪子」很難造。
事實上,骨架識別是微軟自己花了巨大的財力才做成的技術。詳細的技術細節可以參考微軟發表的論文[1]。什麼?微軟不是把技術都放在論文里公開了嗎?那為啥還做不出來?簡單地說,就是你即使完全理解了微軟的論文,你還是做不出來。因為微軟做骨架識別時所用的樣本庫沒有公開,而樣本庫對於識別的精度至關重要。
微軟的方法是機器學習。做過機器學習的同學一定知道樣本庫有多重要,它是一切機器學習演算法的基礎,沒有樣本數據,或者樣本不夠好,再好的演算法也只能是「巧婦難為無米之炊」,但是反過來,如果演算法看起來不是那麼牛逼,但數據很好,你仍然可能把識別的精度做得很高。事實上,說樣本數據是機器學習系統的一部分也不為過。
通俗點說,這就像有一個人告訴你,要成為一個像他一樣成熟的男人必須要有豐富的人生閱歷,但他沒告訴你他的人生經歷具體是什麼樣的,即使說了一些,也是他自己加工過的,和真實有很大差距,所以,他說的這些對你來說用處不大。
根據[1]中的描述,微軟在訓練可以用於骨架識別的模型時,使用了上百萬張深度圖,測試時使用了8k多張手動標記過的深度圖,在我看來真正值錢且形成壁壘的,正是這些數據。
此外,還有一個稍微弱一點(但值得一提)的壁壘,就是訓練機器學習模型時,微軟用了一個1000核的分散式集群,可以花一天完成1M張深度圖的訓練。你當然可以用弱一點的集群來做訓練,只不過需要更多的時間而已,置於多幾倍的時間的話,相信並不是很難算吧。
其實這就像鳴人用影分身來修行然後各個分身之間共享經驗一樣。
[1] Real-time human pose recognition in parts from single depth images,http://research.microsoft.com/pubs/145347/BodyPartRecognition.pdf因為做不了。
Kinect 1的時候,深度攝像頭來自於PrimeSense。這個並不難,也有多家廠商通過拿到PrimeSense授權的方式,做了自己的深度攝像頭。然而得到了深度之後,如何識別出人體動作,這就是別的廠商做不到的了。花不起那樣的錢來採集數據和機器學習。
Kinect 2的時候,深度攝像頭甚至都是MS自己搞的。當時有多個團隊同時在搞,分別用了不同的方法,最後選了一個最佳的(其他被滅團)。而且專利全部申請了,以至於別家即便要用類似的技術研發深度攝像頭,也難免會觸到專利。這麼一來,其他廠家基本沒法跟進了。
PrimeSense的這個東西是很革命性的東西。
跟進並不是那麼容易的。
其實,在此之前,有很多廠商都有製造這樣的攝像頭,但是在成本很低的情況下效果都很差。
而效果好,成本就上去了,比如之前微軟收購的一家公司的攝像頭就是用的TOF的原理。
大約就是計算向每一個點發出的光,光走了多少距離反射回來(Time of Flight ),用這個來判斷距離。你可以想像一下,這種東西要求在每個像素都捆綁一個計時器,那應該就很複雜啦。
PrimeSense的原理卻很特別:
激光器的前面擋了一塊小鏡片,鏡片上是一些小點。
這些點會投影到你的身上。
而紅外線攝像頭,收到的數據,就是那些點。
想想玩手電筒的原理,照射出來是個圈,隔得越近,圈越小,隔得越遠,圈越大。
接著,單個點,如果投影到凹凸不平的一個平面上,也會發生形變。
那麼,Kinect內部就根據這兩點來判斷這個點到底離攝像頭有多遠。
這個計算過成是PrimeSense的晶元和微軟的嵌入式系統(固件)共同完成的。
這些每一個環節都有很多的技術壁壘在裡面。
同時,這個投影的方案,也已經被申請專利了。
一個很神奇,很顛覆的點子。
正因為這個巧妙地點子,成本降低了。200美元以下就能搞定。
2012-05-22修正一點。
Kinect的那些點,不僅僅在不同距離大小不同。
在不同距離形狀也不同。
以為,在那個小鏡(有pattern的filter )前面,還有一層,上面有微透鏡。
透鏡是散光的透鏡,也就是每個切面焦距不同,於是,在不同距離,得到的點陣的形狀也不同。
在kinect的專利文檔裡面提到了多種方案,而具體使用的哪一種不是很清楚。
具體是指哪些大廠?
誰說沒有,intel的RealSense被你吃了嗎。要說RGB-D camera,Google的tango直接移植到平板電腦上做slam了,意義不比kinect識別人體重大?
不過realsense確實沒kinect好用,google的tango其實N年前就做出來了,google play store里當年就有一堆比hololens和PS VR還早還好玩的VR遊戲,不過一直賣得太貴,沒火起來。很簡單,做得沒它好。
intel跟進了,realsense,馬上到手F200,不知道和kinect2比誰更精準,不過realsense也是用的primesense的技術
大學實驗室里這種產品其實不少,有聲波的、有紅外線的、也有純CV的,但很多都難以轉化:體積過大、對環境要求高這些都是問題,要找到一個廉價又還耐用的技術不容易。
已經有好幾家廠商做了,國內國外都有,我做過一家,感覺沒有kinect靈敏,價格也沒有優勢,不過能用,有提供SDK.這個東西需要持續投入改進,小公司要聯合大公司才好
哈哈哈
2017年:
微軟正式放棄Kinect V1 (X box 360)維護和停產,Kinect V2估計也會停產和d停止維護,為啥?因為微軟大力做了hololens;
蘋果收購 以色列公司 PrimeSense 今年發布會的iphoneX就是結構光的深度攝像頭;
德國公司 有款產品 縮寫PMD 比U盤大點,5000多元;
因特爾的RS200 RS300等系列,距離較短;
雙目的 有手勢識別的 leapmotion 正打算推出第二代;
,主要說下國內:
天津微動,雙目車內手感;
凌感科技,雙目手勢,目前可認為是國內技術3D手勢最好的公司,也有產品Fingo;
深圳的奧比中光,算是國內領先,top2;
南京的華捷艾米,也是top2;
還有一大推小山寨的。。。
大致瀏覽了一下之前這個問題的回答,其中不乏優秀回答者或者領域精英,呵呵
說的有一定道理,
但是,我想說,
沒有在第一線拆過機器的,沒有深入了解過各種產品性能的,,,,
嗯 知道這回事就行了,沒有必要較真。
嗯,認真你就輸了
你把小霸王G20置於何地,哈哈哈
美國舊金山的創業公司已經推出了更革命的產品,請看 LeapMotion:http://leapmotion.com/
成本高:現在買一個kinect還需要近2000塊錢。目前的市場看,還遠不到爆發的程度。晶元設計,攝像頭的成本都比較高。
精度低:即使到Kinect 2代,識別的精度依然不是很高。主要的交互還是停留在大肢體動作(需要原理屏幕)。使得用戶體驗上不是很好,勉強應付舞蹈,運動這類應用。這個低精度嚴重限制了應用範圍,都是小眾市場。
開發難度高:新領域,可利用的開源代碼很少,而且相關的人才更是少之又少。所以企業偶有想法,但是要實現起來,阻力還是挺多的。
專利:相關專利基本都在微軟,PrimeSense手上,發展起來畏手畏腳的。
芝士科技|Crisee科技數碼資訊
——迪士尼要玩體感遊戲——
在卡通領域沒有對手的迪士尼在玩具領域可並非一家獨大,長久以來只是靠兜售毛絨玩具和鑰匙扣,不過如今這家老牌動畫公司也開始布局物聯網了。迪士尼的這款新設備Playmation,綜合了感測器和無線連接技術,可以偵測穿戴玩家的體感動作,以及對手的人偶。
試想下以後在和小夥伴打遊戲時,可以像動畫片中各种放大招,同時還可以藉助各種小道具玩些尋寶、劇情任務,是不是童心又回來了?—— 芝士日報 | 芝士科技|Crisee科技數碼資訊 ——
推薦閱讀:
※如何評價《最終幻想15》?
※有哪些遊戲有著不為人知的故事、背景設定或者細節設計?
※我是否應該勸阻沉迷遊戲《血源詛咒》的 50 多歲的父親?
※某貓上面的寧美國度和名龍堂怎麼樣?