2013年全国大学生数学建模竞赛B题全国一等奖论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
碎纸片的拼接复原
【摘要】
破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。本文主要解决碎纸机切割后的碎纸片拼接复原问题。
针对第一问,附件1、2分别为沿纵向切割后的19张中英文碎纸片,本文在考虑破碎纸片携带信息量较大的基础上,利用MATLAB对附件1、2的碎纸片图像分别读入,以数字矩阵的方式进行存储。利用数字矩阵中包含图像边缘灰度这一特征,本文采用贪心算法的思想,在首先确定原文件左右边界的基础上,以Manhattan距离来度量两两碎纸片边界差异度,利用计算机搜索依次从左往右搜寻最匹配的碎纸片进行横向配对并达成排序目的。最终,本文在没有进行人工干预,成功地将附件1、2碎纸片分别拼接复原,得到复原图片见附录2.1、2.2,纵切中文及英文结果表分别如下:
为先对本文
3、第4行及第9
Spearman
拼接复原
1. 对于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法,并针对附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原。如果复原过程需要人工干预,请写出干预方式及干预的时间节点。复原结果以图片形式及表格形式表达。
2. 对于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法,并针对附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原。如果复原过程需要人工干预,请写出干预方式及干预的时间节点。复原结果表达要求同上。
3. 上述所给碎片数据均为单面打印文件,从现实情形出发,还可能有双面打印文件的碎纸片拼接复原问题需要解决。附件5给出的是一页英文印刷文字双面打印文件的碎片数据。请尝试设计相应的碎纸片拼接复原模型与算法,并就附件5的碎片数据给出拼接复原结果,结果表达要求同上。
二、模型假设
1. 假设原题附件给出的破碎纸片图像是完好无损的。
2. 假设原题附件给出的破碎纸片仅包含纯文字内容(中英文),不含表格线等。
3. 假设原题附件给出的破碎纸片在切割时无油墨损失。
4. 假设原题附件给出的破碎纸片文字方向与切割方向均为水平或垂直。。
5. 假设原题附件给出的破碎纸片文字均为水平正向,无旋转。
三、符号说明
255所有碎片构成碎片集S 。
4.2.2边界差异度模型
对于一个给定的碎片,找到可以与之拼接的另一碎片的最重要的特征是其边界的列向量。图片上连续的部分具有类似的结构,则相邻的列向量就具有类似的特征。对碎片集S 中的碎片n ,其左右边界的灰度向量分别为,n R g 与,n L g ,寻找这个向量右侧最匹配的下一个碎片n +1,等价于在剩下的碎片中寻找到向量k ,满足边界差异度
(,)(,1)n k n n δδ=+ (4.1)
但是由于并不知道下一个碎片具体是哪一个碎片,所以实际上(,1)n n δ+的值是未知的。然而可以假定两个匹配的碎片的边界差异度(,1)n n δ+的值是所有的边界差异度(,)n k δ中最小的。则问题转化为在碎片集S 中寻找满足的碎片k 。
(,)min (,),n k n i i S δδ=∈ (4.2)
对于边界差异度δ,可以用多种方法来定义,这个论题将在问题2作更加详细的阐述。将边界向量g 视为一个180维空间中的一点,则二者的差异度可以用两点之间的“距离”来描述。此处取Manhattan 距离
,,(,)n R k L
n k g g δ=-∑ (4.3)
4.3计算流程
图1:问题一算法流程说明图
问题一的拼接过程使用贪心算法,首先确定出最左侧的碎片1,然后从剩下的样本中寻找与碎片1的边界差异度最小的碎片作为下一个碎片,再寻找与第2个碎片配对的第3个碎片,以此类推。
碎片1判别为碎片左侧留白最宽者。
4.4问题一的结果
4.5
5.15.25.2.1文字打印在纸张上时,是沿着一条直线的基准线排列的。由于本文所研究的所有碎片均没有旋转,所有可以用比较简单的方法来搜索基准线。在本文中,基准线是特征线中有特殊意义的一条。
确定特征线和基准线的目的有二:一是从碎片集S 中将属于同一高度的碎片聚类到第n 行碎片子集n S 中,二是通过特征线可以确定行碎片子集n S 的顺序,即各个行碎片子集n S 在纵向的排列,这个内容将在5.2.2详细阐述。
a )汉字的特征线(针对附件3)
汉字的特性决定了汉字每一行中每个字的高度大致是相同的。尽管可能出现如“一”等高度差异很大的汉字,但是这种情况非常少。所以对于汉字,可以用上下两条特征线来描述汉字的位置,并且只需要少量的样本就能够确定出两条特征线。
图3:汉字的特征线
对一行汉字的两条特征线,作如图的命名。
图4:汉字的特征线
上边线(基准线)位置1L 与下边线位置2L 之差满足
12c L L h -= (5.1)
式中c h 为字高。在计算中取44c h =。
碎片上第n 行的基准线位置1,n L 与下一行基准线位置1,1n L +之间的差异为1个行距H ,即
1,1,1n n L L H +-= (5.2)
行高 (5.3)
式(b 3。拉丁字 (5.4) 式中:m h 5.2.21,1,n k (5.5)
5.2.3扩展的边界差异度模型
由于本题中碎片的更小,碎片的边界向量信息有限,4.2.2中的模型不能满足要求,因此本文拓展了几种计算边界差异度δ的方法。
a )差分的Manhattan 距离
比较边界向量的差分来确定差异度的目的在于消除数据序列的自相关,使得从有限的边界样本中提取的特征信息受到更少的干扰。此处的边界差异度定义为
,,(,)n R k L
n k g g δ=∆-∆∑ (5.6)
上边线(基准线) 下边线