2013年全国数学建模B题省一等奖.doc_第1页
2013年全国数学建模B题省一等奖.doc_第2页
2013年全国数学建模B题省一等奖.doc_第3页
2013年全国数学建模B题省一等奖.doc_第4页
2013年全国数学建模B题省一等奖.doc_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2013高教社杯全国大学生数学建模竞赛承 诺 书我们仔细阅读了全国大学生数学建模竞赛章程和全国大学生数学建模竞赛参赛规则(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛网站下载)。我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。我们郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。我们授权全国大学生数学建模竞赛组委会,可将我们的论文以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。我们参赛选择的题号是(从A/B/C/D中选择一项填写) B 我们的参赛报名号为(如果赛区设置报名号的话): 024B03 所属学校(请填写完整的全名): 山东科技大学 参赛队员 (打印并签名) :1. 张鑫 2. 吕彦全 3. 孙红华 指导教师或指导教师组负责人 (打印并签名): 赵文才 (论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。以上内容请仔细核对,提交后将不再允许做任何修改。如填写错误,论文可能被取消评奖资格。) 日期: 2013 年 9 月 16 日赛区评阅编号(由赛区组委会评阅前进行编号):2013高教社杯全国大学生数学建模竞赛编 号 专 用 页赛区评阅编号(由赛区组委会评阅前进行编号):赛区评阅记录(可供赛区评阅时使用):评阅人评分备注全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):基于最小二乘法的碎纸片拼接复原数学模型摘要首先对图片进行灰度化处理,然后转化为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该模型的优点是将图片分为具体的几类,大大的减少了工作量,缺点是针对英文文章的误差比较大。关键字:灰度处理,图像二值化,最小二乘法,聚类分析,碎纸片拼接一、问题重述 碎纸片的拼接复原技术在司法鉴定、历史文献修复与研究、军事情报获取以及故障分析等领域都有着广泛的应用。近年来,随着德国“斯塔西”文件的恢复工程的公布,碎纸文件复原技术的研究引起了人们的广泛关注。传统上,拼接复原工作需由人工完成,准确率较高,但效率很低。特别是当碎片数量巨大,人工拼接很难在短时间内完成任务。随着计算机技术的发展,人们试图开发碎纸片的自动拼接技术,以提高拼接复原效率。对于一页印刷文档,针对不同的破碎方法,讨论下列三个问题:(1)将给定的一页印刷文字文件纵切,建立碎纸片拼接复原模型和算法,并针对附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原。(2)对于碎纸机既纵切又横切的情形,设计碎纸片拼接复原模型和算法,并针对附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原。(3)对于双面打印文档,研究如何进行碎纸片的拼接复原问题。附件5给出的是一页英文印刷文字双面打印文件的碎片数据。要求尝试设计相应的碎纸片拼接复原模型与算法,并就附件5的碎片数据给出拼接复原结果。二、模型的基本假设(1) 待拼接的碎纸片来自同一页印刷文字文件。(2) 待拼接复原的碎纸片是规整的矩形。(3) 模型中的碎纸片长度、宽度和面积都相等。(4) 附件中照片都是同标准拍摄。三、符号说明表1 符号说明符号符号说明灰度值红色绿色蓝色矩阵裁截距裁截文字长度行间距裁截空白距离字体高度四、问题分析将不规则的文档碎纸片进行拼接,一般是利用碎纸片的边缘曲线,尖点、尖角、面积等几何特征,搜索与之匹配的相邻碎纸片。但对于边缘形状相似的碎纸片,这种基于边界几何特征的拼接方法失效,拼接时不但要考虑待拼接碎纸片边缘是否匹配,还要判断碎片内的字迹断线或碎片内的文字内容是否匹配。本问题给定的碎纸片有以下几个特点:1、每一张碎纸片都是规整的矩形;2、所有的碎纸片的长度、宽度都相等,形状是完全一样的;3、每一张碎纸片里都包含着文字(汉字、英文),不存在空白的碎纸片;4、不同的碎纸片之间没有重叠部分。由于碎纸片的形状相同,因而不能针对碎纸片的几何特征建立数学模型;碎纸片间无重叠,也不能利用图像融合技术进行图像配准。根据上述分析,我们考虑将图片进行数字化处理,根据每张碎纸片上的边缘文字特征进行匹配,也就是利用图片边缘文字的像素进行最优化匹配。五、模型的建立与求解5.1问题一的建模与算法 由于碎纸片本身不具有体现其拼接特性的数字特征,我们需要将其数字化、矩阵化,将问题转化为矩阵之间的相关性。5.1.1图片的灰度处理利用软件,将附件中所给的BMP格式的图片转化成JPG格式 ,去除图片的多彩性。为了对碎纸片进行数字化,我们将图像进行灰度处理,取出图像中每一个像素的灰度值,灰度值的大小与像素点颜色的红绿蓝成分有关。 根据文献1,每个像素点的,即,其中,的取值范围是。 问题一将同一页印刷文字文件纵切为19张图片(见图1),根据实际情况,我们将每张图片设置为格式,于是,每张图片对应一个的灰度矩阵。图1 附件1未进行拼接的19张碎纸片5.1.2图片的二值化处理将图片进行灰度处理以后,每个像素的灰度值介于之间。灰度值不能直接用于文字图片的拼接,还须进行二值化处理。将图片放入直角坐标系,规定:若点的像素灰度值大于或等于,该点用数值表示,并将其设定为白色;若点的像素灰度值小于,该点用数值表示,并将其设定为黑色。由此得到像素点的二值化函数:其中,为预先设定的全局灰度阈值。于是,每张图片的灰度矩阵转化为下列的数字矩阵:,其中5.1.3最小二乘法1、图片左右拼接的数学模型 设分别表示左右放置的两张图片对应的数字矩阵,定义前一个矩阵的最后一列与后一个矩阵的第一列之间的偏差函数为:其中,分别表示矩阵第列和第列的元素。对于给定的矩阵,若存在矩阵,使得与之间的偏差函数达到最小,则称与可以匹配,此时与对应的图片可以左右拼接。2、图片上下拼接的数学模型 类似地,设分别表示上下放置的两张图片对应的数字矩阵,定义上面矩阵的最后一行与下面矩阵的第一行之间的偏差函数为:其中,分别表示矩阵第行和第行的元素。 对于给定的矩阵,若存在矩阵,使得与之间的偏差函数达到最小,则称与可以匹配,此时与对应的图片可以上下拼接。我们称上述基于数字矩阵之间列(或行)距离的图片拼接模型为最小二乘法拼接复原模型。5.1.4算法与求解(一) 算法思想第一步,对附件中的19幅图片分别进行灰度处理,然后取灰度阈值,进行二值化,得到19个数字矩阵,即图片的数字化。第二步,对上述19个数字矩阵进行检测,若存在一个矩阵的最左侧一列元素全是1,根据破碎图片的特点,则该图片即为从左边起第一张碎纸片,记为。第三步,计算与其余18张图片对应矩阵的列偏差值。若存在,使得达到最小,则即位第二张图片。重复上述的步骤,依次得到所有碎纸片的排列,即可拼接成完整图片。(二) 附件1、2的拼接复原结果附件1和附件2的拼接顺序如下表:(附件1的算法程序见附录一,复原图片见附录二;附件2的算法程序见附录三,复原图片见附录四)表2 附件1拼接顺序8141215310216145913181171706表3 附件2拼接顺序36271518110519131081214171645.2问题二的模型建立与算法5.2.1图片的数字化处理步骤一:将附件所给的BMP格式图片转换成JPG格式的图片;步骤二:对图片进行灰度处理;步骤三:然后进行二值化处理;最后,得到209张图片的数字化矩阵。5.2.2聚类分析对于碎纸机既纵切又横切的情形,与问题一仅纵切相比,图片变小,因而每张图片包含的信息量明显变小,如果仅利用最小二乘法,碎片之间的匹配不唯一。为了解决这个问题,我们利用聚类分析法,对碎片先进行分类。经观察测试,原始文档碎片具有下列特点:(1)字体大小:字体的最大高度和最大宽度一致。(2)切割的均匀性:同方向的切割线平行,图片大小均相等,沿纵横方向按直线切割。(3)文字的行距:文字的行间距等同,段落间距为定值。为了对209幅图片进行聚类分析,如图2所示,我们定义聚类指标如下: 表示图片上端裁接处的字体长度,我们称之为裁截文字长度; 为行间距;表示图片上端文字与切割线之间的空白距离,我们称之为裁截空白距离;为字体高度,其中,。图2 图片聚类指标示意图令或,称为第张图片的裁截距,由图2,如,则。一般地,图片从上往下看,不同的裁截线形成的裁截文字长度不同,文字间的行间距相同,所以,如果裁接处的文字长度不相等,那么文字与空白间距之和就不相等。根据的不同取值,下面对图片进行分类。根据二值化矩阵的特点以及文字的特征,只要存在文字,则矩阵的某一行元素一定存在0元素,且在文字之间的元素为1。如下图所示:图3 文字特征图利用软件进行编程,将每个图片的裁截文字长度、行间距、裁截空白距离、字体高度以及裁截距的结果以的形式输出到表格之中。(程序见附录五)按裁接距进行聚类分析,使用软件分析处理后,得到聚类中心分布图如下所示:表4 聚类中心聚类中心聚类1234567891011V1752321204458133641096978根据表4所示的聚类中心,对表格中裁截距进行初步分类。得到聚类结果如下表所示:表5 每个聚类中的案例数 每个聚类中的案例数聚类12.000236.000318.00041.000546.000638.00071.000836.00091.0001011.0001119.000有效209.000缺失.000根据聚类结果发现,并不能将图片平均分成11个组。这时需要增加信息量来更好地进行分类,进一步观察图2,我们可以发现:图片的上端裁截处可能是文字,也可能为空白。但是裁截距可能相等,此时通过图片上端裁截处是空白还是文字加以人工分类。用将数据导出到中并进行分析,结果如下:-100-50050050100150200250高度图片数量图4 分析结果由图4可以看出:图片大体分为11个组别,为了得到更精确地聚类结果,通过软件,我们再次确立聚类中心如下图所示:表6 第二次聚类中心最终聚类中心聚类1234567891011V125240-38-93-69-841534-23-10通过上面两次聚类,确立了两个不同聚类中心。利用第一次确立的裁接距的聚类中心对图片进行初步分类,然后利用裁截文字或者裁接空白再次进行判别,最终将图片分成了11组。如下表所示:(以上的算法都是在软件下操作,程序见附件六)表7 各组图片数量组别012345678910111213图片数量3188191918181918181810193由上表可以看出大部分图片已经分出组别,其中有4个组达到了19张图片,有6个组有18张图片,仅缺少一张图片。此时我们进行人工干预,根据每组图片总数目应为19,且每类都应存在可作为文件左右边缘的碎纸片,我们对少量图片进行归类可得到如下分组结果。如下表: 表8 聚类后的结果组别1234567891011图片编号26183341350154111918912421610717402220232414432129322789283626253147663745331014952303539581064453601025461413851771094856711085763504673841105568801136567627482901255970831149169768110794139649385117957286881159714575126132119118788710312811215092137133123129791001051341211579813815214014196120122135124173104153156146143991421301591271811111581651511781161471481601361821711661701541861311681611691441841721741981551881621791671761491871801752001851901631911891991641972011962021941921771951932031832042062082052075.2.3图片的拼接模型、算法与求解(一) 算法思想下面我们分两步来做,第一步,对每组碎纸片进行拼接;第二步,将各组进行拼接。最终完成文件复原。在已知文件切为1119的碎纸片情况下,将图片进行聚类分析得到了11个组后。利用碎纸片左右边缘为空白的特点判断出文件左侧11个碎纸片,再利用问题一模型和算法,对每个组进行匹配拼接,可得到11个拼接好的图片,之后仍然按照问题一的模型和算法将这11张图片拼接成完整的图片。(二) 图片的左边缘确定根据碎纸片边缘特征,利用matlab对图片处理后得到数字化矩阵,根据最小二乘法进行分析得到16个可作为文件左边缘的碎纸片,编号如下:(程序详见附录七)7,14,29,38,49,61,62,67,71,80,89,94,125,135,143,168。已知文件分为1119的碎纸片,那么存在5个不是左边缘碎纸片。根据文件页边距一定的特点,此时进行人工筛选,明显排除了编号分别62,67,80,135,143的图片作为文件左边缘的可能。此刻,我们也得到了左边缘碎纸片的序号:7,14,29,38,49,61, 71,80,89,94,125,168。(三) 图片的各组拼接第一步,计算机处理,利用问题一的列偏差函数进行图片拼接,现在我们以表4中的第9组为例,得到如下结果:(程序详见附录八)图6 以第9组为例的拼接结果1第二步,人工干预,由于每组有19个图片,可以明显观察到排序的时候有一个图片没有出现,而且另一个图片重复出现了两次。此时我们进行人工拼接。得到正确的拼接结果,图片如下:图7 以第9组为例的拼接最终结果其余分组按照相同方法可得到11组的拼接结果,这里我们不在一一赘述,发现每组的拼接均无误,这说明我们的分类达到了预期的效果。(四) 图片的整体拼接上一步骤中我们得到了1119的碎纸片拼接而成的11个等大小的纸片,那么接下来,根据行偏差函数,判断11个纸片的上下拼接顺序,可以得到以下编号的图片可以上下拼接: 完成以上组合的拼接后,进行人工干预,完成图片的整体拼接,结果如下(复原图片详见附录九):表9 附件3拼接顺序049054065143186002057192178118190095011022129028091188141061019078067069099162096131079063116163072006177020052036168100076062142030041023147191050179120086195026000087018038148046161024035081189122103130193088167025008009105074014128003159082199135012073160203169134039031051107115176094034084183090047121042124144077112149097136164127058043125013182109197016184110187066106150021173157181204139145029064111201005092180048037075055044206010104098172171059007208138158126068175045174001137053056093153070166032196071156083132200017080033202198015133170205085152165027060089146102154114040151207155140185108117004101113194119123对于附件4,我们按照与处理附件3相同的模型和算法进行处理,得到拼接结果表格如下,(复原图片详见附录十):表10 附件4拼接顺序1910750111541901840021041800641060041490322040650390671472011481701961980941131640781030910801010261000060170281460860511070290401581860980241171500050590580920300370461270191940931410881211261051551141761821510220572020711650821591390011290631381530530381231201750850501601870972030310200411081161360730362071350150760431990451730791611791432080210070490611190331421680621690541921331181891621971120700840600140681741371950080471721560960230991220901851091321810950691671631661881111442060031300340131100250271781710420662050101570741450831340550180560350160091831520440810771282001310521251401930870890480720121771240001021155.3问题三的模型建立与算法对于第三个问题,图片的数量成倍的增长,我们不能单纯的利用图片边缘的特征进行拼接与复原,在问题二按上边缘裁截距进行聚类分析的基础上,增加图片下边缘裁截距,综合进行聚类分析。具体流程图如下所示:自下而上计算图片的裁截距与裁截空白间距输入图片将图片灰度处理将灰度处理后的图片二值化处理自上而下计算图片的裁接距与裁截空白间距(或裁截文字长度)高度是否相似?运用问题二的方法进行匹配YN标注备选匹配成功?备存Y加入备选图片进行匹配N匹配成功,备存完成组图图8 算法流程图5.3.1图片的初次聚类运用问题二的聚类方法,利用进行数据处理(程序见附录十一),将所得结果导入,做出图片上边缘的裁截文字长度(或者裁截空白长度)的分布图图9 附件5图片的裁截文字长度分布图用进行快速聚类分析,可以看出能将一部分图片进行准确的分类,利用模型一的方法对分类后的图片进行边缘匹配,得到类似于下图的片段图像。图10 匹配正确的片段图5.3.2图片的再聚类由于图片的双面性,我们在对其正面(反面)进行正确匹配之后,则其反面(正面)也就确定出来,这大大减少了数据量。但某些分类后却拼接失败的情况,使得拼接更加的困难。在第二个问题中,我们利用图片从上到下文字的特征增加了信息量,为了更好进行图片匹配与拼接,对于问题三,我们再次增加图片从下到上的文字特征。在图片初次聚类的前提下,利用从下到上的裁截距,按照与问题二类似的办法进行第二次聚类,步骤同上,得到图片的裁截文字长度的分布直方图:图11 图片裁截文字长度的分布直方图5.3.3图片的拼接根据前两次图片的聚类之后,我们在对其进行分类,将分类后的图片进行边缘匹配,同时进行人工干预,挑选出匹配正确的片段,如下图所示:图12 匹配正确的片段对每一类图片匹配成功后,类似于问题二,利用计算机自动拼接与人工干预相结合,将所有各类进行整体拼接,结果如下:(复原图片见附录12)表13 附件5其中一面的拼接顺序表14 附件5另一面的拼接顺序六、模型的评价与改进6.1模型的优点(1) 模型一对于解决纵切碎纸片的问题上,达到了很好的效果,对于所得的结果正确率也是100%的,对于解决此类问题提供了良好的思想。(2) 模型二充分考虑了碎纸片边缘的匹配问题以及文字内部的特征信息,对于既纵切又横切的情形,先进行了聚类将图片进行了分组,大大减少了工作量,而且增加了准确度。6.2 模型的缺点(1) 对于问题一与问题二,所给的完整图片里面含有大量的的文字,所以我们可以利用其文字特征,该结果也存在一定的偶然性。(2) 对于问题三,对于大信息量的图片信息,只利用问题二的解决办法只能将部分的图片进行分类,而不能单纯用计算机进行完整的拼接。6.3 模型的改进方向(1) 在问题一里面我们只考虑了边缘区域的匹配,由于结果正确所以没有继续增加条件保证其准确率。(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. 计算机与数字工程,2007,35(9):128-130.5 贾海燕,朱良家,周宗潭等. 一种碎纸自动拼接中的形状匹配方法J. 计算机仿真,2006,23(11):180-183.八、附录附录一:%以下程序的运行,请注意文件存放的位置!%此程序用来解决附件1的图片匹配与连接A=zeros(19,19); %共十九个纸条for j=1:19 str=D:附件附件1; I=imread(str,num2str(j),.jpg);%依次读取每一幅图像 i1=rgb2gray(I); %i1灰度图像 i2=im2bw(i1); %i2是二值图像 a=i2(:,72,1); %取纸片右边缘 str=D:附件附件1; for i=1:19 I=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:photo1.xls,A,A1:S19); %将矩阵元素导入excel表格%判断相邻图片并自动连接连接a=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;%记录和纸片右相邻的纸片for i=1:19 k=A(i,1); a(i)=1; for j=1:19 if(kA(i,j) k=A(i,j); a(i)=j; end endendfirst=1;for i=1:19 for j=1:19 if(A(i,j)=0) first=j; %求出文件最左侧纸张 end endend str=D:附件附件1;z= imread(str,num2str(first),.jpg);for m=1:18 m=1; str=D:附件附件1; x = imread(str,num2str(first),.jpg); %记录上一张纸条 y=imread(str,num2str(a(first),.jpg);%记录下一张纸条 x=z; %保存已拼接纸条 z = x,y; first=a(first);endimshow(z)附录二: 图13 附件1拼接图片附录三:图14 附件2拼接图片附录三:%以下程序的运行,请注意文件存放的位置!%此程序用来解决附件2的图片匹配与连接A=zeros(19,19); %共十九个纸条for j=1:19 str=D:附件附件2; I=imread(str,num2str(j),.jpg);%依次读取每一幅图像 i1=rgb2gray(I); %i1灰度图像 i2=im2bw(i1); %i2是二值图像 a=i2(:,72,1); %取纸片右边缘 str=D:附件附件2; for i=1:19 I=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); %将矩阵元素导入excel表格%判断相邻图片并自动连接连接a=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;%记录和纸片右相邻的纸片for i=1:19 k=A(i,1); a(i)=1; for j=1:19 if(kA(i,j) k=A(i,j); a(i)=j; end endendfirst=1;for i=1:19 for j=1:19 if(A(i,j)=0) first=j; %求出文件最左侧纸张 end endend str=D:附件附件2;z= imread(str,num2str(first),.jpg);for m=1:18 m=1; str=D:附件附件2; x = imread(str,num2str(first),.jpg); %记录上一张纸条 y=imread(str,num2str(a(first),.jpg);%记录下一张纸条 x=z; %保存已拼接纸条 z = x,y; first=a(first);end imshow(z)附录五:A=zeros(209,4);for i=1:209 %for j=1:209 str=C:UsersAdministratorDesktop附件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; if any(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; if any(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,A,A210:D418);附录六:%注意!运行时将附件解压至D盘%该程序用来对图片的二值矩阵进行分类A=zeros(209,5);for i=1:209 str= D:附件附件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; if any(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; if any(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; if A(i,3)30&A(i,3)=40&A(i,3)=44&A(i,3)0 A(i,4)=3; else A(i,4)=4; end elseif A(i,3)=50&A(i,3)0 A(i,4)=5; else A(i,4)=6; end elseif A(i,3)55&A(i,3)0 A(i,4)=7; else A(i,4)=8; end elseif A(i,3)61&A(i,3)0 A(i,4)=9; else A(i,4)=10; end elseif A(i,3)67&A(i,3)76&A(i,3)80 A(i,4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论