gpt4 book ai didi

visual-c++ - Orbbec 和 OpenNi2 : DeviceOpen using default: no devices found

转载 作者:行者123 更新时间:2023-12-04 16:05:36 29 4
gpt4 key购买 nike

我通过 USB 连接了一个 Orbbec Astra 深度传感器,设备管理器显示驱动程序已正确安装。

我已经从 orbbec.com 下载了“Astra & OpenNI2”包,但只安装了 SensorDriver_V4.3.0.4.exe和我从structure.io下载的单独的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;
}

最佳答案

您只需要在已安装的 OPENNI2 2.2 SDK 文件夹结构(类似于 zzzz\OpenNI2\Drivers )中复制 3 个文件(在 ORBBEC 的 zip 自定义 OpenNI 2.3 中提供):

  • xxxx\OpenNI2\Drivers\orbbec.ini xxxx\OpenNI2\Drivers\orbbec.lib xxxx\OpenNI2\Drivers\orbbec.dll

  • 基本上这样做,您是通过添加“驱动程序”来扩展 OPENNI2 管理的相机的数量。当前默认安装文件夹已包含以下内容:
  • Kinect.dll,
    Onifile.dll,
    PS1080.ini
    PS1080.lib
    PS1080.dll
    PSLink.ini
    链接库
    PSLink.dll

  • (所以在那里添加 3 个 orbbec 文件)

    重要提示:如果您从命令行启动 niviewer.exe,它将首先搜索相对子文件夹\OpenNI2\drivers 子文件夹(因此在这种情况下更新此),否则将在默认安装环境参数中查找此子文件夹( OPENNI2_REDIST 或 OPENNI2_REDIST64)取决于您的安装。
    所以要小心!
    希望能帮助到你。

    关于visual-c++ - Orbbec 和 OpenNi2 : DeviceOpen using default: no devices found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48916317/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com