书法特定风格渲染的方法

文档序号:6606915阅读:123来源:国知局
专利名称:书法特定风格渲染的方法
技术领域
本发明涉及计算机数字书法生成,尤其涉及一种书法特定风格渲染的方法。
背景技术
计算机快速发展和普及的今天,为了书法艺术更广泛的应用于日常生活,数字化 书法创作应运而生。毛笔字形态变化丰富,视觉表现力强,是研究的热点。《计算机图形与应用》杂志1999年(IEEE Computer Graphics and Applications (S0272-1716),1999,19 (3) :74_81)公布的一种虚拟毛笔方法中引入弹性力 学理论,将弹簧的物理性质运用于笔毛的形变,考虑毛笔按压之时的笔毫位置和方向的变 化,构建了毛笔的三维模型。《计算机与图形》杂志2000年(Computer and Graphics, 2000, 24(1) 99-113)公布的方法中用简单的用三维倒圆锥模型建模毛笔,将笔画视为一系列密 集椭圆的叠加,椭圆主轴随毛笔运动而旋转,能够表现笔触的轮廓,但无法表现毛笔书写 过程中侧锋中锋等诸多重要技巧。《计算机图形论坛》杂志2002年(Computer Graphics Forum(S0167-7055), 2002, 21 (3) =299-308)公布的虚拟毛笔建模方法运用广义扫成法构 建“书写元”实体模型,并引进机器学习系统,模拟出逼真的书画效果,但计算过于复杂。 SIGGRAPH 2004年(SIGGRAPH 2004. USA ACM Press 2004)公布的方法中认为笔毛的整体 运动对个体具有很大影响,提出了参数化毛笔模型(PHB),抛开一些琐碎的细节,简化了模 型,取得很好的艺术效果。2004年《计算机图形与应用》(IEEE Computer Graphics and Applications (S0272-1716), 2004,10 :76_85)公布的虚拟毛笔模型中包含毛笔的几何模 型和动态模型,并在真实毛笔上安装硬件设备(Ultrasound Buzzer和Gyroscope)来感知 毛笔的三维空间位置和毛笔形态,需要而外的硬件支持并且使用起来并不是很自然。2004 年(Proceedings of the 2006 IEEE International Conference on Multimedia and Expo, Toronto, 2006 =2073-2076)公布的方法在毛笔字骨架提取的基础之上实现了一个基 于web的3D中国书法重现系统,较好的重现地了毛笔的书写过程,但用户不能根据需要书 写。

发明内容
本发明的目的是为克服上述现有方法不忠实于用户手写输入,没能充分展现某种 特定书法风格的特性等缺点,提供一种实时性强、具有特定书法风格的书法字渲染方法。书法特定风格渲染的方法包括以下步骤1)选择一个碑帖作为范本,在要抽取的笔画上面选取若干个点作为贝塞尔曲线的 端点,指定每一段贝塞尔曲线的阶数,调整贝塞尔曲线控制点的位置,使这些贝塞尔曲线组 成的闭合曲线与笔画轮廓重合,用贝塞尔曲线指定笔画的骨架,每个标准笔画最终由轮廓 控制点和骨架表示,将标准笔画按汉字笔画类型类组成标准笔画库;2)根据笔画的转折情况将笔画库中的标准笔画进行分段,没有转折的为一段笔 画,有一个转折的为两段笔画,有两个转折的为三段笔画,将相同笔画段数的笔画归为一
5类,构建笔画索引;3)构建包含汉字常用的偏旁部首的偏旁部首索引,手动为偏旁部首索引中的每一 偏旁部首的每一个笔画从步骤1)中的标准笔画库中选择笔画;4)使用九宫格为汉字的每个基本笔画设置判定的法则,实时捕获记录书写笔画, 识别笔画的基本类型;5)构建偏旁部首过滤器,从手写输入笔画序列中查找出偏旁部首,再通过步骤3) 中的偏旁部首索引从步骤1)的标准笔画库中找出相应的标准渲染笔画;6)将找出的标准笔画根据手写输入笔画的形态进行形变,将整个字的所有形变后 的笔画叠加组合后输出。所述的步骤4)包括将笔画的外包围盒均勻划分为九块,并画出水平和垂直中轴 线,称之为九宫格,用九宫格为汉字中的每一个笔画设置判定的法则,竖折折钩笔画用如下 法则判定 其中Ci表示笔画的端点和转折点,X和Y分别表示转折点的X和Y坐标值,Rij表 示九宫格中的第i行、第j列的格子,实时捕获手写输入,将输入汉字进行笔画分解,高斯平 滑笔画曲线,计算每个点的曲率,设置曲率的阈值,曲率大于阈值的为拐点,根据将手写笔 画分段,依据段数将笔画归类,挨个匹配对应类别的各个基本笔画,找出匹配的笔画类型, 最终为整个输入笔画序列的各个笔画打上类型标签。所述的步骤5)包括构建偏旁部首过滤器,偏旁部首过滤器包含一个偏旁部首列 表,列表将偏旁部首依据笔画数分类,记录每一个偏旁部首由哪一些笔画组成,利用九宫格 为每一个偏旁部首制定判定的法则,草字头判定法则如下
户4日风”代 &队,及
P1 G {i 02'^12}· 其中Pi表示笔画的端点和转折点,X和Y分别表示端点和转折点的X和Y坐标值, Rij表示九宫格中的第i行、第j列的格子,midX表示九宫格的中轴线,偏旁部首过滤器利用 最长匹配原则,从打好标签的手写输入笔画序列中查找出可能的偏旁部首,给定一个序列,先从中查找是否有笔画数为6的偏旁部首,如果没有再查找笔画数为5的偏旁部首,一直到 笔画数为2的偏旁部首,挨个匹配查找偏旁部首,直到找到合适的为止,再通过偏旁部首索 引对应的项,从笔画库中找出相应的标准渲染笔画;剩下的孤立笔画从步骤2)的笔画索引 中挨个检索得到相应的标准渲染笔画。 所述的步骤6)包括步骤5)中取出的标准渲染笔画的骨架有N-I段,包含2个端 点和N-I个拐点(Ctl, C1, ···(;),将每一段平均分割为10小节,第i段有9个分割点Bi = (Pi,0,Pi,Γ·· Pi,8),整个骨架的节点序列为 P = (C0, B0, C1, B1,
'CN^IJBMJCN);步骤 4)将每
一个手写输入笔画依据拐点(C1 对于第i段有9个分割点Bi' Pi nP,- ,1 = P,- ? P-
)分割成N-I段,将每一小段分割为10段, -P^8'),使得 ICiPiJ = ICi' Pi,/ |,
P,·
,IP1- .rC,·+-, I 一 IP1-C1.
,而(Pi
.Pi,6' MfPi
PM

之间的线段平均划分为6段,手写笔画的节点序列为q = (C0' ,B0',C1',B/,…CN_/,Bn-/,C/ );对于标准渲染笔画中的每一个控制点V,运
用公式'计算形变后的位置ν',f;计算如下
X(V)HV-A+
/ =Σ^4,
A = w,.
P丨V-p.I-^Jl--(ν-.P·}P, = Pi --P”4 = <ii -Σ簡^ Σ9
<1- =■
Wj = 其中丄是-维向量的运算符,(χ,γ) ι= (-y,x);根据形变后的控制点重新绘
制笔画轮廓并填充轮廓区域,将所有的形变笔画重叠绘制于一张图像上输出。本发明与现有技术相比具有的有益效果1.该方法计算量小、实时性强,能够在手写输入完成时同时输出渲染结果;2.该方法能够较好渲染书法作品,渲染结果具有指定的碑帖的特定风格;3.该方法渲染出的字可以不同尺度的缩放而不会发生大的扭曲和形变。


图1 (a)是传统碑帖中的字的示意图;图1(b)是本发明的用贝塞尔曲线抽取出的轮廓示意图;图1(c)是本发明的笔画骨架示意图;图2(a)是本发明的特殊九宫格示意7
图2(b)是本发明的笔画“竖折折钩”的判定示意图;图2(c)是本发明的草字头的判定示意图;图3是本发明的“万”字的整个渲染流程图;图4(a)是本发明的手写输入示意图;图4(b)是本发明的渲染结果示意图。
具体实施例方式书法特定风格渲染的方法包括以下步骤1)选择一个碑帖作为范本,在要抽取的笔画上面选取若干个点作为贝塞尔曲线的 端点,指定每一段贝塞尔曲线的阶数,调整贝塞尔曲线控制点的位置,使这些贝塞尔曲线组 成的闭合曲线与笔画轮廓重合,用贝塞尔曲线指定笔画的骨架,每个标准笔画最终由轮廓 控制点和骨架表示,将标准笔画按汉字笔画类型类组成标准笔画库;2)根据笔画的转折情况将笔画库中的标准笔画进行分段,没有转折的为一段笔 画,有一个转折的为两段笔画,有两个转折的为三段笔画,将相同笔画段数的笔画归为一 类,构建笔画索引;3)构建包含汉字常用的偏旁部首的偏旁部首索引,手动为偏旁部首索引中的每一 偏旁部首的每一个笔画从步骤1)中的标准笔画库中选择笔画;4)使用九宫格为汉字的每个基本笔画设置判定的法则,实时捕获记录书写笔画, 识别笔画的基本类型;5)构建偏旁部首过滤器,从手写输入笔画序列中查找出偏旁部首,再通过步骤3) 中的偏旁部首索引从步骤1)的标准笔画库中找出相应的标准渲染笔画;6)将找出的标准笔画根据手写输入笔画的形态进行形变,将整个字的所有形变后 的笔画叠加组合后输出。所述的步骤4)包括将笔画的外包围盒均勻划分为九块,并画出水平和垂直中轴 线,称之为九宫格,用九宫格为汉字中的每一个笔画设置判定的法则,竖折折钩笔画用如下 法则判定 其中Ci表示笔画的端点和转折点,X和Y分别表示转折点的X和Y坐标值,Rij表 示九宫格中的第i行、第j列的格子,实时捕获手写输入,将输入汉字进行笔画分解,高斯平 滑笔画曲线,计算每个点的曲率,设置曲率的阈值,曲率大于阈值的为拐点,根据将手写笔 画分段,依据段数将笔画归类,挨个匹配对应类别的各个基本笔画,找出匹配的笔画类型, 最终为整个输入笔画序列的各个笔画打上类型标签。
8旁部首过滤器,偏旁部首过滤器包含一个偏旁部首列 表,列表将偏旁部首依据笔画数分类,记录每一个偏旁部首由哪一些笔画组成,利用九宫格 为每一个偏旁部首制定判定的法则,草字头判定法则如下 P0.X < midX,
P1 e {U}·其中Pi表示笔画的端点和转折点,X和Y分别表示端点和转折点的X和Y坐标值, Rij表示九宫格中的第i行、第j列的格子,midX表示九宫格的中轴线,偏旁部首过滤器利用 最长匹配原则,从打好标签的手写输入笔画序列中查找出可能的偏旁部首,给定一个序列, 先从中查找是否有笔画数为6的偏旁部首,如果没有再查找笔画数为5的偏旁部首,一直到 笔画数为2的偏旁部首,挨个匹配查找偏旁部首,直到找到合适的为止,再通过偏旁部首索 引对应的项,从笔画库中找出相应的标准渲染笔画;剩下的孤立笔画从步骤2)的笔画索引 中挨个检索得到相应的标准渲染笔画。所述的步骤6)包括步骤5)中取出的标准渲染笔画的骨架有N-I段,包含2个端 点和N-I个拐点(Ctl, C1, ···(;),将每一段平均分割为10小节,第i段有9个分割点Bi = 汜,。斤,广义,8),整个骨架的节点序列为?= (C0, B0, C1, B1,…Cn-PBn^Cn);步骤4)将每 一个手写输入笔画依据拐点(C。',C1,…C/ )分割成N-I段,将每一小段分割为10段, 对于第 i 段有 9 个分割点 Bi' = (Pi,/,Pi,/ -Pi,,‘),使得 ICiPiJ = ICi' Pi,/ |, ΙΡ ,οΡ ,ιΙ = IPi,0' Pi,/ ,IPiA8I = IPi,/ Pi,8' I,lPi,8ci+1l = IPw' Ci+1',而(Pi, 2',...Pi,6' Mfpi,/和Pi,/之间的线段平均划分为6段,手写笔画的节点序列为q = (C0' ,B0',C1',B/,…CN_/ ,Bn^1',C/ );对于标准渲染笔画中的每一个控制点V,运
用公式νΛν,计算形变后的位置ν',f;计算如下
9 其中ι是-维向量的运算符,(χ,y) ι= (-y, χ);根据形变后的控制点重新绘
制笔画轮廓并填充轮廓区域,将所有的形变笔画重叠绘制于一张图像上输出。实施例如附图3和4所示,给出了书法特定风格渲染的实例。下面结合本发明的方法详 细说明该实例实施的具体步骤,如下(1)选用柳公权《玄米塔》碑作为范本,用贝塞尔曲线手动拟合抽取字帖中的笔画 轮廓,在要抽取的笔画上面选取若干个点作为贝塞尔曲线的端点,指定每一段贝塞尔曲线 的阶数,调整贝塞尔曲线控制点的位置,使这些贝塞尔曲线组成的闭合曲线与笔画轮廓重 合,用贝塞尔曲线指定笔画轮廓,每个标准笔画最终由轮廓控制点和骨架表示,将标准笔画 按汉字笔画类型类组成标准笔画库;(2)将步骤(1)得到的笔画库中的笔画根据笔画的转折情况将笔画库中的标准 笔画进行分段,没有转折的为一段笔画,有一个转折的为两段笔画,有两个转折的为三段笔 画,将有相同笔画段数的笔画归为一类,构建笔画索引;(3)构建偏旁部首索引,包含汉字常用的偏旁部首,手动为每一个偏旁部首从步骤 (1)标准笔画库中选择合适的笔画组合用于渲染,将每一个偏旁部首中的每个笔画都映射 到笔画索引中的一项;(4)用九宫格为汉字中的每一个笔画设置判定的法则,实时捕获用户手写输入汉 字“万”,根据输入笔画点的连续性,将汉字“万”进行笔画分解,得到手写输入笔画序列,利 用笔画判定法则识别“万”字各个笔画的类型;(5)构建偏旁部首过滤器,从步骤(4)的笔画序列中查找偏旁部首“草字头”和 “曰”字,再通过步骤(3)中的偏旁部首索引从步骤(1)的标准笔画库中找出相应的标准渲 染笔画,剩下的笔画再从步骤(1)的标准笔画库中找出相应的标准渲染笔画;(6)将步骤5)中找出的标准笔画根据手写输入笔画的形态进行形变,将整个字的 所有形变后的笔画叠加组合后输出。本实例的运行结果在附图4中显示,用户手写输入的是一个笔画粗细一致的硬笔 字,系统将其渲染为具有特定风格的毛笔字;由于笔画库中的标准笔画是从唐代柳公权的《玄米塔碑》中抽取出的,如图1所示,所以渲染出的结构很明显带有“柳体”字的风格特征。
权利要求
一种书法特定风格渲染的方法,其特征在于包括以下步骤1)选择一个碑帖作为范本,在要抽取的笔画上面选取若干个点作为贝塞尔曲线的端点,指定每一段贝塞尔曲线的阶数,调整贝塞尔曲线控制点的位置,使这些贝塞尔曲线组成的闭合曲线与笔画轮廓重合,用贝塞尔曲线指定笔画的骨架,每个标准笔画最终由轮廓控制点和骨架表示,将标准笔画按汉字笔画类型类组成标准笔画库;2)根据笔画的转折情况将笔画库中的标准笔画进行分段,没有转折的为一段笔画,有一个转折的为两段笔画,有两个转折的为三段笔画,将相同笔画段数的笔画归为一类,构建笔画索引;3)构建包含汉字常用的偏旁部首的偏旁部首索引,手动为偏旁部首索引中的每一偏旁部首的每一个笔画从步骤1)中的标准笔画库中选择笔画;4)使用九宫格为汉字的每个基本笔画设置判定的法则,实时捕获记录书写笔画,识别笔画的基本类型;5)构建偏旁部首过滤器,从手写输入笔画序列中查找出偏旁部首,再通过步骤3)中的偏旁部首索引从步骤1)的标准笔画库中找出相应的标准渲染笔画;6)将找出的标准笔画根据手写输入笔画的形态进行形变,将整个字的所有形变后的笔画叠加组合后输出。
2.根据权利要求1所述的一种书法特定风格渲染方法,其特征在于所述的步骤4)包 括将笔画的外包围盒均勻划分为九块,并画出水平和垂直中轴线,称之为九宫格,用九宫 格为汉字中的每一个笔画设置判定的法则,竖折折钩笔画用如下法则判定C| .JC < Cq .-Ar,Cj .X < C*2C^ .X < (22C< C^-^iC0 e {氏(),^oi , ^02 },C2 E {^02’尺12},-C3 ^ {及20,^21,^22}·其中Ci表示笔画的端点和转折点,X和Y分别表示转折点的X和Y坐标值,Rij表示九宫 格中的第i行、第j列的格子,实时捕获手写输入,将输入汉字进行笔画分解,高斯平滑笔画 曲线,计算每个点的曲率,设置曲率的阈值,曲率大于阈值的为拐点,根据将手写笔画分段, 依据段数将笔画归类,挨个匹配对应类别的各个基本笔画,找出匹配的笔画类型,最终为整 个输入笔画序列的各个笔画打上类型标签。
3.根据权利要求1所述的一种书法特定风格渲染方法,其特征在于所述的步骤5)包 括构建偏旁部首过滤器,偏旁部首过滤器包含一个偏旁部首列表,列表将偏旁部首依据笔 画数分类,记录每一个偏旁部首由哪一些笔画组成,利用九宫格为每一个偏旁部首制定判 定的法则,草字头判定法则如下 P\ e {灭20,及2l}, Pl e {灭10’ 及2。},< P3g{Ru,R21], Zj4 g (U02}, P5 e {R2l,R22), P1 G {^02^12}·其中Pi表示笔画的端点和转折点,X和Y分别表示端点和转折点的X和Y坐标值,Rij 表示九宫格中的第i行、第j列的格子,midX表示九宫格的中轴线,偏旁部首过滤器利用最 长匹配原则,从打好标签的手写输入笔画序列中查找出可能的偏旁部首,给定一个序列,先 从中查找是否有笔画数为6的偏旁部首,如果没有再查找笔画数为5的偏旁部首,一直到笔 画数为2的偏旁部首,挨个匹配查找偏旁部首,直到找到合适的为止,再通过偏旁部首索引 对应的项,从笔画库中找出相应的标准渲染笔画;剩下的孤立笔画从步骤2)的笔画索引中 挨个检索得到相应的标准渲染笔画。
4.根据权利要求1所述的一种书法特定风格渲染方法,其特征在于所述的步骤6)包 括步骤5)中取出的标准渲染笔画的骨架有N-I段,包含2个端点和N-I个拐点(Ctl, C1,… Cn),将每一段平均分割为10小节,第i段有9个分割点Bi = (Pi,0,Pi^Pii8),整个骨架的 节点序列为P = (C0, B0, C1, B1,…CV1,Bm, Cn);步骤4)将每一个手写输入笔画依据拐点 (C0' ,C1'…C/ )分割成N-I段,将每一小段分割为10段,对于第i段有9个分割点Bi' =(Pi,/ ,Pi,/ ...Pi,/ ),使得 ICiPiJ = ICi' PiV , IPii0PiaI = IPi,o' Pi,/ UPi, A8I = IPi,/ PiV ,IPwCwI = IPii8' ci+1',而(Pi,2',…Pi,6')将Pia'和Pi,/ 之间的线段平均划分为6段,手写笔画的节点序列为q= (C/ , B0' , C1' , B1'…CV1‘, Bn_/,Cn');对于标准渲染笔画中的每一个控制点V,运用公SvJ^v'计算形变后的位置 ν',fr计算如下 其中丄是一个二维向量的运算符,(x,y)i= (_y,x);根据形变后的控制点重新绘制笔画轮廓并填充轮廓区域,将所有的形变笔画重叠绘制于一张图像上输出。
全文摘要
本发明公开了一种书法特定风格渲染的方法。它是采用贝塞尔曲线从特定的碑帖中抽取笔画,按照汉字笔画类别分类创建笔画库,构建笔画索引和偏旁索引,使用特殊九宫格判定识别手写输入汉字的基本类型,建立偏旁部首过滤器从手写输入笔画序列中查找偏旁部首,从笔画库中取出相应的标准笔画,将标准笔画根据手写输入笔画进行形变,将渲染后的毛笔字输出。本发明可以将手写的硬笔字渲染为具有指定碑帖的风格的毛笔字,计算量小,实时性强,渲染结果具有一定的审美价值。
文档编号G06T11/00GK101916451SQ20101024225
公开日2010年12月15日 申请日期2010年7月30日 优先权日2010年7月30日
发明者俞凯, 吴江琴, 庄越挺, 张振庭 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1