096、人像模式与深度估计:双摄与ToF的虚化算法实战

096、人像模式与深度估计:双摄与ToF的虚化算法实战 096、人像模式与深度估计:双摄与ToF的虚化算法实战从一张翻车的样张说起去年Q2,某款旗舰机的用户反馈里炸了锅——人像模式拍出来的头发丝边缘像被狗啃过,背景虚化把耳机的线缆和背景的树枝糊成了一团。我拿到log一看,深度图在发丝区域直接炸了,边缘置信度低到0.3。更诡异的是,同一场景下,用ToF模组拍出来的深度图在金属耳机线上出现了大面积的空洞——反射率太低,ToF直接罢工了。这就是典型的“双摄深度不准、ToF有坑”的翻车现场。今天这篇笔记,就从这个坑开始,把双摄立体匹配和ToF深度估计的实战套路掰开揉碎。双摄深度估计:别被“视差”两个字骗了双摄虚化的核心是视差转深度,公式很简单:Z = f * B / d。但落地时,d的精度决定了虚化是“奶油般化开”还是“马赛克糊脸”。我见过太多团队在SGBM(半全局块匹配)上死磕参数,结果换一个光照场景就崩。代价空间的构建是第一个坑。别用简单的SAD或SSD,那玩意儿在纹理弱区域直接摆烂。实战中我推荐Census变换 + 梯度融合的混合代价。Census对光照变化鲁棒,梯度能保留边缘,两者加权融合时权重别写死——暗光下梯度权重提到0.7,强光下Census权重拉到0.8。代码里这样写:// 这里踩过坑:直接用SAD在暗光下代价空间全是噪声