碎纸片拼接复原问题研究
B题碎纸片的拼接复原

B题碎纸片的拼接复原(总28页)页内文档均可自由编辑,此页仅为封面B题碎纸片的拼接复原摘要图像碎片拼接复原是借助计算机把大量的图像碎片重新拼接成初始图像的完整模型。
这一问题在考古、刑侦、古生物学以及壁画保存等方面具有广泛的应用。
要从成千上万的图像碎片中找到相互邻接的图像碎片,并最终拼接成完整的模型,需要用计算机和人工干预辅助相结合的方式来完成。
本文就对碎纸片的拼接复原问题进行分析研究,针对单面纵切,单面既纵切又横切,双面既纵切又横切纸片等情况的拼接复原问题,建立了相应的数学模型,并运用Excel、MATLAB等数学软件,分别对题目所提出的问题进行求解。
对于问题一,我们将碎纸片信息导入MATLAB软件中,得到每个碎纸片的像素值,并利用该像数值计算出碎纸片间拼接的候选权重C,再以该权重值)i,(j为依据对碎纸片进行配对,得到了碎纸片的拼接顺序,进而实现了仅纵切纸片时中、英文碎片的拼接复原。
对于问题二,我们首先筛选出了左右两侧有空白的碎片,并把剩余碎片的信息导入MATLAB中,按照问题一中的方法计算出候选权重;利用该候选权重对碎片的编号进行定位,得到了一个定位矩阵并将其导入到Excel中,在Excel中分析该矩阵,可得到一个最优的拼接次序;再进行人工干预,找到左页边的碎片编号并将其置于第一位,然后按照最优连接次序将碎片进行拼接,得一个完整的行碎片。
再对行碎片进行拼接,最优选择标准为:同一段落内行间距相同。
可以得到按段落划分的几个碎片。
此时进行人工干预,人为拼接为完整图片。
在本问中,由于中、英文字的差异,在对英文碎片拼接时本文只采用了候选权重法进行处理。
对于问题三,考虑到英文双面的数据过于庞大,本文先对数据进行分类,用MATLAB软件将处于同一行的碎片提取出来,分别存放在不同的文件夹中;然后再对文件夹内的数据进行候选权重的处理,按照问题二中的方法得到最优排列次序,按该排列次序拼接碎片得到了22个横向碎片,其中有11对正反面,再对这些横向碎片进行计算候选权重的处理,然后确定一个最优排列次序,完成图片的拼接。
基于改进的BFS算法的碎纸片拼接复原

基于改进的BFS算法的碎纸片拼接复原终期研究报告书一、课题研究的主要进展和结果图象拼接是一个日益流行的领域,已经成为照相绘图学、计算机视觉、图像处理和计算机图形学研究中的热点。
图像拼接解决的问题一般式,通过对齐一系列空间重叠的图像,构成一个无缝的、高清晰的图像,它具有比单个图像更高的分辨率和更大的视野。
本文的主要工作:(1) 总结了前人在图像拼接方面的技术发展历程和研究成果。
(2) 学习和研究了前人的图像配准算法。
(3)学习和研究了常用的图像融合算法。
(4) 用matlab实现本文中的图像拼接算法(5)总结了图像拼接中还存在的问题,对图像拼接的发展方向和应用前景进行展望。
我们的项目预期目标是运用改进的BFS算法逐层深入地解决了仅纵切、既横切又纵切以及双面拼接的碎纸片复原问题,并且将得到碎纸片的拼接复原位置和复原图像。
为司法物证复原、历史文献修复以及军事情报获取领域提供新的理论方法,同时,避免了人工来进行图象拼接复原的复杂性。
本文根据题目要求,针对具体问题建立相应的数学模型和设计相应的算法,逐层深入地解决了仅纵切、既横切又纵切以及双面拼接的碎纸片复原问题,最后得到了附件1—5的的碎纸片的拼接复原位置和复原图像。
结果见附录中的正文。
二、课题研究问题的叙述2.1 问题一的分析问题一要求仅对纵切的中英文碎纸片进行拼接复原,这是典型的图像匹配问题。
首先按照附件中的图片顺序,依次编号为1~19,然后我们对碎纸片的文字特征进行分析,用将碎纸片数字化,提取其灰度值,再读取每张碎纸片的左右边界灰度值,计算碎纸片之间左右边界灰度值的差的平方值越小,则相似性度量越高。
然后判断边界碎纸片,边界的碎纸片的判定可以根据每张纸片的左右边界灰度值是否为空白,左边界灰度值为空白的碎纸片的顺序即为1,右边界灰度值为空白的顺序即为19.从而建立搜索策略模型,用广度搜索优先算法找到每张碎纸片与相似性度量越高的匹配对象即为最佳匹配对象,如果还有小数碎片不能确定其复原位置,单独列出,最后根据文字特征及常识进行人工拼图。
碎纸片拼接复原的数学方法

碎纸片拼接复原的数学方法拼图游戏,一种看似简单却富含深度的游戏,给人们带来了无穷的乐趣。
然而,大家是否想过,这样的游戏其实与数学有着密切的?让我们一起探索碎纸片拼接复原背后的数学方法。
碎纸片拼接复原,其实就是一个计算几何问题。
在数学领域,欧几里得几何和非欧几里得几何是两个基本而又重要的分支。
欧几里得几何主要研究的是在平面上两点之间的最短距离,这是我们日常生活中常见的几何学。
而非欧几里得几何则研究的是曲面上的几何学,这种几何学并不符合我们日常生活中的直觉。
碎纸片拼接复原的问题就是一种非欧几里得几何问题。
在计算机科学中,图论是研究图形和网络的基本理论。
其中,图形遍历算法可以用来解决碎纸片拼接复原问题。
这种算法的基本思想是:从一点出发,尽可能多地遍历整个图形,并在遍历的过程中对图形进行重建。
对于碎纸片拼接复原问题,我们可以将每一张碎纸片看作是图中的一个节点,当两张碎纸片拼接在一起时,它们就形成了一个边。
通过这种方式,我们可以将所有的碎纸片连接起来,形成一个完整的图形。
在计算机科学中,碎纸片拼接复原问题被广泛应用于图像处理、数据恢复等领域。
例如,在数字图像处理中,如果一张图片被切割成若干块,我们可以通过类似的方法来恢复原始的图片。
在数据恢复领域,当一个文件被删除或格式化时,我们也可以通过类似的方法来恢复文件。
碎纸片拼接复原的问题不仅是一个有趣的拼图游戏,更是一个涉及计算几何、图论等多个领域的数学问题。
通过运用这些数学方法,我们可以有效地解决这个问题,从而更好地理解和应用这些数学理论。
在我们的日常生活中,我们经常会遇到一些破碎的物品,例如碎镜子、破碎的瓷器,或是碎纸片等。
这些物品的复原过程都需要一种科学的方法来帮助他们重新拼接起来。
这种科学方法就是碎纸片拼接复原技术。
碎纸片拼接复原技术是一种基于数学模型的方法,它通过比较碎纸片边缘的形状、纹理、颜色等特征,来找到碎纸片之间的相似性和关联性,从而将它们拼接起来。
基于数值分析碎纸片拼接复原的研究

中图分类号 : 02 4 4
传 统破 碎文 件 的拼接 复原工 作需 由人 : [ 完成 , 准确 率较 高 , 但 效率很 低. 特 别是 当碎 片数量 巨 大 , 人工 拼接在 短 时间 内难 以完成 . 随着计 算 机技术 的发 展 , 人 们试 图开 发碎 纸片 的 自动 拼 接技 术 , 以 提高 拼 接 复 原效率 . 若 对 图片文件 通过 模型 和算 法来实 现拼 接复 原 , 必须 把 图片转 化 成计 算 机 能识 别 的数 据 , 需 要对
表 1 汉 字 纸 片 的 阈值 设定
收 稿 日期 : 2 01 3 - 1 0 — 2 6
基金项 目: 第 二 批 国家 级 大 学 生 创 新 创业 训 缘 计划 基 金 资助 项 居 ( 2 0 1 2 l 0 3 6 3 2 0 5 ) 作者简介 : 孙 传 省( 1 9 9 卜) , 男, 安徽安陕人 . 本科. 通讯作者 : 王立伟 ( 1 9 8 1 - ) . 男, 安徽芜湖人 . 讲师, 硕 t : .
图片进 行数 据化 处理 . 通过 分析 图片边 界 的相关 特征 , 便 于编 写计 算机 程 序来 帮 助筛 选 匹 配碎 片 , 从 而提
高碎 片复 原效率 . 关 于碎纸 片拼接 复原 问题 , 文献[ 1 研 究 了文字 特 征 的 文档 碎 纸 片半 自动 拼 技术 , 文 献 [ 2 ] 采 用基 于灰度 相关 特征 点拼接 算法 来研 究拼接 问题 , 文献 [ 3 ] 研究 了灰度 提取 共 生纹 理 特 征值 矩 阵 的
第 2 8卷 第 4期 2 0 1 3年 1 2月 文章编号 : 1 6 7 2 — 2 4 7 7 ( 2 0 1 3 ) 0 4 — 0 0 7 8 — 0 5
碎纸片的拼接还原研究

碎纸片的拼接复原摘要碎纸片的拼接复原是一门借助计算机,把大量碎纸片重新拼接成初始纸张的技术。
针对问题一,本文首先利用碎纸片图像灰度矩阵的边缘矩阵,建立了两个碎纸片之间的匹配度函数,求得了每一张图片之间左右边缘匹配度矩阵。
然后根据左边边缘位置的碎片的左边空白部分最多的特点,确定了左边位置的碎纸片。
接着根据拼接碎纸片的拼接复原时,所有碎纸片匹配度之和取极大值的原则,采用贪心算法,得到了所有碎纸片的初始位置,拼接复原了附件1和附件2中纸片。
针对问题二,由于附件3碎片数量太多,并且碎片的拼接复原,是一个以碎纸片总匹配度为目标函数的组合优化问题。
所以本文采用遗传算法将碎纸片的编号作为基因,并将基因均匀分成19段,按顺序每一段对应一个初始纸片列位置,进行了求解。
然后,根据边缘碎纸片某些边的空白部分多的特征,对初始基因进行了优化。
接着,根据碎纸片的黑色像素密度不同的特点,将碎纸片分成三类,根据同类纸片优先匹配的原则,对遗传算法的运行过程进行了优化,拼接复原了附件3和附件4中纸片。
针对问题三,随着碎纸片量的增多,计算量急剧增加。
在上述拼接复原碎纸片的基础上,又引进了同行位置碎纸片的上部(或下部)空白位置宽度相近的聚类思想。
先对每个类内部拼接,在合并所有类并做一次整体拼接。
由于时间有限,我们未能完成最后一次的整体的拼接,但我们会在比赛后继续探究。
关键词:边缘矩阵匹配度函数遗传算法聚类一、问题重述碎片拼接实际用途已经越来越广泛,传统上拼接复原工作由人工完成,碎片拼接的准确率较高,但效率很低。
并且当碎片数量很大时,人工短时间内拼接出来几乎是不可能的。
所以开发碎纸的拼接技术,以提高拼接复原效率已成为越来越多人的期望。
现在,在碎纸片是规则的情况下,题目要求我们在以下条件建立碎纸片拼接复原模型和算法。
1.来自同一页印刷文字文件(中文、英文各一页)的碎纸机破碎纸片(仅纵切)拼接复原,并将附件1和附件2复原。
2.对碎纸机既纵切又横切文件的情形,将碎纸片拼接完整。
碎纸片的拼接复原分析最终

碎纸片的拼接复原分析最终引言碎纸片的拼接复原是一项有趣且具有挑战性的任务。
无论是为了还原重要文件还是拼接有意义的图像,我们都需要使用各种技巧和方法来完成这项任务。
本文将介绍一种基于分析的碎纸片拼接复原方法,通过对碎纸片的形状、颜色和纹理等特征进行分析,最终达到拼接复原的目标。
碎纸片的特征提取在进行碎纸片的拼接复原之前,首先需要提取碎纸片的特征。
这些特征包括碎纸片的形状、颜色和纹理等。
形状特征提取为了提取碎纸片的形状特征,可以通过计算碎纸片的边界和角度来获得。
首先,使用图像处理技术,如Canny边缘检测算法,将碎纸片的边缘提取出来。
然后,使用霍夫变换来检测碎纸片的直线和角点,从而计算出角度和边界。
颜色特征提取碎纸片的颜色特征可以通过计算图像的颜色直方图来得到。
颜色直方图表示了图像中每个颜色的像素数量。
我们可以使用像素级别的颜色分布来比较不同碎纸片的颜色特征,并找到相似的碎纸片来进行拼接。
纹理特征提取碎纸片的纹理特征可以通过计算图像的纹理描述符来得到。
纹理描述符是用于描述图像纹理的数值特征。
其中,最常用的纹理描述符包括灰度共生矩阵(GLCM)和局部二值模式(LBP)。
通过计算碎纸片的纹理描述符,我们可以比较不同碎纸片之间的纹理相似度,并选择相似的碎纸片进行拼接。
碎纸片的拼接策略在完成碎纸片特征提取后,接下来需要制定碎纸片的拼接策略。
拼接策略将基于碎纸片的特征相似度和拼接的整体目标来确定。
相似度匹配根据碎纸片的形状、颜色和纹理特征,我们可以计算两个碎纸片之间的相似度。
一种常用的相似度计算方法是使用余弦相似度,它衡量两个向量之间的夹角。
通过计算碎纸片之间的相似度,我们可以找到最相似的碎纸片来进行拼接。
拼接顺序在进行碎纸片的拼接时,需要制定一个拼接顺序。
一种常用的策略是首先选择与已拼接部分最相似的碎纸片进行拼接,然后逐渐增加已拼接部分的面积,直到最终完成拼接。
拼接约束为了保证拼接的准确性,我们需要制定一些拼接约束。
碎纸片复原

关于碎纸片的自动拼接复原的数学模型问题摘要本文根据碎纸片内的文字特征、图片像素特征特点提出了基于文字特征的文档碎纸片自动拼接复原模型。
根据碎纸拼接模型提出了基于MATLAB[1]语言为核心的自动拼接算法,并用该算法的程序对碎纸机碎纸的实际例子进行了拼接实验。
对这类边缘相似的碎纸片的拼接,理想的计算机拼接过程应与人工拼接过程类似,即拼接时不但要考虑待拼接碎纸片边缘是否匹配,还要判断碎片内的字迹断线或碎片内的文字内容是否匹配。
然而由于理论和技术的限制,让计算机具备类似人类那种识别碎片边缘的字迹断线、以及理解碎片内文字图像含义的智能几乎不太可能。
但是利用现有的计算机技术,完全可以获取碎片文字所在行的几何特征信息,比如文字行的行高、文字行的间距等信息。
拼接碎片时如利用这些信息进行拼接,其拼接效率无疑比单纯手工拼接要高。
针对问题一,由于碎纸片数量比较少且只有纵向切割,采用比较简单的二值模型进行碎纸配对。
由于图像都具有三颜色RGB,扫描之后的碎纸片需要对其进行灰度处理得到一张灰度值图像,若定义原点之后,每一个像素点都具有X、Y坐标值,碎纸片的灰度值可构成一个二维矩阵。
二维矩阵的每一个元素都代表着碎纸片的特征值,根据图片每一个灰度值的大小即可判断出碎纸图片边界特性。
对于一个选定的纸片,将每一个待拼接碎纸片的二维矩阵的最左一列与其二维矩阵的最右一列进行差值比较,再求把所有的差值求和,生成一个相应的矩阵。
将该矩阵的最小值来作为相似度矩阵的判断条件,以此便可求出该图片是否能够成功拼接。
最后利用加权平均的融合方法进行图像无缝平滑,得到无缝拼接[2]图像。
针对问题二:根据附件3和附件4给出的碎片资料可以看出,碎片除了有纵向切割之外还有横向切割,这给单一的拼接算法带来了一定的困难。
本文根据图片的质量与清晰度可以将问题简化,将附录所给出的碎纸片用简单的算法进行分组归类,使得拼接问题变得单一化,先使用第一问的模型进行纵向拼接成11行之后,再以第一问的模型进行横向拼接。
碎纸片还原问题求解

185 2 0 5 204 0 0 4
186 0 8 5 205 1 0 1
187 1 5 2 206 1 1 3
188 1 6 5 207 1 9 4
189 0 2 7 208 1 1 9
190 0 6 0 209 1 2 3
编号
…
顺序
…
编号
…
问题三的求解: 用求绝对差的算法匹配点对,后期运用欧式距离进行 检验匹配度. 步骤一 运用Matlab程序对418个碎片图像进行像素矩阵转换 计算,得到418个180 *72的矩阵,提取所得每个像素矩阵 的第一列像素矩阵和最后一列像素矩阵,即均为 180*1的 像素矩阵. 步骤二 对得到418个第一列像素矩阵和最后一列像素矩阵分 别进行列求和,然后分别存放在矩阵D和Dt中,接下来用 Dt的每一项依次减去D的每一项之后并求绝对值,得到一 个矩阵M.
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的拼接复原文件,拼接顺序如下表所示:
表4 附件2文件的复原拼接结果
顺序
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
编号
0 0 3
符号说明
Dn ————相对应的像素绝对差值
Sn (i, j ) ——像素矩阵的像素值
aij
————第i个碎片最后一列与第j个碎片第一列的图像矩阵值
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于旅行商规划模型的碎纸片拼接复原问题研究摘要本文分别针对RSSTD(Reconstruction of Strip Shredded Text Document)、RCCSTD(Reconstruction of cross-cut Shredded Text Document)和Two-Sides RCCSTD三种类型的碎纸片拼接复原问题进行了建模与求解算法设计。
首先我们对于RSSTD问题,建立了基于二值匹配度的TSP模型,并将其转化为线性规划模型,利用贪心策略复原了该问题的中文和英文碎片;然后对于RCCSTD问题,由于中英文字的差别,我们分别建立了基于改进误差评估的汉字拼接模型和基于文字基线的误差评估的英文字拼接模型,并利用误差评估匹配算法,复原了该问题的中文和英文碎片;随后我们针对正反两面的RCCSTD 问题,利用基线的概念将正反两面分行,转化为RCCSTD问题,并复原了该问题的英文碎片。
最后,我们对模型的算法和结果进行了检验和分析。
◎问题一:我们针对仅纵切的情况,首先将图像进行数字化处理,转换为了二值图像,然后得到各图像的边缘,并计算所有碎片与其他碎片边缘的匹配程度。
然后,根据两两碎片之间的匹配程度建立了TSP模型,并将其划归为线性规划模型。
最终,我们根据左边距的信息确定了左边第一碎片,随后设计了基于匹配度的贪心算法从左向右得到了所有碎片的拼接复原结果。
结果表明我们的方法对于中英文两种情况适用性均较好,且该过程不需要人工干预。
◎问题二:我们针对既纵切又横切的情况,由于中英文的差异性,我们在进行分行聚类时应采用不同的标准。
首先根据左右边距的信息确定了左边和右边的碎片,随后分别利用基于改进误差评估的汉字拼接模型和基于文字基线的误差评估模型,将剩余的碎片进行分行聚类,然后再利用基于误差评估的行内匹配算法对行内进行了拼接,最终利用行间匹配算法对行间的碎片进行了再拼接,最终得到了拼接复原结果。
对于拼接过程中可能出现误判的情况,我们利用GUI 编写了人机交互的人工干预界面,用人的直觉判断提高匹配的成功率和完整性。
◎问题三:我们针对正反两面的情况,首先根据正反基线信息,分别确定了左右两边的碎片,然后利用基线差值将其两两聚类,聚类以后其正反方向也一并确定,随后我们将其与剩余碎片进行分行聚类,最终又利用行内匹配和行间匹配算法得到了最终拼接复原结果。
其中,对于可能出现的误判情况,我们同样在匹配算法中使用了基于GUI的人机交互干预方式,利用人的直觉提高了结果的可靠性和完整性。
关键字:碎片复原、TSP、误差评估匹配、基线误差、人工干预一、问题重述破碎文件的拼接复原工作在传统上主要需由人工完成,准确率较高,但效率很低。
特别是当碎片数量巨大,人工拼接很难在短时间内完成任务。
随着计算机技术的发展,人们试图开发碎纸片的自动拼接技术,以提高拼接复原效率。
请讨论以下问题:1. 对于给定的来自同一页印刷文字文件的碎纸机破碎纸片(仅纵切),建立碎纸片拼接复原模型和算法,并针对附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原。
如果复原过程需要人工干预,请写出干预方式及干预的时间节点。
复原结果以图片形式及表格形式表达。
2. 对于碎纸机既纵切又横切的情形,请设计碎纸片拼接复原模型和算法,并针对附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原。
如果复原过程需要人工干预,请写出干预方式及干预的时间节点。
3. 上述所给碎片数据均为单面打印文件,从现实情形出发,还可能有双面打印文件的碎纸片拼接复原问题需要解决。
请尝试设计相应的碎纸片拼接复原模型与算法,并就附件5的碎片数据给出拼接复原结果。
二、问题分析破碎文件的拼接复原工作,传统人工处理准确率高,但是效率低。
随着计算机技术的发展,本问题试图寻找碎纸片的自动拼接方法。
本文的碎片均为矩形,且大小一样,这就给碎片的拼接带来了困难,因为难以利用碎片的轮廓信息,从而只能利用碎片边缘的图像像素信息来进行拼接。
对于问题一,给出了纵切的19条碎纸片,碎片为1980*72,总切线的像素点较多,并且碎纸片的数量较少,从效率出发,可以直接考虑纵切条上的像素统计信息。
为了衡量匹配程度,需要建立误差评估函数。
本文考虑采用TSP模型,将碎纸片作为节点,将误差评估函数的值作为节点之间的权值,寻找最优解。
在本问题的情况下,中英文的差别并无太大影响。
对于问题二,由于给出的数据是横纵切的中英文碎片,碎片大小为180*72,各208张。
因为碎纸片的数量较多,直接匹配则为NP问题中的无法用多项式解决的问题,所以先将行分组匹配完成后再把各行拼接起来。
本问题主要解决:1)如何正确高效分组;2)如何准确高效拼接。
考虑到中文和英文在字形和印刷结构上的不同,需要定义不同的特征向量去描述中文和英文的碎纸片上的信息。
文字各行的位置和间距将作为重要的分组依据。
在问题一的基础上,由于每个碎纸片的边缘像素较少,为了充分利用包含信息,误差评估函数的定义将会比问题一中更加细化。
行之间的拼接将会利用边缘像素和间距匹配。
在本问题中,中英文的基线选择方法将会有很大不同。
对于问题三,在问题二的基础上,加入了正反面信息,碎纸片的形状并没有改变。
因此,需要在问题二的误差评估函数的基础上,综合考虑正反面的匹配误差。
分组的方法与行间的拼接方式与问题二基本相同。
综上所述,本问题可以看做是TSP问题,碎纸片为节点,误差评估函数值为边的权值,寻求最优解的问题。
三、模型假设1. 假设需要复原的碎片是来自同一张纸,且对于该张纸具有完备性。
2. 假设同一页中,文字的种类、行间距和段落分布情况是相同的。
四、模型建立与求解文件碎片拼接主要有两类不同的技术标准:(1)R econstruction of Strip Shredded Text Documents(RSSTD)碎片的长度和原始文件的长度相等,同时所有碎纸片都是等宽的长方形。
(2)Reconstruction of Cross-cut Shredded Text Document(RCCSTD)所有的文件碎片都是长方形且大小相等,但其长度小于原始文件的长度。
问题一为典型的RSSTD问题,我们通过分析碎纸片文字的行特征,建立了一种基于匹配度的求解模型,下面就对该模型的建立进行详细的讨论。
5.1问题1——基于匹配度的RSSTD问题研究为了便于对图像数据进行分析,我们首先需要对其进行数字化处理以及文字行特征的提取,而后再建立基于匹配度的模型。
5.1.1图像数字化处理图像的数字化处理主要包括以下几个方面:(1)二值化处理由于纵切碎纸片的长度特征(碎片长度与原始文件长度相等),其边缘像素点信息量丰富。
因此我们采取二值化而非灰度对图像进行了处理,进一步简化了算法的复杂度,得到每条碎片像素大小为(长宽),像素点值取{0,1},其中0和1分别表示颜色的黑与白。
(2)e dge矩阵的建立edge[i,j]为的矩阵,储存每一条碎片的边缘像素点信息。
其中i表示碎片的编号,j=0表示左侧边缘像素点信息,j=1表示右侧边缘像素点信息。
例如,edge[0,0]储存001号碎片左侧边缘像素点信息。
(3)c ount矩阵的建立根据edge[i,j]矩阵,我们可以计算得到一个的count[i,j]矩阵,该矩阵储存每一条碎片边缘取值为0的像素点的数量。
例如,count[0,0]=350表示001号碎片左侧边缘共有350个黑色像素点。
(4)s hred with blank left的选取根据count矩阵,若edge[i,0]=0,那么我们就认为该碎片在原始文件中处于类、行间距和段落分布情况是相同的。
最左端,即为选取的shred with blank left。
(5)碎片行特征的提取由于原始文件文字行特征明显,因此我们需要提取碎片的行特征(其具体的原因见匹配度的定义)。
首先确定碎片顶端取值为0的像素点的位置,以此作水平线为上边界,依次向下取w为行宽(这里取w=40 pixels以保证能容纳每一个文字)直至下边缘,得到每条碎片的行数为{n1, n2,…, n19};然后取n=max{n1, n2,…, n19}作为最终确定的行数,并以该条碎片的行化方式为标准对每一条碎片进行行化;最终每一条碎片被划分为28行。
每条碎片维护着以下的特征数据表:表 1 碎片i特征数据表k 1 2 3 …27 28nkl ni1l ni2l ni3l …ni27l ni28lnkr ni1r ni2r ni3r …ni27r ni28r其中,k为行号;nkl为第k行左侧边缘取值为0的像素点的数量,nkr为第k行右侧边缘取值为0的像素点的数量;nikl 为第i条碎片第k行左侧边缘取值为0的像素点的数量。
5.1.2匹配度的定义为了衡量两个碎片之间的匹配程度,我们定义匹配度Mij作为评价的标准,其计算公式如下:其中,n为总的行数(如);ijkm表示碎片i 和碎片j第k行之间的匹配度;ijM表示碎片i和碎片j之间的匹配度。
这里我们不选择通过统计碎片边缘总黑色像素点的数量来计算两碎片之间的匹配度,而是通过计算两碎片行匹配度来间接计算其匹配度,原因在于:①若以总的边缘黑色像素点计算匹配度,行与行之间的差异性无法体现,匹配结果误差过大;②通过行匹配度计算碎片之间的匹配程度,更加充分的挖掘了碎片边缘的信息,更为精确。
5.1.3.1 模型的建立根据匹配度的定义,我们可以计算得到19个碎片两两之间边缘的匹配度,现可将问题化简为:已知起始碎片和其他碎片之间的匹配度,寻找一序列使得碎片之间总的匹配度达到最大。
如右图所示:(1)为简化问题,我们引入空白碎片0,同样可计算得到空白碎片与其他碎片的匹配度;(2)(2)其中节点表示碎片,有向线段长度表示费用wij,且wij=1-Mij,箭头所指方向表示前一条碎片右侧边缘到后一条碎片左侧边缘。
如①→②表示1号的碎片右侧边缘与2号碎片左侧边缘的费用;(3)现要求寻找一条回路遍历所有的节点使得费用达到最小。
通过分析,可以发现这是一典型的TSP问题。
为解决上述问题,我们建立模型如下:假设图中存在Hamilton回路,有n个节点,图中(i,j)边的权重为wij,设决策变量为xij=1说明弧(i,j)进入到Hamilton回路中,则线性规划模型可表达[6]为:求解该问题就是求解该线性规划问题的最优解。
5.1.3.2 模型的求解为了进一步求解上述模型,我们设计的算法如右图所示:(1)将所有碎片放入地址池中;(2)选出左侧全为白色像素点的碎片作为基准碎片,记为si,并将其从碎片池中剔除;(3)依次计算si右侧边缘与地址池中其他碎片sj左侧边缘的匹配度Mij;(4)选择匹配度最大的碎片st作为碎片si的右侧碎片,并将其记为si,从碎片池中剔除该碎片;(5)重复(3)~(4)步直至碎片池为空。