基于从图像灰度恢复形状技术的纹理力触觉再现方法转让专利

申请号 : CN200910033323.X

文献号 : CN101615072B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 宋爱国李佳璐吴涓张小瑞

申请人 : 东南大学

摘要 :

本发明针对图像纹理的力触觉再现问题,提出了一种基于从图像灰度恢复形状技术的纹理力触觉再现方法,其特征是把纹理图像进行灰度处理,从图像灰度信息中提取真实纹理的微观三维轮廓信息,绘制成虚拟表面,并对该虚拟表面的纹理通过力触觉模型进行渲染,计算出的力由通用手控器输出到操作者。本发明具有无需专门仪器测量物体表面的微观轮廓,无需设计专用的纹理力触觉表达装置等优点,可用于虚拟环境仿真、遥操作机器人控制、远程博物馆和网上商店的浏览以及外科手术仿真等领域。

权利要求 :

1.一种基于从图像灰度恢复形状技术的纹理力触觉再现方法,其特征在于:设有采用Tsai&Shah算法从二维纹理图像中恢复出表面纹理的三维微观形状以及用力触觉模型渲染两个阶段过程,包括首先从图像灰度信息中提取真实纹理的微观三维轮廓信息,绘制成虚拟表面,然后对该虚拟表面的纹理通过力触觉模型进行渲染,计算出的力由通用手控器输出到操作者;按以下步骤进行:第1阶段,从单幅图像中恢复三维轮廓,该阶段分为4个步骤:(1)把图像处理成灰度图像,并灰度归一化

首先提取图像各像素点的RGB分量,然后根据如下公式计算出该像素点的归一化后的灰度值:

(2)建立光反射模型

假设投影是正交投影,光源为无限远处点光源以及物体表面反射为朗伯体反射,即物体表面点反射的光强与该点光源入射角的余弦成正比,则根据朗伯体反射的定义和性质,可知物体表面点的亮度或强度应与入射角的辐射度一致,同时,图像灰度E只取决于物体的形状,这种关系用图像辐照度方程表示:

其中E(x,y)是像素(x,y)的灰度, σ为倾角,τ为仰角,z=z(x,y)为表面高度;

(3)依据灰度和光反射模型建立方程,求出表面各点的高度公式(2)是个非线性反射函数,考虑到非线性项对重构结果的影响不大,将反射函数进行泰勒展开,Tsai&Shah算法利用后项有限差分方法将反射函数离散化:

公式(2)可重写为:

0=f(E(x,y),Z(x,y),Z(x-1,y),Z(x,y-1))=E(x,y)-R(Z(x,y)-Z(x-1,y),Z(x,y)-Z(x,y-1))    (5)泰勒展开: 

其中,

推导后,可整理成如下的迭代格式:

Zn(x,y)=Zn-1(x,y)+Kn(-f(Zn-1(x,y)))                                (7)其中

Ex是数学期望算子,Wx,y是一个非常小的非零数,经过数次迭代后,Zn(x,y)就是对应像素(x,y)的高度值;

(4)建立虚拟表面三角网格模型

运用OpenGL进行表面的三维重建需要将这些点进行有序的三角网格化,用一个二维数组Z[]来存储表面各点的高度数据,二维数组Z[i,j]中的(i,j)和二维图像的像素(x,y)是一一对应的,所以可以根据右手定则循环构筑三角网格:首先利用右手定则,用(i,j)、(i+1,j+1)、(i+1,j)三个点构筑一个三角形;然后再根据右手定则,用(i,j)、(i,j+1)、(i+1,j+1)构筑另一个三角形,这样每一个离散点可以构造两个三角形,完成三角网格化;

第2阶段,用纹理力触觉模型对虚拟表面进行力触觉渲染:(1)应用AABB碰撞检测算法检测虚拟探针是否与虚拟表面碰撞,先计算虚拟表面的AABB包围盒,然后计算虚拟探针的空间坐标是否与该包围盒相交,一旦相交,则虚拟探针与虚拟表面发生碰撞,开始执行第2阶段步骤(2)应用纹理力触觉模型计算微观法向力和摩擦力,否则虚拟探针与虚拟表面不发生碰撞,手控器输出的力为零;

(2)依据纹理力触觉模型计算微观法向力和摩擦力,用通用手控器输出;其中依据纹理力触觉模型计算微观法向力和摩擦力的方法是:假设物体表面为刚性,则微观的法向力Ft的变化遵循胡克定律:Ft=di,j×k                                (8)其中di,j为像素(i,j)对应点的高度,k为弹性模量; 切向作用力则表现为摩擦力Ff,遵循动摩擦力公式:Ff=Ft×μ                        (9)其中Ft为法向力,μ为摩擦系数,

最后计算合力Fc:。

说明书 :

技术领域

本发明涉及虚拟现实技术中的力触觉再现,尤其是一种基于从图像灰度恢复形状技术的纹理力触觉再现方法,它是根据单幅纹理图像重构出该纹理的三维虚拟表面,并对虚拟表面进行力触觉渲染的方法,属于计算机视觉、虚拟现实技术与遥操作机器人技术领域。

背景技术

随着虚拟现实技术在外科手术仿真、遥操作机器人控制、虚拟制造等领域的应用,力触觉信息的反馈对于虚拟操作的重要性日益显著。在虚拟现实系统中,通过力触觉再现装置,将物体表面的纹理特性反馈给操作者,能增强操作者的沉浸感,有助于提高对虚拟对象的感知和操纵能力。
虚拟现实中,纹理的力触觉表达通常需要提取纹理表面的高度轮廓特征,即要获取纹理表面凹凸高度信息,而图像纹理则反映的是纹理表面的二维灰度特征。
物体表面的三维几何形状对纹理的力触觉再现是非常重要的。目前,纹理力触觉模型大多基于三维模型,二维纹理图像缺少高度信息,无法直接应用力触觉渲染模型。
现有的纹理力触觉再现方法主要分三类:基于三维纹理表面的方法、基于随机模型的方法、基于图像处理的方法。
基于三维纹理表面的方法,一般是通过专门设计的触觉传感器或者是专用的测量仪器测量物体表面的轮廓信息,进行三维建模,然后应用各种力触觉模型进行力触觉渲染。纹理触觉检测中比较通用的做法是由卡耐基梅隆大学机器人学院提出的,该方法通过用探针在物体表面运动建立物体表面纹理模型。具体表述为,探针垂直于物体表面,并以一定大小的力与物体表面接触,并以恒速运动,这样探针针尖的运动轨迹可以反映物体表面细微凹槽的深度和频度,间接地反映了物体表面的纹理信息。但是,该方法存在很大的不足,首先探针与物体表面是点接触,运动轨迹呈线状,只能反映轨迹线上的凹凸信息,即使增加探针运动的密集程度,也不能囊括整个表面的二维纹理信息;其次探针针尖的大小直接关系到运动轨迹的振动幅度;再次,用探针在物体表面拖动来检测纹理信息的方法,会对柔软物体的表面造成损伤。
基于随机模型的力触觉再现方法,Saira和Pai提出了纹理力触觉再现的随机方法。他们认为摸索纹理表面的接触力可以描述为一个随机变量。从局部分析,该接触力表现出很大的随机性;从整体分析,接触力存在某种统计学规律性(如遵循Gauss分布、Markov随机场等),不同的纹理产生的接触力存在不同的数字特征。这种方法能够在一定程度上较好再现自然纹理的触感,反映该纹理的材质。但其不足之处在于,该方法仅能再现纹理的粗糙度,而对表面上真实存在的凸起和凹陷的走势及深度表达效果不佳。
基于图像处理的方法是目前纹理力触觉再现领域的研究热点。Vasudevan等人提出了一种基于图像处理的纹理力触觉再现方法。该方法提出了力渲染掩膜的概念,通过子图像与力渲染掩膜相乘,有效的对图像的边缘和纹理进行力触觉渲染。东南大学吴涓等提出将纹理图像Gauss滤波,并将反映纹理信息的高频频谱作为高度图,分别应用胡克定律和摩擦力公式计算虚拟探针对纹理表面作用的法向力和摩擦力。这些方法并未恢复表面的微观三维轮廓,操作者感知的只是边缘或者粗糙度。Le Mercier等提出了四种像素亮度与对应点三维高度的映射方法,重建纹理图像所反映表面的微观三维几何形状,进而完成力触觉的渲染。这种方法中,操作者虽然可以有效的感知纹理的凹凸感,但由于三维高度与图像像素亮度的映射关系并非基于物理的成像原理,所恢复的表面三维轮廓并不真实。

发明内容

本发明的目的是克服现有技术的不足,提供一种基于从图像灰度恢复形状技术(SFS,shape from shading)的纹理力触觉再现方法,该方法无需专门仪器测量物体表面的微观轮廓,无需设计专用的纹理表达装置,实验表明该方法是可行的。
本发明方法的技术方案是:一种基于从图像灰度恢复形状技术的纹理力触觉再现方法,其特征在于:设有采用Tsai&Shah算法从二维纹理图像中恢复出表面纹理的三维微观形状以及用力触觉模型渲染两个阶段过程,包括首先从图像灰度信息中提取真实纹理的微观三维轮廓信息,绘制成虚拟表面,然后对该虚拟表面的纹理通过力触觉模型进行渲染,计算出的力由通用手控器输出到操作者。
可按以下步骤进行:
第1阶段,从单幅图像中恢复三维轮廓,该阶段分为4个步骤:
(1)把图像处理成灰度图像,并灰度归一化;
(2)建立光反射模型;
(3)依据灰度和光反射模型建立方程,求出表面各点的高度;
(4)建立虚拟表面三角网格模型;
第2阶段,用纹理力触觉模型对虚拟表面进行力触觉渲染:
(1)应用AABB碰撞检测算法检测虚拟探针是否与虚拟表面碰撞;
(2)依据纹理力触觉模型计算微观法向力和摩擦力,用通用手控器输出。
上述第1阶段步骤(1)中把图像处理成灰度图像并灰度归一化的方法为:首先提取图像各像素点的RGB分量,然后根据如下公式计算出该像素点的归一化后的灰度值:
E(i,j)=R(i,j)+G(i,j)+B(i,j)3×255---(1)
上述第1阶段步骤(2)中建立光反射模型的方法为:假设投影是正交投影,光源为无限远处点光源以及物体表面反射为朗伯体反射,即物体表面点反射的光强与该点光源入射角的余弦成正比,则根据朗伯体反射的定义和性质,可知物体表面点的亮度/强度应与入射角的辐射度一致,同时,图像灰度E只取决于物体的形状,这种关系可用图像辐照度方程表示
E(x,y)=R(p,q)=1+pps+qqs1+p2+q21+ps2+qs2=cosσ+pcosτsinσ+qsinτsinσ1+p2+q2---(2)
其中E(x,y)是像素(x,y)的灰度,p=zx,q=zy,ps=cosτsinσcosσ,qs=sinτsinσcosσ,σ为倾角,τ为仰角,z=z(x,y)为表面高度;
上述第1阶段步骤(3)中解方程的方法:
公式(2)是个非线性反射函数,考虑到非线性项对重构结果的影响不大,可以将反射函数进行泰勒展开,Tsai&Shah算法利用后项有限差分方法将反射函数离散化:
p=Zx=Z(x,y)-Z(x-1,y)---(3)
q=Zy=Z(x,y)-Z(x,y-1)---(4)
公式(2)可重写为:
0=f(E(x,y),Z(x,y),Z(x-1,y),Z(x,y-1))=E(x,y)-R(Z(x,y)-Z(x-1,y),Z(x,y)-Z(x,y-1))(5)泰勒展开:
0=f(Z(x,y))f(Zn-1(x,y))+(Z(x,y)-Zn-1(x,y))ddZ(x,y)f(Zn-1(x,y))---(6)
其中,Zn(x,y)=Zn-1(x,y)+-f(Zn-1(x,y))ddZ(x,y)f(Zn-1(x,y)),df(Zn-1(x,y))dZ(x,y)=-1×((ps+qs)p2+q2+1ps2+qs2+1-(p+q)(pps+qqs+1)(p2+q2+1)3ps2+qs2+1)
推导后,可整理成如下的迭代格式:
Zn(x,y)=Zn-1(x,y)+Kn(-f(Zn-1(x,y)))(7)
其中Kn=Sx,ynMx,yWx,y+Sx,ynMx,y2,Mx,y=dfdZ(x,y)(Zn-1(x,y)),Sx,yn=E[(Zn(x,y)-Z(x,y))2],E是数学期望算子,Wx,y是一个非常小的非零数。经过数次迭代后,Zn(x,y)就是对应像素(x,y)的高度值;
上述第1阶段步骤(4)中建立虚拟表面三角网格模型的方法:运用OpenGL进行表面的三维重建需要将这些点进行有序的三角网格化,用一个二维数组Z[]来存储表面各点的高度数据,二维数组Z[i,j]中的(i,j)和二维图像的像素(x,y)是一一对应的,所以可以根据右手定则循环构筑三角网格:
首先利用右手定则,用(i,j)、(i+1,j+1)、(i+1,j)三个点构筑一个三角形;然后再根据右手定则,用(i,j)、(i,j+1)、(i+1,j+1)构筑另一个三角形,这样每一个离散点可以构造两个三角形,完成三角网格化;
上述第2阶段中步骤(1)中应用AABB碰撞检测算法检测虚拟探针是否与虚拟表面碰撞的方法:先计算虚拟表面的AABB包围盒,然后计算虚拟探针的空间坐标是否与该包围盒相交,一旦相交,则虚拟探针与虚拟表面发生碰撞,开始执行第2阶段步骤(2)应用纹理力触觉模型计算微观法向力和摩擦力,否则虚拟探针与虚拟表面不发生碰撞,手控器输出的力为零;
上述第2阶段中步骤(2)中依据纹理力触觉模型计算微观法向力和摩擦力的方法:假设物体表面为刚性,则微观的法向力Ft的变化遵循胡克定律:
Ft=di,j×k    (8)
其中di,j为像素(i,j)对应点的高度,k为弹性模量;
切向作用力则表现为摩擦力Ff,遵循动摩擦力公式:
Ff=Ft×μ(9)
其中Ft为法向力,μ为摩擦系数,
最后计算合力Fc:F1c=F1t+F1f---(10)
现将本发明方法中依据的原理和应用的算法阐述如下:
(1)基于从图像灰度恢复形状(SFS)技术
计算机视觉中,由图像灰度恢复形状是三维形状恢复问题的关键技术之一,其任务是利用单幅图像中物体表面的明暗变化来恢复其表面各点的相对高度或表面法向矢量方向等参数。其考察的是小尺度上的细节特征,而纹理恰恰也反映了物体表面的细微凹凸变化,因此利用小尺度三维形状恢复可以用于纹理的特征提取。
从物理和数学的观点来看,SFS是物体成像过程的逆过程。传统的SFS方法认为物体表面反射模型为朗伯表面漫反射模型,如公式(2),并假定成像几何关系为正交投影,于是,图像上每一点的灰度仅与光源和物体表面的相对位置和方向有关。
由朗伯表面漫反射模型确定的SFS问题是病态的,为消除其病态性并建立相应的正则化模型,现有的SFS算法基本上都假设所研究对象为光滑表面物体,即认为物体表面高度函数是C2(或至少是C1)连续的,这种假设实际上通过建立物体的光滑表面模型对其表面形状进行了约束。将上述物体表面反射模型与物体的光滑表面模型相结合,再利用一些已知条件(如关于物体表面形状的初始值条件),就构成了SFS问题的正则化模型。根据建立正则化模型方式的不同,SFS算法大致可分成四类,即最小值方法,演化方法,局部方法和线性化方法。Zhang等人对具有代表性的一些算法进行了分析和比较。
(2)Tsai&Shah算法
线性化算法是通过对反射函数线性化,将原SFS非线性问题,转化为一个线性问题,进而进行求解。该方法的基本思想是认为,在反射函数的Taylor展开式中,低阶项占主要成分,在舍去高阶非线性项时,其结果与原反射函数非常接近。
从算法的实现难易程度和处理速度角度来衡量,Tsai&Shah算法具有易于实现,迭代速度快等优点,更加适合纹理力触觉再现中对纹理表面的三维重构。
Tsai&Shah算法首次使用了表面梯度的离散近似,并针对表面高度值线性化反射函数,这样,在图像中的每一点的灰度值可以由邻域内像素点的线性函数表示,通过雅克比迭代法求解整个线性系统。
(3)纹理力触觉模型
为实现具有真实感的纹理力触觉再现,还要对所获取的三维表面进行力触觉渲染。假设物体表面为刚性,则微观的法向力Ft的变化遵循胡克定律(公式(8)),微观切向作用力则表现为摩擦力Ff,遵循动摩擦力公式(公式(9)),最后计算合力Fc(公式(10));
本发明方法的优点及显著效果:和以往的基于图像处理技术的纹理力触觉再现方法相比,由于应用了基于物体成像原理的SFS技术,能够较为真实的恢复纹理表面的微观轮廓,通过纹理力触觉模型的渲染,使操作者得到对纹理图像较为真实的触感。这种纹理力触觉再现方法无需专门仪器测量物体表面的微观轮廓,无需设计专用的纹理力触觉表达装置,利用通用的力反馈装置即能模拟虚拟手滑过纹理表面所表达的触感。该方法不仅实时性强,更为重要的是,反馈给操作者的力直接来源于真实纹理,大大提高了纹理力触觉再现的真实感。可用于虚拟环境仿真、遥操作机器人控制、远程博物馆和网上商店的浏览、外科手术仿真、虚拟制造等领域,而对于盲人操作者,通过该纹理力触觉再现方法可使他们感知虚拟物体的纹理特性,无疑能扩大他们的感知范围,做到足不出户,就能感知外界环境中的各种物体表面特性。

附图说明

图1是本发明方法的系统框图;
图2是建立虚拟表面三角网格模型的方法;
图3是纹理力触觉模型图;
图4、5分别是两张纹理图像重构其表面三维形状的效果图。

具体实施方式

参看图1,为了较为真实的再现图像纹理的触感,首先对真实的纹理图像进行归一化灰度处理,从图像灰度信息中提取纹理的三维信息,重构虚拟表面;操作者通过手控器控制虚拟探针在虚拟表面上“摸索”;然后应用力触觉模型分别计算虚拟探针与虚拟表面接触点的微观法向力和摩擦力,最终纹理感知的合力由手控器实时反馈给操作者。
参看图2,利用右手定则,用(i,j)、(i+1,j+1)、(i+1,j)三个点构筑一个三角形;然后再根据右手定则,用(i,j)、(i,j+1)、(i+1,j+1)构筑另一个三角形,这样每一个离散点可以构造两个三角形。利用如上规则完成整个虚拟表面的三角网格化。
参看图3,发明所涉及的纹理力触觉模型由公式(8)(9)(10)组成。假设物体表面为刚性,V为虚拟探针的移动方向,Ft为法向力,切向作用力表现为摩擦力Ff,Fc为合力。
图4、5的左边分别是Brodatz纹理库中的两张纹理图像D3_icon.jpg和D95_icon.jpg,右边分别为这两张图片应用Tsai&Shah算法,使用Matlab软件编程,恢复其表面三维形状的效果图。
为验证本发明方法的实施效果,依据Tsai&Shah算法求出的高度图绘制虚拟表面,应用PHANTOM Omni手控器(工作空间>160W×120H×70Dmm,位置精度约为0.055mm,最大施力3.3N,能够实现沿X,Y,Z轴的作用力反馈)与之进行力触觉交互,并随机挑选了20名受试者(男女各占一半)进行了虚拟纹理感知实验。实验方法:让每名受试者戴上眼罩进行感知,以排除视觉对触觉感知的影响;受试者利用Omni手控器端部的操作杆控制虚拟探针在虚拟纹理表面进行“摸索”,然后观看5幅真实纹理图片,对感知到的虚拟纹理与所见的真实纹理图片进行匹配,统计出受试者对每幅虚拟表面的感知正确率。最后,与受试者交流实验感受。