CN101605270B - 生成深度图的方法和装置 - Google Patents
生成深度图的方法和装置 Download PDFInfo
- Publication number
- CN101605270B CN101605270B CN2009100887870A CN200910088787A CN101605270B CN 101605270 B CN101605270 B CN 101605270B CN 2009100887870 A CN2009100887870 A CN 2009100887870A CN 200910088787 A CN200910088787 A CN 200910088787A CN 101605270 B CN101605270 B CN 101605270B
- Authority
- CN
- China
- Prior art keywords
- matrix
- information stores
- iteration
- reference picture
- depth map
- 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
Links
Images
Abstract
本发明公开了一种生成深度图的方法和装置,属于计算机视觉技术领域。该方法包括:将输入图像对中的左右视图分别作为参考图像和目标图像做灰度变换;计算灰度变换后的参考图像的上下左右梯度矩阵;按视差计算代价函数矩阵并进行边界处理;计算原始信息存储矩阵且初始化上下左右信息存储矩阵;在GPU显存中利用CUDA置信传播算法进行迭代计算,得到迭代后的上下左右信息存储矩阵,根据迭代结果计算置信矩阵;根据置信矩阵计算深度图。该装置包括:灰度变换模块、梯度计算模块、代价函数矩阵计算模块、原始信息存储矩阵计算模块、迭代模块、置信矩阵计算模块和深度图计算模块。本发明提高了深度图的运算效率,实现了高质量且快速的深度图生成。
Description
技术领域
本发明涉及计算机视觉技术领域,特别涉及一种生成深度图的方法和装置。
背景技术
三维图像和显示是未来信息系统的一种重要表现形式,三维图像和显示层次分明色彩鲜艳,具有很强的视觉冲击力,让观看的人驻景时间更长,留下深刻的印象;另外三维图像和显示给人以真实、栩栩如生,人物呼之欲出,有身临其境的感觉,有很高的艺术欣赏价值。正因为三维图像和视频具有这些平面图像和视频所不具备的特点,所以在诸如电脑显示、电视、视频、机器人、测量、斟察、医疗、广告传媒、电子游戏等领域具有广阔的应用前景。
人眼看世界之所以有立体感,是因为左眼和右眼看世界的视角有少许不同而存在视差(disparity)。视差是指左视图和右视图对应于同一个世界点的两个象素点的水平位移。计算机视觉领域的定理指出,某点的视差和它所对应的世界点的深度(depth,即距离感)成反比;也就是说,离观看点越远的点的视差值越小,无穷远点的视差为0。深度图(depth map)是由图像每个像素点对应的深度值所组成的灰度图,即一张图像所有点的深度值组成了深度图。其中距离越远的部分,深度值越小,深度图中表现为偏向黑色;距离越近的部分,深度值越大,深度图中表现为偏向白色。
现有的基于双目立体视觉的深度图生成技术主要有以下两种:
首先是高质量深度图的构建,在这方面基于MRF(Markov Random Field,马尔科夫随机场)的方法得到了广泛的关注。在实际算法中,由于无法求得其精确解,因而提出了基于BP(BeliefPropagation,置信度传播)和图分割(Graph Cuts)的近似求解算法。BP算法是一个通过在相邻节点之间传递、更新消息,迭代优化的算法,由于需要迭代多次求解,速度很慢,因此应用BP技术的加速算法近年来也得到了越来越多的重视。图分割方法相对于BP算法较快,并且基于该方法能获得高质量的整体性能,因而获得了广泛的应用。
其次是深度图的快速构建,在这方面基于局部相关性(Local method)的方法和基于DP(Dynamic Programming,动态规划)的方法被认为是当前最有可能的两种方案。基于局部相关性的方法存在噪声严重,对图像的弱纹理区域效果不好以及鲁棒性差等诸多问题,难以获得高质量的立体重建效果;基于动态规划的方法在物体边缘处容易出现条状效应。并且两者对于实时应用而言,其计算量仍显太大。
由此可见,现有的深度图生成技术目前还存在着如下问题:第一,能够生成高质量深度图的算法速度很慢;第二,能够快速生成深度图的算法得到的深度图质量比较差。所以,高质量和快速成为了深度图生成的关键技术和难点。
发明内容
为了解决现有技术的问题,本发明提供了一种生成深度图的方法和装置。所述技术方案如下:
一种生成深度图的方法,所述方法包括:
将输入图像对中的左视图作为参考图像,将所述输入图像对中的右视图作为目标图像,对所述参考图像和目标图像分别做灰度变换;
计算灰度变换后的参考图像的上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵;
根据灰度变换后的参考图像、灰度变换后的目标图像以及所述参考图像和目标图像之间的视差,计算代价函数矩阵并进行边界处理;
根据所述代价函数矩阵计算得到原始信息存储矩阵,初始化上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵;
将所述上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,以及所述原始信息存储矩阵、上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵复制到图形处理器GPU的显存中,采用计算统一设备架构CUDA在所述GPU上采用置信传播算法进行迭代计算,分别得到迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵;
根据所述迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵计算得到置信矩阵;
根据所述置信矩阵计算得到深度图。
所述计算灰度变换后的参考图像的上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,具体包括:
将灰度变换后的参考图像的每一点与其上方相邻点的像素值相减并求绝对值,将得到的结果与预设的上梯度阈值进行比较,如果所述结果大于所述上梯度阈值,则将所述每一点的上梯度值置为1,如果所述结果小于所述上梯度阈值,则将所述每一点的上梯度值置为0;
将灰度变换后的参考图像的每一点与其下方相邻点的像素值相减并求绝对值,将得到的结果与预设的下梯度阈值进行比较,如果所述结果大于所述下梯度阈值,则将所述每一点的下梯度值置为1,如果所述结果小于所述下梯度阈值,则将所述每一点的下梯度值置为0;
将灰度变换后的参考图像的每一点与其左方相邻点的像素值相减并求绝对值,将得到的结果与预设的左梯度阈值进行比较,如果所述结果大于所述左梯度阈值,则将所述每一点的左梯度值置为1,如果所述结果小于所述左梯度阈值,则将所述每一点的左梯度值置为0;
将灰度变换后的参考图像的每一点与其右方相邻点的像素值相减并求绝对值,将得到的结果与预设的右梯度阈值进行比较,如果所述结果大于所述右梯度阈值,则将所述每一点的右梯度值置为1,如果所述结果小于所述右梯度阈值,则将所述每一点的右梯度值置为0。
所述根据灰度变换后的参考图像、灰度变换后的目标图像以及所述参考图像和目标图像之间的视差,计算代价函数矩阵,具体包括:
将所述参考图像和目标图像之间的视差的取值范围设置为从0至预设的最大视差值;
对灰度变换后的参考图像中的每一个点,分别取所述取值范围内的每一个视差值,按照如下第一公式计算对应的代价函数矩阵:
cost(a,b)=|reference(a,b)-targ et(a,b-d)|;
d=0:d max;
其中,cost为所述代价函数矩阵,reference为所述灰度变换后的参考图像矩阵,target为灰度变换后的目标图像矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为所述参考图像和目标图像之间的视差,dmax为所述预设的最大视差值。
所述进行边界处理,具体包括:
按照所述第一公式计算所述代价函数矩阵后,对所述参考图像内剩余的无法按照所述第一公式进行计算的区域,按照如下第二公式计算相应的代价函数矩阵:
cost(a,b)=cost(a,d);
d=0:d max;
b=1:d;
其中,所述cost为所述区域对应的代价函数矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为所述参考图像和目标图像之间的视差,dmax为所述预设的最大视差值。所述进行边界处理之后,还包括:
将所述计算和边界处理后得到的所有代价函数矩阵中的每个值与预设的截断阈值作比较,如果该值大于所述截断阈值,则将其修改为所述截断阈值,否则,保留该值。
所述根据所述代价函数矩阵计算得到原始信息存储矩阵,具体包括:
按照如下公式对所述代价函数矩阵进行计算,得到原始信息存储矩阵:prawmessage=e-cost/D;
其中,prawmessage为所述原始信息存储矩阵,D为预设的转换系数,cost为所述代价函数矩阵,e为自然对数的底。
所述根据所述迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵计算得到置信矩阵,具体包括:
将所述迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵相乘后,得到置信矩阵。
所述参考图像和目标图像之间的视差有多个取值,每个取值对应一个置信矩阵,所述根据所述置信矩阵计算得到深度图,具体包括:
比较所述多个取值对应的多个置信矩阵,对每个点按照置信值最大的原则,得到该点的深度数据,在得到所有点的深度数据后,将所述所有点的深度数据作为深度图。
一种生成深度图的装置,所述装置包括:
灰度变换模块,用于将输入图像对中的左视图作为参考图像,将所述输入图像对中的右视图作为目标图像,对所述参考图像和目标图像分别做灰度变换;
梯度计算模块,用于计算所述灰度变换模块进行灰度变换后得到的参考图像的上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵;
代价函数矩阵计算模块,用于根据所述参考图像和目标图像之间的视差、所述灰度变换模块得到的灰度变换后的参考图像和灰度变换后的目标图像,计算代价函数矩阵并进行边界处理;
原始信息存储矩阵计算模块,用于根据所述代价函数矩阵计算模块计算得到的代价函数矩阵计算得到原始信息存储矩阵;
迭代模块,用于初始化上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵,将所述上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,以及所述原始信息存储矩阵、上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵复制到图形处理器GPU的显存中,采用计算统一设备架构CUDA在所述GPU上采用置信传播算法进行迭代计算,分别得到迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵;
置信矩阵计算模块,用于根据所述迭代模块迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵计算得到置信矩阵;
深度图计算模块,用于根据所述置信矩阵计算模块得到的置信矩阵计算得到深度图。
所述梯度计算模块具体包括:
上梯度计算单元,用于将所述灰度变换模块进行灰度变换后的参考图像的每一点与其上方相邻点的像素值相减并求绝对值,将得到的结果与预设的上梯度阈值进行比较,如果所述结果大于所述上梯度阈值,则将所述每一点的上梯度值置为1,如果所述结果小于所述上梯度阈值,则将所述每一点的上梯度值置为0;
下梯度计算单元,用于将所述灰度变换模块进行灰度变换后的参考图像的每一点与其下方相邻点的像素值相减并求绝对值,将得到的结果与预设的下梯度阈值进行比较,如果所述结果大于所述下梯度阈值,则将所述每一点的下梯度值置为1,如果所述结果小于所述下梯度阈值,则将所述每一点的下梯度值置为0;
左梯度计算单元,用于将所述灰度变换模块进行灰度变换后的参考图像的每一点与其左方相邻点的像素值相减并求绝对值,将得到的结果与预设的左梯度阈值进行比较,如果所述结果大于所述左梯度阈值,则将所述每一点的左梯度值置为1,如果所述结果小于所述左梯度阈值,则将所述每一点的左梯度值置为0;
右梯度计算单元,用于将所述灰度变换模块进行灰度变换后的参考图像的每一点与其右方相邻点的像素值相减并求绝对值,将得到的结果与预设的右梯度阈值进行比较,如果所述结果大于所述右梯度阈值,则将所述每一点的右梯度值置为1,如果所述结果小于所述右梯度阈值,则将所述每一点的右梯度值置为0。
所述代价函数矩阵计算模块具体包括:
代价函数矩阵计算单元,用于将所述参考图像和目标图像之间的视差的取值范围设置为从0至预设的最大视差值,对所述灰度变换模块进行灰度变换后的参考图像中的每一个点,分别取所述取值范围内的每一个视差值,按照如下第一公式计算对应的代价函数矩阵:
cost(a,b)=|reference(a,b)-targ et(a,b-d)|;
d=0:d max;
其中,cost为所述代价函数矩阵,reference为所述灰度变换后的参考图像矩阵,target为灰度变换后的目标图像矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为所述参考图像和目标图像之间的视差,dmax为所述预设的最大视差值;
边界处理单元,用于在所述代价函数矩阵计算单元计算得到所述代价函数矩阵后,进行边界处理。
所述边界处理单元具体用于:在所述代价函数矩阵计算单元按照所述第一公式计算所述代价函数矩阵后,对所述参考图像内剩余的无法按照所述第一公式进行计算的区域,按照如下第二公式计算相应的代价函数矩阵:
cost(a,b)=cost(a,d);
d=0:d max;
b=1:d;
其中,所述cost为所述区域对应的代价函数矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为所述参考图像和目标图像之间的视差,dmax为所述预设的最大视差值。
所述装置还包括:
截断模块,用于将所述代价函数矩阵计算模块在计算和边界处理后得到的所有代价函数矩阵中的每个值与预设的截断阈值作比较,如果该值大于所述截断阈值,则将其修改为所述截断阈值,否则,保留该值。
所述原始信息存储矩阵计算模块具体用于:按照如下公式对所述代价函数矩阵进行计算,得到原始信息存储矩阵:
prawmessage=e-cost/D;
其中,prawmessage为所述原始信息存储矩阵,D为预设的转换系数,cost为所述代价函数矩阵,e为自然对数的底。
所述置信矩阵计算模块具体包括:
置信矩阵计算单元,用于将所述迭代模块迭代后得到的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵相乘后,得到置信矩阵。
所述参考图像和目标图像之间的视差有多个取值,每个取值对应一个置信矩阵,所述深度图计算模块具体包括:
深度图计算单元,用于比较所述多个取值对应的多个置信矩阵,对每个点按照置信值最大的原则,得到该点的深度数据,在得到所有点的深度数据后,将所述所有点的深度数据作为深度图。
本发明提供的上述技术方案,采用GPU并行优化加速置信传播算法进行计算,解决了现有技术中能够生成高质量深度图的算法速度很慢,以及能够快速生成深度图的算法得到的深度图质量比较差这一矛盾,提高了深度图的运算效率,实现了高质量且快速的深度图生成。
另外,计算过程主要在显存中利用CUDA完成,其计算速度比现有的利用CPU进行计算的速度要快很多,而且,置信传播算法的使用也保证了深度图的高质量。
附图说明
图1是本发明实施例提供的生成深度图的方法流程图。
图2是本发明实施例提供的生成深度图的装置结构图。
图3是本发明实施例提供的采用GPU程序生成深度图的方法与现有的采用CPU程序生成深度图的方法的计算时间对比图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种生成深度图的方法,包括:
将输入图像对中的左视图作为参考图像,将输入图像对中的右视图作为目标图像,对参考图像和目标图像分别做灰度变换;
计算灰度变换后的参考图像的上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵;
根据灰度变换后的参考图像、灰度变换后的目标图像以及参考图像和目标图像之间的视差,计算代价函数矩阵并进行边界处理;
根据代价函数矩阵计算得到原始信息存储矩阵,初始化上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵;
将上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,以及原始信息存储矩阵、上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵复制到GPU(GraphicProcessing Unit,图形处理器)的显存中,采用CUDA(Compute Unified Device Architecture计算统一设备架构,NVIDIA公司开发的GPU上的通用编程模型)在GPU上采用置信传播算法进行迭代计算,分别得到迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵;
根据迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵计算得到置信矩阵;
根据置信矩阵计算得到深度图。
参见图1,本发明实施例还提供了一种生成深度图的方法,具体包括:
步骤101:将输入图像对中的左视图作为参考图像,将输入图像对中的右视图作为目标图像,对参考图像和目标图像分别做灰度变换;
其中,该输入图像对通常以文件的形式存储在硬盘中,文件的类型可以有多种,如bmp格式、jpg格式或gif格式等等。获取输入图像对时,具体地,可以从硬盘中读取,优选地,将读取的输入图像对存储在内存中。输入图像对在内存中的存储格式可以根据需要预先定义,以方便后续过程中按照该预先定义的存储格式从内存中读取。
具体地,还可以定义图像接口,包括图像数据指针,图像宽度,高度,位深,图像文件类型,以及图像在内存中的存储格式等,根据该图像接口定义图像读取函数,用该图像读取函数从硬盘打开源图像文件,获取图像数据,按已定义的存储格式保存在内存中。例如,定义图像宽度为768,图像高度为576,图像为真彩色图像,位深24,图像文件类型是BMP,则定义的图像读取函数按照BMP文件格式从硬盘读取源图像文件。
上述灰度变换可以利用RGB(Red Green Blue,红绿蓝)图像变换公式对输入图像对进行灰度变换,得到对应的灰度图像对。RGB图像灰度变换的公式具体如下:
Y=0.212671×R+0.715160×G+0.072169×B;
其中,Y是灰度图像每个像素点的灰度值,R、G、B分别是平面视频帧图像中每个像素点的R、G、B分量。
步骤102:计算灰度变换后的参考图像的上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,具体如下:
1)将灰度变换后的参考图像的每一点与其上方相邻点的像素值相减并求绝对值,将得到的结果与预设的上梯度阈值进行比较,如果结果大于上梯度阈值,则将该点的上梯度值置为1,如果结果小于上梯度阈值,则将该点的上梯度值置为0;
2)将灰度变换后的参考图像的每一点与其下方相邻点的像素值相减并求绝对值,将得到的结果与预设的下梯度阈值进行比较,如果结果大于下梯度阈值,则将该点的下梯度值置为1,如果结果小于下梯度阈值,则将该点的下梯度值置为0;
3)将灰度变换后的参考图像的每一点与其左方相邻点的像素值相减并求绝对值,将得到的结果与预设的左梯度阈值进行比较,如果结果大于左梯度阈值,则将该点的左梯度值置为1,如果结果小于左梯度阈值,则将该点的左梯度值置为0;
4)将灰度变换后的参考图像的每一点与其右方相邻点的像素值相减并求绝对值,将得到的结果与预设的右梯度阈值进行比较,如果结果大于右梯度阈值,则将该点的右梯度值置为1,如果结果小于右梯度阈值,则将该点的右梯度值置为0。
其中,预设的上梯度阈值、下梯度阈值、左梯度阈值和右梯度阈值可以相同,也可以不同,在本实施例中,优选地,均预设为相同的值,如等于4。
步骤103:根据灰度变换后的参考图像、灰度变换后的目标图像以及参考图像和目标图像之间的视差,计算代价函数矩阵并进行边界处理,具体如下:
将参考图像和目标图像之间的视差d的取值范围设置为从0至预设的最大视差值;
对灰度变换后的参考图像中的每一个点,分别取取值范围内的每一个视差值,按照如下第一公式计算对应的代价函数矩阵:
cost(a,b)=|reference(a,b)-targ et(a,b-d)|;
d=0:d max;
其中,cost为代价函数矩阵,reference为灰度变换后的参考图像矩阵,target为灰度变换后的目标图像矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为参考图像和目标图像之间的视差,dmax为预设的最大视差值。并且,reference(a,b)-target(a,b-d)代表参考图像中每一点与目标图像中与该点左方相距d的点之间的像素值之差,该差的绝对值则作为此时视差d的条件下该点的代价函数。
在按照上述第一公式计算代价函数矩阵后,在参考图像内会剩余有无法按照第一公式进行计算的区域,因此,需要进行边界处理,即对于该区域按照如下第二公式计算相应的代价函数矩阵:
cost(a,b)=cost(a,d);
d=0:d max;
b=1:d;
其中,cost为区域对应的代价函数矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为参考图像和目标图像之间的视差,dmax为预设的最大视差值。
上述视差的取值范围可以根据需要预先设置,本实施例中,优选地,设置最大视差值dmax=16,则视差d的取值范围是0~16的整数。因此,在按照该取值范围取视差计算代价函数矩阵时,可以得到17个代价函数矩阵,每个d值对应一个代价函数矩阵。
进一步地,本实施例中,在进行边界处理之后,还可以包括以下步骤:
将上述计算和边界处理后得到的所有代价函数矩阵中的每个值与预设的截断阈值作比较,如果该值大于截断阈值,则将其修改为截断阈值,否则,保留该值。
例如,预设的截断阈值为20,一个代价函数矩阵中的第1行第1列的值为25,则将该值取为20,第2行第1列的值为18,则保留该值不变。
步骤104:根据代价函数矩阵计算得到原始信息存储矩阵,初始化上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵;
其中,根据代价函数矩阵计算得到原始信息存储矩阵,可以采用如下公式:
prawmessage=e-cost/D;
其中,prawmessage为原始信息存储矩阵,D为预设的转换系数,cost为上述代价函数矩阵,e为自然对数的底。转换系数D的值可以根据需要进行设置,如设置D=50等。
在本实施例中,优选地,将上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵中每个点的取值均初始化为1。该初始化值根据需要也可以进行更改。
步骤105:将上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,以及原始信息存储矩阵、上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵复制到图形处理器GPU的显存中,采用计算统一设备架构CUDA在GPU上采用置信传播算法进行迭代计算,分别得到迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵;
本步骤以前所做的处理均在内存中进行,期间计算得到的各种数据也都保存在内存中,而本步骤中迭代计算的过程是在显存中完成的。具体过程可以如下:
用CUDA提供的函数在显存中开辟空间,并将上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,以及原始信息存储矩阵、上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵从内存复制到显存,本实施例中,用cudaMalloc()在显存中开辟空间,用cudaMemcpy()将上述各项内容从内存复制到显存。
在GPU上利用上梯度矩阵、下梯度矩阵、左梯度矩阵、右梯度矩阵和原始信息存储矩阵,并行计算上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵这四个矩阵,并迭代更新,在本实施例中,采用置信传播算法,对这四个矩阵中的每个矩阵都迭代50次。
步骤106:根据迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵计算得到置信矩阵;
根据迭代后的结果计算得到置信矩阵,公式具体如下:
belief=downmessage×upmessage×leftmessage×rightmessage
其中,belief是置信矩阵,downmessage为下信息存储矩阵,upmessage为上信息存储矩阵,leftmessage为左信息存储矩阵,rightmessage为右信息存储矩阵。
本实施例中,参考图像和目标图像之间的视差有多个取值,因此,每个取值都对应得到一个置信矩阵。如d从0至dmax=16,共得到17个置信矩阵。
步骤107:根据置信矩阵计算得到深度图。
本步骤在内存中完成,可以先将显存中的置信矩阵复制到内存中,根据该置信矩阵计算得到深度图的数据,并通过图像接口输出到硬盘,生成深度图文件并输出到硬盘。具体过程如下:
用CUDA提供的函数将置信矩阵从显存复制到内存,如用cudaMemcpy()将置信矩阵从显存复制到内存;然后,将所有视差取值对应的多个置信矩阵作比较,对每个点按照置信值最大的原则,得到该点的深度数据,即选择可信度最大的值作为深度的最终求取结果;在得到所有点的深度数据后,即得到包含该所有点深度数据的深度图。
参见图2,本发明实施例提供了一种生成深度图的装置,包括:
灰度变换模块201,用于将输入图像对中的左视图作为参考图像,将输入图像对中的右视图作为目标图像,对参考图像和目标图像分别做灰度变换;
梯度计算模块202,用于计算灰度变换模块进行灰度变换后得到的参考图像的上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵;
代价函数矩阵计算模块203,用于根据参考图像和目标图像之间的视差、灰度变换模块得到的灰度变换后的参考图像和灰度变换后的目标图像,计算代价函数矩阵并进行边界处理;
原始信息存储矩阵计算模块204,用于根据代价函数矩阵计算模块计算得到的代价函数矩阵计算得到原始信息存储矩阵;
迭代模块205,用于初始化上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵,将上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,以及原始信息存储矩阵、上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵复制到图形处理器GPU的显存中,采用计算统一设备架构CUDA在GPU上采用置信传播算法进行迭代计算,分别得到迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵;
置信矩阵计算模块206,用于根据迭代模块迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵计算得到置信矩阵;
深度图计算模块207,用于根据置信矩阵计算模块得到的置信矩阵计算得到深度图。
其中,梯度计算模块202具体包括:
上梯度计算单元,用于将灰度变换模块进行灰度变换后的参考图像的每一点与其上方相邻点的像素值相减并求绝对值,将得到的结果与预设的上梯度阈值进行比较,如果结果大于上梯度阈值,则将该点的上梯度值置为1,如果结果小于上梯度阈值,则将该点的上梯度值置为0;
下梯度计算单元,用于将灰度变换模块进行灰度变换后的参考图像的每一点与其下方相邻点的像素值相减并求绝对值,将得到的结果与预设的下梯度阈值进行比较,如果结果大于下梯度阈值,则将该点的下梯度值置为1,如果结果小于下梯度阈值,则将该点的下梯度值置为0;
左梯度计算单元,用于将灰度变换模块进行灰度变换后的参考图像的每一点与其左方相邻点的像素值相减并求绝对值,将得到的结果与预设的左梯度阈值进行比较,如果结果大于左梯度阈值,则将该点的左梯度值置为1,如果结果小于左梯度阈值,则将该点的左梯度值置为0;
右梯度计算单元,用于将灰度变换模块进行灰度变换后的参考图像的每一点与其右方相邻点的像素值相减并求绝对值,将得到的结果与预设的右梯度阈值进行比较,如果结果大于右梯度阈值,则将该点的右梯度值置为1,如果结果小于右梯度阈值,则将该点的右梯度值置为0。
本实施例中,代价函数矩阵计算模块203具体包括:
代价函数矩阵计算单元,用于将参考图像和目标图像之间的视差的取值范围设置为从0至预设的最大视差值,对灰度变换模块进行灰度变换后的参考图像中的每一个点,分别取取值范围内的每一个视差值,按照如下第一公式计算对应的代价函数矩阵:
cost(a,b)=|reference(a,b)-targ et(a,b-d)|;
d=0:d max;
其中,cost为代价函数矩阵,reference为灰度变换后的参考图像矩阵,target为灰度变换后的目标图像矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为参考图像和目标图像之间的视差,dmax为预设的最大视差值;
边界处理单元,用于在代价函数矩阵计算单元计算得到代价函数矩阵后,进行边界处理。
上述边界处理单元具体用于:在代价函数矩阵计算单元按照第一公式计算代价函数矩阵后,对参考图像内剩余的无法按照第一公式进行计算的区域,按照如下第二公式计算相应的代价函数矩阵:
cost(a,b)=cost(a,d);
d=0:d max;
b=1:d;
其中,cost为区域对应的代价函数矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为参考图像和目标图像之间的视差,dmax为预设的最大视差值。
进一步地,上述装置还包括:
截断模块,用于将代价函数矩阵计算模块在计算和边界处理后得到的代价函数矩阵中的每个值与预设的截断阈值作比较,如果该值大于截断阈值,则将其修改为截断阈值,否则,保留该值。
本实施例中,原始信息存储矩阵计算模块具体用于:按照如下公式对代价函数矩阵进行计算,得到原始信息存储矩阵:
prawmessage=e-cost/D;
其中,prawmessage为原始信息存储矩阵,D为预设的转换系数,cost为代价函数矩阵,e为自然对数的底。
本实施例中,置信矩阵计算模块206具体包括:
置信矩阵计算单元,用于将迭代模块迭代后得到的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵相乘后,得到置信矩阵。
本实施例中,参考图像和目标图像之间的视差可以有多个取值,每个取值对应一个置信矩阵,相应地,深度图计算模块207具体包括:
深度图计算单元,用于比较多个取值对应的多个置信矩阵,对每个点按照置信值最大的原则,得到该点的深度数据,在得到所有点的深度数据后,将所有点的深度数据作为深度图。
本发明实施例提供的上述方法和装置,采用GPU并行优化加速置信传播算法进行计算,解决了现有技术中能够生成高质量深度图的算法速度很慢,以及能够快速生成深度图的算法得到的深度图质量比较差这一矛盾,提高了深度图的运算效率,实现了高质量且快速的深度图生成。另外,计算过程主要在显存中利用CUDA完成,其计算速度比现有的利用CPU进行计算的速度要快很多,而且,置信传播算法的使用也保证了深度图的高质量。GPU兼有高性能和灵活性,可以等效成为一个超大规模并行协处理器,具有强大的浮点运算能力和很高的带宽。其大规模并行计算所带来的高性能和不断增强的可编程性,且本身面向个人消费市场的低廉价格,使得本发明实施例提供的技术方案具有较强的实用性、易用性和灵活性。
图3是本发明实施例提供的采用GPU程序生成深度图的方法与现有的采用CPU程序生成深度图的方法的计算时间对比图。其中,图3(a)为现有技术采用CPU程序生成深度图的计算时间,图3(b)为采用本发明的GPU程序生成深度图的计算时间,单位均为毫秒ms,且circle time为循环迭代计算时间,total time为程序运行的总时间。由该图可以看出,本发明的方案生成深度图的速度要比现有的生成深度图的速度快很多,速度得到了很大的提高。
本发明实施例提供的上述技术方案的全部或部分可以通过程序指令相关的硬件来完成,所述程序可以存储在可读取的存储介质中,该存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种生成深度图的方法,其特征在于,所述方法包括:
将输入图像对中的左视图作为参考图像,将所述输入图像对中的右视图作为目标图像,对所述参考图像和目标图像分别做灰度变换;
计算灰度变换后的参考图像的上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵;
根据灰度变换后的参考图像、灰度变换后的目标图像以及所述参考图像和目标图像之间的视差,计算代价函数矩阵并进行边界处理;
根据所述代价函数矩阵计算得到原始信息存储矩阵,初始化上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵;
将所述上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,以及所述原始信息存储矩阵、上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵复制到图形处理器GPU的显存中,采用计算统一设备架构CUDA在所述GPU上采用置信传播算法进行迭代计算,分别得到迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵;
根据所述迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵计算得到置信矩阵;
根据所述置信矩阵计算得到深度图。
2.根据权利要求1所述的生成深度图的方法,其特征在于,所述计算灰度变换后的参考图像的上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,具体包括:
将灰度变换后的参考图像的每一点与其上方相邻点的像素值相减并求绝对值,将得到的结果与预设的上梯度阈值进行比较,如果所述结果大于所述上梯度阈值,则将所述每一点的上梯度值置为1,如果所述结果小于所述上梯度阈值,则将所述每一点的上梯度值置为0;
将灰度变换后的参考图像的每一点与其下方相邻点的像素值相减并求绝对值,将得到的结果与预设的下梯度阈值进行比较,如果所述结果大于所述下梯度阈值,则将所述每一点的下梯度值置为1,如果所述结果小于所述下梯度阈值,则将所述每一点的下梯度值置为0;
将灰度变换后的参考图像的每一点与其左方相邻点的像素值相减并求绝对值,将得到的结果与预设的左梯度阈值进行比较,如果所述结果大于所述左梯度阈值,则将所述每一点的左梯度值置为1,如果所述结果小于所述左梯度阈值,则将所述每一点的左梯度值置为0;
将灰度变换后的参考图像的每一点与其右方相邻点的像素值相减并求绝对值,将得到的结果与预设的右梯度阈值进行比较,如果所述结果大于所述右梯度阈值,则将所述每一点的右梯度值置为1,如果所述结果小于所述右梯度阈值,则将所述每一点的右梯度值置为0。
3.根据权利要求1所述的生成深度图的方法,其特征在于,所述根据灰度变换后的参考图像、灰度变换后的目标图像以及所述参考图像和目标图像之间的视差,计算代价函数矩阵,具体包括:
将所述参考图像和目标图像之间的视差的取值范围设置为从0至预设的最大视差值;
对灰度变换后的参考图像中的每一个点,分别取所述取值范围内的每一个视差值,按照如下第一公式计算对应的代价函数矩阵:
cost(a,b)=|reference(a,b)-targ et(a,b-d)|;
d=0:dmax;
其中,cost为所述代价函数矩阵,reference为所述灰度变换后的参考图像矩阵,target为灰度变换后的目标图像矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为所述参考图像和目标图像之间的视差,dmax为所述预设的最大视差值。
4.根据权利要求3所述的生成深度图的方法,其特征在于,所述进行边界处理,具体包括:
按照所述第一公式计算所述代价函数矩阵后,对所述参考图像内剩余的无法按照所述第一公式进行计算的区域,按照如下第二公式计算相应的代价函数矩阵:
cost(a,b)=cost(a,d);
d=0:dmax;
b=1:d;
其中,所述cost为所述区域对应的代价函数矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为所述参考图像和目标图像之间的视差,dmax为所述预设的最大视差值。
5.根据权利要求1所述的生成深度图的方法,其特征在于,所述进行边界处理之后,还包括:
将所述计算及边界处理后得到的所有代价函数矩阵中的每个值与预设的截断阈值作比较,如果该值大于所述截断阈值,则将其修改为所述截断阈值,否则,保留该值。
6.根据权利要求1所述的生成深度图的方法,其特征在于,所述根据所述代价函数矩阵计算得到原始信息存储矩阵,具体包括:
按照如下公式对所述代价函数矩阵进行计算,得到原始信息存储矩阵:
prawmessage=e-cost/D;
其中,prawmessage为所述原始信息存储矩阵,D为预设的转换系数,cost为所述代价函数矩阵,e为自然对数的底。
7.根据权利要求1所述的生成深度图的方法,其特征在于,所述根据所述迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵计算得到置信矩阵,具体包括:
将所述迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵相乘后,得到置信矩阵。
8.根据权利要求1所述的生成深度图的方法,其特征在于,所述参考图像和目标图像之间的视差有多个取值,每个取值对应一个置信矩阵,所述根据所述置信矩阵计算得到深度图,具体包括:
比较所述多个取值对应的多个置信矩阵,对每个点按照置信值最大的原则,得到该点的深度数据,在得到所有点的深度数据后,将所述所有点的深度数据作为深度图。
9.一种生成深度图的装置,其特征在于,所述装置包括:
灰度变换模块,用于将输入图像对中的左视图作为参考图像,将所述输入图像对中的右视图作为目标图像,对所述参考图像和目标图像分别做灰度变换;
梯度计算模块,用于计算所述灰度变换模块进行灰度变换后得到的参考图像的上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵;
代价函数矩阵计算模块,用于根据所述参考图像和目标图像之间的视差、所述灰度变换模块得到的灰度变换后的参考图像和灰度变换后的目标图像,计算代价函数矩阵并进行边界处理;
原始信息存储矩阵计算模块,用于根据所述代价函数矩阵计算模块计算得到的代价函数矩阵计算得到原始信息存储矩阵;
迭代模块,用于初始化上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵,将所述上梯度矩阵、下梯度矩阵、左梯度矩阵和右梯度矩阵,以及所述原始信息存储矩阵、上信息存储矩阵、下信息存储矩阵、左信息存储矩阵和右信息存储矩阵复制到图形处理器GPU的显存中,采用计算统一设备架构CUDA在所述GPU上采用置信传播算法进行迭代计算,分别得到迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵;
置信矩阵计算模块,用于根据所述迭代模块迭代后的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵计算得到置信矩阵;
深度图计算模块,用于根据所述置信矩阵计算模块得到的置信矩阵计算得到深度图。
10.根据权利要求9所述的生成深度图的装置,其特征在于,所述梯度计算模块具体包括:
上梯度计算单元,用于将所述灰度变换模块进行灰度变换后的参考图像的每一点与其上方相邻点的像素值相减并求绝对值,将得到的结果与预设的上梯度阈值进行比较,如果所述结果大于所述上梯度阈值,则将所述每一点的上梯度值置为1,如果所述结果小于所述上梯度阈值,则将所述每一点的上梯度值置为0;
下梯度计算单元,用于将所述灰度变换模块进行灰度变换后的参考图像的每一点与其下方相邻点的像素值相减并求绝对值,将得到的结果与预设的下梯度阈值进行比较,如果所述结果大于所述下梯度阈值,则将所述每一点的下梯度值置为1,如果所述结果小于所述下梯度阈值,则将所述每一点的下梯度值置为0;
左梯度计算单元,用于将所述灰度变换模块进行灰度变换后的参考图像的每一点与其左方相邻点的像素值相减并求绝对值,将得到的结果与预设的左梯度阈值进行比较,如果所述结果大于所述左梯度阈值,则将所述每一点的左梯度值置为1,如果所述结果小于所述左梯度阈值,则将所述每一点的左梯度值置为0;
右梯度计算单元,用于将所述灰度变换模块进行灰度变换后的参考图像的每一点与其右方相邻点的像素值相减并求绝对值,将得到的结果与预设的右梯度阈值进行比较,如果所述结果大于所述右梯度阈值,则将所述每一点的右梯度值置为1,如果所述结果小于所述右梯度阈值,则将所述每一点的右梯度值置为0。
11.根据权利要求9所述的生成深度图的装置,其特征在于,所述代价函数矩阵计算模块具体包括:
代价函数矩阵计算单元,用于将所述参考图像和目标图像之间的视差的取值范围设置为从0至预设的最大视差值,对所述灰度变换模块进行灰度变换后的参考图像中的每一个点,分别取所述取值范围内的每一个视差值,按照如下第一公式计算对应的代价函数矩阵:
cost(a,b)=|reference(a,b)-targ et(a,b-d)|;
d=0:dmax;
其中,cost为所述代价函数矩阵,reference为所述灰度变换后的参考图像矩阵,target为灰度变换后的目标图像矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为所述参考图像和目标图像之间的视差,dmax为所述预设的最大视差值;
边界处理单元,用于在所述代价函数矩阵计算单元计算得到所述代价函数矩阵后,进行边界处理。
12.根据权利要求11所述的生成深度图的装置,其特征在于,所述边界处理单元具体用于:在所述代价函数矩阵计算单元按照所述第一公式计算所述代价函数矩阵后,对所述参考图像内剩余的无法按照所述第一公式进行计算的区域,按照如下第二公式计算相应的代价函数矩阵:
cost(a,b)=cost(a,d);
d=0:d max;
b=1:d;
其中,所述cost为所述区域对应的代价函数矩阵,a为点的纵坐标位置,b为点的横坐标位置,d为所述参考图像和目标图像之间的视差,dmax为所述预设的最大视差值。
13.根据权利要求9所述的生成深度图的装置,其特征在于,所述装置还包括:
截断模块,用于将所述代价函数矩阵计算模块在计算和边界处理后得到的所有代价函数矩阵中的每个值与预设的截断阈值作比较,如果该值大于所述截断阈值,则将其修改为所述截断阈值,否则,保留该值。
14.根据权利要求9所述的生成深度图的装置,其特征在于,所述原始信息存储矩阵计算模块具体用于:按照如下公式对所述代价函数矩阵进行计算,得到原始信息存储矩阵:
prawmessage=e-cost/D;
其中,prawmessage为所述原始信息存储矩阵,D为预设的转换系数,cost为所述代价函数矩阵,e为自然对数的底。
15.根据权利要求9所述的生成深度图的装置,其特征在于,所述置信矩阵计算模块具体包括:
置信矩阵计算单元,用于将所述迭代模块迭代后得到的上信息存储矩阵、迭代后的下信息存储矩阵、迭代后的左信息存储矩阵和迭代后的右信息存储矩阵相乘后,得到置信矩阵。
16.根据权利要求9所述的生成深度图的装置,其特征在于,所述参考图像和目标图像之间的视差有多个取值,每个取值对应一个置信矩阵,所述深度图计算模块具体包括:
深度图计算单元,用于比较所述多个取值对应的多个置信矩阵,对每个点按照置信值最大的原则,得到该点的深度数据,在得到所有点的深度数据后,将所述所有点的深度数据作为深度图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100887870A CN101605270B (zh) | 2009-07-16 | 2009-07-16 | 生成深度图的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100887870A CN101605270B (zh) | 2009-07-16 | 2009-07-16 | 生成深度图的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101605270A CN101605270A (zh) | 2009-12-16 |
CN101605270B true CN101605270B (zh) | 2011-02-16 |
Family
ID=41470786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100887870A Active CN101605270B (zh) | 2009-07-16 | 2009-07-16 | 生成深度图的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101605270B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9142026B2 (en) | 2010-02-26 | 2015-09-22 | Thomson Licensing | Confidence map, method for generating the same and method for refining a disparity map |
US8514269B2 (en) | 2010-03-26 | 2013-08-20 | Microsoft Corporation | De-aliasing depth images |
US8885890B2 (en) * | 2010-05-07 | 2014-11-11 | Microsoft Corporation | Depth map confidence filtering |
CN101873508B (zh) * | 2010-05-25 | 2012-07-04 | 东南大学 | 基于改进bp算法的中间视合成方法 |
CN102034265B (zh) * | 2010-11-24 | 2012-07-18 | 清华大学 | 一种三维视图获取方法 |
CN102026012B (zh) * | 2010-11-26 | 2012-11-14 | 清华大学 | 平面视频立体化转换深度图生成方法和装置 |
EP2656613A1 (en) | 2010-12-22 | 2013-10-30 | Thomson Licensing | Apparatus and method for determining a disparity estimate |
CN102036094B (zh) * | 2010-12-30 | 2012-02-01 | 浙江大学 | 一种基于数字分数延时技术的立体匹配方法 |
CN102098526B (zh) * | 2011-01-28 | 2012-08-22 | 清华大学 | 一种深度图求取方法及装置 |
TWI481262B (zh) | 2011-07-28 | 2015-04-11 | Ind Tech Res Inst | 影像編碼系統及影像編碼方法 |
CN102724528B (zh) * | 2012-05-18 | 2015-01-14 | 清华大学 | 一种深度图生成装置 |
CN105809717B (zh) * | 2016-03-10 | 2019-01-11 | 上海玮舟微电子科技有限公司 | 一种深度估计方法、系统及电子设备 |
CN106028018B (zh) * | 2016-05-31 | 2019-01-11 | 上海易维视科技股份有限公司 | 面向裸眼3d显示的实拍双视点3d视频优化方法及系统 |
GB2553782B (en) * | 2016-09-12 | 2021-10-20 | Niantic Inc | Predicting depth from image data using a statistical model |
US10417731B2 (en) * | 2017-04-24 | 2019-09-17 | Intel Corporation | Compute optimization mechanism for deep neural networks |
CN110220493B (zh) * | 2018-03-02 | 2023-11-10 | 北京图森智途科技有限公司 | 一种双目测距方法及其装置 |
CN109255811B (zh) * | 2018-07-18 | 2021-05-25 | 南京航空航天大学 | 一种基于可信度图视差优化的立体匹配方法 |
-
2009
- 2009-07-16 CN CN2009100887870A patent/CN101605270B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101605270A (zh) | 2009-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101605270B (zh) | 生成深度图的方法和装置 | |
US7262767B2 (en) | Pseudo 3D image creation device, pseudo 3D image creation method, and pseudo 3D image display system | |
JP4214976B2 (ja) | 擬似立体画像作成装置及び擬似立体画像作成方法並びに擬似立体画像表示システム | |
JP5536115B2 (ja) | 立体表示可能ディスプレイにおける3dビデオ画像のレンダリング | |
Cao et al. | Semi-automatic 2D-to-3D conversion using disparity propagation | |
US20080246760A1 (en) | Method and apparatus for mapping texture onto 3-dimensional object model | |
CN103345771A (zh) | 一种基于建模的图像高效渲染方法 | |
CN111199518B (zh) | Vr设备的图像呈现方法、装置、设备和计算机存储介质 | |
CN104506872B (zh) | 一种平面视频转立体视频的方法及装置 | |
CN101873509A (zh) | 消除深度图序列背景和边缘抖动的方法 | |
CN103700134A (zh) | 基于可控制纹理烘焙的三维矢量模型实时光影延迟着色渲染方法 | |
CN107562185B (zh) | 一种基于头戴vr设备的光场显示系统及实现方法 | |
CN103403755A (zh) | 图像处理方法及装置 | |
US11748940B1 (en) | Space-time representation of dynamic scenes | |
CN110930492A (zh) | 模型渲染的方法、装置、计算机可读介质及电子设备 | |
CN110149508B (zh) | 一种基于一维集成成像系统的阵列图生成及填补方法 | |
CN104822030A (zh) | 一种基于图像变形的不规则视频矩形化矫正方法 | |
CN111105484B (zh) | 一种无纸化2d串帧优化方法 | |
CN103164868B (zh) | 产生具有景深效果的图像的方法和装置 | |
CN114693857A (zh) | 光线追踪多帧降噪方法、电子设备、芯片及可读存储介质 | |
JP2009064355A (ja) | プログラム、情報記憶媒体及び画像生成システム | |
JP2006186510A (ja) | 擬似立体画像生成装置及び擬似立体画像生成プログラム並びに擬似立体画像表示システム | |
CN117523024B (zh) | 一种基于潜在扩散模型的双目图像生成方法及系统 | |
CN101923708B (zh) | 深度图强化方法 | |
Wang et al. | Unsupervised virtual view synthesis from monocular video with generative adversarial warping |
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 |