朱櫻
【摘要】紋理特征是從紋理圖像中計算出來的一個值,他對紋理內(nèi)部灰度級變化的特征進(jìn)行量化。本次設(shè)計利用統(tǒng)計法中的灰度共生矩陣統(tǒng)計方法,對圖像的熵、能量、慣性矩、相關(guān)性四個紋理特征進(jìn)行提?。缓屠没叶戎狈綀D方法計算圖像的平均值、方差、熵和能量。
【關(guān)鍵詞】圖像紋理 共生矩陣 灰度直方圖 熵 能量
一、課題研究的背景
隨著科技的快速發(fā)展,圖像越來越成為人類生活和工作中用于傳遞信息和進(jìn)行交流的重要數(shù)據(jù)載體,圖像的有效表示是進(jìn)一步處理圖像的重要基礎(chǔ)。用各種觀察系統(tǒng)取得的圖像很多都是紋理型的,可以通過圖像的紋理分析提取許多有價值的宏觀信息。紋理反映了物體表面或結(jié)構(gòu)的性質(zhì)。類似于布紋、草地、磚墻等重復(fù)性結(jié)構(gòu)的圖像稱為紋理圖像。直覺上,紋理是比較明顯的,但是由于紋理的變化很多并且是與心理效果相關(guān)的,很難精確描述。紋理特征包含了物體表面結(jié)構(gòu)排列的重要信息以及它們與周圍環(huán)境的聯(lián)系。正因為如此,紋理特征在基于內(nèi)容的場景圖像檢索、場景圖像識別中得到了廣泛的應(yīng)用。
二、系統(tǒng)的框架設(shè)計
2.1文件操作模塊
將指定位圖文件的數(shù)據(jù)讀入到相應(yīng)的數(shù)據(jù)結(jié)構(gòu)中,以便進(jìn)一步處理,該模塊主要是對圖像進(jìn)行打開操作。
用文件操作獲得一個圖片對象。用bufferedimage接受這個文件,并用圖片的屬性寬和高來判斷此文件是否為圖片文件,若添加的文件寬和高為0,則不是圖片格式,此時會提示重新添加。
2.2特征值計算模塊
2.2.1基于灰度共生矩陣分析方法計算特征值
Step1:將原圖轉(zhuǎn)換為灰度圖像
獲得圖像中一點的像素值,使用bufferedimage.getRGB(i,j)獲得該點的顏色值A(chǔ)RGB,然后再將ARGB轉(zhuǎn)化為RGB。進(jìn)而求出R,G,B三分量的值。根據(jù)灰度公式: Gray=(R*30+G*59+B*11+50)/100可以計算出灰度值,從而將原圖轉(zhuǎn)換為灰度圖像。
Step2:灰度級量化
灰度圖像的灰度級為256,在計算由灰度共生矩陣推導(dǎo)出的紋理特征時,要求圖像的灰度級遠(yuǎn)小于256,主要是因為矩陣維數(shù)較大而窗口的尺寸較小則灰度共生矩陣不能很好表示紋理,如要能夠很好表示紋理則要求窗口尺寸較大,這樣使計算量大大增加,而且當(dāng)窗口尺寸較大時對于每類的邊界區(qū)域誤識率較大。所以在計算灰度共生矩陣之前要對圖片進(jìn)行量化以減小圖像的灰度級,在不影響紋理特征的前提下往往先把原圖片的灰度級壓縮到較小范圍。本次研究中壓縮為8個灰度級(將所求出灰度除以32取整),雖然經(jīng)過量化后的圖片會失真,但對紋理特征影響不大。
Step3:得到灰度共生矩陣
先選擇一定大小的滑動窗口,這里對于每一特征都以5×5的窗口計算。取5×5中任意一點 (x,y)及偏離它的另一點(x+a,y+b),求出這兩點的灰度值為(i,j)。令點(x,y)在畫面上移動,會得到各種(i,j)的值。對整個畫面,統(tǒng)計出每一種(i,j)值出現(xiàn)的次數(shù),然后排成一個方陣,再用(i,j)出現(xiàn)的總次數(shù)將它們歸一化為出現(xiàn)的頻率P(i,j)。其中(a,b)是距離差分值,當(dāng)a=1,b=0時,像素對是平行的,即0度掃描;a=0,b=1時,像素對垂直,即90度掃描;a=1,b=1時,是右對角線,即45度掃描;a=-1,b=1時,是左對角線,即135度掃描。
在程序中實現(xiàn)時,是按一定的比例來判斷角度的。當(dāng)(x+任意數(shù),y+0)時,即0度掃描;當(dāng)(x,y)加相同的數(shù)時,即45度掃描;當(dāng)(x=0,y+任意數(shù))時,即90度掃描;當(dāng)(x,y)加上相反數(shù)時,即135度掃描;
這樣,兩個像素灰度級同時發(fā)生概率,就將(x,y)的空間坐標(biāo)轉(zhuǎn)化為“灰度對”(i,j)的描述,形成了灰度共生矩陣。
相關(guān)性是度量空間灰度共生矩陣元素在行或列方向上的相似程度,反映圖像的局部灰度相關(guān)性。當(dāng)矩陣元素值均勻相等時,相關(guān)值就大;相反,如果矩陣像元值相差很大,則相關(guān)值小。
2.2.2基于灰度直方圖分析方法計算特征值
直方圖是灰度的一階概率分布的離散化形式?;叶戎狈綀D表明了一副圖像灰度分布的總體統(tǒng)計特征,圖像各像元的灰度值是具有二維位置的信息,而直方圖只統(tǒng)計某一灰度值的像元有多少,占全幅像元的比例是多少,對那些有同一灰度的像元在圖像中所占位置則無信息。由于直方圖是總體灰度的概念,所以不同的圖像可能具有相同的直方圖。直方圖具有可疊性,即若一副圖像分為若干小區(qū),則每個小區(qū)都可分別作直方圖,而原圖像的總直方圖為各區(qū)直方圖之和,各小區(qū)的形狀、大小都可隨意選擇。
Step1:將原圖轉(zhuǎn)換為灰度圖像
獲得圖像中一點的像素值,使用bufferedimage.getRGB(i,j)獲得該點的顏色值A(chǔ)RGB,然后再將ARGB轉(zhuǎn)化為RGB。進(jìn)而求出R,G,B三分量的值。根據(jù)灰度公式: Gray=(R*30+G*59+B*11+50)/100可以計算出灰度值,從而將原圖轉(zhuǎn)換為灰度圖像。
Step2:求灰度直方圖
先是初始化一個大小為256的一維數(shù)組,該數(shù)組下標(biāo)作為灰度級,數(shù)組中存放對應(yīng)灰度級出現(xiàn)的頻率。然后從圖片中獲得的灰度每出現(xiàn)一次,相對應(yīng)的頻率加一,最終放入一維數(shù)組中,從而得到灰度直方圖。直方圖的具體顯示是利用JAVA第三方的插件Jfreechart,以折線統(tǒng)計圖的形式顯現(xiàn)出來。
Step3:利用灰度直方圖,求特征值:熵、能量、平均值和方差
(1)均值: (3.9)
反映的是一幅圖像的平均灰度值。
(2)方差:
(3.10)
反映一副圖像的灰度在數(shù)值上的離散分布情況。
(3)熵: (3.11)
反映了灰度直方圖的分布均勻情況。
(4)能量:
(3.12)
反映灰度分布的均勻程度,灰度分布較均勻時,能量大,反之則小。
參考文獻(xiàn):
[1]劉麗,匡綱要.圖像紋理特征提取方法綜述.中國圖像圖形學(xué)報,2009
[2]魯斯.數(shù)字圖像處理.電子工業(yè)出版社,2014