39

任何人都可以使用 Raspberry Pi 从 Kinect 获取相机数据吗?

我们想制作一个无线 Kinect 使用以太网或 WiFi 连接它。否则,请告诉我您是否有可行的替代方案。

4

5 回答 5

45

要回答您的问题,是的,可以在树莓派上获得图像和深度!

这是如何做的。

如果您只想使用视频(颜色,而不是深度),内核中已经有一个驱动程序!你可以像这样加载它:

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 上运行良好。

于 2014-04-15T08:52:49.007 回答
9

如果您可以设法将您的 kinect 相机插入树莓派,请先安装 guvcview 以查看它是否有效。

sudo apt-get install guvcview

然后,guvcview在终端中输入,它应该会打开一个选项面板和相机控制视图。如果所有这些都有效,并且您想要获取 RAW 数据来进行一些图像处理,您将需要编译 OpenCV(需要 4 小时的编译时间),然后,您只需要编写任何您想要的程序。要编译它,只需在 Google 上搜索,有很多教程。

于 2013-07-26T18:16:25.717 回答
5

好吧,据我所知,在 RaspberryPi 上从 Kinect 获取图像方面没有成功的案例。

在 github 上,libfreenect 存储库中有一个关于此类问题的问题此评论中,用户 zarvox 说 RPi 没有足够的能力来处理来自 Kinect 的数据。

我个人尝试使用OpenNI2Sensor将 Kinect 与 RPi 连接,但没有成功。这不是一个聪明的决定,因为由于许可限制,使用 OpenNI2 在 Linux 上使用 Microsoft Kinect 是不可能的(嗯,实际上并不是那么不可能。你可以在 Linux 上使用OpenNI2-FreenectDriver + OpenNI2 来连接 Kinect。但无论如何这解决方法不适用于 RaspberryPi,因为 OpenNI2-FreenectDriver 使用 libfreenect)。

但无论如何,有一些关于如何将ASUS Xtion Live Pro连接到 RaspberryPi 的好教程:。以及如何将 Kinect 连接到更强大的基于 arm 的 CubieBoard2:

于 2013-11-28T08:23:56.513 回答
2

如果您打算做机器人技术,最简单的方法是使用 ROS 上的 Kinect 库Here

Oderwise 你可以试试 OpenKinect,他们提供了 libfreenect 库,让你可以访问加速度计的图像等等

Github 上的 OpenKinect 在这里

OpenKinect 维基在这里

是一个很好的示例代码和连接到 Kinect 并使用 libfreenect 操作电机所需的所有详细信息。

您将需要一个有源 USB 集线器来为 Kinect 供电并安装 libusb。

第二种可能性是使用OpenNI库,它提供了一个 SDK 来开发中间件库来连接您的应用程序,甚至还有一个 OpenNi 库用于处理

于 2013-09-02T22:50:52.553 回答
1

是的,您可以在小型机器人项目中将 Kinect 与树莓派一起使用。我已经使用 openkinect 库完成了这项工作。我的经验是你应该检查你的树莓派并监测 pi 电压,而不是时间到低电压。您应该准确编码以使用较低的处理并更快地运行您的代码。因为如果您的代码出现问题,您的图像处理将是对对象的较慢响应。 https://github.com/OpenKinect/libfreenect https://github.com/OpenKinect/libfreenect/blob/master/wrappers/python/demo_cv2_threshold.py

于 2017-12-19T09:09:43.393 回答