日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

matlab处理亮度不均匀,校正亮度不均匀问题并分析前景对象

發(fā)布時間:2024/7/5 循环神经网络 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 matlab处理亮度不均匀,校正亮度不均匀问题并分析前景对象 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

預(yù)處理圖像

將圖像讀入工作區(qū)。

I = imread('rice.png');

imshow(I)

圖像中心的背景亮度比底部亮度高。預(yù)處理圖像,使背景亮度更加均勻。

第一步,使用形態(tài)學(xué)開運算刪除所有前景(米粒)。開運算會刪除無法完全包含結(jié)構(gòu)元素的小對象。定義半徑為 15 的盤形結(jié)構(gòu)元素,它完全可放入一粒米內(nèi)。

se = strel('disk',15)

se =

strel is a disk shaped structuring element with properties:

Neighborhood: [29x29 logical]

Dimensionality: 2

要執(zhí)行形態(tài)學(xué)開運算,請使用具有結(jié)構(gòu)元素的 imopen。

background = imopen(I,se);

imshow(background)

從原始圖像 I 中減去背景逼近圖像 background,然后查看生成的圖像。從原始圖像中減去調(diào)整后的背景圖像后,生成的圖像具有均勻的背景,但現(xiàn)在對于分析來說有點暗。

I2 = I - background;

imshow(I2)

使用 imadjust,通過在低強(qiáng)度和高強(qiáng)度下都對 1% 的數(shù)據(jù)進(jìn)行飽和處理,并通過拉伸強(qiáng)度值以填充 uint8 動態(tài)范圍,來提高處理后的圖像 I2 的對比度。

I3 = imadjust(I2);

imshow(I3)

請注意,前面的兩個步驟可以由使用 imtophat 的一個步驟來代替完成,后者先計算形態(tài)學(xué)開運算,然后從原始圖像中減去它。

I2 = imtophat(I,strel('disk',15));

創(chuàng)建處理后的圖像的二值版本,以便使用工具箱函數(shù)進(jìn)行分析。使用 imbinarize 函數(shù)將灰度圖像轉(zhuǎn)換為二值圖像。使用 bwareaopen 函數(shù)去除圖像中的背景噪聲。

bw = imbinarize(I3);

bw = bwareaopen(bw,50);

imshow(bw)

識別圖像中的對象

現(xiàn)在您已創(chuàng)建原始圖像的二值版本,您可以對圖像中的對象執(zhí)行分析。

在二值圖像中查找所有連通分量(對象)。結(jié)果的準(zhǔn)確度取決于對象的大小、連通性參數(shù)(4、8 或任意值),以及是否有相互接觸的對象(在這種情況下,它們可能被標(biāo)記為一個對象)。二值圖像 bw 中的一些米粒相互接觸。

cc = bwconncomp(bw,4)

cc = struct with fields:

Connectivity: 4

ImageSize: [256 256]

NumObjects: 95

PixelIdxList: {1x95 cell}

cc.NumObjects

ans = 95

查看圖像中標(biāo)記為 50 的米粒。

grain = false(size(bw));

grain(cc.PixelIdxList{50}) = true;

imshow(grain)

通過創(chuàng)建標(biāo)簽矩陣,然后將其顯示為偽彩色索引圖像,可視化圖像中的所有連通分量。

使用 labelmatrix 根據(jù) bwconncomp 的輸出創(chuàng)建標(biāo)簽矩陣。請注意,labelmatrix 將標(biāo)簽矩陣存儲在依對象數(shù)量得出的最小數(shù)值類中。

labeled = labelmatrix(cc);

whos labeled

Name Size Bytes Class Attributes

labeled 256x256 65536 uint8

使用 label2rgb 選擇顏色圖、背景顏色以及標(biāo)簽矩陣中的對象如何映射到顏色圖中的顏色。在偽彩色圖像中,用于標(biāo)識標(biāo)簽矩陣中每個對象的標(biāo)簽映射到相關(guān)聯(lián)的顏色圖矩陣中的不同顏色。

RGB_label = label2rgb(labeled,'spring','c','shuffle');

imshow(RGB_label)

計算基于面積的統(tǒng)計量

使用 regionprops 計算圖像中每個對象的面積。每個米粒均為 cc 結(jié)構(gòu)體中的一個連通分量。

graindata = regionprops(cc,'basic')

graindata=95×1 struct array with fields:

Area

Centroid

BoundingBox

創(chuàng)建新向量 grain_areas,它保存每個米粒的面積測量值。

grain_areas = [graindata.Area];

計算第 50 個分量的面積。

grain_areas(50)

ans = 194

找到并顯示面積最小的米粒。

[min_area, idx] = min(grain_areas)

min_area = 61

idx = 16

grain = false(size(bw));

grain(cc.PixelIdxList{idx}) = true;

imshow(grain)

使用 histogram 命令創(chuàng)建米粒面積的直方圖。

histogram(grain_areas)

title('Histogram of Rice Grain Area')

總結(jié)

以上是生活随笔為你收集整理的matlab处理亮度不均匀,校正亮度不均匀问题并分析前景对象的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。