碎纸片的拼接复原数学建模二等奖论文.doc
《碎纸片的拼接复原数学建模二等奖论文.doc》由会员分享,可在线阅读,更多相关《碎纸片的拼接复原数学建模二等奖论文.doc(40页珍藏版)》请在三一办公上搜索。
1、碎纸片的拼接复原摘要破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。但是人工完成效率很低,所以引入计算机复原,计算机虽然准确率不及人工高,但是可以大大减轻工作强度。本论文主要是对纸张形状为矩形切割规范并且纸张上的文字标准的碎纸片的拼接复原的研究。问题一:首先根据图片的灰度矩阵找出第一张(最左侧)图片,根据小差值优先匹配依次排出相邻图片。碎纸片复原后的顺序如附件一、二所示。问题二:首先根据图片的灰度矩阵最左侧n列灰度值求和最大,可找出第一列(最左侧)图片,共11张。根据 “行间”的位置特征作为凝聚点进行聚类分析,将所有图片分为11类,即11行。应用小差值优先匹配
2、将这每行的图片进行拼接,得到11个行图片,再次应用小差值优先匹配把这11个行图片拼接成完整的图片。碎纸片复原后的顺序如附件三、四所示。问题三:同问题二方法一致,找出第一列(最左侧)图片(正反两面共有22张图片),将这些“行间”的位置特征作为凝聚点进行聚类分析,所有的图片分为11“大行”,将这些图片配对的正反面进行上边缘“粘接”处理,按照小差值优先匹配将这每行的粘接形成的19图片(如图一所示)进行拼接,得到11个行图片之后,再次应用小差值优先匹配把这11个行图片拼接成完整的图片。碎纸片复原后的顺序如附件五所示。观察上述三个问题的处理方法可知,三个问题的解决办法主干思想完全相同,都是小差值优先匹配
3、解决,并且清晰简练。但是由于问题的逐渐深入和复杂程度的增加,仅靠这一个简单的方法并不能在实际中解决问题,于是增加约束条件减小搜索范围,如:找出“行间”位置,并作为凝聚点进行聚类分析,然后就可以很大程度上减小出错的概率。关键词:聚类分析、MATLAB R2012a、小差值优先匹配、灰度矩阵 1、问题重述破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。传统上,拼接复原工作需由人工完成,准确率较高,但效率很低。特别是当碎片数量巨大,人工拼接很难在短时间内完成任务。随着计算机技术的发展,人们试图开发碎纸片的自动拼接技术,以提高拼接复原效率。请讨论以下问题:(1). 对
4、于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法,并针对附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原。如果复原过程需要人工干预,请写出干预方式及干预的时间节点。复原结果以图片形式及表格形式表达(见【结果表达格式说明】)。(2). 对于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法,并针对附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原。如果复原过程需要人工干预,请写出干预方式及干预的时间节点。复原结果表达要求同上。(3). 上述所给碎片数据均为单面打印文件,从现实情形出发,还可能有双面打印文件的碎纸片拼接复原问题需要解
5、决。附件5给出的是一页英文印刷文字双面打印文件的碎片数据。请尝试设计相应的碎纸片拼接复原模型与算法,并就附件5的碎片数据给出拼接复原结果,结果表达要求同上。2、问题分析分析本问题可知,第一问是解决此类问题的基本方法,第二问及第三问相比第一问逐渐变得复杂,但主要解决思路与第一问相同,只是在第一问的基础上需要应用其他方法缩小搜索范围,但主体方法并未改变。针对问题一:对于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法。在MATLAB软件12中应用imread函数读取附件一及附件二中的图片,可以获得相应的灰度矩阵,从矩阵中可以清楚地看到图片中每个像素的灰度值。观察
6、图片边缘及灰度矩阵边缘可以得出:图片被切割后会在这张图片被切割两侧生成相似的两个列矩阵,可以猜测这两个列矩阵相似程度越高则这两张图片可以拼接复原的概率就越大。为表示两列矩阵的相似程度,对这两列矩阵进行对应行相减取绝对值最后求和,所求得的和越小两矩阵越相似即复原概率越大。最左边一张图片的最左侧全为空白,即最左侧矩阵所有行求和值最大,可以得到最左侧的图片,然后可以拼接出整张图片。针对问题二:对于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法。方法一:应用第一问中的小差值优先匹配,求出所有图片边缘矩阵的对应行相减取绝对值最后求和,然后逐个比较,此时会发现由于图片小且图片中字数较少,灰度矩阵
7、所给出的信息就会比较少,并且应用小差值优先匹配所求和会有大量数值相差不是很大图片出现,出现过多的候选项,这会对判断哪张图片可以复原产生很大的影响,甚至会出现无法选择,因为部分图片是正好没有切割文字,此时计算机是无法判断哪张可以复原的,就需要对方法一进行补充提供更多的约束条件或是进行人工干预,所以得出了以下的方法二。方法二:此方法主体方法也是应用小差值优先匹配,针对上述出现过多的候选项情况,观察附件三及附件四中的图片会发现,虽然所给的图片小且文字数目少,但是观察可知这些图片全部大小一致但是“行间”(两行文字之间的空白处)所出现的位置是不同的,记录这几行的位置,将其余图片所生成的矩阵对比,若特殊的
8、几行出现在相同的位置,则可将这些图片分为一“大行”(这些图片的行间距出现的位置相同)。然后将“大行”内的图片应用第一问中的小差值优先匹配进行拼接,可将这些行拼出。紧接着人工干预将所得的行分为11行(如果所得到的行多余11行),最后将这是11行转置成11列,按照第一问的方法进行即可拼出完整的图片。针对问题三:该问题比第二问更复杂,但是更贴合于实际情况,即实用性很强。仔细观察附件5中的图片,可以观察到,每张图片的a面和b面,“行间”所处的位置是相同的。这样,可以“行间”所处的位置进行聚类,聚为11类,同第二问方法一样,先分行,然后再每行拼接出来,转置成列,应用小差值优先匹配将这11列拼接,即可得出
9、完整图片。但是行分完后,猜测每行有英语碎纸片,由于英文字母本身所能获得的信息量较少,且每行的图片过多,在按照第二种方法处理时,会出现过多接近值,甚至会出现错误排列, 再仔细观察及阅读题意可以得出,一行图片的正面确定且结果正确时,反面是自然形成的,这样就只用到了一面数据量,若此时将两张图片的正反面以上边缘相接展开,形成高度是原高两倍的行图片,这样就会同时应用到正反两面的边缘数据,提高筛选时的准确率。同理,在每一行都拼完后,在进行“大行”相拼的时候,可以将这个行的正反两面以右边缘相接展开,又会形成长度是原长两倍的行,也同时应用到正反两面的边缘数据提高筛选时的准确率。得到图形如一所示:a a(b)a
10、(b)a(b)a(b)bb(a)b(a)b(a)b(a)图一(正反面粘接)按照如上图片正反连接在一起后应用小差值优先匹配加以适当的人工干预,拼出完整行图片。这样可以确定11张行图片,将这11张图片转置成11个列图片,之后再次应用小差值优先匹配拼出完整图片。3、模型假设(1)假设所有复原图片中位于同一面的文字的行间距相同。(2)假设页面上的文字全部是统一字体且页面排版相同。(3)假设页面整洁干净无黑点等干扰项。(4)第一列文字距离纸张左边缘的距离大于两相邻文字间的距离。4、符号说明及名词定义符号说明:k: 第k张图片n: 图片具有n行I: 两张图片边缘拼接能力,值越小,越容易拼接。:第k张图片所
11、对应的灰度矩阵。; 矩阵的第i行第j列所对应的元素。名词定义:“行间”: 相邻两行文字之间固定存在的空白区域,即文字排版时所设计的隔开每行的空白区域。它与这行中是否存在文字无关。小差值优先匹配: 在n张图片中取出每张图片的最左和最右侧的两个列灰度矩阵,然后任一两张图片进行下列运算:第一张图片的最右侧矩阵与第二张图片的最左侧灰度矩阵对应行相减,取绝对值最后求和,这个值越小,表明这两张图片边缘灰度值越接近,即两张图片的边缘小差值优先匹配,拼接的概率越大。5、模型建立与求解5.1第一问模型建立与求解:对于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法。在MATL
12、AB软件中应用imread函数1 2读取附件一中的19张图片,得到19个灰度矩阵。建立目标函数为:(1) 按算法如下:(1) 找出第一张图片: (2)因为一张完整纸张上的字体第一列都会距离页面最左端有一定的距离以方便阅读和美观,所有最左边的图片最左端会对应一列全白,即所生成的矩阵第一列全为255,此时对该矩阵所有行求和会得到最大值504900。应用以上结论,对所有图片的灰度矩阵第一列进行求和,所得值最大的即为最左边一张照片,即 。对所有图片的灰度矩阵第一列进行求最大值的结果为第008张图片为最左边一张图片。(2) 找出第k张照片: (3)观察图片边缘及灰度矩阵边缘可以得出:图片被切割后会在这张
13、图片被切割两侧生成两个相似的列矩阵,即这两个列矩阵相似程度越高则这两张图片可以拼接复原的概率就越大,这里将此方法命名为小差值优先匹配。为比较图片边缘相似程度,将所有图片的最左侧及最右侧矩阵取出,即和对这两列矩阵进行对应行相减取绝对值最后求和,所求得的和越小两矩阵越相似,即匹配概率越大,即(k=2)。3此时和最小的即为第2张图片。以此类推,应用程序1即可求出第3、4、519张图片。顺序如表格一所示:8141215310216145913181171706表格一(3)MATLAB拼接19张图片由程序2所求出图片顺序在MATLAB中用imtool函数4将图片按顺序合并。完整图片的排列顺序即完整图如附
14、件一所示。第一问中的英文图片按上述(1)(2)(3)操作即可得出合并后的图片。完整图片的排列顺序即完整图如表格二所示。表格二3627151811051913108121417164运行程序二即为按照上述步骤操作后得出的完整图片。5.2第二问模型建立与求解: 对于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法,并针对附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原。根据第一问模型改进后建立第二问目标函数为: (4)要解决这个问题,要将这些碎纸片首先按照一定特征聚类,缩小搜索范围,应用到的这种方法叫做聚类分析。5.2.1聚类分析5:聚类分析(cluster analysis)
15、是一组将研究对象分为相对同质的群组(clusters)的统计分析技术。 聚类分析区别于分类分析(classification analysis) ,后者是有监督的学习。选取若干个样品作为凝聚点,计算每个样品和凝聚点的距离,进行初始分类,然后根据初始分类计算其重心,再进行第二次分类,一直到所有样品不再调整为止。动态聚类法计算简单,分类迅速,占用计算机内存少,特别是当样品数较大时,采用动态聚类法比较有利;但动态聚类法的分类结果与最初凝聚点的选择有关,有较大的不确定性。聚类过程如图二所示:选凝聚点初始分类分类是否合理最终分类修改分类图二本题中所应用到的聚类方法为:最短距离法,此论文中,为便于理解,将
16、最短距离理解为灰度值接近,即两边缘小差值优先匹配,记为小差值优先匹配。以下用表示样品与之间距离,用表示类与之间的距离。定义类与之间的距离为两类最近样品的距离,即 (4)设类与合并成一个新类记为,则任一类与的距离是: (5)最短距离法聚类的步骤如下:(1)定义样品之间距离,计算样品两两距离,得一距离阵记为,开始每个样品自成一类,显然这时。(2)找出的非对角线最小元素,设为,则将和合并成一个新类,记为,即。(3)给出计算新类与其它类的距离公式: (6)将中第p、q行及p、q列用上面公式并成一个新行新列,新行新列对应,所得到的矩阵记为。(4)对重复上述对的(2)、(3)两步得;如此下去,直到所有的元
17、素并成一类为止。如果某一步中非对角线最小的元素不止一个,则对应这些最小元素的类可以同时合并。最短距离法也可用于指标(变量)分类,分类时可以用距离,也可以用相似系数。但用相似系数时应找最大的元素并类,也就是把公式中的min换成max。按算法解决步骤如下:5.2.2对于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法,观察附件三中的图片,可以发现这些图片存在以下两个规律:(1)一些图片的整个左端有很大一部分空白,初步参测这几张图片为整张图片的第一列。将附件三中的209张图片用MATLAB用imread函数读出209个灰度矩阵,因为这些图片的整个左端有很大一部分空白,所以这几张图片前11列都
18、是灰度值255,对这11列所有的元素进行求和可得255*11*180=504900,然后对所有图片的前11列求和78,并筛选出数值为504900的所有图片, (7)并将这些图片作为第一列。筛选结果如下007、014、029、038、049、061、071、089、094、125、168(.bmp)这11张图片构成了完整图片的第一列。(2)这209图片全部大小一致但是行间距(两行文字之间的空白)所出现的位置是不同的,“行间”出现的位置不同且只有固定的几种。表现在灰度矩阵中就是整个同一行的图片会出现相同的某几行数值全为255,对这些矩阵进行行求和,利用MATLAB将值为19*255=4854的行记
19、为1 9,值小于4854的记为0,可以清晰的得出“行间”的位置,在此处记录两个完整的“行间”,利用这些位置特征将这209张图片分为11类,即11“大行”。MATLAB实现分“大行”过程:将附件3中求出的209图片,全部进行每行求和,并利用MATLAB将值为19*255=4854的行记为1,值小于4854的记为0,可以得出这209张图片的“行间”位置记录矩阵。将以上11张图片的“行间”位置作为参考,利用这些图片分成11行。由于图片较小从中能获取的数据量较少,所以再用小差值优先匹配后会的发现拼错的概率比较大,所以在此对模型进行改进,同上,找出图片最右侧一列,然后从右往左开始拼接,最后将这两列图片合
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 纸片 拼接 复原 数学 建模 二等奖 论文
链接地址:https://www.31ppt.com/p-3019117.html