張文龍
摘要:圖像拼接技術(shù)在司法物證復(fù)原、歷史文獻(xiàn)修復(fù)等領(lǐng)域應(yīng)用廣泛。探討邊緣相同的單面灰色圖片拼接復(fù)原問題,建立Matlab數(shù)學(xué)模型,通過編程設(shè)計(jì)規(guī)則灰色圖片拼接復(fù)原方案,運(yùn)用計(jì)算機(jī)技術(shù)準(zhǔn)確拼接復(fù)原圖片原件。該模型一定程度上彌補(bǔ)了常規(guī)文檔碎紙片計(jì)算機(jī)拼接方法不適用于邊緣形狀相似的碎紙片的不足。
關(guān)鍵詞:拼接復(fù)原;灰度值;相關(guān)性分析;圖像數(shù)字化
DOIDOI:10.11907/rjdk.143662
中圖分類號:TP317.4
文獻(xiàn)標(biāo)識碼:A 文章編號文章編號:16727800(2015)001013902
0 引言
圖像拼接技術(shù)的核心是圖像配準(zhǔn),可將其歸結(jié)為計(jì)算機(jī)視覺和模式識別問題,它在司法物證復(fù)原、歷史文獻(xiàn)修復(fù)等重要領(lǐng)域發(fā)揮著重要作用[12]。傳統(tǒng)方法中,拼接復(fù)原工作需由人工完成,準(zhǔn)確率較高,但效率很低。特別是當(dāng)碎片量大時(shí),人工拼接很難在短時(shí)間內(nèi)完成。隨著計(jì)算機(jī)技術(shù)的發(fā)展,人們試圖開發(fā)碎片自動(dòng)拼接技術(shù),以提高拼接復(fù)原效率。該技術(shù)拼接過程與人工拼接過程類似,即拼接時(shí)不但考慮碎片邊緣是否匹配,還要判斷碎片字跡斷線和文字內(nèi)容是否匹配。根據(jù)現(xiàn)有技術(shù),實(shí)現(xiàn)計(jì)算機(jī)智能識字難度較大。本文探討通過計(jì)算機(jī)獲取圖片像素信息,將其轉(zhuǎn)化為矩陣,根據(jù)圖像的像素矩陣值進(jìn)行碎片拼接的技術(shù),實(shí)驗(yàn)證明拼接效率比單純利用邊界特征的方法高很多。
1 相關(guān)技術(shù)
1.1 Matlab中cell批量調(diào)取圖片數(shù)據(jù)
將縱切得到的圖片進(jìn)行拼接復(fù)原,首先利用Matlab中的cell函數(shù)批量調(diào)入圖片。先建立一個(gè)cell類型的空矩陣,然后將圖片調(diào)入空矩陣中。cell類型下的單元都是獨(dú)立的,所以讀取數(shù)據(jù)時(shí)不會(huì)出現(xiàn)干擾現(xiàn)象。
1.2 圖像數(shù)據(jù)閾值分割
在Matlab中使用im2bw函數(shù)進(jìn)行圖像數(shù)據(jù)閾值變換,將灰度圖像轉(zhuǎn)換為二值灰度圖像。對圖像二值化處理需要設(shè)定閾值level,取值在[0,1]之間。已有研究表明,人為設(shè)定閾值并不一定有效。本文利用Matlab工具箱提供的graythresh函數(shù),利用最大類間方差法找到合適圖片的閾值level。這個(gè)閾值通常比人為設(shè)定的閾值能更好地將一張灰度圖像轉(zhuǎn)換為二值圖像。調(diào)用格式為:
level=graythresh(I)(1)
經(jīng)過計(jì)算得出level的值在0.537左右,將圖像數(shù)據(jù)轉(zhuǎn)換為只有0和1的矩陣。
T=255level(2)
得到合適的圖像分割像素比較值T。利用Matlab工具箱函數(shù)im2bw,使用閾值變換法將灰度圖像轉(zhuǎn)換為二值圖像,設(shè)圖片灰度值f(x,y),根據(jù)閾值分割法,有:
f(x,y)=0,f(x,y)≤T1,f(x,y)>T(3)
數(shù)字0代表黑點(diǎn)(黑色),數(shù)字1代表白色。于是將所有圖像數(shù)據(jù)都轉(zhuǎn)化為只有0,1組成的矩陣。
1.3 圖片匹配
圖像配準(zhǔn)和圖像融合是圖像拼接的關(guān)鍵。由于相鄰圖片間具有很大相關(guān)性,可運(yùn)用兩個(gè)圖像間的相關(guān)性進(jìn)行圖片配準(zhǔn)操作。首先找出組成復(fù)原圖的第一張圖片,然后對其它圖片進(jìn)行匹配。
1.4 數(shù)據(jù)0和1的轉(zhuǎn)變
利用Matlab中DIP工具箱函數(shù)im2bw,使用閾值T變換法將灰度圖像轉(zhuǎn)換成二值圖像?;叶仁侵负诎讏D像中點(diǎn)顏色的深度,范圍一般從0到255,白色為255,黑色為0。一般意義上,灰度圖像是指只有純黑(0)、純白(255)兩種顏色的黑白圖像。根據(jù)圖形類型,圖像數(shù)據(jù)在0~255之間。一個(gè)二值灰度圖像的像素值只能為0或1。根據(jù)下式將圖片轉(zhuǎn)化為由0和1組成的矩陣。
f(x,y)=0,f(x,y)≤T1,f(x,y)>T(4)
其中,f(x,y)代表某個(gè)點(diǎn)的灰度值。
1.5 corr2相關(guān)函數(shù)
選擇利用Matlab中corr2函數(shù),計(jì)算出由兩個(gè)圖片數(shù)據(jù)組成的兩個(gè)矩陣之間二維相關(guān)系數(shù)。k=corr2(c,d),c與d是由兩個(gè)大小相同的二維圖像組成的兩個(gè)矩陣。k為計(jì)算得到的相關(guān)系數(shù),k越接近于1,則表示兩個(gè)矩陣的相似度越大;k越接近于0,則表示兩矩陣的相似度越小[34]。
2 模型設(shè)計(jì)與實(shí)現(xiàn)
在被縱切而成的圖片中,每個(gè)圖片中間部位內(nèi)容的結(jié)構(gòu)沒有被損壞,其數(shù)據(jù)對結(jié)果不會(huì)造成影響。因此每個(gè)圖片只取出左邊第一列數(shù)據(jù)和右邊第一列數(shù)據(jù),將每個(gè)圖片的左邊第一列數(shù)據(jù)組成矩陣A;將右邊第一列數(shù)據(jù)組成矩陣B。為找出復(fù)原圖片中的第一張圖片,將兩個(gè)矩陣導(dǎo)入excel表中進(jìn)行計(jì)算,得到每個(gè)圖片左邊第一列中數(shù)字1所占的百分比。若某圖片第一列中數(shù)字1的百分比最大,則該圖片左邊第一列大部分為白色區(qū)域,可判斷出是首列或尾列。然后在剩下矩陣列進(jìn)行首列和尾列數(shù)據(jù)相關(guān)性分析,對第一個(gè)圖片尾部數(shù)據(jù)與其它圖片左邊第一列數(shù)據(jù)進(jìn)行相關(guān)性檢驗(yàn)。運(yùn)用相關(guān)函數(shù)corr2進(jìn)行兩個(gè)矩陣的相似系數(shù)求解,可得到一組相關(guān)系數(shù)。將這組相關(guān)系數(shù)進(jìn)行比較,找出最大相關(guān)系數(shù),并根據(jù)此相關(guān)系數(shù)的位置,找出與圖片尾部數(shù)據(jù)可以匹配的第i列對應(yīng)的圖片。運(yùn)用for循環(huán)語句,將上述方法進(jìn)行循環(huán)操作,得到復(fù)原圖片。
以由同一張照片縱切而成的圖片為例,自動(dòng)拼接復(fù)原操作步驟如下(見圖1)。
圖1 圖片自動(dòng)拼接復(fù)原操作步驟
(1)批量讀取圖片數(shù)據(jù),運(yùn)用Matlab中cell函數(shù)批量調(diào)入圖片數(shù)據(jù)。
(2)運(yùn)用最大類間方差找到一個(gè)合適的閾值,根據(jù)閾值進(jìn)行二值化處理,用閾值轉(zhuǎn)化法將灰度圖像轉(zhuǎn)化為二值灰度圖像,即只有0和1的數(shù)據(jù)圖像[5]。
(3)進(jìn)行圖片匹配與拼接,找出復(fù)原圖片中第一個(gè)圖片的序號,利用相鄰圖片間的相關(guān)性,用Matlab中corr2函數(shù)進(jìn)行相關(guān)性檢驗(yàn),將找到的第一張圖片的右邊第一列數(shù)據(jù)和其它圖片左邊第一列數(shù)據(jù)進(jìn)行相關(guān)性檢驗(yàn),得到一組相關(guān)系數(shù),找出相關(guān)系數(shù)最大值,其所對應(yīng)的圖片即為
與第一張圖片最匹配的圖片,進(jìn)行for循環(huán)操作便得到復(fù)原拼接圖片。
3 模型實(shí)驗(yàn)結(jié)果與分析
模型循環(huán)相似度比較需要找出第一個(gè)圖片,否則會(huì)出現(xiàn)錯(cuò)誤的序列,造成結(jié)果錯(cuò)誤。 找出第一個(gè)圖片后,運(yùn)用此模型,即可進(jìn)行大量的縱向切割文件復(fù)原工作。常規(guī)文檔碎紙片計(jì)算機(jī)拼接方法一般利用碎片邊緣的尖點(diǎn)、面積等幾何特征,搜索與之匹配的相鄰碎紙片并進(jìn)行拼接。這種基于邊界幾何特征的拼接方法并不適用于邊緣形狀相似的碎片[6]。利用該模型可以彌補(bǔ)這一缺陷。該模型利用碎片文字所在行的幾何特征信息,比如同行圖片的文字行離上、下邊界的距離近似相同,相鄰圖片間的相似度高等,其拼接效果無疑優(yōu)于單純利用邊界幾何特征的方法。該模型可以推廣到很多領(lǐng)域,如被縱向切割的重要文件的修復(fù)處理、拼圖游戲開發(fā)等。
4 結(jié)語
本文設(shè)計(jì)的模型適用于縱向切割、切割口處基本平滑的圖片的修復(fù)。當(dāng)圖片較少時(shí),利用模型拼接復(fù)原圖片的準(zhǔn)確度較高,圖片可以直接復(fù)原出來,結(jié)果完全正確。如果圖片較多,當(dāng)與同一張圖片相似度接近的圖片超出兩張時(shí),需要人工輔助。人工干預(yù)次數(shù)的增加會(huì)給拼接復(fù)原工作增加一定的難度,使該模型的靈敏度降低。該模型只能處理規(guī)則二維灰色圖片的拼接,對于有邊緣輪廓曲線、彩色、三維空間以及中英文混合圖片的拼接復(fù)原還需要進(jìn)一步研究。