使用regionprops函數(shù)解釋PixelList性質(zhì)
在matlab中進(jìn)行圖像處理時(shí),常常會(huì)用到regionprops函數(shù)。這個(gè)函數(shù)包含了多個(gè)性質(zhì),今天我們主要分享如何理解其中的PixelList性質(zhì)。從幫助文件上很難完全理解PixelList的含義,因
在matlab中進(jìn)行圖像處理時(shí),常常會(huì)用到regionprops函數(shù)。這個(gè)函數(shù)包含了多個(gè)性質(zhì),今天我們主要分享如何理解其中的PixelList性質(zhì)。從幫助文件上很難完全理解PixelList的含義,因此下面將通過(guò)實(shí)例來(lái)解釋。
讀取并二值化圖像
首先,我們需要讀取一張圖片,并對(duì)其進(jìn)行二值化處理。代碼如下:
```
image1 imread('');
image2 im2bw(image1);
```
經(jīng)過(guò)二值化處理后,圖像以變量形式顯示在右側(cè)的workspace窗口中。二值化后的圖像只有兩種數(shù)值,0和1。顯示的圖像是邏輯形式,其中0表示FALSE,1表示TRUE。圖像的大小為1323*534,即1323行,534列。你可以雙擊img變量,查看當(dāng)前圖像的0和1表示。
將圖像寫(xiě)入Excel并標(biāo)紅
現(xiàn)在,我們將二值化后的圖像寫(xiě)入Excel以備后續(xù)使用。使用xlswrite函數(shù)將img寫(xiě)入一個(gè)名為filename.xlsx的Excel文件中。寫(xiě)入后,你會(huì)發(fā)現(xiàn)圖像不再是原來(lái)的0和1,這印證了img的數(shù)據(jù)類(lèi)型是邏輯型。
接下來(lái),我們對(duì)Excel中的數(shù)據(jù)進(jìn)行標(biāo)紅處理。選擇所有數(shù)據(jù)后,點(diǎn)擊條件格式,然后選擇突出顯示單元格規(guī)則,再選擇文本包含。在彈出的窗口中輸入TRUE,并確定。你會(huì)發(fā)現(xiàn)所有的TRUE單元格都被標(biāo)紅了??s小Excel表格,你會(huì)發(fā)現(xiàn)一個(gè)似乎有形狀的圖案。與之前讀入的圖片進(jìn)行對(duì)比,發(fā)現(xiàn)它們是一樣的。
了解PixelList屬性
在圖像經(jīng)過(guò)二值化處理后,我們可以對(duì)其中的空洞進(jìn)行填充,然后使用regionprops()函數(shù)獲得圖像的三個(gè)屬性:centroid(質(zhì)心),boundingBox(邊界框),pixelList(像素列表)。
點(diǎn)擊region這個(gè)變量,再點(diǎn)擊第一個(gè)單元格,再點(diǎn)擊pixelList選項(xiàng)。你會(huì)看到兩列數(shù)字,第一列共有21個(gè)數(shù)字,第二列數(shù)字從32開(kāi)始到52連續(xù)增加?;剡^(guò)頭來(lái)對(duì)比標(biāo)紅的Excel,你會(huì)發(fā)現(xiàn)w是第23列,而第一個(gè)標(biāo)紅的TRUE是從32開(kāi)始,到52結(jié)束。因此,顯而易見(jiàn),pixelList中的第一列代表region像素的x坐標(biāo),第二列代表region像素的y坐標(biāo)。需要注意的是,此時(shí)坐標(biāo)系的原點(diǎn)在左上角。
希望以上解釋對(duì)你有所幫助,理解了PixelList屬性的含義。