




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、袀 基于最小二乘法的碎纸片拼接复原数学模型膇 摘要节 首先对图片进行灰度化处理, 然后转化为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 张图
2、片分为11类;对于每一类图片,按照问题一的模型与算法,即列偏差函数最小则进行左右拼接, 对于没有拼接到组合里的碎纸片进行人工干预,我们得到了11 组碎纸片拼接而成的图片;对于拼接好的11张图片,按照问题一的模型与算法,即行偏差函数最小则进行上下拼接, 对于没有拼接到组合里的碎纸片进行人工干预。我们最终经计算,附件3 的拼接结果见表9,附件4 的拼接结果见表10。肀 针对问题三,由于图片区分正反两面,在问题二的基础上,增加图片从下到上的裁截距信息,然后进行两次聚类,从而将所有图片进行分类,利用计算机自动拼接与人工干预相结合,对所有图片进行拼接复原。经计算,附件5 的拼接结果见表14 和表 15蚅
3、 该模型的优点是将图片分为具体的几类,大大的减少了工作量,缺点是针对英文文章的误差比 较大。关键字 :灰度处理,图像二值化,最小二乘法,聚类分析,碎纸片拼肁 一、问题重述蒈 碎纸片的拼接复原技术在司法鉴定、历史文献修复与研究、军事情报获取以及故障分析等领域都有着广泛的应用。近年来,随着德国“斯塔西”文件的恢复工程的公布,碎纸文件复原技术的研究引起了人们的广泛关注。传统上,拼接复原工作需由人工完成,准确率较高,但效率很低。特别是当碎片数量巨大,人工拼接很难在短时间内完成任务。随着计算机技术的发展,人们试图开发碎纸片的自动拼接技术,以提高拼接复原效率。对于一页印刷文档,针对不同的破碎方法,讨论下列
4、三个问题:螈 ( 1)将给定的一页印刷文字文件纵切,建立碎纸片拼接复原模型和算法,并针对附件1、附件 2 给出的中、英文各一页文件的碎片数据进行拼接复原。袅 ( 2)对于碎纸机既纵切又横切的情形,设计碎纸片拼接复原模型和算法,并针对附件3、附件 4 给出的中、英文各一页文件的碎片数据进行拼接复原。蒂 ( 3)对于双面打印文档,研究如何进行碎纸片的拼接复原问题。附件5 给出的是一页英文印刷文字双面打印文件的碎片数据。要求尝试设计相应的碎纸片拼接复原模型与算法,并就附件5的碎片数据给出拼接复原结果。膀 二、模型的基本假设1)2) 蒇 待拼接的碎纸片来自同一页印刷文字文件。3)4) 袅 待拼接复原的
5、碎纸片是规整的矩形。6 袃 模型中的碎纸片长度、宽度和面积都相等。78 蚈 附件中照片都是同标准拍摄。芆 三、符号说明羀 符号莀 符号说明肅 灰度值肅 红色莁 绿色袇 蓝色肈 矩阵膅 裁截距(i=1,2, 209)螁 裁截文字长度( i =1,2, 209)蕿 行间距(i=1,2, 209)羅 表 1 符号说明袆 裁截空白距离( i =1,2, 209)芅 字体高度(i=1,2, 209)膂 四、问题分析羇 将不规则的文档碎纸片进行拼接,一般是利用碎纸片的边缘曲线,尖点、尖角、面积等几何特征, 搜索与之匹配的相邻碎纸片。但对于边缘形状相似的碎纸片,这种基于边界几何特征的拼接方法失效, 拼接时不
6、但要考虑待拼接碎纸片边缘是否匹配,还要判断碎片内的字迹断线或碎片内的文字内容是否匹配。薅 本问题给定的碎纸片有以下几个特点:莅 1、每一张碎纸片都是规整的矩形;荿 2、所有的碎纸片的长度、宽度都相等,形状是完全一样的;蝿 3、每一张碎纸片里都包含着文字(汉字、英文),不存在空白的碎纸片;莄 4、不同的碎纸片之间没有重叠部分。蒅 由于碎纸片的形状相同,因而不能针对碎纸片的几何特征建立数学模型;碎纸片间无重叠,也不能利用图像融合技术进行图像配准。螀 根据上述分析,我们考虑将图片进行数字化处理,根据每张碎纸片上的边缘文字特征进行匹配,也就是利用图片边缘文字的像素进行最优化匹配。膇 五、模型的建立与求
7、解莇 5.1 问题一的建模与算法蒄 由于碎纸片本身不具有体现其拼接特性的数字特征,我们需要将其数字化、矩阵化,将问题转化为矩阵之间的相关性。膁 5.1.1 图片的灰度处理衿 利用 photoshop 软件,将附件中所给的BMP格式的图片转化成JPG格式,去除图片的多彩性。为了对碎纸片进行数字化,我们将图像进行灰度处理,取出图像中每一个像素点的灰度值,灰度值的大小与像素点颜色的红绿蓝成分有关。膆 根据文献1 ,每个像素点的灰度值=红色0.30+绿色0.59+蓝色 0.11 ,即薄 Gray r 0.30 g 0.59 b 0.11,薂 其中,r , g ,b 的取值范围是0255 。莇 问题一将
8、同一页印刷文字文件纵切为19 张图片(见图1) ,根据实际情况,我们将每张图片设置为 1980 72格式,于是,每张图片对应一个1980 72的灰度矩阵。羅 图 1 附件 1 未进行拼接的19 张碎纸片蚄 5.1.2 图片的二值化处理羃 将图片进行灰度处理以后,每个像素的灰度值介于0255 之间。灰度值不能直接用于文字图片的拼接,还须进行二值化处理。聿 将图片放入直角坐标系,规定:若(x, y) 点的像素灰度值大于或等于T ,该点用数值1表示,并将其设定为白色;若(x, y)点的像素灰度值小于T,该点用数值0表示,并将其设定为黑色。由此得到像素点的二值化函数:羈 其中, T 为预先设定的全局灰
9、度阈值。于是, 每张图片的灰度矩阵转化为下列1980 72 的 0,1 数字矩阵:a11a1 72a1980 1a1980 72肀 其中螀 5.1.3 最小二乘法螇 1、图片左右拼接的数学模型袄 设 A , B 分别表示左右放置的两张图片对应的数字矩阵,定义前一个矩阵的最后一列与后一个矩阵的第一列之间的偏差函数为:蒀 其中, A(i, 72), B (i ,1 ) 分别表示矩阵A, B 第 72列和第1列的元素。芈 对于给定的矩阵A , 若存在矩阵B , 使得 A 与 B 之间的偏差函数f ( A, B ) 达到最小,则称 A 与 B 可以匹配,此时A 与 B 对应的图片可以左右拼接。蒅 2、
10、图片上下拼接的数学模型羄 类似地,设C , D 分别表示上下放置的两张图片对应的数字矩阵,定义上面矩阵的最后一行与下面矩阵的第一行之间的偏差函数为:袁 其中, C (1980, j), D (1, j ) 分别表示矩阵C , D 第 1980行和第1行的元素。羀 对于给定的矩阵C , 若存在矩阵D , 使得 C 与 D 之间的偏差函数h (C , D ) 达到最小,则称 C与 D 可以匹配,此时C 与 D 对应的图片可以上下拼接。芄 我们称上述基于数字矩阵之间列(或行)距离的图片拼接模型为最小二乘法拼接复原模型。肄 5.1.4 算法与求解(2) 节 算法思想莈 第一步,对附件中的19 幅图片分
11、别进行灰度处理,然后取灰度阈值T 125,进行二值化,得到 19 个 0,1 数字矩阵,即图片的数字化。莇 第二步,对上述19 个数字矩阵进行检测,若存在一个矩阵的最左侧一列元素全是1,根据破碎图片的特点,则该图片即为从左边起第一张碎纸片,记为A1 。肃 第三步,计算A1 与其余 18 张图片对应矩阵的列偏差值。荿 若存在A2 ,使得 f (A1 , A2) 达到最小,则A2 即位第二张图片。膀 重复上述的步骤,依次得到所有碎纸片的排列,即可拼接成完整图片。(3)(4) 肆 附件1、 2 的拼接复原结果膃 附件 1 和附件 2 的拼接顺序如下表:(附件 1 的算法程序见附录一,复原图片见附录二
12、;附件2的算法程序见附录三,复原图片见附录四)螀 表 2 附件 1 拼接顺序薈袅芃膁芀袈莃蚂螈蚇蒃肃葿蒆薃腿羇膄蚃8141215310216145913181171706薀 表 3 附件 2 拼接顺序虿3芇6蚃2羁7肇15羆18螂11莂0蝿5螅1袂9螃13芇10螈8羂12袀14罿17薇16肂4芁 5.2 问题二的模型建立与算法蚁 5.2.1 图片的数字化处理莆 步骤一:将附件所给的BMP格式图片转换成JPG格式的图片;膂 步骤二:对图片进行灰度处理;蚂 步骤三:然后进行二值化处理;膈 最后,得到209 张图片的数字化矩阵。肄 5.2.2 聚类分析节 对于碎纸机既纵切又横切的情形,与问题一仅纵切
13、相比,图片变小,因而每张图片包含的信息量明显变小,如果仅利用最小二乘法,碎片之间的匹配不唯一。为了解决这个问题,我们利用聚类分析法,对碎片先进行分类。肂 经观察测试,原始文档碎片具有下列特点:袀 ( 1)字体大小:字体的最大高度和最大宽度一致。膇 ( 2)切割的均匀性:同方向的切割线平行,图片大小均相等,沿纵横方向按直线切割。节 ( 3)文字的行距:文字的行间距等同,段落间距为定值。艿 为了对 209 幅图片进行聚类分析,如图2 所示,我们定义聚类指标如下:莈 a i 表示图片上端裁接处的字体长度,我们称之为裁截文字长度;bi 为行间距;ci 表示图片上端 文 字 与 切 割 线 之 间 的
14、空 白 距 离 , 我 们 称 之 为 裁 截 空 白 距 离 ; di 为 字 体 高 度 , 其 中 , i =1,2,209 。袆 图 2 图片聚类指标示意图莂 令 Di ai bi 或 Dicidi ,称 Di 为第 i 张图片的裁截距(i =1,2, 209) ,由图2,如a1 a2,b1 b2,则D1 D2。一般地,图片从上往下看,不同的裁截线形成的裁截文字长度不同,文字间的行间距相同,所以,如果裁接处的文字长度不相等,那么文字与空白间距之和就不相等。根据 Di的不同取值,下面对图片进行分类。蚀 根据二值化矩阵的特点以及文字的特征,只要存在文字,则矩阵的某一行元素一定存在0 元素,
15、且在文字之间的元素为1。如下图所示:肀 图 3 文字特征图蚅 利用 matlab软件进行编程,将每个图片的裁截文字长度、行间距、裁截空白距离、字体高度以及裁截距的结果以excel 的形式输出到表格之中。(程序见附录五)螆 按裁接距进行聚类分析,使用spss软件分析处理后,得到聚类中心分布图如下所示:肁 表 4 聚类中心蒈 聚类中心螈 聚类袅1蒂2膀3蒇4袅5袃6蚈7芆8羅9羀 10莀 11肅 V1肅7莁 52袇 32肈 120袁 44薇 58芅 133薂 64羁 109羈 69螃 78莁 根据表 4 所示的聚类中心,对表格中裁截距进行初步分类。得到聚类结果如下表所示:肁 表 5 每个聚类中的案
16、例数肅 每个聚类中的案例数蒅 聚类肀1膀 2.000蒆2袃 36.000膃3芀 18.000袇4蚅 1.000袂5莀 46.000芈6肃 38.000蚁7莀 1.000虿8螄 36.000蚄9蒀 1.000螅 10薆 11.000蒂 11薀 19.000膆 有效羄 209.000芁 缺失蚀 .000薇 根据聚类结果发现,并不能将图片平均分成11 个组。这时需要增加信息量来更好地进行分类,进一步观察图2,我们可以发现:图片的上端裁截处可能是文字,也可能为空白。但是裁截距Di 可能相等,此时通过图片上端裁截处是空白还是文字加以人工分类。蚆 用 matlab将数据导出到excel中并进行分析,结果如
17、下:罿 图 4 分析结果羇 由图 4 可以看出:图片大体分为11 个组别,为了得到更精确地聚类结果,通过spss软件,我们再次确立聚类中心如下图所示:蚄 最终聚类中心聿 聚类莈1蒃2莃3腿4蝿5膅6膁7艿8袅9蚃 10羀 11荿 V1芆 25莅2羃 40葿 -38蚇 -93袃 -69螂 -84薈 15肈 34薅 -23蒁 -10薈 通过上面两次聚类,确立了两个不同聚类中心。利用第一次确立的裁接距的聚类中心对图片进行初步分类,然后利用裁截文字或者裁接空白再次进行判别,最终将图片分成了11 组。如下表所示: (以上的算法都是在matlab软件下操作,程序见附件六)葿 表 7 各组图片数量羃 组别薄
18、0蚈1蚆2蚅3芃4螈5肇6蒇7肂8袈9蒈 10袄 11袀 12羈 13袈 图片 数量薆3袃 18肈8羅 19肄 19蚂 18膈 18莆 19螆 18蒁 18蒁 18螇 10芄 19蒄3薁 由上表可以看出大部分图片已经分出组别,其中有4 个组达到了19 张图片,有6 个组有 18 张图片,仅缺少一张图片。此时我们进行人工干预,根据每组图片总数目应为19,且每类都应存在可作为文件左右边缘的碎纸片,我们对少量图片进行归类可得到如下分组结果。如下表:膈 表 8 聚类后的结果羆 组别芃1蚁2蕿3莄4羂5螁6螆7膆8螁9袁 10膇 11薃图螃片袁编薇号芅2薂6羁1羈8螃3莁 34肁 13肅5蒅0肀 15膀
19、4蒆 11袃 19膃 18芀9袇 12蚅 42袂 16莀 10芈7肃 17蚁 40莀 22虿 20螄 23蚄 24蒀 14螅 43薆 21蒂 29薀 32膆 27羄 89芁 28蚀 36薇 26蚆 25肀 31螀 47羈 66膄 37肃 45衿 33膅 101袆 49袂 52罿 30薆 35芄 39薁 58罿 106羇 44肆 53蚄 60聿 102莈 54蒃 61莃 41腿 38蝿 51膅 77膁 109艿 48袅 56蚃 71羀 108荿 57芆 63莅 50羃 46芁 73葿 84蚅 110薄 55莁 68袀 80莇 113芃 65莀 67芁 62螅 74莆 82蒀 90蒈 125蒇 5
20、9肅 70薀 83衿 114艿 91袄 69蚀 76芀 81蚇 107蚃 94螀 139蚁 64莈 93蚆 85袀 117螇 95袆 72蒄 86羀 88膈 115薈 97芃 145芄 75蕿 126肆 132芆 119莄 118羀 78螈 87肅 103蒃 128莁 112膆 150螄 92薃 137蒈 133袈 123薃 129薃 79罿 100莆 105薆 134蚃 121莀 157肇 98莅 138螃 152螀 140薅 141膃 96袃 120袇 122芇 135袂 124羃 173芈 104蚅 153羅 156肃 146虿 143蒇 99蚄 142膂 130肀 159袅 127蒃
21、181膂 111蒁 158薇 165蒆 151节 178薈 116艿 147芅 148莂 160罿 136螆 182肄 171蒂 166荿 170蒈 154螂 186薂 131螀 168羆 161袅 169蚂 144羇 184蚈 172蚄 174螁 198莈 155肆 188莃 162螁 179蝿 167袈 176蒆 149袁 187膀 180芆 175膅 200羁 185薁 190羈 163羄 191肁 189蚈 199蒅 164螂 197膁 201肈 196膇 202螅 194芁 192葿 177蚅 195薄 193莁 203袀 183莇 204芃 206莀 208芁 205螅 207莆
22、5.2.3 图片的拼接模型、算法与求解(2) 蒀 算法思想蒈 下面我们分两步来做,第一步,对每组碎纸片进行拼接;第二步,将各组进行拼接。最终完成文件复原。芃 在已知文件切为11 × 19 的碎纸片情况下,将图片进行聚类分析得到了11 个组后。利用碎纸片左右边缘为空白的特点判断出文件左侧11 个碎纸片,再利用问题一模型和算法,对每个组进行匹配拼接, 可得到 11 个拼接好的图片,之后仍然按照问题一的模型和算法将这11 张图片拼接成完整的图片。(3)(4) 袁 图片的左边缘确定芆 根据碎纸片边缘特征,利用 matlab 对图片处理后得到数字化矩阵,根据最小二乘法进行分析得到 16 个可作
23、为文件左边缘的碎纸片,编号如下:(程序详见附录七)薅 7, 14, 29, 38, 49, 61, 62, 67, 71, 80, 89, 94, 125, 135, 143, 168。羅 已知文件分为11× 19 的碎纸片, 那么存在5 个不是左边缘碎纸片。根据文件页边距一定的特点,此时进行人工筛选,明显排除了编号分别62, 67, 80, 135, 143 的图片作为文件左边缘的可能。此刻,我们也得到了左边缘碎纸片的序号:袂 7, 14, 29, 38, 49, 61, 71, 80, 89, 94, 125, 168。蚈 图片的各组拼接芈 第一步,计算机处理,利用问题一的列偏差
24、函数进行图片拼接,现在我们以表4 中的第 9 组为例, ,得到如下结果:(程序详见附录八)蚅 图 6 以第 9 组为例的拼接结果1蚁 第二步,人工干预,由于每组有19 个图片,可以明显观察到排序的时候有一个图片没有出现,而且另一个图片重复出现了两次。此时我们进行人工拼接。得到正确的拼接结果,图片如下:螈 图 7 以第 9 组为例的拼接最终结果虿 其余分组按照相同方法可得到11 组的拼接结果,这里我们不在一一赘述,发现每组的拼接均无误,这说明我们的分类达到了预期的效果。(7)(8) 蒇 图片的整体拼接蚄 上一步骤中我们得到了11 × 19 的碎纸片拼接而成的11 个等大小的纸片,那么接
25、袈 下来, 根据行偏差函数,判断 11 个纸片的上下拼接顺序,可以得到以下编号的图片可以上下拼接:螆 完成以上组合的拼接后,进行人工干预,完成图片的整体拼接,结果如下(复原图片详见附录九) :袄 表 9 附件 3 拼接顺序蒂 049羈 054膆 065薆 143芁186节 002薇 057肄192芄178莂118羈 190螆 095肃 011蒁 022荿129芄 028袂 091薁188薆 141羆 061薁 019蚁 078羇 067莄 069蚄 099螁162莈 096膆131莃 079袁 063蝿116薃163072006177020052036168100076062142030041
26、023147191050179120086195026000087018038148046161024035081189122103130193088167025008009105074014128003159082199135012073160203169134039031051107115176094034084183090047121042124144077112149097136164127058043125013182109197016184110187066106150021173157181204139145029064111201005092180048037075055044
27、206010104098172171059007208138158126068175045174001137053056093153070166032196071156083132200017080033202198015133170205085152165027060089146102154114040151207155140185108117004101113194119123对于附件4, 我们按照与处理附件3 相同的模型和算法进行处理,得到拼接结果表格如下,(复原图片详见附录十):表 10 附件 4拼接顺序19107501115419018400210418006410600414903
28、220406503906714720114817019619809411316407810309108010102610000601702814608605110702904015818609802411715000505905809203003704612701919409314108812112610515511417618215102205720207116508215913900112906313815305303812312017508505016018709720303102004110811613607303620713501507604319904517307916117914
29、32080210070490611190331421680621690541921331181891621971120700840600140681741371950080471721560960230991220901851091321810950691671631661881111442060031300340131100250271781710420662050101570741450831340550180560350160091831520440810771282001310521251401930870890480720121771240001021155.3 问题三的模型建立与算
30、法对于第三个问题,图片的数量成倍的增长,我们不能单纯的利用图片边缘的特征进行拼接与复原, 在问题二按上边缘裁截距进行聚类分析的基础上,增加图片下边缘裁截距,综合进行聚类分析。具体流程图如下所示:输入图片图 8 算法流程图5.3.1 图片的初次聚类将图片灰度处理运用问题二的聚类方法,利用 matlab进行数据处理(程序见附录十一), 将所得结果导入excel,做出图片上边缘的裁截文字长度(或者裁截空白长度)的分布图 将灰度处理后的图片二值化处理60自上而下计算图片的裁接距与裁截空白间距(或裁截文字长度) 4020-8-100加 入备选图-120片进行匹配匹配成功,备存0运用问题二的方法进行匹配1
31、326YN76 2标注备选N0000246-Y用 spss进行快速聚类分析,可以看出能将一部分图片进行准确的分类,利用模型一的方法对分5高 1 7度 6 1是 01 1否相似 ?自上下计而算系列1匹配成 功?10 匹配正确的片段图完成组图距截间 截裁白 裁与空距9 附件 55.3.2 图片的再聚类由于图片的双面性,我们在对其正面(反面)进行正确匹配之后,则其反面(正面)也就确定出来,这大大减少了数据量。但某些分类后却拼接失败的情况,使得拼接更加的困难。在第二个问题中,我们利用图片从上到下文字的特征增加了信息量,为了更好进行图片匹配与拼接,对于问题三,我们再次增加图片从下到上的文字特征。在图片初
32、次聚类的前提下,利用从下到上的裁截距,按照与问题二类似的办法进行第二次聚类,步骤同上,得到图片的裁截文字长度的分布直方图:截文字长度的分布直方图11 图片裁5.3.3 图片的拼接根据前两次图片的聚类之后,我们在对其进行分类,将分类后的图片进行边缘匹配,同时进行人工干预,挑选出匹配正确的片段,如下图所示:图 12匹配正确的片段对每一类图片匹配成功后,类似于问题二,利用计算机自动拼接与人工干预相结合,将所有各类进行整体拼接,结果如下:(复原图片见附录12)表 13 附件 5 其中一面的拼接顺序表 14附件 5 另一面的拼接顺序六、模型的评价与改进6.1 模型的优点1) 模型一对于解决纵切碎纸片的问
33、题上,达到了很好的效果,对于所得的结果正确率也是100%的,对于解决此类问题提供了良好的思想。2) 模型二充分考虑了碎纸片边缘的匹配问题以及文字内部的特征信息,对于既纵切又横切的情形,先进行了聚类将图片进行了分组,大大减少了工作量,而且增加了准确度。6.2 模型的缺点( 1) 对于问题一与问题二,所给的完整图片里面含有大量的的文字,所以我们可以利用其文字特征,该结果也存在一定的偶然性。( 2) 对于问题三,对于大信息量的图片信息,只利用问题二的解决办法只能将部分的图片进行分类,而不能单纯用计算机进行完整的拼接。6.3 模型的改进方向1) 在问题一里面我们只考虑了边缘区域的匹配,由于结果正确所以
34、没有继续增加条件保证其准确率。2) 在设计模型二的时候,只考虑了图片从上到下的裁接距与裁截文字长度的方面,还应该加上其在图片从下往上的数据。七、参考文献1 黄添强,陈智文,苏立超等. 利用内容连续性的数字视频篡改检测J. 南京大学学报(自然科学版), 2011,47( 5) : 493-503.2 罗智中 . 基于线段扫描的碎纸片边界检测算法研究J. 仪器仪表学报,2011,32 ( 2) : 289-294.3 白宗文 . 基于HALCON与图像拼接的文物修复系统设计与实现J. 电子设计工程,2013,21 ( 9) : 24-26.4 李利军,李云伟. 基于图像灰度的拼接技术研究J. 计算
35、机与数字工程,2007,35 ( 9) : 128-130.5 贾海燕,朱良家,周宗潭等. 一种碎纸自动拼接中的形状匹配方法J. 计算机仿真,2006,23( 11 ) : 180-183.八、附录附录一 :%以下程序的运行,请注意文件存放的位置! %! !%此程序用来解决附件 %1 的图片匹配与连接A=zeros(19,19);% 共十九个纸条 forj =1:19附件 附件 1'I=imread(str,num2str(j),'.jpg');%依次读取每一幅图像i1=rgb2gray(I);%i1 灰度图像i2=im2bw(i1);%i2 是二值图像a=i2(:,7
36、2);% 取纸片右边缘附件 附件 1' ;fori=1:19I=imread(str,num2str(i),'.jpg');%依次读取每一幅图像i1=rgb2gray(I);%i1 灰度图像i2=im2bw(i1);%i2 是二值图像mi=i2(:,1);% 取纸片左边缘ni=a-mi;A(j,i)=sqrt(dot(ni,ni);endendxlswrite('D:photo1.xls',A,'A1:S19');%判断相邻图片并自动连接连接b=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;% fori=1:
37、19k=A(i,1);b(i)=1;forj=1:19if(k>A(i,j)k=A(i,j);b(i)=j;endendendfirst=1;fori=1:19forj=1:19if(A(i,j)=0)first=j;% 求出文件最左侧纸张endendend附件 附件 1'z=imread(str,num2str(first),'.jpg'); form=1:18m=1;附件 附件 1'x=imread(str,num2st r(first),'.jpg');% y=imread(str,num2str(b(first),'.jpg
38、');% x=z;%保存已拼接纸条z=x,y;first=b(first);endimshow(z)附录二 :将矩阵元素导入excel 表格记录上一张纸条记录下一张纸条13 附件 1 拼接图片记录和纸片右相邻的纸片附录三:%以下程序的运行,请注意文件存放的位置! %! !%此程序用来解决附件%2的图片匹配与连接A=zeros(19,19);% 共十九个纸条forj=1:19附件 附件 2'I=imread(str,num2str(j),'.jpg');%i1=rgb2gray(I);%i1 灰度图像i2=im2bw(i1);%i2 是二值图像a=i2(:,72,
39、1);% 取纸片右边缘附件 附件 2'fori=1:19I=imread(str,num2str(i),'.jpg');%i1=rgb2gray(I);%i1 灰度图像i2=im2bw(i1);%i2 是二值图像mi=i2(:,1,1);% 取纸片左边缘ni=a-mi;A(j,i)=sqrt(dot(ni,ni);endendxlswrite('D:photo2.xls',A,'A1:S19');%判断相邻图片并自动连接连接a=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;%fori=1:19k=A(i,1)
40、;a(i)=1;forj=1:19if(k>A(i,j)k=A(i,j);a(i)=j;endendendfirst=1;fori=1:19forj=1:19if(A(i,j)=0)first=j;% 求出文件最左侧纸张endendend附件 附件 2'z=imread(str,num2str(first),'.jpg'); form=1:18m=1;附件 附件 2'x=imread(str,num2str(first),'.jpg');%y=imread(str,num2str(a(first),'.jpg');% x=z
41、;%保存已拼接纸条z=x,y;依次读取每一幅图像依次读取每一幅图像将矩阵元素导入excel 表格记录上一张纸条记录下一张纸条记录和纸片右相邻的纸片first=a(first);end imshow(z) 附录四 : 图 14附件 2拼接图片附录五:A=zeros(209,4);fori=1:209 %forj=1:209附件 附件 5a'I=imread(str,num2str(i),'.jpg');%依次读取每一幅图像i1=rgb2gray(I);%i1 灰度图像 i2=im2bw(i1);%i2 是二值图像,不需要 a=0;b=0;c=0;d=0;j=180;ifa
42、ny(i2(1,:)=0)while(any(i2(j,:)=0) a=a+1;c=c+1;j=j-1;end else while(all(i2(j,:)=1) a=a-1;c=c+1;j=j-1;end end A(i,1)=a; ifany(i2(j,:)=0) while(any(i2(j,:)=0) b=b+1;d=d+1;j=j-1; end else while(all(i2(j,:)=1) b=b-1;d=d+1;j=j-1;end end A(i,2)=b; A(i,3)=c+d; A(i,4)=i+791; endxlswrite('D:question1.xls&
43、#39;,A,'A210:D418'); 附录六:%注意!%!%!运行时将附件解压至 %D盘 %该程序用来对图片的二值矩阵进行分类%A=zeros(209,5);fori=1:209附件 附件 3'I=imread(str,num2str(i),'.jpg');%依次读取每一幅图像i1=rgb2gray(I);%i1 灰度图像 i2=im2bw(i1);%i2 是二值图像,不需要 a=0;b=0;c=0;d=0;j=1;ifany(i2(1,:)=0)while(any(i2(j,:)=0) a=a+1;c=c+1;j=j+1; end else whi
44、le(all(i2(j,:)=1) a=a-1;c=c+1;j=j+1; end end A(i,1)=a;ifany(i2(j,:)=0)while(any(i2(j,:)=0) b=b+1;d=d+1;j=j+1; end else while(all(i2(j,:)=1) b=b-1;d=d+1;j=j+1; end end A(i,2)=b; A(i,3)=c+d; A(i,5)=i;ifA(i,3)<30 A(i,4)=0;elseifA(i,3)>30&&A(i,3)<=34 A(i,4)=1;elseifA(i,3)>=40&&am
45、p;A(i,3)<=43A(i,4)=2;elseifA(i,3)>=44&&A(i,3)<=48ifA(i,1)>0A(i,4)=3;elseA(i,4)=4;endelseifA(i,3)>=50&&A(i,3)<=53ifA(i,1)>0A(i,4)=5;elseA(i,4)=6;endelseifA(i,3)>55&&A(i,3)<=60ifA(i,1)>0A(i,4)=7;elseA(i,4)=8;endelseifA(i,3)>61&&A(i,3)<
46、;=66ifA(i,1)>0A(i,4)=9;elseA(i,4)=10;endelseifA(i,3)>67&&A(i,3)<=70A(i,4)=11;elseifA(i,3)>76&&A(i,3)<=78A(i,4)=12;elseifA(i,3)>80A(i,4)=13;endendxlswrite('D:photo3.xls',A);% 将矩阵导入excel 表里附录七:%以下程序的运行,请注意文件存放的位置! !%此程序运行需要时间较长,请耐心等待! !%请使用经格式转化器转化后的JPG格式图片A=z
47、eros(209,209);a=A(:,1);% 共 209个纸条l=A(:,1);% 共 209个纸条forj=1:209附件 附件 3'I=imread(str,num2str(j),'.jpg');%依次读取每一幅图像i1=rgb2gray(I);%i1 灰度图像i2=im2bw(i1);%i2 是二值图像,一个180*72 的矩阵a=i2(:,1);% 取纸片左边缘 fori=1:209 I=imread(str,num2str(i),'.jpg');%依次读取每一幅图像i1=rgb2gray(I);%i1 灰度图像 i2=im2bw(i1);%
48、i2 是二值图像 mi=i2(:,72);% 取纸片左边缘 ni=a-mi;A(j,i)=sqrt(dot(ni,ni);% 用以判断差距 end end xlswrite('D:photo31.xls',A);% 将矩阵元素导入excel 表格fori=1:209 forj=1:209 if(A(i,j)=0) l(i)=l(i)+1; end end end fori=1:209 if(l(i)>=11) i end end 附录八: %以下程序的运行,请注意文件存放的位置! !%请使用经格式转化器转化后的JPG格式图片。%选取以 %008 作为开始第9 组的行排序%
49、A=zeros(19,19); a=1,8,33,46,54,57,69,71,94,127,138,139,154,159,167,175,176,197,209;% 共十九个纸条 forj=1:19 附件 附件 3' s=a(j) I=imread(str,num2str(a(j),'.jpg');%依次读取每一幅图像i1=rgb2gray(I);%i1 灰度图像 i2=im2bw(i1);%i2 是二值图像 t=i2(:,72);% 取纸片右边缘 fori=1:19 I=imread(str,num2str(a(i),'.jpg');%依次读取每一幅图像i1=rgb2gray(I);%i1 灰度图像 i2=im2bw(i1);%i2 是二值图像 mi=i2(:,1);% 取纸片左边缘 ni=t-mi; A(j,i)=sqrt(dot(ni,ni); end end%判断相邻图片并自动连接 % r=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 门头装修保修协议书
- 集体股权分红协议书
- ktv噪音环保协议书
- 饭堂内部转让协议书
- 起诉房产分割协议书
- 共同承包地建房协议书
- 配件损坏赔偿协议书
- 防汛仓库整修协议书
- 婚没孩子离婚协议书
- 解除资产合同协议书
- 玻璃体积血的治疗
- 2025年货物购销合同范本
- 2025届北京市北京一零一中学生物七下期末质量检测试题含解析
- 2025Q1 BrandOS出海品牌社媒影响力榜单-OneSight
- 2025陕西延安通和电业有限责任公司供电服务用工招聘103人笔试参考题库附带答案详解
- 2025云南中考:物理必背知识点
- 《生成式人工智能职业技能评估规范》
- 颁奖礼仪队培训体系
- 2025年江苏省南京市玄武区中考一模历史试卷
- 心血管-肾脏-代谢综合征患者的综合管理中国专家共识2025解读-1
- 【9化二模】2025年5月安徽省合肥市瑶海区5月中考二模化学试卷
评论
0/150
提交评论