簡體   English   中英

如何通過圖像處理計算未成形物體的體積?

[英]How can I calculate the volume of unshaped objects by image processing?

我必須在MATLAB軟件中編寫“通過圖像處理計算未變形物體的體積” 算法

我必須編寫將對象的許多圖片作為輸入並計算對象的體積作為輸出的算法。 每個幫助將不勝感激。 謝謝

如果您的圖片I只有對象和背景,

O = im2bw(I); % suppose 1 labelled on the object and 0 on the background
Volume = length(find(O == 1));

上面的代碼將為您提供對象的數量。

如果圖像中有各種對象,並且想要在其中增加一個體積。 例如,您有一個MRI大腦圖像,如左圖所示,您想要獲取水腫的體積(內部黃色部分):

在此處輸入圖片說明

I2 = im2bw(I);
I2 = bwareaopen(I2,100);
I2 = imdilate(I2,ones(3));
bw = bwlabel(I2);

上面的代碼中的bw將為您提供右側的圖。 如您所見,有三個部分用1-3標記。然后,

stats=regionprops(bw,'PixelIdxList');
length(stats(1).PixelIdxList)
length(stats(2).PixelIdxList)
length(stats(3).PixelIdxList)

將分別給您14455、404和9632。 左側圖像中的黃色部分在右側標記為3。 因此,對象的體積為9632。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM