数学建模社区-数学中国

标题: B [打印本页]

作者: 戚柒    时间: 2013-9-18 10:16
标题: B
1.将图片的像素信息直接读取到矩阵中,每个图片获得了1980×72的矩阵。附件一、二的图片是纵向剪切的,而且长度大小一致,需要对碎片进行横向拼接。横向拼接的依据是碎片左右特征的一致性。每个图片选取能代表左右特征的数据列重新构成新的矩阵。将每个图片的右边与其他图片的左边作相似性处理,选取相似度最高的作为排在它右边的最优选择。这样得到一组数据,成为一个循环。由于排在最右边的图片,其右边与其他图片左边的匹配程度小,从数值上,就可确定。这样的左右拼接方式对附件一、二的处理效果很好。
2.1)问题二增加了横切的部分,由打印文件行间距相等的特点,考虑对209个进行行分类。中文都是方块字,并具有对称的特点,对附件一拼接完整的图进行数据分析,以文字的中心为基准,代表其所在的行数。采用1980的矩阵数据,得到文字的高度为42行,空白的高度为26行。以文字中心为准,得到行与行之间文字的间隙为68行。提取附件三中的碎片观察,也具有此数据特征。
2)对碎片的像素信息进行提取后,0-1化处理,得到180×72的矩阵,对72列进行数据整理,每行全00,有1便1的处理,便能得到该0-1表示空白、有字的信息。统计连续空白、有字的情况,以42为基准,上下小值浮动确定碎片有字的地方是否为完整的字,
通过数据便能确定完整字的中心在180行中的相对高度,每个碎片中完整的字从1个到3个不等。得到数据后,进行聚类。对类内组数不够19的进行整合,类间矩阵中,只要有一个整字的中心在同一行,便能确定该两类为要拼接的同一行,此处要人工干预。分好11类后,采用问题一的方法拼接,不同的是,对于同一行为多类的,要进行多次拼接,再类间进行整合。
3)至于行的纵向排序,可以由已知整字的中心,推测临近行的整字中心。将11类中首末行进行匹配排序整合,可得到一循环圈。由于180是相对高度,推测中首行出现负值的作为起始行的考虑对象,需人工干预得到最优的结果。
4)对于附件三中,英文字母中心的确定,根据英文的字母特点,选取高度出现频率较高,类似的na的中心,作为整行的中心,至于具体操作,可对180×720-1矩阵进行求和,在连续有字的地方,出现和频率较高的长度便能视作na的高度,高度统计下来为26。至于高度高于它的有字部分的中心,以na的中心为基准,加(减)63得到。63为中文中类似68的行间距,这可从附件二中整理、附件四中验证得到。剩余的拼接处理类似中文的处理方法。
3.附件五中对行分类的结果,采用附件四的处理方法。需要做的数据处理是将每个碎片两面文字的信息作为文字中心的处理对象,这样便能将2×11×19的碎片转化成11×19的碎片。因为每个碎片提取的信息量更多,对于分类的结果,是相较于附件四是更为理想的。依问题一的方法,做每个碎片单面右边与其他碎片两面左边的相似度处理,依次选出相似度最高的排在其右。排好单面后,可以用另一面的排序结果进行验证,且人为检验确定其拼接精度。
这里是具体的模型实施细则,简单易行,快捷准确。分步实施,分布检验,效果理想。O(_)O~

$ o2 a$ Z& U# V
作者: 百年孤独    时间: 2013-9-18 14:05
这是?
: f: ]* t$ U; d- @
作者: zhanghui4958    时间: 2013-9-19 10:50
确实不错。。。。。。。。。。。。
作者: xiehang199228    时间: 2013-9-20 11:13
太好了,我做的也是B题,希望加你为好友,共同讨论。




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5