我正在尝试在 Ubuntu 下的 kinect 上使用 Python primesense 模块。我似乎正确安装了 OpenNI2,因为我可以使用处理的 simple-openni 库在处理中运行示例。我使用 pip 安装了 primesense 模块,首先在 virtualenv 中,然后在系统上,得到相同的结果。
从 iPython,我做/收到以下内容:
In [1]: from primesense import openni2
In [2]: openni2.initialize()
---------------------------------------------------------------------------
InitializationError Traceback (most recent call last)
<ipython-input-2-4a1f095d5922> in <module>()
----> 1 openni2.initialize()
/usr/local/lib/python2.7/dist-packages/primesense/openni2.pyc in initialize(dll_directories)
95 if not found:
96 raise InitializationError("OpenNI2 could not be loaded:\n %s" %
---> 97 ("\n ".join("%s: %s" % (dir, ex) for dir, ex in exceptions)),)
98
99 _openni2_initialized = True
InitializationError: OpenNI2 could not be loaded:
/home/escher/pyenv/libOpenNI2.so: file does not exist
我尝试从 /usr/lib/libOpenNI.so 到 /usr/lib/libOpenNI2.so 创建一个符号,然后我更改为 /usr/lib/ 目录。这就是我得到的:
openni2.initialize()
---------------------------------------------------------------------------
InitializationError Traceback (most recent call last)
<ipython-input-5-4a1f095d5922> in <module>()
----> 1 openni2.initialize()
/usr/local/lib/python2.7/dist-packages/primesense/openni2.pyc in initialize(dll_directories)
95 if not found:
96 raise InitializationError("OpenNI2 could not be loaded:\n %s" %
---> 97 ("\n ".join("%s: %s" % (dir, ex) for dir, ex in exceptions)),)
98
99 _openni2_initialized = True
InitializationError: OpenNI2 could not be loaded:
/usr/lib/libOpenNI2.so: /usr/lib/libOpenNI2.so: undefined symbol: oniInitialize
我是不是做错了什么或者包装是否损坏了,在任何一种情况下,我能做些什么来让某些东西正常工作吗?