我有一个通过USB连接的Orbbec天文深度传感器,设备管理器显示驱动程序安装正确。
我从orbbec.com下载了"Astra &orbbec.com“包,但只分别安装了从structure.io下载的SensorDriver_V4.3.0.4.exe和OpenNI2包。
我有下面的代码,它编译得很好。但在运行时,它返回Device open failed: DeviceOpen using default: no devices found。
在运行NiViewer.exe时也会发生同样的情况,我在这里做错了什么?需要额外的司机吗?
#include "stdafx.h"
#include <OpenNI.h>
int main()
{
openni::Status rc = openni::STATUS_OK;
openni::Device device;
openni::VideoStream depth, color;
const char* deviceURI = openni::ANY_DEVICE;
rc = openni::OpenNI::initialize();
printf("After initialization:\n%s\n", openni::OpenNI::getExtendedError());
rc = device.open(deviceURI);
if (rc != openni::STATUS_OK)
{
printf("Device open failed: %s\n", openni::OpenNI::getExtendedError());
openni::OpenNI::shutdown();
return 1;
}
return 0;
}发布于 2018-02-22 21:03:28
我通过卸载从OpenNI2下载的structure.io包并使用Orbbec驱动程序附带的OpenNI2文件“解决了”这个问题。
仍然不知道为什么我不能使用普通的香草OpenNI2包..。
发布于 2018-05-24 07:10:52
您只需要在已经安装的OpenNI 2.2SDK文件夹结构(类似于zzzz 2\驱动程序)中复制已经安装的OPENNI2 2.2SDK文件夹结构中的3个文件(在自定义的ORBBEC中提供):
基本上,您是通过添加一个“驱动程序”来扩展OPENNI2管理摄像机的数量。当前默认安装文件夹已经包含以下内容:
(因此,添加3个在轨add文件)
重要:如果您从命令行启动niviewer.exe,它将首先搜索一个相对子文件夹\OpenNI2\drivers子文件夹(因此在本例中更新此子文件夹),或者根据安装情况在默认安装环境参数(OPENNI2_REDIST或OPENNI2_REDIST64)中查找该子文件夹。所以保重!希望能帮上忙。
https://stackoverflow.com/questions/48916317
复制相似问题