我有一个“Leap Motion 和 Microsoft Kinect 手部采集数据集”数据集。它包含收购:
- depth.png:Kinect 深度图 (640 x 480)。
- depth.bin:Kinect 深度图原始(640 x 480 短 16 位。0 表示没有有效值)。
- rgb.png:Kinect 颜色图 (1280 x 960)。
- jump_motion.cvs:跳跃运动参数。
彩色图像 (rgb.png) 是显示某些手势的人的图像。
我想要的是仅提取这些图像的手部区域并将它们保存为单独的图像。但问题是手区域不在同一个确切的位置。一种方法可能是使用 depth.bin 文件,因为它由包含从相机平面到最近对象的距离(以毫米为单位)的像素组成。手部区域比身体本身更靠近相机,因此可以提取手部区域。但我不太了解这些过程。
如何使用 .bin 文件中的信息并提取 RGB 图像的手部区域并单独保存提取的图像(希望在OpenCV Python 环境中)?
如果问题的某些部分不够清楚,我会详细解释!
图像如下所示:
数据集链接在这里。
编辑:我已阅读 MATLAB 中的 .bin 文件,其大小为 614400x1。不应该是 307200x1,因为 640*480 = 307200。为什么要大 2 倍?我错过了一些棘手的事情吗?