Mahotas – 获取图像的均值
在本文中,我们将了解如何在 mahotas 中获取图像的平均值。平均值是像素值的总和除以像素值的总数。
像素值表示存储在计算机中的图像的每个像素都有一个像素值,它描述了该像素的亮度和/或它应该是什么颜色。在二值图像的最简单情况下,像素值是一个 1 位数字,表示前景或背景。
平均值是所有统计量度中最基本的。均值常用于几何和分析;为此目的开发了多种手段。在图像处理的竞赛中,使用均值的滤波被归类为空间滤波并用于降噪。
为了做到这一点,我们将使用均值方法
Syntax : img.mean()
Argument : It takes no argument
Return : It returns float32
这里的 img 是使用 mahotas 加载的图像,可以借助 mahotas.imread(image_name) 方法来完成。
注意:图像应该在得到平均值之前进行过滤,因为它可以一次计算一个通道
示例 1:
Python3
# importing required libraries
import numpy as np
import mahotas
from pylab import imshow, show
# loading image
img = mahotas.imread('dog_image.png')
# filtering the image
img = img[:, :, 0]
print("Image with filter")
# showing the image
imshow(img)
show()
# getting mean value
mean = img.mean()
# printing mean value
print("Mean Value for 0 channel : " + str(mean))
Python3
# importing required libraries
import mahotas as mh
import mahotas.demos
import numpy as np
from pylab import imshow, show
# getting nuclear image
nuclear = mh.demos.nuclear_image()
# filtering the image
nuclear = nuclear[:, :, 0]
print("Image with filter")
# showing the image
imshow(nuclear)
show()
# getting mean value
mean = nuclear.mean()
# printing mean value
print("Mean Value for 0 channel : " + str(mean))
输出 :
Mean Value for 0 channel : 129.05525723083971
示例 2:
Python3
# importing required libraries
import mahotas as mh
import mahotas.demos
import numpy as np
from pylab import imshow, show
# getting nuclear image
nuclear = mh.demos.nuclear_image()
# filtering the image
nuclear = nuclear[:, :, 0]
print("Image with filter")
# showing the image
imshow(nuclear)
show()
# getting mean value
mean = nuclear.mean()
# printing mean value
print("Mean Value for 0 channel : " + str(mean))
输出 :
Mean Value for 0 channel : 27.490094866071427
注意:对于每个通道,都有不同的平均值,平均值是设置图像阈值的好选择。