亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

一文詳解matlab實現(xiàn)形態(tài)學(xué)圖像處理

 更新時間:2023年03月08日 15:26:46   作者:timerring  
這篇文章主要為大家介紹了matlab實現(xiàn)形態(tài)學(xué)圖像處理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

目的

文章和代碼以及樣例圖片等相關(guān)資源,已經(jīng)歸檔至【Github倉庫:digital-image-processing-matlab

  • 膨脹的簡單應(yīng)用、使用 strel 函數(shù)、腐蝕的說明
  • 函數(shù)imopen 和imclose 的應(yīng)用、使用IPT函數(shù)bwhitmiss
  • 灰度圖像形態(tài)學(xué)開運算和閉運算
  • 灰度圖像形態(tài)學(xué)使用重構(gòu)刪除復(fù)雜圖像的背景

內(nèi)容

膨脹的簡單應(yīng)用

A=imread('D:\pic\DIP3E_CH04\Fig0419(a)(text_gaps_of_1_and_2_pixels).tif');
figure, imshow(A)
B=[0 1 0;1 1 1;0 1 0];
A2=imdilate(A,B);
figure,imshow(A2)

使用 strel 函數(shù)分解結(jié)構(gòu)元素的說明

se=strel('diamond',5)
decomp=getsequence(se);
whos
decomp(1)
decomp(2)
decomp(3)
decomp(4)

腐蝕的說明

A=imread('D:\pic\DIP3E_CH09\Fig0905(a)(wirebond-mask).tif');
figure, imshow(A)%原圖像
se=strel('disk',10)
A2=imerode(A,se)
figure, imshow(A2)%半徑為10 的圓盤腐蝕后的圖像
se=strel('disk',5)
A3=imerode(A,se)
figure, imshow(A3)%半徑為5 的圓盤腐蝕后的圖像
A4=imerode(A,strel('disk',20))
figure, imshow(A4)%半徑為20 的圓盤腐蝕后的圖像

函數(shù)imopen 和imclose 的應(yīng)用

f=imread('D:\pic\DIP3E_CH09\Fig0905(a)(wirebond-mask).tif');
figure, imshow(f)%原圖像
se=strel('square',20);
fo=imopen(f,se);
figure, imshow(fo)%開運算后的圖像
fc=imclose(f,se);
figure, imshow(fc)%閉運算后的圖像
foc=imclose(fo,se);
figure, imshow(foc)%圖像A2 經(jīng)閉運算后的圖像

使用 IPT 函數(shù)bwhitmiss

f=imread('D:\pic\DIP3E_CH09\FigP0918(left).tif')
figure,imshow(f)
B1=strel([0 0 0;0 1 1;0 1 0]);
B2=strel([1 1 1;1 0 0;1 0 0]);
g=bwhitmiss(f,B1,B2);
figure,imshow(g)

灰度圖像形態(tài)學(xué)開運算和閉運算

%%%%%%%%%使用開運算和閉運算做形態(tài)學(xué)平滑%%%%%%%%%%%%%%%%%
clear all
clc
f=imread('D:\pic\DIP3E_CH09\Fig0941(a)(wood_dowels).tif');
figure, imshow(f)%原圖像
se=strel('disk',5);
fo=imopen(f,se);
figure, imshow(fo)%開運算后的圖像
foc=imclose(fo,se);
figure, imshow(foc)%圖像A2 經(jīng)閉運算后的圖像
fasf=f;
for k=2:5
    se=strel('disk',k);
    fasf=imclose(imopen(fasf,se),se);
end
figure,imshow(fasf) %%%%%% 交替順序濾波后的圖像
%%%%%%%%%%使用頂帽變換%%%%%%%%%%%%%%
clear all
clc
f=imread('D:\pic\DIP3E_CH09\Fig0940(a)(rice_image_with_intensity_gradient).tif');
figure, imshow(f)%原圖像
se=strel('disk',10);
fo=imopen(f,se);
figure, imshow(fo)%經(jīng)開運算處理后的圖像
f2=imsubtract(f,fo);
figure, imshow(f2)
f2=imtophat(f,se);
figure, imshow(f2)
se=strel('disk',3);
g=imsubtract(imadd(f,imtophat(f,se)),imbothat(f,se));%低帽、頂帽
figure, imshow(g)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%顆粒分析%%%%%%%%%%%%%%
clear all
clc
f=imread('D:\pic\DIP3E_CH09\Fig0940(a)(rice_image_with_intensity_gradient).tif');
sumpixels=zeros(1,36);
for k=0:35
    se=strel('disk',k);
    fo=imopen(f,se);
    sumpixels(k+1)=sum(fo(:));
end
figure,plot(0:35,sumpixels);
xlabel('k');
ylabel('surface area')
figure, plot(-diff(sumpixels))
xlabel('k');
ylabel('surface area reduction')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

灰度圖像形態(tài)學(xué)使用重構(gòu)刪除復(fù)雜圖像的背景

%灰度圖像形態(tài)學(xué)使用重構(gòu)刪除復(fù)雜圖像的背景
clear all
clc
f=imread('D:\pic\DIP3E_CH09\Fig0944(a)(calculator).tif');
figure, imshow(f)%原圖像
f_obr=imreconstruct(imerode(f,ones(1,71)),f);
figure, imshow(f_obr)
f_o=imopen(f,ones(1,71));%for comparison
figure, imshow(f_o)
f_thr=imsubtract(f,f_obr);
figure, imshow(f_thr)
f_th=imsubtract(f,f_o);%or imtophat(f,ones(1,71))
figure, imshow(f_th)
g_obr=imreconstruct(imerode(f_thr,ones(1,11)),f_thr);
figure, imshow(g_obr)
g_obrd=imdilate(g_obr,ones(1,21));
figure, imshow(g_obrd)
f2=imreconstruct(min(g_obrd,f_thr),f_thr);
figure, imshow(f2)

參考文獻:

[1] Rafael C. Gonzalez, Richard E. Woods, and Steven L. Eddins. 2003. Digital Image Processing Using MATLAB. Prentice-Hall, Inc., USA.

[2] 阮秋琦. 數(shù)字圖像處理(MATLAB版)[M]. 北京:電子工業(yè)出版社, 2014.

[3] 岡薩雷斯. 數(shù)字圖像處理(第三版)[M]. 北京:電子工業(yè)出版社, 2011.

以上就是一文詳解matlab實現(xiàn)形態(tài)學(xué)圖像處理的詳細(xì)內(nèi)容,更多關(guān)于matlab形態(tài)學(xué)圖像處理的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C++11返回類型后置語法的使用示例

    C++11返回類型后置語法的使用示例

    本篇文章主要介紹了C++11返回類型后置語法的使用示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • c++?error:crosses?initialization?of問題解決分析

    c++?error:crosses?initialization?of問題解決分析

    這篇文章主要介紹了c++?error:crosses?initialization?ofde?問題解決分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • C語言實現(xiàn)三子棋(井字棋)算法

    C語言實現(xiàn)三子棋(井字棋)算法

    這篇文章主要為大家詳細(xì)介紹了C語言實現(xiàn)三子棋(井字棋)算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • 詳解設(shè)計模式中的中介者模式在C++編程中的運用

    詳解設(shè)計模式中的中介者模式在C++編程中的運用

    這篇文章主要介紹了設(shè)計模式中的中介者模式在C++編程中的運用,中介者模式將對象間的通信封裝到一個類中,將多對多的通信轉(zhuǎn)化為一對多的通信,降低了系統(tǒng)的復(fù)雜性,需要的朋友可以參考下
    2016-03-03
  • VS2022 Git提交代碼的實現(xiàn)

    VS2022 Git提交代碼的實現(xiàn)

    本文主要介紹了VS2022 Git提交代碼的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • C++二叉樹的創(chuàng)建及遍歷詳情

    C++二叉樹的創(chuàng)建及遍歷詳情

    這篇文章主要介紹了C++二叉樹的創(chuàng)建及遍歷詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下,希望對你的學(xué)習(xí)有所幫助
    2022-07-07
  • C++讀寫Excel的實現(xiàn)方法詳解

    C++讀寫Excel的實現(xiàn)方法詳解

    本篇文章是對C++讀寫Excel的實現(xiàn)方法進行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • c/c++單例模式類的混合編譯案例詳解

    c/c++單例模式類的混合編譯案例詳解

    ? 由于c語言中沒有類的概念,因此對于有類的cpp文件與c文件混合編譯時,提供一個中間層提供類的操作接口,在c文件中調(diào)用接口實現(xiàn)間接操作類對象,這篇文章主要介紹了c/c++單例模式類的混合編譯的相關(guān)資料
    2022-10-10
  • C語言實現(xiàn)顛倒棧的方法

    C語言實現(xiàn)顛倒棧的方法

    這篇文章主要介紹了C語言實現(xiàn)顛倒棧的方法,是針對數(shù)據(jù)結(jié)構(gòu)中棧的常見操作技巧,需要的朋友可以參考下
    2014-09-09
  • C++學(xué)習(xí)之指針的使用詳解

    C++學(xué)習(xí)之指針的使用詳解

    這篇文章主要為大家詳細(xì)介紹了C++中指針的相關(guān)知識,文中的示例代碼講解詳細(xì),對我們的學(xué)習(xí)或工作有一定的價值,感興趣的小伙伴可以了解一下
    2023-03-03

最新評論