python 灰度图像素灰度值求和_如何使用PIL-Numpy在Python中获取灰度图像的平均像素值?...

该解决方案比注释和答案中提供的解决方案简单得多——即,不需要对元组进行计算,也不需要对单元格值进行嵌套循环迭代。

特别是,如果您有一个灰度图像,那么您有一个二维数组,其中的数组单元格由0到1的标量值填充。

相比之下,彩色图像是一个2D NumPy数组,其中rgb元组位于每个单元格中。

换句话说:灰度图像的NumPy数组表示是一个二维数组,其单元格的浮点值在0(黑色)和1(白色)之间

因此,可以通过计算图像阵列的两个轴上的平均值来计算平均像素值,如下所示:>>> import numpy as NP

>>> img = NP.random.rand(100, 100)

>>> img[:5, :5]

array([[ 0.824, 0.864, 0.731, 0.57 , 0.127],

[ 0.307, 0.524, 0.637, 0.134, 0.877],

[ 0.343, 0.789, 0.758, 0.059, 0.374],

[ 0.693, 0.991, 0.458, 0.374, 0.738],

[ 0.237, 0.226, 0.869, 0.952, 0.948]])

这一行代码将执行您想要的操作——为数组中的每个轴计算两次平均值,一次(不需要为第二次调用mean指定轴,因为第一次调用的返回值只是一个1D数组>>> img.mean(axis=0).mean()

0.50000646872609511

0.5的值似乎是正确的,因为数组值是通过调用NP.random.rand生成的,它返回在半开区间[0,1]上从均匀分布中采样的值>>> import matplotlib.pyplot as MPL

>>> MPL.imshow(img, cmap=MPL.cm.gray, interpolation='nearest')

>>> MPL.show()

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值