CN103337081B - 一种基于深度层的遮挡判断方法及装置 - Google Patents

一种基于深度层的遮挡判断方法及装置 Download PDF

Info

Publication number
CN103337081B
CN103337081B CN201310294784.9A CN201310294784A CN103337081B CN 103337081 B CN103337081 B CN 103337081B CN 201310294784 A CN201310294784 A CN 201310294784A CN 103337081 B CN103337081 B CN 103337081B
Authority
CN
China
Prior art keywords
depth
cavity
minimum
interlayer
histogram
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310294784.9A
Other languages
English (en)
Other versions
CN103337081A (zh
Inventor
曹汛
华夏
闫锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University filed Critical Nanjing University
Priority to CN201310294784.9A priority Critical patent/CN103337081B/zh
Publication of CN103337081A publication Critical patent/CN103337081A/zh
Application granted granted Critical
Publication of CN103337081B publication Critical patent/CN103337081B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Analysis (AREA)

Abstract

本发明公开了一种基于深度层的遮挡判断方法及其装置,属于计算机视觉领域。该方法包括:对原始图像的深度图像进行直方统计,统计深度图像所有灰度值所对应的像素个数;根据上述直方图进行包络检测,得到深度统计包络图;对上述深度统计包络图做邻域平滑滤波;根据平滑的深度统计包络图,计算出最小深度跳变,从而计算出虚拟视图上最小位置平移量;以上述平移量作为空洞尺寸阈值,对不同尺寸空洞采取不同的空洞填充策略。该装置包括:深度直方图统计模块、包络图计算模块、深度层计算模块、空洞大小计算模块和空洞大小判断模块。本发明不仅简化了现有渲染算法的复杂性,加快了渲染的速度,而且大大增强了空洞类型判断的准确性。

Description

一种基于深度层的遮挡判断方法及装置
技术领域
本发明涉及计算机视觉领域,特别涉及一种基于深度层的遮挡判断方法及其装置。
背景技术
近年来,随着自由视点技术在硬件和软件研究上的不断突破,自由视点显示在医学领域,勘探领域或娱乐业等领域都受到了越来越多的青睐。
为了使自由视点显示的效果更好,涌现了多种图像的渲染算法,常见的渲染算法大致分为两类:
第一类是原图加深度图渲染算法(2DplusZ),主要是根据场景点在深度图里对应的深度值利用相机的内外参数矩阵计算,先投射再回射渲染出新的虚拟视点视图。
第二类是多视图渲染算法(multi-view),主要是根据已知的多个视图来渲染出场景任意视角的视图。
在对视图进行渲染时,因为场景点之间发生遮挡而导致空洞的发生。如图1所示,C1对应左视图视点,C2对应右视图视点。场景点P1和P2在左视图L中投影在同一位置P,这样,离左视点C1较远的场景点P1就会被点P2遮挡。场景点P1和P2在右视图R上又分别投影于位置P1’,P2’,这样,如果基于左视图和深度图进行右视图的渲染时,在右视图R上的P1’点就会因为没有对应的信息而出现空洞。
解决空洞问题主要的方法有两大类:一类是利用背景,纹理,相邻像素等对空洞进行填充,如中国专利CN200810046313.5;另一种是对深度图进行预处理,主要进行平滑处理,平滑深度的不连续性,以减少图像绘制后产生的空洞,如中国专利CN201010144951.8。
但是上述现有的空洞类型判断技术至少具有以下的缺点:
(1)在对图像进行渲染时候,上述两类方法都没有对空洞进行分类处理;空洞很显然分为两类,一类是量化误差带来的小空洞,一般为几个像素;一类是深度跳变也就是遮挡带来的大空洞,一般为几十个像素点。
(2)在解决空洞问题的时候,第一类的填充技术可以很好的处理量化误差产生的小孔洞,因为不能从本质上解决空洞问题,特别是填补遮挡引起的较大的空洞,会明显的失真,填补效果不理想;第二类平滑处理技术对物体进行了变形,虽然减少了大空洞的数量,但使得到的虚拟视点的视觉质量有明显的下降。
发明内容
针对上述现有技术中存在的缺陷,为了增强图像的渲染效果,本发明的目的是提供一种判断虚拟视图空洞类型的方法,能对空洞进行分类处理。本发明的另外一个目的是提供实现该方法的装置。
为了实现上述发明目的,本发明方法采用的技术方案如下:
一种基于深度层的遮挡判断方法,包括如下步骤:
(1)选取参考视图的深度图;
(2)对所述深度图的所有灰度值所对应的像素个数进行统计,绘制深度直方统计图;
(3)对所述深度直方统计图进行包络检测,绘制出初始包络图;
(4)对所述深度直方图的初始包络图进行邻域平滑滤波,再绘制滤波后的包络图;
(5)对所述滤波后的包络图进行峰值检测,找出分峰位置;
(6)对所述滤波后的包络图,根据所述分峰位置,标记出各深度层,对所述深度层两两做差,找出最小深度层间隔;
(7)获取虚拟视图,确定待渲染的虚拟视图的位置;
(8)计算得到所述虚拟视图相对于所述参考视图的距离,根据计算得到的距离,利用所述最小深度层间隔计算出最小平移尺寸,即最小深度层间隔在虚拟视图上引起的位置平移的值;
(9)对获得的虚拟视图进行空洞检测,找出所有空洞,计算空洞的对角线长度;
(10)利用所述最小平移尺寸作为阈值,并与上述空洞的对角线长度进行比较,判断空洞的类型,从而对不同的图像空洞类型分别采用不同的空洞填补方法。
所述步骤(6)中,设定分峰阈值,把大于分峰阈值的分峰位置作为一个深度层。找出最小深度层间隔后设定深度阈值,比较最小深度层间隔和深度阈值的大小:如果最小深度层间隔大于深度阈值,则取最小深度层间隔作为参数;如果最小深度层间隔小于深度阈值,则取大于深度阈值的最小深度层间隔作为参数。采用上述方法的原因是,避免在获取的真实图像因为整体中存在部分位置深度变化很小与部分位置深度跳变很大同时存在的情况,导致计算出的最小深度跳变是深度变化很小区域计算出来的而理应是被忽略的值。通过设定深度阈值,可以避免在这种情况下误把小空洞判别成大空洞。
所述步骤(8)中,最小平移尺寸的计算公式如下:
L = k 2 [ RT ] Dk 1 - 1 x
L为最小平移尺寸;k2是虚拟视点的相机的内参矩阵;[R,T]是真实视点的相机的外参矩阵;D是该像素点在真实相机视点的深度变化;x用以表示像素点在真实视点的图像坐标系的坐标;k1是真实视点的相机的内参矩阵。
本发明实现上述方法的装置如下:
该装置包括:深度直方图统计模块,用于生成原始视图的深度直方统计图,统计不同灰度值所对应的像素个数;包络图计算模块,将得到的深度直方统计图进行包络检测和邻域平滑滤波,生成平滑、分峰明显的统计包络图;深度层计算模块,检测出上述包络图的分峰,并通过预先设定的阈值舍去一些具有干扰性质的分峰,将剩余的分峰处理为深度层,并将深度层两两做差,得到最小深度层间隔;空洞大小计算模块,根据原始图像和虚拟视图的位置关系,以及上述的最小深度层间隔以及对极几何方法,计算出最小平移尺寸和空洞的对角线长度;空洞大小判断模块,利用上述最小平移尺寸作为阈值,根据空洞的对角线长度,在虚拟视图中对空洞类型进行判断和区分。
本发明的方法通过利用图像和视频帧序列中的深度图像和其对应的深度统计直方图像,在渲染过程中对产生的大小空洞分别进行类型判断,从而对大小空洞采取不同的填补策略。本发明不仅简化了现有渲染算法的复杂性,加快了渲染的速度,而且大大增强了空洞类型判断的准确性,增强了空洞的填补效果,能够获得较好的图像渲染效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性的劳动前提下,还可以根据这些附图获得其他的附图。
图1是现有技术中渲染图像过程中产生空洞的原理图;
图2是本发明实施例1中的灰度直方图;
图3是本发明实施例1提供的空洞类型判断方法的流程图;
图4是本发明实施例2提供的空洞类型判断装置的结构示意图。
具体实施方式
为使本发明的目的,技术方案和优点更加清楚,下面将结合附图对本发明实施方法作进一步地详细描述。
实施例1
本实施例提供了一种渲染虚拟视图中出现的空洞类型的判断的方法:选取参考图像和视频帧的深度图;对所述深度图像进行直方统计计算,得到与所述视图对应的直方统计图;根据所述直方统计图,对其进行包络检测,得到包络图;对所述包络图进行邻域平滑滤波,得到平滑的分峰明显的包络图;设定分峰阈值,把大于阈值的分峰作为一个深度层;对所述所有的深度层两两做差,计算出最小深度层间隔;设定深度阈值,比较最小深度层间隔和深度阈值的大小;如果最小深度层间隔大于深度阈值,则取最小深度层间隔作为参数;如果最小深度层间隔大于深度阈值,则取大于深度阈值的最小深度层间隔作为参数;获取虚拟视图,根据虚拟视点视图和原始视图的位置关系以及上述最小深度层间隔参数,计算出最小深度层间隔在虚拟视图上引起的位置平移的值作为平移阈值;根据上述阈值,对大于上述阈值尺寸的空洞,认为是遮挡引起的空洞,而对于小于上述阈值尺寸的空洞,认为是量化误差引起的空洞。
上述获取虚拟视图的方法可以为:首先通过对真实视角的相机的内外参数矩阵进行标定,再根据虚拟相机与真实视角的位置关系计算出虚拟视点的虚拟相机的内外参数,使用真实视角的图像及其对应的深度图像,进行逐个像素点的投射从而渲染出虚拟视点的视图。
如图3所示,具体过程如下:
S1:对原始图像的深度图像在电脑中以矩阵形式存储的数据进行直方统计,统计所有灰度值(一般来说是0-255共256个层次)所对应的像素点个数;
S2:根据上述直方图进行包络检测(利用已有的包络检测技术),得到深度统计包络图;
S3:对上述深度统计包络图做邻域平滑滤波(利用已有的平滑滤波技术),得到平滑的深度统计包络图;(效果图参见图2)
S4:根据平滑的深度统计包络图,检测出所有分峰值,并对所用分峰值两两做差,找出最小的正数差值,利用此差值,计算出最小深度层间隔,结合公式:从而计算出虚拟视图上最小深度变化引起的平移量;其中L即为最小平移尺寸;k2是虚拟视点的相机的内参矩阵,其包含了虚拟视点相机具有的焦距与主点等内部信息,表征了图像坐标系与真实坐标系的位置关系;[R,T]是真实视点的相机的外参矩阵;D是该像素点在真实相机视点的深度变化。x用以表示像素点在真实视点的图像坐标系的坐标;k1是真实视点的相机的内参矩阵,其包含了真实视点相机应该具有的焦距与主点等内部信息,表征了图像坐标系与真实坐标系的位置关系。
S5:以上述平移量作为判断空洞尺寸的阈值,对生成的虚拟视图上的空洞点进行检测,区分出深度变化和遮挡引起的空洞和量化误差引起的空洞。在接下来的工作中可以对不同尺寸空洞采取不同的空洞填充策略,对于深度跳变遮挡引起的大空洞,可以考虑使用空域信息填补,例如使用前后相关帧的图像填补来获取结构信息和纹理信息,对于量化误差带来的小空洞,可以考虑使用inpainting或者拉普拉斯填补法(roifill)或者基于深度图的水平外插法等图像处理领域的经典算法。从来获得较好的虚拟视图效果。
上述空洞的大小可以使用opencv自带的函数cvFindContours找出轮廓线,再使用cvRectangle用一个矩形包围改空洞,并使用该矩形的对角线长度,与之前设定的阈值进行比较。通过利用深度图像和对极几何计算出遮挡引起的空洞,在渲染过程中对不同大小,不同原因产生的空洞进行不同方式的处理,不仅简化了现有渲染算法的复杂性,加快了渲染的速度,而且还大大增强了空洞填补的效果。
示例如下,例如,
将原始图像记为A,原始图像的深度图像记为D。对D进行深度直方统计。并以灰度值为X轴,像素个数为Y轴。得到一张统计直方图C1;
根据上述直方统计图绘制直方统计包络图,得到原始直方统计包络图C2;
对C2进行邻域平滑滤波,得到平滑的分峰明显的噪声抑制的包络图C3;见图2。
设定一个分峰阈值P,检测出上述包络图C3中大于阈值P的每个分峰,取出X轴的值记为h1,h2,...hn;
对上述分峰值两两做差,B=argmin[hx-hy(x,y=1,2,...n)];为了***的鲁棒性,预设一个阈值Q,使得B大于Q;
根据原始视点和虚拟视点的位置关系结合相机的内外参数矩阵,按照公式:进行运算,求的最小深度跳变B在虚拟视点上产生的位移L;
根据上述位移L,确定空洞大小参数,从而区分,深度跳变引起的遮挡空洞和量化误差引起的空洞,便于之后采取不同的填充方法。
实施例2
参见图4,本发明实施例提供了一种空洞类型判断的装置,用于对图形空洞类型进行判断,包括:
深度直方图统计模块301,用于生成图像和视频帧的深度直方统计图,用以统计不同深度所具有的像素个数,并以X轴表示深度灰度值,Y轴表示像素个数。
其中深度直方统计图的有多种实现算法,如matlab和opencv都有相应的hist函数,其具体实现思路,是对整个图片的所有的像素值的大小进行分类,然后按各个值具有的像素个数作图,拥有较多像素个数的在直方统计中具有更高的高度。本实施例中不做具体限定。
深度包络图生成模块302,该模块获取深度直方图统计模块生成的数据,用于根据所述深度直方图统计模块得到的深度直方统计图进行包络检测,再进行邻域平滑滤波,用以生成平滑,分峰明显的统计包络图。
其中包络检测和滤波平滑的方法是多种,本实施例中不做具体的限定。生成效果图见图2
深度层计算模块303,该模块获取深度包络统计图模块的数据,用于检测出上述包络图的分峰,并通过预先设定的阈值舍去一些具有干扰性质的分峰,将剩余的分峰处理为深度层,并两两做差,得到最小深度跳变。
空洞大小计算模块304,该模块获取深度层计算模块的数据,根据原始视图和虚拟视图的位置关系,以及上述的最小深度跳变以及对极几何方法,计算出最小深度跳变带来的空间位置平移阈值。
空洞类型判断模块305,该模块获取空洞大小计算模块的数据,利用上述空间位置平移阈值计算出最小空洞大小,在虚拟视图中对空洞类型进行判断和区分。
通过利用深度跳变来判断空洞的类型,其次再在渲染过程中对产生的大小空洞区分为遮挡空洞和量化误差空洞,再对其分别进行处理,不仅简化了现有的渲染算法的复杂性,更加快了渲染速度,而且大大增强了空洞的填补效果。
本发明实施例提供的上述技术方案的全部部分可以通过程序指令相关的硬件来完成,所述程序可以存贮在可读取的存取介质中,该存储介质包括:ROM,RAM,磁碟或者光盘中等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改,等同替换,改进等,均应包含在本发明的保护范围之中。

Claims (6)

1.一种基于深度层的遮挡判断方法,其特征在于,包括如下步骤:
(1)选取参考视图的深度图;
(2)对所述深度图的所有灰度值所对应的像素个数进行统计,绘制深度直方统计图;
(3)对所述深度直方统计图进行包络检测,绘制出初始包络图;
(4)对所述深度直方统计图的初始包络图进行邻域平滑滤波,再绘制滤波后的包络图;
(5)对所述滤波后的包络图进行峰值检测,找出分峰位置;
(6)对所述滤波后的包络图,根据所述分峰位置,标记出各深度层,对所述深度层两两做差,找出最小深度层间隔;
(7)获取虚拟视图,确定待渲染的虚拟视图的位置;
(8)计算得到所述虚拟视图相对于所述参考视图的距离,根据计算得到的距离,利用所述最小深度层间隔计算出最小平移尺寸,即最小深度层间隔在虚拟视图上引起的位置平移的值;
(9)对获得的虚拟视图进行空洞检测,找出所有空洞,计算空洞的对角线长度;
(10)利用所述最小平移尺寸作为阈值,并与上述空洞的对角线长度进行比较,判断空洞的类型,从而对不同的图像空洞类型分别采用不同的空洞填补方法。
2.根据权利要求1所述的一种基于深度层的遮挡判断方法,其特征在于,所述步骤(6)中,设定分峰阈值,把大于分峰阈值的分峰位置作为一个深度层。
3.根据权利要求1或2所述的一种基于深度层的遮挡判断方法,其特征在于,所述步骤(6)中,找出最小深度层间隔后设定深度阈值,比较最小深度层间隔和深度阈值的大小:
如果最小深度层间隔大于深度阈值,则取最小深度层间隔作为参数;
如果最小深度层间隔小于深度阈值,则取大于深度阈值的最小深度层间隔作为参数。
4.根据权利要求1所述的一种基于深度层的遮挡判断方法,其特征在于,所述步骤(8)中,最小平移尺寸的计算公式如下:
L = k 2 [ R T ] Dk 1 - 1 x
式中,L为最小平移尺寸;k2是虚拟视点的相机的内参矩阵;[R,T]是真实视点的相机的外参矩阵;D是该像素点在真实相机视点的深度变化;x用以表示像素点在真实视点的图像坐标系的坐标;k1是真实视点的相机的内参矩阵。
5.根据权利要求1所述的一种基于深度层的遮挡判断方法,其特征在于,所述步骤(10)中判断空洞的类型:对于空洞的对角线长度大于阈值的空洞,是遮挡引起的空洞,而对于空洞的对角线长度小于阈值的空洞,是量化误差引起的空洞。
6.一种实现如权利要求1所述基于深度层的遮挡判断方法的装置,其特征在于,该装置包括:
深度直方图统计模块,用于生成原始视图的深度直方统计图,统计不同灰度值所对应的像素个数;
包络图计算模块,将得到的深度直方统计图进行包络检测和邻域平滑滤波,生成平滑、分峰明显的包络图;
深度层计算模块,检测出上述包络图的分峰,并通过预先设定的阈值舍去一些具有干扰性质的分峰,将剩余的分峰处理为深度层,并将深度层两两做差,得到最小深度层间隔;
空洞大小计算模块,根据原始视图和虚拟视图的位置关系,以及上述的最小深度层间隔以及对极几何方法,计算出最小平移尺寸和空洞的对角线长度;
空洞大小判断模块,利用上述最小平移尺寸作为阈值,根据空洞的对角线长度,在虚拟视图中对空洞类型进行判断和区分。
CN201310294784.9A 2013-07-12 2013-07-12 一种基于深度层的遮挡判断方法及装置 Active CN103337081B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310294784.9A CN103337081B (zh) 2013-07-12 2013-07-12 一种基于深度层的遮挡判断方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310294784.9A CN103337081B (zh) 2013-07-12 2013-07-12 一种基于深度层的遮挡判断方法及装置

Publications (2)

Publication Number Publication Date
CN103337081A CN103337081A (zh) 2013-10-02
CN103337081B true CN103337081B (zh) 2016-03-16

Family

ID=49245229

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310294784.9A Active CN103337081B (zh) 2013-07-12 2013-07-12 一种基于深度层的遮挡判断方法及装置

Country Status (1)

Country Link
CN (1) CN103337081B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103581648B (zh) * 2013-10-18 2015-08-26 清华大学深圳研究生院 绘制新视点中的空洞填补方法
CN103731657B (zh) * 2014-01-26 2016-03-16 冠捷显示科技(厦门)有限公司 一种对dibr算法处理后的含有空洞影像的空洞填充处理方法
CN104657961B (zh) * 2014-12-17 2017-07-04 长安大学 一种基于双峰路面深度直方图的错台三维滤波方法及***
CN104657993B (zh) * 2015-02-12 2018-04-17 北京格灵深瞳信息技术有限公司 一种镜头遮挡检测方法及装置
CN106060512B (zh) * 2016-06-28 2017-08-01 华中科技大学 一种在虚拟视点合成中选取和填补合理映射点方法
CN109697444B (zh) * 2017-10-20 2021-04-13 ***通信有限公司研究院 基于深度图像的对象识别方法及装置、设备、存储介质
CN109635723B (zh) * 2018-12-11 2021-02-09 讯飞智元信息科技有限公司 一种遮挡检测方法及装置
CN112991193B (zh) * 2020-11-16 2022-09-23 武汉科技大学 深度图像修复方法、设备及计算机可读存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102325259A (zh) * 2011-09-09 2012-01-18 青岛海信数字多媒体技术国家重点实验室有限公司 多视点视频中虚拟视点合成方法及装置
CN103024421B (zh) * 2013-01-18 2015-03-04 山东大学 自由视点电视中的虚拟视点合成方法

Also Published As

Publication number Publication date
CN103337081A (zh) 2013-10-02

Similar Documents

Publication Publication Date Title
CN103337081B (zh) 一种基于深度层的遮挡判断方法及装置
TWI489418B (zh) Parallax Estimation Depth Generation
AU2016355215B2 (en) Methods and systems for large-scale determination of RGBD camera poses
KR100793076B1 (ko) 에지 적응형 스테레오/다시점 영상 정합 장치 및 그 방법
CN103905813B (zh) 基于背景提取与分区修复的dibr空洞填补方法
US9747694B2 (en) Method and apparatus for optimizing depth information
CN101873509B (zh) 消除深度图序列背景和边缘抖动的方法
CN101610423B (zh) 一种渲染图像的方法和装置
CN114863059A (zh) 用于在3d重建中检测和组合结构特征的方法和***
CN109636732A (zh) 一种深度图像的空洞修复方法以及图像处理装置
CN111047709B (zh) 一种双目视觉裸眼3d图像生成方法
TWI549477B (zh) 產生深度資訊的方法與裝置
CN110544300B (zh) 一种基于二维手绘图像特征自动生成三维模型的方法
EP2887314A1 (en) Video frame conversion method and apparatus
CN102436671A (zh) 一种基于深度值非线性变换的虚拟视点绘制方法
CN104270624B (zh) 一种分区域的3d视频映射方法
CN105007475B (zh) 产生深度信息的方法与装置
CN103384343A (zh) 一种填补图像空洞的方法及其装置
CN104778673B (zh) 一种改进的高斯混合模型深度图像增强方法
CN107155100A (zh) 一种基于图像的立体匹配方法及装置
CN104537637B (zh) 一种单幅静态图像深度估计方法及装置
CN110602476A (zh) 一种基于深度信息辅助的高斯混合模型的空洞填补方法
CN110149508A (zh) 一种基于一维集成成像***的阵列图生成及填补方法
CN113450274B (zh) 一种基于深度学习的自适应视点融合方法及***
EP4149110A1 (en) Virtual viewpoint synthesis method, electronic device and computer readable medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant