深度估计与图像分割技术详解
1. 深度相机及普通相机深度估计
在图像处理中,深度估计和图像分割是重要的任务。首先我们来看看深度相机的情况。使用 createMedianMask 函数得到的结果有一定效果,但并不完美。例如,在图像右侧,可能会错误地将头发后的阴影区域包含在掩码内,同时错误地排除肩部区域。对于肩部区域排除的问题,或许可以通过微调 numpy.where 在 createMedianMask 实现中的标准来解决。
如果有多个深度相机,可以进行测试,比较它们在支持彩色图像方面的差异,以及在区分远近层的效果。同时,尝试不同的物体和光照条件,观察它们对红外图像的影响。不过,深度相机存在局限性,比如在户外,由于太阳光中的红外成分比相机自身的红外光源亮很多,相机无法看到用于估计深度的红外图案,导致其工作效果不佳。
作为替代方案,我们可以使用普通相机进行深度估计。根据相机视角的不同,有两种方法:
- 立体视觉(Stereo Vision) :同时使用两个相机。
- 运动恢复结构(Structure from Motion, SfM) :使用一个相机,通过移动相机在不同时间获取不同视角。
这里假设处理的是静止的物体。立体视觉基于对极几何原理,它通过从相机向图像中的每个物体绘制假想线,在另一张图像中做同样操作,然后根据对应同一物体的线的交点来计算物体的距离。
以下是使用OpenCV进行立体视觉深度估计的代码实现:
超级会员免费看
订阅专栏 解锁全文
1003

被折叠的 条评论
为什么被折叠?



