Skip to content

松弛匹配算法标注工具

Ein Verne edited this page Sep 24, 2016 · 2 revisions

如下图,使用该工具标注信息供松弛匹配使用:

mark tool

模板字标注工具,在松弛匹配算法中需要模板字额外的笔画交搭关系,设计该工具用于标注模板字各个笔段之间的关系。针对每个汉字提前标注该汉字中每个笔段之间的关系,本文中使用以下标识符表示两两笔段之间的关系:

  • N:相同笔段用N占位

  • I:表示两个笔段之间相交

  • A:表示两个笔段之间相离

  • C:表示两个笔段之间相接

    B 表示起点(Begin),E表示终点(End),N 表示其他
    - CBB:两个笔段之间相接,起点与起点相接
    - CBE:两个笔段之间相接,起点与终点相接
    - CBN:两个笔段之间相接,起点与其他点相接
    

    同理:CEB,CEE,CEN,CNB,CNE,CNN 可推得。

下面使用“永”字的标注字段做解释:

<instablesegments index="0" />
<segmentrelation>
<relation segment="0" relationship="N/A/A/A/A/A/A/A" /> 
<relation segment="1" relationship="A/N/CEB/A/A/A/A/A" /> 
<relation segment="2" relationship="A/CBE/N/CEB/A/A/A/CNB" /> 
<relation segment="3" relationship="A/A/CBE/N/A/A/A/A" /> 
<relation segment="4" relationship="A/A/A/A/N/CEB/A/A" /> 
<relation segment="5" relationship="A/A/A/A/CBE/N/A/A" /> 
<relation segment="6" relationship="A/A/A/A/A/A/N/A" /> 
<relation segment="7" relationship="A/A/CBN/A/A/A/A/N" /> 
</segmentrelation>
<structbox>
<boundingbox struct="0/1/2/3/4/5/6/7" top="0" bottom="3" left="4/5" right="7" /> 
</structbox>

yong mark tool

Instablesegments 字段为标注方向不稳定笔段,index值为笔段序号,多个笔段之间使用“/ ”分割,最后一个笔段编号不加“/”。不稳定笔段定义:该笔段可能从左上到右下,也有可能从右上到左下,书写时变化角度可能大于90度。举例:“学”前三个笔段,“点”中四点底笔段,角度变化较大,并且角度变化都在可接受的范围内。

Segmentrelation 包裹下字段为标注笔段与笔段之间的关系,该字有多少个笔段就会有多少个relation 字段。Relation字段中,segment标明该笔段的序号,从0开始计数,relationship的值为和其他每一个笔段之间的关系,如上面讨论,使用“/”分割,最后不加“/”。

Structbox 字段为部件包围盒,记录影响部件包围盒上下左右四个边界的笔段。Structbox包含一个或者多个boundingbox,该数量由该汉字的部件数决定。Struct标记部件包含的笔段,上述例子中只有一个部件所有只有一个boundingbox 字段,如果非独体字则会有多个部件,分别使用 struct来标记部件所包含的笔段序列,其后 top,bottom,left,right四个字段为标注影响该部件包围盒的笔段序号,值为笔段序号,多个笔段之间使用“/ ”分割,最后一个笔段编号不加“/”。比如 top=“0”, 标明0号笔段影响该部件的上包围盒,依次类推。