首页> 中国专利> 一种平面视频转立体视频技术中的深度序列生成方法

一种平面视频转立体视频技术中的深度序列生成方法

摘要

本发明涉及一种平面视频转立体视频技术中的深度序列生成方法,属于计算机多媒体技术领域,特别涉及将普通平面视频转为立体视频的技术。该方法包括:基于光流算法提取原二维视频序列中每一帧的像素二维运动,获得该帧的运动强度图;利用最小鉴别信息原理将原二维视频序列中每一帧图像的颜色信息与所述运动强度图融合,获得用于对视频图像进行分割的运动颜色区分图;根据运动颜色区分图的亮度对该图进行分割,并对分割后的每个区域赋予不同的深度值,得到每一帧图像的深度图;将所有帧图像的深度图组成深度序列。本发明的优点是联合运用视频序列的空间时间信息,且分割和深度判决准确可靠。

著录项

  • 公开/公告号CN101271578A

    专利类型发明专利

  • 公开/公告日2008-09-24

    原文格式PDF

  • 申请/专利权人 清华大学;

    申请/专利号CN200810103681.9

  • 发明设计人 戴琼海;徐枫;谢旭东;

    申请日2008-04-10

  • 分类号

  • 代理机构北京清亦华知识产权代理事务所;

  • 代理人廖元秋

  • 地址 100084 北京市海淀区清华园

  • 入库时间 2023-12-17 20:49:36

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2010-06-02

    授权

    授权

  • 2008-11-19

    实质审查的生效

    实质审查的生效

  • 2008-09-24

    公开

    公开

说明书

技术领域

本发明属于计算机多媒体技术领域,特别涉及一种将普通平面视频转为立体视频的技术。

技术背景

立体视频,相对于现在广为应用的平面视频,可以给用户提供视频中场景的深度信息,使用户能够通过视频看到与真实世界几乎完全一致的景象,产生巨大的真实感和临场感。由于这一巨大优势,立体视频正在全世界范围内,并且在多个行业中得到越来越多的推广和青睐。例如,根据2006年的统计,中国12个中心城市已有大约1500台的立体显示器,其中一些被布置在大型购物场所和娱乐场所,播放事先制作好的广告或其他宣传视频,给人以很强的视觉冲击力,吸引观众的眼球。

随着立体视频技术的发展,立体视频的片源制作也越来越受到人们的关注。同样来自2006年的统计,1秒钟的立体视频素材的制作费用约为530美元。从这一数字可以看出立体视频素材的制作具有重大的经济价值。

立体视频素材的制作,首先要依赖于人眼对立体的感知。人眼看世界之所以有立体感,是因为左眼和右眼看世界的视角有少许不同,因而同一场景在两眼视网膜上的成像存在视差(disparity,即成像位置差别)。根据这一原理,立体视频素材与平面视频素材相比,最大的不同是它必须包含两个普通二维视频序列,分别称为左视图序列和右视图序列。两个序列必须通过一定的显示技术,单独地被用户的左眼和右眼观测,才能实现立体感知。同时,只有这两个视频序列中的场景与真实情况下人的两眼所能观测到场景相一致,在能达到最好的立体视频效果,微小的偏差一旦被人言察觉,都会给用户带来不适的感觉。

由于以上苛刻的要求,立体视频的片源制作成为立体视频领域的主要难题之一。同时由于直接获取两路立体视频对硬件设备的精度要求很高,难以实现,研究将平面视频转为立体视频的技术,以其丰富的平面视频素材,良好的平面视频兼容性,正在越来越多的受到人们的重视。

平面视频转为立体视频,首先要求获取原序列(平面视频)每帧的深度信息,得到深度序列,深度序列由一张张与原序列中视频帧对应的深度图(depth map)组成;其次利用深度序列,将原序列变形(warpping)得到一路新的视频序列。这一序列与原序列一起,构成了立体视频的左右视图序列。

由深度序列合成另一路视频序列的方法简要介绍如下:视频序列是由一帧一帧的图像顺序的排列组成的。每一张图像又是由一个个像素组成,每一个像素都通过它的像素值表现一个相应的颜色,这些像素排列成一个二维平面,就是图像。而要获得的深度序列中的像素值并不表示颜色,而表示对应的原序列中,图像像素所表示的空间点到摄像机的距离。根据投影几何原理,空间中的点在人的两眼视网膜上成像的视差唯一地由空间点的深度决定,且二者成反比关系,即离观察点越远的点的视差值越小,无穷远点的视差为0。因此,一旦获得了平面视频序列对应的深度序列,就可以利用深度与视差的关系得到满足两眼位置关系的另一视角的视频序列,再经一定的平滑处理,两路视频就能通过一定的立体显示技术实现强烈且真实的三维效果。

由于以上的由原序列和深度序列合成新序列的方法已经比较成熟,如何由原序列获得深度序列成为二维转三维中至关重要的技术。目前已经有一些方法尝试解决这一问题:

1,利用颜色信息求深度。此类方法尝试在一张图像上,利用图像的遮挡、阴影、纹理等等发掘深度信息;

2,利用运动信息求深度。针对运动的场景,利用视频编码中基于块的运动矢量作为运动信息,根据运动矢量的大小确定对应块在三维空间中的深度;

3,联合利用颜色和运动求深度。同时利用了图像的颜色和视频序列中的运动确定深度。这类方法目前还比较少。其中一种提出的算法利用单帧图像的颜色信息进行分割,同时利用累积帧差获得运动信息。然而这种方法将导致算法的非实时性以及对人工介入的依赖。

本发明的方法中采用的相关技术介绍如下:

1.光流算法

光流算法需要输入视频中相邻两帧图像,通过分析两帧图像的差别,估计前一帧图像中像素在后一帧图像上对应的像素位置,进而估计出前一阵图像中像素的二维运动。

2.最小鉴别信息原理

求解一个未知概率密度函数,在已知一个参考概率密度函数的情况下,首先定义它们之间的鉴别信息,用来度量两个概率密度函数的差别。之后,根据具体情况,获得默写约束,在满足这些约束的情况下,通过最小化鉴别信息求解未知概率密度函数。

发明内容

本发明的目的是为克服已有技术的不足之处,提出一种平面视频转立体视频技术中的深度序列生成方法,在没有人工介入的情况下,全自动的实现对一个视频序列的每一帧的深度图的获取,从而得到原视频序列的深度序列,可以很好地实现平面视频转立体视频技术。

本发明提出的一种平面视频转立体视频技术中的深度序列生成方法,其特征在于,包括以下步骤:

1)基于光流算法提取原二维视频序列中每一帧的像素二维运动,获得该每一帧的运动强度图;

2)利用最小鉴别信息原理将原二维视频序列中每一帧图像的颜色信息与所述运动强度图融合,获得用于对视频图像进行分割的运动颜色区分图;

3)根据运动颜色区分图的亮度对该图进行分割,并对分割的每个区域赋予不同的深度值,得到每一帧图像的深度图,将所有帧图像的深度图组成深度序列。

本发明的特点及有益效果:

本发明实现了一种全自动的二维视频对应深度序列生成方法,对自动的实现二维视频转三维视频有重大的意义。在视频分割方面,本发明充分地发掘颜色信息和运动信息,并利用最小鉴别信息将它们融合在一起,使分割的结果准确可靠;在深度判定方面,本发明通过算法设计,使得三条深度判决准则得以保证,深度判决结果符合视频场景中物体的真实深度关系。

此技术可以在普通PC机或工作站等硬件系统上实现。

附图说明

图1为本发明方法总体流程图。

图2为本发明方法中像素遍历顺序示意图。

图3为本实施例的运动强度图。

图4为本实施例的运动颜色信息融合图。

图5为本实施例的深度图。

具体实施方式

本发明提出的全自动的平面视频转立体视频的方法结合附图及实施例详细说明如下:

本发明提出的平面视频转立体视频技术中的深度序列生成方法,如图1所示,包括以下步骤:

1)基于光流算法提取原二维视频序列中每一帧的像素二维运动,获得该每一帧的运动强度图,具体包括以下步骤:

11)首先,利用光流算法计算所述视频序列中每一帧的每个像素的二维运动矢量;

12)其次,为每个像素的二维运动矢量计算一个置信度Q(用以表征该矢量在刻画像素二维运动上的准确程度),该置信度Q计算的公式为:

Q(i,j)=|I(i+1,j)-I(i-1,j)|+|I(i,j+1)-I(i,j-1)|  (1)

其中Q(i,j)表示坐标为(i,j)的像素的置信度,I(i,j)表示坐标为(i,j)的像素的亮度(根据光流算法的理论,对于视频帧中纹理丰富的区域,光流计算较准确;对纹理不丰富的区域,计算较不准确。公式(1)通过计算像素所在区域的颜色变化程度定量的表示出纹理的丰富程度及光流结果的准确性。);

13)再次,根据设定置信度阈值TQ(当视频帧整体颜色变化范围较大时,可以选择较大的阈值,保证不会将低纹理区域误认为高纹理区域;当视频帧整体颜色变化范围较小时,可以选择较小的阈值,保证不会将高纹理区域误认为低纹理区域。一般阈值的选取的范围在2到10之间)对获得的每个像素的运动矢量进行判断,对置信度低于该阈值TQ的运动矢量用其周围高置信度的运动矢量替换;

13)最后,对各像素的运动矢量进行平滑处理,将运动矢量的大小转化为对应像素的像素值,获得每一帧的运动强度图;

2)利用最小鉴别信息原理将原二维视频序列中每一帧图像的颜色信息与所述运动强度图融合,获得用于对视频图像进行分割的运动颜色区分图;

将原视频帧图像的颜色转化为亮度,即得到该视频帧的黑白图像。将此黑白图像与对应的运动强度图通过最小鉴别信息原理进行融合,得到一张新的图像,称为运动颜色区分图。(在运动颜色区分图上,原视频中像素颜色的差别和运动的差别被联合最大化,因此可以根据运动颜色区分图实现对原视频分割。)具体包括以下步骤:

(21)利用鉴别信息表示运动强度图和待求的运动颜色区分图的差别:运动强度图,运动颜色区分图和黑白图像,通过公式(2)的形式构造三个对应的概率密度函数:

p(i)=k(i)Σi=1Mk(i),q(i)=f(i)Σi=1Mf(i),r(i)=g(i)Σi=1Mg(i)---(2)

其中,k(i),f(i)和g(i)分别表示运动强度图,运动颜色区分图和黑白图像第i个像素的像素值,针对总像素数为M的视频帧中的所有像素求和。对于某一帧视频,其运动强度图和黑白图像并不满足所有像素像素值之和相同。通过对黑白图像的每个像素都乘以一个系数s,可以使这一要求获得满足:

Σi=1Mk(i)=Σi=1Msg(i)---(3)

此时,黑白图像的新的像素值与原来像素值的关系可以表示为:

g^(i)=s×g(i)---(4)

根据公式(2),运动强度图和运动颜色区分图对应的概率密度函数之间的鉴别信息的表达式为(连续情况为积分,离散情况为求和)

I(q(i),p(i))=q(i)logq(i)p(i)di---(5)

再设定需要求解的运动颜色区分图与运动强度图也满足总像素值相同,即

Σi=1Mk(i)=Σi=1Mf(i)---(6)

的情况下,表示运动强度图和运动颜色区分图之间的差别的鉴别信息为

I(f,k)=Σi=1Mf(i)logf(i)k(i)---(7)

(从鉴别信息的表达式中可以看出,鉴别信息实际上是度量两个随机变量差异度的一个指标,当两个随机变量无差别时,鉴别信息为0,随着差异的增大,鉴别信息逐渐增大。)

(22)同时根据最小化运动颜色区分图与运动强度图的鉴别信息和运动颜色区分图与黑白图像的差别,得到最优化目标函数:

J(f,λ)=||g-f||2+λΣi=1Mf(i)logf(i)k(i)---(8)

其中,λ作为经验参数,需要事先设定。当λ比较大时,最终得到的运动颜色区分图将与运动强度图更相近,当λ较小时,最终得到的运动颜色区分图将与黑白图像更相近。因此当场景中物体运动强烈,运动信息更可靠时,选择较大的λ;当场景中物体间颜色差别较大,颜色信息更可靠时,选择较小的λ。一般λ取在100到1000之间。

(23)求解最优化目标函数,得到运动颜色区分图:利用导数为0的性质求解优化函数的最小值,得到方程如下:

J(f,λ)f=2(f-g)+λ1+logf(1)-logk(1)1+logf(2)-logk(2)...1+logf(N2)-logk(N2)=0---(9)

式(9)实际上有M个非线性方程,可利用二分法求解出f,即运动颜色区分图。

3)根据运动颜色区分图的亮度对其进行分割,并对分割得到的每个区域赋予不同的深度值,得到每一帧图像的深度图,将所有帧图像的深度图组成深度序列,具体包括以下步骤:

(31)根据场景深度常识,设计深度判决的三条准则:a.处于图像边缘处的物体往往是不被关注的物体,具有较大的深度值;处于图像中心的物体通常则是视频所关注的物体,深度值较小。b.对于场景中的同一个物体,可以近似认为具有相同的深度值。c.场景中除了物体还有背景,对于以某个物体,如墙壁,建筑等为背景的场景(一类场景),背景应为相同的深度值,且此深度值应大于场景中的所有物体;而对于以海洋,大地为背景的场景(二类场景),背景的深度应当有渐变的效果,通常越靠近图像下方的像素,深度值越小。

(32)根据运动颜色区分图的亮度对该图进行分割(即将图像中的各物体从背景中划分出来),并利用深度判决准则对分割区域赋以不同的深度值,获得每一帧深度图:即按照从图像边缘到图像中心的顺序遍历运动颜色区分图的每一个像素,如图2所示的从1到6……。每遍历到一个像素,则考察它的邻域,如果有亮度接近的像素(是否接近,根据亮度差是否大于阈值TI决定,其取值的大小与运动颜色区分图的所有像素亮度范围有关,当范围较大时,阈值应较大,反之应较小,一般取0.5到5之间。),则把它们都放入同一个队列;再以同样的考察方式依次遍历新加入队列中的像素,以此类推,直到没有像素能加入队列为止。如果队列中的像素个数超过阈值TN(TN表示物体最少占据的像素数,当图像中物体较大时,TN应取得较大,反之则较小,一般的取100到5000之间),则认为这些像素值相近的像素表示同一个物体,因此将它们赋以一个新的深度值。每检测出一个新的物体,都要用一个更小的深度对其赋值,以保证图像中间物体的深度值较小。如果队列中的像素个数无法超过阈值TN,则认为这些像素属于背景或邻近的已检测出的物体,因此对他们赋予相应的已有深度值。最后,通过检测背景(包含图像边缘像素最多的队列),对背景像素的深度值根据上述深度判决的第三条准则(需要事先判断视频属于哪种场景)进行新的赋值;

(33)对视频中的每一帧得到的深度图,联成整个原始视频序列所对应的深度序列。

本发明的一个实施例使用的视频序列为“Akko&Koyo”序列(日本名古屋大学拍摄)。首先,对序列中某一帧(如图3a)利用光流算法计算每个像素的二维运动矢量,直接提取像素的光流模值得到最初运动强度图(如图3b);其次,根据公式(1),为每个像素的二维运动矢量计算一个置信度Q;再次,设定置信度阈值TQ为5,对于Q小于5的运动矢量,用其周围Q大于等于5的运动矢量取代;最后,对所有像素的运动矢量进行平滑处理,得到最终该帧的运动强度图(如图3c)。

本实施例具体包括以下步骤:

1)基于光流算法提取原二维视频序列中每一帧的像素二维运动,获得该帧的运动强度图:

2)利用最小鉴别信息原理将原二维视频序列中每一帧图像的颜色信息与该帧的所述运动强度图融合,获得用于对视频图像进行分割的每一帧的运动颜色区分图:

直接将该帧的RGB颜色值转化为亮度值,得到该帧的黑白图像(如图4a),同时利用上一步得到的该帧的运动强度图(如图4b)利用下述方法合成该帧的运动颜色区分图(如图4c)。

首先,利用鉴别信息表示运动强度图和待求的运动颜色区分图的差别。令该视频帧的运动强度图和黑白图像满足公式(3),解得s,将s乘以黑白图像的每一个像素值,将结果作为黑白图像新的像素值,等待后续工作使用。同时利用公式(7)表示待求的运动颜色区分图与运动强度图的鉴别信息。

其次,同时根据最小化运动颜色区分图与运动强度图的鉴别信息和运动颜色区分图与黑白图像的差别,得到最优化目标函数。根据公式(8)列出待优化的函数,参数λ取为500。

最后,求解目标函数,得到运动颜色区分图。对形如公式(9)的非线性方程组用二分法求解,将解得的f作为运动颜色区分图的像素值,合成运动颜色区分图。

3)根据每一帧的颜色运动区分图的亮度对其进行分割,并对分割得到的的每个区域赋予不同的深度值,得到每一帧图像的深度图,将所有的深度图组成深度序列:

设定阈值TI为3,阈值TN为500,并判断此序列为一类场景。按照从图像边缘到图像中心的顺序遍历上一步获得的运动颜色区分图的每一个像素,如图2所示。每遍历到一个像素,则考察它的邻域,如果邻居像素与该像素的亮度差小于TI,则把它们都放入同一个队列;再以同样的考察方式依次遍历新加入队列中的像素,以此类推,直到没有像素能加入队列为止。如果队列中的像素个数超过TN,则将它们赋以一个新的深度值。每检测出一个新的物体,都要用一个更小的深度对其赋值。如果队列中的像素个数无法超过阈值TN,则对他们赋予当前的已有深度值。最后,检测包含图像边缘像素最多的队列,对这里像素赋以相同的并且是最深的深度。得到合成的深度图(如图5a),对比的示出原视频帧(如图5b)。

实现本实施例方法的硬件PC配置:

CPU:     Intel Pentium4 2.4GHz

内存:    512M

操作系统:Windows XP

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号