【问题标题】:Processing: save color and depth images处理:保存颜色和深度图像
【发布时间】:2017-01-24 09:47:14
【问题描述】:
我刚开始使用 Processing,因为我需要获取一系列图像、颜色和深度。当我在绘图时保存图像时,所以对于我得到的每张图像,我都会保存它。我有大约2fps。有什么办法可以改善吗?
我的想法是将图像存储在数组列表中。我认为有一个函数 setup() 所以也会有一个函数 shutdown() 什么的。所以当我按下 Esc 按钮或关闭变冷的窗口时。就像一个反编译器。我可以在其中运行列出并保存它们的循环槽。但是我没有找到这样的功能。
我正在开发 MacBook Air (2013)
【问题讨论】:
标签:
macos
processing
kinect
【解决方案1】:
如果您使用 OpenNI/SimpleOpenNI,我推荐一个更好的选择:使用 .oni 格式(存储深度和 rgb 流)。您所要做的就是:
- 录制到 .oni 文件(快速/实时)
- 需要时从记录的 .oni 流中读取深度/颜色流。
要录制到 .oni 文件,您有两个选择:
- 使用 Examples > Contributed Libraries > SimpleOpenNI > OpenNI > RecorderPlay 草图进行录制(this answer 底部的一些解释)
- 使用 OpenNI SDK 的 NiViewer 实用程序,它还可以保存/加载 .oni 文件。 (您可以使用homebrew 轻松安装它:
brew install homebrew/science/openni2。在这种情况下,路径类似于/usr/local/Cellar/openni2/2.2.0.33/share/openni2/tools/NiViewer)
获得 .oni 文件后,您可以轻松地读取它/以不同的速率播放它并访问深度/rgb 流以保存到磁盘。
关于您现有的计划
帧速率下降是因为在同一个线程中,它每帧编码两个图像并将其写入磁盘。您可以通过以下方式改进:
- 保存为未压缩格式(如 tiff)
- 线程化图像保存操作(一些想法见底部this answer)