【发布时间】:2018-05-19 17:52:48
【问题描述】:
我正在尝试从 iPhoneX TrueDepth 相机保存深度图像。使用AVCamPhotoFilter 示例代码,我可以在手机屏幕上实时查看深度,转换为灰度格式。我不知道如何以原始(16 位或更多)格式保存深度图像序列。
我有depthData,它是AVDepthData 的一个实例。它的成员之一是depthDataMap,它是CVPixelBuffer 和图像格式类型kCVPixelFormatType_DisparityFloat16 的一个实例。有没有办法将其保存到手机中以供离线操作?
【问题讨论】:
-
您要保存一系列“静止”深度图像还是编写视频?请注意,您引用的示例代码项目已经包含将深度缓冲区转换为灰度纹理的工具,因此您可以查看有关 getting
CVPixelBuffers out of Metal textures 或 recording video from a Metal renderer with AVAssetWriter 的现有问题。 -
@rickster,我想保存一系列静止深度图像。我不想将深度图像转换为灰度纹理,而是保存原始深度值(以米为单位)。
-
@rickster,对我来说灰度是很好的解决方案(解析器可以解码深度信息),但我找不到保存 16 位灰度视频的方法。我的示例在所有通道中使用具有相同值的常规 rgba 视频,但深度为 8 位,而不是 16。
标签: ios swift iphone-x truedepth-camera