📜  Mahotas – 均值过滤器

📅  最后修改于: 2022-05-13 01:55:13.197000             🧑  作者: Mango

Mahotas – 均值过滤器

在本文中,我们将了解如何将均值滤波器应用于 mahotas 中的图像。平均(或均值)滤波是一种通过减少相邻像素之间的强度变化量来“平滑”图像的方法。平均滤波器的工作原理是逐个像素地移动图像,用相邻像素(包括其自身)的平均值替换每个值。
在本教程中,我们将使用“lena”图像,下面是加载它的命令。

mahotas.demos.load('lena')

下面是莉娜的图片

注意:输入图像应被过滤或应加载为灰色

为了过滤图像,我们将获取图像对象 numpy.ndarray 并在索引的帮助下对其进行过滤,下面是执行此操作的命令

image = image[:, :, 0]

下面是实现

Python3
# importing required libraries
import mahotas
import mahotas.demos
from pylab import gray, imshow, show
import numpy as np
import matplotlib.pyplot as plt
   
# loading image
img = mahotas.demos.load('lena')
   
# filtering image
img = img.max(2)
 
print("Image")
   
# showing image
imshow(img)
show()
 
# applying mean filter
new_img = mahotas.mean_filter(img, n)
  
 
# showing image
print("Mean Filter")
imshow(new_img)
show()


Python3
# importing required libraries
import mahotas
import numpy as np
from pylab import gray, imshow, show
import os
import matplotlib.pyplot as plt
  
# loading image
img = mahotas.imread('dog_image.png')
 
 
# filtering image
img = img[:, :, 0]
   
print("Image")
   
# showing image
imshow(img)
show()
 
# applying mean filter
new_img = mahotas.mean_filter(img, n)
  
 
# showing image
print("Mean Filter")
imshow(new_img)
show()


输出 :

Image

Mean Filter

另一个例子

Python3

# importing required libraries
import mahotas
import numpy as np
from pylab import gray, imshow, show
import os
import matplotlib.pyplot as plt
  
# loading image
img = mahotas.imread('dog_image.png')
 
 
# filtering image
img = img[:, :, 0]
   
print("Image")
   
# showing image
imshow(img)
show()
 
# applying mean filter
new_img = mahotas.mean_filter(img, n)
  
 
# showing image
print("Mean Filter")
imshow(new_img)
show()

输出 :

Image

Mean Filter