针对单/双面英文文本文件,经过双向(横向 + 纵向)切割后形成的碎纸片,本文通过设计拼接算法将其还原。首先,利用“英文字母的结构特征”和“空白行间距”这两个几何特征将原图中同行的碎纸片按行聚类。在此基础上,我们利用向量的l1范数差异度模型对每类碎片进行列拼接,以形成一个横切碎片,最后再对所有的横切碎片进行行拼接即可。在算法的数值检验部分,我们以2013年全国大学生数学建模赛题为例,对横纵切后形成的209块单/双面英文碎纸片进行拼接复原。数值复原结果证实了该算法实现简单,且聚类成功率高,其中聚类部分的正确率可以达到93%以上。 This paper designs an algorithm to restore English shredded documents no matter they are single- sized or double-sized text files which are cut both vertically and horizontally. Firstly, we cluster the fragments which were located in the same line in original text files according to the structural features of English letters and the row spacing. Then, using l1 norm difference model, we attach the fragments in the same class. By this way, the scraps of paper in the same line can be restored as a whole crosscutting shredded document. Finally, we should splice the crosscutting shredded doc-uments into a complete image. In the numerical test part, taking the 2013 national mathematics model contest problem as examples, our algorithm restores 209 pieces of English shredded doc-uments. Numerical results show that the correct rate of clustering is over 93% which demonstrates the efficiency of the algorithm.
张晨,王诗云
沈阳航空航天大学理学院,辽宁 沈阳
收稿日期:2016年4月14日;录用日期:2016年5月2日;发布日期:2016年5月5日
针对单/双面英文文本文件,经过双向(横向 + 纵向)切割后形成的碎纸片,本文通过设计拼接算法将其还原。首先,利用“英文字母的结构特征”和“空白行间距”这两个几何特征将原图中同行的碎纸片按行聚类。在此基础上,我们利用向量的l1范数差异度模型对每类碎片进行列拼接,以形成一个横切碎片,最后再对所有的横切碎片进行行拼接即可。在算法的数值检验部分,我们以2013年全国大学生数学建模赛题为例,对横纵切后形成的209块单/双面英文碎纸片进行拼接复原。数值复原结果证实了该算法实现简单,且聚类成功率高,其中聚类部分的正确率可以达到93%以上。
关键词 :峰值权数,行间距权数,聚类可信度,Jffreys & Matusita距离,l1范数
破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。传统上,拼接复原工作需由人工完成,虽然准确率较高,但效率很低。特别是在碎片数量巨大的情况下,人工拼接很难在短时间内完成任务。
如今,人们则期望结合计算机强大的计算能力与合理的数学模型,获得精确高效的碎纸片自动拼接复原技术。目前,在拼接形状规则的矩形碎纸片时,最为常规的拼接复原算法大多基于碎纸片的行列距离,以及碎纸片边缘的几何特征。通过特定的算法对所有碎片按行进行聚类,然后再根据碎片边缘黑色像素的灰度特征,建立碎片之间的相似度,最后根据相似度的大小筛选出邻接碎片。但是无论筛选的条件有多精确,还是会出现匹配错误,这时就会要求引入人工干预。
为了提高拼接复原的准确度,国内外众多学者从不同的角度出发,进行了诸多的尝试,也得到了很多优秀的拼接复原算法。2009年,维也纳科技大学的Mattias Prandtstetter以及Gunther R. Raidl提出了基于变邻域查询(VNS)和蚁群优化算法(ACO) [
碎纸片的按行聚类作为整个拼接复原过程的重要组成部分,同样也吸引众多国内外学者对其进行研究。2013年,尹玉萍等人提出了基于碎纸片特征向量的动态行聚类算法进行行初步聚类,再根据文字特征及行距对初步聚类进行调整修改,才确定最终的行分类 [
本文的研究重点也聚焦在聚类过程上,本文在聚类过程中引入了“行间距权数”,“模板峰值权数”,以及“模板更新”的概念,以实现碎纸片的更好聚类。在本文中,我们假设所有的碎纸片无破损,且只有黑白双色(灰度值介于0~255之间),切割整齐均匀。
本节针对双向切割的单面英文碎纸片的情况,设计拼接复原算法。设单/双面文本文件被横向平均分割成
这些碎纸片在Matlab软件下,皆有唯一对应的矩阵
Principle 1:任意两张列相邻的碎纸片,其相邻的两个向量中,黑色像素灰度值以及分布位置相近。例如,给定碎片
Principle 2:处于同一行的碎纸片,具有相似的空白行间距特征,构成英文字母的黑色像素具有分布特征。
Principle 3:任意两张行相邻的横切碎纸片,也具有两种相似特征。具体的,若给定模板碎片
本节,我们将
首先对碎纸片矩阵
本文将同行碎纸片中位置重合频率较高处的峰值称为必然峰值,而每行英文字母基本都有五个必然峰值。本文选取图1与图2所对应的两张碎纸片图像,并在图中标出每行字母中五个必然峰值所在位置(见图3)。图3也证实了同行碎片中必然峰值的重合性。本文将横向求和向量
定义1:设某模板碎片有
图1. 图片081.bmp的横向求和图像
图2. 图片077.bmp的横向求和图像
图3. 五个必然峰值出现的位置(081.bmp, 077.bmp)
其中,
由于
定义2:如果待聚类的碎片
由定义2可知,衡量待聚类碎片
此外,处于同一行的碎纸片,还具有相同的空白行间距特征。为了利用这一几何特征,我们引入了行间距权数
定义3:令
从定义3可以看出,
定义4:待聚类碎片
显然,综合了重合峰值权数之和
在聚类过程中,搜索拼接一个新碎片,往往要依赖于一个指定的模板碎片。如果模板碎片选取不当(横向求和向量中信息量较少),筛选出的结果就会差强人意,此外还会引起连锁反应,导致后续筛选的碎片都出错。反过来想,如果一个模板中包含的碎片个数越多,则其所体现的峰值信息与行间距信息也就越全面,聚类过程中产生误差的可能性也越小。因此,我们所采取的改进方法是,指定模板碎片
当
若两碎纸片左右是相邻的,则前一个碎纸片右边一列的像素与后一个碎纸片左边一列的像素向量,在相邻行高位置处的黑色像素灰度值是渐进变化的。这个几何特点在数值上表现为,切缝边缘的两个列向量在相同高度上的非零数值元素(即黑色像素)的大小变化是“渐进的”。为此本文引入边缘差异度
其中
通过该1-范数最小差异模型就可以得到指定碎片
类碎片序列的列拼接算法归纳如下。
同行的类碎片序列按序拼接复原后就形成了一个完整的横切碎片
T | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
---|---|---|---|---|---|---|---|---|---|---|---|
初始模板 | 002 | 006 | 005 | 019 | 001 | 015 | 007 | 008 | 003 | 009 | 000 |
p | 16 | 19 | 17 | 17 | 19 | 18 | 18 | 18 | 18 | 18 | 19 |
q | 84% | 100% | 89% | 89% | 100% | 94% | 94% | 94% | 94% | 94% | 100% |
表1. 单面行聚类序列统计表
我们以2013年全国大学生数学建模竞赛B题的附件4为例,该附件中
以往的算法针对英文碎片进行聚类时,由于英文字母的高度不一致导致算法聚类时正确率较低,从而间接的增加人工干预的次数。本文提出的模板峰值权数向量和行间距权数这两个概念,以及采用了模板更新的方法,大大提高了聚类结果的准确率。
其中模板更新的代价则是牺牲算法的运算时间,因为每聚类完成一次后,以往的数据(如模板峰值权数向量、行间距约束等)都需要重新计算,所以改进后聚类算法的时间复杂度是成倍的增加。本文所提出的1-范数最小相似模型算法在处理信息量较少的碎片时,容易出现误差。这也是本文产生人工误差较多的地方。因此,在以后的工作中,我们会在本文的模型和算法的基础上加入对字母的模式识别技术,希望可以进一步减少人工干预,提高拼接的准确率。
张晨,王诗云. 双向切割单/双面英文碎纸片拼接复原算法设计Algorithm Design of Restoring Two-Way Single/Double-Sized Shredded Documents[J]. 应用数学进展, 2016, 05(02): 159-165. http://dx.doi.org/10.12677/AAM.2016.52021