如何为OpenNIGrabber
对象的构造函数设置特定的设备ID?
OpenNIGrabber("#1")
或OpenNIGrabber("#2")
的教程示例效果很好,但我需要以某种方式选择特定设备。
是否可以选择连接到特定USB端口的设备?
我正在使用一些Xtion PRO。 我在ubuntu 13.04 64bit上。
答案 0 :(得分:2)
您可以使用bus@address
ID在Linux上使用lsusb
命令查找总线编号和USB端口地址(设备)。此类设备ID仅适用于非Windows系统,如您在PCL源(https://github.com/PointCloudLibrary/pcl/blob/master/io/src/openni_grabber.cpp#L352-L361,方法pcl::OpenNIGrabber::setupDevice
,第352-361行)中所见。
您也可以使用ASUS Xtion Pro的序列号作为ID。
PCL文档中的更多内容:http://docs.pointclouds.org/1.7.2/a00897.html#a5753a422ff92067c9065797697d69244
quepas@ubuntu:~$ lsusb
Bus 001 Device 002: ID 1d27:0601 ASUS
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
然后:
OpenNIGrabber("1@2")