国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

python數(shù)字圖像處理之基本形態(tài)學(xué)濾波

89542767 / 430人閱讀

  小編寫這篇文章的主要目的,主要是給大家介紹關(guān)于python數(shù)字圖像處理的一些相關(guān)介紹,包括基本的形態(tài)學(xué)濾波,比如可以使用數(shù)字圖像去進(jìn)行處理類似的形態(tài)學(xué)濾波。那么,具體的內(nèi)容呢?下面就給大家詳細(xì)解答下。


  引言


  對(duì)圖像進(jìn)行形態(tài)學(xué)變換。變換對(duì)象一般為灰度圖或二值圖,功能函數(shù)放在morphology子模塊內(nèi)。


  1、膨脹(dilation)


  原理:一般對(duì)二值圖像進(jìn)行操作。找到像素值為1的點(diǎn),將它的鄰近像素點(diǎn)都設(shè)置成這個(gè)值。1值表示白,0值表示黑,因此膨脹操作可以擴(kuò)大白色值范圍,壓縮黑色值范圍。一般用來擴(kuò)充邊緣或填充小的孔洞。


  功能函數(shù):skimage.morphology.dilation(image,selem=None)


  selem表示結(jié)構(gòu)元素,用于設(shè)定局部區(qū)域的形狀和大小。


  from skimage import data
  import skimage.morphology as sm
  import matplotlib.pyplot as plt
  img=data.checkerboard()
  dst1=sm.dilation(img,sm.square(5))#用邊長為5的正方形濾波器進(jìn)行膨脹濾波
  dst2=sm.dilation(img,sm.square(15))#用邊長為15的正方形濾波器進(jìn)行膨脹濾波
  plt.figure('morphology',figsize=(8,8))
  plt.subplot(131)
  plt.title('origin image')
  plt.imshow(img,plt.cm.gray)
  plt.subplot(132)
  plt.title('morphological image')
  plt.imshow(dst1,plt.cm.gray)
  plt.subplot(133)
  plt.title('morphological image')
  plt.imshow(dst2,plt.cm.gray)


  分別用邊長為5或15的正方形濾波器對(duì)棋盤圖片進(jìn)行膨脹操作,結(jié)果如下:

01.png

  可見濾波器的大小,對(duì)操作結(jié)果的影響非常大。一般設(shè)置為奇數(shù)。


  除了正方形的濾波器外,濾波器的形狀還有一些,現(xiàn)列舉如下:


  morphology.square:正方形


  morphology.disk:平面圓形


  morphology.ball:球形


  morphology.cube:立方體形


  morphology.diamond:鉆石形


  morphology.rectangle:矩形


  morphology.star:星形


  morphology.octagon:八角形


  morphology.octahedron:八面體


  注意,如果處理圖像為二值圖像(只有0和1兩個(gè)值),則可以調(diào)用:


  skimage.morphology.binary_dilation(image,selem=None)


  用此函數(shù)比處理灰度圖像要快。


  2、腐蝕(erosion)


  函數(shù):skimage.morphology.erosion(image,selem=None)


  selem表示結(jié)構(gòu)元素,用于設(shè)定局部區(qū)域的形狀和大小。


  和膨脹相反的操作,將0值擴(kuò)充到鄰近像素。擴(kuò)大黑色部分,減小白色部分??捎脕硖崛」歉尚畔?,去掉毛刺,去掉孤立的像素。


  from skimage import data
  import skimage.morphology as sm
  import matplotlib.pyplot as plt
  img=data.checkerboard()
  dst1=sm.erosion(img,sm.square(5))#用邊長為5的正方形濾波器進(jìn)行膨脹濾波
  dst2=sm.erosion(img,sm.square(25))#用邊長為25的正方形濾波器進(jìn)行膨脹濾波
  plt.figure('morphology',figsize=(8,8))
  plt.subplot(131)
  plt.title('origin image')
  plt.imshow(img,plt.cm.gray)
  plt.subplot(132)
  plt.title('morphological image')
  plt.imshow(dst1,plt.cm.gray)
  plt.subplot(133)
  plt.title('morphological image')
  plt.imshow(dst2,plt.cm.gray)

  注意,如果處理圖像為二值圖像(只有0和1兩個(gè)值),則可以調(diào)用:

02.png

  skimage.morphology.binary_erosion(image,selem=None)


  用此函數(shù)比處理灰度圖像要快。


  3、開運(yùn)算(opening)


  函數(shù):skimage.morphology.openning(image,selem=None)


  selem表示結(jié)構(gòu)元素,用于設(shè)定局部區(qū)域的形狀和大小。


  先腐蝕再膨脹,可以消除小物體或小斑塊。


  from skimage import io,color
  import skimage.morphology as sm
  import matplotlib.pyplot as plt
  img=color.rgb2gray(io.imread('d:/pic/mor.png'))
  dst=sm.opening(img,sm.disk(9))#用邊長為9的圓形濾波器進(jìn)行膨脹濾波
  plt.figure('morphology',figsize=(8,8))
  plt.subplot(121)
  plt.title('origin image')
  plt.imshow(img,plt.cm.gray)
  plt.axis('off')
  plt.subplot(122)
  plt.title('morphological image')
  plt.imshow(dst,plt.cm.gray)
  plt.axis('off')

  注意,如果處理圖像為二值圖像(只有0和1兩個(gè)值),則可以調(diào)用:

03.png

  skimage.morphology.binary_opening(image,selem=None)


  用此函數(shù)比處理灰度圖像要快。


  4、閉運(yùn)算(closing)


  函數(shù):skimage.morphology.closing(image,selem=None)


  selem表示結(jié)構(gòu)元素,用于設(shè)定局部區(qū)域的形狀和大小。


  先膨脹再腐蝕,可用來填充孔洞。


  from skimage import io,color
  import skimage.morphology as sm
  import matplotlib.pyplot as plt
  img=color.rgb2gray(io.imread('d:/pic/mor.png'))
  dst=sm.closing(img,sm.disk(9))#用邊長為5的圓形濾波器進(jìn)行膨脹濾波
  plt.figure('morphology',figsize=(8,8))
  plt.subplot(121)
  plt.title('origin image')
  plt.imshow(img,plt.cm.gray)
  plt.axis('off')
  plt.subplot(122)
  plt.title('morphological image')
  plt.imshow(dst,plt.cm.gray)
  plt.axis('off')

04.png

  注意,如果處理圖像為二值圖像(只有0和1兩個(gè)值),則可以調(diào)用:


  skimage.morphology.binary_closing(image,selem=None)


  用此函數(shù)比處理灰度圖像要快。


  5、白帽(white-tophat)


  函數(shù):skimage.morphology.white_tophat(image,selem=None)


  selem表示結(jié)構(gòu)元素,用于設(shè)定局部區(qū)域的形狀和大小。


  將原圖像減去它的開運(yùn)算值,返回比結(jié)構(gòu)化元素小的白點(diǎn)


  from skimage import io,color
  import skimage.morphology as sm
  import matplotlib.pyplot as plt
  img=color.rgb2gray(io.imread('d:/pic/mor.png'))
  dst=sm.white_tophat(img,sm.square(21))
  plt.figure('morphology',figsize=(8,8))
  plt.subplot(121)
  plt.title('origin image')
  plt.imshow(img,plt.cm.gray)
  plt.axis('off')
  plt.subplot(122)
  plt.title('morphological image')
  plt.imshow(dst,plt.cm.gray)
  plt.axis('off')

05.png

  6、黑帽(black-tophat)


  函數(shù):skimage.morphology.black_tophat(image,selem=None)


  selem表示結(jié)構(gòu)元素,用于設(shè)定局部區(qū)域的形狀和大小。


  將原圖像減去它的閉運(yùn)算值,返回比結(jié)構(gòu)化元素小的黑點(diǎn),且將這些黑點(diǎn)反色。

  from skimage import io,color
  import skimage.morphology as sm
  import matplotlib.pyplot as plt
  img=color.rgb2gray(io.imread('d:/pic/mor.png'))
  dst=sm.black_tophat(img,sm.square(21))
  plt.figure('morphology',figsize=(8,8))
  plt.subplot(121)
  plt.title('origin image')
  plt.imshow(img,plt.cm.gray)
  plt.axis('off')
  plt.subplot(122)
  plt.title('morphological image')
  plt.imshow(dst,plt.cm.gray)
  plt.axis('off')

  

06.png

        綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)韼椭?/p>

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/128820.html

相關(guān)文章

  • 女朋友嫌我拍的照片有霧,連夜用OpenCV寫出??去霧算法??逃過一劫(收藏保命)

    ??歡迎訂閱《從實(shí)戰(zhàn)學(xué)python》專欄,用python實(shí)現(xiàn)爬蟲、辦公自動(dòng)化、數(shù)據(jù)可視化、人工智能等各個(gè)方向的實(shí)戰(zhàn)案例,有趣又有用!?? 更多精品專欄簡(jiǎn)介點(diǎn)這里 治愈生活的良方 就是保持對(duì)生活的熱愛 前言 哈嘍,大家好,我是一條。 每次和女朋友出去玩,拍照是必須的,天氣好還行,天氣要是不好,加上我這破手機(jī),那拍的簡(jiǎn)直慘不忍睹,自己都不過去。 但是沒什么能難倒程序員的,為了不挨罵,連夜寫出去霧...

    DTeam 評(píng)論0 收藏0
  • 常用的十大python圖像處理工具

    摘要:但無論是用于何種用途,這些圖像都需要進(jìn)行處理。圖像處理中的常見任務(wù)包括顯示圖像,基本操作如裁剪翻轉(zhuǎn)旋轉(zhuǎn)等,圖像分割,分類和特征提取,圖像恢復(fù)和圖像識(shí)別。圖像處理系統(tǒng)有時(shí)被稱為圖像處理的瑞士軍刀。 showImg(https://segmentfault.com/img/remote/1460000019631626); 原文標(biāo)題:10 Python image manipulation...

    Crazy_Coder 評(píng)論0 收藏0
  • Python中的十大圖像處理工具

    摘要:之成為圖像處理任務(wù)的最佳選擇,是因?yàn)檫@一科學(xué)編程語言日益普及,并且其自身免費(fèi)提供許多最先進(jìn)的圖像處理工具。該庫包含基本的圖像處理功能,包括點(diǎn)操作使用一組內(nèi)置卷積內(nèi)核進(jìn)行過濾以及顏色空間轉(zhuǎn)換。圖像處理系統(tǒng)有時(shí)被稱為圖像處理的瑞士軍刀。 showImg(https://segmentfault.com/img/remote/1460000019442221);編譯:張秋玥、小七、蔣寶尚 本...

    yuanxin 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<