一种基于圆域b样条曲线的风格化手绘生成方法与系统的制作方法

文档序号:6380160阅读:221来源:国知局
专利名称:一种基于圆域b样条曲线的风格化手绘生成方法与系统的制作方法
技术领域
本发明属于计算机辅助动画技术领域和基于草图的交互界面与建模技术领域,具体涉及一种基于圆域B样条曲线的风格化手绘生成方法与系统。
背景技术
手绘草图是人类自然的思维外化的媒介,手绘也是几乎每一个画师认为的最友好的创作方式。追求接近纸笔体验的手绘交互界面一直是计算机图形学和人机交互领域的热点课题之一。目前,虽然已有不少计算机辅助二维绘画系统支持多种效果的草图绘制,但是这些软件往往难以兼得手绘的矢量化与风格化。手绘草图的存储方法可以分为矢量存储和位图存储两种。矢量存储中笔画线是基于采样点经过函数运算而求得的。这种拟合生成的手绘线相对于位图存储的手绘线可节省 大量的存储空间,并且放大时不会产生失真,此外对曲线的修改与插值运算也更容易实现。矢量存储方法中,采样点之间的连接方式可大致分为直线和曲线两种。直线连接各个采样点所形成的手绘线即是输入手绘线的分段线性近似,这种方法在连接点处往往不太自然。采样点间曲线连接的方法有多种,可采用Hermite曲线,贝赛尔曲线,B样条曲线等多种曲线形式进行连接。目前,B样条曲线表示方法借助其诸多优势特性,已经成为了曲线造型领域的主流。目前二维手绘笔画的风格化处理方法大致分为4类I)基于骨架笔画的风格化处理;2)基于物理模型模拟的风格化处理;3)重复绘制特色图元的风格化处理;4)基于样本学习的风格化处理。这些方法可以单独使用也可相互结合,但只有与基于骨架笔画的风格化处理方法相结合才能可以保证曲线的矢量特性。而目前利用骨架笔画的风格化表示方法中效果多不逼真,或骨架线大多未采用最先进的B样条曲线。正因为目前二维风格化笔触的表现方法中往往很难兼得矢量化,本发明提出了一种基于圆域B样条曲线的风格化手绘生成方法与系统,较为出色的兼得了风格化和矢量化两种特性,从而可与二维辅助中间帧动画系统等进行有效整合。圆域B样条曲线基于传统的B样条曲线,从圆域贝塞尔曲线延续而来。1998年QunLin和J. G. Rokne提出了圆域贝塞尔曲线,并讨论了圆域贝塞尔曲线的一些基本性质,如圆域贝塞尔曲线在旋转等几何变换的过程中误差域保持不变,仅需一个点和一个表示半径长度的实数即可表示一个控制点等等。圆域B样条不仅继承了圆域贝塞尔曲线的全部优点,且又具有圆域贝塞尔曲线所不具备的如“局部可调性”等优势特点。基于圆域B样条曲线表示的艺术化笔触,一方面能满足二维手绘笔画的高效存储、传输、插值和编辑,另一方面圆域B样条也非常适于风格化表示。

发明内容
针对现有技术中存在的问题,本发明的目的在于提供一种基于圆域B样条曲线的风格化手绘生成方法与系统。本发明中手绘线将圆域B样条曲线作为核心骨架,并基于该圆域B样条曲线进行风格化处理,这使得手绘线兼得了风格化与矢量化两种特性,从而可与二维辅助中间帧动画系统等进行有效整合。本发明中用户可以设置圆域B样条曲线阶数、插入节点密度、采样点间隔距离、圆域半径限值、笔刷纹理,噪声函数类型与参数,颜色,透明度等参数,并可对绘制结果进行交互编辑。本发明还非常重视实时性,从而保证了用户在手绘的过程中获得良好的交互体验。本发明的上述目的是通过如下的技术方案予以实现的。一种基于圆域B样条曲线的风格化手绘生成方法,如图I所示,包括如下步骤。(I)各项参数的设定。各项参数可以进行不同程度的封装,也可以对用户全部开放。如果各项参数完全对各类用户开放,则可能会对普通用户造成很大障碍。如果对各项参数进行一定程度的封装,则有效地避免了上述问题。参数中插入节点密度是指节点矢量 中的插值密度,密度越高采样点间插值的点越多,密度越低采样点间插值的点越少。(2)以手绘形式输入笔画。本发明支持不同的输入设备以手绘的形式输入笔画。这些输入设备既可以是能够获得压感级数的高级输入设备,也可以是鼠标或电容/电阻屏幕等较低端的输入设备。正因为本发明对输入设备无严格的限制,所以本发明既可以部署在网页上,也可以形成客户端程序部署于电脑、平板电脑或者手机上。(3)实时的手绘线点采样与圆域半径采样。由于计算圆域B样条曲线需要点位置坐标和圆域半径,所以需要对这两个参数进行采样。本发明采用了以下三种方法以使得采样结果更为理想。a.设置采样点的采样间隔距离。系统根据设定的采样点间隔距离参数来进行点采样,当绘制点不是笔画最后一点时始终计算该点与上一采样点间的距离,如果距离小于采样点间隔距离则不予采样,如果大于采样点间隔距离则予以采样,如果绘制点是笔画最后一点时无论是否大于采样点间隔距离均予以采样。由于此距离阀值的设置,方法避免了输入设备默认的点采样速率过高所造成的点采样冗余和过多采样点所造成的运算量、存储量激增。b.采用多种圆域半径采样算法。为了使得拟合的圆域B样条曲线上点的圆域半径的采样与插值结果更符合用户主观感受,系统实现了多种圆域半径采样方法。c.设置圆域半径限值参数。方法中该参数包括整体限制笔画各点圆域半径最大值与最小值的参数和单独限制笔画初始点或结束点圆域半径大小的参数。整体限制笔画各点圆域半径最大值与最小值的参数可以有效的控制手绘曲线的粗细,从而达到模拟钢笔、毛笔等不同粗细笔触的效果。单独限制笔画初始点或结束点圆域半径大小的参数可以使得笔画形成笔锋,从而使得风格化效果更为理想。(4)实时的圆域B样条曲线计算与基于该曲线的风格化。方法可以根据笔画上采样点实时插值生成拟合的圆域B样条曲线,并根据笔刷纹理绘制曲线上各个采样点与插值点圆域内的内容,内容的颜色和透明度由所设参数决定。同时方法可以通过设置的噪声函数与参数对绘制笔画进一步处理,包括对圆域内绘制纹理的噪声处理;对手绘线上点位
置的噪声处理。(5)交互编辑。由于圆域B样条曲线具有“局部可调”特性,本方法允许用户在绘制完成后对指定曲线上某一采样点的位置或圆域半径进行更改,甚至增加或者删除采样点。方法也支持用户在绘制完成后对指定曲线的笔刷纹理、噪声函数类型与参数、颜色、透明度进行更改。(6)存储。由于笔画基于矢量曲线,所以方便存储且节省空间,从而便于了用户进行撤销,恢复等操作。步骤(3)的b点中多种圆域半径采样方法包括以下两种。I、针对可以获取压感级数的输入设备,系统会将压力参数转化为圆域半径参数当用户在该点按压力度较大时,对应点的圆域半径也较大,反之,当用户在该点按压力度较小时,对应点的圆域半径也较小。2、针对无法获取压感级数的输入设备,系统可以根据以下方法来计算点的圆域半径参数基于样本学习和轨迹分析来计算点的圆域半径,基于两个采样点的时间戳间隔来计算点的圆域半径,这两种方法可以单独使用也可相互结合。基于样本学习和轨迹分析来计算点的圆域半径的方法是指首先将用户绘制的 笔画轨迹进行分析,计算特征矢量,之后用该特征矢量与样本库中轨迹记录进行比对,找到最为类似的轨迹后提取样本中该轨迹所记录的笔姿信息,系统利用这一信息生成在这种笔姿下最为合理的曲线圆域半径变化。基于两个采样点的时间戳间隔来计算点的圆域半径方法是指当前记录点的圆域半径线性相关于当前记录点时间戳与上一记录点时间戳的差值,当两个采样点间的时间戳差值较小时,说明笔画经过速度较快,这时采样点的圆域半径就较小;反之,当两个采样点间的时间戳差值较大时,说明笔画的经过速度较慢,所以圆域半径也较大。与现有技术相比,本发明具有如下显著优点与创新点。I、利用圆域B样条曲线将手绘线的矢量化与风格化较为完美的结合,可应用于计算机辅助动画中间帧绘制系统。2、利用噪声函数和笔刷纹理等实现了艺术化效果的丰富。3、系统中参数可以进行不同程度的封装,从而简化了参数设置的复杂度。4、科学的点采样与点圆域半径采样算法,使得交互更自然合理,且提升了系统的自动化程度。5、充分的交互编辑功能,便于用户对绘制结果的编辑完善。6、良好的实时性。


图I为基于圆域B样条曲线的风格化手绘生成系统流程图。
具体实施例方式为了使本技术领域的技术人员更好的理解,下面结合附图和实施例对本发明所涉及方法作进一步的详细说明。发明中所涉及P次圆域B样条曲线定义为
< O > (E) = Σ『=0』\ ρCu) < Ρ·;η > a S u < I 。其中< Pi; η >= (x E Λ2Ilx — P“玄rj。Pi是控制点,也是圆域的中心,巧是该控制点的圆域半径。Niip(U)表示第i个P次(p+1阶)B样条基函数,{\p(u)}定义在非周期(并且非均匀)节点矢量U={uQ, U1, · · · , uj上。U是一个单调不减的实数序列,即Ui ( ui+1,i=0,1,· · ·,m-1。在这一序列中前
P+1个节点值为a,后P+1个节点值为b。U。
p-i-1 p + 1基函数\p(u)为了便于计算机运算采用了目前广泛采用的deBoor递推定义
其他
权利要求
1.一种基于圆域B样条曲线的风格化手绘生成方法,其特征在于,所述方法包括1)手绘线将圆域B样条曲线作为核心骨架;2)系统可实时间隔记录圆域B样条曲线的采样点位置参数与圆域半径参数并实时生成相应的圆域B样条曲线;3)系统基于核心的圆域B样条曲线进行实时的风格化处理;4)用户可以预先设置各项参数,并可对绘制结果进行交互编辑。
2.根据权利要求I所述的方法,其特征在于,方法4)中所述各项参数是指圆域B样条曲线阶数、插入节点密度、采样点间隔距离、圆域半径限值、笔刷纹理、噪声函数类型与参数、颜色、透明度。
3.根据权利要求I所述的方法,其特征在于,方法4)中所述各项参数可以进行不同程度的封装,也可以对用户全部开放。
4.根据权利要求I所述的方法,其特征在于,方法2)中所述间隔记录是由采样点间隔距离参数决定的系统根据设定的采样点间隔距离参数来进行点采样,当绘制点不是笔画最后一点时始终计算该点与上一采样点间的距离,如果距离小于采样点间隔距离则不予采样,如果大于采样点间隔距离则予以采样,如果绘制点是笔画最后一点时无论是否大于采样点间隔距离均予以采样。
5.根据权利要求I所述的方法,其特征在于,方法2)中所述的采样点圆域半径参数受到设置参数中圆域半径限值的限制,并且采样点圆域半径参数有多种计算方法,包括1)针对可以获取压感级数的输入设备,系统会将压力参数转化为圆域半径参数当用户在该点按压力度较大时,对应点的圆域半径也较大,反之,当用户在该点按压力度较小时,对应点的圆域半径也较小;2)针对无法获取压感级数的输入设备,系统可以根据以下方法来计算点的圆域半径参数基于样本学习和轨迹分析来计算点的圆域半径,基于两个采样点的时间戳间隔来计算点的圆域半径,这两种方法可以单独使用也可相互结合。
6.根据权利要求5所述的方法,其特征在于,计算方法2)中所述基于样本学习和轨迹分析来计算点的圆域半径的方法是指首先将用户绘制的笔画轨迹进行分析,计算特征矢量,之后用该特征矢量与样本库中轨迹记录进行比对,找到最为类似的轨迹后提取样本中该轨迹所记录的笔姿信息,系统利用这一信息生成在这种笔姿下最为合理的曲线圆域半径变化。
7.根据权利要求5所述的方法,其特征在于,计算方法2)中所述基于两个采样点的时间戳间隔来计算点的圆域半径方法是指当前记录点的圆域半径线性相关于当前采样点时间戳与上一采样点时间戳的差值,当两个采样点间的时间戳差值较小时,说明笔画经过速度较快,这时采样点的圆域半径就较小;反之,当两个采样点间的时间戳差值较大时,说明笔画的经过速度较慢,所以圆域半径也较大。
8.根据权利要求2所述的方法,其特征在于,所述圆域半径限值参数包括1)整体限制笔画各点圆域半径最大值与最小值的参数;2)单独限制笔画初始点或结束点圆域半径大小的参数。
9.根据权利要求I所述的方法,其特征在于,方法3)中所述风格化处理包括1)根据笔刷纹理绘制笔画上各个采样点与插值点圆域内的内容,内容的颜色和透明度由所设参数决定;2)通过设置的噪声函数与参数对绘制笔画进一步处理对圆域内绘制纹理的噪声处理;对手绘线上点位置的噪声处理。
10.根据权利要求I所述的方法,其特征在于,方法4)中所述的交互编辑包括1)对指定曲线上某一采样点的位置或圆域半径的更改;2)对指定曲线的笔刷纹理、噪声函数类型与参数、颜色、透明度的更改;3)在指定曲线上增加或者删除采样点。
全文摘要
本发明公开了一种基于圆域B样条曲线的风格化手绘生成方法与系统,属于计算机辅助动画技术与基于草图的交互界面与建模技术领域。本发明包括1)手绘线将圆域B样条曲线作为核心骨架;2)系统可实时间隔记录圆域B样条曲线的采样点位置参数与圆域半径参数并实时生成相应的圆域B样条曲线;3)系统基于核心的圆域B样条曲线进行风格化处理;4)用户可以预先设置各项参数,并可对绘制结果进行交互编辑。该系统及其相关技术使手绘线兼得了风格化与矢量化两种特性,从而可与二维辅助中间帧动画系统等进行有效整合。本发明实施例操作简单,效果出色,鲁棒性强,完全可以应用于商业。
文档编号G06T11/80GK102938157SQ20121042733
公开日2013年2月20日 申请日期2012年10月31日 优先权日2012年10月31日
发明者郑博研, 费广正 申请人:郑博研
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1