2013年全国数学建模大赛获奖论文碎纸片的拼接复原 - 图文 联系客服

发布时间 : 星期六 文章2013年全国数学建模大赛获奖论文碎纸片的拼接复原 - 图文更新完毕开始阅读57c0bbee84868762cbaed525

2013高教社杯全国大学生数学建模竞赛

承 诺 书

我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛网站下载)。

我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。

我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。

我们郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。

我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。

我们参赛选择的题号是(从A/B/C/D中选择一项填写): B 我们的参赛报名号为(如果赛区设置报名号的话): 所属学校(请填写完整的全名): 参赛队员 (打印并签名) :1. 卢丽丹 2. 王雪梅 3. 国占飞 指导教师或指导教师组负责人 (打印并签名): 指导教师组 (论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。以上内容请仔细核对,提交后将不再允许做任何修改。如填写错误,论文可能被取消评奖资格。)

日期: 年 月 日 赛区评阅编号(由赛区组委会评阅前进行编号):

2013高教社杯全国大学生数学建模竞赛

编 号 专 用 页

评 阅 人 评 分 备 注 赛区评阅编号(由赛区组委会评阅前进行编号):

赛区评阅记录(可供赛区评阅时使用):

全国统一编号(由赛区组委会送交全国前编号):

全国评阅编号(由全国组委会评阅前进行编号):

碎纸片的拼接复原

摘要

本文主要研究碎纸片拼接复原的问题,它实质上是建立特征数组并利用C语言进行比较。

在问题1中,建立了以每个边缘像素到原点距离的特征数组;通过比较边缘像素,

以距离比较的方法得到各个图象的特征数组相似度的大小并以此建立模型1。具有最大相似度的图片认为其匹配。

对于问题2,由于出现精度太低的情况,所以我们对问题1进行了改进,由于问题2

图片横纵切。所以首先把上、下、左、右、左上边缘及没有像素的碎片分为1,2,3,4,5组,其他归为第6组,以分组3,分组4,分组5为基准,分别向中间匹配。并且在匹配的过程中,以(分组3)为基准的时候只与分组6匹配;以分组4为基准的时候只与分组6匹配;分组5只与分组1匹配建立模型2。对于没有匹配的剩余碎片通过穷举每个图片输出一个最优匹配矩阵,最终我们完美解决了问题2。

问题3中在模型1和模型2的基础上,匹配任意一张图片时把相似度大于35%的预

匹配图片先存入一个预检验数组(数组1),之后匹配此图片的另一面与数组1中的预匹配图片的另一面进行检验并以此建立模型3。

利用边缘像素点儿到原点的距离建立特征数组为模型,对于特征数组比较、边缘像

素特征分组分别匹配、正反两面匹配验证的深入是本文的一个重要特色。特色的优点是:模型可以推广至只要是有像素差即可复原。

1

关键词:边缘像素提取,距离对比,双向缩进,匹配检验,C语言

1 问题的重述

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

问题1. 对于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法,并针对附件1、附件2给出的中、英文各一页文件的碎纸片数据进行拼接复原。

问题2. 对于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法,并针对附件3、附件4给出的中、英文各一页文件的碎纸片数据进行拼接复原。

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

2 问题分析

本课题研究的是碎纸片的拼接复原问题,给出了单面纵切、单面横纵切、双面横纵切的碎纸片图像。解决这些问题的核心是建立一个碎纸片拼接复原模型和算法。首先要解决的问题是碎纸片像素的提取,利用C语言编程对图像解析提取图像像素,通过进制转换将图像转化为(0,1)矩阵,而后通过建立算法计算边缘像素的数值间最大相似度,将其排列。那么该问题的实质就成为建立算法求解两图像边缘像素最大相似度问题。可以建立算法确定出图像边缘的图像碎纸片;计算边缘像素的特征数组间的最大相似度,然后按照最大相似度将碎纸片间的匹配后,最后以边缘的碎纸片为基准即可将碎纸片排列。

针对问题一:需要解决的是仅纵切的碎纸片的简单拼接问题。首先根据图像纵切的特点,整个原始图像切片最左端碎纸片图片应该左边缘特征数组为0,从而确定出最左端的碎纸片图像;然后我们通过C语言编程提取出碎纸片像素的一个72?1980的?0,1?矩阵,然后提取上下左右四边的边缘像素存入相应数组中,并试图根据碎纸片的边缘像素求解图像切缝左右碎纸片图像与待比较碎纸片图像的相似度建立模型1,按照最大相似度将碎纸片图像进行匹配后,以最左边缘的碎纸片为基准即可将碎纸片复原。

针对问题二:由于问题二中图片量大并且是进行了横纵切,如果直接用模型1的方法会出现匹配的精度过低的情况,所以我们试图提高匹配精度。首先用a图匹配b图,然后用b图匹配a图,取两次相似度最小的那一个作为a与b的相似度,以此避免了精度过低的问题,但还是有输出结果不理想和代码时间复杂度大的问题。所以我们对碎纸片图像进行了程序算法分组:通过寻找上边缘(分组1)、下边缘(分组2)、左边缘(分组3)、右边缘(分组4)、左上边缘(分组5)没有像素的和其他碎纸片(分组6)分为6组,以分组3,分组4,分组5为基准,分别向中间匹配。并且在匹配的过程中,以(分组5)没有像素碎纸片为基准的时候只与分组1匹配;以分组3为基准的时候只与分组6匹配;分组5只与分组6匹配。以此解决了精度不足和程序时间复杂度大的问题,并

2