圖像腐蝕

一、原理html

結構元素(Sturcture Element),形象稱呼刷子,在每一個像素位置上與二值圖像對應的區域進行特定的邏輯運算。運算結構是輸出圖像的相應像素。運算效果取決於結構元素大小內容以及邏輯運算性質。spa

對Z2上元素集合A和結構體元素S,使用S對A進行腐蝕,記做:code

AΘS={z|(S)z € A}htm

讓位於圖像圓點的結構元素S在Z平面上移動,若是S的圓點移動到z點時,S可以徹底的包含於A中,則認爲這樣的z點構成的集合是S對A的腐蝕圖像。blog

下圖左側是原圖X,B是結構元素,右圖是腐蝕的結果。腐蝕的方法是,拿B的中心點和X上的點一個一個地對比,若是B上的全部點都在X的範圍內,則該點保留,不然將該點去掉;右邊是腐蝕後的結果。能夠看出,它仍在原來X的範圍內,且比X包含的點要少,就象X被腐蝕掉了一層。圖像腐蝕相似於「領域被蠶食」,將圖像中的高亮區域或白色部分進行縮減細化,其運行結果圖比原圖的高亮區域更小。get

二、腐蝕的實現it

imgPath = 'E:\opencv_pic\src_pic\pic1.bmp';
img = imread(imgPath);
img=rgb2gray(img);
img = 255-img;
se = strel('square', 3)
img2 = imerode(img, se);
subplot(1,2,1),imshow(img),title('原始圖像');
subplot(1,2,2),imshow(img2),title('腐蝕圖像');

參與計算的結構元素se爲:opencv

se =class

Flat STREL object containing 9 neighbors.原理

Neighborhood:

     1     1     1

     1     1     1

     1     1     1

放大後能夠看到,原始圖像左上角第三列上方有一個5*5方塊,下方有一個4*4的方塊。腐蝕後變爲右側的圖像。腐蝕先後方塊的對比圖以下。

 若是把結構元素改成5*5,se = strel('square', 5);則腐蝕圖像沒有左上角的白塊。

 若是把結構元素改成10*10,se = strel('square', 10);則腐蝕圖像文字變得很是纖細。

 

 三、總結

腐蝕能夠用於濾波,選擇適當的結構元素,能夠濾掉全部不能徹底包含結構元素的噪聲點。可是在濾除噪聲的時候,對前景圖像的形狀也會產生影響,尤爲是形狀邊緣,可是當只關心物體的位置和個數時,就不用太考慮形狀邊緣的變化,可使用腐蝕來濾除噪聲。 

 

尊重原創技術文章,轉載請註明。

http://www.javashuo.com/article/p-bobbxelg-et.html

相關文章
相關標籤/搜索