当前栏目:

古文字信息化处理-实验项目3 甲骨文字形笔段轮廓模板的提取方法

时间:2015-05-20浏览:1484设置

实验项目3甲骨文字形笔段轮廓模板的提取方法

一 实验目的

1了解甲骨文字形笔段轮廓模板的特点

2掌握甲骨文字形笔段轮廓模板的提取方法


二 实验要求

1实验前,配置好Visual C++ 6.0软件。

2准备好BMP格式的甲骨文字形图像。

3配置好Fontedit软件。


三 实验内容

横笔段的模板提取方法

(1) 选取某种书体的代表作,利用图形图像处理软件(如Photoshop)截取各种不同类型横的笔段图一套。为了方便,取截图的边缘垂线(如图1,4中ab)为宽度参照线,并计算线段ab的长度ab= L

  1. 选取基本参照点。如图24所示,直线ab是垂线,ab两点的x坐标相同。从这两点中选取一个做为基本参照点。然后将ab两点间的控制点删除。为了方便,我们规定基本参照点为要删除的控制点之后的那个点。因为外轮廓的方向是逆时针为正的,所以基本参照点就是图2和图4中的b点。















































3记录相对位置。记录下组成模板的每一个控制点和基本参照点之间的相对位置。计算方法为:控制点的坐标 - 基本参照点的坐标。这样得到的是绝对的坐标差,值有正有负。为了转化为相对的值,要将这些值除以笔段宽度参照线ab的长度L,公式变为:(控制点的坐标 - 基本参照点的坐标)/L,并将结果按顺序记录下来。笔段上的点都是二维的,这样模板实际上就成了一个二维表。最后记录组成模板的点的个数n。模板的数据结构表1所示。

 表 1 笔段模板数据结构

模板类型

模板含点个数n

1相对x坐标值

1相对y坐标值

……

……

n相对x坐标值

n相对y坐标值




  竖、撇、捺笔段模板的提取方法

竖的笔段提取和横的提取方法基本上相同。有所区别的是,横的笔段宽度参照线选取的是垂线,而竖的参照线则选取水平直线。

撇从倾斜的大小上可以分为两类:较陡的撇和较平的撇。其中,较平撇的倾斜角度较小,和横有一定的相似性。所以它的起笔和末笔笔段宽度参照线还是按照和横相同的做法取垂线。而较陡的撇的倾斜角度较大,和竖有一定的相似性。所以它的起笔和末笔的宽度参照线的选取采用和竖相同的做法,取水平线。捺笔段可以分为斜捺和平捺。和撇笔段相似,斜捺采用垂线做为宽度参照线,平捺采用水平线做为宽度参照线。

文本框:外侧文本框:内侧文本框:内侧文本框:外侧






文本框:外侧文本框:内侧









  折笔段的模板提取方法

折是复合笔段,如图5所示,在实际字形中它有两个开口,并且是唯一同时具两条不相连的轮廓线的笔段。因此折中没有能够直接做为宽度参照线的垂线或水平线。实际上,经观察可以发现,折的笔段形状的形成,外侧轮廓(即向外突出的那一侧)起主要作用,内侧轮廓只随折的角度大小而稍有变化,在各种字体中差异不大。如图5,图6,图7所示。根据这一特点,我们的模板就只提取外侧轮廓上的点,内侧轮廓根据其原字形折的角度大小保持不变。宽度参照线取外侧轮廓线两端点的连线,如图8中的ab所示。但这样会因为不存在待删除的点,没法和其他的笔段一样确定基本参照点的位置。为了保持统一,我们规定,基本参照点选取ab两点中位于后面的一个,ab是按曲线轮廓方向排序的,如图8所示,因此折的基本参照点还是b点。另外,因为折的宽度参照线不再是垂线和水平线,因此它的模板除了记录相对坐标之外,还要记录宽度参照线的斜率。









  





将笔段模板存储为后缀名为MOD的模板文件。图910所示的是由两种风格的字体提取出的笔段模板文件的一部分。



















  

  

  

  

  

  

  

  

  

  

  




四 课后思考

1 简述甲骨文字形笔段轮廓模板的提取方法。












同栏目信息

其它相关信息