专利名称:一种计算机模仿汉字手写笔迹的方法
技术领域:
本发明涉及计算机艺术与美学以及人工智能领域,尤其涉及一种计算机模仿 汉字手写笔迹的方法。
背景技术:
已经有大量的工作来模拟人类的艺术思维,并进一步建立计算机智能系统以
解决真实世界里的问题。在中文字方面,1995年的Proceedings of the International Conference on Computer Processing of Oriental Languages (ICCPOL)会议论文集 (文章标题"Chinese glyph generation using character composition and beauty evaluation metrics")公布了 一个使用启发式的方法来尝试定量评估中文字体美感 的问题他们定义了在汉字写作里的四条规则,并实现到了他们基于规则的美 学评分模块中;这一模块简单地对四条规则逐一计算相应的分数,并得到他们 的加权和。2005年的IEEE Intelligent Systems杂志(文章标题"Automatic generation of artistic Chinese calligraphy",以下简称文献IS2005)刊登了一个中 国艺术书法的自动生成系统。但是,他们的工作主要关注在使用基于约束的推 理来生成格式化的中文字体,而几乎没有关注到这些生成结果如何具有美感。
为了获得更好的计算机中文字体生成结果,也为了尝试对美学做定量计算, 我们通过学习基本数值关系背后的训练集从而实现了汉字美观度评分。许多在 工作中使用过专家系统的人知道,高级的专家规则并不总能正常工作;而有时 这并不一定是由于专家系统本身的知识盲点,或者问题根本无法总结。因此我 们觉得,我们基于学习技术的数据驱动方法可以提供一种比人类专家的大脑评 测更好的机器评价能力。
在绘画方面,计算机图形学领域中同样有一些研究自动绘画创作的工作, 但这大都是在给定一幅照片的基础上完成的。其他也有人探索了结合人工智能 和人机交互技术来创作绘画风格的动画,如2006年ACM学报ACM Trans. Graph 干'J登的文章"Animating Chinese paintings through stroke-based decomposition,,用笔 划分解的方法来实现动态的绘画。在视觉艺术领域之外,计算机音乐是另一个 应用人工智能技术来进行或协助创作的成功方向。在2007年的国际人工智能联 合大会(IJCAI2007)上,有一个独立的专题叫音乐人工智能(MUSIC-AI2007) 来专门研讨这一话题。值得注意的是,对于计算机音乐的研究包括自动音乐创 作与音乐评价,这与我们在中文字体上的思路比较相似。此外还有其他大量的
研究工作如故事创作,可信执法官,互动式故事,等等,都旨在捕捉美学的
可计算性。
发明内容
本发明的目的是克服现有技术的不足,提供一种计算机模仿汉字手写笔迹 的方法。
计算机模仿汉字手写笔迹的方法包括以下步骤
1) 预先对已有个人手写体汉字样本进行笔划分解与分类,对每个用户写过 的每个笔划、部首、整字以及字体内部空间结构都进行了统一的参数化,并连 同几种常用字体,建立个人手写字体数据库;
2) 对待模仿汉字,在其对应的楷体字上做笔划分解以及参数化;
3) 逐一根据个人手写字体数据库构造待模仿汉字的各个部首或笔划;
4) 根据个人手写字体数据库模仿待模仿汉字的内部空间结构,将模仿得到 的各个部首或笔划拼接成完整的汉字,作为模仿字迹结果;若有多个备选方案, 则择一作为模仿字迹结果。
所述的预先对已有个人手写体汉字样本进行笔划分解与分类,对每个用户 写过的每个笔划、部首、整字以及字体内部空间结构都进行了统一的参数化, 并连同几种常用字体,建立个人手写字体数据库步骤
(1) 对每个已有的个人手写体汉字图像,对其做细化,笔划分解,提取出其 轨迹与书写宽度特征,以参数向量的形式表示每个汉字;
(2) 根据步骤(l)所得的参数向量,将每个汉字按整字、部首、笔划组织成层 次式的树形结构表示;树形结构中的每一个节点都表示了个人书写笔迹中的一 个单字或部首或笔划,每个单字或部首的各个子部分都是其对应节点的子节点;
(3) 在步骤(2)所得树形结构中,对每一节点的单字或部首,计算出其内部空 间结构的参数化矩阵。
所述的对每个已有的个人手写体汉字图像,对其做细化,笔划分解,提取 出其轨迹与书写宽度特征,以参数向量的形式表示每个汉字步骤
a) 对汉字图像做细化处理,以获得该字的骨架图像;
b) 将该字与其标准楷书字体做笔划匹配,用启发式搜索的方法找出骨架各 部分与标准笔划的一一对应关系,完成骨架上的笔划分解;
c) 对每笔划上的各骨架点,以其为圆心画椭圆,使该椭圆尽量大而又不包 含任何原字体图像上的空白部分,该笔划的所有椭圆区域总和即为笔划分解所 得的图像轮廓;
d) 将所有椭圆的长短轴、圆心坐标列为一个矩阵,即为该字体的参数向量。 所述的在步骤(2)所得树形结构中,对每一节点的单字或部首,计算出其内
部空间结构的参数化矩阵步骤-
e) 对每个单字或部首的各个子部分部首或笔划作出其范围矩形,即在二 维平面上包含该字部分且边框平行于x轴与y轴的面积最小矩形;
f) 计算每两个子部分的范围矩形之间的相互空间位置,即对每两个范围矩 瓜;;哲。/门^t:ik亚nx古"tm "t^i古茲加ZV ^G^旦^"66HH水县ZVSi1^41 dl d"-
设该单字或部首共有n个子部分,则得到一个nxn的矩阵,其中每个矩阵元素为 一个二元组(Bh,Bv),即该单字或部首的内部空间结构的参数化矩阵。
所述的对待模仿汉字,在其对应的楷体字上做笔划分解以及参数化步骤
(4) 对该待模仿汉字,如权利要求3所述,对其做细化,笔划分解,提取出 其轨迹与书写宽度特征,以参数向量的形式表示每个汉字;
(5) 对该待模仿汉字,如权利要求4所述,计算出其内部空间结构的参数化 矩阵。
所述的逐一根据个人手写字体数据库构造待模仿汉字的各个部首或笔划步
(6) 枚举该汉字所有可能的部首级与笔划级的子部分划分方案;
C7)对步骤(6)中的每一种子部分划分方案,对方案中的各个子部分,在个人 手写字体数据库中查找该子部分是否在该个人已有笔迹中出现;若有,则选出 所有该子部分的笔迹作为候选,若已有笔迹不足5 10个,则随机以常用字体 的该子部分补足;
(8) 为步骤(7)中的每个子部分的每个候选,计算其子部分仿写可靠度;若该 候选笔迹来源于该个人,则该候选的子部分仿写可靠度为1,否则为0;
(9) 为步骤(6)中的每一种子部分划分方案,计算其仿写可靠度;设按该方案, 待仿写汉字由n个子部分构成,则该方案的仿写可靠度 乂=^1八1+"^+...+乂11^,其中^^2,...^分别为该方案下各个子部分的子部分 仿写可靠度,Al,A2,…,An为在待仿写汉字的标准楷体字中,各个子部分范围矩 形所占面积在整字范围矩形所占面积的比例;
(10) 为每一种子部分划分方案选出仿写可靠度最高的一组仿写结果。 所述的根据个人手写字体数据库模仿待模仿汉字的内部空间结构,据此将
模仿得到的各个部首或笔划拼接成完整的汉字,作为模仿字迹结果;若有多个 备选方案,则择一作为模仿字迹结果步骤
(11) 预先在标准楷体字体中,将所有汉字按照结构分类,分类包括独体 结构、左右结构、上下结构、内外结构、左中右结构、上中下结构;
(12) 对待模仿汉字,在该个人已写过的字中,査找该汉字是否被其写过; 则将所有该人写过的该汉字笔迹的内部空间结构参数矩阵作为候选;
(13) 若该汉字未曾被该人写过,则在该个人已写过的字中,査找出所有与 待模仿汉字属同一结构分类的汉字;
(14) 对步骤(13)已找出的汉字,计算每个汉字与其对应在各个常用字体上的 字体相似度;两个字体间的字体相似度定义为在放縮字体使得两个字体的范 围矩形面积一样时,两个字体的字迹部分的重合面积占范围矩形面积的比例; 对每一常用字体,取所有所求字体相似度的平均值作为该常用字体与待仿写人 字迹的总体相似度;
(15) 取总体相似度最大的常用字体,按照待模仿汉字在该常用字体中的内 部结构参数矩阵,将如步骤(10)所述的各个部首或笔划的仿写结果组合成整字, 作为该字的仿写输出。
本发明与现有技术相比具有的有益效果 (1 )实现了高度自动化的笔迹仿写,大大减少了其中原本繁琐的人工操作;
(2) 从汉字的笔划形状与空间结构关系上直接分析与保存,更加本质的抓 住了个人笔迹的潜在特征,使仿写结果更为合理;
(3) 选择部首与笔划的策略更加理性合理,使仿写字迹更加接近本人的笔迹。
图1是本发明所述系统的实施例流程图; 图2(a)是汉字样本字体; 图2(b)是图2(a)中字体的细化结果; 图2(c)是图2(a)中字体的"几何图";
图3是本发明所述笔划分解及汉字参数化的流程示例图3(a)是汉字样本字体;
图3(b)是图3(a)的"几何图";
图3(c)是图3(a)的对应标准字体,即正楷字体;
图3(d)是图3(a)在骨架上的笔划分解结果;
图3(d)是图3(a)的最终笔划分解结果;
图4是本发明所述利用用户交互界面协助笔划分解及汉字参数化的流程示
例图4(a)是汉字样本字体;
图4(b)是图4(a)的"几何图";
图4(c)是图4(a)的标准字体,即正楷字体;
图4(d)是图4(a)的自动分解结果,彩色笔划表示在自动分解成功的笔划; 图4(e)是用户通过交互界面在字体上勾勒的剩余笔划草图; 图4(f)是根据用户草图得到的骨架上的笔划匹配结果; 图4(g)是综合图4(d)和图4(f)所示结果后的笔划骨架; 图4(h)是图4(a)的最终笔划分解结果;
图5是手写字体数据库中,两个汉字字体以树型结构表示的示例图6是汉字手写笔迹模仿结果的一些示例,其中第l、 3行分别是两个不同 个人的手写笔迹,第2、 4行分别是本发明所述系统通过该个人其他手写字迹来 模仿得到的仿写结果;
图7是汉字手写笔迹模仿结果的一些示例,其中前4行是用作建立个人手 写字体数据库的个人手写笔迹样例,后4行是利用前4行的笔迹样例应用本发 明所述实施例系统得到的仿写结果。
具体实施例方式
计算机模仿汉字手写笔迹的方法包括以下步骤
1) 预先对已有个人手写体汉字样本进行笔划分解与分类,对每个用户写过 的每个笔划、部首、整字以及字体内部空间结构都进行了统一的参数化,并连 同几种常用字体,建立个人手写字体数据库;
2) 对待模仿汉字,在其对应的楷体字上做笔划分解以及参数化;
3) 逐一根据个人手写字体数据库构造待模仿汉字的各个部首或笔划;
4) 根据个人手写字体数据库模仿待模仿汉字的内部空间结构,将模仿得到 的各个部首或笔划拼接成完整的汉字,作为模仿字迹结果;若有多个备选方案, 则择一作为模仿字迹结果。
所述的预先对已有个人手写体汉字样本进行笔划分解与分类,对每个用户 写过的每个笔划、部首、整字以及字体内部空间结构都进行了统一的参数化, 并连同几种常用字体,建立个人手写字体数据库步骤
(1) 对每个已有的个人手写体汉字图像,对其做细化,笔划分解,提取出其 轨迹与书写宽度特征,以参数向量的形式表示每个汉字;
(2) 根据步骤(l)所得的参数向量,将每个汉字按整字、部首、笔划组织成层
9
次式的树形结构表示;树形结构中的每一个节点都表示了个人书写笔迹中的一 个单字或部首或笔划,每个单字或部首的各个子部分都是其对应节点的子节点;
(3) 在步骤(2)所得树形结构中,对每一节点的单字或部首,计算出其内部空 间结构的参数化矩阵。
所述的对每个已有的个人手写体汉字图像,对其做细化,笔划分解,提取 出其轨迹与书写宽度特征,以参数向量的形式表示每个汉字步骤
a) 对汉字图像做细化处理,以获得该字的骨架图像;
b) 将该字与其标准楷书字体做笔划匹配,用启发式搜索的方法找出骨架各 部分与标准笔划的一一对应关系,完成骨架上的笔划分解;
c) 对每笔划上的各骨架点,以其为圆心画椭圆,使该椭圆尽量大而又不包 含任何原字体图像上的空白部分,该笔划的所有椭圆区域总和即为笔划分解所 得的图像轮廓;
d) 将所有圆的长短轴、圆心坐标列为一个矩阵,即为该字体的参数向量。 所述的在步骤(2)所得树形结构中,对每一节点的单字或部首,计算出其内
部空间结构的参数化矩阵步骤
e) 对每个单字或部首的各个子部分部首或笔划作出其范围矩形,即在二 维平面上包含该字部分且边框平行于x轴与y轴的面积最小矩形;
f) 计算每两个子部分的范围矩形之间的相互空间位置,即对每两个范围矩 形计算它们在水平、竖直方向上的重叠部分,设得到的两个量分别为Bh、 Bv; 设该单字或部首共有n个子部分,则得到一个nxn的矩阵,其中每个矩阵元素为 一个二元组(Bh,Bv),即该单字或部首的内部空间结构的参数化矩阵。
所述的对待模仿汉字,在其对应的楷体字上做笔划分解以及参数化步骤
(4) 对该待模仿汉字,如权利要求3所述,对其做细化,笔划分解,提取出 其轨迹与书写宽度特征,以参数向量的形式表示每个汉字;
(5) 对该待模仿汉字,如权利要求4所述,计算出其内部空间结构的参数化 矩阵。
所述的逐一根据个人手写字体数据库构造待模仿汉字的各个部首或笔划步
(6) 枚举该汉字所有可能的部首级与笔划级的子部分划分方案;
(7) 对步骤(6)中的每一种子部分划分方案,对方案中的各个子部分,在个人 手写字体数据库中查找该子部分是否在该个人已有笔迹中出现;若有,则选出 所有该子部分的笔迹作为候选,若已有笔迹不足5 10个,则随机以常用字体
的该子部分补足;
(8) 为步骤(7)中的每个子部分的每个候选,计算其子部分仿写可靠度;若该 候选笔迹来源于该个人,则该候选的子部分仿写可靠度为1,否则为O;
(9) 为步骤(6)中的每一种子部分划分方案,计算其仿写可靠度;设按该方案, 待仿写汉字由n个子部分构成,则该方案的仿写可靠度 X=xlAl+x2A2+...+xnAn,其中xl,x2,…,xn分别为该方案下各个子部分的子部分 仿写可靠度,八1,八2,...^11为在待仿写汉字的标准楷体字中,各个子部分范围矩 形所占面积在整字范围矩形所占面积的比例;
(10) 为每一种子部分划分方案选出仿写可靠度最高的一组仿写结果。 所述的根据个人手写字体数据库模仿待模仿汉字的内部空间结构,据此将
模仿得到的各个部首或笔划拼接成完整的汉字,作为模仿字迹结果;若有多个 备选方案,则择一作为模仿字迹结果步骤
(11) 预先在标准楷体字体中,将所有汉字按照结构分类,分类包括独体 结构、左右结构、上下结构、内外结构、左中右结构、上中下结构;
(12) 对待模仿汉字,在该个人已写过的字中,査找该汉字是否被其写过; 则将所有该人写过的该汉字笔迹的内部空间结构参数矩阵作为候选;
(13) 若该汉字未曾被该人写过,则在该个人已写过的字中,査找出所有与 待模仿汉字属同一结构分类的汉字;
(14) 对步骤(13)已找出的汉字,计算每个汉字与其对应在各个常用字体上的 字体相似度;两个字体间的字体相似度定义为在放縮字体使得两个字体的范 围矩形面积一样时,两个字体的字迹部分的重合面积占范围矩形面积的比例; 对每一常用字体,取所有所求字体相似度的平均值作为该常用字体与待仿写人 字迹的总体相似度;
(15) 取总体相似度最大的常用字体,按照待模仿汉字在该常用字体中的内 部结构参数矩阵,将如步骤(10)所述的各个部首或笔划的仿写结果组合成整字, 作为该字的仿写输出。
如图1所示,本发明所述的实施例系统包括个人书写笔迹样例10、笔划分 解与参数化20、手写字体数据库建立30、笔划与部首仿写40、字体空间结构模 仿50、个人笔迹仿写结果60。
个人书写笔迹样例10:该部分包括多个该个人笔迹的字体图像;在本实施例中, 所有的字体图像都被分离成了一个个的单字,然后将它们归一化成同一尺寸的 二值黑白图像(长宽均为300像素点);其示例如图2A所示。
笔划分解与参数化20:在本实施例中,该部分包括以下步骤
(A) 从字体图像中提取其结构特征,其步骤详述如下(参见图2A、图2B、 图2C):
1) 对汉字图像101做细化(Thi皿ing)处理,以获得该字的骨架图像;本实施 例应用了 ACM学报在1994年所公布的一个图像细化算法("A noniterative thinning algorithm" y4CM TraraaWora ow Ma^e附加'ca/ Sq/hvare, 20(1 ):5-20,
1994);其示例如图2B所示;
2) 从骨架图像中提取"特征点"("特征点"的定义参考IEEE学报1999年公布 的一篇文章"Identification of fork points on the skeletons of handwritten Chinese characters" rraws"Wo"s o" _Pa#m2Mflc/w'"e /"fe〃/ge"ce (PAMI) 21(10):1095-1100, 1999,以下简称文献PAMI99),这些特征点将把整个骨架分 割成若干条曲线段;
3) 对每条曲线段都用多条首尾相连的直线段来近似,具体步骤如下对每一 条未被直线段取代的曲线段AB,设A、 B分别是其两端端点;计算以曲线段 AB上的某一点C为顶点的夹角ACB,当角ACB最大时的角度值小于一个预定 值(如135度),则将曲线段AB分割成AC, CB两段;否则以直线段连接AB 两点,取代原有的曲线段AB;该步骤不断进行直至所有曲线段均被直线段所取 代;
4) 由一系列直线段及其端点构成的图被称为该字体的"几何图"(geometric graph);对"几何图"做修正和剪枝;本实施例应用了文献PAMI99中使用的骨架 图修正技术;最终得到的"几何图"示例如图2C所示;
(B) 在步骤(A)中所述汉字字体与其标准字体间计算出一个最佳的笔划匹 配,从而完成笔划分解,其步骤详述如下(参见图3):
1) 对步骤(A)所述字体的标准字体重复步骤(A),得到该标准字体的"几 何图";并假设标准字体的笔划分解结果已经预知;
2) 在步骤(A)中所述字体的"几何图"与其标准字体的"几何图"间,计算出 一个最佳的笔划匹配结果;本实施例应用了《模式识别》杂志于2001年公布的 一篇文章("Model-based stroke extraction and matching for handwritten Chinese character recognition".及ecogwY/o", 34(12):2339-2352, 2001)中所述启发 式搜索的方法来计算出"几何图,,上的笔划间 一一对应关系;
3) 将"几何图"上以多条直线段表示的各笔划轨迹,转化为在原字体轮廓上的 笔划分解结果,其具体方法为对各笔划上的各直线段上的每一点,以其为圆
心画椭圆,使该椭圆尽量大而又不包含任何原字体图像上的空白部分(即在原 字体的黑白图像上,该椭圆区域内的所有像素点均为黑色),该笔划的所有椭圆 区域总和即为笔划分解所得的图像轮廓;
(C)对与标准字体形态相差较大的字体,对步骤(B)中无法完成匹配的部 分笔划,使用一个交互式的用户界面来协助笔划分解,其步骤详述如下(参见
图4):
1) 用户通过交互式的用户界面来为字体描绘其骨架草2) 根据用户草图来修改由标准字体而得的"几何图";本实施例将步骤(2)中 未完成匹配的部分笔划在标准字体"几何图"中均由用户草图的对应部分所替代;
3) 重复步骤(B),重新计算笔划间的最佳匹配方案,从而完成笔划分解; (D)对完成笔划分解的字体,将其参数化,以向量的形式表达;本实施例采用了 2005年IEEE Intelligent System杂志中的一篇文献Automatic generation of artistic Chinese calligraphy中的汉字参数化方法,每个字体都等价的用一个矩阵在向量 空间中表示。
手写字体数据库建立30:如图5所示,在本实施例中对已有个人手写体汉字样 本,并连同几种常用字体,建立个人手写字体数据库;将每个汉字按整字、部 首、笔划组织成层次式的树形结构表示;树形结构中的每一个节点都表示了个 人书写笔迹中的一个单字或部首或笔划,每个单字或部首的各个子部分都是其 对应节点的子节点;
对每一节点的单字或部首,计算出其内部空间结构的参数化矩阵
1) 对每个单字或部首的各个子部分部首或笔划作出其范围矩形,即在二 维平面上包含该字部分且边框平行于x轴与y轴的面积最小矩形;
2) 计算每两个子部分的范围矩形之间的相互空间位置,即对每两个范围矩 形计算它们在水平、竖直方向上的重叠部分,设得到的两个量分别为Bh、 Bv; 设该单字或部首共有n个子部分,则得到一个nxn的矩阵,其中每个矩阵元素为 一个二元组(Bh,Bv),即该单字或部首的内部空间结构的参数化矩阵。 笔划与部首仿写40:在本实施例中,该部分包括以下步骤
1) 对待仿写汉字,对其正楷字体做笔划分解与参数化20,并计算出其内部 空间结构的参数化矩阵;
2) 通过其正楷字体,枚举该汉字所有可能的部首级与笔划级的子部分划分 方案,如图5(a)中的"行"字,其可能的子部分划分方案包括Po, PlP2, PlP5P6, P3P4P2, P3P4P5P6共五种; 3) 对每一种子部分划分方案,对方案中的各个子部分,在手写字体数据库 建立20中得到字体数据库中査找该子部分是否存在,选出所有该子部分的笔迹 作为候选;
4) 为每个子部分的每个候选,计算其仿写可靠度;若该候选为该个人所写 笔迹,则该候选的仿写可靠度为1;若该候选来自于常用字体,则仿写可靠度为 0;
5) 为每一种子部分划分方案,计算其仿写可靠度;设按该方案,待仿写汉 字由n个子部分构成,则该方案的仿写可靠度X=XlAl+x2A2+...+xnAn,其中 xl,x2,…,xn分别为该方案下各个子部分的子部分仿写可靠度,Al,A2,…,An为在 待仿写汉字的标准楷体字中,各个子部分范围矩形所占面积在整字范围矩形所 占面积的比例;
(10)为每一种子部分划分方案选出仿写可靠度最高的一组方案,作为笔划 与部首仿写40的仿写结果。
字体空间结构模仿50:在本实施例中,该部分包括以下步骤
1) 预先在标准楷体字体中,将所有汉字按照结构分类,分类包括独体结 构、左右结构、上下结构、内外结构、左中右结构、上中下结构;
2) 对待模仿汉字,在该个人已写过的字中,査找该汉字是否被其写过;则 将所有该人写过的该汉字笔迹的内部空间结构参数矩阵作为候选;
3) 若该汉字未曾被该人写过,则在该个人已写过的字中,査找出所有与待 模仿汉字属同一结构分类的汉字;
4) 对已找出的汉字,计算每个汉字与其对应在各个常用字体上的字体相似 度;两个字体间的字体相似度定义为在放縮字体使得两个字体的范围矩形面 积一样时,两个字体的字迹部分的重合面积占范围矩形面积的比例;对每一常 用字体,取所有所求字体相似度的平均值作为该常用字体与待仿写人字迹的总 体相似度;
5) 取总体相似度最大的常用字体,按照待模仿汉字在该常用字体中的内部 结构参数矩阵,将笔划与部首仿写40中得到的各个部首或笔划的仿写结果组合 成整字,作为该字的仿写结果。
个人笔迹仿写结果60:在本实施例中,该部分采用与个人书写笔迹样例IO相同 的表示方式,即同一尺寸的二值黑白图像,作为仿写结果输出;其示例如图6、 图7所示。
权利要求
1. 一种计算机模仿汉字手写笔迹的方法,其特征在于包括以下步骤1)预先对已有个人手写体汉字样本进行笔划分解与分类,对每个用户写过的每个笔划、部首、整字以及字体内部空间结构都进行了统一的参数化,并连同几种常用字体,建立个人手写字体数据库;2)对待模仿汉字,在其对应的楷体字上做笔划分解以及参数化;3)逐一根据个人手写字体数据库构造待模仿汉字的各个部首或笔划;4)根据个人手写字体数据库模仿待模仿汉字的内部空间结构,将模仿得到的各个部首或笔划拼接成完整的汉字,作为模仿字迹结果;若有多个备选方案,则择一作为模仿字迹结果。
2. 如权利要求1所述的一种计算机模仿汉字手写笔迹的方法,其特征在于 所述的预先对已有个人手写体汉字样本进行笔划分解与分类,对每个用户写过 的每个笔划、部首、整字以及字体内部空间结构都进行了统一的参数化,并连 同几种常用字体,建立个人手写字体数据库步骤(1) 对每个已有的个人手写体汉字图像,对其做细化,笔划分解,提取出其 轨迹与书写宽度特征,以参数向量的形式表示每个汉字;(2) 根据步骤(l)所得的参数向量,将每个汉字按整字、部首、笔划组织成层 次式的树形结构表示;树形结构中的每一个节点都表示了个人书写笔迹中的一 个单字或部首或笔划,每个单字或部首的各个子部分都是其对应节点的子节点;(3) 在步骤(2)所得树形结构中,对每一节点的单字或部首,计算出其内部空 间结构的参数化矩阵。
3. 如权利要求2所述的一种计算机模仿汉字手写笔迹的方法,其特征在于 所述的对每个已有的个人手写体汉字图像,对其做细化,笔划分解,提取出其 轨迹与书写宽度特征,以参数向量的形式表示每个汉字步骤a) 对汉字图像做细化处理,以获得该字的骨架图像;b) 将该字与其标准楷书字体做笔划匹配,用启发式搜索的方法找出骨架各 部分与标准笔划的一一对应关系,完成骨架上的笔划分解;c) 对每笔划上的各骨架点,以其为圆心画椭圆,使该椭圆尽量大而又不包 含任何原字体图像上的空白部分,该笔划的所有椭圆区域总和即为笔划分解所 得的图像轮廓;d) 将所有椭圆的长短轴、圆心坐标列为一个矩阵,即为该字体的参数向量。
4. 如权利要求2所述的一种计算机模仿汉字手写笔迹的方法,其特征在于 所述的在步骤(2)所得树形结构中,对每一节点的单字或部首,计算出其内部空 间结构的参数化矩阵步骤e) 对每个单字或部首的各个子部分部首或笔划作出其范围矩形,即在二 维平面上包含该字部分且边框平行于X轴与y轴的面积最小矩形;f) 计算每两个子部分的范围矩形之间的相互空间位置,即对每两个范围矩 形计算它们在水平、竖直方向上的重叠部分,设得到的两个量分别为Bh、 Bv; 设该单字或部首共有n个子部分,则得到一个nxn的矩阵,其中每个矩阵元素为 一个二元组(Bh,Bv),即该单字或部首的内部空间结构的参数化矩阵。
5. 如权利要求1所述的一种计算机模仿汉字手写笔迹的方法,其特征在于 所述的对待模仿汉字,在其对应的楷体字上做笔划分解以及参数化步骤-(4) 对该待模仿汉字,如权利要求3所述,对其做细化,笔划分解,提取出 其轨迹与书写宽度特征,以参数向量的形式表示每个汉字;(5) 对该待模仿汉字,如权利要求4所述,计算出其内部空间结构的参数化 矩阵。
6. 如权利要求1所述的一种计算机模仿汉字手写笔迹的方法,其特征在于 所述的逐一根据个人手写字体数据库构造待模仿汉字的各个部首或笔划步骤(6) 枚举该汉字所有可能的部首级与笔划级的子部分划分方案;CO对步骤(6)中的每一种子部分划分方案,对方案中的各个子部分,在个人 手写字体数据库中査找该子部分是否在该个人已有笔迹中出现;若有,则选出 所有该子部分的笔迹作为候选,若已有笔迹不足5 10个,则随机以常用字体 的该子部分补足;(8) 为步骤(7)中的每个子部分的每个候选,计算其子部分仿写可靠度;若该 候选笔迹来源于该个人,则该候选的子部分仿写可靠度为1,否则为0;(9) 为步骤(6)中的每一种子部分划分方案,计算其仿写可靠度;设按该方案, 待仿写汉字由n个子部分构成,则该方案的仿写可靠度 X=xlAl+x2A2+...+xnAn,其中xl,x2,...,xn分别为该方案下各个子部分的子部分 仿写可靠度,Al,A2,…,An为在待仿写汉字的标准楷体字中,各个子部分范围矩 形所占面积在整字范围矩形所占面积的比例;(10) 为每一种子部分划分方案选出仿写可靠度最高的一组仿写结果。
7. 如权利要求1所述的一种计算机模仿汉字手写笔迹的方法,其特征在于 所述的根据个人手写字体数据库模仿待模仿汉字的内部空间结构,据此将模仿 得到的各个部首或笔划拼接成完整的汉字,作为模仿字迹结果;若有多个备选 方案,则择一作为模仿字迹结果步骤(11) 预先在标准楷体字体中,将所有汉字按照结构分类,分类包括独体 结构、左右结构、上下结构、内外结构、左中右结构、上中下结构;(12) 对待模仿汉字,在该个人已写过的字中,查找该汉字是否被其写过; 则将所有该人写过的该汉字笔迹的内部空间结构参数矩阵作为候选;(13) 若该汉字未曾被该人写过,则在该个人已写过的字中,査找出所有与 待模仿汉字属同一结构分类的汉字;(14) 对步骤(13)己找出的汉字,计算每个汉字与其对应在各个常用字体上的 字体相似度;两个字体间的字体相似度定义为在放縮字体使得两个字体的范 围矩形面积一样时,两个字体的字迹部分的重合面积占范围矩形面积的比例; 对每一常用字体,取所有所求字体相似度的平均值作为该常用字体与待仿写人 字迹的总体相似度;(15) 取总体相似度最大的常用字体,按照待模仿汉字在该常用字体中的内 部结构参数矩阵,将如权利要求6所述的各个部首或笔划的仿写结果组合成整 字,作为该字的仿写输出。
全文摘要
本发明公开了一种计算机模仿汉字手写笔迹的方法。采用计算机图像处理和人工智能的方法,可以实现由计算机来学习并模仿个人手写笔迹。该方法预先对已有的个人手写体汉字样本进行了笔划分解与分类,对每个用户写过的每个笔划、部首、整字以及字体内部空间结构都进行了统一的参数化,并连同几种常用字体,由此建立了个人手写字体数据库;在模仿个人手写字迹的时候,首先将待模仿汉字分解成部首或笔划,并逐一在个人手写字体数据库中找到每个部首或笔划,并按照该个人的字体内部空间结构特征将各部首或笔划重组起来,作为模仿字迹输出。本发明直接从汉字的笔划偏旁构成规则上进行分析,从而更加本质的抓住了个人笔迹的特征,更好的模仿个人笔迹。
文档编号G06T11/00GK101377854SQ200810121490
公开日2009年3月4日 申请日期2008年10月7日 优先权日2008年10月7日
发明者刘智满, 徐颂华, 浩 江, 潘云鹤, 涛 金 申请人:浙江大学