2013年数学建模碎纸片的拼接复原模型
2013全国数学建模竞赛B题优秀论文
基于最小二乘法的碎纸片拼接复原数学模型摘要首先对图片进行灰度化处理,然后转化为0-1二值矩阵,利用矩阵行(列)偏差函数,建立了基于最小二乘法的碎纸片拼接数学模型,并利用模型对图片进行拼接复原。
针对问题一,当两个数字矩阵列向量的偏差函数最小时,对应两张图片可以左右拼接。
经计算,得到附件1的拼接结果为:08,14,12,15,03,10,02,16,01,04,05,09,13,18,11,07,17,00,06。
附件2的拼接结果为:03,06,02,07,15,18,11,00,05,01 ,09,13, 10,08,12,14,17,16,04。
针对问题二,首先根据每张纸片内容的不同特性,对图片进行聚类分析,将209张图片分为11类;对于每一类图片,按照问题一的模型与算法,即列偏差函数最小则进行左右拼接,对于没有拼接到组合里的碎纸片进行人工干预,我们得到了11组碎纸片拼接而成的图片;对于拼接好的11张图片,按照问题一的模型与算法,即行偏差函数最小则进行上下拼接,对于没有拼接到组合里的碎纸片进行人工干预。
我们最终经计算,附件3的拼接结果见表9,附件4的拼接结果见表10。
针对问题三,由于图片区分正反两面,在问题二的基础上,增加图片从下到上的裁截距信息,然后进行两次聚类,从而将所有图片进行分类,利用计算机自动拼接与人工干预相结合,对所有图片进行拼接复原。
经计算,附件5的拼接结果见表14和表15该模型的优点是将图片分为具体的几类,大大的减少了工作量,缺点是针对英文文章的误差比较大。
关键字:灰度处理,图像二值化,最小二乘法,聚类分析,碎纸片拼接一、问题重述碎纸片的拼接复原技术在司法鉴定、历史文献修复与研究、军事情报获取以及故障分析等领域都有着广泛的应用。
近年来,随着德国“斯塔西”文件的恢复工程的公布,碎纸文件复原技术的研究引起了人们的广泛关注。
传统上,拼接复原工作需由人工完成,准确率较高,但效率很低。
特别是当碎片数量巨大,人工拼接很难在短时间内完成任务。
碎纸片拼接复原的数学模型_杨武
121数学学习与研究2014.11碎纸片拼接复原的数学模型◎杨武李博(江苏南京农业大学工学院210000)【摘要】本文对碎片的拼接复原问题,建立了碎纸片拼接模型,编写matlab 程序,利用人机交互指令实现碎片的快速拼接.对2013年“高教社杯”全国大学生数学建模竞赛的B 题中所给11x 19个碎片文件进行拼接.【关键词】碎片拼接模型;matlab ;灰度值矩阵;Kmeans 聚类;人机交互一、研究背景及意义近年来,大量政府机关、企事业单位采用碎纸机对废弃文件或失效的机密文件进行破碎,这种破碎方法产生的碎片多为规则的.这使得在进行破碎文件的复原拼接时,只能根据文字内容进行匹配,为此,本文考虑应用当前的计算机识别技术开发碎纸片的自动拼接技术,对所有碎片搜索和筛选,寻找能够在某种指标上匹配的碎片进行拼接.提高拼接复原效率,从而大大降低人工工作量和难度.对碎片自动拼接问题的研究,不仅具有广阔的应用前景,而且具有很强的理论意义.二、图像碎片预处理首先,利用matlab 图像处理功能对碎纸片进行图像预处理.即将碎纸片数字化,转化为图片文件的数据.即一个二维数组构成的灰度值矩阵,这个矩阵存储着一张碎纸片各个像素点的颜色值,其中255表示白色,0表示黑色,图片中颜色均处在黑白、或黑白之间,图片数字化后的数字范围在0 255之间.三、碎纸片拼接模型的假设1.假设碎片原文件都存在上、下、左、右的页边距,且边距大于行间距和列间距;2.假设相邻碎片间纸张信息的损失可以忽略不计;3.假设碎纸机是沿平行或垂直于文字的方向对纸张进行切割的.四、碎纸拼接模型的建立1.挑出每行最左边的图片:根据图片的边缘留有空白部分的特性,挑选出图片最左边存在空白部分的图片作为左边界的候选图片.方法实现:计算图片左边距留白宽度:即可用灰度值矩阵中左端竖列上全为255(即左侧完全空白)的连续列数度量,由matlab 检测出每张图片的留白宽度.留白宽度排序:对上面得到的留白宽度进行排列,取排在前面的11张图片作为拼接过程的起始碎片.2.图片按行分类:根据Kmeans 聚类算法,对碎片进行按行分类.分类实现:①先根据底端一行是否为纯空白将209幅图分为下端有纯空白行和下端有被截文字两类.②对于空白行一类,下端空白行数相同或相近的纸条属于原文件同一行;③对于下端有被截文字的一类,下端被截文字高度相同或相近的纸条属于原文件同一行.④分析确定好的最左端图片的特征,依此为11个聚类中心,利用matlab 程序分类.3.对同行碎片进行拼接①拼配原则———突变数将所有的碎片进行处理后得到灰度值矩阵,分别记作M i (i =1,…,n )(n 为图片的数量)通过对每一张碎片的数据进行了分析,不难发现在每一张碎片上,同一行相邻两个点的像素值从0变为255或者从255变到0的比例仅有0.016%左右.将相邻两个像素值由0变到255或者由255变到0定义为一次突变.定义两张碎片的突变数如下:设Ri 为某张碎片M i 的最右侧一列像素值,L j 为另一张碎片M j 的最左侧一列像素值(Ri 和L j 均为180行的列向量),碎片M i 和M j 的突变数:T ij =∑180k =1flag (k )ij ,flag (k )ij =1R(k )i -L (k )j =2550R(k )i -L (k )j <{255,其中R(k )i 表示向量Ri 的第k 个分量,L (k )j 表示向量L j 的第k 个分量.②匹配过程以上面确定的最左边的碎片为起点,计算该碎片所在行的可能的碎片与其的突变数T.理论上T 值越小,两个图片的匹配的可能性最大,将T 进行由小到大的排序,在matlab 程序中让起始碎片优先与T 值最小的匹配,若匹配不成功再依次考虑T 值较大的,直至匹配成功.4.人工干预①人工干预时机:本文对209个已有碎片,分析发现若其余碎片与其的突变数仅有一个为0,则突变数为零的那个碎片一定与该碎片相匹配,一旦出现突变数均不为0,则需进行人工干预.②人工干预方法:为减少人工干预次数,做如下工作:1)计算碎片M i 灰度值矩阵最右一列Ri 与位于M i 行的其余碎片灰度值矩阵最左一列L j 的偏差平方和S 作为人工干预的指标:S =∑180i =1(Ri-L i )2.2)对偏差平方和S 由大到小进行排序,将碎片的序号放入集合US 中,S 大的最有可能与碎片M i 相匹配③在matlab 程序中让碎片M i 依次与集合US 中的图片进行匹配,每次对两个图进行匹配时,令命令窗口弹出这两个图匹配在一起的图片,进行人工观察.通过对拼接处文字字形和语义的分析,人工检查该匹配是否合理.5.纵向拼接①观察11条已拼好的横切纸条,根据所有纸条的上边缘特征确定位于原文件顶端的横切纸条,并以该纸条为起始纸条.②根据起始纸条的下边缘灰度值特征,利用上述步奏拼出整张文件.五、模型的评价与改进1.模型的优点:模型采用突变数和偏差平方和作为评价函数评定碎片间邻边的相关度,高效而且实用.能大大减少人工干预的次数.2.模型的局限性:由于研究的是碎纸机产生的碎片.该模型只考虑了对多个相同的形状规则的碎片进行拼接,且当碎片的数量增加且单个碎片的文字覆盖率越小时,更易产生灰度分布情况相似的碎片,需要进行人工干预的次数会相应增多.六、结论本文对碎纸片的匹配原则和人工干预进行了探讨和研究,建立了一个可靠高效的数学模型,利用图片数字化后数值之间的分布规律和相关度引入突变值和偏差平方和作为评价指标,利用matlab 软件实现快速拼接.并为了提高拼接准确性,巧妙地使用人机交互指令进行人工的检测干预.【参考文献】[1]何鹏飞,等.基于蚁群优化算法的碎纸拼接.计算机工程与科学,2011,33(7).[2]邓薇.MATLAB 函数速查手册.北京:人民邮电出版社,2010.[3]宋晓闯.基于灰度和几何特征的图像匹配算法研究.万方数据库,2013-09-13.。
碎纸片的拼接复原算法及MATLAB实现
承诺书我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛网站下载)。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。
如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。
我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
我们参赛选择的题号是(从A/B/C/D中选择一项填写): B我们的参赛报名号为(如果赛区设置报名号的话):所属学校(请填写完整的全名):楚雄师范学院参赛队员(打印并签名) :1. 陈志明2. 施明杰3. 阮秀婷指导教师或指导教师组负责人(打印并签名):(论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。
以上内容请仔细核对,提交后将不再允许做任何修改。
如填写错误,论文可能被取消评奖资格。
)日期: 3013 年 9 月 16 日赛区评阅编号(由赛区组委会评阅前进行编号):编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):碎纸片的拼接复原算法及MATLAB实现摘要:对于只有纵切的情形,文章通过比较当前待拼碎片与剩余碎片的信噪比psnr[1,3,4]的值来确定两碎片是否为邻接碎片;拼接算法首先连续调用右拼函数直到拼接到原图右边界,然后连续调用左拼函数直到拼接到原图左边界,从而得到整幅复原图像;对于单面纵横交错切的情形,文章对首先采用纵切拼接算法将碎片拼接成多幅横条图片,然后将各横条图片矩阵转置[2],再次采用纵切拼接算法拼接;两种情形的拼接,都存在人为参与;实验证明,我们的算法对纵切情形是有效的,对纵横切情况是可行的。
2013年数学建模B题碎纸片的拼接复原
年
9 月 15 日
赛区评阅编号(由赛区组委会评阅前进行编号) :
1
2013 高教社杯全国大学生数学建模竞赛
编 号 专 用 页
赛区评阅编号(由赛区组委会评阅前进行编号) :
赛区评阅记录(可供赛区评阅时使用) : 评 阅 人 评 分 备 注
全国统一编号(由赛区组委会送交全国前编号) :
全国评阅编号(由全国组委会评阅前进行编号) :
2
三.模型假设
1. 所有碎纸片的拼接都可以忽略边缘效应,即可无缝地融合在一起; 2. 对于仅纵切的两块待拼接的碎纸片,可用像素点灰度值矩阵的相似度大于 0.6 作为 判别标准; 3. 对既纵切又横切的碎纸片,拼接后原图形四周的像素点是 255; 4. 人工干预可以准确的选择出不确定的待拼接图形; 5. 对于既纵切又横切的两块待拼接的碎片,先进行行拼接,再进行列拼接; 6. 假设给定待拼接碎纸片边缘平滑。
二.问题分析
第一问中, 对于中、 英文的纵切单面文件, 可以选择矩阵相关性匹配算法, 在 MATLAB 中导入图形后,将图形中的变量转换为矩阵的形式,采用矩阵相似度比较法,提取待拼 接图形中第一列和最后一列像素点灰度值, 用 corr2 函数进行相似度比较, 然后根据相 关系数的大小来判断待拼接图形文字区域的相似程度,相关系数(0 表示毫不相关,-1 和 1 表示完全相关,靠近-1 或 1 表示相似程度较大) 。 由此得到待拼接图形的相应位置,从而实现文字的拼接。 第二问中,中、英文的纵横切单面文件拼接复原的处理问题,在上一问的基础上将 问题简化为 19 次行方向的碎片拼接,对一拼接的行再进行列方向上的拼接。依然使用 矩阵相关性算法,在 MATLAB 中导入图形后,将各个图形的变量转换为的相应的矩阵形 式,矩阵相似度比较,提取待拼接图形四周边缘像素点灰度值,用 corr2 函数进行相似 度比较, 然后根据相关系数的大小来判断带拼接图形文字区域的相似程度。 由于图形数 量多, 相关系数不能唯一确定一张拼接图形, 此时要进行人工干预, 筛选出合适的图形, 再对剩余的待拼接图进行矩阵相似度比较,得到行方向的图形。最后根据 MATLAB 软件 编写的程序和人工干预拼接处整张图形。 第三问中,对于中、英文的纵横切双面文件的拼接复原,在第二问的基础上需要比 较正反两面, 在比较的过程中其中一张有可能出现正反两面与另一张图像在算法中计算 出来的相关系数几乎差不多,此时可能要进行人工干预,选出那张是正面还是反面。
2013 数模国赛 B题 碎纸片的拼接复原
2013高教社杯全国大学生数学建模竞赛B题碎纸片的拼接复原首先分析问题:对于第一问分析如下对于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法,并针对附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原。
如果复原过程需要人工干预,请写出干预方式及干预的时间节点。
求matlab图像拼接程序clear;I=imread('xingshi32.bmp');if(isgray(I)==0)disp('请输入灰度图像,本程序用来处理128 *128的灰度图像!');elseif (size(I)~=[128,128])disp('图像的大小不合程序要求!');elseH.color=[1 1 1]; %设置白的画布figure(H);imshow(I);title('原图像');zeroImage=repmat(uint8(0),[128 128]);figure(H); %为分裂合并后显示的图设置画布meansImageHandle=imshow(zeroImage);title('块均值图像');%%%%%设置分裂后图像的大小由于本图采用了128像素的图blockSize=[128 64 32 16 8 4 2];%%设置一个S稀疏矩阵用于四叉树分解后存诸数据S=uint8(128);S(128,128)=0;threshold=input('请输入分裂的阈值(0--1):');%阈值threshold=round(255*threshold);M=128;dim=128;%%%%%%%%%%%%%%%%% 分裂主程序%%%%%%%%%%%while (dim>1)[M,N] = size(I);Sind = find(S == dim);numBlocks = length(Sind);if (numBlocks == 0)%已完成break;endrows = (0:dim-1)';cols = 0:M:(dim-1)*M;rows = rows(:,ones(1,dim));cols = cols(ones(dim,1),:);ind = rows + cols;ind = ind(:);tmp = repmat(Sind', length(ind), 1);ind = ind(:, ones(1,numBlocks));ind = ind + tmp;blockValues= I(ind);blockValues = reshape(blockValues, [dim dim numBlocks]);if(isempty(Sind))%已完成break;end[i,j]=find(S);set(meansImageHandle,'CData',ComputeMeans(I,S));maxValues=max(max(blockValues,[],1),[],2);minValues=min(min(blockValues,[],1),[],2);doSplit=(double(maxValues)-double(minValues))>threshold;dim=dim/2;Sind=Sind(doSplit);Sind=[Sind;Sind+dim;(Sind+M*dim);(Sind+(M+1)*dim)];S(Sind)=dim;end对于第二问于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法,并针对附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原。
CUMCM2013-碎纸片的拼接复原(全国一等奖)
二.模型假设
1.假设所有附件中给出的碎纸片图像不存在重叠部分;
2
2.假设文件中的碎纸片没有缺失; 3.假设全部碎纸片形状相同且规整。
三.符号说明及有 i 个像素点 每张碎片横向有 j 个像素点
i
j
lij
d ij
Xk
i , j 处图象的灰度值
两碎纸片边缘灰度的偏差距离 任意纸片的右特征向量 任意纸片的左特征向量 中文碎片中心位置的高度
4.3 基于模式相似性测度的偏差距离模型 模式识别中最基本的研究问题是样品与样品之间或类与类之间相似性测度 3 的问 题, 我们采用近邻准则判断两张碎纸片图像边缘灰度信息的相似性, 将任意纸片 k k n 的右特征向量 X k 作为模板,用其他每一张纸片的左特征向量 Yt 模板做比较,观察与哪 个与模板最相似,就是模板的近邻,即 t 纸片排在 k 纸片的右边。 计算模式相似性测度的距离算法有欧式距离、马氏距离、夹角余弦距离等,针对中 英文文本,我们分别测试了不同的距离算法:
次优解 次优解
最优解
最优解
绝对距离在中文识别中的效果评价图
欧式距离在中文识别中的效果评价图
图 1 纸片特征匹配中最优解区分度对比 (横坐标为进行匹配的纸片序号,纵坐标为匹配距离)
当我们对中文碎纸片进行匹配时, 采用绝对距离及欧氏距离作为距离函数都具有较 好的区分度。从图像上可以看出,采用欧式距离,使得每张纸片的期望拼接对象,与潜 在会引起匹配错误的次优匹配对象具有更大的区分度,所以,一般情况下,采用欧式距 离作为距离函数会使得匹配效果更好,有趣的是,在作英文内容的纸片匹配时,情况相 反。 因此, 在之后的算法中, 我们将更灵活的使用这两种距离函数, 而不会固定为一种。 最终得到的附录一及附录二的图片排序表格如下所示:
2013国赛 碎纸片的拼接复原数学建模B解题思路分析
2, 图片为文字,所以可以确认文字的形状,但大多为残字,故 可以补全剩余部分。 #根据残字,进行文字预算,找到字体可能是的字,补全字体,找图 片能补全的部分。 3, 图片文字都为从左到右书写,有固定的行。 #文字又从左到右书写,故可以对字的上下画线,从而将文字的拼接, 改为图形线性的匹配。 4,图片可能正反双面,也就是说可以双向确定但是,由于不知道什 么是正面,什么是反面,所以无法确定,故可以将其当做一副。 #广范围查询。 ¥还可以计算他的下一个或上一个字的位置。
பைடு நூலகம்
故可以对字的上下画线从而将文字的拼接4图片可能正反双面也就是说可以双向确定但是由于不知道什么是正面什么是反面所以无法确定故可以将其当做一副
残纸碎片平拼接
图片信息:
1, 图片边缘完整,语言不是普通话,故无法用语法辨别。 2, 图片为文字,所以可以确认文字的形状,但大多为残 字,故可以补全剩余部分。 3, 图片文字都为从左到右书写,有固定的行。 4,图片可能正反双面,也就是说可以双向确定但是,由 于不知道什么是正面,什么是反面,所以无法确定,故可 以将其当做一副。
(完整word版)2013年数学建模b题
精心整理碎纸片的拼接复原【摘要】:碎纸片拼接技术是数字图像处理领域的一个重要研究方向,把计算机视觉和程序识别应用于碎纸片的复原,在考古、司法、古生物学等方面具有广泛的应用,具有重要的现实意义。
本文主要结合各种实际应用背景,针对碎纸机绞碎的碎纸片,基于计算机辅助对碎纸片进行自动拼接复原研究。
针对问题1,依据图像预处理理论,通过matlab程序处理图像,将图像转化成适合于计算机处理的数字图像,进行灰度分析,提取灰度矩阵。
对于仅纵切的碎纸片,根据矩阵的行提取理论,将。
建中的任一列与矩阵值,序列号。
将程序进行循环操作,得到最终的碎片自动拼接结果。
、;分别作为新生成的矩阵、。
,将矩阵中的任一列分别与矩阵中每一列代入模型,所得p值对应的值即为横排序;将矩阵中的任一行分别于矩阵中的任一行代入模型,所得q值对应的值即为列排序。
循环进行此程序,得计算机的最终运行结果。
所得结果有少许误差,需人工调制,更正排列顺序,得最终拼接结果。
针对问题3,基于碎纸片的文字行列特征,采用遗传算法,将所有的可能性拼接进行比较,进行择优性选择。
反面的排序结果用于对正面排序的检验,发现结果有误差,此时,进行人工干预,调换碎纸片的排序。
【关键词】:灰度矩阵欧式距离图像匹配自动拼接人工干预一、问题重述破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。
传统上,大量的纸质物证复原工作都是以人工的方式完成的,准确率较高,但效率很低。
特别是当碎片数量巨大,人工拼接不但耗费大量的人力、物力,而且还可能对物证造成一定的损坏。
随着计算机技术的发展,人们试图把计算机视觉和模式识别应用于碎纸片复原,开展对碎纸片自动拼接技术的研究,以提高拼接复原效率。
试讨论一下问题,并根据题目要求建立相应的模型和算法:、附件4(1)(2)(3)(4)纸片的自动拼接。
问题1:根据图像预处理理论,通过程序语言将图像导入matlab程序,对图像进行预处理,将碎纸片转换成适合于计算机处理的数字图像形式,并对数字图像进行灰度分析,提取灰度矩阵。
教高社杯全国大学生数学建模竞赛 碎纸片的拼接复原
19
编号
0
0
8
0
1
4
0
1
2
0
1
5
0
0
3
0
1
0
0
0
2
0
1
6
0
0
1
0
0
4
0
0
5
0
0
9
0
1
3
0
1
8
0
1
6
0
0
1
0
0
4
0
0
5
0
0
9
对于问题2中既纵切又横切的碎纸片,在问题一的基础上,充分考虑横向匹配和纵向匹配的要求,运用Matlab程序筛选最左列碎片成分,经过适当的人工干预根据文字行特征将所剩碎片进行行分类,大大提高拼接效率,得到意想的效果.例如文字文件的拼接结果如下表所示:
考虑到使用计算机的拼接过程应该与人工拼接过程是相类似的,即拼接时不但考虑碎片边缘是否匹配,还要判断碎片内字迹断线和文字内容是否匹配.然而根据现在已有的技术,实现计算机智能识字是几乎不可能的.但是我们可以获取图片所提供的像素信息,将其转化为矩阵,根据图像的像素矩阵值进行碎片拼接,用计算机去运行处理数据,可以想象其拼接效率无疑比单纯利用边界特征的方法好很多.
二 问题的分析
破碎文件的复原,最直接及最精确的就是人工拼接,但是当碎片的数量巨大时,人工方式就显得效率低下,所以就考虑把破碎文件运用计算机技术来帮助人们进行破碎文件的复原,让计算机在这个过程中发挥主要作用,但是用计算机处理,又不是百分之一百完美,因此在适当的时候也需要进行人工干预.
本文运用碎纸片的自动拼接技术,对每个附件给出的碎片文字材料进行分析,尽可能减少人工干预,本文给出的图像数据均为形状、大小一样的规则长四边形,由于形状的一致性,所以在拼接时如果只考虑利用碎片的边界特征,直接拼接,显然效果不理想.
碎纸片的拼接复原算法及MATLAB实现
承诺书我们认真阅读了《全国大学生数学建模比赛章程》和《全国大学生数学建模比赛参赛规则》(以下简称为“比赛章程和参赛规则” ,可从全国大学生数学建模比赛网站下载)。
我们完好理解,在比赛开始后参赛队员不可以以任何方式(包含电话、电子邮件、网上咨询等)与队外的任何人(包含指导教师)研究、议论与赛题有关的问题。
我们知道,剽窃他人的成就是违犯比赛章程和参赛规则的,假如引用他人的成就或其余公然的资料(包含网上查到的资料),一定依据规定的参照文件的表述方式在正文引用途和参照文件中明确列出。
我们郑重承诺,严格恪守比赛章程和参赛规则,以保证比赛的公正、公正性。
若有违犯比赛章程和参赛规则的行为,我们将遇到严肃办理。
我们受权全国大学生数学建模比赛组委会,可将我们的论文以任何形式进行公然展现(包含进行网上公示,在书本、期刊和其余媒体进行正式或非正式发布等)。
我们参赛选择的题号是(从A/B/C/D 中选择一项填写): B我们的参赛报名号为(假如赛区设置报名号的话):所属学校(请填写完好的全名):楚雄师范学院参赛队员(打印并署名 ) : 1.陈志明2.施明杰3.阮秀婷指导教师或指导教师组负责人(打印并署名 ):(论文纸质版与电子版中的以上信息一定一致,不过电子版中无需署名。
以上内容请认真查对,提交后将不再同意做任何改正。
如填写错误,论文可能被撤消评奖资格。
)日期: 3013年9月16日赛区评阅编号(由赛区组委会评阅行进行编号):编号专用页赛区评阅编号(由赛区组委会评阅行进行编号):赛区评阅记录(可供赛区评阅时使用):评阅人评分备注全国一致编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅行进行编号):碎纸片的拼接还原算法及MATLAB实现纲要:关于只有纵切的情况,文章经过比较目前待拼碎片与节余碎片的信噪比psnr[1,3,4]的值来确立两碎片能否为毗邻碎片;拼接算法第一连续调用右拼函数直到拼接到原图右界限,而后连续调用左拼函数直到拼接到原图左界限,进而获得整幅还原图像;关于单面纵横交织切的情况,文章对第一采纳纵切拼接算法将碎片拼接成多幅横条图片,而后将各横条图片矩阵转置[2],再次采纳纵切拼接算法拼接;两种情况的拼接,都存在人为参加;实考证明,我们的算法对纵切情况是有效的,对纵横切状况是可行的。
碎纸片拼接问题(2013B)
方法2:聚类算法:主要方法,效果好。
• 计算 Ai 的行和,得到一个特征向量 ri 。定义适当的 向量相似度指标,对 ri 进行相似度计算,然后对所有 碎片进行聚类,得到分行结果。
几种相似度度量指标:
1 欧式距离倒数: d ij || ri r j ||
夹角余弦: cos ij || r || || r || i j 相关系数: ij
规划方法:将每一行的碎片依次编号为 1, 2, , N . 定义两碎片之间的有向距离为 cij 。
令 xi ,k 1, 第 i 块碎片在第 k 个位置上 否则 0,
ห้องสมุดไป่ตู้
min z
N 1 N
c
k 1 i 1 j 1 , j i
N
ij
x i ,k x j ,k 1
c
MN
k ,l
x i , j , k x i , j 1 ,l
M 1 N MN
i 1 j 1 k 1 l 1 , l k
d
MN
k ,l
x i , j ,k x i 1 , j ,l
约束条件: (1)每个碎片只能放在一个位置上。
x
i 1 j 1
(1)整体的文字拼接正确度;
不易衡量。
(2)纸片两两之间的拼接正确度。
•如何计算纸片两两之间的拼接正确度? 分析:假设纸片 i 和 j 拼接在一起,i 左 j 右,则 应该可以计算出一个相关的正确度指标。 怎么计算?
• 利用什么信息计算? 利用Matlab 软件读取碎片,生成相对应的灰度值 数字矩阵 Ai 。
如何确定碎纸片的位置?
方法一:一次性确定所有碎纸片的位置。 方法二:分组确定碎纸片的位置。 方法三:逐一确定碎纸片的位置。
碎纸片的拼接复原的数学模型
碎纸片的拼接复原摘要本文主要采用了模糊模型识别、灰度相关、傅里叶变换等方法对碎纸自动拼接进行了深入探讨。
文中主要结合司法物证复原、历史文献修复、军事情报获取这一背景,针对横纵切碎自动拼接展开探究。
提出一种基于最大梯度和灰度相关的全景图拼接法。
同时采用边界提取法使图像预处理达到最好的效果,期间采用傅里叶变换对图像进行处理,最后再利用匹配准则等方法处理图像的拼接。
最终应用模糊模型识别法建立模型,通过隶属函数的建立实现最终的碎纸拼接。
期间有些碎纸片计算机无法识别,需要进行人工干预,从而才能得到一副完整的复原图。
图像拼接的主要工作流程可以概括为以下三个步骤:(1) 对图像碎片进行预处理,即对物体碎片数字化,得到碎片的数字图像。
(2) 图像碎片匹配,通过匹配算法找到相互匹配的图像碎片。
(3) 图像碎片的拼接合并,将相互匹配的图像碎片拼接在一起得到最终结果。
针对问题一:将图像导入MATLAB 进行相应的转化,由于数据量较大,所以对数据进行优化提取。
计算提取数据的均值与方差,找出其模糊集,建立符合题意的隶属函数。
由于模糊集的边界是模糊的,如果要把模糊概念转化为数学语言,需要选取不同的置信水平(01)λλ≤≤ 来确定其隶属关系,从而实现纵切图像的全景拼接。
(如表一、表二)针对于问题二:由于是横纵切碎纸片,所得图像较多,采用提取像素法对图片进行灰度分析,通过中介量阈值的确定来找出像素点的差别,梯度值在这一过程中也是作为衡量两张碎纸片是否匹配的标准。
从而对数据进行处理,最后导入MATLAB 软件实现拼接。
(如表三、表四)针对问题三:它是在问题一和问题二上加深了难度,采用提取像素点,傅里叶变换,灰度相关、模糊相似优先比等方法对问题进行分析,通过(0,1)矩阵的简化运算以及傅里叶变换得到最后的结果,但对于傅里叶变换需说明一点,变换之后的图像在原点平移之前四角是低频,最亮,平移之后中间是低频最亮,也就是说幅角比较大。
此过程中同时也需要人工干预,最终实现拼接。
数学建模—碎纸片的拼接复原
碎纸片的拼接复原模型摘要本文针对破碎纸片形状规则和碎片间无有效重叠区域等特点,选取了信息熵、差方和、欧氏距离、相关系数、互信息和灰色斜率关联度作为碎纸片之间的相似性判别准则,给出了碎纸片拼接复原模型和算法,解决了破碎纸片的拼接复原问题.对于问题1,引入信息熵来衡量每个碎片含有的信息量,将熵值最小的碎片确定为印刷文字文件的第一列;利用差方和计算出第1列右端与其余碎片左端的相似程度,求得碎纸片之间的最佳匹配组合,借助Matlab软件成功实现了附件1和附件2的碎片拼接复原.对于问题2,通过计算每个碎片的信息熵,找到印刷文字文件第一列的11个碎片;再利用互信息和相关系数评价碎纸片之间的相似性程度,确定出碎片间的上下位置关系,得到了印刷文字文件的第一列;然后利用欧氏距离作为相似性测度,进一步进行碎片间的粗拼接.若某个碎纸片与多个碎片的欧氏距离相等,则利用灰色斜率关联度进行碎纸片间的细拼接,借助Matlab软件完成了对附件3和附件4给出的碎片拼接复原.对于问题3,基于模糊聚类方法,粗略地确定出每个碎片的正面和反面;然后利用问题2的算法对已分类的正面碎纸片进行拼接复原;针对无法复原的碎纸片,借助Matlab 软件和最优搜索算法进行人工干预,确定出附件5文件正面的拼接复原;根据碎片数据编号的命名规则,在正面碎片数据的拼接复原结果中填充对应编号的反面碎片数据,实现了附件5文件反面的拼接复原.最后,对碎纸片的拼接复原模型和算法进行了分析和展望.关键词:破碎纸片的拼接复原;信息熵;差方和;互信息;欧氏距离;灰色斜率关联度;模糊聚类1. 问题重述破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用.传统上,拼接复原工作需由人工完成,准确率较高,但效率很低.特别是当碎片数量巨大,人工拼接很难在短时间内完成任务.随着计算机技术的发展,人们试图开发碎纸片的自动拼接技术,以提高拼接复原效率,需解决以下几个问题:问题1,考虑对于给定的来自同一页印刷文字文件仅纵切的破碎纸片的拼接复原模型和算法,并针对B 题附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原.如果复原过程需要人工干预,还需要写出干预方式及干预的时间节点.并就附件1和附件2的碎片数据给出拼接复原结果.问题2,考虑对于碎纸机既纵切又横切的情形,设计出碎纸片拼接复原模型和算法,并针对B 题附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原.如果复原过程需要人工干预,请写出干预方式及干预的时间节点.并就附件3和附件4的碎片数据给出拼接复原结果.问题3,则需要考虑更一般的情形,即考虑有双面打印文件的碎纸片拼接复原问题.对B 题附件5给出的是一页英文印刷文字双面打印文件的碎片,设计相应的碎纸片拼接复原模型与算法,并就附件5的碎片数据给出拼接复原结果.2. 模型假设(1) 碎纸片的切割是等间距的,忽略切割碎纸片时由机器工作所产生的摩擦误差; (2) 碎片切缝处的图像灰度平滑;(3) 碎片在缩放的情况下,像素点保持稳定; (4) 碎片上的文字只显示黑白两种颜色.3. 符号说明N :每张碎片像素点的数目;ij a 、ij b :图像A 、B 在()j i ,的像素值;),(B A SSD :A 与B 的差方和;)(a h A :图像A 中第a 个灰度级的像素个数与总的像素个数之比;)(ab h AB :图像A 中第a 个灰度级和图像B 中第b 个灰度级的像素对数与两幅图像总的像素对数之比;)(A H 、)(B H :图像A 和B 各自含有的信息量;)(AB H :两幅图像A 和B 的联合信息熵;ij d :两幅图像A 和B 的欧式距离;ij a 、ij b :图像A 和B 在 ()j i ,位置的像素值; a :图像A 像素值的平均值;),(B A C :两幅图像A 和B 的相关系数;)(a P A 、)(b P B :碎片边缘概率密度; )(ab P AB :两碎片A 和B 的联合概率密度;);(B A I :两碎片A 和B 的互信息;)(t X :系统特征函数;)(t Y i :相关因素函数;tt x ∆∆)(:系统特征函数)(t X 在t 到t t ∆+的斜率; tt y i ∆∆)(:相关因素函数)(t Y i 在t 到t t ∆+的斜率; )(t x ∆:系统特征函数在t 到t t ∆+的增量;)(t y i ∆:相关因素函数在t 到t t ∆+的增量; x :系统特征函数的均值;i y :相关因素函数的均值;)(t i ξ:)(t X 与)(t Y i 在t 时刻的灰色斜率关联系数;D :对称距离矩阵;i ε:)(t X 与)(t Y i 在t 时刻的灰色斜率关联度.4. 问题分析由于文章以行书写,只有段首段尾有空白,切缝处恰好以列之间的空白或笔画出断开的概率较小,在拼接碎纸片前需要对B 题附件1—5的碎片内图像进行二值化处理,进而获取由0和1组成的矩阵.扫描后的图像有亮的图像和暗的背景组成,由于光照、拍摄角度等因素,一幅图像往往包括文字、背景还有噪声等.如果从多值的数字图像中直接提取目标,最常用的方法就是设定阈值T ,用T 将图像的数据分为两部分:大于T 的像素群和小于T 的像素群.由于5个附件中的文字显示都是黑白颜色,因此先调用Matlab 软件中的im2bw()对每个碎纸片进行二值化图像预处理,然后综合利用图像的相似性测度寻找高精度的匹配碎片,从而实现整个印刷文字文件的复原.5. 模型的建立与求解5.1 问题1的求解5.1.1 模型的建立差方和利用两幅图像对应位置的差方和均值表示图像之间的相似程度,定义为[1],∑-=ij21),()(ij ij NB A SSD b a (1) 式中,N 为每幅图像像素点的数目,ij a 和ij b 分别是图像A 和B 在()j i ,位置的像素值.当两幅图像正好可拼接时,),(B A SSD 值最小.差方和计算的时间复杂度为()2N O .信息熵反映了图像含有的信息量大小.信息熵越小,图像包含的信息量越小,往往空白区域越多,其定义为[2-4]:∑=aA A a h a h A H )(log )()( (2)其中,)(a h A 表示图像A 中第a 个灰度级的像素个数与总的像素个数之比. 5.1.2 拼接复原算法附件1和附件2中碎纸片的切割方式只有纵切一种,假设碎片的总数为n 个.考虑到纵切的特殊性,给出如下的拼接复原算法:步骤1 计算每一个碎纸片)1(n i A i ≤≤的信息熵)(i A H ,并确定出熵值最小的一个碎片n i i A H 1)}(min{=为印刷文字文件的第1列;步骤2 计算第1列图像A 的右边与其余1-n 个碎片)1,1(≠≤≤j n j A j 的左边的差方和),(1j A A SSD ,确定出与第1列图像差方和最小的碎片为印刷文字文件的第2列;步骤3 重复步骤2,依次继续,直到找到印刷文字文件的n 列为止. 5.1.3 问题1的求解借助Matlab 软件对以上拼接复原算法进行仿真,得到如下结果: (1) 附件1中的中文文件复原结果表1 附件1中19个碎片的信息熵从表1可以看出,19个碎片所包含的信息量中,第008碎片的信息熵最小,因此第008碎片是附件1中的中文文件的第1列.表2 附件1中19个碎片之间差方和最小的配对碎片表从表2可以得到附件1中的中文文件复原结果,如下表所示:表3 附件1中文件的拼接复原结果表附件1中的中文文件复原图结果见附录1.(2)附件2中的英文文件复原结果表4 附件2中19个碎片的信息墒从表4可以看出,所有19个碎片所包含的信息量中,第003碎片的信息墒最小,因此第003碎片是附件2文件的第1列.表5 附件2中19个碎片之间差方和最小的配对碎片表从表5可以得到附件2的英文文件复原结果,如下表所示表6 附件2英文件的拼接复原结果表附件2中英文文件的复原结果图见附录2.5.2 问题2的求解5.2.1 模型的建立由于互信息测度是从图像的统计信息出发,既不需要两幅图像的灰度关系,也不需要图像进行预处理,因此成为目前广泛使用的图像配准相似性测.在图像配准过程中,如果两幅图像精确匹配,互信息达到最大.联合熵定义如下[5]:)(log )()(,ab h ab h AB H AB ba AB ∑= (3)其中)(ab h AB 表示图像A 中第a 个灰度级和图像B 中第b 个灰度级的像素对数与两幅图像总的像素对数之比.互信息定义为)()()();(AB H B H A H B A I -+= (4)欧氏距离被视为两个图像的相似程度,距离越近就越相似,其定义为∑-=2)(ij ijij b ad (5)相关系数是标准化的协方差函数,当两幅图像的灰度之间存在线性畸变时,仍能较好的评价两幅图像之间的匹配性程度.图像的相关系数1),(≤B A C ,它是两幅图像A 和B 特征点之间近似程度的一种线性描述.如果),(B AC 越接近于1,两幅图像的相似程度越大,越近似于线性关系.选择相关系数中最大的相关系数所对应的特征点为这个点的匹配特征点.当两幅图像可匹配时,相关系数达到最大值.相关系数定义如下[7-9]:2/122))(*)(()(*)(),(∑∑∑----=b b a a b b a bB AC ij ij ijij ij(6)两幅图像相关系数计算的时间复杂度为)(2N O ,其中N 为每幅图像像素点的数目. 灰色斜率关联度的基本思想是根据待拼碎片的特征曲线(称系统特征函数)与参照碎片的特征曲线(称相关因素函数)的相似程度来判断其联系是否紧密,曲线越接近,关联度就越大,反之就越小.灰色斜率关联度的定义为[10]:∑-=-=11)(11n t i i t n ξε (7) 其中,t t y yt t x x t t x x tt x x t i i ∆∆-∆∆+∆∆+∆∆+=)(*1)(*1)(*11)(*11)(ξ (8)为灰色斜率关联系数.(7)、(8)式中)(t X 为系统特征函数,)(t Y i ()m i ,,2,1 =为相关因素函数(对应于参照碎片的特征曲线),∑==nt t x n x 1)(1,)()()(t x t t x t x -∆+=∆,t t x ∆∆)(为系统特征函数)(t X 在t 到t t ∆+的斜率, ∑==nt i i t y n y 1)(1,)()()(t y t t y t y i i i -∆+=∆, t t y i ∆∆)(为相关因素函数)(t Y i 在t 到t t ∆+的斜率.对于灰色斜率关联系数)(t i ξ公式(8)有如下性质[11-13]:(1) 任意的系统特征函数)(t X 与相关因素函数)(t Y i 的灰色斜率关联系数满足:1)(0≤<t i ξ,m i ,,2,1 =;(2) 灰色斜率关联系数)(t i ξ满足对称性;(3) 灰色斜率关联系数)(t i ξ只与)(t X 与)(t Y i 的几何形状有关,与相对位置无关; (4) )(t X 与)(t Y i 的斜率越接近,灰色斜率关联系数)(t i ξ就越大;(5) )(t X 与)(t Y i 在t 到t t ∆+的变化速度相同时,它们的斜率相等,这时1)(=t i ξ; 由上述公式及性质可知,灰色斜率关联系数反映了两曲线在某一点的变化率的一致程度,而灰色斜率关联度则是整个区间上灰色斜率关联系数的平均值.灰色斜率关联度i ε具有下列性质: (1) 10≤<i ε;(2) i ε只与)(t X 与)(t Y i 的变化率有关,而与它们的空间相对位置无关; (3) 当)(t X 与)(t Y i 变化率相同时, 1=i ε; (4) )(t X 与)(t Y i 的变化率越接近, i ε就越大;5.2.2 拼接复原算法附件3和附件4中碎纸片的切割方式有纵切和横切两种,假设碎片的总数为n 个(m ⨯k 个碎片组成整个原图),具体的拼接复原算法如下:步骤1 计算每一个碎纸片)1(n i A i ≤≤的信息熵)(i A H ,并确定出熵值最小的m 个碎片n i i A H 1)}(min{=为印刷文字文件的第1列的m 个碎片;步骤2 计算步骤1找到的m 个碎片的上半部图像和下部分图像之间互信息和相关系数,确定出m 个碎片的上下位置关系,得到印刷文字文件的第1列;步骤3 计算第1列中m 个碎片右边与其它碎片左边的欧氏距离,得到碎片之间关于欧氏距离的矩阵n m M ⨯;在矩阵n m M ⨯中,第i 行的值ij d 表示第i 个碎片与第j 个碎片之间的欧氏距离.步骤4 在n m M ⨯中,计算第)1(m i i ≤≤行的最小值i min ;若n m M ⨯中i min 在第i 行出现的次数为1且对应的列标为j ,则第i 个碎片和第j 个碎片是最佳匹配组合;若i min 在第i 行出现的次数为大于1,则进行步骤5.步骤5 i m i n 在i 行中出现的次数为大于1,则计算第i 个碎片的右边图像与其余碎片左边图像的灰色斜率关联度)1(n f if ≤≤ε,记灰色斜率关联度最大的值ih ε对应的列为k ;若第k 个碎片在步骤4的最佳匹配组合中没有出现,那么第i 个碎片和第k 个碎片是最佳匹配组合;若第k 个碎片已在步骤4的最佳匹配组合中出现过,选择灰色斜率关联度仅次于ih ε)(ih iy εε<的值对应的列y ;若第y 个碎片在步骤4的最佳匹配组合中没有出现,则第i 个碎片和第y 个碎片是最佳匹配组合,否则继续寻找第i 个碎片的最佳匹配碎片,直止找到满足斜率关联度最大且在以前的最佳匹配组合中没出现条件的碎片.步骤6 重复以上步骤,直到所有的碎片找到最佳的匹配组合为止.按照最佳匹配组合的关系将所有碎片链接起来,并在第1列中出现的碎片位置出换行,便可对文件的所有碎片数据进行拼接复原. 5.2.3 问题2的求解运行matlab 软件对以上算法进行仿真,得到如下的结果.(1) 附件3中的中文文件复原结果表7 附件3中碎片的排列序号附件3中文件的最终复原图见附录4.(2) 附件4中的英文文件复原结果附件4的复原结果表格形式如下表所示:表8 附件4中碎片的排列序号附件4中文件的最终复原图见附录6.5.3 问题3的求解5.3.1 模型的建立模糊聚类分析是一种将样本或者变量分类的统计方法,基于物以类聚的思想,它根据样本数量计算样本之间的距离(相似程度),按距离的大小,将样本或变量逐一归类,关系密切的类聚到一个小的分类单位,使同一类的对象之间具有较高的相似度,然后逐步扩大,使得关系疏远的类聚合到一个大的分类单位,知道所有的样本或变量都累计完毕.模糊聚类分析法常用的距离为绝对值距离和欧式距离,其中,欧氏距离在聚类分析中用的最广.计算流程如下[14-15]:(1) 将n 张碎纸片分为n 类,取其中一个碎纸片右侧一列和另外任意碎纸片左侧一列作为样本,两个样本之间的距离构成一个对称距离矩阵⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=00021221112 n n n n d d d d d d D (2) 选择)0(D 中的非对角线上的最小元素,设这个最小元素是pq D ,此时{}p P x G =与{}q q x G =的距离最近,将q P G G 和合并成一个新类{}q P r G G G ,=.在)0(D 中消去q P G G 和所对应的行与列,并加入由新类r G 与剩下的其他未聚合的类间的距离所组成的新的距离矩阵)1(D ,它是n-1阶方阵;(3) 从)1(D 出发重复(2)的做法得)2(D ,再由)2(D 出发重复上述步骤,直到碎纸片聚成一个整体,聚类完成. 5.3.2 拼接复原算法附件5的碎片均为双面,假设碎片的总数为n 个(m ⨯k 个碎片组成整个原图的正面),具体的拼接复原算法如下:步骤1 基于模糊聚类分析法的思想,借助Matlab 软件编程将所有碎片区分粗分为正面和反面两大类;步骤2任选某一大类的碎片,利用问题2的拼接复原算法对该类的碎片进行拼接复原;步骤3 对无法拼接的碎片进行人工干预,直至所有的最碎片找到最佳的匹配组合为止.将所有的碎片进行链接,可复原文件的原图.根据碎片编号的命名规则,如果一面的原图复原成功,选择原图每个碎片对应序号的反面,可直接拼接复原出反面的原图.5.3.3 问题3的求解运行matlab软件对以上算法进行仿真,得到如下的结果.(1)附件5中的文件正面复原结果附件5中的文件正面复原结果见表9.附件5中文件正面的复原结果中间图见附录7.附件5中文件正面的复原结果中间图见附录8.对附录8中的碎片49a、161b、108b、045b、021a、042a、048b、180b、041b、202b和175b进行人工干预,得到附录9。
2013年数学建模b题纸片拼接
2013年数学建模b题纸片拼接1. 引言2013年数学建模比赛中的B题,是一道关于纸片拼接的问题。
纸片拼接这一主题,在数学建模的题目中并不常见,但却涉及了许多有趣的数学和几何问题。
在接下来的文章中,我将从不同的角度和深度来探讨这一主题,希望能够对你的理解和思考有所启发。
2. 纸片拼接的基本概念让我们来了解一下纸片拼接的基本概念。
在这个问题中,我们需要将大量的纸片按照一定的规则进行拼接,以得到一个特定的形状或图案。
这涉及到对纸片的形状、尺寸和拼接方式的研究和分析。
还需要考虑到纸片的变形和叠放等因素,这是一个具有挑战性的问题。
3. 纸片拼接的数学模型在解决纸片拼接的问题时,我们需要建立相应的数学模型来描述和分析。
这包括对纸片的几何形状进行建模,考虑到其尺寸、边界和变形等因素;同时需要建立拼接规则和约束条件,以确保拼接的合理性和有效性。
通过建立数学模型,可以更好地理解纸片拼接问题的本质,并为后续的求解和优化提供基础。
4. 深入探讨纸片拼接的几何特性在纸片拼接的过程中,我们不仅需要考虑到其形状和尺寸,还需要深入研究其几何特性。
这涉及到对纸片的曲率、折叠和叠放等几何特征的分析,以便更好地理解和控制拼接的过程。
还需要考虑到纸片的叠放和叠合时可能出现的奇异现象,这对于拼接的成功至关重要。
5. 数学建模与实际应用让我们来谈谈纸片拼接的数学建模与实际应用。
纸片拼接这一看似抽象的问题,实际上与现实生活中的许多工程和制造过程有着密切的联系。
在纺织、纸品和航空航天等领域,都存在着类似的拼接和叠放问题。
通过对纸片拼接问题的研究和建模,可以为这些实际应用提供理论支持和技术指导。
6. 总结回顾通过以上的探讨,我们可以看到,纸片拼接这一看似简单的问题,实际上涉及到许多有趣的数学和几何问题。
从纸片的基本概念、数学建模到几何特性和实际应用,我们可以更加全面、深刻和灵活地理解这一主题。
我个人认为,纸片拼接问题不仅具有学术研究的价值,还具有实际应用的潜力,希望能够引起更多人的关注和研究。
2013数学建模基于灰度像素理论的碎纸片拼接方法
基于灰度像素理论的碎纸片拼接方法摘要常规的二维碎片拼接技术一直受到科研领域重视,它在司法鉴定、文物修复、图像处理等领域有着广泛的应用。
本文研究的是二维碎片拼接技术中最典型的文档类碎纸片拼接问题。
基于文档纸片色彩明确、方向一致、无重叠等特点,利用灰度理论对问题作出解决。
通过图形扫描得到图像,然后通过二值化,Sobel[]3梯度算进行预处理,并运用皮尔逊相关性度量及方差分析算法进行匹配,以实现对纸片进行还原。
本文通过MATLAB程序模型,以及图片像素灰度理论实现文档碎片的重新拼接.对于问题1,应用图像处理技术中的灰度理论建立了灰度模型I.在对得到灰度模型进行Sobel梯度边缘化预处理的方法进行模型改进,建立了边缘灰度模型II。
然后借助于皮尔逊相关系数算法和MATLAB软件,对附件中所提供的碎片进行排列拼接.对于问题2,采用化归思想,将二维问题渐变为一维问题。
首先归纳碎片特征运用MATLAB软件对碎片进行同行分类,得到11行19列的元素;采用方差分析算法和人工干预对各行中元素进行排列,得到11条横切的图形;采用方差分析算法和人工干预对其进行排列,得以还原。
本文的亮点在于对各行中元素采用方差分析算法进行左侧到右侧匹配后,同时增加了右侧到左侧的匹配检验,大大减少了人工干预的工作.关键字:灰度理论;皮尔逊相关系数算法;Sobel梯度边缘化;方差分析算法;人工干预一、问题的重述问题一、对于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法,并针对附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原.如果复原过程需要人工干预,请写出干预方式及干预的时间节点。
复原结果以图片形式及表格形式表达。
问题二、对于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法,并针对附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原。
如果复原过程需要人工干预,请写出干预方式及干预的时间节点。
碎纸片拼接复原的数学模型与优化
高职 院校应 定期对 指标 体系进 行考 核评 价 , 检查教 学管
理、 教 育教 学 、 师资 队伍 、 教学 研 究 、 硬 件建 设等 各 方面 是否
有 明显 的提 高或 改 善 ,并将 指 标改 进 的情 况与 学校 绩 效挂 钩, 并配 套制 定相 关激 励 措施 , 以助推 高职 院校 各 层面 开展 对标 管 理的 积极 性和 创造 力 。
人 工 手工 拼接 的优 势 在于 准确 性 高但耗 时长 , 相 比之 下 , 计
算 机 算法 进 行 的拼接 速 度快 也有 能 力实 现 大量 破碎 文 件 的 拼接, 而计 算机 为主 后期加 入人 工干 预 的方 法就 有更 强 的实
成为矩阵, 对矩阵的边界 向量进行匹配 , 最终得到完整有序
等) 或对 标合 作 , 根据 收集 的数据 和信 息并 进一步 分析 、 确 认 标杆 及对 标 管理 指标 。 ( 三) 比较指 标 , 分 析业 绩 差距 并采 取 改进 行动
( 五) 螺 旋式 持 续进 行对 标 管理
对标管理是一项基础管理工作 , 必须及时评价, 持续改
进。 通 过一 段 时 间的对 标 管理 工作 , 高职 院校 在 各项 指 标上
精、 更准、 更高 效 、 更科 学上 下功 夫 , 开展 新一轮 的对 标管 理 , 实 现新 的更大 飞跃 , 从 而不 断推进 高职 院校 教育 教学 工作 的
突 破和 提 升 。
参考文献:
整 改方 案 、 具体 实 施办 法 以及监 督 衡量 标准 , 分 析论 证 实施
方案的经济效益、 社会效益, 为后续的改进行动理清思路, 铺
13年全国大学生数学建模竞赛—B题—碎纸片的拼接复原
承诺书我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛下载)。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括、电子、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。
如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。
我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
我们参赛选择的题号是(从A/B/C/D中选择一项填写): B我们的参赛报名号为(如果赛区设置报名号的话):所属学校(请填写完整的全名):西华大学参赛队员(打印并签名) :1. 尚安2. 洋3. 叶军指导教师或指导教师组负责人(打印并签名):(论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。
以上容请仔细核对,提交后将不再允许做任何修改。
如填写错误,论文可能被取消评奖资格。
)日期:2013 年09 月15 日赛区评阅编号(由赛区组委会评阅前进行编号):编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):碎纸片的拼接复原摘要本文通过分析题中相关要求及条件,建立数学模型解决了各种规则碎纸片的拼接复原问题。
针对问题一,首先将题中所给图片导入matlab软件,利用imread函数得到每图片的文字灰度像素矩阵,再取出所有矩阵左、右列,建立像素绝对差拟配模型,得到拟配程度最高的两幅图片,进行拼接,出现不合理拼接情况则进行人工干预,最后重复上述过程,完成全部拼接并导出图像。
2013年数学建模
碎纸片的拼接复原
摘要
碎纸片的拼接复原主要采集碎纸片边缘信息的挖掘,利用碎纸片边缘构造特征因子,利用特征因子来描述碎片边缘的行列特征,然后根据碎纸片边缘提供的信息进行调整,并对贪心算法进行改进,找到有效克服局部最优解的拼接算法。
问题1:首先,纸片采取的是纵向切割,利用matlab软件对纸片左右边缘提取1980×2个像素点,直接利用边缘像素点的差异性来定义匹配度。
然后用改进贪心算法寻找最短路径,最后碎片复原时进行部分人工干预,成功复原附件1和附件2的碎纸片。
问题2:对附件3,4中的张碎片边缘提取180×72个像素点,对此,为了提高碎纸片的匹配精度,本文引入评估函数区别对待黑白区内的不同匹配,借助评估函数重新定义匹配度,使得较少的边缘信息将碎片分为19类,同时采用问题1与改进的贪心算法寻找捷径,将这一类的碎片复原,其他18类同理。
最后整理剩下的19类的碎片,采取好19类上下边缘的灰度矩阵和行距特征,利用以上的特征,引用人机交互拼接方法,成功复原附件3,附件4的碎纸片。
问题3:
关键词:特征因子,灰度矩阵,贪心算法,拼接,人工干预
问题的重述与分析。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
承诺书我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛网站下载)。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。
如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。
我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
我们参赛选择的题号是(从A/B/C/D中选择一项填写): B我们的参赛报名号为(如果赛区设置报名号的话):所属学校(请填写完整的全名):参赛队员 (打印并签名) :1.2.3.指导教师或指导教师组负责人 (打印并签名):(论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。
以上内容请仔细核对,提交后将不再允许做任何修改。
如填写错误,论文可能被取消评奖资格。
)日期: 2013 年 9 月 10 日赛区评阅编号(由赛区组委会评阅前进行编号):编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):全国评阅编号(由全国组委会评阅前进行编号):碎纸片的拼接复原模型摘要:本文针对碎纸片的拼接复原问题,提出了互相关匹配模型。
首先对附件图片数值化处理并建立矩阵;然后根据图像页边距特点定位最左边和最右边的碎片;按照每张碎片中的文字部分所在位置,提取同一行碎片,利用互相关函数横向拼合。
在第一问中,附件一、二仅作横向相关性比较即可;在第二、三问中,需要提取同一行碎片横向拼接,并将横向拼合完整的碎片进行竖向拼合,经过人工干预得到结果。
最终结果见附录。
关键词:拼接复原;互相关;矩阵;数值化;人工干预一、问题重述在司法物证复原、历史文献修复以及军事情报获取等领域的破碎文件的拼接上,传统的拼接复原工作需由人工完成,准确率较高,但效率很低。
尤其是当碎片数量巨大时,人工拼接很难在短时间内完成任务。
随着计算机技术的发展,人们试图开发碎纸片的自动拼接技术,以提高拼接复原效率。
我们需要用算法分别设计出附件1至附件5的拼接方法及拼接结果。
二、模型假设1. 忽略实际拼接中边缘的整齐性;2. 不需要考虑实际拼接中破碎文件大小是否一致;3. 忽略碎片边缘的损耗,认为拼接后是完整的图片;4. 在模型的建立过程中重视算法与建模思想,淡化程序的编写;5.文字的行间距一定。
三、符号说明jk ρ 互相关系数(11jk ρ-≤≤)()j f t 相关像素数组1()k f t 相关像素数组2 i P 图像像素值矩阵i Q 处理后图像像素值矩阵 ,mn mn a b 矩阵元素四、问题的分析1. 已知条件的分析第一,对碎片尺寸和数量的分析。
附件1和附件2的图片尺寸均为721980⨯,碎片数量均为19;附件3、附件4和附件5的图片尺寸均为72180⨯,碎片数量均为1119⨯。
由于纵列有11个,像素值180,总值111801980⨯=,因此,所有拼接后的图像尺寸一致,均为⨯。
第二,对碎片边界的分析。
对于附件1、2,所有碎片上行和下行像素值为白。
其中,一张碎片位于最左端,最左列像素值均为白;一张碎片位于最右端,最右列像素值均为白。
对于附件3、4、5,拼接后图像四边像素值为白,碎片也存在边像素值全为白的情况,因此需要分类讨论。
切割线为长度完全相等的直线,因此切割线两边应有很大的相似度,灰度值相似。
第三,对碎片正反性的分析。
附件5存在正反面情况,同一块用a 、b ,但根据题意分析,我们无法确定碎片的正反,即a 可能是正面,也可能是反面。
因此拼合时,应当注意统一序号在同一平面出现的单一性,例如,000a 在设定正面出现以后,000b 一定在反面。
第四,对碎片像素白色行的分析对于中文,同一行的所有碎片文字是横向对齐的,因此白色开始的位置是一样的。
因此可以提取出同一行的碎片。
2. 拼接方法的分析由于碎片是长方形,有四条边,因此边的拼接有优先顺序。
由于长边特征较为明显,采样点多,因此优先横向拼接,然后纵向拼接。
当电脑拼接无法完成时,采取人工干预。
五、模型的分析与求解1. 方法的确立根据对问题的分析,我们得知此问题需要计算离散序列之间的相关性,因此我们需要使用互相关系数计算和矩阵的计算。
2. 模型的建立 1. 1图像数字化由于电脑中图像的大小是由像素数量表示,而每个像素点均由一个数值表示,因此利用matlab 读取灰度图像的像素值,第n 副图用矩阵表示为:在第一问中,n=72,m=1980;在第二问、第三问中,n=72,m=180。
1. 2数据预处理由于互相关函数需要比较正负范围相等的数组,因此我们将n P 的每个数值减去max 2a,使mn a 在[-max 2a ,max 2a]范围内,即1. 3相关性的计算由于碎片大小完全一致,切割线完全竖直且交界处长度完全相等,并且切割线无损,图像可以完全拼接,因此相邻两个图形交接处相似。
由于图像已经数字化处理,因此可以由边界相应像素数值的相关性来确定两张图是否相邻。
对于相关性的计算,我们使用互相关函数。
互相关函数公式为:公式中,分子表示的是两组离散数值的相似程度,分母则起到归一化作用,相邻两边的数组分别为序列)()(t f t f k j 、。
当1jk ρ→时,两组数相似程度最大,即两张图片最有可能相邻; 当1jk ρ→-时,两组数相似程度最小,即两张图片不相邻。
根据这个公式,即可算出两个图边缘的相关度。
1. 4图像的拼接 1. 4. 1 第一问附件一:首先,根据图像页边距白边特点定位最左边为白色的碎片,i P 的第一列列向量为11211255255(0255)255m a a a a -⎛⎫ ⎪- ⎪≤≤ ⎪ ⎪-⎝⎭…,将i=1,2,……19分别带入计算,仅当i=15时,112112552550255m a a a -⎛⎫⎪- ⎪= ⎪ ⎪-⎝⎭…,因此,最左边碎片为014。
然后,令72()j j f t b =1()k j f t b =,将014矩阵数据带入()j f t 中分别计算jk i ρ,当取得取max ρ时,i-1即为相邻碎片。
同理,即可拼接整幅图。
结果见附录。
同理可得附件二结果。
Matlab 附件一拼接图1. 4. 2 第二问首先,确定最左边碎片。
因为碎片存在非左边仍有白边的情况,例如附件4的图,如下图所示。
(由于底色是白色与文档背景相同,进行了对比度降低处理。
)附件因此,需要提取多组行向量,根据是否均为0确定最左碎片,同理可确定最右碎片。
左碎片满足条件如下:式中,r的大小由实际图像左边缘白边像素数量决定。
在附件3中,r取15时,满足条件的碎片数量为11。
利用同一行碎片文字垂直位置相同的特点,根据最左边碎片的文字的垂直位置特点,确定图像所在行。
同第二问,分别计算同一行序列的互相关系数,取最大值拼合。
然而,这样只能拼接出11个横行碎片,用互相关函数拼接部分碎片后,最后用人工干预完成白边部分的拼合。
结果如附件所示。
1. 4. 3 第三问由于是两面混合,首先忽视两面性,认为所有碎片是在同一平面上,进行整体拼接,则图像应该为2219个碎片,在进行最左边和最右边计算时会出现22个碎片。
然后根据第二问方法,进行横向碎片的拼接,纵向碎片的拼接。
最后进行人工干预。
由于图像是由两面组成的,因此两张图片的对称点(第n列和第20-n列对称)数字相同字母不同,例如199b 在一个面的第4行、第19列,那么199a就在另一面的第4行、第1列。
因此正反两面的对应行所在位置一致,可以人工将图拼合完整。
效果如如下,结果见附件。
Matlab 附件五拼接图六、模型评价模型优点:1、模型具有坚实可靠的数学基础,经过实践数据分析证明,互相关函数在本题中应用的可行性,简化了对模型问题的分析;2、模型能较好的优化人工干预次数。
模型缺点:1、附件3、4、5在拼接时没有完全脱离人工干预;2、在实际推算中,模型会产生较大的运算量;3、模型在现实生活中的应用有待优化,因为现实中很少有完全规则的文字碎片。
参考文献:[1]屈婉玲等编,离散数学,北京:高等教育出版社 ,2008[2]同济大学数学系编,工程数学——线性代数同济第五版,北京:高等教育出版社,2007[3](美)奥本海姆等着刘树棠译,信号与系统(第二版),北京:电子工业出版社 2013[4]张志涌等编着,精通MATLAB R2011a,北京:北京航空航天大学出版社 ,2011[5](美)穆尔着,高会生,刘童娜,李聪聪译,MATLAB实用教程(第二版),北京:电子工业出版社 ,2010[6](美)莫勒(Moler,)着喻文健译,MATLAB数值计算,北京:机械工业出版社,2006[7](美)冈萨雷斯()等着阮秋琦等译,数字图像处理(MATLAB版),北京:电子工业出版社 ,2005[8](美)冈萨雷斯等着阮秋琦译,数字图像处理的MATLAB实现(第2版),北京:清华大学出版社 ,2013[9](美)罗森着袁崇义等译,离散数学及其应用,北京:机械工业出版社 ,2011附录附录一模型结果附件4结果:附录三效果图附录四效果图附录五效果图1 附录五效果图2附录二部分源程序(由于源程序篇幅过长,打印不便,因此只附上部分程序)使用软件:MatlabI000=imread('')I001=imread('')I002=imread('')I003=imread('')I004=imread('')I005=imread('')I006=imread('')I007=imread('')I008=imread('')I009=imread('')I010=imread('')I011=imread('')I012=imread('')I013=imread('')I014=imread('')I015=imread('')I016=imread('')I017=imread('')I018=imread('')P=[I000,I001,I002,I003,I004,I005,I006,I007,I008,I009,I010,I011,I012,I013,I0 14,I015,I016,I017,I018]% 最左计算函数function F=borderright(x)for j=1:1:19y(j)=0for i=1:1:1980if(x(i,72*(j-1)+1)==255)y(j)=y(j)+0elsey(j)=y(j)+1endendif(y(j)==0)F=jendendendfunction d=split(x,y,m)maxx=[0,0]for j=1:1:19z(j)=0if((j~=(m(1)+1))&&(j~=(m(2)+1))&&(j~=(m(3)+1))&&(j~=(m(4)+1))&&(j~=(m(5)+1) )&&(j~=(m(6)+1))&&(j~=(m(7)+1))&&(j~=(m(8)+1))&&(j~=(m(9)+1))&&(j~=(m(10)+1 ))&&(j~=(m(11)+1))&&(j~=(m(12)+1))&&(j~=(m(13)+1))&&(j~=(m(14)+1))&&(j~=(m( 15)+1))&&(j~=(m(16)+1))&&(j~=(m(17)+1))&&(j~=(m(18)+1))&&(j~=(m(19)+1)))for i=1:1:1980if((x(i,72*y)<255)&&(x(i,72*(j-1)+1))<255)z(j)=z(j)+1elsez(j)=z(j)+0endendelsez(j)=0endif(z(j)>maxx(1))maxx=[z(j),j]endendd=maxx(2)endfunction two(x,a,b)for i=1:1:afor j=1:1:bif(x(i,j)<255)x(i,j)=0endendendf3=0f4=0f5=0f3=double(f3)f4=double(f4)f5=double(f5)p=0bai=0HENG=[19,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1;20,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1;70,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1;81,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1;86,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1; 132,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1; 145,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1; 159,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1; 171,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1; 191,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1; 201,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1;] for k=1:1:11a=HENG(k,1)for i=2:1:19for b=1:1:208f3=0f4=0f5=0for c=1:1:180f1=Q(c+a*180,72)f2=Q(c+b*180,1)f3=f3+Q(c+a*180,72)*Q(c+b*180,1)f4=f4+f1*f1f5=f5+f2*f2endr(b)=f3/sqrt(f4*f5)if r(b)>pp=r(b)h=bendr(b)=0endp=0HENG(k,i)=ha=hfor c=1:1:180bai=bai+Q(c+a*180,72)endif ((bai==22950)&&(i==19))msgbox('àTà2')endif ((bai==22950)&&(i<19))msgbox('1t1t£?è?1¤?é?¤°é')breakendbai=0endendf3=0f4=0f5=0f3=double(f3)f4=double(f4)f5=double(f5)p=0bai=0% 初始化数组% HENG=[49,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,141; % 61,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,36;% 168,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,18; % 38,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,74;% 71,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,60;% 14,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,176; % 94,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,43;% 125,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,145; % 29,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,59;% 7,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,196;% 89,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,123;] for k=1:1:11a=HENG(k,19)for i=18:-1:1for b=1:1:208f3=0f4=0f5=0r(b)=0if b~=105for c=1:1:180f1=Q(c+a*180,1)f2=Q(c+b*180,72)f3=f3+Q(c+a*180,1)*Q(c+b*180,72)f4=f4+f1*f1f5=f5+f2*f2endr(b)=f3/sqrt(f4*f5)if r(b)>pp=r(b)h=bendendendp=0HENG(k,i)=ha=hfor c=1:1:180bai=bai+Q(c+a*180,1)endif (bai>22000)&&(i>1)msgbox('1t1t£?è?1¤?é?¤°é') breakendbai=0endend。