在matlab圖像處理中太有用了,regionprops用來度量圖像區(qū)域?qū)傩缘暮瘮?shù)。
函數(shù):regionprops。顧名思義:它的用途是get the
properties of region,即用來度量圖像區(qū)域?qū)傩缘暮瘮?shù)。
語法 STATS =
regionprops(L,properties)
%bw=rgb2gray(bw);L必須來自二維圖像(如灰度圖像)
%L = bwlabel(bw);語法中的L
%s = regionprops(L, 'centroid');
centroid為其中可以引用的屬性
描述
測量標(biāo)注矩陣L中每一個標(biāo)注區(qū)域的一系列屬性。L中不同的正整數(shù)元素對應(yīng)不同的區(qū)域,例如:L中等于整數(shù)1的元素對應(yīng)區(qū)域1;L中等于整數(shù)2的元素對應(yīng)區(qū)域2;以此類推。返回值STATS是一個長度為max(L(:))的結(jié)構(gòu)數(shù)組,結(jié)構(gòu)數(shù)組的相應(yīng)域定義了每一個區(qū)域相應(yīng)屬性下的度量。properties
可以是由逗號分割的字符串列表、飽含字符串的單元數(shù)組、單個字符串 'all' 或者 'basic'。如果 properties
等于字符串 'all',則所有下述字串列表中的度量數(shù)據(jù)都將被計算。
如果 properties 沒有指定或者等于 'basic',則屬性:
'Area', 'Centroid', 和 'BoundingBox'
將被計算。下面的列表就是所有有效的屬性字符串,它們大小寫敏感并且可以縮寫。
屬性詳細(xì)定義
函數(shù)regionprops用于提取圖像中感興趣區(qū)域的屬性,包括以下幾個內(nèi)容:
'Area''EulerNumber''Orientation''BoundingBox''Extent''Perimeter''Centroid''Extrema''PixelIdxList''ConvexArea''FilledArea''PixelList''ConvexHull''FilledImage''Solidity''ConvexImage''Image''SubarrayIdx''Eccentricity''MajorAxisLength''EquivDiameter''MinorAxisLength'
翻譯過來就是:
'Area'是標(biāo)量,計算出在圖像各個區(qū)域中像素總個數(shù)。
注意:這個數(shù)值可能與由函數(shù) bwarea
計算的值有輕微的不同。對于這樣一個數(shù)值,我們可以使用它除以整個圖像區(qū)域的像素個數(shù)而得到圖像比例,可以作為模式識別的候選特征,并且這個特征是仿射不變的。
EulerNumber:歐拉數(shù)
Orientation:方向
'BoundingBox'
是1行ndims(L)*2列的向量,即包含相應(yīng)區(qū)域的最小矩形。包括矩形左上角坐標(biāo)和長寬。
BoundingBox 形式為 [ul_corner width],這里
ul_corner 以 [x y z ...] 的坐標(biāo)形式給出邊界盒子的左上角、boxwidth 以 [x_width y_width
...] 形式指出邊界盒子沿著每個維數(shù)方向的長度。注意:請在這熟悉一下函數(shù)rectangle的使用方法。
Extent:范圍,長度
Perimeter:周長
'Centroid'是1行ndims(L)列的向量,給出每個區(qū)域的質(zhì)心(重心)
注意:Centroid
的第一個元素是重心水平坐標(biāo)(x坐標(biāo))、第二個元素是重心垂直坐標(biāo)(y坐標(biāo))。Centroid
所有其它元素則按照維順序排列。
Extrema:極值
MajorAxisLength'
是標(biāo)量,與區(qū)域具有相同標(biāo)準(zhǔn)二階中心矩的橢圓的長軸長度(像素意義下)本屬性只支持二維標(biāo)注矩陣。
'MinorAxisLength'
是標(biāo)量,與區(qū)域具有相同標(biāo)準(zhǔn)二階中心矩的橢圓的短軸長度(像素意義下)。本屬性只支持二維標(biāo)注矩陣。
'Eccentricity'
是標(biāo)量,與區(qū)域具有相同標(biāo)準(zhǔn)二階中心矩的橢圓的離心率(可作為特征)。本屬性只支持二維標(biāo)注矩陣。
'Orientation'
是標(biāo)量,與區(qū)域具有相同標(biāo)準(zhǔn)二階中心矩的橢圓的長軸與x軸的交角(度)。本屬性只支持二維標(biāo)注矩陣。我們可以考察離心率的變化趨勢,得到對于整個區(qū)域中的各區(qū)域的似圓性如何的大致感覺。看出區(qū)域整體的似圓性好不好,實(shí)際上可以考慮使用離心率向量作為一個模式識別的特征。
'Image'
二值圖像,與某區(qū)域具有相同大小的邏輯矩陣。你可以用這個屬性直接將每個子區(qū)域提取出來,然后再作相應(yīng)的處理!
'FilledImage'
與'Image'相同,唯一區(qū)別是這是個做了填充的邏輯矩陣!
'FilledArea'
是標(biāo)量,填充區(qū)域圖像中的 on 像素個數(shù)。
'ConvexHull'
是p行2列的矩陣,包含某區(qū)域的最小凸多邊形。此矩陣的每一行存儲此多邊形一個頂點(diǎn)的xy坐標(biāo)。此屬性只支持2維標(biāo)注矩陣。
'ConvexImage'
二值圖像,用來畫出上述的區(qū)域最小凸多邊形。同時此凸包內(nèi)的像素均打開,圖像尺寸和此區(qū)域?qū)?yīng)邊界矩形相同。此屬性只支持2維標(biāo)注矩陣。例如:本例中的第2個子區(qū)域的最小凸多邊形圖形為。注意:此處函數(shù)roipoly很有用!
'ConvexArea'
是標(biāo)量,填充區(qū)域凸多邊形圖像中的 on 像素個數(shù)。
'EulerNumber'
是標(biāo)量,幾何拓?fù)渲械囊粋€拓?fù)洳蛔兞?-歐拉數(shù),等于圖像中目標(biāo)個數(shù)減去這些目標(biāo)中空洞的個數(shù)。此屬性只支持2維標(biāo)注矩陣。本例中的歐拉數(shù)均為1。
'Extrema'
8行2列矩陣,八方向區(qū)域極值點(diǎn)。矩陣每行存儲這些點(diǎn)的xy坐標(biāo),向量格式為
[top-left top-right right-top right-bottom bottom-right bottom-left
left-bottom left-top]。此屬性只支持2維標(biāo)注矩陣。
'EquivDiameter'
還有一些別的,用到了再完善,現(xiàn)在還不懂……
|