【问题标题】:How to get mean value as array of them in numpy [closed]如何在numpy中获取平均值作为它们的数组[关闭]
【发布时间】:2018-09-14 01:53:46
【问题描述】:

我有图像,我需要找到它的平均颜色。但是 np.mean() 返回我所有元素的平均值,包括 rgb 值。如何将平均值作为 rgb 颜色数组?

np.mean(image) 返回 6.142314

我需要这样的东西 [2.31, 4.4211, 10.01]

【问题讨论】:

  • 您能提供一个示例输入/预期输出吗?
  • arr.mean(axis=(0,1))

标签: python image numpy


【解决方案1】:

演示:

In [228]: from PIL import Image

In [229]: im = Image.open(filename)

In [230]: arr = np.array(im.convert('RGB'))

In [231]: arr.mean(axis=(0,1))
Out[231]: array([216.57815122, 191.43917359, 211.62774556])

使用 OpenCV:

In [238]: import cv2

In [239]: im = cv2.imread(filename)

In [250]: b,g,r = im.mean(axis=(0,1))

In [251]: r
Out[251]: 216.57815122463762

In [252]: g
Out[252]: 191.43917359086018

In [253]: b
Out[253]: 211.62774556460369

【讨论】:

  • 你知道在opencv中怎么做吗?
  • @DenisD'yachkov,请检查更新的答案
猜你喜欢
  • 2019-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-22
  • 1970-01-01
  • 2013-08-23
  • 1970-01-01
  • 2020-04-25
相关资源
最近更新 更多