立体深度
立体深度(DFS)是一组算法,它从左、右两幅立体像对图像开始,通过关联和跟踪双目之间的特征来产生视差图或深度图,这在某种程度上类似于人类立体视觉提供深度感知:通过同一场景的、按已知距离分开的两个视图,根据两个视图之间的特征移位可确保该算法能够推断出物体的距离。
视差和深度之间存在细微的差别。立体深度的输出是一个视差图,它是一个纹理,包含了视图中每个点位特征的测量视差(这里指每个物体在两个输入图像之间二维意义上移位的距离)。利用摄影内容中的镜头属性,或者用于渲染内容的摄像头设置,可以将视差值转换为深度值,从而生成深度图,即其中每个texel的值包含从摄像头到该点位对象的距离。
在高通Adreno GPU上运行立体深度的示例
用例
立体深度的常见用例涉及多种行业,从汽车高级驾驶辅助系统(ADAS)到艺术图像后处理(例如:应用合成景深效果)。
立体深度(尤其是高性能/低延迟立体深度)至关重要的一个领域是混合现实XR设备领域。由于VR头戴式设备设计的物理性质,提供穿透图像的外置摄像头无法定位到用户实际眼睛所在的位置,即使两个摄像头之间的间距与用户眼睛间距完全匹配,摄像头仍然会不自然地从用户的眼睛向前偏移。如果将该类摄像头拍摄的图像原封不动地直接呈现给用户,用户会感到非常不舒服:物体会以错误的比例出现,当用户移动头部时,摄像头的运动路径与其眼睛的运动路径不同(由于偏移位置),这会导致恶心和对世界感知的扭曲。
将立体深度应用于该类摄像头图像,以生成深度图,而该深度图可用于重新投影摄像头图像并生成新图像,以显示在摄像头位于与用户眼睛相同的空间位置时,摄像头所拍摄场景的情况。这给人一种自然的尺度和运动感,对于获得切实可行的混合现实VR头戴式设备至关重要。
图形处理器立体深度的优势
Adreno图形处理器立体深度解决方案可内置到最新的Adreno运动引擎中,提供高性能、低延迟和低功耗的实现。在XR等延迟至关重要的领域中,该解决方案可起到关键作用。
从头开始设计,以尽可能少的总时间和尽可能低的延迟提供高质量的结果。该算法针对Adreno GPU进行了高度优化,在许多用例中执行时间远低于1毫秒。作为一种基于GPU的解决方案,该方案可确保系统将立体深度操作与渲染工作负荷背靠背连接起来,从而消耗深度缓冲区,从本质上将操作之间的延迟减少到几乎为零。
总结
高通科技公司的Adreno GPU立体深度支持功能为生成深度图提供了高性能、低延迟的解决方案。广泛的用例,包括要求苛刻的XR平台,均受益于对深度图的快速获取,并且可以直接集成到现有的GPU管道中。
了解有关高通运动引擎功能的更多信息:
在所发布内容中表达的观点仅为原作者的个人观点,并不代表高通公司或其子公司(以下简称为“高通公司”)的观点。所提供的内容仅供参考之用,而并不意味着高通公司或任何其他方的赞同或表述。本网站同样可以提供非高通公司网站和资源的链接或参考。高通公司对于可能通过本网站引用、访问、或链接的任何非高通公司网站或第三方资源并没有做出任何类型的任何声明、保证、或其他承诺。
关于作者
萨姆·霍尔姆斯