问题标签 [openni]
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.
opencv - Kinect + OpenCV + OpenNI 欢乐时光
所以,我一直在尝试设置我的系统,以便我可以在开发环境中从 kinect 获取视频流。到目前为止我的设置是这样的:
- Windows 7 32 位,
- OpenCV 2.3.1 Super Pack(我假设大 .exe 已经设置为与 OpenNI 一起使用)
- OpenNI(最新不稳定)
- 夜
- PrimaSense
- 我的 Kinect 拒绝使用任何驱动程序,除了来自以下位置的驱动程序:“SensorKinect-Win-OpenSource32-5.0.3.3”我从这里得到的: http: //nicolas.burrus.name/index.php/Research/KinectRgbDemoV6
到目前为止,以下工作:
- Nicholas 的 RGBDemo 工作没有问题,我的 kinect 被检测到并且可以正常工作
- OpenNI 的 UserTracker.net.exe 抛出两个错误:某些程序入口点不能位于 DLL XnDDK.dll 中。但在那之后,它几乎没有问题
我的目标是让 OpenCV 中的 kinect_maps.cpp 文件正常工作。它目前无法检测到 kinect。
所以我的问题是,我可以尝试弥合 OpenCV 和 OpenNI/Nite 之间的差距吗?
opencv - OpenNI + OpenCV 不适用于 CV_CAP_OPENNI C++
我正在尝试在 Windows 7 x64 上将 OpenCV 与 Kinect 一起使用,因此我安装了 OpenNI、NITE 和 PrimeSense(由 avin2 提供)。
我使用 CMake 编译 OpenCV 2.3.1,我检查的 CMake Flags 一切都正确,但我尝试使用简单的代码,但它从未找到 Kinect。
OpenNI 和 PrimeSense 的所有示例都可以正常工作。我已经安装了 x86 和 x64 驱动程序,但它仍然无法正常工作!
我正在使用 VideoCapture,并且 isOpened,总是返回 0。
有人知道解决方案吗?
processing - 具有多个 Kinect 的 PointCloud
我正在尝试在处理上创建一个具有多个 kinect 的 PointCloud 映射用户。我在对面使用 2 个 kinect 获取用户的正面和背面,并生成两个点云。
问题是 PointClouds X/Y/Z 没有同步,它只是把它们两个放在屏幕上,看起来肯定很乱。有一种方法可以计算或比较它们,将第二个 PointCloud 转换为“加入”第一个?我可以手动转换位置,但如果我移动传感器,它会再次关闭。
kinect - Kinect 物体识别
我正在做一个需要识别平面和小物体的 Kinect 项目。我打算在mac机器上使用openni。那么我需要使用哪些库来进行对象识别呢?我必须知道什么知识才能完成这个项目。
kinect - 编辑 .oni 文件
我已经用 openNI 进行了录制,并且我得到了一个.oni 文件。在这个我有 rgb 和深度数据以及 solso skelton 关节坐标。这很酷。我用过这个类:
但现在我需要编辑这个文件,没什么特别的,但基本操作如下:
- 在开始和结束时切割一些部分
- 让它快 2 倍
- 拍摄包含所有元数据的单帧
一些想法?
c - C 语言中的 Kinect 和 OpenNI 示例代码(也不是 C++)
有没有人知道 C(不是 C++)中的一些示例代码,这些代码与“让事物看到”中给出的项目中使用的 Java/处理代码相一致?
image-processing - 物体与 Kinect 光轴的夹角
这是我的设置: Kinect 安装在执行器上以进行水平移动。这是我在做什么的简短演示。http://www.youtube.com/watch?v=X1aSMvDQhDM
这是我的场景:
请参考上图。假设Actuator中心'M'与Kinect光轴中心'C'的距离为'dx'(毫米),则从Kinect得到的深度信息'D'(毫米)是相对的到光轴。由于我现在在 Kinect 的中心上安装了一个执行器,因此物体和 Kinect 之间的实际深度是“Z”。
X 是光轴与物体之间的距离,以像素为单位。Theta2 是光轴和物体之间的角度。'dy' 可以忽略。
这是我的问题。 要获得 Z,我可以简单地使用图 2 中的距离方程。但是我不知道 X 的真实世界值(以 mm 为单位)。如果我有物体和光轴“theta2”之间的角度,我可以使用 Dsin(theta2) 来获得以 mm 为单位的 X。然而 theta2 也是未知的。因为如果 X(以 mm 为单位)已知,我可以得到 theta2,如果 theta2 已知,我可以得到 X。那么我应该如何获得以 mm 为单位的 X 值或光轴与对象 P 之间的角度?
这是我尝试过的:因为我知道 Kinect 的最大视野是 57 度,而 Kinect 的最大水平分辨率是 640 像素,我可以说 kinect 的 1 度覆盖 11.228 (640/57) 像素。但是,通过实验我发现这会导致至少 2 度的误差。我怀疑这是由于 Kinect 上的镜头失真造成的。但我不知道如何补偿/标准化它。
非常感谢任何想法/帮助。
kinect - 关于 Kinect 的冲突信息
我想开始使用运动控制(使用深度传感器)制作应用程序,但我不知道从哪里开始。我正在寻找可用硬件和软件选项的当前比较。比如华硕Xiton、Kinect SDK、OpenNI,
可惜我没成功。信息要么是旧的,要么是相互矛盾的。我想知道给定的硬件/软件设置可以做什么(这也是“更容易”启动),然后选择一个。
我会很感激任何信息/链接。
opencv - 如何使用 Kinect 在 OpenCV 中获取深度值然后转换为毫米?
我有 VS2010 运行带有 kniect 的 OpenCV 3.2.1。
我正在使用这里的教程
运行代码后,我得到以下结果:
靠近墙壁约一米远:
(Kinect 对着墙,一米多远)
有人告诉我这些值实际上是两个像素?我真的不明白。
所以这是我到目前为止的理解:
我抓取了一个深度帧并将其存储在一个名为 depthMap 的矩阵中。矩阵的大小现在是 640*480。我正在使用代码 depthMap.at(0,0) 从第 0 行第 0 列中获取第一个深度值。但我没有返回毫米的结果,而是返回 83690629!这与我期望的最大值 10000 相差甚远
如何将这些值转换为毫米以便我可以使用它们?谢谢你