這篇文章,主要是根據之前的《在 WIndows 上安裝 Kinect(含 MMD 使用 Kinect 簡易教學)》作一些更新。Heresy 那篇文章,是在去年年底寫的,文章內是以當時的套件來介紹的;而後來,SensorKinect 這個驅動程式有做出了更新,而 OpenNI 和 NITE 也有更新的 unstable(不穩定)版本,基本上都修正了許多的問題,在 Heresy 來看,比之前的 stable 版來的更穩定。
而這一篇,就是針對如何安裝比較新、問題也相對少的 unstable 版來做個簡單的說明了。基本上,由於安裝方法一樣,所以 Heresy 在這不會講得太細,如果有不懂的話,還是建議大家先回頭把《在 WIndows 上安裝 Kinect(含 MMD 使用 Kinect 簡易教學)》這篇文章的前半段看完。
Unstable 版的安裝方法和之前的版本相比,其實都是一樣的,唯一的不同,只有安裝用的檔案而已。而新的檔案的取得,則如下:
-
OpenNI
- 目前的版本是 v1.0.0.25,下載後的檔案應該是「OpenNI-Bin-Win32-v1.0.0.25.exe」
- 下載頁面:http://www.openni.org/downloadfiles/openni-binaries/20-latest-unstable (直接下載)
-
SensorKinect
- 目前是 v0.4,下載後的檔案應該是「avin2-SensorKinect-0124bd2.zip」
- 下載頁面:https://github.com/avin2/SensorKinect (直接下載)
-
NITE
- 目前版本是 v1.3.0.18,下載後的檔案應該是「NITE-Bin-Win32-v1.3.0.18.exe」
- 一樣需要安裝序號,而序號和之前的版本一樣(0KOIk2JeIBYClPWVnMoRKn5cdY4=)。
- 下載頁面:http://www.openni.org/downloadfiles/openni-compliant-middleware-binaries/33-latest-unstable (直接下載)
如果之前已經有安裝過舊版的話,至少必須要先把舊版的 SensorKinect 給移除,才能安裝新版的驅動程式;而 OpenNI 和 NITE 基本上應該是可以直接安裝新版的,覆蓋過去。
基本上,在更新後的使用,基本上都和之前相同,應該不會有什麼問題;而以舊版 OpenNI 為基礎而開發的程式,基本上也可以直接沿用,不會有不相容的問題(至少 Heresy 沒碰到)。不過,如果是新版 OpenNI 的程式的話,就不能在舊版的 OpenNI 環境執行了。
那新版改了哪些東西呢?Heresy 沒有找到詳細的更新紀錄,不過根據 github 上的說明(網頁),unstable 版所提供的新功能有:
- 加多多感應器的支援
- 加入新的 .Net Wrapper 和 .Net 範例(也可以在 Mono 上使用);OpenNI.Net 也被安裝於 GAC。
(Heresy 不知道 GAC 是啥? @@) - 加入 player 的播放速度控制
- ONI 檔案尋找的最佳化:為 ONI 檔裡的每一個 node 加上索引
- 加入 MacOS X 的支援
另外,他也還列了一些問題的修正,這邊就不詳列。
不過,Heresy 並不確定這些更新是否都在目前 1.0.0.25 裡,而他列的問題修正,應該也不是非常完整;像有一些 Heresy 自己碰到的問題,也都已經被修正了,但是卻沒有找到問題的修正紀錄。例如:
- xn::PoseDetectionCapability::GetAvailablePoses() 取得的資訊有問題的問題已經解決
- xn::UserGenerator::RegisterUserCallbacks() 的 LostUserCB 給 NULL 不會讓程式當掉了(參考)
總之,建議有在使用 OpenNI 的人,就更新到最新的 unstable 版吧~在 Heresy 來看,他雖然掛著「unstable」的字樣,但是穩定性應該是比較好的。 ^^”
你好
直接下載連結可以重新提供嗎?載點都掛了
謝謝
讚讚
請先參考: https://kheresy.wordpress.com/2014/07/04/201407%e3%80%81openni-%e7%8f%be%e6%b3%81/
讚讚
你好, 想請問安裝的問題
我的環境是ubuntu 10.10
在安裝openni + sensorkinect + nite 之後
出現很多的openni資料夾, 與在網路上看到的資料都不同
嘗試執行./NiViewer
會出現./NiViewer: error while loading shared libraries: libglut.so.3: cannot open shared object file: No such file or directory
請問這個問題該如何處理
讚讚
Heresy 沒有用過 Linux 的版本,所以不太確定在 ubuntu 上的檔案配置是怎樣。
但是你的錯誤訊息應該滿明顯,是因為系統裡沒有找到 glut 的關係。
麻煩請確認你有安裝 glut 這個函式庫(沒弄錯的話,現在應該是要安裝 freeglut)。
讚讚
[…] 不過到現在,OpenNI 的版本已經從 1.0.x 進版到 1.5.x 了,在模組、路徑上,其實都有相當程度的變更。雖然後來也有更新過一次(參考),不過可能還是不夠新,所以現在再來針對現在的最新版本,來寫一個比較完整的吧。 […]
讚讚
[…] on 在 Linux 上實作 C++ 在 VC++ 的 …Heresy on OpneNI + Kinect unstable …caterzy on OpneNI + Kinect unstable …Heresy on 部落格更新進度Windows Live […]
讚讚
GAC:Global Assembly C….
给DLL加上版本管理,这是MS为了解决DLL HELL搞的。
讚讚
Global Assembly Cache 嗎?
http://msdn.microsoft.com/en-us/library/yf1d93sz.aspx
感謝幫忙說明~
讚讚