2011-11-11 29 views
0

我已經安裝的openni最新版本,並在NITE按以下順序:Openni「一個或多個以下節點無法枚舉」

Openni 1.3.4.6發展不穩定版的x64 NITE 1.4.2.5不穩定開發版x64 Avin2 sensor ../platforms/win32目錄下的kinect x64

我使用的是windows 7 64bit,我已經連接Kinect並且沒有使用模擬節點。當我嘗試運行的錯誤:「一個或多個以下節點無法枚舉」

我modules.xml內容是:

<Modules> 
    <Module path="C:\OpenNI\Bin64\nimRecorder64.dll" /> 
    <Module path="C:\OpenNI\Bin64\nimMockNodes64.dll" /> 
    <Module path="C:\OpenNI\Bin64\nimCodecs64.dll" /> 
    <Module path="C:\PrimeSense\NITE\Features_1_3_1\Bin64\XnVFeatures64_1_3_1.dll" configDir="C:\PrimeSense\NITE\Features_1_3_1\Data" /> 
    <Module path="C:\PrimeSense\NITE\Features_1_4_1\Bin64\XnVFeatures64_1_4_1.dll" configDir="C:\PrimeSense\NITE\Features_1_4_1\Data" /> 
    <Module path="C:\PrimeSense\NITE\Features_1_4_2\Bin64\XnVFeatures64_1_4_2.dll" configDir="C:\PrimeSense\NITE\Features_1_4_2\Data" /> 
    <Module path="C:\PrimeSense\NITE\Hands_1_3_1\Bin64\XnVHandGenerator64_1_3_1.dll" configDir="C:\PrimeSense\NITE\Hands_1_3_1\Data" /> 
    <Module path="C:\PrimeSense\NITE\Hands_1_4_1\Bin64\XnVHandGenerator64_1_4_1.dll" configDir="C:\PrimeSense\NITE\Hands_1_4_1\Data" /> 
    <Module path="C:\PrimeSense\NITE\Hands_1_4_2\Bin64\XnVHandGenerator64_1_4_2.dll" configDir="C:\PrimeSense\NITE\Hands_1_4_2\Data" /> 
</Modules> 

我也使用OpenNI和NITE以前版本的嘗試結果相同。我還在SamplesConfig.xml中輸入了許可證密鑰,並且沒有其他更改。它有圖像和深度的生產節點,這就是所有。

我想知道Avin2傳感器kinect驅動程序是否可以使用最新版本的openni。安裝的順序和安裝什麼驅動程序使得kinect可以在openni 1.3.4.6上運行?

感謝

-Siddharth

回答

0

此版本的openni在Windows 7中有UAC設置的錯誤。最新版本的支持無姿勢callibration的openni支持開箱即用。

2
  1. 檢查所有的DLL是現有的
  2. 檢查您的許可密鑰是正確的(有些模塊需要一個有效的許可證密鑰)。與niReg命令
  3. 檢查所有configDir是現有的,可讀的登記,裏面
  4. 自己的配置文件停止程序後立刻context.InitFromXmlFile(strFileName, scriptNode, pErrors)(所以你可以做下一步)
  5. 評論所有Module節點。錯誤應該消失,但現在你有一個非工作程序。
  6. 逐個分解模塊並測試是否出現錯誤。現在你知道什麼是壞模塊。
+0

很抱歉的延遲迴復,但繼承人什麼我調查: 1)所有的dll確實存在,我用openni的前一版本進行了驗證。 2)這讓我感到困惑。我以爲我不需要NITE的許可證密鑰,因爲最新版本不需要你輸入它。在任何情況下,我都使用許可證標記在sampleConfig.xml中輸入了許可證密鑰。 3)如果我在程序文件目錄中安裝了openni,我以前遇到過這個問題。我通過將它安裝在根目錄中來解決這個問題,例如C:\ OpenNI和C:\ Primesense \ NITE。所以我在這裏沒有隻讀的問題。 – user968049

+0

4)它在InitFromXmlFile失敗,但即使從我的系統斷開kinect,它仍然存在,使它認爲這是一個驅動程序問題。 5和6)做到這一點,我仍然得知沒有檢測到Primesense設備,並且枚舉的節點沒有實例化。 現在我注意到我的筆記本電腦(這是一個惠普elitebook 8760w)有一個eSata USB驅動器,2個USB驅動器,還有另外2個我認爲是USB 2.0的。經過一番搜索後,我發現kinect不適用於某些USB 3.0端口? – user968049

+0

無論哪種方式,你能告訴我你安裝openni,nite和drivers的順序嗎?你有傳感器kinect驅動,avin2驅動,openni在其目錄中有一個驅動安裝程序。應該按什麼順序安裝? 謝謝 – user968049

0

我不知道爲什麼,但由於某些原因,穩定版本的OpenNI以及中間件和硬件與avin2驅動程序不兼容。

我使用的是Windows 7 x64,當我卸載所有內容並更改爲OpenNI,Nite和PrimeSense Sensor的不穩定版本時,它與64位avin2(SensorKinect093-Bin-Win64-v5.1.2.1.msi)驅動程序。

所以基本上只使用不穩定的版本。

1
  1. 卸載以前的所有Kinect的驅動程序,如果從https://github.com/avin2/SensorKinect
  2. 運行SensorKinect不穩定\平臺\ WIN32 \驅動程序\的DPInst-amd64.exe(或的DPInst-86任何
  3. 下載avin2驅動程序。exe文件,如果你的系統是32位)

然後運行演示程序(NiViewer)來測試一切正常..

這一切..