一种基于网格区域划分的深度图像优化方法及系统与流程

文档序号:16515121发布日期:2019-01-05 09:34阅读:182来源:国知局
一种基于网格区域划分的深度图像优化方法及系统与流程

本发明涉及计算机视觉技术领域,属于三维重建的深度处理方面,具体涉及一种基于网格区域划分的深度图像优化方法及系统。



背景技术:

深度图像是指物体纵向深度值代替灰度图像的灰度级形成的图像它独立于光照及物体表面的反射特性,与灰度图像相比,没有光照阴影以及物体光滑表面上纹理所产生的困扰,所以可以得到更加可靠的三维信息。正因为如此,深度图像越来越受到计算机视觉,图像处理等领域的重视。目前深度图像的获取可分为主动式与被动式,主动式主要是通过向目标物体发射激光,电磁波等能量束,通过检测回波来计算深度距离;被动式主要是利用成像,通过某种算法来计算深度距离,即常说的计算机立体视觉,一般根据图像多少采用单目立体视觉,双目立体视觉及多目立体视觉。

一般来讲,主动式得到的结果更加精确,但是受主动式设备的限制,且价格比较昂贵,所以应用场景比较受限制;被动式往往只需要得到图像就可得到深度图,无需过多的设备,但是因为图像质量对于算法的结果影响很大,所以得到的深度图一般来讲效果都不是很好,需要进行进一步深度值优化。传统的深度值优化会针对每一个像素点而言,这样的话计算量很大。



技术实现要素:

有鉴于此,本申请提供一种深度优化方法及系统,针对获取到物体的初始深度图像进行优化处理,使之达到我们的应用要求。

为解决以上技术问题,本发明提供的技术方案是一种基于网格区域划分的深度图像优化方法,包括:

s01:获取目标物体的初始深度图像;

s02:将所述初始深度图像划分为若干个网格区域;

s03:对所述初始深度图像的各个网格区域进行深度值优化,获得优化后的深度图像;

s04:判断所述优化后的深度图像是否达到预设图像标准,若否,则进入步骤s05,若是,则所述优化后的深度图像为目标物体的最终深度图像;

s05:将所述初始深度图像的各个网格区域再划分为若干个网格区域,进入步骤s03。

优选地,所述步骤s02中,将所述初始深度图像划分为若干个网格区域的方法,包括:采用k-means算法将所述初始深度图像划分为若干个网格区域。

优选地,所述步骤s03中,对所述初始深度图像的各个网格区域进行深度值优化的方法,包括:采用spgd算法对所述初始深度图像的各个网格区域进行深度值优化。

优选地,所述采用spgd算法对所述初始深度图像的各个网格区域进行深度值优化的方法,包括:

构造所述初始深度图像关于深度值的代价函数j,所述初始深度图像是关于矢量u=(u1,u2,u3…un)的函数,即j(u)=j(u1,u2,u3…un),n为划分的网格区域数;

对所述代价函数j的所有变量同时施加双边扰动,计算所述代价函数j值,正向扰动公式为{+δuj(n)/2},负向扰动公式为{-δuj(n)/2},所述代价函数j值计算公式为δj(n)=δj+(n)-δj-(n),其中,上标n代表n次扰动,即迭代公式为其中μ为迭代步长,δ为扰动大小;

判断所述代价函数j值是否小于预设阈值,若是,则所述初始深度图像在当前网格区域数量下停止迭代流程,若否,则所述初始深度图像在当前网格区域数量下继续迭代流程。

优选地,所述采用spgd算法对所述初始深度图像的各个网格区域进行深度值优化的方法,还包括:

当δj/j大于预设最大扰动阈值时,减小扰动幅度,同时增大迭代步长;

当δj/j小于预设最小扰动阈值时,增大扰动幅度,同时减小迭代步长。

优选地,所述步骤s05中,将所述初始深度图像的各个网格区域再划分为若干个网格区域的方法,包括:采用k-means算法将所述初始深度图像的各个网格区域再划分为若干个网格区域。

本发明还提供一种基于网格区域划分的深度图像优化系统,包括:

初始深度图像获取模块,用于获取目标物体的初始深度图像;

初始深度图像划分模块,用于将所述初始深度图像划分为若干个网格区域;

网格区域深度值优化模块,用于对所述初始深度图像的各个网格区域进行深度值优化,获得优化后的深度图像;

优化后深度图像判断模块,用于判断所述优化后的深度图像是否达到预设图像标准,若否,则进入初始深度图像再划分模块,若是,则所述优化后的深度图像为目标物体的最终深度图像;

初始深度图像再划分模块,用于将所述初始深度图像的各个网格区域再划分为若干个网格区域,分割完成后进入网格区域深度值优化模块。

优选地,所述初始深度图像划分模块包括k-means算法单元,所述k-means算法单元用于采用k-means算法将所述初始深度图像划分为若干个网格区域。

优选地,所述网格区域深度值优化模块包括spgd算法单元,所述spgd算法单元用于采用spgd算法对所述初始深度图像的各个网格区域进行深度值优化。

优选地,所述spgd算法单元包括:

代价函数构造组件,用于构造所述初始深度图像关于深度值的代价函数j,所述初始深度图像是关于矢量u=(u1,u2,u3…un)的函数,即j(u)=j(u1,u2,u3…un),n为划分的网格区域数;

扰动计算组件,用于所述对代价函数j的所有变量同时施加双边扰动,计算所述代价函数j值,正向扰动公式为{+δuj(n)/2},负向扰动公式为{-δuj(n)/2},所述代价函数j值计算公式为δj(n)=δj+(n)-δj-(n),其中,上标n代表n次扰动,即迭代公式为其中μ为迭代步长,δ为扰动大小;

迭代判断组件,用于判断所述代价函数j值是否小于预设阈值,若是,则所述初始深度图像在当前网格区域数量下停止迭代流程,若否,则所述初始深度图像在当前网格区域数量下继续迭代流程。

本申请与现有技术相比,其有益效果详细说明如下:本发明实施例提供的基于网格区域划分的深度图像优化方法及系统,通过获取目标物体的初始深度图像,将初始深度图像划分为若干个网格区域,对各个网格区域进行深度值优化,获得优化后的深度图像,判断优化后的深度图像是否达到预设图像标准,若否,则将初始深度图像的各个网格区域再划分为若干个网格区域,再对初始深度图像的各个网格区域进行深度值优化,通过反复的划分和优化直到优化后的深度图像达到预设图像标准,即获得目标物体的最终深度图像。解决了现有的深度优化方法计算量大效率低的问题,实现了将目标物体的深度图像进行网格划分,由粗到精的进行优化计算,在计算时间与优化精度上都达到一种较好的平衡关系。

附图说明

图1为本发明实施例一基于网格区域划分的深度图像优化方法流程示意图;

图2为本发明实施例二基于网格区域划分的深度图像优化方法流程示意图;

图3为本发明实施例二采用spgd算法对初始深度图像的各个网格区域进行深度值优化方法的流程示意图;

图4为本发明实施例基于网格区域划分的深度图像优化系统结构示意图。

具体实施方式

为了使本领域的技术人员更好地理解本发明的技术方案,下面结合附图和具体实施例对本发明作进一步的详细说明。

如图1所示,本发明实施例一提供一种基于网格区域划分的深度图像优化方法,该方法包括:

s01:获取目标物体的初始深度图像;

s02:将初始深度图像划分为若干个网格区域;

s03:对初始深度图像的各个网格区域进行深度值优化,获得优化后的深度图像;

s04:判断优化后的深度图像是否达到预设图像标准,若否,则进入步骤s05,若是,则优化后的深度图像为目标物体的最终深度图像;

s05:将初始深度图像的各个网格区域再划分为若干个网格区域进入步骤s03。

需要说明的是,步骤s01中,可以采用单目立体视觉、双目立体视觉、多目立体视觉、结构光技术和tof(timeofflight,飞行时间)技术等方法获取目标物体的初始深度图像。

步骤s02中,将初始深度图像划分为若干个网格区域的方法有很多种,例如可以利用一些特征点进行网格区域划分,可以利用深度值的范围进行网格区域划分,可以利用边界信息进行网格区域划分,可以利用几何信息进行网格区域划分,可以利用k-means算法(聚类算法)、可以利用深度学习等方法将目标物体的初始深度图像分割为若干个区域,获得初始深度图像的若干个网格区域。

步骤s03中,对初始深度图像划分后的各个网格区域分别进行深度值优化,可以采用梯度下降,牛顿迭代,lm算法等方法进行深度值优化。在完成每个网格区域深度值优化后,获得优化后的深度图像。

步骤s04中,判断优化后的深度图像是否达到预设图像标准,预设图像标准可以为图片精度要求,当优化后的深度图像达到我们需要的图片精度后就不再进行划分和优化了。

步骤s05中,如果优化后的深度图像没有达到预设图像标准,则将初始深度图像的各个网格区域再划分为若干个网格区域,即将各个网格区域划分为更小的网格区域,可以采用利用一些特征点进行网格区域划分,利用深度值的范围进行网格区域划分,利用边界信息进行网格区域划分,利用几何信息进行网格区域划分,可以利用k-means算法(聚类算法)、深度学习等方法将各个网格区域分割为更小的网格区域。划分完成后,进入步骤s03,对每个网格区域进行深度值优化,获得的优化后的深度图像再判断是否达到预设图像标准,如果未达到要求,则再进行划分和优化,直到优化后的深度图像达到预设图像标准,即获得我们需要的目标物体的最终深度图像。

该深度图像优化方法以初始深度图像为初值,迭代过程中逐渐逼近最终深度图像,解决初始深度图像精度不高的问题。

如图2所示,本发明实施例二提供另一种基于网格区域划分的深度图像优化方法,该方法包括:

s11:获取目标物体的初始深度图像;

s12:采用k-means算法将初始深度图像划分为若干个网格区域;

s13:采用spgd算法对初始深度图像的各个网格区域进行深度值优化,获得优化后的深度图像;

s14:判断优化后的深度图像是否达到预设图像标准,若否,则进入步骤s15,若是,则优化后的深度图像为目标物体的最终深度图像;

s15:采用k-means算法将初始深度图像的各个网格区域再划分为若干个网格区域,进入步骤s13。

需要说明的是,步骤s11中,可以采用单目立体视觉、双目立体视觉、多目立体视觉、结构光技术和tof(timeofflight,飞行时间)技术等方法获取目标物体的初始深度图像。该实施例采用双目立体视觉方法获取目标物体的初始深度图像。

步骤s12中,首先利用k-means图像分割算法将目标物体的初始深度图像进行分割,假设得到n个区域,这就是初始的n个网格区域。图像分割就是把图像分成若干个特定的、具有独特性质的区域,它是由图像处理到图像分析的关键步骤。k-means算法是很典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。该算法认为簇是由距离靠近的对象组成的,因此把得到紧凑且独立的簇作为最终目标。

步骤s13中,对初始的n个网格区域实现基于spgd算法(stochasticparallelgradientdescentalgorithm,随机并行梯度下降算法)的深度值优化。

如图3所示,采用spgd算法对初始深度图像的各个网格区域进行深度值优化方法,包括:

s131:构造初始深度图像关于深度值的代价函数j,初始深度图像是关于矢量u=(u1,u2,u3…un)的函数,即j(u)=j(u1,u2,u3…un),n为划分的网格区域数。

s132:对代价函数j的所有变量同时施加双边扰动,计算代价函数j值,双边扰动包括正向扰动和负向扰动,正向扰动公式为{+δuj(n)/2},负向扰动公式为{-δuj(n)/2},代价函数j值计算公式为δj(n)=δj+(n)-δj_(n),其中,上标n代表n次扰动,即迭代公式为其中μ为迭代步长,δ为扰动大小。

其中,为了防止迭代一定次数后出现震荡情况,当δj/j大于预设最大扰动阈值时,减小扰动幅度,同时增大迭代步长;当δj/j小于预设最小扰动阈值时,增大扰动幅度,同时减小迭代步长。

s133:判断代价函数j值是否小于预设阈值,若是,则初始深度图像在当前网格区域数量下停止迭代流程,若否,则初始深度图像在当前网格区域数量下继续迭代流程。

其中,迭代停止的要求就是所求的代价函数j值满足我们设置的阈值,必须小于该阈值,大于的话还需要继续分割求解。该阈值并非确定,和我们的代价函数的形式有关系。一般来说,如果划分更细,计算代价函数j值只会越来越小,所以,一般情况下,随着每一次划分,预设阈值会减小。

这里,将spgd优化算法结合由粗到精的网格划分扰动计算,从运算速度上有很大的提高,能够满足更多应用场景的需求。

步骤s14中,判断优化后的深度图像是否达到预设图像标准,预设图像标准可以为图片精度要求,当优化后的深度图像达到我们需要的图片精度后就不再进行互划分和优化了。

步骤s15中,采用k-means算法将初始深度图像的n个网格区域进行再划分,得到m个网格区域,m为大于n的正整数。

这里是对初始深度图像进行更细的划分。这里的划分标准相比步骤s12的划分标准又更加严格了,比如,若步骤s12选择了k-means算法,上一次划分结果里面的每一个网格区域这次又需要分成不同的网格区域,这里涉及到聚类簇数k的选择。k的选择在实际应用中一般不会设置很大,可以通过枚举法,比如令k从2到10。k的选择也和需要处理的深度图像类型有关系,比如深度图像是人脸,也许刚开始划分只需要5个簇,额头,眼睛,双脸颊,鼻子,下巴。后续再针对每一个簇再继续划分,簇类数目也可自行调整。

比如,如果只是针对一般的深度图像,可能前期我们只需要针对前景和后景进行划分,就可以用图割算法进行前后景的分割。后期可以利用聚类算法进行更加细致的划分,聚类簇数就可以根据深度的范围来进行选择。

将初始深度图像的各个网格区域分割为更小的网格区域后,进入步骤s13,对每个网格区域进行深度值优化,优化后的深度图像再判断是否达到预设图像标准,如果未达到要求,则再进行划分和优化,直到优化后的深度图像达到预设图像标准,即获得我们需要的目标物体的最终深度图像。

如图4所示,本发明还提供一种基于网格区域划分的深度图像优化系统,该系统包括:

初始深度图像获取模块,用于获取目标物体的初始深度图像;

初始深度图像划分模块,用于将初始深度图像划分为若干个网格区域;

网格区域深度值优化模块,用于对初始深度图像的各个网格区域进行深度值优化,获得优化后的深度图像;

优化后深度图像判断模块用于判断优化后的深度图像是否达到预设图像标准,若否,则进入初始深度图像再划分模块,若是,则优化后的深度图像为目标物体的最终深度图像;

初始深度图像再划分模块,用于将初始深度图像的各个网格区域再划分为若干个网格区域,分割完成后进入网格区域深度值优化模块。

需要说明的是,初始深度图像划分模块包括k-means算法单元,k-means算法单元用于采用k-means算法将初始深度图像划分为若干个网格区域。

网格区域深度值优化模块包括spgd算法单元spgd算法单元用于采用spgd算法对初始深度图像的各个网格区域进行深度值优化。

spgd算法单元包括:

代价函数构造组件,用于构造初始深度图像关于深度值的代价函数j,初始深度图像是关于矢量u=(u1,u2,u3…un)的函数,即j(u)=j(u1,u2,u3…un),n为划分的网格区域数。

扰动计算组件,用于对代价函数j的所有变量同时施加双边扰动,计算代价函数j值,正向扰动公式为{+δuj(n)/2},负向扰动公式为{-δuj(n)/2},代价函数j值计算公式为δj(n)=δj+(n)-δj-(n),其中,上标n代表n次扰动,即迭代公式为其中μ为迭代步长,δ为扰动大小。其中,为了防止迭代一定次数后出现震荡情况,当δj/j大于预设最大扰动阈值时,减小扰动幅度,同时增大迭代步长;当δj/j小于预设最小扰动阈值时,增大扰动幅度,同时减小迭代步长。

迭代判断组件,用于判断代价函数j值是否小于预设阈值,若是,则初始深度图像在当前网格区域数量下停止迭代流程,若否,则初始深度图像在当前网格区域数量下继续迭代流程。

初始深度图像再划分模块包括k-means算法单元,k-means算法单元用于采用k-means算法将初始深度图像的各个网格区域再划分为若干个网格区域,分割完成后进入网格区域深度值优化模块。

以上仅是本发明的优选实施方式,应当指出的是,上述优选实施方式不应视为对本发明的限制,本发明的保护范围应当以权利要求所限定的范围为准。对于本技术领域的普通技术人员来说,在不脱离本发明的精神和范围内,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1