一种三维图像处理方法与流程

文档序号:14679391发布日期:2018-06-12 21:59阅读:255来源:国知局
一种三维图像处理方法与流程

本发明涉及图像处理领域,具体涉及一种三维图像处理方法。



背景技术:

虚拟现实(virtual reality,VR)技术是仿真技术与计算机图形学人机接口技术、多媒体技术、传感技术、网络技术等多种技术的集合,是一门富有挑战性的交叉技术前沿学科和研究领域。VR主要包括模拟环境、感知、自然技能和传感设备等方面。模拟环境是由计算机生成的、实时动态的三维立体逼真图像。

基于图像素材的虚实融合场景生成技术正在成为虚拟现实和增强现实方向的技术发展趋势和典型研究热点。为了保证图像后期可以进行虚实光影一致性的处理,必须保证在图像中加入的虚拟物体与图像具有阴影相称的虚拟物体阴影效果,即具有相同的投影方向和场景深度。

传统的提供VR元素的功能,绘制的VR元素一般在图像的固定位置,展现方式固定,导致添加的VR元素不能与移动终端拍摄的真实场景对应的图片元素很好的融合,影响整体图片的真实性。

对置入图像中的虚拟物体进行三维重构和融合,首先要获取图像中现实物体的三维图像信息,三维图形信息包括物体的彩色信息和深度信息。现有的三维成像技术主要通过传感器获取物体的彩色信息和深度信息,对彩色信息和深度信息进行融合,得到三维图像信息。



技术实现要素:

本发明提供一种三维图像处理方法,该方法通过采集图像信息,分析到图像中现实物体影子的方向和场景深度等三维信息;并根据上述信息,在图像中放入虚拟物体时,适应性调整虚拟物体的大小比例以及三维信息。

为了实现上述目的,本发明提供一种三维图像处理方法,该方法具体包括如下步骤:

S1.网络摄像机远程采集图像信息发送给图像处理服务器;

S2.图像处理服务器识别图像中所有现实物体三维特征;

S3.在图像中置入虚拟物体;

S4.根据虚拟物体周边现实物体的三维特征,适应性调整虚拟物体的大小比例以及三维信息。

优选的,所述三维信息特征包括三维深度信息和投影方向。

优选的,所述步骤S2中,包括S21:通过计算图像中每个现实物体中相邻像素的相似度,进而得到所述像素的深度,得到现实物体的三维深度信息。

优选地,所述计算图像中每个现实物体中相邻像素的相似度,采用相邻像素传播和随机优化的多循环算法,包括将横向像素初始化为随机平面和迭代计算相邻像素的相似度的步骤。

优选地,所述将横向像素初始化为随机平面,包括步骤:

S211.将横向像素初始化为随机平面;

S212.每个像素的初始深度设定为随机值,通过每个像素的表面的法线矢量被设置为随机单位向量。

优选地,所述将横向像素初始化为随机平面,包括如下过程:

通过所述横向像素的深度坐标的平面,由式(1)表示,

z=f1▽px+f2▽py+f3 (1)

其中,z为所述横向像素的深度坐标,和px和py为随机平面,f1、f2和f3分别如式(2-1)、式(2-2)和式(2-3)所示,

f1=-n1/n3 (2-1)

f2=-n2/n3 (2-2)

f3=(n1·x0+n2·y0+n3·z0)/n3 (2-3)

式(2-1)、式(2-2)和式(2-3)中,n1、n2和n3是标量、是由如式(3)所示的数值向量表示最小聚合成本所在的所有可能平面,x0和y0分别为初始化的所述横向像素的坐标数值,z0为初始化的所述横向像素的初始深度值,

式(3)中m由式(4)提供,

式(4)中,w用于实现自适应加权,w由式(5)提供;E表示相似性计算因素,E由式(10)提供;▽表示梯度值,Wp表示集中在p的一个方形窗口,

式(5)中,||Ip-Iq||表示两相邻像素p和q间的距离,p为横向像素,q为与p在同一平面内的相邻像素,

E=α||Ii-Ij||+(1-α)||▽Ii-▽Ij|| (6)

式(6)中,I是现实物体中像素的强度,下标i,j是现实物体的索引,Ii,Ij分别表示第i,第j个现实物体中的相应像素的强度,Ii和Ij将投射到相同的空间点,Ii和Ij的坐标由式(11)计算得到,||Ii-Ij||为RGB空间中的Ii和Ij的颜色的曼哈顿距离,▽Ii和▽Ij是像素的灰度值梯度,||▽Ii-▽Ij||表示在Ii和Ij计算的灰度梯度的绝对差,α是没有单位的权重因子,用于平衡颜色和渐变项的影响;

式(7)中,ui是每个现实物体中对应于坐标为y和z的点的像素的局部坐标。

优选地,所述迭代计算相邻像素的相似度,包括步骤:

S213.初始化一个随机平面内的一个横向像素并计算其深度坐标和向量值,计算其聚合成本,将此聚合成本作为参考聚合成本;

S214.计算与步骤S213.中横向像素在同一平面内的任意一相邻像素的聚合成本;

S215.比较步骤S213.中参考聚合成本与步骤S214.中相邻像素的聚合成本;

S216.将步骤S215.中比较小的聚合成本对应像素作为新的参考值;

S217.将步骤S216.中新的参考值对应像素设为与该对比参考值的对应像素左上相邻;

S218.设定条件:步骤S216.中新的参考值对应深度值在最大允许范围内;

S219.如果步骤S218.条件成立,则循环执行步骤S213.到步骤S218.;

S220.步骤S218.条件不成立,将最后一次循环步骤S217.中作为图像最左边像素;

S221.在步骤S220的基础上,图像右下进行下降偶次迭代;

S222.根据步骤S221.的迭代次数计算每个像素的计算次数。

优选的,所述S2还包括步骤S22:分析得到现实物体影子的方向:

S221.将图像中的现实物体划分为N个相同大小的纹理区域,其中,N≥2;

S222.生成以眼睛位置为视点的目标视锥体;

S223将所述目标视锥体由近至远分割成N个子视锥体,其中,每个子视锥体的区域由近至远依次增大;

S224.生成所述子视锥体的渲染参数,所述渲染参数包括视图矩阵和投影矩阵;

S225.根据所述子视锥体的渲染参数,在一个所述纹理区域内渲染所述子视锥体对应的图像中的现实物体,得到以光源位置为视点的现实物体影子方向。

优选的,在所述步骤S4中还包括如下步骤:

S41.根据S22分析得到的投影方向,确定虚拟物体的受光面和背光面;

S42.为所述受光面与所述背光面的过渡区域配置渐变的光照颜色;

S43.根据所述受光面每一像素点接收的光照颜色,分别确定所述受光面每一像素点的颜色;

S44.根据所述背光面每一像素点接收的光照颜色,分别确定所述背光面每一像素点的颜色。

优选的,所述为所述受光面与所述背光面的过渡区域配置渐变的光照颜色,包括:

从点积取值范围[-1,1]内,选取一个取值区间[-x1,x2],其中,x1和x2均为正数且小于1;

从所述虚拟物体表面选择一个过渡区域,其中,所述过渡区域内每一像素点对应的点积在所述取值区间[-x1,x2]内;

使所述过渡区域一侧接收的第一光照颜色向另一侧接收的第二光照颜色渐变,其中,所述第一光照颜色为除所述过渡区域以外的受光面接收的固定光照颜色,所述第二光照颜色为除所述过渡区域以外的背光面接收的固定光照颜色。

优选的,所述根据所述受光面每一像素点接收的光照颜色,分别确定所述受光面每一像素点的颜色,包括:

确定所述受光面中每一受光像素点对应的阴影因子,其中,所述阴影因子的大小与所述受光像素点所受的阴影遮蔽程度相关;

根据所述受光像素点的本身纹理颜色、接收的光照颜色、环境本身颜色、所述阴影因子确定所述受光像素点的颜色。

优选的,所述确定所述受光面中每一受光像素点对应的阴影因子,包括:

选取所述受光像素点周边的M个参考像素点,其中,M≥2;

利用所述步骤S2得到场景深度信息,确定所述受光像素点和所述参考像素点是否处于阴影中;

若均不在阴影中,则所述受光像素点的阴影因子取值为0;若存在m个像素点在阴影中,则根据所述m个像素点中的每一像素点对应的预设阴影值,确定所述受光像素点的阴影因子取值,其中,0<m≤M+1。

优选的,在步骤S1中,网络摄像机和图像处理服务器的数据传输采用即时加密通信,即时加密通信前,网络摄像机临时产生会话密钥WK;图像处理服务器获取网络摄像机的身份公钥和密钥协商基本公钥,然后和图像处理服务器组成公私钥对来协商计算父滚动代表初始密钥N_CC,具体过程如下:

将T_SKA/T_PKA、NB_SKB/NB_PKB,通过椭圆曲线点乘算法,计算网络摄像机的密钥协商第一部分Part1;

网络摄像机密钥协商第一部分Part1=DPSM2(TSKA,NBPKB);

将NB_SKA/NB_PKA、T_SKB/T_PKB,通过椭圆曲线点乘算法,计算网络摄像机的密钥协商第二部分Part2;

网络摄像机密钥协商第二部分Part2=DPSM2(NBSKA,TPKB);

将NB_SKA/NB_PKA、NB_SKB/NB_PKB,通过椭圆曲线点乘算法,计算网络摄像机算发送方的密钥协商第三部分Part3;

网络摄像机密钥协商第三部分Part3=DPSM2(NBSKA,NBPKB);

将网络摄像机密钥协商第一部分Part1、网络摄像机密钥协商第二部分Part2、网络摄像机密钥协商第三部分Part3连接成网络摄像机密钥分量KM;

网络摄像机密钥分量KM=Part1||Part2||Part3);

将网络摄像机密钥分量KM和第一字符串用SM3算法压缩成256bit的网络摄像机的父滚动代表初始密钥N_CC;

初始密钥N_CC=HSM3(KM||第一字符串)

根据椭圆曲线点乘算法特点,通过该计算过程,网络摄像机密钥和图像处理服务器双方计算出一致的父滚动代表初始密钥N_CC。

本发明具有以下优点和有益效果:(1)本发明利用图像中的现实物体分析得到三维特征,为置入的虚拟物体的融合提供适应性调整提供准确的三维特征参数;(2)本申请提出了现实图像三维深度提取的新计算方法,该方法计算每个现实物体中像素的相似度,考虑了表面的连续性,以提高分辨率,解决了目前三维图像深度信息提取过程中算法过于复杂的问题;(3)本发明提出了利用子视锥体获取图像中现实物体的投影方向,快捷且节省资源;(4)本发明图像数据通信采用即时安全通信方式进行数据交换,可以保证数据传输的安全性,防止信息泄露。

附图说明

图1示出了本发明的一种三维图像处理方法所基于的图形处理系统框图;

图2示出了本发明的一种三维图像处理方法的流程图;

图3示出了本发明的一种分析得到图像中现实物体的三维特征的流程图;

图4示出了本发明的一种分析得到现实物体投影方向的流程图;

图5示出了本发明的一种生成虚拟物体的流程图。

具体实施方式

为更好的理解本发明的创新点,下面结合附图,对本发明的具体实施方法进行阐述。

图1示出了本发明的一种三维图像处理方法所基于的图形处理系统框图,该系统包括网络摄像机1,用于采集现实的图像信息,并通过网络传输至图像处理服务器2。所述图像服务器2包括:用于存储摄像机发送的图像的图像存储模块21,用于分析图像中现实图像的深度信息的三维深度分析模块22,用于分析图像中的投影方向的的投影方向分析模块23,根据用于在图像中置入虚拟物体的虚拟物体生成模块24,对图像中现实物体和虚拟物体进行融合的图像融合模块25以及对显示设备3输出图像的图像输出模块26。

图2示出了利用本发明的一种三维图像处理方法的流程图。一种三维图像处理方法,该方法具体包括如下步骤:

S1.网络摄像机远程采集图像信息发送给图像处理服务器;

S2.图像处理服务器识别图像中所有现实物体三维特征;优选的,所述三维信息特征包括三维深度信息和投影方向。

S3.在图像中置入虚拟物体;

S4.根据虚拟物体周边现实物体的三维特征,适应性调整虚拟物体的大小比例以及三维信息。

参见图3,所述步骤S2中,包括S21:通过计算图像中每个现实物体中相邻像素的相似度,进而得到所述像素的深度,得到现实物体的三维深度信息。

优选地,所述计算图像中每个现实物体中相邻像素的相似度,采用相邻像素传播和随机优化的多循环算法。

优选地,包括将横向像素初始化为随机平面和迭代计算相邻像素的相似度的步骤。

所述将横向像素初始化为随机平面,包括步骤:

S211.将横向像素初始化为随机平面;

S212.每个像素的初始深度设定为随机值,通过每个像素的表面的法线矢量被设置为随机单位向量。

进一步优选地,所述将横向像素初始化为随机平面,包括如下过程:

通过所述横向像素的深度坐标的平面,由式(1)表示,

z=f1▽px+f2▽py+f3 (1)

其中,z为所述横向像素的深度坐标,和px和py为随机平面,f1、f2和f3分别如式(2-1)、式(2-2)和式(2-3)所示,

f1=-n1/n3 (2-1)

f2=-n2/n3 (2-2)

f3=(n1·x0+n2·y0+n3·z0)/n3 (2-3)

式(2-1)、式(2-2)和式(2-3)中,n1、n2和n3是标量、是由如式(3)所示的数值向量表示最小聚合成本所在的所有可能平面,x0和y0分别为初始化的所述横向像素的坐标数值,z0为初始化的所述横向像素的初始深度值,

式(3)中m由式(4)提供,

式(4)中,w用于实现自适应加权,w由式(5)提供;E表示相似性计算因素,E由式(10)提供;▽表示梯度值,Wp表示集中在p的一个方形窗口,

式(5)中,||Ip-Iq||表示两相邻像素p和q间的距离,p为横向像素,q为与p在同一平面内的相邻像素,

E=α||Ii-Ij||+(1-α)||▽Ii-▽Ij|| (6)

式(6)中,I是现实物体中像素的强度,下标i,j是现实物体的索引,Ii,Ij分别表示第i,第j个现实物体中的相应像素的强度,Ii和Ij将投射到相同的空间点,Ii和Ij的坐标由式(11)计算得到,||Ii-Ij||为RGB空间中的Ii和Ij的颜色的曼哈顿距离,▽Ii和▽Ij是像素的灰度值梯度,||▽Ii-▽Ij||表示在Ii和Ij计算的灰度梯度的绝对差,α是没有单位的权重因子,用于平衡颜色和渐变项的影响;

式(7)中,ui是每个现实物体中对应于坐标为y和z的点的像素的局部坐标。

优选地,所述迭代计算相邻像素的相似度,包括步骤:

S213.初始化一个随机平面内的一个横向像素并计算其深度坐标和向量值,计算其聚合成本,将此聚合成本作为参考聚合成本;

S214.计算与步骤S213.中横向像素在同一平面内的任意一相邻像素的聚合成本;

S215.比较步骤S213.中参考聚合成本与步骤S214.中相邻像素的聚合成本;

S216.将步骤S215.中比较小的聚合成本对应像素作为新的参考值;

S217.将步骤S216.中新的参考值对应像素设为与该对比参考值的对应像素左上相邻;

S218.设定条件:步骤S216.中新的参考值对应深度值在最大允许范围内;

S219.如果步骤S218.条件成立,则循环执行步骤S213.到步骤S218.;

S220.步骤S218.条件不成立,将最后一次循环步骤S217.中作为图像最左边像素;

S221.在步骤S220的基础上,图像右下进行下降偶次迭代;

S222.根据步骤S221.的迭代次数计算每个像素的计算次数。

所述迭代计算相邻像素的相似度,包括空间传播和平面精修的步骤;

所述空间传播的步骤中,相邻像素点设定为在同一个平面上,首先由式(4)评估不同情况的成本m,

式(4)中,p表示当前像素,fp是其对应的平面的向量,q是p的相邻像素,在p(x0,y0)下分别用fp和fq计算,以评估这两种情况的成本;检查条件如式(8)所示,

m(x0,y0,fp')<m(x0,y0,fp); (8)

式(8)中的和分别由式(4)得到;

如果式(8)所示的表达式成立,则fq被接受为p的新向量,即fp=fq;

在奇数迭代中,q是左边和上边界;

在偶数迭代中,q是右边界和下边界;

所述平面精修的步骤中,将fp转换为法向量np,两个参数▽z和▽n被定义为分别限制z0和n的最大允许变化,z0'计算为z0'=z0+▽z,其中▽z位于[-▽zmax,▽zmax],并且n'=u(n+▽n),u()表示计算单位向量,▽n位于[-▽nmax,▽nmax];

最后,通过p和n'得到一个新的fp',如果m(x0,y0,fp')<m(x0,y0,fp),则fp=fp';

所述平面精修的步骤中,从设置▽zmax=maxdisp/2开始,其中maxdisp是允许的最大视差,▽nmax=1,每次细化后,参数将更新为▽zmax=▽zmax/2、▽nmax=▽nmax/2;直到▽zmax<resolution/2,得到最小化的分辨率;对于奇数迭代,从图像的左侧开始,向右下进行偶数迭代;

迭代后获得相邻像素的相似度,进而得到所述现实物体的深度。

参见图4,所述S2还包括步骤S22:分析得到现实物体影子的方向:

S221.将图像中的现实物体划分为N个相同大小的纹理区域,其中,N≥2;

S222.生成以眼睛位置为视点的目标视锥体;

S223将所述目标视锥体由近至远分割成N个子视锥体,其中,每个子视锥体的区域由近至远依次增大;

S224.生成所述子视锥体的渲染参数,所述渲染参数包括视图矩阵和投影矩阵;

S225.根据所述子视锥体的渲染参数,在一个所述纹理区域内渲染所述子视锥体对应的图像中的现实物体,得到以光源位置为视点的现实物体影子方向。

参见图5,在所述步骤S4中还包括如下步骤:

S41.根据S22分析得到的投影方向,确定虚拟物体的受光面和背光面;

S42.为所述受光面与所述背光面的过渡区域配置渐变的光照颜色;

S43.根据所述受光面每一像素点接收的光照颜色,分别确定所述受光面每一像素点的颜色;

S44.根据所述背光面每一像素点接收的光照颜色,分别确定所述背光面每一像素点的颜色。

优选的,所述为所述受光面与所述背光面的过渡区域配置渐变的光照颜色,包括:

从点积取值范围[-1,1]内,选取一个取值区间[-x1,x2],其中,x1和x2均为正数且小于1;

从所述虚拟物体表面选择一个过渡区域,其中,所述过渡区域内每一像素点对应的点积在所述取值区间[-x1,x2]内;

使所述过渡区域一侧接收的第一光照颜色向另一侧接收的第二光照颜色渐变,其中,所述第一光照颜色为除所述过渡区域以外的受光面接收的固定光照颜色,所述第二光照颜色为除所述过渡区域以外的背光面接收的固定光照颜色。

优选的,所述根据所述受光面每一像素点接收的光照颜色,分别确定所述受光面每一像素点的颜色,包括:

确定所述受光面中每一受光像素点对应的阴影因子,其中,所述阴影因子的大小与所述受光像素点所受的阴影遮蔽程度相关;

根据所述受光像素点的本身纹理颜色、接收的光照颜色、环境本身颜色、所述阴影因子确定所述受光像素点的颜色。

优选的,所述确定所述受光面中每一受光像素点对应的阴影因子,包括:

选取所述受光像素点周边的M个参考像素点,其中,M≥2;

利用所述步骤S2得到场景深度信息,确定所述受光像素点和所述参考像素点是否处于阴影中;

若均不在阴影中,则所述受光像素点的阴影因子取值为0;若存在m个像素点在阴影中,则根据所述m个像素点中的每一像素点对应的预设阴影值,确定所述受光像素点的阴影因子取值,其中,0<m≤M+1。

优选的,在步骤S1中,网络摄像机和图像处理服务器的数据传输采用即时加密通信,即时加密通信前,网络摄像机临时产生会话密钥WK;图像处理服务器获取网络摄像机的身份公钥和密钥协商基本公钥,然后和图像处理服务器组成公私钥对来协商计算父滚动代表初始密钥N_CC,具体过程如下:

将T_SKA/T_PKA、NB_SKB/NB_PKB,通过椭圆曲线点乘算法,计算网络摄像机的密钥协商第一部分Part1;

网络摄像机密钥协商第一部分Part1=DPSM2(TSKA,NBPKB);

将NB_SKA/NB_PKA、T_SKB/T_PKB,通过椭圆曲线点乘算法,计算网络摄像机的密钥协商第二部分Part2;

网络摄像机密钥协商第二部分Part2=DPSM2(NBSKA,TPKB);

将NB_SKA/NB_PKA、NB_SKB/NB_PKB,通过椭圆曲线点乘算法,计算网络摄像机算发送方的密钥协商第三部分Part3;

网络摄像机密钥协商第三部分Part3=DPSM2(NBSKA,NBPKB);

将网络摄像机密钥协商第一部分Part1、网络摄像机密钥协商第二部分Part2、网络摄像机密钥协商第三部分Part3连接成网络摄像机密钥分量KM;

网络摄像机密钥分量KM=Part1||Part2||Part3);

将网络摄像机密钥分量KM和第一字符串用SM3算法压缩成256bit的网络摄像机的父滚动代表初始密钥N_CC;

初始密钥N_CC=HSM3(KM||第一字符串)

根据椭圆曲线点乘算法特点,通过该计算过程,网络摄像机密钥和图像处理服务器双方计算出一致的父滚动代表初始密钥N_CC。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

如上所述,虽然根据实施例所限定的实施例和附图进行了说明,但对本技术领域具有一般知识的技术人员来说能从上述的记载中进行各种修改和变形。例如,根据与说明的技术中所说明的方法相不同的顺序来进行,和/或根据与说明的系统、结构、装置、电路等构成要素所说明的方法相不同的形态进行结合或组合,或根据其他构成要素或均等物进行替换或置换也可达成适当的效果。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。

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