Openni “One or more of the following nodes could not be enumerated”
-
27-02-2021 - |
Pergunta
I have installed the latest version of openni and NITE in the following order:
Openni 1.3.4.6 unstable development edition x64 NITE 1.4.2.5 unstable develeopment edition x64 Avin2 sensor kinect x64 from ../platforms/win32 directory
I use windows 7 64bit and I have connected Kinect and not using mock nodes. When i try to run an error: "One or more of the following nodes could not be enumerated"
My modules.xml contents are:
<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>
I also tried using the previous version of OpenNI and NITE with the same result. I also entered the license key in SamplesConfig.xml and it has no other changes. It has production nodes for image and depth and thats all.
I would like to know if Avin2 sensor kinect drivers work with latest versions of openni. Whats the order of installation and what driver do i install to make kinect work with openni 1.3.4.6 ?
thanks
-Siddharth
Solução 3
This version of openni had bugs with UAC settings in windows 7. The latest version of openni which supports poseless callibration works out of the box.
Outras dicas
- Check all dll are existing
- Check your license key is correct (some modules need a valid license key). Register it with
niReg
command - Check all configDir are existing, readable, with their config files inside
- Stop your program immediatly after
context.InitFromXmlFile(strFileName, scriptNode, pErrors)
(so you can do next step) - Comment all
Module
nodes. The error should disapper, but now you have a non working program. - One by one, decomment modules and test if the error appears. Now you know what is the bad module.
- Uninstall all previous kinect drivers if any
- Download avin2 driver from https://github.com/avin2/SensorKinect
- Run SensorKinect-unstable\Platform\Win32\Driver\dpinst-amd64.exe (or dpinst-x86.exe if your system is 32-bit )
Then run demo program (NiViewer) to test everything is fine..
That's all..
I don't know why, but for some reason the stable versions of OpenNI and the Middleware and Hardware are just not compatible with the avin2 driver.
I use Windows 7 x64 and when I uninstalled everything and changed to the unstable versions of OpenNI, Nite and PrimeSense Sensor, it worked with the 64bit avin2 (SensorKinect093-Bin-Win64-v5.1.2.1.msi) driver.
So basically, ONLY USE UNSTABLE VERSIONS.