怎么看一张深度图
打开它,像是照片的一个柔化灰度版本。但有两个性质比视觉观感重要得多。
它是相对的,不是绝对的。 单目估计告诉你椅子在墙前面、大概前面多少,而不是椅子离镜头 2.4 米。同一个镜头的两帧还可能被估到不同的尺度上,这正是视频逐帧算深度会「呼吸」的根源。
正负号约定没有统一。 有的管线认为亮 = 近,有的相反。反了的深度图不会报错,只会给你一个背景离得最近的场景。这大概是深度相关工作里最常见的一小时白费。
深度适合控制什么
深度是结构通道,所以当「必须保持不变的东西」是空间性的而不是视觉性的,它就是对的工具。
- 锁构图换风格。 媒材、配色、光线可以整体换掉,而构图、姿态、物体位置留住。
- 从静帧做 2.5D 运镜。 按深度位移像素就得到真实视差,一张照片可以被推近或横移。绝大多数「静图动起来」的效果都是这么做的。
- 重打光与空气感。 有距离感的雾、霾、景深都需要知道什么在远处。
- 合成。 把一个元素插到正确的遮挡层级里,前提是知道什么该在它前面。
深度估计会在哪里出错
- 玻璃、水面、镜子。 模型报的是透过它或者反射出来的东西的深度,而不是这个面本身。
- 细结构。 电线、栏杆、发丝、铁丝网,要么消失,要么被抹进背景。
- 画面里的「平面深景」。 照片里的海报、电视屏幕、挂画,经常被赋予真实纵深。
- 视频。 逐帧独立估计会带来帧间的尺度小幅变化,表现为视差在轻微起伏、画面像在呼吸。解法是做时序平滑,或者用原生支持视频的深度模型。
深度、边缘、分割:三种控制怎么选
这三个经常被混用,但它们保的不是同一样东西。
- 深度 保空间和体积,允许轮廓变化。适合换风格、做运镜。
- 边缘 控制(线稿、轮廓)严格保外形,包括你可能希望模型重新解读的细节。适合把草图变成成品图。
- 分割 保区域归属,不保形状也不保距离。适合「这块是天、那块是楼」这类要求。
按「你绝对不能丢的是什么」来选。布局和剪影都重要时,深度叠一层轻量边缘控制是常见做法;但每加一个控制,模型能自行改进的空间就少一块。