欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python數(shù)字圖像處理之高級濾波代碼詳解

 更新時間:2017年11月23日 09:27:14   作者:denny402  
這篇文章主要介紹了python數(shù)字圖像處理之高級濾波代碼詳解,介紹了許多對圖像處理的濾波方法,具有一定參考價值,需要的朋友可以了解下。

本文提供許多的濾波方法,這些方法放在filters.rank子模塊內(nèi)。

這些方法需要用戶自己設(shè)定濾波器的形狀和大小,因此需要導(dǎo)入morphology模塊來設(shè)定。

1、autolevel

這個詞在photoshop里面翻譯成自動色階,用局部直方圖來對圖片進行濾波分級。

該濾波器局部地拉伸灰度像素值的直方圖,以覆蓋整個像素值范圍。

格式:skimage.filters.rank.autolevel(image, selem)

selem表示結(jié)構(gòu)化元素,用于設(shè)定濾波器。

from skimage import data,color
import matplotlib.pyplot as plt
from skimage.morphology import disk
import skimage.filters.rank as sfr
img =color.rgb2gray(data.lena())
auto =sfr.autolevel(img, disk(5)) #半徑為5的圓形濾波器

plt.figure('filters',figsize=(8,8))
plt.subplot(121)
plt.title('origin image')
plt.imshow(img,plt.cm.gray)

plt.subplot(122)
plt.title('filted image')
plt.imshow(auto,plt.cm.gray)

2、bottomhat 與 tophat

bottomhat: 此濾波器先計算圖像的形態(tài)學閉運算,然后用原圖像減去運算的結(jié)果值,有點像黑帽操作。

bottomhat: 此濾波器先計算圖像的形態(tài)學開運算,然后用原圖像減去運算的結(jié)果值,有點像白帽操作。

格式:

skimage.filters.rank.bottomhat(image, selem)

skimage.filters.rank.tophat(image, selem)

selem表示結(jié)構(gòu)化元素,用于設(shè)定濾波器。

下面是bottomhat濾波的例子:

from skimage import data,color
import matplotlib.pyplot as plt
from skimage.morphology import disk
import skimage.filters.rank as sfr
img =color.rgb2gray(data.lena())
auto =sfr.bottomhat(img, disk(5)) #半徑為5的圓形濾波器

plt.figure('filters',figsize=(8,8))
plt.subplot(121)
plt.title('origin image')
plt.imshow(img,plt.cm.gray)

plt.subplot(122)
plt.title('filted image')
plt.imshow(auto,plt.cm.gray)

3、enhance_contrast

對比度增強。求出局部區(qū)域的最大值和最小值,然后看當前點像素值最接近最大值還是最小值,然后替換為最大值或最小值。

函數(shù): enhance_contrast(image, selem)

selem表示結(jié)構(gòu)化元素,用于設(shè)定濾波器。

from skimage import data,color
import matplotlib.pyplot as plt
from skimage.morphology import disk
import skimage.filters.rank as sfr
img =color.rgb2gray(data.lena())
auto =sfr.enhance_contrast(img, disk(5)) #半徑為5的圓形濾波器

plt.figure('filters',figsize=(8,8))
plt.subplot(121)
plt.title('origin image')
plt.imshow(img,plt.cm.gray)

plt.subplot(122)
plt.title('filted image')
plt.imshow(auto,plt.cm.gray)

4、entropy

求局部熵,熵是使用基為2的對數(shù)運算出來的。該函數(shù)將局部區(qū)域的灰度值分布進行二進制編碼,返回編碼的最小值。

函數(shù)格式:entropy(image, selem)

selem表示結(jié)構(gòu)化元素,用于設(shè)定濾波器。

from skimage import data,color
import matplotlib.pyplot as plt
from skimage.morphology import disk
import skimage.filters.rank as sfr
img =color.rgb2gray(data.lena())
dst =sfr.entropy(img, disk(5)) #半徑為5的圓形濾波器

plt.figure('filters',figsize=(8,8))
plt.subplot(121)
plt.title('origin image')
plt.imshow(img,plt.cm.gray)

plt.subplot(122)
plt.title('filted image')
plt.imshow(dst,plt.cm.gray)

5、equalize

均衡化濾波。利用局部直方圖對圖像進行均衡化濾波。

函數(shù)格式:equalize(image, selem)

selem表示結(jié)構(gòu)化元素,用于設(shè)定濾波器。

from skimage import data,color
import matplotlib.pyplot as plt
from skimage.morphology import disk
import skimage.filters.rank as sfr
img =color.rgb2gray(data.lena())
dst =sfr.equalize(img, disk(5)) #半徑為5的圓形濾波器

plt.figure('filters',figsize=(8,8))
plt.subplot(121)
plt.title('origin image')
plt.imshow(img,plt.cm.gray)

plt.subplot(122)
plt.title('filted image')
plt.imshow(dst,plt.cm.gray)

6、gradient

返回圖像的局部梯度值(如:最大值-最小值),用此梯度值代替區(qū)域內(nèi)所有像素值。

函數(shù)格式:gradient(image, selem)

selem表示結(jié)構(gòu)化元素,用于設(shè)定濾波器。

from skimage import data,color
import matplotlib.pyplot as plt
from skimage.morphology import disk
import skimage.filters.rank as sfr
img =color.rgb2gray(data.lena())
dst =sfr.gradient(img, disk(5)) #半徑為5的圓形濾波器

plt.figure('filters',figsize=(8,8))
plt.subplot(121)
plt.title('origin image')
plt.imshow(img,plt.cm.gray)

plt.subplot(122)
plt.title('filted image')
plt.imshow(dst,plt.cm.gray)

7、其它濾波器

濾波方式很多,下面不再一一詳細講解,僅給出核心代碼,所有的函數(shù)調(diào)用方式都是一樣的。

最大值濾波器(maximum):返回圖像局部區(qū)域的最大值,用此最大值代替該區(qū)域內(nèi)所有像素值。

dst =sfr.maximum(img, disk(5))

最小值濾波器(minimum):返回圖像局部區(qū)域內(nèi)的最小值,用此最小值取代該區(qū)域內(nèi)所有像素值。

dst =sfr.minimum(img, disk(5))

均值濾波器(mean) : 返回圖像局部區(qū)域內(nèi)的均值,用此均值取代該區(qū)域內(nèi)所有像素值。

dst =sfr.mean(img, disk(5))

中值濾波器(median): 返回圖像局部區(qū)域內(nèi)的中值,用此中值取代該區(qū)域內(nèi)所有像素值。

dst =sfr.median(img, disk(5))

莫代爾濾波器(modal) : 返回圖像局部區(qū)域內(nèi)的modal值,用此值取代該區(qū)域內(nèi)所有像素值。

dst =sfr.modal(img, disk(5))

otsu閾值濾波(otsu): 返回圖像局部區(qū)域內(nèi)的otsu閾值,用此值取代該區(qū)域內(nèi)所有像素值。

dst =sfr.otsu(img, disk(5))

閾值濾波(threshhold): 將圖像局部區(qū)域中的每個像素值與均值比較,大于則賦值為1,小于賦值為0,得到一個二值圖像。

dst =sfr.threshold(img, disk(5))

減均值濾波(subtract_mean): 將局部區(qū)域中的每一個像素,減去該區(qū)域中的均值。

dst =sfr.subtract_mean(img, disk(5))

求和濾波(sum) :求局部區(qū)域的像素總和,用此值取代該區(qū)域內(nèi)所有像素值。

dst =sfr.sum(img, disk(5))

總結(jié)

以上就是本文關(guān)于python數(shù)字圖像處理之高級濾波代碼詳解的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:

Python中turtle作圖示例

python通過opencv實現(xiàn)批量剪切圖片

python好玩的項目—色情圖片識別代碼分享

如有不足之處,歡迎留言指出。

相關(guān)文章

  • Python pip替換為阿里源的方法步驟

    Python pip替換為阿里源的方法步驟

    這篇文章主要介紹了Python pip替換為阿里源的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-07-07
  • OpenCV圖像處理之圖像的二值化解讀

    OpenCV圖像處理之圖像的二值化解讀

    這篇文章主要介紹了OpenCV圖像處理之圖像的二值化解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Python與MongoDB輕松管理數(shù)據(jù)

    Python與MongoDB輕松管理數(shù)據(jù)

    本文將介紹如何使用Python操作MongoDB,包括安裝MongoDB、安裝Python的MongoDB驅(qū)動程序、連接到MongoDB、插入、查詢、更新和刪除數(shù)據(jù),以及示例代碼
    2023-11-11
  • pygame實現(xiàn)簡易飛機大戰(zhàn)

    pygame實現(xiàn)簡易飛機大戰(zhàn)

    這篇文章主要為大家詳細介紹了pygame實現(xiàn)簡易飛機大戰(zhàn),python版飛機大戰(zhàn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • 記一次pyinstaller打包pygame項目為exe的過程(帶圖片)

    記一次pyinstaller打包pygame項目為exe的過程(帶圖片)

    這篇文章主要介紹了記一次pyinstaller打包pygame項目為exe的過程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • Python讀取Word(.docx)正文信息的方法

    Python讀取Word(.docx)正文信息的方法

    這篇文章主要為大家詳細介紹了Python讀取Word(.docx)正文信息的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Python中IPYTHON入門實例

    Python中IPYTHON入門實例

    這篇文章主要介紹了Python中IPYTHON的用法入門,較為詳細的分析了IPYTHON的配置及使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-05-05
  • Python中的嵌套循環(huán)詳情

    Python中的嵌套循環(huán)詳情

    這篇文章主要介紹了Python中的嵌套循環(huán)詳情,嵌套循環(huán)就是一個外循環(huán)的主體部分是一個內(nèi)循環(huán)。內(nèi)循環(huán)或外循環(huán)可以是任何類型,下列詳情介紹內(nèi)容,需要的朋友可以參考一下
    2022-03-03
  • python在linux中輸出帶顏色的文字的方法

    python在linux中輸出帶顏色的文字的方法

    這篇文章主要介紹了python在linux中輸出帶顏色的文字的方法,僅在Linux系統(tǒng)中有效果,一般輸出在控制臺中,本文用在日志環(huán)節(jié),方便測試,需要的朋友可以參考下
    2014-06-06
  • Python中幾個比較常見的名詞解釋

    Python中幾個比較常見的名詞解釋

    這篇文章主要介紹了Python中幾個比較常見的名詞解釋,本文解釋同樣適應(yīng)其它編程語言,本文講解了循環(huán)、迭代、遞歸、遍歷等名詞的含義,需要的朋友可以參考下
    2015-07-07

最新評論