2013年全国大学生数学建模竞赛B题全国一等奖论文

碎纸片的拼接复原

【摘要】

破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。本文主要解决碎纸机切割后的碎纸片拼接复原问题。

针对第一问,附件1、2分别为沿纵向切割后的19张中英文碎纸片,本文在考虑破碎纸片携带信息量较大的基础上,利用MATLAB对附件1、2的碎纸片图像分别读入,以数字矩阵的方式进行存储。利用数字矩阵中包含图像边缘灰度这一特征,本文采用贪心算法的思想,在首先确定原文件左右边界的基础上,以Manhattan距离来度量两两碎纸片边界差异度,利用计算机搜索依次从左往右搜寻最匹配的碎纸片进行横向配对并达成排序目的。最终,本文在没有进行人工干预,成功地将附件1、2碎纸片分别拼接复原,得到复原图片见附录2.1、2.2,纵切中文及英文结果表分别如下:

9 15 13 16 4 11 3 17 2 5 6 10 14 19 12 8 18 1 7 4 7 3 8 16 19 12 1 6 2 10 14 11 9 13 15 18 17 5 针对第二问,附件3、4分别为既横切又纵切后的209张中英文碎纸片,本文核心思想仍为贪心算法,整体思路为先对209张碎纸片进行聚类还原成11行,再对分好的每行进行横向排序,最后对排序好的各行进行纵向排序。本文在充分考虑汉字与拉丁字母结构特征差异以及每块碎纸片携带信息减少的基础上,创新地提出一种特征线模型来分别描述汉字及拉丁文字母的特征用于行聚类。对于行聚类后碎片的横向排序,本文综合了广义Jaccard系数、一阶差分法、二阶差分法、Spearman系数等来构建扩展的边界差异度模型,刻画碎片间的差异度。对于计算机横向排序存在些许错误的情况,本文给出了人工干预的位置节点和方式。对于横向排序后的各行,由于在一页纸上,文字的各行是均匀分布的,本文基于各行文字的特征线,在确定首行的位置后,估计出其他行的基准线位置,得到一页的基准线网格,并通过各行基准线在基准线网格上的适配实现纵向的排序。最终,本文成功的将附件3、4碎纸片分别拼接复原得到复原图片及结果表见附录1.3、1.4、2.3、2.4,同时本文给出了横向排序中人工干预的位置节点和方式。

针对第三问,附件5为双面文件既横切又纵切后的209张碎片(包含正反面),即包含418张图像。本文整体解决思路同第二问中对于拉丁文碎片的复原类似,并且由于正反两面的特征可以同时作为差异度判断条件,特征信息丰富,综合使用各种差异度函数后可以将各行全部正确排列,无需人工排错,同时正确排序时自然分出两面。以与问题二类似的方法,确定出每一面的第一行后,用基准线网格确定各行的位置并排序。然而由于附件5原件的第3、第4行及第9、第10行的两个切口正好切到了两行行间的空白,同时两面文字高度一致,所以计算机不可能分辨二者是否在同一面,此处必须由人工介入,通过上下文区分。最终,本文成功的将附件5所有碎片分别拼接复原得到复原图片及结果表见附录1.5、1.6、2.5、2.6。对于本问题,本文只在最后模块的上下文判断和横向排列的方法选择时进行了干预,自动化程度高。

本文发现在横向排序中,一、二阶差分法对于样本量大的情况适配成功率很高,而广义Jaccard系数及Spearman系数则对样本量小但特征显著的情况适配的成功率更高。

关键词:图像拼接复原 贪心算法 差异度 相似系数 文字基准线

1

一、问题重述

破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。传统上,拼接复原工作需由人工完成,准确率较高,但效率很低。特别是当碎片数量巨大,人工拼接很难在短时间内完成任务。随着计算机技术的发展,人们试图开发碎纸片的自动拼接技术,以提高拼接复原效率。请讨论以下问题:

1. 对于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法,并针对附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原。如果复原过程需要人工干预,请写出干预方式及干预的时间节点。复原结果以图片形式及表格形式表达。

2. 对于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法,并针对附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原。如果复原过程需要人工干预,请写出干预方式及干预的时间节点。复原结果表达要求同上。

3. 上述所给碎片数据均为单面打印文件,从现实情形出发,还可能有双面打印文件的碎纸片拼接复原问题需要解决。附件5给出的是一页英文印刷文字双面打印文件的碎片数据。请尝试设计相应的碎纸片拼接复原模型与算法,并就附件5的碎片数据给出拼接复原结果,结果表达要求同上。

二、模型假设

1. 假设原题附件给出的破碎纸片图像是完好无损的。

2. 假设原题附件给出的破碎纸片仅包含纯文字内容(中英文),不含表格线等。 3. 假设原题附件给出的破碎纸片在切割时无油墨损失。

4. 假设原题附件给出的破碎纸片文字方向与切割方向均为水平或垂直。。 5. 假设原题附件给出的破碎纸片文字均为水平正向,无旋转。

三、符号说明

序号 1 2 3 4 5 6 7 符号 S gn,R gn,L 说明 碎片集 碎片n的右边界向量 碎片n的左边界向量 碎片n与碎片k的边界差异度 特征线位置 行高 标高、余高、空高、字高 2

?(n,k) L H hm、hr、hb、hc

四、 问题一:仅纵切时的纸片拼接复原

4.1问题一的分析

本题的所有碎片为形状一致的矩形,且均为黑白文字,文字边缘有灰色部分。由于原图切割前的信息具有一定的连续性,本文希望遵循这一思路,首先确定出碎片中的位置为最左的一个,再以之为基础,在剩下的碎片中寻找可以与之配对(或配对情况最好)的一个碎片。 4.2问题一的数学模型 4.2.1灰度矩阵与灰度向量模型

描述碎片的模型为图像的灰度矩阵,灰度矩阵的每个元素对应到图像上的每个像素点,取值为0(白色)到255(黑色)。每个碎片均可以确定一个同型的灰度矩阵,灰度矩阵的特征反映了图像的特征。灰度矩阵的每一列构成了一个描述局部特征的列向量,在图片上的宽度为1像素。

所有碎片构成碎片集S。 4.2.2边界差异度模型

对于一个给定的碎片,找到可以与之拼接的另一碎片的最重要的特征是其边界的列向量。图片上连续的部分具有类似的结构,则相邻的列向量就具有类似的特征。对碎片集S中的碎片n,其左右边界的灰度向量分别为gn,R与gn,L,寻找这个向量右侧最匹配的下一个碎片n+1,等价于在剩下的碎片中寻找到向量k,满足边界差异度

?(n,k)??(n,n?1) (4.1)

但是由于并不知道下一个碎片具体是哪一个碎片,所以实际上?(n,n?1)的值是未知的。然而可以假定两个匹配的碎片的边界差异度?(n,n?1)的值是所有的边界差异度?(n,k)中最小的。则问题转化为在碎片集S中寻找满足的碎片k。

?(n,k)?min?(n,i),i?S (4.2)

对于边界差异度?,可以用多种方法来定义,这个论题将在问题2作更加详细的阐述。将边界向量g视为一个180维空间中的一点,则二者的差异度可以用两点之间的“距离”来描述。此处取Manhattan距离

?(n,k)??gn,R?gk,L (4.3)

3

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4