任何人都可以使用 Raspberry Pi 从 Kinect 获取相机数据吗?
我们想制作一个无线 Kinect 使用以太网或 WiFi 连接它。否则,请告诉我您是否有可行的替代方案。
任何人都可以使用 Raspberry Pi 从 Kinect 获取相机数据吗?
我们想制作一个无线 Kinect 使用以太网或 WiFi 连接它。否则,请告诉我您是否有可行的替代方案。
要回答您的问题,是的,可以在树莓派上获得图像和深度!
这是如何做的。
如果您只想使用视频(颜色,而不是深度),内核中已经有一个驱动程序!你可以像这样加载它:
modprobe videodev
modprobe gspca_main
modprobe gspca_kinect
你得到一个新的 /dev/videoX 并且可以像使用任何其他网络摄像头一样使用它!
如果您需要深度(这就是您想要 kinect 的原因),但内核版本早于 3.17,您需要另一个驱动程序,可以在此处找到:https ://github.com/xxorde/librekinect 。如果您有 3.17 或更高版本,则通过切换 gspca_kinect 模块的命令行 depth_mode 标志来启用 librekinect 功能:
modprobe gspca_kinect depth_mode=1
两者都在当前的 Raspbian 上运行良好。
如果您可以设法将您的 kinect 相机插入树莓派,请先安装 guvcview 以查看它是否有效。
sudo apt-get install guvcview
然后,guvcview
在终端中输入,它应该会打开一个选项面板和相机控制视图。如果所有这些都有效,并且您想要获取 RAW 数据来进行一些图像处理,您将需要编译 OpenCV(需要 4 小时的编译时间),然后,您只需要编写任何您想要的程序。要编译它,只需在 Google 上搜索,有很多教程。
好吧,据我所知,在 RaspberryPi 上从 Kinect 获取图像方面没有成功的案例。
在 github 上,libfreenect 存储库中有一个关于此类问题的问题。在此评论中,用户 zarvox 说 RPi 没有足够的能力来处理来自 Kinect 的数据。
我个人尝试使用OpenNI2和Sensor将 Kinect 与 RPi 连接,但没有成功。这不是一个聪明的决定,因为由于许可限制,使用 OpenNI2 在 Linux 上使用 Microsoft Kinect 是不可能的(嗯,实际上并不是那么不可能。你可以在 Linux 上使用OpenNI2-FreenectDriver + OpenNI2 来连接 Kinect。但无论如何这解决方法不适用于 RaspberryPi,因为 OpenNI2-FreenectDriver 使用 libfreenect)。
但无论如何,有一些关于如何将ASUS Xtion Live Pro连接到 RaspberryPi 的好教程:一、二。以及如何将 Kinect 连接到更强大的基于 arm 的 CubieBoard2:三。
是的,您可以在小型机器人项目中将 Kinect 与树莓派一起使用。我已经使用 openkinect 库完成了这项工作。我的经验是你应该检查你的树莓派并监测 pi 电压,而不是时间到低电压。您应该准确编码以使用较低的处理并更快地运行您的代码。因为如果您的代码出现问题,您的图像处理将是对对象的较慢响应。 https://github.com/OpenKinect/libfreenect https://github.com/OpenKinect/libfreenect/blob/master/wrappers/python/demo_cv2_threshold.py