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

Python實(shí)現(xiàn)中值濾波去噪方式

 更新時(shí)間:2019年12月18日 09:16:54   作者:初見與告別  
今天小編就為大家分享一篇Python實(shí)現(xiàn)中值濾波去噪方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

中值濾波器去噪:

中值濾波的主要原理是將數(shù)字圖像中的某點(diǎn)用該點(diǎn)的鄰域中各個(gè)像素值的中值所來代替,這樣就能讓目標(biāo)像素周圍能夠更好的接近真實(shí)值,比如一張白紙上有一個(gè)黑點(diǎn)時(shí),黑點(diǎn)的像素值比較大,經(jīng)過中值濾波過后,黑點(diǎn)附近的像素值可能就會(huì)變小。經(jīng)過中值濾波后一些相對(duì)孤立的噪聲點(diǎn)就容易被清除掉,這樣就能提高圖像的質(zhì)量。

所以中值濾波器去噪的一個(gè)優(yōu)點(diǎn)就是對(duì)椒鹽噪聲的去除具有很好的效果,具體操作是選取一個(gè)中心鄰域,然后給鄰域類各個(gè)像素的灰度值按大小進(jìn)行排序,選取排序序列中的中值作為該鄰域中心點(diǎn)的像素值的灰度值。

它的缺點(diǎn)是當(dāng)鄰域挑選過大時(shí),可能會(huì)造成圖像特征丟失。

實(shí)現(xiàn)代碼如下:

import numpy as np
import cv2
from PIL import Image
import scipy.signal as signal
import matplotlib.pyplot as plt
#創(chuàng)建一個(gè)500*500的矩陣
input_images = np.zeros((500, 500))
filename = "E:/pycharm/GraduationDesign/Test/testtwo.png"
#convert將當(dāng)前圖像轉(zhuǎn)換為灰度模式,并且返回新的圖像。
#將圖片在重新定義的矩陣中再顯示,不然可能會(huì)只顯示部分。
img = Image.open(filename).resize((500, 500)).convert('L')
plt.subplot(221)
plt.title('原圖', fontproperties=font_set)
plt.imshow(img)
#圖像的尺寸,按照像素?cái)?shù)計(jì)算。它的返回值為寬度和高度的二元組(width, height)。
width = img.size[0]
height = img.size[1]
threshold=130
#可以改寫代碼使其成為二值化,此代碼可理解為反向二值化
for h in range(height):
 for w in range(width):
  #getpixel直接獲得(h,w)處的像素直接返回這個(gè)點(diǎn)三個(gè)通道的像素值
  #返回給定位置的像素值。如果圖像為多通道,則返回一個(gè)元組(r,g,b,閾值)。
  #如果改成(w,h)出現(xiàn)的圖像會(huì)倒轉(zhuǎn)
  if img.getpixel((w, h)) < threshold:
 
   input_images[h, w] = 1
  else:
   input_images[h, w] = 0
plt.subplot(222)
plt.title('二值化', fontproperties=font_set)
plt.imshow(input_images)
 
data = signal.medfilt2d(np.array(img), kernel_size=3) # 二維中值濾波
for h in range(0, height):
 for w in range(0, width):
  if data[h][w] < 128:
   input_images[h, w] = 0
  else:
   input_images[h, w] = 1
 
plt.subplot(223)
plt.title('中值濾波去噪(3*3)', fontproperties=font_set)
plt.imshow(input_images)
 
data = signal.medfilt2d(np.array(img), kernel_size=7) # 二維中值濾波
for h in range(0, height):
 for w in range(0, width):
  if data[h][w] < 128:
   input_images[h, w] = 0
  else:
   input_images[h, w] = 1
plt.subplot(224)
plt.title('中值濾波去噪(7*7)', fontproperties=font_set)
plt.imshow(input_images)
plt.show()

效果圖:

圖中的小黑點(diǎn)是我簡(jiǎn)單模擬實(shí)現(xiàn)圖片中含有椒鹽噪聲中所加入的。當(dāng)中值濾波領(lǐng)域選取過大時(shí)會(huì)使圖片失真。

以上這篇Python實(shí)現(xiàn)中值濾波去噪方式就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python--模塊(Module)和包(Package)詳解

    Python--模塊(Module)和包(Package)詳解

    這篇文章主要介紹了Python中模塊(Module)和包(Package)的區(qū)別詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-09-09
  • 詳解分布式系統(tǒng)中如何用python實(shí)現(xiàn)Paxos

    詳解分布式系統(tǒng)中如何用python實(shí)現(xiàn)Paxos

    提到分布式算法,就不得不提 Paxos 算法,在過去幾十年里,它基本上是分布式共識(shí)的代 名詞,因?yàn)楫?dāng)前最常用的一批共識(shí)算法都是基于它改進(jìn)的。比如,F(xiàn)ast Paxos 算法、 Cheap Paxos 算法、Raft 算法、ZAB 協(xié)議等等。
    2021-05-05
  • Python巧用SnowNLP實(shí)現(xiàn)生成srt字幕文件

    Python巧用SnowNLP實(shí)現(xiàn)生成srt字幕文件

    SnowNLP是一個(gè)可以方便的處理中文文本內(nèi)容的python類庫(kù),本文主要為大家詳細(xì)介紹了Python如何巧用SnowNLP實(shí)現(xiàn)將一段話一鍵生成srt字幕文件,感興趣的可以了解下
    2024-01-01
  • python爬蟲實(shí)戰(zhàn)項(xiàng)目之爬取pixiv圖片

    python爬蟲實(shí)戰(zhàn)項(xiàng)目之爬取pixiv圖片

    最近決定寫個(gè)P站的爬蟲,實(shí)際操作起來確實(shí)遇到了些新問題,通過解決也有所收獲,下面這篇文章主要給大家介紹了關(guān)于python爬蟲實(shí)戰(zhàn)項(xiàng)目之爬取pixiv圖片的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • python計(jì)算圓周率pi的方法

    python計(jì)算圓周率pi的方法

    這篇文章主要介紹了python計(jì)算圓周率pi的方法,涉及Python針對(duì)數(shù)學(xué)運(yùn)算的相關(guān)技巧,需要的朋友可以參考下
    2015-07-07
  • 解決python錯(cuò)誤提示:TypeError: expected string or bytes-lik問題

    解決python錯(cuò)誤提示:TypeError: expected string or&nb

    這篇文章主要介紹了解決python錯(cuò)誤提示:TypeError: expected string or bytes-lik問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Python opencv醫(yī)學(xué)處理的實(shí)現(xiàn)過程

    Python opencv醫(yī)學(xué)處理的實(shí)現(xiàn)過程

    這篇文章主要介紹了Python opencv醫(yī)學(xué)處理的實(shí)現(xiàn)過程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-05-05
  • Python操作PDF文件之實(shí)現(xiàn)A3頁面轉(zhuǎn)A4

    Python操作PDF文件之實(shí)現(xiàn)A3頁面轉(zhuǎn)A4

    這篇文章主要為大家詳細(xì)介紹了Python操作PDF文件之實(shí)現(xiàn)A3頁面轉(zhuǎn)A4功能的相關(guān)資料,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-11-11
  • Python unittest如何生成HTMLTestRunner模塊

    Python unittest如何生成HTMLTestRunner模塊

    這篇文章主要介紹了Python unittest如何生成HTMLTestRunner模塊,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • python實(shí)現(xiàn)人機(jī)猜拳小游戲

    python實(shí)現(xiàn)人機(jī)猜拳小游戲

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)人機(jī)猜拳小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02

最新評(píng)論