碎纸片的拼接复原.docx

上传人:b****5 文档编号:8278420 上传时间:2023-01-30 格式:DOCX 页数:45 大小:1.49MB
下载 相关 举报
碎纸片的拼接复原.docx_第1页
第1页 / 共45页
碎纸片的拼接复原.docx_第2页
第2页 / 共45页
碎纸片的拼接复原.docx_第3页
第3页 / 共45页
碎纸片的拼接复原.docx_第4页
第4页 / 共45页
碎纸片的拼接复原.docx_第5页
第5页 / 共45页
点击查看更多>>
下载资源
资源描述

碎纸片的拼接复原.docx

《碎纸片的拼接复原.docx》由会员分享,可在线阅读,更多相关《碎纸片的拼接复原.docx(45页珍藏版)》请在冰豆网上搜索。

碎纸片的拼接复原.docx

碎纸片的拼接复原

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

承诺书

我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.

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

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

我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。

如有违反竞赛规则的行为,我们将受到严肃处理。

我们参赛选择的题号是(从A/B/C/D中选择一项填写):

我们的参赛报名号为(如果赛区设置报名号的话):

所属学校(请填写完整的全名):

参赛队员(打印并签名):

1.

2.

3.

指导教师或指导教师组负责人(打印并签名):

日期:

年月日

 

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

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

编号专用页

 

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

 

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

 

 

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

 

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

 

碎纸片的拼接复原

摘要

碎纸片的拼接复原技术是借助计算机把大量的不规则的图像碎片拼接成初始图像的完整模型,在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。

针对问题一:

本文从各张碎纸片的像素点出发,首先利用Matlab软件求出每张图片左右两侧边缘的像素分布,将每张图片的像素转化成相应的矩阵,然后采用人工干预找出第一张碎纸片,并建立优化模型依次从左到右的拼合碎纸片。

模型以前一张碎纸片右侧像素点与后一张碎纸片左侧像素点像素匹配差异值最小为目标函数,依次穷举未排好顺序的碎纸片,由此计算出了碎纸片的排列顺序,确定了碎纸片的复原图。

(见附录1、2图9,图10)

针对问题二:

本文采用聚类分析方法建立优化模型。

(1)将所有图片的像素转化为矩阵,其次采用人工干预的方式找出第一行第一张碎纸片,然后将所有图片灰度二制化,将灰色像素值转化为黑色像素值,然后由上至下找出黑白像素的分界线,根据分界线位置的差异值最小聚合出第一行所有的图片,同理聚合出第一列所有的图片,将第一行所有图片利用问题一的拼接算法求解出第一行图片拼接顺序。

(2)以第一行第一张碎纸片下侧像素点与其他碎纸片上侧像素点像素匹配差异值最小为目标函数,依次穷举第一列所有的碎纸片,从而找出第二行第一张碎纸片。

(3)根据第一行排好顺序的碎纸片以及第二行第一张碎纸片,采用上下侧边缘像素匹配以及左右侧边缘匹配,依次找出并排列好第2行,其他行依理重复步骤

(2)、(3)即可。

(4)完成匹配后,进行适当的人工干预即可确定碎纸片的复原图。

(见附录3、4图11,图12)

针对问题三:

本文采用正反匹配以及加权重聚类分析建立优化模型。

(1)以图片文字像素位置为基准通过加权重聚类的方法分为多组图片,选取一组上侧有留白的图片作为首行备选图片和一组左侧有留白的图片作为首列备选图片,再选取一张左侧和上侧都有适当留白的图片作为左上角的图片;

(2)在首行备选图片中,从左侧的图片开始,以图片a、b面边缘的相似度为标准,通过为图片像素中间行加上高权重,然后以像素贴近度最大为目标函数,穷举搜索首行备选图片,直至首行搜索完成;

(3)对于剩下的每一行,在首列备选图片中,图片以a、b面上下边缘相似度为标准,选取一张图片作为该行左侧图片;

(4)对于该行剩下的位置,以a、b面上下相似度与左右相似度为标准,匹配图片。

对于其余行重复步骤3、4。

匹配完成后,观察图片,并适当进行人工干预进行微调,从而确定最终的复原图。

(见附录5图13,图14)

最后,本文对所建模型的优点和缺点进行了客观的评价,认为本文研究的结果在图像拼接问题中有一定的参考价值。

关键词:

贴近度优化模型聚类分析像素匹配差异值

 

1、问题重述

破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。

传统上,拼接复原工作需由人工完成,准确率较高,但效率很低。

特别是当碎片数量巨大,人工拼接很难在短时间内完成任务。

随着计算机技术的发展,人们试图开发碎纸片的自动拼接技术,以提高拼接复原效率。

请讨论以下问题:

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

如果复原过程需要人工干预,请写出干预方式及干预的时间节点。

复原结果以图片形式及表格形式表达(见【结果表达格式说明】)。

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

如果复原过程需要人工干预,请写出干预方式及干预的时间节点。

复原结果表达要求同上。

3、上述所给碎片数据均为单面打印文件,从现实情形出发,还可能有双面打印文件的碎纸片拼接复原问题需要解决。

附件5给出的是一页英文印刷文字双面打印文件的碎片数据。

请尝试设计相应的碎纸片拼接复原模型与算法,并就附件5的碎片数据给出拼接复原结果,结果表达要求同上。

2.基本假设

1、假设破碎纸片切割均匀;

2、假设人工干预找出的第一张图片是准确的;

3、假设人工干预后调整的图片顺序是准确的;

4、假设图片切割成碎纸片的过程中没有丝毫损坏;

5、假设图片切割过程中没有出现完全相同的碎纸片。

3.符号说明

序号

符号

含义

1

张碎纸片的像素矩阵的最右侧1列

2

张碎纸片的像素矩阵的最左侧1列

3

张碎纸片的像素矩阵的最上侧的1行

4

张碎纸片的像素矩阵的最下侧的1行

5

面第

张碎纸片的像素矩阵的最右侧1列

6

面第

张碎纸片的像素矩阵的最左侧1列

7

面第

张碎纸片的像素矩阵的最上侧的1行

8

面第

张碎纸片的像素矩阵的最下侧的1行

4、问题一模型的建立与求解

4.1问题一分析

该问题的目标是建立最合适的碎纸片拼接复原模型和算法来复原仅纵向切割的图片。

首先应先对碎纸片进行预处理,将碎纸片的像素分布转换为矩阵,然后设计出匹配算法对碎纸片就行匹配,本题拟采用优化模型来拼接复原碎纸片,在此过程中,既应考虑到精确,又要考虑到高效。

考虑到高效问题,我们可从人工干预出发,采取适当的人工干预找出第一张碎纸片,这样可以减少穷举的数量,从而大大的加快执行效率。

考虑到精确问题,我们可从碎纸片的边缘像素分布出发,建立优化模型,以各碎纸片的边缘像素匹配差异值最小为目标函数,依次穷举找出与前一张图片像素匹配差异值最小的图片,进而就能从左到右依次确立各碎纸片的顺序。

最后将求得的碎纸片拼接顺序拼接在一起即可得到最终结果。

4.2问题一模型准备

(1)图像像素的量化方法

此题显示的是位图,它是由像素阵列的排列来实现其显示效果的,每个像素有自己的颜色信息,因此我们可以通过各个图像的像素来使各图像数字化。

考虑到matlab能够对图像进行有效的匹配,需要把碎纸片图像转换成matlab能够识别的数据,为此,我们采用了imread()函数,将各图片转化成由像素构成的矩阵,因而将图片的匹配问题转化为了对像素差异求最优解的问题。

(2)图片贴近度

模糊数学中常用贴近度来来描述两个模糊集之间的距离,在某种意义上,贴近度就是1-距离(这里的距离是上述标准化意义上的距离)。

而之所以应用这个变换,是考虑到“度”的概念的直觉反映——距离越近,贴近的程度显然越“高”,因此它恰为距离的反数。

因此我们也可以把贴近度的概念延伸,用图片贴近度用以描述两张图片的相近程度。

图片贴近度主要由两张图片的像素匹配差异值决定。

两张图片像素匹配差异值越小,图片贴近度越高;反之,图片贴近度越低。

(3)图片像素匹配差异值求解方法

在图论中,一个图是一个匹配(或称独立边集)是指这个图之中,任意两条边都没有公共的顶点。

这时每个顶点都至多连出一条边,而每一条边都将一对顶点相匹配。

同样,我们在图像拼接中运用类似的匹配思想。

把前一个图片像素点构成的矩阵最后一列与后一个图片像素点构成的矩阵的第一列对应做差后取绝对值再求和即可求得两张图片像素的匹配差异值。

(4)对碎纸片图像文字的处理。

图1:

附录1中碎纸片图像的文字处理

①在逻辑上将图像划分为n*m格(n*m为碎纸片的分辨率);

②对最左边一列从上至下取各格的值,该列获得的值组成一个向量;最右边一列处理相同同,同时标记是左还是右;

③用任一左边向量和所有右边向量比较,记下每一左边向量与所有右边向量的距离,然后对距离进行排序,对于距离值较小的,可认为该距离对应的左、右边可拼接,对于距离值差距在较小范围内的为多重可拼接(拼接重码),此时需要进行人工干预。

4.3问题一模型的建立

图2:

问题一模型求解流程图

(1)碎纸片预处理

预处理的目的是将待处理物体表示为适合于计算机处理的形式。

对于碎纸片来说,就是将其像素化、数字化,为此,我们利用Matlab软件中的imread()函数对碎纸片进行量化,由于题目中所给的碎纸片图像分辨率都是

,所以我们将每张碎纸片都转换成了

的矩阵。

(2)碎纸片匹配

对于碎纸片的匹配,首先,我们利用人工干预找出了第一张纸片,然后取出第一张纸片矩阵的最后一列,利用公式依次跟其余18张纸片矩阵的第一列做差、取绝对值、求和求出第一张碎纸片跟其他碎纸片的像素匹配差异值,

以像素匹配差异值最小为目标函数,得到问题的模型如下:

目标函数:

(1)

根据像素匹配差异值越小,图片贴近度越高,找出与第一张碎纸片像素差异值最小的图片作为第二张拼合的图片,其他图片的匹配以此类推。

(3)碎纸片的拼接合并

根据匹配算法求得的图片拼接顺序,利用Matlab的imshow()方法将排好的顺序拼接成图像即可。

4.4问题一模型的求解

针对附件1中的碎纸片,采用上述模型运用Matlab求解,得出每张碎纸片与其他碎纸片的像素匹配差异值如下表所示:

表1:

附件1中每张碎纸片与其他碎纸片的像素匹配差异值

顺序

014

012

015

003

010

002

016

001

004

000

60884

70563

67141

48739

53388

65067

64806

50114

57153

001

78744

92202

95123

62140

75044

70507

68843

11274

9999999

002

65767

54541

69086

42173

43263

5649

9999999

9999999

9999999

003

89184

100917

98710

14205

9999999

9999999

9999999

9999999

9999999

004

67000

66576

74564

50874

58076

65353

54355

52630

13399

005

34079

44210

45405

25181

36202

35206

31782

22379

27940

006

74979

77413

84576

65612

62658

66339

68784

64135

58397

007

50985

52387

53973

37409

41063

36688

35161

30564

44589

008

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

009

65970

69716

63857

48265

54646

47710

49649

42052

49223

010

60766

56540

71209

46295

13629

9999999

9999999

9999999

9999999

011

47051

56107

49694

31243

44602

41576

40213

34549

45806

012

44508

13686

9999999

9999999

9999999

9999999

9999999

9999999

9999999

013

72135

69547

71602

46171

57544

53769

54993

47864

56369

014

11515

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

015

28447

31690

4725

9999999

9999999

9999999

9999999

9999999

9999999

016

67003

69677

68155

40534

55952

56927

6628

9999999

9999999

017

71016

72329

73851

59581

55181

62612

59742

53961

58304

018

46786

62063

57784

42152

50330

47155

49649

35810

43341

顺序

005

009

013

018

011

007

017

000

006

000

68789

61703

52871

58834

56294

61115

55694

10835

9999999

001

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

002

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

003

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

004

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

005

7058

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

006

79563

69594

66105

68054

69044

74430

60437

69387

18805

007

55126

34436

37079

46663

45868

10955

9999999

9999999

9999999

008

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

009

63446

11808

9999999

9999999

9999999

9999999

9999999

9999999

9999999

010

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

011

43125

47475

31715

43909

6328

9999999

9999999

9999999

9999999

012

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

013

71290

56001

10313

9999999

9999999

9999999

9999999

9999999

9999999

014

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

015

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

016

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

9999999

017

78115

61368

57667

67611

69480

64148

19597

9999999

9999999

018

49365

45086

48615

11404

9999999

9999999

9999999

9999999

9999999

根据表1中的数据结果即可得到附件1图像拼接顺序依次为:

008,014,012,015,003,010,002,016,001,004,005,009,013,018,011,007,017,000,006

附件1碎纸片的复原图详见附录1图7。

按照相同的算法可求得附件2的拼接顺序为:

003,006,002,007,015,018,011,000,005,001,009,013,010,008,012,007,017,000,006

附件2碎纸片的复原图详见附录2图8。

5、问题二模型的建立与求解

5.1问题二分析

该问题的目标是建立最合适的碎纸片拼接复原模型和算法来复原既纵切又横切的图片。

问题二与问题一的区别在于碎纸片的切割由纵切变成了既有纵切又有横切的,所以问题一采用的人工干预找出第一张图片及简单地通过前后两张碎纸片的贴近度进行排列会产生相当大的误差,因此我们拟采用聚类分析方法建立优化模型来拼接附加2中的碎纸片。

(1)我们人工干预选出一组上侧留有空白的图片作为备选图片,以及选取一张左侧跟上侧都留有空白的图片作为拼接的第一张图片,其次将选取的第一张图片为基准采用相应的拼合算法不断的向左向下匹配下一张图片。

对于碎纸片上的文字处理可采取以下方式:

图3:

附录3碎纸片文字像素处理图

首先用Matlab中的imread()函数读取图片,将图片像素转化为相应的矩阵,

其次将矩阵中处于0~255之间的数值所在的行的全部数值转化为0(即将所有灰色像素点转换为黑色像素点,并将其所在的行全部转化为黑色像素点),然后由上至下找出黑白像素的分界线,并依次将第一张图片的分界线与其他图片的分界线进行差异匹配,从而分类聚合出第一行所有的图片。

(2)利用问题一中的拼接算法,以第一张图片右侧边缘像素点与第一行所有图片左侧边缘像素点像素匹配差异值最小为目标函数,建立优化模型,从而排列出第一行所有图片的顺序。

(3)同理,将剩余图片像素矩阵中处于0~255之间的数值所在的列的全部数值转化为0,然后由左至右找出黑白像素的分界线,并依次将第一张图片的分界线与其他图片的分界线进行差异匹配,从而分类聚合出第一列所有的图片。

(4)改进问题一中的算法,以第一张图片下侧边缘像素点与第一列所有图片上侧边缘像素点像素匹配差异值最小为目标函数,建立优化模型,从而确定出第二行第一张碎纸片,然后将第二行第一张碎纸片的右侧边缘像素点与待排图片左侧边缘像素点以及与上一行中对应图片下侧边缘像素点与待排图片上侧边缘像素点的像素匹配差异值最小为目标函数,建立优化模型,依次穷举出所有未排序的图片,找出第二行第一张碎纸片。

其他行碎纸片依照此理类推即可排出顺序。

(5)所有图片匹配完成后,对于拼接错误的图片进行相应的人工干预即可求得最后的图像复原图。

5.2问题二模型准备

(1)图片像素的量化和图片贴近度

考虑到要根据图片之间的像素贴近度进行匹配,需要用Matlab软件将碎纸片像素量化,将像素分布转化为相应的数据。

为此,我们采用了imread()函数,将各图片转化成由像素构成的矩阵,方便了matlab对图片匹配的处理操作。

图片贴近度用以描述两张图片的相近程度,主要由两张图片的像素决定。

两张图片像素匹配差异值越小,图片贴近度越高;反之,图片贴近度越低。

(2)图片聚类分析方法

数学建模中,研究对样品或指标分类的一种多元统计方法,是依据研究对象的个体的特征进行分类的方法。

聚类分析的基本思想是认为我们研究的样本或指标之间存在着程度不同的相似性。

于是根据一批样本的观察指标,具体找出想死程度较大的样本聚为一类,关系密切的聚到一个小的分类单位,关系疏远的聚到一个大的分类单位,直到所有样本聚合完毕。

这样就形成了一个个类,大大减少了数据处理的难度。

在图片拼接过程中,将碎纸片图像量化得到的矩阵中数值处于0~255(白色的像素值为255,黑色的像素值为0)之间的数所在的行或列中所有的数值全部转化为0,找出黑白像素的分界线,根据分界线的匹配度进行聚合分类。

5.3问题二模型的建立

图4:

问题二模型求解流程图

5.3.1碎纸片预处理

预处理的目的是将待处理物体表示为适合于计算机处理的形式。

对于碎纸片来说,就是将其像素化、数字化,为此,我们利用Matlab软件中的imread()函数对碎纸片进行量化,由于题目中所给的碎纸片图像分辨率都是

,所以我们将每张碎纸片都转换成了的

矩阵。

5.3.2碎纸片聚类分析及匹配

在碎纸片聚类过程中,首先将所有图片得到的像素矩阵灰度二制化,将灰色像素值转化为黑色像素值,由上至下找出黑白像素分界线,根据上侧跟左侧都留有白的特性人工干预找到第一张图片,然后以与第一张图片黑白像素分界线与其他图片黑白像素分界线差异值最小为目标函数建立优化模型,目标函数如公式

(2)所示。

.

目标函数:

(2)

我们根据分界线位置的差异值最小,对碎片预处理得到的像素矩阵,聚类分析得到第一行所有的图片,同样运用聚合分析的思想得到第一列所有的图片,根据问题一的匹配方法求出第一行图片的拼接顺序。

拼接效果如图5所示。

图5:

聚类出的第一行的拼接效果图

然后以第一行第一张碎纸片下侧像素点与其他碎纸片上侧像素点像素匹配差异值最小为目标函数,目标函数如公式(3)所示。

目标函数:

(3)

依次穷举第一列所有的碎纸片,找出第二行第一张碎纸片。

其次,根据第一行排好顺序的碎纸片以及第二行第一张碎纸片,采用上下侧边缘像素匹配以及左右侧边缘匹配,目标函数如公式(4)所示。

目标函数:

(4)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1