微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

OpenNI2 不打开特定设备 (Asus Xtion)

如何解决OpenNI2 不打开特定设备 (Asus Xtion)

我试图通过将设备 URI 传递给 Device::open 来打开特定设备。 由于某些原因,device.open 不适用于此类 uri。 我收到以下消息

无法打开“1d27/0600@1/7”:USB接口设置失败!

它仅在我使用 openni::any_device 获取 uri 时才有效。但是我在工作中使用多个设备,所以这不是我的选择。 当我尝试将 Asus xtion (vendorId 0x1D27 productId 0x0600) 与 ps1080 驱动程序和 openni2 一起使用时,会出现此问题。我也尝试使用 orbbec.so(由于某些原因它也适用于 asus)但问题仍然存在。

openni::OpenNI::initialize();
openni::Device device;
openni::Array< openni::DeviceInfo > deviceInfoList;
openni::OpenNI::enumerateDevices(&deviceInfoList);
for(int i=0;i<deviceInfoList.getSize();i++)
{
   if(device.open(deviceInfoList[i].getUri()) != STATUS_OK)
        std::cout<<openni::OpenNI::getExtendedError()<<std::endl;
   //...
}

UPD: 好的,我想我知道问题所在了。 我在工作中使用 Astra 和 Asus 传感器,由于某些原因 orbbec 也与 Asus 一起使用,所以当我插入 Asus 时,openni 检测到 2 个具有相同 uri 的传感器(Astra 和 PS1080)。这就是 device.open 无法打开它的原因。 有没有办法在没有uri的情况下打开设备或指定openni应该使用什么驱动程序?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。