2013年数学建模碎纸片的拼接程序
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 纸片特征匹配中最优解区分度对比 (横坐标为进行匹配的纸片序号,纵坐标为匹配距离)
当我们对中文碎纸片进行匹配时, 采用绝对距离及欧氏距离作为距离函数都具有较 好的区分度。从图像上可以看出,采用欧式距离,使得每张纸片的期望拼接对象,与潜 在会引起匹配错误的次优匹配对象具有更大的区分度,所以,一般情况下,采用欧式距 离作为距离函数会使得匹配效果更好,有趣的是,在作英文内容的纸片匹配时,情况相 反。 因此, 在之后的算法中, 我们将更灵活的使用这两种距离函数, 而不会固定为一种。 最终得到的附录一及附录二的图片排序表格如下所示:
(完整word版)2013年数学建模b题
精心整理碎纸片的拼接复原【摘要】:碎纸片拼接技术是数字图像处理领域的一个重要研究方向,把计算机视觉和程序识别应用于碎纸片的复原,在考古、司法、古生物学等方面具有广泛的应用,具有重要的现实意义。
本文主要结合各种实际应用背景,针对碎纸机绞碎的碎纸片,基于计算机辅助对碎纸片进行自动拼接复原研究。
针对问题1,依据图像预处理理论,通过matlab程序处理图像,将图像转化成适合于计算机处理的数字图像,进行灰度分析,提取灰度矩阵。
对于仅纵切的碎纸片,根据矩阵的行提取理论,将。
建中的任一列与矩阵值,序列号。
将程序进行循环操作,得到最终的碎片自动拼接结果。
、;分别作为新生成的矩阵、。
,将矩阵中的任一列分别与矩阵中每一列代入模型,所得p值对应的值即为横排序;将矩阵中的任一行分别于矩阵中的任一行代入模型,所得q值对应的值即为列排序。
循环进行此程序,得计算机的最终运行结果。
所得结果有少许误差,需人工调制,更正排列顺序,得最终拼接结果。
针对问题3,基于碎纸片的文字行列特征,采用遗传算法,将所有的可能性拼接进行比较,进行择优性选择。
反面的排序结果用于对正面排序的检验,发现结果有误差,此时,进行人工干预,调换碎纸片的排序。
【关键词】:灰度矩阵欧式距离图像匹配自动拼接人工干预一、问题重述破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。
传统上,大量的纸质物证复原工作都是以人工的方式完成的,准确率较高,但效率很低。
特别是当碎片数量巨大,人工拼接不但耗费大量的人力、物力,而且还可能对物证造成一定的损坏。
随着计算机技术的发展,人们试图把计算机视觉和模式识别应用于碎纸片复原,开展对碎纸片自动拼接技术的研究,以提高拼接复原效率。
试讨论一下问题,并根据题目要求建立相应的模型和算法:、附件4(1)(2)(3)(4)纸片的自动拼接。
问题1:根据图像预处理理论,通过程序语言将图像导入matlab程序,对图像进行预处理,将碎纸片转换成适合于计算机处理的数字图像形式,并对数字图像进行灰度分析,提取灰度矩阵。
碎纸片的拼接复原算法及MATLAB实现
承诺书我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛网站下载)。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。
如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。
我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
我们参赛选择的题号是(从A/B/C/D中选择一项填写): B我们的参赛报名号为(如果赛区设置报名号的话):所属学校(请填写完整的全名):楚雄师范学院参赛队员(打印并签名) :1. 陈志明2. 施明杰3. 阮秀婷指导教师或指导教师组负责人(打印并签名):(论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。
以上内容请仔细核对,提交后将不再允许做任何修改。
如填写错误,论文可能被取消评奖资格。
)日期: 3013 年 9 月 16 日赛区评阅编号(由赛区组委会评阅前进行编号):编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):碎纸片的拼接复原算法及MATLAB实现摘要:对于只有纵切的情形,文章通过比较当前待拼碎片与剩余碎片的信噪比psnr[1,3,4]的值来确定两碎片是否为邻接碎片;拼接算法首先连续调用右拼函数直到拼接到原图右边界,然后连续调用左拼函数直到拼接到原图左边界,从而得到整幅复原图像;对于单面纵横交错切的情形,文章对首先采用纵切拼接算法将碎片拼接成多幅横条图片,然后将各横条图片矩阵转置[2],再次采用纵切拼接算法拼接;两种情形的拼接,都存在人为参与;实验证明,我们的算法对纵切情形是有效的,对纵横切情况是可行的。
2013年数学建模b题纸片拼接
2013年数学建模b题纸片拼接2013年数学建模B题是关于纸片拼接的问题。
以下是该题的问题描述和解题方法的一个简要说明。
问题描述:问题要求将一张长为L1、宽为W1的纸片与另一张长为L2、宽为W2的纸片进行拼接,形成一个平面图案。
拼接的要求是两张纸片不能重叠,且只能通过边缘进行拼接。
问是否存在一种拼接方式满足要求,并给出拼接的方法。
解题方法:1. 首先,我们需要明确问题的约束条件。
根据题目的描述,可以得到以下约束条件:- 拼接后的平面图案的长为L1+L2或W1+W2- 拼接后的平面图案的宽为W1或W2- 拼接的方式有两种情况:将L1与L2拼接,或将W1与W2拼接2. 根据约束条件,我们可以列出两种情况的拼接方式,并通过计算判断是否满足要求。
具体步骤如下:- 情况一:将L1与L2拼接。
这种情况下,需要比较W1和W2的大小。
若W1>=W2,则满足要求,可以得到拼接的方法;若W1<W2,则需要继续考虑情况二。
- 情况二:将W1与W2拼接。
这种情况下,需要比较L1和L2的大小。
若L1>=L2,则满足要求,可以得到拼接的方法;若L1<L2,则无法满足要求。
3. 根据以上步骤,可以得出结论:若情况一满足,将L1与L2拼接;若情况二满足,将W1与W2拼接;若两种情况都不满足,则无法完成纸片的拼接。
注意事项:- 在计算过程中需要注意单位一致性。
- 在判断拼接条件时,需要考虑等号情况。
以上是对2013年数学建模B题纸片拼接问题的简要说明。
具体的计算步骤和具体数值计算需要根据实际题目给出的数值进行具体分析和计算。
碎纸片的拼接复原算法及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 。
如何确定碎纸片的位置?
方法一:一次性确定所有碎纸片的位置。 方法二:分组确定碎纸片的位置。 方法三:逐一确定碎纸片的位置。
2013年数学建模b题纸片拼接
2013年数学建模b题纸片拼接1. 引言2013年数学建模比赛中的B题,是一道关于纸片拼接的问题。
纸片拼接这一主题,在数学建模的题目中并不常见,但却涉及了许多有趣的数学和几何问题。
在接下来的文章中,我将从不同的角度和深度来探讨这一主题,希望能够对你的理解和思考有所启发。
2. 纸片拼接的基本概念让我们来了解一下纸片拼接的基本概念。
在这个问题中,我们需要将大量的纸片按照一定的规则进行拼接,以得到一个特定的形状或图案。
这涉及到对纸片的形状、尺寸和拼接方式的研究和分析。
还需要考虑到纸片的变形和叠放等因素,这是一个具有挑战性的问题。
3. 纸片拼接的数学模型在解决纸片拼接的问题时,我们需要建立相应的数学模型来描述和分析。
这包括对纸片的几何形状进行建模,考虑到其尺寸、边界和变形等因素;同时需要建立拼接规则和约束条件,以确保拼接的合理性和有效性。
通过建立数学模型,可以更好地理解纸片拼接问题的本质,并为后续的求解和优化提供基础。
4. 深入探讨纸片拼接的几何特性在纸片拼接的过程中,我们不仅需要考虑到其形状和尺寸,还需要深入研究其几何特性。
这涉及到对纸片的曲率、折叠和叠放等几何特征的分析,以便更好地理解和控制拼接的过程。
还需要考虑到纸片的叠放和叠合时可能出现的奇异现象,这对于拼接的成功至关重要。
5. 数学建模与实际应用让我们来谈谈纸片拼接的数学建模与实际应用。
纸片拼接这一看似抽象的问题,实际上与现实生活中的许多工程和制造过程有着密切的联系。
在纺织、纸品和航空航天等领域,都存在着类似的拼接和叠放问题。
通过对纸片拼接问题的研究和建模,可以为这些实际应用提供理论支持和技术指导。
6. 总结回顾通过以上的探讨,我们可以看到,纸片拼接这一看似简单的问题,实际上涉及到许多有趣的数学和几何问题。
从纸片的基本概念、数学建模到几何特性和实际应用,我们可以更加全面、深刻和灵活地理解这一主题。
我个人认为,纸片拼接问题不仅具有学术研究的价值,还具有实际应用的潜力,希望能够引起更多人的关注和研究。
2013年数学建模b题
精心整理碎纸片的拼接复原【摘要】:碎纸片拼接技术是数字图像处理领域的一个重要研究方向,把计算机视觉和程序识别应用于碎纸片的复原,在考古、司法、古生物学等方面具有广泛的应用,具有重要的现实意义。
本文主要结合各种实际应用背景,针对碎纸机绞碎的碎纸片,基于计算机辅助对碎纸片进行自动拼接复原研究。
针对问题1,依据图像预处理理论,通过matlab程序处理图像,将图像转化成适合于计算机处理的数字图像,进行灰度分析,提取灰度矩阵。
对于仅纵切的碎纸片,根据矩阵的行提取理论,将每个灰度矩阵的第一列提取,作为新矩阵,提取每个灰度矩阵的最后一列,生成新矩阵。
建立碎纸片匹配模型:将矩阵中的任一列与矩阵中的每一列带入模型,所得p值对应的值,即为所拼接的碎片序列号。
将程序进行循环操作,得到最终的碎片自动拼接结果。
针对问题2,首先将图像信息进行灰度分析,提取灰度矩阵。
基于既纵切又横切的碎纸片,根据矩阵的行列提取理论,分别提取每个灰度矩阵的第一列和最后一列,分别生成新矩阵、;提取所有灰度矩阵的第一行和最后一行,分别作为新生成的矩阵、。
由于纸质文件边缘空白处的灰度值为常量,通过对灰度矩阵的检验提取,确定最左列的碎纸片排序。
在此基础上,采用从局部到整体,从左到右的方法,建立匹配筛选模型:,将矩阵中的任一列分别与矩阵中每一列代入模型,所得p值对应的值即为横排序;将矩阵中的任一行分别于矩阵中的任一行代入模型,所得q值对应的值即为列排序。
循环进行此程序,得计算机的最终运行结果。
所得结果有少许误差,需人工调制,更正排列顺序,得最终拼接结果。
针对问题3,基于碎纸片的文字行列特征,采用遗传算法,将所有的可能性拼接进行比较,进行择优性选择。
反面的排序结果用于对正面排序的检验,发现结果有误差,此时,进行人工干预,调换碎纸片的排序。
【关键词】:灰度矩阵欧式距离图像匹配自动拼接人工干预一、问题重述破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。
2013数学建模基于灰度像素理论的碎纸片拼接方法
基于灰度像素理论的碎纸片拼接方法摘要常规的二维碎片拼接技术一直受到科研领域重视,它在司法鉴定、文物修复、图像处理等领域有着广泛的应用。
本文研究的是二维碎片拼接技术中最典型的文档类碎纸片拼接问题。
基于文档纸片色彩明确、方向一致、无重叠等特点,利用灰度理论对问题作出解决。
通过图形扫描得到图像,然后通过二值化,Sobel[]3梯度算进行预处理,并运用皮尔逊相关性度量及方差分析算法进行匹配,以实现对纸片进行还原。
本文通过MATLAB程序模型,以及图片像素灰度理论实现文档碎片的重新拼接.对于问题1,应用图像处理技术中的灰度理论建立了灰度模型I.在对得到灰度模型进行Sobel梯度边缘化预处理的方法进行模型改进,建立了边缘灰度模型II。
然后借助于皮尔逊相关系数算法和MATLAB软件,对附件中所提供的碎片进行排列拼接.对于问题2,采用化归思想,将二维问题渐变为一维问题。
首先归纳碎片特征运用MATLAB软件对碎片进行同行分类,得到11行19列的元素;采用方差分析算法和人工干预对各行中元素进行排列,得到11条横切的图形;采用方差分析算法和人工干预对其进行排列,得以还原。
本文的亮点在于对各行中元素采用方差分析算法进行左侧到右侧匹配后,同时增加了右侧到左侧的匹配检验,大大减少了人工干预的工作.关键字:灰度理论;皮尔逊相关系数算法;Sobel梯度边缘化;方差分析算法;人工干预一、问题的重述问题一、对于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法,并针对附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原.如果复原过程需要人工干预,请写出干预方式及干预的时间节点。
复原结果以图片形式及表格形式表达。
问题二、对于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法,并针对附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原。
如果复原过程需要人工干预,请写出干预方式及干预的时间节点。
2013年数学建模b题纸片拼接
2013年数学建模b题纸片拼接2013年数学建模B题:纸片拼接一、引言纸片拼接是数学建模中的一个重要问题,它不仅有着广泛的应用领域,同时也涉及到许多数学概念和技巧。
本文旨在通过对2013年数学建模B题的研究,探讨如何在给定的条件下进行纸片拼接,并给出相应的数学模型和算法。
二、问题描述在本题中,我们需要将一张白纸剪成一些小纸片,并按照一定规则将它们拼接成一个大正方形。
给定一张n * m的白纸,我们需要将其剪成纸片,每个纸片的面积为1 * 1,并且不能有重叠。
然后,我们需要将这些纸片按照一定的方式拼接成一个边长为k的正方形(k <= n, k<= m),并使得正方形中没有漏缝和重叠。
三、数学模型为了解决这个问题,我们可以使用数学模型来描述纸片拼接的过程。
假设我们将纸片按顺序编号为1, 2, 3, ..., N(N为总纸片数),并用二维数组P(i)来表示第i个纸片的坐标(x, y)。
那么,我们可以定义一个n * m的二维数组M,其中M(x, y)表示坐标为(x, y)的纸片编号。
通过构建这个数学模型,我们可以方便地表示和操作纸片拼接过程。
四、纸片拼接算法在进行纸片拼接时,我们可以使用递归算法来实现。
具体步骤如下:1. 在开始时,将M数组全部初始化为0,表示没有纸片被放置在该位置。
2. 从第一个纸片开始,依次尝试将其放置在M数组的空位上,直到找到一个合适的位置。
合适的位置满足以下条件:a) 该位置未被占用;b) 该位置以及相邻位置的纸片可以形成一个正方形。
3. 如果找到了一个合适的位置,将该纸片放置,并将其编号填入M数组对应的位置中。
4. 继续将下一个纸片进行放置,直到所有纸片都被放置完毕。
5. 如果无法找到合适的位置放置当前纸片,则将该纸片放回上一个位置,并重新选择一个合适的位置放置前一个纸片。
6. 重复步骤3-5,直到找到合适的位置放置所有纸片或者找遍所有位置仍无法放置。
五、实例分析考虑一个具体的例子,假设给定的白纸为3 * 5,我们需要将其剪成纸片并拼接成一个2 * 2的正方形。
2013年数学建模b题
碎纸片的拼接复原【摘要】:碎纸片拼接技术是数字图像处理领域的一个重要研究方向,把计算机视觉和程序识别应用于碎纸片的复原,在考古、司法、古生物学等方面具有广泛的应用,具有重要的现实意义。
本文主要结合各种实际应用背景,针对碎纸机绞碎的碎纸片,基于计算机辅助对碎纸片进行自动拼接复原研究。
针对问题1,依据图像预处理理论,通过matlab程序处理图像,将图像转化成适合于计算机处理的数字图像,进行灰度分析,提取灰度矩阵。
对于仅纵切的碎纸片,根据矩阵的行提取理论,将每个灰度矩阵的第一列提取,作为新矩阵,提取每个灰度矩阵的最后一列,生成新矩阵。
建立碎纸片匹配模型:将矩阵中的任一列与矩阵中的每一列带入模型,所得p值对应的值,即为所拼接的碎片序列号。
将程序进行循环操作,得到最终的碎片自动拼接结果。
针对问题2,首先将图像信息进行灰度分析,提取灰度矩阵。
基于既纵切又横切的碎纸片,根据矩阵的行列提取理论,分别提取每个灰度矩阵的第一列和最后一列,分别生成新矩阵、;提取所有灰度矩阵的第一行和最后一行,分别作为新生成的矩阵、。
由于纸质文件边缘空白处的灰度值为常量,通过对灰度矩阵的检验提取,确定最左列的碎纸片排序。
在此基础上,采用从局部到整体,从左到右的方法,建立匹配筛选模型:,将矩阵中的任一列分别与矩阵中每一列代入模型,所得p值对应的值即为横排序;将矩阵中的任一行分别于矩阵中的任一行代入模型,所得q值对应的值即为列排序。
循环进行此程序,得计算机的最终运行结果。
所得结果有少许误差,需人工调制,更正排列顺序,得最终拼接结果。
针对问题3,基于碎纸片的文字行列特征,采用遗传算法,将所有的可能性拼接进行比较,进行择优性选择。
反面的排序结果用于对正面排序的检验,发现结果有误差,此时,进行人工干预,调换碎纸片的排序。
【关键词】:灰度矩阵欧式距离图像匹配自动拼接人工干预一、问题重述破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。
2013年数学建模b题纸片拼接
2013年数学建模b题纸片拼接
(最新版)
目录
一、2013 年数学建模 b 题背景
二、纸片拼接问题的基本概念
三、纸片拼接问题的解决方法
四、纸片拼接问题的实际应用
正文
一、2013 年数学建模 b 题背景
数学建模是一种重要的数学方法,它将实际问题抽象为数学问题,再通过数学方法求解,以解决实际问题。
2013 年数学建模 b 题就是一道典型的数学建模题目,它涉及到的问题是纸片拼接。
二、纸片拼接问题的基本概念
纸片拼接问题是指,给定一些形状、大小和颜色不同的纸片,要求将它们拼接在一起,使得拼接后的图形满足一定的要求,比如面积最大、周长最小等。
纸片拼接问题实际上是一个组合优化问题,它需要寻找一种最优的拼接方案。
三、纸片拼接问题的解决方法
解决纸片拼接问题的方法主要有两种,一种是基于启发式的方法,另一种是基于精确算法的方法。
基于启发式的方法,如模拟退火算法、遗传算法等,它们通过模拟自然界的进化过程,逐步寻找到最优的拼接方案。
这类方法的优点是计算速度快,缺点是可能无法得到全局最优解。
基于精确算法的方法,如整数线性规划、混合整数线性规划等,它们
通过建立数学模型,精确求解拼接问题。
这类方法的优点是能得到全局最优解,缺点是计算过程复杂,需要大量的计算资源。
四、纸片拼接问题的实际应用
纸片拼接问题在实际生活中有着广泛的应用,比如在制造业中,它可以用于优化材料的切割方案,提高材料的利用率;在图像处理中,它可以用于图像的拼接,提高图像的分辨率等。
2013年数学建模碎纸片的拼接程序
承诺书我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛网站下载)。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。
如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。
我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
我们参赛选择的题号是(从A/B/C/D中选择一项填写):B我们的参赛报名号为(如果赛区设置报名号的话):所属学校(请填写完整的全名):吉林医药学院参赛队员(打印并签名):1.徐曦2.贾赟光3.武松浩指导教师或指导教师组负责人(打印并签名):吴希(论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。
以上内容请仔细核对,提交后将不再允许做任何修改。
如填写错误,论文可能被取消评奖资格。
)日期:2013年09月16日赛区评阅编号(由赛区组委会评阅前进行编号):编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):赛区评阅记录(可供赛区评阅时使用):评阅人评分备注全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):碎纸片的拼接复原摘要本文通过对图片像素点灰度值的分析,研究碎纸片的拼接复原。
针对问题一,利用Matlab 软件求出附件1、2图片的像素点灰度值分布矩阵,提取每张图片的左右边缘的灰度值向量,根据图片像素点灰度值的不同,并据此建立spearman 相关系数模型[1]2361i s d n nρ=--∑利用SPSS 对边缘灰度值进行相关性分析,根据相关系数的大小得到两两匹配的纸片对,采用人工干预的方式将纸片左右边缘逐次进行拼接,得到附件1、附件2图片拼接的顺序,具体结果见表3、表5:表3附件1拼接顺序表5附件2拼接顺序针对问题二,在问题一的基础上,利用Matlab 软件求出附件3、4图片边缘像素点灰度值分布矩阵,提取每张图片的上、下、左、右边缘的灰度值向量,由于初始数据庞大,运用逐一比较像素点灰度值的思想设计算法,结合C 语言设计程序[2],实现快速拼接功能,得到附件3、附件4图片拼接的顺序,见正文表6、表7,此处列举部分数据,如下所示:针对问题三,在问题二的基础上,利用Matlab 软件求出附件5图片边缘像素点灰度值分布矩阵,提取每张图片的上、下、左、右边缘的灰度值集合,从解决问题的实际角度出发,对于双面打印文件,运用特殊点灰度值比较法设计算法,结合C 语言设计程序,实现拼接功能,得到附件5图片拼接顺序,见正文表8、表9。
碎纸片的拼接复原算法及MATLAB实现
承诺书我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛网站下载)。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。
如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。
我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
我们参赛选择的题号是(从A/B/C/D中选择一项填写): B我们的参赛报名号为(如果赛区设置报名号的话):所属学校(请填写完整的全名):楚雄师范学院参赛队员(打印并签名) :1. 陈志明2. 施明杰3. 阮秀婷指导教师或指导教师组负责人(打印并签名):(论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。
以上内容请仔细核对,提交后将不再允许做任何修改。
如填写错误,论文可能被取消评奖资格。
)日期: 3013 年 9 月 16 日赛区评阅编号(由赛区组委会评阅前进行编号):编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):碎纸片的拼接复原算法及MATLAB实现摘要:对于只有纵切的情形,文章通过比较当前待拼碎片与剩余碎片的信噪比psnr[1,3,4]的值来确定两碎片是否为邻接碎片;拼接算法首先连续调用右拼函数直到拼接到原图右边界,然后连续调用左拼函数直到拼接到原图左边界,从而得到整幅复原图像;对于单面纵横交错切的情形,文章对首先采用纵切拼接算法将碎片拼接成多幅横条图片,然后将各横条图片矩阵转置[2],再次采用纵切拼接算法拼接;两种情形的拼接,都存在人为参与;实验证明,我们的算法对纵切情形是有效的,对纵横切情况是可行的。
碎纸片拼接数学模型
碎纸片的拼接复原问题模型摘要本文研究的是碎纸片的拼接复原问题。
针对碎纸不同的裁剪特点,我们运用相关性系数法、聚类分析法等建立不同的模型来解决不同裁剪特点和不同纸张的复原问题。
针对问题一,我们利用图像数字化技术,借助MATLAB软件将题目中附件1,2所给的图片转化为灰度值矩阵,并作二值化处理,然后取出每个矩阵第一列和最后一列,采用相关系数分析的方法,计算每第一列和每最后一列相关系数,根据相关系数的大小确定相邻的图片,逐步确定各张图片的顺序,最后得到复原的图片。
中文文档拼接的顺序为:8,14,12,15,3,10,2,16,1,4,5,9,13,18,11,7,17,0,6,中文文档复原的结果见附录1;英文文档拼接的顺序为:3,6,2,7,15,18,11,0,5,1,9,13,10,8,12,14,17,16,4,英文文档复原结果见附录2。
针对问题二,同样,在将图片二值化处理后,我们运用聚类分析法将纵横裁剪后的图片进行行分类,经过人工干预后,获得需要的矩阵尺寸,然后根据图片的特点运用图片的上下边界和左右边界进行二次匹配,直到找到大致正确的图片排序;同时在必要时,进行二次人工干预,直到获得正确的图片排序。
关键词:碎纸片复原图像数字化相关性系数聚类法1 问题重述1.1 问题背景碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。
然而,传统的拼接复原工作需由人工完成,准确率较高,但效率很低。
特别是当碎片数量巨大,人工拼接很难在短时间内完成任务。
随着计算机技术的发展,人们试图开发碎纸片的自动拼接技术,以提高拼接复原效率。
本题即是通过一些模型算法开展对碎纸自动拼接技术的研究,具有重要的现实意义。
1.2 要解决的问题问题一:对于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法,并针对附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原。
如果复原过程需要人工干预,要求写出干预方式及干预的时间节点。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
承诺书我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛网站下载)。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。
如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。
我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
我们参赛选择的题号是(从A/B/C/D中选择一项填写):B我们的参赛报名号为(如果赛区设置报名号的话):所属学校(请填写完整的全名):吉林医药学院参赛队员(打印并签名):1.徐曦2.贾赟光3.武松浩指导教师或指导教师组负责人(打印并签名):吴希(论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。
以上内容请仔细核对,提交后将不再允许做任何修改。
如填写错误,论文可能被取消评奖资格。
)日期:2013年09月16日赛区评阅编号(由赛区组委会评阅前进行编号):编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):赛区评阅记录(可供赛区评阅时使用):评阅人评分备注全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):碎纸片的拼接复原摘要本文通过对图片像素点灰度值的分析,研究碎纸片的拼接复原。
针对问题一,利用Matlab 软件求出附件1、2图片的像素点灰度值分布矩阵,提取每张图片的左右边缘的灰度值向量,根据图片像素点灰度值的不同,并据此建立spearman 相关系数模型[1]2361i s d n nρ=--∑利用SPSS 对边缘灰度值进行相关性分析,根据相关系数的大小得到两两匹配的纸片对,采用人工干预的方式将纸片左右边缘逐次进行拼接,得到附件1、附件2图片拼接的顺序,具体结果见表3、表5:表3附件1拼接顺序表5附件2拼接顺序针对问题二,在问题一的基础上,利用Matlab 软件求出附件3、4图片边缘像素点灰度值分布矩阵,提取每张图片的上、下、左、右边缘的灰度值向量,由于初始数据庞大,运用逐一比较像素点灰度值的思想设计算法,结合C 语言设计程序[2],实现快速拼接功能,得到附件3、附件4图片拼接的顺序,见正文表6、表7,此处列举部分数据,如下所示:针对问题三,在问题二的基础上,利用Matlab 软件求出附件5图片边缘像素点灰度值分布矩阵,提取每张图片的上、下、左、右边缘的灰度值集合,从解决问题的实际角度出发,对于双面打印文件,运用特殊点灰度值比较法设计算法,结合C 语言设计程序,实现拼接功能,得到附件5图片拼接顺序,见正文表8、表9。
此处列举部分数据,如下所示:关键词:像素点灰度值相关性分析逐一比较法C 语言8141215310216145913181171706362715181151913108121417164一问题重述传统的拼接复原工作需由人工完成,准确率较高,但效率很低。
当碎片数量巨大,人工拼接很难在短时间内完成任务。
分析给出的碎纸片,建立碎纸片拼接复原模型,提高拼接效率。
二问题分析2.1纵切单面纸片的复原根据附件1、附件2给出的图片,利用Matlab对图片像素点的灰度值进行提取,得到每张图片左右边缘的像素点灰度值,见附录1,建立spearman系数模型,利用SPSS 求解两条边缘灰度值的spearman系数,得到相关系数,根据相关系数大小提取匹配度高的两张图片,逐次拼接,得到碎纸片复原图。
2.2既纵切又横切单面纸片的复原由于图片为既纵切又横切的碎纸片,在问题一的基础上,根据附件3、附件4给出的图片,利用Matlab对图片像素点的灰度值进行提取,得到每张图片上、下、左、右边缘的像素点灰度值,运用逐一比较寻找最佳目标的思想设计算法,先横向拼接图形,再进行纵向拼接。
先确定一张纸片,将其左、右边缘与其余纸片的边缘进行匹配,找到与其匹配度最佳的左、右两侧纸片,同理可确定其上下两侧纸片,依据此算法编写C程序,实现图片的拼接功能。
2.3既纵切又横切双面纸片的复原在问题二的基础上,根据附件5给出的图片,利用Matlab对图片像素点的灰度值进行提取,得到每张图片上、下、左、右边缘的像素点灰度值,对于双面纸片拼接问题,运用灰度值比较法,取边缘特殊点灰度值进行匹配,找到与之匹配的纸片,同时标记下已经被查找过的图片,减小循环次数。
设计算法并编写C程序实现拼接功能。
三变量说明,I J:图片的标号,l r:图片的左边缘和右边缘Ir:图片I右边缘像素点灰度值的向量J:图片J左边缘像素点灰度值的向量l四模型准备对于形状大小相同的纸片,唯一区分纸片的标志就是边缘字迹断线,本文基于图片像素点的灰度值,对碎纸片进行研究,故要提取给出图片边缘像素点的灰度值,下面给出灰度值的提取步骤:(以附件1中000-009图片左边缘为例)(1)将图片文件读入Matlab中,使用Imread()函数[4](源程序见附录2)(2)得到所需边缘像素点的灰度值集合,选取部分数据,见表1表1部分图片左边缘像素点灰度值000001002003004005006007008009255255255255255255255255025525525525525525525525525552552552552552552552552552552422552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552552555425525525524725525525525520902552552553255255255255002552552559225525525525500255255255255255255255255065255255195255255255255255252072552551125525525525525517125525525502552552552552552552552552550255255255255255255255255255025525525525525525520255255025525525525525525589255255025525525525525525525525525501922552552552552552552552550025525525525525525525525501202552552552552552552552550255255…………………………255255255255255255255255100255255255255255255255255255220255按以上步骤对附件1至5中给出的图片进行处理。
五模型的建立与求解5.1纵切单面纸片复原模型的建立与求解分析根据附件一、二给出的纵切碎纸片,利用Matlab 提取图片边缘像素点的灰度值(步骤在模型准备中已给出),将字迹断线转化为灰度值的变化关系,建立基于灰度值的spearman 相关系数模型,利用SPSS 求解各图片之间左右两边缘灰度值的相关性,根据相关性大小找出互相匹配的相邻纸片。
5.1.1建立基于灰度值的spearman 相关系数模型我们选择计算两图片间的匹配度,以相关性指标的大小来衡量匹配度的大小,例如,以图片,I J 为例,若Ir 与l J 的相关性很大,则I 右边缘与J 左边缘的匹配度较大,即两图片的连接顺序为I J →。
Spearman 相关系数公式如下:2361i s d n nρ=--∑(1)0,6r l 0.92310,21r l 0.9161,4r l 0.84411,7r l 0.8522,16r l 0.93412,15r l 0.813,10r l 0.8613,18r l 0.8724,5r l 0.81714,12r l 0.8325,9r l 0.86315,31r l 0.97,17r l 0.88316,1r l 0.9098,14r l 0.76617,0r l 0.8799,13r l0.92818,11r l0.8030,5r l 0.89610,8r l 0.8951,9r l 0.91611,0r l 0.6962,7r l 0.82412,14r l 0.9413,6r l 0.79813,10r l 0.8335,1r l 0.85914,17r l 0.7996,2r l 0.80715,18r l 0.8357,15r l 0.85916,4r l 0.8378,12r l 0.83817,16r l 0.9159,13r l0.83318,11r l0.861根据表4,采用人工干预的方式,对图片按左右边缘的顺序依次排列,得到拼接结果如下:表5附件2拼接顺序通过建立spearman 系数模型,利用相关系数比较两边缘匹配度的大小,解决了附件1和附件2的拼接问题,但此模型对于大规模的问题应用性较差,因此,我们在前面思想的基础上,利用C 语言编程,以实现对于大规模问题的求解。
5.1.2.1设计算法设计思路:本题基于通过比对各纸片左右边缘像素特性将纸片拼一张完整的图。
原理如图1所示:B<-->A、C、D、E⇓A B C⇓A B C D E图1具体算法如下:S1:提取所有纸片左右边缘像素点的灰度值,建立纸片左、右边缘的灰度值集合。
S2:选取某张纸片为基纸片,其左右边缘为待配准边缘,未被标记的纸片的左右边缘为配准边缘。
S3:将待配准边缘与配准边缘的左、右边缘像素点灰度值比较,找出与待配准边缘匹配度最高的配准边缘,从而确定基纸片的左右两侧纸片,并标记基纸片。
S4:以基纸片的一侧纸片作为新的基纸片,执行S2,若所有纸片全被标记,则执行S5。
S5:输出正确的拼接顺序,算法结束。
5.1.2.2编写程序采用C语言编写程序,具体程序代码如下:(以附件一为例)#include<stdio.h>#include<math.h>#include<stdlib.h>/*int pd(int x,int*d){int j,t,dz;dz=d;for(j=0;j<1979;j++)if(*(d+j)==255)t++;if(t>1900)return(0);elsereturn(1);}*/void main(){int a[1980][19],b[1980][19];int i,j;int n,s,d=0,m;FILE*fp1,*fp2;Char namein1[80]="C:\\Users\\Administrator\\Desktop\程序1\\Text1L.txt";Char namein2[80]="C:\\Users\\Administrator\\Desktop\程序1\\Text1R.txt";fp1=fopen(namein1,"r");while(!feof(fp1)){for(i=0;i<1979;i++)for(j=0;j<19;j++){fscanf(fp1,"%d",&a[i][j]);}} fp2=fopen(namein2,"r");while(!feof(fp2)){for(i=0;i<1979;i++)for(j=0;j<19;j++){fscanf(fp2,"%d",&b[i][j]);}//左查找d=0;do{i=d;s=2000;for(n=0;n<19;n++){if(b[0][n]==-1||n==i)continue;else{m=0;for(j=0;j<1980;j++){if(abs(a[j][i]-b[j][n])>=122)m++;}if(s>m){s=m;d=n;}}}b[0][d]=-1;a[0][i]=-1;printf("%d的左边是%d",i,d);} while(d!=8);printf("\n");//右查找d=0;do{n=d;s=2000;for(i=0;i<19;i++){if(a[0][i]==-1||n==i)continue;else{m=0;for(j=0;j<1980;j++){if(abs(b[j][n]-a[j][i])>=122)m++;}if(s>m){s=m;d=i;}}}a[0][i]=-1;printf("%d的右边是%d",n,d);}while(d!=6);printf("\n");fclose(fp1);fclose(fp2);}5.1.2.3运行结果程序运行结果如下:同理可得附件二的拼接结果,源程序见附录7,结果如下:通过以上的两个结果可以看出,此算法可以得出较为准确的拼接方案,同时,对于大规模的图片拼接问题,也可以进行求解,实用性较强。