问题标签 [libfreenect2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python-3.x - Kinectv2 的 Libfreenect2 错误
我正在尝试libfreenect2
在 python 3.6 中使用来获取 Kinectv2 的深度矩阵。但是有一个错误。看一下代码。
错误 -
module 'freenect2' has no attribute 'get_depth'
git - 构建 libfreenect2 时找不到 LibUSB
当我按照https://github.com/OpenKinect/libfreenect2上的说明在 Windows 10 上安装 libfreenect2 时。我无法构建 libUSB 相关文件。
最初,我使用 git 安装了 libUSB,但收到以下消息(但未显示为错误)
然后我使用 CMAKE 构建整个项目,但出现以下错误。
我曾尝试使用 Visual Studio 使用 .sln 文件构建 libUSB,但结果相同。
我已经尝试了所有我知道的方法,但它仍然可以找到我构建的 libUSB 文件。
提前感谢您的回答。
真挚地
c++ - 如何使用 Kinect SDK 有效地将单个 ColorSpacePoint 映射到 CameraPoint?
我试图从 RGB 流中简单地获取给定 2D ColorSpacePoint的 3D CameraSpacePoint位置。
查看CoordinatorMapper 方法,从颜色坐标映射的唯一方法是:
MapColorFrameToDepthSpace 将帧从颜色空间映射到深度空间。 MapColorFrameToDepthSpaceUsingIBuffer 将帧从颜色空间映射到深度空间。 MapDepthFrameToCameraSpace将帧从深度空间映射到相机空间。 MapDepthFrameToCameraSpaceUsingIBuffer将帧从深度空间映射到相机空间。
问题是,在我的旧 PC 上,当我尝试使用 MapColorFrameToDepthSpace 时,速度从 ~33fps 下降到 ~10fps。我猜想将 1920x1080 点从 2D 转换为 3D 需要一段时间,但我希望有更快的方法,因为我需要为我的应用程序转换一个点。甚至 SDK 示例(c++ 和 c#)也以 ~1fps 的速度运行,用于颜色到相机的转换演示。
即使我使用MapDepthFrameToCameraSpace
then MapDepthPointToCameraSpace
,当我只需要一个点时,它仍然会将整个深度帧转换为相机空间。
有没有办法将单个 ColorSpacePoint 转换为 CameraPoint ?如果有怎么办?否则我怎么能加速 ColorSpace 到 CameraSpace 的映射?
是否有任何其他 SDK(libfreenect2 等)提供更有效的方法来检索颜色流上某个位置的深度?
opencv - 将 OpenCV Mat 转换为 Libfreenect2 框架以进行注册
我需要使用 libfreenect2 registration::apply 与颜色/深度图像重建 PointCloud。问题是我将颜色和深度图像预先保存为 PNG 文件。颜色和深度图像都是使用 libfreenect2::Frame 获得的,并转换为 OpenCV Mat 用于 imwrite。
我尝试了以下方法来获取我的颜色框架并且它可以工作。问题是当我尝试对深度图像做同样的事情时,问题就出现了。
我通过为 rgb 和深度重新转换 libfreenect2::Frame 来测试 cv::Mat 到 libfreenect2::Frame 的转换,虽然我为 rgb 获得了相同的图像,但深度图像并非如此。
感谢您提供的任何帮助,请提供任何反馈,因为这是我第一次在这里发布问题。
c++ - 关于 cv::imwrite 速度的 .bmp 的任何替代方案
我正在尝试订阅来自 kinect2 相机的主题并保存这些图像。我将 iai_kinect2 包与 libfreenect2 一起使用。我的问题是除了 .bmp 格式之外,所有其他格式都会在时间戳之间产生一些跳跃。我不想使用 .bmp 格式,因为显然它没有给出正确的深度图像。当我尝试在 matlab 中打开它时,我只有零和 255 个深度图像。这是 .png 的时间戳示例:
除 .bmp 外,所有文件扩展名都有相同类型的跳转。我不能使用 .bmp ,因为它只为深度图像提供 0 或 255 这里是一个例子: 000001.bmp 给出不正确的深度图像只是零和 255 另一方面 .png 例如给出正确的深度图像,如下所示: 000005.png给出正确的深度图像
我的问题是如何用 .png 或任何其他文件扩展名解决这个时间戳问题?或如何使用 .bmp 图像生成正确的深度图像?当我将此 .bmp 图像添加到 matlab 时,它说它同时具有图像和颜色图。
感谢您的帮助。
你可以在下面找到我的源代码。
编辑:我理解这个问题。保存过程花费的时间比我从 kinect2 接收信息的时间要长。我能做些什么来解决这个问题?这是最后的输出:
这是 .png 打印时间的输出:
这是 .png 对应的 timestamp.txt 行:
这是 .bmp 的输出:
opencv - 从 Kinect2 颜色流中提取 3 个通道
我正在尝试从来自 Kinect2 流的图像中提取 3 个通道。所以,首先我使用 pylibfreenect2 包获取颜色流。
所以我有以下形状
据我了解,4 是每个像素或 alpha 通道的字节数。我希望图像具有 3 个通道 (RGB) 并具有 (1080, 1920, 3) 的形状。我试着这样做:
但是 PIL 包出现错误:
c++ - 找不到 Pkg-Config (cmake, libfreenect2)
我正在尝试安装 libfreenect2 ( https://github.com/OpenKinect/libfreenect2 ) 以将我的 Kinect V2 连接到我的笔记本电脑。当我运行以下命令时:
它给出的错误:
我对这一切都很陌生,所以任何帮助将不胜感激。谢谢!
linux - 包装器 cpp 文件中的 libfreenect cmake 错误
我试图在我的 ubuntu 16.04 系统和 libfreenect 库中安装 kinect 360,我遇到了 cmake 问题。我该怎么做才能解决这个问题?非常感谢你们!
cython - 如何使用 python 保存 libfreenect2.Frame 数据
我正在尝试为我要解决的图像分类问题记录 kinectv2 数据。有没有办法记录kinectv2数据?
libfreenect2
我曾尝试使用 pickle 来保存深度数据,但是由于Frame 类的库中没有 __reduce__ 方法,我遇到了错误。
我遇到了给定的错误:
TypeError: no default __reduce__ 由于非平凡的 __cinit__
docker - Kinect v2、Docker 上的多读访问
抱歉,我找不到适合我的问题的完美标题。我有以下情况:
我正在使用运动捕捉系统(http://openptrack.org/)进行身体姿势跟踪,该系统在我的 Ubuntu 16.04 上封装在 Docker 中运行。我正在使用带有 libfreenect2 的 Kinect v2(当然它在 Docker 内部运行)。与我的身体姿势跟踪并行,我想实现对象姿势跟踪。我想到了 Aruco 标记。为此,我还需要访问 Kinect 相机。当我尝试对相机图像进行采样时,我的应用程序以及 docker 内的应用程序都会崩溃。
所以我的问题如下:
- docker libfreenect2 内部已经在运行。是否有可能在 docker 之外运行 libfreenect2 并访问 Kinect 图像?
- 或者是否有可能访问位于泊坞窗内的采样图像?
- 是否可以在现有的 docker 中编程和运行我的应用程序?
对不起,如果问题不是很清楚。
谢谢你。