【问题标题】:What are black pixels in ARKit Depth Map pixel buffer?ARKit 深度图像素缓冲区中的黑色像素是什么?
【发布时间】:2020-05-24 03:29:49
【问题描述】:

当从 ARKit 会话中获取深度像素缓冲区时:

CVPixelBufferRef depthDataMap = frame.capturedDepthData.depthDataMap;

许多像素是黑色的。它们代表什么?为什么他们是黑色的?这并不能反映现实世界的真实深度。 这个怎么解释?

【问题讨论】:

    标签: objective-c swift augmented-reality arkit avdepthdata


    【解决方案1】:

    这是某种“追踪”神器。

    深度通道中的那些黑色像素是数字伪影。与以 60 fps 的频率捕获的 RGB 图像相比,这种黑色轮廓的出现成为可能,因为深度数据以 15 fps 的频率(每四帧)捕获。此外,深度通道图像质量低(低分辨率)。因此,如果主体在 AR 会话运行时快速或突然移动其头部,当四分之三的深度帧包含一个完全黑色的背景时——这会导致 RGBA 和深度数据彼此不匹配的情况,所以我们得到了这些讨厌的数字伪影。

    查看帖子中的图片如何改善 ARKit 3.0 中的人物遮挡(点击下面的链接)。

    如果您需要关于深度图及其尾随效果的更多信息,请阅读this post

    【讨论】:

      【解决方案2】:

      这意味着该像素没有深度数据(深度 = 0)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-04-04
        • 1970-01-01
        • 2014-02-23
        • 1970-01-01
        • 2016-08-21
        • 2016-08-18
        • 1970-01-01
        相关资源
        最近更新 更多