碎纸片的拼接复原模型
摘 要
本文针对破碎纸片形状规则和碎片间无有效重叠区域等特点,选取了信息熵、差方和、欧氏距离、相关系数、互信息和灰色斜率关联度作为碎纸片之间的相似性判别准则,给出了碎纸片拼接复原模型和算法,解决了破碎纸片的拼接复原问题.
对于问题1,引入信息熵来衡量每个碎片含有的信息量,将熵值最小的碎片确定为印刷文字文件的第一列;利用差方和计算出第1列右端与其余碎片左端的相似程度,求得碎纸片之间的最佳匹配组合,借助Matlab软件成功实现了附件1和附件2的碎片拼接复原.
对于问题2,通过计算每个碎片的信息熵,找到印刷文字文件第一列的11个碎片;再利用互信息和相关系数评价碎纸片之间的相似性程度,确定出碎片间的上下位置关系,得到了印刷文字文件的第一列;然后利用欧氏距离作为相似性测度,进一步进行碎片间的粗拼接.若某个碎纸片与多个碎片的欧氏距离相等,则利用灰色斜率关联度进行碎纸片间的细拼接,借助Matlab软件完成了对附件3和附件4给出的碎片拼接复原.
对于问题3,基于模糊聚类方法,粗略地确定出每个碎片的正面和反面;然后利用问题2的算法对已分类的正面碎纸片进行拼接复原;针对无法复原的碎纸片,借助Matlab软件和最优搜索算法进行人工干预,确定出附件5文件正面的拼接复原;根据碎片数据编号的命名规则,在正面碎片数据的拼接复原结果中填充对应编号的反面碎片数据,实现了附件5文件反面的拼接复原.
最后,对碎纸片的拼接复原模型和算法进行了分析和展望.
关键词:破碎纸片的拼接复原;信息熵;差方和;互信息;欧氏距离;灰色斜率关联度;模糊聚类
1. 问题重述
破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用.传统上,拼接复原工作需由人工完成,准确率较高,但效率很低.特别是当碎片数量巨大,人工拼接很难在短时间内完成任务.随着计算机技术的发展,人们试图开发碎纸片的自动拼接技术,以提高拼接复原效率,需解决以下几个问题:
问题1,考虑对于给定的来自同一页印刷文字文件仅纵切的破碎纸片的拼接复原模型和算法,并针对B题附件1、附件2给出的中、英文各一页文件的碎片数据进行拼接复原.如果复原过程需要人工干预,还需要写出干预方式及干预的时间节点.并就附件1和附件2的碎片数据给出拼接复原结果.
问题2,考虑对于碎纸机既纵切又横切的情形,设计出碎纸片拼接复原模型和算法,并针对B题附件3、附件4给出的中、英文各一页文件的碎片数据进行拼接复原.如果复原过程需要人工干预,请写出干预方式及干预的时间节点.并就附件3和附件4的碎片数据给出拼接复原结果.
问题3,则需要考虑更一般的情形,即考虑有双面打印文件的碎纸片拼接复原问题.对B题附件5给出的是一页英文印刷文字双面打印文件的碎片,设计相应的碎纸片拼接复原模型与算法,并就附件5的碎片数据给出拼接复原结果.
2. 模型假设
(1) 碎纸片的切割是等间距的,忽略切割碎纸片时由机器工作所产生的摩擦误差;
(2) 碎片切缝处的图像灰度平滑;
(3) 碎片在缩放的情况下,像素点保持稳定;
(4) 碎片上的文字只显示黑白两种颜色.
3. 符号说明
:每张碎片像素点的数目;
、
:图像
、
在
的像素值;
:
与
的差方和;
:图像
中第
个灰度级的像素个数与总的像素个数之比;
:图像
中第
个灰度级和图像
中第
个灰度级的像素对数与两幅图像总的像素对数之比;
、
:图像
和
各自含有的信息量;
:两幅图像
和
的联合信息熵;
:两幅图像
和
的欧式距离;
、
:图像
和
在
位置的像素值;
:图像
像素值的平均值;
:两幅图像
和
的相关系数;
、
:碎片边缘概率密度;
:两碎片
和
的联合概率密度;
:两碎片
和
的互信息;
:系统特征函数;
:相关因素函数;
:系统特征函数
在
到
的斜率;
:相关因素函数
在
到
的斜率;
:系统特征函数在
到
的增量;
:相关因素函数在
到
的增量;
:系统特征函数的均值;
:相关因素函数的均值;
:
与
在
时刻的灰色斜率关联系数;
:对称距离矩阵;
:
与
在
时刻的灰色斜率关联度.
4. 问题分析
由于文章以行书写,只有段首段尾有空白,切缝处恰好以列之间的空白或笔画出断开的概率较小,在拼接碎纸片前需要对B题附件1—5的碎片内图像进行二值化处理,进而获取由0和1组成的矩阵.扫描后的图像有亮的图像和暗的背景组成,由于光照、拍摄角度等因素,一幅图像往往包括文字、背景还有噪声等.如果从多值的数字图像中直接提取目标,最常用的方法就是设定阈值
,用
将图像的数据分为两部分:大于T的像素群和小于T的像素群.由于5个附件中的文字显示都是黑白颜色,因此先调用Matlab软件中的im2bw()对每个碎纸片进行二值化图像预处理,然后综合利用图像的相似性测度寻找高精度的匹配碎片,从而实现整个印刷文字文件的复原.
5. 模型的建立与求解
5.1 问题1的求解
5.1.1 模型的建立
差方和利用两幅图像对应位置的差方和均值表示图像之间的相似程度,定义为[1],
(1)
式中,
为每幅图像像素点的数目,
和
分别是图像
和
在
位置的像素值.当两幅图像正好可拼接时,
值最小.差方和计算的时间复杂度为
.
信息熵反映了图像含有的信息量大小.信息熵越小,图像包含的信息量越小,往往空白区域越多,其定义为[2-4]:
(2)
其中,
表示图像
中第
个灰度级的像素个数与总的像素个数之比.
5.1.2 拼接复原算法
附件1和附件2中碎纸片的切割方式只有纵切一种,假设碎片的总数为
个.考虑到纵切的特殊性,给出如下的拼接复原算法:
步骤1 计算每一个碎纸片
的信息熵
,并确定出熵值最小的一个碎片
为印刷文字文件的第1列;
步骤2 计算第1列图像
的右边与其余
个碎片
的左边的差方和
,确定出与第1列图像差方和最小的碎片为印刷文字文件的第2列;
步骤3 重复步骤2,依次继续,直到找到印刷文字文件的
列为止.
5.1.3 问题1的求解
借助Matlab软件对以上拼接复原算法进行仿真,得到如下结果:
(1) 附件1中的中文文件复原结果
表1 附件1中19个碎片的信息熵
编号
000
001
002
003
004
005
006
007
008
009
熵
0.4507
0.4844
0.4010
0.6529
0.3653
0.4482
0.4487
0.4960
0.0308
0.6269
编号
010
011
012
013
014
015
016
017
018
熵
0.4462
0.5538
0.4789
0.3834
0.4289
0.5343
0.5610
0.5040
0.3218
从表1可以看出,19个碎片所包含的信息量中,第008碎片的信息熵最小,因此第008碎片是附件1中的中文文件的第1列.
表2 附件1中19个碎片之间差方和最小的配对碎片表
碎片编号
000
001
002
003
004
005
006
007
008
对应碎片
006
004
016
010
005
009
017
014
差方和
0.0515
0.0591
0.0242
0.0646
0.0409
0.0571
0.0803
0.0566
碎片编号
009
010
011
012
013
014
015
016
017
018
对应碎片
013
002
007
015
018
012
003
001
000
011
差方和
0.061
0.041
0.042
0.017
0.039
0.039
0.049
0.063
0.052
0.053
从表2可以得到附件1中的中文文件复原结果,如下表所示:
表3 附件1中文件的拼接复原结果表
编号
08
14
12
15
03
10
02
16
01
04
05
09
13
18
11
07
17
00
06
附件1中的中文文件复原图结果见附录1.
(2) 附件2中的英文文件复原结果
表4 附件2中19个碎片的信息墒
编号
000
001
002
003
004
005
006
007
008
009
墒
0.4968
0.4953
0.4980
0.3730
0.4762
0.5171
0.4942
0.5075
0.4721
0.4496
编号
010
011
012
013
014
015
016
017
018
墒
0.5276
0.5085
0.4787
0.4826
0.4999
0.4942
0.4488
0.4601
0.5240
从表4可以看出,所有19个碎片所包含的信息量中,第003碎片的信息墒最小,因此第003碎片是附件2文件的第1列.
表5 附件2中19个碎片之间差方和最小的配对碎片表
碎片编号
000
001
002
003
004
005
006
007
008
对应碎片
005
009
007
006
001
002
015
012
差方和
0.0485
0.0328
0.0414
0.0515
0.0359
0.0338
0.0606
0.0439
碎片编号
009
010
011
012
013
014
015
016
017
018
对应碎片
013
008
000
014
010
017
018
004
016
011
差方和
0.065
0.041
0.027
0.038
0.067
0.054
0.027
0.047
0.026
0.0465
从表5可以得到附件2的英文文件复原结果,如下表所示
表6 附件2英文件的拼接复原结果表
编号
03
06
02
07
15
18
11
00
05
01
09
13
10
08
12
14
17
16
04
附件2中英文文件的复原结果图见附录2.
5.2 问题2的求解
5.2.1 模型的建立
由于互信息测度是从图像的统计信息出发,既不需要两幅图像的灰度关系,也不需要图像进行预处理,因此成为目前广泛使用的图像配准相似性测.在图像配准过程中,如果两幅图像精确匹配,互信息达到最大.联合熵定义如下[5]:
(3)
其中
表示图像
中第
个灰度级和图像
中第
个灰度级的像素对数与两幅图像总的像素对数之比.互信息定义为
(4)
欧氏距离被视为两个图像的相似程度,距离越近就越相似,其定义为
(5)
相关系数是标准化的协方差函数,当两幅图像的灰度之间存在线性畸变时,仍能较好的评价两幅图像之间的匹配性程度.图像的相关系数
,它是两幅图像
和
特征点之间近似程度的一种线性描述.如果
越接近于1,两幅图像的相似程度越大,越近似于线性关系.选择相关系数中最大的相关系数所对应的特征点为这个点的匹配特征点.当两幅图像可匹配时,相关系数达到最大值.相关系数定义如下[7-9]:
(6)
两幅图像相关系数计算的时间复杂度为
,其中
为每幅图像像素点的数目.
灰色斜率关联度的基本思想是根据待拼碎片的特征曲线(称系统特征函数)与参照碎片的特征曲线(称相关因素函数)的相似程度来判断其联系是否紧密,曲线越接近,关联度就越大,反之就越小.灰色斜率关联度的定义为[10]:
(7)
其中,
(8)
为灰色斜率关联系数.
(7)、(8)式中
为系统特征函数,
为相关因素函数(对应于参照碎片的特征曲线),
,
,
为系统特征函数
在
到
的斜率,
,
,
为相关因素函数
在
到
的斜率.对于灰色斜率关联系数
公式(8)有如下性质[11-13]:
(1) 任意的系统特征函数
与相关因素函数
的灰色斜率关联系数满足:
,
;
(2) 灰色斜率关联系数
满足对称性;
(3) 灰色斜率关联系数
只与
与
的几何形状有关,与相对位置无关;
(4)
与
的斜率越接近,灰色斜率关联系数
就越大;
(5)
与
在
到
的变化速度相同时,它们的斜率相等,这时
;
由上述公式及性质可知,灰色斜率关联系数反映了两曲线在某一点的变化率的一致程度,而灰色斜率关联度则是整个区间上灰色斜率关联系数的平均值.
灰色斜率关联度
具有下列性质:
(1)
;
(2)
只与
与
的变化率有关,而与它们的空间相对位置无关;
(3) 当
与
变化率相同时,
;
(4)
与
的变化率越接近,
就越大;
5.2.2 拼接复原算法
附件3和附件4中碎纸片的切割方式有纵切和横切两种,假设碎片的总数为
个(
个碎片组成整个原图),具体的拼接复原算法如下:
步骤1 计算每一个碎纸片
的信息熵
,并确定出熵值最小的
个碎片
为印刷文字文件的第1列的
个碎片;
步骤2 计算步骤1找到的
个碎片的上半部图像和下部分图像之间互信息和相关系数,确定出
个碎片的上下位置关系,得到印刷文字文件的第1列;
步骤3 计算第1列中
个碎片右边与其它碎片左边的欧氏距离,得到碎片之间关于欧氏距离的矩阵
;在矩阵
中,第
行的值
表示第
个碎片与第
个碎片之间的欧氏距离.
步骤4 在
中,计算第
行的最小值
;若
中
在第
行出现的次数为1且对应的列标为
,则第
个碎片和第
个碎片是最佳匹配组合;若
在第
行出现的次数为大于1,则进行步骤5.
步骤5
在
行中出现的次数为大于1,则计算第
个碎片的右边图像与其余碎片左边图像的灰色斜率关联度
,记灰色斜率关联度最大的值
对应的列为
;若第
个碎片在步骤4的最佳匹配组合中没有出现,那么第
个碎片和第
个碎片是最佳匹配组合;若第
个碎片已在步骤4的最佳匹配组合中出现过,选择灰色斜率关联度仅次于
的值对应的列
;若第
个碎片在步骤4的最佳匹配组合中没有出现,则第
个碎片和第
个碎片是最佳匹配组合,否则继续寻找第
个碎片的最佳匹配碎片,直止找到满足斜率关联度最大且在以前的最佳匹配组合中没出现条件的碎片.
步骤6 重复以上步骤,直到所有的碎片找到最佳的匹配组合为止.按照最佳匹配组合的关系将所有碎片链接起来,并在第1列中出现的碎片位置出换行,便可对文件的所有碎片数据进行拼接复原.
5.2.3 问题2的求解
运行matlab软件对以上算法进行仿真,得到如下的结果.
(1) 附件3中的中文文件复原结果
141
036
018
074
060
176
043
145
059
196
123
188
052
087
105
027
115
058
139
171
032
119
091
020
001
009
165
107
127
204
172
166
194
028
177
026
008
152
051
164
181
098
070
113
129
006
195
025
085
031
136
157
104
153
101
022
072
086
167
205
039
097
173
010
093
004
表7 附件3中碎片的排列序号
011
163
120
088
170
134
149
021
206
056
117
095
116
179
193
133
169
112
150
044
053
108
190
063
050
130
015
203
077
106
055
137
185
118
079
191
103
198
160
144
066
075
000
140
178
131
147
122
202
073
124
187
037
174
155
192
096
023
189
033
012
042
110
048
045
207
057
162
041
081
080
135
121
184
180
175
151
002
099
030
035
017
199
047
016
092
068
040
186
069
142
024
200
082
090
197
005
126
114
143
067
062
161
132
159
183
109
201
158
154
065
078
076
046
083
003
084
182
111
138
102
054
019
100
148
156
128
034
013
064
208
146
045
061
168
038
071
014
094
125
029
007
089
附件3中文件的复原结果中间图见附录3.
附件3中文件的最终复原图见附录4.
(2) 附件4中的英文文件复原结果
附件4的复原结果表格形式如下表所示:
39
146
127
082
031
143
112
109
178
044
115
065
028
046
165
203
179
197
185
027
152
102
204
017
037
071
097
161
162
090
025
183
000
147
006
030
202
187
079
189
122
110
009
124
067
100
092
057
160
173
118
099
013
016
177
表8 附件4中碎片的排列序号
032
026
058
022
050
045
133
023
034
035
012
149
101
059
151
085
199
192
096
130
056
072
004
080
005
182
175
043
054
156
003
018
048
106
091
150
176
120
076
169
172
206
055
089
064
103
117
114
123
015
062
047
144
134
087
180
078
024
155
038
135
168
008
111
083
193
104
164
098
105
053
207
142
195
188
145
140
002
113
186
126
153
036
033
137
166
074
125
184
094
158
121
138
073
119
174
163
157
052
190
194
040
088
063
136
061
068
167
010
131
154
196
029
141
129
116
049
014
069
205
200
011
170
107
093
001
108
007
060
095
066
128
075
148
051
194
139
041
021
084
181
042
077
191
201
086
019
159
020
208
070
132
171
081
附件4中文件的复原结果中间图见附录5.
附件4中文件的最终复原图见附录6.
5.3 问题3的求解
5.3.1 模型的建立
模糊聚类分析是一种将样本或者变量分类的统计方法,基于物以类聚的思想,它根据样本数量计算样本之间的距离(相似程度),按距离的大小,将样本或变量逐一归类,关系密切的类聚到一个小的分类单位,使同一类的对象之间具有较高的相似度,然后逐步扩大,使得关系疏远的类聚合到一个大的分类单位,知道所有的样本或变量都累计完毕.模糊聚类分析法常用的距离为绝对值距离和欧式距离,其中,欧氏距离在聚类分析中用的最广.计算流程如下[14-15]:
(1) 将
张碎纸片分为
类,取其中一个碎纸片右侧一列和另外任意碎纸片左侧一列作为样本,两个样本之间的距离构成一个对称距离矩阵
(2) 选择
中的非对角线上的最小元素,设这个最小元素是
,此时
与
的距离最近,将
合并成一个新类
.在
中消去
所对应的行与列,并加入由新类
与剩下的其他未聚合的类间的距离所组成的新的距离矩阵
,它是n-1阶方阵;
(3) 从
出发重复(2)的做法得
,再由
出发重复上述步骤,直到碎纸片聚成一个整体,聚类完成.
5.3.2 拼接复原算法
附件5的碎片均为双面,假设碎片的总数为
个(
个碎片组成整个原图的正面),具体的拼接复原算法如下:
步骤1 基于模糊聚类分析法的思想,借助Matlab软件编程将所有碎片区分粗分为正面和反面两大类;
步骤2 任选某一大类的碎片,利用问题2的拼接复原算法对该类的碎片进行拼接复原;
步骤3 对无法拼接的碎片进行人工干预,直至所有的最碎片找到最佳的匹配组合为止.将所有的碎片进行链接,可复原文件的原图.根据碎片编号的命名规则,如果一面的原图复原成功,选择原图每个碎片对应序号的反面,可直接拼接复原出反面的原图.
5.3.3 问题3的求解
运行matlab软件对以上算法进行仿真,得到如下的结果.
(1) 附件5中的文件正面复原结果
附件5中的文件正面复原结果见表9.
附件5中文件正面的复原结果中间图见附录7.
附件5中文件正面的复原结果中间图见附录8.
对附录8中的碎片49a、161b、108b、045b、021a、042a、048b、180b、041b、202b和175b进行人工干预,得到附录9。
附件5中文件正面的最终复原图见附录9.
(2) 附件5中的文件反面复原结果
附件5反面的复原结果见表10。
附件5中文件反面的复原结果图见附录10.
6. 模型的分析与改进
本文提出的三个拼接复原模型和算法的效率比较高,大大提高了碎纸片拼接复原的效率;对于规则形状相同碎纸片的拼接精确度也较高,且易于在计算机上实现.但新模型没有考虑不规则形状碎纸片的拼接,也没有涉及到拼接处突变的特殊情况,因此模型具有一定的局限性,以后在这些方面需要改进.
078a
089b
186a
070a
088a
114b
201b
165a
003a
023a
099b
111a
010a
153b
099a
107b
184a
146b
195b
007a
133b
043b
125b
036b
084a
161b
149a
179a
171a
128b
085a
048b
096a
140b
076a
042a
169a
180b
116a
031b
157b
148a
051a
109b
155b
178b
030b
194a
037a
207b
050b
168b
077b
095b
123b
150b
044b
038b
173a
191b
058b
190a
046b
004b
160a
006b
表9 附件5中碎片的排列序号(正面)
183a
025a
121b
206a
065a
158b
092a
067b
069b
119b
104b
174a
192b
098b
156b
115a
197b
019a
063a
032b
033a
134b
110b
124a
094a
034b
166a
154a
016a
075a
074a
071a
113b
066b
022b
061a
181a
001a
028a
177a
167b
126a
052b
026a
108b
120a
137a
198a
151a
012b
053a
117a
176b
062b
049a
018a
144b
045b
087b
170a
017a
202b
008a
185b
129a
091b
029b
079b
138b
132a
041b
102a
021a
068a
000a
118a
106a
189a
014b
056a
093b
139a
064a
130b
188b
080a
101b
100a
081a
059b
131a
072a
003b
208b
163b
127b
027b
015a
055a
164a
060a
187a
175b
002b
142b
193a
040b
135a
205b
103b
020b
147b
086a
097b
162a
057b
073a
182a
141b
082a
112b
047b
152b
200a
039a
203a
024b
159b
122b
204a
145b
196a
136a
005b
143a
083b
090b
013b
035b
172b
105b
009a
054a
136b
005a
143b
083a
090a
013a
035a
172a
105a
009b
054b
047a
152a
200b
039b
203b
024a
159a
122a
204b
145a
196b
020a
147a
086b
097a
162b
057a
073b
182b
141a
082b
112a
164b
060b
187b
175a
002a
142a
193b
040a
135b
205a
103a
081b
059a
131b
072b
003a
208a
163a
127a
027a
015b
055b
189b
014a
056b
093a
139b
064b
130a
188a
080b
101a
100b
029a
079a
138a
132b
041a
102b
021b
068b
000b
118b
106b
018b
144a
045a
087a
170b
017b
202a
008b
185a
129b
091a
108a
120b
137b
198b
151b
012a
053b
117b
176a
062a
049b
066a
022a
061b
181b
001b
028b
177b
167a
126b
052a
026b
110a
124b
094b
034a
166b
154b
016b
075b
074b
071b
113a
174b
192a
098a
156a
115b
197a
019b
063b
032a
033b
134a
183b
025b
121a
206b
065b
158a
092b
067a
069a
119a
104a
150a
044a
038a
173b
191a
058a
190b
046a
004a
160b
006a
155a
178a
030a
194b
037b
207a
050a
168a
077a
095a
123a
140a
076b
042b
169b
180a
116b
031a
157a
148b
051b
109a
125a
036a
084b
161a
149b
179b
171b
128a
085b
048a
096b
111b
010b
153a
099b
107a
184b
146a
195a
007b
133a
043a
078b
089a
186b
070b
088b
114a
201a
165b
003b
023b
099a
表10 附件5中碎片的排列序号(反面)
表10 附件5中碎片的排列序号(反面)
参考文献
[1] 陈沈陈,钱徽,模板图像匹配中互相关的一种快速算法,传感技术学报,20(6):1325-1329,2007.
[2] 高新波,模糊聚类分析及其应用,西安:西安电子科技大学出版社,2004.
[3] 苏金明,王永利,MATLAB
工程
路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理
数学,北京:电子工业出版社,2004.
[4] 李德宜,李明,数学建模,科学出版社,2009.5.
[5] 张晓洪,李博,一种新的Harris多尺度角点检测,电子与信息学报,29(7):1735-1739,2007.
[6] 高新波,模糊聚类分析及其应用,西安:西安电子科技大学出版社,2004.
[7] 高征兵,晏磊,基于特征匹配的地图图像自动配准技术研究,影像技术,20(5):47-50,2004.
[8] 张德丰等,MATLAB数值分析,北京:机械工业出版社,2012.
[9] John Walkenbach, Excel 2003公式与函数应用宝典, 电子工业出版社,2005.3.
[10] 宋叶志等,MATLAB数值分析与应用,-北京:机械工业出版社,2009.7.
[11] Musto J.C., MATLAB & Excel 工程计算,北京:清华大学出版社,2010.1.
[12] 王磊,莫玉龙,基于Canny理论的边缘提取改善方法, 中国图象图形学报,1(3):191-195,1996.
[13] 金根, 一种基于特征区域分割的图像拼接算法,西安:电子科技大学学报,29(6):768-771,2002
[14] 朱延娟,周来水,二维非规则碎片的匹配算法, 计算机工程,33(24):7-9,2007.
[15] 钱颂迪,运筹学,清华大学出版社,1990.
附录1: 附件1中文件的拼接复原图
附录2:附件2中文件的拼接复原图
附录3: 附件3中文件的拼接复原中间图
附录4:附件3中文件的拼接复原最终图
附录5:附件4中文件的拼接复原中间图
附录6:附件4中文件的拼接复原最终图
附录7:附件5中文件的正面拼接复原中间图-1
附录8:附件5中文件的正面拼接复原中间图-2
附录9:附件5中文件的正面拼接复原最终图
附录10:附件5中文件的反面拼接复原最终图
附录11: Matlab的关键代码
% 读取图像文件并转换为二值图的代码
clear;
a = imread(strcat('im1\','000.bmp'));
[w,h]=size(a);
nump=19;
data=zeros(19,w,h);
uint8 i;
for i=0:18
if i<10
fileName=strcat('00',int2str(i));
else
fileName=strcat('0',int2str(i));
end
fileName=strcat(fileName,'.bmp');
tmp=imread(strcat('D:\MATLAB7\work\im1\',fileName));
tmp=im2bw(tmp);
data(i+1,:,:)=tmp;
end
% 将图像数据表转换为二维矩阵的代码
for i=1:w
for j=1:h
d1(i,j)=data(1,i,j);
d2(i,j)=data(2,i,j);
d3(i,j)=data(3,i,j);
d4(i,j)=data(4,i,j);
d5(i,j)=data(5,i,j);
d6(i,j)=data(6,i,j);
d7(i,j)=data(7,i,j);
d8(i,j)=data(8,i,j);
d9(i,j)=data(9,i,j);
d10(i,j)=data(10,i,j);
d11(i,j)=data(11,i,j);
d12(i,j)=data(12,i,j);
d13(i,j)=data(13,i,j);
d14(i,j)=data(14,i,j);
d15(i,j)=data(15,i,j);
d16(i,j)=data(16,i,j);
d17(i,j)=data(17,i,j);
d18(i,j)=data(18,i,j);
d19(i,j)=data(19,i,j);
end
end
% 计算图像信息墒的代码
for i=1:19
s0=0;s1=0;
for j=1:w/18
for k=1:h
if data(i,j,k)==0
s0=s0+1;
else
s1=s1+1;
end
end
end
p(i,1)=s0;
p(i,2)=s1;
p(i,3)=s0/(s0+s1);
p(i,4)=s1/(s0+s1);
p(i,5)=-p(i,3)*log2(p(i,3))-p(i,4)*log2(p(i,4));
p(i,6)=s0+s1;
fprintf('\n第%d个图像中 0的个数=%d\t 1的个数=%d\t 总个数=%d\t 0的概率=%f\t 1的概率=%f 墒值=%f\t\n',i,p(i,1),p(i,2),p(i,6),p(i,3),p(i,4),p(i,5));
end
for i=1:19
sh0(i,1)=i;
sh0(i,2)=p(i,5);
end
sh0
j0=1;
mx0=sh0(1,2);
for j=2:19
if sh0(j,2)
本文档为【数学建模—碎纸片的拼接复原】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。