標籤:模糊 oci 資源釋放 技術 資料 from png amp bcd
轉載地址:http://www.cnblogs.com/skyseraph/archive/2011/08/27/2155776.html
一 原理
1 概念:GLCM,即灰階共生矩陣,GLCM是一個L*L方陣,L為源映像的灰階級
2 含義:描述的是具有某種空間位置關係的兩個像素的聯合分布,可看成兩個像素灰階對的聯合長條圖,是一種二階統計
3 常用的空間位置關係:有四種,垂直、水平、正負45°
4 常用的GLCM特徵特徵:
(1)能量: 是灰階共生矩陣元素值的平方和,所以也稱能量,反映了映像灰階分布均勻程度和紋理粗細度。
如果共生矩陣的所有值均相等,則ASM值小;相反,如果其中一些值大而其它值小,則ASM值大。
當共生矩陣中元素集中分布時,此時ASM值大。ASM值大表明一種較均一和規則變化的紋理模式。
(2)對比:反映了映像的清晰度和紋理溝紋深淺的程度。紋理溝紋越深,其對比越大,視覺效果越清晰;
反之,對比小,則溝紋淺,效果模糊。灰階差即對比大的象素對越多,這個值越大。
灰階公生矩陣中遠離對角線的元素值越大,CON越大。
(3)相關: 它度量空間灰階共生矩陣元素在行或列方向上的相似程度,因此,相關值大小反映了映像中局部灰階相關性。
當矩陣元素值均勻相等時,相關值就大;相反,如果矩陣像元值相差很大則相關值小。如果映像中有水平方向紋理,
則水平方向矩陣的COR大於其餘矩陣的COR值。
(4)熵: 是映像所具有的資訊量的度量,紋理資訊也屬於映像的資訊,是一個隨機性的度量,當共生矩陣中所有元素有最大的隨機性、
空間共生矩陣中所有值幾乎相等時,共生矩陣中元素分散分布時,熵較大。它表示了映像中紋理的非均勻程度或複雜程度。
(5)逆差距:反映映像紋理的同質性,度量映像紋理局部變化的多少。其值大則說明映像紋理的不同地區間缺少變化,局部非常均勻。
5 原理理解:
假設衣服映像的紋理矩陣P如下:
P = [ 0 1 2 0 1 2
1 2 0 1 2 0
2 0 1 2 0 1
0 1 2 0 1 2
1 2 0 1 2 0
2 0 1 2 0 1
]
①相距為1(第一個參數),位置方向為0°第二個參數)的GLCM矩陣如下:
[ 0 10 10
10 0 10
10 10 0
]
//解析:因為P中灰階級為3,故GLCM為3*3方陣
②相距為1(第一個參數),位置方向為正負45°第二個參數)的GLCM矩陣如下:
[ 16 0 0
0 16 0
0 0 18
]
-------------------------------------------------------------------------------------------------------------------------------
二 結果
映像(lenna):
另附:關於lenna,風靡映像界這張映像,源原軼事:http://www.cs.cmu.edu/~chuck/lennapg/ ^_^
單個 GLCM以及4個方向的均值、方差GLCM特徵:
-------------------------------------------------------------------------------------------------------------------------------
三 源碼
類標頭檔:
View Code
類源檔案-1:初始化和資源釋放
View Code
類源檔案-2:計算紋理特徵
View Code
類源檔案-3:計算共生矩陣
View Code
類源檔案-4:計算GLCM特徵
View Code
類源檔案-5:計算GLCM特徵均值和方差
View Code
說明:
參考了 《VisualC++數位影像模式識別技術詳解》、《數位影像處理與機器視覺-VisualC++與Matlab實現》等書,此類為本文作者原創,可直接調用,轉載/引用請註明出處。
-------------------------------------------------------------------------------------------------------------------------------
四 參考資料
-
GLCM Texture Tutorial
-
Gray-level Co-occurrence Matrix(灰階共生矩陣) _ 丕子
灰階共生矩陣 - tyut - 部落格園
使用OpenCv的cvGLCM報錯
灰階共發矩陣專題_百度文庫
灰階共生矩陣VC++實現_百度文庫
映像的灰階共生矩陣_百度文庫
灰階共生矩陣_百度文庫
提取共生矩陣特徵 - wqvbjhc的專欄 - CSDN部落格
基於灰階共生矩陣的紋理特徵提取 - docin.com豆丁網
基於灰階共生矩陣的映像分割方法研究_百度文庫
一個使用GLCM的例子.(修改了CvTexture的bug)
《VisualC++數位影像模式識別技術詳解》
《數位影像處理與機器視覺-VisualC++與Matlab實現》
------------------------------------------------------------------------------------------------------------------------------
Author: SKySeraph
Email/GTalk: [email protected] QQ:452728574
From: http://www.cnblogs.com/skyseraph/
paper 131:【映像演算法】映像特徵:GLCM【轉載】