发明名称 基于从图像灰度恢复形状技术的纹理力触觉再现方法
摘要 本发明针对图像纹理的力触觉再现问题,提出了一种基于从图像灰度恢复形状技术的纹理力触觉再现方法,其特征是把纹理图像进行灰度处理,从图像灰度信息中提取真实纹理的微观三维轮廓信息,绘制成虚拟表面,并对该虚拟表面的纹理通过力触觉模型进行渲染,计算出的力由通用手控器输出到操作者。本发明具有无需专门仪器测量物体表面的微观轮廓,无需设计专用的纹理力触觉表达装置等优点,可用于虚拟环境仿真、遥操作机器人控制、远程博物馆和网上商店的浏览以及外科手术仿真等领域。
申请公布号 CN101615072B 申请公布日期 2010.12.29
申请号 CN200910033323.X 申请日期 2009.06.18
申请人 东南大学 发明人 宋爱国;李佳璐;吴涓;张小瑞
分类号 G06F3/01(2006.01)I;G06T17/00(2006.01)I;G06T15/00(2006.01)I 主分类号 G06F3/01(2006.01)I
代理机构 南京经纬专利商标代理有限公司 32200 代理人 奚幼坚
主权项 1.一种基于从图像灰度恢复形状技术的纹理力触觉再现方法,其特征在于:设有采用Tsai&amp;Shah算法从二维纹理图像中恢复出表面纹理的三维微观形状以及用力触觉模型渲染两个阶段过程,包括首先从图像灰度信息中提取真实纹理的微观三维轮廓信息,绘制成虚拟表面,然后对该虚拟表面的纹理通过力触觉模型进行渲染,计算出的力由通用手控器输出到操作者;按以下步骤进行:第1阶段,从单幅图像中恢复三维轮廓,该阶段分为4个步骤:(1)把图像处理成灰度图像,并灰度归一化首先提取图像各像素点的RGB分量,然后根据如下公式计算出该像素点的归一化后的灰度值:<img file="FSB00000197074400011.GIF" wi="1251" he="115" />(2)建立光反射模型假设投影是正交投影,光源为无限远处点光源以及物体表面反射为朗伯体反射,即物体表面点反射的光强与该点光源入射角的余弦成正比,则根据朗伯体反射的定义和性质,可知物体表面点的亮度或强度应与入射角的辐射度一致,同时,图像灰度E只取决于物体的形状,这种关系用图像辐照度方程表示:<img file="FSB00000197074400012.GIF" wi="1776" he="145" />其中E(x,y)是像素(x,y)的灰度,<img file="FSB00000197074400013.GIF" wi="148" he="99" /><img file="FSB00000197074400014.GIF" wi="133" he="101" /><img file="FSB00000197074400015.GIF" wi="305" he="118" /><img file="FSB00000197074400016.GIF" wi="289" he="98" />σ为倾角,τ为仰角,z=z(x,y)为表面高度;(3)依据灰度和光反射模型建立方程,求出表面各点的高度公式(2)是个非线性反射函数,考虑到非线性项对重构结果的影响不大,将反射函数进行泰勒展开,Tsai&amp;Shah算法利用后项有限差分方法将反射函数离散化:<img file="FSB00000197074400017.GIF" wi="1204" he="103" /><img file="FSB00000197074400018.GIF" wi="1189" he="101" />公式(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)泰勒展开: <img file="FSB00000197074400021.GIF" wi="1678" he="190" />其中,<img file="FSB00000197074400022.GIF" wi="1939" he="184" />推导后,可整理成如下的迭代格式:Z<sup>n</sup>(x,y)=Z<sup>n-1</sup>(x,y)+K<sup>n</sup>(-f(Z<sup>n-1</sup>(x,y)))                                (7)其中<img file="DEST_PATH_FSB00000262273800014.GIF" wi="304" he="132" /><img file="DEST_PATH_FSB00000262273800015.GIF" wi="458" he="151" /><img file="DEST_PATH_FSB00000262273800016.GIF" wi="776" he="128" />Ex是数学期望算子,W<sub>x,y</sub>是一个非常小的非零数,经过数次迭代后,Z<sup>n</sup>(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)依据纹理力触觉模型计算微观法向力和摩擦力,用通用手控器输出;其中依据纹理力触觉模型计算微观法向力和摩擦力的方法是:假设物体表面为刚性,则微观的法向力F<sub>t</sub>的变化遵循胡克定律:F<sub>t</sub>=d<sub>i,j</sub>×k                                (8)其中d<sub>i,j</sub>为像素(i,j)对应点的高度,k为弹性模量; 切向作用力则表现为摩擦力F<sub>f</sub>,遵循动摩擦力公式:F<sub>f</sub>=F<sub>t</sub>×μ                        (9)其中F<sub>t</sub>为法向力,μ为摩擦系数,最后计算合力F<sub>c</sub>:<img file="FSB00000197074400031.GIF" wi="1237" he="67" />。
地址 210096 江苏省南京市四牌楼2号