CN102792337A - 用于生成数字图片的方法、装置和计算机可读介质 - Google Patents

用于生成数字图片的方法、装置和计算机可读介质 Download PDF

Info

Publication number
CN102792337A
CN102792337A CN2010800653366A CN201080065336A CN102792337A CN 102792337 A CN102792337 A CN 102792337A CN 2010800653366 A CN2010800653366 A CN 2010800653366A CN 201080065336 A CN201080065336 A CN 201080065336A CN 102792337 A CN102792337 A CN 102792337A
Authority
CN
China
Prior art keywords
curve
curves
digital picture
group
measurement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2010800653366A
Other languages
English (en)
Other versions
CN102792337B (zh
Inventor
谢福顺
田丰
谢学翔
贺英
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanyang Technological University
Original Assignee
Nanyang Technological University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanyang Technological University filed Critical Nanyang Technological University
Publication of CN102792337A publication Critical patent/CN102792337A/zh
Application granted granted Critical
Publication of CN102792337B publication Critical patent/CN102792337B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Measuring And Recording Apparatus For Diagnosis (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

提供一种用于生成数字图片的方法,该方法包括接收多条曲线的每一条的三维表示,其中每条曲线至少部分地表示三维物体的形状;基于曲线的三维表示,使用三维表示给出的三维信息将多条曲线分组成至少一个曲线组;基于曲线组的曲线将每个曲线组与图片元素相关联;使用图片元素形成数字图片。

Description

用于生成数字图片的方法、装置和计算机可读介质
技术领域
实施例涉及计算机图形学和科学可视化领域。通过示例的方式,实施例涉及三维(3D)物体曲线的提取、基于所提取的曲线说明3D物体的数字图片的生成和用于表达3D物体的程式化动画等的方法。
背景技术
计算机图形学已经成为科学、艺术和通信的流行媒介。它一直被定义成制作逼真图像的探索。在该领域中的研究已非常成功。现在计算机可以生成如此逼真到你不能将它们与照片区分开的图像。然而,在许多方面,不逼真的图像会更有效和更可用。经验显示,如此频繁地,相同场景的艺术性绘图或绘画被证实比照片在通信中更有效而且在视觉体验中更令人满意。这主要是因为各种艺术形式的自然性的缺少。在机械手册和医学课本中可以发现更多的例子,在其中图示代替照片被广泛用于探索复杂的结构和形状的内部。在“尽可能详细的同时尽可能简单”的法则下,传统的描述在通信中特别有效。同样已知的是,相对于照片,非照片般逼真(non-photorealistic)的图像具有许多优点,例如,把注意力集中在形状的具体特征的同时省略无关的细节,揭露细微的属性和隐藏的部分,以独特风格的选择来阐明复杂的场景,和简化形状以防止视觉超载等。近年来在非照片般逼真的绘制领域已进行大量研究。
作为传统艺术和图示的最重要技术之一,线条画(line drawing)可以以高度概括和相对简洁的方式表达大量信息。计算机生成的线条画在计算机图形学初期就已经发展。作为非照片般逼真绘制技术发展的结果,它在近年来极大地发展。
受到传统线条画在通信中的有效性和感性经验的美感的启发,在3D物体形状的计算机生成线条画中进行了广泛研究。Appel提出用于在物体空间中轮廓(silhouette)和锐利特征的提取和在图像空间中绘制的方法(“The notion of quantitative invisibility and the machine rendering ofsolids”在Proceedings of the 1967 22nd national conference)。Gooch等人介绍了交互技术图示系统(“Interactive technical illustration”在Proceedingsof the 1999 symposium on Interactive 3D graphics)。Hertzmann和Zorin提出自动在光滑表面上提取轮廓和生成线条画的算法(“Illustratingsmooth surfaces”在Proceedings of Siggraph 2000)。为了表达3D形状内部的结构和复杂性,Kalnins等人提出在他们的WYSIWYG NPR绘图系统中绘制褶皱(crease)的方法(“WYSIWYG NPR:Drawing strokes directlyon 3d models”在Proceedings of Siggraph 2002),而且Interrante等人使用脊和谷线以加强透明皮肤表面(“Enhancing transparent skin surfaceswith ridge and valley lines”在IEEE Visualization 1995)。Wilson和Ma描述了使用以笔墨(pen-and-ink)形式的线条画表达几何复杂性的方法(“Representing complexity in computer-generated pen-and-inkillustrations”在Proceedings of NPAR 2004)。Ni等人关注于来自3D网格的多尺度线条画,并且提出视点依赖地控制在计算机生成的线条画中描述的形状特征的尺寸(“Multi-scale line drawing from 3D meshes”在Proceedings of the 2006 symposium on Interactive 3D graphics)。
许多种类的特征线广泛应用于旧有技术(stale-of-the-art)计算机生成的线条画系统。边界线是在表面展开所处的3D模型中出现的这些特征线之一。等照度线(isophote)是具有在表面上的恒定照度的线,也是在卡通绘制区域之间的阴影边界。自相交线是模型表面相交之处。在这些中,轮廓线(contour)、启发轮廓线(suggestive contour)、脊(rigde)和谷(valley)是近年来最具有代表性的特征线。轮廓线,一般定义为轮廓的可见部分,是曲面转离观察者并且变得不可见处的线。轮廓线示出模型和背景区别的最强的暗示。启发轮廓线,由DeCarlo等人提出(“Suggestive contours forconveying shape”在Proceedings of Siggraph 2003),被认为是表面的实际轮廓线的延伸。启发轮廓线是绘制在曲面的清晰可见部分上的线,在该位置真正的轮廓线会以最小的变化优美地首次出现在视点启发轮廓线表达的形状中。启发轮廓线是在动画序列中特别重要的视点依赖特征线的先驱。脊和谷线,也称为峰线,是沿着曲面急剧弯曲的曲面上的曲线。它们是形状变化的最有力的一些描述符,该描述符广泛用在CAD/CAM(计算机辅助设计和计算机辅助制造)应用中。
作为现有技术(state-of-the-art)的特征线,然而,这些线单独都不能捕捉所有可见地重要的特征。单独轮廓线是十分有限的,因为他们不能捕捉形状内部的结构和复杂性。启发轮廓线不能说明在凸区域中的突出的特征,固定在曲面上并显得更像曲面标志而不像动画中的自然线条画的白色的脊/谷线的弧形视点独立的特征线。
因此,期望使用提取3D物体的曲线的改进的方法以生成3D物体数字图片,该方法可以使得数字图片更感性一致并且可给予用户在获得期望的线条画中更多的自由。
进一步,也期望延伸3D物体数字图片的生成到具有用于数字图片的视频序列的程式化的动态设置的数字图片视频序列的生成。换而言之,期望提供一种具有数字图片一致性的动画生成的方法。在这种背景下,动画指的是数字图片视频序列。程式化可指的是根据风格或文体模式而不是根据本质或传统的数字图片或数字图片序列的表示。例如,程式化可以是非照片般逼真的应用的特征。在这种背景下,数字图片一致性可指的是在视频序列内的不同数字图片中的风格化的一致性。
发明内容
在一个实施例中,提供了用于生成数字图片的方法,该方法包括接收多条曲线的每一条的三维表示,其中每条曲线至少部分地代表三维物体的形状;基于曲线的三维表示,使用由三维表示给出的三维信息将多条曲线分组成至少一个曲线组;基于曲线组的曲线,将每个曲线组与图片元素相关联;以及使用图片元素形成数字图片。
根据另一个实施例,提供根据上述方法的装置和计算机可读介质。
需要注意的是在独立方法权利要求的从属权利要求中描述的实施例对于相应的装置和在其中可应用的计算机可读介质也类似有效。
附图说明
附图不必要按比例,而是一般地把重点放在说明各个实施例的原理上。在下面的描述中,参考下列附图描述各个实施例,在其中:
图1说明在一个实施例中在曲面上的PEL的定义;
图2(a)-(d)示出PEL的效果图;
图3(a)-(d)说明用于获得PEL的在3D物体上的主光和辅助光的效果;
图4(a)-(f)说明局部在3D物体上的辅助光的调整;
图5(a)示出顶点(x1,y1)、(x2,y2)和(x3,y3);图5(b)说明面(face)坐标系统;
图6(a)-(f)示出为在不同视点的不同3D物体所提取的PEL的图示;
图7说明在一个实施例中,生成包括多个数字图片的视频序列的过程;
图8示出在一个实施例中的方法;
图9说明在一个实施例中的装置;
图10说明两条曲线的连续性的确定;
图11说明两条曲线的平行度的确定;
图12说明两条曲线导致封闭曲线的可能性的确定;
图13(a)-(c)说明在不同数字图片之间分组的曲线;
图14(a)示出3D物体;图14(b)示出以一种风格,从如图14(a)中所示3D物体提取的曲线的表示;图14(c)示出以另外一种风格,从如图14(a)中所示的3D物体提取的曲线的表示;
图15(a)-(b)说明在不同的数字图片之间单条曲线的对应的确定的例子;以及
图16说明根据一个实施例的计算机。
具体实施方式
边缘(edge)检测是在计算机视觉中充分研究的问题。在2D图像中,边缘检测定义为在梯度方向上梯度幅值呈现最大的点。人类视觉的观测和感知在显示亮度中的突然改变在表达和复原3D信息中扮演着核心作用。观测也显示对于在通常照明和反射条件下的所照亮的3D物体的灰度图像,沿着亮度梯度方向的图像亮度的二阶方向导数的过零点(zero-crossing)出现在3D物体的脊和谷附近。受到在图像处理中的边缘检测的启发,在一个实施例中,可命名为光极线(Photic Extremum Lines,PEL)的曲线的类型,定义为在3D物体表面上直接表征照度的局部变化。
在一个实施例中,PEL是在3D物体的表面上照度的变化在其梯度方向上达到局部最大的一组点。
图1说明PEL的定义。
在图1中设定平滑曲面片可假设照度函数f:S->R是C3连续的。在这方面,R2指二维真实空间,例如实数对的向量空间。R2可指三维真实空间,例如,实数的三元组的向量空间。C3意思是三阶导数存在并且是连续的。
如图1所示给定任意点p∈S,n是在曲面片S上在点p处的曲面法线。切向量Su和SV在曲面片S的点p上定义局部坐标系统,在其中:
S u = ∂ S ∂ u , S v = ∂ S ∂ v
如果S是常规片,则Su和SV线性独立且形成正切空间的基础。
f的梯度可定义为:
▿ f = f u G - f v F EG - F 2 S u + f v E - f u F EG - F 2 S v - - - ( 1 )
在其中fU和fV是标量函数f的偏导数,例如,
Figure BDA00002122863600061
Figure BDA00002122863600062
E,F和G是S的第一基本形式的系数,例如,E=(SU,SV),F=(SU,SV)和G=(SU,SV),其中(,)是点积。如图1所示给定任意点p∈S,n是在曲面片S上在点p处的曲面法线,而且表示w作为在曲面片S上在点p处的正切空间上的f的梯度的单位矢量,例如,则PEL可定义为一组点,满足:
D w | | &dtri; f | | = 0 并且 D w D w | | &dtri; f | | < 0 - - - ( 2 )
Dw表示为方向导数算符。对于标量函数g,
Figure BDA00002122863600066
是沿着w的方向导数。直观的说,Dw可测量沿着方向w的函数f的变化。
Figure BDA00002122863600067
的全部解构成封闭曲线或在曲面边界终止的曲线。因而,曲面可分成两个区域,例如,满足
Figure BDA00002122863600068
的区域和满足
Figure BDA00002122863600069
的区域。在一个实施例中,PEL对应于在其中
Figure BDA000021228636000610
的曲线的一部分,即照度的变化达到其局部最大。PEL有效地表示关于3D物体的形状的有用信息。
图2(a)-(d)说明用于3D物体的形状图示的PEL。
图2(a)说明3D物体的曲面200。图2(b)中的虚线说明在曲面200上满足
Figure BDA000021228636000611
的曲线。在图2(c)中的虚线说明在曲面200上满足
Figure BDA000021228636000613
的曲线。图2(d)说明的区域202和
Figure BDA000021228636000615
的区域204。
参考图2(a)中示出的曲面200,
Figure BDA000021228636000616
的全部解构成封闭曲线或在曲面边界终止的曲线。这些曲线将曲面200分成两个区域,例如,(在图2(d)中颜色为深灰色)和
Figure BDA000021228636000618
(在图2(d)中颜色为浅灰色)。PEL(在图2(b)中的虚线曲线)对应于在其上
Figure BDA000021228636000619
的曲线的一部分,例如,照度的变化达到局部最大。在图2(c)的虚线曲线对应于满足
Figure BDA000021228636000620
的点,该点不能表达关于3D物体的形状的有用信息。注意到在隐藏曲面上的曲线没有显示在(b)和(c)中。
在一个实施例中,在3D曲面的照度可能完全用户可控。换而言之,在一个实施例中,用户可以通过自由操纵光而达到所期望的照度。
3D形状的照度依赖于照明条件。在图形学中可用的各种光的模型之中,通常使用的一种是冯氏镜面反射模型(Phong specular-reflectionmodel):
I = I amb + I diff + I spec = k a I a + k d I d ( n &CenterDot; l ) + k s I s ( v &CenterDot; r ) n s - - - ( 3 )
在其中n,l,v,r分别是曲面法线,光的方向,视点方向和反射方向;ns是对于曲面越光滑时其值越大的亮度常数,ka是环境反射常数,Ia是环境光强度,kd是漫反射常数,Id是漫反射光强度,ks是镜面反射常数,Is是镜面光强度。在这方面,在曲面的点P上的曲面法线可指垂直于在点P的曲面的切平面的向量。Iamb表示环境光。关于这一点,环境光可指围绕主体或场景的照明。Idiff表示漫射光,甚至是离开曲面的直射光。Ispec代表镜面光。关于这一点,镜面光可指沿着或在从曲面的反射向量周围更强烈反射的光。由于等式(3)是光和视点方向的函数,在一个实施例中,相应的PEL可以是视点和光依赖的。
在一个实施例中,PEL通过强调在3D曲面上的照度的明显变化,表达3D物体的形状。针对带有用户感知经验的3D形状的图示,在一个实施例中,光模型可强调与形状变化强烈相关的照度变化,并可抑制那些与形状变化较不相关或正交(orthogonal)的照度变化。在冯氏光照模型(Phongshading model)中,环境光Iamb是对照度变化没有贡献的常数。漫射光Idiff由形状和光同时决定。漫射光Idiff的变化高度地受到曲面法线的影响。镜面光Ispec由观察和光照条件支配,其可认为是3D曲面的正交因子。换而言之,Ispec与3D物体的形状不相关。因而,镜面光Ispec可引入与3D形状较不相关而且分散3D形状图示的特征线。另一方面,镜面光Ispec的功率因子计算更加昂贵。因而,在一个实施例中,可忽略环境光Iamb和镜面光Ispec,而只考虑漫射光。从而,从等式(3),获得用于光照模型的下列等式
I=kdId(n·l)                   (4)
注意到视点向量v不包括在等式(4)中。因而,在一个实施例中的相应的PEL也独立于视点位置。
在另一个实施例中,视点依赖特性在现实世界应用中可能是期望的。更重要地,对于具有复杂几何和许多细节的现实世界3D形状,定位特征线的标准在不同部分中通常不同而且相当主观。因而,需要提供用户更多的自由以控制所期望的图示。为了满足视点依赖性以及用户可控制能力和运行的需求,在一个实施例中,下面提供PEL的光照模型。
在一个实施例中所使用的光模型包括主光。例如,主光源使用其光线平行于视点向量的定向光来设置。换而言之,术语“主光”类似于“头灯”,其广泛应用于车辆的照明系统中。该设置是基于用户感知经验的。因而,当视点改变时光移动。结果,照度和相应的PEL是视点依赖的。
在一个实施例中,使用的光模型进一步包括至少一个辅助光。换而言之,可选的点光(spot light)可用于加亮用户指定的区域。辅助光对照度的贡献是局部的且独立于视点位置。辅助点光可用n·l定义,但是局部应用于用户感兴趣的区域,该区域向用户提供在不同区域控制PEL的自由度。
图3(a)-(d)说明在一个实施例中用于PEL的提取的光模型的应用。选择斯坦福兔子(Stanford Bunny)作为用于光模型的效果图示的3D物体。
图3(a)说明应用于斯坦福兔子的四束光,以用于斯坦福兔子的图示的PEL提取。主光#1是方向与照相机方向一致的定向光。通过单独使用主光#1,PEL可很好地表达粗略的形状(图3(b))。
然而,在眼睛和脚上一些重要的线可能缺失(如(b)中所示)。则辅助点光#2和#3可用于在眼睛和脚上提高局部对比度以增加更多的细节(如图3(c)中所示)。注意到兔子身体由于细小浮雕而包含许多短的特征线。但是,用户可能较不喜欢这些线。为了移除这些线,可将如图3(a)中所示的另一个辅助点光#4加入以减少在身体上的局部对比度。结果如图3(d)中所示,成功移除绝大部分小的特征线。
更具体地,图3(a)说明其中4束光用于说明斯坦福兔子的例子。光#1是主光,其方向与视点方向一致。主光#1的目的是表达斯坦福兔子的粗略几何形状。光#2、#3和#4是辅助光,其可用于提高或减小局部对比度。例如,在该情况下,辅助光#2局部地应用于眼睛区域。辅助光#3应用于脚区域,并且辅助光#4局部地应用于斯坦福兔子的身体区域。在一个实施例中,辅助光用于提高或减小指定区域的局部对比度。因而,根据3D物体的局部特征或用户的需求,可能增加或移除PEL。
图3(b)说明当只应用主光#1时,通过PEL说明斯坦福兔子的粗略几何形状。从图3(b)可以看到,一些重要的线(例如可能更详细地说明眼睛和脚的线)缺失了。同样由于斯坦福兔子的一些小特征,例如在身体区域上的特征,存在许多引起干扰且无助于在后腿区域表达形状的小PEL。
图3(c)说明当应用主光#1和辅助光#2和#3时,通过斯坦福兔子的PEL说明几何形状。从图3(c)可以看到,两个辅助光#2和#3用于提高在眼睛和脚上的对比度。
当另外的辅助光#4用于减小在身体上的对比度时,通过斯坦福兔子的PEL图3(d)说明几何形状。结果,实现斯坦福兔子的PEL的更好的提取。
对于简单的形状,通常可以只使用主光实现期望的图示。然而,绝大部分的现实世界模型具有不能使用单独的光说明的复杂的几何形状和许多细节。因而,在一个实施例中,辅助光用于改进图示。PEL的一个优点是用户可完全地控制辅助光,例如光的数量,它们的强度,位置和方向。手工地操作这些参数可能是乏味的工作。在一个实施例中,为了最小化用户相互作用的效果,提供了自动地计算辅助光的最优设置的方法。
在一个实施例中,用户可指定要改进的几个感兴趣的区域。每个区域都足够小使得可只使用一个辅助光Iaux
给定用户指定的片
Figure BDA00002122863600091
Figure BDA00002122863600092
关于这一点,A的意思是在区域上进行积分,并且c为区域A的重心。
在一个实施例中,点光Iaux可以光方向
Figure BDA00002122863600093
应用在位置x。在一个实施例中,如果由用户优选地增加细节,则通过点光Iaux在S'的照度对比度最大化。在另一个实施例中,如果由用户优选地移除线,则通过点光Iaux在S'的照度对比度最小化。例如,可使用下面的公式,
max &Integral;&Integral; S &prime; | | &dtri; f | | 2 dA 以增加细节,(5)
min &Integral; &Integral; S &prime; | | &dtri; f | | 2 dA 以移除细节,(6)
在其中f=Iaux
I aux ( u , v ) = k aux I aux k c + k l d + k q d 2 n ( u , v ) &CenterDot; l
l = x - S ( u , v ) | | x - S ( u , v ) | |
d=‖S(u,v)-x‖
而且在其中S(u,v)是给定的3D曲面片;d是在光源和曲面S之间的距离;kaux是辅助光的强度;kc,kl,kq是距离d的二次函数的系数;n(u,v)是单位法向量,例如,
Figure BDA00002122863600105
以及l是光方向的单位向量。
注意到点光的截止角(cut-off angle)可引起照度的不连续,该照度从而可导致不必要的特征线。关于这一点,截止角可指点光的圆锥形的角度,而且与应用到3D物体的表面S上的点光的边界相关。
为了避免由照度的不连续所导致的附加特征线,在一个实施例中,点光的截止角可以足够大以覆盖S'。对于在点光区域(大于S')内部的每个点,应用两个照度函数f=Imain和f=Iaux。为了计算照度的导数,f=Iaux用于任意点p∈S',而f=Imain用于任意点p∈S\S',其意思是p是S中的而不是S'中的点。因而,尽管两个函数的重叠导致不连续,但通过在两个函数f=Imain和f=Imain+Iaux之间切换,可能确保各处的局部连续。由于PEL用局部极值定义,而且对于所有的点,照度是局部连续的,辅助光可提高S'的PEL图示而不会在边界上引入不必要的线。
在一个实施例中,为辅助光的优化和S′中的PEL的提取将照度函数设置为f=Iaux。在一个实施例中,最优辅助光位于物体空间。因而,辅助光的最优设置不受到主光的改变和各种视点条件的影响。在一个实施例中最优处理不是实时的。换而言之,在用于在2D中的图像图示的3D物体曲线的提取之前在3D空间进行最优化。在一个实施例中,一旦确定辅助光,辅助光就固定在物体空间中,这意味着辅助光的设置是视点独立的。因此,一旦计算出辅助光,辅助光可用于为任意视点绘制PEL。因此,可以避免额外的计算费用。更重要地,当视点改变时,辅助光可提高PEL图示而不会导致在动画中的任何不连贯。
图4(a)-(f)说明示出在一个实施例中使用最优光照的在兔子眼睛区域上的PEL图示的改进的例子。
图4(a)说明当只应用主光时,兔子模型的眼睛区域。图4(d)显示基于在图4(a)中所示的兔子模型提取PEL。可以看到单独使用主光,由于眼睛周围的低对比度,不能很好地显示眼睛区域。
图4(b)说明兔子模型的眼睛区域,其中将覆盖眼睛区域且最大化对比度的点光额外应用到主光。图4(e)使用PEL说明如在图4(b)中所示的兔子模型的眼睛区域。可以看到,特征得到改进且相应的PEL很好地说明了眼睛。
图4(c)说明兔子模型的眼睛区域,其中将最小化在眼睛区域上的局部对比度的点光额外应用到主光。图4(f)使用PEL说明如在图4(c)中所示的兔子模型的眼睛区域。如所期望的,相应地减少特征线。
注意到照度的不连续可出现在阴影图(图4(b)和(c))中。借助如上所述的对PEL提取的局部连续的保证,实现了用户期望的改进的兔子眼睛的PEL图示,而不会在边界引入无意义的特征线(图4(e)和(f))。这也证明PEL不是从图像空间提取的。使用在图像空间的边缘检测算法,之前提到的照度不连续可导致可能不想要的边缘。这也解释了在图像处理中在PEL和边缘检测之间的一个重要区别。关于这一点,物体空间可指3D空间。图像空间可指2D空间。
下面,更具体地描述PEL提取的算法。
在3D物体的一般曲面上定义PEL,该PEL可以是三角网格、细分曲面或基于样条的曲面等。如背景技术,三角网格是在计算机图形学中的一种多边形网格。它包括通过它们的公共边或角连接的一组三角形(典型地以三维)。比起在单独表示的类似数量的三角形上,在分组成网格的三角形上,许多图形软件包和硬件装置能更有效地操作。这典型地因为计算机图形学在三角形的角的顶点上完成操作。关于这一点,为了证明PEL对3D物体的形状图示的有效性,在三角网格上给出PEL提取的实现,因为三角网格是在电影、游戏产业和科学可视化中的3D物体表现的最通用的形式。为了以其它形式表示的3D物体,许多开源工具和商业工具是可用的以用于将它们转换成三角网格。因而,可以注意到PEL不局限于用顶点表示的3D物体。
在每个顶点给定三角网格S和照度f,在一个实施例中,在S上的PEL提取包括在下面所描述的多个步骤。
第一步是可选的预处理。在该步骤中,平滑曲面S的法线n。
在第二步中,为每个顶点计算照度的梯度。
在第三步中,为每个顶点计算沿着梯度方向w的
Figure BDA00002122863600122
的方向导数。
在第四步中,检测过零点,而且过滤掉局部最小值,例如,
在第五步中,追踪过零点以得到PEL。
下面更具体地描述预处理。
预处理的目的是减少照度的噪音。在一个实施例中,对于PEL的光模型,主漫射光和辅助点光两者都是n·l的函数。因而,照度噪音可主要由几何噪音导致,例如曲面法线。在一个实施例中,应用双边滤波器以处理在S上的向量域n。对于每个顶点v,它的邻域可以表示为N(v)。双边滤波器可以定义为:
n &prime; ( v ) = &Sum; p &Element; N ( v ) W c ( | | p - v | | ) W s ( &rho; ( v , &rho; ) ) n ( p ) &Sum; p &Element; N ( v ) W c ( | | p - v | | ) W s ( &rho; ( v , p ) )
&rho; ( v , p ) = arccos ( | | n ( v ) &CenterDot; n ( p ) | | | | p - v | |
在其中Wc是具有参数δc的密闭平滑滤波器:
W c ( x ) = e - x 2 2 &delta; c 2
ρ(v,p)模拟v和p的相对曲率,并且Ws是具有参数δs的特征保持滤波器:
W s ( x ) = e - x 2 2 &delta; s 2
其不利于特征域的大的变化。实际上,发现该步骤对在此描述的改进用于扫描的模型的算法鲁棒性通常是有帮助的。在一个实施例中,直观方法用于设置参数δc和δs。在一个实施例中,用户在其曲面期望被平滑的网格上选择一个点,然后定义该点的邻域的半径r。在一个实施例中,参数可设置为δc=r/2,而且δs是ρ(v,p)在选定的邻域的标准差。
平滑曲面法线的优点在于它可能只计算一次,从而避免计算费用且保证为中等尺寸的网格实时实现PEL图示。在另一个实施例中,预处理可由在曲面上平滑照度f执行,一旦光照或视点条件改变,这可导致在每帧中的昂贵的平滑操作。
下面更具体地描述导数的计算。
PEL的定义涉及曲面照度的三阶导数,因而关键是有效和鲁棒地计算导数。在一个实施例中,每个顶点的导数通过平均邻接的每个面的导数计算。
如图示,给定在网格上定义的任意标量函数g,例如g:M->R,三角形T∈M,具有顶点Vi∈R3,并考虑相关的标量值gi=g(Vi)∈R,i=1,2,3。每个面的坐标系统定义在垂直面法线的平面上。在每个面坐标系统中,T的三个顶点表示为(xi,yi)∈R2,i=1,2,3。每个面的梯度可计算为:
&dtri; g = &PartialD; g &PartialD; x &PartialD; g &PartialD; y = 1 d r y 2 - y 3 y 3 - y 1 y 1 - y 2 x 3 - x 2 x 1 - x 3 x 2 - x 1 g 1 g 2 g 3
在其中
dT=(x1y2-y1x2)+(x2y3-y2x3)+(x3y1-y3x1)
其是T的有符号面积的两倍。
每个顶点的梯度考虑为其邻近面的梯度的加权平均。顶点坐标系统(U,V)定义在垂直顶点法线的平面中。
注意到顶点和面坐标系统通常是不同的。在一个实施例中,在计算每个面导数对每个顶点导数的贡献之前,应用坐标系统变换。
图5(a)说明顶点(x1,y1)、(x2,y2)和(x3,y3)。图5(b)说明面坐标系统。
在一个实施例中,局部顶点坐标系统首先旋转至与局部面坐标系统共面。然后,在顶点坐标系统中给定点(ui,vi)=uiUi+viVi,在局部面坐标系统中计算每个顶点梯度,通过
&dtri; g ( u i , v i ) = U i &CenterDot; &dtri; g ( x , y ) V i &CenterDot; &dtri; g ( x , y )
在一个实施例中,在为顶点的所有邻接面计算每个顶点的梯度之后,它们通过加权平均累加。在一个实施例中,使用了Voronoi区域权值wi,该区域设置为处于最接近顶点的区域的部分。最终,每个顶点的导数可计算为:
&dtri; g ( u , v ) = &Sigma; i w i &dtri; g ( u i , v i )
下面更具体地描述PEL的追踪。
在一个实施例中,一旦在每个网格顶点v上计算了照度变化的方向导数,检测网格边缘[v1,v2]是否包含过零点。令
Figure BDA00002122863600143
如果h(v1)·h(v2)<0,可使用线性插值以估计在边缘[v1,v2]上的过零点,而且p可认为是PEL顶点。如果在三角形的边缘上检测到两个PEL顶点,可使用直线段以连接两个顶点。线段可连接以形成分段线性PEL曲线。
在一个实施例中,PEL的强度可通过沿着线
&Integral; | | &dtri; f | | dS &ap; &Sum; i | | &dtri; f ( p i ) | | + | | &dtri; f ( p i + 1 ) | | 2 | | p i - p i + 1 | |
Figure BDA00002122863600145
的积分来测量。在一个实施例中,可定义阈值T以过滤掉具有强度低于T的噪音PEL。在一个实施例中,该阈值可由用户指定。
在科学和医疗应用中广泛使用体(volumetric)数据。体图示可以视为是应用于体可视化的非照片般逼真的绘制。在一个实施例中,PEL可使用等值曲面(isosurface)应用于体图示。等值曲面是等高线(isocontour)的三维模拟。它是在空间体积内代表常数值(例如压力,温度,速度,密度)的点的曲面。换而言之,它是域为3D空间的连续函数的水平集(levelset)。在医疗成像中,等值曲面可用于表示在三维CT扫描中特定密度的区域,其允许内部器官、骨骼或其它结构的可视化。具有PEL的体数据群的可视化包括两个阶段,称为等值曲面提取阶段和绘制阶段。在预处理阶段,采用标准移动立方体方法可首先提取用户感兴趣的等值曲面。在绘制阶段,可为每个等值曲面计算PEL,然后结合。为了进一步改进体图示,也可应用程式化的阴影以突出体数据群的重要细节和强调内部结构。
图6(a)-(f)说明用于体数据群的图示的PEL应用。图6(a)-(c)显示提取等值曲面并从不同的视点显示。图6(a)-(c)说明通过PEL(实线)表达的等值曲面。图6(d)-(f)说明提取的另一组等值曲面并从不同的视点显示。为了强调内部结构,仅在图6(a)-(f)中用虚线说明外部等值曲面。
比较存在的特征线,具有亮度变化的PEL的定义确保比较好的感知一致性。同时,由于照度依赖于视点位置,光模型,材料,纹理和几何特性,PEL也比存在的特征线更一般。更重要的是,PEL提供给用户更多的自由以通过操纵上述参数来控制期望的图示。尽管源于图像处理,PEL不同于图像空间边缘检测在于在物体空间中计算PEL。在图像空间中的特征线的基于像素的表示可遇到由于在绘制期间3D场景信息的丢失的低精度,而且不适于进一步的处理,例如程式化。相反,PEL不具有这些限制,因为PEL在物体空间中定义,因而用户可通过操纵光完全控制照度,从而反过来帮助用户实现期望的照度。
下面可概述根据一个实施例用PEL生成线条画的过程。
在第一步,设置具有初始光照条件的3D场景。换而言之,应用主光。在第二步,通过系统计算具有PEL的线条画。换而言之,提取PEL。在第三步,用户全局或局部地操纵光照。例如,用户可在3D物体上增加一个或多个辅助光。在第四步中,借由调整过的光设置可计算改进的线条画。然后该过程返回至第三步直到实现期望的线条画。
在一个实施例中,提供具有主光和辅助光的有效光设置。通过使用头灯作为主光,可自动地计算直观视点和光依赖的具有PEL的线条画,这已经在多个情况中是令人满意的。用于更复杂场景的更多的用户指定的线条画可通过增加的光照操纵实现。在本发明中提供用户友好的光照操纵。通过快速线性优化算法,也可自动计算优化光照设置。
在一个实施例中,使用特征线例如PEL的3D物体图示可通过基于与集群曲线对应的帧相干性,进一步应用于程式化动画的动态设置。关于这一点,术语帧指数字图片,而动画是多个帧或数字图片的视频序列。帧相干性或数字图片的相干性可指在视频序列内在不同数字图片之间的程式化的一致性。程式化是非照片般逼真的应用的特征。基于提取的线,例如PEL,3D物体的形状可用程式化的曲线表示,该程式化的曲线在宽度和纹理上摆动、改变,或在其它方面相比由借助自然媒介的手工绘制的曲线类似。在这些应用中,除了实现形状的感知一致性图示,图示的其它目标是实现视觉上美观的线条画。这广泛应用于TV和电影的卡通动画中。对于基于曲线的程式化动画的关键挑战是提供帧间的相干性,使得曲线随着时间在动画场景中平滑地改变。时间相干性问题是程式化绘制的主要挑战。这对于视点依赖的特征线,例如当视点改变时,其随着时间合并、分离、出现或消失的PEL,尤其是个挑战。
在一个实施例中,提供方法以生成具有帧相干性的程式化动画。在一个实施例中,帧相干性是基于通过曲线聚类方法得到的曲线的对应。特别地,动画可以是基于PEL的。但是,需要注意的是在此描述的方法不局限于应用到PEL,也可应用到具有从3D空间的3D物体提取的曲线的数字图片的任意视频序列。
图7说明具有曲线相干性的程式化动画过程的图表。在该例子中,过程是基于PEL曲线分组的。需要注意的是程式化动画的处理不局限于PEL曲线,而也可应用于其曲线从3D空间的3D物体提取的数字图片的任意序列。
在过程701,用于3D物体的图示为3D物体提取PEL,该3D物体将显示在数字图片的视频序列中。
在过程702,用户可通过设置曲线分组等的一些规则影响动画。
在过程703,基于在过程701中提取的PEL和在过程702中来自用户的输入,执行PEL曲线分组。
可选地,在过程704,也涉及基于线条画的知识。
在过程705,基于在过程703中的曲线分组和在过程704中的基于线条画的知识,建立PEL曲线对应。
在过程706,显示程式化动画,也称为数字图片的视频序列。
图8说明根据一个实施例包括步骤801、802、803和804的用于生成数字图片的方法。
在一个实施例中,方法包括接收多条曲线的每一条的三维表示的步骤801,其中每条曲线至少部分地代表三维物体的形状。如图示,为了在视频序列的多个数字图片中表示的3D物体,可提取多条曲线,例如PEL,以用于说明3D物体的形状。每条曲线可具有各自的3D信息,例如在3D空间的位置和在其中数字图片表示在视频序列中。每条曲线说明3D物体的形状的至少一部分。例如,如果3D物体是人头,每条曲线可说明人头的部分的形状,例如左眼。
在一个实施例中,方法进一步包括步骤802,用于使用由三维表示给出的三维信息将多条曲线分类至基于曲线的三维表示的至少一个曲线组。如图示,对于每个数字图片,如果曲线说明3D物体的相同、邻近或相似的部分,则曲线可能分组在一起。关于这一点,相似部分可指在3D物体上的预定义范围内或在几何变化的预定义范围内的部分,例如在3D物体上的曲率。例如,如果3D物体是人头,用于说明左眼的曲线可分组在一起。如另一图示,对于不同的数字图片,用于说明3D物体的相同或相似部分的曲线可分组在一起。例如,如果3D物体是人头,则说明在不同的数字图片中表示左眼区域的曲线可分组在一起。在特定的例子中,为了在不同的数字图片中的曲线分组,曲线组A可包括来自每个数字图片的一个或多条曲线。也可发生视频序列的至少一个数字图片,如果至少一个数字图片不包含涉及与组A相关的3D物体的部分的曲线,则没有曲线被分组到组A。
在一个实施例中,三维信息是关于在三维空间中的曲线的三维路径的信息。例如,三维信息可定义在3D空间中曲线的每个点的位置或坐标。
在一个实施例中,方法进一步包括步骤803,用于将每个曲线组与基于曲线组的曲线的图片元素相关联。如图示,对于一个数字图片的曲线组,曲线组可与3D物体(例如人头)的部分(例如左眼区域)相关联。作为进一步的图示,对于不同图片的曲线组,曲线组可与在不同数字图片中表示的3D物体(例如人头)的部分(例如左眼区域)相关联。
在一个实施例中,方法进一步包括步骤804,用于使用图片元素形成数字图片。例如,如果3D物体是人头,则可涉及不同的图片元素生成曲线组,如左眼区域,右眼区域,嘴部区域等。可基于与不同图片元素相关联的曲线组生成数字图片。例如,如果与左眼区域关联的曲线组由用户设置为以粗体样式显示,则与左眼相关联的曲线组可用粗体模式曲线表示。
在一个实施例中,换而言之,首先为3D物体提取曲线或特征线以在视频序列的不同数字图片中表达。每条曲线反映3D物体的形状的至少一部分。每条曲线在3D空间中都具有自身的信息,例如在3D空间中的位置或坐标。每条曲线也具有该曲线所涉及的视频序列的数字图片的它的信息。根据基于在每条曲线的3D空间的位置信息的某些规则对曲线分组。每个曲线组可关联于在一个数字图片中或在多个不同数字图片之间的3D物体上的相同或相似部分。每个曲线组可关联于3D物体的图片元素,例如左眼区域。对于每个数字图片,形成关联于一个图片元素的至少一个曲线组。基于与数字图片相关的图片元素生成数字图片。
图9说明用于生成数字图片的装置900。装置900包括接收单元901,分组单元902,关联单元903和生成单元904。
在一个实施例中,接收单元901配置为接收多条曲线的每一条的三维表示,其中每条曲线至少部分地表示三维物体的形状。
在一个实施例中,分组单元902配置为基于曲线的三维表示,使用由三维表示给出的三维信息将多条曲线分组成至少一个曲线组。
在一个实施例中,关联单元903配置为基于曲线组的曲线,将每个曲线组与图片元素相关联。
在一个实施例中,生成单元904配置为使用图片元素形成数字图片。
在一个实施例中,提供在其上具有记录的程序的计算机可读介质,其中该程序适于使计算机处理器执行用于生成数字图片的方法。在一个实施例中,计算机可读介质包括程序代码,所述程序使得处理器执行多条曲线的每一条的三维表示的接收,其中每条曲线至少部分地表示三维物体的形状。
在一个实施例中,计算机可读介质进一步包括程序代码,该程序使得处理器执行基于曲线的三维表示的使用由三维表示给出的三维信息的多条曲线到至少一个曲线组的分组。
在一个实施例中,计算机可读介质进一步包括程序代码,该程序使得处理器执行基于曲线组的曲线的每个曲线组与图片元素的关联。
在一个实施例中,计算机可读介质进一步包括程序代码,该程序使得处理器执行使用图片元素的数字图片的形成。
在一个实施例中,数字图片是数字图片的视频序列的数字图片。换而言之,数字图片是包括多个数字图片的动画的数字图片。换而言之,曲线可穿过视频序列的帧(例如视频序列的后续帧)分组。
在一个实施例中,多条曲线的至少两条曲线与数字图片的视频序列的不同数字图片相关联。
在一个实施例中,曲线的三维表示是在三维空间中的一组顶点。例如,曲线的三维表示可以是PEL。如之前所述的,PEL可以是3D物体上的一组顶点,在其上照度变化在它的梯度方向上达到局部最大。
在一个实施例中,顶点指定在三维空间的点,如果三维物体从预定的视点观察并且由至少一个预定光源照明,则三维物体的照度在该点处变化。例如,至少一个预定光源可以是主光。对另一个例子,至少一个预定光源可包括主光和至少一个辅助光。
下面更具体地描述PEL笔画聚类(stroke clustering)。
在一个实施例中,基于在此提供的曲线分组方法可生成程式化曲线,该分组方法是曲线的感知分组的基本的低级别操作,例如PEL。作为普通进程,在人类和计算机视觉两者中,低级别特征的分组在理解复杂场景中给出概括和有效的信息。例如,PEL曲线的分组可给出在发现在数字图片之间的曲线的对应中的高级别信息。在图像处理和计算机视觉的大多数之前的工作关注于点和直线的分段和分组。相比这些工作,曲线的分段和分组更加复杂,因为任意的曲线比点和直线具有更高等级的自由度。
在一个实施例中,曲线分组遵循以下描述的原则。比较基于点的图片分段,曲线分组显示在一些基本方面的困难,例如带有噪音或间隙的曲线,和在不同尺度中的不同结构。在曲线组中确定曲线的邻域和精确地计算两条任意曲线的相交和距离是困难的。随着用于程式化线条画的分组曲线的特定考虑,在一个实施例中,提供具有感知分组规则的关注以发现曲线群的方法,包括:
连续性。曲线的曲线性的评估考虑与曲线长度相关的间隙距离,以及接合(jointing)曲线的弯曲量。
平行度。潜在平行度的评估考虑在曲线之间的间距和曲线的重叠量的因素。
邻近性。在两条曲线的所有点之间的最小距离。
闭合性。趋向导致封闭曲线的曲线的可能性。
在一个实施例中,曲线首先可在聚类前在具有大的曲率位置分成短线段。例如,曲线可在具有比预定值更大的曲率的位置分成短线段。然后,单独地根据连续性、平行度、邻近性和闭合性的评估的线性组合,分组曲线线段。
在一个实施例中,多个参数的测量可用于确定在一个数字图片内或在不同数字图片之中的两条曲线是否应该分组在一起。在一个实施例中,这样的参数可包括:
1、在两条曲线之间的连续性
2、两条曲线的平行度
3、两条曲线的邻近性,以及
4、两条曲线导致封闭曲线的可能性。
下面具体描述上述参数的测量。
需要注意的是连续性、平行度、邻近性和两条曲线导致封闭曲线的可能性的参数的测量不局限于下面给出的特定的例子,而应该是能反映连续性、平行度、邻近性和两条曲线导致封闭曲线的可能性的参数的任意其它测量。
在一个实施例中,可基于相对于两条输入曲线(l1,l2)的长度的接合曲线(li)的长度和接合曲线的弯曲度计算连续性。在一个实施例中,接合曲线通过采样在两条输入曲线的端部的点而生成,然后计算插补这些点并连接两条输入曲线的B样条曲线。例如,假设曲线l1具有两端A和B,而且曲线l2具有两端C和D,其中端A相对于l1的另一端B更靠近l2,端C相对于l2的另一端D更靠近l1。然后通过采样在l1的端A和l2的端C之间的点,可生成接合曲线li。可确定具有接合曲线(Kmax)的最大曲率的接合曲线的弯曲,该弯曲指在具有最大曲率的接合曲线中的点的曲率。因而,连续性可定义为:
mc=li/(l1+l2)*Kmax                (7)
在一个实施例中,如果mc的值小于用户定义的阈值,则认为两条曲线是连续的。
图10说明两条曲线l1和l2的连续性的确定的例子,其中l1具有两个端点1001和1002,而且l2具有两个端点1003和1004。在这个例子中,相对于端点1002,l1的端点1001更靠近线l2,而且相对于端点1004,l2的端点1003更靠近线l1
为了确定曲线l1和l2是否是连续的,可生成接合曲线li。通过首先选择在曲线l1上靠近端点1001并且在曲线l2上靠近端点1003的采样点生成接合曲线li。在这个例子中,在曲线l1上(点1001和1005-1008)靠近端点1001,并且在曲线l2上(点1003和1009-1012)靠近端点1003分别选择5个采样点。基于选择的采样点,可生成插补这些采样点(点1001、1003和1005-1012)并且连接这两条曲线l1和l2的B样条曲线li
在一个实施例中,可使用等式(7)基于l1,l2,和li计算值mc。可比较计算的mc与预定的阈值。如果mc小于预定的阈值,则曲线l1和l2可认为是连续的。否则,曲线l1和l2可认为是断开的。
在一个实施例中,平行度的测量考虑在两条输入曲线之间的间距和两条曲线的重叠量的因素。图11说明两条曲线的平行度的确定。例如,具有长度分别为l1和l2的两条曲线可表示为B样条,并且可为具有相同参数值(例如t=0.1,0.2,0.3…0.5…1.0)的每条曲线采样一组点。然后线性插值这些两组采样点以生成第三组点。如图11中所示,第三组点用于在具有长度li的曲线l1和曲线l2之间生成B样条中间曲线。中间曲线可在具有t=0.5的点1100处分成两部分。第一部分li1的长度可表示为m1,第二部分li2的长度可表示为m2。将e1和e2表示为两条曲线分别和中间曲线的端点之间的距离。在一个实施例中,平行度可定义为:
mp=li/(l1+l2)*(1-R0)
在其中
R0=(m1+m2)/(m1+m2+e1+e2)
在一个实施例中,如果mp的值大于用户定义的阈值,则两条曲线可认为是平行的。
两条曲线的邻近性定义为在两条曲线的全部点之间的最小距离。例如,分别将pi,pj表示为两条曲线上的任一点,两条曲线的邻近性可定义为在两条曲线上的任意点之间的最小距离,如:
mD=min||pi-pj
在一个实施例中,如果mD的值小于用户定义的阈值,则两条曲线可认为是邻近的。
闭合性mO可定义为曲线趋向导致封闭曲线的可能性。例如,在两条输入曲线的端部采样点,然后计算插补这些点并连接这两条输入曲线的B样条曲线。例如,假设曲线li具有两端A和B,而且曲线l2具有两端C和D,其中端A相对于l1的另一端B,更靠近l2的端C,端B相对于l1的另一端A,更靠近l2的端D。然后在l1的端A和l2的端C之间可生成接合曲线li1,在l1的端B和l2的端D之间可生成另一条接合曲线li2。因而可以计算出沿着接合曲线的曲率的和。在一个实施例中,具有接合曲线的曲率mO的大的和的两条曲线可认为是断开的。例如,如果和大于用户定义的阈值,则两条曲线可认为是断开的。在一个实施例中,如果曲率mO的和小于用户定义的阈值,则两条曲线可认为是闭合的。
图12说明两条曲线l1和l2是否趋向于形成封闭曲线的确定,例如,两条曲线导致封闭曲线的可能性,其中曲线l1具有两端1201和1202,而且曲线l2具有两端1203和1204。
在本例子中,端点1201相对于曲线l1的另一端点1202,更靠近曲线l2的端点1203,并且端点1202相对于曲线l1的另一端点1201,更靠近曲线l2的端点1204。然后在曲线l1的端点1201和曲线l2的端点1203之间可生成接合曲线li1,在曲线l1的端点1202和曲线l2的端点1204之间可生成另一条接合曲线li2。例如,通过首先选择在曲线l1上靠近端1201和在曲线l2上靠近端1203的采样点可生成接合曲线li1。在本例子中,在曲线l1(点1201和1205-1208)靠近端点1201,在曲线l2(点1203和1209-1212)靠近端点1203分别选择5个采样点。基于选择的采样点,可生成插补这些采样点(点1201、1203和1205-1212)并且接合这两条曲线l1和l2的B样条曲线li1。类似地,通过首先选择在曲线l1靠近端1202和在曲线l2靠近端点1204的采样点可生成接合曲线li2。在本例子中,在曲线l1(点1202和1213-1216)靠近端点1202,并且在曲线l2(点1204和1217-1220)靠近端点1204分别选择5个采样点。基于选择的采样点,可生成插补这些采样点(点1202、1204和1213-1220)并且接合这两条曲线l1和l2的B样条曲线li2。在一个实施例中,可以计算沿着接合曲线li1和li2的曲率的和。在一个实施例中,可以将和与用户定义的阈值比较。在一个实施例中,如果曲率mO的和低于用户定义的阈值,则两条曲线可认为是封闭的。如果和大于用户定义的阈值,则两条曲线l1和l2可认为是断开的。
在一个实施例中,两条曲线至同一个组中的分组依赖于上述的所有参数mc,mp,mD,mO的测量。在一个实施例中,线性组合可用于计算整体分组值MA。用户可以调整线性组合的权值以强调特定的参数。在一个实施例中,当整体分组值大于用户定义的阀值时,输入曲线可分组至相同的组。
例如,MA可表达为:
MA=a*mc+b*mp+c*mD+d*mO            (8)
在其中a,b,c,d分别是mc,mp,mD,mO的权值。阈值TH可设置成默认值或可由用户设定。在一个实施例中,如果MA大于TH,则确定两条曲线在一个曲线组中。
在一个实施例中,权值a,b,c和d可设置为默认值或可例如由用户确定。在一个实施例中,权值a,b,c,d可能根据关于不同的参数mc,mp,mD,mO的重要性分别确定。例如,如果将连续性和平行度认为是重要参数,则相应的权值a和b可设置为某个非零值,而权值c和d可设置为零。另一个例子中,如果只将邻近性的一个参数认为是对于评估两条曲线是否应该分组在一起很重要,则相应的权值c可设置为某个非零值,而权值a,b和d可设置为零。在进一步的例子中,如果所有的参数mc,mp,mD,mO都认为是重要的,则权值a,b,c和d可分别根据每个参数的各自的重要性设置为某些非零值。
在一个实施例中,基于在两条曲线之间的连续性的测量、两条曲线的平行度的测量、两条曲线的邻近性的测量和两条曲线导致封闭曲线的可能性的测量中的至少一个,决定两条曲线是否分组到同一个曲线组。如图示,参考上面给出的MA的等式(8),权值a,b,c和d中的至少一个为非零值,从而基于mc,mp,mD和mO的至少一个参数确定MA
在一个实施例中,基于在两条曲线之间的连续性的测量、两条曲线的平行度的测量、两条曲线的邻近性的测量和两条曲线导致封闭曲线的可能性的测量中的至少一个和预定义的阈值的比较,决定两条曲线是否分组到同一个曲线组。例如,参考上面给出的MA的等式(8),a,b,c和d的权值中的至少一个设置为非零值。因此基于mc,mp,mD和mO的至少一个参数确定MA,而且MA进一步与预定义的阈值TH进行比较以确定两条曲线是否分组到同一个曲线组。
在一个实施例中,基于两条曲线之间的连续性的测量、两条曲线的平行度的测量、两条曲线的邻近性的测量和两条曲线导致封闭曲线的可能性的测量的至少两个的组合与预定义的阈值的比较,决定两条曲线是否分组到同一个曲线组。如图示,参考上面给出的MA的等式(8),a,b,c和d的权值中的至少两个设置为非零值。因此基于mc,mp,mD和mO中的至少两个参数确定MA,而且MA进一步与预定义的阈值TH进行比较以确定两条曲线是否分组到同一个曲线组。
在一个实施例中,该组合是在两条曲线之间的连续性的测量、两条曲线的平行度的测量、两条曲线的邻近性的测量和两条曲线导致封闭曲线的可能性的测量中的至少两个的加权和。如图示,mc,mp,mD和mO的参数分别由a,b,c和d加权(等式(8))。用户可根据两条曲线是否应该分组到同一个曲线组的评估的重要性设置每个参数的权值。在曲线分组不理想的情况下,在一个实施例中用户可进一步调整不同参数的权值。
在一个实施例中,在单独的数字图片中和在数字图片的视频序列的不同数字图片之间两者都执行曲线分组。在单独的数字图片中的曲线分组可有助于找到曲线的高级别结构,而在数字图片之间的分组有助于找到在视频序列内部的数字图片的对应。
当在3D空间运行时,额外的深度维度可给出曲线分组的进一步信息。
在一个实施例中,在数字图片之间的曲线分组设计用于找到曲线对应的目的。在动画中,在每个数字图片中的相应曲线可分组到单个组中。例如,这些曲线可位于相似的位置并具有相似的几何特性。关于这一点,相似的位置可指曲线的位置相互在预定义的范围内。相似的几何特性可指在曲线的曲率之间的区别可在预定义的范围内。借助于这些曲线组的信息,曲线风格和中间帧(inbetween frame)的插补可应用于不同的曲线组。
图13(a)-(c)说明不同数字图片的曲线分组的例子。
如可看到的,图13(a)-(c)示出在动画中的视频序列的三个不同数字图片中的旋转的人头。在图13(a),在第一数字图片中的曲线A和B说明脸的左眼。在第二数字图片13(b),只有曲线A1用于左眼的说明。在第三数字图片图13(c)中,曲线A2和B2用于说明左眼。在一个实施例中,作为对左眼的曲线分组的结果,两个曲线组可确定:即具有曲线A,A1,A2的一组和具有曲线B和B2的另一组。在一个实施例中,基于曲线分组,不同的风格可应用于在这两个组内的曲线。该实施例可有助于对3D物体的形状的理解,和帮助在视觉上实现具有程式化笔画的美观的动画。
由于在一些情况下完全自动的曲线分组可能不能确保满意的分组,在一个实施例中,可结合用户交互以在分组过程期间调整和修正曲线分组。例如,用户可调整在等式(8)中所示的a,b,c和d的权值。对于另一个例子,用户可调整MA的阈值TH。
在一个实施例中,曲线分组可为3D物体的结构提供高级别信息,这使得可加入语义信息以生成更优美的线条画。语义信息可赋予曲线含义,例如,其是人脸的眼睛或嘴巴。曲线分组可应用于广泛的应用中,在下面,曲线分组方法的有效性通过其在基于知识的线条画的应用和程式化的笔画动画中得到证实。
下面更具体地描述基于知识的线条画。
观测显示艺术家的线条画的线条可能不总是遵循物体表面的几何形状或光照。例如,在手绘线条画中,常常看到为了特定的表达目的的线条的夸张。这在一些传统的艺术形式中很明显,例如动画。这很容易被人们所理解,因为在物体上的一些共同知识表达在线条画中。
在一个实施例中,通过在绘图过程中加入模板和语义信息,为具有曲线的动画面部图示提供方法。在一个实施例中,该方法基于从3D物体提取的曲线的分组和具有严格限制的预定义的域。关于这一点,具有严格限制的域可指曲线组清楚地对应于预定义的元件的要求。例如,曲线组可包括在左眼区域的区域的曲线,并且曲线组可与预定义的元件的模板匹配,称为左眼区域。在一个实施例中,曲线是PEL。
在一个实施例中,提供基于知识的算法以在绘图过程中加入模板和语义信息。在一个实施例中,在将曲线分组后,每个曲线组都可匹配为预定义的元件。例如,曲线组可匹配于预定义的元件:左眼。预定义的元件的多个模板可能已经存储在系统中。在一个实施例中,可选择最匹配曲线组的预定义的元件的模板。在一个实施例中,每个曲线组可用选定的模板所替代。在一个实施例中,可将选定的模板进一步程式化,例如在粗体绘制模式中。在一个实施例中,选定的模板可转换或合成以适用于数字图片。以这种方式,可实现程式化的线条画。在这些线条画中的曲线可不遵循图片的特征,但是作为一个整体,线条画可能仍然是“准确的”和美丽的。该过程可以是可选的,而且它有助于在动画中应用程式化曲线,因为预定义的绘图可具有明确定义的曲线对应。
在一个实施例中,根据连续性、平行度等早先描述的规则自动地执行曲线分组。
在一个实施例中,基于知识的算法与视频序列内的所有数字图片一起运行。
在一个实施例中,可为多个区域,例如人脸、动物、建筑等建立预定义的模板数据库。
在一个实施例中,PEL曲线首先分组以表示包括眼睛、鼻子和嘴的有意义的元件。然后在库中可执行查找以发现预定义的线条画来匹配笔画群。代表脸部草图的不同风格的不同的匹配参数可用在该过程中。最后,PEL笔画群可由预定义用户绘图替代。
图14(a)-(c)说明具有从预定义的库生成的两种不同风格的线条画的例子。
图14(a)说明3D物体。基于在图14(a)中示出的3D物体,可提取例如表达3D物体的形状的PEL的曲线。图14(b)说明从笔画模板中以一种风格提取曲线的例子。图14(c)说明从另一个笔画模板以另一种风格提取曲线的例子。
下面更具体地描述曲线对应。
寻找为在数字图片之间的3D物体所提取的曲线(例如PEL)的对应(correspondence)和进化是基于曲线的程式化动画的关键。这可应用于平滑地插补曲线、以不同的风格中绘制连贯的艺术曲线以及通过在曲线空间的操作控制动画等。如上文提及的,这是一个具有挑战性的问题,特别是对PEL曲线。
在一个实施例中,曲线的对应基于曲线分组建立。在动画序列中,为所有的数字图片提取一组曲线,然后将其分到具有来自不同数字图片的曲线的小组中。在一个实施例中,通过将曲线投影到屏幕空间并在屏幕空间发现最接近的点,可找到在一个组中的曲线的点对应。关于这一点,屏幕空间可指2D空间。在3D空间中的3D物体的提取的曲线投影到2D空间以形成3D物体的2D图示。在以这种方式的坏分组情况下,如先前所述,可加入用户交互并且可学习该用户交互的一些规则且将其应用到进一步的曲线分组的过程中。
在一个实施例中,为数字图片的每个组建立对应。换句话说,对于一个数字图片,可为图片元素,例如左眼,确定一组曲线。然后为所有与在视频序列的不同的数字图片中的左眼相关联的组建立对应。
在一个实施例中,采用曲线分组,首先建立曲线组的对应,然后在一组内确定单条曲线的对应。在该分层匹配中发现曲线对应改进算法的有效性。如图示,参考图13,图13(a)-(c)说明视频序列的3D物体人头的3个不同的数字图片。与人头的左眼相关联的曲线组F可确定为包含曲线A,B,A1,A2和B2,其中曲线A,B,A1,A2和B2都用于说明左眼的形状。在一个实施例中,曲线组F可进一步分成3个子组。例如,与在第一帧中的左眼相关联的曲线子组F1可确定为包含曲线A和B。与在第二帧中的左眼相关联的曲线子组F2可确定为包含曲线A1。与在第三帧中的左眼相关联的曲线子组F3可确定为包含曲线A2和B2。在一个实施例中,因为曲线子组F1、F2和F3都关联于元件:左眼,在子组F1、F2和F3中间可建立对应。
在一个实施例中,在为曲线子组F1、F2和F3建立对应后,可确定单条曲线的对应。例如,为曲线子组F1、F2和F3,可确定曲线A、A1和A2是对应的曲线,因为曲线A、A1和A2都在人头的相似位置且共有相似的几何特性。类似地,曲线B和B2是对应的曲线。在一个实施例中,通过视频序列的不同数字图片,相同的风格可应用于对应曲线的相同组。
换而言之,在一个实施例中,关联于相同的图片元素(例如左眼)的不同数字图片的曲线可分组在一起。然后曲线组可分为子组,每个子组对应数字图片。进一步,基于在子组中的曲线可建立单条曲线的对应。在进一步的实施例中,基于单条曲线的对应可进一步确定点对应。在不同曲线子组、在曲线子组中的单条曲线和在单条曲线上的点的对应的建立可称为分层匹配过程。
图15说明分层匹配的例子。
在动画中,在如图15(a)所示的第一数字图片中,存在具有像素A和B的曲线S。在如图15(b)所示的第二数字图片中,存在曲线S'、S1和S2。通过分层匹配,可确定曲线组F以包括全部用于说明左眼的形状的曲线S、S'、S1和S2。进一步,对曲线组F,可为包含曲线S的帧1确定曲线子组F1,为包含曲线S'、S1和S2的帧2确定另一个曲线子组F2。在另外的步骤中,可确定单个曲线对应。例如,在曲线子组F1的曲线S可确定以对应于曲线子组F2中的曲线S',其中曲线S和S'位于左眼的相同位置并且共有相同的几何特性。
曲线对应可用于广泛的应用中,包括用于在中间的平滑曲线插补、用于程式化动画的各种风格的艺术笔画绘制和在曲线空间中的动画控制等。发现与曲线分组的曲线对应在用于不同应用的发展新颖的改进算法中给出了直观的暗示。
图16说明根据一个实施例的计算机1600。
在一个实施例中,计算机1600可包括处理器1601。在一个实施例中,计算机1600可进一步包括存储器1602。在一个实施例中,计算机1600可进一步包括输入1603,用于为多条曲线的每一个接收三维表示,其中每条曲线至少部分地表示三维物体的形状。在一个实施例中,计算机1600可进一步包括用户输入1604。在一个实施例中,计算机1600可进一步包括显示器1605。在一个实施例中,计算机1600可进一步包括代码读取单元1606,用于从另外的计算机可读介质中读取代码。例如,计算机1600的所有元件都通过计算机总线1607互相连接。
在一个实施例中,存储器1602在其上可具有存储的程序,其中该程序适于使处理器1601执行用于生成数字图片的方法,该存储器包括使处理器1601执行多条曲线的每一条的三维表示的接收的程序的代码,其中每条曲线至少部分地表示三维物体的形状;使处理器1601执行基于曲线的三维表示使用由三维表示给出的三维信息的多条曲线到至少一个曲线组的分组的程序的代码;使处理器1601执行基于曲线组的曲线的每个曲线组与图片元素的联系的程序的代码;和使处理器1601执行使用图片元素的数字图片的形成的程序的代码。
在一个实施例中,处理器1601读取在存储器1602上的程序以执行生成数字图片的程序。
在一个实施例中,处理器1601通过曲线表示输入1603获得曲线的3D表示。
在一个实施例中,处理器1601通过用户输入1604获得来自用户的输入。
在一个实施例中,程序代码可存储在另一个计算机可读介质中(未示出)。在这种情况下,处理器1601可通过代码读取单元1606从其它的计算机可读介质读取代码,并执行在此所述的生成数字图片的方法。
在一个实施例中,生成的数字图片在显示器1605上显示。
虽然参考特定实施例已经特别显示和描述了本发明,但本领域技术人员应当理解的是可从中作出在形式和细节上的各种变化而不脱离如所附权利要求所限定的本发明的范围。因而本发明的范围由所附权利要求指定,并且因此也将包含权利要求的等效意图和范围内带来的所有变化。
在本文中,引用下述文件:
1.Appel,“The notion of quantitative invisibility and the machinerendering of solids”in Proceedings of the 1967 22nd national conference
2.Gooch et al.“Interactive technical illustration”in Proceedings ofthe 1999 symposium on Interactive 3D graphics
3.Hertzmann and Zorin,“Illustrating smooth surfaces”inProceedings of Siggraph 2000
4.Kalnins et al.“WYSIWYG NPR:Drawing strokes directly on 3dmodels”in Proceedings of Siggraph 2002
5.Interrante et al.“Enhancing transparent skin surfaces with ridgeand valley lines”in IEEE Visualization 1995
6.Wilson and Ma,“Representing complexity in computer-generatedpen-and-ink illustrations”in Proceedings of NPAR 2004
7.Ni et al.“Multi-scale line drawings from 3D meshes”inProceedings of the 2006 symposium on Interactive 3D graphics
8.DeCarlo et al.“Suggestive contours for conveying shape”inProceedings of Siggraph 2003

Claims (17)

1.一种用于生成数字图片的方法,包括:
接收多条曲线的每一条的三维表示,其中每条曲线至少部分地表示三维物体的形状;
基于所述曲线的所述三维表示,使用由所述三维表示给出的三维信息将所述多条曲线分组成至少一个曲线组;
基于所述曲线组的曲线,将每个曲线组与图片元素相关联;
使用所述图片元素形成所述数字图片。
2.根据权利要求1的方法,其中所述数字图片是数字图片视频序列的数字图片。
3.根据权利要求2的方法,其中所述多条曲线的至少两条曲线与所述数字图片视频序列的不同数字图片相关联。
4.根据权利要求1至3任一项的方法,其中基于下列至少一个决定两条曲线是否分组至同一个曲线组:
在所述两条曲线之间的连续性的测量,
所述两条曲线的平行度的测量,
所述两条曲线的邻近性的测量,
所述两条曲线导致封闭曲线的可能性的测量。
5.根据权利要求4的方法,其中基于下列至少一个与预定义的阈值的比较决定两条曲线是否分组至同一个曲线组:
在所述两条曲线之间的连续性的测量,
所述两条曲线的平行度的测量,
所述两条曲线的邻近性的测量,
所述两条曲线导致封闭曲线的可能性的测量。
6.根据权利要求4的方法,其中基于下列至少两个的组合与预定义的阀值的比较决定两条曲线是否分组至同一个曲线组:
在所述两条曲线之间的连续性的测量,
所述两条曲线的平行度的测量,
所述两条曲线的邻近性的测量,
所述两条曲线导致封闭曲线的可能性的测量。
7.根据权利要求6的方法,其中所述组合是以下至少两个的加权和:
在所述两条曲线之间的连续性的测量,
所述两条曲线的平行度的测量,
所述两条曲线的邻近性的测量,
所述两条曲线导致封闭曲线的可能性的测量。
8.根据权利要求1至7中任一项的方法,其中曲线的所述三维表示是在三维空间中的一组顶点。
9.根据权利要求8的方法,其中所述顶点指定在三维空间中的点,如果所述三维物体从预定的视点观察并且由至少一个预定光源照亮,所述三维物体的照度在所述点处改变。
10.根据权利要求1至9中任一项的方法,其中所述三维信息是关于在三维空间中的所述曲线的三维路径的信息。
11.根据权利要求3的方法,其中将与图片元素相关联的每个曲线组进一步分为多个曲线子组,每个曲线子组与不同数字图片的相同图片元素相关联。
12.根据权利要求11的方法,进一步包括为要在所述数字图片中显示的每个图片元素设置文体模式。
13.根据权利要求12的方法,其中对于相同的图片元素,通过不同的数字图片为不同的曲线子组应用相同的文体模式。
14.根据权利要求11的方法,进一步包括为在曲线子组内的至少一条曲线设置文体模式。
15.根据权利要求14的方法,其中为在所述曲线子组内的至少一条曲线和在相同的曲线组内的所有其它曲线子组内至少一条对应的曲线应用相同的文体模式,其中所述至少一条对应的曲线指共有与具有所述至少一条曲线的所述三维物体相关联的相似的位置或相似的几何特性的曲线。
16.一种用于生成数字图片的装置,包括
接收单元,配置为接收多条曲线的每一条的三维表示,其中每条曲线至少部分地表示三维物体的形状;
分组单元,配置为基于所述曲线的所述三维表示,使用由所述三维表示给出的三维信息将所述多条曲线分组成至少一个曲线组;
关联单元,配置为基于所述曲线组的曲线,将每个曲线组与图片元素相关联;
生成单元,配置为使用所述图片元素形成所述数字图片。
17.一种具有记录在其上的程序的计算机可读介质,其中所述程序适于使计算机的处理器执行用于生成数字图片的方法,所述计算机可读介质包括:
使所述处理器执行多条曲线的每一条的三维表示的接收的所述程序的代码,其中每条曲线至少部分地表示三维物体的形状;
使所述处理器执行基于所述曲线的所述三维表示,使用由所述三维表示给出的三维信息的所述多条曲线到至少一个曲线组的分组的所述程序的代码;
使所述处理器执行基于所述曲线组的曲线的每个曲线组与图片元素的关联的所述程序的代码;
使所述处理器执行使用所述图片元素的所述数字图片的形成的所述程序的代码。
CN201080065336.6A 2010-01-12 2010-01-12 用于生成数字图片的方法和装置 Expired - Fee Related CN102792337B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/SG2010/000003 WO2011087451A1 (en) 2010-01-12 2010-01-12 Method, device, and computer readable medium for generating a digital picture

Publications (2)

Publication Number Publication Date
CN102792337A true CN102792337A (zh) 2012-11-21
CN102792337B CN102792337B (zh) 2016-01-20

Family

ID=44304511

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080065336.6A Expired - Fee Related CN102792337B (zh) 2010-01-12 2010-01-12 用于生成数字图片的方法和装置

Country Status (4)

Country Link
JP (1) JP5526239B2 (zh)
CN (1) CN102792337B (zh)
SG (1) SG182346A1 (zh)
WO (1) WO2011087451A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113409452A (zh) * 2021-07-12 2021-09-17 深圳大学 一种三维线条的生成方法、存储介质及系统
CN113781291A (zh) * 2020-05-21 2021-12-10 北京达佳互联信息技术有限公司 图像处理方法、装置、电子设备及存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9154763B2 (en) 2012-10-11 2015-10-06 Sony Corporation System and method for reducing artifacts caused by view-dependent lighting components
CN105894582A (zh) * 2016-03-29 2016-08-24 浙江大学城市学院 三维地质表面模型中的边界过滤数据处理方法
CN105931297A (zh) * 2016-03-29 2016-09-07 浙江大学 三维地质表面模型中的数据处理方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2974655B1 (ja) * 1998-03-16 1999-11-10 株式会社エイ・ティ・アール人間情報通信研究所 アニメーションシステム
US7586490B2 (en) * 2004-10-20 2009-09-08 Siemens Aktiengesellschaft Systems and methods for three-dimensional sketching
US7286131B2 (en) * 2005-05-26 2007-10-23 Microsoft Corporation Generating an approximation of an arbitrary curve
FR2907569B1 (fr) * 2006-10-24 2009-05-29 Jean Marc Robin Procede et dispositif de simulation virtuelle d'une sequence d'images video.

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113781291A (zh) * 2020-05-21 2021-12-10 北京达佳互联信息技术有限公司 图像处理方法、装置、电子设备及存储介质
CN113781291B (zh) * 2020-05-21 2024-01-23 北京达佳互联信息技术有限公司 图像处理方法、装置、电子设备及存储介质
CN113409452A (zh) * 2021-07-12 2021-09-17 深圳大学 一种三维线条的生成方法、存储介质及系统

Also Published As

Publication number Publication date
WO2011087451A1 (en) 2011-07-21
JP5526239B2 (ja) 2014-06-18
SG182346A1 (en) 2012-08-30
JP2013517554A (ja) 2013-05-16
CN102792337B (zh) 2016-01-20

Similar Documents

Publication Publication Date Title
US20240193834A1 (en) Techniques and Workflows for Computer Graphics Animation System
Lawonn et al. A survey of surface‐based illustrative rendering for visualization
US9142056B1 (en) Mixed-order compositing for images having three-dimensional painting effects
Born et al. Illustrative stream surfaces
CN108961373B (zh) 一种毛发渲染的方法及终端
CN108765550A (zh) 一种基于单张图片的三维人脸重建方法
Lu et al. Illustrative interactive stipple rendering
Rusinkiewicz et al. Line drawings from 3D models
Cignoni et al. A simple normal enhancement technique for interactive non-photorealistic renderings
CN101669146A (zh) 使用摄像机和电视监视器的三维物体扫描
CN102792337B (zh) 用于生成数字图片的方法和装置
JP3777149B2 (ja) プログラム、情報記憶媒体及び画像生成装置
CN113822981A (zh) 一种图像渲染方法、装置、电子设备及存储介质
US9589376B2 (en) Manipulation of splines based on a summary spline
Shesh et al. Efficient and dynamic simplification of line drawings
US9317967B1 (en) Deformation of surface objects
CN101300602A (zh) 草绘真实
Chen et al. Real-time artistic silhouettes rendering for 3D models
Buchholz et al. Realtime non-photorealistic rendering of 3D city models
Barbier et al. A framework for modeling, animating, and morphing textured implicit models
Seemann et al. Soft Transparency for Point Cloud Rendering.
Andersen et al. Height and tilt geometric texture
CN117274511B (zh) 一种包装领域的盒型3d预览系统及其方法
Martin et al. Rendering silhouettes with virtual lights
Li An automatic rendering method of line strokes for Chinese landscape painting

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160120