【裸眼3D】 图形图像空洞填充

本文探讨了深度图在裸眼3D显示中的应用,并介绍了两种空洞填充算法:镜面反射和梯度方向填充。镜面反射通过像素对称轴填充空洞,而梯度方向填充利用图像梯度信息实现更平滑的填充效果,提高3D视觉体验。
摘要由CSDN通过智能技术生成

深度图是一种由灰度值介于0到255的像素所构成的影像。 灰度值为0的像素代表这个3D像素是位于最远的地方;而灰阶值为255的像素代表这个3D像素是位于最近的地方。在深度图里,每一个像素将定义其所对应的2D像素在Z-轴的位置。因为深度图可以一个像素对应一个像素(Pixel-by-Pixel)方式被它的原始2D影像参考来制作栩栩如生的3D立体影像,所以目前它已非常普遍地被使用在制作裸眼3D显示器(或裸眼3D广告机)所需要的多视角3D内容;也是制作多视角3D内容的主流技术。

有了深度图,就相当于2D图像有了第三维的信息描述(深度信息),我们便可以利用算法来对2D图像虚拟出多个不同视角来。简单理解,一张平面图我们远看会变小,走近了看又会变大。人向左边移动,图像在我们视野中的位置又会相对右移。因此,对于不同的视角来说,目标图像只是相当于进行了平移及一系列简单的变换。然而,目标场景并不仅仅处在同一深度,反应在深度图中就是深度图中各个像素对应的值并不完全不同,因此,在视角前后左右变换时,不同深度的图像平移变换的量是不同的,离视角越近的场景变换越小。这样一来,当我们视角变化时,远处的物体难免会被较近处的物体所遮挡。虚拟视角的时候,这些像素点的信息就丢失了(从2D图上我们并不知道被遮挡的后边到底是什么),因此,需要我们对这些被遮挡的空洞进行填充。这里,使用了两种填充算法作为比较:镜面反射与梯度方向填充:


使用算法通过一个视角产生的另一个虚拟视角后存在空洞:



一、镜面反射

对每行像素进行单独处理,如果存在需要填补遮挡像素,则以连续空洞的最右侧 x 值为对称轴,将右侧信息镜像填充空洞。OpenCV代码如下:</

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值