MATLAB 影象擴張
Ammar Ali
2022年5月11日
本教程將討論使用 Matlab 中的 imdilate()
函式對影象進行膨脹。
使用 MATLAB 中的 imdilate()
函式擴充套件影象
膨脹通過在影象中存在的物件的邊界上新增畫素來增加影象中的畫素數量。
我們可以使用 Matlab 的內建函式 imdilate()
在 Matlab 中對影象進行擴張。為了擴大影象,我們必須提供輸入影象和結構元素。結構元素可以是垂直線、滾動球或任何其他元素。
例如,讓我們使用 imread()
函式讀取影象並使用 offsetstrel()
函式建立一個球形結構元素,然後使用滾動球擴充套件影象,然後我們將同時顯示原始影象作為使用 subplot()
函式的擴張後的影象。
請參閱下面的程式碼。
original_Image = imread('cameraman.tif');
structuring_element = offsetstrel('ball',5,5);
dilated_Image = imdilate(original_Image,structuring_element);
subplot(1,2,1)
imshow(original_Image)
title('Original Image')
subplot(1,2,2)
imshow(dilated_Image)
title('Dilated Image')
輸出:
在輸出中,右側影象是放大後的影象,你可以在影象中存在的物件邊緣看到白球。
輸入影象可以是灰度、二值或壓縮二值影象。結構元素應該是一個 strel
物件、offsetstrel
物件和 strel
或 offsetstrell
物件的陣列。
預設情況下,imdilate()
函式將影象視為未打包,但我們可以使用 pakopt
屬性將其更改為打包。
預設情況下,imdilate()
函式將返回與輸入影象大小相同的影象,但我們可以使用 shape 屬性將輸出影象的形狀更改為完全擴張。
Author: Ammar Ali