笔迹的书写方法及书写装置的制作方法

文档序号:6469272阅读:217来源:国知局
专利名称:笔迹的书写方法及书写装置的制作方法
技术领域
本发明涉及在计算机中绘图技术领域,特别涉及一种笔迹的书写方法及书 写装置。
背景技术
随着计算机应用的日益普及,计算机绘图技术也日益普遍,涉及美术、设 计、教育、军事以及会议等领域,通常情况下,计算机绘制图像是通过识别画 笔(鼠标)移动的时候的一些点,将这些点通过直线段按照画笔轨迹顺序相连, 得到一条画笔折线,当取样点足够多的情况下,该折线即可以粗略地表示出画 笔的路径,但是,由于显示设备的光栅特性以及由此而带来的整数坐标体系, 所绘制出来的画笔轨迹普遍存在锯齿、走样的问题,导致书写笔迹不平滑。

发明内容
针对上述现有技术中存在的问题,本发明的第一个目的在于提供一种笔迹 的书写方法,以实现笔迹的平滑书写。
为达到上述目的,本发明采用以下技术方案 一种笔迹的书写方法,包括步骤 根据预设笔宽建立初始模型矩阵; 获取曲线路径上的采样点的位置坐标;
判断当前采样点与前一采样点在横向坐标方向上的横向坐标距离是否大于 或者等于在纵向坐标方向上的纵向坐标距离;
若是,根据所述当前采样点的横向位置坐标的小数部分、所述当前采样点 的纵向位置坐标的小数部分,自初始行、初始列开始,依次对所述初始模型矩 阵的行元素值、列元素值进行变换得到第一变换矩阵,并将该第一变换矩阵作
为最终变换矩阵;
若否,根据所述当前采样点的横向位置坐标的小数部分、所述当前采样点 的纵向位置坐标的小数部分,自初始列、初始行开始,依次对所述初始模型矩 阵的列元素值、行元素值进行变换得到第二变换矩阵,并将该第二变换矩阵作 为最终变换矩阵;
绘制所述最终变换矩阵,并用该最终变换矩阵填充所述当前采样点。
根据上述本发明的方案,其通过对当前采样点与前一采样点在横向坐标方 向上的横向坐标距离与在纵向坐标方向上的纵向坐标距离的比较,并根据比较 结果选用相应的预设方式对初始模型矩阵进行变换,在变换时,是根据当前釆 样点的横向位置坐标的小数部分、纵向位置坐标的小数部分等进行变换,并用 变换后的最终变换矩阵填充采样点,由于是釆用小数部分对初始模型矩阵进行 变换,小数部分具有较高的精度,且是用变换后的最终变换矩阵填充当前采样 点,实现简单,效率高,在各釆样点相对比较密集的情况下,利用各采样点的 最终变换矩阵进行填充后可以达到很好的平滑性效果。
本发明的第二个目的在于提供一种笔迹的书写装置,其可以实现平滑的笔 迹书写。
为达到上述目的,本发明采用以下技术方案 一种笔迹的书写装置,包括
初始模型矩阵设置模块,用于根据预设笔宽建立初始模型矩阵;
采样点获取模块,用于获取曲线路径上的采样点的位置坐标;
与所述采样点获取模块相连接的判别模块,用于判断当前采样点与前一采 样点在横向坐标方向上的横向坐标距离是否大于或者等于在纵向坐标方向上的 纵向坐标距离;
与所述初始模型矩阵设置模块、所述采样点获取模块、所述判别模块相连 接的第一变换模块,用于当所述判别模块的判断结果为是时,根据所述当前采 样点的横向位置坐标的小数部分、所述当前采样点的纵向位置坐标的小数部分,
自初始行、初始列开始,依次对所述初始模型矩阵的行元素值、列元素值进行 变换得到第一变换矩阵;
与所述初始模型矩阵设置模块、所述釆样点获取模块、所述判别模块相连 接的第二变换模块,用于当所述判别模块的判断结果为否时,根据所述当前采 样点的横向位置坐标的小数部分、所述当前采样点的纵向位置坐标的小数部分, 自初始列、出事行开始,依次对所述初始模型矩阵的列元素值、行元素值进行
变换得到第二变换矩阵;
与所述判别模块、所述第一变换模块、所述第二变换模块相连接的最终变 换矩阵确定模块,用于当所述判别模块的判断结果为是时,将所述第一变换矩 阵作为最终变换矩阵,当所述判别模块的判断结果为否时,将所述第二变换矩
阵作为最终变换矩阵;
与所述最终变换矩阵确定模块相连接的填充模块,用于绘制所述最终变换 矩阵确定模块所确定的最终变换矩阵,并用该最终变换矩阵填充所述当前采样 点。
根据上述本发明的方案,其通过对当前采样点与前一采样点在横向坐标方 向上的横向坐标距离与在纵向坐标方向上的纵向坐标距离的比较,并根据比较 结果选用相应的预设方式对初始模型矩阵进行变换,在变换时,是根据当前采 样点的横向位置坐标的小数部分、纵向位置坐标的小数部分等进行变换,并用 变换后的最终变换矩阵填充采样点,由于是采用小数部分对初始模型矩阵进行 变换,小数部分具有较高的精度,且是用变换后的最终变换矩阵填充当前采样 点,实现简单,效率高,在各采样点相对比较密集的情况下,利用各采样点的 最终变换矩阵进行填充后可以达到4艮好的平滑性效果。


图1是本发明笔迹的书写方法的流程示意图; 图2是本发明笔迹的书写装置的结构示意图。
具体实施例方式
在本发明的方案中,通过预先根据笔宽建立初始模型矩阵,各釆样点共用 相同的初始模型矩阵,然后将该初始模型矩阵,并根据当前采样点的位置坐标 的小数部分、以及与前一采样点的坐标的差值为参数对该模型进行变换,并用 变换后的矩阵填充对应的采样点。
参见图l所示,是本发明的笔迹的书写方法的流程示意图,其具体包括
步骤S101:根据预设笔宽,建立初始模型矩阵,其中,矩阵中的各元素值 可以是代表相应的透明度值,进入步骤S102;
步骤S102:获取曲线路径上的采样点的位置坐标,进入步骤S103;
步骤S103:判断当前采样点与前一采样点在横向坐标方向上的横向坐标距 离是否大于或者等于在纵向坐标方向上的纵向坐标距离,若是,进入步骤S104, 若否,则进入步骤S105;
步骤S104:根据第一预设变换方式、所述初始模型矩阵、所述当前采样点 的横向位置坐标的小数部分、所述当前采样点的纵向位置坐标的小数部分,对 所述初始模型矩阵进行变换得到第一变换矩阵,并将该第一变换矩阵作为最终 变换矩阵,进入步骤S106;
步骤S105:根据第二预设变换方式、所述初始模型矩阵、所述当前采样点 的横向位置坐标的小数部分、所述当前采样点的纵向位置坐标的小数部分,对 所述初始模型矩阵进行变换得到第二变换矩阵,并将该第二变换矩阵作为最终 变换矩阵,进入步骤S106;
步骤S106:绘制所述最终变换矩阵,并用该最终变换矩阵填充所述当前采 样点,即在当前采样点与前一采样点在横向坐标方向上的横向坐标距离大于或 者等于在纵向坐标方向上的纵向坐标距离时,使用所述步骤S104中的第一变换 矩阵填充当前采样点,在当前采样点与前一采样点在横向坐标方向上的横向坐 标距离小于在纵向坐标方向上的纵向坐标距离时,使用所述步骤S105中的第二 变换矩阵填充当前采样点。200810199139. 8
说明书第5/14页
根据上述本发明的方法,其通过对当前采样点与前一采样点在横向坐标方 向上的横向坐标距离与在纵向坐标方向上的纵向坐标距离进行比较,并根据比 较结果选用相应的预设方式对初始模型矩阵进行变换,在变换时,是根据当前 采样点的横向位置坐标的小数部分、纵向位置坐标的小数部分等进行变换,并 用变换后的最终变换矩阵填充采样点,由于是釆用小数部分对初始模型矩阵进 行变换,小数部分具有较高的精度,且是用变换后的最终变换矩阵填充当前采 样点,实现简单,效率高,在各采样点相对比较密集的情况下,利用各采样点 的最终变换矩阵进行填充后可以达到很好的平滑性效果。
其中,在根据第一预设变换方式进行变换时,是自上述初始模型矩阵的初 始行、初始列开始依次对该初始模型矩阵的各个行的元素值、各个列的元素值
进行变换,且在后变换均是在在前变换的基础上进行,假设初始行为第0行、 初始列为第0列,具体可以包括
计算初始^^型矩阵中第l行减去第0行的差值,将该差值与当前采样点的 纵向位置坐标的小数部分相乘,并将乘积结果与该第0行求和后所得的和值作 为该第0行的变换值;
在上述步骤计算结果的基础上,计算第1列减去第0列的差值,将该差值 与所述横向位置坐标的小数部分相乘,并将乘积结果与第0列求和后所得的和 值作为该第0列的变换值;
在上述各步骤计算结果的基础上,计算第2行减去第1行的差值,将该差 值与当前采样点的纵向位置坐标的小数部分相乘,并将该乘积结果与该第l行 求和后所得的和值作为该第l行的变换值;
在上述各步骤计算结果的基础上,计算第2列减去第1列的差值,将该差 值与当前采样点的横向位置坐标的小数部分相乘,并将乘积结果与第1列求和 后所得的和值作为该第1列的变换值;
以此类推,直至计算完倒数第二行、倒数第二列的变换值,随后进入对最 后一行、最后一列的变换
在上述各步骤计算结果的基础上,计算最后一行减去倒数第二行的差值的绝对值,并将该绝对值作为该最后一行的变换值;
在上述各步骤计算结果的基础上,计算最后一列减去倒数第二列的差值的 绝对值,并将该绝对值作为该最后一列的变换值。
根据如上所述,由于当前采样点与前一采样点的横向坐标距离大于或者等 于了纵向坐标距离,因此,在根据第一预设变换方式进行变换时,其首先对初 始模型矩阵的行的元素进行变换,然后对相应的列的元素进行变换,且在后的 变换均是在在前变换的基础上进行。
此外,在上述根据第二预设变换方式对初始模型矩阵进行变换时,是自上 述初始模型矩阵的初始列、初始行开始依次对该初始模型矩阵的各个列的元素 值、各个行的元素值进行变换,且在后变换均是在在前变换的基础上进行,假 设初始列为第0列、初始行为第0行,具体可以的过程可以包括
计算所述初始模型矩阵中第1列减去第0列的差值,将该差值与当前采样 点的横向位置坐标的小数部分相乘,并将乘积结果与该第0列求和后所得的和 值作为该第0列的变换值;
在上述步骤计算结果的基础上,计算第1行减去第0行的差值,将该差值 与当前采样点的纵向位置坐标的小数部分相乘,并将乘积结果与第0行求和后 所得的和值作为该第O行的变换值;
在上述各步骤计算结果的^5出上,计算第2列减去第1列的差值,将该差 值与当前采样点的横向位置坐标的小数部分相乘,并将该乘积结果与该第1列 求和后所得的和值作为该第1列的变换值;
在上述各步骤计算结果的基础上,计算第2行减去第1行的差值,将该差 值与当前采样点的纵向位置坐标的小数部分相乘,并将乘积结果与第1行求和 后所得的和值作为该第1行的变换值;
以此类推,直至计算完该矩阵中倒数第二列、倒数第二行的变换值,随后 进入对最后一列、最后一行的变换
在上述各步骤计算结果的基础上,计算最后一列减去倒数第二列的差值的
绝对值,并将该绝对值作为该最后一列的变换值;
在上述各步骤计算结果的基础上,计算最后一行减去倒数第二行的差值的 绝对值,并将该绝对值作为该最后一行的变换值。
根据如上所述,由于当前采样点与前一采样点的横向坐标距离小于了纵向 坐标距离,因此,在根据第二预设变换方式进行变换时,其首先对初始模型矩 阵的列的元素进行变换,然后对相应的行的元素进行变换,且在后的变换是在 在前变换的基础上进行。
以下针对本发明的一个具体实施例进行详细描述。
根据如上所述,在本发明的方案中,在根据第一预设变换方式或者第二预 设变换方式对初始模型矩阵进行变换时,是根据当前采样点的位置坐标的小数 部分对初始模型矩阵进行变换,采样点的位置坐标的小数部分对变换后所得到 的最终变换矩阵产生影响,因此,在较为理想的情况下,当采样点的位置坐标 的小数点部分为0时,对最终变换矩阵的影响应当是最小的,甚至于是没有影 响,即在采样点的横向位置坐标的小数部分为0、且纵向位置坐标的小数部分也 为0的情况下,经过第一预设变换方式变换或者第二预设变换方式变换后所得
到的第一变换矩阵或者第二变换矩阵最好能够与初始^f莫型矩阵相同,为了满足 这种特性,在本发明的该具体实施例中,将初始模型矩阵的最后一行与最后一
列的元素值设为O,且所建立的模型矩阵的大小为(笔宽+l) * (笔宽+l)
根据如上所述的特性,以预设笔宽为奇数值为例,可将初始模型矩阵设置
为<formula>formula see original document page 12</formula>
其中,k为大于或者等于1的整数。
出于对应用灵活性的考虑,在所选定的预设笔宽为偶数值的情况下,此时, 可将该预设笔宽加1后所得值作为本发明方案中所使用的预设笔宽。
在下述各描述中,以笔宽为3为例,即K=2、初始模型矩阵M为
<formula>formula see original document page 13</formula>为例进行说明
其中,用/ (/)表示第i行,用C①表示第i歹'J , M(0 = A0 + l)-i (/), AC(/) = C(/ + 1)_C(〖),且H0, 1, 2….。
假设当前采样点的位置坐标为iU、,A),前 一 采样点的位置坐标为 尸"U,则
^Hni卜Ay = |_y —乂—J; /^ = x —[x」,; _y = >> —
其中,Ax表示当前采样点与前一采样点在横向坐标方向上的横向坐标距离, Ay表示当前采样点与前一采样点在纵向坐标方向上的纵向坐标距离,[xj表示 ^的整数部分,戸表示当前采样点的横向位置坐标的小数部分,b」表示凡的 整数部分,w表示当前采样点的纵向位置坐标的小数部分。
在建立了初始模型矩阵、并获得曲线路径上的当前采样点的位置坐标后, 判断当前采样点与前一采样点的横向坐标方向上的距离是否大于或者等于在纵 向坐标方向上的纵向坐标^巨离,即是否Ax2Ay:
若Ax》Ay,则依次对初始模型矩阵进行变换,在i从0开始的情况下,则 依次为第0行、第0列、第1行、第1列…,在i从l开始的情况下,则从第1 行、第1列、第2行、第2列...,以下以i从0开始进行说明
针对第0行,T (O)的初始值为(all a12 a13 0),运用乂^式R(i)+=Py*AR(i), 即将R(i)+Py*AR(i)所得的值作为R(i)的变换值,变换后的尺(O)为
(all + py*(a21-all) al2 + py*(a22-a12) al3 + py*(a23-a13) 0);
针对第 0 列,经过上述变换后,C(O)的值变换为 (all + py*(a21-all) a21 a31 0)T, 运用公式<formula>formula see original document page 14</formula>变换后,将
<formula>formula see original document page 14</formula>所得的值作为C(0)的变换值,变换后的C(0)为
<formula>formula see original document page 14</formula>
在上述变换结果的基础上,再依次对R(l)、 C(l)、 R(2)、 C(2)进行变换,且 后面的变换过程均是在前面的变换结果的基础上进行;
当i二预设笔宽,即i=3时,到达矩阵的最后一行、最后一列,针对该R(3)、 C(3),由于作为计算deltaR(3)、 deltaC(3)基础的R(4)、 C(4)并不存在,因此,用上述 公式对R(3)、 C(3)进行变换不再合适,在本具体实施例中,采用下述方式实现对 R(3)、 C(3)的变换
针对第3行,将原第3行减去上述变换后的第2行的元素值所得差值的绝 对值作为该第3行变换后的值,即<formula>formula see original document page 14</formula>;
针对第3列,将原第3列减去上述变换后的第2列的元素值所得差值的元 素值作为该第3列变换后的值,即C(3)=|C(3)-C(2)|;
经过上述变换过程后,得到第一预设变换后的矩阵值,即第一变换矩阵, 将第一变换矩阵作为最终变换矩阵,并用该最终变换矩阵填充当前采样点;
若deltax < deltay :
针对第0列,C(O)的初始值为(all a21 a31 0)7 ,运用公式C(i)+=Px*deltaC(i), 即将C(i)+Px*deltaC(i)所得的值作为C(i)的变换值,变换后的C(0)为 (all + px*(al2-all) a21 +px*(a22-a21) a31 + px*(a32-a31) 0)T;
针对第 0 行,经过上述变换后,R(O)的值变换为 (all +px*(a12 —all) a12 a13 0),运用公式R(i)+=px*deltaR(i)变换后,将R(0)+Py*deltaR(0)
所得的值作为i (O)的变换值, 变换后的C(O) 为
<formula>formula see original document page 15</formula>
在上述已经变换的基础上,再依次对C(l)、 Z (l)、 C(2)、 / (2)进行变换,且 后面的变换过程均是在前面的变换结果的基础上进行;
当i-预设笔宽,即1=3时,到达矩阵的最后一列、最后一行,针对该C(3)、 / (3),由于作为计算AC(3)、 A^(3)基础的C(4)、 i (4)并不存在,因此,用上述 公式对C(3)、 i (3)进行变换不再合适,在本具体实施例中,采用下述方式实现对 C(3)、 / (3)的变换
针对第3列,将原第3列减去上述变换后的第2列的元素值所得差值的元 素值作为该第3列变换后的值,即C(3)叫C(3)-C(2)I;
针对第3行,将原第3行减去上述变换后的第2行的元素值所得差值的绝 对值作为该第3行变换后的值,即R(3)=|R(3)-R(2)|;
经过上述变换过程后,得到第二预设变换后的矩阵值,即第二变换矩阵, 将第二变换矩阵作为最终变换矩阵,并用该最终变换矩阵填充当前采样点;
其中,在用上述最终变换矩阵填充当前采样点时,根据如上所述,该矩阵 为4*4的矩阵,从而可能导致该矩阵与当前采样点的对齐点无法确定,考虑到 采样点的位置坐标的小数部分为0时,经变换后所得矩阵的最后一行、最后一 列的元素值均为O,因此,可将去除掉最后一行、最后一列后所剩矩阵的中心值 作为该最终变换矩阵的中心值,并将该中心值与采样点对齐后,将该模型进行 覆盖,实现填充过程。
此外,在用最终变换矩阵填充当前采样点时,考虑到笔迹书写的美观性, 应当使书写的画笔呈现从中心向两侧呈现渐变的书写效果,即使得所书写出来 的笔迹的中心的颜色最深,而画笔两侧的颜色最浅,因此,作为一种最佳方式,
在设置初始模型矩阵时
如果初始模型矩阵中的元素值代表的是透明度值,由于透明度值越大,不
透明的程度越高,因此可使矩阵的中心值最大,从中心值向外扩展,距离越大
元素值越小,另外,为了呈现均匀的书写笔迹,应当使中心值两侧的元素值呈
现相同的扩展方式,即与中心值距离相同的元素的值相同,即,针对初始模型 ,"11 fll2 "13 0、
使all=al3=a31=a33 , al2=a21=a23=a32 , 且
矩阵
a21 fl22 a23 0 o31 a3233 0 0 0 0 0
而X
a22>al2>all;
如果初始模型矩阵中的元素值代表的是灰度值,由于灰度值越小,所代表
的颜色越深,因此可使矩阵的中心值最小,从中心值向外扩展,距离越大元素
值越大,另外,为了呈现均匀的书写笔迹,应当使中心值两侧的元素值呈现相
同的扩展方式,即与中心值距离相同的元素的值相同,即,针对初始模型矩阵 Gll "12 "13 0、
而言,4吏alI=al3=a3l=a33, al2=a2I=a23=a32,且a22〈al2〈al 1;
a21 a22 a23 0 a31 Af32 a33 0 0 0 0 0
针对采用其他的预设笔宽的初始模型矩阵,或者初始模型矩阵中的元素代 表的是其他参数值时,可据此类推,在此不予赘述。
此外,由于填充采样点的矩阵特性,在用矩阵对采样点进行填充时,如果 采样点之间的距离过大,可能会使书写出来的笔迹会出现连续性不强的效果, 为了使书写笔迹呈现更好的连续性,在获取采样点时,可以是针对每个像素点 进行采样,即针对每个像素点均执行上述的模型变换及填充步骤,此时,上述 描述中所涉及的采样点均为像素点,此时,上述描述中所涉及的曲线路径可以 是已经形成连接曲线的曲线路径。
针对上述本发明的笔迹的书写方法,本发明还提供一种笔迹的书写装置, 参见图2所示,是本发明的笔迹的书写装置的结果示意图,其包括
初始模型矩阵设置模块201,用于根据预设笔宽建立初始模型矩阵;
采样点获取模块202,用于获取曲线路径上的采样点的位置坐标;
与采样点获取^f莫块202相连接的判别模块203,用于判断当前采样点与前一 采样点在横向坐标方向上的横向坐标距离是否大于或者等于在纵向坐标方向上 的纵向坐标距离;
与初始模型矩阵设置模块201、采样点获取模块202、判别模块203相连接 的第一变换模块204,用于当判别模块203的判断结果为是时,根据所述当前采 样点的横向位置坐标的小数部分、所述当前采样点的纵向位置坐标的小数部分, 自初始行、初始列开始,依次对所述初始模型矩阵的行元素值、列元素值进行 变换得到第一变换矩阵;
与初始模型矩阵设置模块201、采样点获取模块202、判别模块203相连接 的第二变换模块205,用于当判别模块203的判断结果为否时,根据所述当前采 样点的横向位置坐标的小数部分、所述当前采样点的纵向位置坐标的小数部分, 自初始列、初始行开始,依次对所述初始模型矩阵的列元素值、行元素值进行 变换得到第二变换矩阵;
与判别模块203、第一变换模块204、第二变换模块205相连接的最终变换 矩阵确定模块206 ,用于当判别模块203的判断结果为是时,将第一变换模块 204所确定的第一变换矩阵作为最终变换矩阵,当判别模块203的判断结杲为否 时,将第二变换模块205所确定的第二变换矩阵作为最终变换矩阵;
与最终变换矩阵确定模块206相连接的填充模块207,用于绘制最终变换矩 阵确定模块206所确定的最终变换矩阵,并用该最终变换矩阵填充当前采样点。
根据上述本发明的装置,其通过对当前采样点与前一采样点在横向坐标方 向上的横向坐标距离与在纵向坐标方向上的纵向坐标距离的比较,并根据比较 结果选用相应的预设方式对初始模型矩阵进行变换,在变换时,是根据当前采 样点的横向位置坐标的小数部分、纵向位置坐标的小数部分等进行变换,并用 变换后的最终变换矩阵填充采样点,由于是采用小数部分对初始模型矩阵进行 变换,小数部分具有较高的精度,且是用变换后的最终变换矩阵填充当前采样点,实现筒单,效率高,在各采样点相对比较密集的情况下,利用各采样点的 最终变换矩阵进行填充后可以达到很好的平滑性效果。
在本发明的装置中,依次对初始模型矩阵的行元素值、列元素值进行变换 得到第一变换矩阵、依次对初始模型矩阵的列元素值、行元素值进行变换得到 第二变换矩阵的具体变换方式可如上述方法实施例中所述,在此不予赘迷。
其中,在用最终变换矩阵填充当前采样点时,根据如上所述,由于最终变 换矩阵为偶数矩阵,从而导致该矩阵与当前采样点的对齐点无法确定,考虑到 采样点的位置坐标的小数部分为0时,经变换后所得矩阵的最后一行、最后一
列的元素值均为o,因此,可将去除掉最后一行、最后一列后所剩矩阵的中心值
作为该最终变换矩阵的中心值,并将该中心值与采样点对齐后,将该模型进行 覆盖,实现填充过程。
此外,在用最终变换矩阵填充当前采样点时,考虑到笔迹书写的美观性, 应当使书写的画笔呈现从中心向两侧呈现渐变的书写效果,即使得所书写出来 的笔迹的中心的颜色最深,而画笔两侧的颜色最浅,因此,作为一种最佳的实
施方式,初始模型矩阵设置模块301在设置初始模型矩阵时
如果初始模型矩阵中的元素值代表的是透明度值,由于透明度值越大,不
透明的程度越高,因此可使矩阵的中心值最大,从中心值向外扩展,距离越大元素值越小,另外,为了呈现均匀的书写笔迹,应当使中心值两侧的元素值呈
现相同的扩展方式,即与中心值距离相同的元素的值相同,即,针对初始模型 all a12 a13 0、
而言,使all=al3=a31=a33 , al2=a21=a23=a32 , 且
矩阵
a21 a22 a23 0 a31 a32 a33 0 0 0 0 0
a22>al2>all;
如果初始模型矩阵中的元素值代表的是灰度值,由于灰度值越小,所代表 的颜色越深,因此可使矩阵的中心值最小,从中心值向外扩展,距离越大元素 值越大,另外,为了呈现均匀的书写笔迹,应当使中心值两侧的元素值呈现相 同的扩展方式,即与中心值距离相同的元素的值相同,即,针对初始模型矩阵
all a12 a13 0、
<formula>formula see original document page 19</formula>而言,使al I=al3=a3 l=a33, al2=a21=a23=a32,且a22<al2<al 1;
针对采用其他的预设笔宽的初始模型矩阵,或者初始模型矩阵中的元素代 表的是其他参数值时,可据此类推,在此不予赘述。
此外,由于填充采样点的矩阵特性,在用矩阵对采样点进行填克时,如果 采样点之间的距离过大,可能会使书写出来的笔迹会出现连续性不强的效果, 为了使书写笔迹呈现更好的连续性,在获取釆样点时,可以是针对每个像素点 进行采样,即针对每个像素点均执行上述的模型变换及填充步骤,此时,上述 描述中所涉及的采样点均为像素点,此时,上述描述中所涉及的曲线路径可以 是已经形成连接曲线的曲线路径。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在 本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明 的权利要求保护范围之内。
权利要求
1、一种笔迹的书写方法,其特征在于,包括步骤:根据预设笔宽建立始模型矩阵;获取曲线路径上的采样点的位置坐标;判断当前采样点与前一采样点在横向坐标方向上的横向坐标距离是否大于或者等于在纵向坐标方向上的纵向坐标距离;若是,根据所述当前采样点的横向位置坐标的小数部分、所述当前采样点的纵向位置坐标的小数部分,自初始行、初始列开始,依次对所述初始模型矩阵的行元素值、列元素值进行变换得到第一变换矩阵,并将该第一变换矩阵作为最终变换矩阵;若否,根据所述当前采样点的横向位置坐标的小数部分、所述当前采样点的纵向位置坐标的小数部分,自初始列、初始行开始,依次对所述初始模型矩阵的列元素值、行元素值进行变换得到第二变换矩阵,并将该第二变换矩阵作为最终变换矩阵;绘制所述最终变换矩阵,并用该最终变换矩阵填充所述当前采样点。
2、 根据权利要求1所述的笔迹的书写方法,其特征在于,所述依次对所述 初始模型矩阵的行元素值、列元素值进行变换得到第一变换矩阵具体包括自所述初始行开始,计算下一行减去当前行的差值,将该差值与所述纵向 位置坐标的小数部分相乘,并将乘积结果与该当前行求和后所得的和值作为该 当前^f亍的变换J直;计算下一列减去当前列的差值,将该差值与所述横向位置坐标的小数部分 相乘,并将乘积结果与该当前列求和后所得的和值作为该当前列的变换值;以及计算最后一行减去倒数第二行的差值的绝对值,并将该绝对值作为该最后 一4亍的变换值;计算最后一列减去倒数第二列的差值的绝对值,并将该绝对值作为该最后 一列的变换值。
3、 根据权利要求1所述的笔迹的书写方法,其特征在于,所述依次对所述 初始模型矩阵的列元素值、行元素值进行变换得到第二变换矩阵具体包括自所述初始列开始,计算下一列减去当前列的差值,将该差值与所述横向 位置坐标的小数部分相乘,并将乘积结果与该当前列求和后所得的和值作为该 当前列的变换值;计算下一行减去当前行的差值,将该差值与所述纵向位置坐标的小数部分 相乘,并将乘积结果与当前行求和后所得的和值作为该当前行的变换值;以及计算最后一列减去倒数第二列的差值的绝对值,并将该绝对值作为该最后 一列的变换值;计算最后一行减去倒数第二行的差值的绝对值,并将该绝对值作为该最后 一行的变换值。
4、 根据权利要求1或2或3所述的笔迹的书写方法,其特征在于在所述 初始模型矩阵中,最后一行、最后一列的元素值为0。
5、 根据权利要求1或2或3所述的笔迹的书写方法,其特征在于在所述 初始模型矩阵中,除去最后一行、最后一列的部分为对称矩阵。
6、 根据权利要求5所述的笔迹的书写方法,其特征在于当所述初始模型矩阵中的元素代表透明度值时,在所述对称矩阵中,位于 所述对称矩阵中心的元素值最大,距离所述对称矩阵的中心最远的元素值最小;当所述初始模型矩阵中的元素代表灰度值时,在所述对称矩阵中,位于所 述对称矩阵中心的元素值最小,距离所述对称矩阵的中心最远的元素值最大。
7、 根据权利要求1或2或3所述的笔迹的书写方法,其特征在于 所述预设笔宽为奇数值; 和/或当所述预设笔宽为偶数值时,将该预设笔宽加1后所得值作为所述预设笔宽。
8、 根据权利要求1或2或3所述的笔迹的书写方法,其特征在于所述采 样点为像素点。
9、 一种笔迹的书写装置,其特征在于,包括-.初始模型矩阵设置模块,用于根据预设笔宽建立初始模型矩阵;采样点获取模块,用于获取曲线路径上的采样点的位置坐标;与所述采样点获取模块相连接的判别模块,用于判断当前采样点与前一采 样点在横向坐标方向上的横向坐标距离是否大于或者等于在纵向坐标方向上的 纵向坐标距离;与所述初始模型矩阵设置模块、所述采样点获取模块、所述判别模块相连 接的第一变换模块,用于当所述判别模块的判断结果为是时,根据所述当前采 样点的横向位置坐标的小数部分、所述当前采样点的纵向位置坐标的小数部分, 自初始行、初始列开始,依次对所述初始模型矩阵的行元素值、列元素值进行 变换得到第一变换矩阵;与所述初始模型矩阵设置模块、所述采样点获取模块、所述判别模块相连 接的第二变换模块,用于当所述判别模块的判断结果为否时,根据所述当前采 样点的横向位置坐标的小数部分、所述当前采样点的纵向位置坐标的小数部分, 自初始列、初始行开始,依次对所述初始模型矩阵的列元素值、行元素值进行 变换得到第二变换矩阵;与所述判别模块、所述第一变换模块、所述第二变换模块相连接的最终变 换矩阵确定模块,用于当所述判别模块的判断结果为是时,将所述第一变换矩 阵作为最终变换矩阵,当所述判别模块的判断结果为否时,将所述第二变换矩 阵作为最终变换矩阵; 与所述最终变换矩阵确定模块相连接的填充模块,用于绘制所述最终变换 矩阵确定模块所确定的最终变换矩阵,并用该最终变换矩阵填充所述当前采样 点。
10、根据权利要求9所述的笔迹的书写装置,其特征在于所述采样点为 像素点。
全文摘要
一种笔迹的书写方法及书写装置,其通过对当前采样点与前一采样点在横向坐标方向上的横向坐标距离与在纵向坐标方向上的纵向坐标距离的比较,并根据比较结果选用相应的预设方式对初始模型矩阵进行变换,在变换时,是根据当前采样点的横向位置坐标的小数部分、纵向位置坐标的小数部分、根据预设笔宽所确定的初始模型矩阵等进行变换,并用变换后的最终变换矩阵填充采样点,由于是采用小数部分对初始模型矩阵进行变换,小数部分具有较高的精度,且是用变换后的最终变换矩阵填充当前采样点,实现简单,效率高,在各采样点相对比较密集的情况下,利用各采样点的最终变换矩阵分别对各采样点进行填充后可以达到很好的平滑性效果。
文档编号G06T11/80GK101383050SQ200810199139
公开日2009年3月11日 申请日期2008年10月14日 优先权日2008年10月14日
发明者徐蜀中, 李俊文, 胡粤川, 陈先志 申请人:广东威创视讯科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1