紋理描述子(紋理特征):最大概率、相關、對比度、能量、同質、熵
I=imread('C:\Users\Jv\Desktop\紋理3.jpg');
gray=rgb2gray(I);
GS=graycomatrix(gray,'NumLevels',256);%水平位置算子計算共生矩陣
GSn=GS/sum(GS(:));%歸一化矩陣
stats=graycoprops(GS,'all');%共生矩陣的描述子
maxProbability=max(GSn(:));%最大概率
corr=stats.Correlation;%相關
contrast=stats.Contrast;%對比度
energy=stats.Energy;%能量
hom=stats.Homogeneity;%同質
for J=1:size(GSn,1)
sumcols(J)=sum(-GSn(J,1:end).*log2(GSn(J,1:end)+eps));
end
entropy=sum(sumcols);%熵
Y=[maxProbability,corr,contrast,energy,hom,entropy];
(1)最大概率:最大像素對的概率。
(2)相關:它度量空間灰度共生矩陣元素在行或列方向上的相似程度,因此,相關值大小反映了圖像中局部灰度相關性。當矩陣元素值均勻相等時,相關值就大;相反,如果矩陣像元值相差很大則相關值小。如果圖像中有水平方向紋理,則水平方向矩陣的COR大於其余矩陣的COR值。
(3)對比度:反映了圖像的清晰度和紋理溝紋深淺的程度。紋理溝紋越深,其對比度越大,視覺效果越清晰;反之,對比度小,則溝紋淺,效果模糊。灰度差即對比度大的象素對越多,這個值越大。灰度公生矩陣中遠離對角線的元素值越大,CON越大。
(4)能量:是灰度共生矩陣元素值的平方和,所以也稱能量,反映了圖像灰度分布均勻程度和紋理粗細度。如果共生矩陣的所有值均相等,則ASM值小;相反,如果其中一些值大而其它值小,則ASM值大。當共生矩陣中元素集中分布時,此時ASM值大。ASM值大表明一種較均一和規則變化的紋理模式。
(5)同質(逆差距):反映圖像紋理的同質性,度量圖像紋理局部變化的多少。其值大則說明圖像紋理的不同區域間缺少變化,局部非常均勻。
(6)熵:是圖像所具有的信息量的度量,紋理信息也屬於圖像的信息,是一個隨機性的度量,當共生矩陣中所有元素有最大的隨機性、空間共生矩陣中所有值幾乎相等時,共生矩陣中元素分散分布時,熵較大。它表示了圖像中紋理的非均勻程度或復雜程度。
【函數講解】
GS=graycomatrix(gray,'NumLevels',256,‘Offset’,offsets);
'NumLevels' 一個整數,代表是將圖像中的灰度歸一范圍。舉例來說,如果NumLevels為8,意思就是將圖像I的灰度映射到1到8之間,它也決定了灰度共生矩陣的大小
'Offset' 是一個p*2的整數矩陣,D代表是當前像素與鄰居的距離,通過設置D值,即可設置角度。默認[0,1]水平
Angle Offset
0 [0 D]
45 [-D D]
90 [-D 0]
135 [-D -D]
【灰度共生矩陣簡介】
共生矩陣用兩個位置的象素的聯合概率密度來定義,它不僅反映亮度的分布特性,也反映具有同樣亮度或接近亮度的象素之間的位置分布特性,是有關圖象亮度變化的二階統計特征。它是定義一組紋理特征的基礎。
圖像的灰度共生矩陣是像素距離和角度的矩陣函數,它通過計算圖像中一定距離和一定方向的兩點灰度之間的相關性,來反映圖像在方向、間隔、變化幅度及快慢上的綜合信息。
