一种面向单视点绘制的空洞填补方法

文档序号:9433573阅读:259来源:国知局
一种面向单视点绘制的空洞填补方法
【技术领域】
[0001] 本发明属于数字图像处理及立体成像领域,涉及一种面向单视点绘制的空洞填补 方法,可以有效改善基于单视点绘制的虚拟视点质量。 技术背景
[0002] 基于深度的图像绘制(DIBR)技术通过采用彩色图和与其一致的深度图绘制虚拟 视点。该技术在绘制虚拟视点的过程中,参考视点中一些被前景遮挡的区域在虚拟视点图 像上会形成较大的空洞,这种空洞被称为Disoclusion。
[0003] 针对Disoclusion的空洞填补是基于单视点的虚拟视点绘制(SVD)所要解决的关 键问题之一。前人对该问题进行的研究工作可以分为两大类:1)深度图预处理;2)彩色图 后处理。本发明属于深度图预处理一类。张等人提出一种对深度图进行全局滤波来降低深 度不连续处的锐利程度。处理后的深度图绘制的虚拟视图中Disoclusion空洞减小了,易 于修补。但是该方法会导致绘制的虚拟视点出现几何畸变,失真严重。Lee等人在全局滤波 的基础上进行改进,只针对于会产生Disoclusion的区域进行深度图局部滤波。该种方法 使得绘制虚拟视点失真区域变小,但是在场景中不同对象的交接处还是存在明显的几何失 真。Xu等人提出一种基于深度边界膨胀的深度图预处理方法。采用该方法处理后的深度图 绘制虚拟视点中的Disoclusion位置发生了改变。Disoclusion从前景背景的交界处移位 到了背景区域,从而使得空洞周围色彩都是背景像素,没有明显差异,图像修复效果得到大 大改善,但是还存在一些尾影失真,大的空洞区域色彩模糊等问题。

【发明内容】

[0004] 为克服现有技术的不足,本发明的目的是在分析Disoclusion的位置和大小与深 度图深度像素分布关系的基础上,通过对深度图深度值变化锐利并且位于背景部分的像素 进行线性差值,采用分而治之的策略,实现基于单视点绘制的空洞填补方法,有效改善绘制 虚拟视点的质量。为此,本发明采取的技术方案是,一种面向单视点绘制的空洞填补方法, 包括如下步骤:
[0005] 一 :Disoclusion 区域检测
[0006] 通过遍历深度图的像素进行Disoclusion区域检测;
[0007] 二:深度图局部膨胀
[0008] 依据上述检测的区域进行深度边界局部膨胀。膨胀像素为从检测到Disoclusion 位置开始的前η个水平像素;
[0009] 三:深度图边界区域线性差值
[0010] 依据检测区域进行深度边界区域线性差值;
[0011] 四:深度图中值滤波
[0012] 对调整后的深度图进行中值滤波,去除孤立的像素;
[0013] 五:虚拟视点绘制
[0014] 采用处理后的深度图进行虚拟视点绘制,得到绘制后的虚拟视点。采用图像修补 方法对图像进行残留空洞的修补,得到最终的虚拟视点。
[0015] 通过遍历深度图的像素进行Disoclusion区域检测具体步骤为:Disoclusion产 生于深度图深度像素变化锐利的区域,也就是相邻像素深度差大于某一定义阈值的区域, 定义公式如下:
[0016] df(x, y) = d(x-l, y)-d(x, y)
[0017] 其中d(x,y)表示位于坐标(x,y)处的深度像素值,df(x,y)表示相邻深度像素 (x,y)和(x-l,y)处的水平深度差,如果df(x,y)大于定义的阈值T。,则坐标(x,y)处标记 为深度不连续区域。将上述检测的深度不连续区域进行标记,标记公式如下:
[0021] 其中X。表示b(x。,y) = 1.处的横坐标,条件d(xQ+k, y)_d(x。,y) < T。用于限制其 他前景像素不被标记为mask,Disoclusion区域的宽度等于df (X,y) 〇
[0022] 进行深度边界区域线性差值具体步骤是,调整位于掩模标记区域的深度值,线性 差值的算法从第η个像素开始,定义如下:
[0024] 其中cT表示重定义的深度像素。
[0025] 扩张 η个像素,η的取值为3。
[0026] 与已有技术相比,本发明的技术特点与效果:
[0027] 发明依据深度图与虚拟视点的关系,提出一种面向单视点绘制的空洞填补方法, 将Disoclusion区域的深度值通过线性差值的方法进行调整,这样合成虚拟视点中的 Disoclusion区域变成一些易于修补的小洞,优先保证显著的前景区域不产生失真,通过最 大化的利用背景像素,有效的改善了绘制虚拟视点的质量。
【附图说明】
[0028] 图1给出了 Venus原始彩色图、深度图和Disoclusion空洞区域的标记图。
[0029] 图2给出了不同方法的空洞填补效果对比图。
[0030] 图3给出了使用本发明的方法流程图。
【具体实施方式】
[0031] 本发明依据Disoclusion产生原理,实现了 一种面向单视点绘制的空洞填补方 法,具体的技术方案分为下列步骤:
[0032] I :Disoclusion 区域检测
[0033] 首先通过遍历深度图的像素进行Disoclusion区域检测,标记为一个掩模。 Disoclusion产生于深度图深度像素变化锐利的区域,也就是相邻像素深度差大于某一定 义阈值的区域。定义公式如下:
[0034] df (X,y) = d (x-1,y) -d (X,y)
[0035] 其中d(x,y)表示位于坐标(X,y)处的深度像素值,df (X,y)表示相邻深度像素 (x,y)和(x-l,y)处的水平深度差,如果df(x,y)大于定义的阈值T。,则坐标(x,y)处标记 为深度不连续区域。将上述检测的深度不连续区域进行标记,标记公式如下:
[0039] 其中X。表示b(x。,y) = 1.处的横坐标,条件d(xQ+k, y)_d(x。,y) < T。用于限制其 他前景像素不被标记为mask。Disoclusion区域的宽度等于df (X,y) 〇
[0040] 2 :深度图局部膨胀
[0041] 依据上述检测的区域进行深度边界局部膨胀。膨胀像素为从检测到Disoclusion 位置开始的前η个水平像素。
[0042] 3 :深度图线性差值
[0043] 依据检测区域进行深度边界区域线性差值,调整位于掩模标记区域的深度值。线 性差值的算法从第η个像素开始,定义如下:
[0045] 其中cT表示重定义的深度像素。
[0046] 4:深度图中值滤波
[0047] 对调整后的深度图进行中值滤波,去除孤立的像素。
[0048] 5 :虚拟视点绘制
[
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1