一种基于单幅自然图像重建积云三维形状的方法与流程

文档序号:13423184阅读:260来源:国知局
一种基于单幅自然图像重建积云三维形状的方法与流程

本发明属于计算机图形学领域,特别是云建模领域,具体涉及一种基于单幅自然图像重建积云三维形状的方法。



背景技术:

云作为一种常见的自然现象,其形状千变万化,形成、发展和消散的过程极其复杂,云的建模一直是具有挑战性的工作。经典的云建模方法大体分为两类,即基于过程的方法和基于物理仿真的方法。前者主要利用分形理论和噪声纹理等手段建模云的形状,能够构建逼真的云,但是建模过程依赖频繁的参数调整。为了减少甚至避免参数设定,研究人员开始尝试基于物理仿真的方法,即通过模拟简化的流体运动方程来仿真云的生成过程。基于物理的方法通过设定初始边界条件能够建模时域连续的云。然而,由于初始边界条件和最终的云形状成高度非线性关系,期望构建满意的云形状仍然需要多次调整参数。

随着计算机软硬件和虚拟现实技术的发展,尤其是照相机及卫星等传感器的蓬勃发展使得自然图像、卫星云图等数据变得越来越易于获取,基于数据驱动的云建模方法逐渐成为研究热点。该类方法不同于传统的建模方法,其建模基于客观数据,从而能够在一定程度上反映数据的真实信息并表达相对准确的物理意义。在利用自然图像建模云方面,dobashi等人首先从单幅图像建模多种类型的云。随后,yuan等人提出了一个简化的单散射模型,并借助该模型逆向求解积云的三维形状。与自然图像不同,卫星云图常常被用于构建大尺度的云系。对于卫星云图,dobashi等人首先利用一个简化的模型模拟大尺度的飓风。近年来,yuan等人提出利用遥感理论从低分辨率卫星图像中估计云参数,从而构建大尺度云系的三维形状。然而,他们的方法不适用于积云的建模。一方面是因为低分辨率卫星图像很难记录积云的信息,另一方面是因为该方法依赖于参数设定,导致几何厚度的误差过大,甚至超过了积云的典型大小。

自然图像作为真实世界云场景的直观展现,在日常生活中非常普遍且易于捕获,无论是虚拟逼真的云场景还是建模具有气象学意义的云场景,自然图像都具有无可比拟的优势,因而成为目前研究工作者建模云的重要数据源之一。



技术实现要素:

本发明要解决的技术问题为:克服现有技术的不足,提供一种基于单幅自然图像重建积云三维形状的方法,能够从单幅自然图像中,构建积云的三维形状,并恢复积云的表面细节。在此基础上,优化云的形状,形成云的粒子模型并进行绘制。实验表明,本发明提出的方法能够从积云图像中构建自然的积云形状,并保留与图像一致的表面细节,方法简单有效。

本发明解决上述的技术问题采用的技术方案为:一种基于单幅自然图像重建积云三维形状的方法,实现步骤如下:

步骤(1)、明暗约束,利用云体表面明暗信息能在一定程度上反应形状特征,将云像素聚类划分为几个高度区域,结合明暗恢复形状算法获得约束从而指导大范围内的形状估计;

步骤(2)、边界约束,利用阈值方法提取积云轮廓信息估计相关区域的形状,利用边缘检测算法得到积云自遮挡信息恢复三维形状的表面细节,由于轮廓和自遮挡边界的相同特性,将两种边界结合获得云体边界约束;

步骤(3)、深度计算,假设积云表面为朗伯体反射,利用二阶球面谐波函数进行光照建模,约束光照参数,并通过多尺度优化方法迭代求解步骤(1)、(2)得到的明暗约束和边界约束,从而求得积云深度图;

步骤(4)、粒子采样及绘制,利用步骤(3)得到的积云深度图构建积云表面三维网格,将网格模型离散化后计算云体内顶点的距离场,自适应采样表面粒子和内部粒子,形成积云的粒子模型,并采用多次前向散射模型对积云的粒子模型进行绘制。最终实现与输入自然图像相似的建模结果。

进一步的,所述步骤(1)中明暗约束的具体内容如下:

步骤(a1)、当视点与阳光在云体同一侧时,云体亮度强的区域的平均高度大于相邻的云体亮度相对较弱的区域的高度,根据像素亮度和坐标信息将云像素采用k-means聚类方法划分为几个分区;

步骤(a2)、对于分区后的云块区域,计算各区域的平均亮度值,则每个区域的平均高度与该区域的平均亮度成正比,与明暗恢复形状算法结合获得明暗约束,指导大范围内的形状估计。

进一步的,所述步骤(2)中边界约束的步骤具体如下:

步骤(b1)、对于积云边界中的轮廓边界,利用云和天空背景的色彩差异,结合阈值法将图像像素分割为云像素和背景像素,然后检测云像素的轮廓边界;

步骤(b2)、对于自遮挡边界,其反应云体表面的深度不连续性,利用自遮挡边界处的像素梯度比周围像素大的特征,采用canny边缘检测算法对云像素进行关于积云自遮挡的边缘检测,同时删除误差区域并确定边界的法向量方向。

进一步的,所述步骤(3)中深度计算的具体步骤如下:

步骤(c1)、假定积云表面为朗伯体反射,将积云光照模型简化为二阶球面谐波函数,对光照参数进行约束,与明暗约束和边界约束结合获得优化方程;

步骤(c2)、利用多尺度优化方法迭代求解优化函数,构造信号的高斯金字塔模型进行最小化求解,保留积云表面细节,进而求得积云的深度图。

进一步的,所述步骤(4)中粒子采样及绘制的具体步骤如下:

步骤(d1)、利用步骤(3)得到的积云深度图构建积云的前表面三维网格,结合积云深度信息与云体前后表面对称性假设加权获得积云后表面,采用拉普拉斯网格编辑方法优化细节,从而得到积云整体表面三维网格;

步骤(d2)、将网格模型离散化后投影到图像平面,从而确定格点的位置,计算云体内顶点的距离场并对其进行归一化,自适应采样积云表面粒子和内部粒子,形成积云的粒子模型;

步骤(d3)、利用体绘制方法与积云的多次前向散射光照模型结合对积云的粒子模型进行绘制。

本发明与现有技术相比的优点在于:

本发明以自然图像为输入,将计算机图形学技术和计算机视觉有机融合,实现基于单幅自然图像建模积云三维形状。与之前的重建方法相比,本发明的方法是一种所见即所得的方法,实现简单,建模积云形状自然,表面细节恢复信息丰富。

附图说明

图1为本发明的积云三维形状重建方法的流程示意图。

图2为本发明的明暗约束的结果图,其中图2(a)为自然图像,图2(b)为聚类结果,图2(c)为明暗约束,图2(d)为相应的深度图结果。

图3为本发明的深度估计结果图,其中图3(a)、图3(b)、图3(c)、图3(d)分别为不同的自然图像,第二行图像为对应图像的深度图。

图4为本发明的粒子采样的结果图,其中图4(a)为建模的积云表面,图4(b)为粒子采样效果图。

图5为本发明的积云绘制效果图,图5(a)、图5(b)、图5(c)分别为不同自然图像作为输入后产生的绘制结果图。

具体实施方式

下面结合附图与实例对本发明作进一步详细描述:

本发明采用包含积云的自然图像作为输入图像,根据积云表面的边界及明暗特征,提出了适用于积云形状的边界约束和明暗约束,并在明暗恢复形状算法的基础上,构建最优化问题。如图1所示,本发明实施过程包括四个主要步骤:明暗约束,利用积云表面的明暗信息,结合明暗恢复形状算法将云像素聚类划分不同的高度域;边界约束,利用轮廓信息估计积云外部形状,利用自遮挡信息估计积云表面细节;深度计算,利用二阶球面谐波函数约束光照参数,多尺度优化方法求解积云深度图;粒子采样及绘制,在积云三维网格的内部进行自适应采样,形成云的粒子模型,并对其进行绘制。本发明具体实现如下:

步骤一:明暗约束,利用积云表面的明暗信息,结合明暗恢复形状算法将云像素聚类划分不同的高度域:

积云作为一类典型的低空云,底部相对平坦,顶部呈凹凸不平的不规则形态,当阳光位于云体的中部偏上方向,且视点与阳光方向在云体同一侧时,云体表面凸出区域的亮度往往大于相邻凹陷的部分,这意味着局部的明暗信息能在一定程度上反应形状特征。基于此,行成明暗约束:云体亮度强的区域的平均高度大于相邻的云体亮度相对较弱的区域的高度,如图2(a)所示。为了获得明暗约束,首先采用k-means聚类方法将云像素根据像素亮度及像素坐标进行聚类分区,如图2(b)所示。然后计算聚类所得各个区域的平均亮度值,最终得到该约束fi(z)的具体形式:

其中,k为各聚类区域的标号,λ为比例因子,即为求得的第k个区域的平均亮度值,为该区域的待求平均高度域值。

注意,该约束项并非要求任意亮度强的像素对应的像素高度域值一定大于亮度弱的像素的高度域值,它只对区域的平均亮度作约束,而非单个像素,如图2(c)所示。

步骤二:边界约束,利用轮廓信息估计积云外部形状,利用自遮挡信息估计积云表面细节:

物体的轮廓包含丰富的形状信息,尤其是物体侧面的曲线走向,可准确反映出物体侧面相关区域的形状,而自遮挡边界反应物体表面的深度不连续性,对三维形状的细节恢复有很重要的作用。

首先,为了将云像素从图像中与天空背景分离,我们采用一个阈值法进行分离,然后检测获得云像素的轮廓边界。然后进行自遮挡边界的检测,根据观察,自遮挡边界处的像素梯度比周围像素大,因此首先利用canny边缘检测算法对云像素进行自遮挡边界检测。然而,由于在云表面的平滑区域,因为阳光方向与云表面相对位置的关系,也有云像素颜色的剧烈明暗变化,从而导致边缘检测算法将部分非自遮挡边界的像素包含进来,此时需要手动删除该误差区域,最后,为了指定自遮挡边界的哪一侧在前,哪一侧在后以便于后续法向量的计算,采用前背景分离方法确定自遮挡边界的前后向。

在获得积云的两类边界信息后,边界约束fb(z)的具体形式为:

其中,b是轮廓边界及自遮挡边界的并集合,n=(nx,ny,nz)为高度域值计算得到的法向量,nx和ny分别表示图像平面中法向量的x和y的分量。

步骤三:深度计算,利用二阶球面谐波函数约束光照参数,多尺度优化方法求解积云深度图:

积云作为一种参与介质,光照模型极其复杂,且很多关于云的自然图像中没有地面上行人或房屋等背景甚至地面也没有,这使得传统的依赖于分析场景中物体及建筑物、行人等对象的光源估计方法对大多数的积云图像不再适用。本发明采用球面谐波模型进行光照建模,且为了便于对光照参数进行约束,将模型简化为二阶球面谐波函数:

其中,辐照度e是物体表面法向量的函数,l表示频带,其值的大小不同分别对应球面上不同的高低频部分。m为用户自定义参数,其值根据l的不同分别为-1、0、1。是球面谐波函数系数系数,且其不依懒于方位角φ,表示光照模型球面谐波基函数系数,ylm代表球面谐波基函数。(θ,φ)表示球面上该点对应的球面坐标的两个角度值,由于基函数之间互相正交,其有利于将繁琐的积分表达式转化为简单的基本运算公式,

不同于传统的从明暗恢复形状方法需要事先指定光照条件信息,本发明在估计形状的同时估计光照信息,将明暗约束和边界约束加到成本函数上求解,优化问题的具体表达式为:

其中,i是输入图像,z是高度域,正交视图下积云表面顶点到图像平面的距离,其大小与图像i相同;ρ为云体表面的单次散射反照率;l球面谐波光照模型的参数向量,同z一起作为未知量进行求解,从而减小了传统方法人为指定光照参数的误差。r(z,l)为云体表面的辐照度(irradiance),也可称其为绘制引擎函数,在给定高度域z的法向量和光照模型l后,计算r(z,l)并乘以反照率ρ即可得到合成图像。f(z)表示本发明提出的积云表面约束项,主要形式如下:

f(z)=λifi(z)+λbfb(z)(5)

其中,fi(z)为明暗约束项,fb(z)为边界约束项;λi和λb分别是对应约束项的权重系数。

为求解上述问题,采用多尺度优化方法,构造信号的高斯金字塔模型进行最小化求解,保留积云表面更多细节,获得积云的深度图,如图3所示。

步骤四:粒子采样及绘制,在积云三维网格的内部进行自适应采样,形成云的粒子模型,并对其进行绘制:

在步骤三深度图计算完毕后,需要构建积云的三维形状。将深度图转化为三维网格形式,首先在图像平面上对积云区域的像素点进行delaunay三角化,然后根据深度图构建前表面的三维网格。由于积云形状多变,没有规律,因此从图像中无法得到完整准确的后表面信息。本发明首先假设云体前后表面关于图像平面对称,因此根据前表面可以得到后表面,记为b1,然后,为了避免因绝对对称性而造成的形状不自然,本发明采用如下方法生成一个新的后表面b2:利用逆向求解简化的单散射模型得到积云每个像素对应的云体厚度,并将该厚度作为输入图像每个云像素对应的厚度,则有前表面形状和厚度即可计算得到后表面各个顶点的位置,从而采用和前表面相同的方法构建后表面的三维网格。最后,我们构建的云体后表面由b1和b2加权获得。完成上述计算过程后,对生成的前后表面进行拼接,当前后表面的衔接处有缝隙或连接痕迹很明显时,采用拉普拉斯网格编辑方法对网格进行优化,使得侧面衔接处更加自然流畅。

在得到云的三维网格形状模型后,接下来将其转化为粒子数据,用于后续的绘制。采用自适应采样的方法构建积云的粒子系统模型。首先,将云体网格模型离散化为规则网格,然后通过将规则网格顶点进行投影到图像平面并与对应云表面点高度场对比的方法确定每个网格点属于云体内还是云体外;之后,计算云体内顶点的距离场并对其进行归一化,距离场有如下特点,顶点越靠近中心,距离越大,反之距离越小;最后,根据每个顶点的距离场值d以概率1-d分布粒子,同时,为了保留云表面的细节,顶点的距离场值越小,在该点处分布的粒子半径越小,反之分布的粒子半径越大。至此,积云的粒子系统模型构建完成,如图4所示。

最后,利用harris等人的方法对得到的积云粒子模型进行绘制,效果如图5所示。

本发明说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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