一种基于用户轻松交互的三维物体形状的分解方法

文档序号:6563383阅读:210来源:国知局
专利名称:一种基于用户轻松交互的三维物体形状的分解方法
技术领域
本发明是一种三维物体形状分解的方法,该分解是基于用户轻松交互的方法。用户根据简单划线方式表达对物体分解的意图,该方法能根据划线信息生成满足用户意图的物体分解结果。
背景技术
将图像中需要的部分从画面中提取出来,又叫图像抠图,或去底。通常地,人们用图像抠图技术从一幅图片中将某一部分截取出来,然后和另外的背景图像进行合成生成一副新的图像。如我们可以把人物肖像从一副图像中抠取出来放到另一副美丽的自然风景图片中,加工成一副艺术作品。
Adobe公司的知名图形处理软件Photoshop中提供了套索工具对图像进行抠图操作,Corel公司开发的专业抠图软件Knockout也提供了抠图操作,并且连细小的毛发都能从复杂的背景中分离出来。但是这些软件的使用比较复杂,如果不经过一段时间的培训和练习,用户很难掌握抠图操作的要领。在三维计算机图形学中,人们也常常需要从一个已知物体上选取并切割出一部分,然后进行诸如编辑,变形和拼接等操作。
三维几何造型与处理是计算机图形学、计算机辅助设计(CAD)和计算机动画的核心内容之一。传统的曲面模型的获取是利用曲线曲面的解析表示由人工在计算机上合成得到,已在CAD系统中形成了以NURBS为工业标准的参数曲面造型技术。另一方面,随着数字化技术的迅猛发展,产生了逆向工程和数字几何处理等新的研究领域。
在几何建模系统中,特别是在计算机动画系统中,大部分用户都是根据一些已知的几何模型利用一些交互手段,通过修改编辑,剪切和组合来得到其所想要的几何模型形状。随着计算机图形学、数字几何和计算机动画应用的日益活跃,随着几何建模手段和交互方式的日益丰富,一方面,基于用户交互的形状编辑与变形的研究已得到大量的研究,如自由变形方法(FFD),轴变形方法,基于Laplacian坐标的编辑方法,基于Poisson方程的编辑和变形方法等,并且这些方法的研究近年来有增无减;另一方面,现有的交互方式和手段仍然不能满足用户的所有创意需求,也正日益凸显其与几何建模系统之间的尖锐矛盾,这种矛盾迫使人们需要结合不同领域的各种方法,以创造和发展新的更实用和灵活的用户交互方法和技术,这项紧迫的任务已向广大研究工作者提出了巨大的挑战。因此,几何造型工具的选取必须考虑到所选取造型技术的覆盖域、完整性和简洁性,而界面设计的好坏将直接影响建模效率,其所设计的界面必须是用户友好的。
通常地,人们认识一个几何物体形状,往往是从“高层认知”的角度将其分解为若干个有意义的部分,对于人或者动物的模型来说,人们从视觉认知上都将它们分解为头部,身体和四肢等部分来认识。然后根据不同的应用分别对物体不同部分进行诸如编辑,变形,纹理映射等几何处理。
形状分解是指将一个几何模型分解成若干简单且有意义的子部分,这样的分解使得物体的描述和表示更为直观,更符合人们高层认知的特点。近年来,随着几何造型技术和逆向工程技术的快速发展,人们已逐渐认识到,基于物体分解的高层认知方法和基于物体分解的几何形状编辑技术,已日益成为网格曲面几何处理的非常重要和核心的操作技术,成为人们研究和讨论的热点,并且已应用在纹理地图的生成,曲面简化,几何造型与插值,形状分析、识别和匹配等网格曲面处理上。由此可见,形状分解技术已成为几何编辑造型中的基本操作手段,寻求高效、适用且符合人们视觉感知的物体分解技术是未来造型系统中非常重要的一环,更是广大研究工作者需要进行广泛研究的焦点问题。
但是,如何评价一个物体形状分解的优劣,如何判定物体的一个分解部分是“有意义”的,这些概念是跟人的视觉认知相关的,带有非常大的主观因素,因而难以给出定量的评价标准。一方面,人的视觉认知过程是非常复杂的,它在计算机视觉中的研究还远未成熟;另一方面,对物体进行怎样的分解也是由应用背景所决定的,比如,对于图1中的动物模型,不同的用户对它会有不同的分解认知,不同的应用也使得用户需要不同层次的分解结果。人们已经认识到,完全自动的分解算法是不可能存在的,也是不现实的,寻求简单交互形式的形状分解技术具有十分重要的实际意义。
与传统的图像分割的研究相比,三维物体形状分解的研究还处于起步阶段,仍有许多难题需要解决。目前存在的主要问题有1)三维物体形状分解的研究比较分散,由于三角网格表示三维物体的不规则性,许多图像分割的理论和算法不能简单地推广到三维物体的形状分解中,因此缺乏一个统一的、理论上的总体框架,从而无法满足日益增长的应用需求。2)已有的算法本身还存在许多有待改进的地方,有些算法只适用于处理一些特殊物体,有些算法没有考虑三维网格曲面的特殊性,有的算法虽提供一些参数给用户,但参数的几何意义不直观,并且参数的改变对分解结果的影响是全局的,使用户难以通过参数的调节来得到希望的分解结果。3)在用户意图表达上,仍缺乏有效的交互手段,繁琐的交互过程严重限制了三维物体形状分解在造型和动画系统中的有效应用。
近年来,曲面形状分解已成为网格曲面处理中的重要部分,如参数化,纹理映射,形状匹配,形状插值,多分辨率造型,网格编辑和压缩等。曲面分解的问题就是要将网格的顶点集合划分成若干子集合,它与图像分割,有限元网格分解,统计和机器学习中的点集聚类都有关系。
根据实际应用目标的不同,网格形状分解可分为两种类型一种是基于子片(patch-type)的分解,另一种是基于部分(part-type)的分解。
基于子片的曲面分解将曲面分解成若干子片,每一子片拓扑同胚于圆盘。这种分解一般用于纹理映射,生成纹理地图和生成几何图像等应用中,在这些应用中,每一子片参数化到平面上时不会发生太大的几何扭曲。它还应用到重新网格化和简化中,在这些应用中,每一子片可近似用一个或若干个平面多边形所代替。还有些应用需要分解的子片具有凸性约束或具有常曲率。有些工作将两个物体的形状插值看作为各个子片插值的组合。另外,在网格压缩中,文献采用谱分析的方法来将网格顶点分片,使得每一子片的Laplace矩阵变小,有利于特征向量的计算。
基于部分的曲面分解将曲面分解成若干具有物理意义的块,这种分解直观表示了物体各组成的物理部分,从而有利于形状匹配、形状重建和形状插值;也有利于抽取物体的骨架表示,用于物体变形和动画。
以上技术信息表明,物体形状分解方法的优劣评判,在很大程度上是由用户和应用所决定的。因此,用户的意图表达在物体形状分解中是不可忽略的因素。

发明内容
本发明的目的是提供一种基于划线方式的用户交互界面系统的三维物体形状的分解方法,根据该方法,用户能非常轻松直观的表达其对形状分解的意图,该方法能得到满足用户意图的形状分解结果。
本发明的工作思路是这样的由于物体表面是由许多采样点所表示的,各顶点之间通过边的连接关系构成三角片,从而构成整个物体表面。这样,用户通过在物体表面上划线,确定曲面上哪些是用户想要的部分,而哪些是用户不想要的部分,这些划线将经过曲面上的一些顶点,这些顶点我们称为“种子点”,这些“种子点”所涉及的区域称为“种子区域”。基于划线方式的用户交互界面系统就可根据这些“种子区域”将物体表面分为“前景区域”和“背景区域”两大类,分别表示用户所想要的部分和不想要的部分。
而如何由种子点扩张成种子区域的过程就要用到区域增长技术。对于所有未归类的顶点,基于划线方式的用户交互界面系统都将先根据某个度量来计算这些顶点分别到两个区域边界的距离,然后选择距离值最小的那个顶点将它归并到这个距离值所对应的区域内,此时区域的范围就增长了一个顶点。随着上述过程的不断重复,两个区域都在同时不断地增长,直到所有顶点都被归类,此时物体表面就被分成前景区域和背景区域两大块,两大区域分别表示了物体分割后的不同部分,这样就完成了整个分割过程。
在上述过程中,计算一个未归类的顶点到已知区域边界的距离,本发明人还引入了一种基于曲面特征敏感的度量。本发明人根据计算机视觉研究的理论,人的感知对于物体分割部分的最小化规则(minimal rule),将顶点连线的曲面曲率的变化信息也加入到该度量,使之能很有效地刻划曲面的细微特征变化。它考虑了每一个未归类顶点与种子区域之间的几何相似性,几何特征越像“前景区域”就越可能被分在前景区域。这样,将这种度量应用到到区域增长算法中后,对于一个结构比较简单的物体来说,如果其前景部分和背景部分分界线的几何特征非常明显,则前景部分很容易就被分割出来了。而对于前景部分和背景部分分界线的几何特征不太明显,基于划线方式的用户交互界面系统可能得不到用户满意的分割结果时,就需要用户再次进行交互指定更多的信息,来得到令人满意的分解效果。
为此,本发明实现其目的的技术方案如下一种基于用户轻松交互的任意三维物体形状的分解方法,该方法基于划线方式的用户交互界面系统,在该界面系统中预先定义了基于曲面特征敏感的几何度量方法,其包括如下操作步骤步骤A首先,将三维物体模型装载并显示于基于划线方式的用户交互界面系统上,点击操作该三维物体模型,选择一个合适的视角查看物体;步骤B确定待分解的前景部分和背景部分后,在显示屏幕上的前景部分和背景部分位置处画相应曲线(A、B),以标明物体的前景部分和背景部分;所述屏幕空间上的曲线(A、B)分别投影到三维物体模型表面上,在投影曲线上以一定距离散布不同部分区域的种子顶点(p1,p2,...,pn;q1,q2,...,qn);步骤C对每个种子顶点,根据预先定义基于视觉特征敏感的几何度量方法,在物体表面上同时进行区域增长步骤C1以曲线(A)表示前景部分种子的增长区域边界,曲线(B)表示背景部分种子的增长区域边界,构造一个候选队列暂存所有等待被增长的顶点(R1,R2,...,Rn);步骤C2根据定义的几何度量计算候选队列中的顶点(R1,R2,...,Rn)到前景区域边界和背景区域边界的距离,选择具有最小距离的候选顶点,将其加入相应的增长区域中,如果它距离前景区域边界距离更近,则将其加入前景区域中,否则将其加入背景区域中;步骤C3如果候选队列中还有其他顶点,重复步骤C2;如果候选队列为空,增长结束;步骤D根据增长得出的区域,即为将物体表面分解得到的前景部分和背景部分,分离该前景部分和背景部分后输出,进一步的,在该步骤D中,还可将分解得到的前景部分和背景部分的边界线进行微调或进行边界优化处理,使边界尽量光滑。
本发明所述的基于曲面特征敏感的几何度量,其对于物体表面两个顶点u和v之间的一条路径的距离是由下述公式描述的dΓ(u,v)=∫Γds+w∫Γ*ds*+w*∫Γf(kD)ds,]]>式中Г为物体表面上两个顶点u和v的一条路径,Г*为Г的Gauss映射像,ds和ds*分别为Г和Г*的微分线段元,kD为路径Г上某点的法曲率值,f(x)是关于kD的一个函数f(kD)=kD,kD≥0,g(|kD|),kD<0,]]>其中g(x)为一放大函数,通常可取g(x)=ex-1。
采用本发明的上述技术方案,三维物体形状的分解操作将变得异常简单与方便,用户只需要进行一些简单的操作,即可轻松直观的表达其意图,并得到很好的分割结果。


图1为对同一个物体,不同的用户会有不同层次的分解的示意图。
图2为本发明方法的原理框图。
图3为本发明方法流程图。
图4为区域增长过程的示意图。
图5为本发明方法的第一种三维物体形状分解实施例。
图6为本发明方法的第二种三维物体形状分解实施例的操作界面图。
图7为本发明方法的第二种三维物体形状分解实施例的操作示意图。
图8为本发明方法的第三种三维物体形状分解实施例。
图9为本发明方法的一种边界微调实施例。
图10为本发明方法的一种边界优化处理实施例。
具体实施例方式
下面,结合附图和具体实施例来进一步说明本发明。
如图2和3所示。本发明提供一种基于用户轻松交互的三维物体形状的分解方法,根据该方法,用户能非常轻松直观的表达其对形状分解的意图,该方法能得到满足用户意图的形状分解结果。首先用户在原始物体形状表面上标明前景部分和背景部分,基于用户指定的信息,方法能自动生成前景分割部分和背景分割部分。图6所示为系统的用户界面,一开始,用户在基于划线方式的用户交互界面系统框架内浏览物体,并选择合适的视点和视角查看物体;然后用户根据其意图用鼠标在屏幕空间通过画线方式,指定物体的前景部分和背景部分所在的大致区域。
图5为本发明的一种分解出马后肢和臀部的实施例。在用户交互界面下,图5(a)为原始模型的绘制图,图5(b)为用户轻松用鼠标左键标示曲线A和鼠标右键标示曲线B,曲线A和曲线B用不同的颜色标示,如曲线A为紫色线,曲线B为蓝色线,分别标识所需分解部分,图5(c)为根据用户的交互信息得到的分解结果,即分解得到马的后肢和臀部。
图7为另一个基于曲线用户交互界面的三维物体形状分解方法的具体操作实例,该实施例的目的是将图7(a)兔子模型的头的部位从身体部位分割出来,并将此部分从模型中切割出来,然后用于图7(b)的小狗身上,与小狗的身体合成一个新的模型。该实施例是基于划线方式操作界面下操作,在该操作界面下装载了基于视觉特征敏感的几何度量方法,其具体操作步骤如下步骤101将兔子的三维模型装载到计算机上,并将其显示在系统的界面中。用户通过鼠标操作物体,可以平移、旋转和伸缩该物体,并选择一个合适的视角查看物体。
步骤102选定兔子头部作为待分解的前景部位,兔子身体作为待分解的背景部位。用户通过鼠标在显示屏幕上、待分解的前景部位和背景部位处随意画上曲线A和B,其中,A代表前景区域的增长边界,B代表背景区域的增长边界。用户交互指定前景和背景曲线后,系统在前景和背景曲线上分别采样若干个种子顶点,如图4所示。
在屏幕空间上的曲线A和B则分别投影到了三维物体模型表面上,在投影曲线A、B上以一定距离散布不同部分区域的种子顶点p1,p2,...,pn和q1,q2,...,qn。
步骤103确定好待分解的前景部分和背景部分后,根据预先定义基于视觉特征敏感的几何度量方法,来计算曲面上其他顶点到前景区域和背景区域的种子顶点p1,p2,...,pn和q1,q2,...,qn的距离,在物体表面上同时进行区域增长首先,以曲线A表示前景部分种子的增长区域边界,曲线B表示背景部分种子的增长区域边界,构造一个候选队列暂存其他所有等待被增长的顶点R1,R2,...,Rn。
其次,根据定义的几何度量一一计算候选队列中的顶点R1,R2,...,Rn到前景区域边界和背景区域边界的距离,选择具有最小距离的候选顶点,将其加入相应的增长区域中。如图4(b)中,点R1具有最小的距离值,为距离前景区域边界的距离值,则将其加入前景区域中,如图4(c)。如果候选队列中还有其他顶点,则重复上一步,直至候选队列为空,增长结束。
此实施例中物体表面其他顶点与种子顶点之间距离的计算是基于曲面特征敏感的度量来计算的,即两个顶点u和v之间的一条路径的距离是由下述公式描述的
dΓ(u,v)=∫Γds+w∫Γ*ds*+w*∫Γf(kD)ds,]]>式中Г为物体表面上两个顶点u和v的一条路径,Г*为Г的Gauss映射像,ds和ds*分别为Г和Г*的微分线段元,kD为路径Г上某点的法曲率值,f(x)是关于kD的一个函数f(kD)=kD,kD≥0,g(|kD|),kD<0,]]>其中g(x)为一放大函数,通常可取g(x)=ex-1。
在实际计算中,由于曲面是由三角网格来逼近表示的,我们按下述方式来近似计算上述的几何距离dГ(u,v)=|u-v|+ω|nu-nv|+ω*f(kuv),其中nu和nv分别为点u和点v的法向,kuv为曲面在点u处uv方向的方向曲率值,w和w*为控制三个积分式子之间的比例参数。所述用于控制三个积分式子之间的比例参数w和w*的最佳值在0.4-0.6之间,0.5尤佳。
最后,根据增长得出的区域,即为将物体表面分解得到的前景部分——兔子头部和身体部分,切割该前景部分和背景部分后即可输出。将该分解得到的前景部分和背景部分进行剪切、粘贴或修改编辑等操作。
对于大部分的模型,特别是对于那些子部分之间的分界线比较明显的模型,那么只需要做到上述的一步就很容易得到所需要的部分。但是子部分之间的分界线可能会出现少数不规则或者不精确的边界线,则我们还可以进行边界微调。用户可以直接利用鼠标选取分割边界线的顶点并进行拖动以修改其位置;用户还可以很简单地利用基于划线方式的用户交互界面系统提供的粗画笔功能,在边界线不够准确的地方利用鼠标随着边界刷一下,就会自动将所希望的边界线准确地勾画出来,如图9。
另外,对于最后的分割结果,由于表示模型的顶点数可能比较稀疏,所得到的子部分的边界线就可能会出现锯齿形的形状,本实施例可利用蛇形曲线原理进行边界线优化处理,使其尽量光滑,如图10。蛇形曲线是一种带有能量的曲线,曲线能根据自身的能量和某些外在能量进行最小化优化来达到一个能量最小化的状态,外在能量是与它所在的曲面的位置的几何特征相关的,这样,边界线优化后就能有效消除锯齿形现象了。
对于特别复杂的模型,用户只划一条前景曲线和一条背景曲线来标注区域往往不能得到所满意的分割结果。这时用户可以划多条前景曲线和背景曲线来标注更精确的部位。由于在整个过程都是能实时看到分割结果的,因此用户能很轻松的根据分割结果来交互标注更多的部位,直到得到满意的分割结果。如图8所示,图8(a)为原始模型的绘制图,龙的一个浮雕模型位于一张带有很多凹凸底纹的曲面上,即使是人眼也不太容易能区分出龙的边界线。本实施例中,用户只要轻松地划如图的3条曲线A和5条曲线B,即可很精确地分割出龙的模型出来。
权利要求
1.一种基于用户轻松交互的任意三维物体形状的分解方法,其特征在于,所述方法基于划线方式的用户交互界面系统,并在该界面系统中预先定义基于视觉特征敏感的几何度量方法,包括如下步骤步骤A将三维物体模型装载并显示于基于划线方式的用户交互界面系统上,点击操作该三维物体模型,选择一个合适的视角查看物体;步骤B确定待分解物体的前景部分和背景部分后,在显示屏幕上的前景部分和背景部分位置处分别画相应曲线(A、B),以标明物体的前景部分和背景部分;所述屏幕空间上的曲线(A、B)分别投影到三维物体模型表面上,在投影曲线上以一定距离散布不同部分区域的种子顶点(p1,p2,…,pn;q1,q2,…,qn);步骤C对每个种子顶点,根据预先定义基于视觉特征敏感的几何度量方法,在物体表面上同时进行区域增长步骤C101以曲线(A)表示前景部分种子的增长区域边界,曲线(B)表示背景部分种子的增长区域边界,构造一个候选队列暂存所有等待被增长的顶点(R1,R2,...,Rn);步骤C102根据定义的几何度量计算候选队列中的顶点(R1,R2,...,Rn)到前景区域边界和背景区域边界的距离,选择具有最小距离的候选顶点,将其加入相应的增长区域中,如果它距离前景区域边界距离更近,则将其加入前景区域中,否则将其加入背景区域中;步骤C103如果候选队列中还有其他顶点,重复步骤C102;如果候选队列为空,增长结束;步骤D根据增长得出的区域,即为将物体表面分解得到的前景部分和背景部分,切割该前景部分和背景部分后输出。
2.根据权利要求1所述的基于用户轻松交互的任意三维物体形状的分解方法,其特征在于,在步骤D中,进一步对分解得到的前景部分和背景部分的边界线进行微调,再切割该前景部分和背景部分后输出。
3.根据权利要求1或2所述的基于用户轻松交互的任意三维物体形状的分解方法,其特征在于,在步骤D中,进一步将分解得到的前景部分和背景部分进行边界优化处理,再切割该前景部分和背景部分后输出。
4.根据权利要求1或2所述的基于用户轻松交互的任意三维物体形状的分解方法,其特征在于,所述的基于视觉特征敏感的几何度量,其对于物体表面两个顶点u和v之间的一条路径的距离是由下述公式描述的dΓ(u,v)=∫Γds+w∫Γ*ds*+w*∫Γf(kD)ds,]]>式中Γ为物体表面上两个顶点u和v的一条路径,Γ*为Γ的Gauss映射像,ds和ds*分别为Γ和Γ*的微分线段元,kD为路径Γ上某点的法曲率值,f(x)是关于kD的一个函数f(kD)=kD,kD≥0,g(|kD|),kD<0,]]>其中g(x)为一放大函数,通常可取g(x)=ex-1。
5.根据权利要求3所述的基于用户轻松交互的任意三维物体形状的分解方法,其特征在于,所述的基于视觉特征敏感的几何度量,其对于物体表面两个顶点u和v之间的一条路径的距离是由下述公式描述的dΓ(u,v)=∫Γds+w∫Γ*ds*+w*∫Γf(kD)ds,]]>式中Γ为物体表面上两个顶点u和v的一条路径,Γ*为Γ的Gauss映射像,ds和ds*分别为Γ和Γ*的微分线段元,kD为路径Γ上某点的法曲率值,f(x)是关于kD的一个函数f(kD)=kD,kD≥0,g(|kD|),kD<0,]]>其中g(x)为一放大函数,通常可取g(x)=ex-1。
6.根据权利要求4所述的基于用户轻松交互的任意三维物体形状的分解方法,其特征在于w和w*为0.4-0.6。
7.根据权利要求6所述的基于用户轻松交互的任意三维物体形状的分解方法,其特征在于w和w*为0.5。
8.根据权利要求5所述的基于用户轻松交互的任意三维物体形状的分解方法,其特征在于w和w*为0.4-0.6。
9.根据权利要求8所述的基于用户轻松交互的任意三维物体形状的分解方法,其特征在于,w和w*为0.5。
全文摘要
本发明公开了一种基于划线方式的用户交互界面系统的三维物体形状的分解方法,该方法基于划线方式的用户交互界面系统,通过在所述界面系统显示所幕上的三维物体前景部分和背景部分位置处分别画相应曲线(A、B),并根据预先定义基于视觉特征敏感的几何度量方法,在物体表面上同时进行区域增长,用户即能非常轻松直观的表达其对形状分解的意图,并得到满足用户意图的形状分解结果。
文档编号G06T15/00GK101082985SQ200610155249
公开日2007年12月5日 申请日期2006年12月15日 优先权日2006年12月15日
发明者刘利刚, 计忠平, 王国瑾 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1